MPLS Overview
DC-MPLS
Metaswitch is the leading supplier of portable MPLS protocol software,
supplying a wide range of manufacturers with packet and optical MPLS control
plane code
Multi-Protocol Label Switching
(MPLS) defines a mechanism for packet forwarding in network routers. It was
originally developed to provide faster packet forwarding than traditional
IP routing, although improvements in router hardware have reduced the importance
of speed in packet fowarding. However, the flexibility of MPLS has led to
it becoming the default way for modern networks to achieve Quality of Service
(QoS), next generation VPN services, and optical signaling.
Traditional IP networks are
connectionless: when a packet is received, the router determines the next
hop using the destination IP address on the packet alongside information from its
own forwarding table. The router's forwarding tables contain information on the network
topology. They use an IP routing protocol, such as OSPF, IS-IS, BGP, RIP or
static configuration, to keep their information synchronized with changes
in the network.
MPLS also uses IP addresses, either v4 or v6, to identify end points and
intermediate switches and routers. This makes MPLS networks IP-compatible and easily integrated with traditional IP
networks. However, unlike traditional IP, MPLS flows are connection-oriented and packets are routed along pre-configured
Label Switched Paths (LSPs).
How Does MPLS Work?
MPLS works by tagging packets
with an identifier (a label) to distinguish the LSPs. When a packet is received,
the router uses this label (and sometimes also the link over which it was
received) to identify the LSP. It then looks up the LSP in its own forwarding
table to determine the best link over which to forward the packet, and the
label to use on this next hop.
A different label is used for
each hop, and it is chosen by the router or switch performing the forwarding
operation. This allows the use of very fast and simple forwarding engines,
as the router can select the label to minimize processing.
Ingress routers at the edge
of the MPLS network use the packet's destination address to determine which
LSP to use. Inside the network, the MPLS routers use only the LSP labels to
forward the packet to the egress router.
In the diagram above, LSR (Label
Switched Router) A uses the destination IP address on each packet to select
the LSP, which determines the next hop and initial label for each packet (21
and 17). When LSR B receives the packets, it uses these labels to identify
the LSPs, from which it determines the next hops (LSRs D and C) and labels
(47 and 11). The egress routers (LSRs D and C) strip off the final label and
route the packet out of the network.
As MPLS uses only the label
to forward packets, it is protocol-independent, hence the term "Multi-Protocol"
in MPLS. Packet forwarding has been defined for all types of layer-2 link
technologies, with a different label encoding used in each case.
MPLS Protocols
MPLS defines only the forwarding mechanism; it uses other protocols to
establish the LSPs. Two separate protocols are needed to perform this task: a routing protocol and a signaling
protocol.
MPLS Routing Protocols
The routing protocol distributes network topology information through
the network so that the LSP can be calculated. An interior gateway protocol, such as OSPF or IS-IS, is
normally used, as MPLS networks typically cover a single administrative domain.
However, these routing protocols
only distribute network topology. When traffic engineering is required to
establish LSPs with guaranteed QoS characteristics and backup LSPs that avoid
any single point of failure, the traffic engineering (TE) extensions to these
protocols are used. These extensions distribute QoS and Shared Risk Link Groups
(SRLGs) information on each link in the network. This information enables the route calculator
to determine routes through the network with guaranteed QoS parameters, and backup
LSPs that traverse different links from the primary path.
Mechanisms to extend this traffic
engineering to inter-area and inter-carrier routing are still being agreed.
Our White Paper on "Inter-Area Routing, Path Selection and Traffic Engineering"
provides a detailed discussion of this topic.
MPLS Signaling Protocols
The signaling protocol informs
the switches along the route which labels and links to use for each LSP. This
information is used to program the switching fabric. One of two main signaling
protocols is used, depending on the network requirements.
- RSVP-TE is used where traffic engineering is
required.
- LDP is used when traffic
engineering is not required, as it needs less management.
BGP is also used as a combined routing and MPLS signaling protocol
in some situations. An example of this is BGP/MPLS VPNs.
Advanced MPLS Applications
Optical MPLS
The concept of a label has been
extended in Generalized MPLS (GMPLS). In GMPLS, the label no longer needs
to be carried as an identifier on the data flow, but may be implicit. For
example, time-slots (in SONET/SDH) and wavelengths (in DWDM) can be labels.
In these cases, the label switching operations translate to operations such
as "switch this incoming wavelength onto this outgoing wavelength."
GMPLS is therefore ideal for optical networking, and many extensions
to the protocols have been defined, including user-to-network interfaces and network-to-network interfaces.
MPLS In Hierarchical Networks
MPLS is ideal for hierarchical
networks, where lower-layer switching entities (for example packets) are aggregated
into a higher-layer entity, for example a time-slot, and then once again into
a wavelength and a whole fiber. MPLS allows a label stack to be defined so
that switches can switch higher-layer aggregations and ignore the lower levels
of the label stack. When the flow arrives at a switch capable of handling
lower-layer entities, the switch strips off the outer label and examines the
next lower level in the stack.
One example of the use of label stacking is in BGP/MPLS VPNs, where
a two-deep label stack is used.
- A transport label is used
to route aggregated VPN traffic to the destination edge router in the
provider's network. This is conventional MPLS, using either RSVP-TE or
LDP signaling.
- Once at the destination edge router, the transport
label is stripped off and the second label examined. This label identifies the specific VPN to which
the flow belongs. These VPN labels are signaled in extensions to the BGP protocol.
Related links:
For more information about Metaswitch's MPLS products and expertise contact
.