You are on page 1of 22

Active Queue Management

Queue Management
how h t to manage g queue i in a router? t ? mainly associated with packet drop.
when do we drop a packet? and d which hi h one? ? drop packets when the buffer is full. we can control only which one we drop not when when. drop-tail, drop-head, random-drop drop packets even when there is enough space space. we can control both when and which packets we are going to drop

Passive queue management (traditional)

Active queue management

Need for AQM


D Drawbacks b k of fD Drop tail: il Lock-out Full queue q Long queueing delay Cannot permit the transmission of data in burst. Random drop or drop front solves the lock lock-out out problem problem. Active queue management Drop packets before a queue becomes full Solution to the full queue problem

Advantages of AQM
Reduce number of packets dropped in routers Permit packets in burst Avoid global synchronization Provide lower-delay interactive service By keeping the average queue size small Avoid lock-out behavior Ensuring that there will almost always be a buffer available for an incoming packet.

Early Random Drop


Primitive AQM drop packets with a probability before queue is full how to find the probability??

Queue Length vs. vs Utilization


Q. Delay

p0

Drop rate

Utilization

Random Early Detection


An active queue management Dropping packets randomly before th b the buffer ff i is f full. ll No burst drop Less queueing delay Fair packet drop Hard to configure parameters

RED Drop R rop Function


Drop Prob. 1
P-max

Q_min

Q_max

Q Que. L Length th
7

Implementation of RED
Input parameters
max_q: should be less than buffer size min_q: max_p: _p EWMA (Exponential Weighted Moving Average) factor (a) : 0.1 ~ 0.0001 calculate the new average queue length
avg_q = avg_q*(1-alpha) *(1 l h ) + alpha*qlen l h * l

Upon receiving a packet


calculate the drop probability P
if avg_q < min_q, P = 0 else if avg_q > max_q, P = 1 else l P = max_p(avg_q min_q)/(max_p min_p)

drop this packet with P

Discussion on RED Performance


RED d does not exhibit hibi much hb better performance f than h d drop tail. il Drop tail is more aggressive than RED in the case of UDP traffic. RED p parameters have a minor impact p on the p performance with small buffer. RED with large buffers can improve the system performance but choosing good RED settings g g is not straight g forward. For an incremental deployment, small buffers are very sensitive for the end2end performance.

Adaptive RED
to make RED less sensitive to congestion level

10

ARED vs vs. RED

11

Explicit Congestion Notification


A defense for the question to AQM why do we have to discard packets with enough b ff ?? buffer?? marking the packet instead of discarding. additional dditi lb benefitfit easy to t b be d detected t t d

12

BLUE

Motivation
E Exponential i l increase i in i network kd demand d Rise in packet loss rates 17% loss rates reported p Decrease in link utilization and goodput Potential for congestion collapse [Jacobson88] Goal Queue management algorithms for maximizing network efficiency in times of heavy congestion 0% packet k l loss, 100% li link k utilization, ili i l low queuing i d delay l

14

Problems with RED


H Hard d to tune Does not adapt well to traffic Why? y Wrong control variable being used Queue length indicates congestion not severity

15

Blue
Class of Cl f fundamentally f d ll different diff queue management algorithms l ih Decouple congestion management from queue length Rely y only y on q queue and link history y Example Increase aggressiveness when loss rates high Decrease aggressiveness when link underutilized

16

Example Blue algorithm


Single Si l dropping/marking d i / ki probability b bilit Increase upon packet loss Decrease when link underutilized Freeze value l upon changing h

Upon full buffer: if ((now - last_update) > freeze_time) then Pmark = Pmark + d1 last_update = now Upon link idle: if ((now - last_update) last update) > freeze freeze_time) time) then Pmark = Pmark - d2 last_update = now
17

Evaluation
1000 and d 4000 P Pareto t on/off / ff TCP sources Router queue sizes 100KB (17.8ms) to 1000KB (178ms) RED (wq = 0.0002, 0.002, 0.02, 0.2) Blue l freeze_time = 10ms, 100ms d1 = 0.02, 0.0025 ; d2 = 0.002, 0.00025

100 Mbs 45 Mbs 10ms 45 Mbs 10ms

100 Mbs

1ms, 5ms, 20ms

1ms, 5ms, 20ms

18

Blue evaluation
1000 sources

19

Blue evaluation
4000 sources

20

Understanding Blue
Experiment E i t 50 sources added every 10 seconds Queue length plots

RED

Blue

21

Understanding Blue
Marking behavior RED Blue

22

You might also like