WO2020211341A1 - 拥塞控制方法、装置、计算机设备及存储介质 - Google Patents

拥塞控制方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
WO2020211341A1
WO2020211341A1 PCT/CN2019/116605 CN2019116605W WO2020211341A1 WO 2020211341 A1 WO2020211341 A1 WO 2020211341A1 CN 2019116605 W CN2019116605 W CN 2019116605W WO 2020211341 A1 WO2020211341 A1 WO 2020211341A1
Authority
WO
WIPO (PCT)
Prior art keywords
window value
congestion window
congestion
data packet
feedback confirmation
Prior art date
Application number
PCT/CN2019/116605
Other languages
English (en)
French (fr)
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 深圳市赛为智能股份有限公司
Publication of WO2020211341A1 publication Critical patent/WO2020211341A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • 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

  • This application relates to data transmission control methods, and more specifically to congestion control methods, devices, computer equipment and storage media.
  • TCP Transmission Control Protocol
  • the TCP protocol establishes a connection between the sender and receiver of data, and assigns a sequence number to each data packet sent.
  • the sender of data receives the receiver's feedback ACK (acknowledgement character, Acknowledgement)
  • the sender confirms that the data packet has been sent successfully, and if the receiver detects that the received packet is out of sequence, it will resend the feedback ACK of the last data packet that is not out of sequence.
  • the sender of the message receives three identical ACKs in a row, it means that the receiver has not received the next data packet corresponding to the ACK, so the data packet retransmission is started.
  • TCP is responsible for each data packet sent.
  • TCP Reno a congestion control mechanism to prevent congestion caused by the sender’s message sending too fast, and then Prevent the phenomenon of packet loss.
  • TCP Reno prototype after the occurrence of congestion and packet loss, the sender's speed of sending data packets is greatly reduced, so that in addition to completing the retransmission of the lost packets, there is often more bandwidth free, resulting in waste of resources .
  • the purpose of this application is to overcome the defects of the prior art and provide a congestion control method, device, computer equipment, and storage medium.
  • a congestion control method including:
  • the congestion window value is updated, and the data packet is sent back by using the slow start algorithm according to the congestion window value to obtain the feedback confirmation character.
  • the method before the setting of the congestion window value, the method further includes:
  • the judging whether packet loss occurs according to the feedback confirmation character includes:
  • the quick recovery of the congestion window value includes:
  • the reduced congestion window value is increased linearly.
  • the congestion avoidance processing on the congestion window value includes:
  • said updating the congestion window value includes:
  • the congestion window value is increased exponentially.
  • the exponential increase of the congestion window value includes:
  • the congestion window value is increased exponentially to the second power.
  • This application also provides a congestion control device, including:
  • the setting unit is used to set the congestion window value
  • the sending unit is used to send data packets using a slow start algorithm according to the congestion window value to obtain feedback confirmation characters;
  • a packet loss judging unit configured to judge whether packet loss occurs according to the feedback confirmation character
  • the retransmission unit is used to quickly retransmit the data packet if yes;
  • the fast recovery unit is configured to quickly recover the congestion window value, and return to the data packet sent using the slow start algorithm according to the congestion window value to obtain a feedback confirmation character;
  • a congestion window value judging unit configured to, if not, judge whether the congestion window value is greater than a set threshold
  • the congestion avoidance unit is configured to, if yes, perform congestion avoidance processing on the congestion window value, and return to the data packet sent by using the slow start algorithm according to the congestion window value to obtain a feedback confirmation character;
  • the update unit is configured to update the congestion window value if not, and return to the data packet sent by using the slow start algorithm according to the congestion window value to obtain a feedback confirmation character.
  • the present application also provides a computer device that includes a memory and a processor, the memory stores a computer program, and the processor implements the above-mentioned method when the computer program is executed.
  • the present application also provides a storage medium that stores a computer program, and the computer program can implement the above-mentioned method when executed by a processor.
  • This application uses a slow start algorithm to send data packets and compares the congestion window value with the set threshold when there is no packet loss.
  • congestion When congestion occurs, Change the congestion window value from exponential growth to linear growth to avoid congestion.
  • packet loss occurs, the lost data packet is retransmitted, and the congestion window value is quickly restored to restore the sending speed of the sender as soon as possible.
  • the system resources cannot be fully utilized within a period of time after the packet loss occurs in the traditional TCP Reno congestion control mechanism, realize that the loss caused by congestion can be retransmitted, and the bandwidth is used as much as possible.
  • FIG. 1 is a schematic diagram of an application scenario of a congestion control method provided by an embodiment of the application
  • FIG. 2 is a schematic flowchart of a congestion control method provided by an embodiment of the application.
  • FIG. 3 is a schematic diagram of a sub-flow of a congestion control method provided by an embodiment of the application.
  • FIG. 4 is a schematic diagram of a sub-flow of a congestion control method provided by an embodiment of the application.
  • FIG. 5 is a schematic diagram of the relationship between the congestion window value and rounds provided by an embodiment of the application.
  • FIG. 6 is a schematic flowchart of a congestion control method provided by another embodiment of this application.
  • FIG. 7 is a schematic block diagram of a congestion control apparatus provided by an embodiment of the application.
  • FIG. 8 is a schematic block diagram of a congestion control apparatus provided by another embodiment of this application.
  • FIG. 9 is a schematic block diagram of a computer device provided by an embodiment of the application.
  • FIG. 1 is a schematic diagram of an application scenario of a congestion control method provided by an embodiment of the application.
  • Fig. 2 is a schematic flowchart of a congestion control method provided by an embodiment of the application.
  • the congestion control method is applied to a server, the server and the terminal perform data transmission, the server sends data to the terminal, and congestion control is performed during the sending process.
  • the server acts as the sender of data packets based on the TCP protocol; the terminal acts as the receiver and sender based on the TCP protocol The receiver of the data packet sent.
  • Fig. 2 is a schematic flowchart of a congestion control method provided by an embodiment of the present application. As shown in FIG. 2, the method includes the following steps S110 to S180.
  • the congestion window value refers to the upper limit of the data packet that the sender can send at a certain moment.
  • the feedback confirmation character refers to the character about the data packet returned when the receiver receives the data packet sent by the sender.
  • the sender does not know the network load when it first sends data packets. If a large amount of data is sent at the beginning, congestion may be caused immediately. In this way, the slow-start algorithm is used to start with a slower sending speed and gradually increase the speed of sending data packets to avoid immediate congestion without knowing the network bandwidth.
  • congestion often causes data packet loss, that is, some data packets are discarded after being sent. Therefore, the occurrence of packet loss is used as the basis for judging the congestion of the TCP protocol system.
  • the above-mentioned step S130 may include steps S131 to S134.
  • the receiver When the receiver receives the data packet n, it returns a feedback confirmation character to the sender. If the receiver next receives not data packet n+1, it is assumed here that n+1 is discarded due to congestion, and the receiver receives data packet n+2, and the receiver judges that it is out of order and still returns the sending feedback confirmation character. The sender continues to send data packets n+3 and n+4 in sequence, and the receiver still returns feedback confirmation characters. When three identical feedback confirmation characters are continuously received, packet loss occurs in the data packet n+1.
  • the congestion window value win_con keeps increasing until the data packet loss occurs, that is, it can be judged that the packet is congested, and the fast retransmission is used for the sender to timely judge the failed packet and retransmit it in time to reduce the waste of system resources.
  • the above-mentioned step S150 may include steps S151 to S153.
  • the threshold thres is immediately set to Threshold Thres means that when the number of packets sent by the sender reaches the threshold at a certain time, the sender enters the congestion avoidance phase.
  • win_con (t+1) win_con (t) + (t-t') 2
  • t is the current T'is the round of packet loss that occurs when congestion occurs
  • win_con (t+1) represents the next congestion window value.
  • win_con ⁇ thres the system enters the next congestion avoidance algorithm.
  • the congestion window value win_con increases exponentially.
  • the congestion window value win_con increases exponentially.
  • the congestion window value when congestion occurs, that is, when the congestion window value is greater than the set threshold, the congestion window value is linearly increased. Therefore, the function of the congestion avoidance algorithm is to slow down the growth trend of the congestion window value win_con. But the algorithm always before the occurrence of congestion, if the value of the congestion window value win_con exceeds the threshold thres, the sender will extend the congestion window value win_con by one MSS length each time in the next several rounds, that is, increase exponentially Becomes linear growth.
  • win_con (t+1) win_con (t) +MSS
  • win_con (t+1) represents the next Congestion window value
  • win_con (t) is the congestion window value
  • MSS represents the maximum length of a packet that the sender can send.
  • the congestion window value is increased exponentially.
  • the congestion window value is increased exponentially to the power of two.
  • the congestion control method can be applied to common network data transmission.
  • the above congestion control method uses the slow start algorithm to send data packets.
  • the congestion window value is compared with the set threshold.
  • the congestion window value is changed from exponential growth to Linear growth for congestion avoidance.
  • packet loss occurs, the lost data packet is retransmitted, and the congestion window value is quickly restored, and the sender's transmission speed is restored as soon as possible to solve the traditional TCP Reno congestion control mechanism.
  • Fig. 6 is a schematic flowchart of a congestion control method provided by another embodiment of the present application. As shown in Fig. 6, the congestion control method of this embodiment includes steps S210-S290. The steps S220-S290 are similar to the steps S110-S180 in the foregoing embodiment, and will not be repeated here. The step S210 added in this embodiment will be described in detail below.
  • a TCP connection is established between the data sender and the receiver.
  • the sender starts to send data packets to the pickup and drop.
  • FIG. 7 is a schematic block diagram of a congestion control device 300 provided by an embodiment of the present application. As shown in FIG. 7, corresponding to the above congestion control method, the present application also provides a congestion control device 300.
  • the congestion control device 300 includes a unit for executing the above congestion control method, and the device may be configured in a server.
  • the congestion control apparatus 300 includes:
  • the setting unit 302 is used to set the congestion window value
  • the sending unit 303 is configured to send data packets using a slow start algorithm according to the congestion window value to obtain feedback confirmation characters;
  • the packet loss judging unit 304 is configured to judge whether there is packet loss according to the feedback confirmation character
  • the retransmission unit 305 is configured to quickly retransmit the data packet if yes;
  • the fast recovery unit 306 is configured to quickly recover the congestion window value, and return to the data packet sent using the slow start algorithm according to the congestion window value to obtain a feedback confirmation character;
  • the congestion window value judgment unit 307 is configured to, if not, judge whether the congestion window value is greater than a set threshold
  • the congestion avoidance unit 308 is configured to, if yes, perform congestion avoidance processing on the congestion window value, and return to the data packet sent using the slow start algorithm according to the congestion window value to obtain a feedback confirmation character;
  • the update unit 309 is configured to update the congestion window value if not, and return to the data packet sent by using the slow start algorithm according to the congestion window value to obtain a feedback confirmation character.
  • the packet loss determining unit 304 includes:
  • the group obtaining subunit is used to obtain the data group corresponding to the last feedback confirmation character to obtain the comparison data group;
  • the character judgment subunit is used to judge whether the feedback confirmation character is the feedback confirmation character corresponding to the next data packet adjacent to the comparison data packet; if it is, packet loss occurs; if not, no packet loss occurs.
  • the quick recovery unit 306 includes:
  • the reset subunit is used to reset the set threshold
  • the linear growth subunit is used to linearly increase the reduced congestion window value.
  • FIG. 8 is a schematic block diagram of a congestion control device 300 according to another embodiment of the present application. As shown in FIG. 8, the congestion control device 300 of this embodiment is based on the above-mentioned embodiment with a connection unit 301 added.
  • the connection unit 301 is used to obtain a TCP connection with the receiver.
  • the above-mentioned congestion control apparatus 300 may be implemented in the form of a computer program, and the computer program may run on a computer device as shown in FIG. 9.
  • FIG. 9 is a schematic block diagram of a computer device according to an embodiment of the present application.
  • the computer device 500 may be a server.
  • the computer device 500 includes a processor 502, a memory, and a network interface 505 connected through a system bus 501, where the memory may include a non-volatile storage medium 503 and an internal memory 504.
  • the non-volatile storage medium 503 can store an operating system 5031 and a computer program 5032.
  • the computer program 5032 includes program instructions. When the program instructions are executed, the processor 502 can execute a congestion control method.
  • the processor 502 is used to provide calculation and control capabilities to support the operation of the entire computer device 500.
  • the internal memory 504 provides an environment for the operation of the computer program 5032 in the non-volatile storage medium 503.
  • the processor 502 can execute a congestion control method.
  • the network interface 505 is used for network communication with other devices.
  • FIG. 9 is only a block diagram of part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device 500 to which the solution of the present application is applied.
  • the specific computer device 500 may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
  • the processor 502 is configured to run a computer program 5032 stored in the memory to implement the following steps:
  • the congestion window value is updated, and the data packet is sent back by using the slow start algorithm according to the congestion window value to obtain the feedback confirmation character.
  • the processor 502 further implements the following steps before implementing the step of setting the congestion window value:
  • the processor 502 when the processor 502 implements the step of determining whether packet loss occurs according to the feedback confirmation character, the following steps are specifically implemented:
  • processor 502 when the processor 502 implements the quick recovery step on the congestion window value, it specifically implements the following steps:
  • the reduced congestion window value is increased linearly.
  • processor 502 when the processor 502 implements the congestion avoidance processing step on the congestion window value, it specifically implements the following steps:
  • the processor 502 specifically implements the following steps when implementing the step of updating the congestion window value:
  • the congestion window value is increased exponentially.
  • processor 502 when the processor 502 implements the exponentially increasing step of the congestion window value, it specifically implements the following steps:
  • the congestion window value is increased exponentially to the second power.
  • the processor 502 may be a central processing unit (Central Processing Unit, CPU), and the processor 502 may also be other general-purpose processors, digital signal processors (Digital Signal Processors, DSPs), Application Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • the general-purpose processor may be a microprocessor or the processor may also be any conventional processor.
  • the computer program includes program instructions, and the computer program can be stored in a storage medium, which is a computer-readable storage medium.
  • the program instructions are executed by at least one processor in the computer system to implement the process steps of the foregoing method embodiments.
  • the storage medium may be a computer-readable storage medium.
  • the storage medium stores a computer program, and when the computer program is executed by the processor, the processor executes the following steps:
  • the congestion window value is updated, and the data packet is sent back by using the slow start algorithm according to the congestion window value to obtain the feedback confirmation character.
  • the processor further implements the following steps before executing the computer program to implement the step of setting the congestion window value:
  • the reduced congestion window value is increased linearly.
  • the processor when the processor executes the computer program to implement the step of updating the congestion window value, it specifically implements the following steps:
  • the congestion window value is increased exponentially.
  • the processor when the processor executes the computer program to implement the step of exponentially increasing the congestion window value, it specifically implements the following steps:
  • the congestion window value is increased exponentially to the second power.
  • the storage medium may be a U disk, a mobile hard disk, a read-only memory (Read-Only Memory, ROM), a magnetic disk or an optical disk, and other computer-readable storage media that can store program codes.
  • ROM Read-Only Memory
  • the disclosed device and method may be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of each unit is only a logical function division, and there may be other division methods in actual implementation.
  • multiple units or components can be combined or integrated into another system, or some features can be omitted or not implemented.
  • the steps in the method of the embodiment of the present application can be adjusted, merged, and deleted in order according to actual needs.
  • the units in the devices in the embodiments of the present application may be combined, divided, and deleted according to actual needs.
  • the functional units in the various embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a storage medium.
  • the technical solution of this application is essentially or the part that contributes to the existing technology, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium It includes several instructions to make a computer device (which may be a personal computer, a terminal, or a network device, etc.) execute all or part of the steps of the method described in each embodiment of the present application.

Abstract

本发明涉及拥塞控制方法、装置、计算机设备及存储介质,该方法包括设定拥塞窗口值;根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;根据反馈确认字符判断是否出现丢包;若是,则对数据分组快速重传;对拥塞窗口值进行快速恢复,并返回根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;若否,则判断拥塞窗口值是否大于设定阈值;若是,则对拥塞窗口值进行拥塞避免处理,并返回根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;若否,则对拥塞窗口值进行更新,并返回根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符。本发明实现提高系统资源利用率,高效可靠。

Description

拥塞控制方法、装置、计算机设备及存储介质
本申请是以申请号为201910314151.7、申请日为2019年4月18日的中国专利申请为基础,并主张其优先权,该申请的全部内容在此作为整体引入本申请中。
技术领域
本申请涉及数据传输控制方法,更具体地说是指拥塞控制方法、装置、计算机设备及存储介质。
背景技术
TCP(传输控制协议,Transmission Control Protocol)是一种被广泛应用的全连接可靠数据传输协议。简单地说,TCP协议在数据的发送方和接收方之间建立连接,为每个发出的数据分组分配一个序号,当数据的发送方收到接收方关于某个分组的反馈ACK(确认字符,Acknowledgement)时,发送方确认数据分组已发送成功,如果接收方察觉到接收到的分组失序,会重新发送未失序的最后一条数据分组的反馈ACK。,当消息的发送方连续收到3条同样的ACK时,说明接收方没有收到该ACK所对应的下一个数据分组,因此开始数据分组重传。相比于UDP协议,TCP对每一个发出的数据分组负责。
网络技术极大地推动力社会生产和人们生活的进步。但随着网络应用,尤其是无线网络应用的不断普及,数据流量也出现了快速地增长。因此在TCP协议的应用实践中,发送方向接收方所发送的数据分组也持续增多,近年来,TCP采用了一种拥塞控制机制TCP Reno来防止因为发送方消息发送过快所导致的拥塞,进而防止丢包的现象。然而,在TCP Reno原型中,在出现拥塞而导致丢包 之后,发送方发送数据分组的速度大幅下降,使得在完成丢包分组的重传之余,往往有较多的带宽空闲,造成资源浪费。
因此,有必要设计一种新的方法,实现由拥塞而造成的丢包都能得到重传的同时,对带宽尽可能地加以利用,提高系统资源利用率。
申请内容
本申请的目的在于克服现有技术的缺陷,提供拥塞控制方法、装置、计算机设备及存储介质。
为实现上述目的,本申请采用以下技术方案:拥塞控制方法,包括:
设定拥塞窗口值;
根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
根据所述反馈确认字符判断是否出现丢包;
若是,则对所述数据分组快速重传;
对所述拥塞窗口值进行快速恢复,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
若否,则判断所述拥塞窗口值是否大于设定阈值;
若是,则对拥塞窗口值进行拥塞避免处理,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
若否,则对拥塞窗口值进行更新,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符。
其进一步技术方案为:所述设定拥塞窗口值之前,还包括:
获取与接收方的TCP连接。
其进一步技术方案为:所述根据所述反馈确认字符判断是否出现丢包,包括:
获取上一反馈确认字符对应的数据分组,以得到对比数据分组;
判断所述反馈确认字符是否为对比数据分组相邻的下一数据分组对应的反馈确认字符;
若是,则出现丢包;
若否,则不出现丢包。
其进一步技术方案为:所述对所述拥塞窗口值进行快速恢复,包括:
减少拥塞窗口值;
对设定阈值进行重新设置;
对减少后的拥塞窗口值进行线性增长。
其进一步技术方案为:所述对拥塞窗口值进行拥塞避免处理,包括:
对拥塞窗口值进行线性增长。
其进一步技术方案为:所述对拥塞窗口值进行更新,包括:
对拥塞窗口值进行指数增长。
其进一步技术方案为:所述对拥塞窗口值进行指数增长,包括:
对拥塞窗口值进行二次幂的指数增长。
本申请还提供了拥塞控制装置,包括:
设定单元,用于设定拥塞窗口值;
发送单元,用于根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
丢包判断单元,用于根据所述反馈确认字符判断是否出现丢包;
重传单元,用于若是,则对所述数据分组快速重传;
快速恢复单元,用于对所述拥塞窗口值进行快速恢复,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
拥塞窗口值判断单元,用于若否,则判断所述拥塞窗口值是否大于设定阈值;
拥塞避免单元,用于若是,则对拥塞窗口值进行拥塞避免处理,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
更新单元,用于若否,则对拥塞窗口值进行更新,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符。
本申请还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
本申请还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述的方法。
本申请与现有技术相比的有益效果是:本申请通过采用慢启动算法发送数据分组,在没有出现丢包的情况下,对拥塞窗口值与设定阈值进行对比,当出现拥塞情况时,对拥塞窗口值由指数增长更改为线性增长,以进行拥塞避免,当出现丢包时,对丢失的数据分组进行重传,并对拥塞窗口值进行快速恢复,尽快恢复发送方的发送速度,以解决传统的TCP Reno拥塞控制机制中分组丢包发生后的一段时间内系统资源无法充分利用的问题,实现由拥塞而造成的丢包都能得到重传的同时,对带宽尽可能地加以利用,提高系统资源利用率,高效可靠。
下面结合附图和具体实施例对本申请作进一步描述。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实 施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的拥塞控制方法的应用场景示意图;
图2为本申请实施例提供的拥塞控制方法的流程示意图;
图3为本申请实施例提供的拥塞控制方法的子流程示意图;
图4为本申请实施例提供的拥塞控制方法的子流程示意图;
图5为本申请实施例提供的拥塞窗口值与轮次的关系示意图;
图6为本申请另一实施例提供的拥塞控制方法的流程示意图;
图7为本申请实施例提供的拥塞控制装置的示意性框图;
图8为本申请另一实施例提供的拥塞控制装置的示意性框图;
图9为本申请实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个” 及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1和图2,图1为本申请实施例提供的拥塞控制方法的应用场景示意图。图2为本申请实施例提供的拥塞控制方法的示意性流程图。该拥塞控制方法应用于服务器中,该服务器与终端进行数据传输,服务器发送数据至终端,发送过程中进行拥塞控制,服务器作为基于TCP协议发送数据分组的发送方;终端作为基于TCP协议接收发送方发来的数据分组的接收方。
图2是本申请实施例提供的拥塞控制方法的流程示意图。如图2所示,该方法包括以下步骤S110至S180。
S110、设定拥塞窗口值。
在本实施例中,拥塞窗口值是指发送方在某个时刻可以发送的数据分组的上限值。
具体地,发送方设置一个较小的拥塞窗口值,比如初定拥塞窗口值win_con=1。
S120、根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符。
在本实施例中,反馈确认字符是指当接收方收到发送方发送的数据分组时返回的关于该数据分组的字符。
具体地,在发送方刚开始发送数据分组时并不知道网络负荷,如果一开始就发送大量数据,可能立即造成拥塞。以此,慢启动的算法的所用在于以较慢发送速度开始,逐步增加发送数据分组的速度,避免在不知道网络带宽的情况 下立即造成拥塞。
S130、根据所述反馈确认字符判断是否出现丢包。
在本实施例中,在TCP协议中,拥塞往往造成数据分组丢包,即某些数据分组在发出后被丢弃。因此,将发生丢包作为判断TCP协议系统发生拥塞的依据。
在一实施例中,请参阅图4,上述的步骤S130可包括步骤S131~S134。
S131、获取上一反馈确认字符对应的数据分组,以得到对比数据分组;
S132、判断所述反馈确认字符是否为对比数据分组相邻的下一数据分组对应的反馈确认字符;
S133、若是,则出现丢包;
S134、若否,则不出现丢包。
当接收方接收到数据分组n后,返回给发送方一个反馈确认字符。如果接下来接收方收到的不是数据分组n+1,这里假设由于拥塞致使n+1被丢弃,接收方接收到数据分组n+2,接收方即判断失序,仍然返回给发送反馈确认字符。发送方持续按序发送数据分组n+3和n+4,接收方仍然返回反馈确认字符。当连续收到三个同样的反馈确认字符后,则该数据分组n+1出现丢包。
S140、若是,则对所述数据分组快速重传。
当出现数组分组丢包时需要及时重传。拥塞窗口值win_con的不断增长,直至数据分组丢包的发生,即可以判断分组发生拥塞,快速重传用于发送方及时判断发送失败的分组,并及时重传,减少系统资源浪费。
S150、对所述拥塞窗口值进行快速恢复,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符。
在拥塞发生后,立即降低拥塞窗口值win_con使系统立即脱离拥塞状态, 并为重传数组分组预留一定的资源。快速重传用于即使恢复发送方的发送速度,减少系统带宽资源的浪费。
在一实施例中,请参阅图4,上述的步骤S150可包括步骤S151~S153。
S151、减少拥塞窗口值。
当出现拥塞时,需要立刻减小系统的拥塞窗口值,以使得整个数据分组传输过程脱离拥塞状态,具体,可按照win_con (t)=min(win_con (t-1)/2,win_rec)减少拥塞窗口值,其中,win_con (t)为拥塞窗口值,win_con (t-1)为上一拥塞窗口值,win_rec表示通知窗口,由接收方设置。
S152、对设定阈值进行重新设置。
在本实施例中,每次传输一个数据分组后,需要对拥塞窗口值的大小与设定阈值进行对比,以及时得到是否发生拥塞。
为进一步减小系统带宽资源浪费,阈值thres被立即设置为
Figure PCTCN2019116605-appb-000001
阈值thres表示当某时刻发送方发送分组的数量达到该阈值时,发送方进入拥塞避免阶段。
S153、对减少后的拥塞窗口值进行线性增长。
在当前的拥塞窗口值win_con (t)基础上,发送方继续以慢启动算法的指数增长模式,即win_con (t+1)=win_con (t)+(t-t') 2,其中t为当前的轮次,t'为发生丢包,即拥塞发生时的轮次,win_con (t+1)表示下一拥塞窗口值。当win_con≥thres时,系统进入下一个拥塞避免算法。此时拥塞窗口win_con继续线性增长,即:win_con (t+1)=win_con (t)+MSS,其中,MSS表示发送方所能发送的一个分组的最大长度。
S160、若否,则判断所述拥塞窗口值是否大于设定阈值。
在本实施例中,在采用慢启动算法发送数据分组时,拥塞窗口值win_con是指 数增长的,为了防止拥塞窗口值win_con后期增长过快而导致突然拥塞的情况,因此需要对每一次的拥塞窗口值进行与设定阈值的对比,及时判断是否出现拥塞。该设定阈值three是初步设定的阈值,计算方式为thres=max(MSS×2,len_trans/2);len_trans为当前正在传送中(尚未收到反馈确认字符)的数据分组数量;MSS表示发送方所能发送的一个分组的最大长度。
S170、若是,则对拥塞窗口值进行拥塞避免处理,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符。
在本实施例中,当出现拥塞情况时,即所述拥塞窗口值大于设定阈值时,对拥塞窗口值进行线性增长。因此拥塞避免算法的作用在于减缓拥塞窗口值win_con的增长趋势。但该算法始终在拥塞发生前,若拥塞窗口值win_con的值超过了阈值thres,发送方则在以后的若干个轮次内,每次将拥塞窗口值win_con扩大一个MSS的长度,即由指数增长变为线性增长。当出现拥塞时,因此,在慢启动阶段,拥塞窗口值win_con的值的变化情况由如下函数所示:win_con (t+1)=win_con (t)+MSS;win_con (t+1)表示下一拥塞窗口值,win_con (t)为拥塞窗口值,MSS表示发送方所能发送的一个分组的最大长度。
S180、若否,则对拥塞窗口值进行更新,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符。
具体地,对拥塞窗口值进行指数增长。
在本实施例中,对拥塞窗口值进行二次幂的指数增长。
当没有出现拥塞和丢包时,发送方首先设置一个较小的拥塞窗口值win_con=1,当然,可以依据实际情况设置为其他数值。发送方开始向接送放发送数据分组,在收到接收方的反馈确认字符后,发送方设置拥塞窗口值win_con=2,即在下一轮次发送2个数据分组。以此类推,只要发送方收到当前 轮次所有数据分组的反馈确认字符,即没有发生数据分组丢包的情况,,发送方都在下一个轮次将拥塞窗口变为当前的2倍。拥塞窗口值win_con在慢启动算法中的变化规律为win_con (t+1)=win_con (t)×2。
上述的拥塞窗口值与轮次的关系如图5所示。
该拥塞控制方法可以应用于常见的网络数据传输。
上述的拥塞控制方法,通过采用慢启动算法发送数据分组,在没有出现丢包的情况下,对拥塞窗口值与设定阈值进行对比,当出现拥塞情况时,对拥塞窗口值由指数增长更改为线性增长,以进行拥塞避免,当出现丢包时,对丢失的数据分组进行重传,并对拥塞窗口值进行快速恢复,尽快恢复发送方的发送速度,以解决传统的TCP Reno拥塞控制机制中分组丢包发生后的一段时间内系统资源无法充分利用的问题,实现由拥塞而造成的丢包都能得到重传的同时,对带宽尽可能地加以利用,提高系统资源利用率,高效可靠。
图6是本申请另一实施例提供的一种拥塞控制方法的流程示意图。如图6所示,本实施例的拥塞控制方法包括步骤S210-S290。其中步骤S220-S290与上述实施例中的步骤S110-S180类似,在此不再赘述。下面详细说明本实施例中所增加的步骤S210。
S210、获取与接收方的TCP连接。
通过三次握手准备,数据发送方和接收方之间建立了一条TCP连接。发送方开始向接送放发送数据分组。
图7是本申请实施例提供的一种拥塞控制装置300的示意性框图。如图7所示,对应于以上拥塞控制方法,本申请还提供一种拥塞控制装置300。该拥塞控制装置300包括用于执行上述拥塞控制方法的单元,该装置可以被配置于服务器中。
具体地,请参阅图7,该拥塞控制装置300包括:
设定单元302,用于设定拥塞窗口值;
发送单元303,用于根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
丢包判断单元304,用于根据所述反馈确认字符判断是否出现丢包;
重传单元305,用于若是,则对所述数据分组快速重传;
快速恢复单元306,用于对所述拥塞窗口值进行快速恢复,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
拥塞窗口值判断单元307,用于若否,则判断所述拥塞窗口值是否大于设定阈值;
拥塞避免单元308,用于若是,则对拥塞窗口值进行拥塞避免处理,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
更新单元309,用于若否,则对拥塞窗口值进行更新,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符。
在一实施例中,所述丢包判断单元304包括:
分组获取子单元,用于获取上一反馈确认字符对应的数据分组,以得到对比数据分组;
字符判断子单元,用于判断所述反馈确认字符是否为对比数据分组相邻的下一数据分组对应的反馈确认字符;若是,则出现丢包;若否,则不出现丢包。
在一实施例中,所述快速恢复单元306包括:
减少子单元,用于减少拥塞窗口值;
重设子单元,用于对设定阈值进行重新设置;
线性增长子单元,用于对减少后的拥塞窗口值进行线性增长。
图8是本申请另一实施例提供的一种拥塞控制装置300的示意性框图。如图8所示,本实施例的拥塞控制装置300是上述实施例的基础上增加了连接单元301。
所述连接单元301,用于获取与接收方的TCP连接。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述拥塞控制装置300和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述拥塞控制装置300可以实现为一种计算机程序的形式,该计算机程序可以在如图9所示的计算机设备上运行。
请参阅图9,图9是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是服务器。
参阅图9,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种拥塞控制方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种拥塞控制方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解, 图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:
设定拥塞窗口值;
根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
根据所述反馈确认字符判断是否出现丢包;
若是,则对所述数据分组快速重传;
对所述拥塞窗口值进行快速恢复,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
若否,则判断所述拥塞窗口值是否大于设定阈值;
若是,则对拥塞窗口值进行拥塞避免处理,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
若否,则对拥塞窗口值进行更新,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符。
在一实施例中,处理器502在实现所述设定拥塞窗口值步骤之前,还实现如下步骤:
获取与接收方的TCP连接。
在一实施例中,处理器502在实现所述根据所述反馈确认字符判断是否出现丢包步骤时,具体实现如下步骤:
获取上一反馈确认字符对应的数据分组,以得到对比数据分组;
判断所述反馈确认字符是否为对比数据分组相邻的下一数据分组对应的反馈确认字符;
若是,则出现丢包;
若否,则不出现丢包。
在一实施例中,处理器502在实现所述对所述拥塞窗口值进行快速恢复步骤时,具体实现如下步骤:
减少拥塞窗口值;
对设定阈值进行重新设置;
对减少后的拥塞窗口值进行线性增长。
在一实施例中,处理器502在实现所述对拥塞窗口值进行拥塞避免处理步骤时,具体实现如下步骤:
对拥塞窗口值进行线性增长。
在一实施例中,处理器502在实现所述对拥塞窗口值进行更新步骤时,具体实现如下步骤:
对拥塞窗口值进行指数增长。
在一实施例中,处理器502在实现所述对拥塞窗口值进行指数增长步骤时,具体实现如下步骤:
对拥塞窗口值进行二次幂的指数增长。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(Central Processing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬 件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本申请还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中该计算机程序被处理器执行时使处理器执行如下步骤:
设定拥塞窗口值;
根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
根据所述反馈确认字符判断是否出现丢包;
若是,则对所述数据分组快速重传;
对所述拥塞窗口值进行快速恢复,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
若否,则判断所述拥塞窗口值是否大于设定阈值;
若是,则对拥塞窗口值进行拥塞避免处理,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
若否,则对拥塞窗口值进行更新,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符。
在一实施例中,所述处理器在执行所述计算机程序而实现所述设定拥塞窗口值步骤之前,还实现如下步骤:
获取与接收方的TCP连接。
在一实施例中,所述处理器在执行所述计算机程序而实现所述根据所述反馈确认字符判断是否出现丢包步骤时,具体实现如下步骤:
获取上一反馈确认字符对应的数据分组,以得到对比数据分组;
判断所述反馈确认字符是否为对比数据分组相邻的下一数据分组对应的反馈确认字符;
若是,则出现丢包;
若否,则不出现丢包。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对所述拥塞窗口值进行快速恢复步骤时,具体实现如下步骤:
减少拥塞窗口值;
对设定阈值进行重新设置;
对减少后的拥塞窗口值进行线性增长。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对拥塞窗口值进行拥塞避免处理步骤时,具体实现如下步骤:
对拥塞窗口值进行线性增长。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对拥塞窗口值进行更新步骤时,具体实现如下步骤:
对拥塞窗口值进行指数增长。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对拥塞窗口值进行指数增长步骤时,具体实现如下步骤:
对拥塞窗口值进行二次幂的指数增长。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory, ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本申请实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (10)

  1. 拥塞控制方法,其特征在于,包括:
    设定拥塞窗口值;
    根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
    根据所述反馈确认字符判断是否出现丢包;
    若是,则对所述数据分组快速重传;
    对所述拥塞窗口值进行快速恢复,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
    若否,则判断所述拥塞窗口值是否大于设定阈值;
    若是,则对拥塞窗口值进行拥塞避免处理,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
    若否,则对拥塞窗口值进行更新,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符。
  2. 根据权利要求1所述的拥塞控制方法,其特征在于,所述设定拥塞窗口值之前,还包括:
    获取与接收方的TCP连接。
  3. 根据权利要求1所述的拥塞控制方法,其特征在于,所述根据所述反馈确认字符判断是否出现丢包,包括:
    获取上一反馈确认字符对应的数据分组,以得到对比数据分组;
    判断所述反馈确认字符是否为对比数据分组相邻的下一数据分组对应的反馈确认字符;
    若是,则出现丢包;
    若否,则不出现丢包。
  4. 根据权利要求1所述的拥塞控制方法,其特征在于,所述对所述拥塞窗口值进行快速恢复,包括:
    减少拥塞窗口值;
    对设定阈值进行重新设置;
    对减少后的拥塞窗口值进行线性增长。
  5. 根据权利要求1所述的拥塞控制方法,其特征在于,所述对拥塞窗口值进行拥塞避免处理,包括:
    对拥塞窗口值进行线性增长。
  6. 根据权利要求1所述的拥塞控制方法,其特征在于,所述对拥塞窗口值进行更新,包括:
    对拥塞窗口值进行指数增长。
  7. 根据权利要求1所述的拥塞控制方法,其特征在于,所述对拥塞窗口值进行指数增长,包括:
    对拥塞窗口值进行二次幂的指数增长。
  8. 拥塞控制装置,其特征在于,包括:
    设定单元,用于设定拥塞窗口值;
    发送单元,用于根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
    丢包判断单元,用于根据所述反馈确认字符判断是否出现丢包;
    重传单元,用于若是,则对所述数据分组快速重传;
    快速恢复单元,用于对所述拥塞窗口值进行快速恢复,并返回所述根据拥 塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
    拥塞窗口值判断单元,用于若否,则判断所述拥塞窗口值是否大于设定阈值;
    拥塞避免单元,用于若是,则对拥塞窗口值进行拥塞避免处理,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符;
    更新单元,用于若否,则对拥塞窗口值进行更新,并返回所述根据拥塞窗口值采用慢启动算法发送数据分组,以得到反馈确认字符。
  9. 一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-7中任一项所述的方法。
  10. 一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如权利要求1-7中任一项所述的方法。
PCT/CN2019/116605 2019-04-18 2019-11-08 拥塞控制方法、装置、计算机设备及存储介质 WO2020211341A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910314151.7A CN110048955A (zh) 2019-04-18 2019-04-18 拥塞控制方法、装置、计算机设备及存储介质
CN201910314151.7 2019-04-18

Publications (1)

Publication Number Publication Date
WO2020211341A1 true WO2020211341A1 (zh) 2020-10-22

Family

ID=67277870

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/116605 WO2020211341A1 (zh) 2019-04-18 2019-11-08 拥塞控制方法、装置、计算机设备及存储介质

Country Status (2)

Country Link
CN (1) CN110048955A (zh)
WO (1) WO2020211341A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110048955A (zh) * 2019-04-18 2019-07-23 深圳市赛为智能股份有限公司 拥塞控制方法、装置、计算机设备及存储介质
CN110784344B (zh) * 2019-10-17 2022-05-03 京信网络系统股份有限公司 数据处理方法、装置、计算机设备和存储介质
CN116055402A (zh) * 2023-01-05 2023-05-02 果子(青岛)数字技术有限公司 用于大数据和边缘计算的高速通信网络优化方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101094047A (zh) * 2007-07-06 2007-12-26 中国人民解放军国防科学技术大学 基于网络状态测量的分阶段慢启动传输控制方法
CN101854738A (zh) * 2010-05-21 2010-10-06 南京邮电大学 一种用于卫星网络的传输控制协议方法
US8565242B2 (en) * 2008-11-04 2013-10-22 Blackberry Limited Transport protocol performance using network bit rate information
CN110048955A (zh) * 2019-04-18 2019-07-23 深圳市赛为智能股份有限公司 拥塞控制方法、装置、计算机设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102468941B (zh) * 2010-11-18 2014-07-30 华为技术有限公司 网络丢包处理方法及装置
CN107800642A (zh) * 2016-08-31 2018-03-13 北京金山云网络技术有限公司 一种拥塞控制方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101094047A (zh) * 2007-07-06 2007-12-26 中国人民解放军国防科学技术大学 基于网络状态测量的分阶段慢启动传输控制方法
US8565242B2 (en) * 2008-11-04 2013-10-22 Blackberry Limited Transport protocol performance using network bit rate information
CN101854738A (zh) * 2010-05-21 2010-10-06 南京邮电大学 一种用于卫星网络的传输控制协议方法
CN110048955A (zh) * 2019-04-18 2019-07-23 深圳市赛为智能股份有限公司 拥塞控制方法、装置、计算机设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HAN, PENG: "Research and improvement on congestion control mechanism of SCTP", NANJING UNIVERSITY OF POSTS AND TELECOMMUNICATIONS, MASTER'S THESIS, 30 April 2012 (2012-04-30), DOI: 20200120121421X *

Also Published As

Publication number Publication date
CN110048955A (zh) 2019-07-23

Similar Documents

Publication Publication Date Title
WO2020211341A1 (zh) 拥塞控制方法、装置、计算机设备及存储介质
US8432806B2 (en) Data transmission control method and data transmission device
WO2017101503A1 (zh) 一种数据传送方法、发送节点、接收节点及数据传送系统
JP4589764B2 (ja) スプリアスタイムアウトに対する応答
CN106789718B (zh) 数据传输的拥塞控制方法、设备、服务器及可编程设备
JP4878391B2 (ja) 適応的なキュー待ち時間を伴うスケジューリング及びキューマネージメント
KR100787294B1 (ko) 이동 통신 기지국의 티씨피 성능 향상 장치
EP3255847A1 (en) Transmission control protocol data packet transmission method, transmission device and system
JP2002532000A (ja) 自動再送要求プロトコル
JPWO2008023656A1 (ja) 通信装置
JPWO2008044653A1 (ja) 通信システム、通信装置、通信方法
EP2996275A1 (en) Link processing method and mobile terminal in multiplexing control protocol
JP2003158558A (ja) パケット通信方法及び提案ノード
WO2012149762A1 (zh) 拥塞控制方法及设备
US20030128672A1 (en) Transmission and flow control
WO2018177014A1 (zh) 一种调整终端发送数据的速率的方法及装置
WO2016201904A1 (zh) 一种基于tcp的数据传输方法及装置
JP2002135357A (ja) 通信システムにおけるデータ流れの制御方法
US20140355623A1 (en) Transmission Control Protocol (TCP) Connection Control Parameter In-Band Signaling
WO2017107148A1 (zh) 一种数据传输方法及网络侧设备
US11503500B2 (en) Method and a user equipment (UE) for transport layer optimization using a preemptive cross layer signaling
US10728131B2 (en) Terminal and communication method thereof
EP3939191B1 (en) Device and method for delivering acknowledgment in network transport protocols
JP4001593B2 (ja) 携帯端末機のパケット受信方法
CN108566264B (zh) 触发无线链路控制层确认模式状态报告的方法及通信系统

Legal Events

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

Ref document number: 19924933

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 25/02/2022)

122 Ep: pct application non-entry in european phase

Ref document number: 19924933

Country of ref document: EP

Kind code of ref document: A1