The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
This module explains how to enable byte-based Weighted Random Early Detection (WRED), and set byte-based queue limits and WRED thresholds.
Your software release may not support all the features documented in this module. For the latest feature information and caveats, see the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the Feature Information Table at the end of this document.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
This feature extends the functionality of WRED. In previous releases, you specified the WRED actions based on the number of packets. With the byte-based WRED, you can specify WRED actions based on the number of bytes.
In Cisco IOS XE Release 2.4, the Cisco ASR 1000 Series Aggregation Services Routers support the addition of bytes as a unit of configuration for both queue limits and WRED thresholds. Therefore, as of this release, packet-based and byte-based limits are configurable, with some restrictions.
Be sure that your configuration satisfies the following conditions when configuring the queue depth and WRED thresholds:
The following examples show both correct and invalid configurations to demonstrate some of the restrictions.
The following example shows the correct usage of setting the queue limit in bytes mode after the bandwidth remaining ratio queueing feature has been configured for a traffic class:
class AF1 bandwidth remaining ratio 90 queue-limit 750000 bytes
The following example shows an invalid configuration for the queue limit in bytes mode before the bandwidth remaining ratio queueing feature has been configured for a traffic class:
class AF1 queue-limit 750000 bytes bandwidth remaining ratio 90
The following example shows the correct usage of setting the queue limit in bytes mode after the bandwidth remaining ratio queueing feature has been configured for a traffic class, followed by the setting of the thresholds for WRED in compatible byte mode:
class AF1 bandwidth remaining ratio 90 queue-limit 750000 bytes random-detect dscp-based random-detect dscp 8 750000 bytes 750000 bytes
This example shows an invalid configuration of the WRED threshold in bytes without any queue limit configuration, which therefore defaults to a packet-based queue depth. Therefore, the WRED threshold must also be in packets:
class AF1 bandwidth remaining ratio 90 random-detect dscp-based random-detect dscp 8 750000 bytes 750000 bytes
Command or Action | Purpose | |||
---|---|---|---|---|
|
Example: Router> enable |
Enables privileged EXEC mode. |
||
|
Example: Router# configure terminal |
Enters global configuration mode. |
||
|
Example: Router(config)# policy-map main-interface |
Specifies the interface where you want to remove a service policy, and enters interface configuration mode. |
||
|
Example: Router(config-if)# no service-policy output main-interface-policy |
Removes a service policy applied to the specified interface. |
||
|
Example: Router(config-if)# exit |
Exits interface configuration mode and returns you to global configuration mode. |
||
|
Example: Router(config)# policy-map main-interface-policy |
Specifies the name of the Traffic policy that you want to modify and enters policy-map configuration mode. |
||
|
Example: Router(config-pmap)# class AF1 |
Specifies the name of the traffic class and enters policy-map class configuration mode. |
||
|
Example: Router(config-pmap-c)# queue-limit 5000 packets |
Specifies the maximum number (from 1 to 8192000) of bytes or packets that the queue can hold for this class. |
||
|
Example: Router(config-pmap-c)# no random-detect dscp 8 750000 bytes 750000 bytes |
Removes the previously configured WRED parameters for a particular DSCP value or IP precedence. |
||
|
Example: Router(config-pmap-c)# random-detect dscp 8 4000 4000 |
Configures WRED parameters for a particular DSCP value or IP precedence.
|
The following example shows how to change the queue depth and WRED thresholds to packet-based values once a service policy has been applied to an interface:
interface GigabitEthernet1/2/0 no service-policy output main-interface-policy end policy-map main-interface-policy class AF1 queue-limit 5000 packets no random-detect dscp 8 750000 bytes 750000 bytes random-detect dscp 8 4000 4000
Step 1 | show policy-map The show policy-map command shows the output for a service policy called pol1 that is configured for byte-based WRED. Example:
Router# show policy-map
Policy Map pol1
Class class c1
Bandwidth 10 (%)
exponential weight 9
class min-threshold(bytes) max-threshold(bytes) mark-probability
-------------------------------------------------------------------
0 - - 1/10
1 20000 30000 1/10
2 - - 1/10
3 - - 1/10
4 - - 1/10
5 - - 1/10
6 - - 1/10
7 - - 1/10
rsvp - - 1/10
|
Step 2 | The show policy-map interface command shows output for an interface that is configured for byte-based WRED. Example: Router# show policy-map interface serial3/1 Service-policy output: pol Class-map: silver (match-all) 366 packets, 87840 bytes 30 second offered rate 15000 bps, drop rate 300 bps Match: ip precedence 1 Queueing Output Queue: Conversation 266 Bandwidth 10 (%) (pkts matched/bytes matched) 363/87120 depth/total drops/no-buffer drops) 147/38/0 exponential weight: 9 mean queue depth: 25920 class Transmitted Random drop Tail drop Minimum Maximum Mark pkts/bytes pkts/bytes pkts/bytes thresh thresh prob (bytes) (bytes) 0 0/0 0/0 0/0 20000 40000 1/10 1 328/78720 38/9120 0/0 22000 40000 1/10 2 0/0 0/0 0/0 24000 40000 1/10 3 0/0 0/0 0/0 26000 40000 1/10 4 0/0 0/0 0/0 28000 40000 1/10 |
The following example shows a service policy called wred-policy that sets up byte-based WRED for a class called prec2 and for the default class. The policy is then applied to Fast Ethernet interface 0/0/1.
policy wred-policy class prec2 bandwidth 1000 random-detect random-detect precedence 2 100 bytes 200 bytes 10 class class-default random-detect random-detect precedence 4 150 bytes 300 bytes 15 random-detect precedence 6 200 bytes 400 bytes 5 interface fastethernet0/0/1 service-policy output wred-policy
The following example shows the byte-based WRED results for the service policy attached to Ethernet interface 0/0/1.
Router# show policy-map interface
Ethernet0/0/1
Service-policy output: wred-policy (1177)
Class-map: prec2 (match-all) (1178/10)
0 packets, 0 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: ip precedence 2 (1179)
Queueing
queue limit 62500 bytes
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts queued/bytes queued) 0/0
bandwidth 1000 (kbps)
Exp-weight-constant: 9 (1/512)
Mean queue depth: 0 bytes
class Transmitted Random drop Tail drop Minimum Maximum Mark
pkts/bytes pkts/bytes pkts/bytes thresh thresh prob
bytes bytes
0 0/0 0/0 0/0 15625 31250 1/10
1 0/0 0/0 0/0 17578 31250 1/10
2 0/0 0/0 0/0 100 200 1/10
3 0/0 0/0 0/0 21484 31250 1/10
4 0/0 0/0 0/0 23437 31250 1/10
5 0/0 0/0 0/0 25390 31250 1/10
6 0/0 0/0 0/0 27343 31250 1/10
7 0/0 0/0 0/0 29296 31250 1/10
Class-map: class-default (match-any) (1182/0)
0 packets, 0 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: any (1183)
0 packets, 0 bytes
5 minute rate 0 bps
queue limit 562500 bytes
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts queued/bytes queued) 0/0
Exp-weight-constant: 9 (1/512)
Mean queue depth: 0 bytes
class Transmitted Random drop Tail drop Minimum Maximum Mark
pkts/bytes pkts/bytes pkts/bytes thresh thresh prob
bytes bytes
0 0/0 0/0 0/0 140625 281250 1/10
1 0/0 0/0 0/0 158203 281250 1/10
2 0/0 0/0 0/0 175781 281250 1/10
3 0/0 0/0 0/0 193359 281250 1/10
4 0/0 0/0 0/0 150 300 1/15
5 0/0 0/0 0/0 228515 281250 1/10
6 0/0 0/0 0/0 200 400 1/5
7 0/0 0/0 0/0 263671 281250 1/10
Related Topic |
Document Title |
---|---|
Cisco IOS commands |
|
QoS Commands |
Cisco IOS Quality of Service Solutions Command Reference |
Modular QoS CLI |
Modular Quality of Service Command-Line Interface module |
Standard |
Title |
---|---|
No new or modified standards are supported, and support for existing standards has not been modified. |
-- |
MIB |
MIBs Link |
---|---|
No new or modified MIBs are supported, and support for existing MIBs has not been modified. |
To locate and download MIBs for selected platforms, Cisco IOS XE software releases, and feature sets, use Cisco MIB Locator found at the following URL: |
RFC |
Title |
---|---|
No new or modified RFCs are supported, and support for existing RFCs has not been modified. |
-- |
Description |
Link |
---|---|
The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password. |
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Table 1 | Feature Information for Byte-Based Weighted Random Early Detection |
Feature Name |
Releases |
Feature Information |
---|---|---|
Byte-Based Weighted Random Early Detection |
Cisco IOS XE Release 2.4 |
The Byte-Based Weighted Random Early Detection feature extends the functionality of WRED. In previous releases, you specified the WRED actions based on the number of packets. With the byte-based WRED, you can specify WRED actions based on the number of bytes. This feature was introduced on Cisco ASR 1000 Series Routers. The following commands were introduced or modified: random-detect, random-detect precedence, show policy-map, show policy-map interface. |
Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL: www.cisco.com/go/trademarks. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1110R)
Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.