DPU Network Message Processing with Many-to-One Queue Mapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for network message processing in Data Processing Units (DPUs) require a large number of queues, consuming significant hardware and software resources and complicating control plane design due to one-to-one queue mappings between servers and DPUs.
Innovation Solution
Implement a network message processing method that reduces the number of queues in the DPU by decoupling the one-to-one mapping relationship between server and DPU queues, using a queue mapping table to map multiple server queues to fewer DPU queues, and employing a message distribution module to manage network message transmission.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a one-to-one mapping relationship between queues in the server and queues in the DPU is established, then network message forwarding is implemented, but resource consumption of the DPU increases significantly
Solution Approach 1:
Each queue in the DPU is configured with multiple mapping relationships to queues in the server, allowing a single DPU queue to handle messages from multiple server queues. This multi-functional configuration reduces the total number of queues needed in the DPU while maintaining complete forwarding capability.
Solution Approach 2:
Multiple server queues are mapped to a single DPU queue, combining the handling of multiple message sources into one destination queue. This merging approach consolidates resources and reduces the overall queue count in the DPU.
2Ease of operation
If queues with the same quantity as those in the server are set in the DPU, then one-to-one mapping is achieved, but device complexity increases
Solution Approach 1:
The queue mapping table is designed to support multiple mapping relationships per DPU queue, making the system more versatile. This universal mapping capability allows flexible configuration while actually reducing complexity compared to rigid one-to-one mappings.
Solution Approach 2:
A queue mapping table is introduced as an intermediary data structure that manages the many-to-one mapping relationships. This intermediary layer simplifies control plane design by providing a centralized, configurable mapping mechanism that is easier to manage than direct one-to-one queue correspondences.
Data Source
Figure 1~2
Figure 3
Figure 4~5
AI summary
The present disclosure provides a network message processing method and a device. The method includes: reading a first network message from a first queue maintained in a first server; querying a queue mapping table maintained in a data processing unit to determine a destination second queue to which the first network message is to be transmitted, and storing the first network message in the destination second queue, where the queue mapping table is used to record a mapping relationship between first queues maintained in the first server and second queues maintained in the data processing unit, and a quantity of the first queues is greater than a quantity of the second queues; and calling a message distribution module in the data processing unit, and reading, through the message distribution module, the first network message from the destination second queue and transmitting the first network message to a destination second server through a network. According to the present disclosure, a one-to-one mapping relationship between the queues in the first server and the queues in the data processing unit is decoupled, to reduce the quantity of the queues in the data processing unit, thereby realizing reduction of resource consumption in the data processing unit.