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 interfaces haut débit sur les plates-formes de la gamme Catalyst 9000 basées sur ASIC UADP.
Cisco vous recommande de prendre connaissance des rubriques suivantes :
Les informations contenues dans ce document sont basées sur les versions de matériel et de logiciel suivantes :
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.
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.
Les pertes de sortie sur les interfaces haut débit sont un problème qui peut se produire dans n'importe quel environnement réseau, en particulier lorsqu'il s'agit d'interfaces qui prennent en charge des débits de transfert de données de 10 Gbit/s ou plus. Les abandons de sortie se produisent lorsque des paquets sont abandonnés par l'interface avant qu'ils ne puissent être transmis sur le réseau.
Il est souvent mal compris comment l'utilisation de l'interface est interprétée lorsque des pertes de sortie se produisent à de faibles niveaux d'utilisation :
Cependant, dans la grande majorité des cas, les pertes de sortie sont causées par le trafic en microrafale qui a épuisé les tampons de port :
Le trafic réseau est souvent mesuré par l’utilisation moyenne d’une liaison (mesurée sur 30 secondes à 5 minutes en fonction de la configuration). Bien que cette moyenne indique un flux constant et relativement régulier, l'utilisation de l'interface à une échelle de millisecondes est souvent très sporadique.
Figure 1. Affiche une représentation visuelle de la cause sous-jacente des pertes de sortie sur l'interface haut débit.
L’interface « Vitesse/Bande passante » est mal nommée :
La différence de « vitesse » est la capacité d'entrelacement/le nombre de voies/le nombre d'impulsions par intervalle de temps, le mécanisme de codage, et ainsi de suite, par rapport au support (lumière/électrons) qui va plus vite.
Conseil : utilisez la commande load-interval <30-600> en mode de configuration d'interface pour modifier le délai d'intervalle de charge en secondes. (l'intervalle de charge représente la fréquence à laquelle le commutateur interroge les compteurs d'interface).
Le dépannage des pertes de sortie sur les interfaces haut débit peut être un processus complexe, mais voici quelques étapes générales qui peuvent aider à identifier et à résoudre le problème :
Identifiez l’interface concernée :
Identifier les interfaces entrantes et sortantes :
Vérifiez l'allocation de tampon :
Vérifiez les microrafales avec Wireshark :
Envisagez une mise à niveau matérielle :
Pour identifier l'interface affectée qui subit des pertes de sortie, utilisez la commande show interfaces.
Pour affiner la liste des interfaces et identifier rapidement l'interface affectée, utilisez la commande show interfaces | include is up|Total output drops pour filtrer les interfaces hors service, ou admin down, et afficher uniquement celles qui sont actives et qui ont des abandons.
Cat9k(config)#show interfaces | in is up|Total output drops
HundredGigE1/0/1 is up, line protocol is up (connected)
Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 54845
HundredGigE1/0/10 is up, line protocol is up (connected)
Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 1540231
--snip--
Conseil : utilisez la commande show interfaces et filtrez le résultat avec les critères appropriés pour identifier rapidement et facilement l'interface affectée. Prenez les mesures nécessaires pour résoudre le problème.
Par défaut, sur les commutateurs de la gamme Catalyst 9000, les abandons de paquets de sortie sont affichés en octets au lieu de paquets. Il est important de déterminer si la quantité de pertes de sortie trouvée a eu un impact réel ou a simplement été causée par un trafic transitoire en salves.
Pour calculer le pourcentage du total des octets de sortie transmis sur une interface qui ont été abandonnés :
Cela indique le pourcentage d'octets de sortie qui ont été abandonnés sur l'interface, ce qui peut vous aider à déterminer s'il y a un problème d'encombrement ou d'allocation de mémoire tampon qui doit être résolu, ou si les abandons de sortie ont été provoqués par un trafic de microrafale transitoire.
Utilisez la commande show interface <interface> pour collecter les informations.
Cat9k#show interfaces twentyFiveGigE 1/0/41 TwentyFiveGigE1/0/41 is up, line protocol is up (connected) Hardware is Twenty Five Gigabit Ethernet, address is dc77.4c8a.4289 (bia dc77.4c8a.4289) MTU 1500 bytes, BW 25000000 Kbit/sec, DLY 10 usec, reliability 255/255, txload 3/255, rxload 1/255 Encapsulation ARPA, loopback not set Keepalive set (10 sec) Full-duplex, 10Gb/s, link type is auto, media type is SFP-10GBase-AOC1M input flow-control is on, output flow-control is off ARP type: ARPA, ARP Timeout 04:00:00 Last input 00:00:06, output 00:00:10, output hang never Last clearing of "show interface" counters 6w1d Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 299040207 Queueing strategy: Class-based queueing Output queue: 0/40 (size/max) 30 second input rate 767000 bits/sec, 155 packets/sec 30 second output rate 14603000 bits/sec, 1819 packets/sec 931864194 packets input, 572335285416 bytes, 0 no buffer Received 933005 broadcasts (933005 multicasts) 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored 0 watchdog, 0 multicast, 0 pause input 0 input packets with dribble condition detected 1067891106 packets output, 5930422327799 bytes, 0 underruns
--snip--
Total des pertes en sortie : 299040207
Total des octets en sortie : 5930422327799
Pourcentage de pertes en sortie = 299040207/5930422327799 x 100 = 0,005 %
Dans cet exemple, le total des pertes en sortie représente 0,005 % de la quantité totale d'octets transmis sur cette interface au cours des six dernières semaines (dernier effacement des compteurs 6w1d).
Pour mieux allouer les tampons logiciels et gérer le trafic sur les commutateurs de la gamme Catalyst 9000, pensez à sélectionner des interfaces entrantes et sortantes dans différents ASIC.
Un tampon logiciel, également appelé tampon dynamique ou tampon partagé, désigne une partie de la mémoire qui est allouée de façon dynamique pour stocker temporairement des paquets en période d'encombrement ou de charge de trafic élevée.
Conseil : Reportez-vous au document Comprendre l'allocation de tampon de file d'attente sur les commutateurs Catalyst 9000 pour des informations détaillées sur l'allocation de tampon dans les commutateurs de la gamme Catalyst 9000.
D'après l'architecture d'un modèle spécifique de commutateurs Catalyst 9000, il est important de noter qu'ils intègrent souvent plusieurs circuits ASIC chargés de diverses fonctions.
Pour vérifier l'interface avec les mappages ASIC, vous pouvez exécuter la commande : show platform software fed <switch|active> ifm mappings
Cet exemple montre l'interface avec les mappages ASIC. Plage d'interfaces TenGigabitEthernet1/0/1 à TenGigabitEthernet1/0/24 mappés sur ASIC 1 tandis que les autres sont mappés sur ASIC 0 :
Cat9k#show platform software fed switch active ifm mappings Interface IF_ID Inst Asic Core Port SubPort Mac Cntx LPN GPN Type Active TenGigabitEthernet1/0/1 0x9 3 1 1 0 0 11 0 1 1 NIF Y TenGigabitEthernet1/0/2 0xa 3 1 1 1 0 10 1 2 2 NIF Y TenGigabitEthernet1/0/3 0xb 3 1 1 2 0 9 2 3 3 NIF Y TenGigabitEthernet1/0/4 0xc 3 1 1 3 0 8 3 4 4 NIF Y TenGigabitEthernet1/0/5 0xd 3 1 1 4 0 7 4 5 5 NIF Y TenGigabitEthernet1/0/6 0xe 3 1 1 5 0 6 5 6 6 NIF Y TenGigabitEthernet1/0/7 0xf 3 1 1 6 0 5 6 7 7 NIF Y TenGigabitEthernet1/0/8 0x10 3 1 1 7 0 4 7 8 8 NIF Y TenGigabitEthernet1/0/9 0x11 3 1 1 8 0 3 8 9 9 NIF Y TenGigabitEthernet1/0/10 0x12 3 1 1 9 0 2 9 10 10 NIF Y TenGigabitEthernet1/0/11 0x13 3 1 1 10 0 1 10 11 11 NIF Y TenGigabitEthernet1/0/12 0x14 3 1 1 11 0 0 11 12 12 NIF Y TenGigabitEthernet1/0/13 0x15 2 1 0 12 0 11 0 13 13 NIF Y TenGigabitEthernet1/0/14 0x16 2 1 0 13 0 10 1 14 14 NIF Y TenGigabitEthernet1/0/15 0x17 2 1 0 14 0 9 2 15 15 NIF Y TenGigabitEthernet1/0/16 0x18 2 1 0 15 0 8 3 16 16 NIF Y TenGigabitEthernet1/0/17 0x19 2 1 0 16 0 7 4 17 17 NIF Y TenGigabitEthernet1/0/18 0x1a 2 1 0 17 0 6 5 18 18 NIF Y TenGigabitEthernet1/0/19 0x1b 2 1 0 18 0 5 6 19 19 NIF Y TenGigabitEthernet1/0/20 0x1c 2 1 0 19 0 4 7 20 20 NIF Y TenGigabitEthernet1/0/21 0x1d 2 1 0 20 0 3 8 21 21 NIF Y TenGigabitEthernet1/0/22 0x1e 2 1 0 21 0 2 9 22 22 NIF Y TenGigabitEthernet1/0/23 0x1f 2 1 0 22 0 1 10 23 23 NIF Y TenGigabitEthernet1/0/24 0x20 2 1 0 23 0 0 11 24 24 NIF Y TenGigabitEthernet1/0/25 0x21 1 0 1 24 0 11 0 25 25 NIF Y TenGigabitEthernet1/0/26 0x22 1 0 1 25 0 10 1 26 26 NIF Y TenGigabitEthernet1/0/27 0x23 1 0 1 26 0 9 2 27 27 NIF Y TenGigabitEthernet1/0/28 0x24 1 0 1 27 0 8 3 28 28 NIF Y TenGigabitEthernet1/0/29 0x25 1 0 1 28 0 7 4 29 29 NIF Y TenGigabitEthernet1/0/30 0x26 1 0 1 29 0 6 5 30 30 NIF Y TenGigabitEthernet1/0/31 0x27 1 0 1 30 0 5 6 31 31 NIF Y TenGigabitEthernet1/0/32 0x28 1 0 1 31 0 4 7 32 32 NIF Y TenGigabitEthernet1/0/33 0x29 1 0 1 32 0 3 8 33 33 NIF Y TenGigabitEthernet1/0/34 0x2a 1 0 1 33 0 2 9 34 34 NIF Y TenGigabitEthernet1/0/35 0x2b 1 0 1 34 0 1 10 35 35 NIF Y TenGigabitEthernet1/0/36 0x2c 1 0 1 35 0 0 11 36 36 NIF Y TenGigabitEthernet1/0/37 0x2d 0 0 0 36 0 11 11 37 37 NIF Y TenGigabitEthernet1/0/38 0x2e 0 0 0 37 0 10 10 38 38 NIF Y TenGigabitEthernet1/0/39 0x2f 0 0 0 38 0 9 9 39 39 NIF Y TenGigabitEthernet1/0/40 0x30 0 0 0 39 0 8 8 40 40 NIF Y TenGigabitEthernet1/1/1 0x31 0 0 0 40 0 0 19 41 41 NIF N TenGigabitEthernet1/1/2 0x32 0 0 0 41 0 0 18 42 42 NIF N TenGigabitEthernet1/1/3 0x33 0 0 0 42 0 0 17 43 43 NIF N TenGigabitEthernet1/1/4 0x34 0 0 0 43 0 0 16 44 44 NIF N TenGigabitEthernet1/1/5 0x35 0 0 0 44 0 0 15 45 45 NIF N TenGigabitEthernet1/1/6 0x36 0 0 0 45 0 0 14 46 46 NIF N TenGigabitEthernet1/1/7 0x37 0 0 0 46 0 0 13 47 47 NIF N TenGigabitEthernet1/1/8 0x38 0 0 0 47 0 0 12 48 48 NIF N FortyGigabitEthernet1/1/1 0x39 0 0 0 48 0 4 4 49 49 NIF N FortyGigabitEthernet1/1/2 0x3a 0 0 0 49 0 0 0 50 50 NIF N
L'allocation de mémoire tampon est un facteur important pour éviter les pertes de sortie, car les mémoires tampons sont utilisées pour stocker temporairement le trafic qui ne peut pas être transféré en raison d'un encombrement ou d'autres variables. S'il n'y a pas suffisamment de mémoires tampon disponibles, le trafic est abandonné, ce qui entraîne des performances réseau médiocres et des interruptions potentielles. Avec cette vérification, vous pouvez vous assurer que le commutateur a suffisamment d'espace tampon pour gérer des charges de trafic élevées.
La commande show platform hardware fed switch active qos queue stats interface <interface> vous permet de voir des statistiques par file d'attente sur une interface, qui incluent le nombre d'octets mis en file d'attente dans les mémoires tampon et le nombre d'octets abandonnés en raison du manque de mémoires tampon disponibles.
Dans cet exemple :
Cat9k#show platform hardware fed active qos queue stats interface twentyFiveGigE 1/0/41 ---------------------------------------------------------------------------------------------- AQM Global counters GlobalHardLimit: 16257 | GlobalHardBufCount: 0 GlobalSoftLimit: 39039 | GlobalSoftBufCount: 0 ---------------------------------------------------------------------------------------------- High Watermark Soft Buffers: Port Monitor Disabled ---------------------------------------------------------------------------------------------- Asic:0 Core:0 DATA Port:8 Hardware Enqueue Counters ---------------------------------------------------------------------------------------------- Q Buffers Enqueue-TH0 Enqueue-TH1 Enqueue-TH2 Qpolicer (Count) (Bytes) (Bytes) (Bytes) (Bytes) -- ------- -------------------- -------------------- -------------------- -------------------- 0 0 0 40588200 9368282 0 1 0 0 23584521 789524 0 2 0 0 0 110307150901 0 3 0 0 0 487852543 0 4 0 0 0 5483512 0 5 0 0 0 0 0 6 0 0 0 0 0 7 0 0 0 0 Asic:0 Core:0 DATA Port:8 Hardware 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 24010607 <-- (drops on Q2) 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
Pour augmenter la valeur des tampons logiciels utilisés par une interface, utilisez la commande qos queue-softmax-multipliceren mode de configuration globale :
Cette configuration s’applique à toutes les interfaces :
Utilisez la commande qos queue-softmax-multiplicateur<100 4800>en mode de configuration globale pour modifier l'allocation de mémoire tampon logicielle. Si vous configurez cette valeur sur la valeur maximale disponible, le commutateur a la plus grande probabilité d'éliminer ou de réduire les pertes de sortie. Il s'agit d'une pratique recommandée couramment pour éviter les chutes lorsque cela est possible.
Cat9k(config)#qos queue-softmax-multiplier ?
<100-4800> multiplier(%)
Utilisez la commande show platform hardware fed active qos queue config interface <interface>pour identifier l'allocation de mémoire tampon logicielle sur la gamme Catalyst 9000.
Cet exemple montre les tampons logiciels par défaut alloués sur une interface qui a négocié à la vitesse de 10Gbps sur un Catalyst 9500.
Cat9k#show platform hardware fed active qos queue config interface twentyFiveGigE 1/0/41 Asic:0 Core:0 DATA Port:8 GPN:141 LinkSpeed:0x12 AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 64 - 71 DrainFast:Disabled PortSoftStart:5 - 4320 BufferSharing:Disabled DTS Hardmax Softmax PortSMin GlblSMin PortStEnd QEnable ----- -------- -------- -------- -------- --------- ------- 0 1 6 480 8 1920 16 960 0 0 3 5760 En <-- 1920 is the total soft buffers allocated to queue 0 on interface twentyFiveGigE 1/0/41 1 1 5 0 11 2880 16 1440 8 720 3 5760 En <-- 2880 is the total soft buffers allocated to queue 1 on interface twentyFiveGigE 1/0/41 2 1 5 0 6 0 0 0 0 0 3 5760 En 3 1 5 0 6 0 0 0 0 0 3 5760 En 4 1 5 0 6 0 0 0 0 0 3 5760 En 5 1 5 0 6 0 0 0 0 0 3 5760 En 6 1 5 0 6 0 0 0 0 0 3 5760 En 7 1 5 0 6 0 0 0 0 0 3 5760 En Priority Shaped/shared weight shaping_step sharpedWeight -------- ------------- ------ ------------ ------------- 0 0 Shared 50 0 0 1 0 Shared 75 0 0 2 0 Shared 10000 0 0 3 0 Shared 10000 0 0 4 0 Shared 10000 0 0 5 0 Shared 10000 0 0 6 0 Shared 10000 0 0 7 0 Shared 10000 0 0 Port Port Port Port Priority Shaped/shared weight shaping_step -------- ------------- ------ ------------ 2 Shaped 1023 1023 QPolicer Refresh Credit Max Credit Interval Idx ----------- -------------- ---------- ------------ 0 Disabled 0 0 0 1 Disabled 0 0 0 2 Disabled 0 0 0 3 Disabled 0 0 0 4 Disabled 0 0 0 5 Disabled 0 0 0 6 Disabled 0 0 0 7 Disabled 0 0 0 Weight0 Max_Th0 Min_Th0 Weigth1 Max_Th1 Min_Th1 Weight2 Max_Th2 Min_Th2 ------- ------- ------- ------- ------- ------- ------- ------- ------ 0 0 1912 0 0 2137 0 0 2400 0 <-- Thresholds values in queue 0 on interface twentyFiveGigE 1/0/41 1 0 2295 0 0 2565 0 0 2880 0 <-- Thresholds values in queue 1 on interface twentyFiveGigE 1/0/41 2 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0
Cet exemple montre les tampons logiciels alloués sur une interface qui a négocié un débit de 10 Gbit/s sur un Catalyst 9500 avec un multiplicateur 4800 configuré.
Cat9k#show platform hardware fed active qos queue config interface twentyFiveGigE 1/0/41 Asic:0 Core:0 DATA Port:8 GPN:141 LinkSpeed:0x12 AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 64 - 71 DrainFast:Disabled PortSoftStart:4 - 42000 BufferSharing:Disabled DTS Hardmax Softmax PortSMin GlblSMin PortStEnd QEnable ----- -------- -------- -------- -------- --------- ------- 0 1 6 480 10 42000 1 1312 0 0 4 42000 En <-- 42000 is the total soft buffers allocated to queue 0 on interface twentyFiveGigE 1/0/41 1 1 5 0 10 42000 1 1312 1 1312 4 42000 En <-- 42000 is the total soft buffers allocated to queue 1 on interface twentyFiveGigE 1/0/41 2 1 5 0 6 0 0 0 0 0 4 42000 En 3 1 5 0 6 0 0 0 0 0 4 42000 En 4 1 5 0 6 0 0 0 0 0 4 42000 En 5 1 5 0 6 0 0 0 0 0 4 42000 En 6 1 5 0 6 0 0 0 0 0 4 42000 En 7 1 5 0 6 0 0 0 0 0 4 42000 En Priority Shaped/shared weight shaping_step sharpedWeight -------- ------------- ------ ------------ ------------- 0 0 Shared 50 0 0 1 0 Shared 75 0 0 2 0 Shared 10000 0 0 3 0 Shared 10000 0 0 4 0 Shared 10000 0 0 5 0 Shared 10000 0 0 6 0 Shared 10000 0 0 7 0 Shared 10000 0 0 Port Port Port Port Priority Shaped/shared weight shaping_step -------- ------------- ------ ------------ 2 Shaped 1023 1023 QPolicer Refresh Credit Max Credit Interval Idx ----------- -------------- ---------- ------------ 0 Disabled 0 0 0 1 Disabled 0 0 0 2 Disabled 0 0 0 3 Disabled 0 0 0 4 Disabled 0 0 0 5 Disabled 0 0 0 6 Disabled 0 0 0 7 Disabled 0 0 0 Weight0 Max_Th0 Min_Th0 Weigth1 Max_Th1 Min_Th1 Weight2 Max_Th2 Min_Th2 ------- ------- ------- ------- ------- ------- ------- ------- ------ 0 0 33851 0 0 37833 0 0 42480 0 <-- Thresholds values in queue 0 on interface twentyFiveGigE 1/0/41 1 0 33468 0 0 37406 0 0 42000 0 <-- Thresholds values in queue 1 on interface twentyFiveGigE 1/0/41 2 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0
Remarque : l'allocation des tampons logiciels varie. Il est possible que l'allocation ne corresponde pas au résultat ci-dessus. Le résultat de l'allocation varie en fonction de la plate-forme spécifique utilisée, des stratégies QoS appliquées et de la vitesse de fonctionnement négociée de l'interface en question.
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.
Dans cet exemple d'interface, vingtFiveGigE 1/0/1 a subi des pertes de sortie. Comme l’illustre la commande output egress policy-map appliquée à cette interface.
La commande show platform hardware fed switch active qos queue stats interface <interface> vous permet de voir les 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.
Cat9k#show platform hardware fed active qos queue stats interface twentyFiveGigE 1/0/1 ---------------------------------------------------------------------------------------------- AQM Global counters GlobalHardLimit: 16257 | GlobalHardBufCount: 0 GlobalSoftLimit: 39039 | GlobalSoftBufCount: 0 ---------------------------------------------------------------------------------------------- High Watermark Soft Buffers: Port Monitor Disabled ---------------------------------------------------------------------------------------------- Asic:0 Core:0 DATA Port:8 Hardware Enqueue Counters ---------------------------------------------------------------------------------------------- Q Buffers Enqueue-TH0 Enqueue-TH1 Enqueue-TH2 Qpolicer (Count) (Bytes) (Bytes) (Bytes) (Bytes) -- ------- -------------------- -------------------- -------------------- -------------------- 0 0 0 0 82 0 1 0 0 0 7517 0 2 0 0 0 110307150901 0 3 0 0 0 7174010710 0 4 0 0 0 0 0 5 0 0 0 0 0 6 0 0 0 0 0 7 0 0 0 0 Asic:0 Core:0 DATA Port:8 Hardware 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 24010607 0 0 0 3 0 0 20071103 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
Pour réduire les pertes de sortie sur cette interface, sur la base des compteurs Enqueue, Q0 à Q1 ont un taux de mise en file d'attente très faible, et ne peuvent donc pas nécessiter autant de tampons que Q2 et Q3. L'action recommandée est d'allouer plus de tampons à la file d'attente 2 et à la file d'attente 3, car ces files d'attente ont un trafic plus élevé que toute autre file d'attente.
Remarque : si cette commande est configurée sur chaque classe de la stratégie, elle doit avoir un total de 100. Cependant, si une seule classe est configurée, le système soustrait uniformément les tampons des autres files d'attente.
Cet exemple montre comment configurer un rapport queue-buffers sur un policy-map.
Cat9k(config)#policy-map test
Cat9k(config-pmap)# class Voice
Cat9k(config-pmap-c)# priority level 1
Cat9k(config-pmap-c)# queue-buffers ratio 5
Cat9k(config-pmap-c)# class Video
Cat9k(config-pmap-c)# bandwidth remaining percent 50
Cat9k(config-pmap-c)# queue-buffers ratio 15
Cat9k(config-pmap-c)# class BuisnessCritical
Cat9k(config-pmap-c)# bandwidth remaining percent 30
Cat9k(config-pmap-c)# queue-buffers ratio 40 <-- Queue 3
Cat9k(config-pmap-c)# class class-default
Cat9k(config-pmap-c)# bandwidth remaining percent 20
Cat9k(config-pmap-c)# queue-buffers ratio 40 <-- Queue 4
À partir de la version Cisco IOS XE 17.2.1, les commutateurs basés sur UADP 3.0 (Catalyst 9500 High Performance et Catalyst 9600) peuvent être configurés pour partager les tampons de gestion active de la file d'attente (AQM) entre les deux coeurs à l'intérieur du même ASIC.
Vous pouvez désactiver le partage de mémoire tampon avec la forme no de la commande, no qos share-buffer.
Cat9k(config)#qos share-buffer
Cat9k(config)#end
Pour vérifier la présence de microrafales sur un réseau, vous pouvez utiliser un outil de capture de paquets tel que Wireshark :
Pour identifier les microrafales qui se produisent lorsqu’une perte se produit avec Wireshark, démarrez la capture de paquets sur l’interface concernée et vérifiez l’interface à plusieurs reprises jusqu’à ce qu’une perte de sortie se produise.
Pour capturer et analyser efficacement les pertes de sortie sur une interface, utilisez les recommandations suivantes :
Pour vérifier si ces périodes de trafic élevé sont bien des microrafales, utilisez la fonction de graphique d'E/S Wireshark. Comme le graphique d'E/S affiche une représentation graphique du trafic réseau au fil du temps, il est plus facile d'identifier les microrafales. Pour créer un graphique d'E/S, accédez à Statistiques > Graphique d'E/S :
Remarque : pour illustrer cette procédure, nous avons utilisé une capture de paquets effectuée sur une interface 1 Gbit/s. Cependant, les étapes sont les mêmes pour le dépannage des pertes de sortie sur n'importe quelle interface à haut débit.
Figure 2. Sélectionnez le graphique E/S.
Le graphique suivant montre une ligne qui représente la quantité de données en transit dans le temps. Recherchez des pics dans le graphique, qui indiquent des périodes de trafic élevé. Si ces pics sont suivis de périodes de trafic faible ou nul, vous avez peut-être identifié une microrafale.
Figure 3. Affiche le graphique E/S de la capture de paquets.
Il est important de s'assurer que tous les paquets sont sélectionnés sans qu'aucun filtre d'affichage ne soit appliqué. En outre, sélectionnez l'option Graphique linéaire et définissez l'axe Y sur Bits pour analyser correctement le trafic.
Figure 4. Montre comment sélectionner l'option Graphe linéaire et définir l'axe Y sur Bits.
Lorsque vous analysez une capture de paquets volumineux, il est essentiel d'identifier la période spécifique qui vous intéresse. Par exemple, dans ce scénario, on peut observer qu'il y a un trafic important dans les environs de 30 secondes.
Si vous cliquez sur le pic d’un pic dans le graphique d’E/S, Wireshark sélectionne ce paquet en arrière-plan. Dans notre scénario, les paquets 79280 et 101896 ont été sélectionnés pour créer un sous-ensemble de la capture de paquets afin de travailler dans les horodatages où la présence de microrafales est suspectée.
Figure 5. Montre comment créer un sous-ensemble de la capture de paquets qui se concentre sur les horodatages suspectés de présence de microrafales.
Pour exporter les premier et dernier paquets sélectionnés vers un nouveau fichier, assurez-vous de sélectionner les icônes radio Range et Captured.
Figure 6. Montre comment exporter et enregistrer le sous-ensemble de la capture de paquets.
Après avoir enregistré le fichier, ouvrez-le et revenez au graphique E/S. Assurez-vous que l'intervalle est défini sur 1ms pour représenter graphiquement les pics observés en millisecondes.
Figure 7. Affiche le graphique E/S du sous-ensemble exporté de la capture de paquets.
Lorsque le graphique est affiché, il est important d'identifier les pics qui représentent les périodes où le trafic a été transmis à la vitesse de ligne pendant une milliseconde complète, ce qui entraîne le remplissage de la mémoire tampon et où des pertes de sortie auraient pu être générées. Par exemple, sur une interface 1 Gbit/s, cela correspond à 1 000 000 bits par milliseconde. Cliquez sur le pic d'une pointe représentant une microrafale potentielle. Il permet d'identifier le paquet qui a causé les pertes de sortie. Ce paquet peut ensuite être analysé plus en détail afin de déterminer la cause première de la microrafale et de prendre des mesures correctives.
Figure 8. Montre comment identifier le trafic potentiel de microrafales dans le graphique d'E/S.
Avertissement : il est important de tenir compte de cette limitation lorsque vous utilisez Wireshark ou tout autre outil de capture de paquets sur une interface haut débit. Les interfaces haut débit, telles que 40G et 100G, génèrent un volume important de trafic réseau qui risque de saturer les ressources du système utilisé pour capturer les paquets. Par conséquent, cela peut entraîner l'abandon de paquets pendant le processus de capture et peut avoir un impact sur la précision et l'exhaustivité des données capturées.
Si vous avez épuisé les ressources allouées à une file d'attente et que vous continuez à subir des pertes, vous devez envisager d'autres options pour gérer l'encombrement. Il peut s'agir :
Il est important de noter que certaines de ces options nécessitent des configurations plus complexes, telles que l'ingénierie du trafic, mais peuvent offrir des avantages significatifs pour réduire l'encombrement du réseau et les pertes de sortie.
Révision | Date de publication | Commentaires |
---|---|---|
2.0 |
15-Jul-2024 |
Version initiale, titre raccourci, texte de remplacement modifié et modifications stylistiques. |
1.0 |
07-Jun-2023 |
Première publication |