Hash Table Mask Length Computation for Longest Prefix Match Caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern internet routers face bottlenecks in routing throughput due to complex and costly circuitry required for searching destination IP addresses in routing tables, particularly with the increasing demand for reduced latency and high internet traffic, where existing caching solutions like TCAM and LPM algorithms are expensive and impractical for large-scale implementation.

Innovation Solution

A method involving a hash table with a mask length that masks destination addresses to access cache entries, allowing for efficient retrieval of routing information by determining identical most significant bits and dynamically updating the mask length to optimize cache performance, reducing the need for complex circuitry and increasing cache hit rates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If TCAM with hardware-based LPM matching method is used, then routing lookup speed is improved, but device cost and complexity increase

Engineering Contradiction:
Improverouting lookup speedVSAvoidcircuitry complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent creates a simplified copy of the routing table in cache memory that stores only the necessary routing information without the complex LPM matching structure. This copy enables fast lookup through simple comparison operations rather than hardware-based LPM algorithms, reducing device complexity while maintaining routing functionality

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent uses standard cache memory (SRAM/DRAM) instead of expensive TCAM resources for routing lookup. By storing routing information in readily available cache memory and using simple matching algorithms, the system achieves fast routing without the high cost and complexity of TCAM hardware

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

2Productivity

If LPM algorithm is implemented in hardware, then routing throughput is improved, but power consumption and heat dissipation increase

Engineering Contradiction:
Improverouting throughputVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent extracts the essential routing information from the full routing table and stores it in cache memory. This extraction allows the system to perform routing lookups using simple cache access operations rather than power-intensive hardware LPM algorithms, reducing power consumption while maintaining routing throughput

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the parameters of the routing data structure by storing only the necessary fields (destination network address and routing information) in cache memory, excluding redundant information. This parameter optimization enables faster, lower-power lookup operations while maintaining routing accuracy

Inventive Principle:
Principle #35Parameter changes

3Ease of manufacture

If exact match caching is used, then cache implementation is simplified, but cache coverage is limited

Engineering Contradiction:
Improvecaching implementation simplicityVSAvoidcache coverage
Core Design Contradiction:
Ease of manufactureVSQuantity of substance

Solution Approach 1:

The patent makes the cache entry structure universal by designing it to handle both exact matches and prefix matches through the same data format. The cache entry stores destination network address with variable length prefix information, allowing the same cache structure to serve multiple matching scenarios without requiring separate implementations

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Quantity of substance

If mask length is increased to cover more prefixes, then cache coverage is improved, but memory requirements increase

Engineering Contradiction:
Improvecache coverageVSAvoidmemory requirements
Core Design Contradiction:
Quantity of substanceVSVolume of stationary object

Solution Approach 1:

The patent applies partial action by storing only the essential prefix information needed for routing decisions in cache memory, rather than storing complete routing table entries. By caching only the destination network address prefix and associated routing information with variable length masks, the system achieves sufficient cache coverage without proportionally increasing memory requirements

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10515015B2Hash table-based mask length computation for longest prefix match caching
Publication Date: 2019.12.24 MELLANOX TECHNOLOGIES LTD(IL)
  • US10515015B2 patent drawing
  • US10515015B2 patent drawing
  • US10515015B2 patent drawing

AI summary

A data packet is received in a network element. The network element has a cache memory in which cache entries represent a portion of addresses stored in a main memory, The destination address and the cache entries each comprise a binary number. A hash function is applied to the masked destination address to access a hash table. When the number of most significant bits corresponding to the value in the hash table in one of the cache entries and in the destination address are identical, routing information for the packet is retrieved from the cache entry.