Guest

Cisco IOS Software Releases 12.0 S

IPv6 QoS Enhancements for 12000 Series Router Line Cards

  • Viewing Options

  • PDF (233.6 KB)
  • Feedback
IPv6 QoS Enhancements for 12000 Series Router Line Cards

Table Of Contents

IPv6 QoS Enhancements for 12000 Series Router Line Cards

IPv6 QoS Enhancement Features

802.1p Mapping

802.1p Mapping Configuration

802.1p Mapping Restrictions

Hierarchical Quality of Service

Hierarchical QoS Configuration

Hierarchical QoS Restrictions

Time and Percentage-Based Shaping, Policing, WRED, and Queue-Limit

Time and Percentage-Based Shaping, Policing, WRED, and Queue-Limit Configuration

Time and Percentage-Based Shaping, Policing, WRED, and Queue-Limit Restrictions

Legacy Tofab QoS

Legacy Tofab QoS Configuration

Legacy Tofab QoS Restrictions

Benefits

Related Features and Technologies

Related Documents

Supported Platforms

Supported Standards, MIBs, and RFCs

Prerequisites

Command Reference

Glossary


IPv6 QoS Enhancements for 12000 Series Router Line Cards


Part Number: OL-8688-01 (Rev. A0) November 16, 2007

Feature History

Release
Modification

12.0(32)S

The IPv6 QoS enhancement features were introduced on Integrated Services Engine (ISE) and multiservice engine line cards for Cisco 12000 series routers.


This feature module provides the IPv6 QoS Enhancement information in the following sections:

IPv6 QoS Enhancement Features

Supported Platforms

Supported Standards, MIBs, and RFCs

Prerequisites

Command Reference

Glossary

IPv6 QoS Enhancement Features

The IPv6 QoS Enhancement features are designed for Integrated Services Engine (ISE) and multiservice engine line cards on the Cisco 12000 series routers running Cisco IOS Release 12.0(32)S.

The IPv6 QoS Enhancement features are as follows:

802.1p Mapping

Hierarchical Quality of Service

Time and Percentage-Based Shaping, Policing, WRED, and Queue-Limit

Legacy Tofab QoS

802.1p Mapping

For an IPv6 edge router that is attached to a Layer 2 switch on a customer facing interface and to an IPv6 router on a core facing interface, two enhancements ensure a consistent, end-to-end QoS model across the network:

1. The ability to map an L2 CoS to an L3 DSCP (or precedence) as packets ingress on the customer facing interface.

2. The ability to map an L3 DSCP (or precedence) to an L2 CoS for packets egressing on the customer facing interface.

802.1p Mapping Configuration

The CLI command for this feature already exists and is already supported by IPv4. There are no new or modified CLI commands for this feature in Cisco IOS Release 12.0(32)S. The class-map configuration follows the Cisco IOS Modular Quality of Service CLI (MQC) standard (up to 4 values or ranges).

To match 802.1p bits, use the match cos <x> command. Up to 4 different CoS values can be configured on the same line.

For example:

Router(config)#class-map match-any vlan_cos
Router(config-pmap-c)#match cos  1  2  3  4

To set the 802.1p bits in a VLAN tagged packet, use the set cos <x> command.

The following example shows packets mapped from the ef class to cos 7 and from the ah1 class to cos 1.

Router#config t
Router(config)#policy-map cos_mapper
Router(config-pmap)#class ef
Router(config-pmap-c)#set cos 7
Router(config-pmap)#class ah1
Router(config-pmap-c)#set cos 1
Router(config-pmap-c)#exit

802.1p Mapping Restrictions

Matching 802.1p priority bits is only supported on ingress interfaces. Match cos policy-maps will be rejected on egress interfaces. Likewise, setting 802.1p bits is only supported on egress interfaces and will be rejected on ingress interfaces.

Hierarchical Quality of Service

The IPv6 Hierarchical QoS enhancement provides the ability to:

Apply QoS policies on a per-user basis

Match a VLAN in a parent policy and apply a child policy to each matched VLAN

The child-level configuration can be any supported IPv6 QoS configuration and is not limited to match DSCP. The only exception is match VLAN, which is not supported in child policies.

Bandwidth cannot be configured in the classes of the parent policy. If you attempt to configure bandwidth in a parent policy class, the policy is rejected, and the following error message is displayed:

% bandwidth cannot be configured on a parent class in policy test_parent,
% only shape is supported on egress.

Hierarchical QoS Configuration

The CLI command for this feature already exists and is already supported by IPv4. There are no new or modified CLI commands for this feature in Cisco IOS Release 12.0(32)S.

To configure top-level class-map matches, use the match vlan command and the class-map command:

Router#config t
Router(config)#class-map Cust1-class
Router(config-cmap)#match vlan 1
Router(config)#class-map Cust2-class
Router(config-cmap)#match vlan 2
Router(config)#class-map CustN-class
Router(config-cmap)#match vlan N
Router(config-cmap)#exit

To configure child-level class-map matches, use the match dscp command and the class-map command.

Router#config t
Router(config)#class-map EF-class
Router(config-cmap)#match dscp cs5
Router(config)#class-map AF1-class
Router(config-cmap)#match dscp cs4
Router(config)#class-map AF2-class
Router(config-cmap)#match dscp cs3
Router(config-cmap)#exit

Configuring Child Policy

Router#config t
Router(config)#policy-map Child
Router(config-pmap)#class EF-class
Router(config-pmap-c)#priority
Router(config-pmap-c)#police 100000
Router(config-pmap)#class AF1-class
Router(config-pmap-c)#bandwidth percent 80 
Router(config-pmap-c)#police 4000000
Router(config-pmap)#class AF2-class
Router(config-pmap-c)#bandwidth percent 10 
Router(config-pmap)#class class-default
Router(config-pmap-c)#exit
Router(config-pmap)#exit
Router(config)#

Configuring Parent Policy

Router#config t
Router(config)#policy-map Parent
Router(config-pmap)#class Cust1-class
Router(config-pmap-c)#shape average 10000000
Router(config-pmap-c)#service-policy Child
Router(config-pmap)#class Cust2-class
Router(config-pmap-c)#shape average 10000000
Router(config-pmap-c)#service-policy Child
Router(config-pmap)#class CustN-class
Router(config-pmap-c)#shape average 10000000
Router(config-pmap-c)#service-policy Child
Router(config-pmap-c)#exit
Router(config-pmap)#exit
Router(config)#

Applying a Policy on the Main Interface

Router(config)#interface GigabitEthernet0/0
Router(config-if)#service-policy out Parent
Router(config-if)#exit
Router(config)#

Applying a QoS Policy with Traffic Matching Using Precedence, DSCP, Protocol, and ACL

Configuring the Class Map

Router#config t
Router(config)#class-map match-all dscp46
Router(config-cmap)#match  dscp 46
Router(config)#class-map match-all vlan1
Router(config-cmap)#match vlan  1
Router(config)#class-map match-all vlan2
Router(config-cmap)#match vlan  2
Router(config)#class-map match-all v6acl
Router(config-cmap)#match access-group name qos_acl
Router(config)#class-map match-all prec3
Router(config-cmap)#match  precedence 3
Router(config)#class-map match-all ipv6
Router(config-cmap)#match protocol ipv6
Router(config-cmap)#exit
Router(config-if)#exit
Router(config-if)#
Router(config)#

Configuring the Policy Map

Router(config)#policy-map child1
Router(config-pmap)#class dscp46
Router(config-pmap-c)#shape average 16000000
Router(config-pmap-c)#random-detect dscp-based
Router(config-pmap-c)#random-detect dscp 46 100 packets 250 packets 1
Router(config-pmap)#class prec3
Router(config-pmap-c)#police 32000000 1000000 1000000 conform-action transmit 
Router(config-pmap-c-police)#exceed-action drop
Router(config-pmap)#class v6acl
Router(config-pmap-c)#shape average 8192000
Router(config-pmap-c)#queue-limit 500 packets
Router(config-pmap)#class ipv6
Router(config-pmap-c)#set dscp 3
Router(config-pmap)#class class-default
Router(config-pmap-c)#bandwidth remaining percent 100
Router(config)#policy-map child2
Router(config-pmap)#class dscp46
Router(config-pmap-c)#set cos 6
Router(config-pmap-c)#bandwidth 8192
Router(config-pmap)#class ipv6
Router(config-pmap-c)#police 16000000 500000 500000 conform-action set-dscp-transmit af22 
Router(config-pmap-c-police)#exceed-action drop
Router(config-pmap-c)#bandwidth 32000
Router(config-pmap)#class class-default
Router(config-pmap-c)#bandwidth remaining percent 100
Router(config)#policy-map parent
Router(config-pmap)#class vlan1
Router(config-pmap-c)#shape average 128000000
Router(config-pmap-c)#service-policy child1
Router(config-pmap)#class vlan2
Router(config-pmap-c)#shape average 128000000
Router(config-pmap-c)#service-policy child2
Router(config-pmap)#exit
Router(config-if)#exit
Router(config)#ipv6 access-list qos_acl
Router(config-ipv6-acl)#permit tcp any 2001:1:2:3:4::/96 gt 1024
Router(config-ipv6-acl)#exit
Router(config-if)#exit
Router(config)#

Hierarchical QoS Restrictions

In the Layer 3 model, the hierarchical QoS command, match VLAN is only supported in parent policies. Match VLAN is not supported in child policies.

Match VLAN cannot be mixed with other classification criteria in a parent policy.

Hierarchical QoS is supported only on egress interfaces.

Time and Percentage-Based Shaping, Policing, WRED, and Queue-Limit

The Time and Percentage-Based Shaping, Policing, WRED, and Queue-Limit feature allows you to configure:

Percentage-based traffic shaping

Percentage-based QoS policing

Time-based Weighted Random Early Detection (WRED) minimum and maximum thresholds

Queue limit threshold in milliseconds or in microseconds

After the threshold limits are configured in a policy map, the policy map can be used on multiple interfaces, including those with different amounts of bandwidth.

Time-based WRED can be used with DSCP as well as precedence-based WRED.

This feature module section provides new configuration information for Cisco IOS Release 12.0(32)S. For configuration information on this feature, refer to the QoS: Time-Based Thresholds for WRED and Queue Limit for the Cisco 12000 Series Router feature module.

Time and Percentage-Based Shaping, Policing, WRED, and Queue-Limit Configuration

Configuring Shape

To shape a class to a percent of visible bandwidth, use the following command:

shape average percent <x%> [<sustained burst> ms [<excess burst> ms]]

Configuring Police

To shape police, use the following command:

police cir percent <x%> [bc <y> ms [be <z> ms]]

Configuring WRED

To configure the WRED minimum and maximum thresholds based on a unit of time, as opposed to number of packets, use the following command:

random-detect dscp <d> <min> ms <max> ms

Configuring Queue-Limit

To configure a queue limit based on a unit of time, use the following command:

queue-limit <x> ms

Time and Percentage-Based Shaping, Policing, WRED, and Queue-Limit Configuration Examples

Router#config t
Router(config)#policy-map shape_percent
Router(config-pmap)#class ipv6
Router(config-pmap-c)#shape average percent 50 200 ms 200 ms
Router(config-pmap-c)#exit
Router(config-pmap)#exit
Router(config)#
Router(config)#policy-map police_percent
Router(config-pmap)#class ipv6
Router(config-pmap-c)#police cir percent 75 bc 300 ms be 100 ms
Router(config-pmap-c)#exit
Router(config-pmap)#exit
Router(config)#
Router(config)#policy-map qlimit_time
Router(config-pmap)#class ipv6
Router(config-pmap-c)#bandwidth percent 55
Router(config-pmap-c)#queue-limit 450 ms
Router(config-pmap-c)#exit
Router(config-pmap)#exit
Router(config)#
Router(config)#policy-map wred_time
Router(config-pmap-c)#class ipv6
Router(config-pmap-c)#shape average percent 50
Router(config-pmap-c)#random-detect dscp-based
Router(config-pmap-c)#random-detect dscp 1   50 ms 150 ms
Router(config-pmap-c)#random-detect dscp 46 100 ms 200 ms
Router(config-pmap-c)#exit
Router(config-pmap)#exit
Router(config)#

Time and Percentage-Based Shaping, Policing, WRED, and Queue-Limit Restrictions

The GSR hardware requires that the Q-limit and Weighted Random Early Detection (WRED) are programmed in units of packets. Configuring it based on a unit of time requires an assumption as to the average packet size. The average packet size that is assumed by the existing code is 256 bytes.

Legacy Tofab QoS

The legacy Tofab QoS enhancement enables users to configure QoS on the toward-the-fabric queues of line cards. Tofab QoS does not refer to configuring ingress QoS policies or shape queues.

Under current legacy Tofab QoS, line cards cannot be configured with the Cisco IOS Modular Quality of Service CLI (MQC). Legacy commands previous to MQC must be used.

Current Tofab QoS configuration can perform the following tasks:

Classify packets based on precedence

Map packet precedence to a RED profile

Map packet precedence to one of 7 CoS queues or the low-latency queue

Configure DRR weights on the CoS queues to allow a level of bandwidth allocation between classes of traffic

Legacy Tofab QoS Configuration

Configuring a Class of Service Queue Group

To configure a Class of Service Queue Group, use the cos-queue-group command:

Router#config t
Router(config)#cos-queue-group <name>
Router(config-cos-que)#precedence <value> queue <queue #>
Router(config-cos-que)#precedence <value> random-detect-label <label>
Router(config-cos-que)#queue <queue #> <DRR weight>
Router(config-cos-que)#random-detect <label> <min threshold> <max threshold> 1
Router(config-cos-que)#exit
Router(config)#

Configuring a Slot Table Class of Service

To configure a Slot Table Class of Service, use the slot-table-cos command:

Router(config)#config t
Router(config)#slot-table-cos <name>
Router(config-slot-cos)#destination-slot <slot #> <name of cos-queue-group to apply>
Router(config-slot-cos)#exit
Router(config)#

Configuring an Ingress Class of Service Slot

To configure an Ingress Class of Service Slot, use the rx-cos-slot command:

Router(config)#config t
Router(config)#rx-cos-slot <slot# | all> <name of slot-table-cos to apply>
Router(config)#

Legacy Tofab QoS Configuration Example

Router#config t
Router(config)#rx-cos-slot 4 TOFAB
Router(config)#
Router(config)#slot-table-cos TOFAB
Router(config-slot-cos)#destination-slot all TEST1
Router(config-slot-cos)#exit
Router(config)#
Router(config)#cos-queue-group TEST1
Router(config-cos-que)#precedence 1 queue 1
Router(config-cos-que)#precedence 2 queue 2
Router(config-cos-que)#precedence 3 queue 3
Router(config-cos-que)#precedence 4 queue 3
Router(config-cos-que)#precedence 5 queue 3
Router(config-cos-que)#precedence 6 queue low-latency
Router(config-cos-que)#precedence 7 queue low-latency
Router(config-cos-que)#queue 1 500
Router(config-cos-que)#queue 2 1000
Router(config-cos-que)#queue 3 1500
Router(config-cos-que)#queue low-latency strict-priority
Router(config-cos-que)#exit
Router(config)#

Legacy Tofab QoS Restrictions

This feature only supports precedence as a classification criteria. If the customer classifies traffic within their network using DSCP, then they must:

Convert the DSCP to a precedence value when configuring the CLI.

Ensure that none of their traffic classes use DSCP values, which overlap when converted to precedence.

An example is DSCP 1 and DSCP 2. These both map to precedence 0, and the tofab QoS CLI cannot distinguish between them.

If an input MQC policy is applied that has a set action that remarks the packet DSCP then the packet is enqueued on the Tofab queues based on the remarked DSCP value, not the original value.

Benefits

The IPv6 enhancements give the Integrated Services Engine (ISE) and multiservice engine line cards the same features as IPv4.

Related Features and Technologies

Cisco IOS Quality of Service (QoS) Solutions for Cisco 12000 series routers

Related Documents

For further information on configuring Cisco 12000 series routers, refer to the following documents.

Cisco 12000 Series Router Configuration Guide for Cisco IOS

Cisco IOS Release 12.0S Features for Cisco 12000 Series Internet Router

Cisco IOS Quality of Service Solutions Configuration Guide

Cisco IOS Quality of Service Solutions Command Reference

Installation and Configuration Guide for the specific router

Supported Platforms

IPv6 enhancements are supported on Cisco 12000 series router, Integrated Services Engine (ISE) and multiservice engine line cards running Cisco IOS Release 12.0(32)S.

Supported Standards, MIBs, and RFCs

Standards

No new or modified standards are supported, and support for existing standards has not been modified.

MIBs

No new or modified MIBs are supported, and support for existing MIBs has not been modified.

RFCs

No new or modified RFCs are supported, and support for existing RFCs has not been modified.

Prerequisites

No prerequisites are required for the IPv6 QoS enhancement features.

Command Reference

There are no new or modified CLI commands for IPv6 QoS enhancement features in Cisco IOS Release 12.0(32)S.

Glossary

VLAN

Virtual Local Area Network

WRED

Weighted Random Early Detection (WRED). A congestion avoidance mechanism used in queueing that ensures that high-precedence traffic has lower loss rates than other traffic during times of congestion.