-
Notifications
You must be signed in to change notification settings - Fork 9
Various MTU fixes. #749
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
Various MTU fixes. #749
Conversation
First, we missed one branch in the overlay action for setting the `mtu_unrestricted` property on VPC-local packets. This ended up getting missed because the bench/xde-test runner set up the routing table differently to omicron. Second, when we open up some limited ICMP families for Nexus (intending to support PMTUD), the illumos TCP stack will have its own (and better!) idea about what MSS is actually assigned to a flow. We now reuse this MSS when not explicitly boosting a flow into jumbo frame territory. Closes #747. Closes #748.
So far, this change has been tested by bringing up a local omicron setup on my helios workstation. Given that this is in single-sled mode, all traffic delivery between guests must go via the if mtu_unrestricted {
opte::engine::err!("yay!");
} else {
opte::engine::err!("nay...");
} Crude, but we can see this is actually being set now. It wasn't before (but was in
Instance connectivity worked fine in this setup. I'm going to pile this up with a few extra OPTE/stlouis changes on a racklette shortly. |
Some further proof from
I don't yet have speeds with promisc recorded, but we should get that on dogfood. Results without promisc (via the siphon branch) will be in https://github.com/oxidecomputer/stlouis/issues/744. |
* Set MEOI packetinfo on Rx paths (oxidecomputer/opte#750) * Various MTU fixes. (oxidecomputer/opte#749)
Includes some perf-related bugfixes. Sled-to-sled TCP traffic should now be making use of the full ~9kiB MTU. * Set MEOI packetinfo on Rx paths (oxidecomputer/opte#750) * Various MTU fixes. (oxidecomputer/opte#749)
First, we missed one branch in the overlay action for setting the
mtu_unrestricted
property on VPC-local packets. This ended up getting missed because the bench/xde-test runner set up the routing table differently to omicron.Second, when we open up some limited ICMP families for Nexus (intending to support PMTUD), the illumos TCP stack will have its own (and better!) idea about what MSS is actually assigned to a flow. We now reuse this MSS when not explicitly boosting a flow into jumbo frame territory.
Closes #747.
Closes #748.