MPLS

advertisement
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
hosts and of different applications
Motivation for MPLS
Rapid growth of Internet
Increase in traffic volumes
Voice and data convergence on a single
network infrastructure
New latency dependent applications
Ever-increasing number of ISP networks
Still 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 router
Prioritize 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
7
to
5
Applications
TCP
PPP
PPP
UDP
IP
MPLS
Frame
4
3
ATM (*)
ATM
2
Physical (Optical - Electrical)
1
FR
Relay
 No modification needed on the existing layers when
MPLS layer is added.
 MPLS must be backward compatible.
MPLS Architecture
LSP
Routing protocol
FEC table
Attributes
Label table
Label Switch
Classification
Label assignment
Label swapping
Label removal
OSPF
OSPF
Local table
Local table
Local table
Local table
Local table
Layer 2
Layer 2
Layer 2
Layer 1
Layer 1
Layer 1
Core
Node
Egress
Node
OSPF
Local table
Precedence
Ingress
Node
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
32bits
20bits
3bits 1
Label
EXP
S
8bits
TTL
S: bottom of stack bit
Exp: Experimental
1 to many
DLL header
label stack entry
NL header
L3 data
ATM-MPLS label
GFC
VPI
VCI
Label
PTI
CLP
HEC
DATA
Label Stack
Layer 2 Header
Label 3
Label 2
Label 1
MPLS Domain 1
 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
Slide by ByTamrat Bayle, Reiji Aibara, Kouji Nishimura
MPLS Domain 2
MPLS Domain 3
IP Packet
FEC (Forward Equivalence Class)
 A group of packets that require the same forwarding treatment
across 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
 143.67.25.77

FEC – 2 label b
124.48.45.20
FEC – 3 label c
143.67.84.22
143.67.12.01
FEC – 4 label d
124.48.66.90
LSR




MPLS Cloud
IP Packet
IP Packet w/ Label
LER
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
L3 Routing
Ingress LER
Ordinary
IP Router
Egress LER
LSR
L3 Routing
L3 Routing
LER
LSP
LSR
Label Swapping
L3 Routing
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
LSP




LSR
Label Swapping
LER
L3 Routing
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
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
engineering and QoS
Multiprotocol extentions of BGP-4
LDP messages
 Discovery Messages - UDP
 Used to announce and maintain the presence of an LSR in a
network
 LSRs multicast these messges periodically to 224.0.0.2 and all
routers 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
information
Label Distribution Methods
Rd and Ru are said to have LDP adjacency
Ru
Rd
Label-FEC Binding
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
Ru
Request for Binding
Rd
Label-FEC Binding
Downstream on Demand
Label Distribution
 Ru recognizes Rd as its nexthop 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
Unsolicited Downstream
Ingress Ingress
Interface Label
1
5
Ingress Ingress
Interface Label
FEC Egress Egress
Interface Label
3
138.120
1
12
FEC Egress Egress
Interface Label
138.120
4
12
MPLS switch
3
1
4
138.120
1
127.20
2
MPLS switch
1
3
3
2
3
2
1
1
x
FEC Egress Egress
Interface Label
138.120
3
5
192.168
2
MPLS switch
Ingress Ingress
Interface Label
MPLS switch
The downstream node
defines the label and
advertises it to the
upstream node.
x
Downstream stream on demand
Ingress Ingress
Interface Label
1
5
Ingress Ingress
Interface Label
FEC Egress Egress
Interface Label
3
138.120
1
12
FEC Egress Egress
Interface Label
138.120
4
x
12
MPLS switch
3
1
4
138.120
1
127.20
2
MPLS switch
1
3
3
2
3
2
1
1
x
FEC Egress Egress
Interface Label
138.120
3
5
192.168
2
MPLS switch
Ingress Ingress
Interface Label
MPLS switch
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
In Address
Label Prefix
Out Out
Intf Label
In Address
Label Prefix
Out Out
Intf Label
In Address
Label Prefix
Out Out
Intf Label
X
128.89
1
4
4
128.89
0
9
9
128.89
0
X
X
171.69
1
5
5
171.69
1
7
X
171.69
2
5
...
...
...
...
...
...
...
...
...
...
...
...
0 128.89.*.*
2
128.89.25.4 data
0
1
9 128.89.25.4 data
128.89 .25.4 data
4 128.89.25.4 data
1
171.69.*.*
MPLS Protocol Stack
LER
LER
Core
MPLS
Network
End System
End System
MPLS Network
MPLS Interworking Architecture
LER
Routing
Protocol
Core LSR
LDP
TCP/UDP
Routing
Protocol
IP
LDP
TCP/UDP
LER
Routing
Protocol
IP
LDP
TCP/UDP
IP
MPLS Control protocol Stack Architecture
End
System
LER
IP
IP
Core LSR
MPLS
Layer2
PHY
MPLS
End
System
IP
IP
MPLS
Layer2
PHY
LER
Layer2
Layer2
Layer2
Layer2
PHY
PHY
PHY
PHY
MPLS Data Protocol Stack Architecture
Layer2
Layer2
PHY
PHY
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
connectionless 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
failure
 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 (Explicit
routing), instead of simply changing the route on a packet-bypacket 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
node 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
regulation
LER1
LSR2
LSR3
 Advantages of Explicit Routing
 Can use routes other than shortest path
 Operator has routing flexibility
 Traffic engineering
LER4
Explicitly Routed LSP
Overload !!
LER 1
Overload !!
Forward to
LSR 2
LSR 3
LSR 4
LSR X
LSR 2
LER 4
LSR 3
 End-to-End forwarding decision determined by ingress
node.
 Enables Traffic Engineering
CR-LDP Traffic Engineering





QoS and Traffic parameters
Path Preemption
Path Re-optimization
0 1
Failure Notification
U F
Loop Detection
Traffic Para TLV
Flags
Frequency
15
31
Length
Reserved
Peak Data Rate
 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
Peak Burst Size
Committed Data Rate
Committed Burst Size
Excess Burst Size
Weight
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.
LSP - Label Switched Path
VPN A
LDP
VPN
VPN B
LDP
VPN
LDP
VPN
VPN B
P3
P5
P1
LDP
VPN
VPN A
VPN A
P2
P4
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
the link layer.
 Universal nature of MPLS
 MPLS enabled routers can coexist with ordinary IP routers.
 MPLS-enabled ATM switches and MPLS-enabled FR switches
can 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/mplscharter.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
Download