Elephant Flow Packet Steering for DPU Queue Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network communication systems face performance limitations due to the inability of Virtio-enabled network devices to scale beyond 800 Gbps, particularly in handling elephant flows, which are large continuous data flows that consume substantial network bandwidth, and the reliance on CPU-based receive side scaling (RSS) logic that leads to inefficient packet steering.

Innovation Solution

The system offloads packet steering to a Data Processing Unit (DPU) to handle elephant flows, using a data path module to detect these flows and a packet steering module to enforce rules for directing packets to appropriate receive queues, overriding traditional RSS logic and ensuring load balancing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional CPU-based RSS logic is used for packet steering, then the system can handle general network traffic, but it cannot scale beyond 800 Gbps and performs poorly with elephant flows

Engineering Contradiction:
Improvenetwork throughputVSAvoidperformance consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent extracts the packet steering function from the CPU and relocates it to a dedicated network device (smart NIC). The CPU no longer performs RSS logic or packet steering, instead only maintaining flow tables and providing steering rules. This extraction allows the network device to handle packet steering independently, enabling scaling beyond 800 Gbps while maintaining consistent performance for both elephant flows and normal traffic.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a flow table as an intermediary data structure that bridges the CPU and network device. The flow table stores flow identification information and corresponding steering rules, allowing the network device to make steering decisions based on pre-computed CPU rules without direct CPU involvement. This intermediary mechanism enables high-speed packet processing while maintaining accurate flow-based steering.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If packet steering is offloaded to a network device, then scaling beyond 800 Gbps is enabled, but the device complexity increases

Engineering Contradiction:
Improvenetwork bandwidth scalingVSAvoidnetwork device complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the packet steering system into distinct functional modules: (1) CPU maintains flow tables with steering rules, (2) network device performs packet matching and steering execution, (3) separate handling for elephant flows vs. normal traffic. This segmentation allows each component to have specialized, simplified functionality while achieving overall system scalability beyond 800 Gbps.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The network device is empowered to perform packet steering autonomously using pre-configured rules from the CPU. The device independently matches packets against flow tables, determines steering actions, and directs packets to appropriate queues without requiring continuous CPU intervention. This self-service capability reduces the complexity burden on the CPU while enabling high-speed operation.

Inventive Principle:
Principle #25Self-service

3Ease of operation

If RSS logic handles communication flows, then load distribution is achieved, but transmitting and receiving progress with lower performance on different CPUs

Engineering Contradiction:
Improveload distributionVSAvoidtransmission-reception performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent implements preliminary action by having the CPU pre-compute and store flow-based steering rules in flow tables before packets arrive. The CPU analyzes communication flows in advance, determines optimal CPU assignments for transmit and receive operations, and encodes these decisions as steering rules. When packets arrive at the network device, steering decisions are made immediately using these pre-computed rules, ensuring that packets are directed to the same CPU that will handle both transmission and reception, thereby achieving high performance while maintaining load distribution.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250365250A1Workload aware packet steering
Publication Date: 2025.11.27 MELLANOX TECHNOLOGIES LTD(IL)
  • US20250365250A1 patent drawing
  • US20250365250A1 patent drawing
  • US20250365250A1 patent drawing

AI summary

Systems and methods herein are for network communications, where at least one processor can include or be associated with a data path module and a packet steering module, where the data path module can receive communications that may be associated with different communication protocols and can determine an elephant flow based in part on a size indication associated with the communications, and where the packet steering module can receive information that may be associated with the elephant flow and can enforce at least one rule to steer incoming packets for different receive queues associated with respective ones of the communication protocols.