Title: CS 520 Fall 2003 Lecture 15 MPLS and its Applications with modifications for CS 520
1CS 520 Fall 2003 - Lecture 15MPLS and its
Applications(with modifications for CS 520)
- Philip MatthewsNortel NetworksApril 2000
- (Material prepared byDr. Bilel Jamoussi and
Peter Ashwood-Smith)
2What This Lecture is About
- What MPLS is
- What MPLS is good for
- MPLS protocol/mode comparisons opinions
- Some applications of MPLS
- MPLS future
- Good tutorial information at www.mplsrc.com.
3What This Lecture is NOT About
- General networking
- Product comparisons
- Marketing
4Tutorial Outline
- Overview
- Label Encapsulations
- Label Distribution Protocols
- Constraint-Based Routing
- MPLS and VPNs
- Network Survivability
- Summary
5What is MPLS?
- MPLS is an IETF Standardized mechanism for
controlling packet routing. - Framework and Architecture
- Define the scope, the various components and
their interactions - Encapsulations
- Labels used at the data plane to make forwarding
decisions - Signaling Protocols
- Distribution of Labels to establish Label
Switched Paths - Routing Protocol Traffic Engineering Extensions
- Distribution of Bandwidth and other link
attributes
6Label Substitution what is it?
Have a friend go to B ahead of you. At every road
they reserve a lane just for you. At every
intersection they post a big sign that says for a
given lane which way to turn and what new lane to
take.
LANE1
LANE2
7Label Switched Path (LSP)
1 RIGHT 2
1 RIGHT 2
2 LEFT 1
2 LEFT 1
8What is a LABEL?A property that uniquely
identifies a flow on a logical or physical
interface Labels may be platform wide unique or
more commonly interface wide unique. But are not
globally unique, so label values can be reused in
many places.
9Label Switched Path
3 Right 7
7 LEFT 99
99 RIGHT 9
9 LEFT 4072
10Another context An Optical Label Switched Path
labels are colors of light
RED RIGHT BLUE
RED
BLUE
BLUE LEFT WHITE
WHITE RIGHT ORANGE
WHITE
ORANGE
ORANGE LEFT RED
RED
11MPLS Labels
- Hop-by-hop or source routing to establish labels
- Hop-by-hop can use OSPF, RIP, etc. to define
labels - Source routing lets sources define routes and
their labels - Multiple levels of labels (stacks of labels
within labels). - Allows groups of flows to carry the same label
for part of a route.
12ROUTE AT EDGE, SWITCH IN CORE
IP
IP
IP Forwarding
IP Forwarding
LABEL SWITCHING
13Routers Do Both Routing and Switching
- Routing
- Deciding the next hop based on the destination
address. - A Layer 3 (L3) function.
- Switching
- Moving a packet from an input port to an output
port and out. - A layer 2 function.
INPUT PORTS
OUTPUT PORTS
14MPLS Turns Routing into Switching
- So we can avoid performing the layer 3 function.
- Use labels to decide next hops.
- What benefit does this provide?
- In what situations would this benefit not be very
significant?
15MPLS Flexible Forwarding
IP Packets are forwarded based on Destination
Address (DA). We can call this destination
based routing.
- MPLS
- Map packets to LSP based on (Source Address,
Destination Address, protocol, port, DSCP,
interface, etc.) - Forward packets based on the Label
IP
IP
LSP to IP
IP to LSP
LABEL SWITCHING
16MPLS-based Solutions
- Enable QoS in IP Networks
- Support Diffserv connection-oriented QoS
- IP Traffic Engineering
- Use constraint-based routing to adapt to latest
network loading and QoS performance - Virtual Private Networks
- Use controllable tunneling mechanisms
- L2/L3 Integration
- Integrate with L1 and L2 technologies like
Optical Cross Connects (OXCs) and ATM - Resilient Network Design
- Automatic Failover and Backup
17BEST OF BOTH WORLDS
CIRCUITSWITCHING
PACKETForwarding
HYBRID
- MPLS IP forms a middle ground that combines the
best of IP and the best of circuit switching
technologies.
18MPLS Terminology
- LDP Label Distribution Protocol
- LSP Label Switched Path
- LER Label Edge Router (edge of an area that
supports MPLS) - LSR Label Switching Router (inside an area that
supports MPLS) - FEC Forwarding Equivalence Class
19LERs and LSRs
IP
IP
LSP to IP
IP to LSP
LABEL SWITCHING
LER
LER
LSRs
20Forwarding Equivalence Classes
- FEC A subset of packets that are all treated
the same way by a router - The concept of FECs provides for a great deal of
flexibility and scalability. Traffic can be
aggregated or differentiated in many ways - In conventional routing, a packet is assigned to
an FEC at each hop (i.e. L3 look-up), in MPLS it
is only done once at the network ingress.
LSR
LSR
LER
LER
LSP
Packets are destined for different address
prefixes, but can be mapped to common path
21Label Switched Path (Two Types)
427
216
819
77
18
963
14
612
462
311
99
5
- Two types of Label Switched Paths
- Hop by hop (Vanilla LDP)
- Explicit Routing (LDPER)
22LABEL SWITCHED PATH (vanilla)
- - A Vanilla LSP creates MPLS paths for standard
IP routing (from IP routing tables). - A Vanilla LSP is actually part of a tree from
every source to that destination
(unidirectional).
23STANDARD IP
47.1
1
2
1
3
2
1
47.2
3
2
Network 47.3
- Destination based forwarding tables as built by
OSPF, IS-IS, RIP, etc.
24STANDARD IP
47.1
1
IP 47.1.1.1
2
IP 47.1.1.1
1
3
2
IP 47.1.1.1
1
47.2
3
47.3
2
25Label Switched Path (LSP)
1
47.1
3
3
2
1
1
2
47.3
3
47.2
2
26MPLS Label Distribution
1
47.1
3
2
3
1
1
2
47.3
3
47.2
2
27Benefits and Limitations
- Why might this approach be better than normal IP
forwarding that does not use MPLS? - Remember, all packets still travel the same
paths. - What else might we be able to do with MPLS that
could be even more powerful?
28EXPLICITLY ROUTED OR ER-LSP
B
C
A
- ER-LSP follows the route that source chooses.
In other words, the control message to establish
the LSP (label request) is source routed.
29EXPLICITLY ROUTED LSP ER-LSP
1
47.1
3
3
2
1
1
2
47.3
3
47.2
2
30ER LSP - Advantages
- Operator has routing flexibility
- Can establish LSPs based on policy, QoS, etc.
- Can have pre-established LSPs that can be used
in case of failures. - Can use routes other than shortest path
- Can compute routes based on dynamic constraints
(available bandwidth, delay, etc.) in exactly the
same manner as ATM based on a distributed
topology database.(traffic engineering)
31ER LSP - Discord!
- Two signaling options proposed in the standards
CR-LDP, RSVP extensions - CR-LDP Label Distribution Protocol (LDP)
Explicit Routing - RSVP-TE Traditional Resource Reservation
Protocol (RSVP) Explicit Route Scalability
Extensions - RSVP was established several years ago to be able
to reserve resources along a path. - To ensure QoS by making sure each flow had enough
resources. - Had significant scalability problems.
- ITU has decided on LDP/CR-LDP for public
networks.
32Tutorial Outline
- Overview
- Label Encapsulations
- Label Distribution Protocols
- Constraint Based Routing
- MPLS and VPNs
- Network Survivability
- Summary
33Upper Layer Consistency Across Lower Layers
GigEthernet
Optical Cross Connect (OXC)
Frame Relay
ATM
- MPLS is multiprotocol below (link layer)
- Provides for consistent operations, engineering
across multiple technologies - Allows operators to leverage existing
infrastructure - Co-existence with other protocols is provided for
34MPLS Encapsulation - PPP LAN Data Links
MPLS Shim Headers (1-n)
n
1
Network Layer Header and Packet (eg. IP)
Layer 2 Header (eg. PPP, 802.3)
- Network layer must be inferable from value of
bottom label of the stack
MPLS on PPP links and LANs uses Shim Header
Inserted Between Layer 2 and Layer 3
Headers (other technologies use different
approaches)
35Tutorial Outline
- Overview
- Label Encapsulations
- Label Distribution Protocols
- Constraint-Based Routing
- MPLS and VPNs
- Network Survivability
- Summary
36Label Distribution Protocols
- Label Distribution Protocol (LDP)
- Constraint-based Routing LDP (CR-LDP)
- Extensions to RSVP
37Label Distribution Protocol (LDP) - Purpose
Label distribution ensures that adjacent routers
have a common view of bindings of FECs to labels
Routing Table Addr-prefix Next
Hop 47.0.0.0/8 LSR3
Routing Table Addr-prefix Next
Hop 47.0.0.0/8 LSR2
LSR1
LSR3
LSR2
IP Packet
47.80.55.3
Common understanding of which FEC the label is
referring to!
Label distribution can either piggyback on top of
an existing routing protocol, or a dedicated
label distribution protocol (LDP) can be created.
38Labels are Downstream Assigned
- Note that label assignments are decided at the
downstream node and communicated to the upstream
node. - Why does it need to be done this way?
- What flexibility does this approach provide?
39Label Distribution Protocols
- Label Distribution Protocol (LDP)
- Constraint-based Routing LDP (CR-LDP)
- Extensions to RSVP
40Traffic Engineering Requirements
- Constraint-Based Routing is one method of Traffic
Engineering. Traffic Engineering seeks to
engineer the best use of capacity. - RFC 2702
- Strict Loose ER
- Specification of QoS
- Specification of Traffic Parameters
- Route Pinning
- Preemption
- Failure Recovery
41Constraint Based Routing using LDP (CR-LDP)
- Built on existing LDP messages over TCP.
- Defines an Explicit Route
- Detailed path that can traverse any links
supporting CR-LDP. - Defines a set of constraints for LSP computation
and admission - Expectation and Allocation of resources
- Peak burst rate, Committed burst rate,
- Excess burst, Frequency, Weight.
- Preemption Level
- Setup and Holding Priority with respect to other
LSPs. - Resource Class
- Color of traffic inclusion, exclusion rules for
links.
42CR-LDP Preemption
- Preemption may or may not be a good idea in a
particular context recall our discussion in
previous lectures. - A CR-LSP carries an LSP priority. This priority
can be used to allow new LSPs to bump existing
LSPs of lower priority in order to steal their
resources. - This is especially useful during times of failure
and allows you to rank the LSPs such that the
most important obtain resources before less
important LSPs. - These are called the setup-Priority and a
holding-Priority and 8 levels are provided.
43CR-LDP Preemption
- When an LSP is established, its setup-Priority is
compared with the holding-Priority of existing
LSPs, any with lower holding-Priority may be
bumped to obtain their resources. - This process may continue in a domino fashion
until the lowest holding-Priority LSPs either
clear or are on the worst routes.
44Preemption A.K.A. Bumping
B
C
A
45Label Distribution Protocols
- Label Distribution Protocol (LDP)
- Constraint-based Routing LDP (CR-LDP)
- Extensions to RSVP
46ER-LSP setup using RSVP-TE
- TE (Traffic Engineering) extensions to RSVP
- Built on RSVP messages over IP.
- In RSVP, a source requests resources along a
path. - Then the source regularly sends refresh messages
to keep the reservations active. - Extensions to RSVP
- Explicit Route Object
- Label Request
- Label Object
- Session Attribute
- Record Route Object
- Defines a set of constraints for LSP computation
and admission - Expectation and Allocation of resources Uses
Inserv-style reservations - Preemption Level Setup and Holding Priority with
respect to other LSPs.
47Tutorial Outline
- Overview
- Label Encapsulations
- Label Distribution Protocols
- Constraint Based Routing
- MPLS and VPNs
- Network Survivability
- Summary
48IP Follows a Tree to the Destination
Desta.b.c.d
a.b.c.d
Desta.b.c.d
Desta.b.c.d
- IP will over-utilize best paths and
under-utilize not-so-good paths.
49HOP-BY-HOP (A.K.A Vanilla) LDP
216
963
14
612
462
311
99
5
- Ultra fast, simple forwarding a.k.a switching -
Follows same route as normal IP datapath - So
like IP, LDP will over-utilize best paths and
under-utilize less good paths.
50Label Switched Path (Two Types)
427
216
819
77
18
963
14
612
462
311
99
5
- Two types of Label Switched Paths
- Hop by hop (Vanilla LDP)
- Explicit Routing (LDPER)
51CR-LDP
CR Constraint based Routing Example USE
(links with sufficient resources) AND
(links of type someColor) AND
(links that have delay less than 200 ms)
52Traffic Engineering
B
C
Demand
A
D
Traffic engineering is the process of mapping
traffic demand onto a network
Network Topology
Purpose of traffic engineering
- Maximize utilization of links and nodes
throughout the network - Engineer links to achieve required delay,
grade-of-service - Spread the network traffic across network links
to minimize impact of failure - Ensure available spare link capacity for
re-routing traffic on failure - Meet policy requirements imposed by the network
operator
Traffic engineering is key to optimizing
cost/performance
53MPLS Traffic Engineering Methods
- MPLS can use the source routing capability to
steer traffic on desired paths - An operator may manually configure LSRs along the
desired paths. - What are limitations of manual configuration?
54MPLS Traffic Engineering Methods
- The ingress LSR may be specify an LSP to have one
or more other LSRs along the desired path - hop-by-hop routing may be used to set up the rest
of the path in between those LSRs - a.k.a. loose source routing, less configuration
required - If desired for control, a route discovered by
hop-by-hop routing can be frozen - a.k.a route pinning
- to stay with the same route for a period of time
- In the future, constraint-based routing will
offload traffic engineering tasks from the
operator to the network itself - Automated LSP assignments
55WHEN SHOULD TE BE USED?
- When it is not acceptable to simply rank packets
and throw away the least important traffic first. - When traffic is being thrown away but you have
other viable routes that are unused or
underutilized. - Dont use TE if it is not necessary. In fact
dont use MPLS if vanilla IP is working for you.
Use LDP, CR-LDP and RSVP-TE if/when they are
needed.
56Reactive traffic engineering
Wait till you have a problem and then patch
around it. 1- Identify a flow to move Q
how? 2- Establish an LSP on some other route
Q what route?
57How to identify a flow to move? Good Statistics!
A) move the flow that has packets being
discarded. For this you need to have stats that
show src, dest, protocol that are being thrown
away. (note this is TE of least important
traffic) B) move some other high priority user
on the link somewhere else. For this you need to
have stats that show src, dest, protocol of
high users. (note, this is TE of more important
traffic)
58What route should be used for an LSP? An
non-shortest path!
A) Explicitly route without help of constraint
based routing. B) Use constraint not this link
so that MPLS can pick all the other links
dynamically but is not allowed to pick the
congested one. Neither of these approaches will
result in shortest paths and both are hard to
administer as things scale up.
59Pro-active traffic engineering (plan ahead)
S1
S2
S3
D
S4
S5
S6
1- Start with rough idea on Si, D B/W
requirements. 2- Establish constraint based
tunnels Si -gt D 3- repeat forever at regular
planning intervals (days, weeks, months) 3a-
Remeasure Si -gt D B/W utilization. 3b-
Adjust reservations on Si -gtD to be closer
to actual utilization using hot swaps.
60MPLS Traffic engineering
- Imperative to be able to monitor flow rates to
the granularity of source, dest, protocol . - Use MPLS constraint based routing to assign paths
to flows based on a reservation. - Try to adjust the reservations periodically to
reflect changes in utilization. - MPLS aims to do a really good job of placing
routes given the reservations are accurate. - MPLS allows dynamic changes to reservations so
they can slowly converge to reality over time.
61MPLS Traffic engineering interactions with
vanilla IP.
- There are non trivial interaction issues to deal
with when some of the traffic is traffic
engineered (MPLS) and the rest (vanilla IP) is
not. - What problems might occur?
62Tutorial Outline
- Overview
- Label Encapsulations
- Label Distribution Protocols
- Constraint Based Routing
- MPLS and VPNs
- Network Survivability
- Summary
63MPLS Provides Benefits for Establishing Virtual
Private Networks
- Virtual Private Network (VPN)
- Connects two or more separate sites over the
Internet - Allows them to function as if they were a single,
private network. - Key Features Security, control over performance,
management ability. - Use of MPLS for VPNs
- MPLS can set up one or more LSPs between sites.
- Organizations can choose how they use the LSPs.
- Can view the LSPs as virtual network links.
- Significant debate is in progress on how to use
MPLS for VPNs. - Will study VPNs more in a later lecture.
64Outline
- Overview
- Label Encapsulations
- Label Distribution Protocols
- Constraint Based Routing
- MPLS and VPNs
- Network Survivability
- Summary
65The need for MPLS protection
- MPLS-based services have been growing
- VPNs
- Migration of ATM and Frame Relay onto MPLS
- Traffic Engineering
- MPLS-based services are more demanding of
resiliency and reliability - Because MPLS promises more reliability.
- Thats one reason why customers would use
MPLS-based services.
66The need for MPLS protection
- Layer 3 recovery is also too slow.
- OSPF, RIP, etc. require a redistribution updated
link status information in response to a fault. - Then routers must recompute their routes.
- Takes on the order of seconds.
- Can have looping and lost packets in the
meantime. - Other technologies are very fast.
- SONET can establish an alternate route around a
failure within 50 milliseconds. - By having active backup resources immediately
available. - It would be good to have millisecond failovers
with MPLS.
67MPLS protection approaches
- Headend reroute
- Recompute LSPs to find a new LSP after a
failure. - Initiated by the source or LER.
- Just has slow as using OSPF or RIP not good.
- Pre-signaled standby LSPs
- Backup LSP is signaled in advance from primary
ingress to egress. - That does not share any links or LSRs with the
primary path. - Called link and node disjoint.
- Has of millisecond failover, around 500
milliseconds. - These backup LSPs need to have resources
reserved for them, but these resources are not
used very often.
68Pre-signaled Standby LSPs
- Planning occurs before failure
- Then LSP ingress learns of the failure
- Moves traffic to use standby LSP
- Ingress must first know about the failure
- The farther away the failure, the longer it will
take to start the reroute.
69MPLS protection approaches
- MPLS Fast Reroute
- During the establishment of a primary LSP, a
protected path for each possible link or node
failure is pre-signaled. - Even faster failover, around 50 milliseconds.
- But many more LSPs are established, with
resources reserved to them - Much more to manage.
- Midpoint LSRs make their own LSPs to the
egress. - To go around the immediate downstream link or
node that could fail. - LSPs are established using the same criteria
used for the primary LSP. - Since the PLR (Protection Label-Switched Router)
is immediately connected to the failed link, it
will know about the failure very quickly from the
hardware. - Then the backup LSP can be used.
70MPLS Fast Reroute
- A merge node joins traffic back onto the primary
LSP.
71Tutorial Outline
- Overview
- Label Encapsulations
- Label Distribution Protocols
- Constraint Based Routing
- MPLS and VPNs
- Network Survivability
- Summary
72Summary of Motivations for MPLS
- Simplified forwarding based on an exact match of
a fixed length label - Initial driver for MPLS was based on the
existence of cheap, fast ATM switches - Separation of routing and forwarding in IP
networks - Facilitates evolution of routing techniques by
fixing the forwarding method - New routing functionality can be deployed without
changing the forwarding techniques of every
router in the Internet - Facilitates the integration of ATM and IP
- Allows carriers to leverage their large
investment of ATM equipment
73Summary of Motivations for MPLS
- Enables the use of explicit routing/source
routing in IP networks - Can easily be used for such things as traffic
management, QoS routing - Promotes the partitioning of functionality within
the network - Move detailed processing of packets to the edge
restrict core to simple packet forwarding - Assists in maintaining scalability of IP
protocols in large networks
74Summary of Motivations for MPLS
- Applicability to both cell and packet link-layers
- Can be deployed on both cell (eg. ATM) and packet
(eg. FR, Ethernet) media - Common management and techniques simplifies
engineering - But MPLS is much more complex than traditional IP
forwarding - Routers need to be able to forward based on
labels (in addition to their normal functions). - LSPs must be signalled and maintained.
- Some ISPs have said they are not using MPLS and
do not plan to. - This will continue to be true if overprovisioning
remains effective. - But MPLS is more seriously being considered to
carry legacy ATM and Frame Relay traffic
(connection-oriented traffic). - And some of these ISPs are realizing that their
customers want MPLS to provide more assurance
about their IP-based services.
75MPLS Partitioning Routing and Forwarding
Based on Classful Addr. Prefix? Classless Addr.
Prefix? Multicast Addr.? Port No.? ToS Field?
Routing
OSPF, IS-IS, BGP, RIP
Forwarding Table
Forwarding
Based on Exact Match on Fixed Length Label
MPLS
- Current network has multiple forwarding paradigms
- - classful longest prefix match (Class A,B,C
boundaries) - - classless longest prefix match (variable
boundaries) - - multicast (exact match on source and
destination) - - type-of-service (longest prefix. match on
addr. exact match on ToS) - As new routing methods change, new route look-up
algorithms are required - - like when CIDR was introduced
- Next generation routers will be based on hardware
for route look-up - - changes will require new hardware with new
algorithms - MPLS has a consistent algorithm for all types of
forwarding partitions routing/fwding - - minimizes impact of the introduction of new
forwarding methods
MPLS introduces flexibility through a consistent
forwarding paradigm
76Summary
- MPLS is an important emerging technology.
- MPLS/LDP/CR-LDP have been recommended by the ITU
for IP transport on ATM in public networks. - Basic functionality (Encapsulation and basic
Label Distribution) has been defined by the IETF. - Traffic Engineering based on MPLS/CR-LDP is being
developed (protocols and research).