Download - Multi-Protocol Label Switching
MPLS
The Telecom Source10 Slide Technology Series
The Telecom Source
Introduction
MPLS stands for Multi-Protocol Label Switching
MPLS was originally introduced to improve the forwarding speed of routers
MPLS has now also emerged as a solution for meeting bandwidth management requirements in IP based backbone networks
Most IP routing protocols are based on shortest path through the network and do not consider metrics such as delay, jitter and traffic congestion.
MPLS addresses issues related to routing based on quality of service (QoS) metrics, and enables the efficient passage of data through the network
MPLS can exist over any data link layer (layer 2) technology including ATM and Frame Relay
The Telecom Source
Key Terms and Concepts
Destination IP addresses are mapped to MPLS labels when packets enter an MPLS network. These labels are attached to the packet.
MPLS routers forward packets based on the MPLS label of the packet rather than the destination IP address
There are two types of routers in an MPLS network Label Edge Routers (LER) are located at the edge of the network and interface with
multiple dissimilar networks such as ATM, Frame Relay and Ethernet and forwards this traffic on to the MPLS network after establishing data transmission paths. The LER assigns and removes MPLS labels on traffic entering or leaving the MPLS network
Label Switch Routers (LSR) are high speed routers in the core network that help establish the data transmission paths through the MPLS network and support high speed switching
Note that some vendors refer to LERs as provider edge (PE) routers and LSRs as provider (P) core routers
The data transmission paths through an MPLS network are referred to as label switched paths (LSP)
An LSP defines the ingress-to-egress path of a packet through an MPLS network. The LSP can be thought of as sequences of labels at each and every node along the path that determines the route of a packet through the network. LSPs are functionally equivalent to virtual circuits.
LSPs are established either prior to data transmission or upon the flow of data LSPs are connection oriented and unidirectional
The Telecom Source
Forward Equivalence Class
Forward Equivalence Class (FEC) is a set of packets that share similar transport requirements and are treated the same for forwarding purposes. FECs may be based a variety of characteristics including:
Destination unicast or multicast address (IP address or IP prefix);
Source address or virtual private network (VPN); Class of service; Various combinations of the above
A packet is assigned to an FEC by the LER as it enters the MPLS network. This operation is only done once for each packet
Packets are assigned labels at the LER based on the FEC to which the packet belongs. Labels are bound to FECs.
Each LSR has an associated forwarding table to specify how a packet is to be forwarded based on its label
The Telecom Source
MPLS Labels
MPLS labels are analogous to connection identifiers such as VPI/VCI in ATM and DLCI in Frame Relay.
MPLS label values are of local only to the link between adjacent LSRs and have no global significance
MPLS labels are simple, unstructured, fixed length identifiers.
MPLS labels are encapsulated in layer 2 headers if available or in standardized MPLS headers
If the layer 2 technology supports a label field such as ATM VPI/VCI or Frame Relay DLCI fields, the native label field encapsulates the MPLS label.
If the layer 2 technology does not support a label field, the MPLS label is encapsulated in a standardized MPLS header inserted between the layer 2 and IP headers. This permits any link layer technology to carry an MPLS label
Layer 2 header
MPLS header
IP header
User data
Label CoS S TTL
20 bits 3 bits 1 bit 8 bits
Label – carries the MPLS labelCoS – the class of service bits can be use to determine the
treatment of the packets in the networkStack (S) – this supports the hierarchical label stackTTL (time-to-live) – provides conventional IP time-to-live functionality
(32 bits)
MPLS Header Format
The Telecom Source
Forwarding Table
The forwarding table is a set of entries in a table that enable the MPLS router to determine how to forward incoming packets
The forwarding table associates incoming packet labels (“in-labels”) with out-going packet labels (“out-labels”) and interfaces
The incoming label uniquely identifies an entry in the forwarding table
Each entry in the forwarding table contains an interface-inbound label pair mapped to an interface-outbound label pair
The LSR examines the MPLS label on an incoming packet, performs an exact label match in the forwarding table, and determines the out-going label to attach to the packet and out-going interface on which to forward the packet
In-Interface In-Label Out-Interface Out-Label
… … … …
1 17 3 6
1 29 6 22
… … … …
MPLS Forwarding Table
The Telecom Source
Basic Forwarding Operation
At the ingress LER, each packet is classified as a new or existing FEC and assigned a label.
The LER maps incoming packets to FECs using a longest-match routing table look-up. The longest match algorithm selects the routing table entry with the most specific IP prefix that matches the destination IP address.
Once a packet has been labeled, the rest of the journey of the packet through the MPLS network is based on label switching
The LER forwards the packet on the appropriate egress interface as dictated by its forwarding table
Core LSRs use the input port and label combination to perform an exact match search of the forwarding table and determine the outgoing interface and label.
The receiving LSR examines the packet for its MPLS “in-label”. The LSR matches the in-label in its forwarding table and determines the appropriate out-label and egress interface. The in-label is replace by the out-label and the packet is forwarded on the appropriate egress interface.
The Telecom Source
Basic Forwarding Operation …cont’d
The above process continues until the packet arrives at the egress LER.
When a packet arrives at an egress LER, the LER searches its forwarding table for the next hop. If the next hop is not a label switch, the egress LER discards the label and forwards the packet using conventional longest-match IP forwarding
MPLS supports 2 methods of transmission: Hop-by-hop routing – each LSR selects the next hop based on FEC. The LDP,
CR-LDP and RSVP protocols can be used to establish hop-by-hop routing Explicit routing – the precise path from the ingress to the egress is specified.
Explicit routes may be strict where all the nodes are clearly specified, or loose, where all all the nodes are not specified.
IP addr Out label
10.1/16 3
Layer 2 transport
Assign label
In label
Out label
3 5
Swap label
In label Next Hop
5 126.5.5.1
Remove label
Layer 2 transport
10.1.5.1
Destination IP address
3
Label
5
Label
7
Label
In label
Out label
5 7
Swap label 10.1.5.1
Destination IP address
LER LERLSR LSR
Typical Forwarding Operation
The Telecom Source
Basic Control Operation
In order for MPLS routers to operate, the forwarding tables at each LER and LSR must be populated with the inbound to outbound interface and label mappings. The process is called LSP set-up or the label distribution process.
There are multiple protocols available for LSP set-up including: LDP – label distribution protocol (recommended protocol generally used) CR-LDP – constrained-based routing label distribution protocol RSVP – resource reservation protocol piggy-backing on routing protocols such as BGP and OSPF
Every label that is distributed must be bound to an entry in the forwarding table. This binding must be performed in the local LSR or be supplied by a remote LSR
MPLS uses downstream binding in which locally bound labels are used for incoming labels and remotely bound labels are used as outgoing labels. The MPLS labels are established as follows:
Incoming label is provided by creating a local binding between an FEC and the label
Outgoing label is provided by a remote binding between the FEC and the label Next hop is provided by the routing protocols. This is the FEC to next hop
mapping
The Telecom Source
MPLS Virtual Private Network Example
PE1 PE2
PE3
PE1 Route Output IF
Outer Label
Inner Lable
VRF Red
10.1/16 If_11 1001
10.2/16 If_1a 12 2001
10.3/16 If_1b 13 3001
VRF Blue
10.5/15 If_12 1002
10.4/16 If_1a 12 2002
VRF Green
10.1.16 If_13 1003
10.2/16 If_1b 13 3002
10.3/16 If_1b 13 3003
10.4/16 If_1a 12 2002
PE1 Route Output IF
Outer Label
Inner Lable
VRF Red
10.2/16 If_21 2001
10.1/16 If_2a 21 1001
10.3/16 If_2b 23 3001
VRF Brown
10.4/16 If_22 2002
10.1/16 If_2a 21 1003
10.2/16 If_2b 23 3002
10.3/16 If_2b 23 3003
10.5/16 If_2a 21 1002
PE1 Route Output IF
Outer Label
Inner Lable
VRF Red
10.3/16 If_31 3001
10.1/16 If_3b 31 1001
10.2/16 If_3a 32 2001
VRF Green
10.2/16 If_32 3002
10.3/16 If_33 3003
10.1/16 If_3b 31 1003
10.4/16 If_3a 32 2002
CE1
CE2
CE3
CE4
CE5
CE6
CE7CE8
VRF
VRF
VRF
VRF
VRF
VRFVRF
Site 1Red VPN10.1/16
Site 2Blue VPN10.5/16
Site 3Green VPN10.1/16
Site 4Red VPN10.2/16
Site 5Blue VPN & Green VPN10.4/16
Site 6Green VPN10.2/16
Site 7Green VPN10.3/16
Site 8Red VPN10.3/16
If_11
If_12
If_13
If_21
If_22
If_33If_31
If_32
Interface: if_11RD = RD_1Export target = redImport target = red
Interface: if_21RD = RD_4Export target = redImport target = red
Interface: if_33RD = RD_67Export target = greenImport target = green
red VPN
blue VPN
green VPN
green, blue VPNs
If_1b
If_1c
If_2b
If_2c
If_2bIf_2c
Interface: if_13RD = RD_3Export target = greenImport target = green
Interface: if_22RD = RD_5Export target = green, blueImport target = green, blue
The Telecom Source
MPLS Virtual Private Network Example …cont’d
The customer sites to which a service provider enables IP connectivity by applying a routing policy constitutes a VPN
Every PE maintains a number of VPN routing and forwarding tables (VRF)
Each site (CE) is associated with a forwarding table (VRF) based on the VPNs to which the site has membership
Two CEs being served by the same PE and belonging to the same VPN can be associated with the same VRF (e.g. sites 6 and 7)
A CE belonging to multiple VPN can be associated with a single VRF (e.g. site 5)
The RT and RD parameters must be defined at VRF creation time RT (router target) – enables the import/export of VPN routes to the relevant
remote sites RD (route distinguisher) – 8 byte prefix provides the ability to distinguish
between VPNs with overlapping IP addresses (e.g. site1 and site3 in diagram) For VPN sites to be attached and operational:
VPN routes must be distributed between PEs through the backbone (e.g. via BGP, RIP, OSPF). VPN routes are distributed as IPv4 routes prefixed with the RD
When a PE receives routes from a CE over a VRF sub-interface, it stores them in IPv4 format. In the VRF they are:
Associated to the VRF sub-interface Assigned a label value (VPN label or inner label)
Once the PE has learnt local routes from its CEs, it advertises them to the other PEs according to RD and route targets that were defined at VRF creation time
The Telecom Sourcewww.thetelecomsource.com