[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20221125222958.958636-1-matthieu.baerts@tessares.net>
Date: Fri, 25 Nov 2022 23:29:46 +0100
From: Matthieu Baerts <matthieu.baerts@...sares.net>
To: "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>,
Mat Martineau <mathew.j.martineau@...ux.intel.com>,
Matthieu Baerts <matthieu.baerts@...sares.net>,
Paolo Abeni <pabeni@...hat.com>, Shuah Khan <shuah@...nel.org>
Cc: Benjamin Hesmans <benjamin.hesmans@...sares.net>,
linux-kernel@...r.kernel.org, linux-kselftest@...r.kernel.org,
mptcp@...ts.linux.dev, netdev@...r.kernel.org
Subject: [PATCH net-next 0/8] mptcp: MSG_FASTOPEN and TFO listener side support
Before this series, only the initiator of a connection was able to combine both
TCP FastOpen and MPTCP when using TCP_FASTOPEN_CONNECT socket option.
These new patches here add (in theory) the full support of TFO with MPTCP, which
means:
- MSG_FASTOPEN sendmsg flag support (patch 1/8)
- TFO support for the listener side (patches 2-5/8)
- TCP_FASTOPEN socket option (patch 6/8)
- TCP_FASTOPEN_KEY socket option (patch 7/8)
To support TFO for the server side, a few preparation patches are needed
(patches 2 to 5/8). Some of them were inspired by a previous work from Benjamin
Hesmans.
Note that TFO support with MPTCP has been validated with selftests (patch 8/8)
but also with Packetdrill tests running with a modified but still very WIP
version supporting MPTCP. Both the modified tool and the tests are available
online:
https://github.com/multipath-tcp/packetdrill/
Dmytro Shytyi (5):
mptcp: add MSG_FASTOPEN sendmsg flag support
mptcp: implement delayed seq generation for passive fastopen
mptcp: add subflow_v(4,6)_send_synack()
mptcp: add TCP_FASTOPEN sock option
selftests: mptcp: mptfo Initiator/Listener
Matthieu Baerts (1):
mptcp: add support for TCP_FASTOPEN_KEY sockopt
Paolo Abeni (2):
mptcp: track accurately the incoming MPC suboption type
mptcp: consolidate initial ack seq generation
net/mptcp/Makefile | 2 +-
net/mptcp/fastopen.c | 73 ++++++++
net/mptcp/options.c | 25 ++-
net/mptcp/protocol.c | 39 +---
net/mptcp/protocol.h | 28 ++-
net/mptcp/sockopt.c | 9 +-
net/mptcp/subflow.c | 105 ++++++++---
.../selftests/net/mptcp/mptcp_connect.c | 171 +++++++++++++-----
.../selftests/net/mptcp/mptcp_connect.sh | 21 +++
9 files changed, 358 insertions(+), 115 deletions(-)
create mode 100644 net/mptcp/fastopen.c
Cc: Benjamin Hesmans <benjamin.hesmans@...sares.net>
base-commit: a6e3d86ece0b42a571a11055ace5c3148cb7ce76
--
2.37.2
Powered by blists - more mailing lists