Dynamically Configurable Perfect Hash Tables for Network Lookups

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing hardware implementations of lookup tables for network applications face challenges in achieving low-latency, high-throughput key lookups with variable key and data sizes, while maintaining efficient memory utilization and flexibility, as they often rely on fixed key sizes and static table designs, leading to high power consumption and limited memory capacity.

Innovation Solution

The implementation of dynamically configurable perfect hash tables using hardware circuitry that evaluates minimal perfect hash functions, allowing for efficient evaluation of keys through primary and secondary hash functions performed using carry-free polynomial arithmetic, enabling flexible key and data sizes and efficient memory utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If TCAMs are used for fast key lookups, then lookup latency is reduced, but memory capacity is limited and power consumption increases

Engineering Contradiction:
Improvelookup latencyVSAvoidmemory capacity
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The patent combines CAM-based fast lookup mechanism with configurable hash table structure, merging the advantages of both approaches. The CAM provides rapid key matching while the hash table structure enables flexible capacity configuration, resolving the contradiction between fast lookup and high memory capacity.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent implements dynamically configurable hash tables where the table size and key mapping can be adjusted based on actual workload requirements. This dynamic adaptability allows the system to optimize between lookup speed and memory utilization, resolving the fixed capacity limitation of TCAMs.

Inventive Principle:
Principle #15Dynamics

2Productivity

If TCAMs are used for high lookup rates, then throughput is improved, but power consumption increases

Engineering Contradiction:
Improvelookup rateVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by stationary object

Solution Approach 1:

The patent changes the operational parameters by implementing configurable hash functions and dynamic table sizing, allowing the system to adjust the balance between lookup rate and power consumption based on actual workload. This enables high throughput when needed while reducing power consumption during lower demand periods.

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If fixed key sizes and static tables are used, then hardware design is simplified, but adaptability to variable key and data sizes is reduced

Engineering Contradiction:
Improvehardware design complexityVSAvoidflexibility in key and data sizes
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal lookup table structure that can handle variable key sizes and data sizes through configurable hash functions. The same hardware platform can adapt to different application requirements without redesign, achieving multi-functionality while maintaining reasonable design complexity through standardized architectural patterns.

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

4Productivity

If tree-based data structures are used for large lookup tables, then lookup rate is improved, but latency for individual lookups increases

Engineering Contradiction:
Improvelookup rateVSAvoidindividual lookup latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the lookup process into parallel operations: hash function evaluation occurs simultaneously with memory access operations. The hash table structure enables parallel processing of multiple lookup operations while maintaining low individual latency through optimized memory access patterns and reduced computation steps compared to tree-based approaches.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9384145B2Systems and methods for implementing dynamically configurable perfect hash tables
Publication Date: 2016.07.05 ORACLE INT CORP
  • US9384145B2 patent drawing
  • US9384145B2 patent drawing
  • US9384145B2 patent drawing

AI summary

Hardware circuitry may evaluate minimal perfect hash functions mapping keys to addresses in lookup tables. The circuitry may include primary hash function sub-circuits that apply linear hash functions to input key values (using carry-free arithmetic) to produce primary hash values. Each sub-circuit may multiply bit vectors representing key values by a bit matrix and add a constant bit vector to the result. The circuitry may include a secondary hash function sub-circuit that generates secondary hash values by aggregating values associated with multiple primary hash values using signed, unsigned, or modular integer addition, or bit-wise XOR operations. Secondary hash values may be usable to access data values in the lookup table that are associated with particular input key values. The circuitry may determine the validity of input keys and may alter the configuration or contents of the lookup tables. The hash function sub-circuits may include programmable hash tables.