Active Queue Management - PowerPoint PPT Presentation

1 / 33
About This Presentation
Title:

Active Queue Management

Description:

Upon arrival of a real packet, enque the packet in both queues if no overflow ... A list of M recently seen flows, zombies. Longer memory than the buffer alone ... – PowerPoint PPT presentation

Number of Views:46
Avg rating:3.0/5.0
Slides: 34
Provided by: lionC
Category:

less

Transcript and Presenter's Notes

Title: Active Queue Management


1
Active Queue Management
  • 1. RED 4. AVQ
  • 2. BLUE 5. SRED
  • 3. REM

2
  • TCP congestion model
  • Sources decide rates based on feedback
    information
  • End-to-End concept
  • Positive news ACKs
  • Negative news Duplicate ACKs, Transmission
    Timeout, ECN
  • Simple networks

3
Drawbacks of Drop Tail
  • To accommodate transient congestion periods,
    queue must be large, thus causes delay
  • Global synchronization
  • Bias against bursty traffic

4
Global Synchronization
  • When queue overflows, several connections
    decrease congestion windows simultaneously

5
Bias Against Bursty Traffic
  • Bursty traffic more likely to be dropped

average queue length
V.S.
6
Congestion Avoidance
  • Maintains low delay and high throughput
  • Average queue size kept low
  • Actual queue size grows enough to handle
  • Bursty Traffic
  • Transient Congestion

7
The Solutions of RED
  • Global synchronization
  • Transient congestion
  • (short queue)
  • Bursty Traffic
  • Drop packets when congestion eminent
  • Select packets at random
  • Use average queue length as indicator of
    congestion

8
RED Calculating Average Queue Size
  • Use low-pass filter (exponential weighted moving
    average)
  • wq should be small enough to filter out transient
    congestion, and large enough for the average to
    be responsive

9
Drop Probability
10
Uniform Distribution of Drops
  • If you just use pb
  • Using pb/(1 - count x pb)

11
Drop Probability Parameters
  • To accommodate bursty traffic minth must be large
  • maxth depends in part on maximum average delay
    allowed
  • (maxth- - minth) must be larger than typical
    increase in average queue length during an RTT

12
Simulation Results
13
Advantages of RED
  • No bias against bursty traffic
  • No global synchronization
  • Packet marking probability proportional to
    connections share of bandwidth
  • Scalable no per-connection state

14
BLUE vs RED
  • RED relies on queue lengths to estimate
    congestion
  • Gives little information about the number of
    competing connections sharing the link
  • Requires many parameters
  • BLUE relies directly on packet loss and link
    utilization
  • Maintains a single probability

15
BLUE
Note d1 gtgt d2
16
REM Overview
  • Goals
  • Decouples congestion from Performance
  • Introduction of Price
  • Targets at both Bandwidth and Delay
  • Based on mathematical dual model

17
Random Exponential Marking (REM)
  • Link algorithm
  • Update congestion measure Price
  • Mark each packet with probability
  • End-to-end marking probability

Clear buffer
Match rate
18
Congestion Measure in REM
19
Marking Probability in REM
  • Marking probability
  • End-to-end marking probability

20
AVQ
  • C Actual link capacity
  • C Capacity of virtual queue 0 ltC lt C
  • l Actual arrival rate
  • Parameters
  • g desirable utilization in 0,1
  • a to be determined theoretically

21
AVQ
  • Each router maintains a virtual Q with 0ltCltC
    and a buffer with sizereal buffer size
  • Upon arrival of a real packet, enque the packet
    in both queues if no overflow occurs in the
    v-buffer otherwise, drop the packet.
  • Update dC/dt a (g C l)
  • lltlt g C virtual Q is depleted quickly ? no
    packets drop
  • Lgtgtg C virtual Q is depleted slowly ? drop
    packets

22
Simple Code
  • Assume that previous pkt arrives at time s.
  • For each arrived packet at time t, do
  • VQ ? VQ C(t-s)
  • If (VQ current_pkt_size gt buffer_size)
  • drop packets in both VQ and real queue
  • Else
  • VQ ? VQ current_pkt_size
  • C ? C a g C (t-s) a current_pkt_size
  • s? t

23
SRED Main Idea
  • Number of active flows ? number of different
    flows in the buffer
  • A misbehaving flow has a lot of packets in the
    buffer
  • When a packet arrives, compare it with a packet
    arrived before. If they belong to the same flow,
    a hit occurs.

24
Zombie List
  • A list of M recently seen flows, zombies
  • Longer memory than the buffer alone
  • Information for each zombie
  • Count number of packets of this zombie received
  • timestamp arrival time of the most recently
    received packet

25
Zombie List Operations
  • Zombie list is not full
  • Insert the flow with count 0, timestamp ta
  • Zombie list is full
  • Randomly pick a zombie
  • Hit count 1, timestamp ta
  • No hit with prob. p that the zombie is replaced
  • The arrived packet may be dropped no matter there
    was a hit or not

26
Hits Number of Active Flows
  • Zombie list loses memory once every M/p packets
  • Few active flows ? more hits
  • Misbehaving flows cause more hits than
    well-behaved flows

27
Hit Frequency
  • P(t) hit frequency around the time of the tth
    packet arrives at the buffer
  • Hit(t) 1 when hit Hit(t) 0, otherwise
  • P(t) (1 a)P(t 1) aHit(t)
  • Proposition P(t)-1 is a good estimate for the
    effective number of active flows

28
Proposition Argument
  • P(arrival packet belongs to flow i) pi
  • P(Hit(t)1) S pi2
  • 1/N ? S pi2 ? 1
  • Symmetric case N flows, pi 1/N
  • P(t) 1/N (exact estimate)
  • Asymmetric case infinite flows, pi 2-i
  • P(t) 3/16 (effective number of active flows)

29
Simple Stabilized RED
  • Target buffer occupation Q0
  • Set a drop probability p
  • Square root law congestion window of each flow,
    cwnd ? p-1/2
  • Sum of N congestion windows N p-1/2
  • Q0 Np-1/2 ? p (N/Q0)2
  • p is proportional to N2

30
Simple Stablized RED (cont.)
  • Buffer capacity B
  • Current buffer size q
  • pzap psred(q)
  • psred(q) pmax if 1/3B ? q lt B
  • ΒΌ pmax if 1/6B ? q lt 1/3B
  • 0 if 0 ? q lt 1/6B

31
psred(q)
  • Depends on current q, not history of q
  • Three levels
  • Ratio 4 halving the
  • congestion windows

32
pzap
  • When number of flows ? 256
  • pzap psred/65356 (number of flows)2
  • When number of flows gt 256
  • pzap psred
  • Avoid pzap becomes too large
  • pzap depends on q and P(t)

33
Full SRED
Increase the drop probabilities of misbehaving
flows
Write a Comment
User Comments (0)
About PowerShow.com