Software Cisco IOS e NX-OS : Software Cisco IOS versões 12.0 Mainline

Solucionando Problemas de Acessos Artificiais, Erros de Alinhamento e Interrupções Artificiais

22 Maio 2008 - Tradução Manual
Outras Versões: Versão em PDFpdf | Tradução por Computador (29 Julho 2013) | Inglês (2 Agosto 2006) | Feedback


Interativo: Este documento oferece uma análise personalizada do seu dispositivo Cisco.


Índice

Introdução
Pré-requisitos
     Requisitos
     Componentes Usados
     Convenções
Acessos Artificiais
     Causa
     Manuseio do Cisco IOS Software
     Verificando Erros de Acesso Artificial
     Corrigindo Erros de Acessos Artificiais
Erros de Alinhamento
     Causa
     Verificando Erros de Alinhamento
     Corrigindo Erros de Alinhamento
Interrupções Artificiais
Informações a Serem Coletadas se uma Solicitação de Serviço do TAC for Criada
Discussões relacionadas da comunidade de suporte da Cisco
Informações Relacionadas

Introdução

A finalidade deste documento é descrever três tipos de erros: acessos artificiais, erros de alinhamento e interrupções artificiais, que podem ser encontrados em dispositivos que executam o Cisco IOS® Software.

Se você tiver a saída de um comando show alignment a partir do dispositivo da Cisco, poderá usar para exibir possíveis problemas e correções. Para usar , você deve ser um cliente registrado, estar conectado e possuir o JavaScript habilitado.

Pré-requisitos

Requisitos

Não existem requisitos específicos para este documento.

Componentes Usados

Este documento não está restrito a versões específicas de software e de hardware.

Convenções

Para obter mais informações sobre convenções em documentos, consulte as Convenções de Dicas Técnicas da Cisco.

Acessos Artificiais

O acesso artificial é uma tentativa do Cisco IOS Software de acessar a memória em um local restrito. Veja abaixo um exemplo do registro do sistema para um acesso artificial:

%ALIGN-3-SPURIOUS: Spurious memory access made at 0x60968C44 reading 0x0
%ALIGN-3-TRACE: -Traceback= 60968C44 60269808 602389D8 00000000 00000000 00000000
00000000 00000000

Causa

O acesso artificial ocorre quando um processo tenta ler a parte mais baixa da região da memória de 16 KB. Essa parte da memória é reservada e nunca deve ser acessada. Uma operação de leitura nessa região da memória é geralmente causada quando um valor não existente é retornado para uma função do software ou, em outras palavras, quando um ponteiro nulo é transmitido para uma função.

Manuseio do Cisco IOS Software

Dependendo da plataforma, o Cisco IOS Software processa acessos artificiais de maneiras diferentes. Nas plataformas em que isso é possível, o código do do Cisco IOS Software processa esses acessos inválidos retornando um valor de zero e registrando o evento. Se não houver suporte para isso na plataforma, o roteador travará com um erro SegV. Como qualquer acesso artificial é inapropriado, o acesso artificial sempre aponta para um bug.

Verificando Erros de Acesso Artificial

Acessos artificiais são contados e registrados, se possível, pelo Cisco IOS Software. Essas informações estão disponíveis com o comando show alignment . As informações de retorno de monitoramento são necessárias para determinar a causa e a correção dos acessos artificiais.

Observação: O comando show alignment é oculto e não documentado. O comando também não é suportado em todas as plataformas (apenas em processadores de Computação de conjunto de instruções reduzido [RISC]). Uma saída de exemplo do comando show alignment é fornecida abaixo:

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#

Corrigindo Erros de Acessos Artificiais

Os erros de acesso artificial são sempre causados por um bug do Cisco IOS Software. Para corrigi-los, faça a atualização para a versão mais recente no treinamento de versão (por exemplo, se estiver executando o Cisco IOS Software versão 11.2(14), atualize para a imagem mais recente de 11.2(x). Se isso não resolver o problema ou se não for possível atualizar o roteador, entre em contato com o TAC da Cisco. Ao abrir um caso para reportar acessos artificiais, inclua o seguinte:

  • saída do comando show alignment

  • saída do comando show tech-support

  • registros do sistema relevantes

Erros de Alinhamento

Este é um exemplo da saída de registro do sistema para um erro de alinhamento:

%ALIGN-3-CORRECT: Alignment correction made at 0x60262478 reading/writing 0x60A9FF5C

Causa

Os erros de alinhamento são causados por leituras e gravações mal-alinhadas. Por exemplo, uma leitura de dois bytes na qual o endereço de memória não seja um múltiplo par de dois bytes é um erro de alinhamento. Erros de alinhamento são causados por um bug de software.

Verificando Erros de Alinhamento

Os erros de alinhamento são relatados no log e registrados pelo roteador. A saída do comando show alignment fornece um registro desses erros junto com retornos de monitoramento potencialmente úteis. Os retornos de monitoramento de erros de alinhamento podem ser geralmente decodificados para revelar a função que causa os problemas de alinhamento.

Observação: O comando show alignment é oculto e não documentado. O comando também não é suportado em todas as plataformas (apenas roteadores de produto avançado podem suportá-lo). Uma saída de exemplo do comando show alignment é fornecida abaixo:

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#

Corrigindo Erros de Alinhamento

Os erros de alinhamento podem geralmente ser corrigidos pelo software e, nesse caso, não causarão um travamento. A corrreção de erros de alinhamento, no entanto, consome recursos do processador e podem resultar em problemas de desempenho. Se houver erros de alinhamento contínuos, o roteador poderá gastar a maior parte do tempo corrigindo-os, aumentando a utilização da CPU. Esses erros são corrigidos na interrupção.

Interrupções Artificiais

As interrupções artificiais não são iguais aos acessos de memória artificiais.

Uma interrupção artificial ocorre quando uma interrupção desnecessária é obtida por um pacote já processado, possivelmente devido a uma race condition ou uma inicialização incorreta das rotinas de manuseio da interrupção. Não há impacto discernível no comportamento do roteador devido às interrupções artificiais. Elas podem ser seguramente ignoradas desde que não haja um número cada vez maior de interrupções artificiais, junto com alguns pacotes descartados ou com desempenho piorado. Caso contrário, a causa raiz deverá ser investigada.

O comando show align fornece informações sobre acessos de memória artificiais, mas não sobre interrupções artificiais. As únicas informações sobre interrupções artificiais que podem ser obtidas a partir do sistema estão na saída show stacks, em que há um contador que conta quantas ocorreram.

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

Interrupções Artificiais: 29
         

É possível que as interrupções artificiais sejam causadas por hardware ou software defeituoso. Na maior parte do tempo, isso não produz efeito colateral no comportamento esperado do roteador ou do switch. Elas são contadas apenas para fins de monitoramento.

Algumas interrupções artificiais não geram muito utilização da CPU. Se esse for o único sintoma que esteja ocorrendo em um roteador ou um switch, e todo o resto estiver funcionando conforme o esperado (nenhum descarte de pacote, etc.), então as interrupções artificiais poderão ser ignoradas.

Os roteadores Cisco baseados no processador de 68k (ou seja, o Cisco 1000, 1600, 2500, 4000 e 7000 (RP)) podem ser configurados para gerar um dump central se um determinado limiar de interrupções artificiais for atingido.

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

Para obter mais informações sobre geração de dump central, consulte Criando Dumps Centrais. Essas informações poderão ser solicitadas pelo Centro de Assistência Técnica se houver degradação de desempenho devido a interrupções artificiais. Se esse for o caso, deverá haver um número alto e em elevação de interrupções artificiais, junto com a descarte de alguns pacotes ou desempenho degradado.

Informações a Serem Coletadas se uma Solicitação de Serviço do TAC for Criada

Se você ainda precisar de assistência depois de seguir as etapas para solução de problemas acima e desejar criar uma solicitação de serviço (clientes registrados somente) com o TAC da Cisco, lembre-se de anexar as seguintes informações ao caso para solucionar problemas de acessos artificiais, erros de alinhamento e interrupções artificiais:

  • Solução de problemas realizada antes da criação da solicitação de serviço

  • a saídashow technical-support (no modo habilitado, se for possível)

  • a saída show alignment (se já não estiver incluída na saída show technical-support)

  • Saída do comando show log ou capturas do console, se disponíveis

Anexe os dados coletados à sua solicitação de serviço em formato de texto simples, não zipado (.txt). Você pode anexar informações à sua solicitação de serviço fazendo upload dessas informações com a Ferramentas de Solicitação de Serviço do TAC (clientes registrados somente) . Se não for possível acessar a Ferramenta de Solicitação de Serviço, você poderá anexar as informações relevantes à sua solicitação de serviço, enviando-as para attach@cisco.com, com o número da solicitação de serviço na linha de assunto de sua mensagem.

Observação: Não recarrege nem ligue/desligue manualmente o roteador antes de coletar as informações acima, a menos que seja necessário solucionar problemas de acessos artificiais, erros de alinhamento e interrupções artificiais, pois isso pode causar perda de informações importantes e necessárias à determinação da causa raiz do problema.


Discussões relacionadas da comunidade de suporte da Cisco

A Comunidade de Suporte da Cisco é um fórum onde você pode perguntar e responder, oferecer sugestões e colaborar com colegas.


Informações Relacionadas


Document ID: 15103