Multibit Trie IP Routing Lookup for Network Devices

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity of routing search processes in network devices, particularly due to wildcard characters and Longest Prefix Matching (LPM) in Classless Inter-Domain Routing (CIDR), leads to inefficient data transfer and increased memory access in routing tables, which affects the performance of routers.

Innovation Solution

The implementation of a Multibit Trie data structure with Tree Bitmap nodes, optimized for hardware pipeline implementation, reduces the number of search operations by searching multiple bits at once, dividing the trie into layers based on a predefined search step size, and using Internal Tree Bitmaps, Extending Paths Bitmaps, Result Array Pointers, and Child Node Pointers to efficiently manage routing information.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional routing search methods using Longest Prefix Matching (LPM) and wildcard characters are used, then routing information can be stored in the routing table, but the search process becomes complex and inefficient

Engineering Contradiction:
Improverouting search efficiencyVSAvoidsearch process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The routing table is divided into multiple routing tables, each storing routing information for a specific portion of the address space. This segmentation allows parallel processing of different address portions, reducing the overall search complexity and improving routing search efficiency while maintaining comprehensive routing coverage

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the traditional single-dimension LPM search problem into a multi-dimensional search space by organizing routing information across multiple tables with different address portions. This dimensional transformation enables more efficient search operations by distributing the search load across multiple dimensions rather than processing all addresses sequentially in a single table

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

2Adaptability or versatility

If more routing information is stored in the routing table to support CIDR and wildcards, then routing flexibility increases, but memory access time increases

Engineering Contradiction:
Improverouting flexibilityVSAvoidmemory access time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

Routing information is segmented across multiple routing tables, each handling a specific portion of the address space. This allows the system to maintain high routing flexibility through comprehensive CIDR and wildcard support while reducing memory access time by searching only relevant portions of the address space in each table rather than scanning the entire routing table

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each routing table is optimized to store routing information with specific characteristics (e.g., specific address prefixes or wildcard patterns). This local optimization allows each table to be searched more efficiently for its designated portion of the address space, reducing overall memory access time while maintaining global routing flexibility

Inventive Principle:
Principle #3Local quality

3Productivity

If the routing table is searched sequentially for each data packet, then routing decisions can be made, but data transfer efficiency decreases

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidrouting search time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The routing search process is segmented into parallel operations across multiple routing tables. Different address portions are searched simultaneously in different tables, transforming the sequential search into a parallel process that significantly reduces routing search time and improves data transfer efficiency

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Routing information is pre-organized into multiple tables with specific address portions and patterns before data packets arrive. This preliminary organization enables rapid parallel searching when packets need to be routed, eliminating the need for sequential scanning and dramatically reducing routing search time for incoming packets

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3319279B1IP routing lookup
Publication Date: 2020.08.12 NEW H3C TECH CO LTD
  • EP3319279B1 patent drawingFigure 1
  • EP3319279B1 patent drawingFigure 2~3
  • EP3319279B1 patent drawingFigure 4

AI summary

A Multibit Trie is created for routing distribution of IP prefixes in each Virtual Private Network (VPN). Routing of IP prefixes in the highest level 1∼m of the Multibit Trie is expanded to IP prefixes in level m+1 according to a prefix expansion method, wherein m is an integer larger than 1. Each branch of the IP prefixes in the level m+1 of the Multibit Trie is taken as a Branch_Tree, and data structure information of each Branch_Tree is saved. When routing of an IP address in a VPN is to be searched, a Branch_Tree is searched in a Multibit Trie corresponding to the VPN according to the highest m+1 bits of the IP address, and the routing of the IP address is searched in the Branch Tree.