TCAM Entry Reduction via Range Condition Vector for Packet Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Hardware-based policy applying techniques, such as those using ternary content addressable memory (TCAM), face high costs when implementing rules with range conditions due to the need for a large number of TCAM entries, which increases network device costs and hardware footprint.

Innovation Solution

A method is introduced to reduce the number of TCAM entries required by using a range condition vector in each entry to represent multiple ranges, allowing for efficient packet processing and rule application with a reduced hardware footprint, including a key constructor to build a search key and a rule tester to determine matching rules within these reduced entries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If hardware-based policy applying techniques using TCAM are used to improve packet switching speed, then packet switching speed is improved, but the number of TCAM entries required increases significantly when implementing rules with range conditions, leading to increased hardware costs and device complexity

Engineering Contradiction:
Improvepacket switching speedVSAvoidnumber of TCAM entries
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent segments the range condition checking into two parts: (1) TCAM stores only the rule identifiers and basic match criteria without full range information, and (2) a separate range condition vector structure stores the actual range boundaries. This segmentation allows TCAM to remain compact while still enabling range-based rule matching, thus reducing TCAM entry complexity while maintaining packet switching speed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary range condition vector structure that mediates between the packet parameters and the TCAM rules. Instead of directly comparing packet parameters against full range conditions in TCAM, the system uses this intermediary structure to pre-process and organize range information, enabling efficient rule matching with reduced TCAM requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If the number of TCAM entries is reduced to lower hardware costs, then hardware costs and device footprint are reduced, but the ability to efficiently implement rules with range conditions deteriorates

Engineering Contradiction:
Improvehardware footprintVSAvoidrange condition rule implementation
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent makes the TCAM structure universal by separating the rule matching function from the range condition storage. The TCAM can now handle both exact match rules and range-based rules using the same compact structure, while the range condition vector provides the additional versatility needed for range conditions. This multi-functionality allows reduced hardware footprint without sacrificing range condition rule implementation capability.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent adds another dimension to the rule storage architecture by introducing the range condition vector as a separate structural layer. Instead of embedding full range information within each TCAM entry (one-dimensional approach), the system uses a two-dimensional structure where TCAM stores rule identifiers and the range condition vector stores detailed range boundaries, enabling versatile range condition handling with compact hardware.

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

Data Source

PatentUS8964542B1Method and apparatus for packet processing
Publication Date: 2015.02.24 MARVELL ISRAEL (M L S L) LTD
  • US8964542B1 patent drawing
  • US8964542B1 patent drawing
  • US8964542B1 patent drawing

AI summary

Aspects of the disclosure provide a method for processing packet with a reduced hardware cost. The method for processing packet can include selecting a group of parameter ranges based on information contained within a packet, determining a search key based on the packet and whether a parameter of the packet is within one or more of the parameter ranges, determining a rule based on the search key corresponding to the packet and the group of parameter ranges, and executing an action that is associated with the rule on the packet. In addition, the disclosure provides an apparatus for processing packet. Further, the disclosure provides a packet switching device that can apply policy on a packet based on parameters of the packet and ranges among a group of ranges, within which a parameter of the packet belongs.