[论文解读] Fairness of Congestion-Based Congestion Control: Experimental Evaluation and Analysis
本文识别并解决了BBR拥塞控制中一个严重的RTT公平性问题,即由于过度探测,长RTT流会主导短RTT流。作者提出BBQ,一种在内核中实现的解决方案,通过限制探测持续时间来防止队列积压,从而在不牺牲吞吐量或延迟的前提下,将公平性提升高达6.1倍。
BBR is a new congestion-based congestion control algorithm proposed by Google. A BBR flow sequentially measures the bottleneck bandwidth and round-trip delay of the network pipe, and uses the measured results to govern its sending behavior, maximizing the delivery bandwidth while minimizing the delay. However, our deployment in geo-distributed cloud servers reveals a severe RTT fairness problem: a BBR flow with longer RTT dominates a competing flow with shorter RTT. Somewhat surprisingly, our deployment of BBR on the Internet and an in-house cluster unearthed a consistent bandwidth disparity among competing flows. Long BBR flows are bound to seize bandwidth from short ones. Intrigued by this unexpected behavior, we ask, is the phenomenon intrinsic to BBR? how's the severity? and what's the root cause? To this end, we conduct thorough measurements and develop a theoretical model on bandwidth dynamics. We find, as long as the competing flows are of different RTTs, bandwidth disparities will arise. With an RTT ratio of 10, even flow starvation can happen. We blame it on BBR's connivance at sending an excessive amount of data when probing bandwidth. Specifically, the amount of data is in proportion to RTT, making long RTT flows overwhelming short ones. Based on this observation, we design a derivative of BBR that achieves guaranteed flow fairness, at the meantime without losing any merits. We have implemented our proposed solution in Linux kernel and evaluated it through extensive experiments.
研究动机与目标
- 调查当竞争流具有不同往返时间时,BBR中RTT公平性失衡的严重性及其根本原因。
- 分析尽管BBR的目标是最大化带宽并最小化延迟,为何仍会偏向长RTT流而非短RTT流。
- 设计并实现一种实用的、基于终端主机的解决方案,以在不损害BBR性能优势的前提下恢复公平性。
- 评估该解决方案在不同网络条件和流配置下的可扩展性和鲁棒性。
提出的方法
- 提出BBQ,一种拥塞控制的衍生方案,可根据队列状态检测动态调整探测持续时间。
- 当检测到队列过量时,强制采用短探测周期(α = 3 ms),以限制长RTT流的带宽探测。
- 当队列消散时,切换到更长的探测周期,以实现高效的带宽探测。
- 在Linux内核4.9.18中实现BBQ,以支持真实环境下的评估。
- 使用自建集群和互联网部署,测量带宽份额、RTT公平性和链路利用率。
- 在不同RTT比值、流数量和AQM配置下,将BBQ与BBR进行比较。
实验结果
研究问题
- RQ1当竞争流具有不同往返时间时,BBR中的RTT公平性问题有多严重?
- RQ2BBR对短RTT流产生偏见的根本原因是什么?
- RQ3一个简单、基于终端主机的修复方案是否能恢复公平性,同时不牺牲BBR的性能目标?
- RQ4随着竞争流数量的增加,所提出的解决方案的可扩展性如何?
- RQ5一个单一的、固定的探测上限(α)是否在广泛的RTT范围内均有效?
主要发现
- 当与一个50毫秒RTT流竞争时,使用BBR的10毫秒RTT流的带宽仅为6.3 Mbps,即瓶颈带宽的7.2%。
- 在RTT比值为10(10毫秒对100毫秒)的情况下,BBQ下短RTT流的带宽占比达到37.1%,相比BBR提升了4.62倍。
- 在一个场景中,一个50毫秒RTT流与二十个10毫秒RTT流竞争时,BBQ相比BBR将公平性提升了高达6.1倍。
- 在5毫秒至300毫秒的RTT范围内,BBQ使短RTT流的带宽份额至少提升了84.12%。
- 统一的探测上限α = 3毫秒确保了在各种互联网RTT条件下的一致公平性提升。
- BBQ保持了完整的链路利用率和较低的端到端延迟,这些指标与BBR保持一致。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。