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

Troubleshooting Problemas de Memória

19 Setembro 2015 - Tradução por Computador
Outras Versões: Versão em PDFpdf | Tradução Manual (22 Maio 2008) | Inglês (24 Agosto 2015) | Feedback


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


Índice


Introdução

Este documento explica os sintomas e as possíveis causas de falha de alocação de memória (MALLOCFAIL) e oferece diretrizes para o Troubleshooting de problemas de memória.

Pré-requisitos

Requisitos

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

Componentes Utilizados

As informações neste documento são baseadas nestas versões de software e hardware:

  • Todas as versões de software do � do Cisco IOS

  • Todos os Cisco Routers

    Nota: Este documento não se aplica ao Switches do Cisco catalyst que utiliza CatOS ou plataformas MGX.

As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a sua rede estiver ativa, certifique-se de que entende o impacto potencial de qualquer comando.

Convenções

Consulte as Convenções de Dicas Técnicas da Cisco para obter mais informações sobre convenções de documentos.

Qual é a falha de alocação de memória?

A falha de alocação de memória significa qualquer um:

  • O roteador usou toda a memória disponível (permanente ou temporariamente) ou

  • A memória foi fragmentada em partes tão pequenas que o roteador não consegue encontrar um bloco disponível que possa ser utilizado. Isso pode acontecer com a memória do processador (usada pelo Cisco Internet Operating System [IOS]) ou com a memória do pacote (usada por pacotes de entrada ou de saída).

Sintomas

Os sintomas de falha na alocação de memória incluem, mas não se limitam a:

  • O console ou o mensagem de registro: "%SYS-2-MALLOCFAIL: Falha na alocação de memória de 1.028 bytes de 0x6015EC84, processador de conjunto, alinhamento 0.

  • Sessões Telnet recusadas

  • O comando show processor memory é exibido independentemente do comando que você digita em um console

  • Nenhuma saída de alguns comandos show

  • “Baixo mensagens na memória”

  • O mensagem do console “incapaz de criar o EXEC - nenhuma memória ou processos demais”

  • Suspensão de roteador, nenhuma resposta de console.

“Incapaz de criar erro EXEC” ou quando o console não responder

Quando um roteador é baixo na memória, em alguns casos não é possível ao telnet ao roteador. Neste momento, é importante conseguir o acesso à porta de Console recolher dados para pesquisar defeitos. Ao conectar à porta de Console, contudo, você pôde ver este:

%% Unable to create EXEC - no memory or too many processes

Se você vê a mensagem acima, há nem sequer uma memória disponível suficiente a permitir uma conexão de console. Há pisa você pode tomar para permitir a captação de dados através do console. Se você ajuda o roteador livre alguma memória, o console pode responder, e você pode então capturar os dados necessários do roteador para pesquisar defeitos.

Nota: Se o Border Gateway Protocol (BGP) é configurado no roteador, você deve consultar para conseguir o roteamento ótimo e reduzir o consumo de memória do BGP para reduzir o consumo de memória relativo a este processo.

Estas são as etapas para que tentar capture dados usando a porta de Console sob muito condições de memória baixa:

  1. Desligue o LAN e os cabos MACILENTOS das relações no roteador. Isto fará com que o roteador pare de passar pacotes.

  2. Verifique novamente o console. É você capaz de obter uma resposta e de executar comandos? Após alguns momentos, deve haver bastante memória disponível para permitir que o console responda.

  3. Recolha a informação necessária do modo de exec privilegiado (router-). Pelo menos, você quer recolher as saídas completas dos comandos seguintes: mostre totais do atribuir-processo da memória (ou mostre o resumo de memória se os totais do atribuir-processo da memória da mostra não estão disponíveis), mostre o registo, e se possível, mostre o Suporte técnico.

  4. Depois que você recolheu os dados necessários, reconecte todo o LAN e links MACILENTOS e continue a monitorar a utilização de memória do roteador.

Entendendo as mensagens de erro

Ao emitir um comando show logging, você deverá ver algo semelhante a:

%SYS-2-MALLOCFAIL: Memory allocation of [X] bytes failed from
0x6015EC84, pool [Pool], alignment 0 -Process= 
"[Process]" ipl= 6, pid=5

[X] = quantidade de bytes que o roteador tentou alocar, mas não conseguiu encontrar memória livre suficiente para tanto

[Pool] indica se a memória do processador ('Processador de conjunto') ou a memória do pacote ('pool I/O') está afetada. Os roteadores de ponta (7000, 7500 Series) têm seus buffers na memória de acesso aleatório dinâmica (DRAM) principal, de modo que uma ausência de memória de pacote será relatada como "processador de conjunto". As placas da série 7200 e VIP (Versatile Interface Processor) também podem informar erros de PCI de pool ('pool PCI') referentes à memória de pacotes.

[Processo] é o processo que foi afetado pela falta de memória.

Possíveis causas

Na memória do processador ("processador de conjunto" em todas as plataformas).

O tamanho da memória não suporta a imagem do Cisco IOS Software

Erro de vazamento de memória

Grande quantidade de memória utilizada para processos normais ou anormais

Problema ou bug de fragmentação de memória

Falha na alocação de memória no processo = <nível de interrupção>

Problemas conhecidos

Edição 70x0 conhecida ao carregar o grande Cisco IOS Software do flash ou do Netboot

Entrada IP e descoberta dos CiscoWorks UT

Na memória de pacote ("E/S" ou " Processador" em roteadores de ponta, "PCI" no 7200 Series e placas VIP)

Sem memória compartilhada suficiente para as interfaces

Erro de vazamento de buffer

Roteador com baixa execução na memória rápida

Troubleshooting

Problema relacionado à segurança

Geralmente, os erros MALLOCFAIL são causados por uma questão de segurança, tal como um worm ou um vírus que operam-se em sua rede. Esta é especialmente provável ser a causa se não houve umas alterações recentes à rede, tal como um upgrade do Cisco IOS do roteador. Normalmente, uma alteração na configuração, como a adição de linhas às listas de acesso, pode minimizar os efeitos desse problema. A página dos Avisos e Recomendação de Segurança dos produtos da Cisco contém a informação na detecção das causas mais provável e das ações alternativas específicas.

Para a informação adicional, refira:

O tamanho da memória não suporta a imagem do Cisco IOS Software

Primeiramente, verifique a área do software da transferência (clientes registrados somente) para ver se há o tamanho mínimo de memória para o conjunto de recursos e a versão que você está executando. Certifique-se que é suficiente. Os requisitos de memória no cisco.com são os tamanhos recomendados mínimo para o funcionamento correto do roteador na maioria de redes de empresa. Os requisitos reais de memória variam de acordo com protocolos, tabelas de roteamento, e testes padrão de tráfego.

Erro de vazamento de memória

Se você tem a saída de um comando show memory allocating-process totals, de um comando show memory summary, ou do comando show technical-support (no modo enable) de seu dispositivo Cisco, você pode usar o Output Interpreter (clientes registrados somente) para indicar problemas potenciais e reparos. Para utilizar o Output Interpreter (somente clientes registrados), você precisa ser um cliente registrado, ter feito o login e ter o JavaScript habilitado.

Um escape de memória ocorre quando um processo pede ou atribui a memória e esquece-a então livrar (para liberar) a memória quando é terminado com essa tarefa. Como resultado, o bloco de memória fica reservado até o roteador ser recarregado. Ao longo do tempo, os blocos de memória estão atribuídos cada vez mais por esse processo até que não haja nenhuma memória livre disponível. Dependendo da severidade da condição de memória baixa nesse ponto, a única opção possível é recarregar o roteador para torná-lo operacional novamente.

Esse é um bug do Cisco Internet Operating System (IOS). Para obter livrou dela, elevação à versão a mais atrasada em seu trem de versão (por exemplo, se você está executando o Cisco IOS Software Release 11.2(14), elevação 11.2(x) à imagem a mais atrasada.

Se isto não resolve o problema, ou se você não quer promover o roteador, inscreva o comando show processes memory em intervalos regulares durante um período de tempo (por exemplo, cada poucos horas ou dias segundo se você tem um rápido ou um escape lento). Verifique para ver se a memória livre continua a diminuir e é retornado nunca. A taxa na qual a memória livre desaparece depende da freqüência com que o evento ocorre que leva ao vazamento. Como a memória nunca é liberada, você pode rastrear o processo que está usando essa memória criando instantâneos da memória durante um período. Mantenha na mente que os processos diferentes atribuem e memória desalocada como necessária, assim que você verá diferenças, mas como o escape continua, você deve ver um processo que está consumindo continuamente mais memória (nota: é normal para alguns processos, tais como o roteador do Border Gateway Protocol (BGP) ou do Open Shortest Path First (OSPF), usar mais de uma megabyte de memória; isto não significa que estão escapando).

Para identificar o processo que está consumindo mais memória, compare a coluna Holding do comando show processes memory ao longo do intervalo de tempo. Às vezes, você pode ver claramente que um processo está mantendo vários megabytes de memória. Às vezes são necessários vários snapshots para localizar o culprit. Quando uma quantidade significativa de memória foi perdida, recolha um comando show memory allocating-process totals ou um comando show memory summary para o Troubleshooting adicional. Então contacte o centro de assistência técnica da Cisco (TAC) e forneça a informação que você recolheu, junto com um sumário do Suporte técnico da mostra do roteador.

A ferramenta Output Interpreter permite que você receba uma análise do comando show memory allocating-process totals ou mostre a saída do resumo de memória.

A tabela dá as primeiras três linhas do comando show memory summary output:

Router>show memory summary 

            Head       Total (b)   Used (b)  Free (b)   Lowest (b)  Largest (b)
Processor   60AB4ED0   5550384     2082996   3467388    3464996     3454608
I/O         40000000   16777216    1937280   14839936   14839936    14838908

O total = a quantidade total de memória disponível após a imagem do sistema carrega e constrói suas estruturas de dados.

Usado = a quantidade de memória atribuída atualmente.

Free = a quantidade de memória atualmente livre.

O mais baixo = a quantidade mais baixa de memória livre gravada pelo roteador desde que foi carreg por último.

Largest = o maior bloco de memória livre atualmente disponível.

O comando show memory allocating-process totals contém a mesma informação que as primeiras três linhas do comando show memory summary.

Eis o que você pode saber sobre a saída do comando show processes memory:

Router>show processes memory 
Total: 3149760, Used: 2334300, Free: 815460

PID   TTY   Allocated    Freed      Holding    Getbufs    Retbufs   Process
0     0     226548       1252       1804376    0          0         *Initialization*
0     0     320          5422288    320        0          0         *Scheduler*
0     0     5663692      2173356    0          1856100    0         *Dead*
1     0     264          264        3784       0          0         Load Meter
2     2     5700         5372       13124      0          0         Virtual Exec
3     0     0            0          6784       0          0         Check heaps
4     0     96           0          6880       0          0         Pool Manager
5     0     264          264        6784       0          0         Timers
6     0     2028         672        8812       0          0         ARP Input
7     0     96           0          6880       0          0         SERIAL A' detect
8     0     504          264        7024       0          0         ATM ILMI Input
9     0     0            0          6784       0          0         ILMI Process
10    0     136          0          6920       0          0         M32_runts pring
11    0     136          0          6920       0          0         Call drop procs
12    0     340          340        12784      0          0         ATMSIG Timer
13    0     445664       442936     13904      0          0         IP Input
14    0     2365804      2357152    17992      0          0         CDP Protocol
15    0     528          264        7048       0          0         MOP Protocols
16    0     188          0          9972       0          0         IP Background
17    0     0            1608       6784       0          0         TCP Timer
18    0     5852116      0          14236      0          0         TCP Protocols

Alocado = a quantidade total de bytes que foram alocados pelo processo desde que o roteador foi inicializado.

Liberados = a quantidade total de bytes que foram liberados por esse processo.

Guardar = a quantidade total de byte guardada atualmente por este processo. Esta é a coluna mais importante para Troubleshooting, já que ela mostra a quantidade real de memória atribuída a este processo. A espera é necessariamente igual ao Alocado menos o Liberado porque alguns processos alocam um bloco de memória que é depois devolvido para o pool livre por outro processo.

O processo do *Dead*

O processo do *dead* não é um processo real. Está lá esclarecer a memória atribuída sob o contexto de um outro processo que termine. A memória atribuída a este processo é recuperada pelo núcleo e retornada ao conjunto de memória pelo roteador próprio se necessário. Esta é a memória dos punhos da maneira IO. Um bloco de memória está considerado como mortos se o processo que criou o bloco retira (já não sendo executado). Cada bloco mantém-se a par do endereço e do pid do processo que o criou. Durante a memória periódica que registra, se o processo que o planificador encontra de um bloco pid não combina o o processo que o bloco recordado, o bloco é marcado como mortos.

Consequentemente, a memória marcada como a pertença para processar o *Dead* foi atribuída sob o controle de um processo que já não fosse executado. É normal ter um pedaço significativo da memória em tal estado. Aqui está um exemplo:

A memória é atribuída ao configurar o Network Address Translation (NAT) durante uma sessão de Telnet. Essa memória é esclarecida sob o processo de telnet (“EXEC virtual”). Uma vez que este processo é terminado, a memória para a configuração de NAT é ainda dentro uso. Isto é mostrado usando o processo do *dead*.

Você pode ver sob que contexto a memória foi atribuída usando o comando show memory dead, sob “que” coluna:

Router#show memory dead 
               Head   Total(b)    Used(b)    Free(b)  Lowest(b) Largest(b) 
      I/O    600000    2097152     461024    1636128    1635224    1635960 
  
          Processor memory 
  
 Address  Bytes Prev.    Next     Ref  PrevF   NextF   Alloc PC  What 
1D8310       60 1D82C8   1D8378     1                  3281FFE   Router Init 
2CA964       36 2CA914   2CA9B4     1                  3281FFE   Router Init 
2CAA04      112 2CA9B4   2CAAA0     1                  3A42144   OSPF Stub LSA RBTree 
2CAAA0       68 2CAA04   2CAB10     1                  3A420D4   Router Init 
2ED714       52 2ED668   2ED774     1                  3381C84   Router Init 
2F12AC       44 2F124C   2F1304     1                  3A50234   Router Init 
2F1304       24 2F12AC   2F1348     1                  3A420D4   Router Init 
2F1348       68 2F1304   2F13B8     1                  3381C84   Router Init 
300C28      340 300A14   300DA8     1                  3381B42   Router Init 

Se um escape de memória está detectado, e o processo do *Dead* parece ser esse que consome a memória, inclua um show memory dead na informação fornecida ao tac Cisco.

Grande quantidade de memória utilizada para processos normais ou anormais

Essa é uma das causas mais difíceis de serem verificadas. O problema é caracterizado por uma grande quantidade de memória livre, mau um pequeno valor na coluna "Menor". Nesse caso, um evento normal ou anormal (por exemplo, uma grande instabilidade de roteamento) faz com que o roteador use, de modo incomum, uma grande quantidade de memória do processador em um curto período de tempo, durante o qual ocorre uma falta de memória. Durante esse período, o roteador relata um MALLOCFAIL. É possível que logo depois, a memória seja liberada e o problema desapareça (por exemplo, a rede se estabiliza). A falta de memória também pode ocorrer devido a uma combinação de fatores, como:

  • um vazamento da memória que consumiu um grande volume de memória e, em seguida, uma instabilidade da rede reduzirão a memória livre a zero

  • o roteador não possui memória suficiente para começar, mas o problema é descoberto somente durante um raro evento de rede.

Se o roteador não foi recarregado, incorpore o comando show memory allocating-process totals (ou o resumo de memória da mostra se os totais do atribuir-processo da memória da mostra não estão disponíveis) e o olhar nas primeiras três linhas. As mensagens de registro podem fornecer dicas sobre qual processo estava consumindo muita memória:

Se grande a utilização de memória era devido à:

  • evento normal, a solução é instalar mais memória.

  • evento raro ou anormal, corrija o problema relacionado. Você pode então decidir comprar a memória extra para o “seguro futuro”.

Problema ou bug de fragmentação de memória

Esta situação significa que um processo consumiu uma grande quantidade de memória de processador e liberado então a maioria ou toda a ela, deixar fragmentos da memória ainda atribuiu ou por este processo, ou por outros processos essa memória atribuída durante o problema. Se o mesmo evento ocorrer várias vezes, a memória poderá se fragmentar em pequenos blocos, até o ponto em que todos os processos que requeiram um grande bloco de memória não sejam capazes de obter a quantidade de memória necessária. Isso pode afetar a operação do roteador ao ponto de não ser possível conectá-lo e receber um prompt se a memória estiver muito fragmentada.

Esse problema é caracterizado por um valor baixo na coluna "Largest" (Maior) (abaixo de 20.000 bytes) do comando show memory, mas por um valor suficiente na coluna "Freed" (Liberado) (1MB ou mais), ou por outra grande disparidade entre as duas colunas. Isto pode acontecer quando o roteador fica muito lento na memória, pois não há nenhuma rotina de desfragmentação no IOS.

Se suspeitar de fragmentação da memória, encerre algumas interfaces. Isso pode liberar os blocos fragmentados. Se funcionar, a memória está se comportando normalmente e você só precisa adicionar mais memória. Se fechar relações não ajuda, ele pode ser um erro. O melhor curso de ação é contactar seu representante de suporte Cisco com a informação que você recolheu.

Falha de alocação de memória a processo = nível de interrupção

Esta situação pode ser identificada pelo processo no Mensagem de Erro. Se o processo é alistado como o level> do <interrupt, como no exemplo seguinte, a seguir na falha de alocação de memória está sendo causado por um problema de software.

"%SYS-2-MALLOCFAIL: Memory allocation of 68 bytes failed from 0x604CEF48, 
pool Processor, alignment 0-Process= <interrupt level>, ipl= 3"

Esse é um bug do Cisco Internet Operating System (IOS). Você pode usar o Bug Toolkit (clientes registrados somente) para procurar por um Bug ID de Software de harmonização para esta edição. Uma vez que o Bug de Software foi identificado, promova a uma versão de Cisco IOS Software que contenha o reparo para resolver o problema.

Prostração da memória devido à transferência por lista de acesso de usuário

As Listas de acesso podem consumir muita memória quando são usadas na pela base do usuário. As Listas de acesso são demasiado grandes ser classificadas como o mini Access Control Lists (ACLs) e são compiladas agora como o turbocompressor ACL. Cada vez que isto ocorre, o processo TACL tem que retroceder dentro e processar o ACL novo. Isto pode conduzir ao tráfego que está sendo permitido ou negado com base no tempo de compilação e no tempo de processamento disponível.

Os ACL compilados têm que ser enviados para baixo ao XCM. Quando há somente um espaço limitado disponível e uma vez a memória é corrida dela, os mensagens do console estão considerados e os começos do defragger da memória.

Esta é a solução:

  • Uso de ACL concisos, menos número de motores do controle de aplicativo (ACE) que compilarão como mini ACL, e que se reduzirão no consumo de memória e na potência de processamento para a compilação.

  • Uso dos ACL predefinidos no roteador que são providos através do filterID do atributo RADIUS.

Problemas conhecidos

Problema 70x0 conhecido ao carregar o grande Cisco IOS Software do flash ou do Netboot

Quando o Processador de Rota (RP) 7000 inicializa uma imagem no Flash, o RP primeiro carrega a imagem ROM e, em seguida, a imagem flash na memória. O RP velho tem somente o 16 MB da memória, e as versões de empreendimento do Cisco IOS Software Release mais tarde do que a versão 11.0 é maior do que 8 MB quando descompactado. Portanto, quando você carrega a imagem a partir do ROM e, depois, do Flash, o 7000 RP pode ter a memória esgotada ou a memória pode se tornar fragmentada durante o processo de inicialização para que o roteador tenha mensagens de erro relacionadas à memória.

A solução é permitir a bota rápida do registro de configuração de modo que o RP carregue somente um subconjunto mínimo da imagem do Cisco IOS Software na ROM, e carrega então o Cisco IOS Software completo do flash. Para habilitar a reinicialização rápida, configure o registro para 0x2112. Isso também acelerará o processo de inicialização.

Entrada IP e descoberta dos CiscoWorks UT

Usar a característica de descoberta UT dos CiscoWorks pode fazer com que a quantidade de memória livre torne-se muito pequena em algum de seu Roteadores. O comando show proc memory pode indicar muita memória sustentada pelo processo entrado “IP”. Este é um caso particular da grande quantidade de memória usada para o problema dos processos normais ou anormais para o processo entrado “IP”, que pode igualmente conduzir a uma edição da fragmentação de memória, se a condição de memória baixa faz com que a memória seja fragmentada.

A característica de descoberta UT faz com que a estação de gerenciamento de rede mande uma varredura de ping para todo o IPs em cada sub-rede descoberta. As edições da memória são causadas pelo tamanho crescente do cache de switching rápido IP no roteador, porque as entradas de cache novas são criadas para cada destino novo. Desde que a máscara usada para as entradas no esconderijo depende de como é sub-rede, a presença de um endereço que usa uma máscara de bit 32 (por exemplo, um endereço de loopback) em uma rede principal faz com que todas as entradas para que essa rede use uma máscara de bit 32. Isto conduz a um número enorme de entradas de cache a ser criadas, usando uma grande quantidade de memória.

A melhor solução é desabilitar a descoberta UT. Você pode fazer este seguindo as etapas abaixo:

  1. Vá a C:\Program Files\CSCOpx\etc\cwsi\ANIServer.properties.

  2. Adicionar “UTPingSweep=0".

  3. Reinicie o ANI.

Isto pode fazer com que a tabela de rastreamento de usuário falte alguns servidores finais, ou vá expirado (esta pôde ser uma edição com um outro aplicativo Cisco chamado a ferramenta de registro de usuário, que confia no UT), mas não afeta a descoberta de campus que usa somente o tráfego SNMP. O CEF switching pode igualmente melhorar esta situação (com CEF, o cache IP é criado da tabela de roteamento na inicialização). Refira como escolher o melhor caminho de switching pelo roteador para a sua rede para obter mais informações sobre do CEF e de outros trajetos de switching disponíveis.

Há muitos outros aplicativos que podem conduzir às situações de memória baixa similares. Na maioria dos casos, a causa de raiz do problema é o não o roteador, mas o aplicativo próprio. Normalmente você deve poder impedir aquelas tempestades de pacote de informação verificando a configuração do aplicativo.

Sem memória compartilhada suficiente para as interfaces

Algum Roteadores (por exemplo, 2600, 3600, e 4000 Series) exige uma quantidade mínima de memória de I/O apoiar determinadas interfaces processador.

Se o roteador está sendo executado baixo na memória compartilhada, mesmo depois um reload, removendo fisicamente as relações resolve o problema.

Em 3600 Series Router, o iomem i/o-memory-percentage do tamanho de memória do comando global configuration pode ser usado para readjudicar o porcentagem de DRAM para usar-se para a memória de E/S e a memória de processador. Os valores permitidos para i/o-memory-percentage são 10, 15, 20, 25 (o padrão), 30, 40, e 50 pés. Um mínimo de 4 MB da memória é exigido para a memória de E/S.

A fim pesquisar defeitos este problema, refira:

Erro de vazamento de buffer

Se você tem a saída de um comando show buffers ou de um comando show technical-support (no modo enable) de seu dispositivo Cisco, você pode usar o Output Interpreter (clientes registrados somente) para indicar problemas potenciais e reparos. Para utilizar o Output Interpreter (somente clientes registrados), você precisa ser um cliente registrado, ter feito o login e ter o JavaScript habilitado.

Quando um processo é terminado com um buffer, o processo deve livrar o buffer. Um vazamento de buffer ocorre quando o código esquece processar um buffer, ou esquece livrá-lo depois que é feito com o pacote. Em consequência, o pool de buffers continua a crescer enquanto os pacotes são colados cada vez mais nos bufferes.

Você pode identificar um vazamento de buffer usando o comando show buffers. Alguns dos conjuntos de buffer públicos devem ser anormalmente grandes com poucos buffer livre. Depois que um reload, você pode ver que o número de buffer livre nunca se aproxima o número de bufferes total.

A ferramenta Output Interpreter permite que você receba uma análise da saída de bufferes da mostra.

No exemplo abaixo, os bufferes médios são afetados. O comando show buffers indica que quase 8094 bufferes estão sendo usados e não livrados (8122 totais menos 28 livres):

Public buffer pools: Small buffers, 104 bytes (total 50, permanent 50): 
     50 in free list (20 min, 150 max allowed)
     403134 hits, 0 misses, 0 trims, 0 created
     0 failures (0 no memory)
Middle buffers, 600 bytes (total 8122, permanent 200):
     28 in free list (10 min, 300 max allowed)
     154459 hits, 41422 misses, 574 trims, 8496 created
Big buffers, 1524 bytes (total 50, permanent 50):
     50 in free list (5 min, 150 max allowed)
     58471 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, 100 max allowed)
     0 hits, 0 misses, 0 trims, 0 created
     0 failures (0 no memory)
Large buffers, 5024 bytes (total 0, permanent 0)
     0 in free list (0 min, 10 max allowed) 
     0 hits, 0 misses, 0 trims, 0 created  
     0 failures (0 no memory)
Huge buffers, 18024 bytes (total 0, permanent 0): 
     0 in free list (0 min, 4 max allowed)
     0 hits, 0 misses, 0 trims, 0 created  
     0 failures (0 no memory) 

Este é um Bug do Software da Cisco IOS. Elevação à versão a mais atrasada em seu trem de versão fixar Bug de vazamento de Buffer conhecido (por exemplo, se você está executando o Cisco IOS Software Release 11.2(14), elevação 11.2(x) à imagem a mais atrasada. Se isto não ajuda, ou se não é possível promover o roteador, emita os comandos seguintes para o conjunto de problema quando o roteador é baixo na memória. Estes comandos indicarão a informação adicional sobre o índice dos bufferes:

  • show buffer old: mostra a bufferes alocado mais de um velho minuto

  • show buffer pool (meio pequeno- - grande - verybig - grande - enorme): mostra um sumário dos bufferes para o pool especificado

  • descarga do show buffer pool (meio pequeno- - grande - verybig - grande - enorme): mostra um dump HEX/ASCII de todos os bufferes no uso de um dado conjunto.

Refira pesquisando defeitos vazamentos de buffer para detalhes adicionais.

Roteador com baixa execução na memória rápida

Este problema é específico ao 7500 Series. Se o roteador é executado fora da memória “rápida”, usará seu RAM dinâmica principal (DRAM) pelo contrário. Nenhuma ação é exigida.

IPFAST-4-RADIXDELETE: Erro que tenta suprimir do [IP_address] da entrada do prefixo/[dec] ([hex] previsto, obtido o [hex])

O IPFAST-4-RADIXDELETE: O erro que tenta suprimir do [IP_address] da entrada do prefixo/Mensagem de Erro do [dec] ([hex] previsto, obtido o [hex]) indica que a tabela rápida do cache de switching do Roteadores na memória é corrompida. Quando o roteador tenta cancelar a tabela de cache sob o normal que processa ou o comando clear ip cache está inscrito, o sistema não suprime das entradas devido à corrupção de memória. Quando o roteador não suprime de tal entrada, a mensagem IPFAST-4-RADIXDELETE está relatada.

A fim resolver uma edição da corrupção de memória da tabela de cache, uma repartição dura do roteador é precisada. Uma repartição regravar as estruturas de memória de sistema e para permitir que o cache rápido reconstrua corrupção-livre.

%SYS-2-CHUNKEXPANDFAIL: Não podia expandir o pool do pedaço para o Bitmap TACL. Nenhuma memória disponível

A razão para o %SYS-2-CHUNKEXPANDFAIL: Não podia expandir o pool do pedaço para o Bitmap TACL. Nenhum Mensagem de Erro disponível da memória é que não há bastante memória de processador deixada para crescer o pool do pedaço especificado. É causado possivelmente por um processo que se comporte anormalmente.

A ação alternativa é capturar periodicamente (segundo a frequência da edição) a saída destes comandos de modo que a utilização de memória do roteador possa ser monitorada:

  • mostre a memória dos processos classificada

  • mostre estatísticas da memória

  • mostre totais do atribuir-processo da memória

Resumo de Troubleshooting

Falhas de alocação de memória do “processador” de conjunto

Siga estas etapas.

  1. Verifique os requisitos de memória para ver se há seu versão ou conjunto de recursos de Cisco IOS Software Release.

  2. Se possível, elevação à versão de Cisco IOS Software Release a mais atrasada em seu trem de versão.

  3. Verifique para ver se há uma grande quantidade de memória usada para processos normais ou anormais. Se for necessário, adicionar mais memória.

  4. Verifique se esta seja um escape ou uma fragmentação (vazamento de buffer em roteadores de produto avançado).

  5. Recolha a informação relevante e contacte o TAC.

Falhas de Alocação de Conjunto de Memória de "E/S" ("Processador" em roteadores de ponta, "PCI" no 7200 Series)

Siga estes passos:

  1. Verifique as requisições de memória compartilhada (veja não bastante memória compartilhada para as relações).

  2. Se possível, elevação à versão de Cisco IOS Software Release a mais atrasada em seu trem de versão.

  3. Determine que pool de buffers é afetado, recolha a informação relevante, e contacte o tac Cisco.

Informações a serem coletadas se você abrir um pedido de serviço de TAC

Se você ainda precisa o auxílio após ter seguido os passos de Troubleshooting acima e o quer abrir um pedido do serviço TAC (clientes registrados somente), seja certo incluir a informação seguinte:
  • Troubleshooting executado antes da abertura do caso
  • show technical-support output (em modo habilitado, se possível) – várias capturas para mostrar como o uso de memória do roteador foi alterado com o tempo
  • mostrar registro de saída ou capturas de tela do console, se disponível
  • mostre totais do atribuir-pool da memória ou mostre o resumo de memória - capturas múltiplas para mostrar como o uso do roteador da memória mudou ao longo do tempo
Você pôde precisar de usar as técnicas “incapazes de criar no erro EXEC” ou quando o console não responder para obter a informação. As capturas múltiplas da informação podem ser necessárias para determinar a causa do problema. Porque há diversos tipos de escapes de memória, o coordenador TAC pode precisar a informação adicional uma vez que o tipo de escape de memória é identificado. Se você suspeita um problema de fragmentação de memória, inclua por favor:
  • mostre a memória livre
  • mostre a memória mais grande
Se você suspeita um vazamento de buffer, inclua por favor:
  • show buffer old
  • show buffer pool (meio pequeno- - grande - verybig - grande - enorme): para o conjunto de problema. Por exemplo, se você suspeita um escape no pool médio, inclua o comando show buffer pool middle
  • pacote do show buffer pool (meio pequeno- - grande - verybig - grande - enorme): para o conjunto de problema. Por exemplo, se você suspeita um escape no pool médio, inclua o comando show buffer pool middle packet
Você pode anexar a informação a seu caso transferindo arquivos pela rede o que usa a ferramenta do pedido do serviço TAC (clientes registrados somente). Se você não pode alcançar a ferramenta do pedido do serviço, você pode enviar a informação em um anexo de Email a attach@cisco.com com seu número de caso na linha de assunto de sua mensagem para anexar a informação relevante para seu caso.

Nota: Por favor não recarregue manualmente ou ciclo de energia o roteador antes de recolher a informação acima a menos que exigido para pesquisar defeitos problemas de memória como este pode fazer com que a informação importante seja perdida que é precisada determinando a causa de raiz do problema. Seu coordenador TAC pode sugerir recarregar o roteador, e recolher a informação adicional depois que o reload como parte do Troubleshooting, segundo a causa.

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: 6507