No Slide Title

Download Report

Transcript No Slide Title

Control Theory in TCP Congestion
Control and new “FAST” designs.
Fernando Paganini and Zhikui Wang
UCLA Electrical Engineering
July 2002.
Collaborators: Steven Low, John Doyle, Jiantao Wang (Caltech).
Earlier versions: Sachin Adlakha, Sanjeewa Athuraliya.
Basic fluid-flow models
L communication links shared by S source-destination pairs.
Routing matrix:
i 1
1 if link l uses source i
Rli  
 0 otherwise
xi : Rate of i  th source
yl : Total rate of l  th link
cl : Capacity of the l  th link
Rx y
1
2
i3
i2
3
i4
1 1 0 0 
R  0 0 1 0


Feedback mechanism:
0 1 1 1 
Each link has a congestion measure or price pl .
Each source has access to aggregate price qi of the links in its path.
q  RT p
Congestion Control Loop
x : source rates
ROUTING
R
y : aggregate
link flows
LINKS
SOURCES
q : aggregate prices
R
T
p : link prices
per source
Decentralized control at links and sources.
Routing assuming fixed, or varying at much slower time-scale.
Link and Source Controls determine:
• Steady-state properties:
– Utilization
– Queues
– Fairness
• Dynamic properties:
– Speed of response
– Stability, oscillations.
– Sensitivity to noise.
Issues with currently deployed TCP:
• Steady-state properties:
– Utilization: (can be affected by dynamics)
– Queues (~full with DropTail).
– Fairness (dependence on RTT)
• Dynamic properties:
– Speed of response: Additive increase is too slow in
large cwnd sizes (high capacity networks).
– Stability, oscillations: Multiplicative decrease is too
aggressive in large cwnd.
– Sensitivity to noise.
Stability of TCP: ns-2 simulations
50 identical FTP sources, single link 9 pkts/ms, RED AQM
Window
Instantaneous queue
Instantaneous queue
800
800
Queue
700
600
Instantaneous queue (pkts)
Instantaneous queue (pkts)
600
700
500
400
300
500
400
300
200
200
100
100
0
0
0
1000
2000
3000
4000
5000
6000
time (ms)
7000
8000
9000
Stable case, RTT= 40ms
10000
0
1000
2000
3000
4000
5000
6000
time (10ms)
7000
8000
9000
10000
Unstable case, RTT= 200ms
Fluid Modeling of TCP-Reno/RED
(Misra, Gong, Towsley, Hollot ’00/’01, Low-Paganini-Doyle ’02)
 i : RTT
dwi
xi (t   i )(1  qi (t ))
wi (t )


xi (t   i )qi (t )
wi : window
dt
wi
2
Additive Increase
dbi
Multiplicative
Decrease
  yl  cl 1{ y  c or b  0}
l
l
l
dt
dri
dt
Queue.
bl : link queue
xi 
wi
i
: source rate
yl : link rates
  l cl  rl  bl  , pl  m( rl ) RED.
qi : packet loss
probability at sources
pl : packet loss
probability at links
All quantities are real-valued.
Stability Analysis of TCP-Reno/RED
• Linearizing around equilibrium we find a stability
region: Unstable for large equilibrium windows, which
arise with high delay or, strikingly, high capacity!
• Packet simulations validate both the region and the
oscillation frequency at the onset of instability.

Round trip propagation delay at critical frequency
100
N=20
95
N=60
Unstable for
 Large delay
 Large capacity
 Small load
90
N=40
Stability region for the case
of N identical sources.
delay (ms)
85
80
75
N=30
70
65
60
N=20
55
50
8
9
10
11
12
capacity (pkts/ms)
13
14
15
Link capacity
Improving these limitations:
• Steady-state properties:
– ECN allows us to decouple feedback from queuing,
so in principle we can get high utilization, low delay.
– Resource allocation issue can be addressed if we allow
sources to pick a utility function.
– Study this by optimization theory.
• Dynamic properties:
– We need to negotiate the appropriate tradeoff between
responding fast to track available bandwidth, but not so
fast that everything oscillates: working close to the
boundary of linear stability is the best compromise.
– To study this tradeoff: control theory.
Optimization-based approaches
(Kelly, Low, …)
• Steady-state properties:
– Utilization
– Queues
– Fairness
• Dynamic properties:
– Speed of response
– Stability, oscillations.
– Sensitivity to noise.
Start from the equilibrium side:
• Source utility functions
• Characterize social optimum.
• Develop decentralized algorithms
Worry about dynamics later:
• Stability without delay.
• Noise variances
• Stability margins to delay.
• Speed of response.
Difficulty: hard to arrange for the dynamic tradeoffs,
Specially for the wide variety of network scenarios.
Control Theory-Based Approach
• Steady-state:
– Utilization
– Queues
– Fairness
•
Look for a scalable (network and delay
independent) solution to the dynamic
tradeoff (stability vs. speed or response)
Can also impose one steadystate property:
Dynamic properties: • “Primal” solution (Vinnicombe)
gives freedom on utility functions
– Speed of response
• Our “dual” solution ensures
– Stability, oscillations. utilization.
– Sensitivity to noise.
To get the other equilibrium property, both approaches can
adapt things at a slower time-scale assuming a bound on the
RTT:“primal-dual” solutions, similar but with minor differences.
Dynamics and the role of delay
• Without delay, nothing would stop us from
adapting the sources’ rates arbitrarily fast.
• In the presence of delay, there is a stability
problem: e.g., controlling temperature of your
shower.
• Special case of general principle in feedback
systems: what limits the performance (e.g. speed
of response) are characteristics of the open loop
(bandwidth, delay).
• In this case, the only impediment is delay. In
particular, this sets the time-scale of our response.
Stability/performance tradeoff in presence of delay
Feedback design is about how fast you can respond while
remaining stable: the limiting factor comes from the “plant”
dynamics. In this problem, from delay. A simple example:
y(t)  K u(t)  y(t  )
u
Loop transfer function is
L( s ) 
Ke  s

s
Increase K for performance
(fast transients, tracking of u).

But K 
for stability.
2
K y
s
1 


s
e
2K


Nyquist plot
of L( j )
This sets a fundamental limit to speed of time response.
Congestion control loop with delays
 if,l s
e
Routing/
 R f ( s)  
li
Delay matrix: 
 0
x : source rates
R f ( s)
if source i uses link l .
otherwise
yl (t )   xi (t   i f,l )
il
y : aggregate
flows per link
SOURCES
LINKS
T
q : aggregate prices
Rb ( s)
per source
qi (t )   pl (t   ib,l )
il
p: link congestion
measures or “prices”
RTT:
i   
f
i ,l
b
i ,l
Ingredients for scalable stability.
 Make the feedback gain inversely proportional to RTT.
This must be done at sources, and is already implicit in
w
window protocols, due to the relation x  .

 Still, other factors contribute to the loop gain. For instance,
the gain tends to scale naturally with the number of sources
sharing a bottleneck, unless some compensation is done.
Difficulty: compensating with decentralized information.
 For scalability to arbitrary delays, the remaining dynamics must
be first order. Roughly, this means we can only put dynamics at
either sources or links (not both), and therefore track only one
steady-state objective: source's demand curve or link utilization.
“Dual” solution with integrator at links.
Guarantees steady-state tracking of link utilization.
Gain compensation exploits equilibrium rates and capacity.
Linear dynamics, single link/multiple sources case:
 xi 
 x0i
 qi
i
R f ( s)
il
1
p y
c
SOURCES
 qi (t )   p(t   ib )
 y(t )   xi (t   i f )
Rb ( s)T
SINGLE
LINK
 denotes increments
around equilibrium
1
i x0i  i s
Loop transfer function: L( s )  
e
cs i  i
Nyquist argument for stability
 i j
i x0i e
L( j )  
c  i j
i
x0i
Since 
 1, the loop gain is a convex combination of points
c  j
i
e

in the curve
, scaled by i  For i  , no encirclements.
j
2

1 
2


Note: if all delays are
scaled by some constant,
the plot does not change.
In the time domain, only
effect is a change in
time-scale of response.
Extension to arbitrary networks
Local analysis around equilibrium. Routing matrices refer
here only to bottleneck links.
x
 xi  
i 0i
M i
  qi M i : number of bottlenecks in source i’s path
x : source rates
R f ( s)
 y  R f ( s) x
y : aggregate
flows per link
SOURCES
LINKS
T
q : aggregate prices
per source
 q  RbT ( s)  p
Rb ( s)
p: link prices
1
 pl   yl
cl
Stability result
Theorem: Assume the matrix R  R f (0)=Rb (0)
(involving only
the bottleneck links) is of full row rank, and that i 

. Then the
2
feedback system is locally stable for arbitrary delays and capacities.
Steps of the proof:
 Write the loop transfer function
L( s )  R f ( s ) AX 0 M T RbT ( s )C
F ( s)
L( s )
I L F ( s)

.
s
s
 F ( s ) is stable, and F (0) has positive eigenvalues under the rank assumption.
This implies stability for small enough  's. Note: integrators at the links!
 A perturbation argument preserves stability as long as  1  L( j ). This

follows by exploiting Rb ( j )  R f ( j ) diag e

 j
 (as in Johari -Tan '00),
which reduces the eigs  L( j )  to the same region as in the single link case.
Global, nonlinear implementation
1
Dynamic Link Control: p   y  c 1{ y  c or p  0}
l l
l
l
If cl
l
l
cl
is the capacity, pl would be the queueing delay.
But we want to clear the queues!
So replace cl by a "virtual" capacity cl  (1   )cl .
Price is now a virtual queueing delay.
Remark: Athuraliya and Low ’00 considered adding
another integrator to clear the queue. However, scalable
stability for arbitrary delays does not extend to that case.
Global, nonlinear implementation
Static control law for sources: linearization requirement is
i x0i
xi
i
 xi  
  qi 

xi ( qi , i )
M i
qi
M i
Assume M i known, or take a known
upper bound. Initially, fix i
independently of the operating point.
Solving the differential equation:
xi  xmax,i e
 i qi
M i i
“Elasticity” of demand decreases
with delay, number of bottlenecks.
This implicitly chooses one utility function, and in particular
would determine issues like fairness.
Properties of the nonlinear laws
• Global stability? Validate by
– Flow simulation of differential equations using Matlab. So far,
cases of local stability have been global.
– Mathematical proof. Tools which combine delay and
nonlinearity are very limited! We have partial results for single
link, but with further parameter constraints.
• Equilibrium structure, fairness: Determined by the fixed
utility, and possibly very unfair, since exponentials
distinguish rates very sharply.
• Objective: allow freedom of choice in utility functions.
This calls for source dynamics, which clashes with
scalable stability; we can allow it if we only require
scalability to “practical” RTTs, and adapt source dynamics
slowly.
New solution with fairness tracking
1
Link Control: pl   yl  cl  , pl  0  virtual queueing delay.
cl
Source control:
d i
i
 ki Ui '( xi )  qi  , (slower tracking of fairness).
dt
z
i  i qi
M i i
xi  xm e
ki 
Mi


M i max
(faster control of utilization)
Equilibrium: U i '( xi )  qi (maximizes U i ( xi )  qi xi ).
yl  cl (matches virtual capacity).
Can prove local stability under adequate parameter choices
(next slide)
Linearized laws and requirements for stability.
i x0i
1
1
(s  z)
 xi   Bi 
 qi Bi  M  , Ai  U "( x ) , z <  .
i 
i
i
max

zBi 

s  A 
 i  RTT, i  , x0i  equilibrium rate
2
i 

M i  bound on # of bottlenecks in path
x : source rates
R f ( s)
 y  R f ( s) x
y : aggregate
flows per link
SOURCES
q : aggregate prices
per source
 q  RbT ( s)  p
LINKS
Rb ( s)T
 pl 
1
 yl
cl
p : link
prices
cl  virtual capacity.
Recap, so far
• Our first flow control had scalable stability to
arbitrary delays, plus exact tracking of link
utilization.
• We can further assign the equilibrium resource
allocation between sources at a slower (universally
agreed-on) time-scale (slower than max RTT).
• Packet-implementations:
– One approach based on ECN marking to communicate
the price, to be described by Zhikui later.
– Alternative (Choe and Low): use queuing delay as
price, modifying TCP Vegas.