Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Premesse

Terminologia

Esamina syslog correlati a QoS

Convalida utilizzo hardware e stato criteri

Comprendere l'utilizzo corrente delle risorse hardware QoS

Esempio di utilizzo (9200L 17.3.4)

Risoluzione dei problemi relativi all'utilizzo dell'hardware

Scenario: stima della scala QoS TCAM

Scenario: Scala QoS TCAM aumentata (non superata)

Scenario: superata la scala QoS TCAM

Tecniche di risanamento

Comandi da raccogliere per TAC

Informazioni correlate

ID bug Cisco

Introduzione

Questo documento descrive come comprendere e verificare l'utilizzo dell'hardware QoS (Quality of Service) sugli switch Catalyst serie 9000 con ASIC UADP

Prerequisiti

Requisiti

Cisco raccomanda la conoscenza dei seguenti argomenti:

- Configurazione QoS Cisco MQC; mappe delle policy, mappe delle classi, elenchi di controllo degli accessi, voci di controllo degli accessi

Componenti usati

Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:

- Cisco Catalyst 9200L Cisco IOS®-XE 17.3.4

Altri switch Cisco Catalyst serie 9000 supportano concetti generali, idee e vari output.

Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.

Prodotti correlati

Il presente documento può essere utilizzato anche per le seguenti versioni hardware e software:

- Catalyst serie 9300 - 9600 Switch

- Catalyst 9300X e 9400X

- Versioni software Cisco IOS® XE 16.x e 17.x

Premesse

- Le diverse funzionalità degli switch Catalyst serie 9000 richiedono risorse hardware limitate. Queste risorse servono ad accelerare le prestazioni di queste funzionalità e a fornire le elevate velocità di avanzamento previste da uno switch.

- La scala di queste risorse può variare da modello a modello di switch, ma la metodologia di base per la risoluzione dei problemi rimane la stessa sugli switch Catalyst serie 9000 con ASIC UADP

- In genere, la principale risorsa hardware limitata con gli switch è denominata TCAM - Ternary Content Addressable Memory

- Sugli switch Catalyst serie 9000, oltre al TCAM vengono utilizzati più tipi di memoria, adatti alle esigenze specifiche di una determinata funzione

Questo documento consente di:

- Comprendere come QoS (Quality of Service) utilizza le voci hardware

- Comprendere i registri o i messaggi di errore che indicano un problema di risorse hardware QoS

- Determinare le azioni da intraprendere per risolvere i problemi relativi alle risorse hardware correlati a QoS

Terminologia

QoS

Quality of Service (QoS)

Concetto/gruppo di funzionalità correlate relative alla classificazione, alla contrassegno, alla coda e alla pianificazione del traffico in entrata e in uscita da un dispositivo di rete

TCAM

Memoria ternaria indirizzabile al contenuto

Tipo di memoria che memorizza ed esegue query su voci con tre input diversi: 0, 1 e X. Questo tipo di memoria viene utilizzato nei casi in cui esistono più corrispondenze alla stessa voce e l'Hash risultante per ciascuna voce non è univoco. Questa tabella include una maschera o un valore X che consente di sapere se corrisponde o meno a questa voce.

DSCP

Valore DSCP

Meccanismo di classificazione del traffico contenuto nell'intestazione IP di un pacchetto

CoS

Class of Service

Meccanismo di classificazione del traffico contenuto nell'intestazione frame Ethernet di un pacchetto

ASSO

Voce di controllo di accesso

Una singola regola o riga in un Access Control List (ACL)

ACL

Lista dei controlli di accesso

Gruppo di voci di controllo di accesso (ACE, Access Control Entries) utilizzate da diverse funzionalità per associare il traffico e intraprendere un'azione

FED

Driver motore di inoltro

Componente software che programma l'hardware del dispositivo

Esamina syslog correlati a QoS

Se le risorse correlate a QoS si esauriscono, il sistema genera i messaggi SYSLOG:

Messaggio syslog relativo a QoS

Definizione

Azioni di ripristino

%FED_QOS_ERRMSG-4-TCAM_OVERFLOW: Switch 1 R0/0: feed: impossibile programmare TCAM per la mappa dei criteri in ingresso_pmap2 su Gigabit Ethernet1/0/10.

Spazio esaurito nell'hardware (TCAM) riservato alle voci QoS

Accertarsi di disporre di una configurazione valida/supportata. Quindi, esaminare le altre parti di questo documento per verificare l'utilizzo della scala corrente dello switch e i possibili passaggi per ridurlo in caso di sovrautilizzo.

%FED_QOS_ERRMSG-3-QUEUE_SCHEDULER_HW_ERROR: switch 1 R0/0: feed: impossibile configurare l'utilità di pianificazione code per Gigabit Ethernet 1/0/27

Installazione nell'hardware dell'utilità di pianificazione code QoS non riuscita

Verificare che la configurazione sia supportata. Consultare la guida alla configurazione QoS per la piattaforma e la versione del software in uso.

SOLO per 9200L: rivedere l'ID bug Cisco CSCvz54607 e l'ID bug Cisco CSCvz76172

FED_QOS_ERRMSG-3-QUEUE_BUFFER_HW_ERROR: R0/0: feed: impossibile configurare il buffer della coda predefinito

Installazione nell'hardware dei buffer della coda QoS non riuscita

Verificare che la configurazione sia supportata. Consultare la guida alla configurazione QoS per la piattaforma e la versione del software in uso.

Revisione dell'ID bug Cisco CSCvs49401

Convalida utilizzo hardware e stato criteri

Verifica dell'utilizzo corrente di QoS TCAM

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

Nota: per ulteriori informazioni su questo comando, vedere

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

Verificare che il criterio QoS sia installato correttamente nell'hardware. Verificare che lo stato sia VALID e SET_INHW. Cercare le voci dell'interfaccia fisica nella parte inferiore dell'elenco. Negli stack di switch o in modalità stack-virtuale, usare il numero dello switch o modalità attivo/standby per indicare con precisione su quale switch si desidera convalidare l'installazione dell'hardware.

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

Se per un'interfaccia di destinazione viene visualizzato un criterio o un errore non valido anziché VALID / SET_INHW, rivedere il criterio QoS e convalidare la lunghezza e la sintassi. Verificare inoltre l'utilizzo hardware. Nelle sezioni successive di questo documento viene descritto in dettaglio come comprendere le risorse che un criterio può utilizzare.

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

Comprendere l'utilizzo corrente delle risorse hardware QoS

Esempio di utilizzo (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

Configurare e allegare una mappa dei criteri vuota. In questa mappa dei criteri non è stata chiamata alcuna mappa delle classi, pertanto il criterio non ha alcun effetto previsto.

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

Tenere presente che, anche se non sono associate mappe di classe o vengono eseguite azioni, vengono utilizzate 4 voci hardware, suddivise tra V4, V6 e Altro.

In questo esempio viene aggiunta una classe di test vuota. In uno scenario normale, questa mappa di classe match-any consente la corrispondenza di più tipi di etichette DSCP, CoS o IPP. Ad esempio, poiché non è stato chiamato alcun valore, la mappa di classe non corrisponde al traffico.

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

Nell'esempio viene mostrato che per ogni classe aggiuntiva chiamata, anche senza alcun traffico specifico corrispondente, vengono utilizzate una linea di base di una voce v4 e due voci v6.

Quando si aggiunge un'istruzione match a ciascuna classe, vengono utilizzate altre voci:

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

Si noti che, in alcuni casi, una singola istruzione match non consuma ulteriori voci. Si noti inoltre che le istruzioni di corrispondenza successive utilizzano più voci.

Prima di implementare un criterio in tutta la rete, verificare il criterio durante la fase di sviluppo e apportare le ottimizzazioni necessarie.

Nota: per l'utilizzo hardware correlato a QoS, l'utilizzo hardware non è sempre scalabile uno a uno con istruzioni match o voci di controllo di accesso (ACE). L'hardware opera in termini di risultato della maschera di valore, o VMR. In alcuni scenari, può essere necessario più di un VMR per classificare completamente l'intervallo di dati necessario per eseguire un ACE. Gli ASIC della famiglia Catalyst 9000 UADP contengono hardware per ottimizzare questi scenari, ad esempio per gli ACE con operazioni sull'intervallo di porte (L4OP), in modo da ridurre la necessità di espansione.

Risoluzione dei problemi relativi all'utilizzo dell'hardware

In questa sezione vengono presentati più scenari con questa combinazione di hardware e software per illustrare uno scenario di problema e la risoluzione.

- Piattaforma - C9200L-48T-4X

- Cisco IOS®-XE 17.3.4

Gli scenari presentati illustrano:

- Una politica di piccole dimensioni che aggiunge una quantità relativamente ridotta di voci all'utilizzo complessivo

- Una politica di grandi dimensioni che aggiunge un numero relativamente elevato di voci all'utilizzo complessivo

- Un secondo criterio di grandi dimensioni causa un errore di installazione

- Risoluzione del problema di installazione

Scenario: stima della scala QoS TCAM

Nota: in questi esempi vengono usati ACL basati su gruppi di oggetti.  I gruppi di oggetti rappresentano in modo efficiente elenchi di accesso tradizionali molto più grandi. Non consumano più o meno TCAM. Sono piuttosto un modo semplificato e modulare per rappresentare quelle che altrimenti sarebbero liste di ACE molto lunghe e con motivi.

In questo esempio viene utilizzata una policy in entrata per contrassegnare i pacchetti. Include Object-Group, elenchi di accesso IP e corrispondenze basate sulla porta TCP/UDP.

Gruppi di oggetti

Elenco degli accessi che utilizza il gruppo di oggetti

Mappa classi

Mappa criteri

rete di gruppi di oggetti RFC1918-Private-IPv4

10.0.0.0 25.0.0.0

172.16.0.0 255.240.0.0

192 168 0 255 255 0 0

app_1 di rete per gruppi di oggetti

group-object RFC1918-Private-IPv4

ip access-list extended APP_1_PORTS_1

10 allow udp any object-group app_1 range 1433 1434

20 consenti udp object-group app_1 intervallo 1433 1434 any

30 allow tcp any object-group app_1 range 1433 1434

40 permette tcp object-group app_1 intervallo 1433 1434 any

50 allow tcp any object-group app_1 range 14300 14400

60 allow tcp object-group app_1 range 14300 14400 any

class-map match-any BigClass

match access-group name APP_1_PORTS_1

mappa-criteri in ingresso

classe BigClass

set dscp cs2

Esaminare il grafico e notare che nella rete a oggetti e gruppi RFC1918-Private-IPv4 sono presenti 3 subnet

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

Inoltre, ci sono 6 istruzioni match in 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 applica ogni voce della rete di object group RFC1918-Private-IPv4 a ogni voce dell'elenco degli accessi ip esteso APP_1_PORTS_1

Questo ha un effetto moltiplicativo, perché per ogni ACE in APP_1_PORTS_1, fa riferimento all'object-group app_1 che a sua volta rappresenta 3 ACE aggiuntive di RFC1918-Private-IPv4

Stima di utilizzo totale per l'elenco accessi IP esteso APP_1_PORTS_1, quando collegato a una mappa di classi e a una mappa di criteri:

APP_1 utilizzata 6 volte x 3 ACE oggetto-gruppo = 18

Applicare la regola e osservare l'utilizzo di 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

Riepilogo

- Gli ACL definiscono gruppi di oggetti che si espandono per occupare 18 voci aggiuntive, a causa dell'effetto moltiplicativo dei gruppi di oggetti

- La mappa dei criteri utilizza 4 voci per impostazione predefinita

- Questo si aggiunge 22 movimenti consumati

Scenario: Scala QoS TCAM aumentata (non superata)

Questo esempio è una continuazione del precedente con una politica più ampia. In questo modo è possibile consumare rapidamente una grande quantità di TCAM.

Politica 1:

Gruppi di oggetti

Elenchi di accesso che utilizzano i gruppi di oggetti

Mappa classi

Mappa criteri

rete a oggetti sperimentale_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

rete a oggetti sperimentale_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

host 241.12.1.1

host 241.13.1.1

host 241.14.1.1

host 241.15.1.1

241.16.0.0 255.252.0.0

host 241.20.1.1

host 241.21.1.1

host 241.22.1.1

host 241.23.1.1

rete di gruppi di oggetti RFC1918-Private-IPv4

10.0.0.0 25.0.0.0

172.16.0.0 255.240.0.0

192 168 0 255 255 0 0

object-group app_1 della rete

group-object RFC1918-Private-IPv4

app di rete object-group_2

group-object RFC1918-Private-IPv4

app di rete per gruppi di oggetti_3

group-object RFC1918-Private-IPv4

app di rete object-group_4

group-object RFC1918-Private-IPv4

gruppo-oggetto sperimentale_1

group-object sperimentale_2

ip access-list extended APP_1_PORTS_1

10 allow udp any object-group app_1 range 1433 1434

20 consenti udp object-group app_1 intervallo 1433 1434 any

<altre 4 righe>

ip access-list extended APP_1_PORTS_2

10 consenti udp per qualsiasi oggetto-gruppo app_1 intervallo 7750 7759

20 consenti udp object-group app_1 range 7750 7759 any

<altre 18 righe>

ip access-list extended APP_1_PORTS_3

10 consenti udp qualsiasi oggetto-gruppo app_1 intervallo 22030 22031

20 consenti udp object-group app_1 intervallo 22030 22031 any

<altre 6 righe>

ip access-list extended APP_2_PORTS_1

10 allow udp any object-group app_2 range 6000 9291

20 consenti udp object-group app_2 intervallo 6000 9291 any

ip access-list extended APP_3_PORTS_1

10 allow tcp any object-group app_3 eq 7563

20 allow tcp object-group app_3 eq 7563 any

<altre 4 righe>

ip access-list extended APP_3_PORTS_2

10 allow udp any object-group app_3 eq 554

20 consenti udp object-group app_3 eq 554 any

<altre 2 righe>

ip access-list extended APP_3_PORTS_3

10 allow udp any object-group app_3 eq 22331

20 consenti udp object-group app_3 eq 22331 any

<altre 2 righe>

ip access-list extended APP_3_PORTS_4

10 allow tcp any object-group app_3 eq 5432

20 allow tcp object-group app_3 eq 5432 any

<altre 6 righe>

ip access-list extended APP_4_PORTS_1

10 allow udp any object-group app_4 range 1718 1719

20 consenti udp object-group app_4 intervallo 1718 1719 qualsiasi

<altre 14 righe>

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

corrispondenza del nome del gruppo di accesso 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

mappa-criteri big_ingress_pmap

classe BigClass_1

set dscp cs4

classe BigClass_2

set dscp af41

classe BigClass_3

set dscp cs3

classe BigClass_4

set dscp af31

classe BigClass_5

set dscp cs2

class-default

Osservare che la mappa dei criteri a destra del grafico è semplice, così come le mappe delle classi adiacenti. Le mappe di classe, tuttavia, sono costituite da un insieme di elenchi di accesso e gruppi di oggetti più lunghi, che si espandono una volta che il software unisce tutti i componenti mentre la mappa delle policy viene applicata a un'interfaccia.

Quando viene applicato il criterio:

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

Il valore utilizzato è aumentato da 85 a 633 per la voce QOS ACL TCAM table, con un aumento di 548 voci

Scenario: superata la scala QoS TCAM

In questo scenario, se si utilizza la mappa dei criteri precedente e si modifica solo il set dscp cs4 per impostare dscpef in un criterio separato, quando il criterio è associato tutte le voci devono essere duplicate nell'hardware.

Nota: quando si progetta un criterio QoS, un modo significativo per ridurre l'utilizzo dell'hardware consiste nel combinare azioni e regole in un'unica mappa dei criteri per soddisfare più casi di utilizzo. Le ACE di classificazione che si sovrappongono tra due mappe delle regole vengono duplicate nell'hardware. Quando si combinano i criteri, non è più necessario reinstallare le voci ACE che si sovrappongono.

Mappa criteri 1

Mappa criteri 2

mappa-criteri big_ingress_pmap

classe BigClass_1

set dscp cs4

classe BigClass_2

set dscp af41

classe BigClass_3

set dscp cs3

classe BigClass_4

set dscp af31

classe BigClass_5

set dscp cs2

class-default

mappa-criteri big_ingress_pmap2

classe BigClass_1

set dscp ef

classe BigClass_2

set dscp af41

classe BigClass_3

set dscp cs3

classe BigClass_4

set dscp af31

classe BigClass_5

set dscp cs2

class-default

Osservare quando si installa big_ingress_pmap2, non viene rilevato alcun aumento dell'utilizzo e viene registrato un errore.

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

Questo errore viene osservato:

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.

Verificare la presenza di un errore durante l'installazione del criterio nell'hardware:

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

Tecniche di risanamento

Per correggere questo scenario, è necessario considerare l'intento della modifica e verificare se è possibile eseguire le ottimizzazioni.

Mappa criteri 1

Mappa criteri 2

mappa-criteri big_ingress_pmap

classe BigClass_1

set dscp cs4

classe BigClass_2

set dscp af41

classe BigClass_3

set dscp cs3

classe BigClass_4

set dscp af31

classe BigClass_5

set dscp cs2

class-default

mappa-criteri big_ingress_pmap2

classe BigClass_1

set dscp ef

classe BigClass_2

set dscp af41

classe BigClass_3

set dscp cs3

classe BigClass_4

set dscp af31

classe BigClass_5

set dscp cs2

class-default

Se la configurazione è valida e viene raggiunto un limite di scala dell'hardware, la correzione richiede un approccio incentrato sulla progettazione. Non esiste un modo migliore per ridurre le ACE e il conseguente utilizzo di VMR dell'hardware. È necessario considerare gli elementi che si desidera classificare e il modo in cui riepilogarli.

Gli scenari precedenti presentano intenzionalmente due politiche quasi identiche, ad eccezione di una dichiarazione set dscp nella mappa dei criteri. In questo caso, se si desidera contrassegnare la stessa classificazione del traffico al layer 3 (IP) o al layer 4 (TCP/UDP) in modo diverso a seconda dell'interfaccia, è necessario considerare le modifiche delle informazioni principali (relative ai dispositivi dietro tali interfacce) in modo da poter combinare queste due policy in una.

- Se il traffico dei dispositivi corrispondente a big_ingress_pmap ha una subnet di origine diversa da quella dei dispositivi con big_ingress_pmap2, è possibile creare una nuova classe per specificare una subnet di origine distinta e classificare il traffico prima di BigClass_1. È quindi possibile utilizzare due diverse istruzioni set dscp in tali classi specifiche.

- Se non ci sono informazioni distinte sull'origine o sulla destinazione di questi flussi dal punto di vista del layer 3 (IP) / layer 4 (TCP/UDP) tra il traffico proveniente da queste due interfacce - soluzioni come SGACL (Secure Group ACL) potrebbero essere più adatte - dove lo stato di autorizzazione guida il SGT (Secure Group Tag) applicato, indipendentemente dall'indirizzo IP degli utenti. L'SGT sul pacchetto diventa quindi la base dell'imposizione, piuttosto che l'IP.

Nota: il protocollo SGT/SGACL richiede Cisco ISE, la relativa configurazione DOT1X / MAB e un'ulteriore applicazione in tutta la rete. È necessario tenere in considerazione la progettazione corretta.

Di seguito viene riportata la procedura per modificare il criterio di esempio per combinare le funzionalità di big_ingress_pmap e big_ingress_pmap2:

La classe BigClass_1 è generata dal nome del gruppo di accesso (elenco accessi) APP_3_PORTS_2.

L'elenco degli accessi IP esteso APP_3_PORTS_2 è il punto in cui viene stabilita la relazione tra le origini e le destinazioni

Creare un duplicato di APP_3_PORTS_2 esteso dell'elenco degli accessi IP con un nuovo nome, ma individuare le subnet di origine/destinazione specifiche a cui applicare questa distinzione:

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>

Creare una nuova classe denominata BigClass_1_Special

class-map match-any BigClass_1_Special

match access-group name APP_3_PORTS_2_Special

Riconfigurare il mapping dei criteri per includere la nuova classe all'inizio del criterio.

- La nuova classe deve trovarsi nella parte superiore, in quanto BigClass_1 ha una corrispondenza parziale con qualsiasi istruzione nel relativo ACL. Questo consente a BigClass_1 di classificare il traffico che rimane, altrimenti non corrispondente a BigClass_1_Special. In altre parole, per far corrispondere il traffico di interesse più specifico per BigClass_1_Special, deve essere valutato prima delle corrispondenze più generali di BigClass_1, e quindi deve essere posizionato in cima al criterio

Mappa criteri combinati

mappa-criteri big_ingress_pmap_Combined

class BigClass_1_Special

set dscp ef

classe BigClass_1

set dscp cs4

classe BigClass_2

set dscp af41

classe BigClass_3

set dscp cs3

classe BigClass_4

set dscp af31

classe BigClass_5

set dscp cs2

class-default

Nota: non è possibile riordinare le classi in una mappa dei criteri. Se è necessario posizionare una classe appena configurata prima di una già esistente, è necessario riconfigurare l'intero criterio, ovvero rimuoverlo completamente dalla configurazione.

Se si crea una nuova policy con un ordine aggiornato e l'installazione o l'applicazione della policy non riesce, rimuovere innanzitutto la policy precedente da tutte le interfacce collegate per ridurre l'utilizzo dell'hardware.

L'intervallo di interfacce dei comandi funziona sulle interfacce in sequenza, quindi il suo utilizzo con un nuovo criterio per sovrascrivere un vecchio criterio introduce uno scenario temporaneo in cui entrambi i criteri devono essere nell'hardware. A quel punto potrebbe non riuscire a installare a causa di un utilizzo eccessivo. Rimuovere il criterio corrente da tutte le interfacce per ridurre l'utilizzo dell'hardware, quindi continuare.

Comandi da raccogliere per TAC

In questa guida vengono descritti i problemi più comuni relativi alle risorse hardware correlate all'utilizzo di QoS, con le procedure di risoluzione appropriate. Tuttavia, se la presente guida non risolve il problema, raccogliere l'elenco di comandi visualizzato e allegarlo alla richiesta di servizio TAC.

- Allegare l'output completo o igienizzato di show tech-support e show tech-support qos alla richiesta di assistenza e i dettagli su eventuali passi intrapresi o modifiche apportate di recente.

Informazioni correlate

- Conoscenza delle risorse hardware sugli switch Catalyst 9000

- White paper sulle piattaforme di switching Cisco Catalyst 9000: QoS e code

- Documentazione e supporto tecnico – Cisco Systems

ID bug Cisco

ID bug Cisco CSCvz54607 (C9200/C9200L (16.12) - Sovraccarico della coda di output causato da una programmazione QoS errata)

ID bug Cisco CSCvz76172 (C9200/C9200L (17.3/17.6) - Sovraccarico della coda di output causato da una programmazione QoS errata)