Interleaved Exact-Match Lookup for Shared Packet Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional network devices use separate or partitioned memory spaces for different packet processing applications, leading to inflexible sharing and high costs, power consumption, and area occupation due to the use of TCAMs for multiple search patterns.

Innovation Solution

Implement a lookup table with interleaved entries for different packet processing applications, using a RAM-based memory that allows flexible sharing and includes application identifiers, along with probabilistic data structures to optimize searches.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If separate or partitioned memory spaces are used for different packet processing applications, then each application has dedicated storage, but memory sharing becomes inflexible and resource utilization decreases

Engineering Contradiction:
Improvememory sharing flexibilityVSAvoidmemory management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the lookup table into multiple banks (first bank, second bank, etc.) that can be independently accessed. Each bank can store entries for different packet processing applications, allowing parallel access and reducing conflicts while maintaining flexible resource allocation across applications.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a universal lookup table structure that serves multiple packet processing applications simultaneously. The interleaved entry design allows the same memory infrastructure to support different applications (e.g., forwarding, ACL, routing) with different search patterns, eliminating the need for separate dedicated memory spaces for each application.

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

2Productivity

If TCAM is used to store multiple search patterns for different packet processing applications, then multiple search patterns can be searched in a single memory access, but cost, power consumption, and occupied area increase significantly

Engineering Contradiction:
Improvesearch efficiencyVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by stationary object

Solution Approach 1:

The patent merges multiple search pattern requirements into a single RAM-based lookup table structure. By interleaving entries from different applications and applications with different search patterns into the same banks, the system achieves multi-pattern search capability using standard RAM technology, avoiding the high power consumption and cost of TCAM while maintaining search efficiency.

Inventive Principle:
Principle #5Merging (Combining)

3Adaptability or versatility

If TCAM is used to support multiple search patterns, then multiple rule templates can be searched simultaneously, but cost and occupied area increase

Engineering Contradiction:
Improvemultiple rule template supportVSAvoidmemory occupied area
Core Design Contradiction:
Adaptability or versatilityVSArea of stationary object

Solution Approach 1:

The patent introduces a bank dimension to organize lookup table entries. By distributing entries across multiple banks and using bank select signals, the system achieves multi-template support through spatial organization in the memory structure rather than requiring TCAM's inherent multi-pattern capability, thereby reducing area occupation while maintaining versatility.

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

4Adaptability or versatility

If a shared memory is used for multiple packet processing applications, then resource utilization improves, but lookup operations are restricted to allocated memory portions reducing flexibility

Engineering Contradiction:
Improvememory allocation flexibilityVSAvoidlookup operation efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments the shared memory into multiple banks that can be independently accessed. This segmentation allows different packet processing applications to access different banks simultaneously, improving lookup efficiency while maintaining flexible memory allocation. The bank structure resolves the conflict between shared memory flexibility and lookup operation efficiency by providing parallel access paths.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12432211B2Interleaved exact-match lookup table for multiple packet processing applications in a network device
Publication Date: 2025.09.30 MARVELL ISRAEL (M L S L) LTD
  • US12432211B2 patent drawing
  • US12432211B2 patent drawing
  • US12432211B2 patent drawing

AI summary

A search engine of a network device performs a lookup based on packet information associated with a packet being processed using a plurality of packet processing applications. The lookup includes one or more accesses to a lookup table that includes a plurality of interleaved entries associated with different ones of the packet processing applications. For each access, the search engine generates a search key to include at least a search string generated based on the packet information and an application identifier indicating a packet processing application for which the lookup is being performed, identifies an entry based on the search key, determines whether the search key matches search information in the identified entry, and when the search key matches the search information in the identified entry, identifies an action to be performed by the packet processor in connection with processing the packet by the packet processing application.