1.
Abstract…………………………………………………………………………………………………3
2.
MPLS Characteristics…………………………………………………………………3
3.
Label Edge routers and Label Switch routers……4
4.
Forward Equivalence Class……………………………………………………4
5.
Labels and Label binding………………………………………………………5
6.
Label Creation…………………………………………………………………………………6
7.
Label Distribution………………………………………………………………………7
8.
Label Swapping Forwarding Algorithm…………………………7
9.
Label Switched Path (LSP)……………………………………………………9
10.
MPLS Operations………………………………………………………………………………10
11.
MPLS Advantages………………………………………………………………………………12
12.
MPLS Disadvantages………………………………………………………………………13
13.
Reference………………………………………………………………………………………………13
In early 1997, the Internet Engineering Task Force (IETF) established the Multiprotocol Label Switching (MPLS) working group to produce a unified and interoperable multilayer switching standard as each vendor (Cisco Systems, Lucent, and so on) developed a proprietary multilayer switching solution, maintaining the IP control component and label-swapping components in different ways. The majority of these multilayer switching solutions required an ATM transport because they could not operate over mixed media infrastructures, such as Frame Relay, PPP,
SONET, and LANs.
MPLS performs the following functions:
It specifies mechanisms to manage traffic flows of various granularities, such as flows among different hardware, machines, or even flows among different applications.
It remains independent of the Layer 2 and Layer 3 protocols.
It provides a means to map IP addresses to simple, fixed-length labels used by different packet-forwarding and packet-switching technologies.
It interfaces to existing routing protocols such as Resource Reservation
Protocol (RSVP) and Open Shortest Path First (OSPF).
It supports the IP, ATM, and frame-relay Layer 2 protocols.
Multi Protocol Label Switching is a versatile solution to address the problems faced by present day networks – speed, scalability, Quality of Service (QoS) management, traffic engineering.
The devices that participate in the MPLS Protocol mechanisms can be classified into label-edge routers (LERs) and label-switching routers (LSRs).
An LSR is a high-speed router device in the core of an MPLS network that participates in the establishment of LSPs using the appropriate label signaling protocol and high-speed switching of the data traffic based on the established paths.
An LER is a device that operates at the edge of the access network and MPLS network. LERs support multiple ports connected to dissimilar networks (such as frame relay, ATM, and Ethernet) and forward this traffic on to the MPLS network after establishing LSPs. LERs use the label-signaling protocol at the ingress and distribute the traffic back to the access networks at the egress. LERs play an important role in the assignment and removal of labels, as traffic enters or exits an
MPLS network.
A forward equivalence class (FEC) is a representation of a group of packets that share the same requirements for their transport. All packets in such a group are provided the same treatment en route to the destination. As opposed to conventional
IP forwarding, in MPLS, the assignment of a particular packet to a particular FEC is done just once, as the packet enters the network. FECs are based on service requirements for a given set of packets or simply for an address prefix. Each LSR builds a table to specify how a packet must be forwarded. This table, called a label information base (LIB), comprises FEC-to-label bindings.
A label, in its simplest form, identifies the path that a packet should traverse. A label is carried or encapsulated in a Layer 2 header along with the packet. The receiving router examines the packet for its label content to determine the next hop. After a packet has been labeled, the rest of the journey of the packet through the backbone is based on label switching. The label values are of local significance only, meaning that they pertain only to hops between LSRs. After a packet has been classified as a new or existing FEC, a label is assigned to the packet. The label values are derived from the underlying data link layer. These data link layer identifiers, such as Frame
Relay DLCIs or ATM VPI/VCIs, can be used directly as labels. The packets are then forwarded based on their label value.
Labels are bound to an FEC as a result of some event or policy that indicates a need for such binding. These events can be either data-driven bindings or control-driven bindings. The latter is preferable because of its advanced scaling properties that can be used in MPLS.
Label assignment decisions can be based on forwarding criteria such as the following:
Destination unicast routing
Traffic engineering (TE)
Multicast
Virtual private network (VPN)
Quality of Service (QoS)
Topology-based method – uses normal processing of routing protocols (such as OSPF and BGP)
Request-based method – uses processing of request-based control traffic (such as RSVP)
Traffic-based method – uses the reception of a packet to trigger the assignment and distribution of a label
The topology- and request-based methods are examples of control-driven label bindings, while the traffic-based method is an example of data-driven binding
MPLS architecture dose not mandate a single method of signaling for label distribution. Existing routing protocols, such as the border gateway protocol (BGP), have been enhanced to piggyback the label information within the contents of the protocol. The RSVP has been extended to support piggybacked exchange of labels.
The IETF has also defined a new protocol known as the label distribution protocol
(LDP) for explicit signaling and management of the label space.
A summary of the various schemes for label exchange is as follows:
LDP – maps unicast IP destination into labels
RSVP,CR-LDP – used for traffic engineering and resource reservation
Protocol-independent multicast (PIM) – used for multicast states label mapping
BGP – external labels (VPN)
MPLS's forwarding component is based on a label-swapping forwarding algorithm—the same algorithm used to forward data in ATM and Frame Relay switches. The label-swapping forwarding algorithm requires packet classification at the ingress edge of the network to assign an initial label to each packet described in the following list. Figure 27-2 illustrates the path of an unlabeled packet with a destination of 192.4.2.1.
Figure 27-2. Packet Traversing a Label-Switched Path
1. The ingress label switch receives an unlabeled packet with a destination address of 192.4.2.1.
2. The label switch performs a longest-match routing table lookup and maps the packet to an FEC—192.4/16.
3. The ingress label switch then assigns a label (with a value of 5) to the packet and forwards it to the next hop in the label-switched path (LSP). This next hop is specified as an outgoing interface on the LSR.
4. This process repeats until the destination interface is reached and the packet is delivered to the intended destination network, via the specified outgoing interface. When the last LSR is reached, the delivered packet has been stripped, or "popped," of its last label.
In the network core, label switches ignore the packet's network layer header and forward the packet based on decisions made using the label-swapping algorithm.
When a labeled packet arrives at a switch, the forwarding component uses the input port number and label as an index to perform an exact match search of its forwarding table. After the forwarding component finds a match, it retrieves the outgoing label, the outgoing interface, and the next-hop address from the forwarding table. The forwarding component then swaps (or replaces) the incoming label with the outgoing label and directs the packet to the outbound interface for transmission to the next hop in the LSP.
When the labeled packet arrives at the egress label switch, the forwarding component searches its forwarding table.
If the next hop is not a label switch, the egress switch discards the label and forwards the packet using conventional longest-match IP forwarding.
A collection of MPLS-enabled devices represents an MPLS domain. Within an
MPLS domain, a path is set up for a given packet to travel based on an FEC. The
LSP is set up prior to data transmission.
MPLS provides two options to set up an LSP
hop-by-hop routing
Each LSR independently selects the next hop for a given FEC. This methodology is similar to that currently used in IP networks. The LSRs support any available routing protocols (OSPF, ATM …).
explicit routing
Explicit routing is similar to source routing. The ingress LSR (i.e., the LSR where the data flow to the network first starts) specifies the list of nodes through which the packet traverses. The path specified could be non-optimal, as well. Along the path the resources may be reserved to ensure QoS to the data traffic. This eses traffic engineering through out the network, and differentiated services can be provided using flows based on policies or network management methods.
The LSP setup for an FEC is unidirectional. The return traffic must take another
LSP.
The following steps must be taken for a data packet to travel through an MPLS domain.
label creation and distribution
table creation at each router
label-switched path creation
label insertion/table lookup
packet forwarding
The source sends its data to the destination. In an MPLS domain, not all of the source traffic is necessarily transported through the same path. Depending on the traffic characteristics, different LSPs could be created for packets with different requirements.
Label creation and label stribution
Before any traffic begins the routers make the decision to bind a label to a specific FEC and build their tables.
In LDP, downstream routers initiate the distribution of labels and the label/FEC binding.
In addition, traffic-related characteristics and MPLS capabilities are negotiated using LDP.
A reliable and ordered transport protocol should be used for the signaling protocol.
Table creation
On receipt of label bindings each LSR creates entries in the label information base (LIB).
The contents of the table will specify the mapping between a label and an FEC.
mapping between the input port and input label table to the output port and output label table.
The entries are updated whenever renegotiation of the label bindings occurs.
Example of LIB Table
Input Port Incoming Port Label Output Port Outgoing Port Label
1 3 3 6
2 9 1 7
Label switched path creation
The LSPs are created in the reverse direction to the creation of entries in the LIBs.
Label insertion/table-lookup
The first router (LER1) uses the LIB table to find the next hop and a label for the specific FEC.
Subsequent routers just use the label to find the next hop.
Once the packet reaches the egress LSR (LER4), the label is removed and the packet is supplied to the destination.
Packet forwarding
LER1 may not have any labels for this packet as it is the first occurrence of this request. In an IP network, it will find the longest address match to find the next hop. Let LSR1 be the next hop for LER1.
LER1 will initiate a label request toward LSR1.
This request will propagate through the network as indicated by the broken green lines.
Each intermediary router will receive a label from its downstream router starting from LER2 and going upstream till LER1. The LSP setup is indicated by the broken blue lines using LDP or any other signaling protocol.
LER1 will insert the label and forward the packet to LSR1.
Each subsequent LSR, i.e., LSR2 and LSR3, will examine the label in the received packet, replace it with the outgoing label and forward it.
When the packet reaches LER4, it will remove the label because the packet is departing from an MPLS domain and deliver it to the destination.
The actual data path followed by the packet is indicated by the broken red lines.
Improves packet-forwarding performance in the network
Supports QoS and CoS for service differentiation
Supports network scalability
Integrates IP and ATM in the network
Builds interoperable networks
An additional layer is added
The router has to understand MPLS
http://www.iec.org/online/tutorials/mpls.
Cisco Press-Network Consultants Handbook-by Mathew Castelli.pdf
http://www.iaik.tugraz.ac.at/teaching/03_advanced%20computer%20networks
/ss2004/vo3/MPLS.pdf
by Mario Ivkovic
http://ica1www.epfl.ch/cn2/0304/doc/lecture/mpls.pdf
Encyclopedia of Netwoking.pdf