TCP BBR — Bottleneck Bandwidth and Round Trip Propagation Time — OpsInsights

TCP BBR — Bottleneck Bandwidth and Round Trip Propagation Time — OpsInsights

This blog post does talks what is TCP BBR on a high level to tickle your interest read more on BBR :p

We all know about TCP and learned how it works in earlier stages of life, however right from the inception of TCP there were several changes have been made to solve the problems and limitations that pose. Let's discuss one of the major enhancements in TCP in this post.

Since the ’80s, the internet is controlled by a lossy congestion control algorithm. On the High level. TCP

TCP (Transmission Control Protocol) is to control the transfer of data so that it is reliable.

TCP makes sure packet is data is delivered to the Rx end and dynamically reduces the send packets based on the ACK signal from the Rx end. When an ACK is not received for a particular packet it dynamically controls the ingestion flow.

Quick Two-line Definitions of other commonly used TCP models,

TCP RENO: Increase or decrease sender bandwidth based on packet less ACK on each RTT.

TCP CUBIC: IN each lossless RTT interval, BIC attempts to inflate the congestion window by one half of the difference between the current window size and the previous maximum window size.

TCP Vegas: An increasing RTT, or packet drop, caused Vegas to reduce its packet sending rate, while a steady RTT caused Vegas to increase its sending rate to find the new point where the RTT increased.

TCP BBR, which achieves higher bandwidths and lower latencies for internet traffic.

What is BBR?

BBR (“ Bbottleneck Bbandwidth and R round-trip propagation time”) is a new congestion control algorithm developed at Google. Congestion control algorithms — running inside every computer, phone or tablet connected to a network — that decide how fast to send data.

How it works?

It uses recent measurements of the network’s delivery rate and round-trip time to build an explicit model that includes both the maximum recent bandwidth available to that connection and its minimum recent round-trip delay. BBR then uses this model to control both how fast it sends data and the maximum amount of data it’s willing to allow in the network at any time.

Thus utilizing the maximum bandwidth of the client,

  • More widely adopted all over globally, AWS GCP and CDN’s like Fastly etc.

  • CDN’s, Load balancers use TCP BBR to deliver content efficiency, which shows better metrics than earlier.

Points to Debate:

  • BR provides high throughput but at the expense of high packet retransmissions in shallow buffers. Therefore, if the delivered content is sensitive to packet loss, then BBR might not be a good choice.

  • This is debatable, over usage of the bandwidth, which uses most of the allotted bandwidth and reducing others usage in a browser, pc, etc.

Peace!

You can read more about TCP congestion control here:

https://www.noction.com/blog/tcp-transmission-control-protocol-congestion-control

Need to know hands-on results?

https://medium.com/google-cloud/tcp-bbr-magic-dust-for-network-performance-57a5f1ccf437

Originally published at https://opsinsights.dev on May 30, 2021.

Did you find this article valuable?

Support Jothimani Radhakrishnan by becoming a sponsor. Any amount is appreciated!