Boundary-Value Routing Trees for Faster Longest Prefix Matching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The process of Longest Prefix Matching (LPM) in routers is complex and time-consuming, requiring significant CPU resources and involving challenging database management due to overlapping IP prefixes and frequent updates, which current solutions like TCAM, Hash tables, and Trie-Bit-Map algorithms struggle to efficiently address.

Innovation Solution

A tree-based approach for routing using a hardware unit to scan a tree structure with nodes having boundary values, allowing efficient comparison and updating of destination address ranges, reducing the need for complex database management and CPU-intensive operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional LPM methods (TCAM, Hash tables, Trie-Bit-Map) are used to search routing tables, then routing accuracy is maintained, but the computational complexity and time consumption increase significantly

Engineering Contradiction:
Improverouting accuracyVSAvoidcomputational complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The routing table is segmented into multiple layers or levels, where each layer handles a specific range of IP prefixes. This segmentation allows the search process to be divided into smaller, more manageable steps, reducing the computational complexity at each stage while maintaining overall routing accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimensional approach by organizing routing information in a multi-dimensional space rather than traditional linear structures. This allows for more efficient spatial indexing and search operations, reducing the time complexity from linear or logarithmic to constant time in certain scenarios.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Measurement precision

If IP addresses are verified against all prefixes in the routing table, then routing accuracy is ensured, but the processing time becomes impractical for high-speed routers

Engineering Contradiction:
Improverouting accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The routing table is pre-processed and organized into an optimized data structure before actual packet forwarding. This preliminary organization includes pre-calculating prefix hierarchies, building lookup trees, and establishing efficient indexing mechanisms, so that during packet forwarding, the router only needs to perform simple lookups rather than exhaustive comparisons.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a skipping mechanism that allows the search process to jump over large portions of the routing table that cannot possibly match the current packet's destination IP. By analyzing the IP prefix length and value, the router can skip entire branches of the search tree, dramatically reducing the number of comparisons needed.

Inventive Principle:
Principle #21Skipping (Rushing through)

3Measurement precision

If the routing table is frequently updated to maintain coherence, then routing accuracy is maintained, but the management complexity and CPU overhead increase

Engineering Contradiction:
Improverouting accuracyVSAvoiddatabase management complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The routing table structure is designed to be dynamic and adaptive, automatically reorganizing itself during updates without requiring complete reconfiguration. The data structure can dynamically adjust its hierarchy, merge or split prefixes, and maintain balance during insertions and deletions, reducing the management overhead compared to static structures.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The routing table structure is designed to be self-healing and self-organizing. When updates occur, the structure automatically maintains its integrity and balance through built-in rebalancing algorithms and conflict resolution mechanisms, reducing the need for external management intervention and CPU overhead.

Inventive Principle:
Principle #25Self-service

4Measurement precision

If longer prefixes are placed at specific positions in the database, then LPM accuracy is improved, but adding or removing prefixes requires shifting all other entries

Engineering Contradiction:
ImproveLPM accuracyVSAvoiddatabase update complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The routing table is organized as a nested hierarchical structure where prefixes are arranged in a tree-like format. Longer prefixes are nested within the branches created by shorter prefixes, allowing for efficient insertion and deletion without requiring shifts of unrelated entries. Each node in the hierarchy represents a prefix, and children nodes represent more specific sub-prefixes.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS12425341B2Longest prefix matching
Publication Date: 2025.09.23 ETHERNITY NETWORKS
  • US12425341B2 patent drawing
  • US12425341B2 patent drawing
  • US12425341B2 patent drawing

AI summary

A method for routing using longest prefix matching. The method may include receiving a packet associated with a packet destination address; scanning, using the packet destination address, a tree that comprises multiple nodes to find a longest matching destination address prefix. The multiple nodes may include leaf nodes and non-leaf (NL) nodes. The NL nodes are associated with node boundary values that represent boundaries of destination address ranges, the destination address ranges are spanned by destination addresses prefixes of a routing table; and applying at least one routing decision, based on the longest matching destination address prefix. Each NL node has NL children nodes. The NL node is also associated with the NL children node pointers that point to the NL children nodes; introducing one or more changes in values of one or more of the boundaries of destination address ranges, while maintaining links to the multiple nodes unchanged.