In dem Dokumentationssatz für dieses Produkt wird die Verwendung inklusiver Sprache angestrebt. Für die Zwecke dieses Dokumentationssatzes wird Sprache als „inklusiv“ verstanden, wenn sie keine Diskriminierung aufgrund von Alter, körperlicher und/oder geistiger Behinderung, Geschlechtszugehörigkeit und -identität, ethnischer Identität, sexueller Orientierung, sozioökonomischem Status und Intersektionalität impliziert. Dennoch können in der Dokumentation stilistische Abweichungen von diesem Bemühen auftreten, wenn Text verwendet wird, der in Benutzeroberflächen der Produktsoftware fest codiert ist, auf RFP-Dokumentation basiert oder von einem genannten Drittanbieterprodukt verwendet wird. Hier erfahren Sie mehr darüber, wie Cisco inklusive Sprache verwendet.
Cisco hat dieses Dokument maschinell übersetzen und von einem menschlichen Übersetzer editieren und korrigieren lassen, um unseren Benutzern auf der ganzen Welt Support-Inhalte in ihrer eigenen Sprache zu bieten. Bitte beachten Sie, dass selbst die beste maschinelle Übersetzung nicht so genau ist wie eine von einem professionellen Übersetzer angefertigte. Cisco Systems, Inc. übernimmt keine Haftung für die Richtigkeit dieser Übersetzungen und empfiehlt, immer das englische Originaldokument (siehe bereitgestellter Link) heranzuziehen.
In diesem Dokument wird beschrieben, wie Sie die QoS-Hardwarenutzung (Quality of Service) bei UADP ASIC-basierten Catalyst Switches der Serie 9000 ermitteln und überprüfen können.
Cisco empfiehlt, dass Sie über Kenntnisse in folgenden Bereichen verfügen:
Die Informationen in diesem Dokument basierend auf folgenden Software- und Hardware-Versionen:
Die allgemeinen Konzepte, Ideen und verschiedenen Ergebnisse sind auch in anderen Cisco Catalyst Switches der Serie 9000 zu sehen.
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle verstehen.
Dieses Dokument kann auch mit folgenden Hardware- und Softwareversionen verwendet werden:
Dieses Dokument unterstützt Sie bei folgenden Aspekten:
QoS |
Quality of Service |
Ein Konzept/eine Gruppe verwandter Funktionen, die sich auf die Klassifizierung, Markierung, Warteschlangeneinrichtung und Planung des ein- und ausgehenden Datenverkehrs eines Netzwerkgeräts beziehen |
TCAM |
Ternärer Content-Addressable Memory |
Ein Speichertyp, der Einträge mit drei verschiedenen Eingaben speichert und abfragt: 0, 1 und X. Dieser Speichertyp wird verwendet, wenn mehrere Übereinstimmungen mit demselben Eintrag vorliegen und der resultierende Hash für jeden Eintrag nicht eindeutig ist. Diese Tabelle enthält eine Maske oder einen X-Wert, mit dem sie erkennen kann, ob sie mit diesem Eintrag übereinstimmt oder nicht. |
DSCP |
Differentiated Services Code Point |
Ein Verkehrsklassifizierungsmechanismus, der im IP-Header eines Pakets enthalten ist |
CoS |
Serviceklasse |
Ein Verkehrsklassifizierungsmechanismus, der im Ethernet-Frame-Header eines Pakets enthalten ist. |
RAUM |
Zugriffskontrolleintrag |
Eine einzelne Regel oder Zeile in einer Zugriffskontrollliste (ACL) |
ACL |
Zugriffskontrollliste |
Eine Gruppe von Zugriffskontrolleinträgen (Access Control Entries, ACEs), die von verschiedenen Funktionen verwendet werden, um Datenverkehr abzugleichen und eine Aktion auszuführen. |
FED |
Forward Engine-Treiber |
Softwarekomponente, die die Hardware des Geräts programmiert |
Wenn Ihnen die QoS-bezogenen Ressourcen ausgehen, werden vom System folgende SYSLOG-Meldungen generiert:
QoS-bezogene Syslog-Meldung |
Definition |
Wiederherstellungsaktionen |
%FED_QOS_ERRMSG-4-TCAM_OVERFLOW: Switch 1 R0/0: feed: Fehler beim Programmieren des TCAM für "policy-map ingress_pmap2" auf GigabitEthernet1/0/10. |
Der für QoS-Elemente reservierte Hardware (TCAM) ist nicht mehr ausreichend Platz. |
Vergewissern Sie sich, dass Sie eine gültige/unterstützte Konfiguration haben. Anschließend überprüfen Sie den Rest dieses Dokuments, um die aktuelle Skalierungsauslastung Ihres Switches und mögliche Schritte zur Reduzierung bei Überlastung zu validieren. |
%FED_QOS_ERRMSG-3-QUEUE_SCHEDULER_HW_ERROR: Switch 1 R0/0: gefüttert: Fehler beim Konfigurieren des Warteschlangenplaners für GigabitEthernet1/0/27. |
Fehler bei der Installation des QoS-Warteschlangenplaners auf der Hardware |
Überprüfen Sie, ob Ihre Konfiguration unterstützt wird, und lesen Sie den QoS-Konfigurationsleitfaden für Ihre spezielle Plattform und Softwareversion. NUR für 9200L: Cisco Bug-ID CSCvz54607 und Cisco Bug-ID CSCvz76172 |
FED_QOS_ERRMSG-3-QUEUE_BUFFER_HW_ERROR: R0/0: gefüttert: Fehler beim Konfigurieren des Standardwarteschlangen-Puffers |
Fehler bei der Hardwareinstallation der QoS-Warteschlangenpuffer. |
Überprüfen Sie, ob Ihre Konfiguration unterstützt wird, und lesen Sie den QoS-Konfigurationsleitfaden für Ihre jeweilige Plattform und Softwareversion. |
Überprüfen der aktuellen QoS-TCAM-Nutzung
show platform hardware fed switch active fwd-asic resource tcam utilization
Hinweis: Weitere Informationen zu diesem Befehl finden Sie unter .
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
Überprüfen Sie, ob die QoS-Richtlinie erfolgreich auf der Hardware installiert wurde. Stellen Sie sicher, dass der Status GÜLTIG und SET_INHW lautet. Suchen Sie am Ende der Liste nach Einträgen für physische Schnittstellen. Verwenden Sie in Switch-Stacks oder im Stack-Modus (virtuell) die Switch-Nummer oder "active/standby", um genau anzugeben, für welchen Switch die Hardware-Installation validiert werden soll.
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
Wenn statt GÜLTIG / SET_INHW für eine Zielschnittstelle eine ungültige Richtlinie oder ein Fehler angezeigt wird, überprüfen Sie die QoS-Richtlinie, und validieren Sie Länge und Syntax. Überprüfen Sie außerdem die Hardwarenutzung. In den späteren Abschnitten dieses Dokuments wird erläutert, wie Sie die Ressourcen verstehen, die eine Richtlinie nutzen kann.
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
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
Konfigurieren und Anhängen einer leeren Richtlinienzuordnung: In dieser Richtlinienzuordnung wurden keine Klassenzuordnungen aufgerufen, sodass diese Richtlinie nicht die beabsichtigte Wirkung hat.
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
Beachten Sie, dass selbst bei angefügten Klassenzuordnungen und durchgeführten Aktionen vier Hardwareeinträge verwendet werden, die auf V4, V6 und andere verteilt sind.
In diesem Beispiel wird eine leere Testklasse hinzugefügt. In einem normalen Szenario würde diese "match-any class-map" den Abgleich mehrerer Typen von DSCP-, CoS- oder IPP-Labels ermöglichen. Zum Beispiel wurden jedoch keine Werte aufgerufen, sodass die Klassenzuordnung mit keinem Datenverkehr übereinstimmt.
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
Das Beispiel zeigt, dass für jede zusätzlich aufgerufene Klasse, selbst wenn kein spezifischer Datenverkehr abgeglichen wurde, eine Baseline aus einem v4-Eintrag und zwei v6-Einträgen belegt wird.
Wenn Sie jeder Klasse eine Match-Anweisung hinzufügen, werden weitere Einträge verwendet:
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
Beachten Sie, dass in einigen Fällen eine einzelne Match-Anweisung keine weiteren Einträge benötigt. Beachten Sie außerdem, dass nachfolgende Match-Anweisungen mehrere Einträge enthalten.
Bevor Sie eine netzwerkweite Richtlinie implementieren, sollten Sie die Richtlinie während der Entwicklung regelmäßig testen und anschließend optimieren.
Hinweis: Bei QoS-bezogener Hardwarenutzung erfolgt die Skalierung der Hardwarenutzung nicht immer im Verhältnis 1:1 mit Übereinstimmungsanweisungen oder Zugriffskontrolleinträgen (Access Control Entries, ACEs). Die Hardware arbeitet mit dem Value Mask Result (VMR). In einigen Szenarien kann mehr als ein VMR erforderlich sein, um den Datenbereich, der zur Erfüllung eines ACE erforderlich ist, vollständig zu klassifizieren. Die ASICs der Catalyst Switches der Serie 9000 der UADP-Familie enthalten Hardware zur Optimierung dieser Szenarien, z. B. für ACEs mit Port-Bereich-Operationen (L4OPs), um den Erweiterungsbedarf zu reduzieren.
In diesem Abschnitt werden mehrere Szenarien mit dieser Kombination aus Hardware und Software vorgestellt, um ein Problemszenario und die Problembehebung zu veranschaulichen.
Die vorgestellten Szenarien veranschaulichen Folgendes:
Hinweis: In diesen Beispielen werden objektgruppenbasierte Zugriffskontrolllisten verwendet. Objektgruppen stellen auf effiziente Weise viel größere traditionelle Zugriffslisten dar. Sie benötigen nicht zwangsläufig mehr oder weniger TCAM. Vielmehr stellen sie eine vereinfachte und modulare Art dar, was ansonsten sehr lange, strukturierte Listen von ACEs wären.
In diesem Beispiel wird eine Eingangsrichtlinie zum Markieren von Paketen verwendet. Dies umfasst Objektgruppen, IP-Zugriffslisten und Übereinstimmungen auf TCP-/UDP-Portbasis.
Objektgruppen |
Zugriffsliste, die die Objektgruppe verwendet |
Klassenzuordnung |
Richtlinienzuordnung |
Objektgruppennetzwerk RFC1918-Privat-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 Zuordnen des Zugriffsgruppennamen APP_1_PORTS_1 |
Richtlinienzuweisung ingress_pmap Klasse BigClass DSCP CS2 festlegen |
Sehen Sie sich das Diagramm an, und beachten Sie, dass es im Objektgruppennetzwerk RFC1918-Private-IPv4 3 Subnetze gibt.
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
Darüber hinaus gibt es 6 Match-Anweisungen 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 wendet jeden Eintrag im object-group network RFC1918-Private-IPv4 auf jeden Eintrag in der ip access-list extended APP_1_PORTS_1 an
Dies hat einen multiplikativen Effekt, da für jeden ACE in APP_1_PORTS_1 auf die Objektgruppe app_1 verwiesen wird, die ihrerseits 3 zusätzliche ACEs von RFC1918-Private-IPv4 darstellt
Die geschätzte Gesamtnutzung für die erweiterte IP-Zugriffsliste APP_1_PORTS_1 beträgt, wenn sie mit einer Klassenzuordnung und Richtlinienzuordnung verknüpft ist:
APP_1 verwendet 6 Mal x 3 Objektgruppen-ACEs = 18
Wenden Sie die Richtlinie an, und beachten Sie die TCAM-Nutzung:
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
Zusammenfassung
Dieses Beispiel ist eine Fortsetzung des vorherigen mit einer größeren Politik. Auf diese Weise können Sie schnell eine große Menge an TCAM verwenden.
Richtlinie 1:
Objektgruppen |
Zugriffslisten, die die Objektgruppen verwenden |
Klassenzuordnung |
Richtlinienzuordnung |
Objektgruppennetzwerk experimental_1 Objektgruppennetzwerk experimental_2 Objektgruppennetzwerk RFC1918-Privat-IPv4
Objektgruppen-Netzwerk-App_4 |
ip access-list extended APP_1_PORTS_1 <4 weitere Leitungen> ip access-list extended APP_1_PORTS_2 <18 weitere Leitungen> ip access-list extended APP_1_PORTS_3 10 permit udp any object-group app_1 range 22030 22031 <6 weitere Leitungen> ip access-list extended APP_2_PORTS_1 10 permit udp any object-group app_2 range 6000 9291 ip access-list extended APP_3_PORTS_1 10 permit tcp any object-group app_3 eq 7563 <4 weitere Leitungen> ip access-list extended APP_3_PORTS_2 <2 weitere Zeilen> ip access-list extended APP_3_PORTS_3 10 permit udp any object-group app_3 eq 22331 <2 weitere Zeilen> ip access-list extended APP_3_PORTS_4 <6 weitere Leitungen> ip access-list extended APP_4_PORTS_1 <14 weitere Leitungen> |
Class-Map Match-Any BigClass_1 Class-Map-Match-Any BigClass_2 Class-Map Match-Any BigClass_3 Class-Map-Match-Any BigClass_4 Class-Map-Match-Any BigClass_5 |
Richtlinienzuordnung big_ingress_pmap DSCP CS4 festlegen Klasse BigClass_2 dscp af41 festlegen Klasse BigClass_3 DSCP CS3 festlegen Klasse BigClass_4 dscp af31 festlegen Klasse BigClass_5 DSCP CS2 festlegen class class-default |
Beachten Sie, dass die Richtlinienzuweisung rechts neben der Klassenzuordnung einfach ist. Die Klassenzuordnungen bestehen jedoch aus einer Reihe längerer Zugriffslisten und Objektgruppen, die erweitert werden, sobald die Software alle Komponenten zusammenführt, während die Richtlinienzuordnung auf eine Schnittstelle angewendet wird.
Bei Anwendung der Richtlinie:
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
Der verwendete Wert für den TCAM-Tabelleneintrag für QoS-ACL wurde von 85 auf 633 erhöht (um 548 Einträge).
Wenn Sie in diesem Szenario die vorherige Richtlinienzuordnung verwenden und den Satz dscp cs4 nur in dscpef in einer separaten Richtlinie ändern, wenn diese Richtlinie angehängt ist, müssen alle Einträge in der Hardware dupliziert werden.
Hinweis: Beim Entwurf einer QoS-Richtlinie besteht eine wichtige Möglichkeit zur Reduzierung der Hardwarenutzung darin, Aktionen und Regeln in einer einzigen Richtlinienzuordnung zusammenzufassen, um mehrere Anwendungsfälle zu erfüllen. Klassifizierungs-ACEs, die sich zwischen zwei Richtlinienzuordnungen überschneiden, werden in der Hardware dupliziert. Wenn Sie Richtlinien kombinieren, entfällt die Notwendigkeit einer Neuinstallation der sich überschneidenden ACEs.
Richtlinienzuordnung 1 | Richtlinienplan 2 |
Richtlinienzuordnung big_ingress_pmap DSCP CS4 festlegen Klasse BigClass_2 dscp af41 festlegen Klasse BigClass_3 DSCP CS3 festlegen Klasse BigClass_4 dscp af31 festlegen Klasse BigClass_5 DSCP CS2 festlegen class class-default |
Richtlinienzuordnung big_ingress_pmap2 set dscef Klasse BigClass_2 dscp af41 festlegen Klasse BigClass_3 DSCP CS3 festlegen Klasse BigClass_4 dscp af31 festlegen Klasse BigClass_5 DSCP CS2 festlegen class class-default |
Beachten Sie, dass bei der Installation von big_ingress_pmap2 keine Erhöhung der Auslastung festgestellt wird und ein Fehler protokolliert wird.
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
Dieser Fehler wurde beobachtet:
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.
Stellen Sie sicher, dass bei der Installation dieser Richtlinie auf der Hardware ein Fehler auftritt:
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
Um dieses Szenario zu beheben, müssen Sie die Absicht der Änderung berücksichtigen und prüfen, ob Optimierungen möglich sind.
Richtlinienzuordnung 1 |
Richtlinienplan 2 |
Richtlinienzuordnung big_ingress_pmap DSCP CS4 festlegen Klasse BigClass_2 dscp af41 festlegen Klasse BigClass_3 DSCP CS3 festlegen Klasse BigClass_4 dscp af31 festlegen Klasse BigClass_5 DSCP CS2 festlegen class class-default |
Richtlinienzuordnung big_ingress_pmap2 set dscef Klasse BigClass_2 dscp af41 festlegen Klasse BigClass_3 DSCP CS3 festlegen Klasse BigClass_4 dscp af31 festlegen Klasse BigClass_5 DSCP CS2 festlegen class class-default |
Wenn die Konfiguration gültig ist und ein Skalierungslimit der Hardware erreicht wird, erfordert die Problembehebung einen designorientierten Ansatz. Eine Reduzierung der ACEs und der anschließenden VMR-Auslastung der Hardware ist nicht möglich. Sie müssen überlegen, was Sie klassifizieren möchten und wie Sie das zusammenfassen.
Die vorherigen Szenarien enthalten absichtlich zwei Richtlinien, die fast identisch sind, mit Ausnahme einer set dscp-Anweisung in der policy-map. Wenn in diesem Fall dieselbe Klassifizierung des Datenverkehrs auf Layer 3 (IP) oder Layer 4 (TCP/UDP) auf der Grundlage der Schnittstelle unterschiedlich markiert werden soll, müssen Sie berücksichtigen, welche wichtigen Informationen (über die Geräte hinter diesen Schnittstellen) sich ändern, sodass Sie diese beiden Richtlinien zu einer kombinieren können.
Hinweis: SGT/SGACL erfordert die Cisco ISE, die zugehörige DOT1X/MAB-Konfiguration und eine weitere Durchsetzung im gesamten Netzwerk. Das Design muss angemessen berücksichtigt werden.
So ändern Sie die Beispielrichtlinie, um die Funktionen von big_ingress_pmap und big_ingress_pmap2 zu kombinieren:
Die Klasse BigClass_1 wird aus dem Zugriffsgruppennamen (Zugriffsliste) APP_3_PORTS_2 erstellt.
Die erweiterte IP-Zugriffsliste APP_3_PORTS_2 ist die Stelle, an der die Beziehung zwischen Quellen und Zielen hergestellt wird.
Erstellen Sie ein Duplikat der erweiterten IP-Zugriffsliste "APP_3_PORTS_2" mit einem neuen Namen, anstatt spezifische Quell-Subnetze/Ziel-Subnetze zu verwenden, auf die diese Unterscheidung zutrifft:
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>
Erstellen Sie eine neue Klasse mit dem Namen BigClass_1_Special.
class-map match-any BigClass_1_Special
match access-group name APP_3_PORTS_2_Special
Konfigurieren Sie die Richtlinienzuordnung neu, um die neue Klasse an die Spitze der Richtlinie aufzunehmen.
Kombinierte Richtlinienzuordnung |
Richtlinienzuordnung big_ingress_pmap_combined set dscef Klasse BigClass_1 DSCP CS4 festlegen Klasse BigClass_2 dscp af41 festlegen Klasse BigClass_3 DSCP CS3 festlegen Klasse BigClass_4 dscp af31 festlegen Klasse BigClass_5 DSCP CS2 festlegen class class-default |
Hinweis: Es ist nicht möglich, Klassen in einer Richtlinienzuordnung neu anzuordnen. Wenn Sie eine neu konfigurierte Klasse vor eine bereits vorhandene Klasse stellen müssen, müssen Sie die gesamte Richtlinie neu konfigurieren. Das bedeutet, Sie müssen sie vollständig aus der Konfiguration entfernen.
Wenn Sie eine neue Richtlinie mit aktualisierter Reihenfolge erstellen und die Installation/Anwendung der Richtlinie fehlschlägt, entfernen Sie zuerst die alte Richtlinie von allen angeschlossenen Schnittstellen, um die Hardwareauslastung zu reduzieren.
Der Befehlsschnittstellenbereich arbeitet sequenziell an Schnittstellen, sodass seine Verwendung mit einer neuen Richtlinie zum Überschreiben einer alten ein temporäres Szenario einführt, in dem beide Richtlinien in der Hardware vorhanden sein müssen. An diesem Punkt kann es aufgrund übermäßiger Auslastung nicht installiert werden. Entfernen Sie die aktuelle Richtlinie von allen Schnittstellen, um die Hardwareauslastung zu reduzieren, und fahren Sie dann fort.
Die häufigsten Probleme mit Hardwareressourcen im Zusammenhang mit der QoS-Nutzung werden in diesem Leitfaden behandelt, und es werden geeignete Abhilfemaßnahmen ergriffen. Falls Ihr Problem jedoch nicht durch diesen Leitfaden behoben werden konnte, sammeln Sie die angezeigte Befehlsliste, und fügen Sie sie Ihrer TAC-Serviceanfrage bei.
Cisco Bug-ID CSCvz54607 (C9200/C9200L (16.12) - Ausgabewarteschlange aufgrund falscher QoS-Programmierung überladen)
Cisco Bug-ID CSCvz76172 (C9200/C9200L (17.3/17.6) - Ausgabewarteschlange aufgrund falscher QoS-Programmierung überladen)
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
1.0 |
05-Dec-2022 |
Erstveröffentlichung |