Routing Table Maintenance via Hash Collision Handling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current routing query technologies based on TCAM face inefficiencies due to high cost, high power consumption, complex algorithms, and significant Hash collisions, particularly when managing a large number of host routes compared to subnet routes, which hinder network performance.
Innovation Solution
A method and apparatus for maintaining a routing table that addresses Hash collisions by adding colliding host routes to a TCAM, utilizing idle resources efficiently by sequencing subnet routes based on prefix length and storing them sequentially, and reallocating resources as needed to accommodate new routes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If Hash query is used for host routing table lookup, then lookup speed is improved, but Hash collision problem occurs when there are many host routes
Solution Approach 1:
The patent segments the routing table into two parts: host routes (with /32 mask) and subnet routes (with mask less than /32). Host routes are stored in a Hash table for fast lookup, while subnet routes are stored in a TCAM for prefix matching. This segmentation allows each data structure to handle its appropriate route type, avoiding Hash collisions for subnet routes and enabling efficient parallel lookup for both types.
Solution Approach 2:
The patent introduces a routing table maintenance mechanism that acts as an intermediary between route addition and the lookup structures. When a route is added, the system checks whether it's a host route or subnet route, and places it in the appropriate structure (Hash table or TCAM). This intermediary mechanism ensures that routes are correctly distributed to avoid collisions while maintaining lookup efficiency.
2Productivity
If TCAM is used for subnet routing table lookup in parallel, then routing query efficiency is improved, but cost and power consumption increase
Solution Approach 1:
The patent segments the routing table into two parts: host routes (with /32 mask) and subnet routes (with mask less than /32). Host routes are stored in a Hash table for fast lookup, while subnet routes are stored in a TCAM for prefix matching. This segmentation allows each data structure to handle its appropriate route type, avoiding Hash collisions for subnet routes and enabling efficient parallel lookup for both types.
Solution Approach 2:
Instead of storing all routes in TCAM (which would be excessive and costly), the patent uses partial action by storing only subnet routes in TCAM while using a Hash table for host routes. This selective approach maintains high query efficiency for subnet routes while avoiding the high cost and power consumption of using TCAM for all routes.
3Adaptability or versatility
If more host routes are supported in the routing table, then network coverage is improved, but Hash collision becomes more serious
Solution Approach 1:
The patent segments the routing table into two parts: host routes (with /32 mask) and subnet routes (with mask less than /32). Host routes are stored in a Hash table for fast lookup, while subnet routes are stored in a TCAM for prefix matching. This segmentation allows each data structure to handle its appropriate route type, avoiding Hash collisions for subnet routes and enabling efficient parallel lookup for both types.
Solution Approach 2:
The patent changes the storage parameter for host routes from being the only option to being one of two options. By introducing the possibility of storing host routes in TCAM when Hash collision occurs, the system adapts to maintain both high query efficiency and accurate routing decisions even as the number of host routes increases.
4Adaptability or versatility
If TCAM resources are allocated for both host routes and subnet routes, then routing table flexibility is improved, but resource management complexity increases
Solution Approach 1:
The patent segments the routing table into two parts: host routes (with /32 mask) and subnet routes (with mask less than /32). Host routes are stored in a Hash table for fast lookup, while subnet routes are stored in a TCAM for prefix matching. This segmentation allows each data structure to handle its appropriate route type, avoiding Hash collisions for subnet routes and enabling efficient parallel lookup for both types.
Solution Approach 2:
The patent applies local quality by making different parts of the routing table have different storage characteristics. Host routes use Hash table storage with O(1) lookup complexity, while subnet routes use TCAM storage for parallel prefix matching. This localized optimization allows each part to be managed independently with appropriate algorithms, reducing overall management complexity while maintaining flexibility.
Data Source
Figure 1
Figure 2
Figure 3~4
AI summary
A method for maintaining a routing table is disclosed in the present invention. The method comprises: when the Hash value of a to-be-added host route collides with that of a route in a host routing table, adding the to-be-added host route into a Ternary Content Addressable Memory (TCAM). An apparatus for maintaining a routing table is also disclosed in the present invention. The apparatus comprises a determining unit and an adding unit, wherein the determining unit is configured to determine whether the Hash value of a to-be-added host route collides with that of a route in a host routing table and if the determine result is yes, trigger the adding unit; and the adding unit is configured to add the to-be-added host route into a TCAM. The method for maintaining a routing table in the present invention solves the problem of Hash collision among the host routes, and greatly improves the efficiency of routing query.