Mathematical models of the Internet Frank Kelly www

  • Slides: 42
Download presentation
Mathematical models of the Internet Frank Kelly www. statslab. cam. ac. uk/~frank Hood Fellowship

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

Source: CAIDA, Young Hyun

Source: CAIDA, Young Hyun

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

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

Functional view Applications TCP/IP Physical technology

Functional view Applications TCP/IP Physical technology

Outline • End-to-end congestion control – square-root formula • Utilities and fairness – optimization

Outline • End-to-end congestion control – square-root formula • Utilities and fairness – optimization formulation • Multipath routing – reliability, robustness

End-to-end congestion control senders receivers Senders learn (through feedback from receivers) of congestion at

End-to-end congestion control senders receivers 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 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) •

Feedback mechanism • Now: dropped packets (acknowledgements carry information from receivers to senders) • Standards track: Explicit Congestion Notification (Ramakrishnan, Floyd and Black RFC 3168) - routers mark packets at queues as overload approached

Control of elastic network flows • How should available resources be shared between competing

Control of elastic network flows • How should available resources be shared between competing streams of elastic traffic? • Conceptual problem: fairness • Pragmatic problem: stability of rate control algorithm flow resource user

Elastic flows utility, U(x) rate, x elastic traffic - prefers to share (Shenker) rate,

Elastic flows utility, U(x) rate, x elastic traffic - prefers to share (Shenker) rate, x inelastic traffic - prefers to randomize

Network structure (J, R, A) - set of resources - set of routes -

Network structure (J, R, A) - set of resources - set of routes - if resource j is on route r - otherwise route resource

Notation - set of resources - set of users, or routes - resource j

Notation - 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 SYSTEM(U, A, C): Maximize aggregate utility, subject to capacity constraints

The system problem SYSTEM(U, A, C): Maximize aggregate utility, subject to capacity constraints

The user problem USERr(Ur; lr): User r chooses an amount to pay per unit

The user problem USERr(Ur; lr): User r chooses an amount to pay per unit time, wr , and receives in return a flow xr =wr / r

The network problem NETWORK(A, C; w): As if the network maximizes a logarithmic utility

The network problem NETWORK(A, C; w): As if the network maximizes a logarithmic utility function, but with constants {wr} chosen by the users

Problem decomposition Theorem: the system problem may be solved by solving simultaneously the network

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: and if, for

Max-min fairness Rates {xr} are max-min fair if they are feasible: and if, for any other feasible rates {yr},

Proportional fairness Rates {xr} are proportionally fair if they are feasible: and if, for

Proportional fairness Rates {xr} are proportionally fair if they are feasible: and if, for any other feasible rates {yr}, the aggregate of proportional changes is negative:

Weighted proportional fairness A feasible set of rates {xr} are such that are weighted

Weighted proportional fairness A feasible set of rates {xr} are such that are weighted proportionally fair if, for any other feasible rates {yr},

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

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

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

Market clearing equilibrium (Gale, 1960) Find prices p and an allocation x such that (feasibility) (complementary slackness) (endowments spent) Solution solves NETWORK(A, C; w)

Fairness criteria We’ve seen three fairness criteria: • proportional fairness • max-min fairness •

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?

Optimization formulation Suppose the allocation x is chosen to maximize subject to (weighted -fair

Optimization formulation Suppose the allocation x is chosen to maximize subject to (weighted -fair allocations, Mo and Walrand 2000)

Solution - shadow price for the resource j capacity constraint Observe alignment with square-root

Solution - shadow price for the resource j capacity constraint Observe alignment with square-root formula when

Examples of -fair allocations maximize subject to - maximum flow - proportionally fair -

Examples of -fair allocations maximize subject to - maximum flow - proportionally fair - TCP fair - max-min fair

Example 1/2 max-min fairness: 1/2 2/3 proportional fairness: 2/3 1 maximum flow: 0 1

Example 1/2 max-min fairness: 1/2 2/3 proportional fairness: 2/3 1 maximum flow: 0 1

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

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 - set of resources - set of routes - resource j is on

Notation - 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 congestion indication, at resource j at time t

A primal algorithm xr(t) - rate changes by linear increase, multiplicative decrease pj(. )

A primal algorithm xr(t) - rate changes by linear increase, multiplicative decrease pj(. ) - proportion of packets marked a function of flow through resource

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

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

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

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

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

Differential equations for TCP

Differential equations for TCP

Equilibrium point • check: the equilibrium of the dynamical system recovers the inverse square

Equilibrium point • 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? user cache? short congested links,

Consequences of RTT bias Question: where to place cache? user cache? short congested links, T long uncongested link, T’ cache? If then short RTT preferred under TCP, even though twice the resource usage

Multipath routing Suppose a source-destination pair has access to several routes across the network:

Multipath routing Suppose a source-destination pair has access to several routes across the network: source route resource - set of source-destination pairs - route r serves s-d pair s destination Combined multipath routing and congestion control: a robust Internet architecture. Key, Massoulié & Towsley 2005

Routing and optimization formulation Suppose is chosen to maximize subject to ( H is

Routing and optimization formulation Suppose is chosen to maximize subject to ( H is an incidence matrix, showing which routes serve a source-destination pair )

Example of multipath routing Routes, as well as flow rates, are chosen to optimize

Example of multipath routing Routes, as well as flow rates, are chosen to optimize over source-destination pairs s

First cut constraint Cut defines a single pooled resource

First cut constraint Cut defines a single pooled resource

Second cut constraint Cut defines a second pooled resource

Second cut constraint Cut defines a second pooled resource

Conclusions Mathematical models of end-to-end congestion control show it to be a distributed algorithm

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

Further information and references are available at: www. statslab. cam. ac. uk/~frank