Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NIC Offload features compatibility with team #64

Open
ZuZuD opened this issue Jan 27, 2022 · 0 comments
Open

NIC Offload features compatibility with team #64

ZuZuD opened this issue Jan 27, 2022 · 0 comments

Comments

@ZuZuD
Copy link

ZuZuD commented Jan 27, 2022

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!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant