[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20210817063517.410b1233@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com>
Date: Tue, 17 Aug 2021 06:35:17 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Luke Hsiao <luke.w.hsiao@...il.com>
Cc: David Miller <davem@...emloft.net>, netdev@...r.kernel.org,
Luke Hsiao <lukehsiao@...gle.com>,
Neal Cardwell <ncardwell@...gle.com>,
Yuchung Cheng <ycheng@...gle.com>,
Eric Dumazet <edumazet@...gle.com>
Subject: Re: [PATCH net-next] tcp: enable data-less, empty-cookie SYN with
TFO_SERVER_COOKIE_NOT_REQD
On Mon, 16 Aug 2021 20:51:06 +0000 Luke Hsiao wrote:
> From: Luke Hsiao <lukehsiao@...gle.com>
>
> Since the original TFO server code was implemented in commit
> 168a8f58059a22feb9e9a2dcc1b8053dbbbc12ef ("tcp: TCP Fast Open Server -
> main code path") the TFO server code has supported the sysctl bit flag
> TFO_SERVER_COOKIE_NOT_REQD. Currently, when the TFO_SERVER_ENABLE and
> TFO_SERVER_COOKIE_NOT_REQD sysctl bit flags are set, a server connection
> will accept a SYN with N bytes of data (N > 0) that has no TFO cookie,
> create a new fast open connection, process the incoming data in the SYN,
> and make the connection ready for accepting. After accepting, the
> connection is ready for read()/recvmsg() to read the N bytes of data in
> the SYN, ready for write()/sendmsg() calls and data transmissions to
> transmit data.
>
> This commit changes an edge case in this feature by changing this
> behavior to apply to (N >= 0) bytes of data in the SYN rather than only
> (N > 0) bytes of data in the SYN. Now, a server will accept a data-less
> SYN without a TFO cookie if TFO_SERVER_COOKIE_NOT_REQD is set.
>
> Caveat! While this enables a new kind of TFO (data-less empty-cookie
> SYN), some firewall rules setup may not work if they assume such packets
> are not legit TFOs and will filter them.
>
> Signed-off-by: Luke Hsiao <lukehsiao@...gle.com>
> Acked-by: Neal Cardwell <ncardwell@...gle.com>
> Acked-by: Yuchung Cheng <ycheng@...gle.com>
> Signed-off-by: Eric Dumazet <edumazet@...gle.com>
Applied, thanks!
Powered by blists - more mailing lists