RDMA network congestion control method based on law of conservation of data packets

By applying game theory and packet conservation law in RDMA networks, coordinated rate adjustment between sending nodes is achieved, and the problems of suboptimal performance and network oscillation in the existing RDMA network congestion control scheme are solved, and the stability and adaptability of the network are improved.

CN120200972APending Publication Date: 2025-06-24HENAN UNIVERSITY
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510350394.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-24
Publication Date
2025-06-24

AI Technical Summary

Technical Problem

The existing RDMA network congestion control schemes have problems with suboptimal performance and network oscillation, especially in distributed scenarios, where the lack of effective coordination between sending terminals leads to blind heuristic rate adjustment, increasing queue delays and network conflicts.

Method used

The RDMA network congestion control method based on the law of data packet conservation is adopted, and the coordinated rate adjustment between multiple senders is achieved by applying the mathematical method of game theory to the congestion control rate adjustment of the RDMA high-speed network. The specific steps include the sender sending the data packet at the maximum rate of receiving the data packet, the switch judges the port status and marks the port status into the data packet, the receiver extracts the port status and marks the package into the ACK and returns it to the sender. The sender calculates the ideal transmission rate based on the law of conservation of data packets and passes it to the game driver module, calculates the Nash equilibrium rate between distributed data streams through the game driver module, and uses an adaptive mechanism to achieve rate adjustment.

Benefits of technology

Dynamic rate balance and optimization is achieved through the game coordination model between multiple nodes, key indicators are enhanced, distributed congestion control strategies are optimized, conflicts and blockages in the network are reduced, and network stability and adaptability are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120200972A_ABST
    Figure CN120200972A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of network congestion control, and provides an RDMA network congestion control method based on the law of conservation of data packets. The method comprises the following steps: a sender sends a data packet to a corresponding receiver at the maximum rate of receiving the data packet, and waits for the ACK of the receiver; when the data flow passes through the port of the switch, the switch judges the current port state and packages the port state mark into a data packet passing through the port at present; after receiving the marked data packet, the receiver extracts the port state, marks the port state, packages the port state in ACK and returns the port state to the sender; after receiving the ACK with the port state mark, the sender calculates the ideal sending rate of the current data packet based on the law of conservation of data packets and transmits the ideal sending rate to a game driving module, and the sender calculates the Nash equilibrium rate among distributed data streams through the game driving module based on the ideal sending rate and transmits the Nash equilibrium rate to the game driving module; and speed regulation is realized by adopting a self-adaptive mechanism.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of network congestion control, and in particular, to an RDMA network congestion control method based on the law of conservation of data packets. Background Art

[0002] With the development of data center storage systems, especially the transition from distributed storage to monolithic storage arrays and the introduction of remote access capabilities, the enterprise's demand for networks is also increasing. However, with the continuous increase in the demand for data center networks, effectively managing and controlling network congestion has become a major challenge.

[0003] First, the mainstream RDMA congestion control schemes incorporate some inappropriate parts into their schemes instead of designing the congestion control of lossless Ethernet from scratch, resulting in suboptimal performance. For example, HPCC relies on high-precision INT to guide congestion control, but it leads to a high per-packet overhead and sacrifices throughput performance.

[0004] Second, the existing distributed RDMA congestion control mechanisms face problems regarding transmission rate control. A major reason for this is that there is no effective coordination among sending terminals when designing rate adjustment, but rather blind heuristic rate adjustment is adopted. Such a mechanism often leads to network oscillations and increases queuing delays. Summary of the Invention

[0005] To solve the above problems, the present invention proposes an RDMA network congestion control method based on the law of conservation of data packets. By applying the mathematical method of game theory to the congestion control rate adjustment of the RDMA high-speed network, the coordinated rate adjustment among multiple senders is effectively achieved, thereby enhancing key indicators and optimizing the distributed congestion control strategy to reduce problems such as conflicts and blockages in the network.

[0006] An RDMA network congestion control method based on the law of conservation of data packets proposed by the present invention includes:

[0007] Step 1: The sender sends data packets to the corresponding receiver at the maximum rate of receiving data packets and waits for the ACK from the receiver.

[0008] Step 2: When the data stream passes through the switch port, the switch determines the current port state and encapsulates the port state mark into the data packet passing through the current port.

[0009] Step 3: After receiving the marked data packet, the receiver extracts the port state and encapsulates it into the ACK and returns it to the sender.

[0010] Step 4: After the sender receives the ACK with the port status flag, based on the law of conservation of packets, calculate the ideal transmission rate of the current packet and pass the ideal transmission rate to the game-driven module;

[0011] Step 5: The sender calculates the Nash equilibrium rate between distributed data streams through the game-driven module based on the ideal transmission rate and implements rate adjustment using an adaptive mechanism.

[0012] Further, in Step 2, when the data stream passes through the switch port, the switch judges the current port status, specifically including:

[0013] When the data stream passes through the switch port, the switch judges whether the current queue length exceeds the port congestion queue threshold. If the current port queue length exceeds the port congestion queue threshold, the current port status is congested;

[0014] If the current port queue length does not exceed the port congestion queue threshold, the current port status is non-congested;

[0015] Specifically, it is judged by the following formula:

[0016] if Qcur>Threshold

[0017] then

[0018] Last_State = CE

[0019] else

[0020] Last_State = NO

[0021] where Qcur represents the queue length of the current port, Threshold represents the port congestion queue threshold of the current port, Last_State represents the port status, CE represents congestion, and NO represents non-congestion.

[0022] Further, in Step 4, after the sender receives the ACK with the status flag, based on the law of conservation of packets, calculate the ideal transmission rate of the current packet, specifically including: If the ACK has a congestion flag status, the ideal transmission rate of the current packet is calculated by the following formula:

[0023] if snd_una>snd_nxt Then

[0024] R = recvNum*MTU / T

[0025] if snd una ≤snd_nxt Then

[0026] ​R = Rs + (lineRate - Rs) / lineRate * RI

[0027] Among them, snd_una represents the currently unacknowledged bytes, snd_nxt represents the next send byte allowed for the sender, initialized to 0, R represents the ideal sending rate of the sender, recvNum represents the number of currently received ACKs, MTU represents the maximum transmission unit, T represents the round-trip delay RTT, Rs represents the current sending rate of the sender, lineRate represents the line rate, and RI represents the rate change increment;

[0028] When the ACK has an uncongested marked state, the ideal sending rate is calculated by the following formula:

[0029] R = Rs + (lineRate - Rs) / lineRate * RI.

[0030] Furthermore, in step 4, a game theory model is defined in the game-driven module, specifically as follows:

[0031] Utility function: U k (λ k ) = α k logλ k

[0032] Cost function: P k (λ k ; R) = p k λ k

[0033] Revenue function: Φ A (λ k ) = α k logλ k -P k λ k

[0034] Among them, α k represents the preference parameter of the current data stream k, λ k represents the sending rate of the current data stream k, the utility function U k (λ k ) represents the utility size caused by the current data stream sending at the sending rate λ k , the cost function P k (λ k ; R) represents the impact on the link caused by the current data stream sending at the sending rate λ k , p k represents the penalty coefficient, and the revenue function is the utility function minus the cost function.

[0035] Further, the sender calculates the Nash equilibrium rate between distributed data streams based on the ideal sending rate through a game-driven module, specifically including:

[0036] Calculate the penalty coefficient p generated by the current ideal sending rate according to the game theory-driven model, and calculate the final Nash equilibrium rate based on the p value;

[0037] Among them, the penalty coefficient p is calculated by the following formula:

[0038] p = σ * R / (C / N)

[0039] Among them, p represents the penalty coefficient, σ represents the selection rate adjustment factor, C represents the maximum bandwidth of the current link, and N represents the number of sender nodes in the current link.

[0040] Further, the Nash equilibrium point is reached between data streams by maximizing the revenue function, and the Nash equilibrium rate is obtained; the revenue function Φ A (λ k ) Solve the maximum value by the Lagrange mean value theorem, and the following can be obtained:

[0041]

[0042] Among them, u(λ - C) represents the Lagrange multiplier term, represents the defined Lagrange function; take the derivatives of λ, p, and u respectively to obtain:

[0043]

[0044] Set equal to zero respectively, and solve for the extreme value of λ.

[0045] Further, the adaptive rate adjustment mechanism described in step 5 specifically includes the following:

[0046] If the sending rate of the current data stream is greater than the ideal sending rate, the current game target of the game theory-driven model is in an unsatisfactory state, and the sender then adopts an adaptive mechanism to update the current sending rate to the ideal sending rate and gradually approach the Nash equilibrium rate.

[0047] The beneficial effects of the present invention are:

[0048] The present invention applies the mathematical method of game theory to the congestion control rate adjustment of the RDMA high-speed network. By constructing a game coordination model among multiple nodes, it realizes the dynamic rate balance and optimization among sending nodes, thereby enhancing key indicators and optimizing the distributed congestion control strategy to reduce problems such as conflicts and congestion in the network. At the same time, the present invention is designed based on the underlying mechanism of lossless RDMA network data transmission, fully considering the physical constraint that the data packet transmission in the RDMA network must be returned with an ACK by the receiving party. Before that, they fly in the network pipeline or switch queue. Using the law of conservation of data packets, taking the ACK feedback as the congestion signal to perform congestion control on the data traffic in the network, so as to achieve accurate traffic detection and feedback regulation. The present invention combines the rate adjustment strategy based on game theory with the adaptive mechanism based on the conservation of data packets, effectively solves the problems existing in the common blind heuristic rate adjustment in the distributed scenario, improves the cooperation degree and fairness among multiple nodes, and at the same time realizes the adaptation to the dynamic network environment and ensures the stability of the network link. BRIEF DESCRIPTION OF THE DRAWINGS

[0049] Figure 1 FIG. is a schematic flow chart of a method for congestion control of an RDMA network based on the law of conservation of data packets provided by an embodiment of the present invention;

[0050] Figure 2 FIG. is a schematic diagram of the working states of a sender, a receiver, and a switch provided by an embodiment of the present invention;

[0051] Figure 3 FIG. is a schematic diagram of the framework structure of a method for congestion control of an RDMA network based on the law of conservation of data packets provided by an embodiment of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0052] To make the objectives, technical solutions, and advantages of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly described below with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are some, but not all, of the embodiments of the present invention. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.

[0053] As Figure 1 shown, a method for congestion control of an RDMA network based on the law of conservation of data packets provided by an embodiment of the present invention specifically includes:

[0054] Step 1: The sender sends data packets to the corresponding receiver at the maximum rate of receiving data packets and waits for the ACK from the receiver.

[0055] When the sender starts to send the data stream, in order to ensure a high link utilization rate of the data link, each sender node sends the data stream at the required sending rate and waits to receive an ACK from the receiver.

[0056] Step 2: When the data stream passes through the switch port, the switch judges the current port state and encapsulates the port state mark into the data packet passing through the current port.

[0057] As Figure 2 shown, specifically including: when the data stream passes through the switch port, the switch judges whether the current queue length exceeds the port congestion queue threshold. If the current port queue length exceeds the port congestion queue threshold, the current port state is congested;

[0058] If the current port queue length does not exceed the port congestion queue threshold, the current port state is non-congested;

[0059] Specifically judged by the following formula:

[0060] if Qcur>Threshold

[0061] then

[0062] Last_State=CE

[0063] else

[0064] Last_State=NO

[0065] Among them, Qcur represents the queue length of the current port, Threshold represents the port congestion queue threshold of the current port, Last_State represents the port state, CE represents congestion, and NO represents non-congestion.

[0066] Step 3: After the receiver receives the marked data packet, it extracts the port state and encapsulates it into the ACK and returns it to the sender.

[0067] Step 4: After the sender receives the ACK with the port state mark, based on the law of conservation of data packets, it calculates the ideal sending rate of the current data packet and passes the ideal sending rate to the game-driven module.

[0068] As Figure 3 shown, specifically including: if the ACK has a marked state of congestion, the ideal sending rate of the current data packet is calculated by the following formula:

[0069] if snd_una>snd_nxt Then

[0070] R=recvNum*MTU / T

[0071] if snduna ≤ snd_nxt Then

[0072] R = Rs + (lineRate - Rs) / lineRate * RI

[0073] Where snd_una represents the current unacknowledged byte, snd_nxt represents the next send byte allowed for the sender, initialized to 0, R represents the ideal send rate of the sender, recvNum represents the number of ACKs currently received, MTU represents the maximum transmission unit, T represents the round-trip delay RTT, which refers to the time required for data to be transmitted from the sender to the receiver and then returned from the receiver to the sender; for the congestion flow, according to the law of conservation of packets, the ACK arrival rate can imply the available bandwidth.

[0074] For the congestion flow, the ideal send rate is calculated in an additive increase manner as follows:

[0075] When the ACK has an uncongested marked state, the ideal send rate is calculated by the following formula:

[0076] R = Rs + (lineRate - Rs) / lineRate * RI

[0077] Where Rs represents the current send rate of the sender, lineRate represents the line rate, and RI represents the rate change increment.

[0078] There is a game theory model defined in the game-driven module, which is specifically as follows:

[0079] Utility function: U k (λ k ) = α k logλ k

[0080] Cost function: P k (λ k ; R) = p k λ k

[0081] Revenue function: Φ A (λ k ) = α k logλ k -P k λ k

[0082] Where α k represents the preference parameter of the current data stream k, which refers to how fast the current data stream k hopes to send. Generally, this parameter is defaulted to the maximum send rate (line rate C); λ k represents the send rate of the current data stream k, and the utility function Uk (λ k ) represents the utility size caused by the current data stream being sent at the sending rate λ k to the link, and the cost function P k (λ k ; R) represents the impact caused by the current data stream being sent at the sending rate λ k to the link, and p k represents the penalty coefficient, and the revenue function is the utility function minus the cost function.

[0083] Step 5: The sender calculates the Nash equilibrium rate between distributed data streams through the game-driven module based on the ideal sending rate, and adopts an adaptive mechanism to achieve rate adjustment.

[0084] The sender calculates the Nash equilibrium rate between distributed data streams through the game-driven module based on the ideal sending rate, specifically including:

[0085] Calculating the penalty coefficient p generated by the current ideal sending rate according to the game theory-driven model, and calculating the final Nash equilibrium rate based on the p value;

[0086] Among them, the penalty coefficient p is calculated by the following formula:

[0087] p = σ * R / (C / N)

[0088] Among them, p represents the penalty factor, σ represents the selected rate adjustment factor, which takes different values for different types of flows, C represents the maximum bandwidth of the current link; N represents the number of sender nodes in the current link, that is, the number of data streams transmitted.

[0089] Reaching the Nash equilibrium point between data streams by maximizing the revenue function to obtain the Nash equilibrium rate; the revenue function Φ A (λ k ) performs Lagrange mean value theorem to solve the maximum value, and the following can be obtained:

[0090]

[0091] Deriving with respect to λ, p, and u respectively, we can get:

[0092]

[0093] Among them, u(λ - C) represents the Lagrange multiplier term, represents the defined Lagrangian function; setting equal to zero respectively to solve the extreme value of λ.

[0094] To simplify the calculation and better conform to the application scenario of data center network transmission, the embodiments of the present invention define the Nash equilibrium value as an interval solution. When p≥1, it indicates that the link is fully utilized. At this time, the Lagrangian multiplier u is assigned a value of 0, and the Nash equilibrium rate is obtained as α / p. Otherwise, it indicates that the link is not fully utilized, and the Nash equilibrium rate is directly assigned the line rate C. As shown in the following formula:

[0095]

[0096] The adaptive rate adjustment mechanism specifically includes the following:

[0097] If the sending rate of the current data flow is greater than the ideal sending rate, the goal of the current game of the game theory-driven model is in an unsatisfactory state. The sender then adopts an adaptive mechanism to update the current sending rate to the ideal sending rate and gradually approach the Nash equilibrium rate.

[0098] The present invention innovatively solves the coordination problem among distributed sending nodes by combining the packet conservation law with game theory. As the basis of flow control, the packet conservation law uses ACK feedback signals to accurately detect and adjust the data flow in the network, ensuring the transmission efficiency and the accuracy of congestion control. The game theory method, on the other hand, realizes the coordination and fairness among sending nodes by constructing a dynamic rate adjustment model, optimizing the rate balance. This combination not only improves the rationality of rate adjustment but also effectively avoids the uncertainty and performance loss caused by blind heuristic adjustment, thus enhancing the stability and adaptive ability of the network. This innovative design has high engineering value and foresight in practical applications.

[0099] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit them. Although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions described in the foregoing embodiments or perform equivalent replacements for some of the technical features. However, such modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A RDMA network congestion control method based on the law of packet conservation, characterized in that: include: Step 1: The sender sends a data packet to the corresponding receiver at the maximum rate of receiving data packets and waits for the receiver's ACK; Step 2: When the data stream passes through the switch port, the switch determines the current port status and encapsulates the port status tag into the data packet currently passing through the port; Step 3: After receiving the data packet with the mark, the receiver extracts the port status and marks it, encapsulates it into ACK and returns it to the sender; Step 4: After receiving the ACK with the port status mark, the sender calculates the ideal sending rate of the current data packet based on the law of data packet conservation, and passes the ideal sending rate to the game driving module; Step 5: The sender calculates the Nash equilibrium rate between distributed data streams through the game driving module based on the ideal sending rate, and adopts an adaptive mechanism to achieve rate regulation.

2. According to the RDMA network congestion control method based on the data packet conservation law of claim 1, it is characterized in that: In step 2, when the data stream passes through the switch port, the switch determines the current port status, specifically including: When data flows through the switch port, the switch determines whether the current queue length exceeds the port congestion queue threshold. If the current port queue length exceeds the port congestion queue threshold, the current port status is congested; If the current port queue length does not exceed the port congestion queue threshold, the current port status is non-congested; Specifically judged by the following formula: if Qcur>Threshold then Last_State=CE else Last_State=NO Qcur indicates the queue length of the current port, Threshold indicates the congestion queue threshold of the current port, Last_State indicates the port status, CE indicates congestion, and NO indicates non-congestion.

3. The RDMA network congestion control method based on the packet conservation law according to claim 1 is characterized in that: In step 4, after receiving the ACK with the status mark, the sender calculates the ideal sending rate of the current data packet based on the data packet conservation law, specifically including: if the ACK has a congestion mark state, the ideal sending rate of the current data packet is calculated by the following formula: if snd_una>snd_nxt Then R=recvNum*MTU / T if snd una ≤snd_nxt Then R=Rs+(lineRate-Rs) / lineRate*RI Among them, snd_una represents the current unconfirmed byte, snd_nxt represents the next byte allowed to be sent by the sender, which is initialized to 0, R represents the ideal sending rate of the sender, recvNum represents the number of ACKs currently received, MTU represents the maximum transmission unit, T represents the round-trip time RTT, Rs represents the current sending rate of the sender, lineRate represents the line rate, and RI represents the rate change increment; If the ACK carries a non-congested status, the ideal sending rate is calculated by the following formula: R=Rs+(lineRate-Rs) / lineRate*RI.

4. The RDMA network congestion control method based on the packet conservation law according to claim 1 is characterized in that: In step 4, a game theory model is defined in the game driving module, as shown below: Utility function: U k (λ k )=α k logλ k Cost function: P k (λ k ; R) = p k λ k Revenue function: F A (l k )=a k logλ k -P k l k Among them, α k represents the preference parameter of the current data stream k, λ k represents the sending rate of the current data stream k, and the utility function U k (λ k ) indicates that the current data flow is sent at rate λ k The size of the utility caused by sending to the link, the cost function P k (λ k ; R) indicates that the current data flow is sent at a rate λ k The impact of sending the size of p on the link, k represents the penalty coefficient, and the benefit function is the utility function minus the cost function.

5. The RDMA network congestion control method based on the packet conservation law according to claim 4 is characterized in that: The sender calculates the Nash equilibrium rate between distributed data streams based on the ideal sending rate through the game driving module, specifically including: The penalty coefficient p generated by the current ideal sending rate is calculated based on the game theory driven model, and based on the p value, the final Nash equilibrium rate is calculated; The penalty coefficient p is calculated by the following formula: p=σ*R / (C / N) Where p represents the penalty coefficient, σ represents the selected rate adjustment factor, C represents the maximum bandwidth of the current link, and N represents the number of sender nodes in the current link.

6. The RDMA network congestion control method based on the packet conservation law according to claim 5 is characterized in that: By reaching the maximum value of the profit function, the data streams reach the Nash equilibrium point and obtain the Nash equilibrium rate; the profit function Φ A (λ k ) and use the Lagrange mean value theorem to solve the maximum value, we can get: Among them, u(λ-C) represents the Lagrange multiplier term, represents the defined Lagrangian function; taking the derivatives of λ, p, and u respectively, we get: Will are equal to zero respectively, and solve for the maximum value of λ.

7. The RDMA network congestion control method based on the packet conservation law according to claim 1 is characterized in that: The adaptive rate adjustment mechanism described in step 5 specifically includes the following: If the current data stream sending rate is greater than the ideal sending rate, the goal of the current game in the game theory driven model is in an undesirable state, and the sender adopts an adaptive mechanism to update the current sending rate to the ideal sending rate and gradually approach the Nash equilibrium rate.