outlinecongestion control motivationeeweb.poly.edu/el933/slides/class10.pdfoutline ! optimal rate...
TRANSCRIPT
1
Network Congestion Control
EL 933, Class10
Yong Liu
11/22/2005
2
Motivation
! Network bandwidth shared by all users
! Given routing, how to allocate bandwidth
" efficiency
" fairness
" stability
! Challenges
" distributed/selfish/uncooperative end systems
" remote/dumb/oblivious routers
3
Outline
! Basics on TCP/RED
! Paper 1: "Rate control in communication networks:
shadow prices, proportional fairness and stability",
Frank Kelly, A.K. Maulloo and D.K.H. Tan, , Journal of
the Operational Research Society
! Paper 2: "Fluid-based analysis of a network of AQM
routers supporting TCP flows with an application to
RED", Vishal Misra, Weibo Gong and Don Towsley,
ACM SIGCOMM 2000
4
Congestion Control
! Network is a distributed
resource sharing system
! Overload means low
throughput
! Individual user depends on
feed back from system to
regulate its load
5
Criteria for Congestion Control
! Efficiency: the closeness of
the total usage to the
optimal level
! Fairness:
Fairness index:
Max-Min Ratio:
! Convergence:
How fast does the system
converge to the desired
state.
6
Internet Congestion Control
Transport Control Protocol
(TCP) at edge
Active Queue Management
(AQM) in core
7
AIMD
! Additive Increase Multiplicative Decrease
! AI: aggressive in grabbing
available bandwidth
! MD: conservative when
network is congested
! trade-off
" efficiency & fairness
8
TCP Congestion Control
! adapt sending rate to network congestion
! window-based rate control# send out a window of W packets each round
# increase W by 1 every RTT if no packet loss
sender
receiver
W
RTT
9
TCP Congestion Control
! adapt sending rate to network congestion
! window based rate control# send out a window W of packets each round
sender
receiver
W
RTT
# decrease W by half upon packet loss
x
# increase W by 1 every RTT if no packet loss
10
More on TCP
! slow-start,
congestion avoidance,
time-out
! triple-duplicated ack
loss & time-out loss
! fast retransmit,
fast recovery
! TCP Tahoe, Reno,
New Reno, Vegas
11
Queue Management
! natural solution: DropTail-- drop new packetsif buffer full" synchronization among flows (?)
" response too late
" large buffer --> large delay
! Active Queue Management (AQM)" random drop: break synchronization
" proactively drop: earlier reaction
" new approaches: RED, BLUE, PI, AVQ, REM ……
12
Random Early Detection
RED: Marking/dropping based on average queue length x (t)
tmin tmax
pmax
1
Marking probability profile has a
discontinuity at tmax
discontinuity removed in gentle_ variant
2tmax
Mar
king
pro
bab
ilit
y p
Average queue length x
t ->
- q (t)
- x (t)
x (t): smoothed, time averaged q (t)
13
Rate Control for Communication Networks:
shadow prices, proportional fairness and stability
FP Kelly, AK Maulloo and DFH Tan
14
Outline
! optimal rate control
! decomposition
! primal/dual algorithms
! user adaptation
! extensions
15
Optimal Rate Control
! Demand v.s. supply" demand: user rate
" supply: link bandwidth
" consumption: routing matrix
! Quantification" utility function:
" link cost:
! Optimal routing" maximize aggregate utility under
resource constraint
" convex optimization solvable
16
Centralized v.s. Distributed
! Centralized solution" network determines rate for all users
" require knowledge of routing and utility functions ofall users
! Distributed algorithm more realistic" user determines its own sending rate
" network uses “pricing” to regulate users
" minimum info. exchange between users and network
" right price --> selfish optimum==global optimum
" analogy from Market Economics
17
Decomposition: distributed optimization
! User Optimization
" given a price, how much
to send?
! Network Optimization
" given user payment, how
to allocate?
18
Decomposition: consistency
!
"
"
"
19
Decomposition: efficiency & fairness
! find optimal rate allocation for all users
" user optimizes his own utility independently
" links are not over-loaded, some fully-loaded, some
under-loaded
" the aggregated utility is maximized (efficiency)
" proportional fairness:
20
Network Opt.: primal-dual formulation
! primal problem: optimal
rates for users
! dual problem: optimal
prices on links
duality theorem: dual solution matches primal solution
21
Network Opt.: primal algorithm
! link penalty function
! unconstrained optimization
! dynamic algorithm: user rate adjustment
! convergence
"
"
22
Network Opt.: dual algorithm
! dynamic algorithm: link price adjustment
! convergence"
"
23
User Adaptation
! network optimization:
" approximation:
" user scheme:
! system optimization:
" approximation:
" user scheme:
24
Other Properties
! speed of convergence to the optimum
! robustness against
" information accuracy
" information delay
! Utility function of TCP
" reno:
" vegas:
25
Extensions! One user employ multiple paths
"
"
! Joint rate control and routing
! System converges to optimum" user only uses paths with minimum price
" traffic rates on selected paths equal26
Summary
! Network optimal rate allocation decomposed intodistributed optimization" users maximize net gain
" links minimize cost
" dynamically approach optimum
• right link price
• optimal rate allocation
• maximized aggregate utility
! TCP Works!!" maximize efficiency
" maintain some sort of fairness
" stable and robust
27
Fluid-based Analysis of a Network of AQM Routers
Supporting TCP Flows with an Application to RED
Vishal Misra Wei-Bo Gong Don Towsley
University of Massachusetts, Amherst
MA 01003, USA
(slides borrowed from Vishal)
28
Overview
!motivation
!key idea
!modeling details
!validation with ns
!analysis sheds insights into RED
!conclusions
29
Motivation
! current simulation technology, e.g. ns
" appropriate for small networks
10s - 100s of network nodes 100s -
1000s IP flows
" inflexible packet-level granularity
! current analysis techniques
" UDP flows over small networks
" TCP flows over single link
...
......30
ChallengeExplore large scale systems
" 100s - 1000s network elements
" 10,000s - 100,000s of flows (TCP, UDP, NG)
Our BeliefFluid-based techniques that abstract out protocol details
are key to scalable network simulation/understanding
Contribution of PaperFirst differential equation based fluid model to
enable transient analysis of TCP/AQM networks
developed
31
Key Idea
! model traffic as fluid
! describe behavior of flows and queues using
Stochastic Differential Equations
! obtain Ordinary Differential Equations by taking
expectations of SDEs
! solve resultant coupled ODEs numerically
Differential equation abstraction:
computationally highly efficient32
Loss Model
Sender
AQM Router
Receiver
Loss Rate as seen by Sender: !(t) = B(t-")#p(t-")
Round Trip Delay (")
B(t)p(t)Packet Drop/Mark
!(t) = B(t)#p(t)
33
Start Simple: A Single Congested Router
TCP flow i,prop. delay Ai
AQMrouter
C, p
! One bottlenecked AQM router
" capacity {C (packets/sec) }
" queue length q(t)
" drop prob. p(t)
! N TCP flows
" window sizes Wi (t)
" round trip time
Ri (t) = Ai+q (t)/C" throughputs
Bi (t) = Wi (t)/Ri (t)
34
System of Differential Equations
Window Size: dWi
dt
^= 1
^R̂i(q(t))
Additive
increase
Wi
2
^-
Mult.
decrease
Wi(t-")^
Ri (q(t-"))p̂(t-")
Loss arrival
rate
^^
-1[q(t) > 0]C^
Outgoing
traffic
Queue length: dq
dt=^
All quantities are average values. Timeouts and slow start ignored
+ $Ri(q(t))^
Wi(t)^
Incoming
traffic
^
35
System of Differential Equations (cont.)
Average queue length: q(t)^dx
dt=
ln (1-%)
&
ln (1-%)
&-x(t)^
Where
% = averaging parameter of RED(wq)
& = sampling interval ~ 1/C
^
Loss probability:dp
dt= dp
dx
dx
dt
^^
Where dp is obtained from the marking profile
dx
p
x 36
Stepping back: Where are we?
dWi
dt= f1(p,Ri) i = 1..N
dp
dt= f3(q) dq
dt= f2(Wi)
N+2 coupled equations solved numerically using MATLAB
W=Window size, R = RTT, q = queue length, p = marking probability
37
Extension to Network
Networked case: V AQM routers
Other extensions to the model
Timeouts: Leveraged work done in [PFTK Sigcomm98] to model timeouts
Aggregation of flows: Represent flows sharing the same route by a
single equation
queuing delay = aggregate delay
q(t) = $V qV(t)
loss probability = cumulative loss probability
p(t) = 1-'V(1-pV(t))
38
Validation Scenario
! DE system programmed with
RED AQM policy
! equivalent system simulated in
ns
! transient queuing performance
obtained
! one way, ftp flows used as
traffic sources
Flow set 1
Flow set 2
Flow set 3
Flow set 4
Flow set 5
RED router 1RED router 2
Topology
5 sets of flows
2 RED routers
Set 2 flows through both routers
39
Performance of SDE method
! queue capacities 5 Mb/s
! load variation at t=75 and
t=150 seconds
! 200 flows simulated
! DE solver captures
transient performance
! time taken for DE solver ~
5 seconds on P450
DE method
ns simulation
Inst
. qu
eue
leng
th
Time
Inst. queue length for router 2
40
Observations on RED
! “Tuning” of RED is difficult
- sensitive to packet sizes, load levels, round trip
delay, etc.
! discontinuity of drop function contributes to, but is not the
only reason for oscillations.
! RED uses variable sampling interval &. This could cause
oscillations.
Further Work
Detailed Control Theoretic Analysis of TCP/RED available
at http://gaia.cs.umass.edu/papers/papers.html
41
Conclusions
! differential equation based model for evaluatingTCP/AQM
networks
! computation cost of DE method a fraction of the discrete
event simulation cost
! formal representation and analysis yields better
understanding of RED/AQM
42
Future Directions
! model short lived and non-responsive flows"Unresponsive Flows and AQM Performance”, (INFOCOM 2003)
! demonstrate applicability to large networks“Fluid Models and Solutions for Large-Scale IP Networks”,(Sigmetrics 2003)
! analyze theoretical model to rectify RED shortcomings“On Designing Improved Controllers for AQM RoutersSupporting TCP Flows”, (INFOCOM 2001)
! apply techniques to
- other protocols, e.g. TCP-friendly
protocols
- other AQM mechanisms like Diffserv"Providing Throughput Differentiation for TCP Flows UsingAdaptive TwoColor Marking and Multi-Level AQM”,(INFOCOM 2002)
43
New Directions…
! high speed networks" linear increase not efficient enough: HTCP, FAST
" more feedback from routers: XCP
! wireless networks" corruption loss: Explicit Congestion Notification
" link coupling: cross layer design
! overlay/p2p networks" application layer control: parallel/relay
" revisit: efficiency/fairness/stability