Certified Bank-Aware Fast-Path Coverage for
Hardware-Constrained NDN Forwarding Lookup
Extended Preprint: Algorithms, Combinatorial Structure, and Design-Space Characterization
Amirreza Khorasanian
Electrical Engineering Student, ECE Department, University of Tehran
akh5793@gmail.com
August 2026
Abstract
Named Data Networking (NDN) replaces address-based forwarding with longest-prefix lookup over variable-length hierarchical names. This creates a difficult fit with bounded hardware fast paths: parser depth is finite, trie state consumes scarce memory, memory can be banked, and a shallow match is correct only when it preserves the action of the true longest-prefix match (LPM).
We formulate the problem as certified fast-path coverage. An offline mapper chooses a prefix-closed set of parser-visible trie nodes and a separate set of action-equivalence certificates under a shared object-equivalent budget. A certificate relates a selected shallow FIB prefix to a deeper true-LPM class carrying the same forwarding action; applying the shortcut requires a sound class guard, and all uncertain traffic falls back to an exact path. We present BPC-Greedy, a feasibility-filtered, certificate-aware placement heuristic, and BPC-Portfolio, a multi-strategy wrapper spanning exact-heavy, repair-based, and shallow-shortcut constructions.
This extended preprint develops the algorithmic and combinatorial structure that was compressed in the conference-format manuscript. In particular, it shows that (i) prefix placement is a tree-closure knapsack problem with reusable ancestor cost, (ii) for a fixed selected prefix set and uniform certificate cost, certificate selection is exactly solved by a top- rule because candidate certificate classes partition eligible trace traffic, (iii) bank assignment is a separate load-partition feasibility layer, and (iv) the difficult coupling arises because changing the selected prefix set changes both the deepest hardware match and the certificate opportunity set. We also describe the exact memory-only dynamic program, the bank-repair local search, and every branch of the portfolio.
On a synthetic parser-depth sweep and a 50k replay of public NDN testbed names under a reproducible synthetic forwarding-action snapshot, modeled certified coverage increases from 46.48% for the best exact-prefix-only bank-aware baseline to 64.06% at total budget . These numbers characterize placement opportunity under the stated model; the current evaluator uses the known true LPM as an oracle-style guard, certificate-table bank traffic is not modeled, and no claim is made about synthesized latency, area, or throughput. The extended analysis makes these boundaries explicit and identifies a natural next problem: jointly synthesizing cheap one-sided guards for high-value action-equivalent classes.
Preprint note. This manuscript extends the conference-format version with additional algorithmic analysis, worked examples, implementation correspondence, and explicit discussion of architectural boundaries. The reported numerical results are unchanged.
1 Introduction
Named Data Networking (NDN) replaces host-address-based forwarding with name-based forwarding [1, 2]. Instead of routing toward fixed-width destination addresses, an NDN forwarder processes Interests for hierarchical names such as /edu/ucla/video/lecture/seg5. This naming model enables content-centric retrieval, in-network caching, and Interest aggregation, but it also changes the forwarding lookup problem: the router must parse a variable number of components and compute longest-prefix matches over a hierarchical namespace.
Hardware pipelines, by contrast, are intentionally bounded. They expose finite parser depth, fixed stage counts, finite memory capacity, restricted memory bandwidth, and constrained update paths. A fast-path design must therefore answer a question that is partly algorithmic and partly architectural: which forwarding decisions are worth representing in hardware, and which of those decisions can be accepted without changing the exact forwarding action?
A naive answer is to store popular exact FIB prefixes. This is safe, but it can spend one object per exact-LPM class and additionally pay structural trie-closure cost. A more aggressive answer is to store a shallower prefix that covers a large subtree. That is cheap, but potentially wrong: the subtree may contain deeper prefixes whose forwarding actions override the shallow action. The central tension is therefore not merely compression; it is semantics-preserving compression.
We study this tension through action-equivalence certificates. If a selected shallow prefix and a deeper true-LPM class have the same forwarding action, then using is semantically safe for traffic whose exact class is . The certificate records this relation. A separate sound guard is required to prove that the current packet belongs to ; packets that cannot be certified fall back. This makes the accepted fast path conservative by construction.
The main algorithm, BPC-Greedy, does not first optimize exact-prefix placement and then bolt certificates on afterward. Instead, when it considers adding a prefix closure, it evaluates the certificate-aware marginal gain of that closure. A shallow prefix can therefore be selected even when its own exact-LPM traffic is modest, provided it enables high-weight same-action descendant classes. BPC-Portfolio then treats several structurally different heuristics as complementary search biases and returns the best feasible candidate.
The extended preprint focuses on the combinatorial structure underlying this mapper. Its main additions are:
- •
a precise decomposition into tree-closure placement, certificate selection, bank assignment, and budget splitting;
- •
an exact dynamic program for the memory-only prefix-closed subproblem and an explanation of the bank-repair local search;
- •
a proof that top- certificate selection is optimal for fixed under the current unit-cost trace model;
- •
a detailed account of why the full objective is nevertheless nonseparable: adding a prefix changes the deepest selected match and therefore changes which certificate pairs exist;
- •
a visual and algorithmic explanation of the BPC-Portfolio branches;
- •
a more explicit account of the oracle guard, the bank abstraction, and the path toward guard-aware physical cost models.
2 NDN Lookup and a Running Example
An NDN forwarder maintains multiple data structures, including a Content Store (CS), Pending Interest Table (PIT), and Forwarding Information Base (FIB) [3, 4]. This paper isolates the FIB lookup subproblem. Each FIB prefix has an action , representing an outgoing face or next-hop set.
Consider the FIB in Fig. 1. The shallow prefix /edu/ucla and deeper prefix /edu/ucla/video both map to action A, whereas /edu/ucla/repo maps to B. Therefore the same shallow state is safe for one descendant class and unsafe for another.
A trace provides workload weight. For example, suppose 65 Interests have true LPM /edu/ucla/video, 20 have true LPM /edu/ucla/repo, and 15 have true LPM /edu/wustl. The FIB determines what forwarding semantics exist; the trace determines how often each semantic class is exercised. The mapper uses both.
3 Model and Notation
Let be a weighted trace of Interest names. Each name has weight . Let be the FIB prefixes embedded in a prefix trie with node set . We write when prefix matches component-wise.
The exact forwarding class is
| (1) |
with exact action .
The mapper selects a parser-visible, prefix-closed set . Structural closure nodes may belong to without being FIB entries. Only carries actions. With parser depth , the deepest selected match is
| (2) |
If no selected node matches, .
Let be a set of certificates. A certificate requires
| (3) |
The target need not be selected and certificates themselves have no prefix-closure requirement. This is important: the purpose of a certificate is precisely to avoid storing every deeper target as selected trie state.
The object-equivalent budget is
| (4) |
where is the normalized certificate cost. The main experiment uses as a reference normalization, not as a measured equality of silicon area.
Selected trie state is assigned to abstract banks. If is the bank of selected node and is its modeled load, then
| (5) |
In the current implementation, is the trace-derived true-LPM count for action-bearing FIB nodes and zero for structural closure nodes. Certificates are not charged bank load. Section 9.3 discusses why this is a feasibility proxy rather than a runtime memory model.
A target-class guard must satisfy the one-sided soundness condition
| (6) |
False negatives are allowed: a guard may decline to certify a packet and send it to fallback. False positives are not allowed because they could change the forwarding action.
A packet is certified when either the selected match is exact or a stored same-action certificate is accompanied by a sound target-class guard:
| (7) |
The primary metric is
| (8) |
4 Combinatorial Anatomy of the Placement Problem
The full mapper is easier to understand when decomposed into four coupled layers: tree closure, certificate choice, bank partitioning, and budget splitting. Fig. 2 summarizes the decomposition.
4.1 Prefix closure creates reusable path cost
Let denote the parser-visible ancestor closure of candidate FIB prefix . The incremental object cost of adding to a current selection is
| (9) |
This is not a fixed item cost. If some ancestors are already selected, the same deep prefix becomes cheaper.
Lemma 1 (Ancestor reuse). If , then for every candidate .
Proof. Because , removing from the same closure can only remove at least as many already-present nodes as removing .
This tiny observation has a large algorithmic consequence: a static ranking such as “traffic divided by depth” cannot capture the true marginal cost. Previously selected ancestors create reuse, and the greedy score must be recomputed after every commit.
4.2 Memory-only exact placement is a tree-knapsack dynamic program
The repository contains an exact dynamic program, PCT-DP, for the memory-only prefix-closed subproblem. For a selected node , let be the maximum exact-LPM weight obtainable from the subtree of with selected nodes, conditioned on selecting (the root is free). If is ’s FIB weight or zero for a structural node, then the recurrence is a tree convolution:
| (10) |
where are children of and the zero option means not selecting a child subtree. The implementation realizes this recurrence by repeatedly merging child budget tables.
PCT-DP is useful conceptually because it separates two facts. Prefix closure alone is structured enough for exact dynamic programming on a tree; adding bank assignment and certificate-aware state-dependent value destroys that clean one-dimensional budget structure.
4.3 For fixed , certificate selection is exactly top-
Fix selected state and parser depth . Every trace packet has a unique deepest selected match and a unique true LPM . If and , the packet contributes to exactly one candidate pair .
Define the weight of a pair as
| (11) |
for action-valid pairs only.
Proposition 1 (Optimal certificate selection for fixed ). Under uniform certificate cost and a budget of at most certificates, selecting the pairs with largest maximizes certificate hits for the fixed prefix set .
Proof. Each eligible trace packet contributes to exactly one pair because both and are unique. Therefore the traffic covered by distinct certificate pairs is disjoint, and total certificate hits are the sum of selected pair weights. Under equal cost, the maximum-weight subset of cardinality is exactly the top- weights.
This is one of the useful structural simplifications in the implementation. The certificate subproblem does not require another approximate solver once is known.
4.4 The hard coupling: changes the certificate universe
Although fixed- certificate choice is simple, itself changes when changes. If a deeper selected prefix is added, the deepest selected match for some packets moves from an ancestor to the newly selected prefix . Existing pairs can disappear, new pairs can appear, and some traffic can become exact. Thus certificate value is not an independent item value attached permanently to a FIB node.
This is why BPC-Greedy evaluates a candidate by replaying its joint exact-plus-certificate effect. The relevant marginal gain is
| (12) |
where is the optimal top- certificate set for fixed .
4.5 Bank assignment is a separate load-partition problem
For a candidate selected set, the implementation sorts selected nodes by decreasing and places each next item into the currently least-loaded bank, then checks Eq. (5). This is an LPT-style load-balancing heuristic. BankRepairOnly adds a local repair layer that can remove low-density selected leaves when memory or bank constraints are violated.
The bank layer therefore acts as a feasibility filter on a selected prefix set; it is not part of the certificate top- proof and it is not a simulation of the packet lookup schedule.
4.6 The generalized optimum contains exact-only placement as a special case
Proposition 2 (Model-level dominance of the generalized feasible region). Let be the best feasible coverage with , and let be the optimum of the generalized model with certificates allowed under the same resource semantics. Then .
Proof. Every exact-only feasible solution remains feasible in the generalized problem by choosing the same , and .
This is a statement about the optimization model, not the heuristic. BPC-Greedy has no approximation guarantee and can in principle miss a better exact-only construction; BPC-Portfolio partly mitigates that risk by explicitly including exact-heavy candidates.
5 Algorithms
5.1 Exact and bank-aware baselines
TopK. A popularity-only sanity baseline ranks FIB prefixes by trace weight without reasoning about bank pressure or certificate opportunities. It is intentionally simple and is not the headliner baseline.
PCT-DP. The exact memory-only dynamic program described above maximizes exact-prefix weight subject to parser depth, budget, and prefix closure. It serves as a useful oracle for small/memory-only settings.
BankGreedy. BankGreedy scores a candidate using its exact FIB-weight gain divided by missing closure cost plus a bank-balance penalty. Candidates that cannot be feasibly assigned to banks are skipped.
BankRepairOnly. The main exact-only hardware baseline begins from BankGreedy and performs conservative local search. For each candidate closure, if the trial exceeds the node budget or bank capacity, the algorithm repeatedly removes low-density selected leaves that are not part of the new closure. Restricting removal to leaves preserves prefix closure. Density is
| (13) |
The repaired trial is accepted only when it is feasible and improves exact-prefix value.
5.2 BPC-Greedy
BPC-Greedy is the main proposed heuristic. The released code and raw logs retain the historical label BPC-Repair; the final name BPC-Greedy matches the current behavior because a bank-infeasible BPC trial is skipped rather than repaired.
The outer loop tries certificate budget options . For each split,
| (14) |
The inner greedy loop starts from and evaluates every parser-visible FIB prefix. For candidate , it computes missing closure , rejects a trial exceeding , rejects a bank-infeasible trial, exactly chooses the top- certificate pairs for the trial, and measures the resulting increase in certified hits.
The implemented score is
| (15) |
The coefficient 0.15 is heuristic; no approximation ratio is claimed. The best positive-gain trial is committed, the certificate set is recomputed, and the process repeats until no feasible positive-gain candidate remains. Finally, the best budget split is retained.
5.3 Why BPC is not “exact greedy + certificates”
This distinction is central. An exact-first heuristic scores a prefix by traffic for which that prefix is itself the true LPM. BPC scores a prefix by the total safe traffic enabled after certificates are recomputed. A shallow prefix can therefore win even if it has little direct exact traffic.
For example, consider a selected candidate with three descendant true-LPM classes of weights 40, 25, and 20, with actions A, A, B while . With two certificate slots, can enable 65 certificate hits through and , while remains fallback. Exact-only scoring would not see this value unless it stores and themselves.
5.4 BPC-Portfolio as multi-bias search
BPC-Portfolio evaluates structurally different candidate generators under the same final validation. Fig. 3 shows the branches.
BPC-Greedy branch. Jointly values prefix closures by certificate-aware marginal safe coverage. This is the branch selected by the portfolio in every reported real-name configuration.
BankRepair+Cert. Reserves certificate slots, uses BankRepairOnly to construct a strong exact-prefix solution under the reduced prefix budget , then adds the best certificates available to that fixed . Certificates do not influence which prefixes are selected.
ExactGreedy+Cert. Sorts FIB prefixes by exact trace weight, greedily inserts closures while they fit the prefix budget, then attaches certificates. This branch intentionally favors concentrated exact-LPM traffic.
ShallowShortcut+Cert. Sorts candidates primarily by shallow depth and secondarily by descendant FIB-weight mass. It deliberately seeks cheap ancestors that may act as certificate anchors for large same-action regions. It is the most shortcut-biased portfolio branch.
The portfolio uses lexicographic tie-breaking: higher certified coverage, then higher exact prefix value, then fewer selected nodes.
5.5 Complexity and why the current implementation is expensive
Let be the parser-visible FIB prefix count, the trace size, maximum relevant name depth, the number of budget splits, and the number of committed greedy rounds. A straightforward candidate evaluation scans the trace to compute certificate-aware coverage and performs a bank assignment for the trial. Ignoring small constants, a conservative implementation-level bound is
| (16) |
which explains why the full 50k BPC sweep is an offline design-space exploration rather than a runtime algorithm.
Several speedups are natural: cache ancestor closures, precompute exact LPM labels, maintain certificate-pair counts incrementally, use lazy-greedy upper bounds, prune dominated budget splits, and compress action-homogeneous regions. These are algorithm-engineering opportunities rather than changes to the semantic model.
6 The Guard Abstraction and the Next Architectural Problem
The guard is the most important unresolved architectural component. The current trace evaluator knows and therefore instantiates oracle-style. This is useful for measuring placement opportunity, but it does not establish that a low-cost runtime guard exists.
The key distinction is that a practical guard need not solve full multi-class LPM. It may be a conservative one-sided classifier. Full LPM asks which of many possible prefixes is deepest. A guard for target class asks only whether there is sufficient evidence to safely certify ; uncertainty is allowed to fall back.
| Concept | File/function | Role |
|---|---|---|
| Trie and exact semantics | ndnhw/trie.py | path insertion, exact lpm(), deepest selected match, ancestor closure |
| Memory-only exact DP | ndnhw/pct_dp.py::pct_dp | exact prefix-closed dynamic program without banks/certificates |
| Bank greedy | ndnhw/bank_greedy.py | exact-value greedy with closure and bank feasibility |
| Exact local repair | ndnhw/bank_repair.py | add closure, remove low-density leaves until memory/bank feasible |
| Certificate semantics | ndnhw/certificates.py | same-action pair counts, top- selection, exact/certificate/fallback classification |
| BPC-Greedy | ndnhw/cert_bank_repair.py | certificate-aware prefix selection across budget splits |
| Portfolio | ndnhw/cert_bank_portfolio.py | evaluates BPC, repair, exact-heavy, and shallow-heavy constructions |
| Real-name experiment | experiments/run_v044_trace_replay_parallel.py | deterministic sampling, parallel sweep, CSV/metadata export |
This suggests a stronger future optimization. Rather than using a constant , assign every potential certificate a physical cost that includes metadata, guard bits, and expected access cost:
| (17) |
The algorithmic target becomes: find high-traffic action-equivalent classes with cheap one-sided signatures. This directly connects semantic opportunity to implementable hardware cost.
7 Implementation Correspondence and Reproducibility
The implementation is a Python package plus experiment drivers. Table 1 maps the mathematical concepts to the released code structure used for the experiments.
The trace construction first inserts FIB prefixes, then inserts observed Interest paths, then replays every Interest against the full FIB trie to obtain its true LPM. The resulting true-LPM counts become FIB weights and, in the current bank model, access-load proxies. The repository test suite contains 13 automated tests covering trie/name behavior, certificate logic, bank repair, bank oracle cases, BPC, portfolio, PIT behavior, DP metrics, and structured traces.
The reported real-name run uses deterministic sample seed 1. Raw per-configuration rows, summary CSVs, metadata JSON, and source totals are preserved. In the final sweep, all 18 BPC-Portfolio winners report source BPC-Repair, i.e., the legacy code label for the BPC-Greedy branch.
| Parameter | Value |
|---|---|
| sample size / seed | 50,000 / 1 |
| matched Interests | 49,961 |
| parser-visible matched Interests at | 34,076 |
| parser depth | |
| object budgets | |
| bank counts | |
| bank regimes | fixed-total, fixed-per-bank |
| certificate cost | |
| headliner methods | BankRepairOnly, BPC-Greedy, BPC-Portfolio |
8 Evaluation Methodology
8.1 Workloads
We use two complementary workloads. First, a synthetic structured trace isolates parser visibility: 1,200 Interests, 48 FIB prefixes, seed 7, and Zipf parameter . Second, we replay public NDN testbed names from the TNTech-NGIN dataset [5]. The combined public data contains 265,925 names; the reported run samples 50,000 with seed 1, of which 49,961 have a matched FIB LPM.
The public packet traces do not contain a complete forwarding-state snapshot. We therefore derive a pruned FIB from observed prefixes at depths 1–4 and assign each retained prefix an action class from its first name component. This yields 143 FIB prefixes and six synthetic action classes; the sampled trie contains 14,976 nodes. At , 34,076 matched Interests are parser-visible. The experiment is therefore a real-name replay under a reproducible synthetic forwarding-action snapshot, not a replay of a live router’s routing state.
8.2 Configuration
The two bank regimes separate different abstract capacity assumptions. In fixed-total, increasing partitions fixed total capacity. In fixed-per-bank, each bank retains fixed capacity, so total capacity grows with .
8.3 Metrics
Certified coverage counts exact hits plus accepted same-action certificate hits. All remaining traffic falls back. The would-be unsafe rate is the subset of fallback that matches selected shallow state but is neither exact nor certified. Prefix-bank feasibility is reported separately.
| BankRepairOnly | BPC-Portfolio | |||||
|---|---|---|---|---|---|---|
| Cov. | FB | WU | Cov. | FB | WU | |
| 16 | 23.36 | 76.64 | 35.04 | 39.45 | 60.55 | 28.70 |
| 32 | 36.45 | 63.55 | 31.66 | 55.26 | 44.74 | 12.88 |
| 48 | 46.48 | 53.52 | 21.63 | 64.06 | 35.94 | 4.04 |
9 Results
9.1 Parser depth is a first-order constraint
Fig. 5 shows the synthetic parser sweep. Parser-visible traffic rises from 36.83% at to 91.92% at , reaching 100% at . This effect occurs before placement: a prefix or certificate cannot help a packet whose necessary name structure is not visible to the bounded parser.
9.2 Certificate-aware placement increases modeled coverage
At , the best exact-only BankRepairOnly coverage is 23.36%, while BPC-Portfolio reaches 39.45%. At , the values are 36.45% and 55.26%. At , coverage rises from 46.48% to 64.06%, an absolute gain of 17.58 percentage points (approximately 37.8% relative).
The selected BPC states at contain respectively 4, 8, and 16 trie nodes with certificate budgets 12, 24, and 32. At , the normalized budget is therefore
| (18) |
This split should not be read as a physical claim that one certificate occupies exactly the same number of bits as one trie node; is the reference normalization used in this experiment.
9.3 The bank results require careful interpretation
Fig. 7 reproduces the bank-model sensitivity at . Exact-only coverage is strongly affected by the tested regime, whereas BPC remains at 64.06% because its selected prefix state is small enough to be feasible in every tested setting.
This result is intentionally interpreted conservatively. The current bank model has three important simplifications:
- 1.
only selected trie nodes are assigned bank load; certificate metadata and guard accesses are not;
- 2.
a shallow selected node is charged its trace-derived true-LPM load, not all descendant packets that may logically use it through certificates;
- 3.
the bank assignment is an offline feasibility partition; runtime addressing, parallel probing, arbitration, and deepest-match reduction across banks are not simulated.
Consequently, the bank experiments are best viewed as one abstract resource-pressure dimension of the placement study. A bank-free sensitivity run and a concrete certificate-table datapath are natural follow-up evaluations; their results cannot be inferred from the present CSVs without rerunning the mapper.
10 When Certificates Are Most Valuable
Certificates are most attractive in nearly action-homogeneous regions: a shallow prefix shares its action with several high-traffic deeper LPM classes, but the subtree contains enough conflicting exceptions that blindly collapsing the whole subtree would be incorrect.
Suppose has action A and descendants with actions A, A, A, B and traffic weights 30, 20, 15, 2. Storing plus three same-action certificates can potentially cover 65 units of descendant traffic while leaving the conflicting B class to fallback. By contrast, if every descendant has action A, a separate FIB-compression stage could potentially collapse the region more directly; if almost every descendant has a different action, certificate opportunity is small.
This motivates a useful future value model:
| (19) |
The most interesting classes are not merely same-action classes; they are high-traffic same-action classes that admit cheap one-sided guards.
11 Related Work
High-speed NDN forwarding has been explored in software forwarders such as NFD and NDN-DPDK [4, 6], specialized name lookup structures [7, 8, 9], FPGA FIB lookup engines [10], programmable-switch systems such as Vision and Pegasus [11, 12], and probabilistic summaries such as adaptive prefix Bloom filters [13]. These systems demonstrate concrete fast paths on different execution substrates.
Our question is complementary: given a workload and explicit abstract resource budgets, which exact-LPM classes are safely representable by selected trie state plus semantics-preserving shortcuts? The focus is therefore offline placement and design-space characterization rather than an end-to-end forwarding datapath.
12 Limitations and Research Directions
The strongest limitations are architectural rather than algorithmic bookkeeping.
Oracle-style guard. The evaluator uses the known true LPM to instantiate the target-class guard. A practical design must replace this oracle with a bounded, sound implementation. The promising direction is not necessarily another complete LPM engine, but cheap one-sided signatures that certify profitable classes and reject uncertainty to fallback.
Synthetic forwarding actions. Public traces provide real names but not a complete live FIB snapshot. The first-component action assignment creates broad equivalence regions and can favor certificate opportunities. Action-model sensitivity and live forwarding-state snapshots are necessary before making claims about operational routing policies.
Bank abstraction. Prefix load is a true-LPM-derived proxy; certificates and guards carry no bank load; runtime bank lookup is not modeled. The current results therefore do not establish memory-system throughput.
Normalized certificate cost. The main result uses . A physical model should derive certificate and guard cost from bits, area, access energy, and bandwidth rather than treating all metadata objects as equal.
No RTL/calibrated performance. There is no synthesis, place-and-route, cycle timing, power, area, or calibrated throughput result. The contribution is an offline placement formulation and opportunity characterization.
Algorithmic scaling. Naive certificate-aware candidate evaluation repeatedly scans the trace. Incremental counts, lazy evaluation, subtree compression, and guard-aware pruning are promising engineering improvements.
13 Conclusion
This work reframes bounded NDN forwarding lookup as a combinatorial placement problem with a strict semantic boundary: a fast-path decision is accepted only when it preserves the exact forwarding action. Prefix closure produces reusable tree cost; exact memory-only placement admits dynamic programming; fixed-state certificate selection collapses to an exact top- problem; bank feasibility adds a load-partition layer; and the full difficulty comes from coupling these pieces because changing selected state changes the deepest hardware match and therefore the certificate universe.
BPC-Greedy exploits this coupling by scoring prefix closures using certificate-aware marginal safe coverage, while BPC-Portfolio hedges among certificate-aware, exact-heavy, repair-based, and shallow-heavy search biases. On the reported real-name replay under a reproducible synthetic action snapshot, the resulting placement increases modeled certified coverage from 46.48% to 64.06% at .
The most important next step is now sharply defined: move from oracle certificates to implementable guarded certificates. In algorithmic terms, the next problem is to discover and co-optimize cheap, one-sided signatures for high-value action-equivalent classes, together with their physical storage, bank traffic, and latency. That extension would connect the placement opportunity exposed here to a complete hardware datapath.
Appendix A Worked Microexample
Consider FIB prefixes with , actions
and exact-LPM trace weights 40, 25, and 20 for . Assume selecting requires one new trie node and the certificate budget is two.
With , the candidate certificate weights are
while is invalid because actions differ. Top-2 certificate selection therefore certifies 65 packets. If another selected node deeper in the branch is later added, packets formerly contributing to may instead become exact or contribute to a new pair . This illustrates why certificate selection is trivial for fixed but prefix selection is not.
Appendix B Implementation-Level Pseudocode for Certificate Evaluation
The evaluator logically performs the following classification for each trace Interest:
The second branch is where the current offline evaluator uses the trace-known true LPM as the guard oracle. A physical implementation must replace that membership test with a sound runtime guard.
Appendix C Why Certificates Are Not Prefix-Closed
Prefix closure applies to , because represents explicit trie state. The certificate set is metadata over semantic relations. A target can remain completely unselected while is stored, provided , , and . Requiring certificate targets to be selected would defeat the main storage advantage of the construction.
References
- [1] Named Data Networking Project. NDN Architecture Overview. https://named-data.net/project/archoverview/, 2026. Accessed Jul. 2026.
- [2] Named Data Networking Project. NDN Packet Format Specification. https://docs.named-data.net/NDN-packet-spec/current/, 2026. Accessed Jul. 2026.
- [3] Zhuo Li, Yaping Xu, Beichuan Zhang, Liu Yan, and Kaihua Liu. Packet forwarding in named data networking requirements and survey of solutions. IEEE Communications Surveys & Tutorials, 21(2):1950–1987, 2019.
- [4] Alexander Afanasyev, Junxiao Shi, Beichuan Zhang, Lixia Zhang, et al. NFD Developer’s Guide. Technical Report NDN-0021, Named Data Networking Project, 2021. Revision 11.
- [5] Sankalpa Timilsina, Davide Pesavento, Junxiao Shi, Susmit Shannigrahi, and Lotfi Benmohamed. Capture and analysis of traffic traces on a wide-area NDN testbed. In Proceedings of the 10th ACM Conference on Information-Centric Networking (ICN), pages 101–108, 2023. Dataset: https://github.com/tntech-ngin/ndn-traffic-traces.
- [6] Junxiao Shi, Davide Pesavento, and Lotfi Benmohamed. NDN-DPDK: NDN forwarding at 100 Gbps on commodity hardware. In Proceedings of the 7th ACM Conference on Information-Centric Networking (ICN), pages 30–40, 2020.
- [7] Yi Wang, Huichen Dai, Junchen Jiang, Keqiang He, Wei Meng, and Bin Liu. Parallel name lookup for named data networking. In IEEE Global Telecommunications Conference (GLOBECOM), pages 1–5, 2011.
- [8] Yi Wang, Keqiang He, Huichen Dai, Wei Meng, Junchen Jiang, Bin Liu, and Yan Chen. Scalable name lookup in NDN using effective name component encoding. In IEEE International Conference on Distributed Computing Systems (ICDCS), pages 688–697, 2012.
- [9] Won So, Ashok Narayanan, and David Oran. Named data networking on a router: Fast and DoS-resistant forwarding with hash tables. In Proceedings of the Ninth ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS), pages 215–226, 2013.
- [10] Weiwen Yu and Derek Pao. Hardware accelerator for FIB lookup in named data networking. Microprocessors and Microsystems, 71:102877, 2019.
- [11] Junji Takemasa, Yuki Koizumi, and Toru Hasegawa. Vision: Toward 10 Tbps NDN forwarding with billion prefixes by programmable switches. In Proceedings of the 8th ACM Conference on Information-Centric Networking (ICN), pages 13–19, 2021.
- [12] Xingguo Long, Kun Huang, Rongwei Yang, Qingguo Dai, and Zhenyu Li. Pegasus: A high-speed NDN router with programmable switches and server clusters. In Proceedings of the 10th ACM Conference on Information-Centric Networking (ICN), pages 12–18, 2023.
- [13] Wei Quan, Changqiao Xu, Jianfeng Guan, Hongke Zhang, and Luigi Alfredo Grieco. Scalable name lookup with adaptive prefix bloom filter for named data networking. IEEE Communications Letters, 18(1):102–105, 2014.