Test of WRED for Bottleneck Link
WRED Test Objective
Verify the basic WRED functionalities and understand the impact
of each WRED parameters. More precisely it was verified the use of WRED
for a bottleneck link to differentiate the bandwidth share among
different classes, where each class was identified by different values
of IP precedence.
Tests have been carried out between CSELT (Telecom Italia),
INFN/CNAF (GARR), CERN and Uni Stuttgart.
WRED Overview
When it arrives a packet belonging to a queue for which WRED is enabled,
some actions that take place:
The Average Queue Size is calculated, than
if the AQS is less than the minimum WRED threshold the packet is enqueued,
otherwise, accordingly to the Drop Probability of the packet
within a WRED class, the packet is dropped or enqueued. This behaviour
can be influenced setting the WRED parameters. It is possible to set WRED
parameters for each aggregate of packets (Class)and these parameters are:
- Minimum Threshold: number of packets above which
the Drop Probability is increased linearly
- Maximum Threshold: number of packets above which
all packets of that class are discared
- Max. Drop Probability: maximum value for the Drop
Probability when the Average Queue size equals the Max. Threshold
Many choices for these parameters are available and all tests
have been carried out according to Figure1.
As shown in the picture all classes have the same Min. and
Max Thresholds and differentiations among classes are achieved
using different value of Max. Drop Probability.

The other parameter that is relevant for WRED configuration is the
Exponential weighting factor. This parameter, that is unique for
all WRED classes, influences the way the Average Queue Size is
calculated. The Average Queue Size is an exponential weighted
moving average of the instantenous queue size that depends on
the exponential weighting factor value ("n") that can be
set in Cisco Router.
The formula for the calculation of the Average Queue Size (AQS) from
the Instantanueous Queue Size (Qsize) is the following:
Wq=1/(2^n)
AQSi=(1-Wq)*AQSi-1
+Wq*Qsize
The more the weight Wq is increased the more the previuos values
of the instantenous queue size are taken into account, and the system
has more capacity to absorb burst. At the same time Wq should
not be too low otherwhise WRED can't react quickly to congestion.
Some useful formulas are given in Figura2.
The "U" parameter allow conversion from time to
packets, and must be used since Min. and
Max. Thresholds are given in unit of packets. For example if you want
a maximum average queue delay of "100ms", you will first calculate
U that depends on the bandwidth of the sub-interface, and then you
select MaxThreshold=100ms * U. A good rule for Min Threshold
selection is to set it smaller than 1/2 of the Max Threshold.
In the figure it was chosen 1/3. All formulas have to be taken as a
starting point for subsequent tuning.
WRED Test-Bed
The test was carried out between a Laboratory of CSELT (Telecom Italia) and
a Laboratory of INFN/CNAF (GARR). The laboratory layout is summarized in
Figure3. The WRED is enabled in CSELT router:
Cisco7500, IOS 12.0(5)XE3, VIP2-50, ATM Deluxe PA-A3-OC3.
The router configuration is summarized in
Router-Config.
The bandwidth available in the bottleneck link was divided into two groups.
The first group was for UDP packets and it can consume 25% of the whole
bandwidth available on the ATM output sub-interface. In the other group
there is only TCP traffic and the bandwidth share is 75% of the whole.
For bandwidth sharing the mechanism of CB-WFQ was enabled on the output
interface. To achieve relative differentiations within the TCP group the
WRED mechanism was enabled.
The TCP traffic if made of three different classes and each class was assigned
a different value of IP precedence at the input interface.
The traffic profile for each TCP class was made of a certain number of
connections (3, 5,10, 15 or 20) each of them is a file transfer of a
file of 100k Bytes.
The UDP stream was at a constant rate of 1.5Mbps (UDP payload of 576 bytes)
and it was used as a background traffic.
All flows were generated and measured using the software called
Chariot(@ Ganymede).Figure4
gives an idea of the logical scenario and the traffic pattern.
The rtt from Tx to Rx Workstation was about 8ms, the average UDP
bandwidth is 710Kbps, while the average TCP bandwidth is 2270Kbps.
These values were measured at the receiver side.
In the following tests description we speak about the whole bandwidth (100%)
thinking only about the aggregate bandwidth of all TCP flows (That was
done because the total throughput (UDP+TCP) was almost constant).
Tests Results
Two different groups of tests were carried out. In the first group each
TCP class had got the same number of flows. In the second group of tests
one class had a number of flows varying from 3 to 20 while the other two
classes had got a constant number of TCP flows (3 TCP flows for each class).
The first group of tests correspond to offer a "Balanced traffic", while the
second is the case of "Not Balanced Traffic".
The case of
"balanced traffic" was used to verify the effect of bandwith differentiation
among the three TCP classes when the minimum threshold is varied. In all
tests the Max Threshold was always set to 2 times the value of the
Minimum Threshold, and the Max Drop Probability was set to
10% (AF11 Low Drop), 20% (AF12 Medium Drop) and 50% (AF13 High Drop)
according to the importance of each class.
In Figure5 it is shown the bandwidth share
of each TCP class when the min threshold (and hence the
Max threshold=2*Min Thresh) is varied.
The maximum differentiation among classes takes place in the interval
between the two red line. For values of Min Threshold above the
second red line the bandwidth percentage converge to 33%, since for
high values the selective drop mechanism don't take place.

The case of "Not Balanced Traffic": the number of TCP flows
was increased from 3 to 20 for one class while the number of flows
for the other classes was kept constant (3 flows).
For these tests, we used MinThresh=15 and MaxThresh=30,
while the Max drop Probabilities weere the same of the previous
tests. If WRED is disable each class gets a bandwidth percentage
that is directly proportional to the number of flows in that class.
If WRED is enable other factors have to be taken into account.
A good approsimation is to consider that each class get a relative
bandwidth share that is directly proportional to the number of Flows
in that class and inversely proportional to the drop probability
assigned to that class (Of course this approximation is valid because all
flows have approximately the same rtt).
In Figure6 it is shown the bandwidth that the
PHB AF11 (the class with the lowest drop probability) achieves when
the number of flows for each class is varied. Looking at the red curve we
can state that the Bandwidth for the PHB AF11 will never go below 20%
of the whole even if the number of flows in the medium drop probability
class will be almost 6 times more (20 flows instread of 3) than the flows
in the Low Drop Probability Class (PHB AF11).
More results can be found in the
slides
presented at the tf-tant meeting
held at Geneva 3rd February 2000.
CSELT Cisco7500 Router Configuration
Input Interface: packet marking
class-map match-all wred-prec5
match access-group 192
class-map match-all wred-prec4
match access-group 191
class-map match-all wred-prec3
match access-group 190
!
policy-map setprec
class wred-prec3
set ip precedence 3
class wred-prec4
set ip precedence 4
class wred-prec5
set ip precedence 5
class class-default
set ip precedence 0
!
interface FastEthernet3/1
ip address 192.168.70.1 255.255.255.0
service-policy input setprec
Output Interface: perform PHB
ip cef distributed
!
class-map match-all prec-only
match access-group 180
!
policy-map wred-out
class prec-only
bandwidth 2000
random-detect
random-detect precedence 3 15 30 2
random-detect precedence 4 15 30 5
random-detect precedence 5 15 30 10
class class-default
bandwidth 666
!
interface ATM0/0/0.2 point-to-point
description VP CSELT <--> INFN-CNAF
bandwidth 3560
ip address 192.168.77.22 255.255.255.252
pvc infn-qos 0/100
vbr-nrt 3560 3560
encapsulation aal5mux ip
service-policy output wred-out
Classification Criteria: Access List
access-list 180 permit ip any any precedence flash
access-list 180 permit ip any any precedence flash-override
access-list 180 permit ip any any precedence critical
!
access-list 190 permit tcp host 192.168.70.2 range 30000 31000 host 192.168.73.3
access-list 191 permit tcp host 192.168.70.2 range 40000 41000 host 192.168.73.3
access-list 192 permit tcp host 192.168.70.2 range 50000 51000 host 192.168.73.3
Nicola Chiminelli
[end]