Transcript Objectives
CprE599: Creative Component
Adaptive RED with Dynamic Threshold
Adjustment
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Objectives
Explain the role of active queue
management in performance optimization
of TCP/IP networks
Explain ARDTA
Explain performance analysis of ARDTA
algorithms using Ns-2 Network Simulator
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Contents
Passive queue management
Active queue management (AQM)
Comparison of AQM algorithms
AQM and ARDTA
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Passive Queue
Management
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Passive Queue Management
Two states:
No packet drop
No early congestion warning to senders
100% packet drop
Cause all senders to back off
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Passive Queue Management
Algorithms – Drop Tail
Drop Tail
Drop packets from the tail of the queue
All arriving packets are dropped when the queue
size reaches a certain threshold
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Passive Queue Management
Algorithms – Drop From Front
Drop from Front
Drop packets from the front of the queue
Drop the packet in the buffer with the oldest age
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Passive Queue Management
Algorithms – Push Out
Push out
The latest buffered packet is pushed out from
the queue
Make room for a newly arriving packet
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Problems with Passive Queue
Management
A trade-off between the buffer size and QoS
Larger buffer results in higher throughput, but longer
delay
Lock out: A single connection monopolises the buffer
space
Give rise to fairness problem
Full queue: Queue is full for a long period of time
Long queuing delay
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Active Queue
Management
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Active Queue Management
(AQM)
Provide preventive measures to manage a buffer to
eliminate problems associated with PQM
Characteristics:
Preventive random packet drop is performed before the
buffer is full
The probability of preventive packet drop increases with
the increasing level of congestion
Goals:
Reduce dropped packets
Support low-delay interactive services
Avoid lock-out
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Random Early Detection (RED)
A router maintains two thresholds:
Minth:
Accept all packets until the queue reaches Minth
Drop packets with a linear drop probability when
the queue is greater than Minth
Maxth:
All packets are dropped with probability of 1when
the queue exceeds this threshold
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
RED Algorithm
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
RED Drop Function
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Dropping probability in RED
P(drop)
1.0
MaxP
AvgLen
MinThresh
Adaptive RED with Dynamic Threshold Adjustment
MaxThresh
Md. Manzoor Murshed
Selection of Maximum Drop
Probability for RED
Selection of Maxdrop significantly affects the
performance of RED
Too small: Active packet drops not enough to
prevent global synchronisation
Too large: Decreases the throughput
Optimal value depends on number of
connections, round trip time, etc.
Selection of an optimal value for Maxdrop
remains an open issue
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Detailed algorithm for RED
pb Maxp(avg−Minth)/(Maxth−Minth)
papb/(1−count x pb)
Adaptive RED with Dynamic Threshold Adjustment
Initialization: avg 0; count -1;
for each packet arrival
calculate the new average queue size
avg:
if the queue is nonempty
avg (1- wq)avg + wq q
else
m f (time - q_time)
avg (1- wq)mavg
if Minth ≤ avg < Maxth
increment count
calculate probability pa:
pb Maxp(avg−Minth)/(Maxth - Minth)
pa pb/(1−count x pb)
with probability pa:
mark the arriving packet
count 0
else if maxth < avg
mark the arriving packet
count 0
else count -1
when queue becomes empty
q_time time
Md. Manzoor Murshed
Calculation of the Average
Queue Length
Avg queue length works as a low pass filter
(LPF)
Controls the active packet drop
Accumulate short term congestion
Trace long term congestion
Improves response time
m = f (time−q time)
avgi = (1−w)m x avgi-1 .
Adaptive RED with Dynamic Threshold Adjustment
avgt=(1–w)avgt-1 + wqt
Md. Manzoor Murshed
Average queue size estimation in RED
AvgLen = (1-weight) * AvgLen + weight * SampleLen
Weight is normally around 0.002 (and often a negative power of two)
How often should we sample the queue size?
What if packets have not arrived for a while?
Queue length
Instantaneous
Average
Time
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Modified Algorithm to Calculate
Average queue during Idle Time
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
ARDTA Algorithm
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Model to Calculate Threshold
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Calculation of Minth
n2
a (1 w) a q [1 (1 w) ] w i (1 w) nk 2i
k
n
nk
k 1
w
j 1
1
0
1
0
n 1
nk
i 1
[ j(n 1) 1 l ] (1 w)
nk nj l
l 0
n2
k 1
i 1
j 1
ank anM a513 w i (1 w) nk 2i w
Adaptive RED with Dynamic Threshold Adjustment
n 1
[ j(n 1) 1 l ] (1 w)
nk nj l
l 0
Md. Manzoor Murshed
Topology used for simulation
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Simulation with Poisson
Arrival Process
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Summary of the Simulation for
Poisson Process
Algorithm
Average
Throughput
Percent of packets
Drop
Mean
Delay
Total drops
Poisson Process (Minth=3 Maxth=9)
18.3
0.35%
0.000939
81
Poisson Process (Minth=4Maxth=12)
18.44
0.28%
0.001209
65
ARDTA
18.50
0.21%
0.001068
50
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Simulation with Self similar
traffic
Algorithm
Average
Throughput
Percent of packets
Drop
Mean
Delay
Total drops
SST (Minth=3 Maxth=9)
13.93
1.08%
0.0004
486
SST (Minth=4Maxth=12)
14.1
0.81%
0.00047
352
ARDTA
15.86
0.43%
0.000384
173
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Comparison of ARDTA with
RED and adaptive RED
S3
S1
10Mb, 2ms
10Mb, 0ms
R1
RED (Buffer size = 100)
R2
1.5Mb, 10ms
10Mb, 1ms
10Mb, 3ms
S2
S4
Algorithm
aggregate per-link throughput(%)
aggregate per-link drops(%)
RED
93.87
8.2
Adaptive RED
94.33
7.8
ARDTA
94.88
7.63
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Comparison of ARDTA with
ARED and ARED
Floyd
Feng
S1
10Mb, 2ms
R1
RED (Buffer size = 35)
R2
10Mb, 4ms
S3
1.5Mb, 20ms
10Mb, 3ms
S2
Thmin
Thmax
Throughput
Drop
% drop
Delay
ARDTA
4.15
Dynamic
1.41
77
0.21
0.120701
AREDFloyd
5
15
1.40
84
0.23
0.120517
AREDFeng
5
15
1.08
993
2.73%
0.07
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
S1
10 mb 10ms
S2
10 mb 10ms
10 mb 10ms
S3
10 mb 20ms
R1
D1
RED
10 mb 10ms
S4
10 mb 10ms
S5
Threshold
Mean Delay
Average
Throughput
Total drops
Percent Drops
AREDfloyd
Thmin = 5
Thmax = 15
0.003315
7.16
56
0.31%
AREDfeng
Thmin = 5
Thmax = 15
0.002120
7.44
127
0.672%
ARDTA
Thmin = 4.15
Thmax = changed
dynamically
003519
7.95
55
0.14%
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Performance Evaluation of
AQM Schemes
Compare the performance of RED variants
against a number of criteria
Throughput
Packet drops
Delay
Methodology
Simulation
Modelling
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Analysis Model
Single bursty input
Mixture of bursty and
smooth traffic
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Simulation
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed
Simulation using NS-2
Simulation with NS-2
Adaptive RED with Dynamic Threshold Adjustment
Md. Manzoor Murshed