Presentation is loading. Please wait.

Presentation is loading. Please wait.

Modeling and Taming Parallel TCP on the Wide Area Network

Similar presentations


Presentation on theme: "Modeling and Taming Parallel TCP on the Wide Area Network"— Presentation transcript:

1 Modeling and Taming Parallel TCP on the Wide Area Network
Dong Lu ,Yi Qiao Peter Dinda , Fabian Bustamante Department of Computer Science Northwestern University

2 Summary Parallel TCP flows are frequently used
What number of parallel flows will give the highest throughput with less than a p% impact on cross traffic? --- “Maximum Nondisruptive Throughput” Our answer to this question: Active probing at two parallelism levels Modeling and predicting parallel TCP thropughput at other parallelism levels Estimating impact on cross traffic, proposing a parallelism level that bounds the impact In other words, how to use parallel TCP with controlled impact on the cross traffic? Also, it is not helpful to use arbitrarily large flow numbers, because of the “diminishing returns”.

3 Outline Motivation Modeling Parallel TCP throughput
Two probes at different parallelism levels Evaluation via wide area experiments Taming parallel TCP Estimating the impact on cross traffic Evaluation via simulations

4 Motivation Parallel TCP flows are broadly used to achieve higher throughput on the current Internet. GridFTP is one example. However, No practical mechanism to predict its throughput No previous work on estimating and controlling the negative impacts on cross traffic throughput (taming parallel TCP) parallelism level : number of parallel TCP flows Cut words

5 Motivation Danger of using too many parallel TCP flows
Congest the end-to-end path, significantly disturb cross traffic Diminishing Returns, or worse throughput

6 Our solution: TameParallelTCP()
struct ParallelTCPChar { int num_flows; double max_nondisruptive_thru; double cross_traffic_impact; }; ParallelTCPChar * TameParallelTCP(Address dest, double maximpact); Percentage User specify the maximum percentage impact she is willing to have on cross traffic

7 Outline Motivation Modeling Parallel TCP throughput
Two probes at different parallelism levels Evaluation via wide area experiments Taming parallel TCP Estimating the impact on cross traffic Evaluation via simulations

8 Modeling Parallel TCP throughput
Single TCP throughput model [Mathis, et al, Sigcomm CCR’97] Parallel TCP throughput upper bound model [Hacker, et al, IPDPS’02] More recent TCP model for the single TCP and why we didn’t use it? Upper bound tight only in uncongested networks Hard to obtain future loss rate: what is the loss rate if I add 20 parallel TCP flows?

9 Modeling Parallel TCP throughput
Single TCP throughput model [Mathis, et al, Sigcomm CCR’97] Eq(1) Eq(2) Parallel TCP throughput model (Ours) n: number of parallel flows p: loss rate RTT: round trip time MSS: max segment size b and c1: constant Eq(3)

10 Assumptions Parallel TCP flows share same loss rate P. Loss rate increases with parallelism level. Supported by previous research MSS remains stable after TCP connection setup TCP throughput shows transient stability Our associated work to appear in ICDCS’05 Our model does NOT require the knowledge of RTT, MSS, p, b, and c1 MSS, b, and c1 will be canceled during the derivation

11 Modeling and predicting loss rate
Eq(4) Two probes at different parallelism level: w and v Eq(5) don’t need to know know after probing a and b are constants for the given path Add legend for the colors then we can calculate BWn based on the two probes If we know: Empirically, we use a partial polynomial to approximate f(n): Eq(6)

12 Predicting throughput at level m
Eq(6) Eq(4) Eq(5) a and b are constants for the given path colorissue Eq(7)

13 Experiments setup Testbed: Planetlab Throughput test tool: iperf
randomly chosen 41 pairs of hosts (41 end-to-end paths) Throughput test tool: iperf Methodology: A test consists of testing parallel TCP throughput with increasing parallelism levels (1~30) Repeat each test 10 times on each path

14 A random wide area example
Measurement Prediction Note on graph that parallelism levels 1 and 10 were measured to derive the rest: highlight on the graph Only show the measurement and the partial order two results Title tells the con

15 Low, Unbiased Relative Prediction Error
Paths ID are ordered by the std. Test bed: planetlab, 42 paths. We present mean and std of relative errors on each path. We used iperf for the experiments.

16 Prediction Errors Unrelated To Parallelism Level
0.1 Mean relative prediction error 30 There is no clear trend as parallelism level increases. This implies that our prediction error is independent of parallelism level -0.1 Parallelism level (number of parallel TCP flows)

17 Insensitive to parallelism levels of probes
What is probe 1-8 … No need to read the individual points. Supposed to be like noise … no connection between pairs of choice and the errors.

18 Outline Motivation Modeling Parallel TCP throughput
Two probes at different parallelism levels Evaluation via wide area experiments Taming parallel TCP Estimating the impact on cross traffic Evaluation via simulations

19 Maximum Nondisruptive Throughput
The highest throughput with less than a p% impact on cross traffic (MNT)

20 Our solution: TameParallelTCP()
struct ParallelTCPChar { int num_flows; double max_nondisruptive_thru; double cross_traffic_impact; }; ParallelTCPChar * TameParallelTCP(Address dest, double maximpact); Function Return User specify the maximum percentage impact she is willing to have on cross traffic Q and A into the slide User specified

21 Challenges The available bandwidth on the bottleneck link is unknown
The number of cross traffic flows and their loss rates is unknown Overhead considerations

22 Assumptions TCP flows share same loss rate on the bottleneck link
If the cross traffic flows have RTT similar to our parallel TCP flows The router on the bottleneck link is using Random Early Detection (RED) like queue management policies

23 Estimating the impact on cross traffic
Recall that after two probes, we get the value of a and b for We set n1=1, and n2=“number of parallel TCP flows under consideration” Then with Eq(10), we can calculate relc Ignore the math, with the two probes we can get this relc Eq (10)

24 Simulation setup Why do we need simulations? Ns2 based simulations
Detailed information on cross traffic Ns2 based simulations TCP Reno Each simulation is repeated 10 times

25 Simulation topologies
Cross traffic Topo 1 Parallel TCP Cross traffic Label the topo Parallel TCP RED RED Topo 2 Cross traffic

26 Low, slightly biased prediction errors
1 Probability (error<x) CDF of relative prediction errors -0.6 0.6 Relative prediction error

27 Implementing TameParallelTCP()
{ Send two probes at different parallelism levels; Estimate the loss rate curve; Estimate the throughput at different parallelism levels; Estimate the impact on cross traffic at different parallelism levels; Proposed a parallelism level with estimated impact < maximpact; Return struct ParallelTCPChar; } struct ParallelTCPChar { int num_flows; double max_nondisruptive_thru; double cross_traffic_impact; }; Pseudo code

28 Conclusions We have shown how to estimate parallel TCP throughput and its impact on cross traffic by sending two probes Our evaluation using both wide area experiments and ns2 based simulations shows the effectiveness of our approach Future work How to relax our assumptions about the cross traffic? Rewrite the sentence -> con More on future work

29 For more information Tool available at:
Dong Lu, Northwestern Univ. Related work on sequential TCP characterization and prediction Dong Lu, Yi Qiao, Peter Dinda, Fabian Bustamante, "Characterizing and Predicting TCP Throughput on the Wide Area Network", ICDCS 2005.


Download ppt "Modeling and Taming Parallel TCP on the Wide Area Network"

Similar presentations


Ads by Google