MPLS: Multiprotocol Label Switching Protocol
Overview
Multiprotocol Label Switching (MPLS), an architecture for fast
packet switching and routing, provides the designation, routing, forwarding and
switching of traffic flows through the network. More specifically, MPLS has
mechanisms to manage traffic flows of various granularities. MPLS is
independent of the layer-2 and layer-3 protocols such as ATM and IP. MPLS
provides a means to map IP addresses to simple, fixed-length labels used by
different packet-forwarding and packet-switching technologies. MPLS interfaces
to existing routing and switching protocols, such as IP , ATM, Frame Relay, Resource ReSerVation Protocol (RSVP) and Open Shortest Path First (OSPF), etc.
In MPLS, data transmission occurs on Label-Switched Paths (LSPs).
LSPs are a sequence of labels at each and every node along the path from the
source to the destination. There are several label distribution protocols
used today, such as Label Distribution Protocol (LDP) or RSVP or piggybacked on routing
protocols like border gateway protocol (BGP ) and OSPF.
High-speed switching of data is possible because the fixed-length labels are
inserted at the very beginning of the packet or cell and can be used by
hardware to switch packets quickly between links.
MPLS is designed to address the network problems such as
networks-speed, scalability, quality-of-service (QoS), and traffic engineering.
MPLS has also become a solution to meet the bandwidth-management and service
requirements for next-generation IP-based backbone networks.
A newer standard Generalized MPLS (GMPLS) extends the MPLS capabilities to cover multiple underlay
traffic technologies such as TDM, FDM, Fiber, Optical etc. with better
management and provisioning schemes.
Protocol
Structure - Multiprotocol Label Switching (MPLS)
MPLS label structure:
20
|
23
|
24
|
32 bit
|
Label
|
Exp
|
S
|
TTL
|
- Label - Label Value carries the
actual value of the Label. When a labeled packet is received, the label
value at the top of the stack is lookedup and learns:
- a) the next hop to which the
packet is to be forwarded;
- b) the operation to be
performed on the label stack before forwarding; this operation may be to
replace the top label stack entry with another, or to pop an entry off the
label stack, or to replace the top label stack entry and then to push one
or more additional entries on the label stack.
- Exp - Experimental Use:
reserved for experimental use.
- S - Bottom of Stack: This bit
is set to one for the last entry in the label stack, and zero for all
other label stack entries
- TTL - Time to Live field is
used to encode a time-to-live value.
The MPLS protocol family includes:
- MPLS: Multi Protocol Label
Switching architecture
- MPLS related routing signaling
protocols such as BGP, ATM PNNI, OSPF etc.
- LDP: Label Distribution
Protocol
- CR-LDP: Constraint-Based LDP
- RSVP-TE: Resource Reservation Protocol
- Traffic Engineering
The
details of each protocols will be discussed in separate documents.
MPLS is defined by IETF (http://www.ietf.org ) RFC 3031 and RFC 3032.