An emulation-based evaluation of TCP BBRv2 Alpha for wired broadband

An emulation-based evaluation of TCP BBRv2 Alpha for wired broadband
复制标题

DOI:
10.1016/j.comcom.2020.07.018
复制
发表时间:
2020-09-01
影响因子:
6
通讯作者:
Bou-Harb, Elias
Bou-Harb, Elias
中科院分区:
计算机科学3区
文献类型:
--
作者:
Kfoury, Elie F.;Gomez, Jose;Bou-Harb, Elias

文献摘要

被引文献

相似文献

谷歌于2016年发布了第一个瓶颈带宽和往返时间(BBR)拥塞控制算法。从那时起,BBR由于能够在存在分组丢失的情况下以及在路由器配备小缓冲区的情况下高效运行而获得了广泛的关注。这些特性是传统的基于丢失的拥塞控制算法(如CUBLE和Reno)无法实现的。BBRv2是最近提出的一种拥塞控制算法,是对其前身BBRv1的改进。初步工作表明,BBRv2保持了BBRv1的高吞吐量和有界排队延迟特性。针对BBRv2 Alpha(v2Alpha-2019-07-28)协议在不同网络条件下的性能评价问题,提出了一种基于Minnet的BBRv2 Alpha(v2Alpha-2019-07-28)协议的实验评估方案,该方案考虑了可选的主动队列管理(AQM)算法、缓存大小不同的路由器、可变的丢包率和往返时间(RTT)以及少量和大量的TCP流.仿真结果表明,BBRv2比基于丢包的算法容忍更高的随机丢包率,但略低于BBRv1。实验结果还证实了BBRv2与基于丢失的算法有更好的共存,重传速率比BBRv1更低,即使在大缓冲区的情况下也能产生较低的排队延迟。当尾部丢弃策略与大缓冲区一起使用时,在BBRv2和立方流之间观察到不公平的带宽分配。这种不公平性可以通过使用先进的AQM方案来减少,例如FQ-Codel和FACK。关于BBRv2流之间的公平性,结果表明,使用较小的缓冲区可以在不影响高吞吐量和链路利用率的情况下产生更好的公平性。这一观察结果也适用于BBRv1流,这表明基于速率的模型算法在缓冲区较小的情况下工作得更好。BBRv2还增强了具有不同RTT的流的共存,缓解了BBRv1中指出的RTT不公平问题。最后,本文介绍了在预先手动配置速率的情况下,使用基于丢失的算法的TCP调步的优势。未来的算法可以使用现代可编程开关产生的显式反馈来设置起搏速度。
Google published the first release of the Bottleneck Bandwidth and Round-trip Time (BBR) congestion control algorithm in 2016. Since then, BBR has gained a widespread attention due to its ability to operate efficiently in the presence of packet loss and in scenarios where routers are equipped with small buffers. These characteristics were not attainable with traditional loss-based congestion control algorithms such as CUBIC and Reno. BBRv2 is a recent congestion control algorithm proposed as an improvement to its predecessor, BBRv1. Preliminary work suggests that BBRv2 maintains the high throughput and the bounded queueing delay properties of BBRv1. However, the literature has been missing an evaluation of BBRv2 under different network conditions.This paper presents an experimental evaluation of BBRv2 Alpha (v2alpha-2019-07-28) on Mininet, considering alternative active queue management (AQM) algorithms, routers with different buffer sizes, variable packet loss rates and round-trip times (RTTs), and small and large numbers of TCP flows. Emulation results show that BBRv2 tolerates much higher random packet loss rates than loss-based algorithms but slightly lower than BBRv1. The results also confirm that BBRv2 has better coexistence with loss-based algorithms and lower retransmission rates than BBRv1, and that it produces low queuing delay even with large buffers. When a Tail Drop policy is used with large buffers, an unfair bandwidth allocation is observed among BBRv2 and CUBIC flows. Such unfairness can be reduced by using advanced AQM schemes such as FQ-CoDel and CAKE. Regarding fairness among BBRv2 flows, results show that using small buffers produces better fairness, without compromising high throughput and link utilization. This observation applies to BBRv1 flows as well, which suggests that rate-based model-based algorithms work better with small buffers. BBRv2 also enhances the coexistence of flows with different RTTs, mitigating the RTT unfairness problem noted in BBRv1. Lastly, the paper presents the advantages of using TCP pacing with a loss-based algorithm, when the rate is manually configured a priori. Future algorithms could set the pacing rate using explicit feedback generated by modern programmable switches.