US12309072B2ActiveUtilityA1

Network congestion control method and network device

45
Assignee: HUAWEI TECH CO LTDPriority: May 26, 2020Filed: Nov 23, 2022Granted: May 20, 2025
Est. expiryMay 26, 2040(~13.9 yrs left)· nominal 20-yr term from priority
H04L 47/10H04L 47/30H04L 47/193H04L 47/127H04L 47/225H04L 47/22H04L 47/27
45
PatentIndex Score
0
Cited by
12
References
20
Claims

Abstract

This application discloses a network congestion control method and a network device, and relates to the field of communication technologies, to improve continuity and completion of a packet in a transmission process of a Transmission Control Protocol (TCP) flow. In this application, when pre-congestion (that is, congestion may occur) occurs in a forwarding direction of the TCP flow, a forwarding device reduces a value of a receive window (RWND) field in an acknowledge (ACK) packet, to reduce a sending rate of a transmit end for a packet in the TCP flow or delay sending of a packet by a transmit end. This relieves buffer pressure of the forwarding device, reduces a packet loss, and improves the continuity and the completion of the packet in the transmission process of the TCP flow.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method comprising:
 determining, by a forwarding device that forwards a Transmission Control Protocol (TCP) flow, based on a buffer status of the forwarding device, that pre-congestion occurs in a forwarding direction of the TCP flow, wherein the buffer status of the forwarding device depends on one or more of following: a quantity of packets buffered in the forwarding device, or a data volume of the packets buffered in the forwarding device, or a ratio of the data volume of the packets buffered in the forwarding device to a buffer area, and wherein it is determined that the pre-congestion occurs in the forwarding direction of the TCP flow when one or more of following are met:
 a quantity of packets buffered in the forwarding device in the forwarding direction of the TCP flow is greater than a preset quantity; or 
 a data volume of the packets buffered in the forwarding device in the forwarding direction of the TCP flow is greater than a preset data volume; or 
 a ratio of the data volume of the packets buffered in the forwarding device in the forwarding direction of the TCP flow to the buffer area is greater than a preset ratio; and 
 
 when the pre-congestion occurs in the forwarding direction of the TCP flow on the forwarding device that forwards the TCP flow, reducing, by the forwarding device, a value of a receive window (RWND) field in an acknowledge (ACK) packet of a packet in the TCP flow, and wherein: 
 the ACK packet acknowledges receipt of the packet and is in an opposite direction to the forwarding direction of the TCP flow; and 
 the preset quantity or the preset data volume or the preset ratio is determined by the forwarding device based on a current throughput in the forwarding direction of the TCP flow and the quantity of packets buffered in the forwarding device or the data volume of the packets buffered in the forwarding device. 
 
     
     
       2. The method according to  claim 1 , wherein reducing, by the forwarding device, the value of the RWND field in the ACK packet of the packet in the TCP flow comprises:
 reducing, by the forwarding device, the value of the RWND field in the ACK packet of the packet in the TCP flow based on one or more of following: the quantity of the packets buffered by the forwarding device in the forwarding direction of the TCP flow, the data volume of the packets buffered by the forwarding device in the forwarding direction of the TCP flow, or the ratio of the data volume of the packets buffered by the forwarding device in the forwarding direction of the TCP flow to the buffer area. 
 
     
     
       3. The method according to  claim 1 , wherein the forwarding direction comprises an uplink direction. 
     
     
       4. The method according to  claim 1 , wherein the forwarding device is a core switch. 
     
     
       5. The method according to  claim 1 , wherein the forwarding direction comprises a downlink direction. 
     
     
       6. The method according to  claim 1 , wherein the forwarding device is an aggregation switch. 
     
     
       7. The method according to  claim 1 , wherein the forwarding device is an access switch. 
     
     
       8. The method according to  claim 1 , wherein the forwarding device is a wireless access point. 
     
     
       9. A forwarding device comprising:
 at least one processor, configured to:
 determine, based on a buffer status of the forwarding device, that pre-congestion occurs in a forwarding direction of a Transmission Control Protocol (TCP) flow, wherein the forwarding device forwards the TCP flow, the buffer status of the forwarding device depends on one or more of following: a quantity of packets buffered in the forwarding device, or a data volume of the packets buffered in the forwarding device, or a ratio of the data volume of the packets buffered in the forwarding device to a buffer area, and wherein it is determined that the pre-congestion occurs in the forwarding direction of the TCP flow when one or more of following are met: 
 a quantity of packets buffered by the forwarding device in the forwarding direction of the TCP flow is greater than a preset quantity; or 
 a data volume of the packets buffered by the forwarding device in the forwarding direction of the TCP flow is greater than a preset data volume; or 
 a ratio of the data volume of the packets buffered by the forwarding device in the forwarding direction of the TCP flow to the buffer area is greater than a preset ratio; and 
 reduce a value of a receive window (RWND) field in an acknowledge (ACK) packet of a packet in the TCP flow when the pre-congestion occurs in the forwarding direction of the TCP flow, and wherein: 
 
 the ACK packet acknowledges receipt of the packet and is in an opposite direction to the forwarding direction of the TCP flow; and 
 the preset quantity or the preset data volume or the preset ratio is determined by the forwarding device based on a current throughput in the forwarding direction of the TCP flow and the quantity of packets buffered in the forwarding device or the data volume of the packets buffered in the forwarding device. 
 
     
     
       10. The forwarding device according to  claim 9 , wherein that the at least one processor reduces the value of the RWND field in the ACK packet of the packet in the TCP flow comprises:
 the at least one processor reduces the value of the RWND field in the ACK packet of the packet in the TCP flow based on one or more of following: the quantity of the packets buffered by the forwarding device in the forwarding direction of the TCP flow, the data volume of the packets buffered by the forwarding device in the forwarding direction of the TCP flow, or the ratio of the data volume of the packets buffered by the forwarding device in the forwarding direction of the TCP flow to the buffer area. 
 
     
     
       11. The forwarding device according to  claim 9 , wherein the forwarding direction comprises an uplink direction. 
     
     
       12. The forwarding device according to  claim 9 , wherein the forwarding device is a core switch, an aggregation switch, an access switch, or a wireless access point. 
     
     
       13. The forwarding device according to  claim 9 , wherein the forwarding direction comprises a downlink direction. 
     
     
       14. The forwarding device according to  claim 9 , wherein it is determined that the pre-congestion occurs in the forwarding direction of the TCP flow when the quantity of packets buffered by the forwarding device in the forwarding direction of the TCP flow is greater than the preset quantity. 
     
     
       15. The forwarding device according to  claim 9 , wherein it is determined that the pre-congestion occurs in the forwarding direction of the TCP flow when the data volume of the packets buffered by the forwarding device in the forwarding direction of the TCP flow is greater than the preset data volume. 
     
     
       16. A forwarding device comprising:
 a non-transitory memory, configured to store a computer program and a Transmission Control Protocol (TCP) flow; 
 a transceiver, configured to forward the TCP flow; and 
 a processor in communication with the memory and the transceiver, the processor being configured to execute the computer program to cause the forwarding device to perform:
 determining, based on a buffer status of the forwarding device, that pre-congestion occurs in a forwarding direction of the TCP flow, wherein the buffer status of the forwarding device depends on one or more of following: a quantity of packets buffered in the forwarding device, or a data volume of the packets buffered in the forwarding device, or a ratio of the data volume of the packet buffered in the forwarding device to a buffer area, and wherein it is determined that the pre-congestion occurs in the forwarding direction of the TCP flow when one or more of following are met:
 a quantity of packets buffered by the forwarding device in the forwarding direction of the TCP flow is greater than a preset quantity; or 
 a data volume of the packets buffered by the forwarding device in the forwarding direction of the TCP flow is greater than a preset data volume; or 
 a ratio of the data volume of the packets buffered by the forwarding device in the forwarding direction of the TCP flow to the buffer area is greater than a preset ratio; and 
 
 
 when the pre-congestion occurs in the forwarding direction of the TCP flow, reducing a value of a receive window (RWND) field in an acknowledge (ACK) packet of a packet in the TCP flow, wherein the ACK packet acknowledges receipt of the packet and is in an opposite direction to the forwarding direction of the TCP flow; and 
 wherein the preset quantity or the preset data volume or the preset ratio is determined by the forwarding device based on a current throughput in the forwarding direction of the TCP flow and the quantity of packets buffered in the forwarding device or the data volume of the packets buffered in the forwarding device. 
 
     
     
       17. The forwarding device according to  claim 16 , wherein reducing the value of the RWND field in the ACK packet of the packet in the TCP flow comprises:
 reducing the value of the RWND field in the ACK packet of the packet in the TCP flow based on one or more of following: the quantity of the packets buffered by the forwarding device in the forwarding direction of the TCP flow, the data volume of the packets buffered by the forwarding device in the forwarding direction of the TCP flow, or the ratio of the data volume of the packets buffered by the forwarding device in the forwarding direction of the TCP flow to the buffer area. 
 
     
     
       18. The forwarding device according to  claim 16 , wherein the forwarding direction comprises an uplink direction. 
     
     
       19. The forwarding device according to  claim 16 , wherein the forwarding device is a core switch, an aggregation switch, an access switch, or a wireless access point. 
     
     
       20. The forwarding device according to  claim 16 , wherein the forwarding direction comprises a downlink direction.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.