Hash Collision Avoidance in Network Routing Tables

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network devices face challenges in efficiently routing data packets due to limited capacity of routing tables stored in volatile memory, which requires minimizing data storage for each route while maintaining accurate and low latency traffic direction.

Innovation Solution

A network device architecture that includes a packet classifier, field-selection table, hash module, and routing table, where the routing module determines an entry in the packet classifier, generates a hash result based on packet bits, and matches it to the routing table to obtain processing data, optimizing routing table entries and reducing collisions through dynamic updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If routing tables store more data for each route to improve routing accuracy, then routing precision is improved, but routing table capacity is exceeded and device complexity increases

Engineering Contradiction:
Improverouting accuracyVSAvoidrouting table capacity
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The routing table is segmented into multiple portions, with each portion storing only a subset of routing parameters. The packet routing process is divided into multiple lookups across different portions, extracting partial information iteratively until complete routing data is assembled. This segmentation allows the routing table to maintain high accuracy while staying within capacity constraints.

Inventive Principle:
Principle #1Segmentation

2Reliability

If routing tables store more data for each route to reduce hash collisions, then collision accuracy is improved, but routing table capacity is exceeded

Engineering Contradiction:
Improvecollision accuracyVSAvoidrouting table capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The routing table is divided into multiple portions that collectively store routing information. By distributing routing data across segments and performing iterative lookups, the system reduces hash collisions while maintaining reliability. Each portion contributes partial information, and the combination of segments provides complete routing accuracy without requiring excessive capacity in any single location.

Inventive Principle:
Principle #1Segmentation

3Quantity of substance

If routing tables are minimized to fit volatile memory capacity, then memory efficiency is improved, but routing accuracy and collision reduction capability deteriorate

Engineering Contradiction:
Improvememory efficiencyVSAvoidrouting accuracy
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The routing table is organized into multiple compact portions that fit within volatile memory constraints. Each portion stores a specific subset of routing parameters, and the system performs sequential lookups across these segments to reconstruct complete routing information. This segmentation enables efficient memory utilization while preserving routing accuracy through iterative information gathering.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The routing lookup process transitions from a single-dimension direct lookup to a multi-dimension iterative process. Instead of requiring all routing data in one location, the system navigates through multiple dimensions (portions) of the routing table, accumulating routing information step by step. This dimensional approach allows compact memory storage while maintaining comprehensive routing capability.

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

4Quantity of substance

If routing tables are minimized to fit volatile memory capacity, then memory efficiency is improved, but collision accuracy deteriorates

Engineering Contradiction:
Improvememory efficiencyVSAvoidcollision accuracy
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The routing table is divided into multiple portions that collectively provide sufficient data to minimize hash collisions. By distributing routing information across segments and performing iterative lookups, the system achieves collision accuracy comparable to larger single-table designs while maintaining memory efficiency. Each segment contributes to reducing collisions through its unique subset of routing parameters.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9270592B1Hash collision avoidance in network routing
Publication Date: 2016.02.23 GOOGLE LLC
  • US9270592B1 patent drawing
  • US9270592B1 patent drawing
  • US9270592B1 patent drawing

AI summary

Network device and method for routing a packet and setting up a new flow. The device includes a packet classifier, a field-selection table, a hash module, and a routing table. A packet is routed by finding an entry in the field-selection table using the packet classifier, selecting bits from the packet based on the entry in the field-selection table, and hashing the selected bits along with an identifier from the packet classifier or the field-selection table, using the hash module. The hash result is used to locate instructions in the routing table. When setting up a new flow, the hash module result may point to an existing entry in the routing table. In such instances, a new entry is added to the packet classifier, such that the hash module will produce a different result that points to an available entry in the routing table.