CN112511451B - Method and server for controlling BBR convergence period length - Google Patents

Method and server for controlling BBR convergence period length Download PDF

Info

Publication number
CN112511451B
CN112511451B CN202011330146.4A CN202011330146A CN112511451B CN 112511451 B CN112511451 B CN 112511451B CN 202011330146 A CN202011330146 A CN 202011330146A CN 112511451 B CN112511451 B CN 112511451B
Authority
CN
China
Prior art keywords
convergence
stage
gain coefficient
bbr
round
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN202011330146.4A
Other languages
Chinese (zh)
Other versions
CN112511451A (en
Inventor
周颖
马力文
郑颖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing University of Posts and Telecommunications
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 Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Priority to CN202011330146.4A priority Critical patent/CN112511451B/en
Publication of CN112511451A publication Critical patent/CN112511451A/en
Application granted granted Critical
Publication of CN112511451B publication Critical patent/CN112511451B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related

Landscapes

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

Abstract

The invention discloses a method and a server for controlling the length of a BBR convergence period, wherein the method comprises the following steps: s100: determining whether to enter a bandwidth detection stage, wherein the bandwidth detection stage is divided into a speed-up stage, a speed-down stage and a convergence stage according to a gain coefficient, the gain coefficient of the speed-up stage is greater than 1, the gain coefficient of the speed-down stage is greater than 0 and less than 1, and the gain coefficient of the convergence stage is equal to 1; s200: sending a data packet and a detection message, calculating the round-trip delay of the data packet, and if the round-trip delay is smaller than the latest minimum round-trip delay, setting a convergence ending identifier with an initial value of 0 as 1; s300: and confirming whether the convergence stage is ended or not according to the convergence ending identifier and the current gain coefficient. The server according to the present invention can implement the method for controlling BBR convergence cycle length in the above technical scheme, flexibly determine the cycle length of the convergence stage according to the round trip delay, improve the utilization rate of the network bandwidth, and improve the throughput of the transmission link.

Description

Method and server for controlling BBR convergence period length
Technical Field
The invention relates to the field of TCP congestion control, in particular to a method and a server for controlling BBR convergence cycle length.
Background
The BBR algorithm is an open source TCP congestion control algorithm proposed by Google in 2016, and is loaded in a Linux kernel module mode, so that the network throughput of a Linux server can be maximized. Recently, researches show that the BBR algorithm has excellent performance in a large-delay network environment, and cannot achieve the expected effect in a common network bandwidth occupation capacity which is inferior to that of a congestion control algorithm based on packet loss. Therefore, for the increasingly expanded bandwidth resources of the 5G network, the BBR algorithm needs to improve the sensitivity of bandwidth detection to ensure the ideal resource allocation rate and fairness.
Disclosure of Invention
The purpose of the invention is as follows: the invention aims to provide a method for controlling the BBR convergence cycle length, which can flexibly adjust the cycle length of the convergence stage according to the bandwidth delay condition and improve the transmission performance and the bandwidth utilization rate on the premise of considering fairness.
Another objective of the present invention is to provide a server, which can implement the above method for controlling BBR convergence length, so as to improve the utilization rate of bandwidth by the server.
The technical scheme is as follows: the method for controlling the length of the BBR convergence period comprises the following steps:
s100: determining whether to enter a bandwidth detection stage, wherein the bandwidth detection stage is divided into an acceleration stage, a deceleration stage and a convergence stage according to a gain coefficient, the gain coefficient of the acceleration stage is greater than 1, the gain coefficient of the deceleration stage is greater than 0 and less than 1, the gain coefficient of the convergence stage is equal to 1, and the step S100 includes:
s110: setting and starting a monitoring timer for monitoring the convergence end identifier, the monitoring timer being reset at the end of the convergence phase;
s200: sending a data packet and a detection message, calculating the round-trip delay of the data packet, and if the round-trip delay is smaller than the latest minimum round-trip delay, setting a convergence ending identifier with an initial value of 0 as 1;
s300: determining whether to terminate the convergence phase according to the convergence termination identifier and the current gain coefficient, wherein step S300 includes:
s310, if the gain coefficient is 1 and the convergence ending identifier is 1, interrupting the convergence stage, returning to the speed increasing stage, and returning to the step S200;
s320, if the convergence phase identifier continues to be 0 until the bandwidth detection phase is ended, returning to the step S100.
Furthermore, the speed-up stage lasts for 1 time delay detection time, the speed-down stage lasts for 1 time delay detection time, and the convergence stage lasts for 6 time delay detection times at most.
The server according to the present invention has a storage medium storing a program configured to execute the above method of controlling the BBR convergence period length when the program is run.
Has the beneficial effects that: compared with the prior art, the invention has the following advantages: the cycle length of the convergence stage is flexibly adjusted according to the round-trip delay, the utilization rate of the bandwidth is improved, and the network throughput under the ordinary network bandwidth environment is improved.
Drawings
FIG. 1 is a flow chart of a first embodiment of the method of the present invention;
FIG. 2 is a flow chart of a second embodiment of the method of the present invention;
FIG. 3 is a graph comparing I/O traffic when downloading 166M files;
FIG. 4 is a comparison of I/O traffic when a 434M file is downloaded;
FIG. 5 is a comparison of packet lengths when a 166M file is downloaded;
FIG. 6 is a comparison of packet lengths when files 434M are downloaded;
FIG. 7 is a graph of transmission throughput when a file of 166M is downloaded before modification;
FIG. 8 is a diagram of the transfer throughput when a modified file of 166M is downloaded;
FIG. 9 is a graph of transmission throughput for downloading 434M files before modification;
FIG. 10 is a diagram of the transfer throughput when a modified file 434M is downloaded;
FIG. 11 is a round-trip delay diagram of downloading a 166M file before modification;
FIG. 12 is a modified round-trip delay diagram for downloading a 166M file;
FIG. 13 is a round-trip latency diagram for downloading 434M files before modification;
FIG. 14 is a modified round-trip delay diagram for downloading 434M files;
FIG. 15 is a diagram of the transfer window size and transmission bytes for a file of 166M before modification;
FIG. 16 is a diagram of the transmission window size and transmission bytes when a modified file of 166M is downloaded;
FIG. 17 is a diagram of the transfer window size and transmission bytes for a download 434M file before modification;
FIG. 18 is a diagram of the transfer window size and transmission bytes for a modified download 434M file;
fig. 19 is a main performance evaluation chart before and after modification.
Detailed Description
The technical scheme of the invention is further explained by combining the attached drawings.
Referring to fig. 1, the method for controlling the BBR convergence period length according to the embodiment of the present invention specifically includes the following steps:
s100: confirming whether to enter a bandwidth detection stage;
s200: sending a data packet and a detection message, calculating the round-trip delay of the data packet, and if the round-trip delay is smaller than the latest minimum round-trip delay, setting a convergence ending identifier with an initial value of 0 as 1;
s300: and confirming whether the convergence stage is ended or not according to the convergence ending identifier and the current gain coefficient.
The bandwidth detection stage is divided into a speed increasing stage, a speed reducing stage and a convergence stage, and the three stages are sequentially and circularly executed. The gain coefficient of the acceleration stage is larger than 1, the gain coefficient of the deceleration stage is larger than 0 and smaller than 1, and the gain coefficient of the convergence stage is equal to 1. When the device is in the speed increasing stage, the transmission speed is increased; in the deceleration stage, the transmission speed is reduced; in the convergence phase, the transmission speed is maintained at a stable value. If the link state is good, the BBR can converge to the stable state quickly, and does not need to stay for a long time in the convergence stage. By the method for controlling the BBR convergence period length, when the round-trip delay is detected to be smaller than the minimum round-trip delay recorded last time, the link state is good, the usable bandwidth is available, and the convergence ending identifier is set to be 1, so that the subsequent logic judgment is facilitated. And judging whether the convergence stage can be ended or not according to the current stage and the value of the ending identifier, flexibly adjusting the cycle length of the convergence stage according to the round-trip delay, and improving the utilization rate of the bandwidth.
Referring to fig. 2, in some embodiments, step S100 includes:
s110: setting and starting a monitoring timer for monitoring the convergence end identifier, the monitoring timer being reset at the end of the convergence phase.
After entering the bandwidth detection phase, a monitoring timer is set and started for monitoring the change of the convergence end identifier, and the monitoring timer is reset every time the convergence phase is ended due to interruption or after the convergence phase lasts for a preset maximum time. It will be appreciated that in some embodiments the watchdog timer also has a probe message counter and a reset and start function that requires the process control block of TCP to be invoked. The monitoring timer can be understood as a composite timer formed by combining a connection timer, a keep-alive timer and a detection timer.
Referring to fig. 2, in some embodiments, step S300 includes:
if the gain factor is 1 and the convergence completion flag is 1, S310 interrupts the convergence phase and returns to the speed-up phase, and returns to step S200.
S320, if the convergence phase identifier continues to be 0 until the bandwidth detection phase is ended, returning to step S100.
Namely, when the current convergence stage is in the convergence stage and the round-trip delay is smaller than the minimum round-trip delay in the last record, the current convergence stage can be immediately interrupted, and the current convergence stage returns to the acceleration stage, so that the transmission rate is increased, and the utilization rate of the bandwidth is increased. If the round-trip delay is not smaller than the minimum round-trip delay until the bandwidth detection stage is finished, finishing the convergence stage according to the normal flow and waiting for entering the bandwidth detection stage next time.
In this embodiment, the gain factor of the gain stage is 1.25, the gain factor of the deceleration stage is 0.75, the entire bandwidth detection stage lasts for 8 delay detection times, and the value of the delay detection time is taken from 200ms to 10s, i.e. the time range of the monitoring timer is 1.6s to 80s. In the whole bandwidth detection stage, the cyclic period array of the gain coefficient is [1.25,0.75,1,1,1,1,1,1] under normal conditions, that is, the acceleration stage lasts for 1 delay detection time, the deceleration stage lasts for 1 delay detection time, and the convergence stage lasts for 6 delay detection times. Depending on the round trip delay, the convergence phase may last from 1 to 6 delay probe times, i.e., from 200ms to 60s.
In this embodiment, the detection acknowledgement packet replied by the terminal does not carry any data, and the detection packet sent along with the data packet is not retransmitted if it is lost, so that the normal data transmission process is not affected. The number of probe packets equals the number of transmitted packets.
Fig. 3 to 19 are the results of the comparison test of the conventional BBR algorithm before modification and the BBR algorithm after modification according to the above BBR convergence period length control method performed in the same test environment in the local area network. The specific experimental environment is as follows: the operating system is utbuntu16.04, the kernel is 4.15.1, the memory is set to 4GB, the disk is 200GB, and the used processor is an Inter (R) Core (TM) i7-5500U with the CPU frequency of 2.40 GHZ. The HTTP protocol is used for file transfer. Before testing, the mtr command is used at a terminal to test the network environment of the experiment, the influence of the network self-problem on the experiment result is eliminated, the packet loss rate of the tested network is 0%, the maximum detection time is 10s, the time delay measured at the last side is 0.3s, the average time delay is 0.2s, the shortest time delay is 0.1s, the worst time delay is 0.4s, and the standard deviation is 0. The experimental network bandwidth is 1000Mb/s, and the supported link model is half-duplex: 10Mb; full duplex: 10Mb; half duplex: 100Mb; full duplex: 100Mb; full duplex: 1000Mb.
Referring to fig. 3 and 4, I/O flow charts of two experiments reflect the change of the transmission speed during the downloading process, and it can be found by comparison that the implemented algorithm can start downloading more quickly, the transmission speed is mostly above before modification, the minimum speed value is generally lower than that of the unmodified BBR algorithm, and the speed change range is larger. According to the BBR algorithm modified by the method for controlling the BBR convergence period length, the downloading time is shortened, the downloading speed is increased, the faster data flow can occupy more bandwidth, the speed is higher when a large file is downloaded, and the BBR occupies more fierce link bandwidth when downloading the larger file. The up-and-down jitter of the speed curve is aggravated in the modified algorithm, which shows that the convergence period is shortened, the speed curve does not uniformly jitter, and shows that the lengths of the convergence period are different according to real-time network data. Sacrificing some speed stability for large file transfers seeking shorter download times is entirely acceptable.
Referring to fig. 5 and 6, when the modified BBR algorithm downloads the 166M file, the number of packets with a length in the range of 80-639 bytes is reduced from 80 to 24, while the number of packets with a length of no less than 640 bytes is increased from 8653 to 11540, and particularly, the number of packets with a length in the range of 1280-5119 bytes is increased remarkably. When the 434M file is downloaded, the number of data packets with the length in the byte range of 80-159 and 640-1279 is reduced from 21 to 5, the number of data packets with the length not less than 1280 bytes is increased from 11480 to 35636, and particularly the number of data packets with the length in the byte range of 1280-2559 is obviously increased. In summary, the modified BBR reduces the number of small-length packets, increases the number of large-length packets, and improves the download speed as a whole.
Referring to fig. 7 to 10, points in the drawings indicate segment lengths, and the higher the position of a point is, the denser the distribution is, and the more data is transmitted. It can be seen from fig. 8 and 10 that the modified throughput curve spikes become higher and denser, which indicates that the link status is good and the BBR no longer maintains a long settling period, but rather probes the available bandwidth more frequently. Referring to fig. 7 and 8, the modified throughput graph has denser points, but the segment length is not significantly increased, and the points above the graph are sparse, which shows that the acceleration process is mainly obtained by increasing the number of transmitted data packets: 15647 packets were sent after completing the download before modification, and 24281 after modification. Referring to fig. 9 and 10, the modified throughput curve also has a high peak, a dense point distribution, and an increased number of points above the graph. This shows that the acceleration process is accomplished by increasing the amount of transmitted packets and increasing the packet length: the total number of packets transferred before the modification was 40959 and after the modification 65538, where the packets in the 640-1279 byte range were from 2664 to 8215 bursts. This shows that the larger the file transmitted, the better the modified BBR algorithm.
Referring to fig. 11 and 12, in the round trip delay image of the downloaded 166M file: the time for modifying the head-up and the back-down is mostly concentrated in 10 seconds, and the peak exceeding 20 seconds is much; the modified samples were concentrated within 5 seconds, and the 20-second peak was only 6. Referring to fig. 13 and 14, in the image corresponding to 434M, the round trip delay before modification is mostly concentrated within 10 seconds, and after modification, the round trip delay is concentrated on the x-axis, and the delay is very small; before modification, the number of sharp peaks exceeded 10, and after modification, 7. In general, the peak of the round trip delay after modification becomes lower and less, and the delay jitter becomes lower and less. This means that more bandwidth is detected after the modification, the transmission conditions become better and the transmission speed is faster.
Referring to fig. 15 to 18, ideally, when the amount of transmission data is completely equal to the window size, the bandwidth utilization rate is the highest. In the window size and transmission byte map, the more filled the blue is, the better, if a whole blank vertical line appears, it indicates that retransmission or emptying is occurring, i.e. there is no new data transmission. The red circles in the figure indicate the window size and it can be seen that the window curves for all four graphs grow very fast to a maximum. Referring to fig. 15 and 16, before modification, the amount of data sent apparently does not fill the window, and a large margin appears at the upper right. The window is filled as much as possible after modification. Referring to fig. 17 and 18, a large area of whiteout appears at the top left before modification, filling the window as much as possible after modification. The former and latter comparison shows that the modified BBR algorithm accelerates after detecting the available bandwidth, and more data packets are sent.
Referring to fig. 19, the experiment refers to 5 transmission performance indicators: round-trip delay, jitter strength, window size, transmission rate, throughput. The evaluation results are shown in fig. 9: (1) The round-trip delay peak of the modified BBR algorithm becomes lower and less, thereby reducing the transmission time and accelerating the transmission speed. (2) The modified algorithm reduces the length of a convergence period, improves the sensitivity of bandwidth detection and increases the jitter of the transmission speed. But this cost does not affect large file downloads that only seek transmission speed. (3) The BBR algorithm is sensitive to the response of the window size before and after modification, which benefits from the fact that the BBR determines the transmission rate only from real-time data: if the available bandwidth is large, the transmission is accelerated, and if the available bandwidth is small, the transmission rate is slowed. (4) the modified BBR obviously improves the data transmission speed. (5) Due to the fact that the transmission speed is increased, the throughput of the modified data transmission is high. In summary, under the condition of a good link state, the modified BBR algorithm improves the bandwidth detection sensitivity, obtains more available bandwidths, and accelerates the transmission speed. And the larger the file is transmitted, the more obvious the optimization effect is.
According to the server of an embodiment of the present invention, a program is stored in a storage medium of the server, and the program is configured to execute the method for controlling a BBR convergence period length according to an embodiment of the present invention when running. According to the server provided by the embodiment of the invention, by implementing the method for controlling the BBR convergence period length, the utilization rate of the server on the bandwidth is improved, the transmission rate is improved, and the downloading speed of large files is improved.

Claims (3)

1. A method for controlling BBR convergence period length is characterized by comprising the following steps:
s100: confirming whether a bandwidth detection stage is entered, wherein the bandwidth detection stage is divided into an acceleration stage, a deceleration stage and a convergence stage according to a gain coefficient, the gain coefficient of the acceleration stage is greater than 1, the gain coefficient of the deceleration stage is greater than 0 and less than 1, the gain coefficient of the convergence stage is equal to 1,
wherein, step S100 includes:
s110: setting and starting a monitoring timer for monitoring a convergence end identifier, the monitoring timer being reset at the end of the convergence phase;
s200: sending a data packet and a detection message, calculating the round-trip delay of the data packet, and if the round-trip delay is smaller than the latest minimum round-trip delay, setting a convergence ending identifier with an initial value of 0 as 1;
s300: determining whether to end the convergence stage according to the convergence end identifier and the current gain coefficient,
wherein, step S300 includes:
s310, if the gain coefficient is 1 and the convergence ending identifier is 1, interrupting the convergence stage, returning to the speed increasing stage, and returning to the step S200;
s320, if the convergence phase identifier continues to be 0 until the bandwidth detection phase is ended, returning to the step S100.
2. The method of claim 1, wherein the speed-up phase lasts 1 time delay probe time, the speed-down phase lasts 1 time delay probe time, and the convergence phase lasts 6 time delay probe times at most.
3. A server characterized by a storage medium having stored thereon a program arranged such that, when executed, the server performs the method of controlling BBR convergence period length according to claim 1 or 2.
CN202011330146.4A 2020-11-24 2020-11-24 Method and server for controlling BBR convergence period length Active CN112511451B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011330146.4A CN112511451B (en) 2020-11-24 2020-11-24 Method and server for controlling BBR convergence period length

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011330146.4A CN112511451B (en) 2020-11-24 2020-11-24 Method and server for controlling BBR convergence period length

Publications (2)

Publication Number Publication Date
CN112511451A CN112511451A (en) 2021-03-16
CN112511451B true CN112511451B (en) 2022-11-08

Family

ID=74958276

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011330146.4A Active CN112511451B (en) 2020-11-24 2020-11-24 Method and server for controlling BBR convergence period length

Country Status (1)

Country Link
CN (1) CN112511451B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114125920A (en) * 2021-10-25 2022-03-01 中国科学院计算技术研究所 BBRv2 bandwidth detection method and system based on time delay

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110572333A (en) * 2019-10-25 2019-12-13 中南大学 transmission rate adjusting method and congestion control algorithm in bandwidth detection stage

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105991462B (en) * 2015-03-02 2019-05-28 华为技术有限公司 Sending method, sending device and the system of transmission control protocol TCP data packet

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110572333A (en) * 2019-10-25 2019-12-13 中南大学 transmission rate adjusting method and congestion control algorithm in bandwidth detection stage

Also Published As

Publication number Publication date
CN112511451A (en) 2021-03-16

Similar Documents

Publication Publication Date Title
CN107171969B (en) Data transmission method, device and system
WO2021012869A1 (en) Transmission rate determination method and device, apparatus, and storage medium
CN111654447B (en) Message transmission method and device
EP3128704A1 (en) Method and apparatus for limiting rate by means of token bucket, and computer storage medium
CN109684228B (en) Performance test method, device, system and storage medium
EP2902914B1 (en) Data transmission method and device
CN113411262B (en) Method and device for setting large-scale receiving and unloading functions
CN112054965A (en) Congestion control method, equipment and computer readable medium
US11218413B2 (en) Congestion control management method derived from packets at a network adapter
CN112511451B (en) Method and server for controlling BBR convergence period length
CN104734985A (en) Data receiving flow control method and system
US20140223026A1 (en) Flow control mechanism for a storage server
CN113973085A (en) Congestion control method and device
US10467175B1 (en) Secure digital (SD) direct command for improving throughput with a reduced memory footprint
CN114513472A (en) Network congestion control method and device
US20080225858A1 (en) Data transferring apparatus and information processing system
CN116319569A (en) Network parameter updating method, network parameter updating device, medium and electronic equipment
CN110557341A (en) Method and device for limiting data current
CN115514710B (en) Weak connection flow management and control method based on self-adaptive sliding window
CN114125920A (en) BBRv2 bandwidth detection method and system based on time delay
CN115314439A (en) Flow control method and related device for data storage IO (input/output) request
CN110727518B (en) Data processing method and related equipment
WO2021013260A1 (en) Network transmission control method and apparatus
CN108418656B (en) LwIP delay ACK timer period self-adaption method based on data statistics
CN111526098B (en) Intelligent scene access flow control method, device and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant