Routing Using Potentials: A Dynamic Trafï¬c-Aware Routing Algorithm
Color Aware Switch algorithm implementation The Computer Communication Lab (236340) Spring 2008.
-
date post
19-Dec-2015 -
Category
Documents
-
view
217 -
download
0
Transcript of Color Aware Switch algorithm implementation The Computer Communication Lab (236340) Spring 2008.
Agenda
Introduction Project scope Dune’s color-aware algorithm DiffServ Project Implementation Test results Open discussion
Introduction
Switches with multiple flows. Packets arrive at several ports are colored
(GREEN and YELLOW)Congestion on some of the ports.Packets are dropped.
Requirements:Yellow packets are dropped before green.No bandwidth loss.
Project Scope
Implement Dune’s algorithm for color-aware switch (specification is provided)
Provide an experimental platform (based on NS-2) for further exploration
Color Aware Algorithm
Class Q
Class QCentral Agent
Inp
ut
Qu
eu
eIn
pu
t Q
ue
ue
Input 1
Input 2
Output port
Class Q
Inp
ut
Qu
eu
e
Input N
...
...
FSM (per input )
Max -Q-Size
Max -Q-Size
Max -Q-Size
* Max -Q -Size* Flow -ID* Aging -Time
Credit Message
Color Aware Algorithm 2
Each input has access to Test Parameters Table for each color. Each input holds Max-Q-Size for all inputs that are mapped to the
same output. Central Agent maintains Max-Q-Size by receiving “Flow Status
Messages” from various inputs. When a packet is evaluated for enque, a RED-like test vs. Max-Q-
Size is performed. The packet is dropped or accepted depending on Test Parameters.
Central Agent updates the Max-Q-Size on each non-empty input using Round Robin every given time.
Differentiated Services
DiffServ is mechanism for classifying and managing network traffic.
DiffServ architecture has 3 components: Policy
In NS, the policy is fully determined in the tcl script
Edge routers Assign code points to the packets according to the policy
Core routers Evaluate packets according to priority given on Edge
Differentiated Services - 2
In NS, each link has number of physical and virtual queues that represent priorities.
Queues are implemented on node’s egress. Therefore, when congestion occurs, packets are dropped on egress.
Project’s Implementation
DiffServ is used to mark packets depending on source-destination pair.
Each packet is then evaluated for dropping by its input before standard NS dropping algorithms.
Several topologies are built to test implementation.
Tests were run and results analyzed.
Implementation details
Since queues are implemented on the egress, we’ve created physical queue for each input link.
CA manages physical queues only to determine which packets should be dropped.
CA notifies each non-empty physical queue about the maximum size of all other queues.
Custom statistics were made for the algorithm.
Topology
A
D
S1
S2
B
S3
S4
E
Packets are evaluated vs. CFG-Table and (if not dropped) by standard NS algorithms.
Various settings were tested to find optimal values.
2Mb
2Mb
5Mb
5Mb 10Mb
Each source sends packets with constant bitrate.Each link to edge contains both yellow and green packetsCongestion is created on Edge’s output.
Testing various parameters
The tests were run with changing the following parameters for both colors:CFG-AdmitDropProb1CFG-AdmitDropProb2CFG-AdmitTh CFG-AdmitDropTh CFG-DropThPort delay
Drops vs. tresholds
1204080103050
2204080204080
3406080305070
4506090306070
5506090405080
6307080203070
Thresholds:
010
20
30
40
50
60
Dro
ps %
1 2 3 4 5 6
Different thresholds
0
10
20
30
40
50
60
Dro
ps %
1 2 3 4 5 6
Different thresholds
CFG-AdmitDropProb1=20%CFG-AdmitDropProb2=50%CFG-AdmitDropProb1=60%CFG-AdmitDropProb2=80%
CFG-AdmitDropProb1=30%CFG-AdmitDropProb2=40%CFG-AdmitDropProb1=40%CFG-AdmitDropProb2=50%
0
0.1
0.2
0.3
0.4
0.5
Dro
ps
%
1 2 3 4 5 6
Different tresholds
Tests vs. Weighted RED Single Q
0
0.1
0.2
0.3
0.4
0.5
Dro
ps %
1 2 3 4 5 6
Different tresholds
Dune’s algorithm Approximated weighted RED (one queue)
1204080103050
2204080204080
3406080305070
4506090306070
5506090405080
6307080203070
Thresholds and probabilities:CFG-AdmitDropProb1=10%CFG-AdmitDropProb2=35%CFG-AdmitDropProb1=20%CFG-AdmitDropProb2=50%
Tests vs. Weighted RED Double Queue
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
1 2 3 4 5 6
Dune’s algorithm Approximated weighted RED (double queue)
1204080103050
2204080204080
3406080305070
4506090306070
5506090405080
6307080203070
Thresholds:
CFG-AdmitDropProb1=10%CFG-AdmitDropProb2=35%CFG-AdmitDropProb1=20%CFG-AdmitDropProb2=50%
0
0.050.1
0.15
0.2
0.250.3
0.35
0.40.45
0.5
Dro
ps %
1 2 3 4 5 6
Different tresholds
Drops vs. port delay
0.00%
20.00%
40.00%
60.00%
80.00%
100.00%
120.00%
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16
Port delay (sec)
Dro
ps,
% Green drops
Utilization
Yellow drops
Test parameters:CFG-AdmitTh = 50CFG-AdmitDropTh = 60CFG-DropTh = 90CFG-AdmitDropProb1 = 20%CFG-AdmitDropProb2=50%
CFG-AdmitTh = 30CFG-AdmitDropTh = 60CFG-DropTh = 70CFG-AdmitDropProb1 = 50%CFG-AdmitDropProb2=70%
Topology (2)A
D
B
E
10Mb
10Mb
10Mb
0.00%
10.00%
20.00%
30.00%
40.00%
50.00%
60.00%
70.00%
80.00%
90.00%
100.00%
1 2 3 4
Dune
Linear
Dune WREDDoubleQueue
WREDSingleQueue
Test parameters:CFG-AdmitTh = 20CFG-AdmitDropTh = 40CFG-DropTh = 80CFG-AdmitDropProb1 = 10%CFG-AdmitDropProb2=35%
CFG-AdmitTh = 10CFG-AdmitDropTh = 30CFG-DropTh = 50CFG-AdmitDropProb1 = 20%CFG-AdmitDropProb2=50%
0.00%
5.00%
10.00%
15.00%
20.00%
25.00%
1 2 3 4
Dune
Linear
Dune WREDDoubleQueue
WREDSingleQueue
Test parameters:CFG-AdmitTh = 20CFG-AdmitDropTh = 40CFG-DropTh = 80CFG-AdmitDropProb1 = 10%CFG-AdmitDropProb2=35%
CFG-AdmitTh = 10CFG-AdmitDropTh = 30CFG-DropTh = 50CFG-AdmitDropProb1 = 20%CFG-AdmitDropProb2=50%
A
D
B
E
10Mb
3Mb
9Mb
Topology (3)
Conclusions:
Large difference in dropping probabilities gives better results (more priority to green packets).
Global Max-Q-Size has its equilibrium. In CBR traffic thresholds distance has minor effect.
Port delay (Max-Q-Size update period) doesn’t have much impact on results for cbr traffic, unless its value is unreasonable.
Linearization of Dune algorithm at some topologies gives improvement to efficiency.
In general, Dune’s algorithms gives better results than WRED, however there are counterexamples.