Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
Americas Headquarters
Cisco Systems, Inc.
170 West Tasman Drive
San Jose, CA 95134-1706
USA
http://www.cisco.com
Tel: 408 526-4000
800 553-NETS (6387)
Fax: 408 527-0883
© 2017 Cisco Systems, Inc. All rights reserved.
CONTENTS
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
iii
Contents
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
iv
Contents
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
v
Contents
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
vi
CHAPTER 1
Configuring Multiprotocol Label Switching
(MPLS)
• Multiprotocol Label Switching, on page 1
• Finding Feature Information, on page 1
• Restrictions for Multiprotocol Label Switching, on page 1
• Information about Multiprotocol Label Switching, on page 2
• How to Configure Multiprotocol Label Switching, on page 4
• Verifying Multiprotocol Label Switching Configuration, on page 5
• Additional References for Multiprotocol Label Switching, on page 8
• Feature Information for Multiprotocol Label Switching, on page 8
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
1
Configuring Multiprotocol Label Switching (MPLS)
Information about Multiprotocol Label Switching
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
2
Configuring Multiprotocol Label Switching (MPLS)
MPLS Layer 3 VPN
• Label Distribution Protocol (LDP)--enables peer LSRs in an MPLS network to exchange label binding
information for supporting hop-by-hop forwarding in an MPLS network
• Border Gateway Protocol (BGP)--Used to support MPLS virtual private networks (VPNs)
When a labeled packet is being sent from LSR A to the neighboring LSR B, the label value carried by the IP
packet is the label value that LSR B assigned to represent the forwarding equivalence class of the packet.
Thus, the label value changes as the IP packet traverses the network.
For more information about LDP configuration, see the see MPLS: LDP Configuration Guide at
http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/mpls/config_library/xe-3s/mp-xe-3s-library.html
Note As the scale of label entries is limited in, especially with ECMP, it is recommended to enable LDP label
filtering. LDP labels shall be allocated only for well known prefixes like loopback interfaces of routers and
any prefix that needs to be reachable in the global routing table.
Restrictions
Following is the list of restrictions for classifying and marking MPLS QoS EXP:
• Only Uniform mode and Pipe mode are supported; Short-pipe mode is not supported.
• Support range of QoS-group values range between 0 and 30. (Total 31 QoS-groups).
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
3
Configuring Multiprotocol Label Switching (MPLS)
How to Configure Multiprotocol Label Switching
• EXP marking using QoS policy is supported only on the outer label; inner EXP marking is not supported.
Procedure
Device> enable
Step 4 mpls label range minimum-value Configure the range of local labels available for
maximum-value use with MPLS applications on packet
interfaces.
Example:
Step 5 mpls label protocol ldp Specifies the label distribution protocol for the
platform.
Example:
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
4
Configuring Multiprotocol Label Switching (MPLS)
Verifying Multiprotocol Label Switching Configuration
Procedure
Device> enable
Step 3 interface type slot/subslot /port Specifies the Gigabit Ethernet interface and
enters interface configuration mode. For Switch
Example:
Virtual Interface (SVI), the example is
Device(config)# interface gigabitethernet Device(config)# interface vlan 1000
1/0/0
Step 5 mpls label protocol ldp Specifies the label distribution protocol for an
interface.
Example:
Note MPLS LDP cannot be enabled on a
Device(config-if)# mpls label protocol Virtual Routing and Forwarding
ldp (VRF) interface.
Device(config-if)# end
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
5
Configuring Multiprotocol Label Switching (MPLS)
Verifying Configuration of MPLS Forwarding
Procedure
Note The MPLS MTU value is equivalent to the IP MTU value of the port or switch by default. MTU configuration
for MPLS is not supported.
Procedure
Type Unknown
IP labeling enabled
LSP Tunnel labeling not enabled
IP FRR labeling not enabled
BGP labeling not enabled
MPLS not operational
MTU = 1500
Type Unknown
IP labeling enabled (ldp) :
Interface config
LSP Tunnel labeling not enabled
IP FRR labeling not enabled
BGP labeling not enabled
MPLS operational
MTU = 1500
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
6
Configuring Multiprotocol Label Switching (MPLS)
Verifying Configuration of MPLS Forwarding
Building configuration...
Building configuration...
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
7
Configuring Multiprotocol Label Switching (MPLS)
Additional References for Multiprotocol Label Switching
Technical Assistance
Description Link
Release Modification
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
8
CHAPTER 2
Configuring MPLS Layer 3 VPN
An MPLS Virtual Private Network (VPN) consists of a set of sites that are interconnected by means of a
Multiprotocol Label Switching (MPLS) provider core network. At each customer site, one or more customer
edge (CE) devices attach to one or more provider edge (PE) devices. This module explains how to create an
MPLS Layer 3 VPN.
• MPLS Layer 3 VPNs, on page 9
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
9
Configuring MPLS Layer 3 VPN
Restrictions for MPLS Virtual Private Networks
The following ip route commands are supported when you configure static routes in an MPLS environment
and configure load sharing with static nonrecursive routes and a specific outbound interface:
• ip route destination-prefix mask interface1 next-hop1
• ip route destination-prefix mask interface2 next-hop2
The following ip route command is not supported when you configure static routes in an MPLS environment
and enable load sharing where the next hop can be reached through two paths:
• ip route destination-prefix mask next-hop-address
The following ip route commands are not supported when you configure static routes in an MPLS environment
and enable load sharing where the destination can be reached through two next hops:
• ip route destination-prefix mask next-hop1
• ip route destination-prefix mask next-hop2
The following ip route vrf commands are supported when you configure static routes in an MPLS VPN
environment, and the next hop is in the global table in the MPLS cloud in the global routing table. For example,
these commands are supported when the next hop is pointing to the Internet gateway.
• ip route vrf vrf-name destination-prefix mask next-hop-address global
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
10
Configuring MPLS Layer 3 VPN
Restrictions for MPLS Virtual Private Networks
• ip route vrf vrf-name destination-prefix mask interface next-hop-address (This command is supported
when the next hop and interface are in the core.)
The following ip route commands are supported when you configure static routes in an MPLS VPN
environment and enable load sharing with static nonrecursive routes and a specific outbound interface:
• ip route destination-prefix mask interface1 next-hop1
• ip route destination-prefix mask interface2 next-hop2
Unsupported Static Routes in an MPLS VPN Environment That Uses the TFIB
The following ip route command is not supported when you configure static routes in an MPLS VPN
environment, the next hop is in the global table in the MPLS cloud within the core, and you enable load sharing
where the next hop can be reached through two paths:
• ip route vrf destination-prefix mask next-hop-address global
The following ip route commands are not supported when you configure static routes in an MPLS VPN
environment, the next hop is in the global table in the MPLS cloud within the core, and you enable load sharing
where the destination can be reached through two next hops:
• ip route vrf destination-prefix mask next-hop1 global
• ip route vrf destination-prefix mask next-hop2 global
The following ip route vrf commands are not supported when you configure static routes in an MPLS VPN
environment, and the next hop and interface are in the same VRF:
• ip route vrf vrf-name destination-prefix mask next-hop1 vrf-name destination-prefix mask next-hop1
• ip route vrf vrf-name destination-prefix mask next-hop2
Supported Static Routes in an MPLS VPN Environment Where the Next Hop Resides in the Global Table on
the CE Device
The following ip route vrf command is supported when you configure static routes in an MPLS VPN
environment, and the next hop is in the global table on the customer edge (CE) side. For example, the following
command is supported when the destination prefix is the CE device’s loopback address, as in external Border
Gateway Protocol (EBGP) multihop cases.
• ip route vrf vrf-name destination-prefix mask interface next-hop-address
The following ip route commands are supported when you configure static routes in an MPLS VPN
environment, the next hop is in the global table on the CE side, and you enable load sharing with static
nonrecursive routes and a specific outbound interface:
• ip route destination-prefix mask interface1 nexthop1
• ip route destination-prefix mask interface2 nexthop2
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
11
Configuring MPLS Layer 3 VPN
Information About MPLS Virtual Private Networks
Conventional VPNs are created by configuring a full mesh of tunnels or permanent virtual circuits (PVCs) to
all sites in a VPN. This type of VPN is not easy to maintain or expand, because adding a new site requires
changing each edge device in the VPN.
MPLS-based VPNs are created in Layer 3 and are based on the peer model. The peer model enables the service
provider and the customer to exchange Layer 3 routing information. The service provider relays the data
between the customer sites without the customer’s involvement.
MPLS VPNs are easier to manage and expand than conventional VPNs. When a new site is added to an MPLS
VPN, only the service provider’s edge device that provides services to the customer site needs to be updated.
The different parts of the MPLS VPN are described as follows:
• Provider (P) device—Device in the core of the provider network. P devices run MPLS switching, and
do not attach VPN labels to routed packets. The MPLS label in each route is assigned by the provider
edge (PE) device. VPN labels are used to direct data packets to the correct egress device.
• PE device—Device that attaches the VPN label to incoming packets based on the interface or subinterface
on which they are received. A PE device attaches directly to a customer edge (CE) device.
• Customer (C) device—Device in the ISP or enterprise network.
• CE device—Edge device on the network of the ISP that connects to the PE device on the network. A CE
device must interface with a PE device.
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
12
Configuring MPLS Layer 3 VPN
How an MPLS Virtual Private Network Works
A one-to-one relationship does not necessarily exist between customer sites and VPNs. A given site can be a
member of multiple VPNs. However, a site can associate with only one VRF. A customer-site VRF contains
all the routes available to the site from the VPNs of which it is a member.
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
13
Configuring MPLS Layer 3 VPN
Benefits of an MPLS Virtual Private Network
Connectionless Service
A significant technical advantage of MPLS VPNs is that they are connectionless. The Internet owes its success
to its basic technology, TCP/IP. TCP/IP is built on a packet-based, connectionless network paradigm. This
means that no prior action is necessary to establish communication between hosts, making it easy for two
parties to communicate. To establish privacy in a connectionless IP environment, current VPN solutions
impose a connection-oriented, point-to-point overlay on the network. Even if it runs over a connectionless
network, a VPN cannot take advantage of the ease of connectivity and multiple services available in
connectionless networks. When you create a connectionless VPN, you do not need tunnels and encryption
for network privacy, thus eliminating significant complexity.
Centralized Service
Building VPNs in Layer 3 allows delivery of targeted services to a group of users represented by a VPN. A
VPN must give service providers more than a mechanism for privately connecting users to intranet services.
It must also provide a way to flexibly deliver value-added services to targeted customers. Scalability is critical,
because customers want to use services privately in their intranets and extranets. Because MPLS VPNs are
seen as private intranets, you may use new IP services such as:
• Multicast
• Quality of service (QoS)
• Telephony support within a VPN
• Centralized services including content and web hosting to a VPN
You can customize several combinations of specialized services for individual customers. For example, a
service that combines IP multicast with a low-latency service class enables video conferencing within an
intranet.
Scalability
If you create a VPN using connection-oriented, point-to-point overlays, Frame Relay, or ATM virtual
connections (VCs), the VPN’s key deficiency is scalability. Specifically, connection-oriented VPNs without
fully meshed connections between customer sites are not optimal. MPLS-based VPNs, instead, use the peer
model and Layer 3 connectionless architecture to leverage a highly scalable VPN solution. The peer model
requires a customer site to peer with only one provider edge (PE) device as opposed to all other customer
edge (CE) devices that are members of the VPN. The connectionless architecture allows the creation of VPNs
in Layer 3, eliminating the need for tunnels or VCs.
Other scalability issues of MPLS VPNs are due to the partitioning of VPN routes between PE devices and
the further partitioning of VPN and Interior Gateway Protocol (IGP) routes between PE devices and provider
(P) devices in a core network.
• PE devices must maintain VPN routes for those VPNs who are members.
• P devices do not maintain any VPN routes.
This increases the scalability of the provider’s core and ensures that no one device is a scalability bottleneck.
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
14
Configuring MPLS Layer 3 VPN
Benefits of an MPLS Virtual Private Network
Security
MPLS VPNs offer the same level of security as connection-oriented VPNs. Packets from one VPN do not
inadvertently go to another VPN.
Security is provided in the following areas:
• At the edge of a provider network, ensuring packets received from a customer are placed on the correct
VPN.
• At the backbone, VPN traffic is kept separate. Malicious spoofing (an attempt to gain access to a PE
device) is nearly impossible because the packets received from customers are IP packets. These IP packets
must be received on a particular interface or subinterface to be uniquely identified with a VPN label.
Ease of Creation
To take full advantage of VPNs, customers must be able to easily create new VPNs and user communities.
Because MPLS VPNs are connectionless, no specific point-to-point connection maps or topologies are required.
You can add sites to intranets and extranets and form closed user groups. Managing VPNs in this manner
enables membership of any given site in multiple VPNs, maximizing flexibility in building intranets and
extranets.
Flexible Addressing
To make a VPN service more accessible, customers of a service provider can design their own addressing
plan, independent of addressing plans for other service provider customers. Many customers use private
address spaces, as defined in RFC 1918, and do not want to invest the time and expense of converting to
public IP addresses to enable intranet connectivity. MPLS VPNs allow customers to continue to use their
present address spaces without network address translation (NAT) by providing a public and private view of
the address. A NAT is required only if two VPNs with overlapping address spaces want to communicate. This
enables customers to use their own unregistered private addresses, and communicate freely across a public
IP network.
Network traffic is classified and labeled at the edge of the network before traffic is aggregated according to
policies defined by subscribers and implemented by the provider and transported across the provider core.
Traffic at the edge and core of the network can then be differentiated into different classes by drop probability
or delay.
Straightforward Migration
For service providers to quickly deploy VPN services, use a straightforward migration path. MPLS VPNs are
unique because you can build them over multiple network architectures, including IP, ATM, Frame Relay,
and hybrid networks.
Migration for the end customer is simplified because there is no requirement to support MPLS on the CE
device and no modifications are required to a customer’s intranet.
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
15
Configuring MPLS Layer 3 VPN
How to Configure MPLS Virtual Private Networks
Procedure
Step 2 Identify the routing protocols in the core. Determine which routing protocols you need in
the core network.
Step 3 Determine if you need MPLS VPN High MPLS VPN Nonstop Forwarding and Graceful
Availability support. Restart are supported on select devices and
Cisco software releases. Contact Cisco Support
for the exact requirements and hardware
support.
Step 4 Determine if you need Border Gateway Protocol For configuration steps, see the “Load Sharing
(BGP) load sharing and redundant paths in the MPLS VPN Traffic” feature module in the
MPLS VPN core. MPLS Layer 3 VPNs Inter-AS and CSC
Configuration Guide.
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
16
Configuring MPLS Layer 3 VPN
Connecting the MPLS Virtual Private Network Customers
Procedure
Device> enable
Step 5 route-target {import | export | both} Creates a route-target extended community for
route-target-ext-community a VRF.
Example: • The import keyword imports routing
information from the target VPN extended
Device(config-vrf)# route-target both community.
100:1
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
17
Configuring MPLS Layer 3 VPN
Configuring VRF Interfaces on PE Devices for Each VPN Customer
Device(config-vrf)# exit
Procedure
Device> enable
Step 3 interface type number Specifies the interface to configure and enters
interface configuration mode.
Example:
• The type argument specifies the type of
Device(config)# interface interface to be configured.
• The number argument specifies the port,
connector, or interface card number.
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
18
Configuring MPLS Layer 3 VPN
Configuring Routing Protocols Between the PE and CE Devices
Device(config-if)# end
Procedure
show ip vrf
Displays the set of defined VRF instances and associated interfaces. The output also maps the VRF instances
to the configured route distinguisher.
Procedure
Step 1 enable
Enables privileged EXEC mode.
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
19
Configuring MPLS Layer 3 VPN
Verifying That the Local and Remote CE Devices Are in the PE Routing Table
Discovers the routes that packets take when traveling to their destination. The trace command can help isolate
a trouble spot if two devices cannot communicate.
Step 4 show ip route [ip-address [mask] [longer-prefixes]] | protocol [process-id]] | [list [access-list-name |
access-list-number]
Displays the current state of the routing table. Use the ip-address argument to verify that CE1 has a route to
CE2. Verify the routes learned by CE1. Make sure that the route for CE2 is listed.
Verifying That the Local and Remote CE Devices Are in the PE Routing Table
Procedure
Step 1 enable
Enables privileged EXEC mode.
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
20
Configuring MPLS Layer 3 VPN
Configuration Examples for MPLS Virtual Private Networks
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
21
Configuring MPLS Layer 3 VPN
Example: Configuring an MPLS Virtual Private Network Using Static Routes
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
22
Configuring MPLS Layer 3 VPN
Additional References
Additional References
Related Documents
Cisco IOS commands Cisco IOS Master Command List, All Releases
Configuring Cisco Express Forwarding “Configuring Basic Cisco Express Forwarding” module in
the Cisco Express Forwarding Configuration Guide
Technical Assistance
Description Link
Release Modification
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
23
Configuring MPLS Layer 3 VPN
Feature Information for MPLS Virtual Private Networks
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
24
CHAPTER 3
MPLS QoS: Classifying and Marking EXP
• Classifying and Marking MPLS EXP, on page 25
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
25
MPLS QoS: Classifying and Marking EXP
Information About Classifying and Marking MPLS EXP
• To apply QoS on traffic across protocol boundaries, use QoS-group. You can classify and assign ingress
traffic to the QoS-group. Thereafter, you can the QoS-group at egress to classify and apply QoS.
• If a packet is encapsulated in MPLS, the MPLS payload cannot be checked for other protocols such as
IP for classification or marking. Only MPLS EXP marking affects packets encapsulated by MPLS.
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
26
MPLS QoS: Classifying and Marking EXP
How to Classify and Mark MPLS EXP
Procedure
Switch> enable
Step 3 class-map [match-all | match-any] Creates a class map to be used for matching
class-map-name traffic to a specified class, and enters class-map
configuration mode.
Example:
• Enter the class map name.
Switch(config)# class-map exp3
Switch(config-cmap)# end
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
27
MPLS QoS: Classifying and Marking EXP
Marking MPLS EXP on Label Switched Packets
Note For IP imposition marking, the IP precedence value is copied to the MPLS EXP value by default.
Note The set mpls experimental imposition command works only on packets that have new or additional MPLS
labels added to them.
Procedure
Switch> enable
Step 5 set mpls experimental imposition Sets the value of the MPLS EXP field on all
mpls-exp-value imposed label entries.
Example:
Switch(config-pmap-c)# end
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
28
MPLS QoS: Classifying and Marking EXP
Configuring Conditional Marking
Note The set mpls experimental topmost command marks EXP for the outermost label of MPLS traffic. Due to
this marking at ingress policy, the egress policy must include classification based on the MPLS EXP values.
Procedure
Switch> enable
Step 5 set mpls experimental topmost Sets the MPLS EXP field value in the topmost
mpls-exp-value label on the output interface.
Example:
Switch(config-pmap-c)# end
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
29
MPLS QoS: Classifying and Marking EXP
Configuring Conditional Marking
Note The set-mpls-exp-topmost-transmit action affects MPLS encapsulated packets only. The
set-mpls-exp-imposition-transmit action affects any new labels that are added to the packet.
Procedure
Switch> enable
Step 5 police cir bps bc pir bps be Defines a policer for classified traffic and enters
policy-map class police configuration mode.
Example:
Step 7 exceed-action set-mpls-exp-topmost-transmit Defines the action to take on packets that exceed
dscp table dscp-table-value the values specified by the policer.
Example:
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
30
MPLS QoS: Classifying and Marking EXP
Configuration Examples for Classifying and Marking MPLS EXP
Switch(config-pmap-c-police)#
exceed-action
set-mpls-exp-topmost-transmit dscp table
dscp2exp
Step 8 violate-action drop Defines the action to take on packets whose rate
exceeds the peak information rate (pir) and is
Example:
outside the bc and be ranges.
Switch(config-pmap-c-police)# • You must specify the exceed action before
violate-action drop you specify the violate action.
• In this example, if the packet rate exceeds
the pir rate and is outside the bc and be
ranges, the packet is dropped.
Switch(config-pmap-c-police)# end
Defining a Policy Map and Applying the Policy Map to an Ingress Interface
The following example uses the class map created in the example above to define a policy map. This
example also applies the policy map to a physical interface for ingress traffic.
Switch(config)# policy-map change-exp-3-to-2
Switch(config-pmap)# class exp3
Switch(config-pmap-c)# set mpls experimental topmost 2
Switch(config-pmap)# exit
Switch(config)# interface GigabitEthernet 0/0/0
Switch(config-if)# service-policy input change-exp-3-to-2
Switch(config-if)# exit
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
31
MPLS QoS: Classifying and Marking EXP
Marking MPLS EXP on the Outermost Label
Defining a Policy Map and Applying the Policy Map to an Egress Interface
The following example uses the class map created in the example above to define a policy map. This
example also applies the policy map to a physical interface for egress traffic.
Switch(config)# policy-map WAN-out
Switch(config-pmap)# class exp3
Switch(config-pmap-c)# shape average 10000000
Switch(config-pmap-c)# exit
Switch(config-pmap)# exit
Switch(config)# interface GigabitEthernet 0/0/0
Switch(config-if)# service-policy output WAN-out
Switch(config-if)# exit
Note For IP imposition marking, the IP precedence value is copied to the MPLS EXP value by default.
Note The set mpls experimental imposition command works only on packets that have new or additional MPLS
labels added to them.
Procedure
Switch> enable
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
32
MPLS QoS: Classifying and Marking EXP
Example: Marking MPLS EXP on Label Switched Packets
Step 5 set mpls experimental imposition Sets the value of the MPLS EXP field on all
mpls-exp-value imposed label entries.
Example:
Switch(config-pmap-c)# end
Applying the MPLS EXP Label Switched Packets Policy Map to a Main Interface
The following example shows how to apply the policy map to a main interface:
Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface GigabitEthernet 0/0/0
Switch(config-if)# service-policy input mark-up-exp-2
Switch(config-if)# exit
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
33
MPLS QoS: Classifying and Marking EXP
Additional References
Additional References
Related Documents
Cisco IOS commands Cisco IOS Master Commands List, All Releases
Standard/RFC Title
No new or modified standards are supported, and support for existing standards has not been modified.
Technical Assistance
Description Link
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
34
MPLS QoS: Classifying and Marking EXP
Feature Information for QoS MPLS EXP
Release Modification
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
35
MPLS QoS: Classifying and Marking EXP
Feature Information for QoS MPLS EXP
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
36
CHAPTER 4
Configuring Multicast VPN
• Configuring Multicast VPN, on page 37
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
37
Configuring Multicast VPN
Information About Configuring Multicast VPN
configured properly. If you use a loopback address for BGP peering, PIM sparse mode must be enabled
on the loopback address.
• MVPN does not support multiple BGP peering update sources.
• Multiple BGP update sources are not supported, and configuring them can break MVPN reverse path
forwarding (RPF) checking. The source IP address of the MVPN tunnels is determined by the highest
IP address used for the BGP peering update source. If this IP address is not the IP address used as the
BGP peering address with the remote provider edge (PE) device, MVPN will not function properly.
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
38
Configuring Multicast VPN
Multicast Distribution Trees
MVPN also supports the dynamic creation of MDTs for high-bandwidth transmission. Data MDTs are a
feature unique to Cisco IOS software. Data MDTs are intended for high-bandwidth sources such as full-motion
video inside the VPN to ensure optimal traffic forwarding in the MPLS VPN core. The threshold at which
the data MDT is created can be configured on a per-router or a per-VRF basis. When the multicast transmission
exceeds the defined threshold, the sending PE router creates the data MDT and sends a UDP message, which
contains information about the data MDT, to all routers on the default MDT. The statistics to determine
whether a multicast stream has exceeded the data MDT threshold are examined once every second. After a
PE router sends the UDP message, it waits 3 more seconds before switching over; 13 seconds is the worst
case switchover time, and 3 seconds is the best case.
Data MDTs are created only for (S, G) multicast route entries within the VRF multicast routing table. They
are not created for (*, G) entries regardless of the value of the individual source data rate.
In the following example, a service provider has a multicast customer with offices in San Jose, New York,
and Dallas. A one-way multicast presentation is occurring in San Jose. The service provider network supports
all three sites associated with this customer, in addition to the Houston site of a different enterprise customer.
The default MDT for the enterprise customer consists of provider routers P1, P2, and P3 and their associated
PE routers. PE4 is not part of the default MDT, because it is associated with a different customer. The figure
shows that no data flows along the default MDT, because no one outside of San Jose has joined the multicast.
Figure 2: Default Multicast Distribution Tree Overview
An employee in New York joins the multicast session. The PE router associated with the New York site sends
a join request that flows across the default MDT for the multicast domain of the customer. PE1, the PE router
associated with the multicast session source, receives the request. The figure depicts that the PE router forwards
the request to the CE router associated with the multicast source (CE1a).
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
39
Configuring Multicast VPN
Multicast Tunnel Interface
The CE router (CE1a) begins to send the multicast data to the associated PE router (PE1), which sends the
multicast data along the default MDT. Immediately sending the multicast data, PE1 recognizes that the multicast
data exceeds the bandwidth threshold for which a data MDT should be created. Therefore, PE1 creates a data
MDT, sends a message to all routers using the default MDT, which contains information about the data MDT,
and, three seconds later, begins sending the multicast data for that particular stream using the data MDT. Only
PE2 has interested receivers for this source, so only PE2 will join the data MDT and receive traffic on it.
PE routers maintain a PIM relationship with other PE routers over the default MDT and a PIM relationship
with directly attached PE routers.
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
40
Configuring Multicast VPN
BGP Advertisement Methods for Multicast VPN Support
Note Prior to the introduction of MDT SAFI support, the BGP extended community attribute was used as an interim
solution to advertise the IP address of the source PE and default MDT group before IETF standardization. A
BGP extended community attribute in an MVPN environment, however, has certain limitations: it cannot be
used in inter-AS scenarios (because the attribute is nontransitive), and it uses RD Type 2 (which is not a
supported standard).
Procedure
Device> enable
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
41
Configuring Multicast VPN
Configuring the Data Multicast Group
Step 3 vrf definition vrf-name Enters VRF configuration mode and defines
the VPN routing instance by assigning a VRF
Example:
name.
Device(config)# vrf definition vrf1
Step 5 route-target both ASN:nn or IP-address:nn Creates a route-target extended community for
a VRF. The both keyword specifies to import
Example:
both import and export routing information to
the target VPN extended community.
Device(config-vrf)# route-target both
1:1
Step 6 address family ipv4 unicast value Enters VRF address family configuration mode
to specify an address family for a VRF.
Example:
• The ipv4 keyword specifies an IPv4
Device(config-vrf)# address family ipv4 address family for a VRF
unicast
Step 7 mdt default group-address Configures the multicast group address range
for data MDT groups for a VRF.
Example:
• A tunnel interface is created as a result of
Device(config-vrf-af)# mdt default this command.
226.10.10.10
• The default MDT group address
configuration must be the same on all PEs
in the same VRF.
Step 8 mdt data group number Specifies a range of addresses to be used in the
data MDT pool.
Example:
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
42
Configuring Multicast VPN
Configuring a Default MDT Group for a VRF
Device(config-vrf-af)# end
Procedure
Device> enable
Device(config)# ip multicast-routing
Device(config)# ip multicast-routing
vrf vrf1
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
43
Configuring Multicast VPN
Configuring a Default MDT Group for a VRF
Step 7 route-target both ASN:nn or IP-address:nn Creates a route-target extended community for
a VRF. The both keyword specifies to import
Example:
both import and export routing information to
the target VPN extended community.
Device(config-vrf)# route-target both
1:1
Step 8 address family ipv4 unicast value Enters VRF address family configuration mode
to specify an address family for a VRF.
Example:
• The ipv4 keyword specifies an IPv4
Device(config-vrf)# address family ipv4 address family for a VRF
unicast
Step 9 mdt default group-address Configures the multicast group address range
for data MDT groups for a VRF.
Example:
• A tunnel interface is created as a result of
Device(config-vrf-af)# mdt default this command.
226.10.10.10
• The default MDT group address
configuration must be the same on all PEs
in the same VRF.
Device(config-vrf-af)# end
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
44
Configuring Multicast VPN
Configuring the MDT Address Family in BGP for Multicast VPN
Procedure
Device> enable
Step 3 router bgp as-number Enters router configuration mode and creates
a BGP routing process.
Example:
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
45
Configuring Multicast VPN
Configuring the MDT Address Family in BGP for Multicast VPN
Device(config-router)# address-family
ipv4 mdt
Step 5 neighbor neighbor-address activate Enables the MDT address family for this
neighbor.
Example:
Device(config-router-af)# neighbor
192.168.1.1 activate
Device(config-router-af)# neighbor
192.168.1.1 send-community extended
Device(config-router-af)# exit
Device(config-router)# address-family
vpnv4
Step 9 neighbor neighbor-address activate Enables the VPNv4 address family for this
neighbor.
Example:
Device(config-router-af)# neighbor
192.168.1.1 activate
Device(config-router-af)# neighbor
192.168.1.1 send-community extended
Device(config-router-af)# end
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
46
Configuring Multicast VPN
Verifying Information for the MDT Default Group
Procedure
Step 1 enable
Example:
Device> enable
Enables privileged EXEC mode.
• Enter your password if prompted.
Displays information about the BGP advertisement of the RD for the MDT default group.
Displays detailed information about the MDT data group incluidng MDT advertisements that the specified
device has made.
MDT-data send history for VRF - vrf1 for the past 20 minutes
MDT-data group Number of reuse
10.9.9.8 3
10.9.9.9 2
Displays the data MDTs that have been reused during the past configured interval.
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
47
Configuring Multicast VPN
Configuration Examples for Multicast VPN
ip vrf vrf1
rd 1:1
route-target export 1:1
route-target import 1:1
mdt default 232.0.0.1
mdt data 232.0.1.0 0.0.0.255 threshold 500 list 101
!
ip pim ssm default
ip pim vrf vrf1 accept-rp auto-rp
ip multicast-routing vrf1
Example: Configuring the Multicast Group Address Range for Data MDT Groups
In the following example, the VPN routing instance is assigned a VRF named blue. The MDT default group
for a VPN VRF is 239.1.1.1, and the multicast group address range for MDT groups is 239.1.2.0 with wildcard
bits of 0.0.0.3:
ip vrf blue
rd 55:1111
route-target both 55:1111
mdt default 239.1.1.1
mdt data 239.1.2.0 0.0.0.3
end
!
ip multicast-routing
ip multicast-routing vrf cisco
ip multicast cache-headers
ip multicast route-limit 200000 20000
ip multicast vrf cisco route-limit 200000 20000
no mpls traffic-eng auto-bw timers frequency 0
!
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
48
Configuring Multicast VPN
Additional References for Configuring Multicast VPN
Technical Assistance
Description Link
Release Modification
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
49
Configuring Multicast VPN
Feature Information for Configuring Multicast VPN
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
50
INDEX
M Multicast-VPN operation 38
Multicast-VPN routing and forwarding and multicast domains 38
multicast tunnel interface 40
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
IN-1
INDEX
Multiprotocol Label Switching (MPLS) Configuration Guide, Cisco IOS XE Everest 16.6.x (Catalyst 9400 Switches)
IN-2