MPLS - A WAN routing technique
Author |
Date |
Revision |
Samuel Knoppe |
4/22/2024 | 1.0 |
Related product (if any): |
N/A |
Description: | Describes Multiprotocol Label Switching (MPLS) and how it works. |
Notes: |
Need perquisite knowledge of the OSI Model, network switching, network routing, EGPs and IGPs, OSPF, IS-IS, and BGP. |
Files Needed: |
N/A |
Information: |
What is MPLS? Multiprotocol label switching (MPLS) is a technique for speeding up network connections developed in the 1990s. Normally the public Internet forwards packets from one router to another, but MPLS sends packets along a predetermined network path. This ideally results in less time spend deciding where to forward each packet, since each packet takes the same path every time.
Another way of looking at this is that MPLS defines different network paths instead of a series of intermediary destinations--routers.
MPLS is considered to operate as OSI layer 2.5, so below the network layer (layer 3) and above the data link layer (layer 2).
How does MPLS work? Normally anything sent from one network to another is divided up into smaller pieces called packets instead of getting sent all at once. For these packets to reach their intended destination each router hop must reference and maintain a routing table until the packet reaches the same network as its destination IP address. This approach works well in most cases, since most of the Internet runs using IP addresses and routing tables, but some organizations want their data to travel fast over paths they can directly control.
The path a packet takes under the routing method can be different each time, but with MPLS packets take the same path each time. The way this is done in a network that uses MPLS is that each packet is assigned a forwarding equivalence class (FEC). The network paths that packets can take are called label-switched paths (LSP). A packet's class (FEC) determines which path (LSP) the packet will be assigned to. Packets with the same FEC will follow the same LSP.
Each packet can contain one or more labels, and all labels are contained in an MPLS header, which is added on top of all of the other headers attached to a packet. FECs are labeled within each packet's labels. Routers do not examine the other headers; meaning, they can essentially ignore the IP header entirely. Instead, they examine the packet's label and direct the right packet to the right LSP. Because MPLS-supporting routers only need to see the MPLS labels attached to a packet, MPLS can work with any protocol, hence the name. It doesn't matter how the rest of the packet is formatted as long as the router can read the MPLS labels at the front of the packet.
So for instance, you can have traffic routed via BGP be encapsulated within an MPLS header, which label switches those packets to a designated MPLS router, then the MPLS header is removed and the BGP headers do their thing and route the traffic over to its destination. This will also work with IS-IS traffic, and OSPF--it doesn't matter what routing protocol is used, if any.
This image displays an example of an MPLS topology with VPNs configured. Notice the various LSPs, and the FECs (VRF 1, 2, 3, 4).
The drawbacks of MPLS The biggest drawback to MPLS is the lack of encryption. MPLS can be 'private' in the sense that an organization uses certain MPLS paths, but without the use of a VPN, this traffic is sent via plaintext.
Another significant drawback is cost. MPLS is more expensive than regular Internet service.
MPLS also has long setup times. Setting up complicated dedicated paths across one or more large networks takes time. LSPs have to be manually configured by the MPLS vendor or by the organization using MPLS. This makes scaling up networks quickly very difficult.
There is also the challenge of cloud services. Since cloud services rely on direct connections to cloud servers, cloud services and applications may not work properly.
When is MPLS used? Speed and reliability are the main reasons why MPLS is used. So real-time traffic like voice and video calls are common traffic that requires extra speed and is more sensitive to latency issues and would benefit the most from MPLS.
MPLS is also used to set up wide area networks (WANs). However, as discussed above, scaling these WANs up is quite difficult. Some ISPs are known to use MPLS for their network traffic. Certain organizations like school districts also are known to use MPLS.
SD-WAN: The future of WAN routing MPLS has been used for nearly two decades, and is costly and time-consuming to create and maintain. Software-defined wide-area networking (SD-WAN) is a software-based approach to managing the WAN. SD-WAN is an evolution in connectivity from traditional MPLS technology, enabling traffic prioritization, and enables customers to take advantage of various transport methods including MPLS circuits, direct Internet broadband, and LTE/5G. It makes management simplier by making it independent of transport layers.
Cloud services and remote work are the biggest benefits SD-WAN has over traditional MPLS. It provides edge users with more secure and reliable connects when they access enterprise applications and data while providing a predictable user experience. SD-WAN allows enterprises to prioritize data based on its type and then choose the shortest, fastest, and most reliable and cost-effective path available.
However, despite its benefits over MPLS, some organizations may not need to SD-WAN or cannot use it due to security and compliance reasons. Some organizations do not use cloud services and thus do not have a need for something like SD-WAN. Some use hybrid services and use both.
The specifics of SD-WAN and how it works are beyond the scope of this document, but given its ability to more easily support cloud services, its likely to rise in prominence in the coming years. However, due to MPLS's reliability and long-time standing, its unlikely to go away anytime soon, either. |
No Comments