All of lore.kernel.org
 help / color / mirror / Atom feed
* [MPTCP] [PATCH v1 0/9] mptcp: support for queuing data at mptcp-level
@ 2020-09-28 15:04 Paolo Abeni
  0 siblings, 0 replies; only message in thread
From: Paolo Abeni @ 2020-09-28 15:04 UTC (permalink / raw)
  To: mptcp 

[-- Attachment #1: Type: text/plain, Size: 2004 bytes --]

This is necessary to cope correctly with large sendbuffer (larger then snd wnd)
while respecting the MPTCP level snd window.

A major rework of both xmit and shudown path is required to support this
feature (patches 6 and 7). To try to keep the related patches as small as
possible, a bunch of new helpers is created by patches 1-5.
Note that patch 3 can stand for it's own merit and possibly be upstreamed soon.

Finally patch 8 uses the MPTCP equivalent of tcp_push_pending_frames(), to
spool queued data ad MPTCP level, as soon as the windows allow that.

This iteration includes all the fixes mentioned in the ML on top of the RFC,
plus some mores - all noted in the individual patches changelog. It also
includes the sndwnd patch from Florian, rebased.

Still not bugs free - I see some not-so-frequent timeouts in mptcp_connect.sh
tests and tput in simult_xmit tests are less stable, but should be notably
better than previous iteration. I suggest considering for merge on the export
branch.

Not strictily related to this series: we currently send DATA_FIN ack only once
- the behaviour is not change here. If that is dropped, we will never
retransmit, and the peer will be stuck.

Florian Westphal (1):
  mptcp: keep track of advertised windows right edge

Paolo Abeni (8):
  tcp: factor out __tcp_close() helper
  mptcp: introduce mptcp_schedule_work
  mptcp: reduce the arguments of mptcp_sendmsg_frag
  mptcp: add accounting for pending data
  mptcp: introduce MPTCP snd_nxt
  mptcp: refactor shutdown and close
  mptcp: move page frag allocation in mptcp_sendmsg()
  mptcp: try to push pending data on snd una updates

 include/net/tcp.h    |   1 +
 net/ipv4/tcp.c       |   9 +-
 net/mptcp/options.c  |  24 +-
 net/mptcp/pm.c       |   4 +-
 net/mptcp/protocol.c | 783 +++++++++++++++++++++++++------------------
 net/mptcp/protocol.h |  67 +++-
 net/mptcp/subflow.c  |  21 +-
 7 files changed, 560 insertions(+), 349 deletions(-)

-- 
2.26.2

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-09-28 15:04 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-09-28 15:04 [MPTCP] [PATCH v1 0/9] mptcp: support for queuing data at mptcp-level Paolo Abeni

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.