[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <03922960-2b6e-181f-041b-aa636b3c9d98@anarchist.pw>
Date: Wed, 25 Jul 2018 11:53:45 +0200
From: Gauvain Roussel-Tarbouriech <gauvain@...anify.com>
To: netdev@...r.kernel.org
Subject: UDP GRO without Merging
Subject:
Hello Netdev,
I am working on WireGuard as part of Google Summer of Code and Jason and
I are working on adding GRO to WireGuard, on the udp_tunnel side of
things. The goal is to inform udp_tunnel’s gro_receive that certain
packets are part of the same flow. Then sometime later, we’d like to
have a list of those same-flow packets appear in gro_complete. As far as
I can tell, the API seems well suited for merging packets in
gro_receive, such that gro_complete only then gets one single merged
packet. However, we need to receive the entire list of same-flow packets
in gro_complete, unmerged. Is this possible with the present APIs?
The goal of this, by the way, is to have more efficient clumping in
multi-core packet decryption, similar to what’s done using GSO on the
send/encryption side. See Jason’s netdevconf presentation for details on
this: https://www.wireguard.com/papers/wireguard-netdev22.pdf (section
“Generic Segmentation Offload Batching”).
Thanks,
-G
Powered by blists - more mailing lists