Multiprotocol Label Switching

Last updated

Multiprotocol Label Switching (MPLS) is a routing technique in telecommunications networks that directs data from one node to the next based on labels rather than network addresses. [1] Whereas network addresses identify endpoints, the labels identify established paths between endpoints. MPLS can encapsulate packets of various network protocols, hence the multiprotocol component of the name. MPLS supports a range of access technologies, including T1/E1, ATM, Frame Relay, and DSL.

Contents

Role and functioning

In an MPLS network, labels are assigned to data packets. Packet-forwarding decisions are made solely on the contents of this label, without the need to examine the packet itself. This allows one to create end-to-end circuits across any type of transport medium, using any protocol. The primary benefit is to eliminate dependence on a particular OSI model data link layer (layer 2) technology, and eliminate the need for multiple layer-2 networks to satisfy different types of traffic. Multiprotocol label switching belongs to the family of packet-switched networks.

MPLS operates at a layer that is generally considered to lie between traditional definitions of OSI Layer 2 (data link layer) and Layer 3 (network layer), and thus is often referred to as a layer 2.5 protocol. It was designed to provide a unified data-carrying service for both circuit-based clients and packet-switching clients which provide a datagram service model. It can be used to carry many different kinds of traffic, including IP packets, as well as native Asynchronous Transfer Mode (ATM), Frame Relay, Synchronous Optical Networking (SONET) or Ethernet.

A number of different technologies were previously deployed with essentially identical goals, such as Frame Relay and ATM. Frame Relay and ATM use labels to move frames or cells through a network. The header of the Frame Relay frame and the ATM cell refers to the virtual circuit that the frame or cell resides on. The similarity between Frame Relay, ATM, and MPLS is that at each hop throughout the network, the label value in the header is changed. This is different from the forwarding of IP packets. [2] MPLS technologies have evolved with the strengths and weaknesses of ATM in mind. MPLS is designed to have lower overhead than ATM while providing connection-oriented services for variable-length frames, and has replaced much use of ATM in the market. [3] MPLS dispenses with the cell-switching and signaling-protocol baggage of ATM. MPLS recognizes that small ATM cells are not needed in the core of modern networks, since modern optical networks are fast enough that even full-length 1500 byte packets do not incur significant real-time queuing delays. [lower-alpha 1] At the same time, MPLS attempts to preserve the traffic engineering (TE) and out-of-band control that made Frame Relay and ATM attractive for deploying large-scale networks.

History

In 1996 a group from Ipsilon Networks proposed a flow management protocol. [6] Their IP Switching technology, which was defined only to work over ATM, did not achieve market dominance. Cisco Systems introduced a related proposal, not restricted to ATM transmission, called Tag Switching [7] with its Tag Distribution Protocol (TDP). [8] It was a Cisco proprietary proposal, and was renamed Label Switching. It was handed over to the Internet Engineering Task Force (IETF) for open standardization. The IETF formed the MPLS Working Group in 1997. Work involved proposals from other vendors, and development of a consensus protocol that combined features from several vendors' work. [9]

Some time later it was recognized that the work on threaded indices by Girish Chandranmenon and George Varghese had invented the idea of using labels to represent destination prefixes that was central to tag switching. [10]

One original motivation was to allow the creation of simple high-speed switches since for a significant length of time it was considered impractical to forward IP packets entirely in hardware. Advances in VLSI and in forwarding algorithms have made hardware forwarding of IP packets possible and common. The current advantages of MPLS primarily revolve around the ability to support multiple service models and perform traffic management. MPLS also offers a robust recovery framework [11] that goes beyond the simple protection rings of synchronous optical networking (SONET/SDH).

Operation

MPLS works by prefixing packets with an MPLS header, containing one or more labels. This is called a label stack. Each entry in the label stack contains four fields:

MPLS label
0001020304050607080910111213141516171819202122232425262728293031
LabelTC: Traffic Class (QoS and ECN)S: Bottom-of-StackTTL: Time-to-Live

These MPLS-labeled packets are switched based on the label instead of a lookup in the IP routing table. When MPLS was conceived, label switching was faster than a routing table lookup because switching could take place directly within the switched fabric and avoided CPU and software involvement.

The presence of such a label has to be indicated to the switch. In the case of Ethernet frames this is done through the use of EtherType values 0x8847 and 0x8848, for unicast and multicast connections respectively. [13]

Label switch router

An MPLS router that performs routing based only on the label is called a label switch router (LSR) or transit router. This is a type of router located in the middle of an MPLS network. It is responsible for switching the labels used to route packets.

When an LSR receives a packet, it uses the label included in the packet header as an index to determine the next hop on the label-switched path (LSP) and a corresponding label for the packet from a lookup table. The old label is then removed from the header and replaced with the new label before the packet is routed forward.

Label edge router

A label edge router (LER, also known as edge LSR) is a router that operates at the edge of an MPLS network and acts as the entry and exit points for the network. LERs push an MPLS label onto an incoming packet [lower-alpha 2] and pop it off an outgoing packet. Alternatively, under penultimate hop popping this function may instead be performed by the LSR directly connected to the LER.

When forwarding an IP datagram into the MPLS domain, a LER uses routing information to determine the appropriate label to be affixed, labels the packet accordingly, and then forwards the labeled packet into the MPLS domain. Likewise, upon receiving a labeled packet that is destined to exit the MPLS domain, the LER strips off the label and forwards the resulting IP packet using normal IP forwarding rules.

Provider router

In the specific context of an MPLS-based virtual private network (VPN), LERs that function as ingress or egress routers to the VPN are often called provider edge (PE) routers. Devices that function only as transit routers are similarly called provider (P) routers. [14] The job of a P router is significantly easier than that of a PE router.

Label Distribution Protocol

Labels may be distributed between LERs and LSRs using the Label Distribution Protocol (LDP) [15] or Resource Reservation Protocol (RSVP). [16] LSRs in an MPLS network regularly exchange label and reachability information with each other using standardized procedures in order to build a complete picture of the network so that they can then use that information to forward the packets.

Label-switched paths

Label-switched paths (LSPs) are established by the network operator for a variety of purposes, such as to create network-based IP virtual private networks or to route traffic along specified paths through the network. In many respects, LSPs are not different from permanent virtual circuits (PVCs) in ATM or Frame Relay networks, except that they are not dependent on a particular layer-2 technology.

Routing

When an unlabeled packet enters the ingress router and needs to be passed on to an MPLS tunnel, the router first determines the forwarding equivalence class (FEC) for the packet and then inserts one or more labels in the packet's newly created MPLS header. The packet is then passed on to the next hop router for this tunnel.

From an OSI model perspective, the MPLS Header is added between the network layer header and link layer header. [17]

When a labeled packet is received by an MPLS router, the topmost label is examined. Based on the contents of the label a swap, push [lower-alpha 3] or pop [lower-alpha 4] operation is performed on the packet's label stack. Routers can have prebuilt lookup tables that tell them which kind of operation to do based on the topmost label of the incoming packet so they can process the packet very quickly.

During these operations, the contents of the packet below the MPLS Label stack are not examined. Indeed, transit routers typically need only to examine the topmost label on the stack. The forwarding of the packet is done based on the contents of the labels, which allows protocol-independent packet forwarding that does not need to look at a protocol-dependent routing table and avoids the expensive IP longest prefix match at each hop.

At the egress router, when the last label has been popped, only the payload remains. This can be an IP packet or any type of packet. The egress router must, therefore, have routing information for the packet's payload since it must forward it without the help of label lookup tables. An MPLS transit router has no such requirement.

Usually [lower-alpha 5] , the last label is popped off at the penultimate hop (the hop before the egress router). This is called penultimate hop popping (PHP). This is useful in cases where the egress router has many packets leaving MPLS tunnels and thus spends significant CPU resources on these transitions. By using PHP, transit routers connected directly to this egress router effectively offload it, by popping the last label themselves. In the label distribution protocols, this PHP label pop action is advertised as label value 3 (implicit null) and is never found in a label, since it means that the label is to be popped.

Several MPLS services including end-to-end QoS management, [18] and 6PE, [19] require keeping a label even between the penultimate and the last MPLS router, with a label disposition always done on the last MPLS router, ultimate hop popping (UHP). [20] [21] Some specific label values have been notably reserved [22] [23] for this use. In this scenario the remaining label stack entry conveys information to the last hop (such as its Traffic Class field for QoS information), while also instructing the last hop to pop the label stack using one of the following reserved label values:

An MPLS header does not identify the type of data carried inside the MPLS path. To carry two different types of traffic between the same two routers, with different treatment by the core routers for each type, a separate MPLS path for each type of traffic is required.

Label-switched path

A label-switched path (LSP) is a path through an MPLS network set up by the NMS or by a signaling protocol such as LDP, RSVP-TE, BGP (or the now deprecated CR-LDP). The path is set up based on criteria in the FEC.

The path begins at an LER, which makes a decision on which label to prefix to a packet based on the appropriate FEC. It then forwards the packet along to the next router in the path, which swaps the packet's outer label for another label, and forwards it to the next router. The last router in the path removes the label from the packet and forwards the packet based on the header of its next layer, for example IPv4. Due to the forwarding of packets through an LSP being opaque to higher network layers, an LSP is also sometimes referred to as an MPLS tunnel.

The router which first prefixes the MPLS header to a packet is an ingress router. The last router in an LSP, which pops the label from the packet, is called an egress router. Routers in between, which need only swap labels, are called transit routers or label switch routers (LSRs).

Note that LSPs are unidirectional; they enable a packet to be label switched through the MPLS network from one endpoint to another. Since bidirectional communication is typically desired, the aforementioned dynamic signaling protocols can automatically set up a separate LSP in the opposite direction.

When link protection is considered, LSPs can be categorized as primary (working), secondary (backup) and tertiary (LSP of last resort).

Installing and removing paths

There are two standardized protocols for managing MPLS paths: the Label Distribution Protocol (LDP) and RSVP-TE, an extension of the Resource Reservation Protocol (RSVP) for traffic engineering. [24] [25] Furthermore, there exist extensions of the Border Gateway Protocol (BGP) that can be used to manage an MPLS path. [14] [26] [27]

Multicast addressing

Multicast was, for the most part, an afterthought in MPLS design. It was introduced by point-to-multipoint RSVP-TE. [28] It was driven by service provider requirements to transport broadband video over MPLS.

The hub and spoke multipoint LSP (HSMP LSP) was also introduced by IETF. HSMP LSP is mainly used for multicast, time synchronization, and other purposes.

Relationship to Internet Protocol

MPLS works in conjunction with the Internet Protocol (IP) and its routing protocols, usually Interior Gateway Protocols (IGPs). MPLS LSPs provide dynamic, transparent virtual networks with support for traffic engineering, the ability to transport layer-3 (IP) VPNs with overlapping address spaces, and support for layer-2 pseudowires using Pseudowire Emulation Edge-to-Edge (PWE3) [29] that are capable of transporting a variety of transport payloads (IPv4, IPv6, ATM, Frame Relay, etc.). MPLS-capable devices are referred to as LSRs. The paths an LSR knows can be defined using explicit hop-by-hop configuration, or are dynamically routed by the Constrained Shortest Path First (CSPF) algorithm, or are configured as a loose route that avoids a particular IP address or that is partly explicit and partly dynamic.

In a pure IP network, the shortest path to a destination is chosen even when the path becomes congested. Meanwhile, in an IP network with MPLS Traffic Engineering CSPF routing, constraints such as the RSVP bandwidth of the traversed links can also be considered, such that the shortest path with available bandwidth will be chosen. MPLS Traffic Engineering relies upon the use of TE extensions to Open Shortest Path First (OSPF) or Intermediate System to Intermediate System (IS-IS) and RSVP. In addition to the constraint of RSVP bandwidth, users can also define their own constraints by specifying link attributes and special requirements for tunnels to route (or not to route) over links with certain attributes. [30]

For end-users the use of MPLS is not visible directly, but can be assumed when doing a traceroute: only nodes that do full IP routing are shown as hops in the path, thus not the MPLS nodes used in between, therefore when you see that a packet hops between two very distant nodes and hardly any other 'hop' is seen in that provider's network (or AS) it is very likely that network uses MPLS.

MPLS local protection

In the event of a network element failure when recovery mechanisms are employed at the IP layer, restoration may take several seconds which may be unacceptable for real-time applications such as VoIP. [31] [32] [33] In contrast, MPLS local protection meets the requirements of real-time applications with recovery times comparable to those of shortest path bridging networks or SONET rings of less than 50 ms. [31] [33] [34]

Comparisons

MPLS can make use of existing ATM network or Frame Relay infrastructure, as its labeled flows can be mapped to ATM or Frame Relay virtual-circuit identifiers, and vice versa.

Frame Relay

Frame Relay aimed to make more efficient use of existing physical resources, which allow for the underprovisioning of data services by telecommunications companies (telcos) to their customers, as clients were unlikely to be utilizing a data service 100 percent of the time. Consequently, oversubscription of capacity by the telcos, while financially advantageous to the provider, can directly affect overall performance.

Telcos often sold Frame Relay to businesses looking for a cheaper alternative to dedicated lines; its use in different geographic areas depended greatly on governmental and telecommunication companies' policies.

Many customers migrated from Frame Relay to MPLS over IP or Ethernet, which in many cases reduced costs and improved manageability and performance of their wide area networks. [35]

Asynchronous Transfer Mode

While the underlying protocols and technologies are different, both MPLS and ATM provide a connection-oriented service for transporting data across computer networks. In both technologies, connections are signaled between endpoints, the connection state is maintained at each node in the path, and encapsulation techniques are used to carry data across the connection. Excluding differences in the signaling protocols (RSVP/LDP for MPLS and PNNI for ATM) there still remain significant differences in the behavior of the technologies.

The most significant difference is in the transport and encapsulation methods. MPLS is able to work with variable-length packets while ATM uses fixed-length (53 bytes) cells. Packets must be segmented, transported and re-assembled over an ATM network using an adaptation layer, which adds significant complexity and overhead to the data stream. MPLS, on the other hand, simply adds a label to the head of each packet and transmits it on the network.

Differences exist, as well, in the nature of the connections. An MPLS connection (LSP) is unidirectional, allowing data to flow in only one direction between two endpoints. Establishing two-way communications between endpoints requires a pair of LSPs be established. Because two LSPs are used, data flowing in the forward direction may use a different path from data flowing in the reverse direction. ATM point-to-point connections (virtual circuits), on the other hand, are bidirectional, allowing data to flow in both directions over the same path. [lower-alpha 6]

Both ATM and MPLS support tunneling of connections inside connections. MPLS uses label stacking to accomplish this while ATM uses virtual paths. MPLS can stack multiple labels to form tunnels within tunnels. The ATM virtual path indicator (VPI) and virtual circuit indicator (VCI) are both carried together in the cell header, limiting ATM to a single level of tunneling.

The biggest advantage that MPLS has over ATM is that it was designed from the start to be complementary to IP. Modern routers can support both MPLS and IP natively across a common interface allowing network operators great flexibility in network design and operation. ATM's incompatibilities with IP require complex adaptation, making it comparatively less suitable for today's predominantly IP networks.

Deployment

MPLS is standardized by the IETF in RFC   3031. It is deployed to connect as few as two facilities to very large deployments. In practice, MPLS is mainly used to forward IP protocol data units (PDUs) and Virtual Private LAN Service (VPLS) Ethernet traffic. Major applications of MPLS are telecommunications traffic engineering, and MPLS VPN.

Evolution

MPLS was originally proposed to allow high-performance traffic forwarding and traffic engineering in IP networks. However, it evolved in Generalized MPLS (GMPLS) to also allow the creation of LSPs in non-native IP networks, such as SONET/SDH networks and wavelength switched optical networks.

Competitor protocols

MPLS can exist in both an IPv4 and an IPv6 environment, using appropriate routing protocols. The major goal of MPLS development was the increase of routing speed. [37] This goal is no longer relevant [38] because of the usage of newer switching methods (able to forward plain IPv4 as fast as MPLS labelled packets), such as ASIC, TCAM and CAM-based switching. [39] Now, therefore, the main application [40] of MPLS is to implement limited traffic engineering and layer 3 / layer 2 “service provider type” VPNs over IPv4 networks. [41]

See also

Notes

  1. The desire to minimize network latency e.g., to support voice traffic was the motivation for the small-cell nature of ATM.
  2. In some applications, the packet presented to the LER already may have a label, so that the new LER pushes a second label onto the packet.
  3. A.k.a. impose
  4. A.k.a. dispose
  5. This is the default behavior with only one label in the stack, accordingly to the MPLS specification.
  6. Both SVC and PVC ATM connections are bidirectional. [36]

Related Research Articles

<span class="mw-page-title-main">IPv6</span> Version 6 of the Internet Protocol

Internet Protocol version 6 (IPv6) is the most recent version of the Internet Protocol (IP), the communications protocol that provides an identification and location system for computers on networks and routes traffic across the Internet. IPv6 was developed by the Internet Engineering Task Force (IETF) to deal with the long-anticipated problem of IPv4 address exhaustion, and was intended to replace IPv4. In December 1998, IPv6 became a Draft Standard for the IETF, which subsequently ratified it as an Internet Standard on 14 July 2017.

Quality of service (QoS) is the description or measurement of the overall performance of a service, such as a telephony or computer network, or a cloud computing service, particularly the performance seen by the users of the network. To quantitatively measure quality of service, several related aspects of the network service are often considered, such as packet loss, bit rate, throughput, transmission delay, availability, jitter, etc.

In computing, Internet Protocol Security (IPsec) is a secure network protocol suite that authenticates and encrypts packets of data to provide secure encrypted communication between two computers over an Internet Protocol network. It is used in virtual private networks (VPNs).

Open Shortest Path First (OSPF) is a routing protocol for Internet Protocol (IP) networks. It uses a link state routing (LSR) algorithm and falls into the group of interior gateway protocols (IGPs), operating within a single autonomous system (AS).

A virtual private network (VPN) is a mechanism for creating a secure connection between a computing device and a computer network, or between two networks, using an insecure communication medium such as the public Internet.

In computer networking, Layer 2 Tunneling Protocol (L2TP) is a tunneling protocol used to support virtual private networks (VPNs) or as part of the delivery of services by ISPs. It uses encryption ('hiding') only for its own control messages, and does not provide any encryption or confidentiality of content by itself. Rather, it provides a tunnel for Layer 2, and the tunnel itself may be passed over a Layer 3 encryption protocol such as IPsec.

The Resource Reservation Protocol (RSVP) is a transport layer protocol designed to reserve resources across a network using the integrated services model. RSVP operates over an IPv4 or IPv6 and provides receiver-initiated setup of resource reservations for multicast or unicast data flows. It does not transport application data but is similar to a control protocol, like Internet Control Message Protocol (ICMP) or Internet Group Management Protocol (IGMP). RSVP is described in RFC 2205.

Label Distribution Protocol (LDP) is a protocol in which routers capable of Multiprotocol Label Switching (MPLS) exchange label mapping information. Two routers with an established session are called LDP peers and the exchange of information is bi-directional. LDP is used to build and maintain label-switched path (LSP) databases that are used to forward traffic through MPLS networks.

Virtual Private LAN Service (VPLS) is a way to provide Ethernet-based multipoint to multipoint communication over IP or MPLS networks. It allows geographically dispersed sites to share an Ethernet broadcast domain by connecting sites through pseudowires. The term sites includes multiplicities of both servers and clients. The technologies that can be used as pseudo-wire can be Ethernet over MPLS, L2TPv3 or even GRE. There are two IETF standards-track RFCs describing VPLS establishment.

Bidirectional Forwarding Detection (BFD) is a network protocol that is used to detect faults between two routers or switches connected by a link. It provides low-overhead detection of faults even on physical media that doesn't support failure detection of any kind, such as Ethernet, virtual circuits, tunnels and MPLS label-switched paths.

Penultimate hop popping (PHP) is a function performed by certain routers in an MPLS enabled network. It refers to the process whereby the outermost label of an MPLS tagged packet is removed by a label switch router (LSR) before the packet is passed to an adjacent label edge router (LER). The benefit is that the LSR has to do a label lookup anyway and it doesn't make a difference whether this results in a label swap or pop. However, for the LER this saves one cycle of label lookup.

Constraint-based Routing Label Distribution Protocol (CR-LDP) is a control protocol used in some computer networks. As of February 2003, the IETF MPLS working group deprecated CR-LDP and decided to focus purely on RSVP-TE.

<span class="mw-page-title-main">Layer 2 MPLS VPN</span>

A Layer 2 MPLS VPN is a term in computer networking. It is a method that Internet service providers use to segregate their network for their customers, to allow them to transmit data over an IP network. This is often sold as a service to businesses.

Resource Reservation Protocol - Traffic Engineering (RSVP-TE) is an extension of the Resource Reservation Protocol (RSVP) for traffic engineering. It supports the reservation of resources across an IP network. Applications running on IP end systems can use RSVP to indicate to other nodes the nature of the packet streams they want to receive. RSVP runs on both IPv4 and IPv6.

A forwarding information base (FIB), also known as a forwarding table or MAC table, is most commonly used in network bridging, routing, and similar functions to find the proper output network interface controller to which the input interface should forward a packet. It is a dynamic table that maps MAC addresses to ports. It is the essential mechanism that separates network switches from Ethernet hubs. Content-addressable memory (CAM) is typically used to efficiently implement the FIB, thus it is sometimes called a CAM table.

Label switching is a technique of network relaying to overcome the problems perceived by traditional IP-table switching. Here, the switching of network packets occurs at a lower level, namely the data link layer rather than the traditional network layer.

An IPv6 packet is the smallest message entity exchanged using Internet Protocol version 6 (IPv6). Packets consist of control information for addressing and routing and a payload of user data. The control information in IPv6 packets is subdivided into a mandatory fixed header and optional extension headers. The payload of an IPv6 packet is typically a datagram or segment of the higher-level transport layer protocol, but may be data for an internet layer or link layer instead.

Generalized Multi-Protocol Label Switching (GMPLS) is a protocol suite extending MPLS to manage further classes of interfaces and switching technologies other than packet interfaces and switching, such as time-division multiplexing, layer-2 switching, wavelength switching and fiber-switching.

Path protection in telecommunications is an end-to-end protection scheme used in connection oriented circuits in different network architectures to protect against inevitable failures on service providers’ network that might affect the services offered to end customers. Any failure occurred at any point along the path of a circuit will cause the end nodes to move/pick the traffic to/from a new route. Finding paths with protection, especially in elastic optical networks, was considered a difficult problem, but an efficient and optimal algorithm was proposed.

Deterministic Networking (DetNet) is an effort by the IETF DetNet Working Group to study implementation of deterministic data paths for real-time applications with extremely low data loss rates, packet delay variation (jitter), and bounded latency, such as audio and video streaming, industrial automation, and vehicle control.

References

  1. "What is Multiprotocol Label Switching (MPLS)?".
  2. Ghein, Luc De (2007). MPLS Fundamentals. Cisco Press. ISBN   978-1587051975.
  3. Goldman, James E.; Rawles, Phillip T. (12 January 2004). Applied Data Communications (A Business-Oriented Approach). Wiley. ISBN   0471346403.
  4. Chandranmenon, Girish P.; Varghese, George (October 1995), "Trading Packet Headers for Packet Processing", ACM SIGCOMM Computer Communication Review, 25 (4): 162–173, doi:10.1145/217391.217427
  5. E. Rosen; A. Viswanathan; R. Callon (January 2001), RFC3031: Multiprotocol Label Switching Architecture, IETF, doi: 10.17487/RFC3031
  6. P. Newman; et al. (May 1996). "Ipsilon Flow Management Protocol Specification for IPv4". RFC 1953 . IETF. doi:10.17487/RFC1953.
  7. Rekhter, Y.; Davie, B.; Rosen, E.; Swallow, G.; Farinacci, D.; Katz, D. (1997). "Tag switching architecture overview". Proceedings of the IEEE. 85 (12): 1973–1983. doi:10.1109/5.650179.
  8. "IETF - Tag Distribution Protocol (draft-doolan-tdp-spec-00)". IETF. September 1996.
  9. "Multiprotocol Label Switching (mpls) WG History". IETF.
  10. L. Peterson and B. Davie (2022). Computer Networks: A Systems Approach. p. 336.
  11. V. Sharma; F. Hellstrand (February 2003), Sharma, V.; Hellstrand, F. (eds.), RFC 3469: Framework for Multi-Protocol Label Switching (MPLS)-based Recovery, IETF, doi:10.17487/RFC3469
  12. L. Andersson; R. Asati (February 2009), Multiprotocol Label Switching (MPLS) Label Stack Entry: "EXP" Field Renamed to "Traffic Class" Field, IETF, doi:10.17487/RFC5462
  13. Ivan Pepelnjak; Jim Guichard (2002), MPLS and VPN Architectures, Volume 1, Cisco Press, p. 27, ISBN   1587050811
  14. 1 2 E. Rosen; Y. Rekhter (February 2006), RFC 4364: BGP/MPLS IP Virtual Private Networks (VPNs), IETF, doi: 10.17487/RFC4364
  15. B. Thomas; E. Gray (January 2001), RFC 3037: LDP Applicability, IETF
  16. R. Braden; L. Zhang (September 1997), RFC 2205: Resource ReSerVation Protocol (RSVP), IETF
  17. Savecall telecommunication consulting company Germany Savecall - MPLS
  18. Doyle, Jeff. "Understanding MPLS Explicit and Implicit Null Labels". Network World. Retrieved 2018-03-13.
  19. "6PE FAQ: Why Does 6PE Use Two MPLS Labels in the Data Plane?". Cisco. Retrieved 2018-03-13.
  20. Gregg., Schudel (2008). Router security strategies : securing IP network traffic planes. Smith, David J. (Computer engineer). Indianapolis, Ind.: Cisco Press. ISBN   978-1587053368. OCLC   297576680.
  21. "Configuring Ultimate-Hop Popping for LSPs - Technical Documentation - Support - Juniper Networks". www.juniper.net. Retrieved 2018-03-13.
  22. Dino, Farinacci; Guy, Fedorkow; Alex, Conta; Yakov, Rekhter; C., Rosen, Eric; Tony, Li (2001). "MPLS Label Stack Encoding". tools.ietf.org. doi:10.17487/RFC3032 . Retrieved 2018-03-13.{{cite web}}: CS1 maint: multiple names: authors list (link)
  23. <erosen@cisco.com>, Eric C. Rosen (2005). "Removing a Restriction on the use of MPLS Explicit NULL". tools.ietf.org. doi:10.17487/RFC4182 . Retrieved 2018-03-13.
  24. L. Andersson; I. Minei; B. Thomas (October 2007), Andersson, L.; Minei, I.; Thomas, B. (eds.), RFC 5036: LDP Specification , IETF, doi:10.17487/RFC5036
  25. D. Awduche; L. Berger; D. Gan; T. Li; V. Srinivasan; G. Swallow (December 2001), RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels, IETF, doi: 10.17487/RFC3209
  26. Y. Rekhter; E. Rosen (May 2001), RFC 3107: Carrying Label Information in BGP-4 , IETF, doi:10.17487/RFC3107
  27. Y. Rekhter; R. Aggarwal (January 2007), RFC 4781: Graceful Restart Mechanism for BGP with MPLS, IETF, doi:10.17487/RFC4781
  28. R. Aggarwal; D. Papadimitriou; S. Yasukawa (May 2007), Aggarwal, R.; Papadimitriou, D.; Yasukawa, S. (eds.), RFC 4875: Extensions to Resource Reservation Protocol-Traffic Engineering (RSVP-TE) for Point-to-Multipoint TE Label Switched Paths (LSPs) , IETF, doi:10.17487/RFC4875
  29. S. Bryant; P. Pate (March 2005), Bryant, S.; Pate, P. (eds.), RFC 3985: Pseudo Wire Emulation Edge-to-Edge (PWE3) Architecture, IETF, doi: 10.17487/RFC3985
  30. Ghein, Luc De (2007). MPLS Fundamentals. Cisco Press. pp. 249–326. ISBN   978-1587051975.
  31. 1 2 Aslam; et al. (2005-02-02), NPP: A Facility Based Computation Framework for Restoration Routing Using Aggregate Link Usage Information, QoS-IP 2005 : quality of service in multiservice IP network, retrieved 2006-10-27.
  32. Raza; et al. (2005), "Online routing of bandwidth guaranteed paths with local restoration using optimized aggregate usage information", IEEE International Conference on Communications, 2005. ICC 2005. 2005, IEEE-ICC 2005, vol. 1, pp. 201–207, doi:10.1109/ICC.2005.1494347, ISBN   0-7803-8938-7, S2CID   5659648.
  33. 1 2 Li Li; et al. (2005), "Routing bandwidth guaranteed paths with local restoration in label switched networks", IEEE Journal on Selected Areas in Communications, IEEE Journal on Selected Areas in Communications, 23 (2): 437–449, doi:10.1109/JSAC.2004.839424, S2CID   195347236.
  34. Kodialam; et al. (2001), "Dynamic Routing of Locally Restorable Bandwidth Guaranteed Tunnels using Aggregated Link Usage Information", Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213), IEEE Infocom. pp. 376–385. 2001, vol. 1, pp. 376–385, doi:10.1109/INFCOM.2001.916720, ISBN   0-7803-7016-3, S2CID   13870642.
  35. Tran Cong Hung, Le Quoc Cuong, Tran Thi Thuy Mai (10 Feb 2019). "A Study on Any Transport over MPLS (AToM)" (PDF). International Conference on Advanced Communications Technology. Retrieved 5 February 2020.{{cite web}}: CS1 maint: multiple names: authors list (link)
  36. ITU-T I.150 3.1.3.1
  37. "Is MPLS faster?". www.802101.com. 2017-08-04. Retrieved 2017-08-05.
  38. Alwayn, Vivek. (2002). Advanced MPLS design and implementation. Indianapolis, Ind.: Cisco Press. ISBN   158705020X. OCLC   656875465.
  39. Salah M. S. Buraiky (December 2018). "An Informal Guide to the Engines of Packet Forwarding". Juniper Forums.
  40. Richard A Steenbergen (June 13–16, 2010). "MPLS for Dummies" (PDF). NANOG.
  41. Joseph M. Soricelli with John L. Hammond, Galina Diker Pildush, Thomas E. Van Meter, Todd M. Warble (June 2003). Juniper JNCIA Study Guide (PDF). Wiley. ISBN   0-7821-4071-8.{{cite book}}: CS1 maint: multiple names: authors list (link)

Further reading