Multistage Packet Processor Lookup Tables for IPv4 and IPv6

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing multistage packet classifiers face inefficiencies when handling both IPv4 and IPv6 addresses, as they often underutilize memory by normalizing to the wider IPv6 key width, leading to wasteful deployment in environments with more IPv4 packets than IPv6 packets.

Innovation Solution

The solution involves segmenting IPv6 addresses into smaller segments across multiple lookup tables, allowing for 32-bit wide match criteria that can accommodate both IPv4 and IPv6 addresses, with a 'type' field to differentiate between address types and a 'segment' field to chain segments across stages, ensuring full utilization of memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If lookup tables are normalized to 128-bit IPv6 key width, then both IPv4 and IPv6 addresses can be accommodated, but memory utilization becomes inefficient when handling primarily IPv4 packets

Engineering Contradiction:
Improveability to handle both IPv4 and IPv6VSAvoidmemory utilization efficiency
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent segments the 128-bit IPv6 address into multiple 32-bit segments that can be stored across multiple lookup tables. Each lookup table stores a portion of the IPv6 address (or complete IPv4 address), allowing efficient memory utilization for both IPv4 and IPv6 packets without requiring full 128-bit normalization for all packets.

Inventive Principle:
Principle #1Segmentation

2Loss of energy

If 32-bit match criteria are used in lookup tables, then memory can be fully utilized for both IPv4 and IPv6, but additional fields and chaining mechanisms are required

Engineering Contradiction:
Improvememory utilization efficiencyVSAvoidlookup table structure complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent adds a segment index dimension to the traditional lookup table structure. Each lookup table entry includes a segment index field that enables chaining to the next segment in the sequence. This dimensional addition allows the system to handle segmented IPv6 addresses while maintaining efficient 32-bit match criteria in each table.

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

Solution Approach 2:

The segment index field acts as an intermediary that connects multiple lookup tables in sequence. Rather than requiring a single complex 128-bit lookup, the segment index mediates between the packet header and the segmented address storage across multiple tables, enabling efficient chained lookups.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20240214309A1Packet Classification Using Lookup Tables with Different Key-widths
Publication Date: 2024.06.27 ARISTA NETWORKS INC
  • US20240214309A1 patent drawing
  • US20240214309A1 patent drawing
  • US20240214309A1 patent drawing

AI summary

A multistaged packet processor includes a lookup table at each stage. In one configuration, the match criteria in the lookup tables across the stages of a four-stage packet processor allocate 32 bits of space to hold IPv4 addresses and IPv6 addresses. In one configuration, the 32 bits store an entire IPv4 address or a 32-bit segment. An IPv6 address can be stored across the four lookup tables in 32-bit segments. The configuration allows for accommodating the varying key widths presented by IPv4 and IPv6 addresses while at the same time improving storage utilization in the lookup tables.