Title: RSVP Performance Evaluation using MultiObjective Evolutionary Optimisation
1- RSVP Performance Evaluation using Multi-Objective
Evolutionary Optimisation - O. Komolafe, J. Sventek
- Dept. of Computing Science
- University of Glasgow
- femi, joe_at_dcs.gla.ac.uk
- March 2005
2RSVP
- Resource reSerVation Protocol
- RFC 2205 (Sept. 1997)
- Originally for resource reservation in IP
networks
RESV
PATH
Receiver
Sender
Receiver initiated reservation Receiver returns
RESV message in response to PATH message from
sender
Soft state protocol Periodic refresh PATH RESV
messages must be sent to maintain reservation
3RSVP Evolution
MESSAGE_ID Ack Bundle SRefresh
Improve performance
RFC 2205 (Sept. 1997)
RFC 3209 (Dec. 2001)
RFC 3473 (Jan. 2003)
Time
RFC 2961 (April 2001)
Use as generic signalling protocol for (G)MPLS
LABEL LABEL_REQUEST EXPLICIT_ROUTE RECORD_ROUTE He
llo
PROTECTION LABEL_SET NOTIFY_REQUEST SUGGESTED_LABE
L RECOVERY_LABEL Notify
4RSVP
- RFC 2961 Retx algorithm proposed to improve
performance - Ack trigger messages
Exponential back off timer Retransmit unacked
trigger PATH or RESV at intervals that grow
exponentially
5RSVP Key Timing Parameters
while (
AND retx L )
Rapid retx interval (default 0.5s or RTT)
Increment value (default 2)
ACK
Retx limit (default 3)
F
?F
?2F
Sender
L 3
PATH
2
1
ACK
after
Refresh period (default 30s)
Lifetime factor (default 3)
RESV
PATH
Receiver
Sender
6Motivation Aims
- Motivation
- Existing work on RSVP typically use default
values for timing parameters - Timing parameters will affect metrics such as
protocol overhead, reservation establishment
time, etc. - YET little attention paid to exploring
interactions between timing parameters and
establishing optimal values - Aims
- Show that implemented technique is a feasible
means to investigate innate tradeoffs in
protocols such as RSVP - Find the optimal values of RSVP timing parameters
- Compare standard RSVP, RSVP with proposed
retransmission algorithm variants - Study interactions between inputs objectives
under a number of different network conditions
7Approach
What technique should be used to find the inputs
that simultaneously optimise the objectives ?
Retx interval Retx exponent Retx limit Refresh
interval Lifetime
Multiple inputs
RESV
PATH
ACK
Receiver
Sender
Multiple objectives
RSVP overhead Resv est. time (RET) Mean delay Loss
8Multi-Objective Optimisation (MOO)
- From the literature and intuition, expect that
some objectives conflict - e.g. protocol overhead vs. reservation
establishment time - Given ubiquity of MOO problems, significant body
of existing work..
9Multi-Objective Optimisation (MOO)
Objective 1
Pareto front
Value of objectives for prospective solution
2 KEY GOALS
Find solutions including/near PO solutions
Pareto Optimal (PO) set
Find diverse solutions
No solution in search space dominates any member
of PO set
Objective 2
10Multi-Objective Optimisation (MOO)
- Merits of applying genetic algorithms (GAs) to
MOO - Possibility of finding multiple solutions in
single run - Deal with population of solutions
- Ability to optimise multiple (conflicting) costs
simultaneously - Avoid tricky problem of formulating
representative aggregated cost function - Minimal prior problem knowledge required
- Performance not constrained by shape/continuity
of search space - Mechanisms to ensure emergence of diverse final
population may be easily incorporated - GAs known to perform well for noisy/stochastic
functions - Multi-objective evolutionary algorithm used
NSGA-II
11Approach
QoS experienced by flow indicative of RSVPs
success in establishing maintaining reservation
Sender attempts to make reservation for flow
using RSVP
Receiver
Sender
PATH
RESV
Links saturated with background traffic
?delay/loss in flow unless reservation made
sustained
Comparison between Standard RSVP RSVP with retx
unacked trigger Path Resv messages RSVP with
retx unacked trigger Path messages RSVP with retx
unacked trigger Resv message
12Applying NSGA-II
(0.25,0.5,1,., 8) Retx interval
(0,1,2,., 31) Retx limit
r4 r3 r2 r1 r0 i4 i3 i2 i1 i0 e4 e3 e2 e1 e0 l4
l3 l2 l1 l0 f3 f2 f1 f0
Refresh rate (5,10,15,., 160)
Lifetime (1, 2, 3,., 16)
Retx exponent (0, 0.25, 0.5,.,7.75)
RSVP overhead Resv est. time (RET) Mean delay Loss
Individual set of input timing values Fitness
Corresponding objective values ?evaluated by
simulation
13Objective Evaluation
- Objectives evaluated by simulation
- NS-2 used
- RSVP/ns enhanced to implement Ack messages,
retransmission algorithm etc. - Timing parameters used by RSVP in simulation
obtained by decoding binary string - After GA completes, identify and analyse
non-dominated solutions in final solution
Timing values
Objective values
14Simulation
Timing values obtained by decoding binary string
from NSGA-II run
CBR traffic 500byte packets _at_ 400kbit/s
Buffer size 1000 packets
Receiver
Sender
Background traffic source/sink
Link capacity 0.5 or 1 Mbit/s
Exponentially distributed On/Off traffic Mean On
Off period 1s On period 500byte packet _at_
500kbit/s
Most expedient discretionary GA simulation
parameters determined empirically
15 Exemplar Results
16 Single Reservation Loss vs Overhead
Similar trends obtained for Overhead
vs. RET Overhead vs. Delay
17 Single Reservation Loss vs Overhead
Standard RSVP Retx Resv obtain lowest overhead
(for high loss)
For highly congested network
Retx Path outperforms Retx Resv
Standard RSVP approaches lowest loss but with
much greater overhead
Retx Both best at minimising loss
18 Single Reservation Loss vs Overhead
For less congested network
Meritocratic ordering 1. Standard RSVP 2. Retx
Path/Retx Resv 3. Retx Both
19Multiple Reservations
- Static reservation establishment considered thus
far - Now consider situation where reservations
established/torn down dynamically - ?Flow values chosen such that reservation cannot
be made for next flow until previous reservation
removed - Removal either by explicit message (i.e. PathTear
or ResvTear) or by natural state timeout -
How should timing values be chosen?
20 Multiple Reservations Loss vs Overhead
21 Multiple Reservations Loss vs Overhead
For less congested network
Retx Both Retx Path perform best
22 Multiple Reservations Loss vs Overhead
Meritocratic ordering 1. Retx Both 2. Retx
Path 3. Retx Resv 4. Standard RSVP
For highly congested network
Meritocratic ordering 1. Standard RSVP 2. Retx
Resv 3. Retx Path 4. Retx Both
23What timing values are most expedient?
- Non-dominated solutions in final populations
considered - How often do particular timing values occur in
final population? - Any difference between most expedient values for
RSVP and variants considered?
24Example of Standard RSVP vs Retx Algorithm
Retx Algorithm
Standard RSVP
25Conclusions Future Work
- Like many protocols, RSVP exhibits a tradeoff
between performance and overhead - Shown that multi-objective evolutionary
optimisation is a feasible and productive means
of exploring tradeoff - Problem encoding presented
- Variants of RSVP compared
- Optimisation results studied
- Way to identify optimal timing values shown
- Many interesting avenues for future work,
including - Study impact of factors like topology,
background traffic on optimal timing values and
RSVP performance - Apply multi-objective evolutionary optimisation
techniques to other protocols - Interaction between RSVP routing protocols in
GMPLS (under control plane fault)
26Back up slides .
27Multi-objective Optimisation
Objective 1
Solution A
B dominates A
1. B better than A in at least 1 objective AND 2.
B no worse than A in all other objectives
B
Objective 2
28Multi-objective Optimisation
Objective 1
C
1. X better than Y in at least 1 objective AND 2.
X no worse than Y in all other objectives
D
? No solution dominates any other
B
E
F
Objective 2
29Multi-objective Optimisation
Objective 1
C
Pareto front
2 KEY GOALS
Find solutions close to P-O solutions
D
Find diverse solutions
Pareto Optimal set
B
No solution in search space dominates any member
of PO set
E
F
Objective 2
30Multi-objective Optimisation
Objective 1
C
2 KEY GOALS
D
Find solutions close to P-O solutions
B
E
F
Objective 2
31Multi-objective Optimisation
Objective 1
C
2 KEY GOALS
D
Find solutions close to P-O solutions
B
Find diverse solutions
E
F
Objective 2
32NSGA-II Overview
1. Generate initial random population, P0
f1
N individuals
P0
f2
33NSGA-II Overview
2. Sort P0 according to non-domination
f1
N individuals
P0
f2
34NSGA-II Overview
2. Sort P0 according to non-domination
f1
1st non-dominated front
f2
35NSGA-II Overview
2. Sort P0 according to non-domination
f1
2nd non-dominated front
f2
36NSGA-II Overview
3. Assign individuals in P0 fitness according to
non-domination
f1
6
5
4
3
Rank or Fitness
2
P0
1
f2
37NSGA-II Overview
4. Form Q0 by applying selection, crossover
mutation to P0
f1
P0
f2
38NSGA-II Overview
4. Form Q0 by applying selection, crossover
mutation to P0
f1
f2
39NSGA-II Overview
4. Form Q0 by applying selection, crossover
mutation to P0
f1
f2
40NSGA-II Overview
4. Form Q0 by applying selection, crossover
mutation to P0
f1
f2
41NSGA-II Overview
4. Form Q0 by applying selection, crossover
mutation to P0
f1
f2
42NSGA-II Overview
4. Form Q0 by applying selection, crossover
mutation to P0
f1
N individuals
Q0
f2
43NSGA-II Overview
5. Now combine new population (Q0) and original
population (P0)
f1
2N individuals
P0 U Q0
f2
44NSGA-II Overview
5. Now combine new population (Qt) and original
population (Pt)
f1
2N individuals
Pt U Qt
f2
45NSGA-II Overview
6. Non-dominated sorting of combined population
6
5
4
3
2
f1
1
2N individuals
5
4
3
Pt U Qt
2
1
f2
46NSGA-II Overview
7. Form Pt1 by picking best N individuals
f1
2N individuals
Pt1
f2
47NSGA-II Overview
8. Form Qt1 by applying selection, crossover
mutation to Pt1
f1
N individuals
Pt1
f2
48NSGA-II Overview
9. Eventually
f1
N individuals
QX
f2