Professional Documents
Culture Documents
Multiprotocol Label Switching (MPLS)
Multiprotocol Label Switching (MPLS)
(MPLS)
Label Switching Motivation
• IP Switching by Ipsilon
• Cell Switching Router (CSR) by Toshiba
• Tag Switching by Cisco
• Aggregate Route-base IP Switching (ARIS)
by IBM
• The Multiprotocol Label Switching Working
Group ( IETF )
ATM
IP
Network Layer Routing
Functional Components
• Forwarding
Responsible for the actual forwarding of packets from
input to output across a switch or router
• Control
Responsible for construction and maintenance of the
forwarding table
Conventional routing model
D est O ut
4 7 .1 1
D est O ut 4 7 .2 2
4 7 .1 1 4 7 .3 3
4 7 .2 2
4 7 .3 3
1 47.1
IP 47.1.1.1
1 2 IP 47.1.1.1
D est O ut 3
4 7 .1 1 2
4 7 .2 2
4 7 .3 3 IP 47.1.1.1
1
47.3 3 47.2
2
IP 47.1.1.1
Label Switching forwarding model
• Optimum paths through the network are
identified in advance.
• Label Switching ingress devices use information
in the layer-3 header to assign the packets to one
of the predetermined paths - label assignment.
• The label accompanies the packet as it traverses
the network.
• Subsequent routers along the path use the label
to determine the next hop device.
• Label Switching devices only manipulate
information in the label, processor-intensive
analysis and classification of the layer-3 header
occurs only at the ingress point.
Label Switched forwarding model
1 47.1
IP 47.1.1.1
Intf Dest Intf Label IP 47.1.1.1
In Out Out 3
1
1.1 3 2
3 47.1 1 0.50 4 7.1.
IP 2
1
47.3 3 47.2
2
IP 47.1.1.1
What is a Label
FEC
AF AF AF Afghanistan
LA PA TLV JFK
JFK GZ
JFK LA JFK
ME
JFK ME JFK
JFK ME FEC
Middle East
JFK FEC
USA USA USA
USA
A label by any other name...
LSP
IP1
IP1 #L1 IP1 #L2 IP1 #L3
IP2 #L1 IP2 #L2 IP2 #L3
IP2
Packets
Packets are
are destined
destined for
for different
different address
address prefixes,
prefixes,
but
but can
can be
be mapped
mapped to
to common
common path
path
• FEC = “A subset of packets that are all treated the same way by a router”
(i.e. they are all sent to the same next hop)
• The concept of FECs provides for a great deal of flexibility and scalability
• In conventional routing, a packet is assigned to a FEC at each hop
(i.e. L3 look-up – processor intensive ).
Label switching Forwarding Algorithm
Network
layer IPv6 IPv4 IPX AppleTalk
protocols
Label Switching
Point-to-Point
Frame Relay
Ethernet
FDDI
ATM
Link
layer
protocols
Label switching Control component
Binding Binding
Information Information
For label X For label X
Downstream Upstream
Control driven vs. data driven
• Mapping between the FEC and the next hop for that FEC
(provided by the routing protocol(s) running on the LSR)
LSR participates in unicast routing protocols and uses the information provided by
these protocols to construct its mapping between FECs and their corresponding
next hope. This mapping is used by the control component only for the purpose of
constructing its forwarding table
LSR A
LSR D
LSR C
LSR E 192.69
label=14
label=6
FEC = 192.69
FEC = 192.69
Multiprotocol Label Switching
(MPLS)
• Downstream Label assignment
• On demand
• Unsolicited
• Labels allowed to be:
• Globally unique
• Unique per node
ATM • Unique per interface
IP
MPLS Terminology
• LSP: Label Switched Path
• FEC: Forwarding Equivalence Class
• LSR: Label Switching Router
• LER: Label Edge Router Used
Buzzwords
Sale
• LDP: Label Distribution Protocol
TTL
GPS
ATM FEC
Label stack and label hierarchies
R1 R2 LSP tunnel R3 R4
Level 1
Level 2
La IP Hdr Payload
R21 R22
Lb La IP Hdr Payload
MPLS stacks in a BGP environment
EBGP
La IP hdr Payload
R21 R22
Lb La IP Hdr Payload
AS1 AS2 AS3
LSRs and Labels
PPP Header
(Packet over SONET/SDH)
PPP Header Shim Header Layer 3 Header
ATM Cell Header GFC VPI VCI PTI CLP HEC DATA
Label
Label
MPLS Encapsulation - ATM
ATM
ATMLSR
LSRconstrained
constrainedby
bythe
thecell
cellformat
formatimposed
imposedby
byexisting
existingATM
ATMstandards
standards
5 Octets
ATM Header
Format VPI VCI PT CLP HEC
48 Bytes
ATM Header
ATM Payload •••
4 Octets
Label Stack
Label Exp. S TTL
Entry Format
Label: Label Value, 20 bits (0-16 reserved)
Exp.: Experimental, 3 bits (was Class of Service)
S: Bottom of Stack, 1 bit (1 = last entry in label stack)
TTL: Time to Live, 8 bits
• Network layer must be inferable from value of bottom label of the stack
• TTL must be set to the value of the IP TTL field when packet is first labelled
• When last label is popped off stack, MPLS TTL to be copied to IP TTL field
• Pushing multiple labels may cause length of frame to exceed layer-2 MTU
• LSR must support “Max. IP Datagram Size for Labelling” parameter
• any unlabelled datagram greater in size than this parameter is to be fragmented
MPLS
MPLSon
onPPP
PPPlinks
linksand
andLANs
LANsuses
uses‘Shim’
‘Shim’Header
HeaderInserted
Inserted
Between Layer 2 and Layer 3 Headers
Between Layer 2 and Layer 3 Headers
Loop Detection and Prevention
• Time-to-live (TTL)
• Hop-count object in LDP
• Path Vector object in LDP
• Colored threads
Loops and TTL
LSR-1
LSR-2 LSR-3
IP packet Label = 25
TTL = 10
TTL=9
IP packet
TTL = 10
Label = 39
TTL=8
IP packet
TTL = 10
LSR-6
Label =21
IP packet
TTL=7 TTL = 6
IGP domain with a label Egress
distribution protocol LSR-4 IP packet LSR-5
TTL = 10
• Copying the IP TTL into the MPLS header when the packet is first labeled
• Decrementing the MPLS TTL at each LSR
• Copying the TTL from the MPLS header back into the IP TTL field when
the label header is removed at the egress of the MPLS domain
Reserved Label Values
• 1. “Router Alert”
tell the Router to pay more attention to packet than simply forwarding it
• LDP
Label distribution protocol
• BGP
Border gateway protocol
• PIM
Protocol independent multicasting
• RSVP
Resource reservation protocol
The protocol that allows an endpoint to request a flow with
specific QoS; router along the path to the destination must
agree before they approve the request
QoS
CBR
TE
VPN
MPLS
Marketing
Further topics in MPLS Brainstorm
POP4
WAN area
POP1
POP5
POP2
POP6
POP3
Quality of Service routing
RtrB
RtrF
RtrA RtrE
RtrG
RtrC RtrD
Path Calculation
RtrA
Path Calculation
RtrB
RtrA
RtrC
Path Calculation
RtrB
RtrA
RtrC RtrD
Path Calculation
RtrB
RtrA RtrE
RtrC RtrD
Path Calculation
RtrB
RtrF
RtrA RtrE
RtrG
RtrC RtrD
Path Calculation
RtrB
RtrF
RtrA RtrE
RtrG
RtrC RtrD
Path Calculation
RtrB
RtrF
RtrA RtrE
RtrG
RtrC RtrD
Path Calculation
RtrB
RtrF
RtrA RtrE
RtrG
RtrC RtrD
Path Calculation
DS3
RtrC RtrD
Path Calculation
RtrA
Path Calculation
OC3
RtrA
OC3
RtrC
Path Calculation
OC3
RtrA
OC3
DS3
RtrC RtrD
Path Calculation
OC3
RtrA RtrE
DS3
OC3
DS3
RtrC RtrD
Path Calculation
DS3
RtrC RtrD
Path Calculation
DS3
RtrC RtrD
Path Calculation
DS3
RtrC RtrD
Path Calculation
DS3
RtrC RtrD
Path Calculation
OC3
DS3
RtrC RtrD
Path Calculation
DS3
RtrC RtrD
Path Calculation
RtrA
Path Calculation
OC3
RtrA
OC3
RtrC
Path Calculation
OC3
RtrA
OC3
DS3
RtrC RtrD
Path Calculation
OC3
RtrA RtrE
5MB
OC3
DS3
RtrC RtrD
Path Calculation
OC3
RtrA RtrE
5MB
OC3
DS3
RtrC RtrD
Path Calculation
OC3
RtrA
OC3
DS3
RtrC RtrD
Path Calculation
RtrA
OC3
DS3
RtrC RtrD
Path Calculation
RtrA RtrE
OC3 DS3
DS3
RtrC RtrD
Path Calculation
RtrG
OC3
OC3 DS3
DS3
RtrC RtrD
Path Calculation
RtrA RtrE
RtrG
OC3
OC3 DS3
DS3
RtrC RtrD
Path Calculation
RtrB
RtrF
OC3
RtrA RtrE OC3
DS3
RtrG
OC3
OC3 DS3
DS3
RtrC RtrD
References
Rosen E, Viswanathan A.
Multiprotocol Label Switching Architecture, RFC 3031, January 2001.
Davie B, Rekhter Y.
MPLS: Technology and Applications. Morgan Kaufmann Publishers: New York,
2000.