CN116155825B - 一种bbr拥塞控制算法数据重传的优化方法 - Google Patents
一种bbr拥塞控制算法数据重传的优化方法 Download PDFInfo
- Publication number
- CN116155825B CN116155825B CN202310348531.9A CN202310348531A CN116155825B CN 116155825 B CN116155825 B CN 116155825B CN 202310348531 A CN202310348531 A CN 202310348531A CN 116155825 B CN116155825 B CN 116155825B
- Authority
- CN
- China
- Prior art keywords
- data packet
- bandwidth
- data
- time
- congestion window
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000005457 optimization Methods 0.000 title claims abstract description 14
- 230000008901 benefit Effects 0.000 claims abstract description 34
- 238000004364 calculation method Methods 0.000 claims abstract description 29
- 230000005540 biological transmission Effects 0.000 claims abstract description 25
- 238000012790 confirmation Methods 0.000 claims abstract description 18
- 238000011156 evaluation Methods 0.000 claims description 2
- 230000007246 mechanism Effects 0.000 abstract description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/27—Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及计算机领域,公开了一种BBR拥塞控制算法数据重传的优化方法,包括以下步骤:数据传输过程中发送端接收数据包的确认,检测到丢包时,用数据包的时延估计瓶颈缓冲区的大小,自适应地调节拥塞窗口;在调整拥塞窗口后,发送端根据采集的数据包的时延和速率样本,及时地更新BBR算法的估计带宽,调整发送速率;对于调整后的发送速率,结合丢包率和吞吐量计算估计带宽更新后的效益分数,若效益分数下降,则撤销更新。本发明所公开的方法设计了拥塞窗口自适应调节机制,解决了瓶颈缓冲区过小时BBR算法重传率过高的问题;在网络链路可用带宽下降时及时地更新估计带宽,缩短了BBR算法收敛的时间;在降低重传率的同时保证了吞吐量。
Description
技术领域
本发明涉及计算机网络领域,特别涉及一种BBR拥塞控制算法数据重传的优化方法。
背景技术
BBR是一种基于速率的拥塞控制算法,在互联网上得到了广泛的应用。在数据传输过程中,发送端发送数据,接收端接收到数据时给发送端发送确认消息,在发送端收到确认时BBR算法对应调整发送速率与拥塞控制窗口。与传统的基于丢包的拥塞控制算法相比,虽然BBR更有效的利用了带宽,但这种算法也导致了高重传率。理想情况下BBR维持传输中的数据为带宽延迟积大小,但由于数据包的聚合以及网络路由器具有处理突发流量的能力,BBR会经常地高估可用带宽,如果瓶颈缓冲区不够大,无法容纳过多的数据,就会导致较高的丢包率,大量的数据需要重新传输,给服务提供商带来额外的带宽成本。此外,BBR算法采用一个时间窗口内速率样本的最大值作为估计带宽,当可用带宽下降时,BBR不会及时更新带宽估计,继续根据高估的带宽发送数据,瓶颈缓冲区很快被塞满并开始丢弃数据包,造成大量重传。
目前已有的解决方案主要有两种,一种是在发现丢包时乘法降低拥塞窗口,另一种是为估计带宽乘上一个因子避免带宽高估。但是这两种方案都存在一定的问题,前者在高丢包场景下会一直降低拥塞窗口,后者难以适应复杂的网络情况,两者都会使得吞吐量降低。
发明内容
为解决上述技术问题,本发明提供了一种BBR拥塞控制算法数据重传的优化方法,以达到及时地更新估计带宽,使用一个效益函数评估更新前数据传输的效率,保证不会影响吞吐量的目的。
为达到上述目的,本发明的技术方案如下:
一种BBR拥塞控制算法数据重传的优化方法,包括以下步骤:
步骤S1、拥塞窗口调节:数据传输过程中发送端接收数据包的确认,检测到丢包时,用数据包的时延估计瓶颈缓冲区的大小,自适应地调节拥塞窗口;
步骤S2、带宽更新:在调整拥塞窗口后,发送端根据采集的数据包的时延和速率样本,及时地更新BBR算法的估计带宽,调整发送速率;
步骤S3、吞吐量评估:对于调整后的发送速率,结合丢包率和吞吐量计算估计带宽更新后的效益分数,若效益分数下降,则撤销更新,否则保留更新。
上述方案中,步骤S1具体方法如下:
S11、发送端接收到数据包的确认后,计算数据包的时延与接收速率;
数据包的时延计算方式如下:
数据包的接收速率的计算方式如下:
S12、检测到数据包丢失时,根据S11计算出的数据包的时延,计算网络链路瓶颈缓冲区与带宽延迟积的比值:
S13、使用S12得到的结果,调整拥塞窗口控制参数的大小,计算方式为:
之后调整拥塞窗口,计算方式为:
S14、在S13调整拥塞窗口后一个往返时间内未检测到丢包后,发送端收到数据包的确认时,调整拥塞窗口控制参数,计算方式为:
上述方案中,步骤S2具体方法如下:
S21、对于S11计算的数据包的时延和接收速率,记录满足以下条件的数据包样本:
S23、在S22的保存的数据包样本的数量超过30时,计算更新后的带宽,计算方式为:
S24、将当前BBR算法的估计带宽信息做备份,更新它的估计带宽为S23计算出的结果。
上述方案中,步骤S3具体方法如下:
S31、将数据传输过程中连续的时间划分成一个个的时间间隔T,计算每个时间间隔T内接收到的数据量,计算方式如下:
计算每个时间间隔T内未确认的数据量,计算方式如下:
S32、计算带宽更新前的数据传输的效益分数,对于S31中的每个时间间隔T内的效益分数计算方式如下:
其中,U为该时间间隔T内计算出的效益分数;
S34、对于S32与S33各计算带宽更新前后两个时间间隔T内的效益分数,分别计算带宽更新前后的效益分数的平均值,若带宽更新后效益分数降低,则撤销估计带宽的更新。
通过上述技术方案,本发明提供的一种BBR拥塞控制算法数据重传的优化方法具有如下有益效果:
(1)本发明设计了拥塞窗口自适应调节机制,解决了瓶颈缓冲区过小时BBR算法重传率过高的问题。
(2)本发明通过采集数据包样本的速率和时延,可以在网络链路可用带宽下降时及时地更新估计带宽,缩短了BBR算法收敛的时间。
(3)本发明最终利用一个效益分散来计算更新估计带宽前后的效益分数,在效益分数下降时撤销更新,在降低重传率的同时保证了吞吐量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例所公开的一种BBR拥塞控制算法数据重传的优化方法流程示意图。
图2为本发明优化后的BBR算法(oBBR)与BBR算法和Cubic算法的重传率对比图。
图3为本发明优化后的BBR算法(oBBR)与BBR算法和Cubic算法的吞吐量对比图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
本发明提供了一种BBR拥塞控制算法数据重传的优化方法,如图1所示,包括以下步骤:
(1)拥塞窗口调节阶段:
(1.1)估计缓冲区大小:发送端收到数据包的确认时,若检测到丢包,根据丢包时的数据包的时延与BBR算法估计的物理时延估计瓶颈缓冲区容量;
(1.2)窗户自适应调节:调节拥塞控制参数,降低拥塞窗口的大小以适应上一步估计的瓶颈缓冲区的容量,让出部分缓冲区;
(1.3)拥塞窗口恢复:在上一步降低拥塞窗口后一个往返时间内没有检测到丢包后,发送端在收到数据包确认时根据接收数据量补偿拥塞控制窗口,保证可以适应网络路由的更新。
具体方法如下:
S11、发送端接收到数据包的确认后,计算数据包的时延与接收速率;
数据包的时延计算方式如下:
数据包的接收速率的计算方式如下:
S12、检测到数据包丢失时,根据S11计算出的数据包的时延,计算网络链路瓶颈缓冲区与带宽延迟积的比值:
S13、使用S12得到的结果,调整拥塞窗口控制参数的大小,计算方式为:
之后调整拥塞窗口,计算方式为:
S14、在S13调整拥塞窗口后一个往返时间内未检测到丢包后,发送端收到数据包的确认时,调整拥塞窗口控制参数,计算方式为:
(2)带宽更新阶段:
(2.1)样本收集:发送端接收到数据包的确认时,与BBR算法的估计带宽和估计的物理时延作比较,收集时延过大与速率过小的数据包样本;
(2.2)带宽下降判定:统计上一步收集到的连续数据包的个数,收集到的数量超过30时,认为链路可用带宽下降,进行下一步带宽更新;
(2.3)带宽更新:保存当前BBR算法的估计带宽,清除最大带宽过滤器,更新估计带宽为上一步样本速率的最大值。
具体方法如下:
S21、对于S11计算的数据包的时延和接收速率,记录满足以下条件的数据包样本:
S23、在S22的保存的数据包样本的数量超过30时,计算更新后的带宽,计算方式为:
S24、将当前BBR算法的估计带宽信息做备份,更新它的估计带宽为S23计算出的结果。
(3)吞吐量评估阶段
(3.1)效益分数计算:将数据传输的过程中连续的时间划分为一个个的时间间隔T,计算每个时间间隔T内发送端确认的数据量以及未确认的数据量,使用一个效益函数评估数据传输的效率;
(3.2)传输效率比较:对于估计带宽更新前后各取两个T计算效益分数,分别取平均值,比较更新前后数据传输的效率;
(3.3)状态恢复:更新后计算的效率下降,则撤销更新,将最大带宽过滤器恢复更新前的状态,恢复BBR算法之前的估计带宽。
具体方法如下:
S31、将数据传输过程中连续的时间划分成一个个的时间间隔T,计算每个时间间隔T内接收到的数据量,计算方式如下:
计算每个时间间隔T内未确认的数据量,计算方式如下:
S32、计算带宽更新前的数据传输的效益分数,对于S31中的每个时间间隔T内的效益分数计算方式如下:
其中,U为该时间间隔T内计算出的效益分数;
S34、对于S32与S33各计算带宽更新前后两个时间间隔T内的效益分数,分别计算带宽更新前后的效益分数的平均值,若带宽更新后效益分数降低,则撤销估计带宽的更新。
图2与图3展示了本发明优化后的BBR算法(oBBR)与BBR算法和Cubic算法的重传率和吞吐量对比,Cubic是传统的基于丢包的拥塞控制算法,为Linux内核的默认拥塞控制算法。这里设置了不同的网络环境包括带宽、时延、缓冲区大小(图中表示为R)以及随机丢包率(图中表示为Loss),可以看到,oBBR相对于BBR降低了大量重传,并且吞吐量没有降低。Cubic算法采用基于丢包的拥塞控制方式,检测到丢包就乘法降低拥塞窗口,虽然重传率最低,但在随机丢包场景中吞吐量非常低。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (3)
1.一种BBR拥塞控制算法数据重传的优化方法,其特征在于,包括以下步骤:
步骤S1、拥塞窗口调节:数据传输过程中发送端接收数据包的确认,检测到丢包时,用数据包的时延估计瓶颈缓冲区的大小,自适应地调节拥塞窗口;
步骤S2、带宽更新:在调整拥塞窗口后,发送端根据采集的数据包的时延和速率样本,及时地更新BBR算法的估计带宽,调整发送速率;
步骤S3、吞吐量评估:对于调整后的发送速率,结合丢包率和吞吐量计算估计带宽更新后的效益分数,若效益分数下降,则撤销更新,否则保留更新;
步骤S1具体方法如下:
S11、发送端接收到数据包的确认后,计算数据包的时延与接收速率;
数据包的时延计算方式如下:
数据包的接收速率的计算方式如下:
S12、检测到数据包丢失时,根据S11计算出的数据包的时延,计算网络链路瓶颈缓冲区与带宽延迟积的比值:
S13、使用S12得到的结果,调整拥塞窗口控制参数的大小,计算方式为:
之后调整拥塞窗口,计算方式为:
S14、在S13调整拥塞窗口后一个往返时间内未检测到丢包后,发送端收到数据包的确认时,调整拥塞窗口控制参数,计算方式为:
3.根据权利要求1所述的一种BBR拥塞控制算法数据重传的优化方法,其特征在于,步骤S3具体方法如下:
S31、将数据传输过程中连续的时间划分成一个个的时间间隔T,计算每个时间间隔T内接收到的数据量,计算方式如下:
计算每个时间间隔T内未确认的数据量,计算方式如下:
S32、计算带宽更新前的数据传输的效益分数,对于S31中的每个时间间隔T内的效益分数计算方式如下:
其中,U为该时间间隔T内计算出的效益分数;
S34、对于S32与S33各计算带宽更新前后两个时间间隔T内的效益分数,分别计算带宽更新前后的效益分数的平均值,若带宽更新后效益分数降低,则撤销估计带宽的更新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310348531.9A CN116155825B (zh) | 2023-04-04 | 2023-04-04 | 一种bbr拥塞控制算法数据重传的优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310348531.9A CN116155825B (zh) | 2023-04-04 | 2023-04-04 | 一种bbr拥塞控制算法数据重传的优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116155825A CN116155825A (zh) | 2023-05-23 |
CN116155825B true CN116155825B (zh) | 2023-06-30 |
Family
ID=86350835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310348531.9A Active CN116155825B (zh) | 2023-04-04 | 2023-04-04 | 一种bbr拥塞控制算法数据重传的优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116155825B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105141542A (zh) * | 2015-09-18 | 2015-12-09 | 北京百度网讯科技有限公司 | 基于tcp通信协议的拥塞窗口的控制算法和*** |
CN113613286A (zh) * | 2021-09-13 | 2021-11-05 | 大连大学 | 一种天地一体化智能网络多路径拥塞控制方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102468941B (zh) * | 2010-11-18 | 2014-07-30 | 华为技术有限公司 | 网络丢包处理方法及装置 |
CN106059950B (zh) * | 2016-05-25 | 2019-03-08 | 四川大学 | 一种基于scps-tp的自适应网络拥塞控制方法 |
CN114666831A (zh) * | 2022-03-25 | 2022-06-24 | 南通先进通信技术研究院有限公司 | 一种基于流编码和带宽估计驱动的分组传输方法及其*** |
CN114945004B (zh) * | 2022-05-23 | 2024-01-02 | 国网信息通信产业集团有限公司 | 拥塞控制方法、装置、电子设备及存储介质 |
CN115412497B (zh) * | 2022-11-01 | 2022-12-30 | 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) | 一种bbr拥塞控制算法的性能优化方法 |
-
2023
- 2023-04-04 CN CN202310348531.9A patent/CN116155825B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105141542A (zh) * | 2015-09-18 | 2015-12-09 | 北京百度网讯科技有限公司 | 基于tcp通信协议的拥塞窗口的控制算法和*** |
CN113613286A (zh) * | 2021-09-13 | 2021-11-05 | 大连大学 | 一种天地一体化智能网络多路径拥塞控制方法 |
Non-Patent Citations (1)
Title |
---|
BBR单边拥塞控制算法传输性能优化;马力文;中国优秀硕士论文期刊网;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116155825A (zh) | 2023-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7808910B2 (en) | Communication terminal, congestion control method, and congestion control program | |
CN111683393B (zh) | 一种动态调整增益系数的自适应拥塞控制方法 | |
CN102468941B (zh) | 网络丢包处理方法及装置 | |
EP3319281B1 (en) | Method and appratus for network congestion control based on transmission rate gradients | |
JP4082669B2 (ja) | キューバッファ制御方法 | |
CN109639340B (zh) | 一种适用于卫星链路的tcp加速方法 | |
US6438101B1 (en) | Method and apparatus for managing congestion within an internetwork using window adaptation | |
JP5652388B2 (ja) | 通信レート制御方法、送信装置および通信システム | |
JP4016387B2 (ja) | データフロー制御方法 | |
KR100547749B1 (ko) | 재전송 타임아웃 수를 줄이기 위한 전송 제어 프로토콜의혼잡제어 방법과 시스템 | |
CN110809288B (zh) | 一种网络拥塞控制方法、装置、设备及介质 | |
US8416694B2 (en) | Network feedback method and device | |
CN111614572B (zh) | 一种基于rtt的tcp网络拥塞控制方法 | |
CN104683259A (zh) | Tcp拥塞控制方法及装置 | |
US7738395B2 (en) | Communication system for improving data transmission efficiency of TCP in a wireless network environment and a method thereof | |
CN116155825B (zh) | 一种bbr拥塞控制算法数据重传的优化方法 | |
Lai | Improving the performance of TCP Vegas in a heterogeneous environment | |
CN111200843B (zh) | 一种基于5g移动网络的跨层拥塞控制方法 | |
WO2018135938A1 (en) | A method for controlling congestion in communication system | |
KR101334990B1 (ko) | 전송 제어 프로토콜의 혼잡 윈도우 제어 방법 | |
Zhao et al. | Tcpw-f: A congestion control algorithm based on noise-aware in wireless networks | |
Lin et al. | Research on TCP protocol in wireless network and network simulation | |
CN115720109A (zh) | 基于状态确认的卫星链路拥塞控制方法 | |
Kim et al. | Considering spurious timeout in proxy for improving TCP performance in wireless networks | |
GOPALAN et al. | TCP CONGESTION CONTROL |
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 |