multiprotocol label switching (mpls)
DESCRIPTION
Multiprotocol Label Switching (MPLS). Sookyoung Lee. Agenda. Problems of traditional IP routing Motivations for MPLS Objectives of MPLS What is MPLS? Label, FEC, LIB, LER, LSR, and LSP How MPLS works? LDP, CR-LEP, TE-RSVP Main capabilities of MPLS - PowerPoint PPT PresentationTRANSCRIPT
Multiprotocol Label Switching(MPLS)
Sookyoung Lee
Agenda
Problems of traditional IP routing Motivations for MPLS Objectives of MPLS What is MPLS?
Label, FEC, LIB, LER, LSR, and LSP How MPLS works?
LDP, CR-LEP, TE-RSVP Main capabilities of MPLS
Connection-oriented QoS Support, Traffic Engineering, VPN support, Multiprotocol Support
References
Problems of traditional IP routing
Problem of Traditional IP Routing Longish latency at every hop
Header analysis Routing table lookup based on the IP address Replace the layer 2 address
No assurance how a packet will travel Some congested links and some underutilized links
No QoS - all packets are treated equally No capability to prioritize packets between different h
osts and of different applications
Motivation for MPLS
Rapid growth of Internet Increase in traffic volumesVoice and data convergence on a single
network infrastructureNew latency dependent applicationsEver-increasing number of ISP networksStill IP protocol suite popular – the most
predominant networking technology
Objectives of MPLS
Speed up IP packet forwarding By cutting down on the amount of processing at
every intermediate routerPrioritize IP packet forwarding
By providing ability to engineer traffic flow and assure differential QoS
Without losing on the flexibility of IP based network
What is MPLS?
A technology to switch (forward) a packet at a high speed at layer 2 using fixed length labels obtained from layer 3 routing information. Integration of layer 2 and layer 3 IP supplements
MPLS and ISO model MPLS Architecture MPLS terminology MPLS Cloud
MPLS and ISO model
No modification needed on the existing layers when MPLS layer is added.
MPLS must be backward compatible.
PPP
Physical (Optical - Electrical) 1
2
IP 34
Applications7to5
FrameRelay ATM (*)
TCP UDP
PPP FR ATMMPLS
MPLS Architecture
Routing protocol OSPF OSPF OSPF
Attributes Precedence
Local tableLabel table Local table Local table
LSP Label swapping Label removalClassificationLabel assignment
IngressNode
CoreNode
EgressNode
Label SwitchLayer 2
Layer 1
Layer 2
Layer 1
Layer 2
Layer 1
Layer 2
Layer 1
Layer 2
Layer 1
FEC table Local table Local table Local table
MPLS terminology
Label and Label Stack
FEC – Forward Equivalence Class LIB – Label Information Base
LER – Label Edge Router LSR – Label Switching Router
LDP – Label Distribution Protocol LSP – Label Switched Path
Label A short, fixed length identifier (32
bits) Sent with each packet Local between two routers Can have different labels if entering
from different routers One label for one FEC Decided by the downstream router
LSR binds a label to an FEC It then informs the upstream LSR
of the binding Different depending on layer 2
technology ATM: VCI/VPI field of ATM header Frame Relay: DLCI field of FR
header PPP/LAN: ‘shim’ header inserted
between layer 2 and layer 3
ATM-MPLS label
S: bottom of stack bitExp: Experimental
Label EXP S TTL
20bits 3bits 8bits132bits
DLL header label stack entry NL header L3 data1 to many
PTIVCIVPIGFC CLP HEC DATA
Label
Label StackLayer 2 Header Label 3 IP PacketLabel 2 Label 1
MPLS Domain 1
MPLS Domain 2
MPLS Domain 3
Slide by ByTamrat Bayle, Reiji Aibara, Kouji Nishimura
MPLS supports hierarchy. Each LSR processes the
topmost label. If traffic crosses several
networks, it can be tunneled across them
Advantage – reduces the LIB table of each router drastically
FEC (Forward Equivalence Class) A group of packets that require the same forwarding treatment acros
s the same path grouped based on
Address prefix Host address QoS
FEC is encoded as a label
Assume packets have the destination address and QoS requirements as 124.48.45.20 qos = 1 143.67.25.77 qos = 1 143.67.84.22 qos = 3 124.48.66.90 qos = 4 143.67.12.01 qos = 3
FEC –1 label a FEC – 2 label b FEC – 3 label c FEC – 4 label d 143.67.25.77 124.48.45.20 143.67.84.22 124.48.66.90 143.67.12.01
MPLS Cloud
LSR
Egress LER
LSR
Ingress LER
IP PacketIP Packet w/ Label
L3 RoutingL3 Routing
Label SwappingLabel Swapping
LER
LERLER
L3 RoutingL3 Routing
L3 Routing
LSP
LER Can be an ATM switch or a router Ingress LER performs the following:
Receives the packet Adds label Forwards the packet into the MPLS domain
Egress LER removes the label and delivers the packet
LSR A router/switch that supports MPLS Can be a router Can be an ATM switch + label switch controller Label swapping
Each LSR examines the label on top of the stack Uses LIB to decide the outgoing path and the outgoing label Removes the old label and attaches the new label Forwards the packet on the predetermined path
LSP LSP defines the path through LSRs from ingress to egress router FEC is determined at the LER-ingress LSPs are unidirectional LSP might deviate from the IGP shortest path
LSR
OrdinaryIP Router
Label Distribution Protocol (LDP)
LDP is the set of procedures and messages For LSRs to establish LSPs through a network by mapping network-layer routing information directly to
data-link layer switched paths. associates a FEC with each LSP it creates.
Currently, several protocols used as LDP are available: CR-LDP, RSVP-TE: Provides functionality for traffic engi
neering and QoS Multiprotocol extentions of BGP-4
LDP messages
Discovery Messages - UDP Used to announce and maintain the presence of an LSR in a net
work LSRs multicast these messges periodically to 224.0.0.2 and all r
outers listen to this group Session Messages - TCP
used to establish, maintain and terminate sessions between LDP peers
Advertisement Messages - TCP create, change and delete label mappings for FECs
Notification Messages - TCP Used to provide advisory information and to signal error informati
on
Label Distribution Methods
Unsolicited Downstream Label Distribution
Rd discovers a ‘next hop’ for a particular FEC
Rd generates a label for the FEC and communicates the binding to Ru
Ru inserts the binding into its forwarding tables
Downstream on Demand Label Distribution
Ru recognizes Rd as its next-hop for an FEC
A request is made to Rd for a binding between the FEC and a label
If Rd recognizes the FEC and has a next hop for it, it creates a binding and replies to Ru
Label-FEC Binding Label-FEC Binding
Request for BindingRu Rd RdRu
Rd and Ru are said to have LDP adjacencyLDP adjacency
Unsolicited Downstream
MPLS switch
MPLS switch
MPLS switch
MPLS switch1
2
3
1 2
3
1
2
3
41
2
3
138.120
192.168127.20
Mapping 12Mapping 5
5 1212
5
IngressInterface
IngressLabel
FEC EgressInterface
EgressLabel
1 138.120 3
IngressInterface
IngressLabel
FEC EgressInterface
EgressLabel
1 138.120 x4
3
IngressInterface
IngressLabel
FEC EgressInterface
EgressLabel
1 x 138.120
The downstream node defines the label and advertises it to the upstream node.
Downstream stream on demand
Mapping 12Mapping 5
5 12
IngressInterface
IngressLabel
FEC EgressInterface
EgressLabel
1 138.120 312
IngressInterface
IngressLabel
FEC EgressInterface
EgressLabel
1 138.120 x4
53
IngressInterface
IngressLabel
FEC EgressInterface
EgressLabel
1 x 138.120
Request 138.120Request 138.120
MPLS switch
MPLS switch
MPLS switch
MPLS switch1
2
3
1 2
3
1
2
3
41
2
3
138.120
192.168127.20
The label is requested by the upstream node and the downstream node defines the label used.
Label Distribution and Management Label Distribution Control Mode
Independent LSP control: Each LSR makes independent decision on when to generate labels and communicate them to upstream peers
Ordered LSP control Label-FEC binding is communicated to peers if:
• LSR is the ‘egress’ LSR to particular FEC• Label binding has been received from upstream LSR
Used for explicit routing
Label Retention Mode Conservative – LSR maintains only valid bindings Liberal - LSR maintains bindings other than the valid next hop, more
label, quick adaptation for routing change
Label Advertisement Mode Downstream allocation Downstream-on-Demand allocation
Label Information Base (LIB)
Table maintained by the LSRs Contents of the table
Incoming label Outgoing label Outgoing path Address prefix
Incoming label
Address Prefix Outgoing Path
Outgoing label
MPLS forwarding example
128.89.25.4
128.89.*.*
171.69.*.*
data
InLabel
Address P refix
OutIntf
1
1
0
OutLabel
X 128.89 1 4X 171.69 1 5... ... ...
InLabel
Address P refix
OutIntf
OutLabel
4 128.89 0 95 171.69 1 7... ... ... ...
InLabel
Address P refix
OutIntf
OutLabel
9 128.89 0 XX 171.69 2 5... ... ... ...
2 0
...
128.89.25.4 data4128.89.25.4 data9
128.89.25.4 data
MPLS Protocol Stack
IP
PHY
Layer2
IP
Layer2
PHYPHY
Layer2
PHY
Layer2
PHY
Layer2
IP
Layer2
PHYPHY
Layer2
IP
PHY
Layer2
End System End System
CoreMPLS
Network
LER LER
Core LSR
MPLS Network
IP
TCP/UDPRoutingProtocol
IP
TCP/UDPRoutingProtocol
IP
TCP/UDPRoutingProtocol
MPLS Control protocol Stack Architecture
MPLS Data Protocol Stack Architecture
MPLS Interworking Architecture
LER LER
LER Core LSR LER
LDP LDP LDP
MPLSMPLSMPLS
End System
End System
Four main capabilities of MPLS
Connection-oriented QoS Support
Traffic Engineering
VPN support
Multiprotocol Support
Connection-oriented QoS Support
Connection-oriented network has powerful traffic management and QoS capabilities.
MPLS imposes a connection-oriented framework on a connecti
onless IP-based Internet providing the foundation for sophisticated and reliable QoS traffic contracts.
Flow-by-flow QoS (End-to-end) not packet-by-packet QoS (Hop-by-hop)
Traffic Engineering (TE)
What is TE? Dynamically define routes Maximize Bandwidth Utilization by spreading the network traffic
across network Ensure available spare link capacity for re-routing traffic on failur
e Meet policy requirements imposed by the network operator
MPLS has a primitive form of automated TE. is aware of flows of packet not just individual packets With MPLS, Routes are changed on a flow-by-flow basis (Explici
t routing), instead of simply changing the route on a packet-by-packet basis
Constrained-Based Routed LDP (CR-LDP) Modified LDP to set up the “Explicit Routing (ER-LSP)” Strict ER-LSP: Specifies list of nodes using actual address of each n
ode to traverse. Loose ER-LSP: Specifies list of nodes to act as one of the ‘abstract’
nodes to traverse. It can co-exist with the pure LDP. Introduces additional constraints (new parameters) for traffic regulati
on
LER1 LSR2 LSR3 LER4
Advantages of Explicit Routing Can use routes other than shortest path Operator has routing flexibility Traffic engineeringTraffic engineering
Explicitly Routed LSP
End-to-End forwarding decision determined by ingress node. Enables Traffic Engineering
LER 1
LSR 2 LSR 3
LER 4
Forward toLSR 2LSR 3LSR 4LSR X
Overload !!
Overload !!
CR-LDP Traffic Engineering
QoS and Traffic parameters Path Preemption Path Re-optimization Failure Notification Loop Detection LengthU F Traffic Para TLV
0 311 15
Excess Burst Size
Committed Burst Size
Committed Data Rate
Peak Burst Size
Peak Data Rate
Flags Frequency Reserved Weight
Peak Rate – Maximum rate at which traffic should be sent to CR-LDP
Committed Rate – The rate that the MPLS domain commits to be available to the CRLSP
Excess Burst Size – Measures the extent by which the traffic sent on CR-LSP exceeds the committed rate
Frequency – constraints delay
TE-RSVP QoS and Traffic parameters Failure Notification Loop Detection Multi Protocol Support Path Preemption
Slide by ByTamrat Bayle, Reiji Aibara, Kouji Nishimura
VPN support With VPN, the traffic of a given enterprises or group passes transparently through
the Internet in a way that effectively segregates that traffic from other packets on the Internet.
MPLS provides an efficient mechanism for supporting VPNs proving performance guarantees and security.
VPN A
VPN A
VPN B
VPN AVPN B
VPN
LDPVPN
LDPVPN
LDPVPN
P1
P2
P3
P4
P5
LSP - Label Switched Path
LDP
Multiprotocol Support
MPLS can be used on many networking technologies. MPLS supports IPv4, IPv6, IPX, AppleTalk at the network layer. MPLS supports Ethernet, Token Ring, FDDI, ATM, FR, PPP at t
he link layer.
Universal nature of MPLS MPLS enabled routers can coexist with ordinary IP routers. MPLS-enabled ATM switches and MPLS-enabled FR switches c
an be configured to co-exist wit ordinary ATM or FR switches.
MPLS is a good solution to optimize resources and expand QoS support over mixed network technologies.
References
MPLS Charter: http://www.ietf.org/html.charters/mpls-charter.html
MPLS Resource Center: http://www.mplsrc.com MPLS Forum: http://www.mplsforum.org
Basic RFCs RFC 3031/3032 MPLS Forwarding/Architecture RFC 3036 MPLS LDP Specification RFC 3215 LDP State Machine RFC 2205 MPLS Signaling RSVP RFC 3209 MPLS Signaling RSVP-TE