Dans le cadre de la documentation associée à ce produit, nous nous efforçons d’utiliser un langage exempt de préjugés. Dans cet ensemble de documents, le langage exempt de discrimination renvoie à une langue qui exclut la discrimination en fonction de l’âge, des handicaps, du genre, de l’appartenance raciale de l’identité ethnique, de l’orientation sexuelle, de la situation socio-économique et de l’intersectionnalité. Des exceptions peuvent s’appliquer dans les documents si le langage est codé en dur dans les interfaces utilisateurs du produit logiciel, si le langage utilisé est basé sur la documentation RFP ou si le langage utilisé provient d’un produit tiers référencé. Découvrez comment Cisco utilise le langage inclusif.
Cisco a traduit ce document en traduction automatisée vérifiée par une personne dans le cadre d’un service mondial permettant à nos utilisateurs d’obtenir le contenu d’assistance dans leur propre langue. Il convient cependant de noter que même la meilleure traduction automatisée ne sera pas aussi précise que celle fournie par un traducteur professionnel.
Ce document décrit comment dépanner les pertes de sortie sur les plates-formes de la gamme Catalyst 9000.
Pour dépanner la qualité de service (QoS) sur les plates-formes de la gamme Catalyst 9000, vous devez comprendre :
Les informations de ce document sont basées sur la version matérielle et logicielle, mais la méthodologie et la majorité des commandes peuvent être appliquées à d'autres commutateurs de la gamme Catalyst 9000 sur d'autres codes :
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
Remarque : consultez le guide de configuration approprié pour connaître les commandes utilisées afin d'activer ces fonctionnalités sur d'autres plates-formes Cisco.
Pour une explication détaillée de la qualité de service sur les plates-formes de la gamme Catalyst 9000, qui inclut les configurations QoS par défaut, la structure de la file d'attente et des explications sur la mémoire tampon, consultez le Livre blanc sur la qualité de service et la mise en file d'attente Catalyst 9000. Consultez le guide de version recommandé pour vous assurer que vous disposez des derniers logiciels recommandés pour votre plate-forme. Ces recommandations garantissent que votre logiciel est pris en charge et permettent d'éviter les bogues connus dans les codes plus anciens. Versions recommandées pour les Catalyst
La connaissance de l'allocation de mémoire tampon peut vous aider à comprendre comment l'encombrement de la mémoire tampon entraîne des pertes de sortie. L’encombrement se produit lorsque l’interface de destination a un nombre de paquets qui dépasse son débit de sortie. Ces paquets doivent être stockés dans la mémoire tampon jusqu'à ce qu'ils puissent être transmis. Considérez que ces commutateurs ont au plus 36 Mo de mémoire tampon par ASIC, qui est ensuite partagée entre tous les ports sur l'ASIC. Alors qu'une interface de sortie peut vider cette mémoire tampon à la vitesse de la ligne, tout scénario entraînant la mise en mémoire tampon de paquets à une vitesse supérieure peut entraîner un encombrement. L'encombrement peut se produire même si cette rafale de trafic ne dure qu'une fraction de seconde et peut entraîner une latence du trafic, ou des pertes de sortie si cette mémoire tampon se remplit complètement.
Remarque : le compteur d'abandon de sortie affiché dans show interface est présenté en octets par défaut. Dans les versions 16.9.3 et ultérieures, ces compteurs sont des paquets par défaut.
Comme l'illustre l'image 1, il existe deux types d'encombrement.
Image 1. Types d'encombrement
Les deux types d'encombrement illustrés dans l'image 1 sont les suivants :
Les salves de trafic peuvent entraîner des pertes de sortie même lorsque le débit de sortie de l'interface est considérablement inférieur à la capacité maximale de l'interface. Par défaut, les débits de sortie dans la commande show interface sont moyennés sur cinq minutes, ce qui n'est pas adéquat pour capturer des rafales de courte durée. Il est préférable de les calculer en moyenne sur 30 secondes, bien que, même dans ce scénario, une rafale de trafic pendant des millisecondes puisse entraîner des pertes de sortie qui n'entraînent pas l'augmentation du débit moyen sur 30 secondes. Ce document peut être utilisé pour dépanner tout autre type d'encombrement que vous voyez sur votre commutateur de la gamme Catalyst 9000.
Deux commandes permettent de valider l'encombrement de la mémoire tampon. La première commande est show platform hardware fed switch active qos queue config interface <interface>. Cette commande vous permet d'afficher l'allocation de mémoire tampon actuelle sur le port, comme illustré dans l'image 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
Image 2. Allocation de tampon de file
Vous voulez spécifiquement regarder la colonne Hardmax et Softmax qui montre le nombre de mémoires tampon que les files d'attente ont disponibles. Pour plus d'informations sur ce que sont ces tampons et comment ils sont alloués par défaut, consultez le Livre blanc sur la QoS et la mise en file d'attente du Catalyst 9000.
La deuxième commande est show platform hardware fed switch active qos queue stats interface <interface>. Cette commande vous permet d'afficher des statistiques par file d'attente sur une interface, ce qui inclut le nombre d'octets mis en file d'attente dans les tampons et le nombre d'octets abandonnés en raison du manque de tampons disponibles.
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
Image 3. Statistiques de tampon de file d'attente avec pertes
Comme l'illustre l'image 3, la file d'attente 0 et la file d'attente 1 ont toutes deux des octets en file d'attente, mais c'est la file d'attente 1 qui subit des abandons dans la colonne Drop-TH2. Ces informations indiquent que le trafic de la file d'attente 0 n'a pas été affecté par cet encombrement et que la cause de cet encombrement est spécifiquement le trafic de la file d'attente 1.
Pour augmenter le nombre de tampons que chaque file d'attente peut demander à partir du pool partagé, augmentez le seuil SoftMax avec la configuration qos queue-softmax-multiplicateur <100 - 1200>. La valeur la plus élevée est 1200, et augmente d'un multiple de 12, la capacité d'une file d'attente de port unique à absorber des micro-salves. Cette commande augmente les seuils de file d'attente de port afin que la file d'attente de port puisse consommer des unités de mémoire tampon supplémentaires du pool partagé. Comme l'illustre l'image 4, la configuration et l'allocation accrue de mémoire tampon.
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
Image 4. Configuration de la file d'attente avec SoftMax Multiplier de 1200
Il s'agit d'une configuration courante utilisée comme méthode rapide pour résoudre les pertes de sortie. Dans l'image 4, cette configuration s'applique à toutes les files d'attente non prioritaires sur toutes les interfaces. L'allocation de mémoire tampon elle-même suppose que les micro-salves n'ont pas lieu sur tous les ports du commutateur en même temps. Si des micro-salves se produisent à des moments aléatoires, la mémoire tampon partagée peut dédier des unités de mémoire tampon supplémentaires pour les absorber.
La modification de la mémoire tampon par file d'attente peut être utilisée dans les scénarios où vous ne pouvez pas utiliser le multiplicateur SoftMax, ou dans les scénarios où vous essayez d'affiner les mémoires tampons pour qu'elles s'adaptent à un profil de trafic. Pour modifier l'allocation de tampon de file d'attente, le commutateur par interface, vous devez utiliser policy-maps. Dans la plupart des cas, vous modifiez la carte de stratégie actuelle d'une interface et changez les tampons par classe.
Dans cet exemple, l'interface GigabitEthernet1/0/48 a subi des pertes de sortie. Comme l'illustre l'image 5, carte de stratégie de sortie appliquée à cette interface.
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
Image 5. Exemple de carte de stratégie
Cette carte-politique a 5 cartes-classes, ce qui donne 5 files d'attente de sortie au total sur l'interface. Chaque classe dispose d'un nombre par défaut de mémoires tampon qui lui sont allouées en fonction de son niveau de priorité.
L'image 6 affiche les allocations de mémoire tampon actuelles.
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
Image 6. Configuration du tampon de file d'attente avec l'exemple de stratégie
Comme cette interface a subi des pertes de sortie, regardez les statistiques de mise en file d'attente de l'interface pour voir où se trouve l'encombrement.
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
Image 7. Statistiques de tampon de file d'attente avec abandons avec exemple de règle
L'image 7 montre que la file d'attente 3 a plus de trafic mis en file d'attente que toute autre file d'attente, et c'est également la seule qui a connu des pertes de sortie. Puisque le numéro de file d'attente commence à 0, la file d'attente 3 est mappée à la quatrième class-map, class Data.
Pour réduire les pertes sur cette file d'attente, allouez plus de tampons à la file d'attente 3. Pour modifier cette allocation de mémoire tampon, utilisez la configuration queue-buffers ratio <0-100> dans le policy-map. S'il est configuré sur chaque classe de la stratégie, il doit ajouter jusqu'à 100. Si vous ne configurez qu'une seule classe avec cette commande, le système tente de soustraire uniformément les tampons des autres files d'attente.
Dans l'image 8, la classe Data a été configurée avec un rapport de tampons de file d'attente de 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
Image 8. Exemple de mappage de stratégie avec tampons de file d'attente modifiés
Dans l'image 9, vous pouvez voir que la classe Data possède maintenant 40 % des tampons d'interface, soit 800 tampons au total.
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
Image 9. Configuration de tampon de file d'attente avec exemple de stratégie mis à jour
Les autres files d'attente ont moins de tampons Softmax. Il est important d'effectuer ces modifications de mémoire tampon par petits incréments pour s'assurer que les modifications n'entraînent pas de pertes de sortie sur les autres files d'attente.
Une fois cette modification effectuée, vérifiez l'état de la file d'attente et voyez si les abandons s'incrémentent encore sur cette file d'attente ou sur toute autre file d'attente. Si les abandons continuent, modifiez la configuration de la mémoire tampon de la file d'attente jusqu'à ce que les abandons de sortie soient résolus.
La QoS est principalement une méthode de hiérarchisation du trafic, et elle ne constitue pas une solution pour chaque scénario de perte de sortie. Dans certains cas, une modification des tampons de file d'attente ne suffit pas à résoudre toutes les pertes de sortie. Dans ces scénarios, vous pouvez gérer la congestion de plusieurs autres manières :
Cela inclut des méthodes qui augmentent votre bande passante de sortie, telles que les canaux de port ou le protocole ECMP (Equal Cost Multipath), mais qui peuvent également nécessiter des configurations plus complexes, telles que l'ingénierie du trafic.
Bien qu'un planificateur de file d'attente n'arrête pas l'encombrement, il protège votre trafic important de l'impact de l'encombrement
Wireshark est un outil utile pour identifier les salves de trafic qui provoquent l’encombrement et les pertes de mémoire tampon. Si vous appliquez la fonctionnalité SPAN à une interface dans la direction de sortie alors qu'elle subit des pertes, Wireshark peut représenter graphiquement le taux de sortie pour voir quand et quel trafic a déclenché les pertes. Ceci est particulièrement utile lors de l'identification de pertes de sortie dans des scénarios à faible débit.
Une fois que vous avez ouvert votre capture SPAN avec Wireshark, sélectionnez Statistics, puis I/O Graph, comme illustré dans l'image 10.
Image 10. Sélectionnez le graphique E/S
Une fois cette option sélectionnée, Wireshark génère un graphique du trafic en bits par seconde. L'image 11 montre un exemple de graphique pour une interface pendant qu'elle a subi des pertes de sortie.
Image 11. Graphique E/S Bits/milliseconde
Le graphique de l’image 11 indique que le débit maximal de l’interface dépasse à peine 80 Mbits/s. La vue graphique par défaut n'est pas suffisamment granulaire pour identifier les petites rafales de trafic qui provoquent des abandons de paquets. Il s'agit d'une moyenne du débit de trafic par seconde. Pour comprendre comment ce débit peut entraîner un encombrement de la mémoire tampon, considérez le débit sur une échelle de millisecondes.
Une interface Gigabit peut transférer 1 000 000 000 bits par seconde. Une fois convertie en millisecondes, cette valeur est égale à 1 000 000 (ou 10^6) bits par milliseconde.
Lorsque le débit de l'interface dépasse la vitesse de transfert de l'interface, les commutateurs doivent mettre ces paquets en mémoire tampon, ce qui entraîne un encombrement et des pertes de sortie.
Wireshark permet à l’utilisateur de représenter le débit d’E/S sous forme de bits par milliseconde. Pour ce faire, réduisez l'intervalle de 1 sec à 1 ms, puis cliquez sur Reset pour afficher correctement le graphique. Cette étape est illustrée dans l'image 12.
Image 12. Réduisez l'intervalle à 1 ms et réinitialisez le graphique
Le graphique mis à jour affiche plus précisément le taux d'E/S réel de l'interface. Lorsque le débit atteint ou dépasse 10^6 bits par milliseconde, le commutateur subit un encombrement ou des pertes de sortie. L'image 13 présente le graphique d'E/S mis à jour pour une interface qui a subi des pertes de sortie.
Image 13. Graphique E/S Bits/milliseconde
L'image 13 montre que plusieurs pics de trafic atteignent ou dépassent le seuil de 10^6. Le trafic serait soumis à la mise en mémoire tampon et abandonné s'il dépasse la taille de la mémoire tampon de sortie.
Remarque : si la destination SPAN est connectée par une interface 1 Gbit/s, le débit d'E/S dans Wireshark ne peut pas dépasser ce débit de 10^6 bits par milliseconde, quel que soit le débit de l'interface source. L’interface de destination SPAN met ces paquets en mémoire tampon ou les supprime. Il est courant de voir le plateau du graphique d'E/S à ce débit maximal ou de présenter un débit de trafic moyen qui semble aller plus haut.
Révision | Date de publication | Commentaires |
---|---|---|
3.0 |
22-Aug-2023 |
Mise à jour du SEO, des exigences de marque, des avis juridiques, des exigences de style et de formatage. |
2.0 |
20-Jul-2022 |
Première publication |
1.0 |
10-Nov-2020 |
Première publication |