libteam icon indicating copy to clipboard operation
libteam copied to clipboard

NIC Offload features compatibility with team

Open ZuZuD opened this issue 3 years ago • 0 comments

Hi everyone,

I would like to enable some hardware enhancement features like generic-offload (GRO/GSO) and checksumming (RX/TX) on a group of NICs managed by a team driver, and I wonder how well this use-case is supported.

I failed to find documentation around this, so I started to try out various combinations to see how this all behaves. So far, most of the features I'm interested in can be enabled/disabled with team driver:

ethtool -K team tso off
ethtool -K team tso on
ethtool -K team gso off
ethtool -K team gso on
ethtool -K team gro off
ethtool -K team gro on
ethtool -K team tx off
Actual changes:
tx-checksumming: off
        tx-checksum-ip-generic: off
tcp-segmentation-offload: off
        tx-tcp-segmentation: off [requested on]
        tx-tcp-ecn-segmentation: off [requested on]
        tx-tcp-mangleid-segmentation: off [requested on]
        tx-tcp6-segmentation: off [requested on]
ethtool -K team tx on
Actual changes:
tx-checksumming: on
        tx-checksum-ip-generic: on
tcp-segmentation-offload: on
        tx-tcp-segmentation: on
        tx-tcp-ecn-segmentation: on
        tx-tcp-mangleid-segmentation: on
        tx-tcp6-segmentation: on

However, doing so doesn't seem to change the physical NICs options the same way, so I can end up with feature mismatches and have no idea what happens under the scene in such situations.

I'm really dabbling at the moment without much idea about the requirements, recommendations and caveats, so I'd really appreciate if the community can share some details/feedback around this use-case.

Thanks!

ZuZuD avatar Jan 27 '22 00:01 ZuZuD