Abstract:
The use of large frames makes network communication much less demanding for the CPU. Yet, backward compatibility and slow links requires the use of 1500 byte or smaller frames.
Modern NICs with hardware TCP segmentation offloading (TSO) address this problem. However, a generic software version (GSO) provided by the OS has reason to exist, for use on paths with no suitable hardware, such as between virtual machines or with older or buggy NICs.
In this paper we present our work to add GSO to FreeBSD. Our preliminary implementation, depending on CPU speed, shows up to 90% speedup compared to segmentation done in the TCP stack, saturating a 10 Gbit link at 2 GHz with checksum offloading.
Speaker biography:
Stefano Garzarella is a Research Fellow in Luigi Rizzo’s research group at the Dipartimento di Ingegneria dell’Informazione of the University of Pisa, Italy. He received a Master’s Degree (summa cum laude) in Computer Engineering from the University of Pisa in February 2014.
He has been a FreeBSD developer since 2013. Now he is working on various kernel and user space projects, particularly in the virtualization and networking fields.