- What Is MPLS?
- Why Is MPLS Needed?
- How Is MPLS Done?
- When and Where Is MPLS Used?
- Who Is Doing MPLS?
- The Label Switching Paradigm
- A Quick Introduction to MPLS
- Evolution of Internet Network Models
- Basics of the Internet
- Internetworking Technology Basics
- More Basics: Graph Theory and Modeling Language
- The Promise of MPLS
- The Promise of the Promise of MPLS
How Is MPLS Done?
MPLS can be thought of as a set of technologies that works together to deliver packets from source to destination in a controlled, efficient, and predictable manner. It uses label-switched paths (LSPs) for Layer 2 forwarding that have been set up with Layer 3 routing and signaling protocols.
Because the concepts of forwarding, switching, and routing are central to understanding how MPLS works, it is important to state and understand their definitions.
Because this is a primer. . .
Three important concepts that set the groundwork for understanding MPLS are forwarding, switching, and routing.
ForwardingThe process of receiving a packet on an input port and sending it out an output port.
SwitchingThe knowledge of directing the forwarding process to choose the correct output port. A switch is a device that operates on Layer 2 header information to direct the forwarding process.
RoutingThe process of setting up routes to understand the next hop a packet should take toward its destination between networks. A router is the device that sets up the tables that understand the network to accomplish this. The router operates on the Layer 3 packet header to analyze the best forwarding path a packet should take to go from network to network.
A router network device forwards a packet from source to destination by receiving, switching, and then forwarding it from device to device until it reaches its destination. Figure 13 shows this general model. The control plane maintains the set of possible routes that a packet may use to get to its next hop. In the general model, a packet enters a network device through an input interface or port. The packet is processed by a receive logic that passes the necessary information about the packet to the decision logic. The decision logic, which has information continually supplied to it from the control plane process that maintains the routes, gives the updated packet information to the transmit logic, which forwards the packet via the proper output port to its next destination device.
Figure 13 Routing, switching, and forwarding.
supplied to it from the control plane process that maintains the routes, gives the updated packet information to the transmit logic, which forwards the packet via the proper output port to its next destination device.
This is a greatly simplified model that varies between networking technologies, but it is a good starting point for discussing how MPLS is done. MPLS technologies offer a new model for how routing, switching, and forwarding play together to move packets within the Internet.
Another often-encountered model for how packets should flow between network devices such as routers is shown in Figure 14. The traffic that flows in the network can be thought of as essentially two types: control traffic, which includes routing and management information, and data traffic, which is, well, everything else.
Figure 14 The "fast path" and the "slow path."
The data traffic follows the "fast path" and is processed by the network devices in an efficient and timely manner. In most modern network devices, the fast path is realized in hardware. Any time the network device encounters a packet that is not data (and it can tell this by examining the packet header), the information about the packet is sent "up" to the control path for processing. Control packets include the information that is required for routing packets destined for that particular network device, any other packets that contain management information, data packets with options, exceptions, and so on. These packets are processed more slowly because they need to be examined by software. Because of this, this processing path is often called the "slow path."
This model is also important for introducing how MPLS works because it depicts the separation of the control path and the forwarding path. The ability of MPLS to decouple these important functions is what makes it a serious new contender for changing how data packets will be sent over the Internet.
MPLS has been specified to work with many different Layer 2 and Layer 3 protocols, and also to function in many different types of network devices.
"Layer 2.5 technology" is another phrase that is often used to describe what MPLS is. Figure 15 shows that MPLS is often depicted as a new "shim layer" that has interposed itself between the network and data link layers.
Figure 15 The MPLS "shim layer."
While this initially appears to be a gross violation of the OSI communication model used to explain network protocols and interfaces, as well as the partitioning of functionality and services within a layer, it will be shown that MPLS is not an explicit new layer, but rather a binding of the control plane at the "bottom" of the network layer with the data forwarding plane at the "top" of the data link layer. MPLS is not a new network layer protocol because it does not have its own routing capabilities or an addressing scheme, which are required for a Layer 3 protocol. MPLS uses IP addressing and IP routing protocols (with the necessary modifications and extensions). MPLS is also not a new data link layer protocol because it has been designed to work over many of the popular data link technologies that provide the requisite Layer 2 addressing and functionality.