View
215
Download
0
Tags:
Embed Size (px)
Citation preview
October 8, 2004 MPLS: TE and Restoration 1
MPLS: Traffic Engineering and Restoration Routing Basics
Zartash Afzal UzmiComputer Science and Engineering
DepartmentLahore University of Management
Sciences
October 8, 2004 MPLS: TE and Restoration 2
Outline Background
IP Routing and related problems MPLS Routing Basics
Labels and label switched paths Traffic Engineering Restoration Routing Our Research Conclusions
October 8, 2004 MPLS: TE and Restoration 3
Application Scenario A service provider (ISP) with several points
of presence (PoPs) geographically distributed
ISP provisions applications with “strict” network requirements (e.g., VoIP service)
Two major requirements: Guaranteed minimum bandwidth between a
source and a destination Less then 50ms recovery time in the event of
any network element failure
October 8, 2004 MPLS: TE and Restoration 4
Traditional (IP) Routing Characterized by best effort service Individual nodes (routers) take routing
and forwarding decisions Usually based on a pre-computed shortest
path Forwarding is destination based
When routers forward packets, they only look at the destination address
May lead to congestion in some parts of the network
October 8, 2004 MPLS: TE and Restoration 5
IP Routing Example
Packet 1: Destination A Packet 2: Destination B S computes shortest paths to A and B; finds D as next hop Both packets will follow the same path
Leads to IP hotspots! Solution?
Try to divert the traffic onto alternate paths
1 1
1 2
A B
C
A
B
S
D
October 8, 2004 MPLS: TE and Restoration 6
IP Routing Example
Increase the cost of link DA from 1 to 4 Traffic is diverted away from node D A new IP hotspot is created! Solution(?): Network Engineering
Put more bandwidth where the traffic is! Leads to underutilized links; not suitable for large networks
1 4
1 2
A B
C
SA
B
D
October 8, 2004 MPLS: TE and Restoration 7
IP Routing Vs MPLSTraditional IP RoutingMultiprotocol Label Switching (MPLS)
S D
543
21
MPLS allows overriding shortest paths!
October 8, 2004 MPLS: TE and Restoration 8
Routing Along Parallel Paths
Idea: Let the source make the complete routing
decision; source decides the complete path for each flow
How this may be accomplished? Attach a label to the IP packets; let everyone make
forwarding decision on that label On what basis should you choose different
paths for different flows? Define some constraints and hope that the constraints
will take “some” traffic away from the hotspot! Use CSPF instead of SPF (shortest path first)
October 8, 2004 MPLS: TE and Restoration 9
MPLS: Basics
How did they route along parallel paths? They did use a label They also decided to use a new label at
each hop to save on label space
Terminology LSP: Label switched path LSR: Label switch router
IP DatagramLabel
October 8, 2004 MPLS: TE and Restoration 10
Mpls Flow Progress
LSR1
LSR2
LSR3
LSR5
LSR6
R1 R2LSR4D
1 - R1 receives a packet for destination D connected to R2
R1 and R2 areregular routers
D
destination
October 8, 2004 MPLS: TE and Restoration 11
Mpls Flow Progress
LSR1
LSR2
LSR3
LSR5
LSR6
R1 R2LSR4D
2 - R1 determines the next hop as LSR1 and forwards the packet(Makes a routing as well as a forwarding decision)
D
destination
October 8, 2004 MPLS: TE and Restoration 12
Mpls Flow Progress
LSR1
LSR2
LSR3
LSR5
LSR6
R1 R2LSR4
D
3 – LSR1 establishes a path to LSR6 and “PUSHES” a label(Makes a routing as well as a forwarding decision)
D
destination
31
October 8, 2004 MPLS: TE and Restoration 13
Mpls Flow Progress
LSR1
LSR2
LSR3
LSR5
LSR6
R1 R2LSR4
D
4 – LSR3 just looks at the incoming labelLSR3 “SWAPS” with another label before forwarding
D
destination
17
Labels have localsignifacance!
October 8, 2004 MPLS: TE and Restoration 14
Mpls Flow Progress
LSR1
LSR2
LSR3
LSR5
LSR6
R1 R2LSR4
D
5 – LSR6 looks at the incoming labelLSR6 “POPS” the label before forwarding to R2
D
destination
17
Path within MPLS cloudis pre-established:LSP (label-switched path)
October 8, 2004 MPLS: TE and Restoration 15
TE Capability Recap Who establishes the LSPs in advance?
Ingress routers How do ingress routers decide not to
always take the shortest path? Ingress routers use CSPF (constrained
shortest path first) instead of SPF Examples of constraints:
Do not use links left with less than 7Mb/s bandwidth
Do not use links with blue color for this request Use a path with delay less than 130ms
October 8, 2004 MPLS: TE and Restoration 16
MPLS Routing
S D
543
21
MPLS allows routing on pre-established paths!
October 8, 2004 MPLS: TE and Restoration 17
IP versus MPLS: Summary In IP Routing, each router makes its own
routing and forwarding decisions In MPLS, source makes the routing decision Intermediate routers make forwarding decisions
In IP Routing, packets usually follow the SPF In MPLS packets follow the CSPF
In IP Routing, restoration takes few seconds In MPLS, restoration can be of the order of 10ms
October 8, 2004 MPLS: TE and Restoration 18
CSPF What is the mechanism?
First prune all links not fulfilling constrains Now find shortest path on the rest of the
topology Requires some Reservation mechanism Changing state of the network must also
be recorded and propagated For example, ingress needs to know how
much bandwidth is left on links The information is propagated by means of
routing protocols and their extensions
October 8, 2004 MPLS: TE and Restoration 19
Restoration Routing
Application of Traffic Engineering
October 8, 2004 MPLS: TE and Restoration 20
Restoration in IP network
In traditional IP, what happens when a link or node fails? Information needs to be disseminated
in the network During this time, packets may go in
loops Restoration latency is in the order of
seconds
October 8, 2004 MPLS: TE and Restoration 21
Restoration in MPLS
S 1 2 3 D
Primary Path
Backup Path
Path Protection
This type of “path Protection” still takes 100s of ms.
October 8, 2004 MPLS: TE and Restoration 22
Restoration in MPLS
S 1 2 3 D
Primary Path
Backup Path
Element Local Protection
Local Protection takes of order of 10ms
October 8, 2004 MPLS: TE and Restoration 23
Opportunity Cost Fast restoration requires that backup
paths are established “in advance” Backup provisioning requires bandwidth
reservation along the backup paths Backup bandwidth is taken from the
primary bandwidth Fewer primary LSPs can be established
Can we do something to avoid “wasting” so much bandwidth in backup paths? Try to share the backup bandwidth!
October 8, 2004 MPLS: TE and Restoration 24
BW Sharing in Backup Paths Assumption:
Two primary paths, whose backups are sharing bandwidth, must not fail together
Is this assumption realistic? Failure is a low probability event Once failure occurs, new primary paths
with new backups are computed Failure of another element in that time is
unlikely
October 8, 2004 MPLS: TE and Restoration 25
BW Sharing in Backup Paths
Example:-
S1 D1
S2 D2
4 53
b1
b2
max(b1, b2)
= LSR
October 8, 2004 MPLS: TE and Restoration 26
Creation of Backup Paths
October 8, 2004 MPLS: TE and Restoration 27
Types of Backup Paths
primary path
next-hop backup pathingress node
egress nodenext-next-hop backup path
s
d
s d
October 8, 2004 MPLS: TE and Restoration 28
Backup Paths: Definitions
A next-hop (nhop) backup path that spans link(i,j) is a backup path which: Originates at node i Merges with the primary at node j Provides restoration for one or more
primary LSPs that traverse link(i,j) when:
link(i,j) fails
October 8, 2004 MPLS: TE and Restoration 29
Backup Paths: Definitions A next-next-hop (nnhop) backup path
that spans link(i,j) and link(j,k) is a backup path which: Originates at node i Merges with the primary at node k Provides restoration for one or more primary
LSPs that traverse link(i,j) and link(j,k) when either:
Node j fails Link(i,j) fails
October 8, 2004 MPLS: TE and Restoration 30
Activation Sets When an element fails, a number
of backups are activated “simultaneously” Such backups are in the activation set
of that protected element Backups is a single activation set
can not share the bandwidth Backups in different activation sets
may share the bandwidth
October 8, 2004 MPLS: TE and Restoration 31
Activation Set for node j
What paths are activated when node j fails? NNhop paths that span link(x,j) and
link(j,y) for all x,y
Note that a node is protected by nnhop paths only!
October 8, 2004 MPLS: TE and Restoration 32
Activation Set for node j
next-next-hop backup path
l
j
k
i
October 8, 2004 MPLS: TE and Restoration 33
Activation Set for link(i,j)
What paths are activated when link(i,j) fails: Nhop path that spans link(i,j) Nhop path that spans link(j,i) NNhop paths that span link(i,j) and
link(j,x) for all x not equal to i,j NNhop paths that span link(j,i) and
link(i,x) for all x not equal to i,j
October 8, 2004 MPLS: TE and Restoration 34
Activation Set for link(i,j)
g
lh
k
ji
next-hop backup path
next-next-hop backup path
October 8, 2004 MPLS: TE and Restoration 35
Providing Protection Suppose link(i,j) is traversed by a new primary
LSP with bandwidth demand b A backup path “around” the link(i,j) can either be:
Nhop path (if node j is egress) NNhop path (if node j is not egress) In either case, point of local repair (PLR) is node i
We are protecting the LSP that traverses the triplet(PLR, facility, MP)
PLR is always node i Facility is the entity being protected: link(i,j) or node j MP is either node j or some other node adjacent to node
j
October 8, 2004 MPLS: TE and Restoration 36
Providing Protection
Let the bandwidth corresponding to previously established LSPs traversing the triplet (PLR, facility, MP) is bold
The backup path is recomputed with bandwidth demand bnew = bold+b
Various computation algorithms can be deployed and have been studied
October 8, 2004 MPLS: TE and Restoration 37
Computing the Backups How much bandwidth can be shared?
Depends upon the routing information propagated
Aggregate information scenario: Fij: BW reserved on link(i,j) for primary LSPs Gij: BW reserved on link(i,j) for backup LSPs Rij: Residual BW on link(i,j) Link(i,j) will propagate above information
Note: total primary BW on link(i,j) is Fij+Fji
October 8, 2004 MPLS: TE and Restoration 38
Computing the Backups When the new backup path is nhop, how much is
shareable on link(u,v)? Fij+Fji-bold is the maximum bandwidth that will
simultaneously be active with new backup The bandwith shareable on link(u,v) is:
Suv = max(0, Guv – (Fij+Fji-bold)) When the new backup path is nnhop, how much is
shareable on link(u,v)? Note that nnhop is protecting against a link as well as a
node. Thus, the bandwidth required for both the activation sets must be computed
Max(Fij+Fji-bold, Fxj-bold) is the maximum that will simultaneously be active with the new backup
The bandwidth shareable on link(u,v) is: Suv = max(0, Guv – max(Fij+Fji-bold, Fxj-bold))
October 8, 2004 MPLS: TE and Restoration 39
Computing the Backups PLR knows Ruv and Suv for all links PLR computes total bandwidth Ruv+Suv available
to route the new backup path on each link(u,v) All links for which Ruv+Suv < bnew are pruned For each remaining link(u,v), the additional
bandwidth required is given by max(0, bnew-Suv)
PLR computes the route that requires minimum additional bandwidth
Note: The computed path is sub-optimal
October 8, 2004 MPLS: TE and Restoration 40
Simulation Parameters 20 node ISP network Each link with capacity 120 units 380 possible pairs LSP requests arrive one by one
Ingress/Egress chosen randomly Bandwidth demand for each request is
uniformly distributed between 1 and 6 Call holding time is infinite 10 experiments with randomly selected
ingress/egress pairs and traffic demands
October 8, 2004 MPLS: TE and Restoration 41
Schemes Compared Kini’s scheme
Signalled path is suboptimal Reservations made are corrective
Facility Optimal path is signalled Static pools for primary and backups
NPP Primary and backups dynamically allocated Optimal path is signalled
October 8, 2004 MPLS: TE and Restoration 42
Results
0
200
400
600
800
1000
250 400 550 700 850 1000
Total Number of LSP Requests
Nu
mb
er o
f L
SP
s P
lace
d
NPP
FAC
KINI
October 8, 2004 MPLS: TE and Restoration 43
Results
0
500
1000
1500
2000
2500
3000
250 400 550 700 850 1000Total Number of LSP Requests
To
tal
BW
Pla
ced
NPP
FAC
KINI