CISCO 8000 Series Routers Modular QoS Configuration User Guide

June 15, 2024
Cisco

CISCO 8000 Series Routers Modular QoS Configuration

CISCO-8000-Series-Routers-Modular-QoS-Configuration

Product Information

Specifications

  • Product Name: Modular QoS Configuration Guide for Cisco 8000
    Series Routers

  • IOS XR Release: 7.3.x

  • First Published: 2021-02-01

  • Last Modified: 2022-01-01

  • Manufacturer: Cisco Systems, Inc.

  • Headquarters: San Jose, CA, USA

  • Website: http://www.cisco.com

  • Contact Tel: 408 526-4000, 800 553-NETS (6387)

  • Fax: 408 527-0883

Product Usage Instructions

Chapter 1: New and Changed QoS Features
This chapter provides an overview of the new and changed Quality of Service (QoS) features in the Modular QoS Configuration Guide for Cisco 8000 Series Routers.

Chapter 2: Traffic Management Overview
This chapter explains the scope of traffic management, including traditional traffic management, traffic management on your router, limitations of the VoQ model, QoS policy inheritance, and the use of Cisco Modular QoS CLI to deploy QoS.

Scope
The scope of traffic management involves controlling and prioritizing network traffic to ensure efficient and reliable data transmission.

Traditional Traffic Management
Traditional traffic management involves implementing various techniques to manage network traffic, such as traffic shaping, policing, and queuing.

Traffic Management on Your Router
This section explains how traffic management is implemented on Cisco 8000 Series Routers, including the use of Modular QoS CLI (MQC) to define and apply QoS policies.

Limitations of the VoQ Model
The Voice over Quantum (VoQ) model has certain limitations in terms of scalability and complexity. This section discusses these limitations and provides insights into managing QoS in such scenarios.

QoS Policy Inheritance

QoS policy inheritance refers to the ability to inherit QoS configurations from parent policies. This section explains the concept of QoS policy inheritance and its benefits.

Cisco Modular QoS CLI to Deploy QoS
The Cisco Modular QoS CLI (MQC) is a command-line interface used to configure and deploy QoS policies on Cisco 8000 Series Routers. This section provides important information about using MQC for QoS deployment.

Chapter 3: Important Points about MQC Egress Queuing Policy
This chapter highlights important considerations and points to note when configuring the MQC egress queuing policy for effective QoS implementation.

Frequently Asked Questions (FAQ)

Q: What is traffic management?
A: Traffic management involves controlling and prioritizing network traffic to ensure efficient and reliable data transmission.

Q: How can I configure QoS policies on Cisco 8000 Series Routers?
A: You can use the Cisco Modular QoS CLI (MQC) to configure and deploy QoS policies on Cisco 8000 Series Routers.

Q: What are the limitations of the VoQ model?
A: The VoQ model has limitations in terms of scalability and complexity. It is important to understand these limitations when managing QoS in VoQ-based networks.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x
First Published: 2021-02-01 Last Modified: 2022-01-01
Americas Headquarters
Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000
800 553-NETS (6387) Fax: 408 527-0883

THE SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT TO CHANGE WITHOUT NOTICE. ALL STATEMENTS, INFORMATION, AND RECOMMENDATIONS IN THIS MANUAL ARE BELIEVED TO BE ACCURATE BUT ARE PRESENTED WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. USERS MUST TAKE FULL RESPONSIBILITY FOR THEIR APPLICATION OF ANY PRODUCTS.
THE SOFTWARE LICENSE AND LIMITED WARRANTY FOR THE ACCOMPANYING PRODUCT ARE SET FORTH IN THE INFORMATION PACKET THAT SHIPPED WITH THE PRODUCT AND ARE INCORPORATED HEREIN BY THIS REFERENCE. IF YOU ARE UNABLE TO LOCATE THE SOFTWARE LICENSE OR LIMITED WARRANTY, CONTACT YOUR CISCO REPRESENTATIVE FOR A COPY.
The Cisco implementation of TCP header compression is an adaptation of a program developed by the University of California, Berkeley (UCB) as part of UCB’s public domain version of the UNIX operating system. All rights reserved. Copyright © 1981, Regents of the University of California.
NOTWITHSTANDING ANY OTHER WARRANTY HEREIN, ALL DOCUMENT FILES AND SOFTWARE OF THESE SUPPLIERS ARE PROVIDED “AS IS” WITH ALL FAULTS. CISCO AND THE ABOVE- NAMED SUPPLIERS DISCLAIM ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, THOSE OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OR ARISING FROM A COURSE OF DEALING, USAGE, OR TRADE PRACTICE.
IN NO EVENT SHALL CISCO OR ITS SUPPLIERS BE LIABLE FOR ANY INDIRECT, SPECIAL, CONSEQUENTIAL, OR INCIDENTAL DAMAGES, INCLUDING, WITHOUT LIMITATION, LOST PROFITS OR LOSS OR DAMAGE TO DATA ARISING OUT OF THE USE OR INABILITY TO USE THIS MANUAL, EVEN IF CISCO OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
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.
All printed copies and duplicate soft copies of this document are considered uncontrolled. See the current online version for the latest version.
Cisco has more than 200 offices worldwide. Addresses and phone numbers are listed on the Cisco website at www.cisco.com/go/offices.
The documentation set for this product strives to use bias-free language. For 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 standards documentation, or language that is used by a referenced third-party product.
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: https://www.cisco.com/c/en/us/about/legal/trademarks.html. 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. (1721R)
© 2021­2022 Cisco Systems, Inc. All rights reserved.

PREFACE CHAPTER 1 CHAPTER 2

CHAPTER 3

Preface vii Changes to This Document vii Communications, Services, and Additional Information vii
New and Changed QoS Features 1 New and Changed QoS Features 1
Traffic Management Overview 3 Scope 3 Traditional Traffic Management 3 Traffic Management on Your Router 3 Limitations of the VoQ Model 4 QoS Policy Inheritance 5 Cisco Modular QoS CLI to Deploy QoS 6 Important Points about MQC Egress Queuing Policy 6
Classify Packets to Identify Specific Traffic 9 Classify Packets to Identify Specific Traffic 9 Packet Classification Overview 9 Specification of the CoS for a Packet with IP Precedence 10 IP Precedence Bits Used to Classify Packets 10 IP Precedence Value Settings 10 IP Precedence Compared to IP DSCP Marking 11 Packet Classification on Your Router 11 Improve ACL Scaling Using Peering QoS 12 Essential Points about Merging ACLs 12

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x iii

Contents

CHAPTER 4 CHAPTER 5

Guidelines and Restrictions for Peering QoS 12 Configuring Peering QoS for ACL Scaling 13 Classify and Remark Layer 3 Header on Layer 2 Interfaces 19 Traffic Class Elements 20 Default Traffic Class 21 Create a Traffic Class 21 Traffic Policy Elements 23 Create a Traffic Policy 24 Attach a Traffic Policy to an Interface 24
Mark Packets to Change Priority Settings 29 Packet Marking Overview 29 Default Marking 29 QoS Behavior for Generic Routing Encapsulation (GRE) Tunnels 30 Packet Marking 30 QoS Behavior for Generic Routing Encapsulation (GRE) Tunnels 31 Class-based Unconditional Packet Marking Feature and Benefits 31 Configure Class-based Unconditional Packet Marking 32 Class-based Unconditional Packet Marking: Examples 33 IP Precedence Marking Configuration: Example 33 IP DSCP Marking Configuration: Example 34 QoS Group Marking Configuration: Example 34 CoS Marking Configuration: Example 34 MPLS Experimental Bit Imposition Marking Configuration: Example 35 MPLS Experimental Topmost Marking Configuration: Example 35 IP Precedence Compared to IP DSCP Marking 35 Configure DSCP CS7 (Precedence 7) 36 In-Place Policy Modification 36 Recommendations for Using In-Place Policy Modification 36
Congestion Avoidance 39 Congestion Avoidance 39 Queuing Modes 39 Main Interface Queuing Policy 40

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x iv

Contents

CHAPTER 6

Sub-Interface Queuing Policy 40 Congestion Avoidance in VOQ 40
Sharing of VOQ Statistics Counters 41 Configuring Sharing of VOQ Statistics Counters 41
Dual Queue Limit 42 Restrictions 43
Equitable Traffic Flow Using Fair VOQ 44 Fair VOQ: Why 44 Fair VOQ: How 45 Fair VOQ Modes and Sharing of Counters 46 Fair VOQs and Slice (or Normal) VOQs: Key Differences 47 Guidelines and Limitations 47 Configure Fair VOQ 48
Modular QoS Congestion Avoidance 50 Tail Drop and the FIFO Queue 50
Configure Tail Drop 50 Random Early Detection and TCP 52
Configure Random Early Detection 52 Explicit Congestion Notification 54
Configure Priority Flow Control 57 Priority Flow Control Overview 57 buffer- internal mode 59 Restrictions and Guidelines 59 buffer-extended mode 59 Important Considerations 60 Hardware Support for Priority Flow Control 61 Configure Priority Flow Control 61 Configurable ECN Threshold and Maximum Marking Probability Values 66 ECN Threshold and Maximum Marking Probability Values 66 Benefits of Configurable ECN Threshold and Maximum Marking Probability Values 67 ECN Threshold and Maximum Marking Probability Values: FAQs 68 Guidelines and Limitations 68 Configure ECN Threshold and Maximum Marking Probability Values 69

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x v

Contents

CHAPTER 7 CHAPTER 8

Priority Flow Control Watchdog Overview 71 Configure a Priority Flow Control Watchdog Interval 72
Congestion Management 75 Congestion Management Overview 75 Low-Latency Queueing with Strict Priority Queueing 75 Configure Low Latency Queueing with Strict Priority Queueing 75 Traffic Shaping 78 Configure Traffic Shaping 78 Traffic Policing 80 Committed Bursts and Excess Bursts 80 Single-Rate Policer 81 Two-Rate Policer 83 References for Modular QoS Management 85 Committed Bursts 85 Excess Bursts 86 Two-Rate Policer Details 87
Configure Modular QoS on Link Bundles 89 QoS on Link Bundles 89 Load Balancing 89 Configure QoS on Link Bundles 90

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x vi

Preface

This preface contains these sections:
· Changes to This Document, on page vii · Communications, Services, and Additional Information, on page vii

Changes to This Document

This table lists the technical changes made to this document since it was first published.
Table 1: Changes to this Document

Date January 2022
October 2021
May 2021 February 2021

Change Summary Republished with documentation updates for Release 7.3.3
Republished with documentation updates for Release 7.3.2
Republished for Release 7.3.15
Initial release of this document.

Communications, Services, and Additional Information
· To receive timely, relevant information from Cisco, sign up at Cisco Profile Manager. · To get the business impact you’re looking for with the technologies that matter, visit Cisco Services. · To submit a service request, visit Cisco Support. · To discover and browse secure, validated enterprise-class apps, products, solutions and services, visit
Cisco Marketplace. · To obtain general networking, training, and certification titles, visit Cisco Press. · To find warranty information for a specific product or product family, access Cisco Warranty Finder.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x vii

Preface

Preface
Cisco Bug Search Tool Cisco Bug Search Tool (BST) is a web-based tool that acts as a gateway to the Cisco bug tracking system that maintains a comprehensive list of defects and vulnerabilities in Cisco products and software. BST provides you with detailed defect information about your products and software.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x viii

1 C H A P T E R

New and Changed QoS Features

· New and Changed QoS Features, on page 1

New and Changed QoS Features

Table 2: QoS Features Added or Modified in IOS XR Release 7.3.x

Feature Equitable Traffic Flow Using Fair VOQ
Improve ACL Scaling Using Peering QoS

Description

Changed in Release

Configuring this feature Release 7.3.3 ensures that ingress traffic from various source ports on every network slice of an NPU is assigned a unique virtual output queue (VOQ) for every source port and destination port pair.

This feature merges the Release 7.3.2 functions of QoS and security access control lists (ACLs). This combination enables using the ACL filter with the Object Group ACL, which provides a vastly improved ACL scale due to much lower TCAM usage.

Where Documented Equitable Traffic Flow Using Fair VOQ, on page 44
Improve ACL Scaling Using Peering QoS , on page 12

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 1

New and Changed QoS Features

New and Changed QoS Features

Feature QoS Policy Inheritance

Description

Changed in Release

The functionality is based Release 7.3.15 on an inheritance model, where you create and apply a QoS policy to a main interface. The subinterfaces that are attached to the main interface automatically inherit the policy.

Priority Flow Control These line cards support Release 7.3.15 Support on Cisco 8800 the Priority Flow Control 36×400 GbE QSFP56-DD feature. Line Cards (88-LC0-36FH-M)

QoS Behavior for Generic With the introduction of Release 7.3.1 Routing (GRE) Tunnels support for GRE
encapsulation and decapsulation tunnel interfaces, there are some important updates to QoS behavior for GRE tunnels during encapsulation and decapsulation.

Where Documented QoS Policy Inheritance, on page 5
Priority Flow Control Overview, on page 57
Default Marking, on page 29 and Packet Marking, on page 30

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 2

2 C H A P T E R

Traffic Management Overview

Scope

· Scope, on page 3 · Traditional Traffic Management, on page 3 · Traffic Management on Your Router, on page 3 · Limitations of the VoQ Model, on page 4 · QoS Policy Inheritance, on page 5 · Cisco Modular QoS CLI to Deploy QoS, on page 6
Read this configuration guide to understand the overall architecture that powers the Cisco Quality of Service (QoS) technology, and also how to use its features to configure and manage the traffic bandwidth and packet loss parameters on your network.

Traditional Traffic Management
In traditional methods of traffic management, traffic packets are sent to the egress output queues without taking into consideration the egress interface availability to transmit.
Therein lies the problem as well. In case of a traffic congestion, the traffic packets may get dropped at the egress port. Which means that the network resources spent getting the packets from the ingress input queue across the switch fabric to the output queues at egress are wasted. That is not all–input queues buffer traffic meant for different egress ports, so congestion on one egress port could affect traffic on another port, an event referred to as head-of-line-blocking.

Traffic Management on Your Router
Your router’s Network Processing Unit (NPU) uses a coupled ingress-egress virtual output queuing (VoQ)-based forwarding architecture to manage traffic.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 3

Limitations of the VoQ Model Figure 1: Traffic flow from ingress port on slice 0 to an egress port on slot 3

Traffic Management Overview

Here, each ingress traffic class has a one-to-one VoQ mapping from each ingress slice (pipeline) to each egress port. Which means that every egress interface (#5 in the figure) has earmarked buffer space on every ingress pipeline (#1 in the figure) for each of its VoQs. Here is how the story of packet travel in times of congestion on your router system unravels: #1: Packets A (colored green), B (colored pink), and C (colored brown) are at the ingress interface. This is where packet marking, classification, and policing takes place. (For details, see Mark Packets to Change Priority Settings, on page 29, Classify Packets to Identify Specific Traffic, on page 9, and Congestion Management, on page 75 .) #2: These packets are stored in separate buffer storage spaces in dedicated VoQs. This is where queuing, VoQ transmit, and drop packet and byte counters come into play. (For details, see Congestion Avoidance, on page 39 .) #3: Depending on the bandwidth available on the egress interface, these packets are subjected to egress scheduling, where egress credit and transmit schedulers are configured. In other words, the packets and the sequence in which they will now proceed towards the egress interface is determined here. This is where the fabric bandwidth is taken into consideration for egress scheduling. #4: The packets are switched through the fabric. #5: In the final phase, the egress marking and classification takes place, and the congestion is managed in a way that at this stage there is no packet dropped, and all the packets are transmitted to the next hop.
Limitations of the VoQ Model
While the VoQ model of traffic management offers distinct advantages (reducing memory bandwidth requirements, providing end-to-end QoS flow), it has this limitation: The total egress queue scale is lower because each egress queue must be replicated as an ingress VoQ on each slice of each NPU/ASIC in the system. This means that with the addition of 1 NPU with 20 interfaces, the
Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 4

Traffic Management Overview

QoS Policy Inheritance

number of VoQs used on each and every NPU in the system will increase by 20 x 8 (queue/interface) = 160. There is also an increase in the number of credit connectors from each scheduler for each egress port on pre-existing NPUs to each slice in the newly inserted NPU.

QoS Policy Inheritance

Table 3: Feature History Table

Feature Name QoS Policy Inheritance

Release Information Release 7.3.15

Feature Description
To create QoS policies for subinterfaces, you had to apply the policy on each subinterface manually. From this release, all you do is create and apply a single QoS policy on the main interface and the subinterfaces automatically inherit the policy.
The inheritance model provides an easily maintainable method for applying policies, enabling you to create targeted policies for a group of interfaces and their subinterfaces. This model saves your time and resources while creating QoS policies.

· What is this functionality all about?–As the name suggests, the functionality is based on an inheritance model, where you create and apply a QoS policy to a main interface. The subinterfaces that are attached to the main interface automatically inherit the policy. The inheritance model applies to all QoS operations including: · Classification
· Marking
· Policing
· Shaping

· How does the inheritance model help?–Previously, if you had, for example, eight subinterfaces, you created and applied policies to each of those subinterfaces separately. With the inheritance model, you save on time and resources, with just one policy automatically applied across a main interface and its subinterfaces.
· Do I need to do anything more to enable the inheritance model?–No, you don’t. The inheritance model is the default option.
· What if I want to override the inheritance option?–Technically, you can’t override this option. However, you can remove the policy from main interface and add policies to the subinterfaces except to the ones where you don’t want the policy to be inherited.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 5

Cisco Modular QoS CLI to Deploy QoS

Traffic Management Overview

· What about policy-map statistics?–There’s no change to this behavior. Running the show policy-map interface command displays the cumulative statistics for an interface, and these numbers include the subinterfaces as well.
· Any limitations I need to be aware of?–There’s no support for ECN marking and egress marking policy on the same interface and subinterface combination. However, the QoS policy inheritance functionality accepts these multiple policies causing the ECN markings to fail. To prevent such failures: · Don’t configure an egress marking policy on a subinterface and apply an ECN-enabled policy on the main interface.
· Don’t apply an ECN policy on a subinterface and configure an egress marking policy on the main interface.
Cisco Modular QoS CLI to Deploy QoS
Cisco Modular QoS CLI (MQC) framework is the Cisco IOS QoS user language that enables: · a standard Command Line Interface (CLI) and semantics for QoS features.
· simple and accurate configurations.
· QoS provisioning within the context of an extensible language.
For your router, in the egress direction, two types of MQC policies are supported: queuing and marking. You use the queuing policy to configure credit scheduling hierarchy, rates, priority, buffering, and congestion avoidance. You use the marking policy to classify and mark packets that have been scheduled for transmission. Even when a queuing policy is not applied, there is an implicit queuing policy with TC7 – P1, TC6 – P2, TC5 – TC0 (6 x Pn), so packets marked with TC7 and control inject packets are always prioritized over other packets. In the ingress, only one policy is supported for classification and marking. You can apply queuing and marking policy independent of each other or together in the egress direction. If you apply both policies together, the queuing policy actions are provisioned first, followed by marking policy actions.
Important Points about MQC Egress Queuing Policy
These are important points that you must know about the MQC egress queuing policy: · The MQC queuing policy consists of a set of class maps, which are added to a policy map. You control queuing and scheduling parameters for that traffic class by applying actions to the policy.
· class-default always matches traffic-class 0. Also, no other class can match traffic-class 0.
· If a traffic class has no matching class in the applied policy map, it always matches class-default. In other words, it uses the traffic-class 0 VoQ.
· Each unique combination of traffic classes that match class-default require a separate traffic class (TC) profile. The number of TC profiles are limited to 8 for main interfaces and 8 for sub-interfaces.
· You cannot configure multiple traffic classes with the same priority level.
· Each priority level, when configured, must be configured to the class that matches the corresponding TC as shown in the following table.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 6

Traffic Management Overview

Important Points about MQC Egress Queuing Policy

Priority Level P1 P2 P3 P4 P5 P6 P7

Traffic Class 7 6 5 4 3 2 1

· If all the priority levels configured in a policy-map are sorted, they must be contiguous. In other words, you cannot skip a priority level. For example, P1 P2 P4 (skipping P3), is not allowed.
· From IOS XR Release 7.3.1 onwards, you can create a single set of contiguous priority TCs. Ensure that you assign priority levels that increase for every TC or remain the same, but don’t decrease. Also, make sure that you assign priority level 1 for traffic class 7. You need not configure unused traffic classes, so you can create only those many TCs that you require on the egress policy-map.
· MQC supports up to two levels (parent, child) of queuing policy. The parent level aggregates all the traffic classes and whereas the child level differentiates traffic classes using MQC classes.
· Only these actions are supported in the queuing policy: · priority
· shape
· bandwidth remaining ratio
· queue-limit
· Random Early Detection (RED)
· Priority flow control

· You can have only one match traffic-class value in the class map. · You cannot apply a queuing policy to a main interface and its sub-interfaces.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 7

Important Points about MQC Egress Queuing Policy

Traffic Management Overview

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 8

3 C H A P T E R
Classify Packets to Identify Specific Traffic
· Classify Packets to Identify Specific Traffic, on page 9 · Packet Classification Overview, on page 9 · Packet Classification on Your Router, on page 11 · Traffic Class Elements, on page 20 · Default Traffic Class, on page 21 · Create a Traffic Class, on page 21 · Traffic Policy Elements, on page 23 · Create a Traffic Policy, on page 24 · Attach a Traffic Policy to an Interface, on page 24
Classify Packets to Identify Specific Traffic
Read this section to get an overview of packet classification and the different packet classification types for your router.
Packet Classification Overview
Packet classification involves categorizing a packet within a specific group (or class) and assigning it a traffic descriptor to make it accessible for QoS handling on the network. The traffic descriptor contains information about the forwarding treatment (quality of service) that the packet should receive. Using packet classification, you can partition network traffic into multiple priority levels or classes of service. When traffic descriptors are used to classify traffic, the source agrees to adhere to the contracted terms and the network promises a quality of service. This is where traffic policers and traffic shapers come into the picture. Traffic policers and traffic shapers use the traffic descriptor of a packet–that is, its classification–to ensure adherence to the contract. The Modular Quality of Service (QoS) command-line interface (MQC) is used to define the traffic flows that must be classified, where each traffic flow is called a class of service, or class. Later, a traffic policy is created and applied to a class. All traffic not identified by defined classes fall into the category of a default class.
Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 9

Specification of the CoS for a Packet with IP Precedence

Classify Packets to Identify Specific Traffic

Note From Cisco IOS XR Release 7.2.12 onwards, you can classify packets on Layer 2 transport interfaces using Layer 3 header values. However, this feature applies only to the main interface (physical and bundle interfaces), and not on the sub-interfaces.
Specification of the CoS for a Packet with IP Precedence
Use of IP precedence allows you to specify the CoS for a packet. You can create differentiated service by setting precedence levels on incoming traffic and using them in combination with the QoS queuing features. So that, each subsequent network element can provide service based on the determined policy. IP precedence is usually deployed as close to the edge of the network or administrative domain as possible. This allows the rest of the core or backbone to implement QoS based on precedence.
Figure 2: IPv4 Packet Type of Service Field

You can use the three precedence bits in the type-of-service (ToS) field of the IPv4 header for this purpose. Using the ToS bits, you can define up to eight classes of service. Other features configured throughout the network can then use these bits to determine how to treat the packet in regard to the ToS to grant it. These other QoS features can assign appropriate traffic-handling policies, including congestion management strategy and bandwidth allocation. For example, queuing features such as LLQ can use the IP precedence setting of the packet to prioritize traffic.
IP Precedence Bits Used to Classify Packets
Use the three IP precedence bits in the ToS field of the IP header to specify the CoS assignment for each packet. You can partition traffic into a maximum of eight classes and then use policy maps to define network policies in terms of congestion handling and bandwidth allocation for each class. Each precedence corresponds to a name. IP precedence bit settings 6 and 7 are reserved for network control information, such as routing updates. These names are defined in RFC 791.
IP Precedence Value Settings
By default, the routers leave the IP precedence value untouched. This preserves the precedence value set in the header and allows all internal network devices to provide service based on the IP precedence setting. This policy follows the standard approach stipulating that network traffic should be sorted into various types of service at the edge of the network and that those types of service should be implemented in the core of the network. Routers in the core of the network can then use the precedence bits to determine the order of transmission, the likelihood of packet drop, and so on. Because traffic coming into your network can have the precedence set by outside devices, we recommend that you reset the precedence for all traffic entering your network. By controlling IP precedence settings, you
Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 10

Classify Packets to Identify Specific Traffic

IP Precedence Compared to IP DSCP Marking

prohibit users that have already set the IP precedence from acquiring better service for their traffic simply by setting a high precedence for all of their packets. The class-based unconditional packet marking and LLQ features can use the IP precedence bits.
IP Precedence Compared to IP DSCP Marking
If you need to mark packets in your network and all your devices support IP DSCP marking, use the IP DSCP marking to mark your packets because the IP DSCP markings provide more unconditional packet marking options. If marking by IP DSCP is undesirable, however, or if you are unsure if the devices in your network support IP DSCP values, use the IP precedence value to mark your packets. The IP precedence value is likely to be supported by all devices in the network. You can set up to 8 different IP precedence markings and 64 different IP DSCP markings.
Packet Classification on Your Router
On your router, there are two types of packet classification systems: · In the ingress direction, QoS map and Ternary Content Addressable Memory (TCAM).
Note TCAM is not supported on fixed-configuration routers (where router interfaces are built in). It is supported only on modular routers (that have multiple slots that allow you to change the interfaces on the router).
· In the egress direction, QoS map.
When a policy is matching only on Differentiated Services Code Point (DSCP) or precedence value (also called DSCP or Precedence-based classification), the system selects map-based classification system; else, it selects TCAM. The TCAM is an extension of the Content Addressable Memory (CAM) table concept. A CAM table takes in an index or key value (usually a MAC address) and looks up the resulting value (usually a switch port or VLAN ID). Table lookup is fast and always based on an exact key match consisting of two input values: 0 and 1 bits. The QoS map is a table-based classification system for traffic packets.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 11

Improve ACL Scaling Using Peering QoS

Classify Packets to Identify Specific Traffic

Improve ACL Scaling Using Peering QoS

Table 4: Feature History Table

Feature Name
Improve ACL Scaling Using Peering QoS

Release Information Release 7.3.2

Feature Description
This feature merges the functions of QoS and security access control lists (ACLs). This combination enables using the ACL filter with the Object Group ACL, which provides a vastly improved ACL scale due to much lower TCAM usage.
Before this functionality was introduced, ACLs applied for QoS group actions consumed a sizeable number of TCAM entries, reducing the available scale of the feature.

Peering QoS is an ingress QoS classification feature that allows you to merge the functions of QoS ACLs and security ACLs. It does so by enabling you to set QoS group actions for every access control entry (ACE) in a security ACL, thus avoiding multiple entries (for QoS and security) per ACE. You can then use this merged ACL with the Object Group ACL feature to apply the ACL filter (permit or deny) for ACEs. Object Group ACLs are also known as ‘compressed ACLs’ because the object group compresses multiple individual IP addresses into object groups. Also, in an object group-based ACL, you can create a single ACE that uses an object group name instead of creating many ACEs. This ability to ‘merge’ and ‘compress’ ACLs saves significant TCAM space and provides a vastly improved ACL scale for QoS policies.

Essential Points about Merging ACLs
· Ensure that you merge the ACLs (set QoS group actions for every ACE in the security ACL) before attaching them to the interface.
· The ACL merge is order-dependent. This means that ACEs are programmed in the order they appear in the ACL.

Guidelines and Restrictions for Peering QoS
· Only Layer 3 interfaces support peering QoS. Configurations on Layer 2 are rejected.
· Peering QoS is supported only in the ingress direction.
· Peering QoS policies and regular QoS policies can coexist on the same line card, but only if you attach them to different interfaces.
· You can attach the same peering QoS policy to multiple interfaces on the same line card.
· To account for IPv4 and IPv6 traffic separately, configure unique QoS group values for IPv4 and IPv6 security ACLs.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 12

Classify Packets to Identify Specific Traffic

Configuring Peering QoS for ACL Scaling

· Traffic marked with MPLS EXP bits on a peering QoS-configured interface is matched with class-default in a class map configured as match-any (default) for MPLS MPLS flows.
· Subinterfaces inherit peering QoS policies applied to main interfaces, but they don’t inherit ACLs. Ensure that you configure security ACLs (matching those on main interfaces) on all subinterfaces; otherwise, all subinterfaces traffic is subjected to class-default action, thus affecting their priority weightage.
· You can only configure match qos-group for peering QoS policies. Any other qos-group command is rejected.
· You can insert, delete, and modify ACEs in security ACLs.
Configuring Peering QoS for ACL Scaling
To configure peering QoS on an interface:
1. Configure security ACL and set qos-group per ACE. Else, qos-group is set to its default value of 0, affecting the priority weightage for traffic on the interface.
2. Configure peering QoS policy matching on qos-group that you set in the security ACL. Set QoS group actions such as remark, policer, traffic-class, DSCP, precedence, and discard-class.
3. Attach the security ACL and peering QoS ACL to the interface.
/Configure security ACL, in this example: ipv4-sec-acl/ Router(config)#ipv4 access-list ipv4-sec-acl
/set qos-group per ACE; you can do this because of peering QoS that enables the use of a single entry per ACE instead of multiple entries / Router (config-ipv4-acl)#10 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence priority set qos-group 1
Router(config-ipv4-acl)#20 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence immediate set qos-group 2
Router(config-ipv4-acl)30 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence flash set qos-group 3 Router(config-ipv4-acl)40 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence flash-override set qos-group 4 Router(config-ipv4-acl)50 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence critical set qos-group 5 Router (config-ipv4-acl)#60 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence internet set qos-group 6 Router(config-ipv4-acl)#70 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence network set qos-group 7 Router(config-ipv4-acl)#exit
/Configure peering QoS policy matching for each qos-group that you set in security ACL/ Router(config)#class-map match-any grp-7 Router(config- cmap)#match qos-group 7 Router(config-cmap)#end-class-map Router(config )#class-map match-any grp-6 Router(config-cmap)#match qos-group 6 Router (config-cmap)#end-class-map Router(config)#class-map match-any grp-5 Router (config-cmap)#match qos-group 5 Router(config-cmap)#end-class-map Router(config)#class-map match-any grp-4 Router(config-cmap)#match qos-group 4 Router(config-cmap)#end-class-map Router(config)#class-map match-any grp-3 Router(config-cmap)#match qos-group 3

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 13

Configuring Peering QoS for ACL Scaling

Classify Packets to Identify Specific Traffic

Router(config-cmap)#end-class-map Router(config)#class-map match-any grp-2 Router(config-cmap)#match qos-group 2 Router(config-cmap)#end-class-map Router(config)#class-map match-any grp-1 Router(config-cmap)#match qos-group 1 Router(config-cmap)#end-class-map Router(config)#class-map match-any class- default Router(config-cmap)#end-class-map
/Set Qos actions in the policy map configured, in this example: set prec, set tc, and set dscp/
Router(config)#policy-map ingress_qosgrp_to_Prec-TC Router(config-pmap)#class grp-7 Router(config-pmap-c)#set precedence 1 Router(config-pmap-c)#set traffic-class 7 Router(config-pmap-c)#exit Router(config-pmap)#class grp-6 Router(config-pmap-c)#set precedence 1 Router(config-pmap-c)#set traffic-class 6 Router(config-pmap-c)#exit Router(config-pmap)#class grp-5 Router(config- pmap-c)#set precedence 2 Router(config-pmap-c)#set traffic-class 5 Router (config-pmap-c)#exit Router(config-pmap)#class grp-4 Router(config-pmap-c)#set precedence 2 Router(config-pmap-c)#set traffic-class 4 Router(config- pmap-c)#exit Router(config-pmap)#class grp-3 Router(config-pmap-c)#set traffic-class 3 Router(config-pmap-c)#set dscp ef Router(config-pmap-c)#exit Router(config-pmap)#class grp-2 Router(config-pmap-c)#set precedence 3 Router (config-pmap-c)#set traffic-class 2 Router(config-pmap-c)#exit Router(config- pmap)#class grp-1 Router(config-pmap-c)#set precedence 4 Router(config- pmap-c)#set traffic-class 1 Router(config-pmap-c)#exit Router(config- pmap)#class class-default Router(config-pmap-c)#set precedence 5 Router (config-pmap-c)#exit Router(config-pmap)#end-policy-map
/Attach the security acl with match qos-groups, to the interface/ Router(config)#int bundle-Ether 350 Router(config-if)#ipv4 access-group ipv4 -sec-acl ingress
/Attach the policy map with qos actions that you set in the security acl, to the interface/ Router(config-if)#service-policy input ingress_qosgrp_to_DSCP_TC_qgrp Router(config-if)#commit Router(config-if)#exit
You have successfully used peering QoS to merge and compress security and QoS ACLs and achieved vastly improved ACL scales for QoS policies.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 14

Classify Packets to Identify Specific Traffic

Configuring Peering QoS for ACL Scaling

Running Configuration
ipv4 access-list ipv4-sec-acl 10 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence priority set qos-group 1 20 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence immediate set qos-group 2 30 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence flash set qos-group 3 40 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence flash-override set qos-group 4 50 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence critical set qos-group 5 60 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence internet set qos-group 6 70 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence network set qos-group 7
! class-map match-any grp-7
match qos-group 7 end-class-map ! class-map match-any grp-6 match qos-group 6 end-class-map ! class-map match-any grp-5 match qos-group 5 end-class-map ! class-map match-any grp-4 match qos-group 4 end-class-map ! class-map match- any grp-3 match qos-group 3 end-class-map ! class-map match-any grp-2 match qos-group 2 end-class-map ! class-map match-any grp-1 match qos-group 1 end- class-map ! class-map match-any class-default end-class-map ! policy-map ingress_qosgrp_to_Prec-TC class grp-7
set precedence 1 set traffic-class 7 ! class grp-6 set precedence 1 set traffic-class 6 ! class grp-5 set precedence 2 set traffic-class 5 ! class grp-4 set precedence 2 set traffic-class 4 ! class grp-3 set traffic-class 3 set dscp ef ! class grp-2

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 15

Peering QoS for ABF

Classify Packets to Identify Specific Traffic

set precedence 3 set traffic-class 2 ! class grp-1 set precedence 4 set traffic-class 1 ! class class-default set precedence 5 ! end-policy-map ! int bundle-Ether 350 ipv4 access-group ipv4-sec-acl ingress ! int bundle-Ether 350 service-policy input ingress_qosgrp_to_DSCP_TC_qgrp

Verification
Run the show interface command for the interface to which you attached the security and QoS ACLs.
Router#show run int bundle-Ether 350 interface Bundle-Ether350 service-policy input ingress_qosgrp_to_DSCP_TC_qgrp ipv4 address 11.25.0.1 255.255.255.0 ipv6 address 2001:11:25:1::1/64 ipv4 access-group ipv4-sec-acl ingress !

Peering QoS for ABF
Table 5: Feature History Table

Feature Name
ACL-Based Forwarding (ABF) support with peering QoS

Release Information Release 7.3.3

Feature Description
This feature gives you the flexibility to configure next-hop addresses for ACEs in the merged (QoS and security) ACL instead of the route that is selected by a routing protocol. You can configure VRF-select or VRF-aware next-hop addresses.
This feature enables you to have QoS and ABF functionalities within the same ACEs.

Starting with Release 7.3.3, the Cisco 8000 Series Routers support ACL-based forwarding with peering QoS. ACL-Based Forwarding (ABF) is a policy-based routing feature wherein the router forwards traffic matching specific ACL rules to a user-specified next-hop instead of the route selected by a routing protocol. The Peering QoS feature merges the QoS ACLs and security ACLs to avoid multiple entries (QoS and security) per ACE. In ABF support with peering QoS, you could configure next-hop addresses for ACEs in the merged (QoS and security) ACL. The next-hop address is made use for forwarding the incoming packets matching the permit ACEs to their destination. Here, ABF supports both VRF-select and VRF-aware redirect. In VRF-select, the next-hop consists of VRF only, and the VRF-aware next-hop consists of both VRF and IP addresses.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 16

Classify Packets to Identify Specific Traffic

Peering QoS for ABF

Configuration
1. Configure security ACL, in this example: abf-acl
Router(config)#ipv4 access-list abf-acl
2. Set qos-group per ACE; you can do this because of peering QoS that enables the use of a single entry per ACE instead of multiple entries.
Router(config-ipv4-acl)#10 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence priority set qos-group 1 nexthop1 vrf VRF1 nexthop2 vrf VRF2 nexthop3 vrf VRF3 Router(config-ipv4-acl)#20 permit tcp 135.0.0.0/8 217.0.0.0/8 precedence priority set qos-group 2 nexthop1 vrf vrf3 nexthop2 vrf vrf2 Router(config- ipv4-acl)#30 permit tcp 135.0.0.0/8 217.0.0.0/8 match-all +ack +psh set qos- group 3 nexthop1 vrf vrf2 nexthop2 vrf vrf3 nexthop3 vrf vrf1 Router(config- ipv4-acl)#40 permit tcp 135.0.0.0/8 217.0.0.0/8 precedence priority set qos- group 4 nexthop1 vrf vrf1 nexthop2 vrf vrf2 nexthop3 vrf vrf3 Router(config- ipv4-acl)#exit
3. Configure peering QoS policy matching for each qos-group that you set in security ABF ACL.
Router(config)#class-map match-any grp-4 Router(config-cmap)#match qos-group 4 Router(config-cmap)#end-class-map Router(config)#class-map match-any grp-3 Router(config-cmap)#match qos-group 3 Router(config-cmap)#end-class-map Router(config)#class-map match-any grp-2 Router(config-cmap)#match qos-group 2 Router(config-cmap)#end-class-map Router(config)#class-map match-any grp-1 Router(config-cmap)#match qos-group 1 Router(config-cmap)#end-class-map Router(config)#class-map match-any class-default Router(config-cmap)#end- class-map
4. Set QoS actions in the policy map configured, in this example: set prec, set tc, and set dscp
Router(config)#policy-map edge_qos_policy Router(config-pmap)#class grp-4 Router(config-pmap-c)#set precedence 2 Router(config-pmap-c)#set traffic-class 4 Router(config-pmap-c)#exit Router(config-pmap)#class grp-3 Router(config- pmap-c)#set traffic-class 3 Router(config-pmap-c)#set dscp ef Router(config- pmap-c)#exit Router(config-pmap)#class grp-2 Router(config-pmap-c)#set precedence 3 Router(config-pmap-c)#set traffic-class 2 Router(config- pmap-c)#exit Router(config-pmap)#class grp-1 Router(config-pmap-c)#set precedence 4 Router(config-pmap-c)#set traffic-class 1 Router(config- pmap-c)#exit Router(config-pmap)#class class-default Router(config-pmap-c)#set precedence 5 Router(config-pmap-c)#exit Router(config-pmap)#end-policy-map
5. Attach the security acl with set qos-groups, to the interface.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 17

Peering QoS for ABF

Classify Packets to Identify Specific Traffic

Router(config)#int bundle-Ether 350 Router(config-if)#ipv4 access-group abf- acl ingress
6. Attach the policy map with QoS actions that you set in step 4, to the interface.
Router(config-if)#service-policy input edge_qos_policy Router(config- if)#commit Router(config-if)#exit
You have successfully configured peering QoS with ABF.
Running Configuration
ipv4 access-list abf-acl 10 permit ipv4 135.0.0.0/8 217.0.0.0/8 precedence priority set qos-group 1 nexthop1 vrf VRF1 nexthop2 vrf VRF2 nexthop3 vrf VRF3 20 permit tcp 135.0.0.0/8 217.0.0.0/8 precedence priority set qos-group 2 nexthop1 vrf vrf3
nexthop2 vrf vrf2 30 permit tcp 135.0.0.0/8 217.0.0.0/8 match-all +ack +psh set qos-group 3 nexthop1 vrf vrf2
nexthop2 vrf vrf3 nexthop3 vrf vrf1 40 permit tcp 135.0.0.0/8 217.0.0.0/8 precedence priority set qos-group 4 nexthop1 vrf vrf1
nexthop2 vrf vrf2 nexthop3 vrf vrf3 ! class-map match-any grp-4 match qos- group 4 end-class-map ! class-map match-any grp-3 match qos-group 3 end-class- map ! class-map match-any grp-2 match qos-group 2 end-class-map ! class-map match-any grp-1 match qos-group 1 end-class-map ! class-map match-any class- default end-class-map ! policy-map edge_qos_policy class grp-4 set precedence 2 set traffic-class 4 ! class grp-3 set traffic-class 3 set dscp ef ! class grp-2 set precedence 3 set traffic-class 2 ! class grp-1 set precedence 4 set traffic-class 1 ! class class-default set precedence 5 ! end-policy-map
Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 18

Classify Packets to Identify Specific Traffic

Classify and Remark Layer 3 Header on Layer 2 Interfaces

! int bundle-Ether 350 ipv4 access-group abf-acl ingress ! int bundle-Ether 350 service-policy input edge_qos_policy
Verification
Run the show interface command for the interface to which you attached the security and QoS ABF ACLs.
Router#show run int bundle-Ether 350 interface Bundle-Ether350 service-policy input edge_qos_policy ipv4 address 11.25.0.1 255.255.255.0 ipv6 address 2001:11:25:1::1/64 ipv4 access-group abf-acl ingress !
Classify and Remark Layer 3 Header on Layer 2 Interfaces
When you need to mark packets for Layer 2 interface traffic that flows across bridge domains and bridge virtual interfaces (BVIs), you can create a mixed QoS policy. This policy has both map-based and TCAM-based classification class-maps. The mixed policy ensures that both bridged (Layer 2) and Bridge Virtual Interface (BVI, or Layer 3) traffic flows are classified and remarked.
Guidelines
· A class-map with TCAM classification may not match bridged traffic. TCAM entries match only routed traffic while map entries match both bridged and BVI traffic.
· A class-map with map-based classification matches both bridged and BVI traffic.
Example
ipv4 access-list acl_v4 10 permit ipv4 host 100.1.1.2 any 20 permit ipv4 host 100.1.100.2 any ipv6 access-list acl_v6 10 permit tcp host 50:1:1::2 any 20 permit tcp any host 50:1:200::2 class-map match-any c_match_acl match access- group ipv4 acl_v4 ! This entry does not match bridged traffic match access- group ipv6 acl_v6 ! This entry does not match bridged traffic match dscp af11 This entry matches bridged and BVI traffic class-map match-all c_match_all match protocol udp ! This entry does not match bridged traffic match prec 7 class-map match-any c_match_protocol match protocol tcp ! This entry, and hence this class does not match bridged traffic class-map match-any c_match_ef match dscp ef ! This entry/class matches bridged and BVI traffic class-map match-any c_qosgroup_1 This class matches bridged and BVI traffic ! match qos- group 1 policy-map p_ingress class c_match_acl set traffic-class 1 set qos- group 1

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 19

Traffic Class Elements

Classify Packets to Identify Specific Traffic

! class c_match_all set traffic-class 2 set qos-group 2 ! class c_match_ef set traffic-class 3 set qos-group 3 ! class c_match_protocol set traffic-class 4 set qos-group 4 policy-map p_egress class c_qosgroup_1 set dscp af23 interface FourHundredGigE0/0/0/0 l2transport service-policy input p_ingress service- policy output p_egress ! ! interface FourHundredGigE0/0/0/1 ipv4 address 200.1.2.1 255.255.255.0 ipv6 address 2001:2:2::1/64 service-policy input p_ingress service-policy output p_egress

Traffic Class Elements

The purpose of a traffic class is to classify traffic on your router. Use the class-map command to define a traffic class. A traffic class contains three major elements:
· A name
· A series of match commands – to specify various criteria for classifying packets.
· An instruction on how to evaluate these match commands (if more than one match command exists in the traffic class)

Packets are checked to determine whether they match the criteria specified in the match commands. If a packet matches the specified criteria, that packet is considered a member of the class and is forwarded according to the QoS specifications set in the traffic policy. Packets that fail to meet any of the matching criteria are classified as members of the default traffic class.
This table shows the details of match types supported on the router.

Match Type Supported

Min, Max Max Entries Support for Support for Direction Supported on Interfaces Match NOT Ranges

IPv4 DSCP (0,63)

64

IPv6 DSCP

DSCP

Yes

Yes

Ingress Egress

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 20

Classify Packets to Identify Specific Traffic

Default Traffic Class

Match Type Supported

Min, Max

IPv4 Precedence (0,7) IPv6 Precedence

Precedence

MPLS

(0,7)

Experimental

Topmost

Access-group Not applicable

QoS-group

(1,7)

Protocol

(0, 255)

Max Entries Support for Support for Direction Supported on Interfaces Match NOT Ranges

8

Yes

No

Ingress

Egress

8

Yes

No

Ingress

Egress

8

No

Not

Ingress

applicable

7

No

No

Egress

1

Yes

Not

Ingress

applicable

Default Traffic Class
Unclassified traffic (traffic that does not meet the match criteria specified in the traffic classes) is treated as belonging to the default traffic class.
If the user does not configure a default class, packets are still treated as members of the default class. However, by default, the default class has no enabled features. Therefore, packets belonging to a default class with no configured features have no QoS functionality.
For egress classification, match on qos-group (1-7) is supported. Match qos- group 0 cannot be configured. The class-default in the egress policy maps to qos-group 0.
This example shows how to configure a traffic policy for the default class:
configure policy-map ingress_policy1 class class-default police rate percent 30 !

Create a Traffic Class
To create a traffic class containing match criteria, use the class-map command to specify the traffic class name, and then use the match commands in class- map configuration mode, as needed.
Guidelines
· Users can provide multiple values for a match type in a single line of configuration; that is, if the first value does not meet the match criteria, then the next value indicated in the match statement is considered for classification.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 21

Create a Traffic Class

Classify Packets to Identify Specific Traffic

· Use the not keyword with the match command to perform a match based on the values of a field that are not specified.
· All match commands specified in this configuration task are considered optional, but you must configure at least one match criterion for a class.
· If you specify match-any, one of the match criteria must be met for traffic entering the traffic class to be classified as part of the traffic class. This is the default. If you specify match-all, the traffic must match all the match criteria.
· For the match access-group command, QoS classification based on the packet length or TTL (time to live) field in the IPv4 and IPv6 headers is not supported.
· For the match access-group command, when an ACL list is used within a class- map, the deny action of the ACL is ignored and the traffic is classified based on the specified ACL match parameters.
· The match qos-group, traffic-class, DSCP/Prec, and MPLS EXP are supported only in egress direction, and these are the only match criteria supported in egress direction
· The egress default class implicitly matches qos-group 0.
· Multicast takes a system path that is different than unicast on router, and they meet later on the egress in a multicast-to-unicast ratio of 20:80 on a per interface basis. This ratio is maintained on the same priority level as that of the traffic.
· Egress QoS for multicast traffic treats traffic classes 0-5 as low-priority and traffic classes 6-7 as high priority. Currently, this is not user- configurable.
· Egress shaping does not take effect for multicast traffic in the high priority (HP) traffic classes. It only applies to unicast traffic.
· If you set a traffic class at the ingress policy and do not have a matching class at egress for the corresponding traffic class value, then the traffic at ingress with this class will not be accounted for in the default class at the egress policy map.
· Only traffic class 0 falls in the default class. A non-zero traffic class assigned on ingress but with no assigned egress queue, falls neither in the default class nor any other class.
Configuration Example
You have to accomplish the following to complete the traffic class configuration: 1. Creating a class map
2. Specifying the match criteria for classifying the packet as a member of that particular class (For a list of supported match types, see Traffic Class Elements, on page 20.)
Router# configure Router(config)# class-map match-any qos-1 Router(config- cmap)# match qos-group 1 Router(config-cmap)# end-class-map Router(config- cmap)# commit
Use this command to verify the class-map configuration:

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 22

Classify Packets to Identify Specific Traffic

Traffic Policy Elements

Router#show class-map qos-1 1) ClassMap: qos-1 Type: qos
Referenced by 2 Policymaps
Also see, Attach a Traffic Policy to an Interface, on page 24.
Related Topics · Traffic Class Elements, on page 20 · Traffic Policy Elements, on page 23

Traffic Policy Elements

A traffic policy contains three elements: · Name · Traffic class · QoS policies

After choosing the traffic class that is used to classify traffic to the traffic policy, the user can enter the QoS features to be applied to the classified traffic.
The MQC does not necessarily require that the users associate only one traffic class to one traffic policy.
The order in which classes are configured in a policy map is important. The match rules of the classes are programmed into the TCAM in the order in which the classes are specified in a policy map. Therefore, if a packet can possibly match multiple classes, only the first matching class is returned and the corresponding policy is applied.
The router supports 8 classes per policy-map in the ingress direction and 8 classes per policy-map in the egress direction.
This table shows the supported class-actions on the router.

Supported Action Types

Direction supported on Interfaces

bandwidth-remaining

egress

mark

See Packet Marking, on page 30

police

ingress

priority

egress (level 1 to level 7)

queue-limit

egress

shape

egress

red

egress

RED supports the discard-class option; the only values to be passed to the discard-class being 0 and 1.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 23

Create a Traffic Policy

Classify Packets to Identify Specific Traffic

Create a Traffic Policy
The purpose of a traffic policy is to configure the QoS features that should be associated with the traffic that has been classified in a user-specified traffic class or classes. To configure a traffic class, see Create a Traffic Class, on page 21. After you define a traffic policy with the policy-map command, you can attach it to one or more interfaces to specify the traffic policy for those interfaces by using the service-policy command in interface configuration mode. With dual policy support, you can have two traffic policies, one marking and one queuing attached at the output. See, Attach a Traffic Policy to an Interface, on page 24.
Configuration Example You have to accomplish the following to complete the traffic policy configuration: 1. Creating a policy map that can be attached to one or more interfaces to specify a service policy 2. Associating the traffic class with the traffic policy 3. Specifying the class-action(s) (see Traffic Policy Elements, on page 23)
Router# configure Router(config)# policy-map test-shape-1 Router(config-pmap)# class qos-1
/ Configure class-action (‘shape’ in this example). Repeat as required, to specify other class-actions / Router(config-pmap-c)# shape average percent 40 Router(config-pmap-c)# exit
/ Repeat class configuration as required, to specify other classes /
Router(config-pmap)# end-policy-map Router(config)# commit
Related Topics · Traffic Policy Elements, on page 23 · Traffic Class Elements, on page 20
Attach a Traffic Policy to an Interface
After the traffic class and the traffic policy are created, you must attach the traffic policy to interface, and specify the direction in which the policy should be applied.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 24

Classify Packets to Identify Specific Traffic

Attach a Traffic Policy to an Interface

Note Hierarchical policies are not supported. When a policy-map is applied to an interface, the transmission rate counter of each class is not accurate. This is because the transmission rate counter is calculated based on the exponential decay filter.
Configuration Example You have to accomplish the following to attach a traffic policy to an interface: 1. Creating a traffic class and the associated rules that match packets to the class (see Create a Traffic Class,
on page 21 ) 2. Creating a traffic policy that can be attached to one or more interfaces to specify a service policy (see
Create a Traffic Policy, on page 24 ) 3. Associating the traffic class with the traffic policy 4. Attaching the traffic policy to an interface, in the ingress or egress direction
Router# configure Router(config)# interface fourHundredGigE 0/0/0/2 Router (config-int)# service-policy output strict-priority Router(config-int)# commit
Running Configuration
/ Class-map configuration /
class-map match-any traffic-class-7 match traffic-class 7 end-class-map
!class-map match-any traffic-class-6 match traffic-class 6 end-class-map
class-map match-any traffic-class-5 match traffic-class 5 end-class-map
class-map match-any traffic-class-4 match traffic-class 4 end-class-map
class-map match-any traffic-class-3 match traffic-class 3
class-map match-any traffic-class-2 match traffic-class 2 end-class-map
class-map match-any traffic-class-1 match traffic-class 1 end-class-map
Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 25

Attach a Traffic Policy to an Interface

Classify Packets to Identify Specific Traffic

/ Traffic policy configuration /
policy-map test-shape-1 class traffic-class-1 shape average percent 40 !
policy-map strict-priority class tc7 priority level 1 queue-limit 75 mbytes ! class tc6 priority level 2 queue-limit 75 mbytes ! class tc5 priority level 3 queue-limit 75 mbytes ! class tc4 priority level 4 queue-limit 75 mbytes ! class tc3 priority level 5 queue-limit 75 mbytes ! class tc2 priority level 6 queue-limit 75 mbytes ! class tc1 priority level 7 queue-limit 75 mbytes ! class class-default queue-limit 75 mbytes ! end-policy-map
—–
/ Attaching traffic policy to an interface in egress direction / interface fourHundredGigE 0/0/0/2
service-policy output strict-priority !

Verification

Router# #show qos int fourHundredGigE 0/0/0/2 output

NOTE:- Configured values are displayed within parentheses Interface FourHundredGigE0/0/0/2 ifh 0xf0001c0 — output policy

NPU Id: Total number of classes: Interface Bandwidth: Policy Name:

0 8 400000000 kbps strict-priority

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 26

Classify Packets to Identify Specific Traffic

Attach a Traffic Policy to an Interface

VOQ Base:

2400

Accounting Type:

Layer1 (Include Layer 1 encapsulation and above)

——————————————————————————

Level1 Class (HP1)

= tc7

Egressq Queue ID

= 2407 (HP1 queue)

Queue Max. BW.

= no max (default)

TailDrop Threshold

= 74999808 bytes / 2 ms (75 megabytes)

WRED not configured for this class

Level1 Class (HP2) Egressq Queue ID Queue Max. BW. TailDrop Threshold WRED not configured for this class

= tc6 = 2406 (HP2 queue) = no max (default) = 74999808 bytes / 2 ms (75 megabytes)

Level1 Class (HP3) Egressq Queue ID Queue Max. BW. TailDrop Threshold WRED not configured for this class

= tc5 = 2405 (HP3 queue) = no max (default) = 74999808 bytes / 2 ms (75 megabytes)

Level1 Class (HP4) Egressq Queue ID Queue Max. BW. TailDrop Threshold WRED not configured for this class

= tc4 = 2404 (HP4 queue) = no max (default) = 74999808 bytes / 2 ms (75 megabytes)

Level1 Class (HP5) Egressq Queue ID Queue Max. BW. TailDrop Threshold WRED not configured for this class

= tc3 = 2403 (HP5 queue) = no max (default) = 74999808 bytes / 2 ms (75 megabytes)

Level1 Class (HP6) Egressq Queue ID Queue Max. BW. TailDrop Threshold WRED not configured for this class

= tc2 = 2402 (HP6 queue) = no max (default) = 74999808 bytes / 2 ms (75 megabytes)

Level1 Class (HP7) Egressq Queue ID Queue Max. BW. TailDrop Threshold WRED not configured for this class

= tc1 = 2401 (HP7 queue) = no max (default) = 74999808 bytes / 2 ms (75 megabytes)

Level1 Class Egressq Queue ID Queue Max. BW. Inverse Weight / Weight TailDrop Threshold WRED not configured for this class

= class-default = 2400 (Default LP queue) = no max (default) = 1 / (BWR not configured) = 74999808 bytes / 150 ms (75 megabytes)

!

Related Topics · Traffic Policy Elements, on page 23 · Traffic Class Elements, on page 20

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 27

Attach a Traffic Policy to an Interface

Classify Packets to Identify Specific Traffic

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 28

4 C H A P T E R
Mark Packets to Change Priority Settings
· Packet Marking Overview, on page 29 · Class-based Unconditional Packet Marking Feature and Benefits, on page 31 · Configure Class-based Unconditional Packet Marking, on page 32 · Class-based Unconditional Packet Marking: Examples, on page 33 · IP Precedence Compared to IP DSCP Marking, on page 35 · In-Place Policy Modification, on page 36
Packet Marking Overview
You can use packet marking in input policy maps to set or modify the attributes for traffic belonging to a specific class. For example, you can change the CoS value in a class or set IP DSCP or IP precedence values for a specific type of traffic. These new values are then used to determine how the traffic should be treated.
Note From Cisco IOS XR Release 7.2.12 onwards, support for marking packets on Layer 2 transport interfaces is the same as the support for marking on Layer 3 interfaces. However, this support applies only to the main interface (physical and bundle interfaces), and not on the sub-interfaces.
Default Marking
When an ingress or egress interface adds VLAN tags or MPLS labels, it requires a default value for the class of service and EXP values that go into those tags and labels. On the router, one ingress default QoS mapping profile and one egress default QoS mapping profile are created and configured per device during initialization.
Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 29

QoS Behavior for Generic Routing Encapsulation (GRE) Tunnels

Mark Packets to Change Priority Settings

QoS Behavior for Generic Routing Encapsulation (GRE) Tunnels

Table 6: Feature History Table

Feature Name

Release Information

QoS Behavior for Generic Routing Release 7.3.1 Encapsulation (GRE) Tunnels: Default Marking

Feature Description
With the support for GRE encapsulation and decapsulation tunnel interfaces, there are some important updates to QoS behavior for GRE tunnels. These updates are applicable for default packet marking and involve Type of Service (ToS) and MPLS experimental bits.

GRE Encapsulation
If you do not configure Type of Service (ToS), the outer IP precedence value or the differentiated services code point (DSCP) value is copied from the inner IP header. If you configure ToS, the outer IP precedence value or DCSP value is as per the ToS configuration.
GRE Decapsulation
During decapsulation, the MPLS experimental bits (EXP) are derived from the outer IP packet. For more information on GRE tunnels, see the Interfaces Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x.

Packet Marking
The packet marking feature, also called explicit marking, provides users with a means to differentiate packets based on the designated markings. The router supports ingress and egress packet marking.

Supported Packet Marking Operations This table shows the supported packet marking operations.

Supported Mark Types Range

Support for Unconditional Marking

set discard-class

0-1

ingress

set dscp

0-63

ingress

set mpls experimental 0-7 topmost

ingress

set precedence

0-7

ingress

set qos-group

0-7

ingress

Support for Conditional Marking No No No
No No

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 30

Mark Packets to Change Priority Settings

QoS Behavior for Generic Routing Encapsulation (GRE) Tunnels

QoS Behavior for Generic Routing Encapsulation (GRE) Tunnels

Table 7: Feature History Table

Feature Name

Release Information

QoS Behavior for Generic Routing Release 7.3.1 Encapsulation (GRE) Tunnels: Explicit Marking

Feature Description
With the support for GRE encapsulation and decapsulation tunnel interfaces, there are some important updates to QoS behavior for GRE tunnels. These updates are applicable for explicit packet marking and involve QoS behavior during ingress and egress.

GRE Encapsulation
During encapsulation of IPv4/IPv6 payload inside the GRE header, QoS behavior is as follows:
· Ingress: QoS supports classification on the payload Layer 3 fields or EXP and remarking payload IP header DSCP.
· Egress: QoS supports setting outer GRE IP header DSCP. It doesn’t overwrite the Tunnel Type of Service (ToS) configuration and doesn’t remark GRE IP header DCSP.

GRE Decapsulation
During decapsulation of the outer GRE header (during which the inner IPv4/IPv6/MPLS payload is forwarded to the next-hop router), QoS behavior is as follows:
· Ingress: QoS supports classification on Layer 3 fields of outer GRE using the set qos-group command. Setting DSCP on the ingress interface sets DSCP for the inner headers.
· Egress: QoS supports classification using qos-group to set DSCP or EXP for egress packets.
For more information on GRE tunnels, see the Interfaces Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x.

Class-based Unconditional Packet Marking Feature and Benefits
The packet marking feature allows you to partition your network into multiple priority levels or classes of service, as follows:
· Use QoS unconditional packet marking to set the IP precedence or IP DSCP values for packets entering the network. Routers within your network can then use the newly marked IP precedence values to determine how the traffic should be treated.
On ingress direction, after matching the traffic based on either the IP Precedence or DSCP value, you can set it to a particular discard-class. Weighted random early detection (WRED), a congestion avoidance technique, thereby uses discard-class values to determine the probability that a packet is dropped.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 31

Configure Class-based Unconditional Packet Marking

Mark Packets to Change Priority Settings

· Use QoS unconditional packet marking to assign MPLS packets to a QoS group. The router uses the QoS group to determine how to prioritize packets for transmission. To set the QoS group identifier on MPLS packets, use the set qos-group command in policy map class configuration mode.
Note Setting the QoS group identifier does not automatically prioritize the packets for transmission. You must first configure an egress policy that uses the QoS group.
· Mark Multiprotocol Label Switching (MPLS) packets by setting the EXP bits within the imposed or topmost label.
· Mark packets by setting the value of the qos-group argument. · Mark packets by setting the value of the discard-class argument.
Note qos-group and discard-class are variables internal to the router, and are not transmitted.
The configuration task is described in the Configure Class-based Unconditional Packet Marking, on page 32.
Configure Class-based Unconditional Packet Marking
This configuration task explains how to configure the following class-based, unconditional packet marking features on your router:
· IP precedence value · IP DSCP value · QoS group value (ingress only) · CoS value (egress only on Layer 3 subinterfaces) · MPLS experimental value · Discard class
Note IPv4 and IPv6 QoS actions applied to MPLS tagged packets are not supported. The configuration is accepted, but no action is taken.
Configuration Example Follow these steps to configure unconditional packet marking features on your router. 1. Create or modify a policy map that can be attached to one or more interfaces to specify a service policy
and enter the policy map configuration mode. 2. Configure an interface and enter the interface configuration mode.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 32

Mark Packets to Change Priority Settings

Class-based Unconditional Packet Marking: Examples

3. Attach a policy map to an input or output interface to be used as the service policy for that interface.
Configuration Example
router# configure router(config)# interface hundredGigE 0/0/0/24 router (config-pmap)# policy-map policy1 Router(config-int)# commit
Running Configuration
router(config)# policy-map policy1
class-map match-any class1 match protocol ipv4 end-class-map
! ! policy-map policy1
class class1 set precedence 1
! class class-default ! end-policy-map ! interface HundredGigE0/0/0/24 service-policy input policy1
!
Verification Run this command to display policy configuration information for all classes configured for all service policies on the specified interface.
router# show run interface hundredGigE 0/0/0/24
Class-based Unconditional Packet Marking: Examples
These are typical examples for class-based unconditional packet marking.
IP Precedence Marking Configuration: Example
In this example, a service policy called policy1 is created. This service policy is associated to a previously defined class map called class1 through the use of the class command, and then the service policy is attached to the output HundredGigE interface 0/7/0/1. The IP precedence bit in the ToS byte is set to 1:
policy-map policy1 class class1 set precedence 1
!

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 33

IP DSCP Marking Configuration: Example

Mark Packets to Change Priority Settings

interface HundredGigE 0/7/0/1 service-policy output policy1
IP DSCP Marking Configuration: Example
In this example, a service policy called policy1 is created. This service policy is associated to a previously defined class map through the use of the class command. In this example, it is assumed that a class map called class1 was previously configured and new class map called class2 is created. In this example, the IP DSCP value in the ToS byte is set to 5:
policy-map policy1 class class1 set dscp 5
class class2 set dscp ef
After you configure the settings shown for voice packets at the edge, all intermediate routers are configured to provide low-latency treatment to the voice packets, as follows:
class-map voice match dscp ef
policy-map qos-policy class voice priority level 1 police rate percent 10
QoS Group Marking Configuration: Example
In this example, a service policy called policy1 is created. This service policy is associated to a class map called class1 through the use of the class command, and then the service policy is attached in the input direction on a HundredGigE 0/7/0/1. The qos-group value is set to 1.
class-map match-any class1 match protocol ipv4 match access-group ipv4 101
policy-map policy1 class class1 set qos-group 1 !
interface HundredGigE 0/7/0/1 service-policy input policy1
Note The set qos-group command is supported only on an ingress policy.
CoS Marking Configuration: Example
In this example, a service policy called policy1 is created. This service policy is associated to a class map called class1 through the use of the class command, and then the service policy is attached in the output direction on a HundredGigE 0/7/0/1.100. The IEEE 802.1p (CoS) bits in the Layer 2 header are set to 1.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 34

Mark Packets to Change Priority Settings

MPLS Experimental Bit Imposition Marking Configuration: Example

class-map match-any class1 match protocol ipv4 match access-group ipv4 101
policy-map policy1 class class1 set cos 1 !
interface HundredGigE 0/7/0/1.100 service-policy input policy1
MPLS Experimental Bit Imposition Marking Configuration: Example
In this example, a service policy called policy1 is created. This service policy is associated to a class map called class1 through the use of the class command, and then the service policy is attached in the input direction on a HundredGigE 0/7/0/1. The MPLS EXP bits of all imposed labels are set to 1.
class-map match-any class1 match protocol ipv4 match access-group ipv4 101
policy-map policy1 class class1 set mpls exp imposition 1
! interface HundredGigE 0/7/0/1
service-policy input policy1
Note The set mpls exp imposition command is supported only on an ingress policy.
MPLS Experimental Topmost Marking Configuration: Example
In this example, a service policy called policy1 is created. This service policy is associated to a class map called class1 through the use of the class command, and then the service policy is attached in the output direction on a HundredGigE 0/7/0/1. The MPLS EXP bits on the TOPMOST label are set to 1:
class-map match-any class1 match mpls exp topmost 2
policy-map policy1 class class1 set mpls exp topmost 1 !
interface HundredGigE 0/7/0/1 service-policy output policy1
IP Precedence Compared to IP DSCP Marking
If you need to mark packets in your network and all your devices support IP DSCP marking, use the IP DSCP marking to mark your packets because the IP DSCP markings provide more unconditional packet marking
Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 35

Configure DSCP CS7 (Precedence 7)

Mark Packets to Change Priority Settings

options. If marking by IP DSCP is undesirable, however, or if you are unsure if the devices in your network support IP DSCP values, use the IP precedence value to mark your packets. The IP precedence value is likely to be supported by all devices in the network. You can set up to 8 different IP precedence markings and 64 different IP DSCP markings.
Configure DSCP CS7 (Precedence 7)
See the following example to configure options in DSCP for a particular source address in IPv4 packets.
Configuration Example
policy-map policy1 class class1 set dscp cs7 !

In-Place Policy Modification
The In-Place policy modification feature allows you to modify a QoS policy even when the QoS policy is attached to one or more interfaces. A modified policy is subjected to the same checks that a new policy is subject to when it is bound to an interface. If the policy-modification is successful, the modified policy takes effect on all the interfaces to which the policy is attached. However, if the policy modification fails on any one of the interfaces, an automatic rollback is initiated to ensure that the pre- modification policy is in effect on all the interfaces.
You can also modify any class map used in the policy map. The changes made to the class map take effect on all the interfaces to which the policy is attached.

Note

· The QoS statistics for the policy that is attached to an interface are lost (reset to 0) when the policy is

modified.

· When a QoS policy attached to an interface is modified, there might not be any policy in effect on the interfaces in which the modified policy is used for a short period of time.

· An in-place modification of an ACL does not reset the policy-map statistics counter.

Verification If unrecoverable errors occur during in-place policy modification, the policy is put into an inconsistent state on target interfaces. No new configuration is possible until the configuration session is unblocked. It is recommended to remove the policy from the interface, check the modified policy and then re-apply accordingly.
Recommendations for Using In-Place Policy Modification
For a short period of time while a QoS policy is being modified, there might not be any policy in effect on the interfaces in which the modified policy is used. For this reason, modify QoS policies that affect the fewest

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 36

Mark Packets to Change Priority Settings

Recommendations for Using In-Place Policy Modification

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.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 37

Recommendations for Using In-Place Policy Modification

Mark Packets to Change Priority Settings

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 38

5 C H A P T E R
Congestion Avoidance
· Congestion Avoidance, on page 39 · Queuing Modes, on page 39 · Congestion Avoidance in VOQ, on page 40 · Equitable Traffic Flow Using Fair VOQ, on page 44 · Modular QoS Congestion Avoidance , on page 50 · Tail Drop and the FIFO Queue, on page 50 · Random Early Detection and TCP, on page 52 · Explicit Congestion Notification , on page 54
Congestion Avoidance
Queuing provides a way to temporarily store data when the received rate of data is larger than what can be sent. Managing the queues and buffers is the primary goal of congestion avoidance. As a queue starts to fill up with data, it is important to try to make sure that the available memory in the ASIC/NPU does not fill up completely. If this happens, subsequent packets coming into the port are dropped, irrespective of the priority that they received. This could have a detrimental effect on the performance of critical applications. For this reason, congestion avoidance techniques are used to reduce the risk of a queue from filling up the memory completely and starving non-congested queues for memory. Queue thresholds are used to trigger a drop when certain levels of occupancy are exceeded. Scheduling is the QoS mechanism that is used to empty the queues of data and send the data onward to its destination. Shaping is the act of buffering traffic within a port or queue until it is able to be scheduled. Shaping smoothens traffic, making traffic flows much more predictable. It helps ensure that each transmit queue is limited to a maximum rate of traffic.
Queuing Modes
Two network queuing modes are supported for network interface queuing: the default mode of 8xVOQ (virtual output queuing) and 4xVOQ. To change the mode from one to another requires that you must first reload all line cards in the system.
Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 39

Main Interface Queuing Policy

Congestion Avoidance

In the 8xVOQ mode, eight VoQs and their associated resources are allocated for each interface. These queues are allocated regardless of the exact policy configuration on that interface. This mode supports a separate VOQ for each of the eight internal traffic classes. In the 4xVOQ mode, four VoQs and their associated resources are allocated to each interface, and these queues are allocated regardless of the exact policy applied. In this mode the system supports twice the number of logical interfaces, but the eight traffic classes must be mapped down by configuration to four VoQs, not eight VoQs.
Note From Cisco IOS XR Release 7.2.12 onwards, all the queuing features that are supported on Layer 3 interfaces are also supported on Layer 2 interfaces. However, these features apply only to the main interface (physical and bundle interfaces), and not on the sub-interfaces.
Main Interface Queuing Policy
The main interface default queues are created as part of the main interface creation. When you apply a queuing policy to the main interface, it will override the default queuing and scheduling parameters for the traffic classes you have configured. In the 8xVOQ mode, a P1+P2+6PN hierarchy is used for the main interface queues (default queuing and scheduling). The default queues are used for all traffic to the main interface and traffic to any sub-interface without a queuing policy applied. The control/protocol traffic uses traffic class 7 (TC7), priority 1 (P1) to avoid drops during congestion.
Sub-Interface Queuing Policy
Each sub-interface supports up to three policies: an ingress policy, an egress marking policy, and an egress queuing policy. To create and configure a separate set of VoQs for a sub-interface, apply a queuing policy on that sub- interface. When you remove the sub-interface queuing policy, the associated VoQs are freed and the sub-interface traffic reverts to using the main interface VoQs.
Congestion Avoidance in VOQ
Congestion avoidance within a VOQ block is done by applying a congestion management profile to a VOQ. This profile defines the admission criteria and checks performed at the enqueue time. Under normal traffic conditions the packet is enqueued into the Shared Memory System (SMS) buffers. (The shared memory system is the primary packet storage area.) If the SMS VOQ is congested beyond a set threshold, the VOQ is moved to the external High Band Memory (HBM) block. When the HBM queue drains, it is returned to the on-chip SMS. The queue size in HBM is adaptive and decreases when the total HBM usage is high.
Note Random Early Detect (RED) is available only for VOQs in HBM. The hardware does not support Weighted Random Early Detect (WRED).

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 40

Congestion Avoidance

Sharing of VOQ Statistics Counters

Sharing of VOQ Statistics Counters
Every network processor on the router has multiple slices (or pipelines), and every slice has a set of VOQs associated with every interface on the router. To maintain counters at high packet rates, two sets of counters are associated with each interface on each network slice. As an example, consider a device with six slices (12 interfaces), each with 24,000 VOQs, where you want both transmitted and dropped events counted. In this scenario, you would require 12 x 24, 000 x 2 = 5, 76,000 counters, which alone exceeds the counter capacity of the device. It is to mitigate such a scenario that the router supports configurable sharing of VOQ counters. You can configure the sharing such that a counter is shared by {1,2,4,8} VOQs. Each set of VoQs sharing counters has two counters that measure:
· Enqueued packets count in packets and bytes units.
· Dropped packets count in packets and bytes units.
For the feature to take effect: · Delete egress queuing policy-map configuration from all interfaces.
· Run the command # reload location all to reload all the nodes on your router.

Configuring Sharing of VOQ Statistics Counters
To configure VOQs sharing counters, use the #hw-module profile stats voqs- sharing-counters and specify the number of VOQ counters for each queue.
RP/0/RP0/CPU0:ios(config)#hw-module profile stats ? voqs-sharing-counters Configure number of voqs (1, 2, 4) sharing counters
RP/0/RP0/CPU0:ios(config)#hw-module profile stats voqs-sharing-counters ? 1 Counter for each queue 2 2 Queues share counters 4 4 Queues share counters
RP/0/RP0/CPU0:ios(config)#hw-module profile stats voqs-sharing-counters 1 RP/0/RP0/CPU0:ios(config)#hw-module profile stats voqs-sharing-counters 2 RP/0/RP0/CPU0:ios(config)#commit RP/0/RP0/CPU0:ios#reload location all

Running Configuration
RP/0/RP0/CPU0:ios#show run | in hw-mod Mon Feb 10 13:57:35.296 UTC Building configuration… hw-module profile stats voqs-sharing-counters 2 RP/0/RP0/CPU0:ios#

Verification
RP/0/RP0/CPU0:ios#show controllers npu stats voq ingress interface hundredGigE 0/0/0/16 instance all location 0/RP0/CPU0 Mon Feb 10 13:58:26.661 UTC

Interface Name =

Interface Handle =

Location

=

Asic Instance

=

VOQ Base

=

Hu0/0/0/16 f0001b0
0/RP0/CPU0 0
10288

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 41

Dual Queue Limit

Congestion Avoidance

Port Speed(kbps) = 100000000

Local Port

=

local

VOQ Mode

=

8

Shared Counter Mode =

2

ReceivedPkts ReceivedBytes DroppedPkts

DroppedBytes

——————————————————————-

TC_{0,1} = 114023724

39908275541

113945980

39881093000

TC_{2,3} = 194969733

68239406550

196612981

68814543350

TC_{4,5} = 139949276

69388697075

139811376

67907466750

TC_{6,7} = 194988538

68242491778

196612926

68814524100

Related Commands hw-module profile stats voqs-sharing-counters

Dual Queue Limit
The dual queue limit option is added to queue-limit command on the CLI of your router and displays as discard-class. What the discard-class option does is give you the flexibility to configure two queue limits on a single policy map–one for high-priority traffic and the other for low-priority traffic. This option ensures that the high priority traffic flow continues unaffected (up to the derived threshold from the discard-class 0 queue-limit) while the low- priority traffic continues up to the lower threshold (per discard-class 1 queue-limit).

Tell Me More You can configure the two queue limits per these details:
· One for flow that you mark as discard-class 0 (higher priority) on ingress via ingress-policy. · second, for flow that you mark as discard-class 1 (lower priority) on ingress via ingress policy.

The discard-class 1 flow (for low-priority traffic) begins to drop when the queue length hits the size limit that you configured for discard-class 1. Conversely, the flow for discard-class 1 stops dropping when queue-length falls below its configured value.

As an example, consider this configuration:

policy-map egress_pol_dql class tc7
queue-limit discard-class 0 100 mbytes queue-limit discard-class 1 50 mbytes priority level 1 ! class class-default bandwidth remaining ratio 1 ! end- policy-map !

Also consider the verification:

RP/0/RP0/CPU0:ios#

RP/0/RP0/CPU0:ios#show qos interface hundredGigE 0/0/0/30 output

NOTE:- Configured values are displayed within parentheses

Interface HundredGigE0/0/0/30 ifh 0xf000210 — output policy

NPU Id:

0

Total number of classes:

2

Interface Bandwidth:

100000000 kbps

Policy Name:

egress_pol_dql

VOQ Base:

464

Accounting Type:

Layer1 (Include Layer 1 encapsulation and above)

VOQ Mode:

8

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 42

Congestion Avoidance

Restrictions

Shared Counter Mode:

1

——————————————————————————

Level1 Class (HP1)

= tc7

Egressq Queue ID

= 471 (HP1 queue)

Queue Max. BW.

= no max (default)

Discard Class 1 Threshold

= 25165824 bytes / 2 ms (50 mbytes)

Discard Class 0 Threshold

= 75497472 bytes / 5 ms (100 mbytes)

WRED not configured for this class

Level1 Class Egressq Queue ID Queue Max. BW. Inverse Weight / Weight TailDrop Threshold WRED not configured for this class

= class-default = 464 (Default LP queue) = no max (default) = 1 / (1) = 749568 bytes / 6 ms (default)

In the preceding example, there are two traffic flows that are marked as discard-class 0 (higher priority) and discard-class 1 (lower priority).

As long as the queue length of the two flows remains below 25165824 bytes (the threshold for discard-class 1), packets from both flows continue without any drops. When the queue length reaches 25165824 bytes, discard-class 1 packets are not enqueued, ensuring all remaining bandwidth is used for the higher priority flow (discard-class 0).

The higher priority flow drops only when the queue length reaches 75497472 bytes.

Note

· This option protects the high-priority traffic from loss due to congestion, but not necessarily from latency

due to congestion.

· These thresholds are derived from hardware-specific queue regions.

Restrictions

Ensure that you read these restrictions about the dual queue limit option. · Both the queue-limits must use the same unit of measurement.
· The queue limit for discard-class 0 must always be greater than that for discard-class 1.
· When the discard-class option is not used to configure the queue-limit, packets marked with discard-class 0 and discard-class 1 have the same queue- limit; in other words, they receive identical treatment.
· A queue-limit that is configured with only discard-class 0 or discard-class 1 is rejected.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 43

Equitable Traffic Flow Using Fair VOQ

Congestion Avoidance

Equitable Traffic Flow Using Fair VOQ

Table 8: Feature History Table

Feature Name

Release Information

Equitable Traffic Flow Using Fair Release 7.3.3 VOQ

Feature Description
Configuring this feature ensures that ingress traffic from various source ports on every network slice of an NPU is assigned a unique virtual output queue (VOQ) for every source port and destination port pair. This action ensures that the bandwidth available at the destination port for a given traffic class is distributed equally to all source ports requesting bandwidth.
In earlier releases, the traffic wasn’t distributed equitably because each slice wasn’t given its fair share of the output queue bandwidth.
This feature introduces the fair-4 and fair-8 keywords in the hw-module profile qos voq-mode command.

Fair VOQ: Why
Per default behavior, every network slice of an NPU is assigned a set of 4 or 8 Virtual Output Queues (VOQ) per destination port. With such an assignment, it’s challenging to ensure that the right amount of buffering is available via VOQs. With this configuration, the ingress traffic from various source ports on a slice (or pipeline) on an NPU destined to a destination port is assigned to a VOQ per slice. In other words, multiple source ports sending traffic to the same destination port use the same VOQ. However, when sending traffic to different destination ports, traffic is enqueued to different VOQs. This means that the traffic isn’t distributed equitably because each slice doesn’t get its fair share of the output queue bandwidth. In a scenario where one slice has two ports and another slice has only one port, the bandwidth drops for the ports sharing a slice, even though the two ports handle more traffic than the single port.
Consider the following example where two 100G ports–port-0 and port-1–that belong to the same slice (slice-0) are sending traffic to port-3 on the output queue (OQ). You have a 100G port on another slice (slice-1) on the same NPU that is also scheduled to send traffic to port-3. The ingress VOQ is shared between the two ports in slice-0, whereas the ingress VOQ in slice-1 is available exclusively for port-3. This arrangement results in port-0 and port-1 getting 25% of the buffer traffic, while port-3 receives 50% of the buffer traffic.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 44

Congestion Avoidance Figure 3: Existing behavior : Source ports on slice share one VOQ per destination port

Fair VOQ: How

The fair VOQ feature solves this disparity in traffic distribution.
Fair VOQ: How
The fair VOQ feature tackles the default behavior that treats source ports on each NPU slice equally, regardless of the number of active source ports. It does so by redesigning the way bandwidth is allocated from the output queue. Rather than distributing bandwidth at a slice level, fair VOQ distributes bandwidth directly to the source ports. When you configure the command hw- module profile qos voq-mode and reload your router, the functionality creates a dedicated VOQ for every source port and destination port pair. This arrangement ensures that bandwidth available at the destination port for a given traffic class is distributed equally to all source ports requesting bandwidth.
Extending the preceding example to understand the fair VOQ functionality, there are now dedicated VOQs for each ingress port that connect to the port on the output queue. Thus, port-0 and port-1 now don’t share a VOQ, and port-3 has its VOQ as before, as shown in the following figure. This fair VOQ arrangement results in traffic queued on dedicated queues, thus improving the traffic performance.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 45

Fair VOQ Modes and Sharing of Counters

Congestion Avoidance

Figure 4: Fair VOQ behavior: each source port on slice has one dedicated VOQ per destination port

Fair VOQ Modes and Sharing of Counters
You can configure fair VOQ for 8xVOQ mode (fair-8) and 4xVOQ mode (fair-4) using the following options in the hw-module profile qos voq-mode command:
· hw-module profile qos voq-mode fair-8
· hw-module profile qos voq-mode fair-4

You can also share VOQ statistics counters in both fair VOQ modes, as shown in the following table. (For details on why sharing counters is essential and how to configure counters sharing, see Sharing of VOQ Statistics Counters, on page 41.)
Table 9: Fair VOQ Modes and Sharing Counters

Fair VOQ Mode fair-8

Sharing Counters Mode 2, 4

Important Notes
· Eight VOQs configured per source port and destination pair
· Counters are shared by {2, 4} VOQs.
· fair-8 mode doesn’t support dedicated counter mode (counter mode1, where there’s a counter for every queue)

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 46

Congestion Avoidance

Fair VOQs and Slice (or Normal) VOQs: Key Differences

Fair VOQ Mode fair-4

Sharing Counters Mode 1, 2, 4

Important Notes
· Four VOQs configured per source port and destination pair
· Counters are shared by {1, 2, 4} VOQs.

Fair VOQs and Slice (or Normal) VOQs: Key Differences
The following table is a snapshot to outline the key differences between fair VOQs and slice or regular VOQs.
Table 10: Fair VOQs and Normal VOQs

Fair VOQ

Normal VOQ

fair-8 mode: eight VOQs configured per source port 8:

and destination pair

· Eight VOQs per destination port per slice

· These VOQs are shared by all source ports within an NPU slice.

fair-4 mode: four VOQs configured per source port 4:

and destination pair

· Four VOQs per destination port per slice

· These VOQs are shared by all source ports within an NPU slice.

Guidelines and Limitations
· The fair VOQ feature is supported on the Cisco 8202 router (12 QSFP56-DD 400G and 60 QSFP28 100G ports).
· The following table details the maximum interfaces (with basic IPv4 configurations and no other scale configuration such as QoS policy, ACL, and subinterface configuration) allowed based on VOQ mode and sharing counter mode.
Table 11: Maximum Interfaces Based on Fair VOQ Mode and Sharing Counter Mode

VOQ Mode fair-8

Sharing Counter Mode 1

Maximum Interfaces
The router doesn’t support this combination.
(This is because in default counter mode, 72 interfaces aren’t created.)

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 47

Configure Fair VOQ

Congestion Avoidance

VOQ Mode fair-8
fair-8 fair-4
fair-4 fair-4

Sharing Counter Mode 2
4 1
2 4

Maximum Interfaces
96 = 60 (100G) + 8×4 + 4 (400G) ==> you can configure only eight 400G interfaces in 4x10G or 4x25G breakout mode.
108 = 60 + 12 x 4 (breakout on all 12 ports – 400G)
96 = 60(100G) + 8×4 + 4 (400G) ==> you can configure only eight 400 G interfaces in 4x10G or 4x25G breakout mode.
108 = 60 + 12 x4 (breakout on all 12 ports – 400G)
108 = 60 + 12 x4 (breakout on all 12 ports – 400G)

Note We recommend using sharing counter mode 4 in breakout modes and sharing counter mode 2 for nonbreakout modes.

Note Breakout mode isn’t supported on 100G interfaces.
· Ensure that you reload the router for the configuration to take effect.
· Layer 2 traffic isn’t supported in fair-voq mode (fair-4 and fair-8).
· Subinterface queueing isn’t supported. (This applies to bundle sub- interfaces as well). This means that you can’t attach egress service-policies that require dedicated VOQs. However, egress marking is supported for subinterfaces.
· hw-module profile stats voqs-sharing-counters 1 isn’t supported in fair-8 mode. Ensure that you configure hw-module profile voq sharing-counters 2 or hw-module profile voq sharing-counters 4 along with hw-module profile qos voq- mode fair-4 or hw-module profile qos voq-mode fair-8 before reloading the router.
· Breakout is supported only on 400G interfaces in fair-voq mode (both fair-4 and fair-8) on the Cisco 8202 router.
· src-interface and src-slice keywords in show controller npu stats are visible only when you configure the VOQ mode to either fair-8 or fair-4.
Configure Fair VOQ
To configure fair VOQ:

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 48

Congestion Avoidance

Configure Fair VOQ

1. Configure sharing of VOQ statistics counters. This example configures 2 counters.

Note Configuring fair-8 mode without counter sharing may cause configuration failure or other unexpected behavior.
2. Configure fair VOQ mode. This example shows how to configure fair-8 mode.
3. Restart the router for the configuration to take effect.
4. You have successfully enabled the fair VOQ feature to ensure equitable traffic distribution between every source port and destination port pair.
/Configure sharing of VOQ statistics counters; we’re configuring 2 counters per queue/ Router(config)#hw-module profile stats ?
voqs-sharing-counters Configure number of voqs (1, 2, 4) sharing counters Router(config)#hw-module profile stats voqs-sharing-counters ?
1 Counter for each queue 2 2 Queues share counters 4 4 Queues share counters Router(config)#hw-module profile stats voqs-sharing-counters 2
/Configure fair-voq mode; we’re configuring fair-8 VOQ mode here/ Router#config Router(config)#hw-module profile qos voq-mode fair-8 Router(config)#commit Router#reload location all
Running Configuration
hw-module profile stats voqs-sharing-counters 2 ! hw-module profile qos voq- mode fair-8 !
Verification
Run the show controller npu stats voq ingress interface <> instance <> location <> command to verify the fair VOQ configuration.
Router#show controllers npu stats voq ingress interface hundredGigE 0/0/0/20 instance 0 location 0/RP0/CPU0

Interface Name

= Hu0/0/0/20

Interface Handle

=

f000118

Location

= 0/RP0/CPU0

Asic Instance

=

0

Port Speed(kbps)

= 100000000

Local Port

=

local

Src Interface Name =

ALL

VOQ Mode

=

Fair-8

Shared Counter Mode =

2

ReceivedPkts ReceivedBytes DroppedPkts

DroppedBytes

——————————————————————-

TC_{0,1} = 11110

1422080

0

0

TC_{2,3} = 0

0

0

0

TC_{4,5} = 0

0

0

0

TC_{6,7} = 0

0

0

0

RP/0/RP0/CPU0:ios#

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 49

Modular QoS Congestion Avoidance

Congestion Avoidance

Associated Commands hw-module profile qos voq-mode
Modular QoS Congestion Avoidance
Congestion avoidance techniques monitor traffic flow in an effort to anticipate and avoid congestion at common network bottlenecks. Avoidance techniques are implemented before congestion occurs as compared with congestion management techniques that control congestion after it has occurred. Congestion avoidance is achieved through packet dropping. The router supports these QoS congestion avoidance techniques:
· Tail Drop and the FIFO Queue, on page 50 · Random Early Detection and TCP, on page 52
Tail Drop and the FIFO Queue
Tail drop is a congestion avoidance technique that drops packets when an output queue is full until congestion is eliminated. Tail drop treats all traffic flow equally and does not differentiate between classes of service. It manages the packets placed into a first-in, first-out (FIFO) queue, and forwarded at a rate determined by the available underlying link bandwidth.
Configure Tail Drop
Packets satisfying the match criteria for a class accumulate in the queue reserved for the class until they are serviced. The queue-limit command is used to define the maximum threshold for a class. When the maximum threshold is reached, the enqueued packets to the class queue result in tail drop (packet drop).
Restrictions · When configuring the queue-limit command, you must configure one of the following commands: priority, shape average, or bandwidth remaining, except for the default class.
Configuration Example You have to accomplish the following to complete the tail drop configuration: 1. Creating (or modifying) a policy map that can be attached to one or more interfaces to specify a service
policy 2. Associating the traffic class with the traffic policy 3. Specifying the maximum limit the queue can hold for a class policy configured in a policy map. 4. Specifying priority to a class of traffic belonging to a policy map. 5. (Optional) Specifying the bandwidth allocated for a class belonging to a policy map or specifying how
to allocate leftover bandwidth to various classes. 6. Attaching a policy map to an output interface to be used as the service policy for that interface.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 50

Congestion Avoidance

Configure Tail Drop

Router# configure Router(config)# policy-map test-qlimit-1 Router(config- pmap)# class qos-1 Router(config-pmap-c)# queue-limit 100 us Router(config- pmap-c)# priority level 7 Router(config-pmap-c)# exit Router(config-pmap)# exit
Router(config)# interface HundredGigE 0/6/0/18 Router(config-if)# service- policy output test-qlimit-1 Router(config-if)# commit

Running Configuration
policy-map test-qlimit-1 class qos-1 queue-limit 100 us priority level 7 ! class class-default ! end-policy-map
!

Verification

Router# show qos int hundredGigE 0/6/0/18 output

NOTE:- Configured values are displayed within parentheses

Interface HundredGigE0/6/0/18 ifh 0x3000220 — output policy

NPU Id:

3

Total number of classes:

2

Interface Bandwidth:

100000000 kbps

VOQ Base:

11176

VOQ Stats Handle:

0x88550ea0

Accounting Type:

Layer1 (Include Layer 1 encapsulation and above)

——————————————————————————

Level1 Class (HP7)

= qos-1

Egressq Queue ID

= 11177 (HP7 queue)

TailDrop Threshold

= 1253376 bytes / 100 us (100 us)

WRED not configured for this class

Level1 Class Egressq Queue ID Queue Max. BW. Queue Min. BW. Inverse Weight / Weight TailDrop Threshold WRED not configured for this class

= class-default = 11176 (Default LP queue) = 101803495 kbps (default) = 0 kbps (default) = 1 (BWR not configured) = 1253376 bytes / 10 ms (default)

Related Topics · Tail Drop and the FIFO Queue, on page 50

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 51

Random Early Detection and TCP

Congestion Avoidance

Random Early Detection and TCP
The Random Early Detection (RED) congestion avoidance technique takes advantage of the congestion control mechanism of TCP. By randomly dropping packets prior to 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 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. It achieves this by taking action on the average queue size, and not the instantaneous queue size. When enabled on an interface, RED begins dropping packets when congestion occurs at a rate you select during configuration.
Configure Random Early Detection
The random-detect command with the minimum threshold and maximum threshold keywords must be used to enable random early detection (RED).
Guidelines · If you configure the random-detect <max threshold> command on any class including class-default, configure one of the following commands: shape average or bandwidth remaining. · If you configure a queue-limit that is lesser than the minimum supported value, the configured value automatically adjusts to the supported minimum value. While configuring random-detect, if you set the and values lesser than the minimum supported threshold value: · The value automatically adjusts to the minimum supported value. · The value doesn’t autoadjust to a value above the minimum supported threshold value. This results in a failed random-detect configuration. To prevent this error, configure the value such that it exceeds the <min threshold> value that your system supports.
Configuration Example Accomplish the following to complete the random early detection configuration: 1. Creating (or modifying) a policy map that can be attached to one or more interfaces to specify a service
policy 2. Associating the traffic class with the traffic policy 3. Enabling RED with minimum and maximum thresholds. 4. Configure one of the following:
· Specifying how to allocate leftover bandwidth to various classes. OR
· Shaping traffic to the specified bit rate or a percentage of the available bandwidth.
5. Attaching a policy map to an output interface to be used as the service policy for that interface.
Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 52

Congestion Avoidance

Configure Random Early Detection

Router# configure Router(config)# policy-map red-abs-policy Router(config- pmap)# class qos-1 Router(config-pmap-c)# random-detect <max threshold> Router(config-pmap-c)# shape average percent 10 Router(config- pmap-c)# end-policy-map Router(config)# commit Router(config)# interface HundredGigE0/0/0/12 Router(config-if)# service-policy output red-abs-policy Router(config-if)# commit
Running Configuration
policy-map red-abs-policy class tc7
priority level 1 queue-limit 75 mbytes ! class tc6 priority level 2 queue- limit 75 mbytes ! class tc5 shape average 10 gbps queue-limit 75 mbytes ! class tc4 shape average 10 gbps queue-limit 75 mbytes ! class tc3 shape average 10 gbps queue-limit 75 mbytes ! class tc2 shape average 10 gbps queue- limit 75 mbytes ! class tc1 shape average 10 gbps random-detect ecn random- detect 100 mbytes 200 mbytes ! class class-default shape average 10 gbps random-detect 100 mbytes 200 mbytes ! end-policy-map !
interface HundredGigE0/0/0/12 service-policy output red-abs-policy shutdown !
Verification
Router# show qos int hundredGigE 0/6/0/18 output

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 53

Explicit Congestion Notification

Congestion Avoidance

NOTE:- Configured values are displayed within parentheses

Interface HundredGigE0/0/0/12 ifh 0x3000220 — output policy

NPU Id:

3

Total number of classes:

2

Interface Bandwidth:

100000000 kbps

VOQ Base:

11176

VOQ Stats Handle:

0x88550ea0

Accounting Type:

Layer1 (Include Layer 1 encapsulation and above)

——————————————————————————

Level1 Class

= qos-1

Egressq Queue ID

= 11177 (LP queue)

Queue Max. BW.

= 10082461 kbps (10 %)

Queue Min. BW.

= 0 kbps (default)

Inverse Weight / Weight

= 1 (BWR not configured)

Guaranteed service rate

= 10000000 kbps

TailDrop Threshold

= 12517376 bytes / 10 ms (default)

Default RED profile RED Min. Threshold RED Max. Threshold

= 12517376 bytes (10 ms) = 12517376 bytes (10 ms)

Level1 Class Egressq Queue ID Queue Max. BW. Queue Min. BW. Inverse Weight / Weight Guaranteed service rate TailDrop Threshold WRED not configured for this class

= class-default = 11176 (Default LP queue) = 101803495 kbps (default) = 0 kbps (default) = 1 (BWR not configured) = 50000000 kbps = 62652416 bytes / 10 ms (default)

Related Topics · Random Early Detection and TCP, on page 52

Explicit Congestion Notification
Random Early Detection (RED) is implemented at the core routers of a network. Edge routers assign IP precedences to packets, as the packets enter the network. With RED, core routers then use these precedences to determine how to treat different types of traffic. RED provides a single threshold and weights per traffic class or queue for different IP precedences.
ECN is an extension to RED. ECN marks packets instead of dropping them when the average queue length exceeds a specific threshold value. When configured, ECN helps routers and end hosts to understand that the network is congested and slow down sending packets. However, if the queue length is above the maximum threshold for the extended memory, packets are dropped. This is the identical treatment that a packet receives when RED is enabled without ECN configured on the router.
RFC 3168, The Addition of Explicit Congestion Notification (ECN) to IP, states that with the addition of active queue management (for example, RED) to the Internet infrastructure, routers are no longer limited to packet loss as an indication of congestion.

Note You cannot use this feature when you have set qos-group or mpls experimental along with a traffic class in the ingress policy.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 54

Congestion Avoidance

Explicit Congestion Notification

Implementing ECN
Implementing ECN requires an ECN-specific field that has two bits–the ECN- capable Transport (ECT) bit and the CE (Congestion Experienced) bit–in the IP header. The ECT bit and the CE bit can be used to make four code points of 00 to 11. The first number is the ECT bit and the second number is the CE bit.
Table 12: ECN Bit Setting

ECT Bit 0 0
1
1

CE Bit 0 1
0
1

Combination Indicates
Not-ECN-capable.
Endpoints of the transport protocol are ECN-capable.
Endpoints of the transport protocol are ECN-capable.
Congestion experienced.

The ECN field combination 00 indicates that a packet is not using ECN. The code points 01 and 10–Called ECT(1) and ECT(0), respectively–are set by the data sender to indicate that the endpoints of the transport protocol are ECN- capable. Routers treat these two code points identically. Data senders can use either one or both of these two combinations. The ECN field combination 11 indicates congestion to the endpoints. Packets arriving a full queue of a router will be dropped.

Packet Handling When ECN Is Enabled
When ECN is enabled, all packets between and <max tail drop threshold> are marked with ECN. Three different scenarios arise if the queue length is between the minimum threshold and the maximum threshold:
· If the ECN field on the packet indicates that the endpoints are ECN-capable (that is, the ECT bit is set to 1 and the CE bit is set to 0, or the ECT bit is set to 0 and the CE bit is set to 1)–and the RED algorithm determines that the packet should have been dropped based on the drop probability–the ECT and CE bits for the packet are changed to 1, and the packet is transmitted. This happens because ECN is enabled and the packet gets marked instead of dropped.
· If the ECN field on the packet indicates that neither endpoint is ECN- capable (that is, the ECT bit is set to 0 and the CE bit is set to 0), the packet is transmitted. If, however, the max tail drop threshold is exceeded, the packet is dropped. This is the identical treatment that a packet receives when RED is enabled without ECN configured on the router.
· If the ECN field on the packet indicates that the network is experiencing congestion (that is, both the ECT bit and the CE bit are set to 1), the packet is transmitted. No further marking is required.

Configuration Example
Router# configure Router(config)# policy-map policy1 Router(config-pmap)# class class1 Router(config-pmap-c)# bandwidth percent 50 Router(config- pmap-c)# random-detect 1000 packets 2000 packets Router(config-pmap-c)# random-detect ecn Router(config-pmap-c)# exit

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 55

Explicit Congestion Notification

Congestion Avoidance

Router(config-pmap)# exit Router(config)# commit

Verification Use the show policy-map interface to verify the configuration.

Router# show policy-map int hu 0/0/0/35 output TenGigE0/0/0/6 output: pm-out- queue

HundredGigE0/0/0/35 output: egress_qosgrp_ecn

Class tc7

Classification statistics

Matched

:

Transmitted

:

Total Dropped

:

Queueing statistics

Queue ID

Taildropped(packets/bytes)

(packets/bytes)

(rate – kbps)

195987503/200691203072

0

188830570/193362503680

0

7156933/7328699392

0

: 18183 : 7156933/7328699392

WRED profile for

RED Transmitted (packets/bytes)

: N/A

RED random drops(packets/bytes)

: N/A

RED maxthreshold drops(packets/bytes)

: N/A

RED ecn marked & transmitted(packets/bytes): 188696802/193225525248

Class tc6

Classification statistics

(packets/bytes)

(rate – kbps)

Matched

:

666803815/133360763000

0

Transmitted

:

642172362/128434472400

0

Total Dropped

:

24631453/4926290600

0

Queueing statistics

Queue ID

: 18182

Taildropped(packets/bytes)

: 24631453/4926290600

WRED profile for

RED Transmitted (packets/bytes)

: N/A

RED random drops(packets/bytes)

: N/A

RED maxthreshold drops(packets/bytes)

: N/A

RED ecn marked & transmitted(packets/bytes): 641807908/128361581600

Class tc5

Classification statistics

(packets/bytes)

(rate – kbps)

Matched

:

413636363/82727272600

6138

Transmitted

:

398742312/79748462400

5903

Total Dropped

:

14894051/2978810200

235

Queueing statistics

Queue ID

: 18181

Taildropped(packets/bytes)

: 14894051/2978810200

WRED profile for

RED Transmitted (packets/bytes)

: N/A

RED random drops(packets/bytes)

: N/A

RED maxthreshold drops(packets/bytes)

: N/A

RED ecn marked & transmitted(packets/bytes): 398377929/79675585800

Note The RED ecn marked & transmitted(packets/bytes) row displays the statistics for ECN marked packets. To begin with, it displays 0/0.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 56

6 C H A P T E R

Configure Priority Flow Control

· Priority Flow Control Overview, on page 57 · Configurable ECN Threshold and Maximum Marking Probability Values, on page 66 · Priority Flow Control Watchdog Overview, on page 71

Priority Flow Control Overview

Table 13: Feature History Table
Feature Name
Priority Flow Control on Cisco 8808 and Cisco 8812 Modular Chassis Line Cards

Release Information Release 7.5.3

Shortlink Priority Flow Control Release 7.3.3

Feature Description
Priority Flow Control is now supported on the following line card in the buffer-internal mode:
· 88-LC0-34H14FH
The feature is supported in the buffer-internal and buffer-extended modes on:
· 88-LC0-36FH
Apart from the buffer-external mode, support for this feature now extends to the buffer-internal mode on the following line cards:
· 88-LC0-36FH-M
· 8800-LC-48H
This feature and the hw-module profile priority-flow-control command are supported on 88-LC0-36FH line card.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 57

Priority Flow Control Overview

Configure Priority Flow Control

Feature Name

Release Information

Priority Flow Control Support on Cisco 8800 36×400 GbE QSFP56-DD Line Cards (88-LC0-36FH-M)

Release 7.3.15

Priority Flow Control

Release 7.3.1

Feature Description
This feature and the hw-module profile priority-flow-control command are supported on 88-LC0-36FH-M and 8800-LC-48H line cards.
All previous functionalities and benefits of this feature are available on these line cards. However, the buffer-internal mode is not supported.
In addition, to use the buffer-extended mode on these line cards, you are required to configure the performance capacity or headroom values. This configuration requirement ensures that you can better provision and balance workloads to achieve lossless behavior, which in turn ensures efficient use of bandwidth and resources.
This feature and the hw-module profile priority-flow-control command are not supported.

Priority-based Flow Control (IEEE 802.1Qbb), which is also referred to as Class-based Flow Control (CBFC) or Per Priority Pause (PPP), is a mechanism that prevents frame loss that is due to congestion. PFC is similar to 802.x Flow Control (pause frames) or link-level flow control (LFC). However, PFC functions on a per class-of-service (CoS) basis.
During congestion, PFC sends a pause frame to indicate the CoS value to pause. A PFC pause frame contains a 2-octet timer value for each CoS that indicates the length of time to pause the traffic. The unit of time for the timer is specified in pause quanta. A quanta is the time required for transmitting 512 bits at the speed of the port. The range is from 0 through 65535 quanta.
PFC asks the peer to stop sending frames of a particular CoS value by sending a pause frame to a well-known multicast address. This pause frame is a one-hop frame and isn’t forwarded when received by the peer. When the congestion mitigates, the router stops sending the PFC frames to the upstream node.
You can configure PFC for each line card using the hw-module profile priority- flow-control command in one of two modes:
· buffer-internal
· buffer-extended

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 58

Configure Priority Flow Control

buffer-internal mode

Note PFC threshold configurations are deprecated in pause command. Use the hw- module profile priority-flow-control command to configure PFC threshold configurations.
Related Topics · Configure Priority Flow Control, on page 61
· Priority Flow Control Watchdog Overview, on page 71
buffer-internal mode
Use this mode if PFC-enabled devices aren’t more than 1 km apart. You can set values for pause-threshold, headroom (both related to PFC), and ECN for the traffic class using the hw-module profile priority-flow-control command in this mode. The buffer-internal configuration applies to all ports that the line card hosts, which mean that you can configure a set of these values per line card. The existing queue limit and ECN configuration in the queueing policy attached to the interface has no impact in this mode. The effective queue limit for this mode = pause-threshold + headroom (in bytes)
Restrictions and Guidelines
The following restrictions and guidelines apply while configuring the PFC threshold values using the buffer-internal mode.
· The PFC feature isn’t supported on fixed chassis systems. · Ensure that there’s no breakout configured on a chassis that has the PFC configured. Configuring PFC
and breakout on the same chassis may lead to unexpected behavior, including traffic loss. · The feature isn’t supported on bundle and non-bundle sub- interface queues. · The feature is supported on 40GbE, 100 GbE, and 400 GbE interfaces. · The feature isn’t supported in the 4xVOQ queueing mode. · The feature isn’t supported when sharing of VOQ counters is configured.
buffer-extended mode
Use this mode for PFC-enabled devices with long-haul connections. You can set the value for pause-threshold using the hw-module profile priority-flow- control command in this mode. You must, however, configure the queuing policy attached to the interface to set the ECN and queueing limits. The buffer- extended configuration applies to all ports that the line card hosts, which mean that you can configure a set of these values per line card.

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 59

Important Considerations

Configure Priority Flow Control

Configuration Guidelines · Important points while configuring the buffer- extended mode on 88-LC0-36FH-M line cards: · Apart from pause-threshold, you must also configure values for headroom. · The headroom value range is from 4 through 75000. · Specify pause-threshold and headroom values in units of kilobytes (KB) or megabytes (MB).
· Important points while configuring the buffer-extended mode on 8800-LC-48H line cards: · Configure values only for pause-threshold. Don’t configure headroom values. · Configure pause-threshold in units of milliseconds (ms) or microseconds. · Don’t use units of kilobytes (KB) or megabytes (MB) units, even though the CLI displays them as options. Only use units of milliseconds (ms) or microseconds.

(Also see Configure Priority Flow Control, on page 61)

Important Considerations
· If you configure PFC values in the buffer-internal mode, then the ECN value for the line card is derived from the buffer-internal configuration. If you configure PFC values in the buffer-extended mode, then the ECN value is derived from the policy map. (For details on the ECN feature, see Explicit Congestion Notification , on page 54.)
· The buffer-internal and buffer-extended modes can’t coexist on the same line card.
· If you add or remove traffic-class actions on a line card, you must reload the line card.
· When using the buffer-internal mode, you can change values of the following parameters without having to reload the line card. However, if you add a new traffic class and configure these values for the first time on that traffic class, you must reload the line card for the values to come into effect.
· pause-threshold
· headroom
· ECN

· If you add or remove ECN configuration using the hw-module profile priority- flow-control command, you must reload the line card for the ECN changes to take effect.
· The PFC threshold value ranges for the buffer-internal mode are as follows.

Threshold

Configured (bytes)

pause (min)

307200

pause (max)

422400

headroom (min)

345600

headroom (max)

537600

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 60

Configure Priority Flow Control

Hardware Support for Priority Flow Control

Threshold ecn (min) ecn (max)

Configured (bytes) 153600 403200

· For a traffic-class, the ECN value must always be lesser than the configured pause-threshold value.
· The combined configured values for pause-threshold and headroom must not exceed 844800 bytes. Else, the configuration is rejected.
· The pause-threshold value range for buffer-extended mode is from 2 milliseconds (ms) through 25 ms and from 2000 microseconds through 25000 microseconds.

Hardware Support for Priority Flow Control
The table lists the PIDs that support PFC per release and the PFC mode in which the support is available.
Table 14: PFC Hardware Support Matrix

Release Release 7.3.15

PID · 88-LC0-36FH-M · 88-LC0-36FH

PFC Mode buffer-extended

Release 7.0.11

8800-LC-48H

buffer-internal

Configure Priority Flow Control
You can configure PFC to enable the no-drop behavior for the CoS as defined by the active network QoS policy.

Note The system enables shortlink PFC by default when you enable PFC.
Configuration Example You must accomplish the following to complete the PFC configuration: 1. Enable PFC at the interface level. 2. Configure ingress classification policy. 3. Attach the PFC policy to the interface. 4. Configure PFC threshold values using either the buffer-internal or buffer-extended mode.
Router# configure Router(config)# priority-flow-control mode on /Configure ingress classification policy/

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 61

Configure Priority Flow Control

Configure Priority Flow Control

Router(config)# class-map match-any prec7 Router(config-cmap)# match precedence Router(config)# class-map match-any tc7 /Ingress policy attach/ Router(config-if)# service-policy input QOS_marking /Egress policy attach/ Router(config-if)# service-policy output qos_queuing Router(config-pmap-c)# exit Router(config-pmap)# exit Router(config)#show controllers npu priority- flow-control location
Running Configuration
Interface Level interface HundredGigE0/0/0/0
priority-flow-control mode on
Ingress: class-map match-any prec7
match precedence 7
end-class-map
!
class-map match-any prec6
match precedence 6
end-class-map
!
class-map match-any prec5
match precedence 5
end-class-map
!
class-map match-any prec4
match precedence 4
end-class-map
!
class-map match-any prec3 match precedence 3 end-class-map ! class-map match- any prec2 match precedence 2 end-class-map ! class-map match-any prec1 match precedence 1 end-class-map ! ! policy-map QOS_MARKING

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 62

Configure Priority Flow Control
class prec7 set traffic-class 7 set qos-group 7
! class prec6
set traffic-class 6 set qos-group 6 ! class prec5 set traffic-class 5 set qos- group 5 ! class prec4 set traffic-class 4 set qos-group 4 ! class prec3 set traffic-class 3 set qos-group 3 ! class prec2 set traffic-class 2 set qos- group 2 ! class prec1 set traffic-class 1 set qos-group 1 ! class class- default set traffic-class 0 set qos-group 0 !
Egress: class-map match-any tc7
match traffic-class 7 end-class-map ! class-map match-any tc6 match traffic- class 6 end-class-map ! class-map match-any tc5 match traffic-class 5 end- class-map
!
class-map match-any tc4
match traffic-class 4
end-class-map
!
class-map match-any tc3
match traffic-class 3
end-class-map
!

Configure Priority Flow Control

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 63

Configure Priority Flow Control

Configure Priority Flow Control

class-map match-any tc2 match traffic-class 2 end-class-map ! class-map match- any tc1 match traffic-class 1 end-class-map ! policy-map QOS_QUEUING class tc7
priority level 1 shape average percent 10 ! class tc6 bandwidth remaining ratio 1 queue-limit 100 ms ! class tc5 bandwidth remaining ratio 20 queue- limit 100 ms ! class tc4 bandwidth remaining ratio 20 random-detect ecn random-detect 6144 bytes 100 mbytes ! class tc3 bandwidth remaining ratio 20 random-detect ecn random-detect 6144 bytes 100 mbytes ! class tc2 bandwidth remaining ratio 5 queue-limit 100 ms ! class tc1 bandwidth remaining ratio 5 queue-limit 100 ms ! class class-default bandwidth remaining ratio 20 queue- limit 100 ms ! [buffer-extended] hw-module profile priority-flow-control location 0/0/CPU0 buffer-extended traffic-class 3 pause-threshold 10 ms buffer-extended traffic-class 4 pause-threshold 10 ms
!
[buffer-internal] hw-module profile priority-flow-control location 0/1/CPU0 buffer-internal traffic-class 3 pause-threshold 403200 bytes headroom 441600 bytes ecn
224640 bytes buffer-internal traffic-class 4 pause-threshold 403200 bytes headroom 441600 bytes ecn
224640 bytes
Verification
Router#sh controllers hundredGigE0/0/0/22 priority-flow-control Priority flow control information for interface HundredGigE0/0/0/22:

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 64

Configure Priority Flow Control

Configure Priority Flow Control

Priority Flow Control:

Total Rx PFC Frames : 0

Total Tx PFC Frames : 313866

Rx Data Frames Dropped: 0

CoS Status Rx Frames

— —— ———-

0 on

0

1 on

0

2 on

0

3 on

0

4 on

0

5 on

0

6 on

0

7 on

0

/[buffer-internal]/ Router#show controllers hundredGigE 0/9/0/24 priority- flow-control

Priority flow control information for interface HundredGigE0/9/0/24:

Priority Flow Control:

Total Rx PFC Frames : 0

Total Tx PFC Frames : 313866

Rx Data Frames Dropped: 0

CoS Status Rx Frames

— —— ———-

0 on

0

1 on

0

2 on

0

3 on

0

4 on

0

5 on

0

6 on

0

7 on

0

/[buffer-internal, tc3 & tc4 configured. TC4 doesn’t have ECN]/

Router#show controllers npu priority-flow-control location

Location Id:

0/1/CPU0

PFC:

Enabled

PFC-Mode:

buffer-internal

TC Pause

Headroom

ECN

——————————————————-

3 86800 bytes

120000 bytes 76800 bytes

4 86800 bytes

120000 bytes Not-configured

/[buffer-extended PFC, tc3 & tc4 configured]/

Router#show controllers npu priority-flow-control location

Location Id:

0/1/CPU0

PFC:

Enabled

PFC-Mode:

buffer-extended

TC Pause

———–

3 5000 us

4 10000 us

/[No PFC]/

Router#show controllers npu priority-flow-control location

Location Id:

0/1/CPU0

PFC:

Disabled

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 65

Configurable ECN Threshold and Maximum Marking Probability Values

Configure Priority Flow Control

Related Topics · Priority Flow Control Overview, on page 57
Related Commands hw-module profile priority-flow-control location

Configurable ECN Threshold and Maximum Marking Probability Values

Table 15: Feature History Table

Feature Name

Release Information

Configurable ECN Threshold and Release 7.5.4 Maximum Marking Probability Values

Feature Description
While configuring PFC in the buffer-internal mode, you can now optimize congestion notification from the end router to the transmitting router, thus preventing the aggressive throttle of the source traffic. This optimization is possible because we’ve provided the flexibility to configure the minimum and maximum values for the ECN threshold and the maximum value for marking probability. With these values configured, the probability percentage marking is applied linearly, starting at the ECN minimum threshold till the ECN Max threshold.
Earlier releases fixed the maximum ECN marking probability at 100% at the maximum ECN threshold.
This functionality adds the following options to the hw-module profile priority-flow-control command:
· max-threshold
· probability-percentage

ECN Threshold and Maximum Marking Probability Values
So far, the maximum ECN marking probability was not configurable and was fixed at 100%. You couldn’t configure the ECN maximum threshold value either. Such an arrangement of preset marking probabilities and

Modular QoS Configuration Guide for Cisco 8000 Series Routers, IOS XR Release 7.3.x 66

Configure Priority Flow Control

Benefits of Configurable ECN Threshold and Maximum Marking Probability Values

fixed maximum threshold values meant traffic rates began to drop as a function of the queue length. Because of the linear increase in the ECN marking probability–and the consequent congestion signaling from the end host to the transmitting host–traffic rates could begin slowing down even if your link had the necessary bandwidth.
W

Read User Manual Online (PDF format)

Read User Manual Online (PDF format)  >>

Download This Manual (PDF format)

Download this manual  >>

Related Manuals