Telecoms16.09.2010

The M in MPLS often stands for misunderstood

Multi-protocol label switching (MPLS) is a standards-based technology used to optimise the intelligence and enhance the services available on internet protocol (IP) communication networks. While the added flexibility and power provided by MPLS make it the de facto choice for next-generation network designs, its true nature and scope are still often misunderstood.

Contrary to popular belief, at its foundation MPLS was not designed to create IP based virtual private networks (VPNs), nor was it designed to enforce quality of service (QoS) on IP networks, however both can and should leverage MPLS in modern network design. So what then was MPLS actually designed to do?

To understand one must examine the forwarding mechanics of traditional IP routing. An IP router determines the appropriate destination for an arriving packet by matching the destination address in the packet’s header to an entry in its routing table (list of known destinations). Once matched, the hardware address of the device that’s the next hop in the path is looked up, and the packet is physically transmitted to it.

In relative terms, these IP layer lookups are quite computationally-intensive and have to be performed for every packet entering every router along every used path. When scaled to the traffic volumes and number of destinations in large enterprise and especially service provider networks, this can become an issue.

MPLS was thus born out of the need to find a more efficient method for forwarding IP (and other) traffic. Fundamentally MPLS is a highly-optimised virtual addressing and forwarding mechanism that sits in between the IP and hardware/transport layers. Its primary purpose is to eliminate the need to perform costly IP layer computations at each hop in the network path.

MPLS achieves this by pre-calculating the forwarding information for every viable end-to-end path in the network and disseminating this between participating routers in the form of inter-associated identifiers called labels, hence the technology’s name. This allows intermediate routers to switch packets from inbound to outbound interfaces at high speed based on the packet’s label, without the need to reference or compute anything at the IP layer.

From its beginnings as an optimised forwarding mechanism, MPLS has been adapted to interact with other technologies to provide enhanced services. The most prevalent and visible of these is MPLS-VPN, a mechanism to provide IP-based VPNs.

While it has the term MPLS in the name, MPLS-VPN is primarily built upon two other related technologies. The first is virtual routing and forwarding (VRF), allowing multiple router instances to exist on one physical router (think of it as multiple distinct personalities). The second is multi-protocol BGP, a mechanism used to disseminate available destinations (IP routes) enhanced to work in a manner that ensures they remain separate between groups of associated VRFs that form each VPN.

So what role does MPLS play? If multiple VPNs are hosted on a single network, it is permissible, in fact commonplace for them to carry duplicate addressing and destination information. When a packet arrives at a router destined for a duplicated destination, how does the router know which VPN it was actually intended for? This is where MPLS comes into play.

MPLS’s labelling scheme was extended to also carry VPN identification information. When an MPLS-VPN router sends a packet to one of its peers, not only does it add a forwarding label, but also a second VPN-ID label, stacked underneath the first. While intermediate routers along the path ignore the second stacked label, the terminating peer router uses it to determine the correct VPN for which the packet was meant.

It is therefore mandatory for all communication between VRFs to use MPLS, thereby ensuring the integrity and insulation of VPNs. In a similar vein to MPLS-VPN, MPLS has also been extended to provide VPN services at layers below IP, most notably Ethernet.

Ethernet over MPLS (EoMPLS) enables a port on one end of a network to exchange Ethernet packets exclusively with another on the other end. MPLS’s labelling scheme is used to create a pseudo wire-joining (bridging) the two ports in a seamless and transparent manner.

Native EoMPLS can only be used for point-to-point application. However when combined with further extension to multi-protocol BGP enabling the dissemination of virtual LAN port membership, MPLS can be used to create wide-area multi-port Ethernet LANs. These mechanisms working in unison are collectively referred to as virtual private LAN services (VPLS). The primary differentiation in comparison to MPLS-VPN is that the host network need not have any association/interaction with the VPN’s IP layer addressing and routing architecture.

While the service related enhancements to MPLS have garnered much of the attention, enhancements to its core forwarding intelligence and capabilities have also progressed greatly since inception. The most useful and powerful of these is MPLS traffic engineering (MPLS-TE).

As MPLS creates an abstraction layer between the IP and hardware/transport layers, it provides network operators with the opportunity bend and mould networks beyond the confines of their physical topology (layout). Again by manipulating the underlying stacked labelling scheme, MPLS-TE allows for the creation of virtual paths (referred to as TE tunnels) through the network.

These tunnels provide granular control over a multitude of path characteristics such as exact route taken, what should happen in the event of a failure, how traffic should be load-balanced, amongst many others. They also have the ability to ensure the network has the necessary resources (bandwidth) to fulfil the specified requirements of the path.

It should be noted though, while MPLS-TE is fully aware of bandwidth availability/requirements from a path provisioning and re-routing perspective, it is not involved in the actual management of bandwidth usage (i.e. QoS). QoS enforcement is still handled by the traditional queuing and shaping mechanisms as used for IP (adapted for MPLS).

The additional structure/order imposed by MPLS-TE does however make it simpler to apply QoS policies in a more logical and effective manner. In essence MPLS-TE provides the tools to squeeze ever last ounce of efficiency out of the network, ultimately leading to the maximisation of its cost effectiveness and resilience.

EngineerIT

The M in MPLS often stands for misunderstood << Comments and views

Show comments

Latest news

More news

Trending news

Poll

Which personal cloud data storage plan are you most likely to use?

View Results

Loading ... Loading ...
Sign up to the MyBroadband newsletter