Posted By: technopediasite
Definition
Multiprotocol label switching (MPLS) is a versatile solution to address the problems faced by present-day networks—speed, scalability, quality-of-service (QoS) management, and traffic engineering. MPLS has emerged as an elegant solution to meet the bandwidth-management and service requirements for next-generation Internet protocol (IP)–based backbone networks. MPLS addresses issues related to scalability and routing (based on QoS and service quality metrics) and can exist over existing asynchronous transfer mode (ATM) and frame-relay networks.
MPLS System |
Definition
Multiprotocol label switching (MPLS) is a versatile solution to address the problems faced by present-day networks—speed, scalability, quality-of-service (QoS) management, and traffic engineering. MPLS has emerged as an elegant solution to meet the bandwidth-management and service requirements for next-generation Internet protocol (IP)–based backbone networks. MPLS addresses issues related to scalability and routing (based on QoS and service quality metrics) and can exist over existing asynchronous transfer mode (ATM) and frame-relay networks.
Introduction About MPLS
Over the last few years, the Internet has evolved into a
ubiquitous network and inspired the development of a variety of new
applications in business and consumer markets. These new applications have
driven the demand for increased and guaranteed bandwidth requirements in the
backbone of the network. In addition to the traditional data services currently
provided over the Internet, new voice and multimedia services are being
developed and deployed. The Internet has emerged as the network of choice for
providing these converged services. However, the demands placed on the network
by these new applications and services, in terms of speed and bandwidth, have
strained the resources of the existing Internet infrastructure. This
transformation of the network toward a packet- and cell-based infrastructure
has introduced uncertainty into what has traditionally been a fairly
deterministic network.
In
addition to the issue of resource constraints, another challenge relates to the
transport of bits and bytes over the backbone to provide differentiated classes
of service to users. The exponential growth in the number of users and the
volume of traffic adds another dimension to this problem. Class of service
(CoS) and QoS issues must be addressed to in order to support the diverse
requirements of the wide range of network users.
In
sum, despite some initial challenges, MPLS will play an important role in the
routing, switching, and forwarding of packets through the next-generation
network in order to meet the service demands of the network users.
Traditional Routing and Packet Switching
The initial deployment of the Internet addressed the
requirements of data transfer over the network. This network catered to simple
applications such as file transfer and remote login. To carry out these
requirements, a simple software-based router platform, with network interfaces
to support the existing T1/E1– or T3/E3–based backbones, was sufficient. As the
demand for higher speed and the ability to support higher-bandwidth
transmission rates emerged, devices with capabilities to switch at the Level-2
(data link) and the Level-3 (network layer) in hardware had to be deployed.
Layer-2 switching devices addressed the switching bottlenecks within the
subnets of a local-area network (LAN) environment. Layer-3 switching devices
helped alleviate the bottleneck in Layer-3 routing by moving the route lookup
for Layer-3 forwarding to high-speed switching hardware.
These early solutions addressed the need for wire-speed
transfer of packets as they traversed the network, but they did not address the
service requirements of the information contained in the packets. Also, most of
the routing protocols deployed today are based on algorithms designed to obtain
the shortest path in the network for packet traversal and do not take into
account additional metrics (such as delay, jitter, and traffic congestion),
which can further diminish network performance. Traffic engineering is a
challenge for network managers.
MPLS and Its Components
What Is MPLS?
MPLS is an Internet Engineering Task Force (IETF)–specified
framework that provides for the efficient designation, routing, forwarding, and
switching of traffic flows through the network.
MPLS performs the following functions:
➤specifies
mechanisms to manage traffic flows of various granularities, such as flows
between different hardware, machines, or even flows between different
applications
➤remains independent of the Layer-2 and
Layer-3 protocols
➤provides a means to
map IP addresses to simple, fixed-length labels used by different
packet-forwarding and packet-switching technologies
➤interfaces to
existing routing protocols such as resource reservation protocol (RSVP) and
open shortest path first (OSPF)
➤supports the IP,
ATM, and frame-relay Layer-2 protocols
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. LSPs are established either prior to data
transmission (control-driven) or upon detection of a certain flow of data
(data-driven). The labels, which are underlying protocol-specific identifiers,
are distributed using label distribution protocol (LDP) or RSVP or piggybacked
on routing protocols like border gateway protocol (BGP) and OSPF. Each data
packet encapsulates and carries the labels during their journey from source to
destination. 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.
LSRs and LERs
The devices that participate in the MPLS protocol mechanisms
can be classified into label edge routers (LERs) and label switching routers
(LSRs).
An LSR is a high-speed router device in the core of an MPLS
network that participates in the establishment of LSPs using the appropriate
label signaling protocol and high-speed switching of the data traffic based on
the established paths.
An LER is a device that operates at the edge of the access
network and MPLS network. LERs support multiple ports connected to dissimilar
networks (such as frame relay, ATM, and Ethernet) and forwards this traffic on
to the MPLS network after establishing LSPs, using the label signaling protocol
at the ingress and distributing the traffic back to the access networks at the
egress. The LER plays a very important role in the assignment and removal of
labels, as traffic enters or exits an MPLS network.
FEC
The forward equivalence class (FEC) is a representation of a
group of packets that share the same requirements for their transport. All
packets in such a group are provided the same treatment en route to the
destination. As opposed to conventional IP forwarding, in MPLS, the assignment
of a particular packet to a particular FEC is done just once, as the packet
enters the network. FECs are based on service requirements for a given set of
packets or simply for an address prefix. Each LSR builds a table to specify how
a packet must be forwarded. This table, called a label information base (LIB),
is comprised of FEC–to-label bindings.
Labels and Label Bindings
A label, in its simplest form, identifies the path a packet
should traverse. A label is carried or encapsulated in a Layer-2 header along
with the packet. The receiving router examines the packet for its label content
to determine the next hop. Once a packet has been labeled, the rest of the
journey of the packet through the backbone is based on label switching. The
label values are of local significance only, meaning that they pertain only to
hops between LSRs.
Once a packet has been classified as a new or existing FEC,
a label is assigned to the packet. The label values are derived from the
underlying data link layer. For data link layers (such as frame relay or ATM),
Layer-2 identifiers, such as data link connection identifiers (DLCIs) in the
case of frame-relay networks or virtual path identifiers (VPIs)/virtual channel
identifiers (VCIs) in case of ATM networks, can be used directly as labels. The
packets are then forwarded based on their label value.
Labels are bound to an FEC as a result of some event or
policy that indicates a need for such binding. These events can be either
data-driven bindings or control-driven bindings. The latter is preferable
because of its advanced scaling properties that can be used in MPLS.
Label assignment decisions may be based on forwarding
criteria such as the following:
⏩destination unicast
routing
⏩traffic
engineering
⏩multicast
⏩virtual private
network (VPN)
⏩QoS
The generic label format is illustrated in below figure-1 . The
label can be embedded in the header of the data link layer (the ATM VCI/VPI
shown in Figure-2 and the frame-relay DLCI also shown in Figure-3 ) or in the shim
(between the Layer-2 data-link header and Layer-3 network layer header, as
shown in Figure ).
MPLS Frame Relay |
Label Creation
There are several methods used in label
creation:
⏩topology-based
method—uses normal processing of routing protocols (such as OSPF and BGP)
⏩request-based
method—uses processing of request-based control traffic (such as RSVP)
⏩traffic-based
method—uses the reception of a packet to trigger the assignment and
distribution of a label.
The topology- and request-based methods are examples of
control-driven label bindings, while the traffic-based method is an example of
data-driven bindings.
Label Distribution
MPLS architecture does not mandate a single method of
signaling for label distribution. Existing routing protocols, such as the
border gateway protocol (BGP), have been enhanced to piggyback the label
information within the contents of the protocol. The RSVP has also been
extended to support piggybacked exchange of labels. The Internet Engineering
Task Force (IETF) has also defined a new protocol known as the label
distribution protocol (LDP) for explicit signaling and management of the label
space. Extensions to the base LDP protocol have also been defined to support
explicit routing based on QoS and CoS. requirements. These extensions are
captured in the constraint-based routing (CR)–LDP protocol definition.
A summary of the various schemes for label exchange is as
follows:
⏩LDP—maps unicast IP
destinations into labels
⏩RSVP, CR–LDP—used
for traffic engineering and resource reservation
⏩protocol-independent multicast (PIM)—used for multicast states label
mapping
⏩BGP—external labels
(VPN)
Label-Switched Paths (LSPs)
A collection of MPLS–enabled devices represents an MPLS
domain. Within an MPLS domain, a path is set up for a given packet to travel
based on an FEC. The LSP is set up prior to data transmission. MPLS provides
the following two options to set up an LSP.
⏩hop-by-hop
routing—Each LSR independently selects the next hop for a given FEC. This
methodology is similar to that currently used in IP networks. The LSR uses any
available routing protocols, such as OSPF, ATM private network-to-network
interface (PNNI), etc.
⏩explicit
routing—Explicit routing is similar to source routing. The ingress LSR (i.e.,
the LSR where the data flow to the network first starts) specifies the list of
nodes through which the ER–LSP traverses. The path specified could be
nonoptimal, as well. Along the path, the resources may be reserved to ensure
QoS to the data traffic. This eases traffic engineering throughout the network,
and differentiated services can be provided using flows based on policies or
network management methods.
The LSP setup for an FEC is unidirectional in nature. The
return traffic must take another LSP.
Label Spaces
The labels used by an LSR for FEC–label bindings are
categorized as follows:
⏩per platform—The label values are unique
across the whole LSR. The labels are allocated from a common pool. No two
labels distributed on different interfaces have the same value.
⏩per interface—The
label ranges are associated with interfaces. Multiple label pools are defined
for interfaces, and the labels provided on those interfaces are allocated from
the separate pools. The label values provided on different interfaces could be
the same.
Label Merging
The incoming streams of traffic from different interfaces
can be merged together and switched using a common label if they are traversing
the network toward the same final destination. This is known as stream merging
or aggregation of flows.
If the underlying transport network is an ATM network, LSRs
could employ virtual path (VP) or virtual channel (VC) merging. In this
scenario, cell interleaving problems, which arise when multiple streams of
traffic are merged in the ATM network, need to be avoided.
Label Retention
MPLS defines the treatment for label bindings received from
LSRs that are not the next hop for a given FEC. Two modes are defined.
⏩conservative—In
this mode, the bindings between a label and an FEC received from LSRs that are
not the next hop for a given FEC are discarded. This mode requires an LSR to
maintain fewer labels. This is the recommended mode for ATM–LSRs.
⏩liberal—In this
mode, the bindings between a label and an FEC received from LSRs that are not
the next hop for a given FEC are retained. This mode allows for quicker
adaptation to topology changes and allows for the switching of traffic to other
LSPs in case of changes.
Label Control
MPLS defines modes for distribution of labels to neighboring
LSRs.
⏩independent—In this
mode, an LSR recognizes a particular FEC and makes the decision to bind a label
to the FEC independently to distribute the binding to its peers. The new FECs
are recognized whenever new routes become visible to the router.
⏩ordered—In this
mode, an LSR binds a label to a particular FEC if and only if it is the egress
router or it has received a label binding for the FEC from its next hop LSR.
This mode is recommended for ATM–LSRs.
Signaling Mechanisms
⏩label request—Using
this mechanism, an LSR requests a label from its downstream neighbor so that it
can bind to a specific FEC. This mechanism can be employed down the chain of
LSRs up until the egress LER (i.e., the point at which the packet exits the
MPLS domain).
⏩label mapping—In
response to a label request, a downstream LSR will send a label to the upstream
initiator using the label mapping mechanism.
Mapping
are explained in below Figure
MPLS Signaling Mechanisms |
Label Distribution Protocol (LDP)
The LDP is a new protocol for the distribution of label
binding information to LSRs in an MPLS network. It is used to map FECs to
labels, which, in turn, create LSPs. LDP sessions are established between LDP
peers in the MPLS network (not necessarily adjacent). The peers exchange the
following types of LDP messages:
⏩discovery messages—announce
and maintain the presence of an LSR in a network
⏩session
messages—establish, maintain, and terminate sessions between LDP peers
⏩advertisement
messages—create, change, and delete label mappings for FECs
⏩notification
messages—provide advisory information and signal error information.
Label Stack
The label stack mechanism allows for hierarchical operation
in the MPLS domain. It basically allows MPLS to be used simultaneously for
routing at the fine-grain level (e.g., between individual routers within an
Internet service provider [ISP] and at a higher domain-by-domain level). Each
level in a label stack pertains to some hierarchical level. This facilitates a
tunneling mode of operation in MPLS.
Traffic Engineering
Traffic
engineering is a process that enhances overall network utilization by
attempting to create a uniform or differentiated distribution of traffic
throughout the network. An important result of this process is the avoidance of congestion on any one path. It
is important to note that traffic engineering does not necessarily select the
shortest path between two devices. It is possible that, for two packet data
flows, the packets may traverse completely different paths even though their
originating node and the final destination node are the same. This way, the
less-exposed or less-used network segments can be used and differentiated
services can be provided.
In MPLS, traffic engineering is inherently provided using
explicitly routed paths. The LSPs are created independently, specifying
different paths that are based on user-defined policies. However, this may
require extensive operator intervention. RSVP and CR–LDP are two possible
approaches to supply dynamic traffic engineering and QoS in MPLS.
CR
Constraint-based routing (CR) takes into account parameters,
such as link characteristics (bandwidth, delay, etc.), hop count, and QoS. The
LSPs that are established could be CR–LSPs, where the constraints could be
explicit hops or QoS requirements. Explicit hops dictate which path is to be
taken. QoS requirements dictate which links and queuing or scheduling
mechanisms are to be employed for the flow.
When using CR, it is entirely possible that a longer (in
terms of cost) but less loaded path is selected. However, while CR increases
network utilization, it adds more complexity to routing calculations, as the
path selected must satisfy the QoS requirements of the LSP. CR can be used in
conjunction with MPLS to set up LSPs. The IETF has defined a CR–LDP component
to facilitate constraint-based routes.
0 Comments