Ce document explique comment lire le résultat des commandes show controller frfab queue et show controller tofab queue. Il donne également une vue d'ensemble détaillée de l'architecture sous-jacente du routeur Internet de la gamme Cisco 12000 associé à ces files d'attente spéciales.
Pour plus d'informations sur les conventions des documents, référez-vous aux Conventions utilisées pour les conseils techniques de Cisco.
Aucune condition préalable spécifique n'est requise pour ce document.
Les informations contenues dans ce document sont basées sur :
Routeur Internet de la gamme Cisco 12000
Toutes les versions du logiciel Cisco IOS©
Les informations présentées dans ce document ont été créées à partir de périphériques dans un environnement de laboratoire spécifique. All of the devices used in this document started with a cleared (default) configuration. Si vous travaillez dans un réseau opérationnel, assurez-vous de bien comprendre l'impact potentiel de toute commande avant de l'utiliser.
Chaque carte de ligne (LC) d'un routeur Internet de la gamme Cisco 12000 comporte deux types de mémoire :
Mémoire de routage ou de processeur (mémoire vive dynamique - DRAM) : Cette mémoire permet principalement au processeur embarqué d'exécuter le logiciel Cisco IOS et de stocker les tables de routage réseau (Base d'informations de transfert - FIB, contiguïté).
Mémoire de paquets (mémoire vive dynamique synchrone - SDRAM) : La mémoire de paquets de carte de ligne stocke temporairement les paquets de données en attente de décisions de commutation par le processeur de carte de ligne.
Ce document se concentre exclusivement sur la mémoire de paquets qui est divisée en deux banques : ToFab et FrFab (vers le fabric et depuis le fabric). La mémoire ToFab est utilisée pour les paquets qui arrivent dans l'une des interfaces du LC et se dirigent vers le fabric, tandis que la mémoire FrFab est utilisée pour les paquets qui sortent d'une interface du LC à partir du fabric.
Les files d'attente Tofab et Frfab sont les concepts les plus importants à comprendre afin de dépanner efficacement les paquets ignorés dans le routeur Internet de la gamme Cisco 12000. Reportez-vous à Dépannage des paquets ignorés et des pertes de mémoire sur le routeur Internet de la gamme Cisco 12000 pour plus de détails.
Remarque : « ToFab » (vers le fabric) et « Rx » (reçus par le routeur) sont deux noms différents pour la même chose, tout comme « FrFab » (à partir du fabric) et « Tx » (transmis par le routeur). Par exemple, l'ASIC ToFab Buffer Management (BMA) est également appelé RxBMA. Ce document utilise la convention ToFab/FrFab, mais vous pouvez voir la nomenclature Rx/TX utilisée ailleurs.
L'accès à la mémoire de paquets est effectué via l'ASIC de gestion de tampon (BMA). Le BMA fournit des fonctions de mise en mémoire tampon et de gestion des files d’attente de paquets à la carte de ligne. Tous les paquets passent deux fois par le BMA, une fois qu'ils arrivent et une fois sortent. En d'autres termes, les paquets arrivent sur un module d'interface de couche physique (PLIM), passent un peu de temps dans les mémoires tampon SDRAM, et sont ensuite lus à partir des mémoires tampon et livrés au module AISIC (Fabric Interface ASIC). Ici, ils sont segmentés en cellules Cisco et transmis au fabric de commutation. Les paquets sont ensuite reçus du fabric de commutation par l'ASIC de l'interface de fabric sur la carte de ligne de sortie. Ils sont réassemblés, vont aux mémoires tampon SDRAM, puis au PLIM, et enfin envoyés sur le câble.
La plate-forme logicielle Cisco IOS implémente un algorithme de découpage de mémoire tampon qui divise la mémoire SDRAM en plusieurs tampons de taille variable. Le protocole GRP et d'autres sources fournissent des instructions de découpage à la carte de ligne, qui exécute ensuite les instructions. Il existe différents types de sculptures. Par exemple, une simple gravure crée un pool de tampons de même taille, tandis qu'une gravure complexe crée plusieurs pools de tailles différentes, avec chaque pool contenant des tampons de même taille.
Toutes les mémoires tampon de même taille sont associées dans un seul pool. Un pool est toujours alloué pour l'utilisation de la communication interprocessus (IPC). Chaque QSRAM (Queue Static RAM) associée est mise à jour avec l'en-tête de file d'attente, la queue, la longueur, le seuil de longueur, les adresses de tampon associées dans SDRAM et l'élément de file d'attente suivant.
Les conditions séquentielles suivantes déclenchent une découpe de tampon sur une carte de ligne :
Bootload over the Maintenance BUS (MBUS) : appel de gravure simple pour découper les tampons afin de conserver le téléchargement de l'image du logiciel Cisco IOS.
Image logicielle Cisco IOS en place : appel de gravure simple LC pour activer la communication interprocessus (IPC) afin que le GRP puisse utiliser des IPC pour donner aux LC la spécification de gravure initiale. Toute la SDRAM disponible pour la gravure est récupérée.
Une fois la CIB activée - En utilisant des IPC, le GRP peut appeler une gravure complexe LC plusieurs fois pour enregistrer dynamiquement toutes les SDRAM.
Une configuration manuelle ou une modification de la MTU (Maximum Transmission Unit) sur une interface entraîne la récupération de la mémoire. Les files d'attente FrFab sont découpées jusqu'au MTU maximum de l'ensemble du système, tandis que les files d'attente ToFab sont découpées jusqu'au MTU maximum de la carte de ligne particulière.
Remarque : Nous enregistrons uniquement si nous modifions la MTU maximale de la carte de ligne (files d'attente ToFab) ou la MTU maximale pour l'ensemble du système (files d'attente FrFab). Par exemple, changer le MTU de 1500 à 4470 ne change rien s'il existe déjà une interface avec MTU 4470 sur cette carte de ligne (files d'attente ToFab) ou sur l'ensemble du système (files d'attente FrFab).
Examinez l'exemple suivant :
Router#attach 1 Entering Console for 1 Port Packet Over SONET OC-48c/STM-16 in Slot: 1 Type "exit" to end this session Press RETURN to get started! LC-Slot1>enable LC-Slot1#show controllers tofab queues Carve information for ToFab buffers SDRAM size: 268435456 bytes, address: 30000000, carve base: 30019100 268332800 bytes carve size, 4 SDRAM bank(s), 16384 bytes SDRAM pagesize, 2 carve(s) max buffer data size 4544 bytes, min buffer data size 80 bytes 262140/262140 buffers specified/carved 240637152/240637152 bytes sum buffer sizes specified/carved Qnum Head Tail #Qelem LenThresh ---- ---- ---- ------ --------- 4 non-IPC free queues: 115254/115254 (buffers specified/carved), 43.96%, 80 byte data size 1 201 115454 115254 262143 81202/81202 (buffers specified/carved), 30.97%, 608 byte data size 2 115455 196656 81202 262143 41910/41910 (buffers specified/carved), 15.98%, 1568 byte data size 3 196657 238566 41910 262143 23574/23574 (buffers specified/carved), 8.99%, 4544 byte data size 4 238567 262140 23574 262143 IPC Queue: 200/200 (buffers specified/carved), 0.7%, 4112 byte data size 30 131 130 200 262143 Raw Queue: 31 0 0 0 65535 ToFab Queues: Dest Slot 0 0 0 0 262143 1 0 0 0 262143 2 0 0 0 262143 3 0 0 0 262143 4 0 0 0 262143 5 0 0 0 262143 6 0 0 0 262143 7 0 0 0 262143 8 0 0 0 262143 9 0 0 0 262143 10 0 0 0 262143 11 0 0 0 262143 12 0 0 0 262143 13 0 0 0 262143 14 0 0 0 262143 15 0 0 0 262143 Multicast 0 0 0 262143
Vous pouvez voir qu'il y a eu deux sculptures depuis que cette carte de ligne est opérationnelle et qu'il y a quatre pools : 80, 608, 1568 et 4544.
Modifiez maintenant le MTU sur une interface appartenant à cette carte de ligne :
Router(config)#interface pos1/0 Router(config-if)#mtu ? <64-18020> MTU size in bytes Router(config-if)#mtu 2000
Maintenant connectez-vous au LC et vérifiez ce qui a changé :
LC-Slot1#show control tofab queue Carve information for ToFab buffers SDRAM size: 268435456 bytes, address: 30000000, carve base: 30019100 268332800 bytes carve size, 4 SDRAM bank(s), 16384 bytes SDRAM pagesize, 3 carve(s) max buffer data size 4112 bytes, min buffer data size 80 bytes 262142/262142 buffers specified/carved 247054400/247054400 bytes sum buffer sizes specified/carved Qnum Head Tail #Qelem LenThresh ---- ---- ---- ------ --------- 4 non-IPC free queues: 91680/91680 (buffers specified/carved), 34.97%, 80 byte data size 1 202 201 91680 262143 65485/65485 (buffers specified/carved), 24.98%, 608 byte data size 2 91884 91883 65485 262143 49769/49769 (buffers specified/carved), 18.98%, 1568 byte data size 3 157366 207134 49769 262143 55008/55008 (buffers specified/carved), 20.98%, 2048 byte data size 4 207135 262142 55008 262143 IPC Queue: 200/200 (buffers specified/carved), 0.7%, 4112 byte data size 30 118 117 200 262143 Raw Queue: 31 206 205 0 65535 ToFab Queues: Dest Slot 0 0 0 0 262143 1 0 0 0 262143 2 0 0 0 262143 3 0 0 0 262143 4 0 0 0 262143 5 0 0 0 262143 6 0 0 0 262143 7 206 205 0 262143 8 0 0 0 262143 9 0 0 0 262143 10 0 0 0 262143 11 0 0 0 262143 12 0 0 0 262143 13 0 0 0 262143 14 0 0 0 262143 15 0 0 0 262143 Multicast 0 0 0 262143
Il existe maintenant trois tailles et la taille maximale de tampon pour la file d'attente non IPC est de 2 048 octets au lieu de 4 544.
Les files d'attente FrFab restent inchangées :
LC-Slot1#show controllers frfab queues Carve information for FrFab buffers SDRAM size: 268435456 bytes, address: 20000000, carve base: 2039D100 264646400 bytes carve size, 4 SDRAM bank(s), 16384 bytes SDRAM pagesize, 3 carve(s) max buffer data size 9248 bytes, min buffer data size 80 bytes 251927/251927 buffers specified/carved 209883344/209883344 bytes sum buffer sizes specified/carved Qnum Head Tail #Qelem LenThresh ---- ---- ---- ------ --------- 6 non-IPC free queues: 123349/123349 (buffers specified/carved), 48.96%, 80 byte data size 1 210 209 123349 262143 75519/75519 (buffers specified/carved), 29.97%, 608 byte data size 2 123552 123551 75519 262143 37759/37759 (buffers specified/carved), 14.98%, 1568 byte data size 3 199069 236827 37759 262143 2516/2516 (buffers specified/carved), 0.99%, 2048 byte data size 4 236828 239343 2516 262143 7551/7551 (buffers specified/carved), 2.99%, 4544 byte data size 5 239344 246894 7551 262143 5033/5033 (buffers specified/carved), 1.99%, 9248 byte data size 6 246895 251927 5033 262143 IPC Queue: 200/200 (buffers specified/carved), 0.7%, 4112 byte data size 30 52 51 200 262143 Multicast Raw Queue: 29 0 0 0 62981 Raw Queue: 31 52 51 0 251928 Interface Queues: 0 210 209 0 262143
La taille maximale du tampon est de 9 248 octets. Maintenant, configurez un MTU de 10000 sur une autre interface sur une autre carte :
Router(config-if)#interface pos5/0 Router(config-if)#mtu ? <64-18020> MTU size in bytes Router(config-if)#mtu 10000 LC-Slot1#show contr frfab queues Carve information for FrFab buffers SDRAM size: 268435456 bytes, address: 20000000, carve base: 2039D100 264646400 bytes carve size, 4 SDRAM bank(s), 16384 bytes SDRAM pagesize, 4 carve(s) max buffer data size 10064 bytes, min buffer data size 80 bytes 257309/257309 buffers specified/carved 213496016/213496016 bytes sum buffer sizes specified/carved Qnum Head Tail #Qelem LenThresh ---- ---- ---- ------ --------- 5 non-IPC free queues: 128556/128556 (buffers specified/carved), 49.96%, 80 byte data size 1 204 203 128556 262143 77133/77133 (buffers specified/carved), 29.97%, 608 byte data size 2 128758 128757 77133 262143 38566/38566 (buffers specified/carved), 14.98%, 1568 byte data size 3 205890 244455 38566 262143 7713/7713 (buffers specified/carved), 2.99%, 4544 byte data size 4 244456 252168 7713 262143 5141/5141 (buffers specified/carved), 1.99%, 10064 byte data size 5 252169 257309 5141 262143 IPC Queue: 200/200 (buffers specified/carved), 0.7%, 4112 byte data size 30 24 23 200 262143 Multicast Raw Queue: 29 0 0 0 64327 Raw Queue: 31 24 23 0 257310 Interface Queues: 0 205 204 0 262143
Il y a maintenant quatre segments pour les files d'attente FrFab et la taille maximale du tampon a été modifiée à 10 064 octets.
Remarque : Sur les cartes de ligne POS (Packet Over Sonet) configurées avec l'encapsulation PPP (Point-to-Point Protocol), la négociation d'unité de réception maximale (MRU) a lieu, mais elle n'ajuste pas la taille de MTU. En outre, les connexions PPP ne sont pas réinitialisées lorsque le MTU est modifié sur l’interface.
Cette mémoire est découpée en différents pools de mémoires tampon de paquets. Pour voir comment la mémoire de réception est découpée, vous pouvez attacher à une carte de ligne et exécuter la commande show controller tofab queue, comme illustré ci-dessous :
Router#attach ? <0-15> slot number of linecard to connect <cr> Router#attach 1 Entering Console for 1 Port SONET based SRP OC-12c/STM-4 in Slot: 1 Type "exit" to end this session Press RETURN to get started! LC-Slot1>enable LC-Slot1# LC-Slot1#show controllers tofab queues Carve information for ToFab buffers SDRAM size: 33554432 bytes, address: 30000000, carve base: 30029100 33386240 bytes carve size, 4 SDRAM bank(s), 8192 bytes SDRAM pagesize, 2 carve(s) max buffer data size 9248 bytes, min buffer data size 80 bytes 40606/40606 buffers specified/carved 33249088/33249088 bytes sum buffer sizes specified/carved Qnum Head Tail #Qelem LenThresh ---- ---- ---- ------ --------- 5 non-IPC free queues: 20254/20254 (buffers specified/carved), 49.87%, 80 byte data size 1 17297 17296 20254 65535 12152/12152 (buffers specified/carved), 29.92%, 608 byte data size 2 20548 20547 12152 65535 6076/6076 (buffers specified/carved), 14.96%, 1568 byte data size 3 32507 38582 6076 65535 1215/1215 (buffers specified/carved), 2.99%, 4544 byte data size 4 38583 39797 1215 65535 809/809 (buffers specified/carved), 1.99%, 9248 byte data size 5 39798 40606 809 65535 IPC Queue: 100/100 (buffers specified/carved), 0.24%, 4112 byte data size 30 72 71 100 65535 Raw Queue: 31 0 17302 0 65535 ToFab Queues: Dest Slot 0 0 0 0 65535 1 0 0 0 65535 2 0 0 0 65535 3 0 0 0 65535 4 0 0 0 65535 5 0 17282 0 65535 6 0 0 0 65535 7 0 75 0 65535 8 0 0 0 65535 9 0 0 0 65535 10 0 0 0 65535 11 0 0 0 65535 12 0 0 0 65535 13 0 0 0 65535 14 0 0 0 65535 15 0 0 0 65535 Multicast 0 0 0 65535 LC-Slot1#
La liste suivante décrit certains des champs clés de l'exemple précédent :
Taille de la mémoire SDRAM : 33554432 octets, adresse : 3000000, base de sculpture : 30029100 : taille de la mémoire de paquet de réception et emplacement de l'adresse où elle commence.
taille maximale des données de tampon 9248 octets, taille minimale des données de tampon 80 octets - tailles maximale et minimale des tampons.
40606/40606 tampons spécifiés/sculptés - Tampons à découper spécifiés par le logiciel Cisco IOS et nombre de tampons réellement sculptés.
files d'attente libres non IPC - Les pools de mémoires tampon non IPC sont les pools de mémoires tampon de paquets. Les paquets arrivant dans la carte de ligne reçoivent une mémoire tampon de l'un de ces pools de mémoires tampon, selon la taille du paquet. Il est possible d'avoir seulement trois files d'attente libres non IPC ; si la carte est Ethernet, vous n'aurez pas le pool 4k, mais seulement un pool jusqu'à 1,5k. En effet, les files d'attente ToFab sont découpées jusqu'à l'unité de transmission maximale (MTU) de cette carte de ligne particulière. L'exemple de sortie montre cinq pools de mémoires tampon de paquets de tailles 80, 608, 1 568, 4 544 et 9 248 octets. Pour chaque pool, plus de détails sont donnés ci-dessous :
20254/20254 (tampons spécifiés/sculptés), 49,87 %, taille des données de 80 octets - 49,87 % de la mémoire des paquets de réception a été découpée en mémoires tampon de 80 octets de 20254.
Qnum - Numéro de file d'attente.
#Qelem - Nombre de tampons actuellement affectés à cette file d'attente. S'il s'agit d'une file d'attente libre, alors ces tampons sont disponibles pour le système. S'il s'agit d'une file d'attente ToFab ou d'une file d'attente de transmission, ces tampons ne sont pas disponibles pour le système. Il s'agit de la colonne à vérifier pour savoir quelle file d'attente est sauvegardée.
Tête et queue - Un mécanisme tête et queue est utilisé pour s'assurer que les files d'attente se déplacent correctement.
File d'attente IPC - Réservé aux messages de communication interprocessus de la LC au GRP.
File d'attente brute : lorsqu'un paquet entrant a reçu une mémoire tampon d'une file d'attente libre non IPC, elle est mise en file d'attente sur la file d'attente brute. La file d'attente brute est une FIFO (First In, First Out) traitée par le processeur LC pendant les interruptions. Si vous voyez un très grand nombre dans la colonne #Qelem de la ligne « File d'attente brute », vous avez trop de paquets en attente sur le CPU et ils commenceront à être ignorés parce que le CPU ne peut pas suivre la charge. Mais c'est très rare.
ToFab Queue - Files d'attente de sortie virtuelles ; un par emplacement de destination plus un pour le trafic de multidiffusion. La dernière partie de l'exemple précédent montre 15 files d'attente de sortie virtuelles. Il s'agit d'un routeur 12012, initialement conçu comme un châssis à 15 logements ; les files d'attente 13 à 15 ne sont pas utilisées.
Une fois que le processeur de la carte de ligne d'entrée prend une décision de commutation de paquets, le paquet est mis en file d'attente sur la file d'attente de sortie virtuelle correspondant au logement auquel le paquet est destiné. Le nombre dans la quatrième colonne correspond au nombre de paquets actuellement mis en file d'attente sur une file d'attente de sortie virtuelle.
Étape 1 : un paquet entre dans le module d’interface de couche physique (PLIM). Lorsque le paquet est reçu et traité, il s'agit d'un DMA (Direct Memory Access) dans une petite mémoire tampon (environ 2 x Maximum Transmission Unit (MTU)) appelée « First In, First Out (FIFO) burst memory ». La quantité de cette mémoire dépend du type de LC (de 128 Ko à 1 Mo).
Étape 2 - Lorsque le paquet est entièrement en mémoire FIFO, un circuit intégré spécifique à une application (ASIC) sur le PLIM contacte l'ASIC de gestion de mémoire tampon (BMA) et demande une mémoire tampon pour le placer. Le BMA est informé de la taille du paquet et alloue une mémoire tampon en conséquence. Si le BMA ne parvient pas à obtenir une mémoire tampon de la bonne taille, le paquet est abandonné et le compteur « ignoré » est incrémenté sur l'interface entrante. Il n'y a pas de mécanisme de secours comme pour d'autres plates-formes.
Étape 3 - Pendant ce temps, le PLIM peut recevoir un autre paquet dans la mémoire de rafale FIFO, ce qui explique pourquoi il a une taille de 2 MTU. Si une mémoire tampon libre est disponible dans la file d'attente de droite, le paquet est stocké par le BMA dans la liste de file d'attente libre de la taille appropriée. Ce tampon est placé sur la file d'attente brute, qui est examinée par l'ASIC Salsa ou le processeur R5K, selon le type de moteur de commutation de la carte de ligne.
Étape 4 - Sur le LC du moteur 0, le processeur R5K détermine la destination du paquet en consultant ses tables DRAM distribuées Cisco Express Forwarding (dCEF) locales. Il déplace ensuite la mémoire tampon de la file d'attente brute vers une file d'attente ToFabric correspondant au logement de destination. Si la destination ne figure pas dans les tables dCEF, le paquet est abandonné. Si le paquet est un paquet de contrôle (par exemple, des mises à jour de routage), il est mis en file d'attente dans la file d'attente du protocole GRP et est traité par le protocole GRP. Sur un routeur 12016, il y a 17 files d'attente ToFab (16 monodiffusion, plus une multidiffusion).
Étape 5 - La BMA ToFab place la mémoire tampon dans la file d'attente ToFab appropriée. À ce stade, le compteur #Qelem dans le pool dont le tampon provient a diminué d'un, et le compteur de file d'attente ToFab augmente d'un.
Remarque : Il existe une file d'attente ToFab par carte de ligne (ceci inclut le protocole GRP). Ces files d'attente sont appelées files d'attente de sortie virtuelles (VOQ). Elles sont importantes pour éviter le blocage en tête de ligne.
Étape 6 : l'interface de fabric ASIC (FIA) détecte qu'une file d'attente de sortie n'est pas vide. La FIA est configurée pour segmenter le paquet en cellules de 48 octets. Un en-tête de 8 octets est ajouté au paquet et la cellule Cisco de 56 octets est envoyée à travers la matrice de commutation.
La mémoire des paquets de transmission stocke les paquets provenant de la structure du commutateur et en attente de transmission à l’interface physique. Cette mémoire est également découpée en pools de différentes tailles.
À partir du protocole GRP, vous pouvez attacher à une carte de ligne et exécuter la commande show controller frfab queue pour afficher la mémoire du paquet de transmission. Outre les champs de la sortie ToFab, la sortie FrFab affiche une section « Files d'attente d'interface ». Le résultat varie selon le type et le nombre d'interfaces sur le LC sortant.
Une file d'attente de ce type existe pour chaque interface de la carte de ligne. Les paquets destinés à une interface spécifique sont mis en file d’attente dans la file d’attente d’interface correspondante.
LC-Slot1#show controller frfab queue ========= Line Card (Slot 2) ======= Carve information for FrFab buffers SDRAM size: 16777216 bytes, address: 20000000, carve base: 2002D100 16592640 bytes carve size, 0 SDRAM bank(s), 0 bytes SDRAM pagesize, 2 carve(s) max buffer data size 9248 bytes, min buffer data size 80 bytes 20052/20052 buffers specified/carved 16581552/16581552 bytes sum buffer sizes specified/carved Qnum Head Tail #Qelem LenThresh ---- ---- ---- ------ --------- 5 non-IPC free queues: 9977/9977 (buffers specified/carved), 49.75%, 80 byte data size 1 101 10077 9977 65535 5986/5986 (buffers specified/carved), 29.85%, 608 byte data size 2 10078 16063 5986 65535 2993/2993 (buffers specified/carved), 14.92%, 1568 byte data size 3 16064 19056 2993 65535 598/598 (buffers specified/carved), 2.98%, 4544 byte data size 4 19057 19654 598 65535 398/398 (buffers specified/carved), 1.98%, 9248 byte data size 5 19655 20052 398 65535 IPC Queue: 100/100 (buffers specified/carved), 0.49%, 4112 byte data size 30 77 76 100 65535 Raw Queue: 31 0 82 0 65535 Interface Queues: 0 0 0 0 65535 1 0 0 0 65535 2 0 0 0 65535 3 0 0 0 65535
La liste suivante décrit certains des champs clés de l'exemple précédent :
Files d'attente libres non IPC : Ces files d'attente sont des pools de mémoires tampon de paquets de différentes tailles. Lorsqu'un paquet est reçu sur le fabric, une mémoire tampon de taille appropriée est prélevée à partir d'une de ces files d'attente, le paquet y est copié et la mémoire tampon est placée sur la file d'attente d'interface de sortie appropriée.
Remarque : Il existe autant de pools que nécessaire pour l'ensemble du routeur. En conséquence, les files d'attente FrFab sont découpées jusqu'au MTU maximum de l'ensemble du système. Ceci est différent pour les files d'attente ToFab qui sont découpées jusqu'au MTU maximum de la carte de ligne particulière.
File d'attente IPC : Réservé aux messages de communication interprocessus du protocole GRP vers le LC.
Files d'attente d'interface : Ces files d'attente sont destinées aux interfaces et non aux numéros de logement. Le dernier numéro (65535) est la limite de file d'attente TX. Ce nombre contrôle la longueur maximale de toute file d'attente et peut être réglé par la commande TX-queue limit sur la carte de ligne Engine 0. Si vous rencontrez un encombrement, cette commande peut être utilisée pour empêcher le LC de sortie de mettre en mémoire tampon plus que le nombre configuré de paquets sur la file d'attente d'interface pour ce port spécifique. Assurez-vous de configurer ce nombre suffisamment bas pour qu'il ne contienne pas toutes les files d'attente FrFab pour cette interface. Cependant, ce réglage n'offre aucun contrôle sur les paquets abandonnés sur le LC sortant. Reportez-vous à Dépannage des paquets ignorés et des pertes de mémoire sur le routeur Internet de la gamme Cisco 12000 pour plus de détails.
À ce stade, les cellules Cisco ont été transmises via le fabric de commutation par la FIA.
Étape 1 : ces cellules Cisco sont placées dans des FIFO sur les FIA FrFab, puis dans un tampon sur le BMA FrFab. Le FrFab BMA est celui qui effectue le réassemblage des cellules dans un paquet.
Comment le FrFab BMA sait-il dans quel tampon placer les cellules avant de les réassembler ? Il s'agit d'une autre décision prise par le moteur de commutation de la carte de ligne entrante. Puisque toutes les files d’attente de la boîte entière sont de même taille et dans le même ordre, le moteur de commutation demande à la LC émettrice de placer le paquet dans la même file d’attente de numéro à partir de laquelle il est entré dans le routeur.
Les files d'attente SDRAM FrFab BMA peuvent être affichées avec la commande show controller frfab queue sur le LC.
Étape 2 - Cette étape est fondamentalement la même que la sortie BMA ToFab. Les paquets entrent et sont placés dans des paquets qui sont retirés de leurs files d’attente libres respectives. Ces paquets sont placés dans la file d'attente FrFab et placés dans la file d'attente de l'interface (il y a une file d'attente par port physique) ou dans rawQ pour le traitement de sortie. Pas grand chose se passe dans rawQ : réplication multidiffusion par port, MDRR (Modified Deficit Round Robin) - même idée que DWFQ (Distributed Weighted Fair Queuing) et CAR (Committed Access Rate) en sortie. Si la file d'attente de transmission est pleine, le paquet est abandonné et le compteur de pertes de sortie incrémenté.
Étape 3 : le FrFab BMA attend que la partie TX du PLIM soit prête à envoyer un paquet. Le FrFab BMA effectue la réécriture du contrôle d'accès au support (MAC) réel (basé, rappelez-vous, sur les informations contenues dans l'en-tête de la cellule Cisco), et le DMA transfère le paquet à une petite mémoire tampon (2xMTU) dans le circuit PLIM. Le PLIM effectue l’encapsulation SAR (Asynchronous Transfer Mode) et SONET (Synchronous Optical Network), le cas échéant, et transmet le paquet.