modelling and stability of tcp peter key msr cambridge

36
Modelling and Stability of TCP Peter Key MSR Cambridge

Upload: aaliyah-carney

Post on 26-Mar-2015

233 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Modelling and Stability of TCP Peter Key MSR Cambridge

Modelling and Stability of TCP

Peter KeyMSR Cambridge

Page 2: Modelling and Stability of TCP Peter Key MSR Cambridge

Outline

• Simple TCP models• Utility Maximisation - a framework for

fairness– General Framework– TCP examples

• Stability, Delay and Stochastic Stability• Stochastic arrivals• Multipath routing• Startup / slow start

Page 3: Modelling and Stability of TCP Peter Key MSR Cambridge

Outline

• Simple TCP models• Utility Maximisation - a framework for

fairness– General Framework– TCP examples

• Stability, Delay and Stochastic Stability• Stochastic arrivals• Multipath routing

Page 4: Modelling and Stability of TCP Peter Key MSR Cambridge

Modelling TCP

• Why? Insight, understanding better design• Mainly focussed on CA phase

– But transients/slow start may be as/more important!• Typically convert behaviour to a deterministic limit (an ODE)

• Issues– Going from stochastic to deterministic makes (several) assumptions

• Eg. Large number of flows– Window halving causes problems (non-smooth function), can justify

with a lot of hard maths (& get v. slightly different results)– Feedback (eg loss) often assumed stochastic / uncorrelated. May

be badly inaccurate (eg small flows, with drop tail)

Page 5: Modelling and Stability of TCP Peter Key MSR Cambridge

Simple TCP model for CA• Window increases by (1/W ) per ACK, and decrease by (Wp/ 2)

where p is packet loss• But if T is the RTT, then this occurs in time (T/W ), hence

• Gives steady state:

• Throughput:

212

W pdWdt T T

2W

p

1 2WT T p

Page 6: Modelling and Stability of TCP Peter Key MSR Cambridge

Rate model TCP model

• Rate of packet send, is x=W/T

• As if user is trying to maximise net utility =utility – cost where • Utility:

• Cost (penalty) = px

211 2

2

pxTdt

dWTdt

dx

xTxU 2

2)(

Page 7: Modelling and Stability of TCP Peter Key MSR Cambridge

Outline

• Simple TCP models• Utility Maximisation - a framework for

fairness– General Framework– TCP examples

• Stability, Delay and Stochastic Stability• Stochastic arrivals• Multipath routing

Page 8: Modelling and Stability of TCP Peter Key MSR Cambridge

Theorem

• If each user independently updates their rates/window, then system converges to the unique equilibrium, where each user has mean rate

• Hence have can think of TCP as performing an implicit optimisation

• Equivalently system is maximising

2rr

r r

mx

T p

( ) Congestion_costusers resources

Utility user

Page 9: Modelling and Stability of TCP Peter Key MSR Cambridge

Service Requirements & Bandwidth sharing (Shenker)

RejectionOr randomise

Limited capacityShare out bandwidth

Limited capacity

Utility U(x)

Rate x

Utility U(x)

Real TimeElastic / Data

Page 10: Modelling and Stability of TCP Peter Key MSR Cambridge

Game theoretic properties

• User has Utility Ur(x) with allocation x• Then Proportional fairness = Nash

Bargaining scheme with

• Nash Bargaining is the only arbitration scheme to satisfy certain axioms of – Pareto optimality– Linearity– “Irrelevant alternatives” (contentious)– Symmetry

logr r r rU x w x

Page 11: Modelling and Stability of TCP Peter Key MSR Cambridge

Fairness Examples, eg

Max-min

½

½ ½

Proportional

1/3

2/32/3

0

1 1

TCP approx

0.4

0.6 0.6

Max load

xxU Log

xxU

or

xxU

1Log)( 2

2 arctan ( )2

xU x or U x

x

xxU Log

Page 12: Modelling and Stability of TCP Peter Key MSR Cambridge

Utility functions, rate control & TCP

• Can map utility functions /utility maximisation problem rate control algorithms– Eg, TCP and TCP-like controllers

• Gives rate control as an ODE– Rates reacts to signals / prices

• “Primal” algorithms : end-systems aggregate information

• (appropriate for long RTTs and simple )

• “Dual” algorithms : resources (eg routers) adjust prices and send more explicit feedback

• Primal – dual mix both

Page 13: Modelling and Stability of TCP Peter Key MSR Cambridge

Outline

• Simple TCP models• Utility Maximisation - a framework for

fairness– General Framework– TCP examples

• Stability, Delay and Stochastic Stability• Stochastic arrivals• Multipath routing

Page 14: Modelling and Stability of TCP Peter Key MSR Cambridge

time

load

mark

loss

time

load

mark

loss

load

mark

loss

Router/gateway

mark information

Wide Area Dynamic Resource Allocation

Page 15: Modelling and Stability of TCP Peter Key MSR Cambridge

Generic Primal algorithm

)(tptxwtxdtd

rrrr

sjssjr txptp

:

Gain: tune for convergence / stability

))((')( txUtxw rrrr generalise: eg

Page 16: Modelling and Stability of TCP Peter Key MSR Cambridge

Global Stability

• Theorem:– Above dynamical system has a unique stable

fixed point to which all trajectories converge. The fixed point is weighted proportionally fair

• Based on Lyapunov functions

Page 17: Modelling and Stability of TCP Peter Key MSR Cambridge

What’s missing

• Effect of time delays– Feedback to sender delayed (by RTT)– Can use ideas from control theory (eg Nyquist) to

prove end to end stability

• Stochastic effects– Rate control only gives mean rates– Stochastic analysis can provide variances

• Small systems / dependent feedback (eg drop tail)/- discrete time / simple models give insight

Page 18: Modelling and Stability of TCP Peter Key MSR Cambridge

TCP-like rate control algorithm

• cwnd T, rate x cwnd / T• For route r :

– Increase cwnd by ar cwnd n per positive ACK

– Decrease cwnd by br cwnd m per loss/congestion notification (m > n )

• Eg, For TCP Reno m=1, n=-1, a=1, b=1/2

)())(())(1())(()(

)( tpTtxbtpTtxaT

Ttxtx

dtd

rm

rrrrn

rrrr

rrr

Page 19: Modelling and Stability of TCP Peter Key MSR Cambridge

Stability

• Equilibrium point (thruput)

• Can derive a (local) stability condition that depends only on e-t-e path and local resources. Equilibrium is stable if there is a global constant s.t

nm

r

r

r

r

rr b

aT

x

/111

2

)(),()( nrrrjj Txaxpxpx

Per resource (price) sensitivity Per route increase (“aggressiveness)”

Page 20: Modelling and Stability of TCP Peter Key MSR Cambridge

Variance (Ott ‘99)

• But feedback signals are noisy

• Stability depends on the decrease (m and b)

)1)((2))((Var

11

r

mr

mrr

r pnmTxb

tx

Page 21: Modelling and Stability of TCP Peter Key MSR Cambridge

Choice of congestion controllers?

• Delay stability affected by increase behaviour (n)– For Reno, instability for small windows– Slow to react for large windows– Putting n=0 (eg scalable TCP) can make stability

independent of congestion window

• Stochastic stability depends on decrease (m)– Scale invariance (for coeff of variation) if m=1– m=-1 gives scale invariance for variance

• BUT … trade-off with convergence speed and BEWARE model limitations

Page 22: Modelling and Stability of TCP Peter Key MSR Cambridge

Dynamic/Flow level stability

• More realistic model: stochastic arrivals– Demands (eg sessions) are as a stochastic process

• Eg arrive as Poisson process, rate • Mean file size

• N r in progress

• Allocate xr to flow r

• Stable if

• Per resource stability sufficient (eg with TCP ) • Not true if priorities ….

load rr

r

r1

r rF

lrlr

rr CxN :

lrlr

r C:

Page 23: Modelling and Stability of TCP Peter Key MSR Cambridge

Outline

• Simple TCP models• Utility Maximisation - a framework for

fairness– General Framework– TCP examples

• Stability, Delay and Stochastic Stability• Stochastic arrivals• Multipath routing

Page 24: Modelling and Stability of TCP Peter Key MSR Cambridge

Multipath routing

• Can combine with congestion control: multipath congestion control

• Gives– Efficiency / performance gains– Robustness

• Can implement in two ways– Coordinated (single controller per multipath set)– Uncoordinated (eg parallel TCP)

• At what layer (s)?

Page 25: Modelling and Stability of TCP Peter Key MSR Cambridge

Receiver Driven Multipath

Receiver

Peer

Peer

Peer

• Kazaa – manual route selection• Skype – fixed , “automatic” best choice• BitTorrent – dynamic best 4 with reselection

Page 26: Modelling and Stability of TCP Peter Key MSR Cambridge

Coordinated multipath controller

• Users of type r can use a set of routes R(r)– Send xsr on route sR(r)

• Sends traffic on “least cost” route (eg, lowest loss)– Splits if several

• Stable & Efficient: routes traffic to minimise total cost, independent of rate control used (utility function)

• Single rate-control (utility function Ur) per user across all routes. Single RTT dependence– Implies cannot have RTT bias per route

jj

rRsxrr

rr pxUNMaximise )(

)(

x

Page 27: Modelling and Stability of TCP Peter Key MSR Cambridge

Uncoordinated multipath controller

• Users of type r can use a set of routes R(r)– Send xsr on route sR(r)

• Controller (rate control/utility) per route s chosen by user, eg parallel TCP

• Easier to implement … but lose efficiency • Need to modify to be fair to single flows

jj

r s rRssrsrr pxUNMaximise )(

)(

x

Page 28: Modelling and Stability of TCP Peter Key MSR Cambridge

Coordination – does it matter?

• Some recent results (Infocom 07, ICASSP) for static demand complement dynamic results

• Static route choices, even when users greedily choose best from a set (cf Kazaa, Skype) can lose efficiency – Eg , ½ throughput in a simple (contrived) example– Even when no loss of efficiency, can give worse performance or

fairness

• For dynamic route choices (eg BitTorrent), where periodically other routes chosen /sampled and higher thruput route chosen– Coordinated is “optimal” (maximises social welfare)– Uncoordinated performs as well only if no RTT bias in controllers

Page 29: Modelling and Stability of TCP Peter Key MSR Cambridge

Eg Performance with coordination:

• Example network: sharp link capacity constraints

• Schedulable region with coordination:

Ca

bc

2C

a

bc

2

2

2

A B

B C

AC

so stable provided

1

Page 30: Modelling and Stability of TCP Peter Key MSR Cambridge

Schedulable region depends on utility function

a loss of 30% efficiency.

Ca

bc

For TCP, stable provided

10.7

2

Performance without coordination

Page 31: Modelling and Stability of TCP Peter Key MSR Cambridge

Uncoordinated controllers & efficiency

• Example:• Long fat links (delay T),

short-thin links ()• Flows aa’, bb’,cc’• If

• Users choose short-long-short:

• Lose 50% of coordinated thruput

a b

a’

c

b’

c’

12

22

TT T

Page 32: Modelling and Stability of TCP Peter Key MSR Cambridge

Selecting relay or access points

• Coordinated and uncoordinated have same stability region

• But uncoordinated can have higher “cost”, depends on fairness condition

• Can show in the static case, for coordinated gives “max-min” fairness wrt load, uncoordinated “unfair”

AA BB CC

Page 33: Modelling and Stability of TCP Peter Key MSR Cambridge

What about slow start?

• Current slow-start can be viewed as an example of “risk-averse behaviour” (ISQE, Key / Massoulie)

• Mice vs elephants:– Optimal strategy is to let mice go as quickly as

possible (blast away)• Like SRPT• Doesn’t hurt the elephants

– Slow start (and CA?) does the reverse

Page 34: Modelling and Stability of TCP Peter Key MSR Cambridge

• Most flows are short (mice)• Most volume in a few long flows (elephants)• Currently, bias against mice• If use weights w inversely related to

(remaining) file size, can improve response dramatically

Capacity

Scheduling File Tansfers

Page 35: Modelling and Stability of TCP Peter Key MSR Cambridge

Weighted shares

• We know how to design simple, robust, scalable sharing algorithms …eg generically

• Weight is like a “willingness to pay” … but why cooperate

( )(1 ) ( )d

x w x tt p px tdt

weightPrice Pr{Mark}

Page 36: Modelling and Stability of TCP Peter Key MSR Cambridge

Questions???