Contents

Introduction

Prerequisites

Requirements

Componentes Utilizados

Informações de Apoio

Problema

Solução

Informações Relacionadas

Introduction

Este documento descreve um problema encontrado nos Cisco Catalyst 6500 Series Switches quando o limite de TCAM (Netflow Ternary Content Addressable Memory) é excedido e fornece uma solução para o problema.

Prerequisites

Requirements

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

Componentes Utilizados

As informações neste documento são baseadas nos switches Cisco Catalyst 6500 Series que executam o Supervisor Engine 720.

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.

Informações de Apoio

O Netflow é um recurso usado para coletar estatísticas sobre o tráfego que atravessa um switch. As estatísticas são armazenadas na tabela Netflow até serem exportadas pelo Netflow Data Expert (NDE). Há uma tabela de Netflow na PFC (Policy Feature Card, placa de recursos de política), bem como em cada DFC (Distributed Forwarding Card, placa de encaminhamento distribuído). Alguns recursos, como Network Address Translation (NAT), exigem que o fluxo seja processado no software inicialmente e, em seguida, acelerado por hardware. A tabela Netflow no PFC e no DFC coleta estatísticas para o tráfego que é acelerado por hardware ou comutado por fluxo.

Alguns recursos usam Netflow, como NAT e QoS (Quality of Service, Qualidade de serviço). O NAT usa o Netflow para tomar decisões de encaminhamento, enquanto o QoS usa o Netflow para monitorar os fluxos para o micropoliciamento. Com o uso do Netflow Data Export (NDE), você pode exportar essas estatísticas para um coletor externo do Netflow para analisar melhor o comportamento da rede.

O Supervisor Engine 720 pesquisa o quão completa a tabela NetFlow está em cada intervalo de pesquisa e ativa o envelhecimento agressivo quando o tamanho da tabela atinge um limite definido.

Quando a tabela está quase cheia, há novos fluxos ativos que não podem ser criados devido à falta de espaço disponível na TCAM. Neste ponto, faz sentido envelhecer mais agressivamente os fluxos menos ativos ou não ativos na tabela para criar espaço para novos fluxos. O fluxo pode ser reinserido na tabela, desde que atenda aos valores de limite de tempo e limite de pacote configurados, que serão discutidos posteriormente neste documento.

Problema

O switch Cisco Catalyst 6500 Series pode relatar este log:

EARL_NETFLOW-4-TCAM_THRLD: Netflow TCAM threshold exceeded, TCAM Utilization [[dec]%]

Esta é a saída do console que é exibida quando esse problema ocorre:

Aug 24 12:30:53: %EARL_NETFLOW-SP-4-TCAM_THRLD:

Netflow TCAM threshold exceeded, TCAM Utilization [97%]

Aug 24 12:31:53: %EARL_NETFLOW-SP-4-TCAM_THRLD:

Netflow TCAM threshold exceeded, TCAM Utilization [97%]

Solução

Conclua estes passos para avaliar e otimizar a utilização do Netflow TCAM:

1. Desative o serviço interno se estiver ativado no switch:
6500(config)#no service internal

2. Verifique os limites de hardware para o Netflow TCAM.

- Use o comando show mls netflow ip count para verificar o número de fluxos presentes no TCAM.

- Use o comando show platform hardware pfc mode para verificar o modo operacional de PFC.

Note: A capacidade para NetFlow TCAM (IPv4) para PFC3A, PFC3B e PFC3C é de 128.000 entradas. Para PFC3BXL e PFC3CXL, a capacidade é de 256.000 entradas.

3. Prepare-se para alterar a máscara de fluxo. O Netflow usa o conceito de máscaras. A máscara Netflow permite controlar o volume e a granularidade das estatísticas coletadas. Isso permite controlar o impacto nos processadores do Supervisor Engine. Quanto mais específica for a máscara usada, mais entradas da tabela Netflow serão usadas.

Por exemplo, se você configurar para que as Estatísticas sejam definidas como fluxos por endereço IP de origem da interface, você usará menos entradas do que se mantivesse fluxos por interface-destino-origem.

Se a máscara de fluxo estiver definida para o modo completo da interface, o TCAM para NetFlow poderá estourar, dependendo de quantas interfaces estão ativadas. Execute o comando show mls netflow ip count para verificar essa informação. Mesmo que você possa alterar as máscaras, o modo completo da interface fornece as estatísticas mais granulares, como informações sobre as Camadas 2, 3 e 4.

4. Verifique a máscara de fluxo atual:
6500#show mls netflow flowmask

current ip   flowmask for unicast:   if-full

current ipv6 flowmask for unicast:    null
Altere a máscara de fluxo conforme necessário (a palavra-chave interface-full flow define o máximo de entradas TCAM usadas):
6500(config)#mls flow ip ?

interface-destination         interface-destination flow keyword

interface-destination-source  interface-destination-source flow keyword

interface-full                interface-full flow keyword

interface-source              interface-source only flow keyword

5. Verifique os temporizadores de envelhecimento. Há três temporizadores diferentes para o envelhecimento de TCAM do Netflow: Normal, rápido e longo.

- O temporizador Normal é usado para limpar entradas TCAM inativas. Por padrão, qualquer entrada que não corresponda em 300 segundos é apagada.

- O temporizador Long é usado para limpar entradas que estão na tabela por mais de 1.920 segundos (32 minutos). O objetivo principal do temporizador longo é evitar as estatísticas incorretas causadas pelos contadores que são finalizados.

- O temporizador Fast, por padrão, não está ativado. Para habilitar o temporizador rápido, use o comando global mls aging fast [{time seconds} [{threshold packet-count}]]. O temporizador rápido limpa qualquer entrada que não veja o número configurado de pacotes no tempo configurado.

6500#show mls netflow aging

enable timeout  packet threshold

------ -------  ----------------

normal aging true      300         N/A

fast aging   true       32         100

long aging   true     1920         N/A

6. Altere os temporizadores de envelhecimento:
6500(config)#mls aging normal ?

<32-4092> L3 aging timeout in second

6500(config)#mls aging long ?

<64-1920> long aging timeout

6500(config)#mls aging fast ?

threshold fast aging threshold

time fast aging timeout value

6500(config)#mls aging fast threshold ?

<1-128> L3 fast aging theshold packet count

time fast aging timeout value

6500(config)#mls aging fast time ?

<1-128> L3 fast aging time in seconds

threshold fast aging threshold
Se você ativar o temporizador Fast, defina o valor para 128 segundos inicialmente. Se o tamanho do cache MLS continuar crescendo mais de 32.000 entradas, então diminua a configuração até que o tamanho do cache permaneça menor que 32.000. Se o cache continuar a crescer em mais de 32.000 entradas, diminua o temporizador de envelhecimento normal MLS. Qualquer valor de temporizador de envelhecimento que não seja um múltiplo de oito segundos é ajustado para o múltiplo mais próximo de oito segundos.
6500(config)#mls aging fast threshold 64 time 30

Informações Relacionadas

- Guia de configuração do software Catalyst 6500 versão 12.2SX

- Introdução ao Cisco IOS NetFlow - Uma visão geral técnica

- Suporte Técnico e Documentação - Cisco Systems