5.4. Control of MPLS Networks

5.4.1. MPLS Overview

MPLS is the acronym for Multi-Protocol Label Switching. To understand the rationale for MPLS, consider packet forwarding in an IP network. As an IP packet is forwarded from the source to the destination, each router en route makes an independent forwarding decision for that packet. That is, each router analyzes the packet header (in particular the destination IP address) and independently chooses a next hop for the packet. Choosing the next hop can therefore be thought of as the composition of two functions. The first function partitions the entire set of possible packets into a set of Forwarding Equivalence Classes (FECs). The second maps each FEC to a next hop. A FEC, for instance, can be a destination IP address indicating that all packets with that destination address belong to the same FEC and hence are forwarded to the same next hop. In general, any information in the IP packet header can be used to classify a packet as belonging to a specific FEC.

A label is a short, fixed length value used to denote a specific FEC. A label is assigned to a packet when it enters an MPLS network, based on the analysis of the header. The packet, when forwarded to its next hop, carries the label with it. At subsequent hops, there is no further analysis of the packet's IP header. Rather, the label is used as an index into a table that specifies the next hop and a new label. The old label is replaced with the new label, and the packet is forwarded to its next hop. In the MPLS forwarding paradigm, once a packet is assigned to a FEC, no further IP header analysis is done by subsequent routers; all forwarding is driven by the labels. Routers in an MPLS networks are thus called Label-Switching Routers (LSRs).

MPLS forwarding has certain advantages over conventional IP network packet forwarding. First, the forwarding process is simplified. In a conventional IP network, a router must match the destination IP address in a packet with prefixes in its routing table, and find the longest matching prefix. MPLS forwarding, on the other hand, requires only a fixed length label to be looked up. This performance aspect was one of the main motivations originally when MPLS was developed. Subsequently, with advancements in router hardware, this has become less of an issue. Second, a packet needs to be classified only once (when it enters an MPLS network). LSRs that process the packet subsequently need not perform classification functions, but merely switch the labels and forward the packet. This implies that interior LSRs in an MPLS network can potentially be simpler than ingress and egress LSRs. Third, in a traditional IP network, packets are typically routed based only on destination address. An MPLS network, on the other hand, allows multiple routes be preestablished for packets belonging to different FECs even if these packets enter and leave the network at the same ingress and egress LSRs, respectively. That is, packets entering the ingress LSR can be classified into different FECs based on administratively established criteria. These packets can then be assigned appropriate distinguishing labels and forwarded along different paths in the MPLS network. This property is the most valuable and it forms the basis for MPLS traffic engineering. Indeed, this has become one of the primary areas of focus for the usage of MPLS technology. Finally, an MPLS packet can carry a stack of labels rather than a single label. With this arrangement, interior LSRs can operate on the label at the top of the stack while the ingress and the egress LSRs can use other labels for classifying distinct packet streams. Label push and pop operations have been defined under MPLS to add or delete the top-level label to increase or decrease the stack depth. Among other benefits, label stacking allows the implementation of Virtual Private Networks (VPNs), which is an important application of the MPLS technology. MPLS features and usage are described in [Rosen+01].

Forwarding in an MPLS network is illustrated in Figure 5-13. Here, it is seen that the ingress LSR inserts an MPLS header over the IP header. This header contains the label, whose value is switched at each hop. The egress LSR strips this header off before sending the packet out of the MPLS network. Although this example shows IP packets being forwarded through an MPLS network, other network layer packets can be dealt with similarly (hence the name Multi Protocol).

Figure 5-13. MPLS Forwarding


5.4.2. Label Distribution

It was seen that LSRs rely on a forwarding table to map the incoming label and interface to an outgoing label and interface. Just as routing protocols are used in IP networks to populate IP routing tables, label distribution protocols are used in MPLS networks to build forwarding tables. In this context, an “upstream” LSR is an LSR that sends a packet with a given outgoing label to the next hop. A “downstream” LSR is the LSR that receives the packet. That is, a downstream LSR is farther away from the source of the packet than the upstream LSR. Under the MPLS architecture, the outgoing label values used by an LSR must be obtained from the corresponding downstream LSRs. Thus, labels are “downstream-assigned,” and the bindings between FECs and label values are distributed in the “downstream-to-upstream” direction.

The MPLS architecture allows two different modes for label distribution. Under the first mode, an LSR may explicitly request a label binding for a FEC from the next hop (downstream) LSR for that FEC. This is known as “downstream-on-demand” label distribution. Under the second mode, an LSR may distribute bindings to neighboring LSRs that have not explicitly requested them. This is known as “unsolicited downstream” label distribution. In defining these modes, it has been implicitly assumed that all the LSRs have consistent knowledge about the different FECs used in the MPLS network. In the simplest case, a FEC is an IP destination address. In this case, each LSR in an MPLS network must assign a label value corresponding to each destination address and distribute this value to its neighbors. Figure 5-14 illustrates downstream-on-demand label distribution corresponding to an IP destination. In this example, an LSR (e.g., LSR G) assigns a label and sends it to the upstream requester (e.g., LSR D) only after receiving the corresponding allocation from the LSR that is the next hop towards the IP destination, that is, LSR I.

Figure 5-14. Downstream On-Demand Label Allocation


The MPLS architecture allows the possibility of different label distribution protocols being used in different networks. LDP (also standing for Label Distribution Protocol) is one such protocol. LDP allows different label distribution and retention modes, and it runs over TCP between neighboring LSRs. The LDP functionality and message set are described in [Andersson+01]. A notable feature of LDP is that it only allows the distribution of labels corresponding to different FECs but not the enforcement of specific routes for labeled packets. That is, an IP routing protocol is required to determine the upstream-downstream relationships between LSRs corresponding to different destinations (and the FECs based on destinations).

5.4.3. MPLS Traffic Engineering (MPLS-TE)

Traffic Engineering (TE) is concerned with performance optimization of operational networks. In general, it deals with the measurement, modeling, characterization, and control of traffic to achieve specific performance objectives. A major goal of traffic engineering is to facilitate efficient and reliable network operations while simultaneously optimizing network resource utilization and traffic performance [Awduche+99].

Traffic engineering is used to satisfy both traffic-oriented as well as resource-oriented performance objectives. Traffic-oriented performance objectives include minimization of packet loss, minimization of delay, maximization of throughput, and enforcement of service level agreements. Resource-oriented performance objectives include the aspects pertaining to the optimization of resource utilization. For instance, it may be desirable to ensure that some network resources do not become strained while other resorces remain underutilized. Bandwidth is a crucial resource in contemporary networks. Therefore, a central function of TE is to efficiently manage bandwidth resources.

A valuable feature of MPLS is its applicability for traffic engineering. Specifically, the notion of explicitly routed Label-Switched Paths (LSPs) plays a central role in MPLS TE. Suppose certain guaranteed bandwidth is required for packet flow between a source and a destination. The source-destination pair can be treated as a unique FEC, and an LSP can be established from the source to the destination. This LSP can be assigned the required bandwidth on all links along the path. If the bandwidth allocated for different LSPs on a link is correctly accounted for, then each LSP gets the required quality of service (QoS). Furthermore, a network operator can route LSPs between the same source-destination pair along different paths in the network. This gives the network operator the ability to control traffic loads in different parts of the network, optimize resource usage, and to route traffic along paths that would satisfy the required QoS.

An LSP is defined by the label mappings in the ingress, the egress, and the intermediate LSRs in the path. To set up an LSP for TE purposes, the following actions are required:

  1. Specification of the LSP attributes, for example, the required bandwidth, source and destination addresses, the information that characterizes the FEC that the LSP represents.

  2. Determination of a feasible route for the LSP within the MPLS network. A feasible route is one in which the intermediate links and LSRs can accommodate the LSP attributes.

  3. Establishment of appropriate label mappings in the ingress, the egress, and the intermediate LSRs along the route determined.

LDP, described earlier, is not sufficient for the establishment of explicitly routed LSPs. What we need instead are protocols that allow the specification of LSP attributes and the explicit route so that label mappings and QoS parameters can be established in the appropriate LSRs. Two such protocols are available. One is the Resource reServation Protocol with Traffic Engineering extensions (RSVP-TE), and the other is LDP with Constraint-based Routing extensions (CR-LDP). These are described in more detail in Chapter 7.

5.4.4. MPLS-TE Routing

IP routing protocols typically compute the shortest path to a destination based on static link cost metrics. TE routing, on the other hand, requires the computation of paths based on multiple constraints, such as bandwidth availability, latency, link costs, and so on. The MPLS-TE routing model is based on the distributed routing paradigm, where each node keeps track of the network topology, resource availability, and link and node characteristics. Using this information, each node can compute explicit routes for connections destined for other nodes, subject to different constraints. MPLS-TE routing protocols are extensions of a class of IP routing protocols, called link state protocols. These protocols allow each node to propagate local topology and resource information to all the other nodes in a network. Furthermore, these protocols support a two-level hierarchical routing approach for scalability. MPLS-TE routing is described in detail in Chapter 10.

5.4.5. Recovery in MPLS Networks

The term “recovery” is used to denote LSP protection and restoration operations under MPLS. The basic premise of recovery is that a (primary) LSP affected by a link or node failure can be replaced quickly by another (backup) LSP. Recovery is a notion that has been developed in the context of MPLS-TE. Specifically, MPLS-TE signaling protocols can be used to provision primary and backup LSPs, and to switch data from primary to backup LSPs after a failure event.

MPLS recovery mechanisms support both local as well as end-to-end recovery paradigms. Local recovery refers to the rerouting of data locally around a failed resource (node or link) using appropriate backup LSP segments. End-to-end recovery refers to the rerouting of data from the source node after a failure. MPLS recovery mechanisms are described in Chapter 8.

Some of the signaling mechanisms used in MPLS recovery can be reused in the optical context, but recovery in optical networks is more complex. These aspects are also described in Chapter 8.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.142.173.227