Hash Table Entry Management via Dynamic Key Relocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network devices face issues with hash table collisions, leading to underutilization and inability to insert certain keys due to collisions resulting from hash functions generating the same hash value for different keys, causing loss of keys and low hash table utilization.

Innovation Solution

A method and apparatus for managing network devices that involve determining a current hash value for a key to be inserted into a lookup table, checking if memory locations associated with the hash value are occupied, and iteratively moving previously stored keys to free up space for the new key, thereby increasing hash table utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a hash function is used to generate hash values for keys, then lookup operations can be performed efficiently, but collisions occur when different keys generate the same hash value, causing some keys to be lost and reducing hash table utilization

Engineering Contradiction:
Improvelookup operation speedVSAvoidkey insertion reliability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent implements dynamic table entry management where the table entry manager can iteratively move previously stored keys to other memory locations to free up space for new keys. This dynamic reconfiguration allows the hash table to adapt to collision situations and maintain full utilization, resolving the contradiction between efficient lookup and reliable insertion.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the state of table entries by moving them between different memory locations based on collision detection. When a collision is detected during insertion, the system changes the position of existing entries to accommodate the new key, thereby maintaining both the speed of lookup operations and the reliability of key insertion.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If hash tables are used to store keys, then memory utilization should be high, but collisions cause some keys to be unable to be inserted, resulting in low utilization

Engineering Contradiction:
Improvenumber of keys storedVSAvoidkey insertion success rate
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent performs preliminary actions by proactively moving previously stored keys to other locations before inserting new keys that would cause collisions. This anticipatory reconfiguration ensures that memory space is always available for new insertions, maximizing both the quantity of keys stored and the reliability of insertion operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts the arrangement of table entries based on insertion requirements. The table entry manager continuously monitors and reconfigures key positions to prevent insertion failures, ensuring high memory utilization and reliable key storage.

Inventive Principle:
Principle #15Dynamics

3Quantity of substance

If the hash table is fully utilized, then more keys can be stored, but collisions increase causing insertion failures and key loss

Engineering Contradiction:
Improvehash table utilizationVSAvoidcollision rate
Core Design Contradiction:
Quantity of substanceVSObject-generated harmful factors

Solution Approach 1:

The patent implements dynamic table entry management where the table entry manager can iteratively move previously stored keys to other memory locations to free up space for new keys. This dynamic reconfiguration allows the hash table to adapt to collision situations and maintain full utilization, resolving the contradiction between efficient lookup and reliable insertion.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent converts the harmful effect of collisions into a beneficial reconfiguration opportunity. When a collision is detected, instead of failing the insertion, the system uses the collision information to trigger a controlled movement of existing entries, thereby creating space for the new key and maintaining full table utilization.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

Data Source

PatentUS10587516B1Hash lookup table entry management in a network device
Publication Date: 2020.03.10 MARVELL ISRAEL (M L S L) LTD
  • US10587516B1 patent drawing
  • US10587516B1 patent drawing
  • US10587516B1 patent drawing

AI summary

In a method for managing a network device a current hash value is determined for a current key to be inserted into a lookup table. The current hash value associated with a current set of memory locations in the lookup table, wherein the current set of memory locations includes a memory location corresponding to the current hash value and one or more other memory locations. In response to determining that each memory location in the current set of memory location is occupied, one or multiple previously stored keys in the lookup table are iteratively moved to other memory locations in the lookup table to free up a memory location in the current set of memory locations, the current key is inserted into the freed up memory location.