* [MPTCP] [RFC PATCH 0/3] mptcp: just another recvmsg refactor
@ 2019-10-13 16:28 Paolo Abeni
0 siblings, 0 replies; only message in thread
From: Paolo Abeni @ 2019-10-13 16:28 UTC (permalink / raw)
To: mptcp
[-- Attachment #1: Type: text/plain, Size: 1139 bytes --]
This start constructing the instrucutre to support pulling data from
multiple subflow. At the current stage uses a very simply approach, dropping
any out-of-order data and reading from any subflow with valid data.
The above should work quite nicely in active backup scenario and possibly
even with multiple subflows sending data concurrently - with a low bwidth and
a huge number of retransmissions.
This is a not_so_early draft, shared as it may pave some ground and/or
partially overlap with DATA_FIN support effort
Note that this rewrite completely the recvmsg() main loop to mirror more closely
the TCP recvmsg() main loop, likely fixing some bug in respect to signal and
error condition handling.
Paolo Abeni (3):
mptcp: move some helper into the header file
mptcp: flush duplicate data at data_ready() time
mptcp: recvmsg() can drain data from multiple subflows
net/mptcp/protocol.c | 360 +++++++++++++------------------------------
net/mptcp/protocol.h | 31 +++-
net/mptcp/subflow.c | 270 +++++++++++++++++++++++++++++++-
3 files changed, 403 insertions(+), 258 deletions(-)
--
2.21.0
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2019-10-13 16:28 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-10-13 16:28 [MPTCP] [RFC PATCH 0/3] mptcp: just another recvmsg refactor 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.