PlanB: Efficient Software IPv6 Lookup with Linearized $B^+$-Tree

📅 2026-04-16
📈 Citations: 0
Influential: 0
📄 PDF

career value

237K/year
🤖 AI Summary
This work addresses the performance degradation and high memory overhead of traditional longest prefix match (LPM) algorithms caused by the diverse and lengthy prefixes in IPv6 forwarding tables. To overcome these limitations, the paper presents the first formulation of LPM as a unified one-dimensional elementary interval search problem and introduces a flattened array-based linearized $B^+$-tree structure. By integrating CPU-centric optimizations—including vectorization, batching, branch-free logic, and loop unrolling—the proposed design significantly enhances lookup efficiency. Experimental results demonstrate that the approach achieves a lookup rate of 390 million operations per second on a single AMD core, scaling to 3.4 billion operations per second on 12 cores, thereby outperforming existing software solutions by 1.6× to 14×.

Technology Category

Application Category

📝 Abstract
IP lookup via Longest Prefix Match (LPM) is critical for packet forwarding. Unfortunately, conventional lookup algorithms are inefficient for IPv6 Forwarding Information Bases (FIBs), which are characterized by a set of long prefixes with diverse lengths. We observe that LPM inherently represents a two-dimensional (2D) search problem over both prefix values and prefix lengths, but existing algorithms mostly treat LPM as two separate levels of one-dimensional (1D) searches, causing poor lookup performance and high memory overhead. This paper presents PlanB, a novel scheme for high-speed IPv6 lookup. We transform the 2D LPM into an equivalent 1D search problem over elementary intervals, thereby unifying the search across prefix value and lengths. We then adapt a flat-array-based B-tree structure to the needs of LPM to propose the linearized $B^+$-tree, based on which we introduce an efficient search algorithm tailored to the properties of the transformed space. To maximize performance, we integrate PlanB with vectorization, batching, branch-free logic, and loop unrolling to fully exploit CPU parallelism. Extensive evaluation shows that PlanB achieves single-core performance of 390 Million Lookups Per Sec (MLPS) with real-world IPv6 FIBs on AMD processor, and scales to full-12-core performance of 3.4 Billion Lookups Per Sec (BLPS). This is 1.6$\times$$\sim$14$\times$ higher than state-of-the-art software-based schemes (PopTrie, CP-Trie, Neurotrie and HBS).
Problem

Research questions and friction points this paper is trying to address.

IPv6 lookup
Longest Prefix Match
Forwarding Information Base
2D search problem
LPM efficiency
Innovation

Methods, ideas, or system contributions that make the work stand out.

Longest Prefix Match
Linearized B⁺-Tree
IPv6 Lookup
Elementary Intervals
Vectorization