3.2.7 Feature Description - MPLS
Transcript of 3.2.7 Feature Description - MPLS
-
8/10/2019 3.2.7 Feature Description - MPLS
1/114
HUAWEI CX600 Metro Services Platform
V600R003C00
Feature Description - MPLS
Issue 02
Date 2011-09-10
HUAWEI TECHNOLOGIES CO., LTD.
-
8/10/2019 3.2.7 Feature Description - MPLS
2/114
Copyright Huawei Technologies Co., Ltd. 2011. All rights reserved.
No part of this document may be reproduced or transmitted in any form or by any means without prior written
consent of Huawei Technologies Co., Ltd.
Trademarks and Permissions
and other Huawei trademarks are trademarks of Huawei Technologies Co., Ltd.
All other trademarks and trade names mentioned in this document are the property of their respective holders.
Notice
The purchased products, services and features are stipulated by the contract made between Huawei and the
customer. All or part of the products, services and features described in this document may not be within the
purchase scope or the usage scope. Unless otherwise specified in the contract, all statements, information,and recommendations in this document are provided "AS IS" without warranties, guarantees or representations
of any kind, either express or implied.
The information in this document is subject to change without notice. Every effort has been made in the
preparation of this document to ensure accuracy of the contents, but all statements, information, and
recommendations in this document do not constitute the warranty of any kind, express or implied.
Huawei Technologies Co., Ltd.
Address: Huawei Industrial Base
Bantian, Longgang
Shenzhen 518129
People's Republic of China
Website: http://www.huawei.com
Email: [email protected]
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
i
http://www.huawei.com/ -
8/10/2019 3.2.7 Feature Description - MPLS
3/114
About This Document
Purpose
This document describes the MPLS feature in terms of its overview, principle, and applications.
This document together with other types of document helps intended readers get a deep
understanding of the MPLS feature.
Related Versions
The following table lists the product versions related to this document.
Product Name Version
HUAWEI CX600 Metro
Services Platform
V600R003C00SPC300
Intended Audience
This document is intended for:
l Network planning engineers
l Commissioning engineers
l Data configuration engineers
l System maintenance engineers
Symbol Conventions
The symbols that may be found in this document are defined as follows.
Symbol Description
DANGER
Indicates a hazard with a high level of risk, which if not
avoided, will result in death or serious injury.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS About This Document
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
ii
-
8/10/2019 3.2.7 Feature Description - MPLS
4/114
Symbol Description
WARNING
Indicates a hazard with a medium or low level of risk, which
if not avoided, could result in minor or moderate injury.
CAUTION
Indicates a potentially hazardous situation, which if not
avoided, could result in equipment damage, data loss,
performance degradation, or unexpected results.
TIP Indicates a tip that may help you solve a problem or save
time.
NOTE Provides additional information to emphasize or supplement
important points of the main text.
Change History
Updates between document issues are cumulative. Therefore, the latest document issue contains
all updates made in previous issues.
Changes in Issue 02 (2011-09-10)
Second commercial release.
Changes in Issue 01 (2011-06-30)Initial field trial release.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS About This Document
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
iii
-
8/10/2019 3.2.7 Feature Description - MPLS
5/114
Contents
About This Document.....................................................................................................................ii
1 MPLS Overview.............................................................................................................................1
1.1 Introduction to MPLS.........................................................................................................................................2
1.2 References..........................................................................................................................................................21.3 Principles............................................................................................................................................................3
1.3.1 Concepts....................................................................................................................................................3
1.3.2 Establishing LSPs....................................................................................................................................10
1.3.3 MPLS Forwarding...................................................................................................................................12
1.3.4 MPLS Ping/Traceroute............................................................................................................................17
1.4 Applications......................................................................................................................................................19
1.4.1 MPLS-based VPN...................................................................................................................................19
1.4.2 PBRto an LSP.........................................................................................................................................20
1.5 Terms andAbbreviations..................................................................................................................................21
2 MPLS LDP.....................................................................................................................................24
2.1 Introduction to LDP..........................................................................................................................................25
2.2 References........................................................................................................................................................25
2.3 Principles..........................................................................................................................................................25
2.3.1 Concepts..................................................................................................................................................26
2.3.2 LDPSessions...........................................................................................................................................27
2.3.3 Advertising and Managing Labels...........................................................................................................28
2.3.4 Establishment of LDP LSP......................................................................................................................31
2.3.5 LDP Extension for Inter-Area LSP.........................................................................................................31
2.3.6 Outbound and Inbound LDP Policies......................................................................................................33
2.3.7 LDP-IGP Synchronization.......................................................................................................................34
2.3.8 Synchronization Between LDP and Static Routes..................................................................................36
2.3.9 LDPGR...................................................................................................................................................37
2.3.10 LDP NSR...............................................................................................................................................38
2.3.11 LDP FRR...............................................................................................................................................38
2.3.12 LDP MTU..............................................................................................................................................40
2.3.13 LDP MD5..............................................................................................................................................41
2.3.14 LDP Authentication...............................................................................................................................41
2.3.15 Distributing Labels for BGP by LDP....................................................................................................42
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS Contents
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
iv
-
8/10/2019 3.2.7 Feature Description - MPLS
6/114
2.3.16 LDP over TE..........................................................................................................................................45
2.3.17 LDP GTSM............................................................................................................................................46
2.3.18 Coexistence of the Local and Remote LDP Sessions............................................................................47
2.3.19 Distributing Labels for All Peers by LDP.............................................................................................48
2.4 Terms and Abbreviations..................................................................................................................................49
3 MPLS TE........................................................................................................................................51
3.1 Introduction to MPLS TE.................................................................................................................................52
3.2 References........................................................................................................................................................56
3.3 Principles..........................................................................................................................................................57
3.3.1 RSVP-TE.................................................................................................................................................58
3.3.2 Make-Before-Break.................................................................................................................................59
3.3.3 P2MP RSVP-TE......................................................................................................................................60
3.3.4 Automatic Bandwidth Adjustment..........................................................................................................63
3.3.5 Re-optimization.......................................................................................................................................64
3.3.6 TE FRR....................................................................................................................................................65
3.3.7 SRLG.......................................................................................................................................................69
3.3.8 CR-LSP Backup......................................................................................................................................70
3.3.9 DS-TE......................................................................................................................................................75
3.3.10 Static Bidirectional Co-routed LSP.......................................................................................................87
3.3.11 TE Tunnel Protection Group.................................................................................................................88
3.3.12 BFD for TE CR-LSP.............................................................................................................................90
3.3.13 BFD for TE Tunnel................................................................................................................................92
3.3.14 RSVP Authentication............................................................................................................................93
3.3.15 RSVP GR...............................................................................................................................................94
3.3.16 RSVP Summary Refresh.......................................................................................................................95
3.3.17 RSVP Hello...........................................................................................................................................96
3.3.18 BFD for RSVP.......................................................................................................................................97
3.3.19 TE LSP Configuration Template...........................................................................................................97
3.3.20 Multi-Area Advertisement of an MPLS LSR-ID..................................................................................99
3.4 Terms and Abbreviations................................................................................................................................100
4 MPLS OAM................................................................................................................................102
4.1 Introduction to MPLS OAM...........................................................................................................................103
4.2 References......................................................................................................................................................103
4.3 Principles........................................................................................................................................................104
4.3.1 MPLS OAM Detection..........................................................................................................................104
4.3.2 Reverse Tunnel......................................................................................................................................106
4.3.3 MPLS OAM Auto Protocol...................................................................................................................106
4.3.4 Protection Switching..............................................................................................................................107
4.4 Terms andAbbreviations................................................................................................................................108
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS Contents
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
v
-
8/10/2019 3.2.7 Feature Description - MPLS
7/114
1MPLS OverviewAbout This Chapter
1.1 Introduction to MPLS
1.2 References
1.3 Principles
1.4 Applications
1.5 Terms and Abbreviations
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
1
-
8/10/2019 3.2.7 Feature Description - MPLS
8/114
1.1 Introduction to MPLS
Background of MPLS
The Internet based on the IP technology prevailed in the middle 1990s. The IP technology,
however, performs poorly in forwarding packets because of inevitable software dependence on
searching routes through the longest match algorithm. As a result, the forwarding capability of
IP technology becomes a bottleneck to the network development.
With the evolvement of network technologies, the Asynchronous Transfer Mode (ATM)
technology comes out. It uses labels (namely, cells) of fixed length and maintains a label table
that is much smaller than a routing table. Therefore, compared with the IP technology, the ATM
technology performs much better in forwarding packets. The ATM technology, however, is
difficult to popularize because of its complex protocol and high cost in deployment.
The traditional IP technology is simple and costs little in deployment. People then are eager to
making a technical breakthrough to combine advantages of IP and ATM technologies. Thus, the
MPLS technology comes forth.
Initially, MPLS emerges to increase the forwarding rate of devices. Different from IP routing
in forwarding packets, MPLS analyzes a packet header only on the network edge but not at each
hop. In this manner, the time to process packets is shortened.
The application specific integrated circuit (ASIC) technology is developed and the routing rate
is no longer a bottleneck of the network development. As a result, MPLS does not have
advantages in high-speed forwarding any more. MPLS supports multi-layer labels, and its
forwarding plane is connection-oriented. Thus, MPLS is widely used in Virtual Private Network
(VPN), traffic engineering (TE), and Quality of Service (QoS).
Introduction to MPLS
MPLS works between the data link layer and the network layer in the TCP/IP protocol stack. It
provides the IP layer with connection services and obtains services from the data link layer.
MPLS replaces IP forwarding with label switching. A label is a short connection identifier of
fixed length that is meaningful for the local end. The label is similar to the ATM virtual path
identifier (VPI)/virtual channel identifier (VCI) and the Frame Relay data link connection
identifier (DLCI). The label is encapsulated between the data link layer and the network layer.
MPLS is not limited by any specific protocol of the data link layer and is enabled to use any
Layer 2 media to transfer packets.
The origin of MPLS is the Internet Protocol version 4 (IPv4). The core MPLS technology can
be extended to multiple network protocols, such as the Internet Protocol version 6 (IPv6), Internet
Packet Exchange (IPX), Appletalk, DECnet, and Connectionless Network Protocol (CLNP).
Multiprotocol in MPLS means that the protocol supports multiple network protocols.
In fact, the MPLS technology is a tunneling technology rather than a service or an application.
It supports multiple protocols and services. Moreover, it can ensure the security for data
transmission.
1.2 References
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
2
-
8/10/2019 3.2.7 Feature Description - MPLS
9/114
The following table lists the references of this document:
Document No. Description
RFC 3031 Multiprotocol Label Switching Architecture
RFC 3036 LDP Specification
RFC 3032 MPLS Label Stack Encoding
RFC 3443 Time To Live (TTL) Processing in Multi-Protocol Label
Switching (MPLS) Networks
RFC 3034 Use of Label Switching on Frame Relay Networks
Specification
RFC 2702 Requirements for Traffic Engineering Over MPLS
RFC 3209 RSVP-TE: Extensions to RSVP for LSP Tunnels
RFC 2547 BGP/MPLS VPNs
1.3 Principles
1.3.1 Concepts
MPLS Network Structure
Figure 1-1shows the typical structure of an MPLS network. The fundamental element of an
MPLS network is Label Switching Router (LSR). Many LSRs on a network form an MPLS
domain. LSRs that reside at the edge of an MPLS domain and connect to other networks are
Label Edge Routers (LERs). LSRs within an MPLS domain are core LSRs. If an LSR connects
to one or more adjacent nodes that do not run MPLS, the LSR is the LER. If all the adjacent
nodes of an LSR run MPLS, the LSR is the core LSR.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
3
-
8/10/2019 3.2.7 Feature Description - MPLS
10/114
Figure 1-1MPLS network structure
Core LSR
LER
MPLS networkLER
LER
Core LSR
Core LSRCore LSR
LER
LER
Non- MPLS
network
Non- MPLS
network
Non- MPLS
network
Non- MPLS
network
The transfer of packets in the MPLS domain is based on labels. When IP packets enter an MPLS
network, the LER at the entrance analyzes IP packets and then adds proper labels to them. All
nodes on the MPLS network forward data according to labels. When IP packets leave the MPLS
network, the labels are deleted on the LER that is the exit.
The path that IP packets pass through on an MPLS network is called the LSP. An LSP is a
unidirectional path in the same direction with the data flow.
Figure 1-2MPLS LSP
LSP
MPLS network
Transit
LER
TransitIngress Egress
Core LSR Core LSRLER
Non-MPLS
network
Non-MPLS
network
The beginning node of an LSP is called the ingress. The end node of the LSP is called the egress.
The nodes between both ends along the LSP are transits. An LSP may have none, one, or severaltransit(s), but only one ingress and one egress.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
4
-
8/10/2019 3.2.7 Feature Description - MPLS
11/114
Forwarding Equivalence Class
The forwarding equivalence class (FEC) is a set of data flows with the same attributes. These
data flows are processed in the same way by LSRs during transmission.
FECs can be identified by the address, service type, and QoS. For example, during IP forwardingaccording to the longest match algorithm, packets with the same destination belong to an FEC.
Label
A label is a short identifier of a fixed length that is only meaningful for the local end. It is used
to uniquely identify an FEC to which a packet belongs. In some cases such as load balancing,
an FEC can be mapped to multiple incoming labels, but one label only represents one FEC on
a device. The label is a connection identifier, similar to the ATM VPI/VCI and the Frame Relay
DLCI.
A label is 4 bytes long. Figure 1-3shows the encapsulation structure of the label.
Figure 1-3Structure of the MPLS packet header
A label contains the following fields:
l Label: indicates the value field of a label. The length is 20 bits.
l Exp: indicates the bits used for extension. The length is 3 bits. Generally, this field is used
for the Class of Service (CoS) that serves similarly to Ethernet 802.1p.
l S: identifies the bottom of a label stack. The length is 1 bit. MPLS supports multiple labels,
namely, the label nesting. When the S field is 1, it means that the label is at the bottom of
the label stack.
l TTL: indicates the time to live. The length is 8 bits. This field is the same as the TTL in IP
packets.
Labels are encapsulated between the data link layer and the network layer. Thus, labels can be
supported by all protocols of the data link layer.
Figure 1-4shows the position of the label in a packet.
Figure 1-4Position of the label in a packet
Label Space
Label space means the range of label values. In the CX600 implementation, the label space is
classified as follows:
l 0 to 15: indicates special labels. For details about special labels, see Table 1-1.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
5
-
8/10/2019 3.2.7 Feature Description - MPLS
12/114
l 16 to 1023: indicates the label space shared by static LSPs and static CR-LSPs.
l 1024 or above: indicates the label space for dynamic signaling protocols, such as LDP,
RSVP-TE, and MP-BGP.
The label space for dynamic signaling protocols is independent and successive but cannot
be shared or affect each other. Label space for dynamic signaling protocols is defined bythe license file on the device. To change the label space, you need to modify the license
file.
Table 1-1Special labels
Label Value Label Description
0 IPv4 Explicit
NULL Label
Indicates that the label must be popped out, and the packets
must be forwarded on the basis of IPv4. If the egress
allocates a label whose value is 0 to the penultimate hop,
the penultimate hop LSR needs to push label 0 to the top
of a label stack and forward the packet to the egress. When
the egress finds that the value of the label carried in the
packet is 0, the egress pops out the label. The label 0 is
valid only at the bottom of the label stack.
1 Router Alert
Label
Indicates a label that is only valid when it is not at the
bottom of a label stack. The label is similar to the Router
Alert Option field in IP packets. When the node receives
such a label, the label is sent to a local software module
for further processing. The packet forwarding is
determined by the next layer label. If the packet needs to
be forwarded continuously, the node needs to push the
Router Alert Label to the top of the label stack again.
2 IPv6 Explicit
NULL Label
Indicates that the label must be popped out, and the packets
must be forwarded on the basis of IPv6. If the egress
allocates a label whose value is 2 to the penultimate hop,
the penultimate hop LSR needs to push label 2 to the top
of a label stack and forward the packet to the egress. When
the egress finds that the value of the label carried in the
packet is 2, the egress pops out the label directly. The label
2 is valid only at the bottom of the label stack.
3 Implicit
NULL Label
When the label whose value is 3 is swapped on the
penultimate hop LSR, the penultimate hop LSR pops outthe label and forwards the packet to the egress. After the
egress receives the packet, the egress forwards the IP
packet or the VPN packet.
4 to 13 Reserved None.
14 OAM Router
Alert Label
Indicates a label for the packets of Operation
Administration and Maintenance (OAM) over an MPLS
network. MPLS OAM sends OAM packets to detect LSPs
and notify faults. OAM packets are transparent on transits
and the penultimate LSR.
15 Reserved None.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
6
-
8/10/2019 3.2.7 Feature Description - MPLS
13/114
Label Stack
A label stack is a set of arranged labels. An MPLS packet can carry multiple labels at the sametime. The label next to the Layer 2 header is called the top label or the outer label. The label next
to the Layer 3 header is called the bottom label or inner label. Theoretically, MPLS labels can
be nested limitlessly.
Figure 1-5Label stack
The label stack organizes labels according to the rule of Last-in, First-Out. The labels are
processed from the top of the stack.
Label Operations
Information about the basic label operations is a part of the label forwarding table. The operations
are described as follows:
l Push: When an IP packet enters an MPLS domain, the ingress adds a new label to the packetbetween the Layer 2 header and the IP header; or, an LSR adds a new label to the top of
the label stack, namely, the label nesting.
l Swap: When a packet is transferred within an MPLS domain, the local node swaps the label
at the top of the label stack in the MPLS packet for the label allocated by the next hop
according to the label forwarding table.
l Pop: When a packet leaves an MPLS domain, the label is popped out from the MPLS packet;
or, the top label of the label stack is popped out at the penultimate hop on an MPLS network
to decrease the number of labels in the stack.
Penultimate Hop PoppingIn fact, the label is useless at the last hop of an MPLS domain. In this case, the feature of
penultimate hop popping (PHP) is applied. On the penultimate node, the label is popped out of
the packet to reduce the size of the packet that is forwarded to the last hop. Then, the last hop
directly forwards the IP packet or forwards the packet by using the second label.
PHP is configured on the egress. In addition, the egress only allocates the following label to the
PHP:
Label 3: indicates the implicit-null label. This label is not listed in the label stack. When an LSR
receives an implicit-null label, the LSR pops out the label in the packet rather than uses this
implicit-null label to replace the label at the top of the label stack. The egress directly forwards
the packet through an IP link or according to the next layer label.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
7
-
8/10/2019 3.2.7 Feature Description - MPLS
14/114
Label Switching Router
A Label Switching Router (LSR) refers to devices that can swap labels and forward MPLS
packets. It is also called the MPLS node. The LSR is a fundamental element on an MPLS
network. All LSRs support the MPLS protocol.
LER
An LER is the LSR that resides on the edge of an MPLS domain. When an LSR connects to one
node that does not run MPLS, the LSR acts as the LER.
The LER classifies the packets entering an MPLS domain by FECs and pushes labels into FECs.
Then, the LER forwards MPLS packets based on labels. When packets leave the MPLS domain,
the labels are popped out. The packets become IP packets again and are forwarded continuously.
Label Switched PathThe path that an FEC passes through in the MPLS network is called the LSP.
An LSP functions similarly to virtual circuits of ATM and Frame Relay. The LSP is a
unidirectional path from the ingress to the egress.
Ingress, Transit, and Egress LSRs
The LSP is a unidirectional path. LSRs along an LSP can be classified as follows:
l Ingress LSR: indicates the beginning of an LSP. Only one ingress exists on an LSP.
The ingress pushes a new label to the packet and encapsulates the IP packet as an MPLSpacket to forward.
l Transit LSR: indicates the middle node of an LSP. Multiple transit LSRs may exist on an
LSP.
The transit LSR mainly searches routes in the label forwarding table. Then, it swaps labels
to complete the forwarding of MPLS packets.
l Egress LSR: indicates the end node of an LSP. Only one egress exists on an LSP.
The egress mainly pops labels out of MPLS packets and forwards the packets that restore
the IP packet.
Upstream and Downstream
According to the direction of data transmission, LSRs are classified as follows:
l Upstream: Based on the specified LSR, in the direction of data flows, the LSRs that send
MPLS packets to the local LSR are upstream LSRs.
l Downstream: Based on the specified LSR, in the direction of data flows, the next-hop LSRs
that receive MPLS packets sent from the local LSR are downstream LSRs.
As shown in Figure 1-6, the data flows to 192.168.1.0/24. LSR A is the upstream LSR of LSR
B and the LSR B is the downstream of LSR A. Likely, LSR B is the upstream LSR of LSR C.
LSR C is the downstream LSR of LSR B.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
8
-
8/10/2019 3.2.7 Feature Description - MPLS
15/114
Figure 1-6Upstream and downstream
LSR-A LSR-B LSR-C
192.168.1.0/24
Downstreamdata flow
Downstreamdata flow
Label Distribution
Packets with the same destination address belong to an FEC. A label out of an MPLS label
resource pool is allocated to the FEC. LSRs record the relationship of the label and the FEC.
Then, LSRs send a message and advertises to upstream LSRs about the label and FEC
relationship in message. The process is called label distribution.
Figure 1-7Schematic diagram of the label distribution
LSR-A LSR-B LSR-C
192.168.1.0/24
Labels are
distributed upstream
Data flow
downstream
Labels are
distributed upstream
Data flow
downstream
As shown in Figure 1-7, LSR B and LSR C use an FEC respectively to identify packets withthe destination address as 192.168.1.0/24. Then, labels are allocated to FECs and their
relationship is advertised to upstream LSRs. Thus, labels are allocated by the downstream LSRs.
Label Distribution Protocols
Label distribution protocols are MPLS control protocols, namely, signaling protocols. They are
used to classify FECs, distribute labels, and create and maintain LSPs.
MPLS utilizes multiple label distribution protocols, such as Label Distribution Protocol (LDP),
Resource Reservation Protocol Traffic Engineering (RSVP-TE), and Multiprotocol Border
Gateway Protocol (MP-BGP).
MPLS Architecture
The MPLS architecture consists of a control plane and a forwarding plane.
Figure 1-8shows the MPLS architecture.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
9
-
8/10/2019 3.2.7 Feature Description - MPLS
16/114
Figure 1-8Schematic diagram of the MPLS architecture
IP Routing Protocol
Routing Information
Base (RIB)
MPLS IP Routing
Protocol
Label Forwarding
Information Base(LFIB)
Label Information Base
(LIB)
Control Plane
Forwarding Plane
l The control plane is connectionless and responsible for distributing labels, creating the label
forwarding table, and creating or deleting LSPs.
l The forwarding plane, also known as the data plane, is connection-oriented. It can apply
services and protocols of ATM, Frame Relay, and Ethernet networks. The forwarding plane
is mainly responsible for adding labels to and deleting labels from IP packets.
Simultaneously, it forwards the received packets according to the label forwarding table.
1.3.2 Establishing LSPs
Procedure of Establishing LSPs
Usually, MPLS allocates labels for packets and establish an LSP. Then, MPLS can forward
packets.
Labels are allocated and distributed by a downstream LSR to an upstream LSR. As shown in
Figure 1-9, the downstream LSR classifies FECs according to an IP routing table and then
allocates labels to specific FECs. Then, the downstream LSR notifies the upstream LSR through
label advertisement protocols to set up a label forwarding table and an LSP.
Figure 1-9Establishment of an LSP
To 3.3.3.3/32
Label=Z
To 3.3.3.3/32
Label=Y
To 3.3.3.3/32
Label=3
3.3.3.3/32
Ingress Transit Transit Egress
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
10
-
8/10/2019 3.2.7 Feature Description - MPLS
17/114
The classification of LSPs is as follows:
l Static LSP: It is set up by the administrator.
l Dynamic LSP: It is set up by the routing protocol and label distribution protocol.
Establishing Static LSPs
You can allocate labels manually to set up static LSPs. The principle is that the value of the
outgoing label of the upstream node is equal to the value of the incoming label of the downstream
node.
The availability of a static LSP makes sense only for the local node that cannot sense the entire
LSP.
l On the ingress: A static LSP is configured, and the outgoing interface of the ingress is
enabled with MPLS. If the route is reachable, the state of the static LSP is Up regardless
of the existence of the transit or egress. A reachable route means that a route entry exists
whose destination address and the next hop address match those in the local routing table.
l On the transit: A static LSP is configured, and the incoming and outgoing interfaces of the
transit are enabled with MPLS. If the incoming and outgoing interfaces are Up on the
physical layer and protocol layer, the static LSP is Up, regardless the existence of the
ingress, egress, or other transits.
l On the egress: A static LSP is configured, the incoming interface of the egress is enabled
with MPLS. If the incoming interface is Up on the physical layer and protocol layer, the
static LSP is Up, regardless the existence of the ingress or the transit.
NOTE
A reachable route is required on the ingress only for setting up a static LSP, but not on the transit or egress.
A static LSP is set up without label distribution protocols or exchanging control packets. Thus,
the static LSP costs little and it is applicable to small-scale networks with simple and stable
topology. The static LSP cannot vary with the network topology dynamically. The administrator
needs to configure the static LSP.
Establishing Dynamic LSPs
Dynamic LSPs are set up automatically by the label distribution protocol. The following label
distribution protocols are applicable to an MPLS network.
l LDP
The Label Distribution Protocol (LDP) is specially defined for distributing labels. When
LDP sets up an LSP in hop-by-hop mode, LDP identifies the next hop along the LSP
according to the routing forwarding table on each LSR. Information contained in the routing
forwarding table is collected by IGP and BGP. LDP is not directly assotiated with routing
protocols, but indirectly uses routing information.
LDP is not the only label distribution protocol. BGP and RSVP can also be extended to
distribute MPLS labels.
l RSVP-TE
The Resource Reservation Protocol (RSVP) is designed for the integrated service module
and is used to reserve resources on nodes along a path. RSVP works on the transport layer
and does not transmit application data. RSVP is a network control protocol, similar to theInternet Control Message Protocol (ICMP).
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
11
-
8/10/2019 3.2.7 Feature Description - MPLS
18/114
RSVP is extended to support the setting up of a Constraint-based Routed LSP (CR-LSP).
The extended RSVP is called the RSVP-TE signaling protocol. It is used to set up TE
tunnels.
Different from LDP LSPs, RSVP-TE tunnels are characteristic as follows:
Bandwidth reservation requests
Bandwidth constraint
Link colors
Explicit paths
l MP-BGP
The Multiprotocol Extensions for BGP (MP-BGP) is an extended protocol of BGP. MP-
BGP imports the community attribute. MP-BGP supports label distribution for MPLS VPN
routes and labeled inter-AS VPN routes.
1.3.3 MPLS Forwarding
Basic Concepts of MPLS Forwarding
l Tunnel ID
To provide the same interface of a tunnel used by upper layer applications such like the
VPN and route management, the system automatically allocates an ID to each tunnel,
namely, tunnel ID. The tunnel ID is valid locally.
The tunnel ID is in a length of 32 bits. The length of the fields varies according to tunnel
types.
Figure 1-10shows the structure of a tunnel ID.
Figure 1-10Structure of a tunnel ID
The description of each field is as follows.
Table 1-2Description of each field of a tunnel ID
Field Description
Token Indicates the field that is used to search an MPLS forwarding
table for specified MPLS forwarding entries. The token is an
index number for searching forwarding information.
Sequence Number Indicates the sequence number of a tunnel ID.
Slot Number Indicates the slot number of an outgoing interface sending
packets.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
12
-
8/10/2019 3.2.7 Feature Description - MPLS
19/114
Field Description
Tunnel Type Indicates the type of a tunnel. The tunnel types of MPLS are as
follows:
l LSP: indicates the LSP tunnel that is set up dynamicallythrough LDP without any constraints.
l CRLSP: indicates the LSP tunnel that is set up dynamically
through CR-LDP or RSVP-TE with constraints.
l MPLS Local IFNET: indicates the tunnel that is set up by the
External BGP (EBGP) on MPLS interfaces of AS Boundary
Routers (ASBRs).
On inter-AS VPN Option B and Option C, besides information
on L2VPN label blocks, VPN routing information sent from an
ASBR to the BGP peer must contain tunnel information. No
tunnel, however, is set up between ASBRs. Thus, the MPLS local
IFNET tunnel is required between ASBRs to send AS-externalrouting information to the peer within the AS.
Allocation Method Indicates the method to allocate tokens. The methods are as
follows:
l Global: All tunnels share the same public global token space.
Two tokens cannot have the same value.
l Global with reserved tokens: This method is similar to the
global method. Differently, this method can reserve tokens
that tunnels cannot use. That is, the token of the tunnel begins
at a specified value.
l Per slot: Each slot has independent tokens. Tokens in thesame slot are different and tokens of different slots may be
the same.
l Per slot with reserved tokens: This method is similar to the
per slot method. Differently, this method can reserve tokens
that tunnels cannot use. That is, the token of a tunnel begins
at a specified value.
l Per slot with different avail value: This method is similar to
the per slot method. Differently, the token values of different
slots range differently.
l Mixed: Space can be created in either Global method or Per
slot method. The method to be selected depends on theinterface type. For the VLANIF or the interface of a backbone
network, the global method is adopted. Otherwise, the per slot
method is adopted.
l Mixed with 2 global space: Space can be created in global
space 1 method, global space 2 method, and per slot method.
l 2 global space: Space can be created in global space 1 method
and global space 2 method.
NOTEThe allocation method adopted by devices depends on license files.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
13
-
8/10/2019 3.2.7 Feature Description - MPLS
20/114
l NHLFE
The next hop label forwarding entry (NHLFE) can guide the MPLS packet forwarding.
An NHLFE contains the following information.
Tunnel ID
Outgoing interface
Next hop
Outgoing label
Label operation
l ILM
The incoming label map (ILM) indicates the mapping between an incoming label and a set
of NHLFEs.
The ILM contains the following information.
Tunnel ID
incoming label
incoming interface
Label operation
The ILM on a transit can bind the labels to NHLFEs. The function of an ILM table is similar
to the FIB that is searched according to destination IP addresses. Thus, you can obtain all
label forwarding information from searching an ILM table.
l FTN
FTN is a short form of FEC-to-NHLFE. The FTN indicates the mapping between an FEC
and a set of NHLFEs.
Details about the FTN can be obtained by searching the token values that are not 0x0 in a
FIB. The FTN is available on the ingress only.
Process of MPLS Forwarding
Take the LSP that supports the PHP as an example to describe how MPLS packets are forwarded.
Figure 1-11MPLS label distribution and packet forwarding
IP Packet
To 3.3.3.3
Label=Z Label=Y
PUSH SWAP
PHP
Label distributing
IP Packet
To 3.3.3.3IP Packet
To 3.3.3.3
IP Packet
To 3.3.3.3
Ingress EgressTransit Transit
To 3.3.3.3/32
Label=Z
To 3.3.3.3/32
Label=Y
To 3.3.3.3/32
Label=3
3.3.3.3/32
Ingress EgressTransit Transit
3.3.3.3/32
IP Packet
To 3.3.3.3
Packet transmitting
POP
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
14
-
8/10/2019 3.2.7 Feature Description - MPLS
21/114
As shown in Figure 1-11, an LSP whose FEC is identified by the destination address 3.3.3.3/32
is set up on an MPLS network. MPLS packets are forwarded as follows:
1. The ingress receives an IP packet destined for 3.3.3.3/32. Then, the ingress adds Label Zto the packet and then forwards the packet.
2. The transit receives the labeled packet and swaps labels by popping Label Z out and pushing
Label Y into the packet.
3. The transit at the penultimate hop receives the packet with Label Y. The value of Label 3
is allocated by the egress. The transit performs the PHP to pop out Label Y and forwards
the packet. From the penultimate hop to the egress, the packet is transmitted as an IP packet.
4. Then, the egress receives the IP packet and forwards it to 3.3.3.3/32.
MPLS Forwarding Flow
When an IP packet enters an MPLS domain, the ingress searches the FIB to check whether the
tunnel ID corresponding to the destination IP address is 0x0.
l If the tunnel ID is 0x0, the packet is forwarded along the IP link.
l If the tunnel ID is not 0x0, the packet is forwarded along an LSP.
Figure 1-12shows the MPLS forwarding flow.
Figure 1-12MPLS forwarding flow
Ingress
Egress
Transit
FIB NHLFE
ILM NHLFE
InLabel
ILM
FEC Tunnel ID Tunnel ID Out Interface Next Hop OutLabel Operation
InLabel Tunnel ID Tunnel ID Out Interface Next Hop OutLabel Operation
MPLS packets are forwarded as follows on nodes along an LSP.
1. The ingress searches the FIB and NHLFE tables to forward MPLS packets.
2. The transit searches the ILM and NHLFE tables to forward MPLS packets.
3. The egress searches the ILM table to forward MPLS packets.
During the MPLS forwarding, FIB entries, ILM entries, and NHLFEs are associated with each
other through the token field in the tunnel ID.
l Forwarding on the Ingress
The ingress processes as follows to forward MPLS packets:
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
15
-
8/10/2019 3.2.7 Feature Description - MPLS
22/114
1. Searches the FIB and finds the tunnel ID corresponding to the destination IP address.
2. Finds the NHLFE corresponding to the tunnel ID in the FIB and associates the FIB
entry with the NHLFE entry.
3. Checks the NHLFE for information about the outgoing interface, next hop, outgoing
label, and label operation type. The label operation type is Push.
4. Pushes the obtained label into IP packets, processes the EXP field according to QoS
policy and the TTL field, and then sends the encapsulated MPLS packets to the next
hop.
l Forwarding on the Transit
The transit processes as follows to forward the received MPLS packets:
1. Checks the ILM table corresponding to an MPLS label and finds the token.
2. Finds the NHLFE corresponding to the token in the ILM table.
3. Checks the NHLFE for information about the outgoing interface, next hop, outgoing
label, and label operation type.
4. MPLS packets are processed distinctively according to the specific label value.
If the label value is equal to or greater than 16, a new label replaces the label in
the MPLS packet. At the same time, the EXP field and TTL field are processed.
Then, the MPLS packet with the new label is forwarded to the next hop.
If the label value is 3, the label is popped out from the MPLS packet. At the same
time, the EXP field and TTL field are processed. Then, the packet is forwarded
through IP routes or according to its next layer label.
l Forwarding on the Egress
When the egress receives MPLS packets, the egress checks the ILM table for the label
operation type. At the same time, the egress processes the EXP field and TTL field.
When the S field in the label is equal to 1, the label is the stack bottom label and the
packet is directly forwarded through IP routes.
When the S field is equal to 0 in the label, a next layer label exists and the packet is
forwarded according to the next layer label.
Processing MPLS TTL
An MPLS label has a TTL field in the length of 8 bits. The TTL field is the same as that in an
IP packet header. MPLS processes the TTL to prevent loops and implement traceroute.
RFC 3443 defines two modes in which MPLS processes the TTL, that is, uniform mode and
pipe mode. By default, MPLS processes the TTL in Uniform mode.
l Uniform Mode
When IP packets enter an MPLS network, on the ingress, the IP TTL decreases by one and
is mapped to an MPLS TTL field. Then, the TTL field in MPLS packets is processed in
the standard mode. As shown in Figure 1-13, on the egress, the MPLS TTL decreases by
one and is mapped to the IP TTL field.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
16
-
8/10/2019 3.2.7 Feature Description - MPLS
23/114
Figure 1-13TTL process in Uniform mode
CE CEPE P PE
IP TTL
255
IP TTL
252
IP TTL
254
MPLS
TTL 253
IP TTL
254
MPLS
TTL 254
MPLS
l Pipe Mode
As shown in Figure 1-14, on the ingress, the IP TTL decreases by one and the MPLS TTL
is constant. Then, MPLS TTL is processed in the standard mode. On the egress, IP TTL
decreases by one. That is, when IP packets enter an MPLS network, the IP TTL only
decreases by one respectively on the ingress and egress.
Figure 1-14TTL process in Pipe mode
CE CEPE P PE
IP TTL
255
IP TTL
253
MPLS
MPLS
TTL 100
MPLS
TTL 100
IP TTL
254
MPLS
TTL 100
MPLS
TTL 99
IP TTL
254
1.3.4 MPLS Ping/Traceroute
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
17
-
8/10/2019 3.2.7 Feature Description - MPLS
24/114
Overview
On an MPLS network, when data fails to be transmitted across an LSP, the MPLS control plane
cannot detect the transmission failure. Thus, the network maintenance is difficult to carry out.
MPLS ping and MPLS traceroute functions provide a mechanism to detect LSP faults and locatethe failed node timely.
MPLS ping is used to test the network connectivity and the host accessibility. MPLS traceroute
is used to check the network connectivity and locate network faults.
Similar to the IP ping and IP traceroute, the MPLS ping and the MPLS traceroute detect the LSP
availability through MPLS Echo Request and MPLS Echo Reply messages. These two messages
are sent through UDP. The port number is 3503. Thus, the receiver can recognize theses two
messages according to the received UDP port number.
The MPLS Echo Request message contains information about the FEC of the LSP to be detected.
The message is sent like other packets that belong to the FEC along the LSP. In this manner, theLSP is detected. The MPLS Echo Request message is forwarded to the destination by MPLS;
the MPLS Echo Reply message is forwarded to the source through an IP link.
The destination address in the IP header of the Echo Request message is set to 127.0.0.1/8 and
the IP TTL is set to 1. This can prevent the egress from forwarding the message to other nodes.
MPLS Ping
Figure 1-15MPLS network
5.5.5.5/32 4.4.4.4/32
1.1.1.1/30
1.1.1.2/30
2.2.2.1/30
2.2.2.2/30
3.3.3.1/30
3.3.3.2/30CX-A CX-B CX-C CX-D
LSP
As shown in Figure 1-15, an LSP whose FEC is identified with the destination being CX-D is
set up on CX-A. CX-A uses the MPLS ping feature to detect the LSP as follows:
1. CX-A checks whether the LSP exists. For a TE tunnel, CX-A checks whether the tunnel
interface exists and whether a CR-LSP is set up successfully. If the LSP does not exist, an
error message is returned and CX-A stops pinging. If the LSP exists, CX-A performs the
following actions continuously.
2. CX-A constructs an MPLS Echo Request packet. The destination address is 127.0.0.1/8 in
the IP packet header and the IP TTL is set to 1. CX-A searches the corresponding LSP and
pushes a label (its TTL is 255) of the LSP into the packet. Then, CX-A sends the packet to
CX-B.
3. CX-B and CX-C that serve as transits forward the MPLS Echo Request packet as a common
MPLS packet.
If a transit fails to forward the packet, the transit returns a reply message carrying the errorcode.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
18
-
8/10/2019 3.2.7 Feature Description - MPLS
25/114
4. When the MPLS forwarding path works normally, transits forward the packet successfully
to CX-D, namely, the egress of the LSP. CX-D processes the packet and replies with an
MPLS Echo Reply packet.
MPLS Traceroute
As shown in Figure 1-15, CX-A uses the MPLS traceroute feature to detect an LSP with the
destination address 4.4.4.4/32 as follows:
1. CX-A checks whether an LSP exists.
l If the LSP exists, CX-A performs the following actions continuously.
l If the LSP does not exist, an error message is returned and CX-A stops tracing the route.
2. CX-A constructs an MPLS Echo Request packet. The destination address is 127.0.0.1/8 in
the IP packet header and the IP TTL is 1. CX-A searches for a corresponding LSP and
pushes a label (its TTL is 1) of the LSP into the packet. Then, CX-A sends the packet to
CX-B. CX-B receives this packet and the TTL of the label times out. Then, an MPLS EchoReply message is returned. The destination UDP port and the destination IP address of the
MPLS Echo Reply message is the source UDP port and the source IP address of the MPLS
Echo Request packet. In additional, the IP TTL is 255.
3. After receiving the MPLS Echo Reply message, CX-A sends an MPLS Echo Request
packet. The TTL of the label is 2. CX-B forwards this packet as a common MPLS packet.
CX-C receives this packet and the TTL of the label times out. Then, an MPLS Echo Reply
message is returned.
If a transit fails to forward the packet, no MPLS Echo Reply message is returned.
4. After receiving the MPLS Echo Reply message, CX-A sends an MPLS Echo Request
packet. The TTL of the label is 3. CX-B and CX-C forward this packet as a common MPLS
packet. CX-D receives the packet and finds that the destination address of the packet is a
local loop IP address. Then, CX-D returns an MPLS Echo Reply message.
1.4 Applications
1.4.1 MPLS-based VPN
The traditional VPN can transmit data of private networks over the public network through
tunneling protocols, such as the Generic Routing Encapsulation (GRE), Layer 2 Tunneling
Protocol (L2TP), and Point to Point Tunneling Protocol (PPTP).
The MPLS-based VPN can be a private network whose security is similar to that of the FR
network. Because packets are not encapsulated or encrypted, the IPSec technology and GRE or
L2TP tunnels are not required on the device. In addition, the network delay is minimized.
As shown in Figure 1-16, the MPLS-based VPN integrates private network branches through
an LSP to form a unified network. The MPLS-based VPN controls the interconnection between
VPNs. Figure 1-16shows the devices applied in the MPLS-based VPN.
l Customer Edge (CE) is an edge device in a customer network. The CE can be a router, a
switch, or a host.
l Provider Edge (PE) is an edge device on a service provider network.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
19
-
8/10/2019 3.2.7 Feature Description - MPLS
26/114
l Provider (P) is a backbone device on an SP network. A P is not directly connected to CEs.
Ps only need to possess basic MPLS forwarding capabilities and do not maintain
information about a VPN.
Figure 1-16MPLS-based VPN
CE1
VPN
branch 1
PE1
Backbone network
VPN
branch 3
VPN
branch 2
PE3
PE2
CE3
CE2
The characteristics of MPLS-based VPN are as follows:
l PEs are responsible for managing VPN users, setting up LSPs between PEs, and allocating
routes to sites of a VPN.
l The route allocation between PEs are implemented by LDP or MBGP.
l The MPLS-based VPN supports the IP address multiplexing between sites and the
interconnection of different VPNs.
1.4.2 PBR to an LSP
The policy-based routing (PBR) means to select a route according to a user-defined policy for
security and load balancing. The CX600 supports the PBR to an LSP. In an MPLS network, IP
packets that meet the filtering policy can be forwarded through a specified LSP.
In Figure 1-17, CX-A, CX-B, CX-C, CX-D, and CX-E are in the original network. CX-F and
CX-G are added to provide new services. The traffic is forwarded as follows:
l The traffic for original services is forwarded through the original network.
l The traffic for new services is forwarded by CX-F and CX-G.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
20
-
8/10/2019 3.2.7 Feature Description - MPLS
27/114
Figure 1-17Application of the PBR to an LSP
CX-A CX-C
CX-B
CX-F
CX-D
CX-G
CX-E
To forward part of the traffic of new services through the original network, you can configure
the PBR to an LSP on CX-A. In this manner, the traffic meeting the specific policy can be
forwarded through the original network.
You can also use the PBR to the LSP together with LDP FRR to divert some traffic to the backup
LSP for load balancing when the backup LSP may be idle relatively.
1.5 Terms and Abbreviations
Terms
Terms Explanation
Label space A value range of labels.
ILM The incoming label map (ILM) indicates the
mapping between an incoming label and a set
of NHLFEs. The ILM contains the following
information: Tunnel ID, incoming label and
incoming interface.
LDP peer Two LSRs with an LDP session that use LDP
to exchange label or FEC mapping
information.
LDP identifier A value that is used to identify a specified
LSR label space.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
21
-
8/10/2019 3.2.7 Feature Description - MPLS
28/114
Terms Explanation
NHLFE The next hop label forwarding entry
(NHLFE) can guide the MPLS packet
forwarding. An NHLFE contains the
following information: Tunnel ID, outgoing
interface, next hop, outgoing label and label
operation.
PHB PHB describes how the packets with the same
DSCP value are forwarded to the next hop.
The PHB records certain traffic attributes,
such as latency and packet loss ratio. At
present, the IETF defines three standardized
PHBs, that is, expedited forwarding (EF),
assured forwarding (AF), and best-effort
(BE). The BE is the default PHB.
Control plane The control plane is connectionless and
responsible for distributing labels, creating
the label forwarding table, and creating or
deleting LSPs.
Forwarding plane The forwarding plane, also known as the data
plane, is connection-oriented. It can apply
services and protocols of ATM, Frame Relay,
and Ethernet networks. The forwarding plane
is mainly responsible for adding labels to and
deleting labels from IP packets.
Simultaneously, it forwards the receivedpackets according to the label forwarding
table.
Abbreviation
Abbreviation Full Spelling
DoD Downstream-on-Demand
DU Downstream Unsolicited
LSP Label switched path
FEC Forwarding Equivalence Class
ILM Incoming Label Map
LAM Label Advertisement Mode
LDP Label Distribution Protocol
LER Label Edge Router
LFIB Label Forward Information Base
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
22
-
8/10/2019 3.2.7 Feature Description - MPLS
29/114
Abbreviation Full Spelling
LSP Label Switched Path
LSR Label Switching Router
MPLS Multiprotocol Label Switching
NHLFE Next Hop Label Forwarding Entry
PHP Penultimate Hop Popping
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 1 MPLS Overview
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
23
-
8/10/2019 3.2.7 Feature Description - MPLS
30/114
2MPLS LDPAbout This Chapter
2.1 Introduction to LDP
2.2 References
2.3 Principles
2.4 Terms and Abbreviations
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 2 MPLS LDP
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
24
-
8/10/2019 3.2.7 Feature Description - MPLS
31/114
2.1 Introduction to LDP
Definition
Label Distribution Protocol (LDP) is a control protocol of Multiprotocol Label Switching
(MPLS). It is like a signaling protocol of a traditional network. It classifies Forwarding
Equivalence Classes (FECs), distributes labels, and establishes and maintains the Label
Switched Path (LSP). In addition, LDP defines the messages in and procedures for distributing
labels.
Purpose
MPLS supports multiple labels and its forwarding plane is connection-oriented, and thus this
excellent scalability enables the MPLS/IP-based network to provide various services. Through
LDP, Label Switching Routers (LSRs) directly map routing information at the network layer tothe switched paths at the data link layer, and thus establish LSPs at the network layer. LDP
features simple networking and configurations, supports route topology-driven establishment of
LSPs, and supports large-capacity LSPs, and thus is widely used to provide VPN services.
2.2 References
The following table lists the references of this document:
Document Description Remarks
RFC5036 LDP Specification Does not support loop detection.
RFC3215 LDP State Machine -
RFC5443 LDP IGP Synchronization Supports all messages except the
end-of-lib message.
RFC3478 Graceful Restart Mechanism
for Label Distribution Protocol
-
RFC1321 The MD5 Message-Digest
Algorithm
-
RFC3037 LDP Applicability -
RFC3988 Maximum Transmission Unit
Signalling Extensions for the
Label Distribution Protocol
-
2.3 Principles
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 2 MPLS LDP
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
25
-
8/10/2019 3.2.7 Feature Description - MPLS
32/114
2.3.1 Concepts
The MPLS architecture involves multiple label distribution protocols, of which LDP (Label
Distribution Protocol) is widely used.
LDP defines the messages of label distribution and procedures for processing the messages.
LSRs associated by the incoming labels, next hop nodes, and outgoing labels for a specified
forwarding equivalence class (FEC) according to local forwarding table; thus LSPs are formed.
For details about LDP, refer to LDP Specification in RFC 5036.
LDP Adjacency
When an LSR receives a Hello message from the peer, it indicates that an LDP peer may exist.
Under this situation, the LSR will create an LDP adjacency for maintaining the existence of the
peer. There are two types of LDP adjacencies: the local adjacency and remote adjacency.
LDP Peers
LDP peers refer to two LSRs that use LDP to set up an LDP session and then exchange Label
messages.
LDP peers learn the labels of each other through LDP session between them.
LDP Sessions
In an LDP session, LSRs exchange messages such as Label Mapping and releasing. LDP sessions
are classified into the following types:
l Local LDP session: an LDP session between the two LSRs that are directly connected.l Remote LDP session: an LDP session between the two LSRs that are directly or indirectly
connected.
Local and remote LDP sessions can exist together.
LDP Dynamic Capability Announcement Function
The LDP dynamic capability announcement function allows an LDP extension to be dynamically
enabled or disabled on a device during an LDP session is working, ensuring the stability of an
LSP.
Relationships Between LDP Adjacencies, Peers, and Sessions
LDP maintains the existence of peers by using adjacencies. The type of peers depends on the
type of corresponding adjacencies. A peer can be maintained by multiple adjacencies. If a peer
is maintained by both local and remote adjacencies, the type of the peer supports coexistence of
the local and remote adjacencies. An LDP session can be established only when peers are present.
Type of LDP Messages
LDP messages have the following types:
l Discovery message: used to notify or maintain the existence of an LSR on a network.
l Session message: used to establish, maintain, and terminate sessions between LDP peers.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 2 MPLS LDP
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
26
-
8/10/2019 3.2.7 Feature Description - MPLS
33/114
l Advertisement message: used to create, modify, and delete label mappings for FECs.
l Notification message: used to provide advisory information and error information.
To ensure the reliability of message transmission, LDP uses the TCP transport for Session,
Advertisement, and Notification messages and uses the UDP transport for transmitting theDiscovery message only.
Label Spaces and LDP Identifiers
l Label space
Label space refers to the value range of labels that are distributed for LDP peers. The types
are as follows:
Per-Platform Label Space: indicates that the entire LSR uses one label space.
Per-Interface Label Space: indicates that each interface of the LSR is assigned with a
label space.
l LDP ID
The LDP identifier identifies the range of the label space of a specified LSR. The format
is :. The length is 6 bytes. Where,
LSR ID: indicates the LSR identifier and is of 4 bytes.
Label space ID: indicates the identifier of the label space, with a length of 2 bytes.
2.3.2 LDP Sessions
LDP Discovery Mechanism
The LDP discovery mechanism is used by an LSR to discover potential LDP peers. LDP
discovery mechanisms are classified into the following types:
l Basic discovery mechanism: used to discover directly-connected LSR peers on a link.
An LSR periodically sends LDP Hello messages to implement the basic discovery
mechanism and establish a local LDP session.
The Hello message contains the LDP identifier and other information (such as the hold time
and transport address). If the LSR receives an LDP Hello message on an interface, it
indicates that LDP peers are connected to the interface.
l Extended discovery mechanism: used to discover indirectly-connected LSR peers on a link.
The LSR periodically sends Targeted Hello messages to a specified address to implement
the extended discovery mechanism and establish a remote LDP session.
The Targeted Hello message, a UDP message, is sent to the specified address to LDP
interface 646. The Targeted message contains the LDP identifier and other information
(such as the transport address and hold time). If the LSR receives a Targeted Hello message
on an interface, it indicates that LDP peers are connected to the interface.
Procedures for Establishing an LDP Session
Two LSRs send Hello messages to each other to trigger the establishment of an LDP session.
Figure 2-1shows the procedures for establishing an LDP session.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 2 MPLS LDP
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
27
-
8/10/2019 3.2.7 Feature Description - MPLS
34/114
Figure 2-1Procedures for establishing an LDP session
LSR-B (passive role)
192.168.1.1/32LSR-A (active role)
192.168.1.2/32
Hello message
The actor sends an Initialization
message to negotiate about parameters
When the parameters are received,
an Initialization message and a
Keepalive message are sent
When the parameters are received,
a Keepalive message is sent
Step1
Step2
Step3
Step4
Step5
TCP Connection
1. Two LSRs send a Hello message to each other. The Hello message contains the transport
address that the two parties use to establish an LDP session. The role with the larger
transport address starts to establish a TCP connection as the active role. As shown in Figure
2-1, LSRA starts to establish the TCP connection as the active role and LSRB waits for the
TCP connection as the passive role.
2. After the TCP connection is successfully established, the active role LSRA sends an
Initialization message to negotiate parameters used for establishing the LDP session with
the passive role. These parameters include the LDP version, label distribution mode, value
of the Keepalive timer, maximum length of the PDU, and label space.
3. After receiving the Initialization message, if the passive role LSRB rejects certain
parameters, it sends a Notification message to terminate the establishment of the LDP
session. If the passive role LSRB accept all parameters, it sends an Initialization message
and a Keepalive message to the active role LSRA.
4. After receiving the Initialization message, if the active role LSRA cannot accept certain
parameters, it sends a Notification message to the passive role LSRB to terminate the
establishment of the LDP session. If the active role LSRB can accept all parameters, it
sends a Keepalive message to the passive role LSRB.
After both the two parties receives the Keepalive message from each other, the LDP session is
successfully established.
2.3.3 Advertising and Managing Labels
After the LDP session is established, an LDP exchanges messages, such as the label mapping
message, to establish LSP. RFC 5036 defines the label advertisement mode, label distribution
control mode, and label retention mode to determine how the LSR advertises and manages labels.
The CX600 supports the combination of the following modes:
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 2 MPLS LDP
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
28
-
8/10/2019 3.2.7 Feature Description - MPLS
35/114
l Combination of the DU label advertisement mode, ordered label control mode, and liberal
label retention mode
l Combination of the DoD label advertisement mode, ordered label control mode, and
conservative label retention mode
Label Advertisement Mode
On an MPLS network, an LSR distributes labels for FECs and notifies its upstream LSRs of the
distributed labels. That is, labels are distributed from downstream to upstream on the MPLS
network.
Label advertisement modes are as follows:
l DU label advertisement mode
Downstream Unsolicited (DU): An LSR distributes a label for an FEC without having to
receive the Label Request message from its upstream LSR.
As shown in Figure 2-2, for the FEC destined for 192.168.1.1/32, the establishment of the
LSP is triggered in host mode. The egress sends an unsolicited Label Mapping message to
the upstream transit node to advertise the label of the host route to 192.168.1.1/32.
Figure 2-2DU mode
Distribute labels
upstream voluntarily
Ingress Transit Egress
Distribute labels
upstream voluntarily192.168.1.1/32
l Downstream on Demand
Downstream on Demand (DoD): An LSR distributes labels for FECs after receiving an
Label Request messages from its upstream LSRs.
As shown in Figure 2-3, the downstram egress triggers the establishment of an LSP
destined for the FEC 192.168.1.1/32 in host mode. The upstream ingress sends the Label
Request message, the downstream egress receives this message, and then sends the Label
Mapping message to the downstream.
Figure 2-3DoD mode
Ingress Transit Egress
192.168.1.1/32The upstream requests
the downstream for labels
The upstream requests the
downstream for labels
The label is
distributed after the
request is received
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 2 MPLS LDP
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
29
-
8/10/2019 3.2.7 Feature Description - MPLS
36/114
The label advertisement mode on an upstream LSR and that on an downstream LSR must be
consistent.
Label Distribution Control Mode
The label distribution control mode refers to the processing mode used by an LSR when the LSR
distributes labels during the setup of an LSP.
The label distribution control modes are classified into the following modes:
l Independent label distribution control
Independent label distribution control refers to that a local LSR can distribute a label bound
to a FEC and then inform the upstream LSR, without waiting for the label distributed by
the downstream LSR.
As shown in Figure 2-2, if the label distribution mode is DU and the label distribution
control mode is Independent, the transit LSR distributes labels for the ingress without
waiting for labels of the egress. As shown in Figure 2-3, if the label distribution mode is DoD and the label distribution
control mode is Independent, the directly-connected transit of the ingress that sends the
Label Request message directly replies with labels without waiting for labels of the
egress.
l Ordered label distribution control
Ordered label distribution control: An LSR advertises the mapping between a label and a
FEC to its upstream LSRs only when it is the outgoing node of the FEC or when it receives
the Label Mapping message of the next hop for the FEC.
As shown in Figure 2-2, the label distribution mode is DU and the label distribution
control mode is ordered. Consequently, the LSR (transit in the diagram) must receive
a label mapping message from the downstream (egress in the diagram). Then, it candistribute a label to the upstream (ingress in the diagram).
As shown in Figure 2-3, if the label distribution mode is DoD and the label distribution
control mode is Ordered, the directly-connected transit of the ingress that sends the
Label Request message must receive a label mapping message from the downstream
(egress in the diagram). Then, it can distribute a label to the upstream (ingress in the
diagram).
Label Retention Mode
The label retention mode refers to the way an LSR handles processes the label mapping that it
receives but does not use in a short time.
The label mapping that an LSR receives maybe from the next hop, maybe not.
The label retention modes are classified into the following modes:
l Liberal label retention mode
An LSR preserves the Label Mapping message received from a neighbor LSR regardless
of whether the neighbor LSR is its next hop or not.
l Conservative label retention mode
An LSR retains the label mapping received from a neighbor LSR only when the neighbor
LSR is its next hop.
When the next hop of an LSR changes due to change of the network topology:
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 2 MPLS LDP
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
30
-
8/10/2019 3.2.7 Feature Description - MPLS
37/114
l If the LSR uses the liberal label retention mode, it can use the previous labels sent from the
non-next hop to fast re-establish an LSP (For the information about establishment of LDP
LSP , refer to Establishment of LDP LSP). This requires more memory and label spaces
than the conservative mode.
lIf the LSR uses the conservative label retention mode, it retains only labels received fromthe next hop. This saves memory and the label space but the LSP is re-set up slowly.
Conservative label retention mode is usually used together with DoD on the LSRs that have
limited label spaces.
The LSP is distributed with a label but not established successfully called Liberal LSP.
2.3.4 Establishment of LDP LSP
The LSP establishment is the process of binding an FEC with the label and advertising the
binding relationship to LSRs on the LSP. The procedures for establishing an LSP in DU label
distribution mode and ordered label control mode are described as follows:
1. When the route of the network changes, if a label edge router (LER) finds a new destination
address in its routing table and the address does not belong to any existing FEC, the LER
creates an FEC for the address.
2. If the egress of an MPLS network has available labels for distribution, it distributes labels
for FECs and actively sends the Label Mapping message to the ingress. The Label Mapping
message contains distributed labels and bound FECs.
3. After receiving the Label Mapping message, the LSR adds mapping to its label forwarding
table and then actively sends the Label Mapping message of the specified FEC to the ingress
LSR.
4. After receiving the Label Mapping message, the ingress LSR also adds the mapping to its
label forwarding table. An LSP is thus established, and the packets classified as the FECcan be forwarded on the basis of the label.
2.3.5 LDP Extension for Inter-Area LSP
This feature enables LDP to establish inter-area LDP LSPs to provide tunnels that traverse the
public network.
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 2 MPLS LDP
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
31
-
8/10/2019 3.2.7 Feature Description - MPLS
38/114
-
8/10/2019 3.2.7 Feature Description - MPLS
39/114
(such as the carried FEC is 1.3.0.1/32) from Area 10, LSRA searches for a route according to
the longest match rule defined in RFC 5283. Then, LSRA finds information about the aggregated
route 1.3.0.0/24, and uses the outbound interface and next hop of this route as those of the route
1.3.0.1/32. In this manner, LDP can establish inter-area LDP LSPs.
2.3.6 Outbound and Inbound LDP Policies
By default, an LSR receives and sends label mapping messages for all FECs, resulting in the
establishment of a large number of LDP LSPs. The establishment of a large number of LDP
LSPs consumes a great amount of system resources of an LSR, and as a result, the LSR may be
overburdened. In this case, an outbound or inbound LDP policy needs to be configured to reduce
the number of label mapping messages to be sent or received, reducing the number of LSPs to
be established and saving memory.
Outbound LDP Policy
The outbound LDP policy filters label mapping messages to be sent. The outbound LDP policydoes not take effect with L2VPN label mapping messages, which means that all the L2VPN
label mapping messages can be sent. In addition, the ranges of FECs to which the labeled BGP
routes and non-BGP routes are mapped can be configured separately.
If FECs in the label mapping messages to be sent to an LDP peer group or all LDP peers are in
the same range, the same outbound policy is applicable to the LDP peer group or all LDP peers.
In addition, the outbound LDP policy supports split horizon. After split horizon is configured,
an LSR distributes labels only to its upstream LDP peers.
An LSR checks whether an outbound policy mapped to the labeled BGP route or non-BGP route
is configured before sending a label mapping message for a FEC.
l If no outbound policy is configured, the LSR sends the label mapping message.
l If an outbound policy is configured, the LSR checks whether the FEC in the label mapping
message is within the range defined in the outbound policy. If the FEC is within the FEC
range, the LSR sends a label mapping message for the FEC; if the FEC is not in the FEC
range, the LSR does not send a label mapping message.
If the FEC to which the route mapped fails to pass any outbound policy, no transit LSP or egress
LSP can be established.
Inbound LDP Policy
The inbound LDP policy filters label mapping messages to be received. The inbound LDP policydoes not take effect with L2VPN label mapping messages, which means that all the L2VPN
label mapping messages can be received. In addition, the range of FECs to which the non-BGP
routes are mapped is configurable.
If FECs in the label mapping messages to be received by an LDP peer group or all LDP peers
are in the same range, the same inbound policy is applicable to the LDP peer group or all LDP
peers.
An LSR checks whether an inbound policy mapped to a FEC is configured before receiving a
label mapping message for the FEC.
l If no inbound policy is configured, the LSR receives the label mapping message.
l
If an inbound policy is configured, the LSR checks whether the FEC in the label mappingmessage, is within the range defined in the inbound policy. If the FEC is within the FEC
HUAWEI CX600 Metro Services Platform
Feature Description - MPLS 2 MPLS LDP
Issue 02 (2011-09-10) Huawei Proprietary and Confidential
Copyright Huawei Technologies Co., Ltd.
33
-
8/10/2019 3.2.7 Feature Description - MPLS
40/114
range, the LSR receives the label mapping message for the FEC; if the FEC is not in the
FEC range, the LSR does not receive the label mapping message.
If the FEC fails to pass any outbound policy on an LSR, the LSR receives no label mapping
message for the FEC.
In this case, one of the following results may occur:
l If a DU LDP session is established between an LSR and its peer, a liberal LSP is established.
In addition, this liberal LSP cannot function as a backup LSP after LDP FRR is enabled.
l If a DoD LDP session is established between an LSR and its peer, the LSR sends a Release
message to tear dow