- Finding Feature Information
- Prerequisites for Configuring Class-Based Traffic Shaping
- Restrictions for Configuring Class-Based Traffic Shaping
- Information About Class-Based Traffic Shaping
- How to Configure Class-Based Traffic Shaping
- Configuration Examples for Class-Based Traffic Shaping
- Additional References
- Feature Information for Class-Based Traffic Shaping
Regulating Packet Flow Using Class-Based Traffic Shaping
Packet flow on a network can be regulated using a traffic-shaping mechanism. One such traffic-shaping mechanism is a Cisco feature called class-based traffic shaping. Class-based traffic shaping allows you to regulate the flow of packets (on a per-traffic-class basis) going out an interface, matching the packet flow to the speed of the interface. This module describes the concepts and tasks related to configuring class-based traffic shaping.
- Finding Feature Information
- Prerequisites for Configuring Class-Based Traffic Shaping
- Restrictions for Configuring Class-Based Traffic Shaping
- Information About Class-Based Traffic Shaping
- How to Configure Class-Based Traffic Shaping
- Configuration Examples for Class-Based Traffic Shaping
- Additional References
- Feature Information for Class-Based Traffic Shaping
Finding Feature Information
Your software release may not support all the features documented in this module. For the latest feature information and caveats, see the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the Feature Information Table at the end of this document.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Prerequisites for Configuring Class-Based Traffic Shaping
A policy map and a class map must be created first using the Modular Quality of Service (QoS) Command-Line Interface (MQC).
Restrictions for Configuring Class-Based Traffic Shaping
Class-based traffic shaping applies to outbound traffic only.
Class-based traffic shaping does not support the following commands:
- traffic-shape adaptive
- traffic shape fecn-adaptive
- traffic-shape group
- traffic-shape rate
Information About Class-Based Traffic Shaping
- Class-Based Traffic-Shaping Functionality
- Benefits of Class-Based Traffic Shaping
- Hierarchical Policy Map Structure of Class-Based Traffic Shaping
Class-Based Traffic-Shaping Functionality
Class-based traffic shaping is a traffic-shaping mechanism (also known as a "traffic shaper"). A traffic shaper typically delays excess traffic using a buffer, or queueing mechanism, to hold packets and shape the flow when the data rate of the source is higher than expected. It holds and shapes traffic to a particular bit rate by using the token bucket mechanism.
Class-based traffic shaping is the Cisco-recommended traffic-shaping mechanism.
Using class-based traffic shaping, you can perform the following tasks:
- Configure traffic shaping on a per-traffic-class basis. It allows you to fine-tune traffic shaping for one or more classes, and it allows you to configure traffic shaping on a more granular level.
- Specify average rate or peak rate traffic shaping. Specifying peak rate shaping allows you to make better use of available bandwidth by allowing more data than the configured traffic shaping rate to be sent if the bandwidth is available.
- Configure traffic shaping in a hierarchical policy map structure. That is, traffic shaping is configured in a primary-level (parent) policy map, and other QoS features (for instance, CBWFQ and traffic policing) can be configured in the secondary-level (child) policy maps.
Benefits of Class-Based Traffic Shaping
All of the benefits associated with traffic shaping also apply to class-based traffic shaping, but on a more granular level.
Hierarchical Policy Map Structure of Class-Based Traffic Shaping
With the class-based traffic shaping mechanism, traffic shaping can be configured in a hierarchical policy map structure; that is, traffic shaping is enabled in a primary-level (parent) policy map and other QoS features used with traffic shaping, such as class-based WFQ (CBWFQ) and traffic policing, can be enabled in a secondary-level (child) policy map. Traffic shaping is enabled by using the shape command (and specifying a rate) in a policy map.
CBWFQ allows you to fine-tune the way traffic is placed in a queue. For instance, you can specify that all voice traffic be placed in a high-priority queue and all traffic from a specific class be placed in a lower-priority queue.
If you want to use CBWFQ with the class-based traffic shaping mechanism a secondary-level (child) policy map must be created. This secondary-level (child) policy map is then used to configure CBWFQ by enabling the bandwidth command.
The following sample configuration illustrates how the class-based traffic shaping mechanism is configured in a hierarchical policy map structure:
enable configure terminal policy-map policy_parent ! This is the primary-level policy map. class class-default shape average 1000000 ! This enables traffic shaping. service-policy policy_child ! This associates the policy maps.
With this configuration, WFQ is used as the default queueing mechanism for placing all the traffic in a queue.
In the following secondary-level (child) policy map, the alternative queueing mechanism CBWFQ is configured:
enable configure terminal policy-map policy_child ! This is the secondary-level policy map. class class-default bandwidth percent 50 ! This enables CBWFQ.
How to Configure Class-Based Traffic Shaping
Traffic shaping is configured in a policy map. Policy maps determine the specific quality of service (QoS) feature that will be applied to traffic on a network. In this module, the QoS feature being applied is traffic shaping.Traffic shaping is configured in the primary-level (parent) policy map in the hierarchy.
In the secondary-level (child) policy map, additional QoS features used with traffic shaping (for example, CBWFQ and traffic policing) are typically configured.
- Configuring Class-Based Traffic Shaping in a Primary-Level Policy Map
- Configuring the Secondary-Level Policy Map
Configuring Class-Based Traffic Shaping in a Primary-Level Policy Map
Before configuring traffic shaping, you must use the MQC to create a policy map and a class map.
DETAILED STEPS
Command or Action | Purpose | |
---|---|---|
|
Example: Router> enable |
Enables privileged EXEC mode.
|
|
Example: Router# configure terminal |
Enters global configuration mode. |
|
Example: Router(config)# policy-map policy_parent |
Specifies the name of the policy map created earlier and enters policy-map configuration mode. See the "Prerequisites" section on page 3 for more information.
|
|
Example: Router(config-pmap)# class class-default |
Specifies the name of the class whose policy you want to create and enters policy-map class configuration mode.
|
|
Example: Router(config-pmap-c)# shape average 1000000 |
Shapes traffic according to the keyword and rate specified.
|
|
Example: Router(config-pmap-c)# service-policy policy_child |
Uses a service policy as a QoS policy within a policy map (called a hierarchical service policy).
|
|
Example: Router(config-pmap-c)# end |
Returns to privileged EXEC mode. |
|
Example: Router# show policy-map |
(Optional) Displays all configured policy maps.
|
|
Example: Router# show policy-map interface serial4/0/0 |
(Optional) Displays the packet statistics of all classes that are configured for all service policies either on the specified interface or subinterface or on a specific PVC on the interface.
|
|
Example: Router# exit |
(Optional) Exits privileged EXEC mode. |
What to Do Next
So far, you have configured class-based Traffic Shaping in a primary-level (parent) policy map. To configure a secondary-level (child) policy map in the hierarchical policy map structure (an optional task), proceed with the instructions in Configuring the Secondary-Level Policy Map.
Configuring the Secondary-Level Policy Map
DETAILED STEPS
Command or Action | Purpose | |||
---|---|---|---|---|
|
Example: Router> enable |
Enables privileged EXEC mode.
|
||
|
Example: Router# configure terminal |
Enters global configuration mode. |
||
|
Example: Router(config)# policy-map policy1 |
Specifies the name of the policy map created earlier and enters policy-map configuration mode. See the "Prerequisites" section on page 3 for more information.
|
||
|
Example: Router(config-pmap)# class class-default |
Specifies the name of the class whose policy you want to create and enters policy-map class configuration mode.
|
||
|
Example: Router(config-pmap-c)# bandwidth percent 50 Example:
|
Specifies or modifies the bandwidth allocated for a class belonging to a policy map.
|
||
|
Example: Router(config-pmap-c)# end |
Returns to privileged EXEC mode. |
||
|
Example: Router# show policy-map |
(Optional) Displays all configured policy maps.
|
||
|
Example: Router# show policy-map interface serial4/0/0 |
(Optional) Displays the packet statistics of all classes that are configured for all service policies either on the specified interface or subinterface or on a specific PVC on the interface.
|
||
|
Example: Router# exit |
(Optional) Exits privileged EXEC mode. |
Configuration Examples for Class-Based Traffic Shaping
Example Class-Based Traffic Shaping Configuration
The following is an example of Class-Based Traffic Shaping configured in a hierarchical policy map structure. In this example, two policy maps have been created; the primary-level (parent) policy map called "policy_parent," and a secondary-level (child) policy map called "policy_child." Traffic shaping is configured in the policy_parent policy map, and CBWFQ has been configured in the policy_child policy map.
The service-policy command associates the two policy maps in the hierarchical policy map structure.
enable configure terminal policy-map policy_parent class class-default shape average 1000000 ! This enables traffic shaping. service-policy policy_child ! This associates the policy maps. exit exit policy-map policy_child class class-default bandwidth percent 50 ! This enables CBWFQ. end
Additional References
Related Documents
Related Topic |
Document Title |
---|---|
Cisco IOS commands |
|
QoS commands: complete command syntax, command modes, command history, defaults, usage guidelines, and examples |
Cisco IOS Quality of Service Solutions Command Reference |
Packet classification |
"Classifying Network Traffic" module |
MQC, policy maps, class maps, and hierarchical policy maps |
"Applying QoS Features Using the MQC" module |
Overview of using traffic shaping to regulate packet flow on a network |
"Regulating Packet Flow Using Traffic Shaping" module |
Standards
Standard |
Title |
---|---|
No new or modified standards are supported, and support for existing standards has not been modified. |
-- |
MIBs
MIB |
MIBs Link |
---|---|
No new or modified MIBs are supported, and support for existing MIBs has not been modified. |
To locate and download MIBs for selected platforms, Cisco IOS XE Software releases, and feature sets, use Cisco MIB Locator found at the following URL: |
RFCs
RFC |
Title |
---|---|
No new or modified RFCs are supported, and support for existing RFCs has not been modified. |
-- |
Technical Assistance
Description |
Link |
---|---|
The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password. |
Feature Information for Class-Based Traffic Shaping
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Table 1 | Feature Information for Class-Based Traffic Shaping |
Feature Name |
Software Releases |
Feature Configuration Information |
---|---|---|
Class-Based Shaping |
Cisco IOS XE Release 2.1 |
This feature was introduced on Cisco ASR 1000 Series Aggregation Services Routers. |
Hierarchical Traffic Shaping |
Cisco IOS XE Release 2.1 |
This feature was introduced on Cisco ASR 1000 Series Aggregation Services Routers. |
Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL: www.cisco.com/go/trademarks. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1110R)
Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.