Congestion control method and device based on dynamic and static quantization fusion

Through the congestion control method of dynamic and static quantization fusion, switch information is measured in real time and telemetry congestion factor is generated, which solves the problems of response speed and steady-state deviation in the prior art, and achieves high-performance congestion control effect.

CN120567779APending Publication Date: 2025-08-29HEFEI UNIV OF TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510707027.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-29
Publication Date
2025-08-29

AI Technical Summary

Technical Problem

The existing congestion control schemes are difficult to take into account the millisecond-level response speed and zero steady-state deviation, and cannot meet the high-performance needs of large-scale, multi-tenant RDMA networks.

Method used

The congestion control method based on dynamic and static quantization fusion is adopted, and the switch exit information is measured in real time, static and dynamic quantization indicators are calculated, telemetry congestion factors are generated, and the congestion window is adaptively updated with the ideal congestion factor, and the hardware pipeline is used to achieve line-speed deployment.

Benefits of technology

It realizes real-time response to congestion changes in high-speed network environments, maintains zero steady-state deviation and suppresses oscillation, improves response sensitivity and convergence speed, reduces delay jitter, and meets the high bandwidth and low latency requirements of modern RDMA data centers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120567779A_ABST
    Figure CN120567779A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of computer networks, and discloses a congestion control method based on dynamic and static quantization fusion, which comprises the following steps of: 1, measuring in-band network telemetry (In-band Network Telemetry, INT) information such as accumulated byte number, timestamp and the like of an outlet of a switch in real time, and performing telemetry; step 2, calculating the sum of queue lengths of all switches of the link and first-order and second-order derivatives thereof, and the exit rate, the sending rate and the first-order derivative thereof of a bottleneck switch; 3, calculating a static quantitative index and a dynamic quantitative index based on the information; step 4, generating a telemetering congestion factor according to the static quantitative index and the dynamic quantitative index, and comparing the telemetering congestion factor with an ideal congestion factor; and step 5, calculating a normalization error and updating the congestion window. According to the method, the convergence speed can be effectively increased, the congestion control accuracy is improved, oscillation is effectively suppressed, and the method has wide application scenarios.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer network technology, and in particular to a congestion control method and device based on dynamic and static quantization fusion. Background Art

[0002] With the rapid development of cloud computing, artificial intelligence, and big data applications, Remote Direct Memory Access (RDMA) technology has been widely deployed in modern data center networks due to its low latency and high throughput. Existing congestion control solutions are mainly divided into two categories:

[0003] Static congestion quantification indicator-driven (such as DCQCN and HPCC): Window adjustments are made based on absolute indicators such as queue depth or the number of packets in transit. This ensures zero steady-state error, but results in slow convergence due to feedback lag.

[0004] Dynamic congestion quantification indicator drive (such as TIMELY and DCTCP): Adjustments are made based on the RTT gradient or queue change rate. These systems offer agile responses but struggle to achieve stable convergence, often resulting in oscillations or jitter.

[0005] Solutions that rely solely on static or dynamic indicators cannot simultaneously achieve millisecond-level response speed and zero steady-state deviation, and cannot meet the high-performance requirements of large-scale, multi-tenant RDMA networks. Summary of the Invention

[0006] In order to solve the technical problems raised in the background technology, the present invention provides a congestion control method and a control device based on dynamic and static quantization fusion.

[0007] The present invention is implemented by the following technical solutions: a congestion control method based on dynamic and static quantization fusion, such as Figure 1 The control steps are shown in the figure and described in detail as follows:

[0008] Step 1: Real-time measurement of the switch egress cumulative bytes, timestamp and other INT information for telemetry;

[0009] Step 2: Calculate the sum of the queue lengths of all switches on the link and their first-order and second-order derivatives, the bottleneck switch egress rate, the sending rate, and its first-order derivative.

[0010] Step 3: Calculate static quantitative indicators and dynamic quantitative indicators based on the information;

[0011] Step 4: Generate a telemetry congestion factor based on the static quantitative index and the dynamic quantitative index, and compare the telemetry congestion factor with the ideal congestion factor;

[0012] Step 5: Calculate the normalized error and update the congestion window.

[0013] Specifically, the calculation formula of static quantitative indicators is as follows:

[0014] s(t)=Q+tRate*rtt

[0015] Where: Q is the sum of the queue lengths of all switches on the link, txRate is the bottleneck link bandwidth, and rtt is the round-trip delay.

[0016] Specifically, the calculation formula of dynamic quantitative indicators is as follows:

[0017]

[0018] in: are the first-order derivative and second-order derivative of the sum of the switch queue lengths, r(t), are the sending rate and its first-order derivative at the sender, respectively; α and β are the congestion control parameters configured for each flow.

[0019] Specifically, in step 4, the telemetry congestion factor calculation formula is: Ω(t) = s(t) * d(t); the ideal congestion factor calculation formula is: Ω # (t) = B*T*R, where B is the link bandwidth, RTT is the ideal round-trip delay, and R is the ideal sending rate.

[0020] Specifically, in step 5, the normalized error is calculated Update the congestion window ω according to the following formula:

[0021] Where: ε is the congestion control parameter configured for each flow, and ε>0 to ensure that the window does not converge to zero.

[0022] Specifically, the network queue length and the derivative of the indicator in step 1 are collected by hardware through INT information, and the differential operation is completed through a dedicated adder / subtractor and multiplier.

[0023] Specifically, it further includes converting the updated congestion window into a token bucket rate and controlling the sending end rate in real time through a hardware rate limiting unit; it also includes a control plane interaction step, issuing or modifying parameters through memory mapping or a management bus, and performing performance monitoring and dynamic tuning.

[0024] The present invention also proposes an efficient congestion control device, which executes the control method as described above, including a telemetry monitoring unit, a parallel preprocessing unit, an indicator fusion unit and a normalization and window update unit, and all units work in parallel according to a pipeline structure.

[0025] Specifically, the telemetry monitoring unit includes a hardware queue register and an interactive interface with the host; the preprocessing unit includes multiple parallel calculation units for processing packet sending rate, queue length and switch rate; the indicator fusion unit includes static submodules and dynamic submodules, and generates a telemetry congestion factor based on the calculation results;

[0026] Specifically, each unit module is deployed in a four-stage pipeline in the FPGA, ASIC or SmartNIC data plane, supporting line-speed processing of 10Gb / s–200Gb / s.

[0027] More specifically, to achieve line-rate operation on SmartNIC / FPGA / ASIC platforms, the present invention designs a congestion management unit for speed regulation on the sender side. Its highly parallel four-stage pipeline hardware architecture comprises a telemetry monitoring unit, a parallel preprocessing unit, a metrics fusion unit, and a normalization and window update unit. Furthermore, there is a rate limiting unit for controlling the sender rate, a control plane interface for interacting with the host, and an information storage unit for storing congestion management information for each queue pair (QP).

[0028] After receiving the ACK packet, the telemetry monitoring unit collects the int information, including queue depth q, timestamp ts, and cumulative number of bytes sent at the switch egress txBytes. It then calculates all switch queues and Qs along the path, as well as the packet round-trip time rtt. It also requests congestion management information for this QP from the information storage unit, which then directly returns this information to the parallel preprocessing unit in a sequence-preserving manner. The QP, ts, txBytes, and rtt are then sent to the parallel preprocessing unit.

[0029] Information storage unit: used to store congestion management information for each QP, including: historical sending rate r rev , current sending rate r, historical queue length Q pre , Historical queue length change rate Ideal congestion factor Q # , and control parameters α and β. It accepts read requests from the telemetry monitoring unit and feeds the corresponding data back to the parallel preprocessing module. It then accepts write-back operations from the normalization and window update units.

[0030] Parallel preprocessing unit: It includes three parallel calculation units: packet rate factor calculation unit, queue factor calculation unit, and switch rate factor calculation unit, to preprocess the speed regulation data. pre 、r calculation The queue factor calculation unit uses Q, Q pre 、 calculate and The switch rate factor calculation unit calculates txRate using txBytes and ts. The parallel calculation results are then sent to the indicator fusion unit for further processing.

[0031] Index fusion unit: includes static submodule, dynamic submodule and multiplier. Among them, the static submodule uses Q, txRate, rtt to calculate s, and the dynamic submodule uses r、 α and β calculate d, and the multiplier generates Ω = s * d. Finally, the calculation result is transmitted to the normalization and window update unit.

[0032] Normalization and window update unit: using Ω, Ω # Calculate h, and calculate w based on h, α, and β, and send the result to the rate limiting unit to adjust the sending window, calculate r and write the information back to the update information storage unit.

[0033] Rate limiting unit: controls the sending window.

[0034] Control plane interface: It is connected to the host through the Peripheral Component Interconnect Express (PCIe) bus to perform initial parameter settings of the QP.

[0035] Compared with the prior art, the present invention has the following beneficial effects:

[0036] The present invention innovatively defines static quantitative indicators and dynamic quantitative indicators, and integrates them into a "telemetry congestion factor", and combines them with the "ideal congestion factor" to form dual feedback to achieve adaptive updates to the sending window. The algorithm is deployed at line speed through pipelines and fixed-point operations on the hardware data plane, so that it can respond to congestion changes in real time in a high-speed network environment, maintain zero steady-state deviation and suppress oscillations. At the same time, the control plane has user-friendly parameter configurability, process perception, and easy error location functions. This method uses INT information for multi-dimensional operations, which not only improves the sensitivity of the response, but also has the accuracy of the response, improves the convergence speed and anti-congestion ability, and significantly reduces delay jitter, fully meeting the needs of modern RDMA data centers for high bandwidth, low latency and high stability.

[0037] The present invention can effectively improve the convergence speed, enhance the accuracy of congestion control, effectively suppress oscillation and has a wide range of application scenarios. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] Figure 1 A diagram describing the congestion management steps proposed by the present invention;

[0039] Figure 2The congestion management logic flow chart proposed by the present invention;

[0040] Figure 3 This is a block diagram of the hardware system proposed by the present invention;

[0041] Figure 4 This is the hardware block diagram of the congestion management unit proposed in the present invention. DETAILED DESCRIPTION

[0042] The present invention will be further described below in conjunction with the accompanying drawings and specific implementation methods. It should be noted that, under the premise of no conflict, the various embodiments or technical features described below can be arbitrarily combined to form new embodiments.

[0043] This embodiment introduces the congestion management process in detail. Figure 2 As shown:

[0044] In the initialization state, users must create or modify a QP before sending information and send the parameters required for congestion control and the initial state value for this QP. The congestion management unit must verify the existence of the QP to avoid duplicate creation or modification of an uncreated QP. If the user sends a QP that already exists or attempts to modify the parameters of an uncreated QP, an error message will be reported.

[0045] When the receiving network card receives an ACK message, it first verifies the existence of the QP. If the QP does not exist, it reports an error message. For a properly functioning QP, when sending packets with a window W, if an ACK message is received from the other end, the congestion management unit extracts the INT information and initiates a read request to the storage unit. The storage unit returns the relevant data to the data preprocessing module for processing, and then performs data integration and normalization calculations according to the speed control formula. Finally, the speed of the sending window is adjusted based on the calculation results, and the new data is written back to the storage unit. The above process repeats the next time an ACK message is received.

[0046] When data transmission is completed, the user issues a QP destruction command. The congestion control unit also needs to verify the QP change to avoid destroying the created QP or destroying the QP in a situation not allowed by the protocol. If a verification error occurs, an error report will be issued.

[0047] The congestion control unit embodiment is in the system Figure 3 The structure shown is connected upstream and downstream.

[0048] On the control plane, the host CPU and the congestion control unit communicate through the PCIe bus to perform processes such as QP creation, destruction, and modification and configure related parameters.

[0049] On the data plane, the congestion control unit extracts INT information, QP number and other messages from the ACK message received by the receiving end, and then initiates a read request for the congestion parameters related to this QP to the information storage unit of its downstream module with QPN as the index. After the data is returned, the congestion control unit calculates it, and then writes part of the results back to the information storage unit, and controls the sending window at the same time. Because the number of QPs set in this embodiment is 4K, which is a large number and the cache capacity is limited, part of the information will be written back to the DRAM. Therefore, the information storage unit is connected to the DRAM via PCIe. If the request information from the congestion control unit is not in the cache, it is necessary to read the content in the DRAM through direct memory access (DMA) and return it to the congestion control unit.

[0050] Figure 4 The internal hardware structure of the congestion control unit of the embodiment is shown in detail.

[0051] like Figure 4 As shown, the congestion control unit's upstream modules include the CPU and data receiver, while its downstream modules include the cache and data transmitter. The congestion control unit comprises four core modules: the telemetry control unit, the parallel preprocessing unit, the indicator fusion unit, and the normalization and window update unit. These modules operate in a four-stage pipeline structure to achieve high throughput. The parallel data preprocessing unit includes three parallel computing units: the transmitter rate processing unit, the queue processing unit, and the exchange rate processing unit.

[0052] The following describes the data flow from the perspectives of control plane command issuance and data plane request entry:

[0053] Control plane command issuance:

[0054] The CPU sends a command, such as one to create a QP and include congestion parameters, to the telemetry and monitoring unit via PCIe. If the command is invalid, the telemetry and monitoring unit verifies it and reports it directly to the host software via PCIe. If the verification passes, the telemetry and monitoring unit writes the relevant information to the information storage unit cache and reports it to the host software via PCIe after the write operation is complete.

[0055] Data plane requests come in:

[0056] When INT and QP information arrive from the upstream module, they first enter the telemetry control unit. Based on the INT information, the telemetry control unit calculates the queue lengths of all switches along the path, the sum of the Qs, and the packet's round-trip time (rtt). Simultaneously, a data read request is initiated to the downstream data storage unit based on the QPN. The Q, ts, txBytes, and rtt values ​​are sent to the downstream module's parallel preprocessing unit and stored in its pending queue. This constitutes the first stage of the congestion management unit's pipeline.

[0057] For the read request initiated by the telemetry control unit to the data storage unit, the result r pre , r, Q pre 、 Ω # The data will be directly returned to the parallel data pre-processing unit in a sequence. After receiving the data, if there is a DMA error in the result, it will be reported to the host through PCIe and a group of data that does not need to be processed will be discarded in order from the queue. If there is no DMA error, the parallel data pre-processing unit will take out a pending item from the queue, classify the data, and put it into the sending end rate processing unit for calculation. Put into queue processing unit calculation The switch rate processing unit calculates the txRate. The three aforementioned processes are run in parallel in the system to save runtime and improve pipeline efficiency. After preprocessing, the data is queued in the indicator fusion unit. This is the second-level pipeline of the congestion management unit.

[0058] If the queue to be processed is not empty, the indicator fusion unit will take out a set of data from it and perform s(t)=Q+txRate*rtt and The multiplier then performs the multiplication operation Ω(t) = s(t) * d(t) to obtain the telemetry congestion factor for the current link state, and outputs the result to the work queue of the normalization and window update unit. This is the third stage of the congestion management unit.

[0059] If the work queue is not empty, the normalization and window update unit will take a set of data from it and perform the normalization operation of Ω And calculate the new window value based on the window update logic The new window value is used to calculate r, and all updated information is written back to the data storage unit. At the same time, the data sender is notified to use the new window value to send data packets. The above is the fourth stage of the congestion management unit.

[0060] The above descriptions, both in text and in figures, demonstrate the congestion management logic and corresponding hardware implementation architecture of the present invention. This embodiment, through pipelines, external storage and management of congestion parameters, and path configuration for interaction with the CPU, achieves high throughput, fast convergence, a large number of QPs managed, and high user perception of congestion management.

[0061] In summary, the present invention innovatively defines static quantitative indicators and dynamic quantitative indicators, and integrates them into a "telemetry congestion factor", and combines them with the "ideal congestion factor" to form dual feedback to achieve adaptive updates to the sending window. The algorithm is deployed at line speed through pipelines and fixed-point operations on the hardware data plane, so that it can respond to congestion changes in real time in a high-speed network environment, maintain zero steady-state deviation and suppress oscillations. At the same time, the control plane has user-friendly parameter configurability, process perception, and easy error location functions. This method uses INT information for multi-dimensional operations, which not only improves the sensitivity of the response, but also has the accuracy of the response, improves the convergence speed and anti-congestion ability, and significantly reduces delay jitter, fully meeting the needs of modern RDMA data centers for high bandwidth, low latency and high stability.

[0062] The above embodiments are only preferred embodiments of the present invention and cannot be used to limit the scope of protection of the present invention. Any non-substantial changes and replacements made by technicians in this field on the basis of the present invention fall within the scope of protection required by the present invention.

Claims

1. A congestion control method based on dynamic and static quantization fusion, comprising the following steps: Step 1: Real-time measurement of the switch egress cumulative bytes, timestamp and other INT information for telemetry; Step 2: Calculate the sum of the queue lengths of all switches on the link and their first-order and second-order derivatives, the bottleneck switch egress rate, the sending rate, and its first-order derivative. Step 3: Calculate static quantitative indicators and dynamic quantitative indicators based on the information; Step 4: Generate a telemetry congestion factor based on the static quantitative index and the dynamic quantitative index, and compare the telemetry congestion factor with the ideal congestion factor; Step 5: Calculate the normalized error and update the congestion window.

2. The congestion control method based on dynamic and static quantization fusion according to claim 1, characterized in that: The calculation formula of the static quantitative index is as follows: s(t)=Q+txRate*rtt Where: Q is the sum of the queue lengths of all switches on the link, txRate is the bottleneck link bandwidth, and rtt is the round-trip delay.

3. The congestion control method based on dynamic and static quantization fusion according to claim 1, characterized in that: The calculation formula of the dynamic quantitative index is as follows: in: are the first-order derivative and second-order derivative of the sum of the switch queue lengths, r(t), are the sending rate and its first-order derivative at the sender, respectively; α and β are the congestion control parameters configured for each flow.

4. The congestion control method based on dynamic and static quantization fusion according to claim 1, characterized in that: In step 4, the telemetry congestion factor calculation formula is: Ω(t)=s(t)*d(t); the ideal congestion factor calculation formula is: Ω # (t) = B*T*R, where B is the link bandwidth, RTT is the ideal round-trip delay, and R is the ideal sending rate.

5. The congestion control method based on dynamic and static quantization fusion according to claim 1, characterized in that: In step 5, the normalized error is calculated Update the congestion window w according to the following formula: Where: ε is the congestion control parameter configured for each flow, and ε>0 to ensure that the window does not converge to zero.

6. The congestion control method based on dynamic and static quantization fusion according to claim 1, characterized in that: The network queue length and the derivative of the indicator in step 1 are collected by hardware through INT information, and the differential operation is completed through a dedicated adder / subtractor and a multiplier.

7. The congestion control method based on dynamic and static quantization fusion according to claim 1, characterized in that: It further includes converting the updated congestion window into a token bucket rate and controlling the sending end rate in real time through a hardware rate limiting unit; it also includes a control plane interaction step, issuing or modifying parameters through memory mapping or management bus, and performing performance monitoring and dynamic tuning.

8. An efficient congestion control device, which executes the method according to any one of claims 1 to 7, characterized in that: It includes a telemetry monitoring unit, a parallel preprocessing unit, an indicator fusion unit, and a normalization and window update unit. All units work in parallel according to a pipeline structure.

9. The efficient congestion control device according to claim 1, characterized in that: The telemetry monitoring unit includes a hardware queue register and an interactive interface with the host; the preprocessing unit includes multiple parallel computing units for processing the packet sending rate, queue length and switch rate; the indicator fusion unit includes a static submodule and a dynamic submodule, and generates a telemetry congestion factor based on the calculation results.

10. The efficient congestion control device according to claim 1, characterized in that: Each unit module is deployed in a four-stage pipeline in the FPGA, ASIC or Smart NIC data plane, supporting line-speed processing of 10Gb / s–200Gb / s.