In dit document wordt beschreven hoe u afwijzingen in de uitvoer op de Catalyst 9000-serie platforms kunt oplossen.
Om problemen met Quality of Service (QoS) op de Catalyst 9000-serie platforms op te lossen, moet u het volgende begrijpen:
De informatie in dit document is gebaseerd op deze hard- en softwareversie, maar de methodologie en het merendeel van de opdrachten kunnen worden toegepast op andere Catalyst 9000-serie switches op andere code:
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.
Voor een uitgebreide uitleg van QoS op de Catalyst 9000-serie platforms, die standaard QoS-configuraties, wachtrijstructuur en buffer uitleg bevat, zie de Catalyst 9000 QoS en Queueing White Paper Bekijk de aanbevolen release gids om ervoor te zorgen dat u op de nieuwste aanbevolen software voor uw platform. Deze aanbevelingen zorgen ervoor dat uw software wordt ondersteund en helpen bekende bugs in oudere codes te voorkomen. Aanbevolen releases voor katalysatoren
Kennis van buffertoewijzing kan u helpen begrijpen hoe buffercongestie resulteert in outputdalingen. Congestie treedt op wanneer de doelinterface een aantal pakketten heeft die de uitvoersnelheid overschrijden. Deze pakketten moeten in de buffer worden opgeslagen totdat ze kunnen worden verzonden. Houd er rekening mee dat deze switches maximaal 36 MB buffers per ASIC hebben, die vervolgens worden gedeeld tussen alle poorten op de ASIC. Terwijl een uitgang interface in staat zijn om die buffer te legen bij de lijnsnelheid kan zijn, elk scenario dat ervoor zorgt dat pakketten worden gebufferd op een grotere snelheid kan leiden tot congestie. Congestie kan optreden, zelfs als dat verkeer barst duurt slechts een fractie van een seconde, en kan latentie in het verkeer veroorzaken, of output daalt als die buffer volledig zou vullen.
Zoals te zien is in afbeelding 1, zijn er twee soorten congestie.

Afbeelding 1. Soorten congestie
De twee soorten congestie die in afbeelding 1 worden weergegeven, zijn:
Verkeersuitbarstingen kunnen leiden tot een daling van de uitvoer, zelfs wanneer de uitvoer van de interface aanzienlijk lager is dan de maximale interfacecapaciteit. Standaard worden de uitvoersnelheden in de opdracht Show Interface gemiddeld over vijf minuten gemeten, wat niet voldoende is om kortstondige uitbarstingen vast te leggen. Het is het beste om ze gemiddeld meer dan 30 seconden te gebruiken, hoewel zelfs in dit scenario een uitbarsting van verkeer gedurende milliseconden kan resulteren in outputdalingen die er niet voor zorgen dat het gemiddelde tarief van 30 seconden stijgt. Dit document kan worden gebruikt om problemen op te lossen met elk ander type congestie dat u ziet op uw Catalyst 9000-serie switch.
Er zijn twee opdrachten die worden gebruikt om buffercongestie te valideren. De eerste opdracht is het weergeven van de platformhardware gevoede switch active qos queue config interface <interface>. Met deze opdracht kunt u de huidige buffertoewijzing op de poort zien, zoals weergegeven in afbeelding 2.
9300#show platform hardware fed switch active qos queue config interface gigabitEthernet 1/0/48
Asic:0 Core:0 DATA Port:47 GPN:48 LinkSpeed:0x1
AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 376 - 383
DrainFast:Disabled PortSoftStart:2 - 1800
DTS Hardmax Softmax PortSMin GlblSMin PortStEnd
----- -------- -------- -------- -------- ---------
0 1 6 200 7 800 19 475 0 0 3 2400
1 1 5 0 8 1200 19 712 8 300 3 2400
2 1 5 0 6 0 0 0 0 0 3 2400
3 1 5 0 6 0 0 0 0 0 3 2400
4 1 5 0 6 0 0 0 0 0 3 2400
5 1 5 0 6 0 0 0 0 0 3 2400
6 1 5 0 6 0 0 0 0 0 3 2400
7 1 5 0 6 0 0 0 0 0 3 2400
Afbeelding 2. Toewijzing van wachtrijbuffer
U wilt specifiek kijken naar de kolom Hardmax en Softmax die het aantal buffers toont dat de wachtrijen beschikbaar hebben. Voor informatie over wat deze buffers zijn en hoe ze standaard worden toegewezen, zie de Catalyst 9000 QoS en Queueing White Paper.
De tweede opdracht is Toon platformhardware gevoede switch actieve qos queue stats interface <interface>. Met deze opdracht kunt u statistieken per wachtrij zien op een interface, die bevat hoeveel bytes in de buffers zijn geplaatst en hoeveel bytes zijn weggelaten vanwege een gebrek aan beschikbare buffers.
9300#show platform hardware fed switch active qos queue stats interface Gig 1/0/1
DATA Port:0 Enqueue Counters
---------------------------------------------------------------------------------------------
Q Buffers Enqueue-TH0 Enqueue-TH1 Enqueue-TH2 Qpolicer
(Count) (Bytes) (Bytes) (Bytes) (Bytes)
- ------- -------------------- -------------------- -------------------- --------------------
0 0 0 0 384251797 0
1 0 0 0 488393930284 0
2 0 0 0 0 0
3 0 0 0 0 0
4 0 0 0 0 0
5 0 0 0 0 0
6 0 0 0 0 0
7 0 0 0 0 0
DATA Port:0 Drop Counters
-------------------------------------------------------------------------------------------------------------------------------
Q Drop-TH0 Drop-TH1 Drop-TH2 SBufDrop QebDrop QpolicerDrop
(Bytes) (Bytes) (Bytes) (Bytes) (Bytes) (Bytes)
- -------------------- -------------------- -------------------- -------------------- -------------------- --------------------
0 0 0 0 0 0 0
1 0 0 192308101 0 0 0
2 0 0 0 0 0 0
3 0 0 0 0 0 0
4 0 0 0 0 0 0
5 0 0 0 0 0 0
6 0 0 0 0 0 0
7 0 0 0 0 0 0
Afbeelding 3. Queue Buffer Statistieken met Drops
Zoals getoond in afbeelding 3, hebben wachtrij 0 en wachtrij 1 beide bytes in de wachtrij staan, maar het is wachtrij 1 die druppels ervaart in de kolom Drop-TH2. Deze informatie geeft aan dat het verkeer in wachtrij 0 niet is beïnvloed door deze congestie en dat de oorzaak van de congestie specifiek het verkeer in wachtrij 1 is.
Om het aantal buffers dat elke wachtrij kan aanvragen uit de gedeelde pool te verhogen, verhoogt u de SoftMax-drempel met de configuratie qos queue-softmax-multiplier <100 – 1200>. De hoogste waarde is 1200 en verhoogt met een veelvoud van 12 de mogelijkheid van een enkele poortwachtrij om micro-bursts te absorberen. Met deze opdracht worden de drempelwaarden voor de poortwachtrij verhoogd, zodat de poortwachtrij extra buffereenheden uit de gedeelde pool kan gebruiken. Zoals weergegeven in afbeelding 4, configuratie en de verhoogde buffertoewijzing.
9300(config)#qos queue-softmax-multiplier 1200
9300#show platform hardware fed switch active qos queue config interface gigabitEthernet 1/0/48
Asic:0 Core:0 DATA Port:47 GPN:48 LinkSpeed:0x1
AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 376 - 383
DrainFast:Disabled PortSoftStart:3 - 14400
DTS Hardmax Softmax PortSMin GlblSMin PortStEnd
----- -------- -------- -------- -------- ---------
0 1 6 200 9 9600 2 600 0 0 1 15000
1 1 5 0 10 14400 2 900 1 450 1 15000
2 1 5 0 6 0 0 0 0 0 1 15000
3 1 5 0 6 0 0 0 0 0 1 15000
4 1 5 0 6 0 0 0 0 0 1 15000
5 1 5 0 6 0 0 0 0 0 1 15000
6 1 5 0 6 0 0 0 0 0 1 15000
7 1 5 0 6 0 0 0 0 0 1 15000
Afbeelding 4. Queue Config met SoftMax Multiplier van 1200
Dit is een veelgebruikte configuratie die wordt gebruikt als een snelle methode om outputdalingen op te lossen. In Afbeelding 4 is deze configuratie van toepassing op alle wachtrijen zonder prioriteit voor alle interfaces. De buffertoewijzing zelf gaat ervan uit dat de microbursts niet op alle poorten op de switch tegelijkertijd plaatsvinden. Als micro-uitbarstingen op willekeurige momenten plaatsvinden, kan de gedeelde buffer extra buffereenheden toewijzen om ze te absorberen.
De bufferaanpassing per wachtrij kan worden gebruikt voor scenario's waarbij u de SoftMax-multiplier niet kunt gebruiken, of in scenario's waarbij u probeert de buffers af te stemmen op een verkeersprofiel. Om de toewijzing van de wachtrijbuffer te wijzigen, moet de switch op interfacebasis gebruikmaken van beleidskaarten. In de meeste gevallen wijzigt u de huidige beleidskaart van een interface en wijzigt u de buffers per klasse.
In dit voorbeeld heeft de interface GigabitEthernet1/0/48 een daling van de uitvoer ervaren. Zoals getoond in afbeelding 5, gaat u naar de beleidskaart die op deze interface wordt toegepast.
policy-map MYPOL
class Voice
priority level 1 percent 20
class Video
priority level 2 percent 10
class Control
bandwidth percent 10
class Data
bandwidth percent 5
class class-default
Afbeelding 5. Voorbeeld beleidskaart
Deze policy-map heeft 5 class-maps, wat resulteert in 5 totale uitrijwachtrijen op de interface. Elke klasse heeft een standaardaantal buffers toegewezen op basis van het prioriteitsniveau.
In afbeelding 6 worden de huidige buffertoewijzingen weergegeven.
9300#show platform hardware fed switch active qos queue config interface gigabitEthernet 1/0/48
Asic:0 Core:0 DATA Port:47 GPN:48 LinkSpeed:0x1
AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 376 - 383
DrainFast:Disabled PortSoftStart:3 - 600
DTS Hardmax Softmax PortSMin GlblSMin PortStEnd
----- -------- -------- -------- -------- ---------
0 1 7 100 9 100 0 0 0 0 3 800
1 1 7 100 10 400 19 237 0 0 3 800
2 1 5 0 10 400 19 237 8 100 3 800
3 1 5 0 10 400 19 237 8 100 3 800
4 1 5 0 10 400 19 237 8 100 3 800
5 1 5 0 6 0 0 0 0 0 3 800
6 1 5 0 6 0 0 0 0 0 3 800
7 1 5 0 6 0 0 0 0 0 3 800
Afbeelding 6. Wachtrijbufferconfiguratie met voorbeeldbeleid
Aangezien deze interface uitvoerdalingen heeft ervaren, kijkt u naar de wachtrijstatistieken van de interface om te zien waar de congestie is.
9300#show platform hardware fed switch active qos queue stats interface gigabitEthernet 1/0/48
DATA Port:0 Enqueue Counters
---------------------------------------------------------------------------------------------
Q Buffers Enqueue-TH0 Enqueue-TH1 Enqueue-TH2 Qpolicer
(Count) (Bytes) (Bytes) (Bytes) (Bytes)
- ------- -------------------- -------------------- -------------------- --------------------
0 0 0 0 489094 0
1 0 0 0 4846845 0
2 0 0 0 89498498 0
3 0 0 0 21297827045 0
4 0 0 0 74983184 0
5 0 0 0 0 0
6 0 0 0 0 0
7 0 0 0 0 0
DATA Port:0 Drop Counters
-------------------------------------------------------------------------------------------------------------------------------
Q Drop-TH0 Drop-TH1 Drop-TH2 SBufDrop QebDrop QpolicerDrop
(Bytes) (Bytes) (Bytes) (Bytes) (Bytes) (Bytes)
- -------------------- -------------------- -------------------- -------------------- -------------------- --------------------
0 0 0 0 0 0 0
1 0 0 0 0 0 0
2 0 0 0 0 0 0
3 0 0 3854484 0 0 0
4 0 0 0 0 0 0
5 0 0 0 0 0 0
6 0 0 0 0 0 0
7 0 0 0 0 0 0
Afbeelding 7. Queue Buffer Statistieken met Drops met een Voorbeeldbeleid
Afbeelding 7 laat zien dat wachtrij 3 meer verkeer heeft dan elke andere wachtrij, en het is ook de enige die uitvoerdalingen heeft ervaren. Aangezien het wachtrijnummer begint bij 0, wordt wachtrij 3 toegewezen aan de vierde klasse-map, klassengegevens.
Wijs meer buffers toe aan Wachtrij 3 om de valpartijen in deze wachtrij te verminderen. Om deze buffertoewijzing te wijzigen, gebruikt u de queue-buffers ratio <0-100> configuratie in de policy-map. Indien geconfigureerd voor elke klasse in het beleid, moet het maximaal 100 toevoegen. Als u slechts één klasse configureert met deze opdracht, probeert het systeem de buffers gelijkmatig af te trekken van de andere wachtrijen.
In Afbeelding 8 is de klasse Data geconfigureerd met de verhouding wachtrijbuffers 40.
policy-map MYPOL
class Voice
priority level 1 percent 20
class Video
priority level 2 percent 10
class Control
bandwidth percent 10
class Data
bandwidth percent 5
queue-buffers ratio 40
Afbeelding 8. Voorbeeld beleidskaart met aangepaste wachtrijbuffers
In afbeelding 9 ziet u dat de klasse Data nu 40% van de interfacebuffers heeft, 800 buffers in totaal.
9300#show platform hardware fed switch active qos queue config interface gigabitEthernet 1/0/48
Asic:0 Core:0 DATA Port:47 GPN:48 LinkSpeed:0x1
AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 376 - 383
DrainFast:Disabled PortSoftStart:3 - 1200
DTS Hardmax Softmax PortSMin GlblSMin PortStEnd
----- -------- -------- -------- -------- ---------
0 1 7 75 9 75 0 0 0 0 3 1600
1 1 7 75 10 300 19 178 0 0 3 1600
2 1 5 0 10 300 19 178 8 75 3 1600
3 1 5 0 7 800 19 475 8 200 3 1600
4 1 5 0 10 300 19 178 8 75 3 1600
5 1 5 0 6 0 0 0 0 0 3 1600
6 1 5 0 6 0 0 0 0 0 3 1600
7 1 5 0 6 0 0 0 0 0 3 1600
Afbeelding 9. Wachtrijbufferconfiguratie met het bijgewerkte voorbeeldbeleid
Dit zorgt er ook voor dat de andere wachtrijen minder Softmax-buffers hebben. Het is belangrijk om deze bufferwijzigingen in kleine stappen aan te brengen om ervoor te zorgen dat de wijzigingen niet resulteren in een afname van de output op de andere wachtrijen.
Als die wijziging is doorgevoerd, controleert u de status van de wachtrij en kijkt u of er nog steeds druppels worden toegevoegd aan deze of een andere wachtrij. Als de druppels doorgaan, wijzig dan de wachtrij-bufferconfiguratie verder totdat de uitvoerdruppels zijn opgelost.
QoS is in de eerste plaats een methode om het verkeer te prioriteren en het is niet een oplossing voor elk outputvalscenario. Er zijn enkele scenario's waarbij een wijziging van de wachtrijbuffers niet voldoende is om alle uitvoerdalingen op te lossen. In die scenario's kunt u congestie op verschillende andere manieren beheren:
Dit omvat methoden die uw toegangsbandbreedte verhogen, zoals poortkanalen of Equal Cost Multipath (ECMP), maar kan ook meer betrokken configuraties vereisen, zoals verkeerstechniek.
Hoewel een wachtrijplanner congestie niet stopt, beschermt het uw belangrijke verkeer tegen impact door de congestie
Wireshark is een handig hulpmiddel om uitbarstingen van verkeer te identificeren die buffercongestie en -dalingen veroorzaken. Als u een interface in de richting van de uitgang SPAN terwijl deze daalt, kan Wireshark de uitvoersnelheid grafieken om te zien wanneer en welk verkeer de druppels heeft veroorzaakt. Dit is vooral handig bij het identificeren van outputdalingen in scenario's met een lage doorvoer.
Zodra u uw SPAN-opname opent met Wireshark, selecteert u Statistieken en vervolgens I/O-grafiek, zoals weergegeven in afbeelding 10.

Afbeelding 10. Selecteer de I/O-grafiek
Zodra dat is geselecteerd, genereert Wireshark een grafiek van het verkeer in bits per seconde. Afbeelding 11 toont een voorbeeldgrafiek voor een interface terwijl deze uitvoerdalingen ondervond.

Afbeelding 11. I/O-grafiekbits/milliseconden
De afbeelding 11 grafiek geeft aan dat de interface een maximale doorvoer die nauwelijks meer dan 80Mbps had. De standaard grafiekweergave is niet korrelig genoeg om kleine uitbarstingen van verkeer te identificeren die pakketdruppels veroorzaken. Het is een gemiddelde van het verkeerstarief per seconde. Om te begrijpen hoe deze snelheid buffercongestie kan veroorzaken, moet u rekening houden met de doorvoer op een schaal van milliseconden.
Een Gigabit-interface kan 1.000.000.000 bits per seconde doorsturen. Eenmaal geconverteerd naar milliseconden, is dit gelijk aan 1.000.000 (of 10 ^ 6) bits per milliseconde.
Wanneer de interfacesnelheid verder gaat dan die doorstuursnelheid van de interface, moeten de switches deze pakketten bufferen, wat resulteert in congestie en uitvoerdalingen.
Met Wireshark kan de gebruiker de I/O-snelheid weergeven als bits per milliseconde. Om dit te doen, verkleint u het interval van 1 sec naar 1 ms en klikt u op Reset om de grafiek goed te bekijken. Deze stap wordt getoond in afbeelding 12.

Afbeelding 12. Verlaag het interval tot 1 ms en stel de grafiek opnieuw in
In de bijgewerkte grafiek wordt de werkelijke I/O-snelheid van de interface nauwkeuriger weergegeven. Wanneer de snelheid 10 ^ 6 bits per milliseconde bereikt of overschrijdt, ervaart de switch congestie of uitvoerdalingen. Afbeelding 13 toont de bijgewerkte I / O-grafiek voor een interface die uitvoerdalingen heeft ervaren.

Afbeelding 13. I/O-grafiekbits/milliseconden
Afbeelding 13 laat zien dat er meerdere verkeerspieken zijn die de drempel van 10 ^ 6 halen of overschrijden. Het verkeer zou worden gebufferd en weggelaten als het groter is dan de grootte van de uitreisbuffer.
| Revisie | Publicatiedatum | Opmerkingen |
|---|---|---|
5.0 |
28-May-2026
|
hercertificering |
4.0 |
25-Feb-2025
|
Verplaatste juridische disclaimer naar het einde van de sectie Gebruikte componenten. |
3.0 |
22-Aug-2023
|
Bijgewerkte SEO, branding vereisten, juridische disclaimer, stijl vereisten en opmaak. |
2.0 |
20-Jul-2022
|
Eerste vrijgave |
1.0 |
10-Nov-2020
|
Eerste vrijgave |