BBRvl vs BBRv2: Examining Performance Differences through Experimental Evaluation - Nandagiri, Aarti; Tahiliani, Mohit P.; Misra, Vishal; Ramakrishnan, K. K. (Proceedings of the ... IEEE Workshop on Local and Metropolitan Area Networks, 2020)
BBR, a congestion control algorithm proposed by Google, regulates the source sending rate by deriving an estimate of the bottleneck's available bandwidth and RTT of the path. The initial version of BBR, called BBRvl, was found to be unfair, getting higher than the fair share of bandwidth when co-existing on bottleneck links with other congestion control algorithms. It also does not perform as well with networks having routers with shallow buffers. To overcome these concerns, a newer version, called BBRv2, has been proposed. Our goal in this paper is to understand the differences between the two versions and examine the primary reasons behind the improvement in performance of BBRv2. We present an experimental evaluation of BBRvl and BBRv2, evaluating their fairness across connections using the same protocol (intra-protocol fairness) and using different protocols (inter-protocol fairness) as well as delay and link utilization. From experiments with shallow and deep buffers, BBRv2 is most effective when it uses Explicit Congestion Notification (ECN), but fairness issues continue to exist in BBRv2 when ECN is disabled. A concern for BBRv2 is that it is somewhat complex to deploy in Wide Area Networks (WAN) because of the dependency with the DCTCP-style reduction of the congestion window, which is primarily usable in low-feedback delay Data Center Networks.