Linux 5.17 To Boast A Big TCP Performance Optimization

Written by Michael Larabel in Linux Networking on 16 November 2021 at 09:19 AM EST. 11 Comments
LINUX NETWORKING
While the Linux 5.16 merge window just ended and that kernel won't be out until the tail end of the calendar year, already for Linux 5.17 new material is beginning to accumulate in the respective subsystem development trees... One set of changes merged this morning from Google can provide a sizable performance win around TCP performance in the datacenter.

Merged this morning by David Miller is these TCP optimizations from Eric Dumazet, a Google engineer.

The most exciting part of these optimizations is this patch in the TCP code to defer SKB freeing after the socket lock is released. The existing kernel code was found to introduce excess latency that can be avoided by not carrying out the SKB freeing while the socket lock is held. Instead they will be freed after the socket lock is released or directly from the BH handler.

This yields "much improved performance" at least for high volume TCP traffic in the data-center. On a 100Gbit NIC, TCP network throughput tests with a 1500 MTU size went from 55 to 65 Gbit while for a 4096+ MTU went from 82 to 95 Gbit.


While only TCP is touched for now, the merge does note that a similar optimization can likely be extended to other protocols. These TCP optimizations will be found in Linux 5.17 next year.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week