mptcp.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/6] MPTCP: Allow initial subflow to be disconnected
@ 2021-03-31  0:08 Mat Martineau
  2021-03-31  0:08 ` [PATCH net-next 1/6] mptcp: remove all subflows involving id 0 address Mat Martineau
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: Mat Martineau @ 2021-03-31  0:08 UTC (permalink / raw)
  To: netdev; +Cc: Mat Martineau, davem, kuba, matthieu.baerts, mptcp

An MPTCP connection is aggregated from multiple TCP subflows, and can
involve multiple IP addresses on either peer. The addresses used in the
initial subflow connection are assigned address id 0 on each side of the
link. More addresses can be added and shared with the peer using address
IDs of 1 or larger. MPTCP in Linux shares non-zero address IDs across
all MPTCP connections in a net namespace, which allows userspace to
manage subflow connections across a number of sockets. However, this
makes the address with id 0 a special case, since the IP address
associated with id 0 is potentially different for each socket.

This patch set allows the initial subflow to be disconnected when
userspace specifies an address to remove using both id 0 and an IP
address, or when the peer sends an RM_ADDR for id 0.

Patches 1 and 3 implement the change for requests from the peer and
userspace, respectively.

Patch 2 consolidates some code for disconnecting subflows.

Patches 4-6 update the self tests to cover removal of subflows using
address id 0.


Geliang Tang (5):
  mptcp: remove all subflows involving id 0 address
  mptcp: unify RM_ADDR and RM_SUBFLOW receiving
  mptcp: remove id 0 address
  selftests: mptcp: add addr argument for del_addr
  selftests: mptcp: remove id 0 address testcases

Matthieu Baerts (1):
  selftests: mptcp: avoid calling pm_nl_ctl with bad IDs

 net/mptcp/pm_netlink.c                        | 129 +++++++++++-------
 .../testing/selftests/net/mptcp/mptcp_join.sh |  35 ++++-
 .../testing/selftests/net/mptcp/pm_netlink.sh |   6 +-
 tools/testing/selftests/net/mptcp/pm_nl_ctl.c |  34 ++++-
 4 files changed, 143 insertions(+), 61 deletions(-)


base-commit: cda1893e9f7c1d78e391dbb6ef1798cd32354113
-- 
2.31.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-03-31  0:50 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-31  0:08 [PATCH net-next 0/6] MPTCP: Allow initial subflow to be disconnected Mat Martineau
2021-03-31  0:08 ` [PATCH net-next 1/6] mptcp: remove all subflows involving id 0 address Mat Martineau
2021-03-31  0:08 ` [PATCH net-next 2/6] mptcp: unify RM_ADDR and RM_SUBFLOW receiving Mat Martineau
2021-03-31  0:08 ` [PATCH net-next 3/6] mptcp: remove id 0 address Mat Martineau
2021-03-31  0:08 ` [PATCH net-next 4/6] selftests: mptcp: avoid calling pm_nl_ctl with bad IDs Mat Martineau
2021-03-31  0:08 ` [PATCH net-next 5/6] selftests: mptcp: add addr argument for del_addr Mat Martineau
2021-03-31  0:08 ` [PATCH net-next 6/6] selftests: mptcp: remove id 0 address testcases Mat Martineau
2021-03-31  0:50 ` [PATCH net-next 0/6] MPTCP: Allow initial subflow to be disconnected patchwork-bot+netdevbpf

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).