I. Introduction
Congestion Control Algorithms (CCAs) regulate and control the flow of data in modern networks. In a typical network, there are multiple flows of data being transmitted through the same shared resources and CCAs regulate the flows in order to ensure uniform utilization of the available resources and prevent disruptions in the network. Packet loss has been used as the key indicator of congestion along network paths over the Internet for decades. Many CCAs based on packet loss and delay have evolved [ 1 – 5 ] over the years. However, BBR [6] [7] from Google (a state based CCA) was the only CCA that successfully converged the operating point to Kleinrock’s optimal operating point [8] , thus maximizing data transfer rate while reducing Round Trip Transmission Time (RTT). It sequentially probes for bottleneck bandwidth and minimum RTT. BBR then uses those measurements to deliver data at maximum available bottleneck bandwidth without creating an excess queue over the bottleneck link. With no development of an excess queue, buffer bloat [9] issue could be resolved.