A Survey On Multipath Transport Protocols: Bachir Chihani - Denis Collange Orange Labs Sophia Antipolis, France
A Survey On Multipath Transport Protocols: Bachir Chihani - Denis Collange Orange Labs Sophia Antipolis, France
r
w
r
Algorithm Fully Coupled
w
r
= w
r
+
1
w
per ACK on path r
w
r
= max(w
r
w
2
, 1) per loss event on path r
Most of the time either one path or another is used with this
algorithm, and rarely both. This phenomenon is called Flap-
piness. To reduce appiness, authors proposed the following
algorithm:
Algorithm Linked Increases [11]
w
r
= w
r
+
a
w
per ACK on path r
w
r
=
wr
2
per loss event on path r
In more general case where RTT (round-trip time) are
not equal for the all paths, the authors adjust the precedent
algorithm:
Algorithm RTT Compensator
w
r
= w
r
+min(
a
w
,
1
w
) per ACK on path r
w
r
=
wr
2
per loss event on path r
IV. DISCUSSION
Follow we describe the different mechanisms that a reliable
and connection oriented transport protocol msut have them,
also the modication which must occurs to these mechanisms
for adapting them to the multipah.
A. Congestion control
For a multipath TCP connection, the congestion control
must happen in each used paths so that we can match in
real-time manner the quantity of data sent on a path and
the capacity of this one. Also, a congestion control for a
multipath TCP solution must satisfy the previously stated
goals: improve throughput, do no harm, balance congestion.
Like in TCP and for each path, the sender has to maintain a set
of parameters for the congestion control and the updates after
receiving acknowledgement and duplicated acknowledgement:
RTT, RTO, ssthresh, cwnd, etc. The congestion control must
happen on each path in takking into account its characteristics.
It is foreseeable that a coupling strategy can be used to
combin the differents paths parameters in order to aggregate
the ressource of the available paths, or move away data from
congested paths.
B. Flow control
Most of the proposed solutions for ow control in the
multipath transport protocols are a simple adaptation of the
TCP control ow. The receiver maintains a single window
shared between all subows in order to not limit the speed
of some of them. The sender and the receiver agree on the
awnd (advertised window) which represents the quantity of
data which can be sent without exchanging acknowledgement.
h
a
l
-
0
0
6
4
1
5
3
3
,
v
e
r
s
i
o
n
1
-
2
0
D
e
c
2
0
1
1
The sender can then divides the window size between all the
available paths according to the used data distribution policy.
C. Acknowledgement management
When receiving an acknowledgement on a path, the corre-
sponding parameters are updated (round trip time, bandwidth,
loss rate, congestion window). If some data need to be
retransmitted, it is possible to do it on the same path used
rstly to transmitted these data (even if that path is potentially
congested), or on another one which is the preferable solution
because the retransmission will be faster.
D. Loss packets recovery
In standard TCP, loss recovery happens after an RTO
(Retransmission TimeOut) expiration, or the reception of three
duplicated acknowledgment. The recovery consists of sending
all not acked data. In a multipath context, the same mecha-
nisms can be reused but after adaptation. For the duplicated
acknowledgement we can vary the threshold, differentiate
between spurious acknowledgements caused by the arrival of
packets in out of sequence manner at the receiver, and the
real acknowledgement stating a potential lost. For the RTO,
for each used path needs a specic RTO so that when the RTO
expires only the concerned path will be affected.
E. Failure management
To make sure that a path which wasnt used for a certain
time is back operationnal, the protocol may use sensing
message (like Heartbeat in SCTP) in dened interval. If all
paths are used during a communication, the protocol may use
a counter returned to zero each time some data are received
and in case of expiration the path can be considered as fail.
F. Data distribution over paths
Most of the proposals use a Round Robin based sequencing
policy, and distribute data fairly distributed. But paths have
characteristics (latency, capacity, jitter, loss rate, etc.) which
are potentially differents, a such policy is not intersting for
multipath. Other protocols use an ameliorated Round Robin
policy and distribute on each path an amount of data which
is proportional to the throughput of the used path, ou only
send data on the best path (like ATLB, M/TCP). Another
proposal consist of sending data out of sequence and with
proportional amount to the path characteristics so that data
arrives in sequence to the receiver. A distribution method can
take into account any combinaison of the parameters capacity,
latency, jitter, loss rate, etc. But it has to ensure that data arrive
in sequence without an overload a path while others are not
used.
G. Managing out of sequence data arrival
Packets may take different paths, thus they may arrive at
the receiver out of sequence. The receiver has to hold a free
space to save these packets from the other which are makin a
normal sequencing.
H. Path managment
Path management (i.e. adding or droping paths) may be
done by using the option eld of the TCP header. For choosing
paths, these have to be disjoined which means they do not
share the same physical link. Otherwise, in case of congestion
or failure of one of them, all others will also be congested or
fail. For the connection management, most of the presented
protocols, even those no compatible to TCP, use the TCPs
three way handshake.
V. CONCLUSION
REFERENCES
[1] Yo Dong, N. Pissinou, and J. Wang. Concurrency Handling in TCP.
5` eme conf erence annuelle en Communication Networks and Services
Research (CNSR07). 2007 IEEE.
[2] B. Kancherla, G. Narayan, K. Gopinath. Performance Evaluation of
Multiple TCP connections in iSCSI, 24th IEEE Conference on Mass
Storage Systems and Technologies (MSST 07), 2007.
[3] L. Magalhaes and R. Kravets. Transport level mechanisms for bandwidth
aggregation on mobile hosts. ICNP (2001), 0165.
[4] A. Baldini, L. De Carli et F. Risso. Increasing Performance of TCP Data
Transfers Through Multiple Parallel Connections, IEEE Symposium on
Computers and Communications (ISCC 09), Sousse, Tunisia, July 2009.
[5] T. Hacker and B. Athey, The End-to-End Performance Effects of Parallel
TCP Sockets on a Lossy Wide-Area Network , in IEEE IPDPS, Florida,
Apr. 2002.
[6] L. Ong, J. Yoakum, An Introduction to the Stream Control Transmission
Protocol (SCTP), RFC 3286, May 2002.
[7] Y. Hasegawa, I. Yamaguchi, T. Hama, H. Shimonishi and T. Murase.
Improved Data Distribution for Multipath TCP communication, IEEE
Globecom 2005.
[8] D. Wischik, M. Handley and M. Bagnulo Braun, The Resource Pooling
Principle, ACM SIGCOMM Computer Communication Review, Vol
38.5, pp 47-52, October 2008.
[9] A. Ford, C. Raiciu and M. Handley, TCP Extensions for Multipath
Operation with Multiple Addresses, draft-ietf-mptcp-multiaddressed-01,
July 12, 2010.
[10] C. Raiciu, D. Wischik and M. Handley, Practical Congestion Control
for Multipath Transport Protocols, UCL Technical Report, 2009.
[11] C. Raiciu, M. Handley and D. Wischik, Coupled Multipath-Aware
Congestion Control, draft-raiciu-mptcp-congestion-01, March 2010.
[12] D. Sarkar.A Concurrent Multipath TCP and Its Markov Model, IEEE
ICC proceedings, 2006.
[13] M. Zhang, J. Lai, A. Krishnamurthy, L. Peterson and R. Wang. A
transport layer approach for improving end-to-end performance and
robustness using redundant paths, In ATEC04: Proceedings of the
annual conference on USENIX Annual Technical Conference (Berkeley,
CA, USA, 2004), USENIX Association, pp. 8-8.
[14] K. Rojviboonchai and H. Aida. An evaluation of multi-path Transmis-
sion Control Protocol (M/TCP) with robust acknowledgement schemes,
Proc. Internet Conference 2002 (IC2002), Univ. Tokyo, Japan, October
2002.
h
a
l
-
0
0
6
4
1
5
3
3
,
v
e
r
s
i
o
n
1
-
2
0
D
e
c
2
0
1
1