You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add ethtool link prop. Disable TX offload (unless --keep-veth-offload)
Add a new ethtool property that can be either a string or a string
array. The syntax of each ethtool property is basically the ethtool
command line without the "devname". So for the ethtool command:
ethtool --offload eth0 rx off
the link equivalent would be:
{dev: eth0, ethtool: ["--offload rx off"], ...}
Disable TX offload for veth container interfaces unless
`--keep-veth-offload` is enabled. Veth interfaces are a little weird in
that they have the TX offload setting enabled by default. However, this
is basically ignored (veth interfaces don't have hardware to offload
to). Usually this is fine and is the fastest setting. However, if you
have a some sort of software networking in the middle of veth links then
the kernel will lose track of the fact that it does not need to validate
checksums and having TX offload will cause the veth interface at the far
end to drop packets due to bad checksums (because they were never done).
The safer behavior is disable TX offload for veth links by default so
that the kernel will do software checksum generation even for veth
links. This changes a the default behavior and for most
testing/simulation situation should be a non-issue, however it could
some performance implications for high throughput scenarios. For this
reason the `--keep-veth-offload` parameter is provided for restoring the
previous default behavior.
If you want to keep the original behavior
but want to disable TX offload for certain veth interfaces you can use
`--keep-veth-offload` and then add `ethtool: "--offload tx off"` for
the specific interfaces that should have TX offload disabled.
0 commit comments