MPLS (Multiprotocol Label Switching) Detailed explanation - Technopediasite

.

Tuesday, September 25, 2018

MPLS (Multiprotocol Label Switching) Detailed explanation

Posted By: technopediasite
Multiprotocol Label Switching (MPLS)
MPLS System

Definition
Multiprotocol label switching (MPLS) is a versatile solution to address the problems faced by present-day networks—speed, scalability, quality-of-service (QoS) management, and traffic engineering. MPLS has emerged as an elegant solution to meet the bandwidth-management and service requirements for next-generation Internet protocol (IP)–based backbone networks. MPLS addresses issues related to scalability and routing (based on QoS and service quality metrics) and can exist over existing asynchronous transfer mode (ATM) and frame-relay networks.  


Introduction About MPLS
Over the last few years, the Internet has evolved into a ubiquitous network and inspired the development of a variety of new applications in business and consumer markets. These new applications have driven the demand for increased and guaranteed bandwidth requirements in the backbone of the network. In addition to the traditional data services currently provided over the Internet, new voice and multimedia services are being developed and deployed. The Internet has emerged as the network of choice for providing these converged services. However, the demands placed on the network by these new applications and services, in terms of speed and bandwidth, have strained the resources of the existing Internet infrastructure. This transformation of the network toward a packet- and cell-based infrastructure has introduced uncertainty into what has traditionally been a fairly deterministic network.

In addition to the issue of resource constraints, another challenge relates to the transport of bits and bytes over the backbone to provide differentiated classes of service to users. The exponential growth in the number of users and the volume of traffic adds another dimension to this problem. Class of service (CoS) and QoS issues must be addressed to in order to support the diverse requirements of the wide range of network users.

In sum, despite some initial challenges, MPLS will play an important role in the routing, switching, and forwarding of packets through the next-generation network in order to meet the service demands of the network users.

Traditional Routing and Packet Switching
The initial deployment of the Internet addressed the requirements of data transfer over the network. This network catered to simple applications such as file transfer and remote login. To carry out these requirements, a simple software-based router platform, with network interfaces to support the existing T1/E1– or T3/E3–based backbones, was sufficient. As the demand for higher speed and the ability to support higher-bandwidth transmission rates emerged, devices with capabilities to switch at the Level-2 (data link) and the Level-3 (network layer) in hardware had to be deployed. Layer-2 switching devices addressed the switching bottlenecks within the subnets of a local-area network (LAN) environment. Layer-3 switching devices helped alleviate the bottleneck in Layer-3 routing by moving the route lookup for Layer-3 forwarding to high-speed switching hardware.  
These early solutions addressed the need for wire-speed transfer of packets as they traversed the network, but they did not address the service requirements of the information contained in the packets. Also, most of the routing protocols deployed today are based on algorithms designed to obtain the shortest path in the network for packet traversal and do not take into account additional metrics (such as delay, jitter, and traffic congestion), which can further diminish network performance. Traffic engineering is a challenge for network managers.

MPLS and Its Components
What Is MPLS? 
MPLS is an Internet Engineering Task Force (IETF)–specified framework that provides for the efficient designation, routing, forwarding, and switching of traffic flows through the network.  MPLS performs the following functions:  
specifies mechanisms to manage traffic flows of various granularities, such as flows between different hardware, machines, or even flows between different applications
remains independent of the Layer-2 and Layer-3 protocols 
provides a means to map IP addresses to simple, fixed-length labels used by different packet-forwarding and packet-switching technologies 
interfaces to existing routing protocols such as resource reservation protocol (RSVP) and open shortest path first (OSPF) 
supports the IP, ATM, and frame-relay Layer-2 protocols 

In MPLS, data transmission occurs on label-switched paths (LSPs). LSPs are a sequence of labels at each and every node along the path from the source to the destination. LSPs are established either prior to data transmission (control-driven) or upon detection of a certain flow of data (data-driven). The labels, which are underlying protocol-specific identifiers, are distributed using label distribution protocol (LDP) or RSVP or piggybacked on routing protocols like border gateway protocol (BGP) and OSPF. Each data packet encapsulates and carries the labels during their journey from source to destination. High-speed switching of data is possible because the fixed-length labels are inserted at the very beginning of the packet or cell and can be used by hardware to switch packets quickly between links. 

LSRs and LERs
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 forwards this traffic on to the MPLS network after establishing LSPs, using the label signaling protocol at the ingress and distributing the traffic back to the access networks at the egress. The LER plays a very important role in the assignment and removal of labels, as traffic enters or exits an MPLS network.

FEC 
The 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), is comprised of FEC–to-label bindings.

Labels and Label Bindings
A label, in its simplest form, identifies the path 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. Once 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.

Once 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. For data link layers (such as frame relay or ATM), Layer-2 identifiers, such as data link connection identifiers (DLCIs) in the case of frame-relay networks or virtual path identifiers (VPIs)/virtual channel identifiers (VCIs) in case of ATM networks, 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 may be based on forwarding criteria such as the following:  
destination unicast routing 
traffic engineering 
multicast 
virtual private network (VPN) 
QoS

The generic label format is illustrated in below figure-1 . The label can be embedded in the header of the data link layer (the ATM VCI/VPI shown in Figure-2  and the frame-relay DLCI also shown in Figure-3 ) or in the shim (between the Layer-2 data-link header and Layer-3 network layer header, as shown in Figure ).
MPLS Layers
MPLS Frame Relay
Label Creation 
There are several methods used in label creation: 
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 bindings.

Label Distribution
MPLS architecture does 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 also been extended to support piggybacked exchange of labels. The Internet Engineering Task Force (IETF) has also defined a new protocol known as the label distribution protocol (LDP) for explicit signaling and management of the label space. Extensions to the base LDP protocol have also been defined to support explicit routing based on QoS and CoS. requirements. These extensions are captured in the constraint-based routing (CR)–LDP protocol definition.  
A summary of the various schemes for label exchange is as follows:  
LDP—maps unicast IP destinations 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)

Label-Switched Paths (LSPs)
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 the following 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 LSR uses any available routing protocols, such as OSPF, ATM private network-to-network interface (PNNI), etc. 

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 ER–LSP traverses. The path specified could be nonoptimal, as well. Along the path, the resources may be reserved to ensure QoS to the data traffic. This eases traffic engineering throughout 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 in nature. The return traffic must take another LSP.

Label Spaces
The labels used by an LSR for FEC–label bindings are categorized as follows:
per platform—The label values are unique across the whole LSR. The labels are allocated from a common pool. No two labels distributed on different interfaces have the same value. 
per interface—The label ranges are associated with interfaces. Multiple label pools are defined for interfaces, and the labels provided on those interfaces are allocated from the separate pools. The label values provided on different interfaces could be the same. 

Label Merging 
The incoming streams of traffic from different interfaces can be merged together and switched using a common label if they are traversing the network toward the same final destination. This is known as stream merging or aggregation of flows. 

If the underlying transport network is an ATM network, LSRs could employ virtual path (VP) or virtual channel (VC) merging. In this scenario, cell interleaving problems, which arise when multiple streams of traffic are merged in the ATM network, need to be avoided. 


Label Retention 
MPLS defines the treatment for label bindings received from LSRs that are not the next hop for a given FEC. Two modes are defined.
conservative—In this mode, the bindings between a label and an FEC received from LSRs that are not the next hop for a given FEC are discarded. This mode requires an LSR to maintain fewer labels. This is the recommended mode for ATM–LSRs. 
liberal—In this mode, the bindings between a label and an FEC received from LSRs that are not the next hop for a given FEC are retained. This mode allows for quicker adaptation to topology changes and allows for the switching of traffic to other LSPs in case of changes.


Label Control
MPLS defines modes for distribution of labels to neighboring LSRs.
independent—In this mode, an LSR recognizes a particular FEC and makes the decision to bind a label to the FEC independently to distribute the binding to its peers. The new FECs are recognized whenever new routes become visible to the router. 
ordered—In this mode, an LSR binds a label to a particular FEC if and only if it is the egress router or it has received a label binding for the FEC from its next hop LSR. This mode is recommended for ATM–LSRs.


Signaling Mechanisms
label request—Using this mechanism, an LSR requests a label from its downstream neighbor so that it can bind to a specific FEC. This mechanism can be employed down the chain of LSRs up until the egress LER (i.e., the point at which the packet exits the MPLS domain). 
label mapping—In response to a label request, a downstream LSR will send a label to the upstream initiator using the label mapping mechanism.
Mapping are explained in below Figure 
Signaling Mechanisms
MPLS Signaling Mechanisms


Label Distribution Protocol (LDP)
The LDP is a new protocol for the distribution of label binding information to LSRs in an MPLS network. It is used to map FECs to labels, which, in turn, create LSPs. LDP sessions are established between LDP peers in the MPLS network (not necessarily adjacent). The peers exchange the following types of LDP messages:
discovery messages—announce and maintain the presence of an LSR in a network 
session messages—establish, maintain, and terminate sessions between LDP peers 
advertisement messages—create, change, and delete label mappings for FECs
notification messages—provide advisory information and signal error information.

Label Stack
The label stack mechanism allows for hierarchical operation in the MPLS domain. It basically allows MPLS to be used simultaneously for routing at the fine-grain level (e.g., between individual routers within an Internet service provider [ISP] and at a higher domain-by-domain level). Each level in a label stack pertains to some hierarchical level. This facilitates a tunneling mode of operation in MPLS.

Traffic Engineering
Traffic engineering is a process that enhances overall network utilization by attempting to create a uniform or differentiated distribution of traffic throughout the network. An important result of this process is the avoidance of congestion on any one path. It is important to note that traffic engineering does not necessarily select the shortest path between two devices. It is possible that, for two packet data flows, the packets may traverse completely different paths even though their originating node and the final destination node are the same. This way, the less-exposed or less-used network segments can be used and differentiated services can be provided.

In MPLS, traffic engineering is inherently provided using explicitly routed paths. The LSPs are created independently, specifying different paths that are based on user-defined policies. However, this may require extensive operator intervention. RSVP and CR–LDP are two possible approaches to supply dynamic traffic engineering and QoS in MPLS. 


CR
Constraint-based routing (CR) takes into account parameters, such as link characteristics (bandwidth, delay, etc.), hop count, and QoS. The LSPs that are established could be CR–LSPs, where the constraints could be explicit hops or QoS requirements. Explicit hops dictate which path is to be taken. QoS requirements dictate which links and queuing or scheduling mechanisms are to be employed for the flow.

When using CR, it is entirely possible that a longer (in terms of cost) but less loaded path is selected. However, while CR increases network utilization, it adds more complexity to routing calculations, as the path selected must satisfy the QoS requirements of the LSP. CR can be used in conjunction with MPLS to set up LSPs. The IETF has defined a CR–LDP component to facilitate constraint-based routes.


No comments:

Post a Comment