MPLS - Multi Protocol Label Switching (an introduction)

advertisement
Table of Contents
MPLS
Multi Protocol Label Switching (an introduction)
Karst Koymans
Cosmin Dumitru
Informatics Institute
University of Amsterdam
Faster IP forwarding
ATM and MPLS
MPLS Operation
Labels, paths and switching
MPLS Control and Label Management
(version 1.4, 2013/03/14 15:51:41)
Thursday, March 14, 2013
IP Forwarding
MPLS Applications
MPLS VPN techniques
ATM (Asynchronous Transfer Mode)
I
I
Forwarding IP packets
I
I
I
I
Normally done by destination IP address
Routing protocols are used to distribute layer 3 information
Decisions are made hop-by-hop independently
I
I
I
Connectionless operation
Routing protocol should offer consistency
I
I
I
I
I
I
Often data needs to be fragmented
Switching based on labels
I
I
Search time is ≈ O(log N) for table of size N
I
Limited traffic engineering options
Layer 2 and layer 3 information is unrelated
I
I
A fixed size header of 5 bytes
A fixed size payload of 48 bytes
Uses VCs (Virtual Circuits) between endpoints
Routing tables may become very large
I
Each cell contains 53 bytes
I
Shortcomings
I
Uses small fixed size cells to transport data
An 8-bit (UNI) or 12-bit (NNI) Virtual Path Identifier (VPI)
An 16-bit Virtual Channel Identifier (VCI)
Switching lookup is now O(1)
Promises QoS, for instance low jitter
Higher level protocols use the ATM Adaptation Layer (AAL)
MPLS (Multi Protocol Label Switching)
I
I
Defined in RFC 3031
Combine the best of both worlds
I
I
I
I
Packet forwarding
Circuit switching
Route at the edges, switch at the core
Agnostic to the protocol used at layer 2
Label Switching
I
I
I
MPLS Network
Multi Protocol
I
I
MPLS Network
Uses labels instead of IP addresses
Routing at the speed of switching
Hybrid, “layer 2.5”, shim protocol
MPLS Label (RFC 3032)
LER (Label Edge Router)
LSR (Label Switching Router)
0
19 20
22 23 24
Exp S
Label
31
TTL
I
Label Edge Router
I
MPLS packet label fields
I
I
Label
Exp(erimental)1
S(tack)
T(ime) T(o) L(ive)
1
Per router local semantics
Class of Service
Bottom of stack indication
Incoming IP TTL
Renamed to TC (Traffic Class) by RFC 5462
I
Positioned at the edge of the MPLS network
Adds or removes labels for incoming and outgoing traffic
Also called Edge Label Switch Router (eLSR)
Label Switch Router
I
I
I
Positioned in the core of the MPLS network
Swaps labels and forwards packets
Does not need to know about IP forwarding
FEC (Forwarding Equivalence Class) and
LSP (Label Switched Path)
I
I
Mapping between previous hop (incoming port, label) and
FEC
I
Mapping between FEC and next hop (outgoing port, label)
Each router has its own LIB
Forwarding Equivalence Class
I
I
I
I
LIB (Label Information Base)
Packets which are forwarded in the same manner
Each label on a link determines a unique FEC
Every FEC is associated with a certain LSP
Label Switched Path
I
I
I
I
5
Incoming Port Label
green
red
Output Port
3
1
Outgoing Port Label
blue
orange
Control Plane
I
Exchange layer 3 and label information
I
1. Classify into FEC green
MPLS Network
4
Generates an LFIB (Label Forwarding Information Base)
MPLS Separation of Control and Data
0. Receive IP packet at edge
router
3
Details are implementation dependent
Input Port
1
2
Hop-by-hop routing
Explicit routing
MPLS Operation (continued)
I
2. Push (label green)
3. Swap (label green, label red)
2
I
Sequence of intermediate routers on same stack depth
on the path from ingress to egress router
I
1
I
6
4. Swap (label red, label blue)
5. Pop (label blue)
6. Forward IP packet to
destination
I
Several label distribution protocols (LDP, CR-LDP, RSVP-TE)
Also piggybacked on routing protocols (OSPF-TE, ISIS-TE,
MP-BGP)
Data Plane
I
Switch (forward) packets based on labels
I
I
I
I
I
Push (ingress)
Swap (intermediate)
Swap and push (start LSP tunnel)
Pop and swap (end LSP tunnel)
Pop (egress)
LDP (Label Distribution Protocol)
I
I
UDP discovery and TCP session with peers
Adjacent LSRs inform each other of the label bindings
I
I
Downstream LSR determines the label
On demand or unsolicited
I
An IGP protocol is configured on all LSRs
I
New IGP routes lead to new label bindings
I
Labels can be withdrawn when IGP routes are no longer valid
Hard-state
I
I
Extension of RSVP
I
I
Unreliable delivery (protocol 46; sometimes UDP)
Soft-state
I
Information needs to be periodically refreshed
I
An LSP is created by propagating an RSVP message to the
endpoint
I
Paths are terminated if not refreshed on time
Applications (2)
TE (Traffic Engineering)
I
I
I
I
I
I
Expected to work until explicitly torn down
Applications (1)
I
RSVP-TE
(Resource Reservation Protocol – Traffic Engineering)
Traffic steering across network in order to fully utilize resources
With the help of RSVP-TE and OSPF-TE or IS-IS-TE
Full network view (OSPF, IS-IS) and extra information about
link state
RSPV-TE creates LSPs on demand
QoS (Quality of Service)
I
I
I
Different types of service across the network
Enforcing drop probability, bandwidth and delay (queueing)
CoS bits or FEC (destination + class of service)
I
VPN (Virtual Private Network)
I
I
I
I
I
Private connections over shared networks
Layer 2 or layer 3 based
Business can choose the needed type of service
Stacked labels: egress router and VPN identity
LDP (layer 2) or BGP (layer 3) is used to transport label
information
Layer 2 VPN (1)
I
AToM (Any Transport over MPLS)
I
Transports layer 2 frames over an MPLS Network
I
I
ATM, Frame-Relay, PPP, Ethernet
Point-to-point service
I
I
From ingress router/interface to egress router/interface
Identified by using an inner label
Layer 3 VPN
I
Uses the MP-BGP (Multi Protocol BGP) extension of BGP
I
Introduces the VPN-IPv4 address family
I
Extends the 32-bit IPv4 address with a 64-bit RD (route
distinguisher)
I
A BGP route for VPN-IPv4 includes an MPLS label
Each VPN has its own VRF (VPN Routing and Forwarding)
instance
I
I
I
I
Keeping separate routing tables for the VPNs
Also separate from the global routing table
MPLS forwarding uses stacked labels
I
I
Outer label for LSP forwarding
Inner label to differentiate between different VPNs
Layer 2 VPN (2)
I
VPLS (Virtual Private LAN Service)
I
I
I
Transports layer 2 frames over an MPLS Network
Works multipoint-to-multipoint
The IP/MPLS core operates as a big virtual switch
I
I
Outer label used for normal MPLS forwarding
Inner label used for VPLS instances
Download