Hash Table Packet Classification Using Optimal CRC Polynomials
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Software-defined networking (SDN) controllers face challenges in managing multiple flows across network nodes due to the limited capacity of Ternary Content Addressable Memory (TCAM) in packet classification, which restricts the ability to handle increasing network traffic and packet matching requests.
Innovation Solution
The implementation of an optimal cyclic redundancy check (CRC) polynomial and hash function generation to extend packet classification capabilities beyond TCAM limitations, using hash tables and weak Adelson-Velskii and Landis (WAVL) trees for efficient matching and classification, allowing for up to 64 times the matching capability of TCAM.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If packet classification is enabled on network nodes to manage multiple flows, then the controller can analyze network traffic, but the limited capacity of TCAM restricts the ability to handle increasing network traffic and packet matching requests
Solution Approach 1:
The patent segments the packet classification functionality into two parts: TCAM for exact matching of known flows, and a hash table for matching unknown or less frequent flows. This segmentation allows the system to handle a much larger number of flows by distributing the matching burden across two different data structures, each optimized for different types of traffic patterns
Solution Approach 2:
The patent introduces a hash table as an intermediary data structure between the packet classification engine and the TCAM. This hash table acts as a mediator that handles the majority of flow matching requests, allowing the TCAM to focus only on exact matches and reducing the pressure on TCAM capacity while maintaining high-speed classification
2Quantity of substance
If hash tables are used to extend matching capability beyond TCAM limits, then packet classification capacity increases, but search complexity and processing time may increase
Solution Approach 1:
The patent applies preliminary action by pre-computing hash values for all flow entries and organizing them in a hash table structure before packet arrival. This pre-organization allows for O(1) average-case lookup time, ensuring that extending matching capability to 64 times TCAM capacity does not introduce significant processing delays
Solution Approach 2:
The patent changes the search parameter from exact bit-pattern matching in TCAM to hash-based indexing, which transforms the search complexity from exponential in the number of TCAM entries to constant time on average. This parameter change enables the system to handle vastly more flows without proportionally increasing processing time
Data Source
AI summary
In one embodiment, a method includes identifying at a network device, a number of items for matching at a hash table, the number of items exceeding matching available with ternary content addressable memory (TCAM) at the network device, defining at the network device, an optimal cyclic redundancy check (CRC) polynomial based on the number of items for matching at the hash table, and generating at the network device, an optimal hash function based on the optimal CRC polynomial to extend packet classification capability at the network device. An apparatus is also disclosed herein.


