modeling tcp throughput jeng lung webtp meeting 11/1/99

30
Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Post on 19-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Modeling TCP Throughput

Jeng Lung

WebTP Meeting

11/1/99

Page 2: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Introduction

Analytic characterization of the steady state throughput as a function of loss rate and round trip time for a bulk transfer TCP flow.

Models effects of both the fast retransmit and timeout mechanism on throughput.

Measurements suggests that there are more timeout events than fast retransmit events.

Also model the effects of small receiver-side windows.

Page 3: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Model for TCP Congestion Control

Focus on the congestion avoidance behavior of TCP and its impact on throughput.

Take into account:– Dependence of congestion avoidance on ACK

behavior– The manner in which packet loss is inferred (by

duplicate ACK detection or by timeout)– Limited receiver window size– Average round trip time.

Page 4: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Model for TCP Congestion Control

Develop stochastic model of TCP congestion control corresponding to different operating regimes:

– when losses are exclusively TD (triple-duplicate)– when losses are both TD and TO (timeout)– when the congestion window size is limited by the receiver’s

advertised window. Model TCP congestion avoidance behavior in terms of

“rounds”.– A round starts with the back-to-back transmission of W

packets and ends with the reception of the first ACK for one of these W packets.

Page 5: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Assumptions

Throughput of a saturated TCP sender: A flow with unlimited amount of data to send.

Time spent in slow start is negligible compared to length of the connection.

Impact of fast recovery is quite small and therefore omitted.

Duration of a round is equal to the round trip time and is assumed to be independent of the window size.

Page 6: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Additional Assumptions

Time needed to send all the packets in a window is smaller than the round trip time.

Packet is lost in a round independently of any packets lost in other rounds.– Justification comes from the fact that packets in

different rounds are separated by one round trip time or more, and thus they are likely to encounter buffer states that are independent of each other.

Page 7: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

More Additional Assumptions

Packet losses are correlated among the back-to-back transmissions within a round so if a packet is lost, all remaining packets transmitted until the end of that round are also lost.– Justification for this assumption comes from the fact

that the vast majority of routers in the Internet uses drop-tail policy.

Page 8: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Loss indications are exclusively “triple-dup” ACKs

TD period – period between 2 TD losses For i-th TD period:

– Yi: # packets sent in this period– Ai: duration of the period– Wi: window size at end of period

][

][

AE

YEB

Page 9: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

i: the first packet lost in TDPi Xi: round where this loss occurs

We get1][][][ WEEYE

ppkP k 1)1(][

1

1 1)1(][

k

k

ppkpE

Page 10: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Hence

Rij: round trip time of the jth round of TDPi

Since we assume Rij independent of congestion windowRij independent of j

][1

][ WEp

pYE

1

1

Xi

j

RijAi

RTTXEREXEAE )1][(][)1][(][

Page 11: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

So

i: # packets sent in the last round Fact that Yi packets transmitted in TDPi

b

XiWWi

i

2

1

][2

][ XEb

WE

1

0

1)

2(

bXi

k

iibk

WYi

Page 12: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99
Page 13: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

ib

XXWXYi

iiii

)1(22

1

iWWX

iii

)12

(2

1

Page 14: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Consider i uniformly distributed between 1 and Wi:

][)1][2

][(

2

][][

1BEWE

WEXEWE

p

p

2

][][

WEBE

Page 15: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

So

And

2)3

2(

3

)1(8

3

2][

b

b

bp

p

b

bWE

2)6

2(

3

)1(2

6

2][

2][

b

p

pbbWE

bXE

)1)6

2(

3

)1(2

6

2(][ 2

b

p

pbbRTTAE

Page 16: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

][

][1

)(AE

WEpp

pB

)1)6

2(

3)1(2

62

(

)3

2(

3)1(8

321

)(2

2

b

ppbb

RTT

bb

bpp

bb

pp

pB

Page 17: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Model: Loss Indications are Exclusively Duplicate ACKs

B(p) – throughput in terms of packets per second p – loss probability of a packet b – number of packets acknowledged by a received

ACK (I.e., delayed ACK, typically 2) RTT – round trip time

bpRTTpB

2

31)(

Page 18: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Model: Include Both Duplicate ACKs and Timeouts

T0 – Length of timeout

)321()8

33,1min(

32

1)(

20 pp

bpT

bpRTT

pB

Page 19: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Model: Include Impact of Receiver Window Size to Throughput

Wmax – maximum congestion window size

)

)321()8

33,1min(

32

1,min()(

20

max

ppbp

Tbp

RTTRTT

WpB

Page 20: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Full TCP Throughput Model

Wu – unconstrained window size If E[Wu] < Wmax

Otherwiseppf

TWEQWEb

RTT

pWEQWE

pp

pB

1)(

])[()1][2

(

11

])[(][1

)(0

ppf

TWQpW

pWb

RTT

pWQW

pp

pB

1)(

)()21

8(

11

)(1

)(0max

maxmax

maxmax

Page 21: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Where…

2)3

2(

3

)1(8

3

2][

b

b

bp

p

b

bWE u

65432 32168421)( pppppppf

Page 22: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

And

Q(w) – the probability that a loss in a window of size w is a TO

))1(1

)))1(1()1(1)()1(1(,1min()(

333

w

w

p

pppwQ

Page 23: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Measurement Setup (1 hr traces)

• Gather data by running tcpdump at the sender.

• All sender behaves as an “infinite source”-always have data to send.

• Approximate p by dividing the total number of loss indications by the total number of packets sent.

• 24 data sets of one hour long TCP connections

Page 24: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Measurement Setup (100 s traces)

• 100 serially initiated TCP connections with each connection lasting 100 seconds, followed by a 50 second gap before the next connection is initiated.

• Each data set is combined cumulatively over 100 traces for a given source-destination pair.

Page 25: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Experimental Results (1 hr traces)

• Each one hour trace was divided into 36 consecutive 100 second intervals.

• Each plotted point on the graph represents the number of packets sent versus the number of loss indications during a 100s interval.

Page 26: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Experimental Results (100 s traces)

• Each point represents an individual 100 second TCP connection.

• Use RTT and timeout durations that are averaged over all 100 traces.

Page 27: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Models for 1 hour traces

• Nobserved-number of packets sent over an interval

• Pobserved-loss frequency over an interval

• Npredicted = B(pobserved)*100s

nsobservationsobservatio N

NN

observed

observedpredicted

Error#

||

Page 28: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Models for 100 second traces

• Use the value of RTT and timeout calculated for each 100 second trace.

• For most cases, proposed model is better than the TD Only model.

Page 29: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Model and Experimental Results

Assumption that round trip time is independent of the window size is found to be false for certain cases:

– Assumption is checked by measuring coefficient of correlation between duration of round samples and the number of packets in transit during each sample.

– For most traces the coefficient is in the range -0.1 to +0.1– In the case when the receiver is at the end of a modem line,

the coefficient of correlation is found to be as high as 0.97

Page 30: Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99

Reference

J. Padhye, V. Firoiu, D. Towsley, J. Kurose. Modeling TCP Throughput: A Simple Model and its Empirical Validation. In Proceedings of SIGCOMM 98, 1998.