WO2011150651A1 - Congestion control method and device for data transmission - Google Patents

Congestion control method and device for data transmission Download PDF

Info

Publication number
WO2011150651A1
WO2011150651A1 PCT/CN2010/080436 CN2010080436W WO2011150651A1 WO 2011150651 A1 WO2011150651 A1 WO 2011150651A1 CN 2010080436 W CN2010080436 W CN 2010080436W WO 2011150651 A1 WO2011150651 A1 WO 2011150651A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet loss
loss rate
data transmission
rate
threshold
Prior art date
Application number
PCT/CN2010/080436
Other languages
French (fr)
Chinese (zh)
Inventor
肖文曙
尹月静
许志勇
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to CN201080003685.5A priority Critical patent/CN102204182B/en
Priority to PCT/CN2010/080436 priority patent/WO2011150651A1/en
Publication of WO2011150651A1 publication Critical patent/WO2011150651A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/10Streamlined, light-weight or high-speed protocols, e.g. express transfer protocol [XTP] or byte stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion

Definitions

  • the present invention relates to the field of network communication technologies, and in particular, to a congestion control method and apparatus for data transmission.
  • TCP Transmission Control Protocol
  • UDP User The Datagram Protocol, a user datagram protocol, is widely used as a standard transport protocol.
  • TCP is a reliable transmission protocol, using congestion control mechanism to ensure reliable transmission of data packets, while ensuring the fairness of network resource usage.
  • the focus of the TCP congestion control algorithm is on the window control management. From the congestion control algorithm that has been disclosed, the congestion control algorithm can be divided into: 1) by the congestion control algorithm.
  • the congestion control algorithm with the adjustment factor is used to improve the traditional TCP for the packet loss information of the ACK feedback.
  • the representative algorithms are Reno, Highspeed, Bic, Cubic and SCTP. 2)
  • the core of various algorithms with packet loss as the adjustment factor is that after the packet loss is perceived, the network is considered to be congested, and then various window adjustment mechanisms are adopted, the difference being mainly in the amplitude of the adjustment.
  • reno is the process of the TCP congestion control algorithm.
  • the slow start mechanism is used at the beginning of the transmission.
  • the TCP sender first sends a datagram, then waits for the response from the other party and gets a response. After that, the size of the send window is doubled, and then two datagrams are sent continuously, and after the other party responds, the send window is doubled.
  • the congestion window cwnd exceeds the slow start threshold ssthresh
  • the slow start process is stopped and the congestion avoidance phase is entered.
  • the algorithm for performing the congestion avoidance phase in the congestion avoidance phase is specifically: when all the messages in the transmission window are acknowledged, cwnd adds a segment.
  • Congestion detection includes two cases: one is that the TCP sender timer expires, that is, the packet sent by the sender does not receive the acknowledgement from the receiver at the specified time, then ssthresh is adjusted to half of the current congestion window, and the congestion window is added. Adjusted to 1, And restart slowly. The other case is to receive 3 duplicate ACKs, then adjust ssthresh to half of the current congestion window and adjust the congestion window to the adjusted ssthresh.
  • a packet loss occurs on the network, it does not necessarily mean that the network is congested.
  • various non-congestion factors such as link state, error, and the like, and in such a network environment, a congestion algorithm using packet loss as an adjustment factor is used as long as the loss occurs.
  • the packet is considered to be congested on the network, which will reduce the transmission rate; if the timer expires, the slow start threshold will be lowered and restarted from the slow start, so that the effective bandwidth cannot be fully utilized. The road is fatal.
  • the congestion algorithm with delay as the adjustment factor, due to the variability of the router cache and the dependence of the RTT delay sampling rate, the increasing delay and packet loss in the network do not directly correspond, resulting in delay as the adjustment factor.
  • the congestion algorithm cannot control the window accurately.
  • UDP For the connectionless UDP protocol, no transmission reliability is considered, and there is no end-to-end congestion control mechanism. Even if the network sends a congestion indication, UDP does not reduce the amount of data sent to the network. However, since the transmission efficiency of UDP is much higher than that of the TCP protocol, congestion control is introduced based on UDP to provide an efficient and reliable transmission scheme.
  • UDT UDP-based The Data Transfer Protocol (UDP-based data transfer protocol) is a protocol that introduces congestion control mechanisms based on UDP.
  • Congestion control mechanism in UDT adopts progressively increasing AIMD (additive Increase Multiplicative-decrease, and increase the product type): The rate control is used to adjust the transmission interval; supplemented by the window control, the window size is dynamically adjusted to limit the number of unresponsive packets.
  • AIMD additive Increase Multiplicative-decrease, and increase the product type
  • UDT packet loss is still used as an adjustment factor for congestion control. Therefore, in a high bandwidth delay product network, there is also a problem that the effective bandwidth cannot be fully utilized.
  • the existing congestion control mechanism for data transmission cannot fully utilize the available bandwidth in a high bandwidth delay product network.
  • Embodiments of the present invention provide a congestion control method and apparatus for data transmission, which can fully utilize available bandwidth.
  • An embodiment of the present invention provides a congestion control method for data transmission, including:
  • Congestion control is performed by using the change of the packet loss rate and the packet loss rate as an adjustment factor.
  • An embodiment of the present invention provides a congestion control apparatus for data transmission, including:
  • Data transmission unit for data transmission
  • a statistical unit configured to count changes in packet loss rate and packet loss rate during data transmission
  • the congestion control unit is configured to perform congestion control by using the change of the packet loss rate and the packet loss rate as an adjustment factor.
  • the change of the packet loss rate and the packet loss rate is used as the congestion control adjustment factor, so that the data transmission rate quickly converges to the optimal value matching the available bandwidth of the network. Nearby to take advantage of effective bandwidth.
  • 1 is a schematic diagram of an execution process of a prior art TCP congestion control algorithm
  • FIG. 2 is a flowchart of a congestion control method for data transmission according to an embodiment of the present invention
  • FIG. 3 is a flowchart of an application scenario operation of a congestion control method for data transmission according to an embodiment of the present invention
  • FIG. 4 is a flowchart of another application scenario operation of a congestion control method for data transmission according to an embodiment of the present invention.
  • FIG. 5 is a schematic structural diagram of a congestion control apparatus for data transmission according to an embodiment of the present invention.
  • An embodiment of the present invention provides a congestion control method for data transmission. As shown in FIG. 2, the method includes the following steps:
  • Step 20 Calculate the change of the packet loss rate and the packet loss rate during the data transmission process
  • the data transmission in the embodiment of the present invention includes data transmission using UDP and data transmission using TCP.
  • Step 21 Perform congestion control by using the change of the packet loss rate and the packet loss rate as an adjustment factor.
  • the congestion control using the change of the packet loss rate and the packet loss rate as an adjustment factor includes:
  • the upper threshold and the lower threshold described in the embodiment of the present invention may be obtained according to an estimation of the network link status. Specifically include:
  • the long factor w1; the step factor here and the step factor mentioned below is an influence factor acting on the rate adjustment amplitude, which is based on environmental conditions and experience.
  • the packet loss rate is between the upper threshold and the lower threshold, it is determined whether the change of the packet loss rate is rising or decreasing; if the packet loss rate is increased, the data transmission rate is lowered, and the adjusted data transmission rate is the data transmission rate before the adjustment.
  • the product of the second adjustment factor, the second adjustment factor 1.0 - the packet loss rate + the second step factor w2; if the packet loss rate is decreased, the data transmission rate is adjusted, and the adjusted data transmission rate is the data transmission before the adjustment.
  • the product of the rate and the reciprocal of the third adjustment factor, the third adjustment factor 1.0 - the packet loss rate - the third step factor w3; it can be understood that if the packet loss rate is measured for the first time, the packet loss rate is determined.
  • the rate adjustment operation is not performed first, and the packet loss rate is continuously counted, so as to determine the change of the packet loss rate and then perform the rate adjustment operation.
  • the embodiment of the present invention adjusts the data transmission rate according to the change of the packet loss rate and the packet loss rate.
  • the direction of the packet loss rate changes.
  • the direction of data transmission rate adjustment the increase of the packet loss rate indicates that the data transmission rate is too large compared to the available bandwidth matching value, and the packet loss rate decreases, indicating that the data transmission rate is less than the available bandwidth matching value, when the rate is near the value matching the available bandwidth.
  • the packet loss rate will tend to be stable.
  • the data transmission rate is adjusted differently, so that the adjusted data transmission rate can gradually converge to a value that matches the available bandwidth, thereby realizing the full utilization of the available bandwidth.
  • the packet loss rate is between the upper threshold and the lower threshold, enter the congestion avoidance phase to determine whether the packet loss rate changes or decreases. If the packet loss rate increases, modify the slow start threshold and re-enter congestion avoidance.
  • the slow start threshold is the product of the current congestion window size and the second adjustment value, and reduces the congestion window to a slow start threshold (a reduced slow start threshold), and the second adjustment value is determined by the packet loss rate and the sixth
  • the congestion avoidance process is continued, and the packet loss rate is directly changed.
  • Judge. It can be understood that if the packet loss rate is determined to be between the upper threshold and the lower threshold, the slow start threshold and the congestion window size adjustment operation are not performed first, but the packet loss is continued. Rate, thereby determining the change of the packet loss rate and then performing the slow start threshold and the congestion window size adjustment operation.
  • the slow start is continued in the slow start phase. If the slow start threshold and the congestion window are not changed during the congestion avoidance phase, the congestion avoidance is continued.
  • the method in the embodiment of the present invention can be applied to a high bandwidth delay product network, but is not limited to a high bandwidth delay product network.
  • the slow start threshold and the congestion window are adjusted according to the change of the packet loss rate and the packet loss rate, and the slow start threshold and the congestion window are adjusted when different packet loss rates and packet loss rates are different. Different from the adjustment range, the adjusted data transmission rate converges to the vicinity of the optimal value matching the available bandwidth, so as to make full use of the available bandwidth.
  • Scenario 1 Data transmission through UDP, TCP transmission signaling; as shown in FIG. 3, the congestion control method in the data transmission and data transmission process specifically includes the following steps:
  • Step 30 The transmitting end transmits the first block of data through UDP.
  • the data is transmitted and fed back in units of blocks, and each piece of data includes multiple data packets, and the fixed size of the data packet is the maximum MTU of the network (Maximum Transmission) Unit, maximum transfer unit), this block-based data transfer method avoids complex sliding window control operations based on each packet.
  • Step 31 The transmitting end completes signaling through TCP transmission, and notifies the receiving end that the first block of data has been sent.
  • Step 32 The receiving end returns ACK signaling, which includes a view of the correctly received data packet.
  • step 33 is performed;
  • Step 33 The sender retransmits the lost data packet through UDP.
  • Step 34 The transmitting end completes the signaling by using the TCP transmission, and notifies the receiving end that the lost data packet has been sent.
  • Step 35 The receiving end returns ACK signaling, which includes a view of the data correctly received after the last retransmission;
  • step 36 If it is determined according to the display in the view that there is still a lost data packet, proceed to step 36;
  • Step 36 The transmitting end retransmits the still lost data packet until the view shows that the first block of data is all correctly received by the receiving end;
  • Step 37 Statistics the packet loss rate, and adjust the data transmission rate according to the packet loss rate.
  • the time when the piece of data is transmitted and all received correctly is used as the time unit of the statistical packet loss rate.
  • the operation of the statistical packet loss rate starts from the start of sending the piece of data, and the specific statistical methods include but are not limited to: In a statistical time unit of packet loss rate, the proportion of lost data packets in each data packet is counted, and the average value of multiple calculation results is used as the packet loss rate in the statistical time; or, in a packet loss During the statistical time of the rate, the proportion of the lost data packets in the first transmission packet is taken as the packet loss rate during the statistical time.
  • the method for adjusting the data transmission rate according to the packet loss rate includes: comparing the packet loss rate with the set upper threshold value and the lower threshold value, in this embodiment, the upper threshold is set to 1%, and the lower threshold is 0.01%;
  • the packet loss rate is greater than the upper threshold by 1%, the data transmission rate is lowered, and the adjusted data transmission rate is a product of the pre-adjustment data transmission rate and the first adjustment factor, and the first adjustment factor is 1.0-packet rate+ One step length factor w1;
  • the packet loss rate is less than the lower threshold of 0.01%
  • the data loss rate is not adjusted temporarily because the packet loss rate is not detected for the first time.
  • Step 38 Complete the transmission of the second block of data according to the method of steps 30-36;
  • Step 39 The packet loss rate is measured from the second block of data, and the data transmission rate is adjusted according to the change of the packet loss rate and the packet loss rate.
  • the specific adjustment method is the same as that in step 37.
  • Step 310 Continue the next data block transmission.
  • the data transmission rate is adjusted according to the change of the packet loss rate and the packet loss rate.
  • the adjustment range of the data transmission rate is different, so that the adjusted data transmission rate can converge to
  • the available bandwidth is matched to take advantage of the available bandwidth.
  • the present embodiment transmits data in units of blocks to avoid complicated sliding window control operations based on each data packet.
  • Scenario 2 Transmitting data through TCP; as shown in FIG. 4, the congestion control method in the data transmission and data transmission process specifically includes the following steps:
  • Step 40 The transmitting end transmits data through TCP, and undergoes a slow start phase
  • Step 41 After the congestion window reaches the slow start threshold, enter the congestion avoidance phase.
  • Step 42 In the congestion avoidance phase, when all the packets in the congestion window are acknowledged, the congestion window adds a segment
  • Step 43 Statistics of packet loss rate and packet loss rate change
  • the packet loss rate is counted in units of a fixed time, that is, the number of times of retransmitting the data packet in the fixed time is counted as a numerator, and the number of times of retransmission of the data packet is received and received.
  • the number of ACKs obtained is used as the denominator, and the score obtained is the packet loss rate during the fixed time period;
  • Step 44 Adjust the slow start threshold and the congestion window according to the packet loss rate and the packet loss rate change.
  • the modified slow start threshold is the current congestion window size and the first adjustment value.
  • the product is reduced, and the congestion window is reduced to one segment; the size of the first adjustment value is determined by the packet loss rate and the fifth step factor.
  • the packet loss rate is between the upper threshold and the lower threshold, enter the congestion avoidance phase to determine whether the packet loss rate changes or decreases. If the packet loss rate increases, modify the slow start threshold and re-enter congestion avoidance.
  • the slow start threshold is the product of the current congestion window size and the second adjustment value, and reduces the congestion window to a slow start threshold (a reduced slow start threshold), and the second adjustment value is determined by the packet loss rate and the sixth The step size factor is determined. If the packet loss rate is reduced, the congestion avoidance threshold and the congestion window size are not changed to continue to perform congestion avoidance. It can be understood that if the packet loss rate is measured for the first time, the packet loss rate is determined to be at the upper threshold and the lower limit. Between the thresholds, the slow start threshold and the congestion window size adjustment operation are not performed first, but the packet loss rate is continuously counted, thereby determining the change of the packet loss rate and then performing the slow start threshold and the congestion window size adjustment operation.
  • the slow start is continued in the slow start phase. If the slow start threshold and the congestion window are not changed during the congestion avoidance phase, the congestion avoidance is continued.
  • Step 45 Continue data transmission with the adjusted congestion window and the slow start threshold.
  • the invention provides a change of the packet loss rate and the packet loss rate as a congestion control adjustment factor, so that the data transmission rate quickly converges to the vicinity of the optimal value matching the available bandwidth of the network, thereby fully utilizing the effective bandwidth, and thus can be applied to high bandwidth. Delayed product and other network environments.
  • a further embodiment of the present invention provides a congestion control apparatus for data transmission.
  • the congestion control apparatus for data transmission according to this embodiment is a device corresponding to the method described in the foregoing embodiment, and the method of the foregoing embodiment can be implemented by the apparatus. , as shown in Figure 5, including:
  • the data transmission unit 50 is for data transmission; the data transmission unit 50 can perform data transmission in units of blocks.
  • the statistics unit 51 is configured to count the change of the packet loss rate and the packet loss rate during the data transmission process
  • the congestion control unit 52 is configured to perform congestion control by using the change of the packet loss rate and the packet loss rate as an adjustment factor.
  • the congestion control unit 52 can further include:
  • the first adjustment subunit 521 (not shown) is configured to compare the packet loss rate with the set upper threshold and the lower threshold, and adjust the data transmission rate according to the comparison result.
  • the specific adjustment method includes: comparing the packet loss rate with the set upper threshold and the lower threshold, and if the packet loss rate is greater than the upper threshold, the data transmission rate is lowered, and the adjusted data transmission rate is the pre-adjustment data transmission rate and the first adjustment.
  • congestion control unit 52 further includes:
  • the second adjustment sub-unit 522 (not shown) is configured to compare the packet loss rate with the set upper and lower thresholds, and adjust the slow start threshold and the congestion window according to the comparison result.
  • the specific adjustment method includes: comparing the packet loss rate with the set upper threshold and the lower threshold, and if the packet loss rate is greater than the upper threshold, modifying the slow start threshold and entering the slow start phase, the modified slow start threshold is the current congestion window size and The product of the first adjustment value, and reduces the congestion window to one segment; that is, when the packet loss rate is greater than the upper threshold, whether the slow start phase or the congestion avoidance phase is performed, the modified slow start is performed.
  • the packet loss rate is determined to be between the upper threshold and the lower threshold, the slow start threshold and the congestion window size adjustment operation are not performed first, but the packet loss is continued. Rate, thereby determining the change of the packet loss rate and then performing the slow start threshold and the congestion window size adjustment operation. If the packet loss rate is lower than the lower threshold, the slow start is continued in the slow start phase. If the slow start threshold and the congestion window are not changed during the congestion avoidance phase, the congestion avoidance is continued.
  • the device in this embodiment is disposed on the data sending end, and may be, but is not limited to, applied to a high bandwidth delay product network environment. It will be understood that in order to highlight the inventive aspects of the apparatus of the embodiments of the present invention, an introduction to the existing functions of the apparatus is omitted.
  • the congestion control device for data transmission uses the change of the packet loss rate and the packet loss rate as a congestion control adjustment factor, so that the data transmission rate quickly converges to the vicinity of the optimal value matching the available bandwidth of the network, thereby fully utilizing the effective bandwidth.
  • the embodiment of the present invention uses the change of the packet loss rate and the packet loss rate as a congestion control adjustment factor, so that the data transmission rate quickly converges to the vicinity of the optimal value matched with the available bandwidth of the network, thereby fully utilizing the effective bandwidth.
  • the storage medium may be a magnetic disk, an optical disk, or a read-only storage memory (Read-Only) Memory, ROM) or Random Access Memory (RAM).

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A congestion control method for data transmission is provided. The packet loss rate and the change of the packet loss rate are counted during the data transmission, and the congestion control is performed by using the packet loss rate and the change of the packet loss rate as adjustment factors. In the embodiments of the present invention, a congestion control device for data transmission is also provided. By using the packet loss rate and the change of the packet loss rate as adjustment factors of the congestion control, the embodiments of the present invention enable the data transmission rate to rapidly converge at the vicinity of the best value matching with the network available bandwidth, and thus the effective bandwidth is utilized sufficiently.

Description

一种数据传输的拥塞控制方法及装置  Congestion control method and device for data transmission
技术领域Technical field
本发明涉及网络通信技术领域,尤其涉及一种数据传输的拥塞控制方法及装置。The present invention relates to the field of network communication technologies, and in particular, to a congestion control method and apparatus for data transmission.
发明背景Background of the invention
在IP网络中,TCP(Transport Control Protocol,传输控制协议)或UDP(User Datagram Protocol,用户数据报协议)作为标准的传输协议被广泛应用。In the IP network, TCP (Transport Control Protocol) or UDP (User The Datagram Protocol, a user datagram protocol, is widely used as a standard transport protocol.
其中,TCP是可靠的传输协议,采用拥塞控制机制,保证数据包的可靠传输,同时保证网络资源使用的公平性。TCP拥塞控制算法的焦点集中在窗口控制管理上,从已经公开的拥塞控制算法看,基于拥塞控制算法进行窗口控制管理所利用的调节因子的不同,可以把拥塞控制算法分为:1)以丢包为调节因子的拥塞控制算法,针对ACK反馈的丢包信息来进行对传统TCP的改进,代表算法有Reno、Highspeed、Bic、Cubic及SCTP;2)以时延作为调节因子的拥塞控制算法,以RTT延时作为调节因子,代表算法有:Vegas、FastTCP;3)以丢包+时延作为调节因子的拥塞控制算法,代表算法:Ilinois。以丢包为调节因子的各种算法的核心是,在感知丢包后即认为网络发生了拥塞,进而采用各种不同的窗口调节机制,其区别主要在于调节的幅度上。Among them, TCP is a reliable transmission protocol, using congestion control mechanism to ensure reliable transmission of data packets, while ensuring the fairness of network resource usage. The focus of the TCP congestion control algorithm is on the window control management. From the congestion control algorithm that has been disclosed, the congestion control algorithm can be divided into: 1) by the congestion control algorithm. The congestion control algorithm with the adjustment factor is used to improve the traditional TCP for the packet loss information of the ACK feedback. The representative algorithms are Reno, Highspeed, Bic, Cubic and SCTP. 2) The congestion control algorithm with delay as the adjustment factor. Taking RTT delay as the adjustment factor, the representative algorithms are: Vegas, FastTCP; 3) congestion control algorithm with packet loss + delay as the adjustment factor, representing algorithm: Ilinois. The core of various algorithms with packet loss as the adjustment factor is that after the packet loss is perceived, the network is considered to be congested, and then various window adjustment mechanisms are adopted, the difference being mainly in the amplitude of the adjustment.
以TCP reno为例,TCP拥塞控制算法的过程如图1中所示,在传送开始时,采用了慢启动机制,在慢启动期间,TCP发送方首先发送一个数据报,然后等待对方的回应,得到回应后就把发送窗口的大小加倍,然后连续发送两个数据报,等到对方回应以后,再把发送窗口加倍。直到拥塞窗口cwnd超过慢启动门限ssthresh时,停止执行慢启动过程,转入拥塞避免阶段。在拥塞避免阶段执行拥塞避免阶段的算法,具体为:当发送窗口里的所有报文都收到确认后,cwnd就加一个报文段。此拥塞避免阶段的算法一直保持直到检测出拥塞。检测出拥塞包括两种情况:一种是TCP发送方定时器超时,即发送方发的数据包在规定时刻没有收到接收端的确认,则将ssthresh调整为当前拥塞窗口的一半,并将拥塞窗口调整为1, 并重新慢启动。另一种情况是收到3个重复ACK,则将ssthresh调整为当前拥塞窗口的一半,并将拥塞窗口调整为调整后的ssthresh。TCP For example, reno is the process of the TCP congestion control algorithm. As shown in Figure 1, the slow start mechanism is used at the beginning of the transmission. During the slow start, the TCP sender first sends a datagram, then waits for the response from the other party and gets a response. After that, the size of the send window is doubled, and then two datagrams are sent continuously, and after the other party responds, the send window is doubled. Until the congestion window cwnd exceeds the slow start threshold ssthresh, the slow start process is stopped and the congestion avoidance phase is entered. The algorithm for performing the congestion avoidance phase in the congestion avoidance phase is specifically: when all the messages in the transmission window are acknowledged, cwnd adds a segment. The algorithm for this congestion avoidance phase is maintained until congestion is detected. Congestion detection includes two cases: one is that the TCP sender timer expires, that is, the packet sent by the sender does not receive the acknowledgement from the receiver at the specified time, then ssthresh is adjusted to half of the current congestion window, and the congestion window is added. Adjusted to 1, And restart slowly. The other case is to receive 3 duplicate ACKs, then adjust ssthresh to half of the current congestion window and adjust the congestion window to the adjusted ssthresh.
现有的基于TCP的拥塞控制算法至少具有如下缺点:Existing TCP-based congestion control algorithms have at least the following disadvantages:
在网络发生丢包时,并不一定代表网络发生了拥塞。如在高带宽延时积网络中,存在各种非拥塞因素,如链路状态,误码等引起的丢包,在这样的网络环境中使用以丢包作为调节因子的拥塞算法,只要发生丢包就认为是网络出现了拥塞,就会降低传输速率;若发生定时器超时,则会降低慢启动门限值,并且从慢启动重新开始,这样无法充分利用有效带宽,这种问题对于高速链路来说是致命的。When a packet loss occurs on the network, it does not necessarily mean that the network is congested. For example, in a high-bandwidth delay product network, there are various non-congestion factors, such as link state, error, and the like, and in such a network environment, a congestion algorithm using packet loss as an adjustment factor is used as long as the loss occurs. The packet is considered to be congested on the network, which will reduce the transmission rate; if the timer expires, the slow start threshold will be lowered and restarted from the slow start, so that the effective bandwidth cannot be fully utilized. The road is fatal.
对于以时延作为调节因子的拥塞算法,由于路由器缓存的可变性和RTT延迟采样率的依赖性,网络中不断增加的延时和丢包并没有直接对应关系,造成以时延作为调节因子的拥塞算法无法准确控制窗口。For the congestion algorithm with delay as the adjustment factor, due to the variability of the router cache and the dependence of the RTT delay sampling rate, the increasing delay and packet loss in the network do not directly correspond, resulting in delay as the adjustment factor. The congestion algorithm cannot control the window accurately.
对于无连接的UDP协议,不考虑传输可靠性,也没有端到端的拥塞控制机制,即使网络发出了拥塞指示,UDP也不会减少向网络发送的数据量。但是由于UDP的传输效率远高于TCP协议,因此,基于UDP引入拥塞控制,以提供高效而可靠的传输方案不断出现。其中,UDT(UDP-based Data Transfer Protocol,基于UDP的数据传输协议)就是基于UDP引入拥塞控制机制的一种协议。For the connectionless UDP protocol, no transmission reliability is considered, and there is no end-to-end congestion control mechanism. Even if the network sends a congestion indication, UDP does not reduce the amount of data sent to the network. However, since the transmission efficiency of UDP is much higher than that of the TCP protocol, congestion control is introduced based on UDP to provide an efficient and reliable transmission scheme. Among them, UDT (UDP-based The Data Transfer Protocol (UDP-based data transfer protocol) is a protocol that introduces congestion control mechanisms based on UDP.
UDT引入新的拥塞控制和数据可靠性控制机制。UDT中拥塞控制机制采用渐减式增加的AIMD(additive increase multiplicative-decrease,和式增加积式减少):以速率控制为主,调整发送间隔;以窗口控制为辅,动态调整窗口大小以限制未响应包个数。UDT introduces new congestion control and data reliability control mechanisms. Congestion control mechanism in UDT adopts progressively increasing AIMD (additive Increase Multiplicative-decrease, and increase the product type): The rate control is used to adjust the transmission interval; supplemented by the window control, the window size is dynamically adjusted to limit the number of unresponsive packets.
UDT的缺点主要在于:仍然以丢包作为拥塞控制的调节因子,因此在高带宽延时积网络中同样存在无法充分利用有效带宽的问题。The main disadvantage of UDT is that packet loss is still used as an adjustment factor for congestion control. Therefore, in a high bandwidth delay product network, there is also a problem that the effective bandwidth cannot be fully utilized.
综上所述,现有的数据传输的拥塞控制机制在高带宽延时积网络中均无法充分利用可用带宽。In summary, the existing congestion control mechanism for data transmission cannot fully utilize the available bandwidth in a high bandwidth delay product network.
发明内容Summary of the invention
本发明实施例提供一种数据传输的拥塞控制方法及装置,实现充分利用可用带宽。Embodiments of the present invention provide a congestion control method and apparatus for data transmission, which can fully utilize available bandwidth.
本发明实施例是通过以下技术方案实现的:The embodiments of the present invention are implemented by the following technical solutions:
本发明实施例提供一种数据传输的拥塞控制方法,包括:An embodiment of the present invention provides a congestion control method for data transmission, including:
在数据传输过程中统计丢包率及丢包率的变化;Statistics of packet loss rate and packet loss rate during data transmission;
以所述丢包率及丢包率的变化作为调节因子进行拥塞控制。Congestion control is performed by using the change of the packet loss rate and the packet loss rate as an adjustment factor.
本发明实施例提供一种数据传输的拥塞控制装置,包括:An embodiment of the present invention provides a congestion control apparatus for data transmission, including:
数据传输单元,用于数据传输;Data transmission unit for data transmission;
统计单元,用于在数据传输过程中统计丢包率及丢包率的变化;a statistical unit, configured to count changes in packet loss rate and packet loss rate during data transmission;
拥塞控制单元,用于以所述丢包率及丢包率的变化作为调节因子进行拥塞控制。The congestion control unit is configured to perform congestion control by using the change of the packet loss rate and the packet loss rate as an adjustment factor.
由上述本发明实施例提供的技术方案可以看出,本发明实施例以丢包率及丢包率的变化作为拥塞控制调节因子,使数据传输速率快速收敛到与网络可用带宽匹配的最佳值附近,从而充分利用有效带宽。It can be seen from the technical solution provided by the foregoing embodiments of the present invention that the change of the packet loss rate and the packet loss rate is used as the congestion control adjustment factor, so that the data transmission rate quickly converges to the optimal value matching the available bandwidth of the network. Nearby to take advantage of effective bandwidth.
附图简要说明BRIEF DESCRIPTION OF THE DRAWINGS
图1为现有技术TCP拥塞控制算法的执行过程示意图;1 is a schematic diagram of an execution process of a prior art TCP congestion control algorithm;
图2为本发明实施例数据传输的拥塞控制方法流程图;2 is a flowchart of a congestion control method for data transmission according to an embodiment of the present invention;
图3为本发明实施例数据传输的拥塞控制方法一种应用场景操作流程图;3 is a flowchart of an application scenario operation of a congestion control method for data transmission according to an embodiment of the present invention;
图4为本发明实施例数据传输的拥塞控制方法另一种应用场景操作流程图;4 is a flowchart of another application scenario operation of a congestion control method for data transmission according to an embodiment of the present invention;
图5为本发明实施例数据传输的拥塞控制装置结构示意图。FIG. 5 is a schematic structural diagram of a congestion control apparatus for data transmission according to an embodiment of the present invention.
实施本发明的方式Mode for carrying out the invention
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is obvious that the described embodiments are only a part of the embodiments of the present invention, but not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
本发明一个实施例提供一种数据传输的拥塞控制方法,以图2中所示为例,包括如下步骤:An embodiment of the present invention provides a congestion control method for data transmission. As shown in FIG. 2, the method includes the following steps:
步骤20:在数据传输过程中统计丢包率及丢包率的变化;Step 20: Calculate the change of the packet loss rate and the packet loss rate during the data transmission process;
本发明实施例所述数据传输包括采用UDP进行数据传输和采用TCP进行数据传输。The data transmission in the embodiment of the present invention includes data transmission using UDP and data transmission using TCP.
步骤21:以所述丢包率及丢包率的变化作为调节因子进行拥塞控制。Step 21: Perform congestion control by using the change of the packet loss rate and the packet loss rate as an adjustment factor.
所述以所述丢包率及丢包率的变化作为调节因子进行拥塞控制包括:The congestion control using the change of the packet loss rate and the packet loss rate as an adjustment factor includes:
1)将丢包率与设定的上限阈值及下限阈值比较,根据比较结果调整数据传输速率;本发明实施例中所述的上限阈值和下限阈值可以根据对网络链路状况的估计得出。具体包括:1) Comparing the packet loss rate with the set upper threshold and the lower threshold, and adjusting the data transmission rate according to the comparison result; the upper threshold and the lower threshold described in the embodiment of the present invention may be obtained according to an estimation of the network link status. Specifically include:
若丢包率大于上限阈值,则下调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第一调节因子的乘积,所述第一调节因子=1.0-丢包率+第一步长因子w1;此处的步长因子及下文中提及的步长因子是一个对速率调整幅度起作用的影响因子,根据环境条件及经验取值。If the packet loss rate is greater than the upper threshold, the data transmission rate is decreased, and the adjusted data transmission rate is a product of the pre-adjustment data transmission rate and the first adjustment factor, and the first adjustment factor=1.0-packet rate+first step The long factor w1; the step factor here and the step factor mentioned below is an influence factor acting on the rate adjustment amplitude, which is based on environmental conditions and experience.
若丢包率处于上限阈值与下限阈值之间,则判断丢包率的变化是上升还是降低;若丢包率上升,则下调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第二调节因子的乘积,所述第二调节因子=1.0-丢包率+第二步长因子w2;若丢包率降低,则上调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第三调节因子的倒数的乘积,所述第三调节因子=1.0-丢包率-第三步长因子w3;可以理解的是,若第一次统计丢包率后,确定丢包率处于上限阈值与下限阈值之间,则先不执行速率调整操作,而是继续统计丢包率,从而判断出丢包率的变化再执行速率调整操作。If the packet loss rate is between the upper threshold and the lower threshold, it is determined whether the change of the packet loss rate is rising or decreasing; if the packet loss rate is increased, the data transmission rate is lowered, and the adjusted data transmission rate is the data transmission rate before the adjustment. The product of the second adjustment factor, the second adjustment factor = 1.0 - the packet loss rate + the second step factor w2; if the packet loss rate is decreased, the data transmission rate is adjusted, and the adjusted data transmission rate is the data transmission before the adjustment. The product of the rate and the reciprocal of the third adjustment factor, the third adjustment factor = 1.0 - the packet loss rate - the third step factor w3; it can be understood that if the packet loss rate is measured for the first time, the packet loss rate is determined. When the upper threshold is lower than the lower threshold, the rate adjustment operation is not performed first, and the packet loss rate is continuously counted, so as to determine the change of the packet loss rate and then perform the rate adjustment operation.
若丢包率小于下限阈值,则上调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第四调节因子的倒数的乘积,所述第四调节因子=1.0-丢包率-第四步长因子w4。If the packet loss rate is lower than the lower threshold, the data transmission rate is adjusted, and the adjusted data transmission rate is the product of the pre-adjustment data transmission rate and the reciprocal of the fourth adjustment factor, and the fourth adjustment factor=1.0-packet rate- Four step factor w4.
由上述调整过程可以看出,本发明实施例根据丢包率及丢包率的变化来调整数据传输速率,当丢包率处于在上限阈值与下限阈值之间时,丢包率变化的方向确定了数据传输速率调整的方向,丢包率上升说明数据传输速率相比可用带宽匹配值过大,而丢包率下降说明数据传输速率小于可用带宽匹配值,当速率在与可用带宽匹配的值附近,丢包率将趋于稳定。不同的丢包率及丢包率变化不同时数据传输速率的调整幅度不同,使得调整后的数据传输速率可以逐渐收敛到与可用带宽匹配的值附近,从而实现充分利用可用带宽。It can be seen from the foregoing adjustment process that the embodiment of the present invention adjusts the data transmission rate according to the change of the packet loss rate and the packet loss rate. When the packet loss rate is between the upper threshold and the lower threshold, the direction of the packet loss rate changes. The direction of data transmission rate adjustment, the increase of the packet loss rate indicates that the data transmission rate is too large compared to the available bandwidth matching value, and the packet loss rate decreases, indicating that the data transmission rate is less than the available bandwidth matching value, when the rate is near the value matching the available bandwidth. The packet loss rate will tend to be stable. When the packet loss rate and the packet loss rate are different, the data transmission rate is adjusted differently, so that the adjusted data transmission rate can gradually converge to a value that matches the available bandwidth, thereby realizing the full utilization of the available bandwidth.
2)将丢包率与设定的上限阈值及下限阈值比较,根据比较结果调整慢启动门限值及拥塞窗口大小,具体包括:2) Comparing the packet loss rate with the set upper threshold and the lower threshold, and adjusting the slow start threshold and the congestion window according to the comparison result, specifically including:
若丢包率大于上限阈值,修改慢启动门限,进入慢启动阶段,修改后的慢启动门限为当前拥塞窗口大小与第一调节值的乘积,并将拥塞窗口减为1个报文段;也就是在丢包率大于上限阈值情况下,不论此时是处于慢启动阶段还是处于拥塞避免阶段,都执行修改慢启动门限的操作,之后重新进入慢启动阶段;其中,所述第一调节值的大小由丢包率大小确定,例如第一调节值=1.0-丢包率+第五步长因子w5。If the packet loss rate is greater than the upper threshold, modify the slow start threshold and enter the slow start phase. The modified slow start threshold is the product of the current congestion window size and the first adjustment value, and the congestion window is reduced to one segment; That is, when the packet loss rate is greater than the upper threshold, whether the slow start phase or the congestion avoidance phase is performed, the operation of modifying the slow start threshold is performed, and then the slow start phase is re-entered; wherein the first adjustment value is The size is determined by the packet loss rate, for example, the first adjustment value = 1.0 - packet loss rate + fifth step factor w5.
若丢包率处于上限阈值与下限阈值之间,则进入拥塞避免阶段,判断丢包率的变化是上升还是降低;若丢包率上升,则修改慢启动门限,重新进入拥塞避免,降低后的慢启动门限为当前拥塞窗口大小与第二调节值的乘积,并将拥塞窗口减小为慢启动门限(降低后的慢启动门限),所述第二调节值大小由丢包率大小与第六步长因子确定,例如第二调节值=1.0-丢包率+第六步长因子w6;若丢包率降低,则不改变慢启动门限和拥塞窗口大小继续执行拥塞避免;也就是,若丢包率处于上限阈值与下限阈值之间,则若此时处于慢启动阶段,则立刻进入拥塞避免阶段,若此时处于拥塞避免阶段,则继续此拥塞避免过程,直接执行丢包率的变化的判断。可以理解的是,若第一次统计丢包率后,确定丢包率处于上限阈值与下限阈值之间,则先不执行慢启动门限值及拥塞窗口大小调整操作,而是继续统计丢包率,从而判断出丢包率的变化再执行慢启动门限值及拥塞窗口大小调整操作。If the packet loss rate is between the upper threshold and the lower threshold, enter the congestion avoidance phase to determine whether the packet loss rate changes or decreases. If the packet loss rate increases, modify the slow start threshold and re-enter congestion avoidance. The slow start threshold is the product of the current congestion window size and the second adjustment value, and reduces the congestion window to a slow start threshold (a reduced slow start threshold), and the second adjustment value is determined by the packet loss rate and the sixth The step factor determines, for example, the second adjustment value = 1.0 - the packet loss rate + the sixth step factor w6; if the packet loss rate decreases, the congestion avoidance is continued without changing the slow start threshold and the congestion window size; that is, if the packet loss is lost; If the packet rate is between the upper threshold and the lower threshold, if it is in the slow start phase, it immediately enters the congestion avoidance phase. If it is in the congestion avoidance phase, the congestion avoidance process is continued, and the packet loss rate is directly changed. Judge. It can be understood that if the packet loss rate is determined to be between the upper threshold and the lower threshold, the slow start threshold and the congestion window size adjustment operation are not performed first, but the packet loss is continued. Rate, thereby determining the change of the packet loss rate and then performing the slow start threshold and the congestion window size adjustment operation.
若丢包率小于下限阈值,若在慢启动阶段则继续执行慢启动,若在拥塞避免阶段则不改变慢启动门限和拥塞窗口大小,继续执行拥塞避免。If the packet loss rate is lower than the lower threshold, the slow start is continued in the slow start phase. If the slow start threshold and the congestion window are not changed during the congestion avoidance phase, the congestion avoidance is continued.
本发明实施例所述方法可以应用于高带宽延时积网络,但不限于高带宽延时积网络。The method in the embodiment of the present invention can be applied to a high bandwidth delay product network, but is not limited to a high bandwidth delay product network.
本发明实施例根据丢包率及丢包率的变化来调整慢启动门限值及拥塞窗口大小,不同的丢包率及丢包率变化不同时慢启动门限值及拥塞窗口大小的调整方式和调整幅度不同,使得调整后的数据传输速率收敛到与可用带宽匹配的最佳值附近,从而充分利用可用带宽。In the embodiment of the present invention, the slow start threshold and the congestion window are adjusted according to the change of the packet loss rate and the packet loss rate, and the slow start threshold and the congestion window are adjusted when different packet loss rates and packet loss rates are different. Different from the adjustment range, the adjusted data transmission rate converges to the vicinity of the optimal value matching the available bandwidth, so as to make full use of the available bandwidth.
为进一步理解上述实施例,下面以上述方法应用于具体场景中为例,对上述实施例的方法进行详细介绍。In order to further understand the above embodiments, the method of the foregoing embodiment is described in detail below by taking the above method as a specific example.
场景一:通过UDP传输数据,TCP传输信令;如图3中所示,数据传输及数据传输过程中的拥塞控制方法具体包括如下步骤:Scenario 1: Data transmission through UDP, TCP transmission signaling; as shown in FIG. 3, the congestion control method in the data transmission and data transmission process specifically includes the following steps:
步骤30:发送端通过UDP传输第一块数据;Step 30: The transmitting end transmits the first block of data through UDP.
本实施例中,数据以块为单位传输和反馈,每一块数据中包含多个数据包,数据包固定大小为网络的最大MTU(Maximum Transmission Unit,最大传送单元),此种以块为单元的数据传输方法避免了基于每个数据包的复杂的滑动窗口控制操作。In this embodiment, the data is transmitted and fed back in units of blocks, and each piece of data includes multiple data packets, and the fixed size of the data packet is the maximum MTU of the network (Maximum Transmission) Unit, maximum transfer unit), this block-based data transfer method avoids complex sliding window control operations based on each packet.
步骤31:发送端通过TCP传输完成信令,通知接收端已经发送完第一块数据;Step 31: The transmitting end completes signaling through TCP transmission, and notifies the receiving end that the first block of data has been sent.
步骤32:接收端返回ACK信令,其中包含正确接收到的数据包的视图;Step 32: The receiving end returns ACK signaling, which includes a view of the correctly received data packet.
若根据视图确定存在丢失的数据包,则执行步骤33;If it is determined according to the view that there is a lost data packet, step 33 is performed;
步骤33:发送端通过UDP重传丢失的数据包;Step 33: The sender retransmits the lost data packet through UDP.
步骤34:发送端通过TCP传输完成信令,通知接收端已经发送完丢失的数据包;Step 34: The transmitting end completes the signaling by using the TCP transmission, and notifies the receiving end that the lost data packet has been sent.
步骤35:接收端返回ACK信令,其中包含上次重传后正确收到的数据的视图;Step 35: The receiving end returns ACK signaling, which includes a view of the data correctly received after the last retransmission;
若根据视图中的显示确定仍然存在丢失的数据包,则执行步骤36;If it is determined according to the display in the view that there is still a lost data packet, proceed to step 36;
步骤36:发送端重传仍然丢失的数据包,直到视图显示所述第一块数据全部正确被接收端接收;Step 36: The transmitting end retransmits the still lost data packet until the view shows that the first block of data is all correctly received by the receiving end;
步骤37:统计丢包率,根据丢包率调整数据传输速率;Step 37: Statistics the packet loss rate, and adjust the data transmission rate according to the packet loss rate.
本发明实施例以传输完一块数据并全部被正确接收的时间作为统计丢包率的时间单位,此统计丢包率的操作从开始发送所述一块数据开始执行,具体统计方法包括但不限于:在一个丢包率的统计时间单位内,统计每次发送数据包中丢失数据包所占的比例,统计多次计算结果的平均值作为该统计时间内的丢包率;或者,在一个丢包率的统计时间内,以第一次发送数据包中丢失的数据包所占的比例作为该统计时间内的丢包率。In the embodiment of the present invention, the time when the piece of data is transmitted and all received correctly is used as the time unit of the statistical packet loss rate. The operation of the statistical packet loss rate starts from the start of sending the piece of data, and the specific statistical methods include but are not limited to: In a statistical time unit of packet loss rate, the proportion of lost data packets in each data packet is counted, and the average value of multiple calculation results is used as the packet loss rate in the statistical time; or, in a packet loss During the statistical time of the rate, the proportion of the lost data packets in the first transmission packet is taken as the packet loss rate during the statistical time.
其中,所述根据丢包率调整数据传输速率的方法包括:将丢包率与设定的上限阈值及下限阈值比较,本实施例中设定上限阈值为1%,下限阈值为0.01%;The method for adjusting the data transmission rate according to the packet loss rate includes: comparing the packet loss rate with the set upper threshold value and the lower threshold value, in this embodiment, the upper threshold is set to 1%, and the lower threshold is 0.01%;
若丢包率大于上限阈值1%,则下调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第一调节因子的乘积,所述第一调节因子=1.0-丢包率+第一步长因子w1;If the packet loss rate is greater than the upper threshold by 1%, the data transmission rate is lowered, and the adjusted data transmission rate is a product of the pre-adjustment data transmission rate and the first adjustment factor, and the first adjustment factor is 1.0-packet rate+ One step length factor w1;
若丢包率小于下限阈值0.01%,则上调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第四调节因子的倒数的乘积,所述第四调节因子=1.0-丢包率-第四步长因子w4。If the packet loss rate is less than the lower threshold of 0.01%, the data transmission rate is adjusted, and the adjusted data transmission rate is the product of the pre-adjustment data transmission rate and the reciprocal of the fourth adjustment factor, and the fourth adjustment factor=1.0-loss rate - The fourth step factor w4.
若丢包率处于上限阈值与下限阈值之间,则由于此时为第一次统计丢包率,无法获知丢包率的变化,则暂时不调整数据传输速率。If the packet loss rate is between the upper threshold and the lower threshold, the data loss rate is not adjusted temporarily because the packet loss rate is not detected for the first time.
步骤38:按照步骤30-36的方法完成第二块数据的传输;Step 38: Complete the transmission of the second block of data according to the method of steps 30-36;
步骤39:从发送第二块数据开始统计丢包率,根据丢包率及丢包率的变化调整数据传输速率;Step 39: The packet loss rate is measured from the second block of data, and the data transmission rate is adjusted according to the change of the packet loss rate and the packet loss rate.
具体调整方法同步骤37中所述,当判断丢包率处于上限阈值与下限阈值之间时,则判断本次统计的丢包率与上次统计(步骤37中统计的)的丢包率的变化是上升还是降低;若丢包率上升,则下调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第二调节因子的乘积,所述第二调节因子=1.0-丢包率+第二步长因子w2;若丢包率降低,则上调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第三调节因子的倒数的乘积,所述第三调节因子=1.0-丢包率-第三步长因子w3;The specific adjustment method is the same as that in step 37. When it is determined that the packet loss rate is between the upper threshold and the lower threshold, the packet loss rate of the current statistics and the packet loss rate of the last statistics (statistics in step 37) are determined. Whether the change is rising or decreasing; if the packet loss rate is increased, the data transmission rate is lowered, and the adjusted data transmission rate is the product of the pre-adjustment data transmission rate and the second adjustment factor, and the second adjustment factor=1.0-packet loss rate + second step factor w2; if the packet loss rate is decreased, the data transmission rate is adjusted, and the adjusted data transmission rate is the product of the pre-adjustment data transmission rate and the reciprocal of the third adjustment factor, the third adjustment factor=1.0 - packet loss rate - third step factor w3;
步骤310:继续下一个数据块传输。Step 310: Continue the next data block transmission.
后续发送的数据块以调整后的速率发送。Subsequently transmitted data blocks are sent at an adjusted rate.
本实施例根据丢包率及丢包率的变化来调整数据传输速率,不同的丢包率及丢包率变化不同时数据传输速率的调整幅度不同,使得调整后的数据传输速率可以收敛到与可用带宽匹配,从而充分利用可用带宽。另外,本实施例以块为单元发送数据避免了基于每个数据包的复杂的滑动窗口控制操作。In this embodiment, the data transmission rate is adjusted according to the change of the packet loss rate and the packet loss rate. When the packet loss rate and the packet loss rate change are different, the adjustment range of the data transmission rate is different, so that the adjusted data transmission rate can converge to The available bandwidth is matched to take advantage of the available bandwidth. In addition, the present embodiment transmits data in units of blocks to avoid complicated sliding window control operations based on each data packet.
场景二:通过TCP传输数据;如图4中所示,数据传输及数据传输过程中的拥塞控制方法具体包括如下步骤:Scenario 2: Transmitting data through TCP; as shown in FIG. 4, the congestion control method in the data transmission and data transmission process specifically includes the following steps:
步骤40:发送端通过TCP传输数据,经历慢启动阶段;Step 40: The transmitting end transmits data through TCP, and undergoes a slow start phase;
步骤41:拥塞窗口达到慢启动门限后,进入拥塞避免阶段;Step 41: After the congestion window reaches the slow start threshold, enter the congestion avoidance phase.
步骤42:在拥塞避免阶段,当拥塞窗口里的所有报文收到确认后,拥塞窗口加一个报文段;Step 42: In the congestion avoidance phase, when all the packets in the congestion window are acknowledged, the congestion window adds a segment;
步骤43:统计丢包率及丢包率变化;Step 43: Statistics of packet loss rate and packet loss rate change;
本实施例中可以从传输数据开始,以一固定时间为单位,统计丢包率,即统计在所述固定时间内重传数据包的次数,作为分子,以所述重传数据包次数与接收到的ACK的个数作为分母,得到的分数值为这段固定时间内的丢包率; In this embodiment, starting from the transmission of data, the packet loss rate is counted in units of a fixed time, that is, the number of times of retransmitting the data packet in the fixed time is counted as a numerator, and the number of times of retransmission of the data packet is received and received. The number of ACKs obtained is used as the denominator, and the score obtained is the packet loss rate during the fixed time period;
步骤44:根据丢包率及丢包率变化调整慢启动门限值和拥塞窗口大小;Step 44: Adjust the slow start threshold and the congestion window according to the packet loss rate and the packet loss rate change.
具体调整策略如下:The specific adjustment strategy is as follows:
若丢包率大于上限阈值,不论此时是处于慢启动阶段还是处于拥塞避免阶段,修改慢启动门限,重新进入慢启动阶段,修改后的慢启动门限为当前拥塞窗口大小与第一调节值的乘积,并将拥塞窗口减为1个报文段;所述第一调节值的大小由丢包率大小与第五步长因子确定。If the packet loss rate is greater than the upper threshold, whether it is in the slow start phase or the congestion avoidance phase, modify the slow start threshold and re-enter the slow start phase. The modified slow start threshold is the current congestion window size and the first adjustment value. The product is reduced, and the congestion window is reduced to one segment; the size of the first adjustment value is determined by the packet loss rate and the fifth step factor.
若丢包率处于上限阈值与下限阈值之间,则进入拥塞避免阶段,判断丢包率的变化是上升还是降低;若丢包率上升,则修改慢启动门限,重新进入拥塞避免,降低后的慢启动门限为当前拥塞窗口大小与第二调节值的乘积,并将拥塞窗口减小为慢启动门限(降低后的慢启动门限),所述第二调节值大小由丢包率大小与第六步长因子确定;若丢包率降低,则不改变慢启动门限和拥塞窗口大小继续执行拥塞避免;可以理解的是,若第一次统计丢包率后,确定丢包率处于上限阈值与下限阈值之间,则先不执行慢启动门限值及拥塞窗口大小调整操作,而是继续统计丢包率,从而判断出丢包率的变化再执行慢启动门限值及拥塞窗口大小调整操作。If the packet loss rate is between the upper threshold and the lower threshold, enter the congestion avoidance phase to determine whether the packet loss rate changes or decreases. If the packet loss rate increases, modify the slow start threshold and re-enter congestion avoidance. The slow start threshold is the product of the current congestion window size and the second adjustment value, and reduces the congestion window to a slow start threshold (a reduced slow start threshold), and the second adjustment value is determined by the packet loss rate and the sixth The step size factor is determined. If the packet loss rate is reduced, the congestion avoidance threshold and the congestion window size are not changed to continue to perform congestion avoidance. It can be understood that if the packet loss rate is measured for the first time, the packet loss rate is determined to be at the upper threshold and the lower limit. Between the thresholds, the slow start threshold and the congestion window size adjustment operation are not performed first, but the packet loss rate is continuously counted, thereby determining the change of the packet loss rate and then performing the slow start threshold and the congestion window size adjustment operation.
若丢包率小于下限阈值,若在慢启动阶段则继续执行慢启动,若在拥塞避免阶段则不改变慢启动门限和拥塞窗口大小,继续执行拥塞避免。If the packet loss rate is lower than the lower threshold, the slow start is continued in the slow start phase. If the slow start threshold and the congestion window are not changed during the congestion avoidance phase, the congestion avoidance is continued.
步骤45:以调整后的拥塞窗口及慢启动门限继续进行数据传输。Step 45: Continue data transmission with the adjusted congestion window and the slow start threshold.
本发明提供的以丢包率及丢包率的变化作为拥塞控制调节因子,使数据传输速率快速收敛到与网络可用带宽匹配的最佳值附近,从而充分利用有效带宽,因此可以应用于高带宽延迟积等网络环境中。The invention provides a change of the packet loss rate and the packet loss rate as a congestion control adjustment factor, so that the data transmission rate quickly converges to the vicinity of the optimal value matching the available bandwidth of the network, thereby fully utilizing the effective bandwidth, and thus can be applied to high bandwidth. Delayed product and other network environments.
本发明又一实施例提供一种数据传输的拥塞控制装置,本实施例所述数据传输的拥塞控制装置是与上述实施例所述方法对应的装置,通过本装置能够实现上述实施例所述方法,如图5中所示,包括:A further embodiment of the present invention provides a congestion control apparatus for data transmission. The congestion control apparatus for data transmission according to this embodiment is a device corresponding to the method described in the foregoing embodiment, and the method of the foregoing embodiment can be implemented by the apparatus. , as shown in Figure 5, including:
数据传输单元50,用于数据传输;该数据传输单元50可以以块为单位进行数据传输。The data transmission unit 50 is for data transmission; the data transmission unit 50 can perform data transmission in units of blocks.
统计单元51,用于在数据传输过程中统计丢包率及丢包率的变化;The statistics unit 51 is configured to count the change of the packet loss rate and the packet loss rate during the data transmission process;
拥塞控制单元52,用于以所述丢包率及丢包率的变化作为调节因子进行拥塞控制。该拥塞控制单元52可以进一包括: The congestion control unit 52 is configured to perform congestion control by using the change of the packet loss rate and the packet loss rate as an adjustment factor. The congestion control unit 52 can further include:
第一调整子单元521(图中未示出),用于将丢包率与设定的上限阈值及下限阈值比较,根据比较结果调整数据传输速率。具体调整方法包括:将丢包率与设定的上限阈值及下限阈值比较,若丢包率大于上限阈值,则下调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第一调节因子的乘积,所述第一调节因子由丢包率大小确定,具体可以为第一调节因子=1.0-丢包率+第一步长因子w1;若丢包率处于上限阈值与下限阈值之间,则判断丢包率的变化是上升还是降低;若丢包率上升,则下调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第二调节因子的乘积,所述第二调节因子=1.0-丢包率+第二步长因子w2;若丢包率降低,则上调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第三调节因子的倒数的乘积,所述第三调节因子=1.0-丢包率-第三步长因子w3;可以理解的是,若第一次统计丢包率后,确定丢包率处于上限阈值与下限阈值之间,则先不执行速率调整操作,而是继续统计丢包率,从而判断出丢包率的变化再执行速率调整操作。若丢包率小于下限阈值,则上调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第四调节因子的倒数的乘积,所述第四调节因子=1.0-丢包率-第四步长因子w4。The first adjustment subunit 521 (not shown) is configured to compare the packet loss rate with the set upper threshold and the lower threshold, and adjust the data transmission rate according to the comparison result. The specific adjustment method includes: comparing the packet loss rate with the set upper threshold and the lower threshold, and if the packet loss rate is greater than the upper threshold, the data transmission rate is lowered, and the adjusted data transmission rate is the pre-adjustment data transmission rate and the first adjustment. The product of the factor, the first adjustment factor is determined by the packet loss rate, specifically, the first adjustment factor = 1.0 - the packet loss rate + the first step factor w1; if the packet loss rate is between the upper threshold and the lower threshold And determining whether the change of the packet loss rate is rising or decreasing; if the packet loss rate is rising, the data transmission rate is lowered, and the adjusted data transmission rate is a product of the pre-adjustment data transmission rate and the second adjustment factor, the second adjustment Factor=1.0-packet loss rate+second step factor w2; if the packet loss rate decreases, the data transmission rate is adjusted, and the adjusted data transmission rate is the product of the pre-adjustment data transmission rate and the reciprocal of the third adjustment factor. The third adjustment factor=1.0-packet loss rate-third step factor w3; it can be understood that if the packet loss rate is measured for the first time, it is determined that the packet loss rate is at the upper threshold and Between the threshold limit, the rate adjustment is not performed before the operation, but continues statistical packet loss ratio, to determine a change in the rate of loss ratio and then performing adjustment operation. If the packet loss rate is lower than the lower threshold, the data transmission rate is adjusted, and the adjusted data transmission rate is the product of the pre-adjustment data transmission rate and the reciprocal of the fourth adjustment factor, and the fourth adjustment factor=1.0-packet rate- Four step factor w4.
或者该拥塞控制单元52进一步包括:Or the congestion control unit 52 further includes:
第二调整子单元522(图中未示出),用于将丢包率与设定的上限阈值及下限阈值比较,根据比较结果调整慢启动门限值及拥塞窗口大小。具体调整方法包括:将丢包率与设定的上限阈值及下限阈值比较,若丢包率大于上限阈值,修改慢启动门限,进入慢启动阶段,修改后的慢启动门限为当前拥塞窗口大小与第一调节值的乘积,并将拥塞窗口减为1个报文段;也就是在丢包率大于上限阈值情况下,不论此时是处于慢启动阶段还是处于拥塞避免阶段,都执行修改慢启动门限的操作,之后重新进入慢启动阶段;其中,所述第一调节值=1.0-丢包率+第五步长因子。若丢包率处于上限阈值与下限阈值之间,则进入拥塞避免阶段,判断丢包率的变化是上升还是降低;若丢包率上升,则修改慢启动门限,重新进入拥塞避免,降低后的慢启动门限为当前拥塞窗口大小与第二调节值的乘积,并将拥塞窗口减小为慢启动门限(降低后的慢启动门限),所述第二调节值=1.0-丢包率+第六步长因子;若丢包率降低,则不改变慢启动门限和拥塞窗口大小继续执行拥塞避免;也就是,若丢包率处于上限阈值与下限阈值之间,则若此时处于慢启动阶段,则立刻进入拥塞避免阶段,若此处于拥塞避免阶段,则继续此拥塞避免处于,直接执行丢包率的变化的判断。可以理解的是,若第一次统计丢包率后,确定丢包率处于上限阈值与下限阈值之间,则先不执行慢启动门限值及拥塞窗口大小调整操作,而是继续统计丢包率,从而判断出丢包率的变化再执行慢启动门限值及拥塞窗口大小调整操作。若丢包率小于下限阈值,若在慢启动阶段则继续执行慢启动,若在拥塞避免阶段则不改变慢启动门限和拥塞窗口大小,继续执行拥塞避免。The second adjustment sub-unit 522 (not shown) is configured to compare the packet loss rate with the set upper and lower thresholds, and adjust the slow start threshold and the congestion window according to the comparison result. The specific adjustment method includes: comparing the packet loss rate with the set upper threshold and the lower threshold, and if the packet loss rate is greater than the upper threshold, modifying the slow start threshold and entering the slow start phase, the modified slow start threshold is the current congestion window size and The product of the first adjustment value, and reduces the congestion window to one segment; that is, when the packet loss rate is greater than the upper threshold, whether the slow start phase or the congestion avoidance phase is performed, the modified slow start is performed. The operation of the threshold, and then re-enter the slow start phase; wherein the first adjustment value = 1.0 - packet loss rate + fifth step factor. If the packet loss rate is between the upper threshold and the lower threshold, enter the congestion avoidance phase to determine whether the packet loss rate changes or decreases. If the packet loss rate increases, modify the slow start threshold and re-enter congestion avoidance. The slow start threshold is the product of the current congestion window size and the second adjustment value, and reduces the congestion window to a slow start threshold (a reduced slow start threshold), the second adjustment value = 1.0 - packet loss rate + sixth Step factor; if the packet loss rate is reduced, the congestion avoidance is continued without changing the slow start threshold and the congestion window size; that is, if the packet loss rate is between the upper threshold and the lower threshold, then if the packet is in the slow start phase, Then, the congestion avoidance phase is immediately entered. If the congestion avoidance phase is here, the congestion avoidance is continued, and the change of the packet loss rate is directly performed. It can be understood that if the packet loss rate is determined to be between the upper threshold and the lower threshold, the slow start threshold and the congestion window size adjustment operation are not performed first, but the packet loss is continued. Rate, thereby determining the change of the packet loss rate and then performing the slow start threshold and the congestion window size adjustment operation. If the packet loss rate is lower than the lower threshold, the slow start is continued in the slow start phase. If the slow start threshold and the congestion window are not changed during the congestion avoidance phase, the congestion avoidance is continued.
本实施例所述装置设置于数据发送端,可以但不限于应用于高带宽延迟积网络环境中。可以理解的是,为突出本发明实施例所述装置的发明点,省略了对该装置的已有功能的介绍。The device in this embodiment is disposed on the data sending end, and may be, but is not limited to, applied to a high bandwidth delay product network environment. It will be understood that in order to highlight the inventive aspects of the apparatus of the embodiments of the present invention, an introduction to the existing functions of the apparatus is omitted.
本发明实施例提供的数据传输的拥塞控制装置以丢包率及丢包率的变化作为拥塞控制调节因子,使数据传输速率快速收敛到与网络可用带宽匹配的最佳值附近,从而充分利用有效带宽。The congestion control device for data transmission provided by the embodiment of the present invention uses the change of the packet loss rate and the packet loss rate as a congestion control adjustment factor, so that the data transmission rate quickly converges to the vicinity of the optimal value matching the available bandwidth of the network, thereby fully utilizing the effective bandwidth.
综上所述,本发明实施例以丢包率及丢包率的变化作为拥塞控制调节因子,使数据传输速率快速收敛到与网络可用带宽匹配的最佳值附近,从而充分利用有效带宽。In summary, the embodiment of the present invention uses the change of the packet loss rate and the packet loss rate as a congestion control adjustment factor, so that the data transmission rate quickly converges to the vicinity of the optimal value matched with the available bandwidth of the network, thereby fully utilizing the effective bandwidth.
本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。It will be understood by those skilled in the art that all or part of the steps of the foregoing embodiments may be implemented by a program to instruct related hardware, and the program may be stored in a computer readable storage medium, and the program is executed. At the time, the flow of the embodiment of each of the above methods may be included. The storage medium may be a magnetic disk, an optical disk, or a read-only storage memory (Read-Only) Memory, ROM) or Random Access Memory (RAM).
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。The above is only a preferred embodiment of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily think of changes or within the technical scope disclosed by the present invention. Alternatives are intended to be covered by the scope of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.

Claims (10)

  1. 一种数据传输的拥塞控制方法,其特征在于,包括:A congestion control method for data transmission, comprising:
    在数据传输过程中统计丢包率及丢包率的变化;Statistics of packet loss rate and packet loss rate during data transmission;
    以所述丢包率及丢包率的变化作为调节因子进行拥塞控制。Congestion control is performed by using the change of the packet loss rate and the packet loss rate as an adjustment factor.
  2. 如权利要求1所述的方法,其特征在于,所述数据传输是以块为单元进行数据传输。The method of claim 1 wherein said data transmission is data transmission in units of blocks.
  3. 如权利要求1或2所述的方法,其特征在于,所述以所述丢包率及丢包率的变化作为调节因子进行拥塞控制包括:The method according to claim 1 or 2, wherein the performing congestion control by using the change of the packet loss rate and the packet loss rate as an adjustment factor comprises:
    将丢包率与设定的上限阈值及下限阈值比较,根据比较结果调整数据传输速率。The packet loss rate is compared with the set upper threshold and the lower threshold, and the data transmission rate is adjusted according to the comparison result.
  4. 如权利要求3所述的方法,其特征在于,所述根据比较结果调整数据传输速率包括:The method of claim 3, wherein the adjusting the data transmission rate according to the comparison result comprises:
    若丢包率大于上限阈值,则下调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第一调节因子的乘积,所述第一调节因子=1.0-丢包率+第一步长因子w1;If the packet loss rate is greater than the upper threshold, the data transmission rate is decreased, and the adjusted data transmission rate is a product of the pre-adjustment data transmission rate and the first adjustment factor, and the first adjustment factor=1.0-packet rate+first step Long factor w1;
    若丢包率处于上限阈值与下限阈值之间,则判断丢包率的变化是上升还是降低;若丢包率上升,则下调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第二调节因子的乘积,所述第二调节因子=1.0-丢包率+第二步长因子w2;若丢包率降低,则上调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第三调节因子的倒数的乘积,所述第三调节因子=1.0-丢包率-第三步长因子w3;If the packet loss rate is between the upper threshold and the lower threshold, it is determined whether the change of the packet loss rate is rising or decreasing; if the packet loss rate is increased, the data transmission rate is lowered, and the adjusted data transmission rate is the data transmission rate before the adjustment. The product of the second adjustment factor, the second adjustment factor = 1.0 - the packet loss rate + the second step factor w2; if the packet loss rate is decreased, the data transmission rate is adjusted, and the adjusted data transmission rate is the data transmission before the adjustment. The product of the rate and the reciprocal of the third adjustment factor, the third adjustment factor = 1.0 - the packet loss rate - the third step factor w3;
    若丢包率小于下限阈值,则上调数据传输速率,调整后的数据传输速率为调整前数据传输速率与第四调节因子的倒数的乘积,所述第四调节因子=1.0-丢包率-第四步长因子w3。If the packet loss rate is lower than the lower threshold, the data transmission rate is adjusted, and the adjusted data transmission rate is the product of the pre-adjustment data transmission rate and the reciprocal of the fourth adjustment factor, and the fourth adjustment factor=1.0-packet rate- Four step factor w3.
  5. 如权利要求1所述的方法,其特征在于,所述以所述丢包率及丢包率的变化作为调节因子进行拥塞控制包括:The method according to claim 1, wherein the performing congestion control by using the change of the packet loss rate and the packet loss rate as an adjustment factor comprises:
    将丢包率与设定的上限阈值及下限阈值比较,根据比较结果调整慢启动门限值及拥塞窗口大小。The packet loss rate is compared with the set upper threshold and the lower threshold, and the slow start threshold and the congestion window are adjusted according to the comparison result.
  6. 如权利要求5所述的方法,其特征在于,所述根据比较结果调整慢启动门限值及拥塞窗口大小包括:The method according to claim 5, wherein the adjusting the slow start threshold and the congestion window according to the comparison result comprises:
    若丢包率大于上限阈值,修改慢启动门限,进入慢启动阶段,修改后的慢启动门限为当前拥塞窗口大小与第一调节值的乘积,将拥塞窗口减为1个报文段,所述第一调节值=1.0-丢包率+第五步长因子w5;If the packet loss rate is greater than the upper threshold, modify the slow start threshold and enter the slow start phase. The modified slow start threshold is the product of the current congestion window size and the first adjustment value, and the congestion window is reduced to one segment. First adjustment value = 1.0 - packet loss rate + fifth step factor w5;
    若丢包率处于上限阈值与下限阈值之间,进入拥塞避免阶段,判断丢包率的变化是上升还是降低;若丢包率上升,则修改慢启动门限,重新进入拥塞避免,降低后的慢启动门限为当前拥塞窗口大小与第二调节值的乘积,拥塞窗口减小为慢启动门限,所述第二调节值=1.0-丢包率+第六步长因子w6;若丢包率降低,则,继续执行拥塞避免;If the packet loss rate is between the upper threshold and the lower threshold, enter the congestion avoidance phase to determine whether the packet loss rate changes or decreases. If the packet loss rate increases, modify the slow start threshold, re-enter congestion avoidance, and slow down. The startup threshold is the product of the current congestion window size and the second adjustment value, and the congestion window is reduced to a slow start threshold, and the second adjustment value is 1.0-packet loss rate + the sixth step factor w6; if the packet loss rate is decreased, Then, continue to perform congestion avoidance;
    若丢包率小于下限阈值,若在慢启动阶段则继续执行慢启动,若在拥塞避免阶段则继续执行拥塞避免。If the packet loss rate is lower than the lower threshold, the slow start is continued in the slow start phase, and the congestion avoidance is performed in the congestion avoidance phase.
  7. 一种数据传输的拥塞控制装置,其特征在于,包括:A congestion control device for data transmission, comprising:
    数据传输单元,用于数据传输;Data transmission unit for data transmission;
    统计单元,用于在数据传输过程中统计丢包率及丢包率的变化;a statistical unit, configured to count changes in packet loss rate and packet loss rate during data transmission;
    拥塞控制单元,用于以所述丢包率及丢包率的变化作为调节因子进行拥塞控制。The congestion control unit is configured to perform congestion control by using the change of the packet loss rate and the packet loss rate as an adjustment factor.
  8. 如权利要求7所述的装置,其特征在于,所述数据传输单元以块为单位进行数据传输。The apparatus according to claim 7, wherein said data transmission unit performs data transmission in units of blocks.
  9. 如权利要求7或8所述的装置,其特征在于,所述拥塞控制单元进一步包括:The device according to claim 7 or 8, wherein the congestion control unit further comprises:
    第一调整子单元,用于将丢包率与设定的上限阈值及下限阈值比较,根据比较结果调整数据传输速率。The first adjusting subunit is configured to compare the packet loss rate with the set upper threshold and the lower threshold, and adjust the data transmission rate according to the comparison result.
  10. 如权利要求7所述的装置,其特征在于,所述拥塞控制单元进一步包括:The device of claim 7, wherein the congestion control unit further comprises:
    第二调整子单元,用于将丢包率与设定的上限阈值及下限阈值比较,根据比较结果调整慢启动门限值及拥塞窗口大小。The second adjusting subunit is configured to compare the packet loss rate with the set upper threshold and the lower threshold, and adjust the slow start threshold and the congestion window according to the comparison result.
PCT/CN2010/080436 2010-12-29 2010-12-29 Congestion control method and device for data transmission WO2011150651A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201080003685.5A CN102204182B (en) 2010-12-29 2010-12-29 Method and apparatus for controlling congestion of data transmission
PCT/CN2010/080436 WO2011150651A1 (en) 2010-12-29 2010-12-29 Congestion control method and device for data transmission

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2010/080436 WO2011150651A1 (en) 2010-12-29 2010-12-29 Congestion control method and device for data transmission

Publications (1)

Publication Number Publication Date
WO2011150651A1 true WO2011150651A1 (en) 2011-12-08

Family

ID=44662804

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2010/080436 WO2011150651A1 (en) 2010-12-29 2010-12-29 Congestion control method and device for data transmission

Country Status (2)

Country Link
CN (1) CN102204182B (en)
WO (1) WO2011150651A1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108668323A (en) * 2018-05-08 2018-10-16 Oppo广东移动通信有限公司 Transmission rate adjustment method and related device
CN109156011A (en) * 2016-05-20 2019-01-04 苹果公司 The TTI of the improved oblique ascension of TCP handling capacity in cellular network is dispatched
CN114268416A (en) * 2021-12-16 2022-04-01 无锡联云世纪科技股份有限公司 Data transmission method and device and electronic equipment
CN115022719A (en) * 2022-05-12 2022-09-06 东风汽车集团股份有限公司 Remote driving self-adaptive video code rate control transmission method and system
CN115174003A (en) * 2022-07-20 2022-10-11 普联技术有限公司 Block acknowledgement control method, device, computer readable storage medium and terminal equipment
CN115378795A (en) * 2022-08-19 2022-11-22 度小满科技(北京)有限公司 Server network quality monitoring method and device, electronic equipment and storage medium

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103067432B (en) * 2011-10-21 2016-03-02 中国移动通信集团设计院有限公司 The sending method of data, transmitting terminal and communication system
CN103067957B (en) * 2013-02-07 2016-04-27 深圳市磊科实业有限公司 A kind of wireless system for transmitting data and its implementation being applied to point-to-point environment
CN104038512A (en) * 2013-03-04 2014-09-10 华为技术有限公司 Data transmission method and apparatus
CN103200621A (en) * 2013-03-14 2013-07-10 南京理工大学 Self-adaptation flow control method suitable for wireless projection system real-time data transmission
CN105207949B (en) * 2014-06-12 2018-06-26 中国移动通信集团内蒙古有限公司 A kind of TCP optimization methods and system, SP servers
CN104125159B (en) * 2014-07-29 2017-09-12 福建星网锐捷网络有限公司 A kind of congestion bandwidth detection method, apparatus and system
WO2016019523A1 (en) * 2014-08-06 2016-02-11 华为技术有限公司 Method and apparatus for identifying network transmission congestion
CN104394484A (en) * 2014-11-12 2015-03-04 海信集团有限公司 Wireless live streaming media transmission method
CN106302230B (en) * 2015-06-11 2019-11-26 华为技术有限公司 A kind of data transmission method and device
CN104936215B (en) * 2015-06-17 2019-01-04 福建联迪商用设备有限公司 A kind of wireless Wi-Fi dynamic rate shaping method and system
CN105450441B (en) * 2015-11-05 2018-12-14 深圳市网心科技有限公司 A kind of weak net acceleration method and device based on Transmission Control Protocol
CN105763297B (en) * 2015-12-25 2019-11-01 珠海国芯云科技有限公司 A kind of teledata optimized transmission method and device based on cloud computing system
CN107171969B (en) * 2016-03-07 2020-06-02 华为技术有限公司 Data transmission method, device and system
CN106341241B (en) * 2016-08-18 2019-08-23 北京海誉动想科技股份有限公司 The method and device of high packet loss cloud system Multicast File
CN106452671B (en) * 2016-09-28 2020-09-18 青岛海尔空调电子有限公司 Multi-connected indoor and outdoor unit communication method
CN106789702B (en) * 2016-12-30 2020-05-12 广州华多网络科技有限公司 Method and device for controlling transmission performance of TCP (Transmission control protocol)
CN107317795B (en) * 2017-05-08 2021-07-09 贵阳朗玛信息技术股份有限公司 Method and device for adjusting code rate of data packet
CN114157603A (en) 2018-05-04 2022-03-08 华为技术有限公司 Congestion control method, device, equipment and storage medium
CN109639340B (en) * 2018-12-11 2021-05-28 成都天奥信息科技有限公司 TCP acceleration method suitable for satellite link
CN109688064B (en) * 2018-12-19 2022-11-11 北京达佳互联信息技术有限公司 Data transmission method and device, electronic equipment and storage medium
CN109451541A (en) * 2018-12-21 2019-03-08 中国电子科技集团公司第三十研究所 Message transmission rate adaptive approach based on UDP under a kind of wireless network environment
CN111192443B (en) * 2020-01-20 2020-10-20 深圳市觅拓物联信息技术有限公司 Energy-saving warning method and warning system based on Bluetooth beacon
CN113259304B (en) * 2020-02-12 2022-06-03 上海云盾信息技术有限公司 Attack protection method and equipment based on dynamic adjustment
CN111371692B (en) * 2020-03-13 2020-11-27 中科驭数(北京)科技有限公司 Window control method and device based on TCP (Transmission control protocol) and electronic equipment
CN113497671B (en) * 2020-04-02 2023-07-18 成都鼎桥通信技术有限公司 Data processing method, device, equipment, storage medium and terminal equipment
CN111193673B (en) * 2020-04-10 2020-08-25 亮风台(上海)信息科技有限公司 Data transmission rate control method, system and user equipment
CN111669340B (en) * 2020-07-03 2021-06-22 全时云商务服务股份有限公司 Transmission bandwidth control method, device, network equipment and readable storage medium
CN112492646B (en) * 2020-11-27 2022-04-08 清华大学 Congestion control method and device based on congestion cause identification
CN112491658B (en) * 2020-12-02 2023-01-03 广州虎牙科技有限公司 Bandwidth estimation method and device, electronic equipment and computer-readable storage medium
CN113179220B (en) * 2021-05-12 2022-04-26 中移智行网络科技有限公司 Data transmission method, data transmission device and computer readable storage medium
CN115103235B (en) * 2022-06-21 2023-10-20 咪咕互动娱乐有限公司 Data transmission method, device, equipment and medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1468001A (en) * 2002-06-27 2004-01-14 上海汉唐科技有限公司 Media flow self-adapting transmission method based on internet
US20080008092A1 (en) * 2006-07-06 2008-01-10 Xin Wang Reducing packet loss for a packet data service during congestion in a transport network
US7821937B1 (en) * 2007-06-29 2010-10-26 Symantec Corporation Network protocol with damage loss resilient congestion control algorithm
CN101909208A (en) * 2010-08-05 2010-12-08 浙江工业大学 Video wireless transmission control method suitable for CDMA2000

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101094047A (en) * 2007-07-06 2007-12-26 中国人民解放军国防科学技术大学 Staged, slowly-started transmission control method based on measurement of network state

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1468001A (en) * 2002-06-27 2004-01-14 上海汉唐科技有限公司 Media flow self-adapting transmission method based on internet
US20080008092A1 (en) * 2006-07-06 2008-01-10 Xin Wang Reducing packet loss for a packet data service during congestion in a transport network
US7821937B1 (en) * 2007-06-29 2010-10-26 Symantec Corporation Network protocol with damage loss resilient congestion control algorithm
CN101909208A (en) * 2010-08-05 2010-12-08 浙江工业大学 Video wireless transmission control method suitable for CDMA2000

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109156011A (en) * 2016-05-20 2019-01-04 苹果公司 The TTI of the improved oblique ascension of TCP handling capacity in cellular network is dispatched
CN108668323A (en) * 2018-05-08 2018-10-16 Oppo广东移动通信有限公司 Transmission rate adjustment method and related device
CN108668323B (en) * 2018-05-08 2022-05-13 Oppo广东移动通信有限公司 Transmission rate adjustment method and related device
CN114268416A (en) * 2021-12-16 2022-04-01 无锡联云世纪科技股份有限公司 Data transmission method and device and electronic equipment
CN115022719A (en) * 2022-05-12 2022-09-06 东风汽车集团股份有限公司 Remote driving self-adaptive video code rate control transmission method and system
CN115022719B (en) * 2022-05-12 2023-05-26 东风汽车集团股份有限公司 Remote driving self-adaptive video code rate control transmission method and system
CN115174003A (en) * 2022-07-20 2022-10-11 普联技术有限公司 Block acknowledgement control method, device, computer readable storage medium and terminal equipment
CN115174003B (en) * 2022-07-20 2023-11-24 普联技术有限公司 Block acknowledgement control method, device, computer readable storage medium and terminal equipment
CN115378795A (en) * 2022-08-19 2022-11-22 度小满科技(北京)有限公司 Server network quality monitoring method and device, electronic equipment and storage medium
CN115378795B (en) * 2022-08-19 2024-02-13 度小满科技(北京)有限公司 Method and device for monitoring network quality of server, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN102204182B (en) 2013-09-11
CN102204182A (en) 2011-09-28

Similar Documents

Publication Publication Date Title
WO2011150651A1 (en) Congestion control method and device for data transmission
KR102249741B1 (en) Method and apparatus for data transmission
US7035214B1 (en) System and method for a negative acknowledgement-based transmission control protocol
US8374091B2 (en) TCP extension and variants for handling heterogeneous applications
US7460472B2 (en) System and method for transmitting information in a communication network
EP1568180B1 (en) A method for enhancing transmission quality of streaming media
JP2004537218A (en) Reliable and efficient method of congestion control in NACK based protocol
CN106102094A (en) A kind of TCP jamming control method based on SDN
WO2021042287A1 (en) Data synchronization method and apparatus, device, system, and storage medium
WO2002049254A2 (en) A system and method for data transfer acceleration in a tcp network environment
US20030128672A1 (en) Transmission and flow control
US11533656B2 (en) Method of traffic and congestion control for a network with quality of service
WO2019144802A1 (en) Data transmission method and related device
CN101895332A (en) Method for controlling spatial TCP flow and controlling error
JP4061643B2 (en) Information processing system, information processing apparatus and method, recording medium, and program
CN116074401B (en) Method for realizing transmission layer protocol on programmable exchanger
JP3434231B2 (en) TCP control method
Song et al. Relative delay estimator for sctp-based concurrent multipath transfer
Molia et al. A conceptual exploration of TCP variants
Wan et al. Research on tcp optimization strategy of application delivery network
Yahya TCP Fairness
Niu et al. Improvement of TCP reno congestion control based on RTT
Vala et al. A Review: TCP Variants with MANET
Wang et al. A TCP Congestion Control Model Based on Congestion Event Classification
Ibrahim et al. Enhancing DCCP-TCP-like mechanism for wireless sensor networks

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080003685.5

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10852446

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10852446

Country of ref document: EP

Kind code of ref document: A1