Multi-Stride Compressed Trie Lookup Using Hashed Keys

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing lookup table structures for large networks, such as those using IPv4 and IPv6, face inefficiencies in storage and search time due to the need for multiple levels of binary search in Trie structures, and compression methods do not adequately reduce storage requirements in sparse tables.

Innovation Solution

The use of a hashed key to reduce the number of stride bits needed for lookup, combined with compression functions to optimize storage by representing long input keys in a multi-stride structure, allowing for faster convergence to lookup results with reduced memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If a traditional Trie structure with multiple levels of binary search is used, then storage space efficiency is improved, but search time increases

Engineering Contradiction:
Improvestorage spaceVSAvoidsearch time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent divides the lookup key into multiple strides (segments) and processes them in parallel through a multi-stride compressed trie structure. Each stride processes a portion of the key simultaneously, reducing the sequential search steps while maintaining storage efficiency through compression techniques.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from a single-dimensional binary search approach to a multi-dimensional structure where multiple strides operate in parallel. This dimensional expansion allows simultaneous processing of different key portions, improving search speed without sacrificing storage efficiency.

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

2Quantity of substance

If compression functions are applied to reduce storage requirements in sparse tables, then storage efficiency is improved, but lookup complexity increases

Engineering Contradiction:
Improvestorage requirementsVSAvoidlookup complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent pre-computes and stores compression function results in the multi-stride compressed trie structure during table construction. This preliminary action eliminates the need for complex runtime compression operations, reducing lookup complexity while maintaining storage efficiency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The multi-stride compressed trie structure inherently incorporates compression logic in its construction, making the structure self-sufficient. The compression and lookup operations are integrated into the structure itself, eliminating the need for separate complex compression routines during lookup.

Inventive Principle:
Principle #25Self-service

3Speed

If the number of stride bits is reduced using hashed keys, then lookup speed is improved, but collision handling complexity increases

Engineering Contradiction:
Improvelookup speedVSAvoidcollision handling
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent merges the hash function output with the multi-stride trie structure, combining collision resolution directly into the trie nodes. This integration allows rapid lookup through the hashed key while handling collisions through the existing trie structure, reducing overall complexity.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The multi-stride compressed trie structure acts as an intermediary between the hashed key and the final lookup result. It resolves hash collisions by distributing them across multiple strides, simplifying collision handling while maintaining fast lookup performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8572140B1Deterministic lookup using hashed key in a multi-stride compressed trie structure
Publication Date: 2013.10.29 GULA CONSULTING LLC
  • US8572140B1 patent drawing
  • US8572140B1 patent drawing
  • US8572140B1 patent drawing

AI summary

An input lookup key is hashed and the hashed key divided into stride bits into a multi-level Trie structure. A compression function logically combines the stride bits to generate the compressed index bits into the stride tables. The bucket in the last stride table found by the hashed key may have several keys that collide at the same hash value. Discriminant bits are read from the key and select a stored key in the bucket table for verification of its result. Since the hashed key is a compression of the longer input key, more information is contained per bit of the hashed key than in the long key. The multi-stride lookup is performed first on the hashed key, allowing a faster convergence to the lookup result. The first stride can index a single hash table, with the remaining hash bits and discriminant bits used to select from among colliding keys.