Contents
Quality of Service Commands on the Cisco IOS XR Software
- bandwidth (QoS)
- bandwidth remaining
- class (policy-map)
- class-map
- clear qos counters interface
- conform-action
- end-class-map
- end-policy-map
- exceed-action
- hw-module qos input police granularity location
- hw-module qos output police granularity location
- hw-module qos output shape granularity location
- match access-group
- match atm
- match cos
- match destination-address
- match discard-class
- match dscp
- match mpls experimental topmost
- match precedence
- match protocol
- match qos-group
- match source-address
- match vlan
- police rate
- policy-map
- priority (QoS)
- queue-limit
- random-detect
- random-detect cos
- random-detect discard-class
- random-detect dscp
- random-detect exp
- random-detect precedence
- service-policy (interface)
- service-policy (policy map class)
- set cos
- set discard-class
- set dscp
- set mpls experimental
- set precedence
- set qos-group
- set srp-priority
- shape average
- show fmgr fabqos
- show fmgr interface
- show hw-module qos input police granularity location
- show hw-module qos output police granularity location
- show hw-module qos output shape granularity location
- show policy-map interface
- show policy-map targets
- show qos ea trace
- show qos interface
- show qos redq
- show qos wred-curve
- switch-fabric service-policy
- violate-action
bandwidth (QoS)
To specify the minimum bandwidth allocated to a class belonging to a policy map, use the bandwidth command in policy map class configuration mode. To remove the bandwidth specified for a class, use the no form of this command.
bandwidth { rate [units] | percent percentage-value }
no bandwidth { rate [units] | percent percentage-value }
Syntax Description
rate
Minimum bandwidth, in the units specified, to be assigned to the class. Range is from 1 to 4294967295.
units
Specifies the units for the bandwidth. Values can be:
percent percentage-value
Specifies the amount of guaranteed bandwidth, based on an absolute percentage of available bandwidth. Range is from 1 to 100.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.3.0
The ability to select the units for the bandwidth was added.
The range of bandwidth values was changed from 8 to 4000000 to 1 to 4294967295.
Release 3.3.1
Minimum rate value changed from 128 kbps to 256 kbps.
Usage Guidelines
You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The bandwidth command is used to specify the minimum guaranteed bandwidth allocated for traffic matching a particular class. Bandwidth may be defined as a specific value or may be set as a percentage of the interface bandwidth.
Note
By default, and without any QoS configuration, the default group of an interface is allowed a minimum bandwidth of either 1 percent of the interface rate or 10 Mbps. This is applicable only on the egress.
The actual bandwidth used is calculated in multiples of 256 kbps, the minimum bandwidth rate. The configured value is rounded to the nearest multiple of 256 kbps. The value shown in the output of the running-configuration shows the configured value as entered by the user.
If a percentage value is set, the accuracy that can be expected is 1 percent.
The bandwidth command can be used only within egress service policies. Use within an ingress policy is not supported.
Note
The bandwidth value takes into account the Layer 2 encapsulation that is applied to traffic leaving the interface. For POS/SDH transmission, the encapsulation is considered to be 4 bytes. For Ethernet, the encapsulation is 14 bytes; whereas for IEEE 802.1Q, the encapsulation is 18 bytes. The actual bandwidth assigned to a class can be seen in the output of the show qos interface command.
Be careful when specifying bandwidth guarantees close to 100 percent, because the Layer 2 encapsulation considered does not include the entire Layer 2 header. This can lead to oversubscription, particularly in the case of small packet sizes.
For bundled interfaces, bandwidth can be configured only as a percentage.
A policy map can have a single bandwidth statement per class. Both percentage and actual value bandwidth configurations can be used within a policy map.
The bandwidth command does not specify how the bandwidth is to be shared. Instead it specifies how much bandwidth is guaranteed per class, by setting the number of tokens that are assigned to the token bucket of a particular class. For configured behavior to work correctly, you must ensure that the sum of the bandwidths plus any priority traffic is not greater than the bandwidth of the interface itself. If the interface is oversubscribed, unpredictable behavior results.
The bandwidth of the interface is set to be that of the physical interface, unless a hierarchical policy is defined that reduces the bandwidth available to the traffic. The following example shows a hierarchical policy being used to shape traffic to the specified value. The child policy then determines how the shaped bandwidth should be apportioned between the specified classes:
policy-map parent class match_all shape average 1000000 bandwidth 1000000 service-policy child policy-map child class gold bandwidth percent 20 class silver bandwidth percent 40 class default bandwidth percent 40
Note
The bandwidth command is part of the parent policy. In this instance, the bandwidth command not only sets the minimum bandwidth for the class but also resets the reference point for the bandwidth percent statements in the child policy.
For main interface service policies:
- If bandwidth is configured in the parent class, parent minimum bandwidth is used as a reference for the child bandwidth percentages.
- If bandwidth is not configured in the parent class, the implicit minimum bandwidth, which is a portion of the total unallocated bandwidth allocated to the class based on the explicit or implicit bandwidth remaining, is used as a reference.
Implicit bandwidth remaining is an equal share of unallocated bandwidth among all queuing classes without either bandwidth or bandwidth remaining actions.
For subinterface policies:
- If bandwidth is configured in the parent class, parent minimum bandwidth is used as a reference for child bandwidth percentages.
- If bandwidth remaining is configured in the parent class, bandwidth-remaining-percent * interface-rate is used as a reference.
- If bandwidth is not configured in the parent class, shape rate is used as a reference.
In the following example, the hierarchical policy is attached to the main interface, and the parent classes are a mix of bandwidth and shape only classes:
policy-map hqos class c1 bandwidth percent 40 service-policy child class c2 shape average 500000000 service-policy childThe reference for the child policy in class c2 is the implicit bandwidth of class c2 bounded by the shape rate of class c2. Therefore, the reference = (60 percent * interface bandwidth) / 3 bounded by 500000000 kbps.
In the following example, the hierarchical policy is a class-default only parent shape configured on subinterfaces:
policy-map sub_int_hqos class c1ass-default shape average 40 service-policy childThe class-default parent shape rate is used as reference.
When the percent keyword is used with the bandwidth command, the bandwidth of the interface is defined as being the Layer 2 capacity excluding the Gigabit Ethernet or POS encapsulation but including the High-Level Data Link Control (HDLC) flags, frame check sequence (FCS), and so on. These have to be included because they are applied per packet, and the system cannot predict how many packets of a particular packet size are being sent out.
For example, the following policy is applied to an OC-192 interface:
policy-map oc-192 class c1 bandwidth percent 50The resulting bandwidth reservation for class c1 is 4,792,320 kbps. This equates to 50 percent of the OC-192 bandwidth excluding the GE or POS overhead.
For Clear Channel ATM subinterfaces, the bandwidth percent command uses the VC shaping rate as the reference rate. On ATM subinterfaces, only one bandwidth action can be configured in a class.
Task ID
Examples
The following example shows how to guarantee 50 percent of the interface bandwidth to a class called class1 and 10 percent of the interface bandwidth to a class called class2:
RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# bandwidth percent 50 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# class class2 RP/0/RP0/CPU0:router(config-pmap-c)# bandwidth percent 10Related Commands
Command
Description
Specifies the name of the class whose policy you want to create or change.
Defines a traffic class and the associated rules that match packets to the class.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Specifies or modifies the maximum number of packets the queue can hold for a class policy configured in a policy map.
Configures the Weighted Random Early Detection (WRED) thresholds for packets with a particular IP precedence.
Displays policy configuration information for all classes configured for all service policies on the specified interface.
Displays QoS information for a specific interface.
bandwidth remaining
To specify how to allocate leftover bandwidth to various classes, use the bandwidth remaining command in policy map class configuration mode. To return to the system defaults, use the no form of this command.
Syntax Description
percent percentage-value
Specifies the amount of guaranteed bandwidth, based on an absolute percentage of the available bandwidth. Range is from 1 to 100.
Command History
Usage Guidelines
You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The bandwidth remaining command is used to set the Modified Deficit Round Robin (MDRR) weight for the particular class.
When applied within an egress service policy, the command is used to define how any unallocated bandwidth should be apportioned. It typically is used in conjunction with the bandwidth command. In such a combination, if the minimum bandwidth guarantees are met, the remaining bandwidth is shared in the ratio defined by the bandwidth remaining command in the class configuration in the policy map.
The available bandwidth is equally distributed among those queueing classes that do not have the remaining bandwidth explicitly configured.
Note
On egress, the actual bandwidth of the interface is determined to be the Layer 2 capacity excluding the Layer 2 encapsulation, but including the HDLC flags, FCS, and so on. These have to be included because they are applied per packet, and the system cannot predict how many packets of a particular packet size are being sent out.
On ingress, you cannot use the bandwidth command to set the minimum bandwidth guarantee. Therefore, the bandwidth remaining command is used to proportionally allocate bandwidth to the particular classes, but there is no reserved bandwidth capacity.
Note
On ingress, the interface reference value is the Layer 3 capacity of the interface.
On both ingress and egress, if the bandwidth remaining command is not present, then the bandwidth is shared equally among the configured queueing classes present in the policy-map. When attempting precise calculations of expected MDRR behavior, you must bear in mind that because you are dealing with the bandwidth remaining on the link, you must convert the values to the bandwidth remaining percentages on the link, based upon the packet sizes of the traffic within the class. If the packet sizes are the same in all the classes, then the defined ratio is enforced precisely and predictably on the link.
On ATM subinterfaces, only one bandwidth action can be configured in a class.
Task ID
Examples
In the following example, a class called class1 is guaranteed 50 percent of the interface bandwidth and a class called class2 is guaranteed 10 percent of the interface bandwidth. The remaining bandwidth of 40 percent is shared by classes class1 and class2 in a 20:80 ratio: class class1 receives 20 percent of the 40 percent, and class class2 receives 80 percent of the 40 percent.
RP/0/RP0/CPU0:router(config)#policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# bandwidth percent 50 RP/0/RP0/CPU0:router(config-pmap-c)#bandwidth remaining percent 20 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)#class class2 RP/0/RP0/CPU0:router(config-pmap-c)# bandwidth percent 10 RP/0/RP0/CPU0:router(config-pmap-c)# bandwidth remaining percent 80class (policy-map)
To specify the name of the class whose policy you want to create or change, use the class command in policy map configuration mode. To remove a class from the policy map, use the no form of this command.
class [ type qos ] { class-name | class-default }
no class [ type qos ] { class-name | class-default }
Syntax Description
type qos
(Optional) Specifies a quality-of-service (QoS) class.
class-name
Name of the class for which you want to configure or modify policy.
class-default
Configures the default class.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.6.0
The type qos keywords were added.
Usage Guidelines
You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Within a policy map, the class (policy-map) command can be used to specify the name of the class whose policy you want to create or change. The policy map must be identified first.
To identify the policy map (and enter the required policy map configuration mode), use the policy-map command before you use the class (policy-map) command. After you specify a policy map, you can configure the policy for new classes or modify the policy for any existing classes in that policy map.
The class name that you specify in the policy map ties the characteristics for that class—that is, its policy—to the class map and its match criteria, as configured using the class-map command.
The class-default keyword is used for configuring default classes. It is a reserved name and cannot be used with user-defined classes. It is always added to the policy map (type qos) even if the class is not configured. For example, the following configuration shows that the class has not been configured, but the running configuration shows ‘class class-default’.
RP/0/RP0/CPU0:router(config)# policy-map pm1 RP/0/RP0/CPU0:router(config-pmap)# end-policy-map RP/0/RP0/CPU0:router(config)# end ! RP/0/RP0/CPU0:router# show running-config ! policy-map pm1 class class-default ! end-policy-map !Task ID
Examples
The following example shows how to create a policy map called policy1, which is defined to shape class1 traffic at 30 percent and default class traffic at 20 percent.
RP/0/RP0/CPU0:router(config)# class-map class1 RP/0/RP0/CPU0:router(config-cmap)# match precedence ipv4 3 ! RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:routerconfig-pmap-c)# shape average percent 30 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# class class-default RP/0/RP0/CPU0:router(config-pmap-c)# shape average percent 20The default class is used for packets that do not satisfy configured match criteria for class1. Class1 must be defined before it can be used in policy1, but the default class can be directly used in a policy map, as the system defines it implicitly.
class-map
To define a traffic class and the associated rules that match packets to the class, use the class-map command in global configuration mode. To remove an existing class map from the router, use the no form of this command.
class-map [ type qos ] [match-all] [match-any] class-map-name
no class-map [ type qos ] [match-all] [match-any] class-map-name
Syntax Description
type qos
(Optional) Specifies a quality-of-service (QoS) class-map.
match-all
(Optional) Specifies a match on all of the match criteria.
match-any
(Optional) Specifies a match on any of the match criteria. This is the default.
class-map-name
Name of the class for the class map. The class name is used for the class map and to configure policy for the class in the policy map. The class name can be a maximum of 63 characters, must start with an alphanumeric character, and in addition to alphanumeric characters, can contain any of the following characters: . _ @ $ % + | # : ; - =
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.6.0
The type qos keywords were added.
Release 3.7.0
Support was added for the character ‘=’ in the class-map-name argument. The argument accepts a maximum of 63 characters.
Usage Guidelines
You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The class-map command specifies the name of the class for which you want to create or modify class map match criteria. Use of this command enables class map configuration mode in which you can enter any match command to configure the match criteria for this class. Packets arriving on the interface are checked against the match criteria configured for a class map to determine if the packet belongs to that class.
The following commands can be used in a class map:
- match access-group
- match atm
- match [not] cos
- match destination-address
- match [not] discard-class
- match [not] dscp
- match frame-relay dlci
- match [not] mpls experimental topmost
- match [not] precedence
- match precedence
- match [not] protocol
- match [not] qos-group
- match source-address
- match vlan
- match vpls
Task ID
Examples
The following example shows how to specify class101 as the name of a class and defines a class map for this class. The packets that match the access list 101 are matched to class class101.
RP/0/RP0/CPU0:router(config)# class-map class101 RP/0/RP0/CPU0:router(config-cmap)# match access-group ipv4 101Related Commands
Command
Description
Specifies the name of the class whose policy you want to create or change.
Identifies a specified access control list (ACL) number as the match criteria for a class map.
Enables packet matching on the basis of the ATM operations, administration, and maintenance (OAM) or cell loss priority (CLP).
Identifies specified class of service (CoS) values as a match criteria in a class map.
Identifies a specific destination MAC address explicitly as a match criterion in a class map.
Identifies specific discard class values as a match criteria for a class map.
Identifies specific IP differentiated services code point (DSCP) values as match criteria for a class map.
Identifies specific three-bit experimental (EXP) field values in the topmost Multiprotocol Label Switching (MPLS) label as match criteria for a class map.
Identifies IP precedence values as match criteria.
Identifies a specific protocol as the match criterion for a class map.
Identifies specific quality-of-service (QoS) group values as match criteria in a class map.
Identifies a specific source MAC address as match criterion in a class map.
Identifies selected VLAN IDs as the match criteria for a class map.
clear qos counters interface
To clear QoS counters for a specified interface, use the clear qos counters interface command in EXEC mode.
Syntax Description
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.9.0
The interface keyword was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The clear qos counters interface command clears all input and output QoS counters that are attached to a specified interface, unless the input or output keyword is specified. If the input or output keyword is specified, only counters attached to the interface in a specified direction are cleared.
Task ID
Examples
The following example shows how to clear QoS counters attached to Gigabit Ethernet interface 0/1/0/9:
RP/0/RP0/CPU0:router# clear qos counters interface gigabitethernet 0/1/0/9
The following example shows how to clear output QoS counters attached to POS interface 0/7/0/3:
RP/0/RP0/CPU0:router# clear qos counters interface pos 0/7/0/3 output
conform-action
To configure the action to take on packets that conform to the rate limit, use the conform-action command in policy map police configuration mode. To remove a conform action from the policy-map, use the no form of this command.
conform-action [ drop | set options | transmit ]
no conform-action [ drop | set options | transmit ]
Syntax Description
drop
(Optional) Drops the packet.
set options
(Optional) Configures the specified packet properties. Replace options with one of the following keywords or keyword arguments:
- atm-clp value —Sets the cell loss priority (CLP) bit.
- cos value —Sets the class of service value. Range is 0 to7.
- cos [inner]value —Sets the class of service value. Range is 0 to 7.
- dei—Sets the drop eligible indicator (DEI). Can be 0 or 1.
- discard-class value —Sets the discard class value. Range is 0 to 7.
- dscp value —Sets the differentiated services code point (DSCP) value and sends the packet. See Table 1 for a list of valid values.
- dscp [tunnel] value —Sets the differentiated services code point (DSCP) value and sends the packet. See Table 1 for a list of valid values. With the tunnel keyword, the DSCP is set in the outer header.
- mpls experimental {topmost | imposition} value —Sets the experimental (EXP) value of the Multiprotocol Label Switching (MPLS) packet topmost label or imposed label. Range is 0 to 7.
- precedence precedence —Sets the IP precedence and sends the packet See Table 2 for a list of valid values.
- precedence [tunnel] precedence —Sets the IP precedence and sends the packet. See Table 1 for a list of valid values. With the tunnel keyword, the precedence is set in the outer header.
- qos-group value —Sets the QoS group value.
- srp-priority value —Sets the Spatial Reuse Protocol (SRP) priority. Range is 0 to 7.
transmit
(Optional) Transmits the packets.
Command Default
By default, if no action is configured on a packet that conforms to the rate limit, the packet is transmitted.
Command History
Release
Modification
Release 3.4.0
This command was introduced.
Release 3.4.1
The set qos-group keyword was added.
Release 3.6.0
The srp-priority value keyword and argument were added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
For more information regarding the traffic policing feature, see the police rate command.
The conform-action command is used to set the DSCP, the precedence, or the discard class for IP packets, and experimental or discard class values for MPLS packets.
- experimental, qos-group, and discard class values, or
- experimental and qos-group values, or
- experimental and discard class values
Task ID
Examples
In the following example for MPLS, traffic policing is configured to set the MPLS experimental bit for packets that conform to the rate limit:
RP/0/RP0/CPU0:router(config)# class-map class RP/0/RP0/CPU0:router(config-cmap)# match mpls experimental topmost 0 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map child RP/0/RP0/CPU0:router(config-pmap)# class prec1 RP/0/RP0/CPU0:router(config-pmap-c)# police rate 100000000 peak-rate 3125000 peak-burst 3125000 RP/0/RP0/CPU0:router(config-pmap-c-police)# conform-action set mpls experimental imp 1 RP/0/RP0/CPU0:router(config-pmap-c-police)# conform-action set qos-group 1 RP/0/RP0/CPU0:router(config-pmap-c-police)# exit RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface gigabitethernet 0/1/0/9 RP/0/RP0/CPU0:router(config-if) service-policy input policy1Related Commands
Command
Description
Prevents the parent policer from dropping any ingress traffic that conforms to the maximum rate specified in the child policer.
(Used for SIP 700 cards only.) Configures preclassification of ingress Layer 2 Frame Relay packets that have been previously marked as not discard eligible on an upstream node. These previously-marked packets are analyzed and preclassified by the color-aware policer on the ingress interface as part of the 2-rate 3-color (2R3C) traffic policing feature.
Configures the action to take on packets that exceed the rate limit.
Configures traffic policing and enters policy map police configuration mode.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Displays policy configuration information for all classes configured for all service policies on the specified interface.
Configures the action to take on packets that violate the rate limit.
end-class-map
To end the configuration of match criteria for the class and to exit class map configuration mode, use the end-class-map command in class map configuration mode.
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Task ID
Examples
The following example shows how to end the class map configuration and exit class map configuration mode:
RP/0/RP0/CPU0:router(config)# class-map class101 RP/0/RP0/CPU0:router(config-cmap)# match access-group ipv4 101 RP/0/RP0/CPU0:router(config-cmap)# end-class-map RP/0/RP0/CPU0:router(config)#end-policy-map
To end the configuration of a policy map and to exit policy map configuration mode, use the end-policy-map command in policy map configuration mode.
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Task ID
Examples
The following example shows how to end the policy map configuration and exit policy map configuration mode.
RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# police cir 250 RP/0/RP0/CPU0:router(config-pmap-c)# set precedence 3 RP/0/RP0/CPU0:router(config-pmap)# end-policy-map RP/0/RP0/CPU0:router(config)#exceed-action
To configure the action to take on packets that exceed the rate limit, use the exceed-action command in policy map police configuration mode. To remove an exceed action from the policy-map, use the no form of this command.
Syntax Description
drop
(Optional) Drops the packet.
set options
Configures the specified packet properties. Replace options with one of the following keywords or keyword arguments:
- atm-clp value —Sets the cell loss priority (CLP) bit.
- cos [inner] value —Sets the class of service value. Range is 0 to 7.
- cos value —Sets the class of service value. Range is 0 to 7.
- dei —Sets the drop eligible indicator (DEI). Can be 0 or 1.
- discard-class value —Sets the discard class value. Range is 0 to 7.
- dscp value —Sets the differentiated services code point (DSCP) value and sends the packet. See Table 1 for a list of valid values.
- dscp [tunnel] value —Sets the differentiated services code point (DSCP) value and sends the packet. See Table 1 for a list of valid values. With the tunnel keyword, the DSCP is set in the outer header.
- fr-de value —Sets the Frame Relay discard eligible (DE) bit on the Frame Relay frame then transmits that packet. In congested environments, frames with the DE bit set to 1 are discarded before frames with the DE bit set to 0. The frame relay DE bit has only one bit and has only two settings, 0 or 1. The default DE bit setting is 0.
- mpls experimental {topmost | imposition} value —Sets the experimental (EXP) value of the Multiprotocol Label Switching (MPLS) packet topmost label or imposed label. Range is 0 to 7.
- precedence precedence —Sets the IP precedence and sends the packet. See Table 1 for a list of valid values.
- precedence [tunnel] precedence —Sets the IP precedence and sends the packet. See Table 1 for a list of valid values. With the tunnel keyword, the precedence is set in the outer header.
- qos-group value —Sets the QoS group value.
- qos-group value —Sets the QoS group value. Range is 0 to 63.
- srp-priority value —Sets the Spatial Reuse Protocol (SRP) priority. Range is 0 to 7
transmit
(Optional) Transmits the packets.
Command Default
By default, if no action is configured on a packet that exceeds the rate limit, the packet is dropped.
Command History
Release
Modification
Release 3.4.0
This command was introduced.
Release 3.4.1
The set qos-group keyword was added.
Release 3.6.0
The srp-priority value keyword and argument were added.
Release 3.8.0
qos group was supported as an ingress policer action.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
For more information regarding the traffic policing feature, see the police rate command.
The exceed-action command can be used to set the DSCP, the precedence, or the discard class for IP packets, and experimental or discard-class values for MPLS packets.
- experimental, qos-group, and discard class values, or
- experimental and qos-group values, or
- experimental and discard class values
Task ID
Examples
In the following example for MPLS, traffic policing is configured to drop traffic that exceeds the rate limit:
RP/0/RP0/CPU0:router(config)# class-map class1 RP/0/RP0/CPU0:router(config-cmap)# match mpls experimental topmost 0 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# police rate 250 kbps burst 50 RP/0/RP0/CPU0:router(config-pmap-c-police)# exceed-action drop RP/0/RP0/CPU0:router(config-pmap-c-police)# exit RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface pos 0/5/0/0 RP/0/RP0/CPU0:router(config-if) service-policy input policy1Related Commands
Command
Description
Configures the action to take on packets that conform to the rate limit.
(Used for SIP 700 cards only.) Configures preclassification of ingress Layer 2 Frame Relay packets that have been previously marked as discard eligible on an upstream node. These previously-marked packets are analyzed and preclassified by the color-aware policer on the ingress interface as part of the 2-rate 3-color (2R3C) traffic policing feature.
Configures traffic policing and enters policy map police configuration mode.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Displays policy configuration information for all classes configured for all service policies on the specified interface.
Configures the action to take on packets that violate the rate limit.
hw-module qos input police granularity location
To configure the policer granularity on input interfaces, use the hw-module qos input police granularity location command in global configuration mode. To return to the default policer granularity, use the no form of this command.
hw-module qos input police granularity [police-rate-dev-tol] location interface-path-id
no hw-module qos input police granularity [police-rate-dev-tol] location interface-path-id
Syntax Description
police-rate-dev-tol (Optional) Police rate deviation tolerance, as a percentage. Range: 1 to 100.
interface-path-id Physical interface instance. Naming notation is rack/slot/module; a slash between values is required as part of the notation.
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
If the police-rate-dev-tol argument is not specified, a value of 2% is configured at the specified location.
Policer granularity values, whether default or configured, apply to the SIP and to all SPAs that are installed on the SIP.
The configured policer granularity value will be applied only for all future traffic policies configured on the interface.
Task ID
Examples
This example shows how to set the police rate deviation tolerance to 8% on the input interface at location 0/1/CPU0:
RP/0/RP0/CPU0:router(config)# hw-module qos input police granularity 8 location 0/1/CPU0
Examples
This example demonstrates how a default police rate deviation tolerance of 2% is configured on an interface, when the police-rate-dev-tol argument is not specified. After performing this configuration step, a police rate deviation tolerance of 2% is applied on the input interface at location 0/1/CPU0:
RP/0/RP0/CPU0:router(config)# hw-module qos input police granularity location 0/1/CPU0
hw-module qos output police granularity location
To configure the policer granularity on output interfaces, use the hw-module qos output police granularity location command in global configuration mode. To return to the default policer granularity, use the no form of this command.
hw-module qos output police granularity [police-rate-dev-tol] location interface-path-id
no hw-module qos output police granularity [police-rate-dev-tol] location interface-path-id
Syntax Description
police-rate-dev-tol (Optional) Police rate deviation tolerance, as a percentage. Range: 1 to 100.
interface-path-id Physical location of the Shared Interface Processor (SIP). Naming notation is rack/slot/module; a slash between values is required as part of the notation.
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
If the police-rate-dev-tol argument is not configured, a value of 2% is configured at the specified location.
Policer granularity values, whether default or configured, apply to the SIP and to all SPAs that are installed on the SIP.
The configured policer granularity value is applied only for all future traffic policies configured on the interface.
Task ID
Examples
This example shows how to set the police rate deviation tolerance to 8% on the output interface at location 0/1/CPU0:
RP/0/RP0/CPU0:router(config)# hw-module qos output police granularity 8 location 0/1/CPU0
Examples
This example demonstrates how a default police rate deviation tolerance of 2% is configured on an interface, when the police-rate-dev-tol argument is not specified. After performing this configuration step, a police rate deviation tolerance of 2% is applied on the output interface at location 0/1/CPU0:
RP/0/RP0/CPU0:router(config)# hw-module qos output police granularity location 0/1/CPU0
hw-module qos output shape granularity location
To configure the shape granularity, use the hw-module qos output shape granularity location command in global configuration mode. To return to the default shape granularity, use the no form of this command.
hw-module qos output shape granularity [granularity] location interface-path-id
no hw-module qos output shape granularity [granularity] location interface-path-id
Syntax Description
granularity (Optional) Shape granularity, in kbps. Valid values are 64, 128 and 256.
interface-path-id Physical location of the Shared Interface Processor (SIP). Naming notation is rack/slot/module; a slash between values is required as part of the notation.
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Shape granularity can only be configured in the egress direction.
Shape granularity values, whether default or configured, apply to the SIP and to all SPAs that are installed on the SIP.
For the configured shape granularity to take effect, the line card must be reloaded. Use the show hw-module qos output shape granularity location command to determine if a line card reload is currently required, for the configured shape granularity value to take effect.
The shape rate you set, using the shape average command, should be a multiple of the shaper granularity. For example, if the shaper rate is set to 320 kbps but the shaper granularity is configured to 256 kbps, the effective shaper rate is 512 kbps, that is a multiple of 256 kbps. To get an actual shaper rate of 320 kbps, configure the shaper granularity to 64 kbps. Because 320 is a multiple of 64, the shaper rate will be exactly 320 kbps.
If the shape granularity is not configured, a default value of 256 kbps is applied to all output interfaces belonging to a particular line card. If the shape granularity is configured using the hw-module qos output shape granularity location command, but the granularity argument is not specified, a shape granularity of 64 kbps will be configured at the specified location.
Using this command does not affect the ingress shaping granularity for the line card.
Task ID
Examples
This example shows how to set the shape granularity to 128 kbps on the output interface at location 0/1/CPU0:
(config)# hw-module qos output shape granularity 128 location 0/1/CPU0Examples
This example demonstrates how a default shape granularity of 64 kbps is configured on an interface, when the granularity argument is not specified. After performing this configuration step, a shape granularity of 64 kbps is applied on the output interface at location 0/1/CPU0:
(config)# hw-module qos output shape granularity location 0/1/CPU0match access-group
To identify a specified access control list (ACL) number as the match criteria for a class map, use the match access-group command in class map configuration mode. To remove ACL match criteria from a class map, use the no form of this command.
match access-group { ipv4 | ipv6 } access-group-name
no match access-group { ipv4 | ipv6 } access-group-name
Syntax Description
ipv4
Specifies the name of the IPv4 access group to be matched.
ipv6
Specifies the name of the IPv6 access group to be matched.
access-group-name
ACL whose contents are used as the match criteria against which packets are checked to determine if they belong to this class.
Command Default
By default, if neither IPv6 nor IPv4 is specified as the match criteria for a class map, IPv4 addressing is used.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.2.2
Support for IPv6 ACLs with source port matching was added in MQC policy maps.
Release 3.3.1
Support for IPv4 ACLs with source port matching was added in MQC policy maps.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
For class-based features (such as marking, Modified Deficit Round Robin [MDRR], and policing), you define traffic classes based on match criteria, including ACLs and input interfaces. Packets satisfying the match criteria for a class constitute the traffic for that class.
The match access-group command specifies an ACL whose contents are used as the match criteria against which packets are checked to determine if they belong to the class specified by the class map.
Note
deny statements in ACLs used in the match access-group command are treated as permit statements.
To use the match access-group command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. You can specify up to eight IPv4 and IPv6 ACLs in a match statement.
Task ID
Examples
The following example shows how to specify a class map called map1 and configures map1 to be used as the match criteria for this class:
RP/0/RP0/CPU0:router(config)# class-map map1 RP/0/RP0/CPU0:router(config-cmap)# match access-group ipv4 map1match atm
To enable packet matching on the basis of the ATM operations, administration, and maintenance (OAM) or cell loss priority (CLP), use the match atm command in class-map configuration mode. To disable packet matching, use the no form of this command.
Syntax Description
clp
Configures the ATM CLP bit to be matched. Use either 0 or 1 for clp-bit-value .
clp-bit-value
(Optional) Value for the ATM CLP bit. Choose either 0 or 1 as the bit value. If you do not specify a bit value, the default value of 1 is used.
oam
Configures the ATM OAM to be matched.
Command History
Release
Modification
Release 3.7.0
This command was introduced.
Release 3.8.0
The clp-bit-value argument was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The match atm command is supported on policy maps that are attached to ATM main interfaces, ATM subinterfaces, or ATM permanent virtual circuits (PVCs). However, policy maps (containing the match atm command) that are attached to these types of ATM interfaces can be input policy maps only.
Task ID
Examples
The following example shows how to specify a class map called map1 and configures map1 to be used as the match criteria for this class:
RP/0/RP0/CPU0:router(config)#class-map map1 RP/0/RP0/CPU0:router(config-cmap)# match atm oamRelated Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Identifies a specified access control list (ACL) number as the match criteria for a class map.
Identifies specified class of service (CoS) values as a match criteria in a class map.
Identifies a specific destination MAC address explicitly as a match criterion in a class map.
Identifies specific discard class values as a match criteria for a class map.
Identifies specific IP differentiated services code point (DSCP) values as match criteria for a class map.
Identifies specific three-bit experimental (EXP) field values in the topmost Multiprotocol Label Switching (MPLS) label as match criteria for a class map.
Identifies IP precedence values as match criteria.
Identifies a specific protocol as the match criterion for a class map.
Identifies specific quality-of-service (QoS) group values as match criteria in a class map.
Identifies a specific source MAC address as match criterion in a class map.
Identifies selected VLAN IDs as the match criteria for a class map.
match cos
To identify specified class of service (CoS) values as a match criteria in a class map, use the match cos command in class map configuration mode. To remove a specified CoS class value from the matching criteria for a class map, use the no form of this command.
match [not] cos { cos-value [ cos-value1 ... cos-value7 ] | inner inner-cos-value [ inner cos-value1 ... inner cos-value7 ] }
no match [not] cos { cos-value [ cos-value1 ... cos-value7 ] | inner inner-cos-value [ inner cos-value1 ... inner cos-value7 ] }
Syntax Description
not
(Optional) Negates the specified match result.
cos-value
Identifier that specifies the exact value from 0 to 7. Up to eight CoS identifiers can be specified to match packets.
inner
(Optional) Specifies the inner CoS value in, for example, a QinQ configuration.
inner-cos-value
Identifier that specifies the exact value from 0 to 7. Up to eight inner CoS identifiers can be specified to match packets.
Command History
Release
Modification
Release 3.3.0
This command was introduced.
The not keyword was added.
Release 4.0.0
The inner keyword was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The match cos command specifies a class of service that is used as the match criteria against which packets are checked to determine if they belong to the class specified by the class map.
To use the match cos command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. If you specify more than one match cos command in a class map, the values of subsequent match statements are added to the first match cos command.
The match cos command is not supported on an output service policy attached to a Layer 3 interface (POS interface or routed VLAN subinterface).
The match cos command is supported on egress Layer 2 interfaces, Layer 2 subinterfaces, and Layer 3 physical interfaces. Layer 3 physical interfaces are supported, because it is possible for a Layer 3 interface to have underlying Layer 2 subinterfaces.
The match cos inner command is supported on:
The match cos inner command is not supported on Layer 3 subinterfaces or on bundles.
Task ID
Examples
The following example shows how to configure the service policy called policy1 and attach service policy policy1 to an interface. In this example, class map cos146 evaluates all packets entering Packet-over-SONET (POS) interface 0/1/0/0 .100 for class of service values of 1, 4, or 6. If the incoming packet has been marked with any of these CoS values, the packet is queued to the class queue with the bandwidth setting of 300 kbps.
RP/0/RP0/CPU0:router(config)# class-map cos146 RP/0/RP0/CPU0:router(config-cmap)# match cos 1 4 6 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class cos146 RP/0/RP0/CPU0:router(config-pmap-c)# bandwidth 300 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface pos 0/1/0/0 RP/0/RP0/CPU0:router(config-if)# service-policy input policy1In this example, traffic with an outer VLAN ID of 2 and an inner VLAN ID of 3 enters the QinQ attachment circuit (AC). If traffic has a CoS value of 1, 3, or 5 based on the inner VLAN tag, it matches class ic.
RP/0/RP0/CPU0:router(config)#policy-map p2 RP/0/RP0/CPU0:router(config-pmap)#class ic RP/0/RP0/CPU0:router(config-pmap-c)#police rate percent 30 RP/0/RP0/CPU0:router(config-pmap-c-police)#bandwidth remaining percent 40 RP/0/RP0/CPU0:router(config-pmap-c)#class class-default RP/0/RP0/CPU0:router(config-pmap-c)#end-policy-map RP/0/RP0/CPU0:router(config)# RP/0/RP0/CPU0:router(config)#class-map match-any ic RP/0/RP0/CPU0:router(config-cmap)#match cos inner 1 3 5 RP/0/RP0/CPU0:router(config-cmap)#end-class-map RP/0/RP0/CPU0:router(config)# RP/0/RP0/CPU0:router(config)#interface gigabitethernet 0/6/5/0.2 l2transport RP/0/RP0/CPU0:router(config-subif)#dot1q vlan 2 3 RP/0/RP0/CPU0:router(config-subif)#service-policy input 2 RP/0/RP0/CPU0:router(config-subif)#Related Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Identifies a specified access control list (ACL) number as the match criteria for a class map.
Enables packet matching on the basis of the ATM operations, administration, and maintenance (OAM) or cell loss priority (CLP).
Identifies a specific destination MAC address explicitly as a match criterion in a class map.
Identifies specific discard class values as a match criteria for a class map.
Identifies specific IP differentiated services code point (DSCP) values as match criteria for a class map.
Identifies specific three-bit experimental (EXP) field values in the topmost Multiprotocol Label Switching (MPLS) label as match criteria for a class map.
Identifies IP precedence values as match criteria.
Identifies a specific protocol as the match criterion for a class map.
Identifies specific quality-of-service (QoS) group values as match criteria in a class map.
Identifies a specific source MAC address as match criterion in a class map.
Identifies selected VLAN IDs as the match criteria for a class map.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Sets the Layer 2 class of service (CoS) value of an outgoing packet.
match destination-address
To identify a specific destination MAC address explicitly as a match criterion in a class map, use the match destination-address command in class map configuration mode. To remove a specific destination MAC address from the matching criteria for a class map, use the no form of this command.
Syntax Description
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The match destination-address command specifies a destination address that is used as the match criteria against which packets are checked to determine if they belong to the class specified by the class map.
To use the match destination-address command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. If you specify more than one match destination-address command in a class map, only the last command entered applies.
The match destination-address command is supported only on an output service policy.
Layer 2 match criteria on a Layer 3 target, or Layer 3 match criteria on a Layer 2 target, is not allowed. The match destination-address command is supported on egress Layer 2 interfaces, Layer 2 subinterfaces, and Layer 3 physical interfaces. Layer 3 physical interfaces are supported, because it is possible for a Layer 3 interface to have underlying Layer 2 subinterfaces.
The command is allowed on a policy map that is attached to an Ethernet interface. The command is invalid on a policy that is attached to a Packet-over-SONET/SDH (POS) interface or a routed VLAN subinterface.
The match 48-bit MAC address is specified in xxxx.xxxx.xxxx format on L2VPN PE interfaces.
Task ID
Examples
The following example shows how to match a destination MAC address:
RP/0/RP0/CPU0:router(config)#class-map match-any A RP/0/RP0/CPU0:router(config-cmap)# match destination-address mac 000.f0d0.2356Related Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Enables packet matching on the basis of the ATM operations, administration, and maintenance (OAM) or cell loss priority (CLP).
Identifies specified class of service (CoS) values as a match criteria in a class map.
Identifies specific discard class values as a match criteria for a class map.
Identifies specific IP differentiated services code point (DSCP) values as match criteria for a class map.
Identifies specific three-bit experimental (EXP) field values in the topmost Multiprotocol Label Switching (MPLS) label as match criteria for a class map.
Identifies IP precedence values as match criteria.
Identifies a specific protocol as the match criterion for a class map.
Identifies specific quality-of-service (QoS) group values as match criteria in a class map.
Identifies a specific source MAC address as match criterion in a class map.
Identifies selected VLAN IDs as the match criteria for a class map.
match discard-class
To identify specific discard class values as a match criteria for a class map, use the match discard-class command in class map configuration mode. To remove specified discard class values from the matching criteria for a class map, use the no form of this command.
match [ not ] discard-class discard-class-value [ discard-class-value1 ... discard-class-value7 ]
no match [ not ] discard-class discard-class-value [ discard-class-value1 ... discard-class-value7 ]
Syntax Description
not
(Optional) Negates the specified match result.
discard-class-value
Discard class identifier. You can specify up to eight discard class identifiers to match packets. Class identifiers are separated by white spaces. Range is 0 to 7.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.3.0
The not keyword was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The match discard-class command specifies a discard class that is used as the match criteria against which packets are checked to determine if they belong to the class specified by the class map.
To use the match discard-class command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. If you specify more than one match discard-class command in a class map, the new values are added to the existing match statement.
The match discard-class command sets the match criteria for examining discard classes marked on the packet. Up to eight discard class values can be matched in one match statement. For example, match discard-class 0 1 2 3 4 5 6 7 returns matches for discard class values 0, 1, 2, 3, 4, 5, 6, and 7. Only one of the seven values is needed to yield a match (OR operation).
The discard class value is used as a matching criterion only. The value has no mathematical significance. For instance, the discard class value 2 is not greater than 1. The value simply indicates that a packet marked with the discard class of 2 should be treated differently than a packet marked with a discard class value of 1.
Note
The match discard-class command is applied only for egress policies.
Task ID
Examples
The following example shows a service policy called policy1 attached to an interface. In this example, class map discard class5 is created to evaluate all packets leaving GigabitEthernet interface 0/1/0/9 for a discard-class value of 5. Packets marked with the discard class value of 5 are queued to a class queue with the bandwidth setting 300 kbps.
RP/0/RP0/CPU0:router(config)# class-map discard-class5 RP/0/RP0/CPU0:router(config-cmap)# match discard-class 5 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class discard-class5 RP/0/RP0/CPU0:router(config-pmap-c)# bandwidth 300 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface gigabitethernet 0/1/0/9 RP/0/RP0/CPU0:router(config-if)# service-policy output policy1Related Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Sets the discard class and Quality of Service (QoS) group identifiers on IP Version 4 (IPv4) or Multiprotocol Label Switching (MPLS) packets.
Sets the quality of service (QoS) group identifiers on packets.
Enables packet matching on the basis of the ATM operations, administration, and maintenance (OAM) or cell loss priority (CLP).
Identifies specified class of service (CoS) values as a match criteria in a class map.
Identifies a specific destination MAC address explicitly as a match criterion in a class map.
Identifies specific IP differentiated services code point (DSCP) values as match criteria for a class map.
Identifies IP precedence values as match criteria.
Identifies a specific protocol as the match criterion for a class map.
Identifies specific quality-of-service (QoS) group values as match criteria in a class map.
Identifies a specific source MAC address as match criterion in a class map.
Identifies selected VLAN IDs as the match criteria for a class map.
match dscp
To identify specific IP differentiated services code point (DSCP) values as match criteria for a class map, use the match dscp command in class map configuration mode. To remove a DSCP value from a class map, use the no form of this command.
match [not] dscp [ ipv4 | ipv6 ] dscp-value [ dscp-value1 . .. dscp-value7 ]
no match [not] dscp [ ipv4 | ipv6 ] dscp-value [ dscp-value1 . .. dscp-value7 ]
Syntax Description
not
(Optional) Negates the specified match result.
ipv4
(Optional) Specifies the IPv4 DSCP value.
ipv6
(Optional) Specifies the IPv6 DSCP value.
dscp-value
IP DSCP value identifier that specifies the exact value or a range of values. Range is 0 to 63. Up to eight IP DSCP values can be specified to match packets. Reserved keywords can be specified instead of numeric values. Table 1 describes the reserved keywords.
Note Up to eight values or ranges are supported on a single match statement, and up to 64 values or ranges specified on up to eight match statements.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.2
The ipv6 and ipv4 keywords were added.
Release 3.3.0
The not keyword was added.
Release 3.7.0
Up to eight values or ranges on a single match statement, and up to 64 values or ranges specified on up to eight match statements for the dscp-value argument were supported.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The match dscp command specifies a DSCP value that is used as the match criteria against which packets are checked to determine if they belong to the class specified by the class map.
To use the match dscp command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. If you specify more than one match dscp command in a class map, only the last command entered applies.
The match dscp command examines the higher-order six bits in the type of service (ToS) byte of the IP header. Only one of the eight values is needed to yield a match (OR operation).
The command supports only eight IP DSCP values. If you try to configure more match statements after all the eight values are matched, the statements get rejected.
The IP DSCP value is used as a matching criterion only. The value has no mathematical significance. For instance, the IP DSCP value 2 is not greater than 1. The value simply indicates that a packet marked with the IP DSCP value of 2 should be treated differently than a packet marked with an IP DSCP value of 1. The treatment of these marked packets is defined by the user through the setting of QoS policies in policy map class configuration mode.
The reserved keywords listed in the following table can be specified instead of numeric values.
Task ID
Examples
The following example shows how to configure the service policy called policy1 and attach service policy policy1 to an interface. In this example, class map dscp14 evaluates all packets entering Packet-over-SONET/SDH (POS) interface 0/1/0/0 for an IP DSCP value of 14. If the incoming packet has been marked with the IP DSCP value of 14, the packet is queued to the class queue with the bandwidth setting of 300 kbps.
RP/0/RP0/CPU0:router(config)# class-map dscp14 RP/0/RP0/CPU0:router(config-cmap)# match dscp ipv4 14 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class dscp14 RP/0/RP0/CPU0:router(config-pmap-c)# bandwidth 300 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface pos 0/1/0/0 RP/0/RP0/CPU0:router(config-if)# service-policy input policy1Related Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Marks a packet by setting the IP differentiated services code point (DSCP) in the type of service (ToS) byte.
Enables packet matching on the basis of the ATM operations, administration, and maintenance (OAM) or cell loss priority (CLP).
Identifies specified class of service (CoS) values as a match criteria in a class map.
Identifies a specific destination MAC address explicitly as a match criterion in a class map.
Identifies specific discard class values as a match criteria for a class map.
Identifies IP precedence values as match criteria.
Identifies a specific protocol as the match criterion for a class map.
Identifies specific quality-of-service (QoS) group values as match criteria in a class map.
Identifies a specific source MAC address as match criterion in a class map.
Identifies selected VLAN IDs as the match criteria for a class map.
Marks a packet by setting the IP differentiated services code point (DSCP) in the type of service (ToS) byte.
match mpls experimental topmost
To identify specific three-bit experimental (EXP) field values in the topmost Multiprotocol Label Switching (MPLS) label as match criteria for a class map, use the match mpls experimental topmost command in class map configuration mode. To remove experimental field values from the class map match criteria, use the no form of the command.
match [ not ] mpls experimental topmost exp-value [ exp-value1 ...exp-value7 ]
no match [ not ] mpls experimental topmost exp-value [ exp-value1 ...exp-value7 ]
Syntax Description
not
(Optional) Negates the specified match result.
exp-value
Experimental value that specifies the exact value from 0 to 7. Up to eight experimental values can be specified to match MPLS headers.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.3.0
The not keyword was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The match mpls experimental topmost command is used by the class map to identify MPLS experimental values matching on a packet.
To use the match mpls experimental topmost command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. If you specify more than one match mpls experimental topmost command in a class map, the new values are added to the existing match statement.
This command examines the three experimental bits contained in the topmost label of an MPLS packet. Up to eight experimental values can be matched in one match statement. For example, match mpls experimental topmost 2 4 5 7 returns matches for experimental values of 2, 4, 5, and 7. Only one of the four values is needed to yield a match (OR operation).
The experimental values are used as a matching criterion only. The value has no mathematical significance. For instance, the experimental value 2 is not greater than 1. The value indicates that a packet marked with the experimental value of 2 should be treated differently than a packet marked with the EXP value of 1. The treatment of these different packets is defined by the user through the setting of QoS policies in policy map class configuration mode.
Task ID
Examples
The following example shows how to configure the service policy called policy1 and attach service policy policy1 to an interface. In this example, class map mplsmap1 evaluates all packets entering GigabitEthernet interface 0/1/0/9 for an MPLS experimental value of 1. If the incoming packet has been marked with the MPLS experimental value of 1, the packet is queued to the class queue with the bandwidth setting of 300 kbps.
RP/0/RP0/CPU0:router(config)# class-map mplsmap1 RP/0/RP0/CPU0:router(config-cmap)# match mpls experimental topmost 1 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class mplsmap1 RP/0/RP0/CPU0:router(config-pmap-c)# bandwidth 300 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface gigabitethernet 0/1/0/9 RP/0/RP0/CPU0:router(config-if)# service-policy input output policy1Related Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Identifies specific IP differentiated services code point (DSCP) values as match criteria for a class map.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Displays policy configuration information for all classes configured for all service policies on the specified interface.
match precedence
To identify IP precedence values as match criteria, use the match precedence command in class map configuration mode. To remove precedence values from a class map, use the no form of this command.
match [ not ] precedence [ ipv4 | ipv6 ] precedence-value [ precedence-value1 ... precedence-value7 ]
no match [ not ] precedence [ ipv4 | ipv6 ] precedence-value [ precedence-value1 ... precedence-value7 ]
Syntax Description
not
(Optional) Negates the specified match result.
ipv4
(Optional) Specifies the IPv4 precedence value.
ipv6
(Optional) Specifies the IPv6 precedence value.
precedence-value
An IP precedence value identifier that specifies the exact value. Range is from 0 to 7. Reserved keywords can be specified instead of numeric values. Table 1 describes the reserved keywords.
Up to eight precedence values can be matched in one match statement.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.2
The ipv6 and ipv4 keywords were added.
Release 3.3.0
The not keyword was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The match precedence command specifies a precedence value that is used as the match criteria against which packets are checked to determine if they belong to the class specified by the class map.
To use the match precedence command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. If you specify more than one match precedence command in a class map, only the last command entered applies.
The match precedence command examines the higher-order three bits in the type of service (ToS) byte of the IP header. Up to eight precedence values can be matched in one match statement. For example, match precedence ipv4 0 1 2 3 4 5 6 7 returns matches for IP precedence values of 0, 1, 2, 3, 4, 5, 6, and 7. Only one of the eight values is needed to yield a match (OR operation).
The precedence values are used as a matching criterion only. The value has no mathematical significance. For instance, the precedence value 2 is not greater than 1. The value simply indicates that a packet marked with the precedence value of 2 is different than a packet marked with the precedence value of 1. The treatment of these different packets is defined by the user through the setting of QoS policies in policy map class configuration mode.
The following table lists the IP precedence value number and associated name in descending order of importance.
Task ID
Examples
The following example shows how to configure the service policy called policy1 and attach service policy policy1 to an interface. In this example, class map ipprec5 evaluates all packets entering GigabitEthernet interface 0/1/0/9 for a precedence value of 5. If the incoming packet has been marked with the precedence value of 5, the packet is queued to the class queue with the bandwidth setting 300 kbps.
RP/0/RP0/CPU0:router# configure RP/0/RP0/CPU0:router(config)# class-map ipprec5 RP/0/RP0/CPU0:router(config-cmap)# match precedence ipv4 5 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class ipprec5 RP/0/RP0/CPU0:router(config-pmap-c)# bandwidth 300 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface gigabitethernet 0/1/0/9 RP/0/RP0/CPU0:router(config-if)# service-policy input policy1Related Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Sets the precedence value in the IP header.
Displays policy configuration information for all classes configured for all service policies on the specified interface.
match protocol
To identify a specific protocol as the match criterion for a class map, use the match protocol command in class map configuration mode. To remove protocol-based match criteria from a class map, use the no form of this command.
match [not] protocol protocol-value [ protocol-value1 . .. protocol-value7 ]
no match [not] protocol protocol-value [ protocol-value1 . .. protocol-value7 ]
Syntax Description
not
(Optional) Negates the specified match result.
protocol-value
A protocol identifier. A single value for protocol-value (any combination of numbers and names) can be matched in one match statement.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.3.0
The not keyword was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Definitions of traffic classes are based on match criteria, including protocols, access control lists (ACLs), input interfaces, QoS labels, and experimental (EXP) field values. Packets satisfying the match criteria for a class constitute the traffic for that class.
The match protocol command specifies the name of a protocol to be used as the match criteria against which packets are checked to determine if they belong to the class specified by the class map. Available protocol names are listed in the table that follows.
The protocol-value argument supports a range of protocol numbers. After you identify the class, you may use the match protocol command to configure its match criteria.
Table 3 Protocol Names and Descriptions Name
Description
ahp
Authentication Header Protocol
eigrp
Cisco Enhanced Interior Gateway Routing Protocol
esp
Encapsulation Security Payload
gre
Cisco Generic Routing Encapsulation Tunneling
icmp
Internet Control Message Protocol
igmp
Internet Gateway Message Protocol
igrp
Cisco IGRP Routing protocol
ipinip
IP in IP tunneling
ipv4
Any IPv4 protocol
ipv6
Any IPv6 protocol
mpls
Any MPLS packet
nos
KA9Q NOS Compatible IP over IP Tunneling
ospf
Open Shortest Path First, Routing Protocol
pcp
Payload Compression Protocol
pim
Protocol Independent Multicast
sctp
Stream Control Transmission Protocol
tcp
Transport Control Protocol
udp
User Datagram Protocol
Task ID
Examples
In the following example, all TCP packets belong to class class1:
RP/0/RP0/CPU0:router(config)# class class1 RP/0/RP0/CPU0:router(config-cmap)# match protocol tcpRelated Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Identifies a specified access control list (ACL) number as the match criteria for a class map.
Identifies specific three-bit experimental (EXP) field values in the topmost Multiprotocol Label Switching (MPLS) label as match criteria for a class map.
Identifies specific quality-of-service (QoS) group values as match criteria in a class map.
match qos-group
To identify specific quality-of-service (QoS) group values as match criteria in a class map, use the match qos-group command in class map configuration mode. To remove a specific QoS group value from the matching criteria for a class map, use the no form of this command.
Syntax Description
not
(Optional) Negates the specified match result.
qos-group-value
QoS group value identifier that specifies the exact value from 0 to 31 or a range of values from 0 to 31. Up to eight values can be entered in one match statement.
Note The router supports up to eight values or ranges on a single match statement, and up to 32 values or ranges specified on up to eight match statements.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.3.0
The not keyword was added.
Release 3.4.0
The qos-group-value argument was deleted from the no match command.
Release 3.7.0
Up to eight values or ranges on a single match statement, and up to 32 values or ranges specified on up to eight match statements for qos-group-value , were supported.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The match qos-group command sets the match criteria for examining QoS groups marked on the packet. Up to eight QoS group values can be matched in one match statement. For example, match qos-group 4 9 11 15 16 21 30 31 returns matches for QoS group values of 4, 9, 11, 15, 16, 21, 30, and 31. Only one of the eight values is needed to yield a match (OR operation).
The match qos-group command is used on the ingress match to support QoS Policy Propagation using BGP (QPPB). To use this command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. If you specify more than one match qos-group command in a class map, the subsequent match statements are added to the first match qos-group command.
The QoS group value is used as a matching criterion only. The value has no mathematical significance. For instance, the QoS group value 2 is not greater than 1. The value simply indicates that a packet marked with the QoS group value of 2 should be treated differently than a packet marked with a QoS group value of 1. The treatment of these different packets is defined using the service-policy command in policy map class configuration mode.
The QoS group setting is limited in scope to the local router. Typically, the QoS group is set on the local router and is used in conjunction with WRED or MDRR to give differing levels of service based on the group identifier.
Task ID
Examples
The following example shows a service policy called policy1 attached to an interface. In this example, class map qosgroup5 will evaluate all packets leaving GigabitEthernet 0/1/0/9 for a QoS group value of 5. If the packet has been marked with the QoS group value of 5, the packet is queued to the class queue with the bandwidth setting 300 kbps.
RP/0/RP0/CPU0:router(config)# class-map qosgroup5 RP/0/RP0/CPU0:router(config-cmap)# match qos-group 5 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class qosgroup5 RP/0/RP0/CPU0:router(config-pmap-c)# bandwidth 300 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface gigabitethernet 0/1/0/9 RP/0/RP0/CPU0:router(config-if)# service-policy output policy1Related Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Sets the discard class and Quality of Service (QoS) group identifiers on IP Version 4 (IPv4) or Multiprotocol Label Switching (MPLS) packets.
Sets the quality of service (QoS) group identifiers on packets.
match source-address
To identify a specific source MAC address as match criterion in a class map, use the match source-address command in class map configuration mode. To remove a specific source MAC address from the matching criteria for a class map, use the no form of this command.
Syntax Description
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The match source-address command specifies a source address that is used as the match criterion against which packets are checked to determine if they belong to the class specified by the class map.
To use the match source-address command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. If you specify more than one match source-address command in a class map, only the last command entered applies.
This command is supported on an input service policy only.
Layer 2 match criteria on a Layer 3 target, or Layer 3 match criteria on a Layer 2 target is not allowed.
The match source-address command is supported on egress Layer 2 interfaces, Layer 2 subinterfaces, and Layer 3 physical interfaces. Layer 3 physical interfaces are supported, because it is possible for a Layer 3 interface to have underlying Layer 2 subinterfaces.
The match source-address command is allowed on a policy map that is attached to an Ethernet interface. The command is invalid on a policy that is attached to a Packet-over-SONET/SDH (POS) interface or a routed VLAN subinterface.
The match 48-bit MAC address is specified in xxxx.xxxx.xxxx format on L2VPN PE interfaces.
Task ID
Examples
The following example shows how to match a source MAC address:
RP/0/RP0/CPU0:router(config)# class-map match-any A RP/0/RP0/CPU0:router(config-cmap)# match source-address mac 0003.f0d0.2356match vlan
To identify selected VLAN IDs as the match criteria for a class map, use the match vlan command in class map configuration mode. To remove VLAN ID match criteria from a class map, use the no form of this command.
match vlan [ inner ] vlanid [ vlanid1 ... vlanid7 ]
no match vlan [ inner ] vlanid [ vlanid1 ... vlanid7 ]
Syntax Description
inner
(Optional) Specifies the inner VLAN for the match in, for example, a QinQ configuration.
vlanid
VLAN identifier that specifies the exact value from 1 to 4094 or a range of values from 1 to 4094. Up to eight values can be specified in a match statement.
Note The router supports up to eight values or ranges on a single match statement, and up to 300 values or ranges specified on up to eight match statements.
Command History
Release
Modification
Release 3.3.0
This command was introduced.
Release 3.4.0
Changed the range value from 0 to 8096. to 1 to 4094.
Release 3.7.0
Up to eight values or ranges on a single match statement, and up to 300 values or ranges specified on up to eight match statements for vlanid, were supported.
Release 4.0.0
The inner keyword was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The match vlan command specifies a VLAN ID that is used as the match criteria against which packets are checked to determine if they belong to the class specified by the class map.
To use the match vlan command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. If you specify more than one match vlan command in a class map, up to eight values of the subsequent match statements are added to the first match vlan command, exceeding which, the statement is rejected.
The match vlan inner command is supported on:
The match vlan inner command is not supported on Layer 3 subinterfaces or on bundles.
Task ID
Examples
The following example shows how to configure the service policy called policy1 and attach service policy policy1 to an interface. In this example, class map vlan1 evaluates all packets entering Gigabit Ethernet interface 0/1/0/0 for VLAN IDs of 1234, 1698, and all the VLAN IDs in the range 3000 to 4000. If the incoming packet has been marked with any of these VLAN IDs, the packet is queued to the class queue with the bandwidth setting of 300 kbps.
RP/0/RP0/CPU0:router(config)# class-map vlan1 RP/0/RP0/CPU0:router(config-cmap)# match vlan 1234 1698 3000-4000 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class vlan1 RP/0/RP0/CPU0:router(config-pmap-c)# bandwidth 300 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface gigabitethernet 0/1/0/0 RP/0/RP0/CPU0:router(config-if)# service-policy input policy1In this example, all traffic with an outer VLAN ID of 1 enters the Q-in-Any attachment circuit (AC), but the inner VLAN ID can be any value. However, only the traffic with an inner VLAN ID of 1, 2, or 3 matches class iv.
RP/0/RP0/CPU0:router(config)# policy-map p1 RP/0/RP0/CPU0:router(config-pmap)# class iv RP/0/RP0/CPU0:router(config-pmap-c)# shape average percent 30 RP/0/RP0/CPU0:router(config-pmap-c)# set qos-group 1 RP/0/RP0/CPU0:router(config-pmap-c)# class class-default RP/0/RP0/CPU0:router(config-pmap-c)# end-policy-map RP/0/RP0/CPU0:router(config)# RP/0/RP0/CPU0:router(config)# class-map match-any iv RP/0/RP0/CPU0:router(config-cmap)# match vlan inner 1 2 3 RP/0/RP0/CPU0:router(config-cmap)# end-class-map RP/0/RP0/CPU0:router(config)# interface gigabitethernet 0/6/5/0.2 l2transport RP/0/RP0/CPU0:router(config-subif)# dot1q vlan 1 any RP/0/RP0/CPU0:router(config-subif)# service-policy input p1police rate
To configure traffic policing and enter policy map police configuration mode, use the police rate command in policy map class configuration mode. To remove traffic policing from the configuration, use the no form of this command.
police rate { value [units] | percent percentage } [ burst burst-size [burst-units] ] [ peak-rate { value [units] | percent percentage } ] [ peak-burst peak-burst [burst-units] ]
no police rate { value [units] | percent percentage } [ burst burst-size [burst-units] ] [ peak-rate { value [units] | percent percentage } ] [ peak-burst peak-burst [burst-units] ]
Syntax Description
value
Committed information rate (CIR). Range is from 1 to 4294967295.
units
(Optional) Unit of measurement for the CIR. Values can be:
percent percentage
Specifies the police rate as a percentage of the CIR. Range is from 1 to 100. See the Usage Guidelines for information on how to use this keyword.
burst burst-size
(Optional) Specifies the burst size (in the specified burst-units ). Range is from 1 to 4294967295.
burst-units
(Optional) Unit of measurement for the burst values. Values can be:
peak-rate value
(Optional) Specifies the Peak Information Rate (PIR) in the specified units . Range is from 1 to 4294967295.
peak-burst peak-burst
(Optional) Specifies the peak burst size in the specified burst-units . Range is from 1 to 4294967295.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.3.0
The command name was changed from police cir to police rate .
The keywords bc , be , and pir were changed to burst , peak-burst , and peak-rate , respectively.
The units argument was added.
The default units for the rate, peak rate, and burst rate changed from kbps to bps.
The keywords mpls , experimental , imposition were added to the action argument.
Release 3.4.0
This command now enters policy-map police configuration mode.
The conform-action , exceed-action , and violate-action keywords changed into commands within the policy-map police configuration mode.
The cos and transmit keywords were added to the action argument.
Release 3.6.0
The packets burst value option was removed.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The traffic policing feature works with a two-token bucket algorithm.
The police rate can set the DSCP, the precedence, or the discard class for IP packets, and experimental and discard-class values for MPLS packets.
For bundled interfaces, traffic policing can be configured only as a percentage.
If no violate-action is specified, a default action of drop is applied, thereby activating two token buckets.
Policing can be applied in both ingress and egress directions.
The parameters set by the action keywords are rounded by the hardware. To check the actual values programmed in the hardware use the show qos interface command.
For police rate commands, interpret the percent keyword in this way:
For a one-level policy, the percent keyword specifies the CIR as a percentage of the link rate. For example, the command police rate percent 35 configures the CIR as 35% of the link rate.
For a two-level policy, in the parent policy, the percent keyword specifies the parent CIR as a percentage of the link rate. In the child policy, the percent keyword specifies the child CIR as a percentage of the maximum policing or shaping rate of the parent. If traffic policing or shaping is not configured on the parent, the parent inherits the interface policing or shaping rate.
Note
Configured values take into account the Layer 2 encapsulation applied to traffic. This applies to both ingress and egress policing. For POS/SDH transmission, the encapsulation is considered to be 4 bytes. For Ethernet, the encapsulation is 14 bytes; whereas for 802.1Q, the encapsulation is 18 bytes.
The policer uses an incremental step size of 256 kbps. The configured value is rounded down to the nearest 256 kbps. The value shown in the output of the running-configuration shows the configured value as entered by the user.
If the burst value is not specifically configured, it is automatically set to equate to 250 msec-worth of the CIR value. For example, if a CIR value of 1000000 kbps is entered, the burst value is calculated to be 32000000 bytes. However, the maximum burst value supported is 2,097,120 bytes.
Hierarchical policing is also supported. In such a configuration, both parent and child policies have class-maps containing policing statements, as in this example:
! policy-map child class gold police rate percent 50 conform-action set precedence immediate exceed-action drop ! ! policy-map parent class match_all police rate 10000 kbps burst 15000 exceed-action drop service-policy child !Task ID
Examples
In this example for MPLS, traffic policing is configured with the average rate at 250 kbps, and the normal burst size at 50 bytes for all packets leaving GigabitEthernet interface 0/1/0/9:
RP/0/RP0/CPU0:router(config)# class-map class1 RP/0/RP0/CPU0:router(config-cmap)# match mpls experimental topmost 0 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# police rate 250 kbps burst 50 RP/0/RP0/CPU0:router(config-pmap-c-police)#conform-action set mpls experimental topmost 4 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface gigabitethernet 0/1/0/9 RP/0/RP0/CPU0:router(config-if) service-policy input policy1Related Commands
Command
Description
Prevents the parent policer from dropping any ingress traffic that conforms to the maximum rate specified in the child policer.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Displays policy configuration information for all classes configured for all service policies on the specified interface.
policy-map
To create or modify a policy map that can be attached to one or more interfaces to specify a service policy, use the policy-map command in global configuration mode. To delete a policy map, use the no form of this command.
Syntax Description
type qos
(Optional) Specifies a quality-of-service (QoS) policy map.
policy-name
Name of the policy map.
Command Default
A policy map does not exist until one is configured. Because a policy map is applied to an interface, no restrictions on the flow of data are applied to any interface until a policy map is created.
Type is QoS when not specified.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.3.0
Maximum number of classes permitted per policy map was increased to 32.
Release 3.6.0
The type qos keywords were added.
Maximum number of classes permitted per policy map was increased to 512.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Use the policy-map command to specify the name of the policy map to be created, added to, or modified before you can configure policies for classes whose match criteria are defined in a class map. Entering the policy-map command enables policy map configuration mode in which you can configure or modify the class policies for that policy map.
You can configure class policies in a policy map only if the classes have match criteria defined for them. Use the class-map and match commands to configure the match criteria for a class. Because you can configure a maximum of 512 classes in one policy map, no policy map can contain more than 512 class policies. The maximum number of 512 classes per policy includes the implicit default class and its child policies.
A single policy map can be attached to multiple interfaces concurrently. The maximum number of policy maps supported is 1000.
Task ID
Examples
The following examples show how to create a policy map called policy1 and configures two class policies included in that policy map. The policy map is defined to contain policy specification for class1 and the default class (called class-default) to which packets that do not satisfy configured match criteria are directed. Class1 specifies policy for traffic that matches access control list 136.
RP/0/RP0/CPU0:router(config)# class-map class1 RP/0/RP0/CPU0:router(config-cmap)# match access-group ipv4 136 RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# police cir 250 RP/0/RP0/CPU0:router(config-pmap-c)# set precedence 3 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# class class-default RP/0/RP0/CPU0:router(config-pmap-c)# queue-limit bytes 1000000priority (QoS)
To assign a priority to a class of traffic belonging to a policy map, use the priority command in policy map class configuration mode. To remove a previously specified priority for a class, use the no form of this command.
Syntax Description
level priority-level
(Optional) Sets the class priority level value. Values are 1 or 2. Default level is 1. Level 1 traffic has higher priority.
The level keyword is not supported on ATM subinterfaces. The default is priority level 1.
Command Default
If a priority action is not configured in a class, traffic in that class is not serviced with strict priority— it is serviced after priority classes are serviced.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 4.0.0
The level keyword was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The priority command configures low-latency queueing (LLQ), providing strict priority queueing (PQ). Strict PQ allows delay-sensitive data such as voice to be dequeued and sent before packets in other queues are dequeued. When a class is marked as high priority using the priority command, we recommend that you configure a policer to limit the priority traffic. This policer ensures that the priority traffic does not starve all other traffic on the line card, which protects low-priority traffic from starvation. Use the police rate to explicitly configure the policer.
The priority command sets up classes based on a variety of criteria (not just User Datagram Protocol [UDP] ports) and assigns a priority to them.
The bandwidth and priority commands cannot be used in the same class, within the same policy map. These commands can be used together in the same policy map .
Within a policy map, you can give one or more classes priority status. When multiple classes within a single policy map are configured as priority classes, all traffic from these classes at same priority level is queued to the same priority queue. There is one priority queue per level in a group.
On the Cisco CRS Series Modular Services Card 40G (CRS-MSC-40G), a priority action can be configured with or without a police action in the same class.
On the Cisco CRS Series Modular Services Card 140G (CRS-MSC-140G), a police action must be configured in the same class as the priority action. A class configuration that includes a priority action but no police action is not valid. Such a configuration is rejected.
To use existing CRS-MSC-40G QoS configurations on the CRS-MSC-140G, add a police action to all classes that have a priority action.
Priority assignment at the group level for an egress interface policy is not supported.
Note
The requirement to configure a policer does not apply to fabric QoS polices, because police actions in fabric QoS policies are not supported.
Task ID
Examples
The following example shows how to configure priority queuing for the policy map named policy1:
RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# priority level 1 RP/0/RP0/CPU0:routerpolice rate percent 20Related Commands
Command
Description
Specifies the minimum bandwidth allocated to a class belonging to a policy map.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Displays policy configuration information for all classes configured for all service policies on the specified interface.
queue-limit
To specify or modify the maximum number of packets the queue can hold for a class policy configured in a policy map, use the queue-limit command in policy map class configuration mode. To remove the queue packet limit from a class, use the no form of this command.
Syntax Description
value
Maximum threshold for tail drop in bytes. Range is from 1 to 4294967295.
unit
(Optional) Units for the queue limit value. Values can be:
- bytes —bytes
- cells —cells (ATM subinterfaces only)
- ms —milliseconds
- packets —packets (default)
- us —microseconds
Note When the specified units is packets, packets are assumed to be 256 bytes in size.
Command Default
100 milliseconds: maximum threshold for tail drop
10 milliseconds: maximum threshold for high-priority queues
Maximum threshold units are in packets.
Note
The default queue limit is set to bytes of 100 ms of queue bandwidth. The following formula is used to calculate the default queue limit in bytes: bytes = (100 ms * queue bandwidth kbps) / 8.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.3.0
Command name changed from queue-limit bytes to queue-limit .
Command order modified to place value before units.
The units argument was added.
Default units was changed from bytes to packets.
Release 3.6.0
The value range of 1 to 1000000000 has changed to 1 to 4294967295.
The default threshold for tail drop changed from 200 milliseconds to 100 milliseconds.
Release 3.9.2
The cells unit was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Packets satisfying the match criteria for a class accumulate in the queue reserved for the class until they are serviced by the scheduling mechanism. The queue-limit command defines the maximum threshold for a class. When that threshold is reached, enqueued packets to the class queue result in tail drop (packet drop). Tail drop is a congestion avoidance technique that drops packets when an output queue is full, until congestion is eliminated.
Use the show qos interface command to display the queue limit and other policer values.
The following default values are used when queue-limit is not configured in the class:
- If QoS is not configured:
- If QoS is configured and Weighted Random Early Detection (WRED) is not configured:
- If QoS is configured and WRED is configured:
Queue limit is two times the WRED maximum threshold. The maximum threshold can be an explicitly configured value or an implicit 100 ms.
If more than one WRED profile is configured in the class, the maximum threshold is the maximum for all profiles.
When the queue-limit is configured in time units, the guaranteed service rate is used to compute the queue limit.
When the queue limit is configured in time units, the guaranteed service rate of the class is used to calculate the queue limit in bytes. For example: time_unit in ms * guaranteed_service_rate in kbps / 8 is equivalent to queue-limit in bytes.
The following restrictions apply to queue limits:
The guaranteed service rate is defined as the service rate of the queue when all queues are backlogged and derived as:
minimum_bandwidth + (bandwidth_remaining_percent * unallocated_bandwidth)
The following example shows the guaranteed service rate calculation:
policy-map sample_policy class c1 bandwidth percent 30 bandwidth remaining percent 40 class c2 bandwidth percent 20 class class-defaultguaranteed service rate of c1 = 30 percent LR + (40 percent * 50 percent * LR)
guaranteed service rate of c2 = 20 percent LR + (30 percent * 50 percent * LR)
guaranteed service rate of class-default = 30 percent * 50 percent * LR
Task ID
Examples
The following example shows how to set the queue limit for a class to 1000000 packets for policy map policy1:
RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# queue-limit 1000000random-detect
To enable random early detection (RED), use the random-detect command in policy map class configuration mode. To remove RED, use the no form of this command.
random-detect { cos value | default | discard-class value | dscp value | exp value | precedence value | min-threshold [units] max-threshold [units] }
no random-detect [ cos value | default | discard-class value | dscp value | exp value | precedence value | min-threshold [units] max-threshold [units] ]
Syntax Description
cos value
COS-based WRED.
default
Enables RED with default minimum and maximum thresholds.
discard-class value
Discard-class based WRED.
dscp value
DSCP-based WRED.
exp value
MPLS Experimental-based WRED.
precedence value
Precedence-based WRED. Values can be:
min-threshold
Minimum threshold in number of packets. The value range of this argument is from 0 to 1073741823 in bytes.
max-threshold
Maximum threshold the units specified. The value range of this argument is from the value of the min-threshold argument or 23, whichever is larger, to 1073741823. When the average queue length exceeds the maximum threshold, RED drops all packets with the specified discard class value.
units
(Optional) Units for the threshold values. Values can be:
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.2
Range of values for the thresholds changed from 512 to 1073741823 to 0 to 1073741823.
Release 3.3.0
The units argument was added to allow specifying the units of the thresholds.
Release 3.9.0
For the random-detect command to take effect, there is no longer a requirement to configure the shape average , bandwidth (QoS) , or bandwidth remaining commands in the user-defined policy map class.
Release 3.9.2
The cells unit was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The RED congestion avoidance technique takes advantage of the congestion control mechanism of TCP. By randomly dropping packets before periods of high congestion, RED tells the packet source to decrease its transmission rate. Assuming the packet source is using TCP, it decreases its transmission rate until all the packets reach their destination, indicating that the congestion is cleared. You can use RED as a way to cause TCP to slow transmission of packets. TCP not only pauses, but it also restarts quickly and adapts its transmission rate to the rate that the network can support.
RED distributes losses in time and maintains normally low queue depth while absorbing traffic bursts. When enabled on an interface, RED begins dropping packets when congestion occurs at a rate you select during configuration.
When time units are used, the guaranteed service rate is used to compute thresholds.
The default values for RED are calculated as follows:
default min_threshold = 0.03 * B
default max_threshold = 0.1 * B
where B is the bandwidth for the queue. When all the queues are congested, the bandwidth for the queue is equal to the guaranteed service rate of the queue.
The mark probability is always set to 1.
When the value of the units argument is packets, packets are assumed to be 256 bytes in size.
The following restrictions apply to Weighted Random Early Detection (WRED):
- For thresholds in time units, the guaranteed service rate is used to calculate the thresholds in bytes.
- Default RED minimum threshold—30 ms at the guaranteed service rate.
- Default RED maximum threshold—100 ms as the guaranteed service rate.
For bundles, queue limit and WRED thresholds are supported in time units only.
Note
RED is enabled when you configure any of the supported random-detect commands.
Task ID
Examples
The following example shows how to enable RED using a minimum threshold value of 1000000 and a maximum threshold value of 2000000:
RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# random-detect 1000000 2000000random-detect cos
To configure Weighted Random Early Detection (WRED) thresholds for packets with a specific class of service (CoS) value, use the random-detect cos command in policy map class configuration mode. To return the thresholds to the default for the CoS, use the no form of this command.
random-detect cos cos-value min-threshold [units] max-threshold [units]
no random-detect cos cos-value min-threshold [units] max-threshold [units]
Syntax Description
cos-value
CoS value. Valid values are from 0 to 7. Up to eight values can be entered separated by commas.
min-threshold
Minimum threshold in number of packets. The value range of this argument is from 0 to 1073741823 in bytes.
max-threshold
Maximum threshold in number of packets. The value range of this argument is from the value of the min-threshold argument to 1073741823.
units
(Optional) Units for the threshold values. Values can be:
Command Default
Default unit for max-threshold and min-threshold is packets.
min-threshold: 30 ms
max-threshold: 100 ms
Command History
Release
Modification
Release 3.4.0
This command was introduced.
Release 3.6.0
The cos-value argument can accept up to eight values separated by commas.
The default min-threshold was set to 30 ms and the default max-threshold was set to 100 ms.
Release 3.9.0
For the random-detect cos command to take effect, there is no longer a requirement to configure the shape average, bandwidth (QoS), or bandwidth remaining commands in the user-defined policy map class.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The random-detect cos command is allowed in a service policy attached to a Layer 2 VPN attachment circuit or physical Ethernet interface only. (The command in invalid in a policy attached to a Layer 3 interface.)
Note
Only time-based units are allowed on bundle targets.
When the value of the units argument is packets, packets are assumed to be 256 bytes in size.
Task ID
Examples
The following example shows how to configure CoS:
RP/0/RP0/CPU0:router(config)# policy-map map1 RP/0/RP0/CPU0:router(config-pmap)# class c RP/0/RP0/CPU0:router(config-pmap-c)# random-detect cos 3 1000 bytes 2000 bytesrandom-detect discard-class
To configure the Weighted Random Early Detection (WRED) thresholds for packets with a specific discard class value, use the random-detect discard-class command in policy map class configuration mode. To return the thresholds to the default for the discard class, use the no form of this command.
random-detect discard-class discard-value min-threshold [units] max-threshold [units]
no random-detect discard-class discard-value min-threshold [units] max-threshold [units]
Syntax Description
discard-value
Discard class value. Valid values are from 0 to 7. Up to eight values can be entered separated by commas.
min-threshold
Minimum threshold in number of packets. The value range of this argument is from 0 to 1073741823 in bytes.
max-threshold
Maximum threshold in number of packets. The value range of this argument is from the value of the min-threshold argument to 1073741823. When the average queue length exceeds the maximum threshold, WRED drops all packets with the specified discard class value.
units
(Optional) Units for the threshold values. Values can be:
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.2
Range of values for the thresholds changed from 512 to 1073741823 to 0 to 1073741823.
Release 3.4.0
The units argument was added to allow specifying the units of the thresholds.
The discard-value min-threshold max-threshold arguments were deleted from the no random-detect discard-class command.
Release 3.6.0
The discard-value argument can accept up to eight values separated by commas.
Release 3.9.0
For the random-detect discard-class command to take effect, there is no longer a requirement to configure the shape average, bandwidth (QoS), or bandwidth remaining commands in the user-defined policy map class.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
WRED is a congestion avoidance mechanism that slows traffic by randomly dropping packets when congestion exists. WRED is most useful with protocols like TCP that respond to dropped packets by decreasing the transmission rate.
When you configure the random-detect discard-class command on an interface, packets are given preferential treatment based on the discard class of the packet.
When the value of the units argument is packets, packets are assumed to be 256 bytes in size.
Task ID
Examples
The following example shows how to set the discard class values for discard class 3 to a minimum byte threshold of 1000000 and a maximum byte threshold of 2000000:
RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# random-detect discard-class 3 1000000 2000000Related Commands
Command
Description
Specifies the name of the class whose policy you want to create or change.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Configures the Weighted Random Early Detection (WRED) thresholds for packets with a particular IP precedence.
Displays policy configuration information for all classes configured for all service policies on the specified interface.
random-detect dscp
To configure the Weighted Random Early Detection (WRED) thresholds for packets with a specific differentiated services code point (DSCP) value, use the random-detect dscp command in policy map class configuration mode. To return the thresholds to the default for the DSCP value, use the no form of this command.
random-detect dscp dscp-value min-threshold [units] max-threshold [units]
no random-detect dscp dscp-value min-threshold [units] max-threshold [units]
Syntax Description
dscp-value
DSCP value. Up to eight dscp-values (any combination of numbers, ranges, and reserved keywords) can be used separated by commas. The following arguments are supported:
- Number from 0 to 63 that sets the DSCP value.
- Range of DSCP values. Range is from 0 to 63.
- Reserved keywords can be specified instead of numeric values. Table 1 describes the reserved keywords.
Note The range argument is not supported.
min-threshold
Minimum threshold in number of packets. The value range of this argument is from 0 to 1073741823. When the average queue length reaches the minimum threshold, WRED randomly drops some packets with the specified DSCP value.
max-threshold
Maximum threshold in number of packets. The value range of this argument is from the value of the min-threshold argument to 1073741823. When the average queue length exceeds the maximum threshold, WRED drops all packets with the specified DSCP value.
units
(Optional) Units for the threshold values. Values can be:
Command Default
Match packets with default DSCP (000000).
Default unit for max-threshold and min-threshold is packets.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.2
Range of values for the thresholds changed from 512 to 1073741823 to 0 to 1073741823.
Release 3.4.0
The units argument was added to allow specifying the units of the thresholds.
The dscp-value min-threshold max-threshold arguments were deleted from the no random-detect dscp command.
Release 3.6.0
Up to eight dscp-values are supported.
Release 3.9.0
For the random-detect dscp command to take effect, there is no longer a requirement to configure the shape average, bandwidth (QoS), or bandwidth remaining commands in the user-defined policy map class.
Release 3.6.0
Up to eight dscp-values are supported.
The cells unit was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
WRED is a congestion avoidance mechanism that slows traffic by randomly dropping packets when congestion exists. WRED is most useful with protocols like TCP that respond to dropped packets by decreasing the transmission rate.
Reserved keywords can be specified instead of numeric values. See Table 1 for the list of keywords.
When the value of the units argument is packets, packets are assumed to be 256 bytes in size.
Task ID
Examples
The following example shows that for packets with DSCP AF11, the WRED minimum threshold is 1,000,000 bytes and the maximum threshold is 2,000,000 bytes:
RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# random-detect dscp AF11 1000000 2000000Related Commands
Command
Description
Specifies the name of the class whose policy you want to create or change.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Configures the Weighted Random Early Detection (WRED) thresholds for packets with a particular IP precedence.
Displays policy configuration information for all classes configured for all service policies on the specified interface.
random-detect exp
To configure the Weighted Random Early Detection (WRED) thresholds for packets marked with a specific MPLS experimental (EXP) bit value, use the random-detect exp command in policy map class configuration mode. To return the value to the default, use the no form of this command.
random-detect exp exp-value min-threshold [units] max-threshold [units]
no random-detect exp exp-value min-threshold [units] max-threshold [units]
Syntax Description
exp-value
MPLS experimental value. Valid values are from 0 to 7. Up to eight values can be entered separated by commas.
min-threshold
Minimum threshold in number of packets. The value range of this argument is from 0 to 1073741823 in bytes.
max-threshold
Maximum threshold in units specified. The value range of this argument is from the value of the min-threshold argument to 1073741823. When the average queue length exceeds the maximum threshold, WRED drops all packets with the specified experimental value.
units
(Optional) Units for the threshold values. Values can be:
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.2
Range of values for the thresholds was changed from 512 to 1073741823 to 0 to 1073741823.
Release 3.3.0
The units argument was added to allow specifying the units of the thresholds.
Release 3.4.0
The exp-value min-threshold max-threshold arguments were deleted form the no random-detect exp command.
Release 3.6.0
The exp-value argument can accept up to eight values separated by commas.
Release 3.9.0
For the random-detect exp command to take effect, there is no longer a requirement to configure the shape average, bandwidth (QoS), or bandwidth remaining commands in the user-defined policy map class.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
WRED is a congestion avoidance mechanism that slows traffic by randomly dropping packets when congestion exists. WRED is most useful with protocols like TCP that respond to dropped packets by decreasing the transmission rate.
When the value of the units argument is packets, packets are assumed to be 256 bytes in size.
Task ID
Examples
The following example shows that for Multiprotocol Label Switching (MPLS) packets with an EXP field value of 4, the WRED minimum threshold is 1,000,000 bytes and the maximum threshold is 2,000,000 bytes:
RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# random-detect exp 4 1000000 20000Related Commands
Command
Description
Specifies the name of the class whose policy you want to create or change.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Configures the Weighted Random Early Detection (WRED) thresholds for packets with a specific differentiated services code point (DSCP) value.
Configures the Weighted Random Early Detection (WRED) thresholds for packets with a particular IP precedence.
Displays policy configuration information for all classes configured for all service policies on the specified interface.
random-detect precedence
To configure the Weighted Random Early Detection (WRED) thresholds for packets with a particular IP precedence, use the random-detect precedence command in policy map class configuration mode. To return the thresholds to the default for the precedence, use the no form of this command.
random-detect precedence precedence-value min-threshold [units] max-threshold [units]
no random-detect precedence precedence-value min-threshold [units] max-threshold [units]
Syntax Description
precedence-value
An IP precedence value identifier that specifies the exact value. Range is from 0 to 7. Reserved keywords can be specified instead of numeric values. Table 1 describes the reserved keywords. Up to eight values or reserved keywords can be entered separated by commas.
min-threshold
Minimum threshold in number of packets. Range is from 0 to 1073741823 in bytes.
max-threshold
Maximum threshold in the units specified. Range is from the value of the min-threshold argument to 1073741823. When the average queue length exceeds the maximum threshold, WRED drops all packets with the specified precedence value.
units
(Optional) Units for the threshold values. Values can be:
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.2
Range of values for the thresholds changed from 512 to 1073741823 to 0 to 1073741823.
Release 3.3.0
The units argument was added to allow specifying the units of the thresholds.
Release 3.4.0
The precedence-value min-threshold max-threshold arguments were deleted from the no random-detect precedence command.
Release 3.6.0
The precedence-value argument can accept up to eight values or reserved keywords separated by commas.
Release 3.9.0
For the random-detect precedence command to take effect, there is no longer a requirement to configure the shape average , bandwidth (QoS) , or bandwidth remaining commands in the user-defined policy map class.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
WRED is a congestion avoidance mechanism that slows traffic by randomly dropping packets when congestion exists. WRED is most useful with protocols like TCP that respond to dropped packets by decreasing the transmission rate.
When you configure the random-detect command on an interface, packets are given preferential treatment based on the IP precedence of the packet. Use the random-detect precedence command to adjust the treatment for different precedences.
When the value of the units argument is packets, packets are assumed to be 256 bytes in size.
Task ID
Examples
The following example shows that for packets with precedence 3, the WRED minimum threshold is 1,000,000 bytes and maximum threshold is 2,000,000 bytes:
RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)#random-detect precedence 3 1000000 2000000Related Commands
Command
Description
Specifies the minimum bandwidth allocated to a class belonging to a policy map.
Specifies the name of the class whose policy you want to create or change.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Configures the Weighted Random Early Detection (WRED) thresholds for packets with a specific differentiated services code point (DSCP) value.
Displays policy configuration information for all classes configured for all service policies on the specified interface.
service-policy (interface)
To attach a policy map to an input interface or output interface to be used as the service policy for that interface, use the service-policy command in the appropriate configuration mode. To remove a service policy from an input or output interface, use the no form of the command.
Syntax Description
input
Attaches the specified policy map to the input interface.
output
Attaches the specified policy map to the output interface.
policy-map
Name of a service policy map (created using the policy-map command) to be attached.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.6.0
The command was supported in Layer 2 transport configuration mode.
Release 3.6.0
The command was supported in Layer 2 transport configuration mode.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
You can attach a single policy map to one or more interfaces to specify the service policy for those interfaces. The class policies composing the policy map are then applied to packets that satisfy the class map match criteria for the class. To apply a new policy to an interface, you must remove the previous policy. A new policy cannot replace an existing policy.
Task ID
Examples
The following example shows policy map policy1 applied to Packet-over-SONET/SDH (POS) interface 0/2/0/0:
RP/0/RP0/CPU0:router(config)# class-map class1 RP/0/RP0/CPU0:router(config-cmap)# match precedence ipv4 1 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# set precedence 2 RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface pos 0/2/0/0 RP/0/RP0/CPU0:router(config-if)# service-policy output policy1service-policy (policy map class)
To use a service policy as a QoS policy within a policy map (called a hierarchical service policy), use the service-policy command in policy map class configuration mode. To disable a particular service policy as a QoS policy within a policy map, use the no form of this command.
Syntax Description
type qos
(Optional) Specifies a QoS service policy.
policy-map-name
Name of the predefined policy map to be used as a QoS policy. The name can be a maximum of 40 alphanumeric characters.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.6.0
The type qos keywords were added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The service-policy (policy-map class) command creates hierarchical service policies in policy-map class configuration mode.
This command is different from the service-policy (interface) command used in interface configuration mode.
The child policy is the previously defined service policy that is being associated with the class default of the parent policy-map. The new service policy using the preexisting service policy is the parent policy.
The service-policy (policy-map class) command has the following restrictions:
Task ID
Examples
The following example shows how to create a hierarchical service policy in the service policy called parent:
RP/0/RP0/CPU0:router(config)# policy-map child RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# priority RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# policy-map parent RP/0/RP0/CPU0:router(config-pmap)# class class-default RP/0/RP0/CPU0:router(config-pmap-c)# shape average 10000000 RP/0/RP0/CPU0:router(config-pmap-c)# service-policy childRelated Commands
Command
Description
Specifies the minimum bandwidth allocated to a class belonging to a policy map.
Defines a traffic class and the associated rules that match packets to the class.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Assigns a priority to a class of traffic belonging to a policy map.
Attachs a policy map to an input interface or output interface to be used as the service policy for that interface.
set cos
To set the Layer 2 class of service (CoS) value of an outgoing packet, use the set cos command in policy map class configuration mode. To remove a specific CoS value setting, use the no form of this command.
Syntax Description
inner
(Optional) Specifies the inner CoS in, for example, a QinQ configuration.
cos-value
Specific IEEE 802.1Q CoS value from 0 to 7.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 4.0.0
The inner keyword was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Use the set cos command to mark a packet that is being sent to a switch. Switches can leverage Layer 2 header information, including a CoS value marking.
The set cos command can be used only in service policies that are attached in the output direction of an interface. Packets entering an interface cannot be set with a CoS value.
The set cos inner command is supported on:
- Egress only: conditional and unconditional marking
- Layer 2 main interfaces and subinterfaces
- Layer 3 main interfaces
The set cos inner command is not supported on Layer 3 subinterfaces or on bundles.
Task ID
Examples
In the following example, the policy map called cos-set is created to assign different CoS values for different service classes, and then is attached to the output Gigabit Ethernet VLAN subinterface 0/1/0/9.100.
RP/0/RP0/CPU0:router(config)# policy-map cos-set RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# set cos 1 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# class class2 RP/0/RP0/CPU0:router(config-pmap-c)# set cos 2 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface gigabitethernet 0/1/0/9.100 RP/0/RP0/CPU0:router(config-if)# service-policy output cos-setIn this example, traffic with outer VLAN ID of 3 and inner VLAN ID of 2 exits through the QinQ attachment circuit (AC). If the traffic matches class qg1 or class qg2, it is marked with the inner CoS value specified in class qg1 or class qg2, respectively.
RP/0/RP0/CPU0:router(config)# policy-map p3 RP/0/RP0/CPU0:router(config-pmap)# class qg1 RP/0/RP0/CPU0:router(config-pmap-c)# police rate percent 30 peak-rate percent 50 RP/0/RP0/CPU0:router(config-pmap-c-police)# conform-action set cos inner 1 RP/0/RP0/CPU0:router(config-pmap-c-police)# exceed-action set cos inner 2 RP/0/RP0/CPU0:router(config-pmap-c-police)# violate-action set cos inner 3 RP/0/RP0/CPU0:router(config-pmap-c-police)# RP/0/RP0/CPU0:router(config-pmap-c-police)# class qg2 RP/0/RP0/CPU0:router(config-pmap-c)# set cos inner 4 RP/0/RP0/CPU0:router(config-pmap-c)# RP/0/RP0/CPU0:router(config-pmap-c)# end-policy-map RP/0/RP0/CPU0:router(config)# RP/0/RP0/CPU0:router(config)# class-map match-any qg1 RP/0/RP0/CPU0:router(config-cmap)# match qos-group 1 RP/0/RP0/CPU0:router(config-cmap)# end-class-map RP/0/RP0/CPU0:router(config)# RP/0/RP0/CPU0:router(config)# class-map match-any qg2 RP/0/RP0/CPU0:router(config-cmap)# match qos-group 2 RP/0/RP0/CPU0:router(config-cmap)# end-class-map RP/0/RP0/CPU0:router(config)# RP/0/RP0/CPU0:router(config)# interface gigabitethernet 0/6/5/0.3 l2transport RP/0/RP0/CPU0:router(config-subif)# dot1q vlan 3 2 RP/0/RP0/CPU0:router(config-subif)# service-policy output p3 RP/0/RP0/CPU0:router(config-subif)#Related Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Attachs a policy map to an input interface or output interface to be used as the service policy for that interface.
set discard-class
To set the discard class and Quality of Service (QoS) group identifiers on IP Version 4 (IPv4) or Multiprotocol Label Switching (MPLS) packets, use the set discard-class command in policy map class configuration mode. To leave the discard-class values unchanged, use the no form of this command.
Syntax Description
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The set discard-class command associates a discard class ID with a packet. After the discard class and QoS group IDs are set, other QoS services such as Modified Deficit Round Robin (MDRR) and Weighted Random Early Detection (WRED) can operate on the bit settings.
Discard-class indicates the discard portion of the per hop behavior (PHB). The set discard-class command is typically used in Pipe mode. Discard-class is required when the input PHB marking is used to classify packets on the output interface.
The discard-class values can be used to specify the type of traffic that is dropped when there is congestion.
Note
Marking of the discard class and the QoS group has only local significance on a node.
Task ID
Examples
The following example shows how to set the discard class value to 5 for packets that match the MPLS experimental bits 1:
RP/0/RP0/CPU0:router(config)# class-map cust1 RP/0/RP0/CPU0:router(config-cmap)# match mpls experimental topmost 1 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy2 RP/0/RP0/CPU0:router(config-pmap)# class cust1 RP/0/RP0/CPU0:router(config-pmap-c)# set discard-class 5 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface gigabitethernet 0/1/0/9 RP/0/RP0/CPU0:router(config-if)# service-policy input policy2Related Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Attachs a policy map to an input interface or output interface to be used as the service policy for that interface.
set dscp
To mark a packet by setting the IP differentiated services code point (DSCP) in the type of service (ToS) byte, use the set dscp command in policy-map class configuration mode. To remove a previously set DSCP value, use the no form of this command.
Syntax Description
tunnel
(Optional) Sets the DSCP on the outer IP header. This command is available on Layer 2 (Ethernet only) and Layer 3 interfaces in the ingress direction.
dscp-value
Number from 0 to 63 that sets the DSCP value. Reserved keywords can be specified instead of numeric values. Table 1 describes the reserved keywords.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.8.0
The tunnel keyword is supported for QoS in a Multicast Virtual Private Network (mVPN) enabled network that requires both conditional and unconditional marking of DSCP bits on the tunnel header.
Release 3.9.0
Support for the tunnel keyword on Layer 2 interfaces was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
After the DSCP bit is set, other quality-of-service (QoS) services can then operate on the bit settings.
Conditional marking marks the DSCP values on the tunnel header as a policer action. Unconditional marking marks the DSCP tunnel as a policy action. Both conditional and unconditional markings are supported only in the ingress direction.
The tunnel keyword is available on Layer 2 (Ethernet only) and Layer 3 interfaces in the ingress direction.
The network gives priority (or some type of expedited handling) to marked traffic. Typically, you set the DSCP value at the edge of the network (or administrative domain); data then is queued based on the DSCP value. Modified Deficit Round Robin (MDRR) can speed up handling for high DSCP traffic at congestion points. Weighted Random Early Detection (WRED) ensures that high DSCP traffic has lower loss rates than other traffic during times of congestion.
Reserved keywords can be specified instead of numeric values. Table 1 describes the reserved keywords.
Task ID
Examples
In the following example, the DSCP ToS byte is set to 8 in the policy map called policy1. All packets that satisfy the match criteria of class1 are marked with the DSCP value of 8. The network configuration determines how packets are marked.
RP/0/RP0/CPU0:router (config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# set dscp 8Related Commands
Command
Description
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Attachs a policy map to an input interface or output interface to be used as the service policy for that interface.
Sets the precedence value in the IP header.
Displays policy configuration information for all classes configured for all service policies on the specified interface.
set mpls experimental
To set the experimental (EXP) value of the Multiprotocol Label Switching (MPLS) packet topmost or imposition labels, use the set mpls experimental command in policy map configuration mode. To leave the EXP value unchanged, use the no form of this command.
set mpls experimental { imposition | topmost } exp-value
no set mpls experimental { imposition | topmost } exp-value
Syntax Description
imposition
Specifies to set the EXP value of the imposition label.
topmost
Specifies to set the EXP value of the topmost label.
exp-value
Value of the MPLS packet label. Range is 0 to 7.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.3.0
Added the imposition keyword and changed overall command name from set mpls experimental topmost to set mpls experimental.
Release 3.4.0
Added the range for the exp-value argument.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
After the MPLS experimental bits are set, other QoS services such as Modified Deficit Round Robin (MDRR) and Weighted Random Early Detection (WRED) then operate on the bit settings.
The network gives priority (or some type of expedited handling) to the marked traffic through the application of MDRR or WRED at points downstream in the network. Typically, the MPLS experimental value is set at the edge of the network (or administrative domain) and queueing is acted on it thereafter. MDRR can speed up handling for high-priority traffic at congestion points. WRED ensures that high-priority traffic has lower loss rates than other traffic during times of congestion.
Task ID
Examples
The following example shows how to set the MPLS experimental to 5 for packets that match access list 101:
RP/0/RP0/CPU0:router(config)# class-map class1 RP/0/RP0/CPU0:router(config-cmap)# match access-group ipv4 acl101 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# set mpls experimental topmost 5 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface pos 0/7/0/0 RP/0/RP0/CPU0:router(config-if)# service-policy output policy1Related Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Attachs a policy map to an input interface or output interface to be used as the service policy for that interface.
set precedence
To set the precedence value in the IP header, use the set precedence command in policy map class configuration mode. To leave the precedence value unchanged, use the no form of this command.
Syntax Description
tunnel
(Optional) Sets the IP precedence on the outer IP header. This command is available on Layer 2 (Ethernet only) and Layer 3 interfaces in the ingress direction.
value
Number or name that sets the precedence bits in the IP header. Range is from 0 to 7. Reserved keywords can be specified instead of numeric values. Table 1 describes the reserved keywords.
Command History
Release 2.0
This command was introduced.
Release 3.8.0
The tunnel keyword is supported for QoS in a Multicast Virtual Private Network (mVPN) enabled network that requires both conditional and unconditional marking of precedence bits on the tunnel header.
Release 3.9.0
Support for the tunnel keyword on Layer 2 interfaces was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Precedence can be set using a number or corresponding name. After IP Precedence bits are set, other QoS services such as Modified Deficit Round Robin (MDRR) and Weighted Random Early Detection (WRED) then operate on the bit settings.
Conditional marking marks the precedence values on the tunnel header as a policer action. Unconditional marking marks the precedence tunnel as a policy action. Both conditional and unconditional markings are supported only in an ingress direction. The tunnel keyword is available on Layer 2 (Ethernet only) and Layer 3 interfaces in the ingress direction.
The network gives priority (or some type of expedited handling) to the marked traffic through the application of MDRR or WRED at points downstream in the network. IP precedence can be set at the edge of the network (or administrative domain) and have queueing act on it thereafter. MDRR can speed handling for high-precedence traffic at congestion points. WRED ensures that high-precedence traffic has lower loss rates than other traffic during times of congestion.
The mapping from keywords such as 0 (routine) and 1 (priority) to a precedence value is useful only in some instances. That is, the use of the precedence bit is evolving. You can define the meaning of a precedence value by enabling other features that use the value. In the case of high-end Internet QoS, IP precedences can be used to establish classes of service that do not necessarily correspond numerically to better or worse handling in the network.
Task ID
Examples
The following example shows how to set the IP precedence to 5 (critical) for packets that match the access control list named customer1:
RP/0/RP0/CPU0:router(config)# class-map class1 RP/0/RP0/CPU0:router(config-cmap)# match access-group ipv4 customer1 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# set precedence 5 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface gigabitethernet 0/1/0/9 RP/0/RP0/CPU0:router(config-if)# service-policy output policy1Related Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Attachs a policy map to an input interface or output interface to be used as the service policy for that interface.
set qos-group
To set the quality of service (QoS) group identifiers on packets, use the set qos-group command in policy map class configuration mode. To leave the QoS group values unchanged, use the no form of this command.
Syntax Description
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The set qos-group command associates a QoS group ID with a packet. After the QoS group ID is set, other QoS services, such as Modified Deficit Round Robin (MDRR) and Weighted Random Early Detection (WRED), can operate on the QoS group setting.
The QoS group setting is limited in scope to the local router. Typically, the QoS group is set on the local router and used in conjunction with WRED or MDRR to give differing levels of service based on the group identifier.
Task ID
Examples
The following example sets the QoS group to 5 for packets that match the MPLS experimental bit 1:
RP/0/RP0/CPU0:router(config)# class-map class1 RP/0/RP0/CPU0:router(config-cmap)# match mpls experimental topmost 1 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# set qos-group 5 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface pos 0/7/0/0 RP/0/RP0/CPU0:router(config-if)# service-policy input policy1Related Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Identifies specific IP differentiated services code point (DSCP) values as match criteria for a class map.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Attachs a policy map to an input interface or output interface to be used as the service policy for that interface.
set srp-priority
To set the Spatial Reuse Protocol (SRP) priority value of an outgoing packet, use the set srp-priority command in policy map class configuration mode. To remove a specific SRP priority setting, use the no form of this command.
Syntax Description
Command History
Release
Modification
Release 3.2.2
This command was introduced.
Release 3.3.0
This command was not supported.
Release 3.4.0
This command was supported.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The set srp-priority command can be used only in service policies that are attached in the output direction of an interface.
Task ID
Examples
In the following example, the policy map called srp-set is created to assign different SRP CoS values for different types of traffic, and then is attached to output SRP interface 0/2/0/0:
RP/0/RP0/CPU0:router(config)# policy-map srp-set RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# set srp-priority 5 RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface srp 0/2/0/0 RP/0/RP0/CPU0:router(config-if)# service-policy output srp-setRelated Commands
Command
Description
Defines a traffic class and the associated rules that match packets to the class.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Attachs a policy map to an input interface or output interface to be used as the service policy for that interface.
shape average
To shape traffic to the indicated bit rate according to the algorithm specified, use the shape average command in policy map class configuration mode. To remove traffic shaping, use the no form of this command.
shape average { percent percentage | rate [units] }
no shape average { percent percentage | rate [units] }
Syntax Description
percent percentage
Specifies the interface bandwidth in percentage. Values can be from 1 to 100.
rate
Average shaping rate in the specified units. Values can be from 1 to 4294967295.
units
(Optional) Units for the bandwidth. Values can be:
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.3.1
Minimum rate value changed from 128 kbps to 256 kbps.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
When you use the shape average command, egress shaping is done at the Layer 2 level and includes the Layer 2 header in the rate calculation. Ingress shaping is done at the Layer 3 level and does not include the Layer 2 header in the rate calculation. Shaping is performed in multiples of 256 kbps, the minimum shaping rate.
For shape average commands in the child policy, the reference used for percentage parameters is relative to the maximum rate of the parent. If shaping or policing is not configured on the parent, then the parent inherits the interface rate.
For bundled interfaces, shape average can be configured only as a percentage.
If you have both shape and bandwidth configured for a class, ensure that the shape percent value is always greater than the percent value for bandwidth.
Task ID
Examples
The following example sets traffic shaping to 50 milliseconds:
RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# shape average percent 50The following example shows how to set traffic shaping to 5,000,000 kbps:
RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# shape average 5000000 kbpsshow fmgr fabqos
Syntax Description
hw
Reads from the hardware.
sw
Reads from the software.
location node-id
Identifies the location of the interface whose fabric entries you want to display.
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
To see the location of all nodes installed in the router, use the show platform command.
Task ID
Examples
The following sample output shows the fabric QoS entries from the software:
RP/0/RP0/CPU0:router# show fmgr fabqos sw location 0/1/CPU0 FABQOS ENTRIES =============================================================================== Interface = FABQOS Feature = fabqos Direction = in TCAM Fields: protocol qos-group dscp exp dc cos =============================================================================== Zero entries found
show fmgr interface
To display ternary content addressable memory (TCAM) feature entries for QoS, use the show fmgr interface command in EXEC mode.
show fmgr interface type interface-path-id feature { policer | qos | qos-all } { input | output } [ all | dup-bank | hw | ipv4-mpls | ipv6 | l2 | location node-id | sw ]
Syntax Description
type
Interface type. For more information, use the question mark (?) online help function.
interface-path-id
Physical interface or virtual interface.
Note Use the show interfaces command to see a list of all interfaces currently configured on the router.
For more information about the syntax for the router, use the question mark (?) online help function.
feature
Displays feature specific information.
policer
Displays policer entries.
qos
Displays QoS entries.
qos-all
Displays entries for both QoS and policer.
input
Specifies the ingress direction.
output
Specifies the egress direction.
all
(Optional) Displays all TCAM entries.
dup-bank
(Optional) Displays entries from the duplicate bank in turbo mode.
hw
(Optional) Reads from the hardware.
ipv4-mpls
(Optional) Displays ipv4-mpls entries.
ipv6
(Optional) Displays ipv6 entries.
l2
(Optional) Displays Layer 2 entries.
location node-id
(Optional) Identifies the location of the interface whose TCAM information you want to display. The node-id is expressed in the rack/slot/module notation.
Note Use the show platform command to see the location of all nodes installed in the router.
sw
(Optional) Reads from the software.
Command History
Release
Modification
Release 3.2
This command was introduced.
Release 3.5.0
The in keyword was replaced with the input keyword.
The out keyword was replaced with the output keyword.
The l2 keyword was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Task ID
Examples
The following sample output shows how to display all ingress QoS and policer TCAM entries for a Gigabit Ethernet interface:
RP/0/RP0/CPU0:router# show fmgr interface GigabitEthernet 0/1/5/0 feature qos-all in QOS ENTRIES =============================================================================== Interface = GigabitEthernet0_1_5_0 Feature = qos Direction = in TCAM Fields: ip/mpls bndl vlg_id cid dscp exp dc qos-id CSRAM Fields: prio sh_q red_ctr qos_grp dc l2_mark l3_mark l3_mark_val max_th seg_size min_th 1st_seg pol_has_hpq =============================================================================== No QoS configured on this interface POLICER ENTRIES =============================================================================== Interface = GigabitEthernet0_1_5_0 Feature = policer Direction = in TCAM Fields: IPv4: ip/mpls vlg_id l2_cos drid ip_src l4_proto frag dscp ip_dest qos_grp dc d st_port qos-id MPLS: ip/mpls vlg_id l2_cos label exp qos_grp dc qos-id CSRAM Fields: cid token1 stats_ptr conform1 exceed1 violate1 token2 conform2 exceed2 violate2 =============================================================================== No QoS configured on this interface POLICER ENTRIES =============================================================================== Interface = GigabitEthernet0_1_5_0 Feature = policer Direction = in TCAM Fields: IPv6: ipv6 vlg_id l2_cos dest_port src_port ip_dest ip_src ext_dst ext_rtg ext_ h ext_frag dest_rng_id dc qos_grp l4_proto dscp/prec qos-id CSRAM Fields: cid token1 stats_ptr conform1 exceed1 violate1 token2 conform2 exceed2 violate2 =============================================================================== No QoS configured on this interface RP/0/RP0/CPU0:router#
The following table describes the significant fields shown in the display.
show hw-module qos input police granularity location
To display the police granularity information for input interfaces, use the show hw-module qos input police granularity location command in EXEC mode.
Syntax Description
all Displays police granularity information for all input interfaces.
interface-path-id Physical location of the Shared Interface Processor (SIP). Naming notation is rack/slot/module; a slash between values is required as part of the notation.
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Examples
This sample output shows how to display police granularity information for the input interface at location 0/1/CPU0:
RP/0/RP0/CPU0:router# show hw-module qos input police granularity location 0/1/CPU0 =========================== QOS POLICE GRANULARITY =========================== Location Rate Deviation Tolerance (%) ========== ============== 0/1/CPU0 10 ----------------------------
show hw-module qos output police granularity location
To display the police granularity information for output interfaces, use the show hw-module qos output police granularity location command in EXEC mode.
Syntax Description
all Displays police granularity information for all output interfaces.
interface-path-id Physical location of the Shared Interface Processor (SIP). Naming notation is rack/slot/module; a slash between values is required as part of the notation.
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Examples
This sample output shows how to display police granularity information, for the output interface at location :
RP/0/RP0/CPU0:router# show hw-module qos output police granularity location 0/1/CPU0 =========================== QOS POLICE GRANULARITY =========================== Location Rate Deviation Tolerance (%) ========== ============== 0/1/CPU0 10 ----------------------------
show hw-module qos output shape granularity location
To display shape granulary information, use the show hw-module qos output shape granularity location command in EXEC mode.
Syntax Description
all Displays shape granularity information for all interfaces.
interface-path-id Physical location of the Shared Interface Processor (SIP). Naming notation is rack/slot/module; a slash between values is required as part of the notation.
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Examples
This sample output shows how to display shape granularity for the output interface at location 0/1/CPU0:
RP/0/RP0/CPU0:router# show hw-module qos output shape granularity location 0/1/CPU0 ============= ==================================== QOS SHAPING GRANULARITY ==================================== Configured HW LC Location Shape Programmed reload Granularity Granularity (Y / N) ============ =========== ============ ======== 0/1/CPU0 --- 256Kbps N --------------------------------------------------
Table 1 describes the significant fields shown in the display.
Table 5 show hw-module qos output shape granularity location Field Descriptions Field
Description
Configured Shape Granularity
User-configured shape granularity for the specified location.
HW Programmed Granularity
Hardware programmed shape granularity for the specified location.
LC reload (Y/N)
Specifies whether a line card reload will be required to enable the user configured shape granularity.
show policy-map interface
To display policy configuration information for all classes configured for all service policies on the specified interface, use the show policy-map interface command in EXEC mode.
show policy-map interface type interface-path-id [ input | output [ member type interface-path-id ] ]
Syntax Description
type
Interface type. For more information, use the question mark (?) online help function.
interface-path-id
Physical interface instance. Naming notation is rack/slot/module/port and a slash between values is required as part of the notation.
- rack—Chassis number of the rack.
- slot—Physical slot number of the line card.
- module—Module number. A physical layer interface module (PLIM) is always 0.
- port—Physical port number of the interface.
Note In references to a Management Ethernet interface located on a route processor card, the physical slot number is alphanumeric (RP0 or RP1) and the module is CPU0.
Example: interface MgmtEth0/RP1/CPU0/0.
For more information about the syntax for the router, use the question mark (?) online help function.
input
(Optional) Displays per class statistics on inbound traffic for the specified policy map and interface.
output
(Optional) Displays per class statistics on outbound traffic for the specified policy map and interface.
member
(Optional) Specifies the bundle member’s interface.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.3.0
The combined, hw, and sw keywords were added.
Release 3.4.0
The combined, hw, and sw keywords were deleted.
Release 3.4.1
The combined, hw, and sw keywords were added.
Release 3.5.0
The pre-decrypt, post-decrypt, post-encrypt, and pre-decrypt keywords were removed.
Release 3.6.0
The combined, hw, and sw keywords were removed.
The member type interface-path-id keyword and arguments were added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The show policy-map interface command displays the statistics for classes in the service policy attached to an interface.
Task ID
Examples
The following sample output shows how to display policy statistics information for all classes on the TenGigE interface 0/6/1/0 that are in the output and input direction:
RP/0/RP0/CPU0:router# show policy-map interface tengige 0/6/1/0 TenGigE0/6/1/0 input: policy1 Class class1 Classification statistics (packets/bytes) (rate - kbps) Matched : 0/0 0 Transmitted : 0/0 0 Total Dropped : 0/0 0 Policing statistics (packets/bytes) (rate - kbps) Policed(conform) : 0/0 0 Policed(exceed) : 0/0 0 Policed(violate) : 0/0 0 Policed and dropped : 0/0 Queueing statistics Queue ID : 44 Taildropped(packets/bytes) : 0/0 Class class-default Classification statistics (packets/bytes) (rate - kbps) Matched : 0/0 0 Transmitted : 0/0 0 Total Dropped : 0/0 0 Queueing statistics Queue ID : 44 High watermark (bytes)/(ms) : 0/0 Inst-queue-len (bytes)/(ms) : 0/0 Avg-queue-len (bytes)/(ms) : 0/0 Taildropped(packets/bytes) : 0/0 TenGigE0/6/1/0 output: policy4 Class class1 Classification statistics (packets/bytes) (rate - kbps) Matched : 0/0 0 Transmitted : 0/0 0 Total Dropped : 0/0 0 Policing statistics (packets/bytes) (rate - kbps) Policed(conform) : 0/0 0 Policed(exceed) : 0/0 0 Policed(violate) : 0/0 0 Policed and dropped : 0/0 Queueing statistics Queue ID : 51 Taildropped(packets/bytes) : 0/0 Class class-default Classification statistics (packets/bytes) (rate - kbps) Classification statistics (packets/bytes) (rate - kbps) Matched : 0/0 0 Transmitted : 0/0 0 Total Dropped : 0/0 0 Queueing statistics Queue ID : 51 High watermark (bytes)/(ms) : 0/0 Inst-queue-len (bytes)/(ms) : 0/0 Avg-queue-len (bytes)/(ms) : 0/0 Taildropped(packets/bytes) : 0/0
Note
In Classification Statistics, the total dropped packets are calculated based on the total number of policed-dropped packets and the queueing tail dropped packets. Currently, for ATM interfaces in the egress direction, the queueing tail dropped packets are not added to the classification total dropped packets.
The following table describes the significant fields shown in the display.
Table 6 show policy-map interface Field Descriptions Field
Description
Classification statistics
Matched
Number of packets or bytes that matched this class.
Transmitted
Number of packets or bytes transmitted for this class.
Total Dropped
Number of packets or bytes dropped for this class.
Policing statistics
Policed(conform)
Number of packets or bytes that conformed to the police rate for this class.
Policed(exceed)
Number of packets or bytes that exceeded the police rate for this class.
Policed(violate)
Number of packets or bytes that violated the police rate for this class.
Policed and dropped
Number of packets or bytes dropped by the policer of this class.
Queueing statistics
Queue ID
Queue number of the packet in this class.
High watermark (bytes)/(ms)
Maximum length of the queue.
Inst-queue-len (bytes)/(ms)
Instantaneous length of the queue.
Avg-queue-len (bytes)/(ms)
Average length of the queue.
Taildropped (bytes)
Number of bytes taildropped for this queue.
show policy-map targets
To display information about the interfaces on which policy maps are applied, use the show policy-map targets command in EXEC mode.
show policy-map targets [ location node-id | pmap-name name | type performance-traffic [ location node-id | pmap-name name ] | type qos [ location node-id | pmap-name name ] ]
Syntax Description
location node-id
(Optional) Displays information about the interfaces on which policy maps are applied for the specified location. The node-id argument is entered in the rack/slot/module notation.
pmap-name name
(Optional) Displays information about the interfaces on which the specified policy map is applied.
type performance-traffic
(Optional) Displays information about the interfaces on which Realtime Application Flow Monitoring policy maps are applied.
type qos
(Optional) Displays information about the interfaces on which QoS policy maps are applied. This is the default type.
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
For a short period of time while a QoS policy is being modified, no QoS policy is active on the interface. For these reasons, modify QoS policies that affect the fewest number of interfaces at a time. Use the show policy-map targets command to identify the number of interfaces that will be affected during policy map modification.
Task ID
Examples
In this example, the Gigabit Ethernet interface 0/1/0/0 has one policy map attached as a main policy. Outgoing traffic on this interface will be affected if the policy is modified:
RP/0/RP0/CPU0:router# show policy-map targets Fri Jul 16 16:38:24.789 DST 1) Policymap: policy1 Type: qos Targets (applied as main policy): GigabitEthernet0/1/0/0 output Total targets: 1 Targets (applied as child policy): Total targets: 0
show qos ea trace
To display the processing information of the QoS component on the line card, use the show qos ea trace command in EXEC mode.
show qos ea trace [all] [ file name original location node-id ] [hexdump] [ last entries ] [ location node-id ] [tailf] [misc] [reverse] [stats] [unique] [verbose] [wrapping] [internal] [external] [errors] [qfifo]
Syntax Description
all
(Optional) Specifies all trace entries.
file name original location node-id
(Optional) Specifies the original location of a file.
hexdump
(Optional) Displays trace entries in hexidecimal format.
last entries
(Optional) Displays a specified number of the most recent trace entries.
location node-id
(Optional) Displays trace entries associated with a designated node. The node-id argument is entered in the rack/slot/module notation.
tailf
(Optional) Displays new trace entries as they are added.
misc
(Optional) Displays miscellaneous trace entries.
reverse
(Optional) Displays the most recent trace entries first.
stats
(Optional) Displays trace entry statistics.
unique
(Optional) Displays unique trace entries with counts.
verbose
(Optional) Displays internal trace entry debugging information.
wrapping
(Optional) Displays wrapping trace entries.
internal
(Optional) Displays internal trace entries.
external
(Optional) Displays external events received.
errors
(Optional) Displays error traces.
qfifo
(Optional) Displays QFIFO component interface events.
Command History
Release
Modification
Release 3.6.0
This command was introduced.
Release 3.8.0
The qfifo keyword was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
If you do not enter a node-id value, all configured interfaces are displayed.
Task ID
show qos interface
To display QoS information for a specific interface, use the show qos interface command in EXEC mode.
Syntax Description
type
Interface type. For more information, use the question mark (?) online help function.
interface-path-id
Either a physical interface instance or a virtual interface instance as follows:
- Physical interface instance. Naming notation is rack/slot/module/port and a slash between values is required as part of the notation.
rack : Chassis number of the rack.
slot : Physical slot number of the modular services card or line card.
module : Module number. A physical layer interface module (PLIM) is always 0.
port : Physical port number of the interface.
Note In references to a Management Ethernet interface located on a route processor card, the physical slot number is alphanumeric ( RSP0 RP0 or RP1 ) and the module is CPU0. Example: interface MgmtEth0/ RSP0 RP1 /CPU0/0.
- Virtual interface instance. Number range varies depending on interface type.
For more information about the syntax for the router, use the question mark (?) online help function.
input
Attaches the specified policy map to the input interface.
output
Attaches the specified policy map to the output interface.
location node-id
(Optional) Displays detailed QoS information for the designated node. The node-id argument is entered in the rack/slot/module notation.
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.4.1
L2VPN QoS policy configuration sample output was added.
Release 3.5.0
The pre-decrypt, post-decrypt, post-encrypt, and pre-decrypt keywords were removed.
Release 3.6.0
The command output now includes the following:
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The show qos interface command displays configuration for all classes in the service policy that is attached to an interface.
Use this command to check the actual values programmed in the hardware from the action keywords in the police rate command.Task ID
Examples
The following sample output shows the L2VPN QoS information on a GigabitEthernet interface:
RP/0/RP0/CPU0:router# show qos interface GigabitEthernet 0/2/0/0 output NOTE:- Configured values are displayed within parentheses Interface GigE0_2_0_0 -- output policy Total number of classes: 3 ------------------------------------------------------- Level1 class = c1 Egressq Queue ID = 25 (LP queue) Queue belongs to Group = 9 Queue Max. BW. = 999936 kbps (10 %) Queue Min. BW. = 0 kbps (default) Weight = 10 (BWR not configured) Shaper burst = 31248 bytes Guaranteed service rate = 1000000 kbps TailDrop Threshold = 12500000 bytes / 100 ms (default) Policer not configured for this class WRED not configured for this class Level1 class = c2 Egressq Queue ID = 26 (LP queue) Queue belongs to Group = 9 Queue Max. BW. = 10000128 kbps (default) Queue Min. BW. = 2000128 kbps (20 %) Weight = 10 (BWR not configured) Guaranteed service rate = 4666666 kbps TailDrop Threshold = 58333325 bytes / 100 ms (default) Policer not configured for this class WRED not configured for this class Level1 class = class-default Egressq Queue ID = 9 (Group default LP queue) Queue belongs to Group = 9 Queue Max. BW. = 10000128 kbps (default) Queue Min. BW. = 0 kbps (default) Weight = 10 (BWR not configured) Guaranteed service rate = 1000000 kbps TailDrop Threshold = 12500000 bytes / 100 ms (default) Policer slot # = 224 Policer committed rate = 1000000 kbps (10 %) Policer conform burst = 2097120 bytes (default) Policer conform action = Just TX Policer exceed action = DROP PKT WRED not configured for this class
The following table describes the significant fields shown in the display.
Note
User-configured values are displayed within parentheses in the command output.
Table 8 show QoS interface Field Descriptions Field
Description
RED on Multicast Traffic
Indicates if Random Early Detection (RED) is being performed on multicast traffic. Multicast RED is not performed if the configuration restrictions are not satisfied.
LEVEL1 class
Level 1 class identifier.
Queue Max. BW.
Maximum bandwidth allowed on this queue.
Queue Min. BW
Minimum bandwidth allowed on this queue.
class name
Name that was assigned to this class with the class command.
new dscp
New IP DSCP value assigned to this interface.
Weight
Weight assigned to the specified class.
Guaranteed service rate
Service rate of the queue when all queues are backlogged.
TailDrop Threshold(bytes)
Tail drop threshold for the sharq queue. Once the packets in the buffer is more than the value of the TailDrop Threshold, the incoming packets are dropped. The TailDrop Threshold value is a percentage of the full queue buffer.
WRED
Weighted Random Early Detection (WRED) assigned to the specified class.
If no weight has been assigned, the show policy-map interface command output shows “WRED not configured for this class.”
Egressq Queue ID
Egressq Queue ID.
Queue belongs to group
Identifies the host port for the specified queue.
Policer slot
Slot Identifier for the policer.
Policer committed rate
Committed Information Rate (CIR) in bits per second (bps), gigabits per second (gbps), kilobits per second (kbps), or megabits per second (mbps).
Policer avg. kbps
Average Committed Information Rate (CIR) in bits per second (bps), gigabits per second (gbps), kilobits per second (kbps), or megabits per second (mbps).
Policer peak rate
Peak CIR in bps, gbps, kbps, or mbps.
Policer conform burst
Programmed burst size, expressed in bytes, gigabytes (GB), kilobytes (KB), megabytes (MB), milliseconds (ms), or microseconds (us). The user-configured value is in parentheses.
Policer conform action
Policer conform action. The user-configured value is in parentheses.
Policer exceed action
Indicates whether the device supports excess burst size configuration. In the example, excess burst size configuration is supported for transmitted cells only.
Policer violate action
Policer violate action.
show qos redq
To display the information for a queue from the packets switching engine (PSE) random early detection queue (REDQ) memory, use the show qos redq command in EXEC mode.
Syntax Description
queue-number
Number for the queue. Range is from 0 to 4294967295.
input
Attaches the specified policy map to the input interface.
output
Attaches the specified policy map to the output interface.
location node-id
Displays detailed information for a queue from the PSE REDQ memory for the designated node.
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Task ID
Examples
The following sample output is from the show qos redq command:
RP/0/RP0/CPU0:router# show qos redq 5000 input location 0/1/CPU0 Tue Nov 11 03:31:02.370 PST DST node 11 -- queue 5000 -- direction input policy ------------------------------------------------------- weight = 0 avg_frac = 0 drop threshold = 0 average length = 0 instantaneous length = 0 high watermark = 0
The following table describes the significant fields shown in the display.
Table 9 show qos redq Field Descriptions Field
Description
weight
Weight assigned to the specified class.
If no weight has been assigned, the show policy-map interface command output shows “No explicit weight assigned for this class.”
avg_frac
Remainder accrued in the calculation of the average queue length.
drop threshold
Drop threshold of the queue.
average length
Average length of the queue.
instantaneous length
Instantaneous length of the queue.
high watermark
Maximum length of the queue.
show qos wred-curve
To display the QoS Weighted Random Early Detection (WRED) curve data point information, use the show qos wred-curve command in EXEC mode.
Syntax Description
input
Attaches the specified policy map to the input interface.
output
Attaches the specified policy map to the output interface.
location node-id
Displays detailed QoS WRED curve information for the designated node. The node-id argument is entered in the rack/slot/module notation.
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Task ID
switch-fabric service-policy
To configure a service policy for the switch fabric, use the switch-fabric service-policy command in global configuration mode. To remove a specified service policy from the switch fabric, use the no form of this command.
Syntax Description
policy-map-name
Name of the predefined policy map to be used as a QoS policy. The name can be a maximum of 40 alphanumeric characters.
Command History
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Task ID
violate-action
To configure the action to take on packets that violate the rate limit, use the violate-action command in policy map police configuration mode. To remove a conform action from the policy-map, use the no form of this command.
violate-action { drop | set options | transmit }
no violate-action { drop | set options | transmit }
Syntax Description
drop
Drops the packet.
set options
Configures the specified packet properties. Replace options with one of the following keywords or keyword arguments:
- cos value—Sets the class of service value. Range is 0 to 7.
- discard-class value —Sets the discard class value. Range is 0 to 7.
- dscp [tunnel] value—Sets the differentiated services code point (DSCP) value and sends the packet. See Table 1 for a list of valid values. With the tunnel keyword, the DSCP is set in the outer header.
- mpls experimental {topmost | imposition} value—Sets the experimental (EXP) value of the Multiprotocol Label Switching (MPLS) packet topmost label or imposed label. Range is 0 to 7.
- precedence [tunnel] precedence—Sets the IP precedence and sends the packet. See Table 1 for a list of valid values. With the tunnel keyword, the precedence is set in the outer header.
- srp-priority value—Sets the Spatial Reuse Protocol (SRP) priority. Range is 0 to 7
transmit
Transmits the packets.
Command History
Release
Modification
Release 3.4.0
This command was introduced.
Release 3.4.1
The set qos-group keyword was added.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes the proper task IDs. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
For more information regarding the traffic policing feature refer to the police rate command.
The violate-action command can set the DSCP, the precedence, or the discard class for IP packets, and experimental and discard-class values for MPLS packets.
Task ID
Examples
In the following example for MPLS, traffic policing is configured to drop packets that violate the rate limit:
RP/0/RP0/CPU0:router(config)# class-map class1 RP/0/RP0/CPU0:router(config-cmap)# match mpls experimental topmost 0 RP/0/RP0/CPU0:router(config-cmap)# exit RP/0/RP0/CPU0:router(config)# policy-map policy1 RP/0/RP0/CPU0:router(config-pmap)# class class1 RP/0/RP0/CPU0:router(config-pmap-c)# police rate 250 kbps burst 50 RP/0/RP0/CPU0:router(config-pmap-c-police)# violate-action drop RP/0/RP0/CPU0:router(config-pmap-c-police)# exit RP/0/RP0/CPU0:router(config-pmap-c)# exit RP/0/RP0/CPU0:router(config-pmap)# exit RP/0/RP0/CPU0:router(config)# interface gigabitethernet 0/1/0/9 RP/0/RP0/CPU0:router(config-if) service-policy input policy1Related Commands
Command
Description
Configures the action to take on packets that conform to the rate limit.
Configures the action to take on packets that exceed the rate limit.
Configures traffic policing and enters policy map police configuration mode.
Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.
Displays policy configuration information for all classes configured for all service policies on the specified interface.