MPLS (Multiprotocol Label Switching) is a data forwarding method using labels instead of IP addresses. It is a simple, secure and fast technology that can encapsulate and transport many kinds of protocols (Ethernet, ATM, Frame-Relay, etc.), hence the name Multiprotocol.
Also, there is visibility of IP addressing, as MPLS operates both in Layer 2 and Layer 3 of the OSI network model. MPLS is mainly used by ISPs to provide Virtual Private Networks (VPNs), and we see its deployment in large enterprises as well.
A major feature of MPLS is its traffic engineering capabilities. Resource management, performance and optimization are essential for Service Providers to deliver high-end services to their multiple customers, which span across the MPLS backbone.
MPLS essentially builds several paths called LSPs (Label Switch Path), based on required recourses and network capabilities. Then it transmits that data to the Interior Gateway Protocol (OSPF, IS-IS), and IGP routes data through these fast LSP paths, using labels. Also, there is support for Quality of Service (QoS), since the MPLS header contains 3bit EXP (Experimental Field) Class of Service.
Cisco has a large role in MPLS technology and it is implemented in almost all of their high-end routers. Although providing advantageous capabilities, there is still a learning curve regarding MPLS, and there’s a chance of making mistakes that will affect large-scale topologies.