Recently, MPTCP-related patch from Davide has been applied in 'net-next'
- 767d3ded5fb8 (net: mptcp: don't hang before sending 'MP capable with
This created conflicts:
- 02366081040c: conflict in t/mptcp-Add-path-manager-interface
- fc3cbf097321: conflict in
- 501e7cf63225: conflict in
- 6ed26433863c..844c9c9ed5a1 -- net/mptcp: result
I hope they have been resolved as expected.
Tests are in progress. The "export" branch will be updated after the tests.
Matthieu Baerts | R&D Engineer
Tessares SA | Hybrid Access Solutions
1 Avenue Jean Monnet, 1348 Louvain-la-Neuve, Belgium
Florian and Matthieu -
From the meeting notes, it looks like "subflow: place further subflows on
new 'join_list'" is the commit that you're planning to squash.
What do you think about also squashing "mptcp: increment MIB counters in a
few places" in to the previous MIB commit? Seems like our patch count for
part 3 is still kind of high.
Here's my draft for the cover letter.
Paolo, is the path manager part correct? Anything I should add there?
Note that I proposed "netdev-v1-for-5.6" for the tag because there's an
existing "netdev-v1-part3" tag, although that "part 3" patch set was never
sent to netdev (it was combined with the part 2 posting) - we can use the
v1-part3 tag if people prefer that.
Multipath TCP: Multiple subflows and path management
This patch set allows more than one TCP subflow to be established and used
for a multipath TCP connection. Subflows are added to an existing
connection using the MP_JOIN option during the 3-way handshake. With
multiple TCP subflows available, sent data is now stored in the MPTCP
socket so it may be retransmitted on any TCP subflow if there is no
DATA_ACK before a timeout. If an MPTCP-level timeout occurs, data is
retransmitted using an available subflow. Storing this sent data requires
the addition of memory accounting at the MPTCP level, which was previously
delegated to the single subflow. Incoming DATA_ACKs now free data from the
MPTCP-level retransmit buffer.
IP addresses available for new subflow connections can now be advertised
and received with the ADD_ADDR option, and the corresponding REMOVE_ADDR
option likewise advertises that an address is no longer available.
The MPTCP path manager netlink interface has commands to set in-kernel
limits for the number of concurrent subflows and control the advertisement
of IP addresses between peers.
To track and debug MPTCP connections there are new MPTCP MIB counters, and
subflow context can be requested using inet_diag. The MPTCP self-tests now
validate multiple-subflow operation and the netlink path manager
Thank you for your review. You can find us at mptcp(a)lists.01.org and
Existing code allows ADD_ADDR option lengths that include the port field,
so we should correctly parse options with those lengths.
Peter Krystad (2):
mptcp: Parse optional port field of ADD_ADDR
mptcp: Include ADD_ADDR port value for path manager
include/linux/tcp.h | 1 +
net/mptcp/options.c | 11 +++++++++++
2 files changed, 12 insertions(+)
This series contains a "squashable" version of:
subflow: place further subflows on new 'join_list'
and a bunch of minor cleanup (unneeded check after not so recent net-next
Rebased tree available at:
this supersede the squashed branch posted previously.
Self-tests loop running. Will update here with results.
options.c | 11 +++--------
protocol.c | 31 ++++++++++++++++++++++++++++++-
protocol.h | 2 ++
subflow.c | 5 ++++-
4 files changed, 39 insertions(+), 10 deletions(-)