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 werden Warteschlangen und Pufferung auf Cisco Nexus Switches der Serie 9000 beschrieben, die mit einem Cisco Scale ASIC ausgestattet sind, auf dem die NX-OS-Software ausgeführt wird.
Cisco empfiehlt, sich mit den Grundlagen von Ethernet-Switching in gemeinsam genutzten Mediennetzwerken und der Notwendigkeit von Warteschlangen/Pufferung in diesen Netzwerken vertraut zu machen. Cisco empfiehlt außerdem, sich mit den Grundlagen von Quality of Service (QoS) und Pufferung auf Cisco Nexus-Switches vertraut zu machen. Weitere Informationen finden Sie in der Dokumentation hier:
Die Informationen in diesem Dokument basieren auf Cisco Nexus Switches der Serie 9000 mit dem Cloud Scale ASIC, auf dem die NX-OS-Softwareversion 9.3(8) ausgeführt wird.
Das in diesem Dokument beschriebene Verfahren gilt nur für die hier gezeigte Hardware.
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 kennen.
In diesem Dokument werden die Mechanismen für Warteschlangen und Pufferung auf Cisco Nexus Switches der Serie 9000 beschrieben, die mit einem Cisco Cloud Scale ASIC (Application-Specific Integrated Circuit) mit NX-OS-Software ausgestattet sind. In diesem Dokument werden auch Symptome einer Port-Überbelegung auf dieser Plattform beschrieben, wie z. B. Leistungsindikatoren für eine Verwerfungsschnittstelle, die ungleich null sind, und Syslogs, die angeben, dass die Pufferschwellenwerte überschritten wurden.
Die Cisco Nexus Switches der Serie 9000 mit dem Cisco Cloud Scale ASIC implementieren eine Ausgangspufferarchitektur mit gemeinsamem Speicher. Ein ASIC ist in eine oder mehrere "Schichten" unterteilt. Jedes Slice hat seinen eigenen Puffer, und nur Ports innerhalb dieses Slice können diesen Puffer verwenden. Physisch ist jedes Segment in "Zellen" unterteilt, die Teile des Puffers darstellen. Slices werden in "Pool-Gruppen" unterteilt. Eine bestimmte Anzahl von Zellen wird jeder Poolgruppe zugewiesen, und sie werden nicht von separaten Poolgruppen gemeinsam verwendet. Jede Poolgruppe verfügt über einen oder mehrere "Pools", die eine Class of Service (CoS) für Unicast- oder Multicast-Datenverkehr darstellen. Dadurch kann jede Pool-Gruppe Pufferressourcen für die Arten von Datenverkehr garantieren, die von der Pool-Gruppe bedient werden.
Die Abbildung hier zeigt visuell, wie die verschiedenen Modelle der Cisco Cloud Scale ASIC in Abschnitte unterteilt sind. Das Bild zeigt auch, wie jedem Slice eine bestimmte Menge an Puffer durch Zellen zugewiesen wird.
Jedes Modell eines Nexus Switches der Serie 9000 und einer Nexus 9500 Linecard weist eine unterschiedliche Anzahl von Cisco Cloud Scale-ASICs im Inneren sowie ein anderes Layout auf, das vorgibt, welche Ports an der Vorderseite mit welchem ASIC verbunden sind. Zwei Beispiele, die die Linecard N9K-X9736C-FX und den Switch N9K-C9336C-FX2 verwenden, sind in den Abbildungen hier dargestellt.
Die N9K-C9736C-FX Linecard verfügt über 4 Cisco Cloud Scale LS1800FX ASICs mit einem Segment pro ASIC. Intern wird jeder ASIC als "Einheit" bezeichnet. Jedes Segment wird als "Instanz" bezeichnet und erhält eine nullbasierte Ganzzahl, die das Segment innerhalb des Chassis eindeutig identifiziert. Daraus ergeben sich die hier gezeigten Permutationen:
Der N9K-C9336C-FX2-Switch verfügt über einen Cisco Cloud Scale LS3600FX2 ASIC mit zwei Slices pro ASIC. Intern wird jeder ASIC als "Einheit" bezeichnet. Jedes Segment wird als "Instanz" bezeichnet und erhält eine nullbasierte Ganzzahl, die das Segment innerhalb des Chassis eindeutig identifiziert. Daraus ergeben sich die hier gezeigten Permutationen:
Jede Linecard und jeder Switch hat ein anderes Layout und führt zu unterschiedlichen Instanznummern. Damit Sie Ihr Netzwerk auf bandbreitenintensive Datenverkehrsflüsse ausrichten können, müssen Sie das Switch- oder Line Card-Layout verstehen, mit dem Sie arbeiten möchten. Mit dem Befehl show interface hardware-mappings kann jeder Port an der Vorderseite mit einer Einheit (ASIC) und einer Slice-Nummer korreliert werden. Ein Beispiel hierfür ist hier dargestellt. Die Schnittstelle Ethernet2/16 eines Nexus 9504-Switches mit einer in Steckplatz 2 des Chassis eingesetzten Linecard N9K-X9736C-FX entspricht Einheit 1, Segment 0.
switch# show interface hardware-mappings Legends: SMod - Source Mod. 0 is N/A Unit - Unit on which port resides. N/A for port channels HPort - Hardware Port Number or Hardware Trunk Id: HName - Hardware port name. None means N/A FPort - Fabric facing port number. 255 means N/A NPort - Front panel port number VPort - Virtual Port Number. -1 means N/A Slice - Slice Number. N/A for BCM systems SPort - Port Number wrt Slice. N/A for BCM systems SrcId - Source Id Number. N/A for BCM systems MacIdx - Mac index. N/A for BCM systems MacSubPort - Mac sub port. N/A for BCM systems ------------------------------------------------------------------------------------------------------- Name Ifindex Smod Unit HPort FPort NPort VPort Slice SPort SrcId MacId MacSP VIF Block BlkSrcID ------------------------------------------------------------------------------------------------------- Eth2/1 1a080000 5 0 16 255 0 -1 0 16 32 4 0 145 0 32 Eth2/2 1a080200 5 0 12 255 4 -1 0 12 24 3 0 149 0 24 Eth2/3 1a080400 5 0 8 255 8 -1 0 8 16 2 0 153 0 16 Eth2/4 1a080600 5 0 4 255 12 -1 0 4 8 1 0 157 0 8 Eth2/5 1a080800 5 0 0 255 16 -1 0 0 0 0 0 161 0 0 Eth2/6 1a080a00 5 0 56 255 20 -1 0 56 112 14 0 165 1 40 Eth2/7 1a080c00 5 0 52 255 24 -1 0 52 104 13 0 169 1 32 Eth2/8 1a080e00 6 1 16 255 28 -1 0 16 32 4 0 173 0 32 Eth2/9 1a081000 6 1 12 255 32 -1 0 12 24 3 0 177 0 24 Eth2/10 1a081200 6 1 8 255 36 -1 0 8 16 2 0 181 0 16 Eth2/11 1a081400 6 1 4 255 40 -1 0 4 8 1 0 185 0 8 Eth2/12 1a081600 6 1 0 255 44 -1 0 0 0 0 0 189 0 0 Eth2/13 1a081800 6 1 56 255 48 -1 0 56 112 14 0 193 1 40 Eth2/14 1a081a00 6 1 52 255 52 -1 0 52 104 13 0 197 1 32 Eth2/15 1a081c00 7 2 16 255 56 -1 0 16 32 4 0 201 0 32 Eth2/16 1a081e00 7 2 12 255 60 -1 0 12 24 3 0 205 0 24 Eth2/17 1a082000 7 2 8 255 64 -1 0 8 16 2 0 209 0 16 Eth2/18 1a082200 7 2 4 255 68 -1 0 4 8 1 0 213 0 8 Eth2/19 1a082400 7 2 0 255 72 -1 0 0 0 0 0 217 0 0 Eth2/20 1a082600 7 2 56 255 76 -1 0 56 112 14 0 221 1 40 Eth2/21 1a082800 7 2 52 255 80 -1 0 52 104 13 0 225 1 32 Eth2/22 1a082a00 8 3 16 255 84 -1 0 16 32 4 0 229 0 32 Eth2/23 1a082c00 8 3 12 255 88 -1 0 12 24 3 0 233 0 24 Eth2/24 1a082e00 8 3 8 255 92 -1 0 8 16 2 0 237 0 16 Eth2/25 1a083000 8 3 4 255 96 -1 0 4 8 1 0 241 0 8 Eth2/26 1a083200 8 3 0 255 100 -1 0 0 0 0 0 245 0 0 Eth2/27 1a083400 8 3 56 255 104 -1 0 56 112 14 0 249 1 40 Eth2/28 1a083600 8 3 52 255 108 -1 0 52 104 13 0 253 1 32 Eth2/29 1a083800 5 0 48 255 112 -1 0 48 96 12 0 257 1 24 Eth2/30 1a083a00 5 0 44 255 116 -1 0 44 88 11 0 261 1 16 Eth2/31 1a083c00 6 1 48 255 120 -1 0 48 96 12 0 265 1 24 Eth2/32 1a083e00 6 1 44 255 124 -1 0 44 88 11 0 269 1 16 Eth2/33 1a084000 7 2 48 255 128 -1 0 48 96 12 0 273 1 24 Eth2/34 1a084200 7 2 44 255 132 -1 0 44 88 11 0 277 1 16 Eth2/35 1a084400 8 3 48 255 136 -1 0 48 96 12 0 281 1 24 Eth2/36 1a084600 8 3 44 255 140 -1 0 44 88 11 0 285 1 16
Bei der Interpretation des Syslog wird die Instanz-ID auf der Grundlage der Reihenfolge der zusammenhängenden Einheiten und Slice-Kombinationen berechnet. Wenn beispielsweise ein Nexus 9500-Modul oder ein Nexus 9300 TOR (Top-of-Rack) zwei Einheiten (ASICs) und zwei Abschnitte pro Einheit aufweist, können die Instanz-IDs wie folgt lauten:
Wenn ein Modul über eine Einheit und vier Slices verfügt, können die Instanz-IDs wie folgt lauten:
Schnittstellen, die mit einem Ethernet-Netzwerk verbunden sind, können jeweils nur ein Paket übertragen. Wenn zwei Pakete gleichzeitig aus einer Ethernet-Schnittstelle austreten müssen, überträgt die Ethernet-Schnittstelle ein Paket, während das andere Paket gepuffert wird. Nachdem das erste Paket übertragen wurde, überträgt die Ethernet-Schnittstelle das zweite Paket aus dem Puffer. Wenn die Gesamtsumme des Datenverkehrs, der ausgehen muss, die Schnittstellenbandbreite überschreitet, gilt die Schnittstelle als überbelegt. Wenn z. B. sofort insgesamt 15 Gbit/s Datenverkehr auf dem Switch eingeht und eine 10-Gbit/s-Schnittstelle ausgehen muss, ist die 10-Gbit/s-Schnittstelle überbelegt, da sie nicht in der Lage ist, jeweils 15 Gbit/s Datenverkehr zu übertragen.
Ein Cisco Nexus Switch der Serie 9000 mit einem Cloud Scale ASIC bewältigt diesen Ressourcenkonflikt, indem er den Datenverkehr innerhalb der Puffer des ASIC-Abschnitts puffert, der der Ausgangsschnittstelle zugeordnet ist. Wenn die Gesamtsumme des Datenverkehrs, der eine Schnittstelle verlässt, die Schnittstellenbandbreite über einen längeren Zeitraum überschreitet, beginnen sich die Puffer des ASIC-Abschnitts mit Paketen zu füllen, die die Schnittstelle verlässt.
Wenn die Puffer des ASIC-Abschnitts eine Auslastung von 90 % erreichen, generiert der Switch ein Syslog, ähnlich dem hier gezeigten:
%TAHUSD-SLOT2-4-BUFFER_THRESHOLD_EXCEEDED: Module 2 Instance 0 Pool-group buffer 90 percent threshold is exceeded!
Wenn die Puffer des ASIC-Abschnitts voll sind, verwirft der Switch jeglichen zusätzlichen Datenverkehr, der die Schnittstelle verlässt, bis der freie Speicherplatz in den Puffern erreicht ist. Wenn der Switch diesen Datenverkehr verwirft, erhöht er den Zähler Output Discards (Ausgabe verwirft) an der Ausgangsschnittstelle.
Der generierte Syslog-Zähler und der Output Discards-Zähler ungleich null sind Symptome einer überbelegten Schnittstelle. Jedes Symptom wird in den Unterabschnitten hier genauer untersucht.
Hier sehen Sie ein Beispiel für das BUFFER_THRESHOLD_EXCEEDED-Syslog.
%TAHUSD-SLOTX-4-BUFFER_THRESHOLD_EXCEEDED: Module X Instance Y Pool-group buffer Z percent threshold is exceeded!
Dieses Syslog enthält drei wichtige Informationen:
Der Schnittstellenzähler "Output Discards" (Ausgabe verwirft) gibt die Anzahl der verworfenen Pakete an, die die Schnittstelle verlassen haben müssen, aber aufgrund der Tatsache, dass der Puffer des ASIC-Abschnitts voll ist und keine neuen Pakete annehmen kann, nicht verworfen werden konnten. Der Zähler Output Discards (Ausgabe verwirft) wird in der Ausgabe von show interface und show interface counters errors (Schnittstellenzähler anzeigen) angezeigt, wie hier gezeigt.
switch# show interface Ethernet1/1 Ethernet1/1 is up admin state is up, Dedicated Interface Hardware: 1000/10000/25000/40000/50000/100000 Ethernet, address: 7cad.4f6d.f6d8 (bia 7cad.4f6d.f6d8) MTU 1500 bytes, BW 40000000 Kbit , DLY 10 usec reliability 255/255, txload 232/255, rxload 1/255 Encapsulation ARPA, medium is broadcast Port mode is trunk full-duplex, 40 Gb/s, media type is 40G Beacon is turned off Auto-Negotiation is turned on FEC mode is Auto Input flow-control is off, output flow-control is off Auto-mdix is turned off Rate mode is dedicated Switchport monitor is off EtherType is 0x8100 EEE (efficient-ethernet) : n/a admin fec state is auto, oper fec state is off Last link flapped 03:16:50 Last clearing of "show interface" counters never 3 interface resets Load-Interval #1: 30 seconds 30 seconds input rate 0 bits/sec, 0 packets/sec 30 seconds output rate 36503585488 bits/sec, 3033870 packets/sec input rate 0 bps, 0 pps; output rate 36.50 Gbps, 3.03 Mpps Load-Interval #2: 5 minute (300 seconds) 300 seconds input rate 32 bits/sec, 0 packets/sec 300 seconds output rate 39094683384 bits/sec, 3249159 packets/sec input rate 32 bps, 0 pps; output rate 39.09 Gbps, 3.25 Mpps RX 0 unicast packets 208 multicast packets 9 broadcast packets 217 input packets 50912 bytes 0 jumbo packets 0 storm suppression bytes 0 runts 0 giants 0 CRC 0 no buffer 0 input error 0 short frame 0 overrun 0 underrun 0 ignored 0 watchdog 0 bad etype drop 0 bad proto drop 0 if down drop 0 input with dribble 0 input discard 0 Rx pause TX 38298127762 unicast packets 6118 multicast packets 0 broadcast packets 38298133880 output packets 57600384931480 bytes 0 jumbo packets 0 output error 0 collision 0 deferred 0 late collision 0 lost carrier 0 no carrier 0 babble 57443534227 output discard <<< Output discards due to oversubcription 0 Tx pause switch# show interface Ethernet1/1 counters errors -------------------------------------------------------------------------------- Port Align-Err FCS-Err Xmit-Err Rcv-Err UnderSize OutDiscards -------------------------------------------------------------------------------- Eth1/1 0 0 0 0 0 57443534227 -------------------------------------------------------------------------------- Port Single-Col Multi-Col Late-Col Exces-Col Carri-Sen Runts -------------------------------------------------------------------------------- Eth1/1 0 0 0 0 0 0 -------------------------------------------------------------------------------- Port Giants SQETest-Err Deferred-Tx IntMacTx-Er IntMacRx-Er Symbol-Err -------------------------------------------------------------------------------- Eth1/1 0 -- 0 0 0 0 -------------------------------------------------------------------------------- Port InDiscards -------------------------------------------------------------------------------- Eth1/1 0
Betrachten wir ein Szenario, in dem der Datenverkehr zwischen zwei IXIA-Datenverkehrsgeneratoren einen Nexus 9504-Switch mit zwei N9K-X9736C-FX Line Cards passiert, die in die Steckplätze 1 und 2 des Chassis eingesetzt sind. Der Datenverkehr mit 100 Gbit/s gelangt über die 100-Gbit/s-Schnittstelle Ethernet1/1 zum Switch und muss über die 40-Gbit/s-Schnittstelle Ethernet2/2 ausgehen. Daher ist Ethernet2/2 überbelegt. Eine Topologie dieses Szenarios ist hier dargestellt.
Da der Nexus 9000 Cloud Scale ASIC eine Egress-Pufferarchitektur mit gemeinsamem Speicher verwendet, müssen Sie den Puffer der Egress-Schnittstelle "Ethernet2/2" überprüfen, um die Überlastung zu ermitteln. In diesem Beispiel ist die in Steckplatz 2 eingesetzte Linecard die Ausgangs-Linecard. Sie müssen daher den Befehl Attach Module 2 verwenden, bevor Sie den internen Hardwarepuffer mit dem Befehl show hardware internal tah buffer counters anzeigen. Beachten Sie den von Null verschiedenen Zähler "Occupancy Drops" für die Poolgruppe 0, Segment 0 und die zugehörigen Pools, der die Anzahl der wegen vollständiger Belegung des Poolgruppenpuffers verworfenen Pakete angibt.
switch# attach module 2
module-2# show hardware internal tah buffer counters Unit: 0 Slice: 0 ==================== |------------------------------------------------------------------------------------------------------------------| | Output Pool-Group drops | | Drop-PG No-drop CPU--PG LCPU-PG RCPU-PG SPAN-PG | |------------------------------------------------------------------------------------------------------------------| Occupancy drops 51152554987 0 0 0 0 0 | AQM drops 0 0 N/A N/A N/A N/A | |--------------------------------------------------------------------------------------------------------------------| | Output UC Pool counters | | Pool 0 Pool 1 Pool 2 Pool 3 Pool 4 Pool 5 Pool 6 Pool 7 | |--------------------------------------------------------------------------------------------------------------------| Dynamic Threshold (cells) 93554 93554 93554 93554 93554 93554 93554 93554 | Occupancy drops 51152555398 0 0 0 0 0 0 0 | AQM drops 0 0 0 0 0 0 0 0 | |--------------------------------------------------------------------------------------------------------------------| | Output MC Pool counters | | Pool 0 Pool 1 Pool 2 Pool 3 Pool 4 Pool 5 Pool 6 Pool 7 | |--------------------------------------------------------------------------------------------------------------------| Dynamic Threshold (cells) 93554 93554 93554 93554 93554 93554 93554 93554 | Dynamic Threshold (desc) 93554 93554 93554 93554 93554 93554 93554 93554 | Dynamic Threshold (inq thr) 64035 64035 64035 64035 64035 64035 64035 64035 | Occupancy drops 0 0 0 0 0 0 0 0 | |--------------+---------+---------+---------+---------+---------+--------+---------+---------+| | Additional counters | |--------------+---------+---------+---------+---------+---------+--------+---------+---------+| MEM cell drop reason : 0 MEM descriptor drop reason : 0 OPG cell drop reason : 0 OPG descriptor drop reason : 0 OPG CPU cell drop reason : 0 OPG CPU descriptor drop reason : 0 OPG SPAN cell drop reason : 0 OPG SPAN descriptor drop reason : 0 OPOOL cell drop reason : 0 OPOOL descriptor drop reason : 0 UC OQUEUE cell drop reason : 51152556479 MC OQUEUE cell drop reason : 27573307 OQUEUE descriptor drop reason : 0 MC OPOOL cell drop reason : 0 FWD DROP : 15 SOD : 0 BMM BP : 0 No Drop : 0 Packets received : 87480806439 TRUNC MTU : 0 TRUNK BMM BP : 0 VOQFC messages sent : 0 SOD messages sent : 0 SPAN desciptor drop : 0 Unit: 1 Slice: 0 ==================== |------------------------------------------------------------------------------------------------------------------| | Output Pool-Group drops | | Drop-PG No-drop CPU--PG LCPU-PG RCPU-PG SPAN-PG | |------------------------------------------------------------------------------------------------------------------| Occupancy drops 0 0 0 0 0 0 | AQM drops 0 0 N/A N/A N/A N/A | |--------------------------------------------------------------------------------------------------------------------| | Output UC Pool counters | | Pool 0 Pool 1 Pool 2 Pool 3 Pool 4 Pool 5 Pool 6 Pool 7 | |--------------------------------------------------------------------------------------------------------------------| Dynamic Threshold (cells) 93554 93554 93554 93554 93554 93554 93554 93554 | Occupancy drops 0 0 0 0 0 0 0 0 | AQM drops 0 0 0 0 0 0 0 0 | |--------------------------------------------------------------------------------------------------------------------| | Output MC Pool counters | | Pool 0 Pool 1 Pool 2 Pool 3 Pool 4 Pool 5 Pool 6 Pool 7 | |--------------------------------------------------------------------------------------------------------------------| Dynamic Threshold (cells) 93554 93554 93554 93554 93554 93554 93554 93554 | Dynamic Threshold (desc) 93554 93554 93554 93554 93554 93554 93554 93554 | Dynamic Threshold (inq thr) 64035 64035 64035 64035 64035 64035 64035 64035 | Occupancy drops 0 0 0 0 0 0 0 0 | |--------------+---------+---------+---------+---------+---------+--------+---------+---------+| | Additional counters | |--------------+---------+---------+---------+---------+---------+--------+---------+---------+| MEM cell drop reason : 0 MEM descriptor drop reason : 0 OPG cell drop reason : 0 OPG descriptor drop reason : 0 OPG CPU cell drop reason : 0 OPG CPU descriptor drop reason : 0 OPG SPAN cell drop reason : 0 OPG SPAN descriptor drop reason : 0 OPOOL cell drop reason : 0 OPOOL descriptor drop reason : 0 UC OQUEUE cell drop reason : 0 MC OQUEUE cell drop reason : 0 OQUEUE descriptor drop reason : 0 MC OPOOL cell drop reason : 0 FWD DROP : 8 SOD : 0 BMM BP : 0 No Drop : 0 Packets received : 45981341 TRUNC MTU : 0 TRUNK BMM BP : 0 VOQFC messages sent : 0 SOD messages sent : 0 SPAN desciptor drop : 0
Jedes ASIC-Unit/Slice-Tupel wird durch eine eindeutige, als "Instanz" bezeichnete Instanz dargestellt. Die Ausgabe des Befehls show hardware internal buffer info pkt-stats zeigt detaillierte Informationen über die überlastete Pool-Gruppe (abgekürzt als "PG") für jede Instanz an. Der Befehl zeigt auch die historische Spitze/maximale Anzahl der Zellen im Puffer an, die verwendet wurden. Schließlich zeigt der Befehl eine Momentaufnahme der Cloud Scale ASIC-Port-IDs von Ports mit gepuffertem Datenverkehr. Ein Beispiel für diesen Befehl ist hier dargestellt.
switch# attach module 2
module-2# show hardware internal buffer info pkt-stats Instance 0 ============ |------------------------------------------------------------------------------------------------------------| | Output Pool-Group Buffer Utilization (cells/desc) | | Drop-PG No-drop CPU--PG LCPU-PG RCPU-PG SPAN-PG | |------------------------------------------------------------------------------------------------------------| Total Instant Usage (cells) 59992 0 0 0 0 0 | Remaining Instant Usage (cells) 33562 0 1500 250 1500 1500 | Peak/Max Cells Used 90415 0 N/A N/A N/A N/A | Switch Cells Count 93554 0 1500 250 1500 1500 | Total Instant Usage (desc) 0 0 0 0 0 0 | Remaining Instant Usage (desc) 93554 0 1500 250 1500 1500 | Switch Desc Count 93554 0 1500 250 1500 1500 | |--------------------------------------------------------------------------------------------------------------------| | Output UC Pool Buffer Utilization (cells/desc) | | Pool 0 Pool 1 Pool 2 Pool 3 Pool 4 Pool 5 Pool 6 Pool 7 | |--------------------------------------------------------------------------------------------------------------------| Total Instant Usage (cells) 60027 0 0 0 0 0 0 0 | Total Instant Usage (desc) 0 0 0 0 0 0 0 0 | Peak/Max Cells Used 62047 0 0 0 0 0 0 0 | |--------------------------------------------------------------------------------------------------------------------| | Output MC Pool Buffer Utilization (cells/desc) | | Pool 0 Pool 1 Pool 2 Pool 3 Pool 4 Pool 5 Pool 6 Pool 7 | |--------------------------------------------------------------------------------------------------------------------| Total Instant Usage (cells) 0 0 0 0 0 0 0 0 | Total Instant Usage (desc) 0 0 0 0 0 0 0 0 | Total Instant Usage (inq cells) 0 0 0 0 0 0 0 0 | Total Instant Usage (packets) 0 0 0 0 0 0 0 0 | Peak/Max Cells Used 60399 0 0 0 0 0 0 0 | |--------------------------------------------------------------------------| | Instant Buffer utilization per queue per port | | Each line displays the number of cells/desc utilized for a given | | port for each QoS queue | | One cell represents approximately 416 bytes | |--------------+---------+---------+---------+---------+---------+--------+---------+---------+| |ASIC Port Q7 Q6 Q5 Q4 Q3 Q2 Q1 Q0 | |--------------+---------+---------+---------+---------+---------+--------+---------+---------+| [12] <<< ASIC Port 12 in Unit 0 Instance 0 is likely the congested egress interface UC-> 0 0 0 0 0 0 0 59988 | MC cells-> 0 0 0 0 0 0 0 0 | MC desc-> 0 0 0 0 0 0 0 0 |
Siehe auch die Peak-Variation des Befehls. Verwenden Sie diesen Befehl, um das Syslog mit einem potenziellen Spitzenwert in einer bestimmten Pool-Gruppe, einem Pool oder einem Port zu verknüpfen.
switch# show hardware internal buffer info pkt-stats peak slot 1 ======= Instance 0 ============ |--------------+---------+---------+---------+---------+---------+| | Pool-Group Peak counters | |--------------+---------+---------+---------+---------+---------+| Drop PG : 0 No-drop PG : 0 |--------------+---------+---------+---------+---------+---------+| | Pool Peak counters | |--------------+---------+---------+---------+---------+---------+| MC Pool 0 : 0 MC Pool 1 : 0 MC Pool 2 : 0 MC Pool 3 : 0 MC Pool 4 : 0 MC Pool 5 : 0 MC Pool 6 : 0 MC Pool 7 : 0 UC Pool 0 : 0 UC Pool 1 : 0 UC Pool 2 : 0 UC Pool 3 : 0 UC Pool 4 : 0 UC Pool 5 : 0 UC Pool 6 : 0 UC Pool 7 : 0 |--------------+---------+---------+---------+---------+---------+| | Port Peak counters | | classes mapped to count_0: 0 1 2 3 4 5 6 7 | classes mapped to count_1: None |--------------+---------+---------+---------+---------+---------+| [0] <<< ASIC Port. This can be checked via "show hardware interface-mappings" count_0 : 0 count_1 : 0 [1] count_0 : 0 count_1 : 0
Mit dem Befehl show interface hardware-mappings kann die Cloud Scale ASIC-Port-ID in einen Port an der Vorderseite übersetzt werden. Im oben genannten Beispiel weist der ASIC-Port 12 (dargestellt durch die SPort-Spalte in der Ausgabe von show interface hardware-mappings), der der ASIC-Einheit 0 in Slice/Instance 0 zugeordnet ist, 59.988 belegte Zellen mit je 416 Byte auf. Ein Beispiel für den Befehl show interface hardware-mappings (Schnittstellenhardwarezuordnungen anzeigen) wird angezeigt, mit dem diese Schnittstelle dem Ethernet2/2-Port an der Vorderseite zugeordnet wird.
switch# show interface hardware-mappings Legends: SMod - Source Mod. 0 is N/A Unit - Unit on which port resides. N/A for port channels HPort - Hardware Port Number or Hardware Trunk Id: HName - Hardware port name. None means N/A FPort - Fabric facing port number. 255 means N/A NPort - Front panel port number VPort - Virtual Port Number. -1 means N/A Slice - Slice Number. N/A for BCM systems SPort - Port Number wrt Slice. N/A for BCM systems SrcId - Source Id Number. N/A for BCM systems MacIdx - Mac index. N/A for BCM systems MacSubPort - Mac sub port. N/A for BCM systems ------------------------------------------------------------------------------------------------------- Name Ifindex Smod Unit HPortFPort NPort VPort Slice SPort SrcId MacId MacSP VIF Block BlkSrcID ------------------------------------------------------------------------------------------------------- Eth2/2 1a080200 5 0 12 255 4 -1 0 12 24 3 0 149 0 24
Wir können die Überbelegung der Schnittstelle Ethernet2/2 mit den QoS-Warteschlangenverlusten außerdem mit dem Befehl show queuing interface korrelieren. Ein Beispiel hierfür ist hier dargestellt.
switch# show queuing interface Ethernet2/2 Egress Queuing for Ethernet2/2 [System] ------------------------------------------------------------------------------ QoS-Group# Bandwidth% PrioLevel Shape QLimit Min Max Units ------------------------------------------------------------------------------ 7 - 1 - - - 9(D) 6 0 - - - - 9(D) 5 0 - - - - 9(D) 4 0 - - - - 9(D) 3 0 - - - - 9(D) 2 0 - - - - 9(D) 1 0 - - - - 9(D) 0 100 - - - - 9(D) +-------------------------------------------------------------+ | QOS GROUP 0 | +-------------------------------------------------------------+ | | Unicast |Multicast | +-------------------------------------------------------------+ | Tx Pkts | 35593332351| 18407162| | Tx Byts | 53532371857088| 27684371648| | WRED/AFD & Tail Drop Pkts | 53390604466| 27573307| | WRED/AFD & Tail Drop Byts | 80299469116864| 110293228| | Q Depth Byts | 24961664| 0| | WD & Tail Drop Pkts | 53390604466| 27573307| +-------------------------------------------------------------+ | QOS GROUP 1 | +-------------------------------------------------------------+ | | Unicast |Multicast | +-------------------------------------------------------------+ | Tx Pkts | 0| 0| | Tx Byts | 0| 0| | WRED/AFD & Tail Drop Pkts | 0| 0| | WRED/AFD & Tail Drop Byts | 0| 0| | Q Depth Byts | 0| 0| | WD & Tail Drop Pkts | 0| 0| +-------------------------------------------------------------+ | QOS GROUP 2 | +-------------------------------------------------------------+ | | Unicast |Multicast | +-------------------------------------------------------------+ | Tx Pkts | 0| 0| | Tx Byts | 0| 0| | WRED/AFD & Tail Drop Pkts | 0| 0| | WRED/AFD & Tail Drop Byts | 0| 0| | Q Depth Byts | 0| 0| | WD & Tail Drop Pkts | 0| 0| +-------------------------------------------------------------+ | QOS GROUP 3 | +-------------------------------------------------------------+ | | Unicast |Multicast | +-------------------------------------------------------------+ | Tx Pkts | 0| 0| | Tx Byts | 0| 0| | WRED/AFD & Tail Drop Pkts | 0| 0| | WRED/AFD & Tail Drop Byts | 0| 0| | Q Depth Byts | 0| 0| | WD & Tail Drop Pkts | 0| 0| +-------------------------------------------------------------+ | QOS GROUP 4 | +-------------------------------------------------------------+ | | Unicast |Multicast | +-------------------------------------------------------------+ | Tx Pkts | 0| 0| | Tx Byts | 0| 0| | WRED/AFD & Tail Drop Pkts | 0| 0| | WRED/AFD & Tail Drop Byts | 0| 0| | Q Depth Byts | 0| 0| | WD & Tail Drop Pkts | 0| 0| +-------------------------------------------------------------+ | QOS GROUP 5 | +-------------------------------------------------------------+ | | Unicast |Multicast | +-------------------------------------------------------------+ | Tx Pkts | 0| 0| | Tx Byts | 0| 0| | WRED/AFD & Tail Drop Pkts | 0| 0| | WRED/AFD & Tail Drop Byts | 0| 0| | Q Depth Byts | 0| 0| | WD & Tail Drop Pkts | 0| 0| +-------------------------------------------------------------+ | QOS GROUP 6 | +-------------------------------------------------------------+ | | Unicast |Multicast | +-------------------------------------------------------------+ | Tx Pkts | 0| 0| | Tx Byts | 0| 0| | WRED/AFD & Tail Drop Pkts | 0| 0| | WRED/AFD & Tail Drop Byts | 0| 0| | Q Depth Byts | 0| 0| | WD & Tail Drop Pkts | 0| 0| +-------------------------------------------------------------+ | QOS GROUP 7 | +-------------------------------------------------------------+ | | Unicast |Multicast | +-------------------------------------------------------------+ | Tx Pkts | 0| 0| | Tx Byts | 0| 0| | WRED/AFD & Tail Drop Pkts | 0| 0| | WRED/AFD & Tail Drop Byts | 0| 0| | Q Depth Byts | 0| 0| | WD & Tail Drop Pkts | 0| 0| +-------------------------------------------------------------+ | CONTROL QOS GROUP | +-------------------------------------------------------------+ | | Unicast |Multicast | +-------------------------------------------------------------+ | Tx Pkts | 5704| 0| | Tx Byts | 725030| 0| | Tail Drop Pkts | 0| 0| | Tail Drop Byts | 0| 0| +-------------------------------------------------------------+ | SPAN QOS GROUP | +-------------------------------------------------------------+ | | Unicast |Multicast | +-------------------------------------------------------------+ | Tx Pkts | 0| 0| | Tx Byts | 0| 0| +-------------------------------------------------------------+ Per Slice Egress SPAN Statistics --------------------------------------------------------------- SPAN Copies Tail Drop Pkts 0 SPAN Input Queue Drop Pkts 0 SPAN Copies/Transit Tail Drop Pkts 0 SPAN Input Desc Drop Pkts 0
Schließlich können Sie mit dem Befehl show interface überprüfen, ob die Ausgangsschnittstelle Ethernet2/2 über einen Ausgabeverwerfungszähler verfügt, der ungleich null ist. Ein Beispiel hierfür ist hier dargestellt.
switch# show interface Ethernet2/2 Ethernet2/2 is up admin state is up, Dedicated Interface Hardware: 1000/10000/25000/40000/50000/100000 Ethernet, address: 7cad.4f6d.f6d8 (bia 7cad.4f6d.f6d8) MTU 1500 bytes, BW 40000000 Kbit , DLY 10 usec reliability 255/255, txload 232/255, rxload 1/255 Encapsulation ARPA, medium is broadcast Port mode is trunk full-duplex, 40 Gb/s, media type is 40G Beacon is turned off Auto-Negotiation is turned on FEC mode is Auto Input flow-control is off, output flow-control is off Auto-mdix is turned off Rate mode is dedicated Switchport monitor is off EtherType is 0x8100 EEE (efficient-ethernet) : n/a admin fec state is auto, oper fec state is off Last link flapped 03:16:50 Last clearing of "show interface" counters never 3 interface resets Load-Interval #1: 30 seconds 30 seconds input rate 0 bits/sec, 0 packets/sec 30 seconds output rate 36503585488 bits/sec, 3033870 packets/sec input rate 0 bps, 0 pps; output rate 36.50 Gbps, 3.03 Mpps Load-Interval #2: 5 minute (300 seconds) 300 seconds input rate 32 bits/sec, 0 packets/sec 300 seconds output rate 39094683384 bits/sec, 3249159 packets/sec input rate 32 bps, 0 pps; output rate 39.09 Gbps, 3.25 Mpps RX 0 unicast packets 208 multicast packets 9 broadcast packets 217 input packets 50912 bytes 0 jumbo packets 0 storm suppression bytes 0 runts 0 giants 0 CRC 0 no buffer 0 input error 0 short frame 0 overrun 0 underrun 0 ignored 0 watchdog 0 bad etype drop 0 bad proto drop 0 if down drop 0 input with dribble 0 input discard 0 Rx pause TX 38298127762 unicast packets 6118 multicast packets 0 broadcast packets 38298133880 output packets 57600384931480 bytes 0 jumbo packets 0 output error 0 collision 0 deferred 0 late collision 0 lost carrier 0 no carrier 0 babble 57443534227 output discard <<< Output discards due to oversubcription 0 Tx pause
Wenn Sie bei einem Nexus Switch der Serie 9000 mit einem Cloud Scale ASIC beobachten, dass die Ausgabe verworfen wird, können Sie das Problem mit einer oder mehreren der folgenden Methoden lösen:
Dieser Abschnitt des Dokuments enthält zusätzliche Informationen zu den nächsten Schritten, die beim Auftreten des BUFFER_THRESHOLD_EXCEEDED-Syslog-Protokolls, von Netzwerküberlastungs-/Überbelegungsszenarien und von Zählern für verworfene Schnittstellen für inkrementelle Ausgaben durchgeführt werden müssen.
Sie können das Abfrageintervall für den Systempufferstatus ändern, das festlegt, wie oft das System die aktuelle Nutzung der ASIC-Slice-Puffer abfragt. Dies erfolgt mit dem globalen Konfigurationsbefehl hardware profile buffer info poll-interval. Der voreingestellte Konfigurationswert ist 5.000 Millisekunden. Diese Konfiguration kann global oder pro Modul geändert werden. Ein Beispiel für diesen Konfigurationsbefehl wird hier gezeigt, wo er auf einen Wert von 1.000 Millisekunden geändert wird.
switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. switch(config)# hardware profile buffer info poll-interval timer 1000 switch(config)# end switch# show running-config | include hardware.profile.buffer hardware profile buffer info poll-interval timer 1000 switch#
Sie können den Grenzwert für die Port-Ausgangspufferauslastung ändern, der angibt, wann das System das BUFFER_THRESHOLD_EXCEEDED-Syslog generiert, das angibt, dass die ASIC-Slice-Pufferauslastung den konfigurierten Grenzwert überschritten hat. Dies erfolgt mit dem globalen Konfigurationsbefehl hardware profile buffer info port-threshold. Der voreingestellte Konfigurationswert ist 90 %. Diese Konfiguration kann global oder pro Modul geändert werden. Ein Beispiel dieses Konfigurationsbefehls ist hier dargestellt, wo er auf einen Wert von 80 % geändert wird.
switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. switch(config)# hardware profile buffer info port-threshold threshold 80 switch(config)# end switch# show running-config | include hardware.profile.buffer hardware profile buffer info port-threshold threshold 80 switch#
Sie können das Mindestintervall zwischen den BUFFER_THRESHOLD_EXCEEDED-Syslogs ändern, die vom Switch generiert werden. Sie können das BUFFER_THRESHOLD_EXCEEDED-Syslog auch komplett deaktivieren. Dies erfolgt mit dem globalen Konfigurationsbefehl hardware profile buffer info syslog-interval timer. Der Standardwert für die Konfiguration ist 120 Sekunden. Das Syslog kann vollständig deaktiviert werden, indem der Wert auf 0 Sekunden gesetzt wird. Ein Beispiel für diesen Konfigurationsbefehl ist hier dargestellt, bei dem das Syslog vollständig deaktiviert ist.
switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. switch(config)# hardware profile buffer info syslog-interval timer 0 switch(config)# end switch# show running-config | include hardware.profile.buffer hardware profile buffer info syslog-interval timer 0 switch#
Sie können die hier gezeigten Protokolle von einem Switch sammeln, der von einem Netzwerküberlastungsszenario betroffen ist, um eine überlastete Ausgangsschnittstelle zusätzlich zu den in diesem Dokument aufgeführten Befehlen zu identifizieren.
Bei Überlastung oder Überbelegung in sehr kurzen Intervallen (Mikro-Burst) sind zusätzliche Informationen erforderlich, um präzise darzustellen, wie sich die Überbelegung auf den Switch auswirkt.
Die Cisco Nexus Switches der Serie 9000 mit dem Cisco Cloud Scale ASIC überwachen den Datenverkehr auf Microbursts, die vorübergehend zu Netzwerküberlastungen und Datenverlusten in Ihrer Umgebung führen können. Weitere Informationen zu Microbursts und zur Konfiguration dieser Funktion finden Sie in den folgenden Dokumenten:
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
6.0 |
09-Nov-2023 |
Update |
5.0 |
04-Oct-2023 |
Rezertifizierung |
3.0 |
21-Jan-2022 |
Fügen Sie dem Dokument den Abschnitt "Nächste Schritte" hinzu. |
2.0 |
03-Oct-2021 |
Aktualisieren Sie den Abschnitt "Anwendbare Hardware", um neue Hardware einzubeziehen. |
1.0 |
31-Aug-2021 |
Erstveröffentlichung |