TCAM Range Encoding via Base Range Expansion

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The range expansion problem in ternary content addressable memory (TCAM) systems leads to a significant decrease in resource utilization during packet classification, as a single 16-bit range can be decomposed into up to 961 prefixes, resulting in high storage costs and inefficient resource usage.

Innovation Solution

The method involves acquiring a new base range, performing an expansion operation using pre-stored base ranges to obtain an expansion result, and determining encoded information for the new base range, thereby reducing storage consumption and improving resource utilization by using existing base ranges for encoding.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If range information is decomposed into prefixes using traditional methods, then the TCAM can perform packet classification, but the number of entries increases significantly (e.g., a single 16-bit range decomposes into up to 31 prefixes, and two 16-bit ranges into 961 prefixes)

Engineering Contradiction:
Improvepacket classification capabilityVSAvoidnumber of TCAM entries
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent segments the range decomposition process into two phases: offline pre-computation phase where prefix expansion tables are generated, and online matching phase where pre-computed tables are used. This segmentation moves the computationally intensive and entry-expanding prefix decomposition work to the offline phase, allowing the online phase to use compact pre-computed representations that require far fewer TCAM entries while maintaining classification capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by pre-computing and storing prefix expansion tables offline before actual packet classification operations. These pre-computed tables contain the expanded prefix representations needed for matching, eliminating the need to perform range-to-prefix decomposition in real-time and reducing the number of entries that must be stored in TCAM during operation.

Inventive Principle:
Principle #10Preliminary action

2Ease of manufacture

If optimized general range encoding technologies are used, then range expansion cost is reduced, but additional TCAM resources are required and the solution is not tailored to specific rule sets

Engineering Contradiction:
Improverange encoding capabilityVSAvoidTCAM resource requirements
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The patent applies local quality by customizing the prefix expansion tables according to specific rule set characteristics and traffic patterns. Instead of using a generic encoding approach that must handle all possible range cases, the system generates specialized expansion tables tailored to the actual distribution and patterns of ranges in the given rule set, thereby optimizing TCAM usage for that specific application while reducing unnecessary entries.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes parameters by adapting the prefix expansion strategy based on rule set statistics and traffic characteristics. The offline pre-computation phase analyzes the specific rule set and generates expansion tables with parameters optimized for that particular configuration, such as selecting which ranges to expand and how many prefixes to generate for each range, thereby reducing the overall number of TCAM entries required compared to fixed general-purpose methods.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If base ranges are pre-stored and used for expansion operations, then the number of TCAM entries is reduced, but the encoding process becomes more complex

Engineering Contradiction:
ImproveTCAM entry storageVSAvoidencoding process complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent performs preliminary action by pre-computing and storing base range expansions offline into lookup tables before runtime. The complex expansion operations are executed during the offline table generation phase, not during online packet classification. At runtime, the system simply performs table lookups using pre-computed base ranges, which reduces online complexity despite the sophisticated offline processing required to generate the expansion tables.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies self-service by having the system automatically generate its own prefix expansion tables offline without manual intervention. The offline pre-computation process automatically analyzes the rule set, determines optimal base ranges, performs expansions, and generates the final encoding tables. This automation handles the complexity of the encoding process internally, making the system easier to deploy and maintain while achieving reduced TCAM entry requirements.

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP3958267B1Range information encoding and matching method, and computer storage medium
Publication Date: 2023.08.09 SANECHIPS TECH CO LTD
  • EP3958267B1 patent drawingFigure 1~2
  • EP3958267B1 patent drawingFigure 3~4
  • EP3958267B1 patent drawingFigure 5~6

AI summary

Disclosed are a range information encoding and matching method, and a computer storage medium. The method comprises: acquiring a new basic range, wherein the new basic range is used for decomposing range information of an entry stored in a ternary content addressable memory(TCAM); performing an extension operation on the new basic range according to a plurality of pre-stored basic ranges to obtain an extension result, wherein each of the pre-stored basic ranges has its own encoded information; and determining, according to the extension result, encoded information corresponding to the new basic range.