Smart NIC Multi-Bus Queue Routing for Higher Data Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing solutions for improving virtual machine performance by using a smart network interface card with a built-in data processing unit (DPU) suffer from low data transmission efficiency due to limited bandwidth utilization, as they typically use only one high-speed bus for data transmission.

Innovation Solution

The smart network interface card is equipped with bus ports for at least two high-speed buses, allowing it to communicate with the server through multiple buses simultaneously by distributing hardware queues in groups corresponding to these buses, thereby enhancing data transmission efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a smart network interface card uses only one high-speed bus for data transmission, then the device complexity is reduced, but the data transmission efficiency deteriorates

Engineering Contradiction:
Improvedata transmission efficiencyVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the hardware queues into multiple queue groups, with each queue group corresponding to a specific high-speed bus. This segmentation allows different queue groups to be processed through different buses simultaneously, enabling parallel data transmission and improving transmission efficiency without requiring complete redesign of the device architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from single-bus sequential processing to multi-bus parallel processing by mapping different queue groups to different high-speed buses. This dimensional change from one transmission path to multiple transmission paths enables simultaneous data transmission, significantly improving productivity while maintaining manageable device complexity through systematic resource allocation.

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

2Quantity of substance

If multiple hardware queues are distributed in a single queue group, then the device complexity is reduced, but the bandwidth utilization deteriorates

Engineering Contradiction:
Improvebandwidth utilizationVSAvoidqueue management complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent segments the hardware queues into multiple queue groups, where each queue group is associated with a specific high-speed bus. This segmentation enables different queue groups to utilize different buses for parallel transmission, fully utilizing the bandwidth resources of multiple buses while keeping each queue group's management complexity manageable.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a multi-functional queue management system where multiple queue groups can serve multiple high-speed buses simultaneously. Each queue group can independently process data through its corresponding bus, enabling the system to fully utilize the bandwidth of all connected buses while maintaining organized and manageable queue structures.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS12461881B2Data sending method and apparatus, data receiving method and apparatus, device, and storage medium
Publication Date: 2025.11.04 BEIJING VOLCANO ENGINE TECH CO LTD
  • US12461881B2 patent drawing
  • US12461881B2 patent drawing
  • US12461881B2 patent drawing

AI summary

A data sending method, a data receiving method and an electronic device are disclosed. At least two data sending requests sent by a server through a high-speed bus are received, where the data sending requests are used to request a smart network interface card to send message data stored on a server to an external device. A corresponding target hardware queue is determined for each data sending request, where a hardware queue is used to communicate with the server through the high-speed bus, target hardware queues corresponding to the data sending requests are distributed in at least two hardware queue groups, and the hardware queue groups are in one-to-one correspondence with the high-speed buses. The target hardware queues communicate with the server through at least two corresponding high-speed buses at the same time to obtain corresponding message data, and send the corresponding message data to the external device.