Motivation Network Congestion Control EL 933, Class10 Yong Liu 11/22/2005! 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 1 2 Outline Congestion Control! 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! Network is a distributed resource sharing system! Overload means low throughput! Individual user depends on feed back from system to regulate its load 3 4
Criteria for Congestion Control Internet 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. Transport Control Protocol (TCP) at edge Active Queue Management (AQM) in core 5 6 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 receiver W sender RTT
9 TCP Congestion Control! adapt sending rate to network congestion! window based rate control # send out a window W of packets each round # increase W by 1 every RTT if no packet loss # decrease W by half upon packet loss receiver W sender x RTT 10! slow-start, congestion avoidance, time-out! triple-duplicated ack loss & time-out loss! fast retransmit, fast recovery! TCP Tahoe, Reno, New Reno, Vegas More on TCP Queue Management! natural solution: DropTail-- drop new packets if 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 Random Early Detection RED: Marking/dropping based on average queue length x (t) Marking probability p 1 p max t min t max 2t max Average queue length x Marking probability profile has a discontinuity at t max discontinuity removed in gentle_ variant - q (t) - x (t) 11 12 x (t): smoothed, time averaged q (t) t ->
Outline Rate Control for Communication Networks: shadow prices, proportional fairness and stability FP Kelly, AK Maulloo and DFH Tan! optimal rate control! decomposition! primal/dual algorithms! user adaptation! extensions 13 14 Optimal Rate Control Centralized v.s. Distributed! 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! Centralized solution network determines rate for all users require knowledge of routing and utility functions of all 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 15 16
Decomposition: distributed optimization Decomposition: consistency! User Optimization given a price, how much to send?! Network Optimization given user payment, how to allocate? 17 18! Decomposition: efficiency & fairness Network Opt.: primal-dual formulation! 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:! primal problem: optimal rates for users! dual problem: optimal prices on links duality theorem: dual solution matches primal solution 19 20
Network Opt.: primal algorithm Network Opt.: dual algorithm! link penalty function! dynamic algorithm: link price adjustment! unconstrained optimization! dynamic algorithm: user rate adjustment! convergence! convergence 21 22 User Adaptation Other Properties! network optimization: approximation: user scheme:! system optimization: approximation: user scheme:! speed of convergence to the optimum! robustness against information accuracy information delay! Utility function of TCP reno: vegas: 23 24
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 equal 26 Summary! Network optimal rate allocation decomposed into distributed 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 Overview 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)!motivation!key idea!modeling details!validation with ns!analysis sheds insights into RED!conclusions 27 28
Motivation Challenge Explore large scale systems 100s - 1000s network elements! current simulation technology, e.g. ns 10,000s - 100,000s of flows (TCP, UDP, NG) appropriate for small networks 10s - 100s of network nodes 100s - 1000s IP flows inflexible packet-level granularity Our Belief Fluid-based techniques that abstract out protocol details are key to scalable network simulation/understanding! current analysis techniques UDP flows over small networks TCP flows over single link......... Contribution of Paper First differential equation based fluid model to enable transient analysis of TCP/AQM networks developed 29 30 Key Idea Loss Model! model traffic as fluid! describe behavior of flows and queues using Stochastic Differential Equations B(t) Sender Packet Drop/Mark AQM Router p(t) Receiver! obtain Ordinary Differential Equations by taking expectations of SDEs!(t) = B(t)#p(t)! solve resultant coupled ODEs numerically Round Trip Delay () Differential equation abstraction: computationally highly efficient Loss Rate as seen by Sender:!(t) = B(t-)#p(t-) 31 32
Start Simple: A Single Congested Router System of Differential Equations All quantities are average values. Timeouts and slow start ignored TCP flow i, prop. delay A i! One bottlenecked AQM router capacity {C (packets/sec) } queue length q(t) drop prob. p(t) Window Size: dw ^ i dt = 1 ^R i (q(t)) ^ Additive increase - ^ W i 2 Mult. decrease W^ i (t-) R^ i (q(t-)) ^ ^p(t-) Loss arrival rate AQM router C, p! N TCP flows window sizes W i (t) round trip time R i (t) = A i +q (t)/c throughputs B i (t) = W i (t)/r i (t) Queue length: dq^ dt = -1 [q(t) > 0] C ^ Outgoing traffic + $ W^ i (t) ^R i (q(t)) ^ Incoming traffic 33 34 System of Differential Equations (cont.) Stepping back: Where are we? W=Window size, R = RTT, q = queue length, p = marking probability Average queue length: dx ^ dt = ln (1-%) & x(t) ^ - ln (1-%) & q(t) ^ dw i dt = f 1 (p,r i ) i = 1..N Where % = averaging parameter of RED(w q ) & = sampling interval ~ 1/C dp dt = f 3 (q) dq dt = f 2(W i ) dp^ Loss probability: = dp dx^ dt dx dt Where dp is obtained from the marking profile dx 35 p x 36 N+2 coupled equations solved numerically using MATLAB
Extension to Network Validation Scenario Networked case: V AQM routers queuing delay = aggregate delay q(t) = $ V q V (t) loss probability = cumulative loss probability p(t) = 1-' V (1-p V (t)) 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 37! DE system programmed with RED AQM policy! equivalent system simulated in ns! transient queuing performance obtained! one way, ftp flows used as traffic sources 38 Flow set 1 Flow set 2 Flow set 3 Topology Flow set 4 RED router 1 RED router 2 Flow set 5 5 sets of flows 2 RED routers Set 2 flows through both routers Performance of SDE method Observations on RED! 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 Inst. queue length Inst. queue length for router 2 Time DE method ns simulation! 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 39 40
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 Routers Supporting 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 Using Adaptive TwoColor Marking and Multi-Level AQM, (INFOCOM 2002) 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 43