From: Daniel Borkmann <daniel@iogearbox.net>
To: "Jason A. Donenfeld" <Jason@zx2c4.com>
Cc: kuba@kernel.org, edumazet@google.com, aspsk@isovalent.com,
m@lambda.lt, netdev@vger.kernel.org, wireguard@lists.zx2c4.com
Subject: Re: [PATCH net-next v2] wireguard: Wire-up big tcp support
Date: Mon, 7 Oct 2024 19:50:05 +0200 [thread overview]
Message-ID: <b58d8075-cf21-4560-ac89-b8ad860f19cd@iogearbox.net> (raw)
In-Reply-To: <ZwQPgbwio38LWqKS@zx2c4.com>
Hi Jason,
On 10/7/24 6:42 PM, Jason A. Donenfeld wrote:
> On Fri, Oct 04, 2024 at 06:55:18PM +0200, Daniel Borkmann wrote:
>> Advertise GSO_MAX_SIZE as TSO max size in order support BIG TCP for wireguard.
>> This helps to improve wireguard performance a bit when enabled as it allows
>> wireguard to aggregate larger skbs in wg_packet_consume_data_done() via
>> napi_gro_receive(), but also allows the stack to build larger skbs on xmit
>> where the driver then segments them before encryption inside wg_xmit().
>
> Thanks, I'll queue this up. Do you have any perf numbers on the speedup,
> btw?
Awesome, thanks! Few weeks back we had an LPC session with some initial work
around wireguard performance (https://lpc.events/event/18/contributions/1968/)
including benchmarks. It depends on the specific scenario, but this as well as
an L2 GRO implementation (yet to come as patches in the next weeks) we got
~+15% for host-host in case of TCP STREAM. In case of Cilium I haven't done
the measurement yet, but I expect that there would be further gains as bigger
packets can traverse the stack and thus less processing in upper layers (e.g.
our tcx BPF code).
Thanks,
Daniel
prev parent reply other threads:[~2024-11-18 2:40 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-04 16:55 Daniel Borkmann
2024-10-07 16:42 ` Jason A. Donenfeld
2024-10-07 17:50 ` Daniel Borkmann [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b58d8075-cf21-4560-ac89-b8ad860f19cd@iogearbox.net \
--to=daniel@iogearbox.net \
--cc=Jason@zx2c4.com \
--cc=aspsk@isovalent.com \
--cc=edumazet@google.com \
--cc=kuba@kernel.org \
--cc=m@lambda.lt \
--cc=netdev@vger.kernel.org \
--cc=wireguard@lists.zx2c4.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).