Optimal Management of MPLS
Networks
J o h a n n e s
M a r t h i n u s
d e K o c k
T h e s i s p r e s e n t e d i n p a r t i a l f u l f i l m e n t o f t h e r e q u i r e m e n t s f o r t h e d e g r e e o f M a s t e r o f S c i e n c e a t t h e U n i v e r s i t y o f S t e l l e n b o s c h S u p e r v i s o r : P r o f . A . E . K r z e s i n s k i M a r c h 2 0 0 2Declaration
I the undersigned
hereby declare that the work contained in this thesis is my own original work
and has not previously in its entirety or in part been submitted at any university for a degree.
Signature:
...
...
...
...
...
. ..
III
Abstract
M u l t i p r o t o c o l L a b e l S w i t c h i n g ( M P L S ) i s a r o u t i n g t e c h n o l o g y w h i c h c a n m a n a g e Q u a l i t y o f S e r v i c e ( Q o S ) i n s c a l a b l e c o n n e c t i o n l e s s n e t w o r k s u s i n g r e l a t i v e l y s i m p l e p a c k e t f o r w a r d i n g m e c h -a n i s m s . T h i s t h e s i s c o n s i d e r s t h e o p t i m i s a t i o n o f t h e Q o S o f f e r e d b y a n M P L S n e t w o r k . T h e Q o S m e a s u r e u s e d i s t h e e x p e c t e d p a c k e t d e l a y w h i c h i s m i n i m i s e d b y s w i t c h i n g p a c k e t s a l o n g o p t i m a l l a b e l s w i t c h e d p a t h s ( L S P s ) . T w o m a t h e m a t i c a l m o d e l s o f M P L S n e t w o r k s a r e p r e s e n t e d t o g e t h e r w i t h a p p r o p r i a t e a l g o r i t h m s f o r o p t i m a l l y d i v i d i n g t h e n e t w o r k t r a f f i c i n t o f o r w a r d i n g e q u i v a l e n c e c l a s s e s ( F E C s ) , f i n d i n g o p t i m a l L S P s w h i c h m i n i m i s e t h e e x p e c t e d p a c k e t d e l a y a n d s w i t c h i n g t h e s e F E C s a l o n g t h e o p t i m a l L S P s . T h e s e a l g o r i t h m s a r e a p p l i e d t o c o m p u t e o p t i m a l L S P s f o r s e v e r a l t e s t n e t w o r k s . T h e m a t h e m a t i c s o n w h i c h t h e s e a l g o r i t h m s a r e b a s e d i s a l s o r e v i e w e d . T h i s t h e s i s p r o v i d e s t h e M P L S n e t w o r k o p e r a t o r w i t h e f f i c i e n t p a c k e t r o u t i n g a l g o r i t h m s f o r o p t i m i s i n g t h e n e t w o r k 's Q o S .v
Opsomming
M u ltip ro to c o l L a b e l S w itc h in g (M P L S ) is 'n ro e te rin g s m e to d e o m d ie d ie n s v la k (Q o S ) v a n 'n s k a le e rb a re , v e rb in d in g lo s e n e tw e rk te b e s tu u r d e u r m id d e l v a n re la tie f e e n v o u d ig e v e rs e n d in g s m e g a n -is m e s . H ie rd ie te s is b e s k o u d ie o p tim e rin g v a n d ie Q o S v a n 'n M P L S -n e tw e rk . D ie Q o S -m a a ts ta f is d ie v e rw a g te v e rt ra g in g v a n 'n n e tw e rk -p a k k ie . D it w o rd g e m in im e e r d e u r p a k k ie s la n g s o p tim a le
" la b e l s w itc h e d p a th s " (L S P s ) te s tu u r.
T w e e w is k u n d ig e m o d e lle v a n M P L S -n e tw e rk e w o rd o n d e rs o e k . T o e p a s lik e a lg o ritm e s w o rd v e rs k a f v ir d ie o p tim a le v e rd e lin g v a n d ie n e tw e rk v e rk e e r in " fo rw a rd in g e q u iv a le n c e c la s s e s " (F E C s ), d ie s o e k to g n a o p tim a le L S P s (w a t d ie v e rw a g te p a k k ie -v e rtra g in g m in im e e r) e n d ie s tu u r v a n d ie F E C s la n g s d ie o p tim a le L S P s . H ie rd ie a lg o ritm e s w o rd in g e s p a n o m o p tim a le L S P s v ir v e rs k e ie to e ts n e tw e rk e o p te s te l. D ie w is k u n d ig e te o rie w a a ro p h ie rd ie a lg o ritm e s g e g ro n d is , w o rd o o k h e rs ie n .
H ie rd ie te s is v e rs k a f d o e ltre ffe n d e ro e te rin g s a lg o ritm e s w a a rm e e 'n M P L S -n e tw e rk b e s tu u rd e rj-e s d ie n e tw e rk s e Q o S k a n o p tim e e r.
Acknowledgements
This work was performed within the
Siemens- Telkom
Centre of
Excellence for ATM
& Broadband
Networks
and
their Applications
and is supported
by grants from the South African National
Research Foundation,
Telkom SA Limited and Siemens Telecommunications.
I also spent a sabbatical
at the
Teletraflic Research Centre
at the University of Adelaide.
My host
was Prof PG Taylor from the Department
of Applied Mathematics
at the University of Adelaide.
List of Publications
1 . S A B erezn er, A M In g g s, JM d e K o ck an d A E K rzesin sk i. A ltern ativ e R o u tin g an d R eco n -fig u ratio n in C o m m u n icatio n N etw o rk s. In P ro ceed in g s o f
TeleTraflic
'9 7 , G rah am sto w n , S o u th A frica, S ep tem b er 1 9 9 7 .2 . JM d e K o ck an d A E K rzesin sk i. C o m p u tin g an O p tim al V irtu al P ath C o n n ectio n N etw o rk b y S im u lated A n n ealin g . In P ro ceed in g s o f th e
South African Telecom m unications,
N etw orks
an d
Applications
C onference (SATN AC )
'9 8 , C ap e T o w n , S o u th A frica, S ep tem b er 1 9 9 8 . 3 . JM d e K o ck an d A E K rzesin sk i. D ealin g w ith In stab ility in th e R ed u ced L o ad A p p ro x ima-tio n . In P ro ceed in g s o f th e
South African Telecom m unications,
N etw orks and Applications
C onference (SATN AC )
'9 9 , D u rb an , S o u th A frica, S ep tem b er 1 9 9 9 .4 .
A
A rv id sso n , JM d e K o ck , A E K rzesin sk i an d P G T ay lo r. C o st-E ffectiv e D ep lo y m en t o f B an d w id th P artitio n in g in B ro ad b an d N etw o rk s. In P ro ceed in g s o f th eSouth African
Telecom m unications,
N etw orks and Applications
C onference (SATN AC )
'9 9 , D u rb an , S o u -th A frica, S ep tem b er 1 9 9 9 .5 . S A B erezn er, JM d e K o ck , A E K rzesin sk i an d P G T ay lo r. L o cal R eco n fig u ratio n o f A T M V irtu al P ath C o n n ectio n N etw o rk s. In P ro ceed in g s o f
IFIP Broadband
C om m unications
'9 9 , H o n g K o n g , N o v em b er 1 9 9 9 .
6 . S A B erezn er, JM d e K o ck an d A E K rzesin sk i. T h e D esig n o f O p tim al V irtu al P ath C o n -n ectio -n N etw o rk s w ith S erv ice S ep aratio n . In P ro ceed in g s o f th e
International
C onference
o n
Inform ation,
C om m unications
and Signal Processing (IC IC S)
'9 9 , S in g ap o re, D ecem b er 1 9 9 9 .7 . JM d e K o ck an d A E K rzesin sk i. Q u ality o f S erv ice O p tim isatio n in M P L S N etw o rk s. In P ro ceed in g s o f th e
IFIP W orkshop
o nPerform ance M odelling and Evaluation of ATM
&
IPN etw orks
(IFIP ATM & IP)
2000,
Ilk ley , U K , Ju ly 2 0 0 0 .8 . JM d e K o ck an d A E K rzesin sk i. O p tim isin g th e Q u ality o f S erv ice in M P L S N etw o rk s. In P ro ceed in g s o f th e
South African Telecom m unications,
N etw orks
an dApplications
C
onfer-ence (SATN AC )
2000,
S o m erset W est, S o u th A frica, S ep tem b er 2 0 0 0 .xu
9.
A
A rvidsson,
JM de K ock, A E K rzesinski and PG Taylor.
The D esign of A TM V irtual
Path
Connection
N etw orks w ith Service Separation.
In Proceedings
of the
South African
Telecom-munications, Networks
and
Applications Conference (SATNAC) 2000,
Som erset W est, South
A frica, Septem ber
2000.
10. JM de K ock and A E K rzesinski.
Finding
O ptim al
Paths
in M PLS N etw orks.
In Proceedings
of
Africom 2001,
Cape Tow n, South A frica, M ay 2001.
11. JE Burns, TJ O tt, JM de K ock and A E K rzesinski.
Path Selection and Bandw idth
A llocation
in M PLS
N etw orks:
a N on-linear
Program m ing
A pproach.
In Proceedings
of
IT Com 2001,
Contents
A bstract
O psom m ing
A cknow ledgem ents
L ist of P ublications
1 Introduction
1.1 L abel Sw itching.
1.2 M ultiprotocol L abel Sw itching
1.3 Flow D eviation .
2 T he F low D eviation A lgorithm
2.1 T he M odel .
2.2 T he O ptim isation Problem
2.3 T he K leinrock A lgorithm .
2.4 T he B ertsekas-G allager A lgorithm
2.5 A pplying Flow D eviation to M PL S N etw orks
3 M inim ising N odal D elays in M P L S N etw orks
3.1 T he M odel .
3.2 T he E xpected Packet D elay in M PL S N etw orks
xiii
v
V ll ix xi 11
2
3
55
7
12
16
20
21
21
23
x iv C O N T E N T S
3.3 T he L S R 's Q ueueing D iscipline
3.4 F inding O ptim al L S P s ...
C onclusion .
3.5.2 A L arger N etw ork
25
26
30
3334
35
36
T w o S m all N etw orks Initial F easible F low V ector
3.5.1 3.4.1 S om e A pplications . . . . .
3.6
3.5
4.1 T he M odel .4.2 A nalysis of the L ink D elays
4.4 F inding O ptim al L abel S w itched P aths.
4 M in im isin g L in k D elay s in M P L S N etw o rk s 3 7
37
38
40
40
45 4546
60
T he L S P S etsR
T he C onvergence of the F low D eviation A lgorithm s 4.5.1
4.5.2
R esults. . . .
C onclusion .
A Q uantitative M easure of the L ink D elay .
4.6
4.5
4.3
5 C o n clu sio n
61
A C o n v ex an d C o n cav e F u n ctio n s
63
B T h e F ran k -W o lfe M eth o d
B .1 S om e R esults from L inear A lgebra
B .2 S om e R esults from O ptim isation T heory
B .3 T he F rank-W olfe M ethod .
6 7
67
70
79
C T h e F ib o n acci S earch M eth o d 8 7
CONTENTS
D.1
The Newton-Raphson
Method
.
D.2
A Cauchy-Type
Steepest Descend Method
D.3
A Gradient Projection
Method
.
Bibliography
xv
91
93
94
97
List of Tables
3.1
The arrival and service rates for the 4 node network
3.2
The packet arrival rates for the SA network
3.3
The LSPs used by the SA network
4.1
LSP Correlation
.
34
35
36
47
4.2
LSP Statistics
of the Kleinrock Algorithm
for the 50 Node Network.
. . . ..
49
4.3
LSP Statistics
of the Bertsekas-Gallager
Algorithm
for the 50 Node Network
...
51
4.4
Normalised
LSP Statistics
of the Kleinrock Algorithm
for the 50 Node Network..
51
4.5
Normalised
LSP Statistics
of the Bertsekas-Gallager
Algorithm
for the
50 Node
Network.
. . . ..
52
4.6
LSP Multiplicity
of the Kleinrock Algorithm
for the 50 Node Network
52
4.7
LSP Multiplicity
of the Bertsekas-Gallager
Algorithm
for the 50 Node Network
..
52
4.8
LSP Statistics
of the Kleinrock Algorithm
for the 100 Node Network
. . . ..
55
4.9
LSP Statistics
of the Bertsekas-Gallager
Algorithm
for the 100 Node Network
. ..
58
4.10 Normalised
LSP Statistics
of the Kleinrock Algorithm
for the 100 Node Network.
59
4.11 Normalised
LSP Statistics
of the Bertsekas-Gallager
Algorithm
for the 100 Node
Network
. . . ..
59
4.12 LSP Multiplicity
of the Kleinrock Algorithm
for the 100 Node Network
59
4.13 LSP Multiplicity
of the Bertsekas-Gallager
Algorithm
for the 100 Node Network
.
60
List of Figures
4 .2 T h e T o p o lo g y o f th e 2 0 N o d e N e tw o rk 4 .1 T h e T o p o lo g y o f th e 1 0 N o d e N e tw o rk 3 .4 A 4 n o d e n e tw o rk . 3 .5 T h e S A M P L S n e tw o rk 2 .1 T h e R o u te S e ts 622
23
34
3 4 3 5 4 5 4 5 4 6...
...
C o n v e rg e n c e fo r th e 1 0 N o d e N e tw o rk A 6 n o d e n e tw o rk . 4 .3 3 .3 3 .1 T h e S e tR
j 3 .2 T h e S e tB
n 4 .4 C o n v e rg e n c e o f th e B e rts e k a s -G a lla g e r A lg o rith m fo r th e 1 0 N o d e N e tw o rk .... 4 7 4 .5 C o n v e rg e n c e fo r th e 2 0 N o d e N e tw o rk . . . .. 4 8 4 .6 C o n v e rg e n c e o f th e B e rts e k a s -G a lla g e r A lg o rith m fo r th e 2 0 N o d e N e tw o rk .... 4 9 4 .7 L S P C o rre la tio n fo r th e 1 0 N o d e N e tw o rk 4 .1 3 P e rc e n ta g e u s e o f S h o rte s t P o s s ib le L S P s A .1 A C o n v e x F u n c tio n . . . . 4 .1 1 L S P C o rre la tio n fo r th e 5 0 N o d e N e tw o rk 4 .1 2 L S P C o rre la tio n fo r th e 1 0 0 N o d e N e tw o rk 4 .9 T h e T o p o lo g y o f th e 5 0 N o d e N e tw o rk . 4 .1 0 T h e T o p o lo g y o f th e 1 0 0 N o d e N e tw o rk 5 0 5 3 5 455
56
5 7 5 863
L S P C o rre la tio n fo r th e 2 0 N o d e N e tw o rk 4 .8 x ixxx
LIST OF FIGURES
A .2 A Concave Function
...
64B.l Convex Feasible Region
9
Form ed by Linear Constraints . . . 75B.2 A Supporting Line
P
x. . .
.
-...
76B.3 A Supporting H yperplane
P
x...
77B.4 A N on-O ptim al Point x
...
78Chapter 1
Introduction
T he Q uality of S ervice (Q oS ) offered by a
connection-oriented
netw ork can be m anaged by opti-m ally utilising the transm ission capacity or bandw idth of the underlying physical netw ork. T here are several possible criteria of optim ality, for exam ple netw ork throughput, blocking probability or rate of earning revenue. S everal approaches to bandw idth m anagem ent (and thus Q oS m an-agem ent) have been discussed in the literature. T hese include V P (virtual path) distribution algorithm s [2]' V P C N (virtual path connection netw ork) optim isation m ethods [5, 7, 8] and the design of virtual subnetw orks [15].T he success of the Internet is m aking
connectionless
netw orks based on the Internet P rotocol (IP ) increasingly popular. C urrent generationIP
netw orks do not provide effective m echanism s (apart from priority queueing flags in packets) for m anaging Q oS . T his problem w as eventually addressed by several vendors including T oshiba, IB M , Ipsilon and C isco. E ach vendor cam e up w ith som e version of a technology now know n aslabel switching.
B y allow ing explicit routing, label sw itching enables netw ork operators to m anage Q oS by m eans of optim al routing.1.1
Label Switching
A label is a field in an
IP
packet that is used to determ ine the route follow ed by a packet. A label sw itching netw ork consists of a group of interconnectedlabel switching
routers
(L S R s). A n L S R perform slabel swapping
on incom ing packets. D uring label sw apping an incom ing packet's local (or global) label is exam ined and replaced by an appropriate global (or local) label. W hether a local label is replaced by a global label or vice versa depends on the type oflabel binding
("dow nstream " or "upstream ") used. A packet is typically created by an application on a com puter in a subnetw ork connected to an L S R referred to as theingress LSR.
T he ingress L S R is also referred to as the originating node (O N ) (see A shet al.
[1]' for exam ple). U pon receiving the unlabeled packet, the ingress L S R assigns a label to the packet and forw ards the packet to the next L S R on the2
Chapter 1. Introduction
packet's route. T he L SR uses the inform ation in the label and in the L SR routing table, or
label
information
base
(L IB ) to identify the next L SR on the packet's route. T he other L SR s traversed by the packet's route perform label sw apping on the incom ing packet and forw ard the packet to the next node on its route. Finally, the last L SR on the packet's route, know n as theegress LSR,
rem oves the label and passes the packet to the apropriate application in the subnetw ork connected to it.
L abel sw ithing netw orks can use either
destination-based
orexplicit
routing. T he routing decision in destination-based is based only on the packet's destination address.In
the case of explicit routing the route is specified by the packet's label. T he route w hich a packet follow s through the label sw itching netw ork is know n as alabel switched path
(L SP). W e do not allocate bandw idth to an L SP. T hus w e neither set uptrunks,
nor do w e constructconstraint-based
routing label switched
paths
(C R L SP) as m entioned in [1].A label sw itching netw ork using explicit routing allow s
fine forwarding
granularity
-
the set of packets w hich an L SR can receive is partitioned into disjoint subsets know n asforwarding
equiv-alence classes
(FE C s). T he set of packets belonging to a particular service class and travelling betw een a given O -D pair can be assigned to a distinct FE C or the FE C that a packet belongs to can be based on the com puter in the subnetw ork w here the packet originated and/or (correspond-ing to even finer forw ard(correspond-ing granularity) the application on the com puter w hich generated the packet. Fine forw arding granularity m akes the netw ork m ore flexible since it allow s routing based on service class [13]. A sh etal.
[1] divides all path selection m ethods into four categories, nam elyhierarchical
fixed routing
(FR ),timedependent
'rOuting
(T D R ),state-dependent
routing
(SD R ) andevent-dependent
routing
(E D R ). O ur m odel of explicit routing is such that FR , T D R and SD R are all m odelled. E D R is the only path selection category not covered since E D R routing tables are updated locally, w hereas ours is a centralised approach.T his thesis exam ines how fine forw arding granularity can be used to optim ise the netw ork's Q oS. T he
expected packet
delay
is used as the netw ork's perform ance criterion. Fine forw arding gran-ularity enables the netw ork operator to m inim ise the expected packet delay. T his is done by allow ing several L SPs betw een the sam e O -D pair. T he total packet load offered to an O -D pair is sw itched am ong several L SPs in such a w ay that the expected packet delay is m inim ised. T hus the set of all packets offered to an O -D pair is partitioned into FE C s and the packets in each FE C are sw itched along a particular L SP.1.2
Multiprotocol Label Switching
T he label sw itching protocol used in this thesis is
Multiprotocol
Label Switching
(M PL S) w hich w as introduced by the Internet E ngineering T ask Force (IE T F). A s the nam e indicates, it com bines the label sw itching approaches of the four vendors m entioned above. T he expected packet delay is m inim ised in M PL S netw orks w ith explicit routing.1.3 Flow Deviation
3T h e e x p e c te d p a c k e t d e la y d e p e n d s o n th e d e la y s in th e lin k s (d u e to b a n d w id th lim ita tio n s) a n d th e d e la y s in th e n o d e s L S R s (d u e to th e lim ite d sp e e d w ith w h ic h a n L S R c a n c o p y a p a c k e t o n a n o u tg o in g lin k ). T h is th e sis c o n sid e rs th e se sc e n a rio s se p a ra te ly .
In th e first sc e n a rio th e lin k b a n d w id th s a re a ssu m e d to b e in fin ite . It h a s b e e n p re d ic te d th a t th e d e c re a sin g c o st o f o p tic a l fib re a n d o th e r tra n sm issio n m e d ia w ill p ro v id e fu tu re n e tw o rk s w ith n e a rly u n lim ite d b a n d w id th . If th is "in fin ite b a n d w id th " m o d e l is a p p lie d to a n IP n e tw o rk , th e n e tw o rk 's Q o S is n o lo n g e r in flu e n c e d b y th e a v a ila b ility o f su ffic ie n t tra n sm issio n c a p a c ity . T h e
nodal delays
d u e to th e se rv ic e a n d q u e u e in g o f th e p a c k e ts in th e L S R s w ill p rim a rily d e te rm in e th e Q o S o ffe re d b y th e n e tw o rk . W e th e re fo re c o n sid e r th e e x p e c te d p a c k e t d e la y to b e c o m p o se d so le ly o f th e n o d a l d e la y s. C h a p te r 3 c o v e rs th is sc e n a rio .In th e se c o n d (m o re re a listic sc e n a rio ) w e c o n sid e r th e lin k s to h a v e fin ite b a n d w id th a n d th e m a jo r so u rc e o f d e la y c o n sists o f th e q u e u e in g a n d se rv in g o f th e p a c k e ts a t th e lin k s. T h e
link
delays
d o m in a te to su c h a n e x te n t th a t th e n o d a l d e la y s a re c o n sid e re d n e g lig ib le . C h a p te r 4 c o n sid e rs th is sc e n a rio .1.3
Flow Deviation
T h e o b je c t o f th e la b e l sw itc h in g a p p ro a c h is d iffe re n t fro m th e A T M n e tw o rk c a se . In a n A T M n e tw o rk th e p e rfo rm a n c e c rite rio n is th e e x p e c te d
rate of earning revenue
(o r p ro fit) w h e re a s th e e x p e c te dpacket delay
is th e p e rfo rm a n c e c rite rio n in a n M P L S n e tw o rk . A n A T M n e tw o rk o p e ra -to r c a n a c h ie v e th is b y c o n stru c tin g a fu lly -m e sh e d V P C N w h ic h m a x im ise s th e n e tw o rk 's e x p e c te d ra te o f e a rn in g re v e n u e . O n th e o th e r h a n d , th e o p e ra to r o f a n M P L S n e tw o rk sw itc h e s p a c k e t flo w s o n to o p tim a l L S P s in o rd e r to m in im ise th e e x p e c te d p a c k e t d e la y . In th e la b e l sw itc h in g sc e n a rio c o n sid e re d in th is th e sisflow deviation
is p e rfo rm e d ra th e r th a ncapacity reservation
-n o C R L S P
virtual
network
(V N E T ) (th e M P L S e q u iv a le n t o f a V P C N , se e [1 ]) is c o n stru c te d b u t IP p a c k e ts a re sw itc h e d a lo n g a p p ro p ia te L S P s. C h a p te r 2 c o n sid e rs th e o rig in a n d d iffe re n t v e rsio n s o f th e flo w d e v ia tio n a lg o rith m . T h e m a th e m a tic a l m e th o d s o n w h ic h th e flo w d e v ia tio n a lg o rith m s a re b a se d a re re v ie w e d in th e a p p e n d ic e s.Chapter 2
The Flow Deviation Algorithm
T h i s c h a p t e r d i s c u s s e s t h e
flow deviation
a l g o r i t h m i n a b s t r a c t t e r m s . T h e b a s i s o f t h e d i s c u s s i o n i s a g e n e r a llabel switching
network
w i t h acost function.
T h e p r e c i s e m e a n i n g o f a g e n e r a l l a b e l s w i t c h i n g n e t w o r k i s g i v e n i n s e c t i o n 2 . 1 . O n l y t h e p r o p e r t i e s o f t h e c o s t f u n c t i o n a r e s p e c i f i e d a n d n e i t h e r t h e f u n c t i o n n o r i t s p h y s i c a l i n t e r p r e t a t i o n ( e g d e l a y ) i s f i x e d . S e c t i o n 2 . 1 i n t r o d u c e s t h e n e t w o r k m o d e l a n d s e c t i o n 2 . 2 s t a t e s t h e o p t i m i s a t i o n p r o b l e m t o b e s o l v e d b y f l o w d e v i a t i o n . S e c t i o n s 2 . 3 a n d 2 . 4 d i s c u s s t w o v a r i a n t s o f t h e f l o w d e v i a t i o n a l g o r i t h m .2.1
The Model
T h e n e t w o r k h a sN
n o d e s w h e r e e a c h n o d e r e c e i v e s p a c k e t s o n i n c o m i n g l i n k s a n d f o r w a r d s t h e m o n a p p r o p r i a t e o u t g o i n g l i n k s . T h e n o d e s a r e n u m b e r e d f r o m o n e a n d i d e n t i f i e d b y t h e i r n u m b e r s . L e tN
=
{ I , 2 , . . . ,N}
d e n o t e t h e s e t o f n o d e s . E a c h O - D p a i r i s a s s i g n e d a u n i q u e i n t e g e r . L e tJ
b e t h e s e t o f a l l O - D p a i r s ( i d e n t i f i e d b y t h e i r n u m b e r s ) . T h e r e f o r eJ
=
IJI
=
N(N
-1).
E a c h p h y s i c a l l i n k c o r r e s p o n d s t o a n O - D p a i r , c o n s e q u e n t l y t h e l i n k s a r e i d e n t i f i e d b y t h e n u m b e r s o f t h e O - D p a i r s w h i c h t h e y c o n n e c t . L e t£
d e n o t e t h e s e t o f l i n k s ( i d e n t i f i e d b y t h e i r l i n k n u m b e r s ) a n d l e tL
=
1 £ 1
t h e n£ ~
J
a n d L : SJ.
T h e f u n c t i o n . : L ':N
xN
f-+
J
i s d e f i n e d a s.:L'(o,d)
=
j
i f 0 - D p a i r(0, d)
i s n u m b e r e dj.
L e tOf.
d e n o t e t h e ( p h y s i c a l ) c a p a c i t y ( z e r o i f t h e p h y s i c a l l i n k d o e s n o t e x i s t ) o f t h e u n i - d i r e c t i o n a l l i n k 0 -d
f o r e a c h O - D p a i r(0, d)
s u c h t h a t . : L '(0 ,d)
=
f.
T h u s t h e s e t £ c a n b e e x p r e s s e d a s £=
{j
EJ
I
OJ
>
O } . L e tAj
d e n o t e t h e a r r i v a l r a t e o f p a c k e t s t o O - D p a i rj
a n d l e tA
b e t h e t o t a l p a c k e t a r r i v a l r a t e t o t h e n e t w o r k : 56
Chapter 2. The Flow Deviation Algorithm
J
A
=
L A j .j=1
A is a ls o r e f e r r e d to a s th e to ta l e x t e r n a l t r a f f i c a tte m p tin g to e n te r th e n e tw o r k .
A r o u t e r
=
( 0 ,d)
is a s e q u e n c e o f p h y s ic a l lin k s 0 - 0 1 , 0 1 - 0 2 , . . . ,Om -d
c o n n e c tin g n o d e s 0a n d
d.
r=
(0,
d)
c a n a ls o c o n s is t o f th e s in g le lin k 0 -d.
N o te th e n o ta tio n d is tin c tio n :(0,
d)
d e n o te s th e 0 - D p a ir , 0 -
d
d e n o te s th e p h y s ic a l lin k a n d(0, d)
d e n o te s a r o u te c o n n e c tin g n o d e s 0 a n dd.
L e tR
j d e n o te th e s e t o f r o u te s b e tw e e n 0 - D p a irj.
F ig u r e 2 .1 s h o w s th e s e tR
j=
{ r l ' r 2 } w h e r e 2 ( 0 1 ,d
1 )=
j.
L e tR
b e th e s e t o f a ll r o u te s in th e n e tw o r k : R =U
Rj. j E J L e t A £ d e n o te th e s e t o f r o u te s th a t tr a v e r s e lin k £ f o r e a c h £ E L o T h e s e t A £=
{ r 3 , r 4 , r 5 } is s h o w n in f ig u r e 2 0 1 . T h e r o u te s r 3 , r 4 a n d r 5 a ll tr a v e r s e lin k 0 2 -d
2 w ith 2 ( 0 2 ,d
2 )=
£ 0 .• r5..
..
• r3 "...•
.
." .... H. ~--~
•...•
7"4 • 0 2 d2 •Tl.\
• d1 r 2 ...•/....
0 1 /
\
....
(a) Rj (b) A i F ig u r e 2 .1 : T h e R o u te S e ts A ll p a c k e ts o f f e r e d to 0 - D p a irj
a r e s w itc h e d a lo n g r o u te s in R j. L e t Srj b e th e p o r tio n o f th e p a c k e ts o f f e r e d to O - D p a irj
w h ic h tr a v e l a lo n g r o u te r . I f l/r is th e a r r iv a l r a te o f p a c k e ts to r o u te r , th e n l/r=
SrjAj f o r a llj
EJ
a n d r E R j. A ll th e p a c k e ts o f f e r e d to O - D p a irj
a r e s w itc h e d a lo n g r o u te s in R j, th e r e f o r e th e f o llo w in g tw o r e la te d e q u a tio n s h o ldAj =
L
l/r rEn;L
Srj=
1
rEn;(1)
(2 ) f o r a llj
E J .2.2 The Optimisation
Problem
7
T h e n e tw o rk m o d e l sp e c ifie d h e re is th a t o f a g e n e ra l la b e l sw itc h in g n e tw o rk . T h e sta n d a rd la b e l sw itc h in g n o tio n s su c h a s p a c k e ts, sw itc h in g , L S P s a n d F E C s a re in c o rp o ra te d in th is m o d e l. L S P s a re re fe rre d to a s ro u te s to k e e p th e d isc u ssio n g e n e ra l. F E C s a re n o t e x p lic itly m e n tio n e d b u t a re im p lie d b y th e p o rtio n s Sr j ' T h e m a in o b je c t o f th is th e sis is th e o p tim a l m a n a g e m e n t o f M P L S
n e tw o rk s. T h e m a n a g e m e n t g o a ls c a n b e sp e c ifie d in te rm s o f a n o n -lin e a r o p tim isa tio n p ro b le m . T h e n e x t se c tio n d isc u sse s a n o p tim isa tio n p ro b le m w h ic h sp e c ifie s th e o p tim a l m a n a g e m e n t o f th e g e n e ra l la b e l sw itc h in g n e tw o rk w h ic h w e a re c o n sid e rin g in th is c h a p te r.
2.2
The Optimisation Problem
T h is se c tio n in tro d u c e s th e g e n e ra l o p tim isa tio n p ro b le m w h ic h is a d a p te d to d e sc rib e sp e c ific M P L S n e tw o rk m o d e ls in c h a p te rs 3 a n d 4 .
L e t ' Y f d e n o te th e ra te a t w h ic h p a c k e ts a rriv e to lin k
£.
T h e re la tio n sh ip b e tw e e n ' Y f a n d lIr is' Y f
=
L lIr fo r a ll£
E£.
rEA,
(3 )
A p a c k e t a rriv a l ra te w ill b e re fe rre d to a s af l o w in th e re m a in d e r o f th is c h a p te r. A c c o rd in g ly ,
(1 ) a n d (2 ) a re k n o w n a s p r e s e r v a t i o n o f f l o w e q u a tio n s sin c e th e y sp e c ify th a t th e to ta l flo w in
th e n e tw o rk is p re se rv e d .
L e t Df b e th e c o s t f u n c t i o n fo r lin k
£.
S o m e g e n e ra l p ro p e rtie s o f Df a re sp e c ifie d b u t n o t Dfitse lf. D f d e n o te s a c la ss o f fu n c tio n s o f w h ic h th e in d iv id u a l m e m b e rs d e sc rib e p a rtic u la r la b e l
sw itc h in g n e tw o rk s. T h e m o st im p o rta n t p ro p e rty is th a t Df is a fu n c tio n o f th e ra te ' Y f (th e l i n k f l o w) a t w h ic h p a c k e ts a re o ffe re d to lin k
£.
D f is a lso a fu n c tio n o f a fix e d se rv ic e ra te inc h a p te r 3 a n d a fu n c tio n o f th e c a p a c ity G f in c h a p te r 4 . H o w e v e r, th e c a p a c itie s a n d se rv ic e
ra te s a re re g a rd e d a s c o n sta n ts fo r a g iv e n n e tw o rk . T h u s w e c o n sid e r D f a s a fu n c tio n o f a sin g le
v a ria b le ' Y f a n d th e d e riv a tiv e s o f Df w ith re sp e c t to ' Y f a re c o n sid e re d a s o rd in a ry d e riv a tiv e s a s
o p p o se d to p a rtia l d e riv a tiv e s. W e m a k e a n im p o rta n t a ssu m p tio n a b o u t D f .
Assumption
2.1 (Differentiability
of
Df ) . Df is a d i f f e r e n t i a b l e f u n c t i o n o f ' Y f a n d is d e f i n e d o n t h e i n t e r v a l[0,
G f ) f o r e a c h £E
£.
L e t D b e th e c o st fu n c tio n fo r th e n e tw o rk , L Db )=
L Df ( " ( f ) , f =1 (4 )w h e re I
=
(" (f)fE L is th e l i n k f l o w v e c t o r . D e fin ev
=
(lIr)rER a s th e r o u t e f l o w v e c t o r . T h e c o st8
Chapter 2. The Flow Deviation
Algorithm
D (v )
=
tD £(2:
vr).
£ = 1 r E A e
T h e o b ject o f th is ch ap ter is to so lv e th e fo llo w in g n o n -lin ear o p tim isatio n p ro b lem .
Optimisation
Problem
2.1.
M in im is e : D (v )=
tD £(2:
vr)
£ = 1 r E A e S u b je c t to : (5 )Aj =
2:
Vr rER; Vr ~ 0 fo r allj
E
J
fo r all r ER.
W e in tro d u ce an im p o rtan t assu m p tio n b efo re d iscu ssin g th e so lu tio n .
Assumption
2.2 (Flow Independence).
T h e 1 £'s a s s o c ia te d w ith d iffe r e n t lin k s a r e in d e p e n-d e n t a n d th e Vr 's a s s o c ia te d w ith d iffe r e n t r o u te s a r e in d e p e n d e n t.
D efin e a c o s t r a te v e c to r c
=
( C 1 , C 2 , ... , C L ) w h ereaD
Cf
=
0 1 £ .Cf is th e rate at w h ich th e n etw o rk co st
D
in creases w ith an in fin itesim al in crease in th e lin k flo w 1 £ . T h u s, if th e flo w alo n g so m e ro u te r is in creased su ch th at th e flo w o n lin k£
in creases b y an in fin itesim al am o u n t 0 " £ , th e in crease in D is (jD=
O " £ C £ .T h e v ecto r c is th e g rad ien t v ecto r o fD
at th e p o in tI
w h ich is d en o ted b y VDb).
N o te th at an im p o rtan t co n seq u en ce o f th e flo w in d ep en d en ce assu m p tio n is th at a D _ d D t=
D ~ . C£=
0 1 £ - d 1 £ L et rE
Rj an d d efin e th e co st o f ro u te r asaD
Cr=
O V r2.2 The Optimisation Problem
th e na
L cr=
a ;;
L D e r e = l L= ~
d D e a r y e L J d -£ = 1 r y e a Vr= L D ~
e E r=
L c e
e E r 9 (6 )w h ic h is o b ta in e d b y d iffe re n tia tin g (4 ), a p p ly in g th e flo w in d e p e n d e n c e a s s u m p tio n a n d n o tin g th a t (3 ) im p lie s
{
I
a r y e _aV
ra
iff! E r o th e rw is e . T h e r o u t e c o s t Cr is a ls o k n o w n a s th e f i r s t d e r i v a t i v e l e n g t h o f a ro u te . C o n s id e r a p a rtic u la r O -D p a ir j . A ro u te r jE
R j fo r w h ic h th e ro u te c o s t is m in im a l (ie cr ;=
m in { crIrE
R j } ) is k n o w n a s a l e a s t - c o s t r o u t e c o n n e c tin g 0 - D p a ir j . A ro u te r E R j fo r w h ic h Cr is n o t m in im a l is re fe rre d to a s a n e x t r e m a l r o u t e . S im ila rly , th e flo w s o n th e le a s t-c o s t ro u te s a n d th e e x tre m a l ro u te s a re re fe rre d to a s l e a s t - c o s t f l o w s a n d e x t r e m a l f l o w s re s p e c tiv e ly .L e t i /
=
( v r ) r E 'R . b e a n o p tim a l ro u te flo w v e c to r (ie a n o p tim a l s o lu tio n to O p tim is a tio n P ro b -le m 2 .1 ). Ifv
r ;>
a
fo r s o m e rjE
Rj,
a n in fin ite s im a l a m o u n t o f flo w 8 vr ;>
a
c a n b e s h ifte d fro mr j to s o m e ro u te r E Rj w ith o u t d e c re a s in g th e c o s t D . T h e c h a n g e 8 D in c o s t is 8 D
=
8 vr ; a a D ( i / ) - 8 vr ; a a D ( i / ) Vr Vr ; a n d s in c e 8 D m u s t b e n o n -n e g a tiv e 8 vr ; f D ( i / ) ; : : :8 vr ; a a D ( i / ) Vr Vr ; a a D ( i / ) ; : : : a a D ( i / ) Vr Vr ; T h is im p lie s th a t ifV
r;>
a
fo r rjE
R
j, th e n10
Chapter 2. The Flow Deviation Algorithm
a n d
f
D(i/) 2:
f) f)D(i/)
Vr vrj
fo r a ll
r
ER
j (7 )f)~rj
D(i/) =
m in { f)~rD(i/)
IrE
R
j}o r a lte rn a tiv e ly crj
=
m in {crIrE
R
j} w h ic h id e n tifie s rj a s a le a s t-c o s t ro u te . T h u s a n o p tim a l ro u te flo wv
rj is p o s itiv e o n ly o n a ro u te rj w ith a m in im a l firs t d e riv a tiv e le n g th . F u rth e rm o re , a t
a n o p tim a l ro u te flo w v e c to r, th e ro u te s a m o n g w h ic h A j is s p lit m u s t h a v e e q u a l firs t d e riv a tiv e le n g th s (ie th e y m u s t a ll b e le a s t-c o s t ro u te s ). T h u s (7 ) is a n e c e s s a ry c o n d itio n fo r o p tim a lity . If th e c o s t fu n c tio n
D
is c o n v e x , (7 ) is a ls o a s u ffic ie n t c o n d itio n fo r o p tim a lity (s e e B e rts e k a set
al. [9]).
W e d e fin e a ro u te flo w v e c to r a s
feasible
if th e c o n s tra in ts o f O p tim is a tio n P ro b le m 2 .1 a re s a tis fie d . T h u s w e h a v e th e fo llo w in g d e fin itio n .Definition 2.1 (Feasible Route Flow Vector). A route flow vector v
isfeasible if
A j =
L
Vr rEnj Vr2:
0 fo r a llj
E:J
fo r a llr
ER.
(8 )(9)
G iv e n a fe a s ib le ro u te flo w v e c to r v, c o n s id e r c h a n g in g v a lo n g a d ire c tio n
D..v = (D..v
r) rEn a n d th u s o b ta in in g th e ro u te flo w v e c to rv
+
aD..v.
B e rts e k a s
et al.
[9 ] m e n tio n th re e re q u ire m e n ts w h ic hD..v
h a s to m e e t.1 . T h e firs t re q u ire m e n t is th e fe a s ib ility o f th e re s u ltin g ro u te flo w v e c to r. F o rm a lly th is m e a n s th a t fo r s o m e am a x
>
0 a n d a n ya
E [0 , am a x ] , th e flo w v e c to rv + aD..v
m u s t b e fe a s ib le . T h u s b y (8 )A j
=
L
(v
r+
aD..v
r) rEnj a n d s in c ev
is a ls o fe a s ib le ,0=
L
aD..v
r rEnj a n d th e re fo re 0=
L
D..v
r rEnj2.2 The Optimisation
Problem
fo r a ll
j
E
:7 .
S im ila r to (1 ) a n d (2 ), th is a ls o im p lie s th e p re s e rv a tio n o f flo w .11
2 . T h e s e c o n d re q u ire m e n t fo r fe a s ib ility (9 ) im p lie s th a t V
r
+
a!::lvr ~
0 fo r a llr
E
R
a n d th u s!::lvr ~
0 fo r a llr
E
R
s u c h th a t Vr
=
O .3 . T h e fin a l re q u ire m e n t is th a t
!::lv
is a d e s c e n t d ire c tio n a n d th e re fo re th e c o s t fu n c tio nD
c a n b e d e c re a s e d b y m a k in g s m a ll m o v e s fro m
v
in th e d ire c tio n!::lv.
L e t VD (v)
d e n o te th e g ra d ie n t v e c to r o fD
a t th e p o in tv.
T h e re q u ire m e n t th a t!::lv
s h o u ld b e a d e s c e n t d ire c tio n im p lie s th a tVD(v).!::lv
< o.
T h e re q u ire m e n ts o n th e th e d ire c tio n
!::lv
a re s a tis fie d b y a fa m ily o f ite ra tiv e a lg o rith m s th a t d o th e fo llo w in g . L e t th e c u rre n t ro u te flo w v e c to r (a t ite ra tio n m ) b evm
=
(v;:')rER'
T h e ro u te flo w v e c to rv
mis n o w c h a n g e d to
V~1+l
=
(1- ar)v~
+
arbvr
(1 0 )w h e re ar E [0 ,1 ] fo r e a c h
r
E R a n dbv
is a fe a s ib le ro u te flo w v e c to r. T h e d ire c tio n!::lv
a t ite ra tio n m is n o w g iv e n b y!::lv = bv - v
m.E a c h o f th e s e a lg o rith m s e n s u re s th a t th e p re s e rv a tio n o f flo w c o n d itio n is m e t
L
!::lvr
=
L
(bvr - V~1)
rERj rERj=
L
bV
r -L
v;:'
rERj rERj=
A j - A j=0
12
Chapter 2. The Flow Deviation
Algorithm
T h e s e c o n d re q u ire m e n t o f B e rts e k a s e t a l . is a ls o s a tis fie d s in c e { y v s a tis fie s (9 ) a n d th e re fo re
6 . vr
=
{ y vr - v ; : '=
( y vr2':
0 fo r a ll r E R s u c h th a t V ~ 1=
O .T h e fin a l re q u ire m e n t is m e t b y c h o o s in g th e v e c to r a
=
( ar ) r E R s u c h th a t ar E [0 , 1 ] fo r e a c hr E R a n d D ( v m + l )
<
D ( vm) .W e c o n s id e r tw o a lg o rith m s th a t s o lv e O p tim is a tio n P ro b le m 2 .1 in th e n e x t tw o s e c tio n s . T h e firs t a lg o rith m b e lo n g s to th is c la s s . T h e s e c o n d a lg o rith m is s im ila r to th e a lg o rith m s in th is c la s s b u t th e flo w m o v e m e n t is n o t s p e c ifie d b y (1 0 ).
2.3
The Kleinrock Algorithm
T h e v e rs io n o f flo w d e v ia tio n p re s e n te d h e re m o v e s th e s a m e p o rtio n a o f flo w to a ll le a s t-c o s t ro u te s . T h u s
a
r=
a fo r a llr E
R a n d fro m (1 0 ):V ; 1 + l
=
(1 -
a ) v ~ 1+
a { y vr fo r e a c h r E Rw h ic h c a n b e w ritte n a s a v e c to r e q u a tio n v m + l
=
(1 - a ) vm+
a { y v . T h e fa c to r a is c h o s e n s u c h th a t D ( ( l - a ) v m+
a { y v ) is m in im is e d . T h e re s u lt o f th is is th a t D ( vm+1) : : : ;D ( vm) . T h is c a n b e s e e n b y n o tin g th a t a=
0 y ie ld s D ( v m + l )=
D ( vm) a n d th e re fo re th e m in im is a tio n p ro c e s s w ill y ie ld a v a lu e o f a s u c h th a t D ( v m + l ) is a t m o s t e q u a l to D ( vm) . T h e flo w d e v ia tio n a lg o rith m te rm in a te s w h e n D ( vm+1) is n o lo n g e r s tric tly le s s th a n D ( vm) . T h u s , d u rin g th e e x e c u tio n o f th e a lg o rith m D ( v m + l )<
D ( vm) w h ic h s a tis fie s th e th ird re q u ire m e n t m e n tio n e d a t th e e n d o f s e c tio n 2 .2 .L in k a n d ro u te flo w s a re re la te d b y (3 ) a n d th e re fo re O p tim is a tio n P ro b le m 2 .1 c a n b e s o lv e d w ith th e lin k flo w s a s th e d e c is io n v a ria b le s . T h e m a in a d v a n ta g e is th a t th e n u m b e r o f d e c is io n v a ria b le s is s m a lle r s in c e (in g e n e ra l) R ~ N !
»
N ( N-1)
2':
L . Im p lic itly th e p ro b le m s till w o rk s w ith ro u te flo w s . T h is w ill b e e x p la in e d s h o rtly .Optimisation
Problem
2.2.
M i n i m i s e : LDb)
=
L
Debe)
e = 1 S u b j e c t t o : A j=
L
Vr r E R ;,e
2':
0 fo r a llj
E:J
fo r a ll e E L .2.3 The Kleinrock Algorithm
13
T h e a l g o r i t h m w h i c h i s n o w d i s c u s s e d i s a s p e c i a l c a s e o f t h e
Frank- Wolfe method
( s e e a p p e n d i x B ) a n d i s d u e t o K l e i n r o c k [ 2 3 ] .W e s t a r t w i t h a n i m p o r t a n t a s s u m p t i o n .
Assumption
2.3. For each
£ EL,
Df
i sa convex function
of
,f.
D
( g i v e n b y ( 4 ) ) i s t h e r e f o r e a l s o a c o n v e x f u n c t i o n o f,f.
T h i s i m p l i e s t h a t i f a f e a s i b l e l i n k f l o w v e c t o r e x i s t s , a n y l i n k f l o w v e c t o r "I w h i c h m i n i m i s e sD
y i e l d s t h e g l o b a l m i n i m u m o fD
( s e e a p p e n d i x A f o r a p r o o f ) . T h e a l g o r i t h m i s i n i t i a l i s e d w i t h a f e a s i b l e l i n k f l o w v e c t o r c jJ 0 w h i c h i s r e p e a t e d l y m o d i f i e d u n t i lD
i s m i n i m i s e d . K l e i n r o c k [ 2 3 ] p r o v i d e s a m e t h o d o f f i n d i n g a f e a s i b l e i n i t i a l l i n k f l o w v e c t o r w h i c h i s d i s c u s s e d i n c h a p t e r s 3 a n d 4 s i n c e i t d e p e n d s o n t h e l i n k c o s t f u n c t i o nDf.
A t e a c h s t e p m o f t h e a l g o r i t h m , a f e a s i b l e l i n k f l o w v e c t o r c jJ m= (cPi)fEC
i s c o n s t r u c t e d f r o m t h e p r e v i o u s f e a s i b l e l i n k f l o w v e c t o r c jJ m - 1 b y s h i f t i n g a p o r t i o n a o f t h e c u r r e n t f l o w f r o m e x t r e m a l r o u t e s o n t o l e a s t - c o s t r o u t e s a n d t h e n c a l c u l a t i n g t h e l i n k f l o w v e c t o r c jJ m b a s e d o n t h e r e s u l t i n g r o u t e f l o w s . T h i s i s e q u i v a l e n t t o s h i f t i n g f l o w t o a n d f r o m l i n k s ; t h u s t h e e a r l i e r c o m m e n t t h a t t h e a l g o r i t h m i m p l i c i t l y w o r k s w i t h r o u t e s . A n e w l i n k f l o w v e c t o r c jJ m i s c o n s t r u c t e d a t e a c h s t e p m o f t h e a l g o r i t h m i n t h e f o l l o w i n g w a y . C o m p u t e t h e c o s t r a t e v e c t o r c f o r t h e p r e v i o u s l i n k f l o w v e c t o r c jJ m - 1 , t h u saDI
Cf= -
m - la,f
I F " ', f o r e a c h£
EL.
N o t e t h a t c=
VD(cjJm-1).
C o m p u t e t h e i n c r e m e n t a l n e t w o r k c o s tb..D
f o r t h e l i n k f l o w v e c t o r c jJ m - 1 w h e r e Lb..D
=
c . c jJ m - 1=
L
CfcPr;-l.
f = l(11)
b..D
i s t h e d e r i v a t i v e o fD
a t t h e p o i n t c jJ m - 1 i n t h e d i r e c t i o n i n d i c a t e d b y c jJ m - 1 ( s e e F l e m i n g [ 1 7 ] f o r e x a m p l e ) . W e n e x t d e t e r m i n e w h e t h e r a l i n k f l o w v e c t o rcjJm,
w h i c h y i e l d s a l o w e r v a l u e o fD
t h a n c jJ m - 1 , c a n b e c o n s t r u c t e d . I f n o s u c h f l o w v e c t o r e x i s t s t h e n c jJ m - 1 i s t h e o p t i m a l l i n k f l o w v e c t o r a n d t h e a l g o r i t h m i s t e r m i n a t e d . D i j k s t r a 's a l g o r i t h m ( s e e M a n b e r [ 2 5 ] f o r e x a m p l e ) i s u s e d t o f i n d a r o u t e r b e t w e e n e a c h O - D p a i rj
s u c h t h a t Cr i s m i n i m a l . L e tR
c d e n o t e t h e s e t o f t h e s e r o u t e s s i n c e t h e s e l e a s t - c o s t r o u t e s a r e b a s e d o n t h e c u r r e n t c o s t r a t e v e c t o r c . L e t CT=
(CJf)fEC
d e n o t e t h e l e a s t - c o s t l i n k f l o w v e c t o r14
C h a p t e r 2 . T h e F l o w D e v i a t i o n A l g o r i t h m w h i c h r e s u l t s w h e n , f o r e a c h O - D p a i r j , a l l t h e f l o wA j
i s s e n t a l o n g t h e l e a s t - c o s t r o u t e c o n n e c t i n g j . N o t e t h a tu
m a y n o t b e a f e a s i b l e l i n k f l o w v e c t o r1. G i v e n t h a tc/Jm -1
i s a f e a s i b l e l i n k f l o w v e c t o r , w e m u s t e n s u r e t h a t ( 1 -a )c/Jm -1
+
a u
( f o r t h e o p t i m a l v a l u e o fa)
i s a l s o f e a s i b l e . T h e v a l i d i t y o f t h e a l g o r i t h m d e p e n d s o n t h i s . T h e i n c r e m e n t a l n e t w o r k c o s t8 D
f o r t h e l e a s t - c o s t l i n k f l o w v e c t o ru
i s g i v e n b y L8 D =
c .u = L C £ (j£
£ = 1 w h i c h i s t h e d e r i v a t i v e o fD
a t t h e p o i n tc/Jm -1
i n t h e d i r e c t i o n i n d i c a t e d b yu .
C o m b i n i n g t h i s w i t h e q u a t i o n ( 1 1 ) y i e l d s8 D - 6 .D
=
c .(u - c/Jm -1 )
= V
D (c/Jm -1 ) . (u - c/Jm -1 )
w h i c h i s t h e d e r i v a t i v e o fD
a t t h e p o i n tc/Jm -1
i n t h e d i r e c t i o nu - c/Jm -1 .
I f8 D
<
6 .D
t h e d e r i v a t i v e o fD
i n t h e d i r e c t i o nu - c/Jm -1
i s n e g a t i v e a n dD
c a n b e d e c r e a s e d b y a s s i g n i n g a p o r t i o n a o f t h e f l o w i n t h i s d i r e c t i o n . T h i s i s d o n e b y m o v i n g f l o w t o t h e r o u t e s i nR
c ' A l i n e s e a r c h i s u s e d t o f i n d t h e o p t i m a l v a l u e o f aE
[ 0 , 1 ] s u c h t h a t , ( a )=
( 1 -a )c/Jm -1
+
a u
m i n i m i s e sD
a n d c /J mi s s e t t o ,( a ) . S u i t a b l e s e a r c h m e t h o d s i n c l u d e t h e g o l d e n s e c t i o n s e a r c h a l g o r i t h m ( s e e P r e s s e t a l. [ 2 7 ] f o r e x a m p l e ) a n d t h e F i b o n a c c i s e a r c h m e t h o d ( s e e a p p e n d i x C ) . I f8 D
>
6 .D
t h e n e t w o r k c o s tD
w i l l i n c r e a s e i f f l o w i s m o v e d t o t h e r o u t e s i nR
c .c/Jm -1
r e p r e s e n t s a n o p t i m a l l i n k f l o w v e c t o r i n t h i s c a s e a n d t h e a l g o r i t h m i s t e r m i n a t e d .A l g o r i t h m 2 . 1 ( K l e i n r o c k F l o w D e v i a t i o n ) . W e sta rt w ith a n in itia l fe a sib le lin k flo w v e c to r
c /J 0 a n d c h o o se a te rm in a tio n c rite rio n lO rd > O .
l.m + -1 2 . C o m p u t e t h e c u r r e n t c o s t r a t e v e c t o r c , w h e r e C£
=
D ~ (cP 'F -1 )
f o r e a c h £E
L.
3 . C o m p u t e t h e i n c r e m e n t a l c o s t6.D
f o r t h e c u r r e n t l i n k f l o w v e c t o r : L6 .D
=
L
C £ cP 'F -
1
.
£ = 1 1N o t e t h a t t h e r o u t e f l o w v e c t o r i s r e q u i r e d t o b e f e a s i b l e ( i e s a t i s f y d e f i n i t i o n 2 . 1 ) . T h e r e q u i r e m e n t s f o r a f e a s i b l e l i n k f l o w v e c t o r d e p e n d o n t h e e x a c t f o r m o f t h e l i n k c o s t f u n c t i o n Df, w h i c h i n t u r n d e p e n d s o n t h e M P L S n e t w o r k b e i n g m o d e l l e d . O n e o b v i o u s r e q u i r e m e n t i s t h a t 'Yf :'::: Cf.2 . 3 T h e K l e i n r o c k A l g o r i t h m
15
4 . U s e D ijk s tr a 's a lg o r ith m to f in d th e le a s t- c o s t r o u te s b a s e d o n th e c u r r e n t c o s t r a te v e c to r c . D e n o te th e le a s t- c o s t lin k f lo w v e c to r ( w h ic h r e s u lts w h e n a ll th e f lo wAj
is d e v ia te d a lo n g th e le a s t- c o s t r o u te s c o n n e c tin g j ) b yu.
5 . C o m p u te th e in c r e m e n ta l c o s t8D
f o r th e le a s t- c o s t lin k f lo w v e c to r : L8D
=
Le£a£.
£ = 1 6 . i fI~D - 8DI
<
C f d t h e n s t o p e l s e c o n t i n u e e n d i f7 . F in d a ( w ith 0
:S
a:S
1 ) s u c h th a t th e lin k f lo w v e c to r ( 1 -a)qr-
1
+
au
m in im is e sD
a n d s e t < jJm=
( 1 -a)<jJm-1
+
au.
8 . m
+-
m+
1 a n d r e t u r n to s te p 2 .A f te r th e a lg o r ith m h a s te r m in a te d ( a t ite r a tio n m
=
M)
w e s e t,£
=
1Jfl-1
f o r e a c h£
EL.
N o te th a t th e te r m in a tio n c r ite r io n
I~D - 8DI
<
cfd c a n b e r e p la c e d b y in s e r tin g th e s im p le c o n v e r g e n c e te s tID(v
m) -D(v
m-1)I
<
cfd b e tw e e n s te p s 7 a n d 8 .C o m p u ta tio n a lly , th e m o s t e x p e n s iv e s te p s a r e 4 a n d 7 . T h e s ta n d a r d im p le m e n ta tio n o f D ijk -s tr a '-s a lg o r ith m h a s c o m p le x ity
O(N
3). T h is c a n b e r e d u c e d to O ( N2lo gN)
b y u s in g h e a p s ( s e e M a n b e r [ 2 5 ] f o r e x a m p le ) . T h e v e r s io n s o f D ijk s tr a 's a lg o r ith m u s e d in th is th e s is a ll m a k e u s e o f h e a p s . T h e lin e s e a r c h m e th o d s u s e d in th is th e s is a ll h a v e lo w e r c o m p le x itie s th a n D ijk s tr a 's a lg o r ith m . T h u s th e c o m p le x ity o f o n e ite r a tio n o f th e K le in r o c k a lg o r ith m isO(N
2 lo gN).
T h e n u m b e r o f ite r a tio n s w h ic h th e a lg o r ith m r e q u ir e s to c o n v e r g e c a n n o t b e e s tim a te d . C o n s e q u e n tly , a n u p p e r b o u n d o n th e c o m p le x ity o f th e e n tir e a lg o r ith m c a n n o t b e g iv e n .T h e d is c u s s io n g iv e n h e r e is s im p ly a m o tiv a tio n f o r th e a lg o r ith m . T h e a lg o r ith m is f o r m a lly d e r iv e d f r o m th e F r a n k - W o lf e m e th o d in a p p e n d ix B . N o te th a t s te p 4 is e q u iv a le n t to s o lv in g O p tim is a tio n P r o b le m B .7 .
16
Chapter 2. The Flow Deviation
Algorithm
2.4
The Bertsekas-Gallager Algorithm
T h is s e c tio n p r e s e n ts a n o th e r v e r s io n o f th e f lo w d e v ia tio n a lg o r ith m , n a m e ly th e
Bertsekas-Gallager
algorithm
( s e e B e r ts e k a set al.
[ 9 ] ) . T h is a lg o r ith m s o lv e s O p tim is a tio n P r o b le m 2 .1 b y a p p ly in g a g r a d ie n t p r o je c tio n m e th o d to a C a u c h y - ty p e s te e p e s t d e s c e n t m e th o d ( b a s e d o n N e w to n 's m e th o d ) a s d e s c r ib e d in a p p e n d ix D .T h e le a s t- c o s t r o u te s a r e c a lc u la te d in e a c h ite r a tio n o f th e a lg o r ith m a n d f lo w is th e n m o v e d f r o m th e e x tr e m a l r o u te s o n to th e le a s t- c o s t r o u te s . T h e a m o u n t o f f lo w m o v e d is O - D p a ir d e p e n d e n t a n d c a lc u la te d b y m e a n s o f a g r a d ie n t p r o je c tio n m e th o d . T h is is d if f e r e n t f r o m th e K le in r o c k a lg o r ith m ( d is c u s s e d in th e p r e v io u s s e c tio n ) in w h ic h th e s a m e p o r tio n o f f lo w is m o v e d f r o m a ll e x tr e m a l r o u te s c o n n e c tin g a ll O - D p a ir s . C o n s id e r ite r a tio n m o f th e B e r ts e k a s - G a lla g e r a lg o r ith m a n d le t
r
j b e th e c u r r e n t le a s t- c o s t r o u te b e tw e e n 0 - D p a ir j . T h e e q u a lity c o n s tr a in tAj
=
L
Vr r E R ; c a n b e e x p r e s s e d a s Vr;= Aj -
L
Vr 'rER; ropr; (1 2 )w h ic h c a n b e s u b s titu te d in to O p tim is a tio n P r o b le m 2 .1 to e lim in a te th e e q u a lity c o n s tr a in ts a n d th u s y ie ld th e f o llo w in g p r o b le m .
Optimisation
Problem 2.3.
Minimise:
D(i/)
Subject
to:
L
v
r:::;Aj
r E R ; rop'r; Vr ::::0 f o r a llj
E
.J
f o r a llj
E
.J,
r
E
R
j a n dr
i-
r
j . i/ c o n s is ts o f e a c h r o u te f lo w Vr s u c h th a tr
is n o t a le a s t- c o s t r o u te . T h e g r a d ie n t p r o je c tio n m e th o d ( d e s c r ib e d in a p p e n d ix D ) c a n n o w b e a p p lie d to th is p r o b le m . T h e m a in ite r a tio n ( 5 4 ) o f th e g r a d ie n t p r o je c tio n m e th o d f o r th is p r o b le m is2.4 The Bertsekas-Gallager
Algorithm
17
v
m=
m a x{o
v
m -1 -T , T[::; D(v
m -1)] -1O~T
D(v
m-1)} , ( 1 3 ) w h e r er
i s n o t a l e a s t - c o s t r o u t e . T h e a b o v e c a l c u l a t i o n i s p e r f o r m e d f o r e a c h e x t r e m a l r o u t e b e t w e e n a n 0 - D p a i r j . F i n a l l y , t h e r o u t e f l o w o f t h e l e a s t - c o s t r o u t er
j i s c a l c u l a t e d a sv:.';
=
Aj -
LV;!".
TERj TOPTj T h e f i r s t a n d s e c o n d p a r t i a l d e r i v a t i v e s o fD(v)
w i t h r e s p e c t t o t h e r o u t e f l o w s a r e c a l c u l a t e d b y u s i n g ( 1 2 ) a n d b y a p p l y i n g t h e c h a i n r u l e f o r f u n c t i o n s o f s e v e r a l v a r i a b l e s t o y i e l dO~_
0
0
-D(v)
= -D(v)
- -D(v)
oV
ToV
ToV
Tj f o r 0 - D p a i rj
a n dr
-I-
r
j' T h i s c a n b e d e v e l o p e d f u r t h e r b y u s i n g ( 6 ) :o
0
aD(v)
=
L
aD(v)
=
L
Cfv,.
fET rf f E " w h i c h l e a d s t o0-_
,,0
,,0
-D(v)
= ~
-D(v)
- ~
-D(v)
OV,.
n arf n arf< E T <ETj
=
LCf -
I::C f
fET fETj=
CT -c
Tj. D e f i n ea
2D(v)
2 - - 2 CT -(av
T)a n d t h e
second derivative
cost rate vector
c2= (C I,
C~, ... ,c i )
a s2
a
2D
Cf
=
a
(rd
f o r e a c h£
E
'c.
( 1 4 )
1 8 C h a p t e r 2 . T h e F l o w D e v i a t i o n A l g o r i t h m ( 1 5 ) a n d t h e s a m e a r g u m e n t u s e d i n t h e d e r i v a t i o n o f ( 6 ) g i v e
C ;
= ~
[L
~ D (v )
-
L
~ D (V )]
8v
r n8"(e
8"(e
< E reE rj
82 82=
L
- - 2
D
( V ) -
L
- - 2
D(v)
eE r
8b e)
eE rj
8b e)
8
2=
L
- - 2
D
( V )
e U 'r 8 b e )=
L C ~ '
e E £ r w h e r eI:-
r i s t h e s e t o f a l l l i n k s i n r o r r j b u t n o t i n b o t h :I:-
r=
{ £ EI:-
1 £ E r o r £ Erj}
\
{ £ EI:-
1 £ E r a n d £ Erj}.
C o n s e q u e n t l y t h e i t e r a t i v e s t e p ( 1 3 ) o f t h e g r a d i e n t p r o j e c t i o n m e t h o d b e c o m e s
111_ { C - }
V
r
-
m a x 0 ,v;:,-l -
r
2C
rj
.
c
rA l g o r i t h m 2 . 2 ( B e r t s e k a s - G a l l a g e r F l o w D e v i a t i o n ) . W e s ta r t w ith a n in itia l fe a s ib le lin k
flo w v e c to r
cPo
a n d c h o o s e a te r m in a tio n c r ite r io n Efd >0
a n d a s te p -s iz e 'T]>O.
1.
m + - l 2 . C o m p u t e t h e c u r r e n t c o s t r a t e v e c t o r c , w h e r ec e
=
D 'e (4 );'-l)
f o r e a c h £E
1:-.
3 . C o m p u t e t h e i n c r e m e n t a l c o s tD.D
f o r t h e c u r r e n t l i n k f l o w v e c t o r : LD.D
=
L
c e 4 > ;'-l.
e= l
4 . U s e D i j k s t r a 's a l g o r i t h m t o f i n d t h e l e a s t - c o s t r o u t e s b a s e d o n t h e c u r r e n t c o s t r a t e v e c t o r c . D e n o t e t h e l e a s t - c o s t l i n k f l o w v e c t o r ( w h i c h r e s u l t s w h e n a l l t h e f l o wAj
i s d e v i a t e d a l o n g t h e l e a s t - c o s t r o u t e s c o n n e c t i n g j ) b y a . 5 . C o m p u t e t h e i n c r e m e n t a l c o s t J D f o r t h e l e a s t - c o s t l i n k f l o w v e c t o r : L J D= L cerJe.
e= l
2.4 The
B e r ts e k a s - G a lla g e rAlgorithm
6.
if
I~D - 8DI
<
Efdthen
s t o p e ls e
continue
endif
7 . S e t c /J '"+-
c/J",-1
a n d p e rfo rm th e fo llo w in g p ro c e d u re fo r e a c h O -D p a ir j.19
(a ) C o m p u te th e c o s t ra te v e c to r c , w h e re Cf=
D~(</J'l')
fo r e a c hI!
E L a n d th e s e c o n d d e riv a tiv e c o s t ra te v e c to r c2, w h e recE
=
D~' (</J'l')
fo r e a c hI!
EL.
(b ) L e tr
j b e th e le a s t-c o s t ro u te b e tw e e n 0 - D p a ir j . T h e n fo r e a c h ro u ter
ERj, r
=I=-r
j s e t Cr -c
rj Wr=7)7
r a n d s e t'"
{o
" ,-1
}
Vr=
m a x ,Vr - Wr . (c ) C a lc u la te th e flo w a lo n g th e le a s t-c o s t ro u te c o n n e c tin g O -D p a ir j:"'-'
"""'
'"
v
rj - A j - ~v
r . r E " R j r=f.rj (d ) U p d a te th e lin k flo w v e c to rc/J"',
w h e re</J'l'
=
L
v~
rEAt D e c re m e n t th e s te p -s iz e 7 ) in a n a p p ro p ria te w a y . 8 . m+-
m+
1 a n dreturn
to s te p 2 . fo r e a c hI!
EL.
A fte r th e a lg o rith m h a s te rm in a te d (in ite ra tio n m
=
M)
w e s e t'"'if =
</J"7-
1 fo r e a c hI!
E£.
N o te th a t th e te rm in a tio n c rite rio n
I~D - 8DI
<
Efd c a n b e re p la c e d b y in s e rtin g th e s im p le c o n v e rg e n c e te s tID(v"')
- D(V"'-l)j
<
Efd b e tw e e n s te p s 7 a n d 8 .T h e lin k flo w v e c to r c /J '" is u p d a te d (in s te p 7 ) a fte r th e L S P flo w s Vr E
Rj
h a v e b e e n c h a n g e d fo r e a c h 0 - D p a ir j . T h e re fo re c /J '" is o n ly fix e d a t th e c o m p le tio n o f ite ra tio n m . T h is im p lie s th a t th e c o s t ra te v e c to rs c a n d c220
Chapter 2. The Flow Deviation
Algorithm
A step-size 1] is introduced in the iterative step. B ertsekas et
al.
[9] suggest an initial step-size of 1]=
1. T hey also m ention the possibility of keeping 1] fixed as opposed to several decrem ent procedures.C om putationally, the m ost expensive step is the calculation of the shortest paths. T he version of D ijkstra's algorithm used in this thesis has com plexity O (N2log
N)
(see the explanation for the K leinrock algorithm ). T hus one iteration of the B ertsekas-G allager algorithm has com plexityO(N
2logN).
2.5
Applying Flow Deviation to MPLS Networks
T he next tw o chapters adapt the flow deviation algorithm s to optim ise the Q oS offered by specific M PL S netw orks. C hapter 3 considers an M PL S netw ork m odel in w hich the m ajor packet delays occur in the nodes (L SR s). T his m odel accom m odates different service classes. C hapter 4 applies flow deviation to M PL S netw ork m odels in w hich the lim ited link bandw idths cause the m ajor delays. T his m odel is only applicable to traffic belonging to a single service class.