BBR vs. BBRv2: A Performance Evaluation

Published: 01 Jan 2024, Last Modified: 20 May 2025COMSNETS 2024EveryoneRevisionsBibTeXCC BY-SA 4.0
Abstract: Google's new congestion control algorithm, BBR, has seen wide adoption. However, there are concerns about its unfairness to legacy congestion control algorithms and the high retransmissions experienced under lossy conditions. In response, Google designed BBRv2 to address these concerns. However, the performance of BBRv2 with respect to BBR or Cubic has not been studied systematically. This paper presents a fine-grained performance study of BBRv2 under a variety of RTTs, band-widths, buffer sizes, and loss conditions, in both LAN and WAN environments. We construct a decision tree to determine whether BBR or BBRv2 performs better under different conditions. We observe that BBRv2‘s goodput is significantly low compared to BBR's under induced loss and bursty losses, and the effect is magnified under large BDP. Our results suggest that BBRv2 trades performance for better fairness under losses. To bridge this gap, we investigate the workings of BBRv2 and find that BBRv2 employs a long-term upper bound on sending rate that is not robust to losses. This upper bound is continually decremented in the presence of persistent losses, thereby depressing goodput. We show that by aligning BBRv2‘s upper bound with its maximum bandwidth estimation, BBRv2‘s performance can be greatly improved while maintaining its fairness.
Loading