NIC Pre-classification for Packet Batch Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing packet processing schemes in SDN and NFV are inefficient due to the assumption that all packets in a batch follow the same node graph path, leading to suboptimal cache utilization and increased memory access when packets of different protocols (e.g., IPv4 and IPv6) are intermingled.

Innovation Solution

A pre-classification mechanism in the network interface controller populates receive queues exclusively with packets of the same protocol, allowing the central processing unit to process each batch using a dedicated node graph path, thereby increasing cache hits and reducing cache misses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If packets of different protocols are processed in the same batch using a single node graph path, then device complexity is reduced, but cache utilization deteriorates and processing efficiency decreases

Engineering Contradiction:
Improvenode graph path complexityVSAvoidpacket processing efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments packets based on their protocol type (IPv4, IPv6, MPLS, etc.) and routes them through different dedicated node graph paths. This segmentation allows each path to be optimized for its specific protocol, improving cache utilization and processing efficiency without significantly increasing overall system complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The pre-classification mechanism performs preliminary sorting of packets by protocol type before they enter the node graph processing stage. This preliminary action ensures that packets are already grouped by protocol, enabling efficient cache warming and path selection without requiring complex runtime decisions during packet processing.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If packets are processed without pre-classification, then ease of operation is improved, but cache miss rate increases and processing speed decreases

Engineering Contradiction:
Improvepacket processing simplicityVSAvoidpacket processing speed
Core Design Contradiction:
Ease of operationVSSpeed

Solution Approach 1:

The pre-classification mechanism is implemented as a self-service component within the network interface controller that automatically sorts packets by protocol type without requiring manual intervention or complex configuration. This maintains ease of operation while dramatically improving processing speed through optimized cache utilization and dedicated node graph paths.

Inventive Principle:
Principle #25Self-service

3Device complexity

If all packets use the same node graph path, then device complexity is reduced, but cache warming effectiveness deteriorates

Engineering Contradiction:
Improveprocessing path complexityVSAvoidcache hit rate
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent applies local quality by creating dedicated node graph paths tailored to specific protocol types. Each path is optimized for its protocol's characteristics, allowing efficient cache warming for that specific protocol while maintaining overall system manageability through the structured classification approach.

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP3610615B1Packet batch processing with graph-path based pre-classification
Publication Date: 2021.07.21 HUAWEI TECH CO LTD
  • EP3610615B1 patent drawingFigure 1
  • EP3610615B1 patent drawingFigure 2
  • EP3610615B1 patent drawingFigure 3

AI summary

A method of batch processing implemented using a pre-classification mechanism of a network interface controller is provided. The method includes receiving, by the pre-classification mechanism of the network interface controller, rules for populating a first receive queue and a second receive queue (1002); receiving, by the pre-classification mechanism, packets corresponding to a first protocol intermingled with packets corresponding to a second protocol (1004);and populating, by the pre-classification mechanism of the network interface controller, the first receive queue exclusively with the packets corresponding to the first protocol and the second receive queue exclusively with the packets corresponding to the second protocol based on the rules such that a central processing unit is able to obtain a first batch of the packets from the first receive queue and process each of the packets from the first batch using a same node graph path (1006).