28_mpls_tsw.pdf

(62 KB) Pobierz
mpls_tsw
28
Chapter Goals
Understand the advantages of MPLS.
Learn the components of an MPLS system.
Compare and contrast MPLS and hop-by-hop routing.
Describe the two methods of label distribution.
Explain the purpose of MPLS traffic engineering.
MPLS/Tag Switching
Background
In a normally routed environment, frames pass from a source to a destination in a hop-by-hop basis.
Transit routers evaluate each frame’s Layer 3 header and perform a route table lookup to determine the
next hop toward the destination. This tends to reduce throughput in a network because of the intensive
CPU requirements to process each frame. Although some routers implement hardware and software
switching techniques to accelerate the evaluation process by creating high-speed cache entries, these
methods rely upon the Layer 3 routing protocol to determine the path to the destination.
Unfortunately, routing protocols have little, if any, visibility into the Layer 2 characteristics of the
network, particularly in regard to quality of service (QoS) and loading. Rapid changes in the type (and
quantity) of traffic handled by the Internet and the explosion in the number of Internet users is putting
an unprecedented strain on the Internet’s infrastructure. This pressure mandates new traffic-management
solutions. MPLS and its predecessor, tag switching, are aimed at resolving many of the challenges facing
an evolving Internet and high-speed data communications in general.
To meet these new demands, multiprotocol label switching (MPLS) changes the hop-by-hop paradigm
by enabling devices to specify paths in the network based upon QoS and bandwidth needs of the
applications. In other words, path selection can now take into account Layer 2 attributes. Before MPLS,
vendors implemented proprietary methods for switching frames with values other than the Layer 3
header. (MPLS is described in more detail in a later section.)
Based upon Cisco’s proprietary tag-switching protocol , the IETF is defining MPLS as a
vendor-independent protocol. (At the time of this writing, the MPLS definitions were not quite
complete.) Although the two protocols have much in common, differences between them prevent
tag-switching devices from interacting directly with MPLS devices. MPLS will likely supercede tag
switching. However, this chapter starts with a comparison of terms involved with tag switching and
MPLS.
Internetworking Technologies Handbook
1-58705-001-3
28-1
CHAPTER
70121459.018.png
 
Chapter 28
MPLS/Tag Switching
MPLS and Tag Switching
MPLS and Tag Switching
MPLS has a heritage stemming from Cisco’s tag-switching protocol. Many similarities exist between the
two protocols. Significant differences exist, too, particularly between the tag and label distribution
protocols. This section focuses on vocabulary differences between tag switching and MPLS. Table 28-1
compares tag switching with MPLS terminology.
Table28-1 Equivalency Table for Cisco Tag Switching and IETF MPLS Terms
Old Tag Switching Terminology
New MPLS IETF Terminology
Tag switching
Multiprotocol label switching (MPLS).
Tag (short for tag switching)
MPLS.
Tag (item or packet)
Label.
Tag Distribution Protocol (TDP)
Label Distribution Protocol (LDP). Cisco TDP
and MPLS Label Distribution Protocol (LDP)
are nearly identical in function, but they use
incompatible message formats and some
different procedures. Cisco is changing from
TDP to a fully compliant LDP.
Tag-switched
Label-switched
Tag forwarding information base
(TFIB)
Label forwarding information base (LFIB)
Tag-switching router (TSR) Label-switching router (LSR)
Tag switch controller (TSC) Label switch controller (LSC)
ATM tag switch router (ATM-TSR) ATM label switch router (ATM-LSR)
Tag VC, tag virtual circuit (TVC) Label VC, label virtual circuit (LVC)
Tag switch path (TSP) Label switch path (LSP)
XTag ATM (extended Tag ATM port) XmplsATM (extended MPLS ATM port)
Definitions follow for the MPLS terms:
Label —A header created by an edge label switch router (edge LSR) and used by label switch routers
(LSR) to forward packets. The header format varies based upon the network media type. For
example, in an ATM network, the label is placed in the VPI/VCI fields of each ATM cell header. In
a LAN environment, the header is a “shim” located between the Layer 2 and Layer 3 headers.
Label forwarding information base —A table created by a label switch-capable device (LSR) that
indicates where and how to forward frames with specific label values.
Label switch router (LSR) —A device such as a switch or a router that forwards labeled entities
based upon the label value.
Edge label switch router (edge LSR) —The device that initially adds or ultimately removes the
label from the packet.
Label switched —When an LSR makes a forwarding decision based upon the presence of a label in
the frame/cell.
Label-switched path (LSP) —The path defined by the labels through LSRs between end points.
Label virtual circuit (LVC) —An LSP through an ATM system.
Internetworking Technologies Handbook
28-2
1-58705-001-3
70121459.019.png
 
70121459.001.png 70121459.002.png 70121459.003.png
Chapter 28 MPLS/Tag Switching
MPLS Operations
Label switch controller (LSC) —An LSR that communicates with an ATM switch to provide and
provision label information within the switch.
Label distribution protocol (LDP) —A set of messages defined to distribute label information
among LSRs.
XmplsATM —The virtual interface between an ATM switch and an LSC.
MPLS Operations
This section illustrates the passage of a frame through an MPLS system to highlight the function of
several key MPLS components. Specifically, it illustrates MPLS through a frame-based infrastructure as
opposed to a cell-based (ATM) system.
In Figure 28-1, a series of LSRs (edge and core) interconnect, forming a physical path between two
elements, Station A and Station B.
Figure28-1 Series of LSRs Interconnect.
Station A
Edge
LSR
Edge
LSR
Station B
S0
S0
e0
e0
R 1
S1
S0
S1
S1
S2
S1
R 4
10.1.1.1
172.16.1.1
S3
S2 S0
R 2
R 3
Core
LSR
Incoming
Incoming
Destination
Outgoing
Outgoing
Router
label
interface
network
interface
label
The frame generated by Station A follows the standard Ethernet format with a normal Layer 2 header
followed by a Layer 3 header. Because the destination address resides in a different network, Station A
targets the Layer 2 header to its default gateway. In this case, the default gateway also serves as the edge
LSR (ingress side). The ingress LSR references its internal switch table (LFIB) and determines that it
needs to forward the frame out port 2 toward the next LSR.
Furthermore, the ingress LSR must insert a label between the Layer 2 and Layer 3 headers to indicate
what path the frame should travel on its way to Station B. Router 2 looks at the frame entering port 1
and determines that there is a label embedded between Layers 2 and 3. Therefore, the router treats the
frame according to the configuration in its LFIB, which says to forward the frame out port 2 and replace
the label with a new value. Each of the subsequent routers handles the frame in a similar manner until
the frame reaches the egress LSR. The egress edge LSR strips off all label information and passes a
Internetworking Technologies Handbook
1-58705-001-3
28-3
70121459.004.png
 
70121459.005.png 70121459.006.png 70121459.007.png 70121459.008.png 70121459.009.png 70121459.010.png 70121459.011.png
 
Chapter 28
MPLS/Tag Switching
MPLS/Tag-Switching Architecture
standard frame to Station B. Because each of the routers between Stations A and B could switch the
frame based upon content in the LFIB and did not need to perform usual routing operation, the frame
was handled more quickly.
MPLS/Tag-Switching Architecture
MPLS relies on two principal components: forwarding and control. The forwarding component uses
labels carried by packets and the label-forwarding information maintained by an LSR to perform packet
forwarding. The control component is responsible for maintaining correct label-forwarding information
among a group of interconnected label switches (LSRs). Details about MPLS’s forwarding and control
mechanisms follow.
Forwarding Component
The forwarding paradigm employed by MPLS is based on the notion of label swapping. When a packet
with a label is received by an LSR, the switch uses the label as an index in its label information base
(LFIB). Each entry in the LFIB consists of an incoming label and one or more subentries (of the form
outgoing label, outgoing interface, outgoing link-level information). If the switch finds an entry with the
incoming label equal to the label carried in the packet, then, for each component in the entry, the switch
replaces the label in the packet with the outgoing label, replaces the link-level information (such as the
MAC address) in the packet with the outgoing link-level information, and forwards the packet over the
outgoing interface.
From the previous description of the forwarding component, we can make several observations. First,
the forwarding decision is based on the exact-match algorithm using a fixed-length, fairly short label as
an index. This enables a simplified forwarding procedure, relative to longest-match forwarding
traditionally used at the network layer.
This, in turn, enables higher forwarding performance (higher packets per second). The forwarding
procedure is simple enough to allow a straightforward hardware imple-mentation. A second observation
is that the forwarding decision is independent of the label’s forwarding granularity. The same forwarding
algorithm, for example, applies to both unicast and multicast: A unicast entry would have a single
(outgoing label, outgoing interface, outgoing link-level information) subentry, while a multicast entry
might have one or more subentries. This illustrates how the same forwarding paradigm can be used in
label switching to support different routing functions.
The simple forwarding procedure is thus essentially decoupled from the control component of label
switching. New routing (control) functions can readily be deployed without disturbing the forwarding
paradigm. This means that it is not necessary to reoptimize forwarding performance (by modifying either
hardware or software) as new routing functionality is added.
Label Encapsulation
Label information can be carried in a packet in a variety of ways:
As a small, shim label header inserted between the Layer 2 and network layer headers
As part of the Layer 2 header, if the Layer 2 header provides adequate semantics (such as ATM)
As part of the network layer header (such as using the Flow Label field in IPv6 with appropriately
modified semantics)
Internetworking Technologies Handbook
28-4
1-58705-001-3
70121459.012.png
 
70121459.013.png 70121459.014.png
 
Chapter 28 MPLS/Tag Switching
Hierarchical Routing
As a result, MPLS can be implemented over any media type, including point-to-point links, multiaccess
links, and ATM. The label-forwarding component is independent of the network layer protocol. Use of
control component(s) specific to a particular network layer protocol enables the use of label switching
with different network layer protocols.
Control Component
Essential to MPLS is the notion of binding between a label and network layer routes. MPLS supports a
wide range of forwarding granularities to provide good scaling characteristics while also
accommodating diverse routing functionality. At one extreme, a label could be associated (bound) to a
group of routes (more specifically, to the network layer reachability information of the routes in the
group). At the other extreme, a label could be bound to an individual application flow (such as an RSVP
flow), or it could be bound to a multicast tree. The control component creates label bindings and then
distributes the label-binding information among LSRs using a Label Distribution Protocol (LDP).
Label Distribution Protocols
With destination-based routing, a router makes a forwarding decision based on the Layer 3 destination
address carried in a packet and the information stored in the forwarding information base (FIB)
maintained by the router. A router constructs its FIB by using the information that the router receives
from routing protocols, such as OSPF and BGP.
To support destination-based routing with MPLS, an LSR participates in routing protocols and
constructs its LFIB by using the information that it receives from these protocols. In this way, it operates
much like a router.
An LSR, however, must distribute and use allocated labels for LSR peers to correctly forward the frame.
LSRs distribute labels using a label distribution protocol (LDP). A label binding associates a destination
subnet to a locally significant label. (Labels are locally significant because they are replaced at each
hop.) Whenever an LSR discovers a neighbor LSR, the two establish a TCP connection to transfer label
bindings. LDP exchanges subnet/label bindings using one of two methods: downstream unsolicited
distribution or downstream-on-demand distribution. Both LSRs must agree as to which mode to use.
Downstream unsolicited distribution disperses labels if a downstream LSR needs to establish a new
binding with its neighboring upstream LSR. For example, an edge LSR may enable a new interface with
another subnet. The LSR then announces to the upstream router a binding to reach this network.
In downstream-on-demand distribution, on the other hand, a downstream LSR sends a binding upstream
only if the upstream LSR requests it. For each route in its route table, the LSR identifies the next hop for
that route. It then issues a request (via LDP) to the next hop for a label binding for that route. When the
next hop receives the request, it allocates a label, creates an entry in its LFIB with the incoming label
set to the allocated label, and then returns the binding between the (incoming) label and the route to the
LSR that sent the original request. When the LSR receives the binding information, the LSR creates an
entry in its LFIB and sets the outgoing label in the entry to the value received from the next hop.
Hierarchical Routing
The IP routing architecture models a network as a collection of routing domains. Within a domain,
routing is provided via interior routing (such as OSPF), while routing across domains is provided via
exterior routing (such as BGP). All routers within domains that carry transit traffic, however (such as
domains formed by Internet service providers), must maintain information provided by exterior routing,
not just interior routing.
Internetworking Technologies Handbook
1-58705-001-3
28-5
70121459.015.png
 
70121459.016.png 70121459.017.png
 
Zgłoś jeśli naruszono regulamin