Table Of Contents
Tag Switching/MPLS Terminology
Related Features and Technologies
Supported Standards, MIBs and RFCs
Configuring PVC Mode in a Non-MPLS-Enabled Core
Configuring Multi-VC Mode in a MPLS-Enabled Core
Configuring Multi-VCs Using the Cos-Map Function
Configuring DWFQ and Changing Queue Weights on an Outgoing Interface
Configuring Cisco Express Forwarding (CEF)
MPLS Class of Service
Feature Overview
The Class of Service (CoS) feature for Multiprotocol Label Switching (MPLS) enables network administrators to provide differentiated types of service across an MPLS network. Differentiated service satisfies a range of requirements by supplying for each packet transmitted the particular kind of service specified for that packet by its CoS. Service can be specified in different ways, for example, using the IP precedence bit settings in IP packets.
In supplying differentiated service, MPLS CoS offers packet classification, congestion avoidance, and congestion management. lists these functions and their descriptions.
Table 1
CoS Services and Features
For more information on configuration of the CoS functions (CAR, WRED, and WFQ), see the Cisco IOS Quality of Service Solutions Configuration Guide.
For complete command syntax information for CAR, WRED, and WFQ, see the Cisco IOS Quality of Service Solutions Command Reference.
MPLS CoS lets you duplicate Cisco IOS IP CoS (Layer 3) features as closely as possible in MPLS devices, including label edge routers (LERs), label switch routers (LSRs), and asynchronous transfer mode LSRs (ATM LSRs). MPLS CoS functions map nearly one-for-one to IP CoS functions on all interface types.
Tag Switching/MPLS Terminology
The following table lists the old Tag Switching terms and the new MPLS terms found in this document.
MPLS CoS
Several different methods exist for supporting CoS across an MPLS backbone, the choice depending on whether the core has label switch routers (LSRs) or ATM LSRs. In each case, however, the CoS building blocks are the same: CAR, WRED, and WFQ.
Three configurations are described below:
•
LSRs used at the core of the network backbone
•
ATM LSRs used at the core of the network backbone
•
ATM switches without the MPLS feature enabled
LSRs
LSRs at the core of the MPLS backbone are usually either Cisco 7200 and Cisco 7500 series routers running MPLS software. Packets are processed as follows:
1
IP packets enter into the edge of the MPLS network.
2
The edge LSRs invoke CAR to classify the IP packets and possibly set IP precedence. Alternatively, IP packets can be received with their IP precedence already set.
3
For each packet, the router performs a lookup on the IP address to determine the next-hop LSR.
4
The appropriate label is placed on the packet with the IP precedence bits copied into every label entry in the MPLS header.
5
The labeled packet is then forwarded to the appropriate output interface for processing.
6
The packets are differentiated by class. This is done according to drop probability (WRED) or according to bandwidth and delay (WFQ). In either case, LSRs enforce the defined differentiation by continuing to employ WRED or WFQ on each hop.
ATM LSRs
ATM LSRs at the core implement the multiple label virtual circuit model (LVC). In the multiple LVC model, one label is assigned for each service class for each destination. The operation of the edge LSR is the same as that described previously for the LSR case, except that the output is an ATM interface. WRED is used to define service classes and determine discard policy during congestion.
In the multiple LVC model, however, class-based WFQ is used to define the amount of bandwidth available to each service class. Packets are scheduled by class during congestion. The ATM LSRs participate in the differentiation of classes with WFQ and intelligently drop packets when congestion occurs. The mechanism for this discard activity is weighted early packet discard (WEPD).
ATM Switches
When the core network uses ATM switches and the edge of the network uses MPLS-enabled edge LSRs, the edge LSRs are interconnected through a mesh of ATM Forum PVCs (CBR, VBR, or UBR) over the ATM core switches. The edge LSRs invoke WFQ on a per-VC basis to provide differentiation based on the delay of each MPLS CoS multiplexed onto the ATM Forum PVC. Optionally, WRED can also be used on a per-VC basis to manage drop priority between classes when congestion occurs on the edge LSR.
lists the MPLS CoS features supported on packet interfaces in this release.
Table 2 MPLS CoS Features Supported on Packet Interfaces
lists the MPLS CoS features supported on ATM interfaces in this release.
Table 3 MPLS CoS Features Supported on ATM Interfaces
Cisco 7500 Series Cisco 7200 Series Cisco4x00Series Cisco36x0 Series Cisco2600 Series MPLS CoS ATM Forum PVCs FeaturePer-VC WRED
X1
X1
N/A
N/A
N/A
Per-VC WRED and
per VC, per-class WFQN/A
X1
N/A
N/A
N/A
MPLS CoS Multi-VC or LBR FeaturePer-interface WRED
X2
X2
N/A
N/A
N/A
Per-interface, per-class WFQ
X2
X2
N/A
N/A
N/A
1 This feature is only available on the ATM Deluxe (PA-A3).
2 This feature is only available on the ATM Lite (PA-A1).
lists the MPLS CoS features supported on ATM switches.
Table 4 MPLS CoS Features Supported on ATM Switches and Interfaces
BPX 8650 Series MGX 8800 Series LightStream 1010 ATM Switch1 Catalyst 8540 MSR1MPLS CoS ATM Forum PVCs
X
X
X
X
MPLS CoS Multi-VC or LBR—per-class WFQ
X
N/A
N/A
N/A
1 This can be used for the core only.
Benefits
MPLS CoS provides the same benefits as IP CoS when implemented on a backbone built purely of routers. The following benefits are realized when implementing IP CoS on a backbone of ATM switches using MPLS:
Efficient resource allocation—WFQ is used to allocate bandwidth on a per-class and per-link basis. Classes of traffic are guaranteed a percentage of link bandwidth, thereby maximizing the transport of paid traffic.
No connections to configure—Implementing IP CoS with MPLS requires no configuration of end-to-end VCs for each class of service. This advantage is especially beneficial when integrating MPLS CoS support in conjunction with an MPLS VPN service. Traditional methods of configuring IP CoS with ATM would require configuring and provisioning a separate end-to-end VC for each class of service for each VPN.
Flexibility without added overhead—MPLS CoS promotes the efficient use of bandwidth, because unused bandwidth allocated to a class is available to all other classes if needed. Furthermore, MPLS CoS requires no call setup procedure, because reachability and resource allocation are established before the initiation of service.
Related Features and Technologies
You can use MPLS CoS with:
•
The MPLS Virtual Private Networks (VPNs) feature
•
Any MPLS network
Related Documents
•
MPLS Virtual Private Networks Feature Guide
Supported Platforms
The following is a list of router platforms supported at the provider core.
•
Cisco 8800 series (MGX) (ATM Forum PVCs and multi VC or LBR - per class WFQ)
•
Cisco BPX 8650 IP+ATM switch (ATM Forum PVCs only)
•
Cisco 7500 series (ATM Forum PVCs and multi VC or LBR - per class WFQ)
•
Cisco 7200 series (ATM Forum PVCs multi VC or LBR - per class WFQ)
The following is a list of router platforms supported at the provider edge.
•
Cisco 7500 series routers (Edge LSR or LSR)
•
Cisco 7200 series routers (Edge LSR or LSR)
•
Cisco 45x0 series routers (POS interfaces only—Edge LSR or LSR)
•
Cisco 36x0 series routers (POS interfaces only—Edge LSR or LSR)
Supported Standards, MIBs and RFCs
MIBs
•
CISCO-WRED-MIB
•
CISCO-CAR-MIB
•
CISCO-WRED-MIB
For descriptions of supported MIBs and how to use MIBs, see the Cisco MIB website on CCO at http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml.
RFCs
No new or modified RFCs are supported by this feature.
Standards
No new or modified standards are supported by this feature.
Prerequisites
To use the MPLS CoS feature, your network must be running the following Cisco IOS features:
•
CEF switching in every MPLS-enabled router
•
MPLS
•
ATM functionality (If you are using packet interfaces only, you do not need ATM functionality)
Configuration Tasks
Perform the tasks in the following sections to configure the MPLS CoS feature.
•
Configuring PVC Mode in a Non-MPLS-Enabled Core
•
Configuring Multi-VC Mode in a MPLS-Enabled Core
•
Configuring Multi-VCs Using the Cos-Map Function
•
Configuring DWFQ and Changing Queue Weights on an Outgoing Interface
Configuring PVC Mode in a Non-MPLS-Enabled Core
To configure a PVC in a non-MPLS-enabled core, use the following commands in the order specified in configuration mode:
Configuring Multi-VC Mode in a MPLS-Enabled Core
To configure multi-VC mode in an MPLS-enabled core, use the following commands in the order specified in configuration mode:
Note
The default for the multi-VC mode creates four VCs for each MPLS destination.
Configuring Multi-VCs Using the Cos-Map Function
If you do not choose to use the default for configuring label VCs, you can configure fewer label VCs by using the CoS map function. To use the CoS map function, perform the following steps:
Configuring DWFQ and Changing Queue Weights on an Outgoing Interface
To configure distributed fair queueing and change queue weights on an interface, use the following commands in interface configuration mode after specifying the interface:
Verifying CoS Operation
To verify the operation of MPLS CoS, perform the following steps:
Configuration Examples
illustrates a sample MPLS topology that implements the MPLS CoS feature. The following sections contain the configuration commands entered on Routers1 to 6 and on Switches 1 and 2 included in this figure.
Figure 1 Sample MPLS Topology Implementing CoS
Configuring Cisco Express Forwarding (CEF)
These configuration commands enable Cisco express forwarding (CEF). CEF switching is a prerequisite for the MPLS feature and must be running on all routers in the network.
ip cef distributedtag-switching ip!Running IP on Router 2
The following commands enable IP routing on Router 2. All routers must have IP enabled.
Note
Router 2 is not part of the MPLS network.
!ip routing!hostname R2!interface Loopback0ip address 10.10.10.10 255.255.255.255!interface POS0/3ip unnumbered Loopback0crc 16clock source internal!router ospf 100network 10.0.0.0 0.255.255.255 area 100!Running IP on Router 1
The following commands enable IP routing on Router 1.
Note
Router 1 is not part of the MPLS network.
ip routing!hostname R1!interface Loopback0ip address 15.15.15.15 255.255.255.255!interface POS0/3ip unnumbered Loopback0crc 16clock source internal!router ospf 100network 15.0.0.0 0.255.255.255 area 100Running MPLS on Router 4
Router 4 is a label edge router. CEF and the MPLS feature must be enabled on this router. Committed Access Rate (CAR) is also configured on Router 4 on interface POS3/0/0 (see the section on Configuring CAR).
!hostname R4!ip routingtag-switching iptag-switching advertise-tags!ip cef distributed!interface Loopback0ip address 11.11.11.11 255.255.255.255!interface Ethernet0/1ip address 90.0.0.1 255.0.0.0tag-switching ip!Configuring CAR
Lines 3 and 4 contain the CAR rate policies. It sets the committed information rate (CIR) at 155,000,000 bits and the normal burst/maximum burst size at 200,000/800,000 bytes. The conform action (action to take on packets) sets the IP precedence and transmits the packets that conform to the rate limit. The exceed action sets the IP precedence and transmits the packets when the packets exceed the rate limit.
!interface POS3/0/0ip unnumbered Loopback0rate-limit input 155000000 2000000 8000000 conform-action set-prec-transmit 5exceed-action set-prec-transmit 1ip route-cache distributed!router ospf 100network 11.0.0.0 0.255.255.255 area 100network 90.0.0.0 0.255.255.255 area 100Running MPLS on Router 3
Router 3 is running MPLS. CEF and the MPLS feature must be enabled on this router. Router 3 contains interfaces that are configured for WRED, multi-VC, per VC WRED, WFQ, and CAR. The following sections contain these sample configurations.
!hostname R3!ip cef distributed!interface Loopback0ip address 12.12.12.12 255.255.255.255!interface Ethernet0/1ip address 90.0.0.2 255.0.0.0tag-switching ipConfiguring Point-to-Point WRED
The following commands configure WRED on an ATM interface. In this example, the commands refer to a PA-A1 (ATM Lite).
!interface ATM1/1/0ip route-cache distributedatm clock INTERNALrandom-detect!Configuring an Interface for Multi-VC Mode
The following commands configure interface ATM1/1/0 for multi-VC mode. In this example, the commands refer to a PA-A1 (ATM Lite).
!interface ATM1/1/0.1 tag-switchingip unnumbered Loopback0tag-switching atm multi-vctag-switching ip!Configuring Per VC WRED
The following commands configure per VC WRED on a PA-A3 (ATM Deluxe) only.
Note
The PA-A1 (ATM Lite) does not support the per-VC WRED drop mechanism.
!interface ATM2/0/0no ip addressip route-cache distributedinterface ATM2/0/0.1 point-to-pointip unnumbered Loopback0no ip directed-broadcastpvc 10/100random-detectencapsulation aal5snapexit!tag-switching ipConfiguring WRED and WFQ
Lines 5 and 6 contain the commands for configuring WRED and WFQ on interface Hssi2/1/0.
!interface Hssi2/1/0ip address 91.0.0.1 255.0.0.0ip route-cache distributedtag-switching iprandom-detectfair queue toshssi internal-clock!Configuring CAR
Lines 3 and 4 contain the CAR rate policies. It sets the committed information rate (CIR) at 155,000,000 bits and the normal burst/maximum burst size at 200,000/800,000 bytes. The conform action (action to take on packets) sets the IP precedence and transmits the packets that conform to the rate limit. The exceed action sets the IP precedence and transmits the packets when the packets exceed the rate limit.
!interface POS3/0/0ip unnumbered Loopback0rate-limit input 155000000 2000000 8000000 conform-action set-prec-transmit 2exceed-action set-prec-transmit 2ip route-cache distributed!router ospf 100network 12.0.0.0 0.255.255.255 area 100network 90.0.0.0 0.255.255.255 area 100network 91.0.0.0 0.255.255.255 area 100!ip route 93.0.0.0 255.0.0.0 Hssi2/1/0 91.0.0.2!Running MPLS on Router 5
Router 5 is running the MPLS feature. CEF and the MPLS feature must be enabled on this router. Router 5 has also been configured to create an ATM subinterface in Multi-VC mode and to create a PVC on a Point-to-Point subinterface. The sections that follow contain these sample configurations.
!hostname R5!ip cef distributed!interface Loopback0ip address 13.13.13.13 255.255.255.255!interface Ethernet0/2ip address 92.0.0.1 255.0.0.0tag-switching ipConfiguring an ATM Interface
The following commands create an ATM interface.
!interface ATM1/0/0no ip addressip route-cache distributedatm clock INTERNAL!Configuring an ATM MPLS Subinterface in Multi-VC Mode
The following commands create an MPLS subinterface in multi-VC mode.
!interface ATM1/0/0.1 tag-switchingip unnumbered Loopback0tag-switching atm multi-vctag-switching ip!Configuring a PVC on Point-to-Point Subinterface
The following commands create a PVC on a point-to-point subinterface (interface ATM1/0/0.2).
!interface ATM1/0/0.2 point-to-pointip unnumbered Loopback0pvc 10/100random-detectencapsulation aal5snapexit!tag-switching ip!interface Hssi3/0ip address 91.0.0.2 255.0.0.0tag-switching iphssi internal-clock!router ospf 100network 13.0.0.0 0.255.255.255 area 100network 91.0.0.0 0.255.255.255 area 100network 92.0.0.0 0.255.255.255 area 100!Running MPLS on Router 6
Router 6 is running the MPLS feature. CEF and the MPLS feature must be enabled on this router.
!hostname R6!ip cef distributed!interface Loopback0ip address 14.14.14.14 255.255.255.255!interface Ethernet0/1ip address 93.0.0.1 255.0.0.0tag-switching ip!interface Ethernet0/2ip address 92.0.0.2 255.0.0.0tag-switching ip!interface Ethernet0/3ip address 94.0.0.1 255.0.0.0tag-switching ip!router ospf 100network 14.0.0.0 0.255.255.255 area 100network 92.0.0.0 0.255.255.255 area 100network 93.0.0.0 0.255.255.255 area 100network 94.0.0.0 0.255.255.255 area 100!Configuring ATM Switch 2
Switch 2 is configured for MPLS and creates an ATM Forum PVC.!hostname S2!interface Loopback0ip address 16.16.16.16 255.255.255.255!interface ATM0/0/0ip unnumbered Loopback0tag-switching ip!interface ATM0/0/1ip unnumbered Loopback0tag-switching ipatm pvc 10 100 interface ATM0/0/0 10 100interface ATM0/0/2no ip addressno ip directed-broadcast!interface ATM0/0/3ip unnumbered Loopback0tag-switching ip!interface ATM1/1/0ip unnumbered Loopback0tag-switching ip!router ospf 100network 16.0.0.0 0.255.255.255 area 100!Configuring ATM Switch 1
Switch 1 is configured to create an ATM Forum PVC.
!hostname S1!interface Loopback0ip address 17.17.17.17 255.255.255.255!interface ATM0/0/0ip unnumbered Loopback0tag-switching ip!Configuring Label VCs and an ATM Forum PVC
Line 3 contains the configuration command for an ATM Forum PVC.
!interface ATM0/1/1ip unnumbered Loopback0atm pvc 10 100 interface ATM0/0/0 10 100tag-switching ip!interface ATM1/1/0ip unnumbered Loopback0tag-switching ip!router ospf 100network 17.0.0.0 0.255.255.255 area 100!Command Reference
This section documents new or modified commands supported for the CoS feature. All other commands used with this feature are documented in the Cisco IOS Release 12.0 command references. There are no examples of command output for the configuration commands, because they typically do not generate output. The following commands are described here:
•
show tag-switching interfaces
•
show tag-switching prefix-map
In Cisco IOS Release 12.0(1)T or later, you can search and filter the output for show and more commands. This functionality is useful if you must sort through large amounts of output, or if you want to exclude output that you do not need to see.
To use this functionality, enter a show or more command followed by the "pipe" character (|), one of the keywords begin, include, or exclude, and an expression that you want to search or filter on:
command | {begin | include | exclude} regular-expression
Following is an example of the show atm vc command in which you want the command output to begin with the first line where the expression "PeakRate" appears:
show atm vc | begin PeakRate
For more information on the search and filter functionality, refer to the Cisco IOS Release 12.0(1)T feature module titled CLI String Search.
Command Conventions
class
To configure an MPLS CoS map which specifies how classes map to label VCs (LVCs) when combined with a prefix map, use the class cos-map submode command. To disable this option, use the no form of this command.
class class [available standard premium control]
no class class [available standard premium control]
Syntax Description
Default
No default behavior or values.
Command Mode
CoS map submode
Command History
Example
The following commands configure a CoS map:
Router(config)# tag-switching cos-map 55Router(config-tag-cos-map)# class 1 premiumRouter(config-tag-cos-map)# exitRelated Commands
show tag-switching cos-map
To display the CoS map used to assign quantity of label VCs and associated class of service of those LVCs, use the show tag-switching cos-map EXEC command.
show tag-switching cos-map
Syntax Description
This command has no arguments or keywords.
Default
No default behavior or values.
Command Mode
EXEC
Command History
Example
The following example shows output from this command:
Router# show tag-switching cos-mapcos-map 2 class tag-VC3 control2 control1 available0 availableTable 5 Show Tag-Switching Cos-Map Field Descriptions
Related Commands
show tag-switching interfaces
To display information about one or more interfaces with the MPLS feature enabled, use the
show tag-switching interfaces EXEC command.show tag-switching interfaces [interface] [detail]
Syntax Description
interface
Optional. The interface about which to display MPLS information.
detail
Optional. Displays information in long form.
Default
No default behavior or values.
Command Modes
EXEC
Command History
Usage Guidelines
You can show information about the requested interface or about all interfaces on which the MPLS feature is enabled.
Example
The following example shows the interface in multi-VC LVC mode
Router# show tag-switching interfaces detailInterface ATM3/0/0.1:IP tagging enabledTSP Tunnel tagging not enabledTagging operationalTagswitching feature vectorMTU = 4470ATM tagging: Tag VPI = 1, Control VC = 0/32, multi-vc tag-vc modelists the fields displayed in this example.
Table 6 Show Tag-Switching Interfaces Field Descriptions
Related Command
show tag-switching prefix-map
To show the prefix map used to assign a CoS map to network prefixes matching a standard IP access list, use the show tag-switching prefix-map EXEC command.
show tag-switching prefix-map [prefix-map]
Syntax Description
Default
No default behavior or values.
Command Mode
EXEC
Command History
Example
The following is sample output from the show tag-switching prefix-map command:
Router# show tag-switching prefix-mapprefix-map 2 access-list 2 cos-map 2Table 7 show tag-switching prefix-map Field Description


