Configuring Multiprotocol Label Switching

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.

1 You can also configure additional supported features, such as shaping.

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

1 MPLS/VPN is supported in POS mode only on the 2-port OC48/1DPT OSMs.