Contenu

Introduction

Avant de commencer

Conventions

Conditions préalables

Components Used

Fond

Algorithmes de découpage de mémoire tampon

Réception de la mémoire de paquets

Flux de paquets dans la BMA ToFab

Mémoire de paquet de transmission

Flux de paquets dans le BMA FrFab

Informations connexes

Introduction

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.

Avant de commencer

Conventions

Pour plus d'informations sur les conventions des documents, référez-vous aux Conventions utilisées pour les conseils techniques de Cisco.

Conditions préalables

Aucune condition préalable spécifique n'est requise pour ce document.

Components Used

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.

Fond

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.

Algorithmes de découpage de mémoire tampon

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.

Réception de la mémoire de paquets

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.

Flux de paquets dans la BMA ToFab

É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.

Mémoire de paquet de transmission

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.

Flux de paquets dans le BMA FrFab

À 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.

Informations connexes

- Dépannage des paquets ignorés et des pannes pour manque de mémoire sur routeur Internet de la gamme Cisco 12000

- Dépannage des suppressions d'entrées sur les routeurs Internet de la gamme Cisco 12000

- Comment lire la sortie de la commande Show Controller fia :

- Support technique - Cisco Systems