Routeurs : Routeurs à services d'agrégation de la gamme Cisco ASR 1000

La mémoire du routeur de la gamme ASR 1000 dépannent le guide

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

Introduction

Ce document décrit comment vérifier la mémoire système et dépanner les questions relatives de mémoire sur le Routeurs à services d'agrégation de la gamme Cisco ASR 1000 (ASR1K).

Contribué par Vishnu Asok et Girish Devgan, ingénieurs TAC Cisco.

Conditions préalables

Conditions requises

Cisco vous recommande de prendre connaissance des rubriques suivantes :

  • Logiciel Cisco IOS XE version 2
  • ASR CLI

Remarque: Vous pourriez avoir besoin d'un permis spécial afin d'ouvrir une session au shell de Linux sur le routeur de gamme 1001 ASR.

Composants utilisés

Les informations contenues dans ce document sont basées sur les versions de matériel et de logiciel suivantes :

  • Toutes les Plateformes ASR1K
  • Toutes les releases de Logiciel Cisco IOS XE version 2 qui prennent en charge la plate-forme ASR1K

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.

Aperçu d'affichage de mémoire ASR

Avec la plupart des Plateformes articulées autour d'un logiciel de routeur, la majorité des processus de logiciel interne sont exécutées dans la mémoire de Cisco IOS®. La plate-forme ASR1K introduit une architecture logicielle distribuée qui déplace beaucoup de responsabilités du système d'exploitation (de SYSTÈME D'EXPLOITATION) hors du processus IOS. L'IOS en cette architecture, qui était précédemment responsable de presque toutes les exécutions internes, fonctionne maintenant en tant qu'un de beaucoup de processus de Linux. Ceci permet à d'autres processus de Linux pour partager la responsabilité du fonctionnement du routeur. 

L'ASR1K exécute IOS-XE, pas l'IOS traditionnel. Dans IOS-XE, un composant de Linux exécute le noyau, et l'IOS fonctionne en tant que démon, qui ci-après est référé comme IOSd (IOS-démon). Ceci crée une condition que la mémoire soit séparé entre le kernel Linux et l'exemple d'IOSd.

La mémoire qui est séparée entre IOSd et le reste du système est réparée à de démarrage et ne peut pas être modifiée. Pour un système 4-GB, IOSd est alloué approximativement 2 Go, et pour un système 8-GB, l'IOSd est alloué approximativement 4 Go (la Redondance de logiciel étant désactivé).

Puisque l'ASR1K a une architecture 64-bit, n'importe quel pointeur qui est en chaque structure de données dans le système consomme le double la quantité de mémoire une fois comparé aux Plateformes simple-CPU traditionnelles (8 octets au lieu de 4 octets). Le 64-bit addressing permet à l'IOS de surmonter la limite de la mémoire adressable 2-GB d'IOS, qui lui permet pour mesurer aux millions d'artères. 

Remarque: Assurez-vous que vous avez la mémoire suffisante disponible avant que vous lanciez toutes les nouvelles caractéristiques. Cisco recommande que vous ayez au moins la mémoire vive dynamique du Go 8 si vous recevez la table de routage entière de Protocole BGP (Border Gateway Protocol) quand la Redondance de logiciel est activée afin d'empêcher l'épuisement de mémoire.

Allocation de mémoire sous le groupe de lsmpi_io

Le pool mémoire partagé par Linux de l'interface de coup de volée de mémoire (LSMPI) est utilisé afin de transférer des paquets du processeur d'expédition vers le processeur d'artère. Ce pool mémoire est découpé à l'initialisation de routeur dans les mémoires tampons préaffectées, par opposition au pool de processeurs, où IOS-XE alloue des blocs de mémoire dynamiquement. Sur la plate-forme ASR1K, le groupe de lsmpi_io a peu de mémoire disponible ? généralement moins de 1000 octets ? qui est normale. Cisco recommande que vous désactiviez la surveillance du groupe LSMPI par les applications d'administration réseau afin d'éviter des fausses alertes.

ASR1000# show memory statistics
           Head    Total(b)    Used(b)    Free(b)   Lowest(b)  Largest(b)
Processor 2C073008  1820510884  173985240  1646525644  1614827804  1646234064
lsmpi_io  996481D0  6295088     6294120    968     968     968

S'il y a des questions dans le chemin LSMPI, le compteur d'échouer de xmit de périphérique semble incrémenter dans cette sortie de commande (une certaine sortie omise) :

ASR1000-1# show platform software infrastructure lsmpi driver
LSMPI Driver stat ver: 3
Packets:
        In: 674572
       Out: 259861
Rings:
        RX: 2047 free    0    in-use    2048 total
        TX: 2047 free    0    in-use    2048 total
    RXDONE: 2047 free    0    in-use    2048 total
    TXDONE: 2047 free    0    in-use    2048 total

Buffers:
        RX: 7721 free    473  in-use    8194 total
Reason for RX drops (sticky):
    Ring full        : 0
    Ring put failed  : 0
    No free buffer   : 0
    Receive failed   : 0
    Packet too large : 0
    Other inst buf   : 0
    Consecutive SOPs : 0
    No SOP or EOP    : 0
    EOP but no SOP   : 0
    Particle overrun : 0
    Bad particle ins : 0
    Bad buf cond     : 0
    DS rd req failed : 0
    HT rd req failed : 0
Reason for TX drops (sticky):
    Bad packet len   : 0
    Bad buf len      : 0
    Bad ifindex      : 0
    No device        : 0
    No skbuff        : 0
    Device xmit fail : 0
    Device xmit rtry : 0
    Tx Done ringfull : 0
    Bad u->k xlation : 0
    No extra skbuff  : 0
<snip>

Utilisation de mémoire

L'ASR1K comporte ces éléments fonctionnels dans son système :

  • Processeur d'artère de la gamme ASR 1000 (RP)
  • La gamme ASR 1000 a encastré le processeur de service (ESP)
  • Processeur d'interface de STATION THERMALE de la gamme ASR 1000 (SIP)

En soi, il est exigé pour surveiller l'utilisation de mémoire par chacun de ces processeurs dans un environnement de production.

Les processeurs de contrôle exécutent le Logiciel Cisco IOS XE version 2 qui se compose d'un noyau de Linux et d'un ensemble commun de programmes utilitaires niveau du système d'exploitation, qui inclut le Cisco IOS qui exécute comme processus utilisateur sur la carte RP.

Vérifiez l'utilisation de mémoire sur IOS-XE

Sélectionnez la commande brief de show platform software status control-processor afin de surveiller l'utilisation de mémoire sur le RP, l'ESP, et le SIP. L'état du système doit être identique, en vue de des aspects tels que la configuration et le trafic de caractéristique, alors que vous comparez l'utilisation de mémoire. 

ASR1K# show platform software status control-processor brief 
<snip>

Memory (kB)
Slot Status   Total    Used (Pct)     Free (Pct) Committed (Pct)
RP0 Healthy  3907744  1835628 (47%)  2072116 (53%)  2614788 (67%)
ESP0 Healthy  2042668  789764 (39%)  1252904 (61%)  3108376 (152%)
SIP0 Healthy  482544   341004 (71%)   141540 (29%)   367956 (76%)
SIP1 Healthy  482544   315484 (65%)   167060 (35%)   312216 (65%)

Remarque: La mémoire commise est une évaluation de combien de RAM vous avez besoin afin de garantir que le système n'est jamais hors de la mémoire (OOM) pour cette charge de travail. Normalement, la mémoire d'overcommits de noyau. Par exemple, quand vous exécutez un malloc 1-GB, rien ne se produit vraiment. Vous recevez seulement la mémoire-sur-exigence vraie quand vous commencez à utiliser cette mémoire allouée, et seulement autant que vous utilisez.

Chaque processeur répertorié dans la sortie précédente pourrait signaler l'état comme sain, l'avertissement, ou essentiel, qui dépend de la quantité de mémoire disponible. Si les processeurs affichent l'état comme avertissement ou essentiel l'uns des, sélectionnez la commande de process<slot> de logiciel de plate-forme de moniteur afin d'identifier le contributeur supérieur.

ASR1K# monitor platform software process ?
  0   SPA-Inter-Processor slot 0
  1   SPA-Inter-Processor slot 1
  F0  Embedded-Service-Processor slot 0
  F1  Embedded-Service-Processor slot 1
  FP  Embedded-Service-Processor
  R0  Route-Processor slot 0
  R1  Route-Processor slot 1
  RP  Route-Processor
  <cr>

Vous pourriez être incité à placer le terminal-type avant que vous puissiez exécuter la commande de monitor platform software process :

ASR1K# monitor platform software process r0
Terminal type 'network' unsupported for command
Change the terminal type with the 'terminal terminal-type' command.

Le terminal type est placé au réseau par défaut. Afin de placer le terminal type approprié, sélectionnez la commande de terminal terminal-type :

 Terminal-type VT100 ASR1K#TERMINAL

Une fois que le terminal type correct est configuré, vous pouvez sélectionner la commande de monitor platform software process (une certaine sortie omise) :

ASR1000# monitor platform software process r0
top - 00:34:59 up  5:02,  0 users,  load average: 2.43, 1.52, 0.73
Tasks: 136 total,   4 running, 132 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.8%us,  2.3%sy,  0.0%ni, 96.8%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   2009852k total,  1811024k used,   198828k free,   135976k buffers
Swap:        0k total,        0k used,        0k free,  1133544k cached

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND

25956 root      20   0  928m 441m 152m R  1.2 22.5   4:21.32 linux_iosd-imag
29074 root      20   0  106m  95m 6388 S  0.0  4.9   0:14.86 smand
24027 root      20   0  114m  61m  55m S  0.0  3.1   0:05.07 fman_rp
25227 root      20   0 27096  13m  12m S  0.0  0.7   0:04.35 imand
23174 root      20   0 33760  11m 9152 S  1.0  0.6   1:58.00 cmand
23489 root      20   0 23988 7372 4952 S  0.2  0.4   0:05.28 emd
24755 root      20   0 19708 6820 4472 S  1.0  0.3   3:39.33 hman
28475 root      20   0 20460 6448 4792 S  0.0  0.3   0:00.26 psd
27957 root      20   0 16688 5668 3300 S  0.0  0.3   0:00.18 plogd
14572 root      20   0  4576 2932 1308 S  0.0  0.1   0:02.37 reflector.sh
<snip>

Remarque: Afin de trier la sortie dans l'ordre décroissant de l'utilisation de mémoire, shift de presse + M.

Vérifiez l'utilisation de mémoire sur IOSd

Si vous notez que le processus de linux_iosd-imag tient exceptionnellement un grand nombre de mémoire dans la sortie de commande active du monitor platform software process RP, concentrez vos procédures de dépannage sur l'exemple d'IOSd. Il est probable qu'un processus spécifique dans le thread d'IOSd ne libère pas la mémoire. Dépannez les questions relatives de mémoire dans l'exemple d'IOSd la même manière que vous dépannez toutes les Plateformes articulées autour d'un logiciel d'expédition, telles que le Cisco 2800, 3800, ou gamme 3900.

ASR1K# monitor platform software process rp active
PID USER   PR  NI VIRT  RES  SHR S %CPU %MEM TIME+  COMMAND
25794 root  20  0 2929m 1.9g 155m R 99.9 38.9 1415:11 linux_iosd-imag
23038 root   20  0 33848 13m  10m S  5.9  0.4  30:53.87 cmand
9599 root   20  0  2648 1152 884 R  2.0  0.0  0:00.01 top
<snip>

Sélectionnez la commande triée par mémoire de processus d'exposition afin d'identifier le processus de problème :

ASR1000# show process memory sorted
Processor Pool Total: 1733568032 Used: 1261854564 Free: 471713468
lsmpi_io Pool Total: 6295088 Used: 6294116 Free: 972

PID TTY  Allocated   Freed       Holding    Getbufs    Retbufs  Process

522  0 1587708188  803356800   724777608  54432      0        BGP Router
234  0 3834576340 2644349464  232401568  286163388  15876  IP RIB Update
0    0  263244344   36307492  215384208  0          0        *Init

Remarque: Ouvrez une valise TAC si vous avez besoin de l'assistance afin de dépanner ou identifier si l'utilisation de mémoire est légitime.

Vérifiez l'utilisation TCAM sur un ASR1K

La Classification du trafic est l'une des fonctions les plus fondamentales trouvées dans les Routeurs et des Commutateurs. Beaucoup d'applications et de caractéristiques exigent que les périphériques d'infrastructure fournissent cette Différenciation de services pour différents utilisateurs basés sur des conditions requises de qualité. Le procédé de Classification du trafic devrait être rapide, de sorte que le débit du périphérique ne soit pas considérablement dégradé. La plate-forme ASR1K utilise la 4ème génération de la mémoire associative ternaire (TCAM4) à cet effet.

Afin de déterminer le nombre total de cellules TCAM disponibles sur la plate-forme, et le nombre d'entrées libres qui demeurent, sélectionnez cette commande :

ASR1000# show platform hardware qfp active tcam resource-manager usage 

Total TCAM Cell Usage Information
----------------------------------
Name                        : TCAM #0 on CPP #0
Total number of regions     : 3
Total tcam used cell entries : 65528
Total tcam free cell entries : 30422
Threshold status            : below critical limit

Remarque: Cisco recommande que vous vérifiiez toujours l'état de seuil avant que vous apportiez toutes les modifications aux stratégies de Listes d'accès ou de Qualité de service (QoS), de sorte que le TCAM ait les cellules libres suffisantes disponibles afin de programmer les entrées.

Si le processeur d'expédition exécute en critique bas sur les cellules libres TCAM, l'ESP pourrait générer des logs semblables à ceux affichés ci-dessous et pourrait tomber en panne. S'il n'y a aucune Redondance, ceci a comme conséquence l'interruption raffic.

%CPPTCAMRM-6-TCAM_RSRC_ERR: SIP0: cpp_sp: Allocation failed because of insufficient
TCAM resources in the system.

%CPPOSLIB-3-ERROR_NOTIFY: SIP0: cpp_sp:cpp_sp encountered an error -
Traceback=1#s7f63914d8ef12b8456826243f3b60d7 errmsg:7EFFC525C000+1175

Vérifiez l'utilisation de mémoire sur QFP

En plus de la mémoire physique, il y a également mémoire reliée au processeur d'écoulement de Quantum (QFP) ASIC qui est utilisé afin d'expédier des structures de données, qui inclut des données telles que le Forwarding Information Base (FIB) et les stratégies QoS. La quantité de mémoire vive dynamique disponible pour le QFP ASIC est réparée, avec des plages de 256 Mo, de 512 Mo et de 1 Go, dépendants sur le module de l'ESP.

Sélectionnez la commande active de statistiques d'exmem d'infrastructure de qfp de matériel de show platform afin de déterminer l'utilisation de mémoire d'exmem. La somme de la mémoire pour IRAM et mémoire vive dynamique qui est utilisée donne toute la mémoire QFP qui est en service.

BGL.I.05-ASR1000-1# show platform hardware qfp active infra exmem statistics user

Type: Name: IRAM, CPP: 0
  Allocations  Bytes-Alloc  Bytes-Total  User-Name
  ------------------------------------------------------
  1            115200       115712       CPP_FIA
Type: Name: DRAM, CPP: 0
  Allocations  Bytes-Alloc  Bytes-Total  User-Name
  -----------------------------------------------------
  4            1344          4096         P/I
  9            270600        276480       CEF
  1            1138256       1138688      QM RM
  1            4194304       4194304      TCAM
  1            65536         65536        Qm 16

L'IRAM est la mémoire d'instruction pour le logiciel QFP. Au cas où la mémoire vive dynamique serait épuisée, IRAM disponible peut être utilisé. Si l'IRAM exécute en critique bas sur la mémoire, vous pourriez voir ce message d'erreur :

%QFPOOR-4-LOWRSRC_PERCENT: F1: cpp_ha: QFP 0 IRAM resource low - 97 percent depleted
%QFPOOR-4-LOWRSRC_PERCENT: F1: cpp_ha: QFP 0 IRAM resource low - 98 percent depleted 

Afin de déterminer le processus qui consomme la majeure partie de la mémoire, sélectionnez la commande d'utilisateur de statistiques d'exmem d'active de qfp de matériel de show platform infra :

ASR1000# show platform hardware qfp active infra exmem statistics user

Type: Name: IRAM, CPP: 0
  Allocations  Bytes-Alloc  Bytes-Total  User-Name
  ----------------------------------------------------
  1            115200       115712       CPP_FIA

Type: Name: DRAM, CPP: 0
Allocations  Bytes-Alloc  Bytes-Total  User-Name
  ----------------------------------------------------
  4          1344         4096        P/I
  9          270600       276480       CEF
  1          1138256      1138688     QM RM
  1          4194304      4194304     TCAM
  1          65536        65536        Qm 16

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.


Document ID: 116777