Towards RTT Fairness of Congestion-Based Congestion Control

BBR is a new congestion-based congestion control algorithm proposed by Google. A BBR flow, if running alone, delivers the highest throughput with the lowest delay. To this end, each sender constantly measures the bottleneck bandwidth and round-trip propagation time of the network pipe, and uses the results to govern its behavior. However, our deployment in geo-distributed cloud servers reveals an unexpected RTT fairness problem: unlike conventional loss-based congestion control, BBR has an opposite bias towards long RTT flows. In this paper, we analyze the extent and cause of this fairness problem through cluster deployment in a clean network environment. Experimental results suggest that BBR’s bias against short RTT is an intrinsic problem of its design, irrespective of the bottleneck bandwidth, AQM deployment, and the number of coexisting flows. A BBR flow with 3× RTT of the other dominates with >90% of bandwidth. Worse, strategic receivers can steal bandwidth by artificially inflating end-to-end delays. To address this problem, we show, through in-depth analysis, that a rapid-growing queue due to flow probing is the root cause of the bias. Based on this observation, we design a simple, yet effective algorithm, BBQ, with better RTT fairness while retaining BBR’s promising performance advantages. We have implemented BBQ in Linux kernel and evaluated it through extensive experiments. Our evaluation results show that BBQ improves RTT fairness by up to 6.1× in comparison to BBR. Moreover, BBQ reduces queueing delay by more than 64.5%, while maintaining nearoptimal link utilization.

[1]  Injong Rhee,et al.  CUBIC: a new TCP-friendly high-speed TCP variant , 2008, OPSR.

[2]  Larry L. Peterson,et al.  TCP Vegas: End to End Congestion Avoidance on a Global Internet , 1995, IEEE J. Sel. Areas Commun..

[3]  V. Jacobson,et al.  Congestion avoidance and control , 1988, CCRV.

[4]  Leonard Kleinrock,et al.  Power and deterministic rules of thumb for probabilistic problems in computer communications , 1979 .

[5]  QUTdN QeO,et al.  Random early detection gateways for congestion avoidance , 1993, TNET.

[6]  Yuchung Cheng,et al.  BBR Congestion Control , 2017 .

[7]  Qian Zhang,et al.  A Compound TCP Approach for High-Speed and Long Distance Networks , 2006, Proceedings IEEE INFOCOM 2006. 25TH IEEE International Conference on Computer Communications.

[8]  Sally Floyd,et al.  The NewReno Modification to TCP's Fast Recovery Algorithm , 2004, RFC.

[9]  T. V. Lakshman,et al.  The performance of TCP/IP for networks with high bandwidth-delay products and random loss , 1997, TNET.

[10]  R. Shreedhar,et al.  Efficient Fair Queuing Using Deficit Round - , 1997 .

[11]  Patrick Brown,et al.  Resource sharing of TCP connections with different round trip times , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[12]  Injong Rhee,et al.  Binary increase congestion control (BIC) for fast long-distance networks , 2004, IEEE INFOCOM 2004.

[13]  David A. Maltz,et al.  Data center TCP (DCTCP) , 2010, SIGCOMM 2010.

[14]  Adel Javanmard,et al.  Analysis of DCTCP: stability, convergence, and fairness , 2011, SIGMETRICS.

[15]  Amin Vahdat,et al.  TIMELY: RTT-based Congestion Control for the Datacenter , 2015, Comput. Commun. Rev..

[16]  Vern Paxson,et al.  TCP Congestion Control , 1999, RFC.

[17]  Min Zhu,et al.  B4: experience with a globally-deployed software defined wan , 2013, SIGCOMM.

[18]  Van Jacobson,et al.  BBR: Congestion-Based Congestion Control , 2016, ACM Queue.

[19]  Van Jacobson,et al.  Controlling Queue Delay , 2012, ACM Queue.