-
Notifications
You must be signed in to change notification settings - Fork 2
Add -G flag to enable UDP segment offload in Linux. #61
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
Conversation
|
The new commit also does UDP segment offload for sendmmsg(2). |
|
There are still some problems with |
|
Changing |
|
Here is a link to the initial GSO patch: https://lwn.net/ml/netdev/20180417200059.30154-6-willemdebruijn.kernel@gmail.com/ |
|
Could you please rebase it and provide man page and test in Linux GNUmakefile. |
The patch below can enable GRO on Linux (https://lwn.net/Articles/768995/, https://lwn.net/ml/netdev/a8112a7fbbfc39d5b59e5ace0d3c1409824f9261.1539957909.git.pabeni@redhat.com/).
I noticed that it only needs a sockopt and that udpbench does not
need many additional changes to cope with the changes in receive
behavior.
GRO:
NO GRO:
Currently the bitrate calculation is hacky with GRO, it takes the
total received payload and divides it by the rcvlen to get the
number of packets.
By using the UDP_GRO cmsg_type one supposedly could get back the
individual packet size and then divide for each msg in mmsg:
if(cmsg->cmsg_level == SOL_UDP && cmsg->cmsg_type == UDP_GRO) { ...However, I cannot get it to work. Below is my attempted diff for
that: