Table des matières

Introduction

Conditions préalables

Exigences

Composants utilisés

Informations générales

Terminologie

Examiner les Syslogs liés à la QoS

Valider l'utilisation du matériel et l'état des politiques

Comprendre l'utilisation actuelle des ressources matérielles QS

Exemple d'utilisation (9200L 17.3.4)

Dépannage de l'utilisation matérielle

Scénario : estimation de l'échelle TCAM QoS

Scénario : Échelle QoS TCAM augmentée (non dépassée)

Scénario : échelle QoS TCAM dépassée

Techniques De Correction

Commandes à collecter pour le TAC

Informations connexes

ID de bogue Cisco

Introduction

Ce document décrit comment comprendre et vérifier l'utilisation du matériel de qualité de service (QoS) sur les commutateurs de la gamme Catalyst 9000 basés sur UADP ASIC

Conditions préalables

Exigences

Cisco vous recommande de prendre connaissance des rubriques suivantes :

- Configuration QoS de Cisco MQC ; cartes-politiques, cartes-classes, listes de contrôle d'accès, entrées de contrôle d'accès

Composants utilisés

Les informations contenues dans ce document sont basées sur les versions de matériel et de logiciel suivantes :

- Cisco Catalyst 9200L Cisco IOS®-XE 17.3.4

Les concepts généraux, les idées et les différents résultats sont visibles dans d'autres commutateurs Cisco Catalyst 9000.

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.

Produits connexes

Ce document peut également être utilisé avec les versions de matériel et de logiciel suivantes :

- Commutateurs Catalyst 9300 - 9600

- Catalyst 9300X et 9400X

- Versions logicielles de Cisco IOS® XE 16.x et 17.x

Informations générales

- Diverses fonctionnalités des commutateurs de la gamme Catalyst 9000 consomment des ressources matérielles limitées. Ces ressources permettent d'accélérer les performances de ces fonctions et de fournir les débits de transfert élevés attendus d'un commutateur.

- L'échelle de ces ressources peut varier d'un modèle de commutateur à l'autre, mais la méthodologie de base de dépannage reste la même pour tous les commutateurs de la gamme Catalyst 9000 avec l'ASIC UADP

- Généralement, la principale ressource matérielle limitée avec les commutateurs est appelée TCAM (Ternary Content Addressable Memory)

- Dans les commutateurs de la gamme Catalyst 9000, plusieurs types de mémoire sont utilisés au-delà du TCAM, en fonction des besoins spécifiques d'une fonctionnalité donnée

Ce document vous aide à :

- Comprendre comment la qualité de service (QoS) consomme les entrées matérielles

- Comprendre les journaux ou les messages d'erreur qui indiquent un problème de ressource matérielle QoS

- Déterminer les actions à entreprendre pour résoudre les problèmes de ressources matérielles liés à la QoS

Terminologie

QoS

Qualité de service

Concept/groupe de fonctionnalités associées permettant de classer, de marquer, de mettre en file d'attente et de planifier le trafic entrant et sortant d'un périphérique réseau

TCAM

mémoire ternaire adressable par le contenu

Type de mémoire qui stocke et interroge les entrées avec trois entrées différentes : 0, 1 et X. Ce type de mémoire est utilisé dans les cas où il existe plusieurs correspondances avec la même entrée, et le hachage résultant pour chacune d'elles ne serait pas unique. Cette table inclut un masque ou une valeur X qui lui permet de savoir si elle correspond ou non à cette entrée.

DSCP

Point de code de services différenciés

Mécanisme de classification du trafic contenu dans l’en-tête IP d’un paquet

CoS

Classe de service

Mécanisme de classification du trafic contenu dans l’en-tête de trame Ethernet d’un paquet

AS

Entrée de contrôle d'accès

Une seule règle ou ligne dans une liste de contrôle d'accès (ACL)

ACL

liste de contrôle d'accès

Groupe d'entrées de contrôle d'accès (ACE) utilisées par diverses fonctionnalités pour faire correspondre le trafic et effectuer une action

NOURRIR

Conducteur De Moteur Avant

Composant logiciel qui programme le matériel du périphérique

Examiner les Syslogs liés à la QoS

Si vous manquez de ressources liées à la QoS, les messages SYSLOG sont générés par le système :

Message Syslog relatif à la QoS

Définition

Actions de récupération

%FED_QOS_ERRMSG-4-TCAM_OVERFLOW : Commutateur 1 R0/0 : fed : échec de la programmation de TCAM pour policy-map_ingress_pmap2 sur GigabitEthernet1/0/10.

L'espace est insuffisant pour le matériel (TCAM) réservé aux entrées QoS

Assurez-vous que votre configuration est valide/prise en charge. Ensuite, passez en revue le reste de ce document pour valider l'utilisation actuelle de votre commutateur à l'échelle et les étapes possibles pour réduire si elle est surutilisée.

%FED_QOS_ERRMSG-3-QUEUE_SCHEDULER_HW_ERROR : Commutateur 1 R0/0 : fed : échec de la configuration du planificateur de file d'attente pour GigabitEthernet1/0/27

L'installation sur le matériel du planificateur de file d'attente QoS a échoué

Vérifiez que votre configuration est prise en charge, reportez-vous au guide de configuration QoS correspondant à votre plate-forme et à votre version de logiciel spécifiques.

Pour 9200L UNIQUEMENT : vérifiez l'ID de bogue Cisco CSCvz54607 et l'ID de bogue Cisco CSCvz76172

FED_QOS_ERRMSG-3-QUEUE_BUFFER_HW_ERROR : R0/0 : fed : échec de la configuration du tampon de file d'attente par défaut

Échec de l'installation matérielle des tampons de file d'attente QoS

Vérifiez que votre configuration est prise en charge, consultez le guide de configuration QoS correspondant à votre plate-forme et à votre version de logiciel spécifiques.

Vérifiez l'ID de bogue Cisco CSCvs49401

Valider l'utilisation du matériel et l'état des politiques

Vérifier l'utilisation actuelle de QoS TCAM

show platform hardware fed switch active fwd-asic resource tcam utilization

Remarque : pour plus d'informations sur cette commande, reportez-vous à

16.X versions:

CAM Utilization for ASIC  [0]

Table                                              Max Values        Used Values

--------------------------------------------------------------------------------

Unicast MAC addresses                              16384/256          15/21

L3 Multicast entries                               1024/256           0/7

L2 Multicast entries                               1024                 9

Directly or indirectly connected routes            8192/3072          2/19

QoS Access Control Entries                         1024                40 <<< QoS Entries

Security Access Control Entries                    1408               125

Ingress Netflow ACEs                                128                 8

Policy Based Routing ACEs                           512                 9

Egress Netflow ACEs                                 128                 8

Flow SPAN ACEs                                      256                13

Control Plane Entries                               512               211

Tunnels                                             128                17

Lisp Instance Mapping Entries                       128                 3

SGT_DGT                                            2048/256           0/1

CLIENT_LE                                          2048/64            0/0

INPUT_GROUP_LE                                     1024                 0

OUTPUT_GROUP_LE                                    1024                 0

Macsec SPD                                          128                 2

17.x Versions:

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

Mac Address Table      EM           I       16384       17    0.10%        0        0        0       17

Mac Address Table      TCAM         I         256       21    8.20%        0        0        0       21

L3 Multicast           EM           I        1024        0    0.00%        0        0        0        0

L3 Multicast           TCAM         I         256        9    3.52%        3        6        0        0

L2 Multicast           TCAM         I        1024       11    1.07%        3        8        0        0

IP Route Table         EM           I        4096        3    0.07%        2        0        1        0

IP Route Table         TCAM         I        2048       19    0.93%        6       10        2        1

QOS ACL                TCAM         IO       1024       85    8.30%       28       38        0       19  <-- QoS Entries

Security ACL           TCAM         IO       1408      129    9.16%       26       58        0       45

Netflow ACL            TCAM         I         128        6    4.69%        2        2        0        2

PBR ACL                TCAM         I         512        9    1.76%        3        6        0        0

Netflow ACL            TCAM         O         128        6    4.69%        2        2        0        2

Flow SPAN ACL          TCAM         IO        256       13    5.08%        3        6        0        4

Control Plane          TCAM         I         512      262   51.17%      114      106        0       42

Tunnel Termination     TCAM         I         128       18   14.06%        8       10        0        0

Lisp Inst Mapping      TCAM         I         128        1    0.78%        0        0        0        1

CTS Cell Matrix/VPN

Label                  EM           O        2048        0    0.00%        0        0        0        0

CTS Cell Matrix/VPN

Label                  TCAM         O         256        1    0.39%        0        0        0        1

Client Table           EM           I        2048        0    0.00%        0        0        0        0

Client Table           TCAM         I          64        0    0.00%        0        0        0        0

Input Group LE         TCAM         I        1024        0    0.00%        0        0        0        0

Output Group LE        TCAM         O        1024        0    0.00%        0        0        0        0

Macsec SPD             TCAM         I         128        2    1.56%        0        0        0        2

Vérifiez que la stratégie QoS est correctement installée dans le matériel. Assurez-vous que l'état est VALID et SET_INHW. Recherchez les entrées d'interface physique au bas de la liste. Dans les piles de commutateurs ou stackwise-virtual, utilisez le numéro de commutateur, ou active / standby pour indiquer précisément sur quel commutateur vous souhaitez valider l'installation matérielle.

C9200(config)#policy-map egress_pmap

C9200(config-pmap)#interface gi2/0/9

C9200(config-if)#service-policy output egress_pmap

C9200#show platform software fed switch 2 qos policy target status         <-- switch 2 is used because the interface in question is Gi2/0/9 which is on switch 2

TCG status summary:

Loc Interface             IIF-ID           Dir State:(cfg,opr) Policy

--- --------------------- ---------------- --- --------------- --------------------

<snip>

L:0 GigabitEthernet2/0/9  0x00000000000010 OUT VALID,SET_INHW  egress_pmap <-- VALID / SET_INHW indicates the policy is understood by software and installed to hardware successfully

Si vous voyez une stratégie ou une erreur non valide au lieu de VALID / SET_INHW pour une interface cible, passez en revue la stratégie QoS et validez la longueur et la syntaxe. Vérifiez également l'utilisation du matériel. Les sections suivantes de ce document expliquent en détail comment comprendre les ressources qu'une stratégie peut consommer.

C9200#show run policy-map egress_pmap

Current configuration : 624 bytes

!

policy-map egress_pmap

class COS_DSCP6

priority level 1

queue-buffers ratio 5

class COS_DSCP5

bandwidth remaining percent 10

queue-buffers ratio 5

<snip...>

C9200#show run class-map COS_DSCP6

Current configuration : 66 bytes

!

class-map match-any COS_DSCP6

match ip dscp ef

!

end

Comprendre l'utilisation actuelle des ressources matérielles QS

Exemple d'utilisation (9200L 17.3.4)

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024       85    8.30%       28       38        0       19 <-- Baseline utilization with minimal configuration

Configurez et associez un policy-map vide - aucun class-map n'a été appelé dans ce policy-map, donc cette stratégie n'a pas d'effet prévu.

C9200(config)#policy-map egress_pmap

C9200(config-pmap)#interface gi1/0/9

C9200(config-if)#service-policy output egress_pmap

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024       89    8.69%       29       40        0       20 <-- 4 additional entries consumed

Notez que même si aucune carte-classe n'est attachée ou si aucune action n'est entreprise, 4 entrées matérielles sont utilisées, réparties sur les versions 4, 6 et Autres.

Dans cet exemple, une classe de test vide est ajoutée. Dans un scénario normal, cette correspondance-toute carte-classe permettrait de faire correspondre plusieurs types d'étiquettes DSCP, CoS ou IPP. Mais pour l'exemple, aucune valeur n'a été appelée, donc la carte-classe ne correspond à aucun trafic.

C9200(config)#class-map match-any TEST_CLASS

C9200(config-cmap)#policy-map egress_pmap

C9200(config-pmap)#class TEST_CLASS

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024       92    8.92%       30       42        0       20 <-- 3 additional entries consumed

L'exemple montre que pour chaque classe supplémentaire appelée, même sans correspondance de trafic spécifique, une ligne de base d'une entrée v4 et de deux entrées v6 est utilisée.

Lorsque vous ajoutez une instruction match à chaque classe, d'autres entrées sont utilisées :

C9200(config)#class-map match-any TEST_CLASS

C9200(config-cmap)#match precedence 0

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024       96    9.38%       31       44        0       21 <-- 4 additional entries

C9200(config-cmap)#match precedence 1

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024       99    9.67%       32       46        0       21 <-- 3 additional entries

C9200(config-cmap)#match cos 1

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      100    9.77%       32       46        0       22 <-- 1 additional entry

C9200(config-cmap)#match dscp 21

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      103   10.06%       33       48        0       22 <-- 3 addditional entries

C9200(config-cmap)#match dscp 22

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      103   10.06%       33       48        0       22 <-- 0 additional entries

C9200(config-cmap)#match dscp 23

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      106   10.35%       34       50        0       22 <-- 3 additional entries

C9200(config-cmap)#match dscp 31

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      109   10.64%       35       52        0       22 <-- 3 additional entries

C9200(config-cmap)#match dscp 32

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      109   10.64%       35       52        0       22 <-- 3 additional entries

C9200(config-cmap)#match dscp 33

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      112   10.94%       36       54        0       22 <-- 3 additional entries

Notez que dans certains cas, une seule instruction de correspondance ne consomme aucune autre entrée. Notez également que les instructions de correspondance suivantes consomment plusieurs entrées.

Avant d'implémenter une politique sur l'ensemble du réseau, testez la politique au fur et à mesure de son développement et effectuez des optimisations au fur et à mesure.

Remarque : pour l'utilisation du matériel liée à la QoS, l'utilisation du matériel n'évolue pas toujours un à un avec des instructions de correspondance ou des entrées de contrôle d'accès (ACE). Le matériel fonctionne en termes de résultat de masque de valeur, ou VMR. Dans certains scénarios, plusieurs VMR peuvent être nécessaires pour classer entièrement la plage de données nécessaire à la mise en oeuvre d'une ACE. Les ASIC de la gamme Catalyst 9000 contiennent du matériel pour optimiser ces scénarios, comme pour les ACE avec opérations de plage de ports (L4OP), afin de réduire le besoin d'extension.

Dépannage de l'utilisation matérielle

Cette section présente plusieurs scénarios avec cette combinaison de matériel et de logiciel pour aider à illustrer un scénario de problème et à y remédier.

- Plate-forme - C9200L-48T-4X

- Cisco IOS®-XE 17.3.4

Les scénarios présentés illustrent :

- Une petite politique qui ajoute une quantité relativement faible d'entrées à l'utilisation globale

- Une politique importante qui ajoute un nombre relativement important d'entrées à l'utilisation globale

- Une deuxième stratégie de grande taille qui entraîne l'échec de l'installation de cette stratégie

- Correction de l'échec de l'installation

Scénario : estimation de l'échelle TCAM QoS

Remarque : ces exemples utilisent des listes de contrôle d'accès basées sur des groupes d'objets.  Les groupes d'objets représentent efficacement des listes d'accès traditionnelles beaucoup plus grandes. Ils ne consomment pas plus ou moins de TCAM. Il s'agit plutôt d'une façon simplifiée et modulaire de représenter ce qui serait autrement des listes d'ACE très longues et structurées.

Cet exemple utilise une stratégie d'entrée pour marquer les paquets. Elle implique des correspondances basées sur les groupes d'objets, les listes d'accès IP et les ports TCP/UDP.

Groupes d'objets

Liste d'accès qui utilise le groupe d'objets

Carte de classe

Carte de stratégie

object-group network RFC1918-Private-IPv4

10.0.0.0 255.0.0.0

172.16.0.0 255.240.0.0

192.168.0.0 255.255.0.0

object-group network app_1

group-object RFC1918-Private-IPv4

ip access-list extended APP_1_PORTS_1

10 permit udp any object-group app_1 range 1433 1434

20 permit udp object-group app_1 range 1433 1434 any

30 permit tcp any object-group app_1 range 1433 1434

40 permit tcp object-group app_1 range 1433 1434 any

50 permit tcp any object-group app_1 range 14300 14400

60 permit tcp object-group app_1 range 14300 14400 any

class-map match-any BigClass

match access-group name APP_1_PORTS_1

policy-map ingress_pmap

class BigClass

set dscp cs2

Examinez le tableau et notez qu'il y a 3 sous-réseaux dans le réseau de groupe d'objets RFC1918-Private-IPv4

object-group network app_1

group-object RFC1918-Private-IPv4

object-group network RFC1918-Private-IPv4

10.0.0.0 255.0.0.0

172.16.0.0 255.240.0.0

192.168.0.0 255.255.0.0

De plus, il y a 6 instructions de correspondance dans ip access-list extended APP_1_PORTS_1.

ip access-list extended APP_1_PORTS_1

10 permit udp any object-group app_1 range 1433 1434 <-- permits any source, to group app_1 on UDP ports 1433 - 1434

20 permit udp object-group app_1 range 1433 1434 any <-- reverse of previous line, reminder that app_1 is made up of RFC1918-Private-IPv4, which is 3 separate subnets

30 permit tcp any object-group app_1 range 1433 1434

40 permit tcp object-group app_1 range 1433 1434 any

50 permit tcp any object-group app_1 range 14300 14400

60 permit tcp object-group app_1 range 14300 14400 any

object-group network app_1 applique chaque entrée du réseau de groupe d'objets RFC1918-Private-IPv4 à chaque entrée de la liste d'accès ip extended APP_1_PORTS_1

Cela a un effet multiplicatif, car pour chaque ACE dans APP_1_PORTS_1, il référence object-group app_1 qui lui-même représente 3 ACE supplémentaires de RFC1918-Private-IPv4

Estimation de l'utilisation totale pour ip access-list extended APP_1_PORTS_1, lorsqu'il est attaché à une carte-classe et à une carte-politique :

APP_1 utilisé 6 fois x 3 entrées de groupe d'objets = 18

Appliquez la politique et observez l'utilisation de TCAM :

C9200#show platform hardware fed switch 2 fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024      85    8.69%       29       40        0       20 <-- baseline utilization

C9200(config-pmap)#interface gi1/0/9

C9200(config-if)#service-policy input ingress_pmap

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024      107    10.45%     47       40        0       20 <-- 22 entries consumed

Résumé

- Les listes de contrôle d’accès définissent des groupes d’objets qui se développent pour consommer 18 entrées supplémentaires, en raison de l’effet multiplicatif des groupes d’objets

- La carte de stratégie consomme 4 entrées par défaut

- Ceci ajoute à 22 entrées consommées

Scénario : Échelle QoS TCAM augmentée (non dépassée)

Cet exemple est une continuation de l'exemple précédent avec une politique plus large. Cela permet de déterminer comment vous pouvez rapidement consommer une grande quantité de TCAM.

Politique 1 :

Groupes d'objets

Listes d'accès qui utilisent les groupes d'objets

Carte de classe

Carte de stratégie

object-group réseau expérimental_1

240.1.192.0 255.255.192.0

240.2.96.0 255.255.224.0

240.3.160.0 255.255.240.0

240.4.32.0 255.255.224.0

240.5.160.0 255.255.224.0

240.6.192.0 255.255.224.0

240.7.128.0 255.255.128.0

240.8.0.0 255.255.0.0

240.9.128.0 255.255.192.0

240.10.224.0 255.255.224.0

240.11.0.0 255.255.240.0

240.12.160.0 255.255.224.0

240.13.192.0 255.255.224.0

240.14.192.0 255.255.240.0

240.15.128.0 255.255.224.0

object-group network expérimental_2

241.0.0.0 255.255.192.0

241.4.0.0 255.252.0.0

241.8.0.0 255.252.0.0

hôte 241.12.1.1

hôte 241.13.1.1

hôte 241.14.1.1

hôte 241.15.1.1

241.16.0.0 255.252.0.0

hôte 241.20.1.1

hôte 241.21.1.1

hôte 241.22.1.1

hôte 241.23.1.1

object-group network RFC1918-Private-IPv4

10.0.0.0 255.0.0.0

172.16.0.0 255.240.0.0

192.168.0.0 255.255.0.0

object-group network app_1

group-object RFC1918-Private-IPv4

object-group network app_2

group-object RFC1918-Private-IPv4

object-group network app_3

group-object RFC1918-Private-IPv4

object-group network app_4

group-object RFC1918-Private-IPv4

group-object expérimental_1

group-object expérimental_2

ip access-list extended APP_1_PORTS_1

10 permit udp any object-group app_1 range 1433 1434

20 permit udp object-group app_1 range 1433 1434 any

<4 lignes supplémentaires>

ip access-list extended APP_1_PORTS_2

10 permit udp any object-group app_1 range 7750 7759

20 permit udp object-group app_1 range 7750 7759 any

<18 lignes supplémentaires>

ip access-list extended APP_1_PORTS_3

10 permit udp any object-group app_1 range 22030 22031

20 permit udp object-group app_1 range 22030 22031 any

<6 lignes supplémentaires>

ip access-list extended APP_2_PORTS_1

10 permit udp any object-group app_2 range 6000 9291

20 permit udp object-group app_2 range 6000 9291 any

ip access-list extended APP_3_PORTS_1

10 permit tcp any object-group app_3 eq 7563

20 permit tcp object-group app_3 eq 7563 any

<4 lignes supplémentaires>

ip access-list extended APP_3_PORTS_2

10 permit udp any object-group app_3 eq 554

20 permit udp object-group app_3 eq 554 any

<2 lignes supplémentaires>

ip access-list extended APP_3_PORTS_3

10 permit udp any object-group app_3 eq 22331

20 permit udp object-group app_3 eq 22331 any

<2 lignes supplémentaires>

ip access-list extended APP_3_PORTS_4

10 permit tcp any object-group app_3 eq 5432

20 permit tcp object-group app_3 eq 5432 any

<6 lignes supplémentaires>

ip access-list extended APP_4_PORTS_1

10 permit udp any object-group app_4 range 1718 1719

20 permit udp object-group app_4 range 1718 1719 any

<14 lignes supplémentaires>

class-map match-any BigClass_1

match access-group name APP_3_PORTS_2

class-map match-any BigClass_2

match access-group name APP_4_PORTS_1

class-map match-any BigClass_3

match access-group name APP_1_PORTS_2

match access-group name APP_3_PORTS_3

match access-group name APP_2_PORTS_1

class-map match-any BigClass_4

match access-group name APP_1_PORTS_3

match access-group name APP_3_PORTS_4

class-map match-any BigClass_5

match access-group name APP_1_PORTS_1

match access-group name APP_3_PORTS_1

policy-map big_ingress_pmap

class BigClass_1

set dscp cs4

class BigClass_2

set dscp af41

class BigClass_3

set dscp cs3

class BigClass_4

set dscp af31

class BigClass_5

set dscp cs2

class class-default

Notez que la carte-politique à droite du graphique est simple, ainsi que les cartes de classe à côté. Mais les cartes de classe sont composées d'un ensemble de listes d'accès et de groupes d'objets plus longs, qui se développent une fois que le logiciel fusionne tous les composants ensemble lorsque la carte de stratégie est appliquée à une interface.

Lors de l'application de la stratégie :

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024      85    8.69%       29       40        0       20

C9200(config-pmap)#interface gi1/0/9

C9200(config-if)#service-policy input big_ingress_pmap

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024     633    61.82%     573       40        0       20 <-- 548 increase in used value

La valeur utilisée est passée de 85 à 633 pour l'entrée de la table TCAM de la liste de contrôle d'accès QOS, soit une augmentation de 548 entrées

Scénario : échelle QoS TCAM dépassée

Dans ce scénario, si vous prenez le mappage de stratégie précédent et ne modifiez set dscp cs4 que pour définir dscpef dans une stratégie distincte, lorsque cette stratégie est attachée, toutes les entrées doivent être dupliquées dans le matériel.

Remarque : lorsque vous concevez une stratégie QoS, un moyen important de réduire l'utilisation du matériel consiste à combiner les actions et les règles en une seule carte de stratégie pour répondre à plusieurs cas d'utilisation. Les ACE de classification qui se chevauchent entre deux cartes de stratégie sont dupliquées dans le matériel. Lorsque vous combinez des stratégies, vous n'avez plus besoin de réinstaller les ACE qui se chevauchent.

Carte de stratégie 1

Carte de stratégie 2

policy-map big_ingress_pmap

class BigClass_1

set dscp cs4

class BigClass_2

set dscp af41

class BigClass_3

set dscp cs3

class BigClass_4

set dscp af31

class BigClass_5

set dscp cs2

class class-default

policy-map big_ingress_pmap2

class BigClass_1

set dscp ef

class BigClass_2

set dscp af41

class BigClass_3

set dscp cs3

class BigClass_4

set dscp af31

class BigClass_5

set dscp cs2

class class-default

Observez lorsque big_ingress_pmap2 est installé, qu'aucune augmentation d'utilisation n'est observée et qu'une erreur est consignée.

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024      85    8.69%       29       40        0       20

C9200(config-pmap)#int gi1/0/9

C9200(config-if)#service-policy input big_ingress_pmap

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024     633    61.82%     573       40        0       20 <-- Utilization increased

C9200(config-pmap)#int gi1/0/10

C9200(config-if)#service-policy input big_ingress_pmap2

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024     633    61.82%     573       40        0       20 <-- Utilization did not increase further

Cette erreur est observée :

C9200#show logging

...

*Mar 2 04:54:48.170: %FED_QOS_ERRMSG-4-TCAM_OVERFLOW: Switch 3 R0/0: fed: Failed to program TCAM for policy-map big_ingress_pmap2 on GigabitEthernet1/0/10.

Vérifiez qu'une erreur s'est produite lors de l'installation de cette stratégie dans le matériel :

C9200#show platform software fed switch 1 qos policy target status

TCG status summary:

Loc Interface             IIF-ID           Dir State:(cfg,opr) Policy

--- --------------------- ---------------- --- --------------- --------------------

<snip>

L:0 GigabitEthernet1/0/9  0x00000000000010 IN  VALID,SET_INHW   big_ingress_pmap     <-- Configuration is valid, and installed / set in hardware

L:0 GigabitEthernet1/0/10 0x000000000000a4 IN  VALID,ERROR      big_ingress_pmap2    <-- Configuration is valid, but there is an error to install it in hardware

Techniques De Correction

Pour corriger ce scénario, vous devez tenir compte de l'intention de la modification et voir si des optimisations peuvent être effectuées.

Carte de stratégie 1

Carte de stratégie 2

policy-map big_ingress_pmap

class BigClass_1

set dscp cs4

class BigClass_2

set dscp af41

class BigClass_3

set dscp cs3

class BigClass_4

set dscp af31

class BigClass_5

set dscp cs2

class class-default

policy-map big_ingress_pmap2

class BigClass_1

set dscp ef

class BigClass_2

set dscp af41

class BigClass_3

set dscp cs3

class BigClass_4

set dscp af31

class BigClass_5

set dscp cs2

class class-default

Si la configuration est valide et qu'une limite d'évolutivité du matériel est atteinte, la correction nécessite une approche axée sur la conception. Il n'existe aucun meilleur moyen de réduire les ACE et l'utilisation ultérieure du matériel par VMR. Vous devez tenir compte de ce que vous voulez classer et de la façon de le résumer.

Les scénarios précédents présentent intentionnellement deux politiques qui sont presque identiques, à l'exception d'une instruction set dscp dans le policy-map. Dans ce cas, si l'intention est de marquer la même classification du trafic au niveau de la couche 3 (IP) ou de la couche 4 (TCP/UDP) différemment en fonction de l'interface, vous devez tenir compte des informations clés (relatives à ces périphériques derrière ces interfaces) qui changent afin de pouvoir combiner ces deux politiques en une seule.

- Si le trafic de périphérique correspondant à big_ingress_pmap a un sous-réseau source différent de celui des périphériques ayant big_ingress_pmap2, vous pouvez créer une nouvelle classe pour spécifier un sous-réseau source distinct et classer ce trafic en premier, avant BigClass_1. Ensuite, deux instructions set dscp peuvent être utilisées sur ces classes spécifiques en conséquence.

- S'il n'y a vraiment pas d'informations distinctes sur la source ou la destination de ces flux du point de vue de la couche 3 (IP) / couche 4 (TCP/UDP) entre le trafic de ces deux interfaces - des solutions comme SGACL (Secure Group ACL) pourraient être plus adaptées - où l'état d'autorisation pilote le SGT (Secure Group Tag) appliqué, indépendamment de l'adresse IP des utilisateurs. Le SGT sur le paquet devient alors la base de l'application, plutôt que l'IP.

Remarque : SGT/SGACL nécessite Cisco ISE, la configuration DOT1X/MAB associée et une application plus poussée sur l'ensemble de votre réseau. Une considération de conception appropriée doit être donnée.

Voici comment vous modifiez l'exemple de stratégie pour combiner les fonctionnalités de big_ingress_pmap et big_ingress_pmap2 :

La classe BigClass_1 est construite à partir du nom de groupe d'accès (access-list) APP_3_PORTS_2.

Ip access-list extended APP_3_PORTS_2 est l'emplacement où la relation entre les sources et les destinations est établie

Créez un doublon de la liste de contrôle d'accès IP étendue APP_3_PORTS_2 avec un nouveau nom, mais faites correspondre des sous-réseaux source/de destination spécifiques où cette distinction est importante :

ip access-list extended APP_3_PORTS_2_Special

10 permit udp <specific subnet or object group> object-group app_3 eq 554

20 permit udp object-group app_3 eq 554 <specific subnet or object group>

Créez une nouvelle classe appelée BigClass_1_Special

class-map match-any BigClass_1_Special

match access-group name APP_3_PORTS_2_Special

Reconfigurez la carte de stratégie pour inclure la nouvelle classe en haut de la stratégie.

- La nouvelle classe doit être en haut, car BigClass_1 a une correspondance partielle avec toutes les instructions dans sa liste de contrôle d'accès associée. Cela permet à BigClass_1 de classer le trafic qui reste, sinon ne correspond pas à BigClass_1_Special. En d'autres termes, pour correspondre au trafic plus spécifique d'intérêt pour BigClass_1_Special, il doit être évalué avant les correspondances plus générales de BigClass_1, et donc aller en haut de la politique

carte de stratégie combinée

policy-map big_ingress_pmap_combine

class BigClass_1_Special

set dscp ef

class BigClass_1

set dscp cs4

class BigClass_2

set dscp af41

class BigClass_3

set dscp cs3

class BigClass_4

set dscp af31

class BigClass_5

set dscp cs2

class class-default

Remarque : il n'existe aucun moyen de réorganiser les classes dans un policy-map. Si vous devez placer une classe nouvellement configurée avant une classe qui existe déjà, vous devez reconfigurer l'ensemble de la stratégie, ce qui signifie que vous devez la supprimer entièrement de la configuration.

Si vous créez une toute nouvelle stratégie avec un ordre mis à jour et que l'installation/l'application de la stratégie échoue, supprimez d'abord l'ancienne stratégie de toutes les interfaces connectées afin de réduire l'utilisation du matériel.

La plage d'interfaces de commande fonctionne sur les interfaces de manière séquentielle, de sorte que son utilisation avec une nouvelle stratégie pour remplacer une ancienne, introduit un scénario temporaire où les deux stratégies doivent être dans le matériel. À ce stade, l'installation pourrait échouer en raison d'une utilisation excessive. Supprimez la stratégie actuelle de toutes les interfaces pour réduire l'utilisation du matériel, puis continuez.

Commandes à collecter pour le TAC

Les problèmes de ressources matérielles les plus courants liés à l'utilisation de la QoS sont traités dans ce guide, avec les étapes de correction appropriées. Toutefois, si ce guide ne résout pas votre problème, collectez la liste de commandes affichée et joignez-la à votre demande de service TAC.

- Joignez à votre demande de service la sortie complète ou vérifiée de show tech-support et de show tech-support qos, ainsi que des détails sur les étapes que vous avez effectuées ou les modifications que vous avez apportées récemment.

Informations connexes

- Comprendre les ressources matérielles sur les commutateurs Catalyst 9000

- Livre blanc sur les plates-formes de commutation Cisco Catalyst 9000 : QoS et mise en file d'attente

- Assistance et documentation techniques - Cisco Systems

ID de bogue Cisco

ID de bogue Cisco CSCvz54607 (C9200/C9200L (16.12) - File d'attente de sortie surchargée en raison d'une programmation QoS incorrecte)

ID de bogue Cisco CSCvz76172 (C9200/C9200L (17.3/17.6) - File d'attente de sortie surchargée en raison d'une programmation QoS incorrecte)