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.
Le but de ce document est de décrire trois types d’erreurs - des accès erratiques, des erreurs de cadrage, et de fausses interruptions - qui peuvent être produites sur des périphériques exécutant le logiciel de Cisco IOSMD.
Si vous disposez de la sortie d'une commande show alignment de votre périphérique Cisco, vous pouvez utiliser Cisco CLI Analyzer pour afficher les problèmes potentiels et les correctifs. Pour utiliser Cisco CLI Analyzer, vous devez être un client inscrit, être connecté et avoir activé JavaScript.
Aucune spécification déterminée n'est requise pour ce document.
La commande n'est pas prise en charge sur toutes les plates-formes (uniquement dans les processeurs RISC [Low Instructions Set Computing]).
La commande show alignment a été introduite dans la version 12.3(7)T, et elle a été masquée dans les versions antérieures.
Pour plus d'informations sur les conventions des documents, référez-vous aux Conventions utilisées pour les conseils techniques de Cisco.
L’accès sécurisé est une tentative du logiciel Cisco IOS d’accéder à la mémoire dans un emplacement restreint. Voici un exemple de sortie de journal système pour un accès erroné :
%ALIGN-3-SPURIOUS: Spurious memory access made at 0x60968C44 reading 0x0 %ALIGN-3-TRACE: -Traceback= 60968C44 60269808 602389D8 00000000 00000000 00000000 00000000 00000000
Un accès erroné se produit lorsqu'un processus tente de lire à partir de la région de mémoire de 16 Ko la plus basse. Cette partie de la mémoire est réservée et ne doit jamais être consultée. Une opération de lecture dans cette région de mémoire est généralement provoquée lorsqu'une valeur non existante est retournée à une fonction dans le logiciel, ou en d'autres termes, lorsqu'un pointeur nul est passé à une fonction.
En fonction de la plate-forme, le logiciel Cisco IOS gère les accès erronés différemment. Sur les plates-formes où cela est possible, le code du logiciel Cisco IOS gère ces accès non valides en retournant une valeur de zéro et en enregistrant l'événement. Si cela n'est pas pris en charge sur la plate-forme, le routeur se bloquera avec une erreur SegV. Comme tout accès fallacieux est inapproprié, les accès fallacieux pointent toujours vers un bogue.
Les accès sécurisés sont comptés et enregistrés, si possible, par le logiciel Cisco IOS. Ces informations sont disponibles avec la commande show alignment. Les informations de retraçage sont nécessaires pour déterminer la cause et la correction des accès fallacieux.
Remarque : La commande show alignment est masquée et non documentée. La commande n'est pas non plus prise en charge sur toutes les plates-formes (seulement les processeurs RISC [Réduction Instruction Set Computing]). Un exemple de sortie de la commande show alignment est fourni ci-dessous :
Router#show alignment Alignment data for: GS Software (RSP-PV-M), Version 11.1(26.1)CC, EARLY DEPLOYMENT MAINTENANCE INTER IM SOFTWARE Compiled Thu 27-May-99 20:48 by jjgreen No alignment data has been recorded. Total Spurious Accesses 167110746, Recorded 2 Address Count Traceback 0 10474 0x6012D488 0x6020FFB4 0x601D5CE0 0 49008 0x6012D488 0x6020D25C 0x6020E744 0x602106B4 Router#
Les erreurs d'accès graves sont toujours causées par un bogue du logiciel Cisco IOS. Pour corriger cela, mettez à niveau vers la dernière version de votre série de versions (par exemple, si vous exécutez le logiciel Cisco IOS Version 11.2(14), mettez à niveau vers la dernière image 11.2(x). Si cela ne résout pas le problème ou s'il n'est pas possible de mettre à niveau le routeur, contactez le TAC Cisco. Lors de l'ouverture d'un dossier pour signaler des accès erronés, veuillez inclure les éléments suivants :
sortie de la commande show alignment
sortie de la commande show tech-support
journaux système pertinents
Voici un exemple de sortie du journal système pour une erreur d'alignement :
%ALIGN-3-CORRECT: Alignment correction made at 0x60262478 reading/writing 0x60A9FF5C
Des erreurs d'alignement sont entraînées par un mauvais alignement de lecture et écriture. Par exemple, une lecture sur deux octets où l'adresse mémoire n'est pas un multiple pair de deux octets est une erreur d'alignement. Les erreurs d'alignement sont causées par un bogue logiciel.
Les erreurs d’alignement sont signalées dans le journal et enregistrées par le routeur. La sortie de la commande show alignment fournit un enregistrement de ces erreurs ainsi que des tracés potentiellement utiles. Les retraits des erreurs d'alignement peuvent généralement être décodés pour révéler la fonction qui cause des problèmes d'alignement.
Remarque : La commande show alignment est masquée et non documentée. La commande n'est pas prise en charge sur toutes les plates-formes (seuls les routeurs haut de gamme la prennent en charge). Un exemple de sortie de la commande show alignment est fourni ci-dessous :
Router#show alignment Alignment data for: RSP Software (RSP-ISV-M), Version 11.3(3a), RELEASE SOFTWARE (fc1) Compiled Fri 01-May-98 18:28 by phanguye Total Corrections 6, Recorded 2, Reads 6, Writes 0 Initial Initial Address Count Access Type Traceback 60EF3765 3 32bit read 0x60262474 0x601AC594 0x601AC580 60EF3761 3 32bit read 0x60262478 0x601AC594 0x601AC580 No spurious memory references have been recorded. Router#
Les erreurs d'alignement peuvent généralement être corrigées par le logiciel et, dans l'affirmative, ne provoqueront pas de panne. Toutefois, la correction des erreurs d'alignement consomme des ressources processeur et peut entraîner une baisse des performances. En cas d'erreurs d'alignement continues, le routeur peut passer la majeure partie de son temps à les corriger, augmentant ainsi l'utilisation du processeur. Ces erreurs sont corrigées lors de l'interruption.
Les interruptions spurieuses ne sont pas les mêmes que les accès à la mémoire fallacieux.
Une interruption fallacieuse se produit lorsqu'une interruption inutile est déclenchée pour un paquet déjà traité, peut-être en raison d'une condition de course interne ou d'une initialisation incorrecte des routines de gestion des interruptions. Il n’y a aucun impact visible sur le comportement du routeur en raison d’interruptions fallacieuses. Ils peuvent être ignorés en toute sécurité tant qu'il n'y a pas un nombre élevé et croissant d'interruptions fallacieuses, ainsi que certains paquets abandonnés ou des performances dégradées. Sinon, la cause première doit être étudiée.
La commande show align fournit des informations sur les accès à la mémoire erronés, mais pas sur les interruptions fallacieuses. Les seules informations sur les interruptions fallacieuses qui peuvent être obtenues du système sont dans la sortie show stacks, où il existe un compteur qui compte le nombre d'interruptions survenues.
Router#show stacks Minimum process stacks: Free/Size Name 3692/4000 DHCPD Receive 4796/6000 Router Init 1904/4000 Init 3408/4000 RADIUS INITCONFIG 4228/5000 DHCP Client 2468/4000 Exec Interrupt level stacks: Level Called Unused/Size Name 3 0 3000/3000 Serial interface state change interrupt 4 54351439 1760/3000 Network interfaces 5 64181 2872/3000 Console Uart Spurious interrupts: 29
Les interruptions peuvent être causées soit par un matériel défectueux, soit par un logiciel. La plupart du temps, cela n'a aucun effet secondaire sur le comportement attendu du routeur ou du commutateur. Ils ne sont comptabilisés qu'à des fins de surveillance.
Quelques interruptions fallacieuses n'entraînent pas une utilisation importante du processeur. Si c'est le seul symptôme qui se produit sur un routeur ou un commutateur et que tout le reste fonctionne comme prévu (aucun paquet ne tombe, etc.), les interruptions fallacieuses peuvent être ignorées.
Les routeurs Cisco basés sur le processeur 68k (c'est-à-dire les routeurs Cisco 1000, 1600, 2500, 4000 et 7000 (RP)) peuvent être configurés pour générer un code de remplacement si un certain seuil d'interruptions erronées est atteint.
Router(config)#exception ? core-file Set name of core dump file crashinfo Crashinfo collection dump Set name of host to dump to flash Set the device and erase permission memory Memory leak debugging protocol Set protocol for sending core file region-size Size of region for exception-time memory pool spurious-interrupt Crash after a given number of spurious interrupts Router(config)#exception spurious-interrupt ? <1-4294967295> Spurious interrupt threshold
Pour plus d'informations sur la génération de coredump, consultez Création de dumps principaux. Ces informations peuvent être demandées par notre Centre d'assistance technique en cas de dégradation des performances due à des interruptions frauduleuses. Si tel est le cas, il devrait y avoir un nombre élevé et croissant d'interruptions fallacieuses, ainsi que des pertes de paquets ou des performances dégradées.
Si vous avez encore besoin d'assistance après avoir suivi les étapes de dépannage ci-dessus et que vous souhaitez créer une demande de service (clients enregistrés uniquement) avec le TAC Cisco, veillez à joindre les informations suivantes à votre dossier pour dépanner des accès erronés, des erreurs d'alignement et des interruptions erronées : |
---|
Veuillez joindre les données rassemblées à votre demande de service en format non compressé et texte clair (.txt). Vous pouvez joindre des informations à votre demande de service en les téléchargeant à l'aide de l'outil TAC Service Request (clients enregistrés uniquement). Si vous ne pouvez pas accéder à l'Outil de demande de service, vous pouvez joindre les informations pertinentes à votre demande de service en l'envoyant à attach@cisco.com avec votre numéro de demande de service dans la ligne d'objet de votre message. Remarque : Ne redémarrez pas manuellement le routeur ou ne le mettez pas hors tension avant de collecter les informations ci-dessus, sauf si nécessaire pour résoudre les problèmes d'accès erronés, d'erreurs d'alignement et d'interruptions erronées, car cela peut entraîner la perte d'informations importantes nécessaires pour déterminer la cause première du problème. |