The Modular QoS CLI is a command-line interface (CLI) structure that allows you to create service polices and attach these policies to interfaces, subinterfaces and ATM or Frame Relay virtual circuits (VCs). A traffic policy contains a traffic class and one or more QoS features. A traffic class is used to classify traffic, while the QoS features in the service policy determine how to treat the classified traffic.
This document clarifies where to apply service policies on ATM interfaces. Service policies are part of the IP to ATM Class of Service (CoS) feature set for differentiated service over ATM interfaces. For more information on IP to ATM CoS, see IP to ATM Class of Service Overview and Configuring IP to ATM Class of Service. This document assumes an understanding to IP to ATM CoS and of the commands of the MQC.
There are no specific requirements for this document.
This document is not restricted to specific software and hardware versions.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
For more information on document conventions, refer to the Cisco Technical Tips Conventions.
As of Cisco IOS® Software Release 12.2 and 12.2T, ATM interfaces support service policies at three logical interfaces - main interface, subinterface, and VC. The selection of a particular logical interface depends on the QoS features to be applied in the traffic policy. Use the following table to determine where to apply a service policy:
Service Policy | Main Interface | Subinterface | VC |
---|---|---|---|
Service policy with queueing only | Yes | - | Yes |
Service policy with queueing and shaping | Yes | Yes | Yes |
Cisco IOS Software prints the following log message when you attempt to attach a policy to a subinterface and a PVC, which is not an allowed combination.
Note: To view this message, the logging console command must be configured from global configuration mode.
3640-105(config)#int atm 1/0.1 point 3640-105(config-subif)#service-policy output leslie 3640-105(config-subif)# 2w5d: Attaching service policy to sub-interface and pvc concurrently is not allowed
In general, queueing-related features, applied with commands such as random-detect, bandwidth, priority, and fair-queue, apply only in the context of a hierarchical policy with shaping at the parent policy to create a bandwidth-limited traffic stream with queueing of excess packets. In other words, a queueing mechanism applies to packets that have been restrained in a queue by a shaping mechanism. A service policy that specifies queueing and no shaping cannot be applied directly to subinterfaces of any type since subinterfaces do not support inhererently a state of congestion. Instead, you first need to apply shaping to the subinterface using class-based shaping. Cisco IOS Software prints the following log message when an ATM subinterface is configured with a service policy that applies queueing without shaping.
Note: To view this message, the logging console command must be configured from global configuration mode.
7200-16(config)#int atm 5/0.20 7200-16(config-subif)#pvc 1/20 7200-16(config-if-atm-vc)#exit 7200-16(config-subif)#service-policy output queuenoshape CBWFQ : Not supported on subinterfaces
However, the same policy is accepted on an ATM VC since the VC supports native ATM-layer shaping via the vbr-nrt, vbr-rt, cbr or abr commands.
7200-16(config)#int atm 5/0.20 7200-16(config-subif)#pvc 1/50 7200-16(config-if-atm-vc)#vbr-nrt 100 100 94 7200-16(config-if-atm-vc)#service-policy output queuenoshape 7200-16(config-if-atm-vc)#end 7200-16#show policy-map int atm 5/0.20 ATM5/0.20: VC 1/50 - Service-policy output: queuenoshape Class-map: leslie (match-all) 0 packets, 0 bytes 5 minute offered rate 0 bps, drop rate 0 bps Match: any Queueing Strict Priority Output Queue: Conversation 24 Bandwidth 50 (kbps) Burst 1250 (Bytes) (pkts matched/bytes matched) 0/0 (total drops/bytes drops) 0/0 Class-map: class-default (match-any) 0 packets, 0 bytes 5 minute offered rate 0 bps, drop rate 0 bps Match: any
Please see the section below for restrictions on which router platforms support the shape command.
Newer ATM interface hardware such as the PA-A3 port adapter and the ATM network modules for the 2600 and 3600 Series creates a separate packet queue for each virtual circuit (VC). The purpose of per-VC queues is to ensure that one congested VC does not consume all the memory resources and starve other VCs. Thus, the most logical place to apply a service policy is at the PVC level in VC configuration mode. For further clarification of per-VC queueing, please see Understanding Per-VC Transmit Queuing on the PA-A3 and NM-1A ATM Interfaces.
Alternately, if your service policy applies packet marking with the set command or the traffic policing with the police command, you may choose to apply a policy to the ATM subinterface.
Older ATM hardware does not maintain per-VC queues. For example, the PA-A1 was designed for use in campus LAN Emulation (LANE) environments and maintains only an interface-level queue. Thus, you may choose to treat the PA-A1 main interface as a single "fat pipe" and apply a service policy with queueing features to the main interface. For further clarification, please see Understanding ATM Hardware Support for IP to ATM CoS.
As of Cisco IOS Software Releases 12.2(4)T and 12.2(2), ATM and Frame Relay interfaces support one policy or specific combinations of multiple policies.
ATM interfaces on platforms other than the Cisco 7500 Series support input service polices on one logical interface only. Applying service policies on both the main interface and a subinterface of that main interface is not supported. If you choose to apply a service policy at the PVC level, as is recommended, each PVC can support a unique input service policy.
ATM interfaces on platforms other than the Cisco 7500 Series support output service policies on up to two logical interfaces simultaneously. The following table lists the valid combinations.
Main Interface | Subinterface | PVC |
---|---|---|
Yes | - | Yes |
Yes | Yes | - |
If you apply an output service policy to a VC and then apply a policy to a subinterface, only the first attached policy takes effect.
The Cisco 7500 Series uses a distributed architecture that ensures high packet throughput by moving the packet-forwarding decisions from the Route Switch Processor (RSP) to the VIPs. This architecture also enables the deployment of large-scale enhanced IP services such as QoS by spreading the processing load across the multiple independent processors of the VIPs.
Depending on the interface hardware, the Cisco 7500 Series supports two forms of QoS:
How Enabled | Where Supported | Where Processed | |
---|---|---|---|
RSP-Based | Automatically on legacy Interface Processors. | Legacy Interface Processors. Can no longer be enabled on VIPs. | RSP CPU |
VIP-Based (Distributed) | Automatically when the following two commands are configured:
|
VIPs | VIP CPU |
In general, VIP-based QoS mechanisms applied via the modular QoS CLI (MQC), including commands such as bandwidth, priority, shape, and police, are introduced in three Cisco IOS Software release trains:
Cisco IOS Software Release 12.0(XE), which became 12.1(E).
Cisco IOS Software Release 12.0(9)S.
Cisco IOS Software Release 12.1(5)T, which became 12.2 mainline and 12.2T.
In these releases, you attach a service policy directly to an ATM PVC and achieve per-VC feature functionality. All the MQC commands - including police, set, bandwidth, priority, and shape - are supported. Alternately, if you choose to attach a policy to an ATM subinterface and the subinterface has a single ATM PVC, the resulting behavior is the same as if the policy were attached to the PVC. Since policies can be attached directly to a PVC, there is generally no reason to attach a policy to a subinterface. Cisco retained subinterface service policies on the PA-A3 for backward compatibility.
The following table lists the progression of support for service policies on logical interfaces on the PA-A3 in the Cisco 7500 Series.
Release | Feature Enhancement |
---|---|
12.0(5)T | Introduces class-based weighted fair queueing (CBWFQ) in Cisco IOS Software on various interface types. |
12.0(5)XE1 | Introduces CBWFQ on subinterfaces on the PA-A3. |
12.0(5)XE2 | Replaces the the show interface fair-queue command with the show policy-map command for displaying service policy statistics on the PA-A3. |
12.0(7)XE | Introduces CBWFQ and low latency queueing (LLQ) on the PA-A3 on individual VCs. Cisco IOS Software Release 12.0(7)XE is an "X" or short-lived release. All X releases merge back into a subsequent T release. Cisco IOS Software Release 12.0(7)XE merged back into the T train with 12.1(5)T. Thus, on the Cisco 7500 Series, MQC-based per-VC queueing features are not available in 12.1 mainline and any 12.1T release prior to 12.1(5)T. |
The show interface atm command will display "Queuing strategy: fifo" even after you apply a queueing-based service policy. The queueing strategy reflects the view of the Cisco 7500 Series RSP and not the status of the distributed services. Use the show policy interface command to verify the expected functionality.
7500#show interface atm 3/0 ATM3/0 is up, line protocol is up (looped) Hardware is ENHANCED ATM PA Internet address is 10.10.1.2/24 MTU 4470 bytes, sub MTU 4470, BW 44209 Kbit, DLY 190 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation ATM, loopback set Keepalive not supported Encapsulation(s): AAL5 4096 maximum active VCs, 5 current VCCs VC idle disconnect time: 300 seconds Signalling vc = 1, vpi = 0, vci = 5 UNI Version = 4.0, Link Side = user 0 carrier transitions Last input 00:00:17, output 00:00:17, output hang never Last clearing of "show interface" counters 2d12h Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: fifo 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec [output omitted]
ATM interfaces support native ATM-layer shaping using a command such as vbr-nrt and abr. Additionally, you may choose to shape particular IP-layer flows or subnets forwarded through an ATM interface. As of Cisco IOS Software Release 12.2(8)T, only the Cisco 7500 Series running distributed QoS services supports such a configuration with Cisco IOS 12.2 mainline, 12.1E and 12.0S release trains.
This configuration typically would use a hierarchial policy with shaping at the parent layer and queueing at the child layer. A sample configuration is provided below.
Sample Configuration for Hierarchical Policy with shape Command |
---|
policy-map child class prec2 bandwidth percent 60 class prec4 bandwidth percent 20 class class-default fair-queue ! policy-map parent class prec24 shape average 10240000 40960 40960 service-policy child ! interface ATM5/0/0.1 point-to-point pvc 1/101 vbr-nrt 50000 50000 94 service-policy output parent |
The Cisco 3600, and 2600 series and other non-distributed platforms do not support class-based shaping with the shape command on ATM router interfaces; a feature request has been filed. As a workaround, configure per-VC class-based policing using a service policy that applies the police command. In this configuration, you do not create a child queueing policy since a policer simply drops or forwards a packet and does not queue any excess above the burst parameters. The Cisco 7200 and 7500 support class-based shaping for ATM VCs only in 12.0(26)S and later S train.
Cisco IOS Software Release 12.2(2)T introduces a new form of back-pressure on the PA-A3 to support queueing on a tag-switching interface over a set of unspecified bit rate (UBR)-like Tag VCs (TVCs). The only congestion feedback mechanism in this configuration is for the entire set of TVCs, not per-VC.
Cisco offers two graphical user interface tools for configuring and monitoring advanced IP-based QoS functionality within Cisco routers, and is used to ease QoS configuring and monitoring.
QoS Device Manager 2.1 can apply service policies to subinterfaces and main interfaces only; it cannot apply a service policy at the VC level. For reference, please see the Release Notes. As of August 2002, VC-layer service policies configured from within QDM are not planned.
QoS Policy Manager 2.1 introduces support for configuring service policies on ATM point-to-point subinterfaces with a single VC. For reference, please see Release Notes and Installation Guide for CiscoWorks2000 QoS Policy Manager 2.1. QPM 3.0 will support configuring VC-layer service policies.
Revision | Publish Date | Comments |
---|---|---|
1.0 |
05-Jun-2005 |
Initial Release |