[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <162799570221.4307.17223951300191730387@kwain>
Date: Tue, 03 Aug 2021 15:01:42 +0200
From: Antoine Tenart <atenart@...nel.org>
To: Sebastian Rehms <sebastian.rehms@...lbox.tu-dresden.de>,
netdev@...r.kernel.org
Cc: scott@...ttdial.com, davem@...emloft.net,
gregkh@...uxfoundation.org
Subject: Re: MACSec performance issues
Hello Sebastian,
Quoting Sebastian Rehms (2021-08-03 13:48:59)
>
> We did some performance tests on MACSec and observed data rates of about
> 5-6 GBits/s. (measured with iperf3)
> After a kernel update the maximum data rate dropped to about 600 MBit/s.
>
> Due to this huge difference we did some further investigations and found
> that the main reason is a change in the file drivers/net/macsec.c in the
> function crypto_alloc_aead().
>
> The change was introduced by commit
> 0899ff04c872463455f2749d13a5d311338021a3 (upstream commit
> ab046a5d4be4c90a3952a0eae75617b49c0cb01b)
>
> - tfm = crypto_alloc_aead("gcm(aes)", 0, 0);
> + /* Pick a sync gcm(aes) cipher to ensure order is preserved. */
> + tfm = crypto_alloc_aead("gcm(aes)", 0, CRYPTO_ALG_ASYNC);
>
>
> According to the commit description, the CRYPTO_ALG_ASYNC flag is
> required to guarantee correct packet ordering which is indeed an
> implicit provision of the MACSec standard.
>
> First, it would be desirable to verify, that the impact of the flag is
> large not only on our hardware but that it is a general phenomenon.
FYI, performance issues with CRYPTO_ALG_ASYNC was reported and discussed
in the following thread:
https://lore.kernel.org/netdev/1b0cec71-d084-8153-2ba4-72ce71abeb65@byu.edu/
Antoine
Powered by blists - more mailing lists