Interfaces et modules Cisco : Processeurs d'interface à attachement canal Cisco

Présentation des défaillances et des erreurs de mémoire tampon

16 décembre 2015 - Traduction automatique
Autres versions: PDFpdf | Anglais (22 août 2015) | Commentaires


Contenu


Introduction

Ce document discute des défaillances et des pannes de mémoire tampon sur le processeur de routage (RP).

Conditions préalables

Conditions requises

Aucune spécification déterminée n'est requise pour ce document.

Composants utilisés

Ce document n'est pas limité à des versions de matériel et de logiciel spécifiques.

Les informations contenues dans ce document ont été créées à partir des périphériques d'un environnement de laboratoire spécifique. Tous les périphériques utilisés dans ce document ont démarré avec une configuration effacée (par défaut). Si votre réseau est opérationnel, assurez-vous que vous comprenez l'effet potentiel de toute commande.

Conventions

Pour plus d'informations sur les conventions utilisées dans ce document, reportez-vous à Conventions relatives aux conseils techniques Cisco.

Coups manqués et pannes de mémoire tampon

Le RP divise sa mémoire du processeur en groupes. Chaque groupe contient un certain nombre de blocs de mémoire de taille égale. Ces blocs de mémoire s'appellent les mémoires tampons.

Pools de mémoire tampon

Il y a six pools de mémoire tampon :

  • 104 mémoires tampons de petite taille d'octets

  • Moyen — 600 mémoires tampons d'octet

  • Grand — 1524 mémoires tampons d'octet

  • VeryBig — 4520 mémoires tampons d'octet

  • Grand — 5024 mémoires tampons d'octet

  • Énorme — 18024 mémoires tampons d'octet

Par exemple, si un processeur d'interface doit passer un paquet de 20 octets au RP, il « demande » une petite mémoire tampon. Si un processeur d'interface doit passer un paquet de 500 octets au RP, il demande une mémoire tampon moyenne, et ainsi de suite.

Remarque: Le processeur d'interface doit demander une mémoire tampon d'une certaine taille.

Quand le processeur d'interface demande une mémoire tampon, ceci se produit :

  • Si une mémoire tampon libre existe dans le groupe demandé, on accorde la mémoire tampon. Autrement, la demande génère un « coup manqué » et les essais d'algorithme de mémoire tampon « créent » plus de mémoires tampons pour ce groupe.

  • Quand l'IOS n'obtient pas une petite mémoire tampon, il ne relâche pas le paquet. Il incrémente le contre- défectueux et tombe à la prochaine mémoire tampon de niveau, qui est la mémoire tampon moyenne et demande une mémoire tampon là. S'il n'obtient pas une mémoire tampon moyenne, il demande la prochaine mémoire tampon de niveau, qui est une grande mémoire tampon. Ce processus continue jusqu'à ce qu'il frappe le groupe de tampon énorme. S'il n'obtient pas un tampon énorme, alors il relâche le paquet.

  • Quand vous utilisez l'ensemble de caractéristiques IBM, un coup manqué génère presque toujours une panne.

  • Bien que les caractéristiques IBM puissent être commutées par processus, le code pour obtenir une mémoire tampon pour passer un paquet d'une interface au RP exécute au niveau de priorité d'interruption.

  • Des mémoires tampons ne peuvent pas être créées au niveau de priorité d'interruption ; par conséquent, un coup manqué aligne sa demande de plus de mémoires tampons au RP.

  • Puisqu'une mémoire tampon supplémentaire ne peut pas être créée sur place, la demande de mémoire tampon échoue, et le paquet est lâché.

Les défaillances de la mémoire tampon sont l'une des raisons les plus communes pour des pertes de paquets. Quand les pertes de paquets se produisent en raison de la défaillance de la mémoire tampon, ceci se produit :

  • Après une défaillance de la mémoire tampon, le RP a une demande en attente de créer plus de mémoires tampons de la taille appropriée pour le groupe particulier.

  • Tandis que le RP entretient la demande de mémoires tampons de création, il peut y avoir des pannes supplémentaires dans le groupe.

  • Le RP peut même pour créer plus de mémoires tampons, en raison des contraintes de mémoire dans le système quand les mémoires tampons supplémentaires sont exigées.

  • Essentiellement, l'exécution de mémoires tampons de création pourrait prendre plusieurs microsecondes, lesoù des paquets sont continuellement lâchés en raison de la pénurie de mémoire tampon.

  • En outre, si des mémoires tampons sont utilisées aussi rapidement qu'elles sont créées, le RP pourrait être forcé pour passer plus de temps sur la création de mémoire tampon que sur le traitement de paquets.

  • Ceci peut faire commencer le RP à relâcher des paquets tellement rapidement que la représentation dégrade et des sessions sont perdues.

Heureusement, car ce document discute, il n'est pas difficile l'identifier et le résoudre des problèmes de défaillance de la mémoire tampon. Cette sortie de commande de shows buffer affiche l'état actuel des pools de mémoire tampon du routeur :

dspu-7k#show buffers

Buffer elements:
     500 in free list (500 max allowed)
     2370 hits, 0 misses, 0 created

Public buffer pools:
Small buffers, 104 bytes (total 16, permanent 10):
     11 in free list (0 min, 10 max allowed)
     1770 hits, 33 misses, 22 trims, 28 created
     9 failures (0 no memory)
Middle buffers, 600 bytes (total 90, permanent 90):
     89 in free list (10 min, 200 max allowed)
     590 hits, 0 misses, 0 trims, 0 created
     0 failures (0 no memory)
Big buffers, 1524 bytes (total 90, permanent 90):
     90 in free list (5 min, 300 max allowed)
     126 hits, 0 misses, 0 trims, 0 created
     0 failures (0 no memory)
VeryBig buffers, 4520 bytes (total 10, permanent 10):
     10 in free list (0 min, 300 max allowed)
     50 hits, 0 misses, 0 trims, 0 created
     0 failures (0 no memory)
Large buffers, 5024 bytes (total 10, permanent 10):
     10 in free list (0 min, 30 max allowed)
     0 hits, 0 misses, 0 trims, 0 created
     0 failures (0 no memory)
Huge buffers, 18024 bytes (total 2, permanent 0):
     0 in free list (0 min, 13 max allowed)
     2 hits, 2 misses, 0 trims, 2 created
     0 failures (0 no memory)

Dans la sortie de shows buffer :

  • Le total identifie le nombre total de mémoires tampons dans le groupe, qui incluent les mémoires tampons utilisées et inutilisées.

  • La constante identifie le nombre permanent de mémoires tampons allouées dans le groupe. Ces mémoires tampons sont toujours dans le groupe et ne peuvent pas être équilibrées loin.

  • Dans la liste libre identifie le nombre de mémoires tampons actuellement dans le groupe qui sont disponibles pour l'usage.

  • La minute identifie le nombre minimal de mémoires tampons que le RP devrait tenter pour maintenir dans la liste libre :

    • Le paramètre minimum est utilisé pour anticiper la demande des mémoires tampons du groupe à un moment donné.

    • Si le nombre de mémoires tampons dans la liste libre tombe au-dessous de la valeur minimum, les tentatives RP de créer plus de mémoires tampons pour ce groupe.

  • Maximum-autorisé identifie le nombre maximal de mémoires tampons qui sont permises dans la liste libre :

    • Le paramètre maximum-autorisé empêche un groupe des mémoires tampons de monopolisation des lesquelles il n'a plus besoin. Il libère également cette mémoire de nouveau au système pour davantage d'usage.

    • Si le nombre de mémoires tampons dans la liste libre est plus grand que la valeur maximum-autorisée, le RP devrait tenter d'équilibrer des mémoires tampons du groupe.

  • Les hit identifie le nombre de mémoires tampons qui ont été demandées au groupe. Le compteur de hit fournit un mécanisme pour déterminer quel groupe doit rencontrer le plus très demandé pour des mémoires tampons.

  • Les coups manqués identifie le nombre de fois qu'une mémoire tampon a été demandées et le RP détecté dans ce que des mémoires tampons supplémentaires de groupe ont été exigées. En d'autres termes, le nombre de mémoires tampons dans la liste libre a chuté au-dessous du niveau minimum. Les coups manqués contre- représente le nombre de fois où le RP a été forcé pour créer les mémoires tampons supplémentaires.

  • Les équilibres identifie le nombre de mémoires tampons que le RP a équilibrées du groupe, quand le nombre de mémoires tampons dans la liste libre a dépassé le nombre de mémoires tampons maximum-autorisées.

  • Créé identifie le nombre de mémoires tampons qui ont été créées dans le groupe. Le RP crée des mémoires tampons dans ces situations :

    • Quand la demande des mémoires tampons a augmenté jusqu'à ce que le nombre de mémoires tampons dans la liste libre soit moins que les mémoires tampons minimum.

    • Un coup manqué se produit parce qu'il n'y a aucune mémoire tampon dans la liste libre.

    • Chacun des deux situations précédentes.

  • Les pannes les identifie quand l'IOS n'obtient pas une petite mémoire tampon, il ne relâche pas le paquet. Il incrémente le contre- défectueux et tombe à la prochaine mémoire tampon de niveau, qui est la mémoire tampon moyenne et demande une mémoire tampon là. S'il n'obtient pas une mémoire tampon moyenne, il demande la prochaine mémoire tampon de niveau, qui est une grande mémoire tampon. Ce processus continue jusqu'à ce qu'il frappe le groupe de tampon énorme. S'il n'obtient pas un tampon énorme, alors il relâche le paquet.

  • Aucune mémoire n'identifie le nombre de pannes provoquées par mémoire insuffisante pour créer les mémoires tampons supplémentaires.

Vous pouvez mettre en boîte examinez les caractéristiques de chaque groupe, pour déterminer quels groupes (le cas échéant) rencontrent des problèmes. Les paramètres pour un groupe peuvent être accordés pour permettre au routeur pour être plus bien préparés pour manipuler le chargement, si le groupe semble montrer ces caractéristiques :

  • Le nombre de coups manqués et crée l'incrément à un haut débit (comme pourcentage des hit).

  • Il y a uniformément un nombre peu élevé de mémoires tampons dans la liste libre.

  • Le nombre de pannes ou d'aucun incrément de mémoire.

commande de configuration de mémoires tampons

Avec la commande de configuration de mémoires tampons, vous pouvez accorder ces paramètres pour chaque pool de mémoire tampon :

  • initiale — Mémoires tampons provisoires qui sont allouées au rechargement du système.

  • maximum-libre — Nombre maximal de mémoires tampon libres.

  • minute-libre — Nombre minimal de mémoires tampon libres.

  • permanent — Nombre de mémoires tampons permanentes.

Mémoires tampons initiales

Mémoires tampons initiales d'optimisation pour faciliter la rafale du trafic d'établissement de session après routeur rechargé.

buffers small initial 250

Ces mémoires tampons « sont par la suite équilibrées » et retournées au système.

Les mémoires tampons initiales sont conçues pour manipuler l'établissement de session, qui est toujours commuté par processus.

Pendant l'établissement de session, le cache fastswitching (utilisé par d'autres protocoles d'artère) est rempli ; des mémoires tampons commutées par processus sont plus exigées et ne peuvent être retournées au système.

Pour accorder les mémoires tampons initiales peut ne pas être la solution correcte pour l'ensemble de caractéristiques IBM, parce que presque tous les paquets (après établissement de session) sont commutés par processus et exigent bufferiser supplémentaire de toute façon.

Remarque: Pour les caractéristiques commutées par processus IBM, vous devriez accorder les mémoires tampons permanentes plutôt qu'accordent les mémoires tampons initiales provisoires.

Mémoires tampons Maximum-libres

Accordez les mémoires tampons maximum-libres de sorte que la valeur soit égale ou plus grande qu'aux mémoires tampons de constante. Si toutes les mémoires tampons permanentes sont dans la liste libre, alors le RP ne devrait pas essayer d'équilibrer les mémoires tampons permanentes. Maximum-libre peut être utilisé pour s'assurer que des mémoires tampons inutilisées qui sont créées pendant des rafales irrégulières sont retournées à la mémoire système.

buffers small max-free 175

buffers small permanent 125

Mémoires tampons Minute-libres

Accordez les mémoires tampons minute-libres de sorte que la valeur représente le nombre minimal prévu de mémoires tampons exigées à tout moment. Minute-libre peut être utilisé pour anticiper des états de pénurie de mémoire tampon et pour s'assurer qu'un nombre minimal de mémoires tampons sont toujours disponible.

buffers small min-free 50

Mémoires tampons permanentes

Accordez les mémoires tampons permanentes de sorte que la valeur représente le nombre estimé de mémoires tampons exigées pour le traitement normal.

buffers small permanent 125

Des mémoires tampons permanentes sont utilisées pour faciliter les conditions requises de tampon normal (rafales fréquentes y compris) du routeur. La détermination des conditions requises de tampon normal est un processus interactif, où la sortie de show buffer devrait afficher toutes les mémoires tampons utilisées dans un groupe à un moment donné. Des mémoires tampons permanentes devraient être accordées en ce qui concerne à « toutes les » mémoires tampons cohérentes exigées. Quand vous accordez les mémoires tampons permanentes, vous devriez se concentrer sur la réduction de crée et l'élimination des coups manqués et des pannes.

Commandes show supplémentaires

Il y a deux autres commandes show que vous pouvez employer pour identifier des problèmes avec l'allocation de mémoire tampon :

  • affichez l'identifiant d'interface d'interfaces

  • show source-bridge

Cette exposition relie l'exemple de sortie de commande d'identifiant d'interface inclut un compteur pour aucune mémoire tampon :

dspu-7k#show interfaces channel 4/2

Channel4/2 is up, line protocol is up
  Hardware is cxBus IBM Channel
  MTU 4472 bytes, BW 98304 Kbit, DLY 100 usec, rely 255/255, load 1/255
  Encapsulation CHANNEL, loopback not set, keepalive not set
  Virtual interface
  Last input 0:00:04, output 0:00:04, output hang never
  Last clearing of "show interface" counters never
  Output queue 0/40, 0 drops; input queue 0/75, 8 drops
  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 0 bits/sec, 0 packets/sec
     646 packets input, 27760 bytes, 8 no buffer
     Received 0 broadcasts, 0 runts, 0 giants
     0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort
     328 packets output, 16959 bytes, 0 underruns
     0 output errors, 0 collisions, 0 interface resets, 0 restarts
     0 output buffer failures, 0 output buffers swapped out

Dans l'exposition relie la sortie de commande d'identifiant d'interface :

  • Le compteur hors tampon incrémente quand l'interface n'obtient pas une mémoire tampon pour un paquet entrant.

  • Le compteur de mémoire tampon et de baisses (file d'attente d'entrée) n'incrémente pas quand l'interface n'obtient pas une mémoire tampon pour un paquet entrant.

  • Un compteur hors tampon qui incrémente dans l'exposition relie des corrélations de sortie aux coups manqués contre- que des incréments dans la sortie de shows buffer. Le pool de mémoire tampon approprié peut être accordé.

Cet exemple de sortie de commande de show source-bridge inclut une interface contre- pour des commandes de puissance, quand le par la source pont (SRB) est configuré pour l'interface :

dspu-7k#show source-bridge

Local Interfaces:                        receive            transmit
       srn bn  trn r p s n  max hops     cnt:bytes          cnt:bytes      drops
Ch4/2  666  1   99 *   f    7  7  7      652:26020            6:266           0

Global RSRB Parameters:
 TCP Queue Length maximum: 100

Ring Group 99:
  This TCP peer: 150.10.20.2
   Maximum output TCP queue length, per peer: 100
  Peers:                 state     bg lv  pkts_rx  pkts_tx  expl_gn   drops TCP
   TCP 150.10.20.1       open         *3      261      266        0       0   0
   TCP 150.10.20.2       -            *3        0        0        0       0   0
  Rings:
   bn: 1  rn: 888  locvrt ma: 4000.7000.fff1 Buff Ring888          fwd: 0
   bn: 1  RN: 666  local  ma: 4000.0c48.2e80 Channel4/2            fwd: 261
   bn: 1  RN: 88   remote ma: 4000.4000.fff1 TCP 150.10.20.1       fwd: 322
   bn: 1  RN: 250  remote ma: 4000.300f.7c09 TCP 150.10.20.1       fwd: 0

Explorers: ------- input -------             ------- output -------
         spanning  all-rings     total      spanning  all-rings     total
Ch4/2           0          0         0             0          1         1

  Local: fastswitched 0         flushed 0         max Bps 256000

         rings      inputs         bursts         throttles output drops
         Ch4/2           0              0                 8            0

Dans la sortie de commande de show source-bridge :

  • Les commandes de puissance parent des incréments quand l'interface n'obtient pas une mémoire tampon pour un paquet entrant.

  • Les commandes de puissance ripostent que les incréments dans les corrélations de sortie de commande d'interfaces d'exposition à l'des coups manqués ripostent que des incréments dans la sortie de commande de shows buffer. Le pool de mémoire tampon approprié peut être accordé.

Conversations connexes de la communauté de soutien de Cisco

Le site Cisco Support Community est un forum où vous pouvez poser des questions, répondre à des questions, faire part de suggestions et collaborer avec vos pairs.


Informations connexes


Document ID: 14620