Table of ContentsView in Frames

How TSO increases outbound throughput

TCP segmentation offload (TSO), or Large send offload (LSO), reduces the CPU usage of the host system in high-bandwidth outbound network connections. In TSO, data segmentation is offloaded to the NIC that divides the data into the default maximum transmission unit (MTU) size of the outgoing interface.

When a large amount of data is transmitted to a destination system, TCP in the host system segments the data into MTU sized packets. For each segment, a header buffer is allocated and a TCP header is inserted. The packets are sent down through the layers of the TCP stack, and each layer adds its own header to the packet. Processing all the created segments at each layer in the protocol stack can burden the CPU of the controller. This leads to the wastage of CPU cycles in the host system and causes an overhead to the host CPU. However, using TSO, this overhead can be passed down to the NIC to improve CPU efficiency of the host.