Mathematical models of the Internet Frank Kelly frank Hood Fellowship Public Lecture University of...

42
Mathematical models of the Internet Frank Kelly www.statslab.cam.ac.uk/~frank Hood Fellowship Public Lecture University of Auckland 3 April 2012

Transcript of Mathematical models of the Internet Frank Kelly frank Hood Fellowship Public Lecture University of...

Mathematical models of the Internet

Frank Kellywww.statslab.cam.ac.uk/~frank

Hood Fellowship Public Lecture University of Auckland

3 April 2012

Source: CAIDA -Young Hyun,Bradley Huffaker(displayed at MOMA)

Physicaltechnology

Applications

TCP/IP

Functional view

Outline

• End-to-end congestion control– square-root formula

• Utilities and fairness – optimization formulation

• Multipath routing– reliability, robustness

End-to-end congestion control

Senders learn (through feedback from receivers) of congestion at queue, and slow down or speed up accordingly. With current TCP, throughput of a flow is proportional to

senders receivers

)/(1 pT

T = round-trip time, p = packet drop probability. (Jacobson 1988, Mathis, Semke, Mahdavi, Ott 1997, Padhye, Firoiu, Towsley, Kurose 1998, Floyd and Fall 1999)

Feedback mechanism

• Now: dropped packets (acknowledgements carry information from receivers to senders)

• Standards track: Explicit Congestion Notification (Ramakrishnan, Floyd and Black RFC3168) - routers mark packets at queues as overload approached

Control of elastic network flows

user

resource

flow

• How should available resources be shared between competing streams of elastic traffic?• Conceptual problem: fairness• Pragmatic problem: stability of rate control algorithm

utility,U(x)

rate, x

utility,U(x)

rate, x

Elastic flows

elastic traffic - prefers to share(Shenker)

inelastic traffic - prefers to randomize

Network structure (J, R, A)

0

1

jr

jr

A

A

R

J - set of resources- set of routes - if resource j is on route r- otherwise

resource

route

Notation

J

R

jr

xr

Ur (xr )

C j

Ax C

- set of resources- set of users, or routes - resource j is on route r- flow rate on route r - utility to user r- capacity of resource j- capacity constraints

The system problem

0

)(

xover

CAxtosubject

xUMaximize rRr

r

Maximize aggregate utility, subject to capacity constraints

SYSTEM(U,A,C):

The user problem

0

r

rr

rr

wover

ww

UMaximize

User r chooses an amount to pay per unit time, wr ,

and receives in return a flow xr =wr /r

USERr(Ur;r):

0

log

xover

CAxtosubject

xwMaximize rRr

r

As if the network maximizes a logarithmic utility function, but

with constants {wr} chosen by the users

NETWORK(A,C;w):

The network problem

Problem decomposition

Theorem: the system problem

may be solved

by solving simultaneously

the network problem and

the user problems

Max-min fairness

Rates {xr} are max-min fair if they are feasible:

CAxx ,0

and if, for any other feasible rates {yr},

rssrr xxysxyr ::

Proportional fairness

Rates {xr} are proportionally fair if they are feasible:

CAxx ,0

and if, for any other feasible rates {yr}, the aggregate of proportional changes is negative:

yr xr

xr

0rR

Weighted proportional fairness

A feasible set of rates {xr} are such that are weighted proportionally fair

if, for any other feasible rates {yr},

w r

yr xr

xr

0rR

Fairness and the network problem

Theorem: a set of rates {xr} solves the network problem,

NETWORK(A,C;w), if and only if the rates are

weighted proportionally fair

Bargaining problem (Nash, 1950)

Solution to NETWORK(A,C;w) with w = 1 is unique point satisfying

• Pareto efficiency

• Symmetry

• Independence of Irrelevant Alternatives

(General w corresponds to a model with unequal bargaining power)

Market clearing equilibrium (Gale, 1960)

Find prices p and an allocation x such that

Rrpxw

AxCp

CAxp

rjjrr

T

,

0)(

,0 (feasibility)(complementary slackness)(endowments spent)

Solution solves NETWORK(A,C;w)

Fairness criteria

We’ve seen three fairness criteria:

• proportional fairness

• max-min fairness

• TCP-fairness (as described by the square-root formula)

Can we unify these fairness criteria within a single framework?

1

1r

rr

xw

subject to

Rrx

JjCxA

r

jrr

jr

0

maximize

Optimization formulation

Suppose the allocation x is chosen to

(weighted -fair allocations, Mo and Walrand 2000)

Rrp

wx

rjj

rr

/1

jp - shadow price for the resource j capacity constraint

Observe alignment with square-root formula when

rj

jrrr ppTw ,/1,2 2

Solution

- maximum flow - proportionally fair- TCP fair - max-min fair)1(

)/1(2

)1(1

)1(0

2

w

Tw

w

w

rr

Examples of -fair allocations

1

1r

rr

xw

subject to

Rrx

JjCxA

r

jrr

jr

0

maximize

Rrp

wx

rjj

rr

/1

Example

0

1 1

JjC

Rrwn

j

rr

1

,1,1

maximum flow:

1/3

2/3 2/3

1/2

1/2 1/2

max-min fairness:

proportional fairness:

0

1

Rate control algorithms

• Can rate control algorithms be interpreted within the optimization framework?

• Several types of algorithm possible, based on– congestion indication using linear increase

and multiplicative decrease rules– explicit rates inversely proportional to

network shadow prices

Notation

J

R

jr

wr

xr (t)

j (t)

- set of resources- set of routes - resource j is on route r- weight of route r- flow rate on route r at time t - shadow price, or rate of congestionindication, at resource j at time t

A primal algorithm

sjssjj

rjjrrrr

txpt

ttxwtxdt

d

:

)()(

)()()(

xr(t) - rate changes by linear increase, multiplicative decreasepj(.) - proportion of packets marked a function of flow through resource

Global stability

Theorem: the above dynamical system has a stable point to which all

trajectories converge. The stable point is proportionally fair with respect to

the weights {wr}, and solves the network problem, when

j

jj

Cx

Cxxp

0)(

TCP

• We’ve seen that TCP’s square root formula is interpretable in terms of an optimization problem

• Next we show that its dynamic behaviour is interpretable as a form of primal algorithm

TCP (Jacobson’s congestion avoidance algorithm)

Source maintains a window of sent, but not yet acknowledged, packets - size cwnd

• cwnd incremented by 1/cwnd on positive ack

• cwnd decremented by cwnd/2 on congestion

• change in rate x per unit time is about

xTcwnd

2

1

/

/2

)1(1

2

2

px

T

p

cwndT

Tpcwnd

pcwnd

Differential equations for TCP

)()(

)(11)(

2

)()()(1)(

:

2

2

txpt

tt

ttx

T

ttx

dt

d

sjssjj

rjjr

rr

r

rr

Equilibrium point

RrT

xr

r

rr

2/11

21

• check: the equilibrium of the dynamical system recovers the inverse square root formula for TCP• note again the round-trip time bias

Consequences of RTT bias

Question: where to place cache?

pTT '

12

long uncongested link, T’

short congested links, T

user

cache?cache?

pT 22

11

If then short RTT preferred under TCP, even though twice the resource usage

TT 122'

Multipath routing Suppose a source-destination pair has access to

several routes across the network:

resource

routesource

destinationsr

S

- set of source-destination pairs- route r serves s-d pair s

Combined multipath routing and congestion control: a robust Internet architecture. Key, Massoulié & Towsley 2005

Routing and optimization formulation

)(nxx

)log( ss

s xn

subject to

Rry

JjCynA

SsxyH

r

jrrr

jr

srr

sr

0

maximize

Suppose is chosen to

( H is an incidence matrix, showing which routes serve a source-destination pair )

Example of multipath routing

1C

2C

3C

3C

1n

2n 3n

Routes, as well as flow rates, are chosen to optimize

over source-destination pairs s)log( ss

s xn

213 ,CCC

First cut constraint

1C

2C

3C

3C

1n

2n 3n

212211 CCxnxn

Cut defines a single pooled resource

Second cut constraint

1C

2C

3C

3C

1n

2n 3n

333112

1Cxnxn

Cut defines a second pooled resource

Conclusions

Mathematical models of end-to-end congestion control show it to be a distributed algorithm that: solves an optimization problem; computes a fair allocation; and finds a market clearing equilibrium.

The models provide a framework for engineering efforts to improve reliability and robustness.

Further information and references are available at:

www.statslab.cam.ac.uk/~frank