mptcp: improve multiple xmit streams support
Status from this message: This series was applied to netdev/net-next.git (refs/heads/master):
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v3 Latest13 patches 1 replyApplied 13/13
- v213 patches 6 repliesSuperseded
- v113 patches 2 repliesSuperseded
Changes in v3 from the cover letter
- rebased,
- fixed checkpatch issue in patch 1/13
- fixed some state tracking issues in patch 8/13
Patches in v3 All 13 applied
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/13 | tcp: factor out tcp_build_frag()include/ net/ | +70 | 0 replies | Applied |
| 2/13 | mptcp: use tcp_build_frag()net/ | +8 | 0 replies | Applied |
| 3/13 | tcp: factor out __tcp_close() helperinclude/ net/ | +8 | 0 replies | Applied |
| 4/13 | mptcp: introduce mptcp_schedule_worknet/ net/ net/ | +24 | 0 replies | Applied |
| 5/13 | mptcp: reduce the arguments of mptcp_sendmsg_fragnet/ | +29 | 0 replies | Applied |
| 6/13 | mptcp: add accounting for pending datanet/ net/ | +36 | 0 replies | Applied |
| 7/13 | mptcp: introduce MPTCP snd_nxtnet/ net/ net/ | +16 | 0 replies | Applied |
| 8/13 | mptcp: refactor shutdown and closenet/ net/ net/ +2 more | +273 | 0 replies | Applied |
| 9/13 | mptcp: move page frag allocation in mptcp_sendmsg()net/ | +189 | 0 replies | Applied |
| 10/13 | mptcp: try to push pending data on snd una updatesnet/ | +3 | 0 replies | Applied |
| 11/13 | mptcp: rework poll+nospace handlingnet/ net/ net/ | +54 | 0 replies | Applied |
| 12/13 | mptcp: keep track of advertised windows right edgenet/ net/ net/ | +69 | 0 replies | Applied |
| 13/13 | mptcp: send explicit ack on delayed ack_seq incrnet/ | +21 | 0 replies | Applied |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v3 yet.
Cover letter [PATCH net-next v3 00/13] mptcp: improve multiple xmit streams support
This series improves MPTCP handling of multiple concurrent xmit streams.
The to-be-transmitted data is enqueued to a subflow only when the send window is open, keeping the subflows xmit queue shorter and allowing for faster switch-over.
The above requires a more accurate msk socket state tracking and some additional infrastructure to allow pushing the data pending in the msk xmit queue as soon as the MPTCP's send window opens (patches 6-10).
As a side effect, the MPTCP socket could enqueue data to subflows after close() time - to completely spooling the data sitting in the msk xmit queue. Dealing with the requires some infrastructure and core TCP changes (patches 1-5)
Finally, patches 11-12 introduce a more accurate tracking of the other end's receive window.
Overall this refactor the MPTCP xmit path, without introducing new features - the new code is covered by the existing self-tests.
v2 -> v3:
- rebased,
- fixed checkpatch issue in patch 1/13
- fixed some state tracking issues in patch 8/13
v1 -> v2:
- this is just a report, to cope with patchwork issues, no changes at all
Florian Westphal (2):
mptcp: rework poll+nospace handling
mptcp: keep track of advertised windows right edge
Paolo Abeni (11):
tcp: factor out tcp_build_frag()
mptcp: use tcp_build_frag()
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
mptcp: send explicit ack on delayed ack_seq incr
include/net/tcp.h | 4 + net/ipv4/tcp.c | 128 +++--- net/mptcp/options.c | 30 +- net/mptcp/pm.c | 3 +- net/mptcp/pm_netlink.c | 6 +- net/mptcp/protocol.c | 998 ++++++++++++++++++++++++----------------- net/mptcp/protocol.h | 72 ++- net/mptcp/subflow.c | 33 +- 8 files changed, 776 insertions(+), 498 deletions(-)
Signature · 1 line
2.26.2