MPTCP is not ParetoOptimal Performance Issues and a

  • Slides: 26
Download presentation
MPTCP is not Pareto-Optimal: Performance Issues and a Possible Solution Ramin Khalili (T-Labs/TUB) Nicolas

MPTCP is not Pareto-Optimal: Performance Issues and a Possible Solution Ramin Khalili (T-Labs/TUB) Nicolas Gast (LCA 2 -EPFL) Miroslav Popovic (LCA 2 -EPFL) Utkarsh Upadhyay (LCA 2 -EPFL) Jean-Yves Le Boudec (LCA 2 -EPFL) 1

MPTCP: Multi-path Transport Solution of IETF q allows a user to split its traffic

MPTCP: Multi-path Transport Solution of IETF q allows a user to split its traffic across multiple paths; improve reliability and throughput q challenge: design of congestion control algorithm 2

LIA (RFC 6356): "Linked-Increases Algorithm" • adhoc design based on 3 goals 1. improve

LIA (RFC 6356): "Linked-Increases Algorithm" • adhoc design based on 3 goals 1. improve throughput: total throughput ≥ TCP over best path 2. do not harm: not more aggressive than a TCP over a path 3. balance congestion while meeting the first two goals • as also stated in RFC 6356, LIA does not fully satisfy goal 3 3

We identified problems with the current MPTCP implementation • P 1: MPTCP can penalize

We identified problems with the current MPTCP implementation • P 1: MPTCP can penalize users • P 2: MPTCP users are excessively aggressive toward TCP users • P 1 and P 2 are attributed to LIA • outline 1. examples of performance issues 2. can these problems be fixed in practice? 4

Measurement-based study supported by theory 5

Measurement-based study supported by theory 5

upgrading some TCP users to MPTCP can reduce throughput of others without any benefit

upgrading some TCP users to MPTCP can reduce throughput of others without any benefit to the upgraded users MPTCP CAN PENALIZE USERS 6

Scenario A: MPTCP can penalize TCP users high speed connections bottleneck for Type 1

Scenario A: MPTCP can penalize TCP users high speed connections bottleneck for Type 1 users is at server side N 1 C 1 N 1 x 1 bottleneck for Type 2 users is at access side 7

Scenario A: MPTCP can penalize TCP users high speed connections bottleneck for Type 1

Scenario A: MPTCP can penalize TCP users high speed connections bottleneck for Type 1 users is at server side N 1 C 1 x 2 N 1( x 1+x 2 ) bottleneck for Type 2 users is at access side 8

Throughput of type 2 users reduced without any benefit for type 1 users x

Throughput of type 2 users reduced without any benefit for type 1 users x 2 N 1 C 1 9

We compare MPTCP with a theoretical baselines • optimal algorithm with probing cost: theoretical

We compare MPTCP with a theoretical baselines • optimal algorithm with probing cost: theoretical 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 10

Part of problem is in nature of things, but MPTCP seems to be far

Part of problem is in nature of things, but MPTCP seems to be far from optimal x 2 N 1 C 1 11

Scenario B: MPTCP can penalize other MPTCP users bottleneck with capacity Cx bottleneck with

Scenario B: MPTCP can penalize other MPTCP users bottleneck with capacity Cx bottleneck with capacity CT 12

By upgrading red users to MPTCP, the throughput of everybody decreases decrease is 3%

By 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, CX=27 and CT=36 Mbps 13

CAN THE SUBOPTIMALITY OF MPTCP WITH LIA BE FIXED? 14

CAN THE SUBOPTIMALITY OF MPTCP WITH LIA BE FIXED? 14

LIA’s design forces tradeoff between responsiveness and load balancing provide load balancing be responsive

LIA’s design forces tradeoff between responsiveness and load balancing provide load balancing be responsive optimal load balacing but not responsive LIA’s implementation (RFC 6356) responsive but bad load balancing ε=0 ε=1 ε=2 ε is a design parameter

OLIA: an algorithm inspired by utility maximization framework • simultaneously provides responsiveness and load

OLIA: 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 16

Definition: set of best paths and paths with maximum windows • for a user

Definition: 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 17

OLIA: "Opportunistic Linked-Increases Algorithm" For a user u, on each path r in Ru:

OLIA: "Opportunistic Linked-Increases Algorithm" For a user u, on each path r in Ru: • increase part: for each ACK on r, increase wr by optimal load balancing responsiveness α r= • decrease part: each loss on r, decreases wr by wr/2 18

An illustrative example of OLIA’s behavior MPTCP with OLIA MPTCP with LIA paths have

An illustrative example of OLIA’s behavior MPTCP with OLIA MPTCP with LIA paths have similar quality, OLIA uses both (non-flappy and responsive) second path is congested, OLIA uses 19 only the first one

Theoretical results: OLIA solves problems P 1 and P 2 • using a fluid

Theoretical results: OLIA solves problems P 1 and P 2 • 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 20

Scenario A: OLIA performs close to optimal algorithm with probing cost x 2 N

Scenario A: OLIA performs close to optimal algorithm with probing cost x 2 N 1 C 1 21

Scenario B: using OLIA, we observe 3. 5% drop in aggregate throughput MPTCP with

Scenario B: using OLIA, we observe 3. 5% drop in aggregate throughput MPTCP with OLIA MPTCP with LIA 15 blue and 15 red users, CX=27 and CT=36 Mbps 22

Summary • MPTCP with LIA suffers from important performance problems • these problems can

Summary • 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 23

BACKUP SLIDES 24

BACKUP SLIDES 24

Scenario C: MPTCP users could be excessively aggressive towards regular TCP users (P 2)

Scenario C: MPTCP users could be excessively aggressive towards regular TCP users (P 2) wifi 25

Scenario C: OLIA achieves much better fairness (solving P 2) when C 1/C 2≥

Scenario C: OLIA achieves much better fairness (solving P 2) when C 1/C 2≥ 1, for any theoretical fairness criterion: (x 1+x 2)/C 1=1 and 26 y/C 2=1