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:

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.

WRED thresholds Choice

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 formula for parameters selection

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.

CSELT Test-Bed

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.

General test description

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.

Threshold Selection


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).

Bandwidth Percentage for 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]