BBR TCP and Measurement Lab
What is TCP?
Since the beginning of the its existence, the internet has expanded in scope, traffic, content, and a myriad of other ways. The protocols that make up the internet’s backbone have mostly remained the same since they were developed in the 1980s. The Transmission Control Protocol (TCP) was one of the first networking protocols defined during the internet’s development, and specifies how data should be transmitted and received. TCP implementations, initially developed in the 1980’s, attempted to discover the right rate at which to send data by constantly trying to send more until reaching the point that not all of the data arrived at its destination, and then backing off on the amount being sent. Multiple TCP connections would share links, because each connection’s attempts to use more and more bandwidth would end up with each claiming part of the available bandwidth. For over 30 years, TCP has been how everyone connects to services on the internet, and its canonical implementation has been held up as the gold standard method for how network capacity can be shared amongst competing users. Recently, a group of Google researchers, including TCP pioneer Van Jacobson, developed a better algorithm for congestion control. BBR, or Bottleneck Bandwidth and RTT (Round-Trip Time), directly measures and models the network bottleneck in order to determine the right rate at which to send data.