-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
GSO support on Windows #4325
Comments
Hey @marten-seemann I'm interested in helping add GSO support for Windows. From my shallow inspection of the source code, and the linked quinn pr, I noticed that quinn sets the UDP_SEND_MSG_SIZE option. This flag is largely responsible for handling GSO support. Reference: Implementing GSO support for Windows would require handling proper instantiation of this flag, and the creation of (I'd appreciate feedback/advice on my approach!) |
Your approach sounds reasonable. Are you developing on Windows? Will you be able to test your code, to make sure that it actually sends out multiple QUIC packets per syscall? |
Hey! Really sorry for the delay. As it happens, my network card doesn't actually support GSO. I'm currently in the process of temporarily acquiring a laptop which supports GSO for the development of this feature.
Yep! I found your PRs which implemented GSO for linux and those were quite helpful to understand the general process of going about things. |
Thanks for the update! Looking forward to your PR! |
For what it is worth, here is Quinn's USO and URO implementation, where USO and URO are the Windows equivalent of Linux's GSO and GRO. https://github.com/quinn-rs/quinn/blob/main/quinn-udp/src/windows.rs Also note that we are currently facing issues with URO on Windows on ARM, which might or might not be related to the Quinn implementation itself. |
Hey! FINALLY got my hands on a laptop with offloading support 😎. I had a quick question. Please correct me if I'm wrong, but the windows specific implementation is using only basicConn. The linux implementation is relying on the |
That's great!
You're right.
|
Ah, I see what you mean. I figured there was a reason |
Apparently it's possible to use GSO on Windows. For reference (and code points), quinn just added support.
I don't particularly care about Windows too much, so I probably won't be working on this issue any time soon. If you're interested, please feel free to reach out or the send a PR.
The text was updated successfully, but these errors were encountered: