Core Group Assignment for Fragmented Packet Affinity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network devices struggle to effectively distribute load across multiple cores while maintaining packet flow affinity, especially with fragmented packets, leading to inefficiencies and increased latency.

Innovation Solution

The techniques involve defining core groups within network devices, assigning traffic flows to specific core groups, and using a routing engine to manage the distribution of packet data across cores, ensuring that fragmented packets are reassembled and network services are applied efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If fragmented packets are distributed across multiple cores for processing, then load balancing is improved, but packet flow affinity is lost causing increased latency

Engineering Contradiction:
Improveload balancingVSAvoidlatency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the multi-core processor into multiple core groups, where each core group is assigned to handle specific packet flows. This segmentation allows the system to maintain packet flow affinity within each core group while still achieving load balancing across different core groups. The routing engine distributes packet flows to different core groups based on available capacity, ensuring that related packets (fragments) remain together while balancing the workload across the processor.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The routing engine performs preliminary assignment of packet flows to core groups before actual packet processing begins. By pre-establishing which core group handles which packet flow, the system ensures that all fragments of a given packet flow are directed to the same core group in advance, preventing latency caused by dynamic routing decisions during packet processing.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If packet flows are assigned to specific cores, then packet flow affinity is maintained, but load distribution across cores becomes uneven

Engineering Contradiction:
ImprovelatencyVSAvoidload balancing
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent introduces dynamic load balancing among core groups while maintaining static assignment within each core group. The routing engine monitors the load status of different core groups and dynamically distributes new packet flows to underutilized core groups. This dynamic approach ensures that packet flow affinity is preserved within core groups (reducing latency) while achieving balanced load distribution across the entire multi-core system (improving productivity).

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12273264B1Maintaining processing core affinity for fragmented packets in network devices
Publication Date: 2025.04.08 HEWLETT PACKARD ENTERPRISE DEV LP
  • US12273264B1 patent drawing
  • US12273264B1 patent drawing
  • US12273264B1 patent drawing

AI summary

Techniques are disclosed for maintaining processing unit core affinity for fragmented packets. In one example, a service physical interface card (PIC) implementing a service plane of a network device receives fragmented and/or non-fragmented packet data for a traffic flow. The service PIC comprises at least one processing unit comprising multiple cores. A routing engine operating in a control plane of the network device defines one or more core groups comprising a subset of the cores. The routing engine assigns the traffic flow to a core group and a forwarding engine operating in a forwarding plane of the network device forwards the packet data for the traffic flow to the assigned core group. A core of the assigned core group applies a network service to the fragmented and/or non-fragmented packet data for the traffic flow, and the forwarding engine forwards the packet data for the traffic flow toward a destination.