Modeling tcp throughput
This presentation is the property of its rightful owner.
Sponsored Links
1 / 28

Modeling TCP Throughput PowerPoint PPT Presentation


  • 50 Views
  • Uploaded on
  • Presentation posted in: General

Modeling TCP Throughput. A Simple Model and its Empirical Validation. Jitendra Padhye Victor Firoiu Don Towsley Jim Kurose Presented by Jaebok Kim. Introduction. Simple analytic characterization of the steady state throughput A stochastic model of TCP congestion control

Download Presentation

Modeling TCP Throughput

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Modeling tcp throughput

Modeling TCP Throughput

A Simple Model and its Empirical Validation

JitendraPadhye

Victor Firoiu

Don Towsley

Jim Kurose

Presented by Jaebok Kim


Introduction

Introduction

  • Simple analytic characterization of the steady state throughput

    • A stochastic model of TCP congestion control

      • Deriving mathematical formulas

    • Taking account of not only retransmit but also timeout


Contents

Contents

  • TCP Congestion Avoidance

  • Simplifying assumptions

  • Loss indications & triple-duplicate ACKs

  • Loss indications & triple-duplicate ACKs, time-outs

  • Impact of window limitation & a full model

  • Empirical validation

  • Conclusion


Tcp congestion avoidance

TCP Congestion Avoidance

  • How do we resolve this problem?


Tcp congestion avoidance1

TCP Congestion Avoidance

  • TCP Reno – a newer version

  • Slow Start

    • W’ = W + 1 (each ACK arrives)

    • Eventually, doubling every RTT


Tcp congestion avoidance2

TCP Congestion Avoidance

  • Additive Increase

    • W’ = W + 1/W (each ACK arrives)

    • W’’ = W + 1/B (Second round begins)

      • B = n of Acknowledged Packets by 1 ACK (Typically, 2)

      • W/B ACKs will arrive & each ACK increase 1/W


Tcp congestion avoidance3

TCP Congestion Avoidance

  • Multiplicative Decrease (3Duplicate ACKs)

    • W’ = W * Md

    • Eventually, W’ = W/2

    • Don’t go back to Slow Start, but Additive Increase

  • Time Out

    • Go back to Slow Start

    • W = 1


Simplifying assumptions

Simplifying assumptions

  • No time for Fast Recovery

  • No time for Slow Start

  • Correlated packets losses in a round

    • Drop-tail policy

      • At a full buffer, drop all packets arriving late

    • But, independent between rounds

      • Separated by RTT

  • Same implementation of TCP-Reno

r

P1

P2

P3

P4

P5

P6


Loss indications triple duplicate acks

Loss indications & triple-duplicate ACKs

  • B – long term steady-state TCP throughput

    • Windows increases by 1/b

    • Windows decreases by a factor of 2

  • P – loss probability

  • Get B(p) by utilizing Markov Regenerative Process

    • B = E[Y] / E[A]

      • Y = N of packets sent in TDPi

      • A = duration of the period

      • E[ ] = Expected value in MRGP


Loss indications triple duplicate acks1

Loss indications & triple-duplicate ACKs

  • Why do we need MRGP?

    • A cycle will repeat (TDP1, TDP2, TDP3, so on….)

      • Like a sequence of output

    • New size of windows depends on only previous one’s

      • Markov Chain

    • Each loss in rounds is separated by RTT (Independently)

      • In statistics, a sequence of random variables is independent and identically distributed (i.i.d.) if each has the same probability distribution as the others and all are mutually independent

    • Representing steady state model


Loss indications triple duplicate acks2

Loss indications & triple-duplicate ACKs

  • Markov Model

    • Predict the future through the past

    • Based on conditional probability

      Future state depends

      on only current state,

      not the past


Loss indications triple duplicate acks3

Loss indications & triple-duplicate ACKs

  • P(Rain, Sunny, Cloudy) = ?

    = p(Rain) * p(Sunny|Rain) * p(Cloudy|Sunny)


Loss indications triple duplicate acks4

Loss indications & triple-duplicate ACKS

  • How do we predict the weather ?


Loss indications triple duplicate acks5

Loss indications & triple-duplicate ACKs

  • MRGP

    • I.I.D random variables


Loss indications triple duplicate acks6

Loss indications & triple-duplicate ACKs

  • To get B(p) = E[Y]/E[A]

    • N of packets, including first lost packet, sent in a TDPi : αi

    • The round where a loss occurs : Xi

    • Yi = αi + Wi – 1

      • Total of Yi packets sent in Xi +1 rounds

    • E[Y] = E[α] + E[W] – 1(2)


Loss indications triple duplicate acks7

Loss indications & triple-duplicate ACKs

  • To derive E[α]

    • Expected value in random process{αi }i: E[α]

    • Based on the assumption

      • Lost packets in a round are independent on any packets in other rounds

      • Independent & identically distributed random variables

    • P[α = k] equal to p that k-1 packets are acknowledged before a loss

    • By using (2) and (4), we could derive (5) E[Y]


Loss indications triple duplicate acks8

Loss indications & triple-duplicate ACKs

  • The increase is linear with slope 1/b

  • Yi can be expressed by (10)

  • Bi : N of packets sent in the last round

    • Bi = Wi / 2


Loss indications triple duplicate acks9

Loss indications & triple-duplicate ACKs

  • To derive E[W]

    • {Wi}, {Xi} all independent sequence of I.I.D random v

    • So, derive (12) from (7),(10) and (5)

    • Quadratic equation from (11) & (12)

      (1-p)/p + w = b* E[W]/4 (3/2 * E[W] – 1) + E[W]/2


Loss indications triple duplicate acks10

Loss indications & triple-duplicate ACKs

  • As we get E[W], we could get E[X] & E[A]

  • Eventually, B(p) is derived from E[Y]/E[A]


Loss indications triple duplicate acks time outs

Loss indications & triple-duplicate ACKs, Time-outs

  • The major reason for window decreases

    • Timeout rather than fast retransmit

    • Occurring when packets(or ACKs) are lost

    • After time-out , W’ = 1

    • The period of time-out will doubles


Loss indications triple duplicate acks time outs1

Loss indications & triple-duplicate ACKs, Time-outs

  • Utilizing MRGP again

    • ZTO : duration of a sequence of time-outs

    • ZTD : time interval b/w 2 consecutive TO sequences

    • Si = ZiTO + ZiTD

    • M : N of packets sent during Si

    • B = E[M] / E[S]


Loss indications triple duplicate acks time outs2

Loss indications & triple-duplicate ACKs, Time-outs

  • How to get B(p) ?

    • We’ve already known E[Y], E[A]. So, let’s utilize them

    • Ri = N of packets sent during time-out sequence ZTO

  • Similar process to get B(p) for TDP

    • Getting a full model & an approximate model


Impact of window limitation a full model

Impact of window limitation & a full model

  • Keep in mind that limitation of window size

  • Windows can’t grow up over Wmax

  • Let’s follow the similar process to previous models’

    • Unconstrained window size : Wu

    • E[Wu] < Wmax

    • Wmax approximately equal to E[Wu]


Impact of window limitation a full model1

Impact of window limitation & a full model

  • A full model

  • An approximate model


Empirical validation

Empirical validation

  • Validating formulae, derived so far, by measurement

    • 24 data sets with 1 hour long TCP connection

    • Infinite source

      X-axis = frequency of loss indication

      Y-axis = n of packets sent

      TD = only TD intervals

      T0 = single TO intervals

      T1 = double TO intervals

      T2 = Triple TO intervals

      TD Only = prediction of TD only model

      Full = prediction of full model


Empirical validation1

Empirical validation

  • Analysis of measurement tables

    • Overestimation of throughput in TD Only model

    • Full model close to measurement

    • Connections suffering from more time-out rather than 3 duplicate ACKs


Conclusion

Conclusion

  • A simple model of TCP-Reno

    • Capturing essence of TCP’s congestion avoidance behavior

      • TDP & time-out

    • Expressing throughput as a function of loss rate

      • Most connections suffered from a considerable number of time-outs


Modeling tcp throughput

Q&A

  • Thank you for listening to my presentation


  • Login