mbox series

[net-next,00/11] mptcp: Add port parameter to ADD_ADDR option

Message ID 20201209235128.175473-1-mathew.j.martineau@linux.intel.com (mailing list archive)
Headers show
Series mptcp: Add port parameter to ADD_ADDR option | expand

Message

Mat Martineau Dec. 9, 2020, 11:51 p.m. UTC
The ADD_ADDR MPTCP option is used to announce available IP addresses
that a peer may connect to when adding more TCP subflows to an existing
MPTCP connection. There is an optional port number field in that
ADD_ADDR header, and this patch set adds capability for that port number
to be sent and received.

Patches 1, 2, and 4 refactor existing ADD_ADDR code to simplify implementation
of port number support.

Patches 3 and 5 are the main functional changes, for sending and
receiving the port number in the MPTCP ADD_ADDR option.

Patch 6 sends the ADD_ADDR option with port number on a bare TCP ACK,
since the extra length of the option may run in to cases where
sufficient TCP option space is not available on a data packet.

Patch 7 plumbs in port number support for the in-kernel MPTCP path
manager.

Patches 8-11 add some optional debug output and a little more cleanup
refactoring.


Geliang Tang (11):
  mptcp: unify ADD_ADDR and echo suboptions writing
  mptcp: unify ADD_ADDR and ADD_ADDR6 suboptions writing
  mptcp: add port support for ADD_ADDR suboption writing
  mptcp: use adding up size to get ADD_ADDR length
  mptcp: add the outgoing ADD_ADDR port support
  mptcp: send out dedicated packet for ADD_ADDR using port
  mptcp: add port parameter for mptcp_pm_announce_addr
  mptcp: print out port and ahmac when receiving ADD_ADDR
  mptcp: drop rm_addr_signal flag
  mptcp: rename add_addr_signal and mptcp_add_addr_status
  mptcp: use the variable sk instead of open-coding

 include/net/mptcp.h    |   1 +
 net/mptcp/options.c    | 103 ++++++++++++++++++++++++++---------------
 net/mptcp/pm.c         |  40 +++++++++++-----
 net/mptcp/pm_netlink.c |  31 +++++++++----
 net/mptcp/protocol.h   |  50 ++++++++++++--------
 5 files changed, 146 insertions(+), 79 deletions(-)

Comments

David Miller Dec. 10, 2020, 3:04 a.m. UTC | #1
From: Mat Martineau <mathew.j.martineau@linux.intel.com>
Date: Wed,  9 Dec 2020 15:51:17 -0800

> The ADD_ADDR MPTCP option is used to announce available IP addresses
> that a peer may connect to when adding more TCP subflows to an existing
> MPTCP connection. There is an optional port number field in that
> ADD_ADDR header, and this patch set adds capability for that port number
> to be sent and received.
> 
> Patches 1, 2, and 4 refactor existing ADD_ADDR code to simplify implementation
> of port number support.
> 
> Patches 3 and 5 are the main functional changes, for sending and
> receiving the port number in the MPTCP ADD_ADDR option.
> 
> Patch 6 sends the ADD_ADDR option with port number on a bare TCP ACK,
> since the extra length of the option may run in to cases where
> sufficient TCP option space is not available on a data packet.
> 
> Patch 7 plumbs in port number support for the in-kernel MPTCP path
> manager.
> 
> Patches 8-11 add some optional debug output and a little more cleanup
> refactoring.

Series applied, thanks.