Table Of Contents
Configuring Multiprotocol Label Switching on the Optical Services Modules
Configuring MPLS
Understanding MPLS
MPLS Support on OSMs
MPLS Limitations and Restrictions
Configuring MPLS
Configuring MPLS QoS
Unsupported MPLS QoS Commands
Supported MPLS QoS Features
MPLS QoS Limitations and Restrictions
Understanding the MPLS Experimental Field
Configuring MPLS QoS
Configuration Examples
Configuring MPLS VPN
MPLS VPN Support on OSMs
MPLS VPN Limitations and Restrictions
MPLS VPN Memory Requirements and Recommendations
MPLS Per-Label Load Balancing
Configuring MPLS VPN
Configuring MPLS VPN CoS
Configuration Example
Configuring EoMPLS
Configuring Multiprotocol Label Switching on the Optical Services Modules
This chapter describes how to configure Multiprotocol Label Switching (MPLS) and Ethernet over Multiprotocol Label Switching (EoMPLS) on the Optical Services Modules (OSMs).
This chapter consists of these sections:
•
Configuring MPLS
•
Configuring MPLS QoS
•
Configuring MPLS VPN
•
Configuring MPLS VPN CoS
•
Configuring EoMPLS
Configuring MPLS
These sections describe MPLS and provides configuration information:
•
Understanding MPLS
•
MPLS Support on OSMs
•
MPLS Limitations and Restrictions
•
Configuring MPLS
Understanding MPLS
MPLS uses label switching to forward packets over various link-level technologies such as Packet-over-SONET, Frame Relay, ATM, and Ethernet. Labels are assigned to packets based on groupings or forwarding equivalence classes (FECs). Packets belonging to the same FEC get similar treatment. The label is added between the Layer 2 and the Layer 3 header (in a packet environment) or in the virtual path identifier/virtual channel identifier (VPI/VCI) field (in ATM networks).
In an MPLS network, the edge router performs a label lookup of the incoming label, swaps the incoming label with an outgoing label, and sends the packet to the next hop. Labels are imposed on packets only at the ingress edge of the MPLS network and are removed at the egress edge. The core network reads the labels, applies the appropriate services, and forwards the packets based on the labels.
MPLS Support on OSMs
MPLS is supported on the following Catalyst 6000 family and Cisco 7600 series OSMs:
•
OC-3 POS:
–
OSM-4OC3-POS-SI
–
OSM-8OC3-POS-SI, SL
–
OSM-16OC3-POS-SI, SL
–
OSM-4OC3-POS-SI+
–
OSM-8OC3-POS-SI+, SL+
–
OSM-16OC3-POS-SI+, SL+
•
OC-12 POS:
–
OSM-2OC12-POS-MM, SI, SL
–
OSM-4OC12-POS-MM, SI, SL
–
OSM-2OC12-POS-MM+, SI+, SL+
–
OSM-4OC12-POS-MM+, SI+, SL+
•
OC-12 ATM:
–
OSM-2OC12-ATM-MM
–
OSM-2OC12-ATM-SI
–
OSM-2OC12-ATM-MM+
–
OSM-2OC12-ATM-SI+
•
OC-48 POS:
–
OSM-1OC48-POS-SS, SI, SL
–
OSM-1OC48-POS-SS+, SI+, SL+
•
Channelized:
–
OSM-1CHOC48/T3-SS
–
OSM-1CHOC12/T3-SI
–
OSM-1CHOC12/T1-SI
–
OSM-12CT3/T1
•
OC-48 POS/DPT:
–
OSM-2OC48/1DPT-SS, SI, SL
Note
OSM-2OC48/1DPT-SS, SI, SL support MPLS in POS mode only.
•
Gigabit Ethernet
–
OSM-4GE-WAN-GBIC
–
OSM-2+4GE-WAN+
•
WS-X6182-2PA FlexWAN
MPLS Limitations and Restrictions
The following platform-specific limitations and restrictions apply to the MPLS support on the OSM modules:
•
Unsupported MPLS Features
•
MPLS Limitations
Unsupported MPLS Features
Although the CLI may allow you to configure the following features, they are not supported:
•
MPLS-TE
•
MPLS-CsC
•
MPLS-InterAS-VPN
MPLS Limitations
The following MPLS limitations apply:
•
Load sharing is supported on PE paths only and not on the P device.
•
MTU checking and fragmentation is not supported on P paths.
•
MPLS Provider (P) functionality is not supported on Ethernet interfaces that also support Layer 2 switching. The only way to support P functionality on these interfaces is to create a trunk from a Gigabit Ethernet interface on, for example, a WS-6516-GBIC module to an interface on the OSM-4GE-WAN module that is configured to allow P switching. The interface on the WS-6516-GBIC module should be placed in trunking mode, and appropriate subinterfaces should be created on the OSM-4GE-WAN module interface.
•
Encapsulation on the 2-Port OC-12 ATM OSM—MPLS is supported only when the interface is configured for AAL5SNAP encapsulation (default).
Configuring MPLS
For information on configuring MPLS, refer to the Multiprotocol Label Switching on Cisco Routers feature module at this URL:
http://www.cisco.com/univercd/cc/td/doc/product/software/ios121/121newft/121t/121t5/mpls4t.htm
Configuring MPLS QoS
For information on configuring MPLS QoS, refer to the MPLS Class Of Service Enhancement feature module at this URL:
http://www.cisco.com/univercd/cc/td/doc/product/software/ios121/121newft/121t/121t5/mct1214t.htm
These sections provide configuration information for MPLS QoS:
•
Unsupported MPLS QoS Commands
•
Supported MPLS QoS Features
•
MPLS QoS Limitations and Restrictions
•
Understanding the MPLS Experimental Field
•
Configuring MPLS QoS
•
Configuration Examples
Unsupported MPLS QoS Commands
The following commands are not supported on the FlexWAN and the OSMs:
•
access-list rate-limit
•
rate-limit
Supported MPLS QoS Features
This section lists the supported MPLS QoS features.
MPLS QoS Support on FlexWAN
The following QoS features are supported on the FlexWAN modules:
•
Ingress QoS:
–
police command
–
set ip precedence command
•
Egress QoS:
–
Low latency queuing (LLQ)
–
Class-based traffic shaping (output)
–
Weighted random early detection (WRED)
–
set mpls experimental command
–
Hierarchical policy maps
The following features are not supported:
•
qos-group
MPLS QoS Support on the Optical Services Modules
The following QoS features are supported on the OSMs. For information about IP QoS support on the OSMs, see Chapter 9, "Configuring QoS on the Optical Services Modules."
•
Ingress QoS (match mpls experimental command):
–
Class-based traffic shaping
•
Egress QoS:
–
Class-based traffic shaping
–
Class-based weighted fair queuing (CBWFQ)
–
Low latency queuing
–
Weighted random early detection (WRED)
–
set mpls experimental command
MPLS QoS Limitations and Restrictions
The following limitation applies to MPLS QoS support on the Cisco 7600 series router:
•
For MPLS experimental-bit setting or mapping, the configuration must be applied on the egress interface on the provider edge (PE) router for IP-to-tag paths.
•
Access-control lists are not supported on VRF interfaces.
Understanding the MPLS Experimental Field
Setting the MPLS experimental field value satisfies the requirement of service providers that do not want the value of the IP precedence field modified within IP packets transported through their networks.
By choosing different values for the MPLS experimental field, you can mark packets so that packets have the priority that they require during periods of congestion.
By default, the IP precedence value is copied into the MPLS experimental field during imposition. A set mpls experimental policy can be applied on the output interface of the PE router or the input interface on a provider core (P) router.
Figure 11-1 shows an MPLS network of a service provider that connects two sites of a network belonging to a customer.
Figure 11-1 MPLS Network Connecting Two Sites of a Customer's IP Network
Configuring MPLS QoS
To configure MPLS QoS, perform the tasks described in the following sections:
•
Configuring a Class Map to Classify MPLS Packets
•
Configuring a Policy Map to Set the MPLS Experimental Field
•
Attaching the Service Policy
•
Verifying QoS Operation
For information on configuring OSM QoS features, see Configuring QoS on the Optical Services Modules.
Configuring a Class Map to Classify MPLS Packets
To configure a class map, perform this task beginning in global configuration mode:
| |
Command
|
Purpose
|
Step 1
|
Router(config)# class-map class-name
|
Specifies the class map to which packets will be matched.
|
Step 2
|
Router(config-cmap)# match mpls experimental value
|
Specifies the packet characteristics that will be matched to the class.
|
Step 3
|
Router(config-cmap)# exit
|
Exits class-map configuration mode.
|
This example shows that all packets that contain MPLS experimental value 4 are matched by the traffic class exp4:
Router(config)# class-map exp4
Router(config-cmap)# match mpls experimental 4
Router(config-cmap)# exit
Configuring a Policy Map to Set the MPLS Experimental Field
To configure a policy map, perform this task beginning in global configuration mode:
| |
Command
|
Purpose
|
Step 1
|
Router(config)# policy-map policy-name
|
Creates a policy map that can be attached to one or more interfaces to specify a service policy.
|
Step 2
|
Router(config-pmap)# class class-name
|
Specifies the name of the class map previously designated in the class-map command.
|
Step 3
|
Router(config-pmap-c)# set mpls experimental value1
|
Designates the value to which the MPLS bits are set if the packets match the specified policy map.
|
Step 4
|
Router(config-pmap-c)# exit
|
Exits policy-map configuration mode.
|
This example shows that the value in the MPLS experimental field of each packet that is matched by the class-map exp4 is set to 5:
Router(config)# policy-map set_experimental_5
Router(config-pmap)# class exp4
Router(config-pmap-c)# set mpls experimental 5
Router(config-pmap-c)# exit
Router(config-pmap)# exit
Attaching the Service Policy
To attach the service policy to an interface, perform this task beginning in global configuration mode:
| |
Command
|
Purpose
|
Step 1
|
Router(config)# interface name
|
Designates the output interface.
|
Step 2
|
Router(config-if)# service-policy {input | output}
policy-name
|
Attaches the specified policy map to the interface.
|
Step 3
|
Router(config-if)# exit
|
Exits interface configuration mode.
|
This example shows that the service policy set_experimental_5 is attached to an POS output interface:
Router(config)# interface POS6/1
Router(config-if)# service-policy output set_experimental_5
Router(config-if)# exit
Verifying QoS Operation
To verify the operation of MPLS QoS, perform this task:
Command
|
Purpose
|
Router# show policy-map interface [interface-name]
|
Displays detailed information about QoS.
|
Configuration Examples
Sample configurations provided in this section can be applied to either OSMs or FlexWAN modules supported on the Cisco 7600 series routers.
Ingress PE Router Configuration
In the following example, IP packets with IP precedence 1 entering an MPLS network are shaped to 2000000 bits per second and set to MPLS experimental field 5. When IP packets with IP precedence 0 enter the MPLS network, they are shaped to 3000000 bits per second and set to MPLS experimental field 3. When IP packets with any other IP precedence value enter the MPLS network, they are shaped to 5000000 bits per second.
Step 1
Define two traffic classes:
Router(config)# class-map gold
Router(config-cmap)# match mpls experimental 1
Router(config-cmap)# exit
Router(config)# class-map silver
Router(config-cmap)# match mpls experimental 0
Router(config-cmap)# exit
Note
Traffic classes should be defined to match on MPLS experimental values instead of IP precedence values.
Step 2
Define a policy to take different actions on different traffic classes:
Router(config)# policy-map policy1
Router(config-pmap)# class gold
Router(config-pmap-c)# set mpls experimental 5
Router(config-pmap-c)# shape average 2000000
Router(config-pmap-c)# exit
Router(config-pmap)# class silver
Router(config-pmap-c)# set mpls experimental 3
Router(config-pmap-c)# shape average 3000000
Router(config-pmap-c)# exit
Router(config-pmap)# class class-default
Router(config-pmap-c)# shape average 5000000
Router(config-pmap-c)# exit
Router(config-pmap)# exit
Step 3
Apply the policy to the output interface of a PE router:
Router(config)# interface GE-WAN7/1
Router(config-if)# service-policy output policy1
Step 4
Verify the QoS configuration:
Router# show policy-map interface POS6/2
POS6/2
service-policy output:policy1
class-map:gold (match-all)
0 packets, 0 bytes
30 second offered rate 0 bps, drop rate 0 bps
match:mpls experimental 1
queue size 0, queue limit 500
packets output 0, packet drops 0
tail/random drops 0, no buffer drops 0, other drops 0
set:
mpls experimental 5
shape:cir 2000000, Bc 8000, Be 8000
output bytes 0, shape rate 0 bps
class-map:silver (match-all)
9521 packets, 9425790 bytes
30 second offered rate 3681000 bps, drop rate 1505000 bps
match:mpls experimental 0
queue size 0, queue limit 128
packets output 2845, packet drops 6676
tail/random drops 6676, no buffer drops 0, other drops 0
set:
mpls experimental 3
shape:cir 3000000, Bc 12000, Be 12000
output bytes 2816550, shape rate 642000 bps
class-map:class-default (match-any)
0 packets, 0 bytes
30 second offered rate 0 bps, drop rate 0 bps
match:any
0 packets, 0 bytes
30 second rate 0 bps
queue size 0, queue limit 128
packets output 0, packet drops 0
tail/random drops 0, no buffer drops 0, other drops 0
shape:cir 5000000, Bc 20000, Be 20000
output bytes 0, shape rate 0 bps
Router#
Configuring MPLS VPN
These sections describe how to configure MPLS VPN:
•
MPLS VPN Support on OSMs
•
MPLS VPN Limitations and Restrictions
•
MPLS VPN Memory Requirements and Recommendations
•
Configuring MPLS VPN
MPLS VPN Support on OSMs
MPLS VPN is supported on the following OSMs:
•
OC-3 POS:
–
OSM-4OC3-POS-SI
–
OSM-8OC3-POS-SI, SL
–
OSM-16OC3-POS-SI, SL
–
OSM-4OC3-POS-SI+
–
OSM-8OC3-POS-SI+, SL+
–
OSM-16OC3-POS-SI+, SL+
•
OC-12 POS:
–
OSM-2OC12-POS-MM, SI, SL
–
OSM-4OC12-POS-MM, SI, SL
–
OSM-2OC12-POS-MM+, SI+, SL+
–
OSM-4OC12-POS-MM+, SI+, SL+
•
OC-12 ATM:
–
OSM-2OC12-ATM-MM
–
OSM-2OC12-ATM-SI
–
OSM-2OC12-ATM-MM+
–
OSM-2OC12-ATM-SI+
•
OC-48 POS:
–
OSM-1OC48-POS-SS, SI, SL
–
OSM-1OC48-POS-SS+, SI+, SL+
•
Channelized:
–
OSM-1CHOC12/T3-SI
–
OSM-1CHOC12/T1-SI
–
OSM-12CT3/T1
•
OC-48 POS/DPT1 :
–
OSM-2OC48/1DPT-SS, SI, SL
•
Gigabit Ethernet
–
OSM-4GE-WAN-GBIC
–
OSM-2+4GE-WAN+
•
WS-X6182-2PA FlexWAN
MPLS VPN Limitations and Restrictions
The following MPLS VPN limitations apply:
•
Load sharing is not supported on PE and P paths.
•
MTU checking and fragmentation is not supported.
•
A total of 255 VPN routing/forwarding instance routes (VRFs) are supported per system.
•
The Enhanced OSMs support a minimum of 511 VRFs with a maximum of 1023 VRFs per chassis for MPLS Layer 3 configurations.
•
MPLS Provider (P) functionality is not supported on Ethernet interfaces that also support Layer 2 switching. The only way to support P functionality on these interfaces is to create a trunk from a Gigabit Ethernet interface on, for example, a WS-6516-GBIC module to an interface on the OSM-4GE-WAN module that is configured to allow P switching. The interface on the WS-6516-GBIC module should be placed in trunking mode, and appropriate subinterfaces should be created on the OSM-4GE-WAN module interface.
MPLS VPN Memory Requirements and Recommendations
When a Cisco 7600 series router or a Catalyst 6500 series switch functions as a PE router in an MPLS VPN environment, the memory requirements that are listed in Table 11-1apply:
Table 11-1 MPLS VPN Memory Requirements and Recommendations
MSFC2 Memory Configuration
|
Maximum Number of Internet Routes, eBGP sessions, and VPNv4 routes
|
MSFC2 with 512 MB
|
100,000 Internet routes, 750 eBGP sessions, and 100,000 VPNv4 routes
|
Supervisor Engine 2 Memory Configuration
|
Maximum Number of Internet Routes, eBGP sessions, and VPNv4 routes
|
Supervisor Engine 2 with 256 MB
|
100,000 Internet routes, 750 eBGP sessions, and 175,000 VPNv4 routes
|
OSM Memory Configuration
|
Maximum Number of Internet Routes, eBGP sessions, and VPNv4 routes
|
OSM with 256 MB
|
100,000 Internet routes, 750 eBGP sessions, and 175,000 VPNv4 routes
|
FlexWAN Memory Configuration
|
Maximum Number of Internet Routes, eBGP sessions, and VPNv4 routes
|
FlexWAN with 2x128 MB
|
100,000 Internet routes, 750 eBGP sessions, and 100, 000 VPNv4 routes
|
If the number of Internet routes, eBGP sessions, and VPNv4 routes exceed those listed in Table 11-1, upgrade to the next memory option. If you have a FlexWAN module installed in the system, the number of Internet routes, eBGP sessions, and VPNv4 routes in the configuration file must not exceed the requirement listed in the table for FlexWAN.
MPLS Per-Label Load Balancing
When the Cisco 7600 series router is configured as a P router, you can ensure traffic is distributed among equal cost paths by using the mpls load-balance per-label command to enable or disable the load balancing for tag-to-tag traffic.
When enabled, MPLS per-label load balancing ensures that traffic is balanced based on the incoming labels (per prefix) among MPLS interfaces. Each MPLS interface supports an equal number of incoming labels.
mpls load-balance per-label
[no] mpls load-balance per-label
The default is disabled.
Use the no form of the command to return to the default setting.
In the following example, MPLS per-label load balancing is enabled on a POS interface:
Router(config)# interface pos 4/1
Router(config-if)# mpls load-balance per-label
You can use the show mpls ttfib command to view the incoming label (indicated by an asterick*) that is included in the load balancer. The following shows the output of the show mpls ttfib command:
Router# show mpls ttfib
Local Outgoing Packets Tag LTL Dest. Destination Outgoing
Tag Tag or VC Switched Index Vlanid Mac Address Interface
4116 21 0 0xE0 1020 0000.0400.0000 PO4/1*
34 0 0x132 1019 00d0.040d.380a GE5/3
45 0 0xE3 4031 0000.0430.0000 PO4/4
4117 16 0 0x132 1019 00d0.040d.380a GE5/3*
17 0 0xE0 1020 0000.0400.0000 PO4/1
18 0 0xE3 4031 0000.0430.0000 PO4/4
4118 21 0 0xE0 1020 0000.0400.0000 PO4/1*
56 0 0xE3 4031 0000.0430.0000 PO4/4
4119 35 0 0xE3 4031 0000.0430.0000 PO4/4*
47 0 0xE0 1020 0000.0400.0000 PO4/1
Configuring MPLS VPN
For information on configuring MPLS VPN, refer to the MPLS Virtual Private Networks feature module at this URL:
http://www.cisco.com/univercd/cc/td/doc/product/software/ios120/120newft/120t/120t7/vpn_en.htm
Configuring MPLS VPN CoS
MPLS VPN supports the same set of QoS features as basic MPLS does. For information on supported QoS features and configuring MPLS VPN QoS, refer to the MPLS Class Of Service Enhancement feature module referenced in the "Configuring MPLS QoS" section.
In addition to these features, MPLS VPN also supports the set ip precedence command on the input WAN interfaces on the OSMs.
The following restrictions apply to the support for MPLS VPN CoS on the OSMs:
•
PFC2 QoS features are not supported with MPLS VPN.
•
MPLS VPN CoS is supported on the VPN interfaces only.
•
Match IP precedence and SET IP precedence and MPLS Experimental values are supported on the input interface only.
Configuration Example
The following example shows how to configure CoS on an MPLS VPN:
Router# configure terminal
Router(config)# class-map match-any vpn-class
Router(config-cmap)# match ip precedence 3
Router(config-cmap)# exit
Router(config)# policy-map VPN-MARKING
Router(config-pmap)# class vpn-class
Router(config-pmap-c)# set ip precedence 5
Router(config-pmap-c)# set mpls exp 5
Router(config-pmap-c)# ^Z
Router# configure terminal
Router(config)# interface ge-WAN 5/4
Router(config-if)# service-policy input VPN-MARKING
Router(config-if)# ^Z
Router# show running-config interface g5/4
Building configuration...
Current configuration :175 bytes
!
interface GE-WAN5/4
ip vrf forwarding TEST
ip address 194.3.1.3 255.255.255.0
negotiation auto
service-policy input VPN-MARKING
mls qos trust dscp
end
Router#
Configuring EoMPLS
EoMPLS allows you to connect two VLAN networks in different locations without using bridges, routers, or switches at the VLAN locations. You can enable the MPLS backbone network to accept Layer 2 VLAN traffic by configuring the label edge routers (LERs) at both ends of the MPLS backbone.
For information about EoMPLS and how to configure it on the 4-port Gigabit Ethernet WAN (GBIC) and POS OSMs, refer to the Ethernet over MPLS Feature Module at this URL:
http://www.cisco.com/univercd/cc/td/doc/product/software/ios121/121newft/121limit/121ex/121ex8a/eompls9.htm