Recent TCP Enhancements
Recently (2013-2016) there have been a number of enhancements to the Linux TCP code that potentially can have a large impact on TCP throughput. A number of these enhancements are described in this talk:
- David Miller NetDev KeyNote, Feb 2015)
The most important changes include:
- packet pacing
- dynamic TSO sizing
- TCP small queues
- BBR TCP (first available 2016 in the 4.9 kernel)
Many of these enhancements became widely available starting with RHEL/CentOS 7.2 and Debian 8.
BBRv1 TCP is available starting in RHEL/CentOS 8.0, Debian 9, and Ubuntu 17. However most experts recommend avoiding use of BBRv1, and wait until the IETF finishes BBR v3 standardization, and BBRv3 is added to the Linux kernel. BBRv1 has some know issues with excessive retransmits and unfairness with CUBIC.
For more information on recent Linux network performance enhancements for 100G+ flows, see our Linux 6.x page.