+ All Categories
Home > Documents > Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Date post: 16-Oct-2021
Category:
Upload: others
View: 14 times
Download: 0 times
Share this document with a friend
37
Improving MPTCP Performance by Enabling Sub-Flow Selection over a SDN Supported Network Subhrendu Chattopadhyay 1 Samar Shailendra 2 Sukumar Nandi 1 Sandip Chakraborty 3 1 IIT Guwahati , 2 TCS Research & Innovation , 3 IIT Kharagpur October 16, 2018
Transcript
Page 1: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Improving MPTCP Performance by EnablingSub-Flow Selection over a SDN Supported

Network

Subhrendu Chattopadhyay1 Samar Shailendra2

Sukumar Nandi1 Sandip Chakraborty3

1IIT Guwahati , 2TCS Research & Innovation , 3IIT Kharagpur

October 16, 2018

Page 2: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Organization

1 Introduction and Motivation

2 Objectives

3 Solution Approach

4 Implementation and Results

5 Summary

6 Conclusion

Page 3: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

A Motivating Statistics

“By 2021, 94 percent of workloads and compute instances willbe processed by cloud data centers; 6% will be processed bytraditional data centers”[1]

CDN uses data centers

Demands high bandwidth requirement for data centers

Data center topology allows multiple paths between nodesCan exploit bandwidth aggregationBandwidth aggregation in data link layer causes managementissues

Bandwidth aggregation in transport layer

Multipath TCP (MPTCP)[2]

[1]VNI Forecast Highlights Tool.https://www.cisco.com/c/m/en_us/solutions/service-provider/vni-forecast-highlights.html.

[2]Alan Ford et al. Architectural guidelines for multipath TCP development. Tech. rep. IETF, RFC6824, 2011.

MPTCP-SDN Subhrendu October 16, 2018 1 / 13

Page 4: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

MPTCP Basics

Advantages[3]

Improve throughput by aggregating bandwidthDo no harm to the competing flows (TCP, SCTP etc.)Balance congestion by offloading data via less congested pathsTCP like API for application transparency.[4]

[3]Costin Raiciu, Mark Handley, and Damon Wischik. Coupled congestion control for multipath transportprotocols. Tech. rep. IETF, RFC6356, 2011.

[4]MPTCP Application Interface Considerations. https://tools.ietf.org/html/draft-ietf-mptcp-api-07.

MPTCP-SDN Subhrendu October 16, 2018 2 / 13

Page 5: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

MPTCP Basics

Advantages[3]

Improve throughput by aggregating bandwidthDo no harm to the competing flows (TCP, SCTP etc.)Balance congestion by offloading data via less congested pathsTCP like API for application transparency.[4]

Figure: MPTCP connection initiation

[3]Costin Raiciu, Mark Handley, and Damon Wischik. Coupled congestion control for multipath transportprotocols. Tech. rep. IETF, RFC6356, 2011.

[4]MPTCP Application Interface Considerations. https://tools.ietf.org/html/draft-ietf-mptcp-api-07.

MPTCP-SDN Subhrendu October 16, 2018 2 / 13

Page 6: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

MPTCP Architecture

Modules of MPTCP

Path manager

Full-Meshndiffports

Segment scheduler

Round robinLowest RTTfirst

Congestion control

LIAOLIABALIA

Figure: MPTCP ModulesMPTCP-SDN Subhrendu October 16, 2018 3 / 13

Page 7: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Initial Experimentations

Test parameter setting (Previous work[5])

MPTCP v0.90

Full-mesh

Lowest RTT first

BALIA congestion controlRevisit: MPTCP objective

TCP friendlinessResponsiveness towards network changes

BALIA Pareto optimizes MPTCP principle

[5]Subhrendu Chattopadhyay et al. “Primary Path Effect in Multi-Path TCP: How Serious Is It for DeploymentConsideration?”. In: Proceedings of the 18th ACM International Symposium on Mobile Ad Hoc Networking andComputing. Mobihoc ’17. Chennai, India: ACM, 2017, 36:1–36:2. isbn: 978-1-4503-4912-3.

MPTCP-SDN Subhrendu October 16, 2018 4 / 13

Page 8: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Initial Experimentations

Variable no. of sub flows used

Sub flows have diversified path characteristics (Delay,Bandwidth)

Bandwidth diversityIncreasing path bandwidths difference

Observations: Increase in total bandwidth poolObservations: The average throughput decreases.Observations: Increases no. of out of order segmentsObservations: Increases file download time

Delay diversityIncreasing path RTT difference

Observations: Decreases average throughput of MPTCP.Observations: Increases no. of out of order segmentsObservations: Increases file download time

MPTCP-SDN Subhrendu October 16, 2018 4 / 13

Page 9: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Initial Experimentations

Understanding the results of [5]:

Sub-flows with high disparity in end-to-end delay andbandwidth results in large number of out of order segments

Increase in out of order segments results performancedegradation due to spurious retransmission

Full-mesh path manager is sub-optimal.

Analysis:Out-of-order segments are the root cause. It creates “HOLblocking”. HOL blocking causes spurious retransmissions.

[5]Subhrendu Chattopadhyay et al. “Primary Path Effect in Multi-Path TCP: How Serious Is It for DeploymentConsideration?”. In: Proceedings of the 18th ACM International Symposium on Mobile Ad Hoc Networking andComputing. Mobihoc ’17. Chennai, India: ACM, 2017, 36:1–36:2. isbn: 978-1-4503-4912-3.

MPTCP-SDN Subhrendu October 16, 2018 4 / 13

Page 10: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Problem Statement

What can we do about it?Out-of-order segments can be estimated by the receiver buffer size.Reduction is receiver buffer signifies reduction in out-of-ordersegments. So, we control the size of receiver buffer size bychoosing the subset of available sub-flows.What we have?

Set of sub-flows (S = {S1,S2 . . . Sn})Delay characteristics of Si(Pri (X = r) = Ψ(µi , σi , 0,∞;X = r)) Assume Gaussian

Gross characteristics of Si (Qi = {bi , li , µi , σi})

MPTCP-SDN Subhrendu October 16, 2018 5 / 13

Page 11: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Problem Statement

What can we do about it?Problem Formulation:Given S sub-flows between source and destination and the pathparameters ~Q = {Qi} of sub-flows, we would like to obtain asub-flow selection matrix I , such that the following optimizationproblem is solved.

maximizeI

AvgTh(I )

subjected to:

RL(I ) ≤ RLmax

MPTCP-SDN Subhrendu October 16, 2018 5 / 13

Page 12: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Problem Statement

What can we do about it?Problem Formulation:

maximizeI

AvgTh(I )

subjected to:

RL(I ) ≤ RLmax

Question 1: How to find AvgTh(I ) and RL(I )?

Using formal modeling of MPTCP systemDiscrete Time Markov Chain (DTMC)

Question 2: Who solves the optimization problem?

Hosts do not have end-to-end characteristics.Use SDN.

MPTCP-SDN Subhrendu October 16, 2018 5 / 13

Page 13: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

DTMC

Throughput modeling requires knowledge of congestioncontrol method.

We use BALIA

Yi (t) = wi (t)ri

αi (t) =maxk{Yk (t)}

Yi (t)

Algorithm:

w ′i =

Yi (t)

ri(∑

k Yk (t))2

(1+αi (t)

2

)(4+αi (t)

5

)Success

wi (t)2 min{αi (t), 1.5} Failure

Oscillation factora increases responsiveness, but aggressive.

Aggressiveness factorb controls the TCP friendliness.

aOscillation factor: Yi (t)bAggressiveness factor: αi (t)

MPTCP-SDN Subhrendu October 16, 2018 6 / 13

Page 14: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

DTMC

Figure: Markov Model for a MPTCP with 2 Sub-Flows

MPTCP-SDN Subhrendu October 16, 2018 6 / 13

Page 15: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

DTMC

States:

CW size tuple

Event CW change as state transition

Transition events and Probabilities:

Successful transfer of segment via Si(SSi )

If max{Yk} = Yi (SSmaxi )If max{Yk} 6= Yi (SSmaxm)

Unsuccessful transfer of segment via Si(SLi )

If max{Yk} = Yi (SLmaxi )If max{Yk} 6= Yi (SLmaxm)

Figure: DTMC partial

MPTCP-SDN Subhrendu October 16, 2018 6 / 13

Page 16: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

DTMC

Model Outcome:Stationary distribution of DTMCAverage congestion window sizeAverage throughput and Average receiver buffer length

MPTCP-SDN Subhrendu October 16, 2018 6 / 13

Page 17: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Model Verification

0

500

1000

1500

2000

2500

0 50 100 150 200 250

Th

rou

gh

pu

t in

Kb

ps

Maximum CW size

Error rate=0%

Theoretical Model (2-Subflow)Experimental (2-Subflow)

0

500

1000

1500

2000

2500

0 50 100 150 200 250T

hro

ug

hp

ut

in K

bp

s

Maximum CW size

Error rate=5%

Theoretical Model(3-Subflow)Experimental(3-Subflow)

Figure: Throughput Comparison

MPTCP-SDN Subhrendu October 16, 2018 7 / 13

Page 18: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Model Verification

0

200

400

600

800

1000

1200

1400

1600

1800

0 50 100 150 200A

vg

. R

ece

ive

r \b

uff

er

len

gth

(in

KB

)

Congestion Window size

Error rate=5%

Theoretical Model (3-Subflow)Experimental (3-Subflow)

0

200

400

600

800

1000

1200

1400

1600

1800

0 50 100 150 200

Avg

. R

ese

qu

en

cin

g Q

ue

ue

le

ng

th (

in K

B)

Congestion Window size

Error rate=0%

Theoretical Model (2-Subflow)Experimental (2-Subflow)

Figure: Receiver Buffer Size Comparison

MPTCP-SDN Subhrendu October 16, 2018 7 / 13

Page 19: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Revisit Sub-flow Selection & Heuristic

Problem statement:Given S sub-flows between source and destination and the pathparameters ~Q = {Qi} of sub-flows, we would like to obtain asub-flow selection matrix I , such that the following optimizationproblem is solved.

maximizeI

AvgTh(I )

subjected to:

RL(I ) ≤ RLmax

0-1 knapsack problem[6] and NP-hardness

Searching for a heuristic

[6]Harvey M. Salkin and Cornelis A. De Kluyver. “The knapsack problem: A survey”. In: Naval ResearchLogistics Quarterly 22.1 (1975), pp. 127–144.

MPTCP-SDN Subhrendu October 16, 2018 8 / 13

Page 20: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Revisit Sub-flow Selection & Heuristic

Algorithm 1 Heuristic for sub-flow selection (Pseudo code)

1: Input: Sub-flow path quality vector;2: Output: Sub-flow selection;3: Sort sub-flows based on high effective bandwidth (bi (1− li ))

and low RTT (µi ) (i.e bi (1− li ) + 1µi

);4: for Si ∈ S do5: Select sub-flow if calculated receiver buffer length obtained from

DTMC is less than RLmax

6: end for7: return ~I

MPTCP-SDN Subhrendu October 16, 2018 8 / 13

Page 21: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Revisit Sub-flow Selection & Heuristic

Algorithm 1 Heuristic for sub-flow selection (Algorithm)

1: Input: ~Q;2: Output: ~I ;3: ∀i : Ii ← 0;4: Sort ~Q based on Ti ← bi (1− li ) + 1

µi;

{High effective bandwidth (bi (1− li )) and low RTT (µi ) gets priority}5: Find maxi (Ti ); Ii ← 1;6: for j ← 2 to n do7: ~X ← ~Q ◦ I ;8: A ← AvgTh(~X );

9: R← RL(~X )10: if R ≤ RLmax then11: Ij ← 1;12: end if13: end for14: return ~I

MPTCP-SDN Subhrendu October 16, 2018 8 / 13

Page 22: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Implementation

We develop a SDN control plane application. [6]

Tools used

Open-source MPTCP kernel module[7]

Open vSwitch[8]

Mininet[9]

Tinydb[10]

POX controller[11]

“flow_stat”“L3_learning”“host_tracker”

[6]https://github.com/subhrendu-subho/SDN_pathmanager

[7]MultiPath TCP - Linux Kernel implementation. https://multipath-tcp.org.[8]OVS. Open vSwitch. http://openvswitch.org/.[9]B Lantz et al. Mininet-an instant virtual network on your laptop (or other pc). 2015.

[10]Introduction-; TinyDB 3.2.1 documentation. http://tinydb.readthedocs.io/en/latest/intro.html.[11]POX. https://openflow.stanford.edu/display/ONL/POX+Wiki.

MPTCP-SDN Subhrendu October 16, 2018 9 / 13

Page 23: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Implementation

We develop a SDN control plane application. [6]

Tools used

Development

MPTCP Path manager moduleSDN application for sub flow selection

[6]https://github.com/subhrendu-subho/SDN_pathmanager

MPTCP-SDN Subhrendu October 16, 2018 9 / 13

Page 24: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Implementation

We develop a SDN control plane application. [6]

Tools used

Development

Event HandlersTopology Update:

Invokes sub-flow selection modulePro-actively notify path manager framework.

Packet In:

Find all available paths.Invokes sub-flow selection module.

[6]https://github.com/subhrendu-subho/SDN_pathmanager

MPTCP-SDN Subhrendu October 16, 2018 9 / 13

Page 25: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Results

SenderReceiver

.

.

.

.

.

.

S1

S2

S15

{15Mbps, 150.0ms, 14%}

{1Mbps, 10.0ms, 0%}

{2Mbps, 20.0ms, 1%}

Figure: Topology15 parallel paths

The sender generates MPTCP supported HTTP flowsdestined towards receiver host.

Traffic generated by transferring 100MB file.

MPTCP-SDN Subhrendu October 16, 2018 10 / 13

Page 26: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Results

0 50

100 150 200

2 4 6 8 10 12 14

Dow

nlo

ad T

ime (

s)

Flows used

(a) Download time

Optimal Proposed FullMesh

0

10

12 14

Zoom

Figure: Flow Completion Time

Observations:Proposed method provides better performance.

MPTCP-SDN Subhrendu October 16, 2018 10 / 13

Page 27: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Results

0

20

40

60

80

100

2 4 6 8 10 12 14

Imp

rove

me

nt

%

Flows used

Optimal v/s v/s FullMesh

Figure: Flow Completion Time Comparison

Observations:Full mesh is better for 2 sub flowsIncreased diversity provides better performanceToo much diversity reduces performance gain

MPTCP-SDN Subhrendu October 16, 2018 10 / 13

Page 28: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Results

0

20

40

60

80

100

2 4 6 8 10 12 14 16Thro

ughput (M

bps)

Flows used

(b) Average Throughput

0

4

2 4 6

Zoom

Figure: Aggregated Throughput Comparison

Observations:Effective increase in throughput from >6 sub-flows

MPTCP-SDN Subhrendu October 16, 2018 10 / 13

Page 29: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Results

0

20

40

60

80

100

2 4 6 8 10 12 14

Imp

rove

me

nt

%

Flows used

Optimal v/s v/s FullMesh

Figure: Aggregated Throughput Comparison

Observations:Throughput increase is closely follows optimal behaviour

MPTCP-SDN Subhrendu October 16, 2018 10 / 13

Page 30: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Results

8 10 12 14 16 18 20

2 4 6 8 10 12 14

Out

of O

rder

Seg

men

ts (

%)

Flows used

Optimal

Figure: Out of Order Segments

Observations:Near optimal behaviour for proposed solution

MPTCP-SDN Subhrendu October 16, 2018 10 / 13

Page 31: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Results

200 400 600 800

1000 1200

2 4 6 8 10 12 14 16

Ret

rans

mitt

ed S

egm

ents

Flows used

Proposed

Figure: Retransmitted Segments

Observations:Near optimal behaviour for proposed solution

MPTCP-SDN Subhrendu October 16, 2018 10 / 13

Page 32: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Results

0 100 200 300 400 500

2 4 6 8 10 12 14 16

No

. o

f se

gm

en

t lo

st

Flows used

FullMesh

Figure: Lost Segments

Observations:Near optimal behaviour for proposed solution

MPTCP-SDN Subhrendu October 16, 2018 10 / 13

Page 33: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Results

0 20 40 60 80 100 120

time (s)

0

20

40

60

80

100

120

140

RTT (ms)

Full-mesh S1

S2

S3

S4

0 20 40 60 80

time (s)

0

20

40

60

80

100

120

140

RTT (ms)

Proposed S2

S3

S4

Figure: RTT Variations

Observations:Less fluctuations between the inter sub flow segments

MPTCP-SDN Subhrendu October 16, 2018 10 / 13

Page 34: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Results

0 20 40 60 80 100 120

time (s)

0

500

1000

1500

2000

2500

3000

3500

CW

Size

Full-mesh S1

S2

S3

S4

0 20 40 60 80

time (s)

0

500

1000

1500

2000

2500

3000

3500

CW Size

Proposed S2

S3

S4

Figure: Congestion Window VariationObservations:

Can reach higher congestion window size due to less spurioustransmissionIncrease in effective aggregated throughput

MPTCP-SDN Subhrendu October 16, 2018 10 / 13

Page 35: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Summary

We formulate an irreducible and aperiodic DTMC to modelthe aggregated throughput prediction of a MPTCP flow withthe end-to-end path characteristics of a given set of sub-flows.

Based on the predicted throughput from the estimator model,we develop an optimization framework to find out the optimalset of sub-flows that can maximize the aggregated throughputfor a given MPTCP flow.

The SDN controller executes this optimization framework andschedules the sub-flows accordingly.

MPTCP-SDN Subhrendu October 16, 2018 11 / 13

Page 36: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Conclusion

MPTCP sub-flow management framework for enterprise datacenter network.

Increases in-order delivery of segments and prevents HOLblocking

Closely approximates the underlying NP-hard problem

Future Work:

Can we generalize it for multi-homed network?Can we use distributed SDN control plane application?

MPTCP-SDN Subhrendu October 16, 2018 12 / 13

Page 37: Improving MPTCP Performance by Enabling Sub-Flow Selection ...

Introduction and Motivation Objectives Solution Approach Implementation and Results Summary Conclusion

Thank You

MPTCP-SDN Subhrendu October 16, 2018 13 / 13


Recommended