Multi-Headed Packet Processing Pipeline

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current network devices with pipelined architectures face challenges in efficiently processing multi-headed packets, particularly in separating and routing packets between different network domains without relying on information from both header portions, which complicates network operations and increases costs.

Innovation Solution

A network device with a packet processing pipeline that processes packets in two passes, first making a forwarding decision based on the outer header to forward the packet within one network domain and then replicating and processing the packet to make a second decision based on the inner header for forwarding within another network domain, utilizing an internal loopback port to facilitate this process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If packets are processed in a single pass through the pipeline, then processing speed is improved, but the ability to make independent forwarding decisions for different network domains is lost

Engineering Contradiction:
Improvepacket processing speedVSAvoidforwarding decision flexibility
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The packet processing operation is segmented into multiple passes through the pipeline. The first pass processes the outer header for provider network forwarding decisions, while the second pass processes the inner header for customer network forwarding decisions. This segmentation allows independent forwarding decisions for different network domains while maintaining efficient pipelined processing architecture.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If multi-headed packets are processed to forward to multiple destinations, then network coverage is improved, but device complexity increases

Engineering Contradiction:
Improvemulti-destination forwarding capabilityVSAvoidpacket processing complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The complex task of processing multi-headed packets for multiple destinations is segmented into two sequential passes. Each pass handles a specific header portion and forwarding domain independently. This segmentation reduces the complexity of any single processing stage while achieving comprehensive multi-destination forwarding capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The packet processing pipeline implements a nested structure where the inner packet processing is contained within the outer packet processing framework. The first pass handles the outer header and provider network routing, while the second pass handles the inner header and customer network routing. This nested approach allows systematic management of multiple forwarding decisions without proportionally increasing overall system complexity.

Inventive Principle:
Principle #7Nested doll (Nesting)

3Reliability

If packets requiring both header portions are processed together, then processing completeness is improved, but processing time increases

Engineering Contradiction:
Improveforwarding decision completenessVSAvoidpacket processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The packet processing is segmented into sequential passes where each pass focuses on a specific header portion. The first pass completes forwarding decisions for the provider network based on the outer header, and the second pass completes forwarding decisions for the customer network based on the inner header. This segmentation ensures complete and reliable forwarding decisions while minimizing processing time by avoiding simultaneous processing of both headers.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8976791B1Methods and apparatus for processing multi-headed packets
Publication Date: 2015.03.10 MARVELL ISRAEL (M L S L) LTD
  • US8976791B1 patent drawing
  • US8976791B1 patent drawing
  • US8976791B1 patent drawing

AI summary

A packet is received at a network device, the packet having a header that includes destination information for a first network in a first header portion, and destination information for a second network in a second header portion. The packet is processed, in a first pass, to make a first forwarding decision to forward the packet to a destination in the first network based on information contained in the first header portion. The packet is replicated and the packet, or the replicated packet, is returned for processing in a second pass. The packet, or the replicated packet, is processed in the second pass to make a second forwarding decision to forward at least a portion of the packet or the replicated packet to a destination in the second network based on information contained in the second header portion without relying on information contained in the first header portion.