Network Control

Download Report

Transcript Network Control

Network control
Frank Kelly
University of Cambridge
www.statslab.cam.ac.uk/~frank
Conference on Information Science and Systems
Princeton, 22 March 2006
Outline
• Example: end-to-end congestion control in
the Internet
– square-root formula
• Control of elastic network flows
– utilities, fairness and optimization formulation
• Stability, under
– delays
– noise
– fluctuating demand
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
1 /(T p )
T = round-trip time, p = packet drop probability.
(Jacobson 1988, Mathis, Semke, Mahdavi, Ott 1997, Padhye,
Firoiu, Towsley, Kurose 1998, Floyd and Fall 1999)
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)
utility,
U(x)
rate, x
elastic traffic prefers to share
(Shenker)
rate, x
inelastic traffic prefers to randomize
Network structure (J, R, A)
J
R
A jr  1
A jr  0
-
set of resources
set of routes
if resource j is on route r
otherwise
route
resource
Notation
J
R
jr
xr
U r (xr )
Cj
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

resource
route
The system problem
SYSTEM(U,A,C):
Maximize  U r ( xr )
rR
subject to
over
Ax  C
x0
Maximize aggregate utility,
subject to capacity constraints
The user problem
USERr(Ur;r):
 wr 
Maximize U r    wr
 r 
over
wr  0
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):
Maximize  wr log xr
rR
subject to Ax  C
over
x0
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 and
the user problems
Johari, Tsitsiklis 2005,
Yang, Hajek 2006
Max-min fairness
Rates {xr} are max-min fair if they
are feasible:
x  0,
Ax  C
and if, for any other feasible rates {yr},
 r : yr  xr   s : ys  xs  xr
Rawls 1971,
Bertsekas, Gallager 1987
Proportional fairness
Rates {xr} are proportionally fair if
they are feasible:
x  0, Ax  C
and if, for any other feasible rates {yr}, the
aggregate of proportional changes is negative:


rR
yr  x r
xr
 0
Weighted proportional fairness
A feasible set of rates {xr} are such that
are weighted proportionally fair
if, for any other feasible rates {yr},
yr  x r
w r x
r
 rR
 0
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
p  0,
Ax  C
p (C  Ax)  0
T
wr  xr  p j , r  R
(feasibility)
(complementary
slackness)
(endowments spent)
jr
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?
Optimization formulation
Suppose the allocation x is chosen to
1
maximize
xr
r wr 1  
subject to
A
jr
xr  C j
jJ
r
xr  0 r  R
(weighted  -fair allocations, Mo and Walrand 2000)
Solution
1/


 wr 
xr  

  pj 
 jr

pj
rR
- shadow price (Lagrange multiplier)
for the resource j capacity constraint
Observe alignment with square-root formula when
  2,
wr  1 / Tr ,
2
pr   p j
jr
Examples of  -fair allocations
1
maximize
subject to
xr
r wr 1  
A
jr
1/
xr  C j


 wr 
xr  

  pj 
 jr

jJ
r
xr  0 r  R
 0
 1
(w  1 )
(w  1 )
 2
 
( wr  1 / Tr )
2
(w  1 )
-
maximum flow
proportionally fair
TCP fair
max-min fair
rR
nr  1, wr  1 r  R,
Example
Cj 1 j  J
1/2
1/2
max-min fairness:
 
1/2
2/3
proportional fairness:
 1
2/3
1/3
1
maximum flow:
 0
0
1
Rate control algorithms
• Can rate control algorithms be
interpreted within the optimization
framework?
• Several types of algorithm possible,
based on, e.g.,
– congestion indication using increase and
decrease rules at sources
– explicit rates determined by shadow prices
estimated by resources
Low, Srikant 2004,
Srikant 2004
Network structure
route
resource
J
R
jr
xr ( t )
 j (t )
- set of resources
- set of routes
- resource j is on route r
- flow rate on route r at time t
- rate of congestion indication,
at resource j at time t
A primal algorithm
d
xr (t )   r ( xr (t )) wr  xr (t )  j (t ) 
dt
jr
 j (t )  p j   xs (t ) 
s: js
xr(t) - rate changes by linear increase,
multiplicative decrease
pj(.) - proportion of packets marked as 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
p j ( x)  0
x  Cj

x  Cj
K, Maulloo, Tan 1998
What’s missing?
The global stability results ignore:
• time delays
• stochastic effects
General TCP-like algorithm
Source maintains window of sent, but not
yet acknowledged, packets - size cwnd
cwnd  xT
On route r,
• cwnd incremented by ar cwnd n
on positive acknowledgement
• cwnd decremented by br cwnd m
for each congestion indication (m>n)
• ar = 1, br = 1/2, m=1, n= -1
corresponds to Jacobson’s TCP
Differential equations with delays
d
xr (t  Tr )
xr ( t ) 
dt
Tr
.ar ( xr (t )Tr ) (1  r (t ))  br ( xr (t )Tr ) r (t ) 
n
m
r (t )  1   1   j (t  T jr ) 
jr


 j (t )  p j   xr (t  Trj ) 
 r: jr

j
r
Trj  T jr  Tr
Equilibrium point
1
xr 
Tr
 ar 1  r

 br r
1 / m n



rR
• ar = 1, br = 1/2, m=1, n= -1 corresponds to
Jacobson’s TCP, and recovers square root formula
• But what is the impact of delays on stability?
Can we choose m, n,… arbitrarily?
Delay stability
Johari, Tan 1999,
Massoulié 2000,
Vinnicombe 2000,
Paganini, Doyle, Low 2001
Equilibrium is locally stable if there exists a
global constant  such that
x pj ( x )   p j ( x ),
condition on
sensitivity for
each resource j

ar ( xrTr ) 
2
n
condition on
aggressiveness
for each route r
Consequences?
Delay stability condition:

ar (cwnd r ) 
2
n
• n = -1 (Jacobson’s TCP)
instability if congestion windows are too small,
sluggishness if congestion windows are too big
• n = 0 (Scalable TCP, Vinnicombe, T. Kelly)
condition independent of size of congestion window,
and choice of br can remove round-trip time bias
Stochastic stability
The signalling of congestion is noisy:
for example, the receiver might see
---1--0--0-----0------0----------1------0-receiver
Ott 1999, K 2003,
Baccelli, McDonald,
Reynier 2002
Variance
m 1
m 1
br xr Tr
Var ( xr (t )) 
2( m  n )(1  r )
If m=1, then:
• variance does not depend on Tr
• coefficient of variation (= standard deviation/mean)
does not depend on xr - scale invariance
Suggestion on single path
congestion control?
ar = a, n = 0, m = -1 is attractive,
giving both delay stability and
stochastic stability
Routing?
Can we extend the algorithm to allow load
balancing across routes? Danger: route flap.
source
route
resource
S - set of source-destination pairs
rs - route r serves s-d pair s
destination
Combined rate control and
routing algorithm
On route r
• xr(t) increased by a / Tr on positive
acknowledgement
• xr(t) decreased by br ys(r)(t) / Tr for each
congestion indication, where
ys (t )   xr (t  Tr )
rs
is rate of returning acknowledgements for
s-d pair s at time t
• s = {r} corresponds to Scalable TCP
Delay stability
Han, Shakkottai, Hollot, Srikant,
Towsley 2003, K, Voice 2005
Equilibrium is locally stable if there exists a
global constant  such that
x pj ( x )   p j ( x ),
condition on
sensitivity for
each resource j
a (1   ) 

condition on
aggressiveness
of sources
2
Delay stability
Han, Shakkottai, Hollot, Srikant,
Towsley 2003, K, Voice 2005
Equilibrium is locally stable if there exists a
global constant  such that
impact of routing
x pj ( x )   p j ( x ),
condition on
sensitivity for
each resource j
a (1   ) 

condition on
aggressiveness
of sources
2
Suggestion
on routing?
Han, Shakkottai, Hollot, Srikant,
Towsley 2003, K, Voice 2005
Key, Massoulié, Towsley 2006
• Stable, scalable load balancing across paths, based
on end-to-end measurements, can be achieved on the
same time-scale as rate control
• For load balancing, the key constraint on the
responsiveness of each route is the round-trip time
of that route.
• While it is natural for structural information to be
provided by the network layer, load balancing is
more naturally part of the transport layer.
Chiang, Low, Calderbank, Doyle 2003
Example:
fair dual algorithm
Low, Lapsley 1999
Katabi, Handley, Rohrs 2002
Liu, Basar, Srikant 2003, K 2003


d
 j (t )   j  j (t )   xs (t  Tsj )  C j 
dt
 s: js

wr
xr (t ) 
 jr  j (t  T jr )
 
A sufficient condition for delay stability:  j C j T j 
2

T j  average round-trip time of
packets through resource j
Stochastic stability
For a single resource
1
2
Var (  j (t ))   j  j
2
1
2
Var ( xr (t ))   j xr
2
• neither coefficient of variation depends on  j
• scale invariance with respect to xr
• promising for ad-hoc networks, where there are
no natural scalings for prices (of battery power,
bandwidth, etc )
Flow level model
Define a Markov process n(t )  (nr (t ), r  R)
with transition rates
nr  nr  1 at rate  r
rR
nr  nr  1 at rate nr xr (n)  r r  R
where ( xr (n), r  R) is an  -fair allocation
- Poisson arrivals, exponentially distributed file sizes
- model originally due to Roberts and Massoulié 1998
Stability
Suppose
r
r A jr 
r
Then Markov process
is positive recurrent
 Cj
jJ
n(t )  (nr (t ), r  R)
De Veciana, Lee, Konstantopoulos 1999,
Bonald, Massoulié 2001, Ye 2003,
Kang, K, Lee, Williams 2004,
Lin, Shroff, Srikant 2006, Massoulié 2006
What goes wrong without fairness?
Suppose vertical streams
have priority: then
condition for stability is
0  (1  1 ) (1  2 )
and not
0  min{ 1  1 , 1  2 }
(Bonald and Massoulié 2001)
0
1
C=1
2
C=1
Conclusions
• End-to-end congestion control can be viewed as
a distributed algorithm that:
solves an optimization problem
computes a fair allocation
finds a market clearing equilibrium
• Choices of distributed algorithm are limited by
the requirement of stability under
delays
noise
fluctuating load
Further information and references
are available at:
www.statslab.cam.ac.uk/~frank