Title: MPTCP is not Pareto-Optimal: Performance Issues and a Possible Solution
1MPTCP is not Pareto-Optimal Performance Issues
and a Possible Solution
- Ramin Khalili (T-Labs/TUB)
- Nicolas Gast (LCA2-EPFL)
- Miroslav Popovic (LCA2-EPFL)
- Utkarsh Upadhyay (LCA2-EPFL)
- Jean-Yves Le Boudec (LCA2-EPFL)
2MPTCP Multi-path Transport Solution of IETF
- allows a user to split its traffic across
multiple paths improve reliability and
throughput - challenge design of congestion control algorithm
3LIA (RFC 6356) "Linked-Increases Algorithm"
- adhoc design based on 3 goals
- improve throughput total throughput TCP over
best path - do not harm not more aggressive than a TCP over
a path - balance congestion while meeting the first two
goals - as also stated in RFC 6356, LIA does not fully
satisfy goal 3
4We identified problems with the currentMPTCP
implementation
- P1 MPTCP can penalize users
- P2 MPTCP users are excessively aggressive toward
TCP users - P1 and P2 are attributed to LIA
- outline
- examples of performance issues
- can these problems be fixed in practice?
5Measurement-based study supported by theory
6MPTCP CAN PENALIZE USERS
- upgrading some TCP users to MPTCP can reduce the
throughput of others without any benefit to the
upgraded users
7Scenario A MPTCP can penalize TCP users
bottleneck for Type 1users is at server side
high speed connections
N1 C1
N1 x1
bottleneck for Type 2 users is at access side
8Scenario A MPTCP can penalize TCP users
bottleneck for Type 1users is at server side
high speed connections
N1 C1
x2
N1( x1x2 )
bottleneck for Type 2 users is at access side
9Throughput of type 2 users reduced without any
benefit for type 1 users
10We compare MPTCP with a theoretical baselines
- optimal algorithm with probing costtheoretical
optimal load balancing including minimal probing
traffic - using a windows-based algorithm, a minimum
probing traffic of 1 MSS/RTT is sent over each
path
11Part of problem is in nature of things, but MPTCP
seems to be far from optimal
12Scenario B MPTCP can penalize other MPTCP users
bottleneck with capacity Cx
bottleneck with capacity CT
13By upgrading red users to MPTCP, the throughput
of everybody decreases
decrease is 3 using optimal algorithm with
probing cost
15 blue and 15 red users, CX27 and CT36 Mbps
14CAN THE SUBOPTIMALITY OF MPTCP WITH LIA BE FIXED?
15LIAs design forces tradeoff between
responsiveness and load balancing
provide load balancing
be responsive
e is a design parameter
16OLIA an algorithm inspired by utility
maximization framework
- simultaneously provides responsiveness and load
balancing - an adjustment of optimal algorithm
- by adapting windows increases as a function of
quality of paths, we make it responsive and
non-flappy - implemented on the MPTCP Linux kernel
17Definition set of best paths and paths with
maximum windows
- for a user u, with Ru as set of paths, define
- set of best paths
- set of path with maximum windows
- number of successful transmissions
between losses on path r - rttr(t) RTT on path r
18OLIA "Opportunistic Linked-Increases Algorithm"
- For a user u, on each path r in Ru
- increase part for each ACK on r, increase wr by
- ar
- decrease part each loss on r, decreases wr by
wr/2
optimal load balancing
responsiveness
19An illustrative example of OLIAs behavior
MPTCP with OLIA
MPTCP with OLIA
MPTCP with LIA
MPTCP with LIA
paths have similar quality, OLIA uses both
(non-flappy and responsive)
second path is congested, OLIA uses only the
first one
20Theoretical results OLIA solves problems P1 and
P2
- using a fluid model of OLIA
- Theorem OLIA satisfies design goals of LIA (RFC
6356) - Theorem OLIA is Pareto optimal
- Theorem when all paths of a user have similar
RTTs, OLIA provides optimal load balancing
21Scenario A OLIA performs close to optimal
algorithm with probing cost
22Scenario B using OLIA, we observe 3.5 drop in
aggregate throughput
MPTCP with OLIA
MPTCP with LIA
15 blue and 15 red users, CX27 and CT36 Mbps
23Summary
- MPTCP with LIA suffers from important performance
problems - these problems can be mitigated in practice
- OLIA inspired by utility maximization framework
- suggestion congestion control part of MPTCP
should be revisited by the IETF committees
24BACKUP SLIDES
25Scenario C MPTCP users could be excessively
aggressive towards regular TCP users (P2)
26Scenario C OLIA achieves much better fairness
(solving P2)
when C1/C21, for any theoretical fairness
criterion (x1x2)/C11 and y/C21