Enabling and disabling TCP segmentation offload

Offloading the TCP segmentation operation from the Linux network stack to the adapter can lead to enhanced performance for interfaces with predominately large outgoing packets.

Procedure

To support TCP segmentation offload (TSO), a network device must support outbound (TX) checksumming and scatter gather. For this reason, you must turn on scatter gather and outbound checksumming prior to configuring TSO. All three options can be turned on or off with a single ethtool command of the form:
# ethtool -K <interface_name> tx <value> sg <value> tso <value>
where <value> is either on or off.
Note: When TCP segmentation is offloaded, the OSA feature performs the calculations. Offloaded calculations apply only to packets that go out to the LAN or come in from the LAN. Linux instances that share an OSA port exchange packages directly. The packages are forwarded by the OSA adapter but do not go out on the LAN and no TCP segmentation calculation is performed. The qeth device driver cannot detect this, and so cannot issue any warning about it.

Examples

  • To offload the TCP segmentation operation for a network device enccw0.0.f500 issue:
    # ethtool -K enccw0.0.f500 tx on sg on tso on
  • To disable offloading the TCP segmentation operation for a network device enccw0.0.f500 issue:
    # ethtool -K enccw0.0.f500 tx off sg off tso off