CN-118631757-B - Credit value-based rate control method, apparatus and equipment
Abstract
The invention provides a rate control method, device and equipment based on a credit value, which are used for solving the technical problem that congestion control based on CBRC (CBRC) in a super Ethernet transmission UET (unified extensible transport) protocol scene cannot meet the bandwidth requirements of tasks with different priorities. The invention marks priority for tasks supported by a sender supporting UET, creates PSL queues for tasks with different priorities at a receiver, and optimizes the update of the sending queues and the dynamic credit value issuing strategy based on the sending queues with different priorities. The receiver polls and traverses all PSL queues according to the order from high priority to low priority, and based on the priority sending queues, an adjustment value is newly added according to the demands of tasks with different priorities on the bandwidth based on the credit values issued by the original issuing strategies, so that the demands of tasks with different priorities on the bandwidth can be met under the UE T protocol scene based on the congestion control of CBRC.
Inventors
- Chen Enjia
- WANG LONGGANG
Assignees
- 新华三技术有限公司
Dates
- Publication Date
- 20260505
- Application Date
- 20240625
Claims (7)
- 1. A rate control method based on a credit value, which is applied to a receiver device supporting a UET protocol for super ethernet transmission, capable of receiving and processing task packets transmitted by a plurality of end-side transmitters requesting to perform tasks of different priorities, the method comprising: The method comprises the steps that a PDS of a packet transmission sublayer of a receiver receives a first PDS request message, and updates first priority task information carried in the first PDS request message into a sender queue corresponding to the priority of a first priority task, wherein the sender queue comprises a sender queue PSL and an idle sender queue ISL based on the priority; When the credit value sending timer of the receiver times out, the receiver polls all PSL queues in order from high priority to low priority, when the PSL of a certain priority is traversed, the sender in the PSL queue of the priority is determined to be sent with the credit value based on a dynamic credit value rate control strategy in a polling mode, and the determined credit value to be sent is sent to the sender; Determining the credit value to be issued based on dynamic credit value rate control strategy ) The method of (1) is as follows: Selecting a minimum value between a credit value (sender. Pull_target) currently requested by the sender and a dynamic adjustment release value as a credit value to be released of the sender, wherein the dynamic adjustment release value is a base release credit value plus a dynamic adjustment value based on priority; wherein the basic release credit value is the credit value which is released to the sender last time ) Sum with maximum transmission unit MTU; The priority-based dynamic adjustment value is determined based on the following adjustment policy: Dividing the PSL queues of N different priorities which are not empty into two parts according to the standard priority, increasing the credit value in the MTU range according to the priority size for the sender of the PSL queues higher than the standard priority, and reducing the credit value in the MTU range according to the priority size for the sender of the PSL queues smaller than or equal to the standard priority, wherein the increased credit value and the reduced credit value are kept equal.
- 2. The method of claim 1, wherein determining the credit to be issued is based on a dynamic credit rate control strategy ) The method of (a) comprises the following steps: when N is even, the way to determine the credit value to be issued for the sender of the PSL queue with priority p is: When N is an odd number, the method for determining the credit value to be issued for the sender of the PSL queue with the priority of p is as follows: Wherein, the For the credit value to be currently issued, For the credit value currently requested by the sender, For the last credit value issued to the sender, min is a function of the minimum value, Representing basic issuing credit value, MTU is the maximum transmission unit, p is in the range of p E0, N-1, the smaller the p value is, the higher the priority is, when N is even, Is a benchmark priority; when N is odd, the reference priority is Rounding down, i.e. 。
- 3. A method of credit-based rate control, applied to any one of a plurality of sender devices having different priority tasks supporting a UET protocol for ultra-ethernet transmission, the method comprising: The sender starts a first priority task, marks a first priority label for the first priority task, splits the first priority task into task packets (packets) through a semantic sub-layer SES, and submits the task packets to a packet transmission sub-layer PDS at the network card equipment side; After receiving the task package of the first priority, the PDS of the sender firstly assembles and sends a first PDS request message carrying the task information of the first priority and a first priority label to the receiver before sending the task package to the receiver so as to request the receiver to issue a credit value to the local terminal based on the first priority label; After receiving an Acknowledgement (ACK) response of a first PDS request message sent by a receiver, the PDS of the sender starts to send a first priority task packet based on a credit value issued by the receiver; The method comprises the steps that a receiving party PDS receives a first PDS request message, and updates first priority task information carried in the first PDS request message into a sender queue corresponding to the priority of a first priority task, wherein the sender queue comprises a sender queue PSL based on the priority and an idle sender queue ISL; When the credit value sending timer of the receiver times out, the receiver polls all PSL queues in order from high priority to low priority, when the PSL of a certain priority is traversed, the sender in the PSL queue of the priority is determined to be sent with the credit value based on a dynamic credit value rate control strategy in a polling mode, and the determined credit value to be sent is sent to the sender; Determining the credit value to be issued based on dynamic credit value rate control strategy ) The method of (1) is as follows: Selecting a minimum value between a credit value (sender. Pull_target) currently requested by the sender and a dynamic adjustment release value as a credit value to be released of the sender, wherein the dynamic adjustment release value is a base release credit value plus a dynamic adjustment value based on priority; wherein the basic release credit value is the credit value which is released to the sender last time ) Sum with maximum transmission unit MTU; The priority-based dynamic adjustment value is determined based on the following adjustment policy: Dividing the PSL queues of N different priorities which are not empty into two parts according to the standard priority, increasing the credit value in the MTU range according to the priority size for the sender of the PSL queues higher than the standard priority, and reducing the credit value in the MTU range according to the priority size for the sender of the PSL queues smaller than or equal to the standard priority, wherein the increased credit value and the reduced credit value are kept equal.
- 4. A credit-based rate control apparatus applied to a receiver device supporting a UET protocol for ultra-ethernet transmission capable of receiving and processing a plurality of task packets transmitted from an end-side transmitter requesting to perform tasks of different priorities, the apparatus comprising: The third module is used for receiving a first PDS request message, and updating the first priority task information carried in the first PDS request message into a sender queue corresponding to the priority of the first priority task, wherein the sender queue comprises PSL and ISL; A fourth module, configured to poll through all PSL queues in order of priority from high to low whenever the receiver credit value transmission timer times out, and issue a credit value to a sender in the PSL queues based on a dynamic credit value rate control policy; The fourth module polls all PSL queues according to the order of priority from high to low, when the PSL of a certain priority is traversed, the sender in the PSL queue of the priority is determined to be distributed with the aid of a polling mode based on a dynamic credit rate control strategy, and the determined credit value to be distributed is distributed to the sender ); The fourth module selects a minimum value between a credit value (sender. Pull_target) currently requested by the sender and a dynamic adjustment release value as a credit value to be released of the sender; wherein the basic release credit value is the credit value which is released to the sender last time ) Sum with MTU; The priority-based dynamic adjustment value is determined based on the following adjustment policy: Dividing the PSL queues of N different priorities which are not empty into two parts according to the standard priority, increasing the credit value in the MTU range according to the priority size for the sender of the PSL queues higher than the standard priority, and reducing the credit value in the MTU range according to the priority size for the sender of the PSL queues smaller than or equal to the standard priority, wherein the increased credit value and the reduced credit value are kept equal.
- 5. A credit-based rate control apparatus for use with any one of a plurality of sender devices having different priority tasks supporting a UET protocol for ultra-ethernet transmissions, the apparatus comprising: the first module is used for starting a first priority task, marking a first priority label for the first priority task, splitting the first priority task into task packets (packets) through a semantic sub-layer SES, and submitting the task packets to a packet transmission sub-layer PDS at the network card equipment side; the second module is used for assembling and sending a first PDS request message carrying first priority task information and a first priority label to the receiver after the PDS receives the first priority task packet before sending the task packet to the receiver so as to request the receiver to issue a credit value to the local terminal based on the first priority label; The method comprises the steps that a receiving party PDS receives a first PDS request message, and updates first priority task information carried in the first PDS request message into a sender queue corresponding to the priority of a first priority task, wherein the sender queue comprises a sender queue PSL based on the priority and an idle sender queue ISL; When the credit value sending timer of the receiver times out, the receiver polls all PSL queues in order from high priority to low priority, when the PSL of a certain priority is traversed, the sender in the PSL queue of the priority is determined to be sent with the credit value based on a dynamic credit value rate control strategy in a polling mode, and the determined credit value to be sent is sent to the sender; Determining the credit value to be issued based on dynamic credit value rate control strategy ) The method of (1) is as follows: Selecting a minimum value between a credit value (sender. Pull_target) currently requested by the sender and a dynamic adjustment release value as a credit value to be released of the sender, wherein the dynamic adjustment release value is a base release credit value plus a dynamic adjustment value based on priority; wherein the basic release credit value is the credit value which is released to the sender last time ) Sum with maximum transmission unit MTU; The priority-based dynamic adjustment value is determined based on the following adjustment policy: Dividing the PSL queues of N different priorities which are not empty into two parts according to the standard priority, increasing the credit value in the MTU range according to the priority size for the sender of the PSL queues higher than the standard priority, and reducing the credit value in the MTU range according to the priority size for the sender of the PSL queues smaller than or equal to the standard priority, wherein the increased credit value and the reduced credit value are kept equal.
- 6. An electronic device is characterized by comprising a processor, a communication interface, a storage medium and a communication bus, wherein the processor, the communication interface and the storage medium are communicated with each other through the communication bus; a storage medium storing a computer program; a processor for implementing the method of any of claims 1-3 when executing a computer program stored on a storage medium.
- 7. A storage medium having stored thereon a computer program which, when executed by a processor, implements the method of any of claims 1 to 3.
Description
Credit value-based rate control method, apparatus and equipment Technical Field The present invention relates to the field of communications technologies, and in particular, to a method, an apparatus, and a device for rate control based on a credit value. Background Artificial intelligence and high performance computing present new challenges to networks such as the need for larger scale, higher bandwidth density, multipath, fast response to congestion, and interdependence of individual data stream execution (where tail delay is a key consideration). Existing protocols may address some aspects of the above problems, but because they are designed for generic networks, they lack functional support critical to artificial intelligence and high performance computing, such as multipath and ease of configuration. The super ethernet alliance (Ultra Ethernet Consortium, UEC) established in 7 of 2023 is a new organization sponsored by the Linux foundation and its joint development foundation. The goal of UEC is to provide a high performance, distributed and lossless transport layer optimized for high performance computing and artificial intelligence beyond existing ethernet functions, such as remote direct memory access (Remote Direct Memory Access, RDMA) and converged ethernet RDMA (RDMA over Converged Ethernet, roCE) technologies. The design of the UEC specification will compensate for these gaps and provide the larger-scale networking required for these tasks, compared to the problems mentioned above with existing ethernet functions. The goal of UEC is to provide a complete communication stack, solve the technical problem of spanning multiple protocol layers, and provide easy configuration and management functions, achieving higher network utilization and lower tail latency, both of which are critical to reducing artificial intelligence (ARTIFICIAL INTELLIGENCE, AI) and high-performance computing (High Performance Computing, HPC) job completion times. Specifically, the UEC is intended to achieve the following objectives in the future: 1) Open protocol specifications based on existing IP and ethernet protocols. 2) Multipath and packet spray transmission, the AI network is fully utilized, congestion or queue head blocking can not be caused, and a centralized load balancing algorithm and a routing controller are not needed. 3) Incast management mechanism to control fan-in on the final link to the target host with minimal packet loss. 4) Efficient rate control algorithms allow transmissions to be quickly ramped up to line speed without incurring performance loss for competing streams. 5) APIs for unordered packet delivery support completion of messages in an unordered and in-order pattern, maximizing concurrency of networks and applications, and minimizing message delays. 6) Future networks may be extended to support millions of endpoints. 7) Performance and optimal network utilization without specific congestion algorithm parameter tuning for the network and workload. 8) The line speed performance of 800G, 1.6T and future faster ethernet is intended to be implemented on commodity hardware. The transmission protocols used in the traditional high-performance computing/AI scene include TCP, data center TCP (Data Center TCP), RDMA and the like, but the congestion control algorithm related to these protocols can only guide the control cycle of the receiving end based on the interaction information generated in the process of adjusting the data flows of different protocols by the switch queue, which may cause problems of flow conflict (unreasonable load balancing), unreasonable bandwidth allocation, incast congestion (multicast congestion generated by a plurality of working nodes transmitting the packets to the same aggregation node at the same time), high time delay and the like. The super ethernet transport (Ultra Ethernet Transport, UET) protocol supports the use of credit-based rate control (Credit Based Rate Control, CBRC) algorithms in order to implement an efficient incast management mechanism. The algorithm principle mainly uses edge queue datagram services (edge-queued DATAGRAM SERVICE, EQDS) by transferring the queue-related operations and adjustment procedures from the data center network to the host side. The core idea of the CBRC is to set a reasonable allocation strategy by distributing credit values (credit) at the receiving end of the UET host so as to ensure that bandwidth can be shared fairly among different flows under the condition that the flow of the CBRC cannot be overloaded. The method for realizing end-to-end congestion control without the participation of a switch can effectively optimize bandwidth allocation, reduce time delay and effectively realize the purpose of flow load balance. For a general task (sender) using the UET protocol and having no special requirement, the default first-in first-out credit value issuing strategy of the CBRC can enable different sending Fang Junfen link bandwidths