Qualidade de Serviço (QoS) : Prevenção de congestionamento QoS

Compreendendo os Contadores de Pacotes na Saída do Comando show policy-map interface

1 Julho 2009 - Tradução Manual
Outras Versões: Versão em PDFpdf | Tradução por Computador (28 Julho 2013) | Inglês (15 Fevereiro 2008) | Feedback

Índice

Introdução
Pré-requisitos
      Requisitos
      Componentes Utilizados
      Convenções
O Que é Congestionamento?
Qual é a Diferença entre "Pacotes" e "Pacotes Correspondentes"?
Como os Números de Conversação são Alocados?
Confirmação da Política de Serviço
Discussões relacionadas da comunidade de suporte da Cisco

Introdução

Este documento explica como interpretar a saída do comando show policy-map interface, que pode ser usada para monitorar os resultados de uma política de serviço criada com a interface de linha de comando (CLI) de QoS (Quality of Service) modular (MQC).

Pré-requisitos

Requisitos

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

Componentes Utilizados

Este documento não se restringe a versões de software e hardware específicas.

As informações apresentadas 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. Se a sua rede estiver em um ambiente de produção, esteja ciente do impacto potencial de qualquer comando antes de utilizá-lo.

Nota: No Cisco IOS® Software Release 12.1T, os pacotes exibidos nas saídas dos comandos listados neste documento compreendem todos aqueles que correspondem a determinada classe. Entretanto, no Cisco IOS Software Release 12.1, somente os pacotes enfileirados durante o congestionamento são contados e exibidos na saída desses mesmos comandos.

Convenções

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

O Que é Congestionamento?

Para entender como interpretar o comando show policy-map interface, é necessário antes entender o conceito de congestionamento.

Conceitualmente, congestionamento é definido pelo guia de configuração do Cisco IOS Software como: "Durante períodos de congestionamento da transmissão na interface de saída, os pacotes chegam mais rápido do que a interface é capaz de enviá-los".

Em outras palavras, normalmente o congestionamento ocorre quando uma interface de entrada rápida alimenta uma interface de saída relativamente lenta. Um ponto de congestionamento comum é o roteador de uma filial com uma porta Ethernet voltada para a LAN e uma porta serial voltada para a WAN. Os usuários no segmento de LAN geram 10 Mbps de tráfego, o qual é alimentado em uma T1 com 1,5 Mbps de largura de banda.

Funcionalmente, o congestionamento é definido como o preenchimento do anel de transmissão na interface. Um anel é uma estrutura de controle de buffer especial. Toda interface tem um par de anéis: um de recepção para receber pacotes e outro de transmissão para transmitir pacotes. O tamanho dos anéis varia de acordo com a controladora da interface e com a largura de banda da interface ou do circuito virtual (VC). Por exemplo, utilize o comando show atm vc {vcd} para exibir o valor do anel de transmissão em um adaptador de porta ATM PA-A3. Consulte Compreensão e Ajuste do Valor de tx-ring-limit para obter mais informações.

7200-1# show atm vc 3
ATM5/0.2: VCD: 3, VPI: 2, VCI: 2
VBR-NRT, PeakRate: 30000, Average Rate: 20000, Burst Cells: 94
AAL5-LLC/SNAP, etype:0x0, Flags: 0x20, VCmode: 0x0
OAM frequency: 0 second(s)
PA TxRingLimit: 10
InARP frequency: 15 minutes(s)
Transmit priority 2
InPkts: 0, OutPkts: 0, InBytes: 0, OutBytes: 0
InPRoc: 0, OutPRoc: 0
InFast: 0, OutFast: 0, InAS: 0, OutAS: 0
InPktDrops: 0, OutPktDrops: 0
CrcErrors: 0, SarTimeOuts: 0, OverSizedSDUs: 0
OAM cells received: 0
OAM cells sent: 0
Status: UP 

O Cisco IOS, também denominado processador da Camada 3 (L3), e o driver de interface utilizam o anel de transmissão ao mover pacotes para a mídia física. Os dois processadores colaboram desta forma:

  • A interface transmite os pacotes de acordo com a taxa de interface ou com uma taxa de modelagem.

  • A interface mantém uma fila de hardware ou um anel de transmissão, onde armazena os pacotes que aguardam transmissão no cabo físico.

  • Quando a fila do hardware ou o anel de transmissão é preenchido, a interface faz uma pressão contrária explícita no sistema do processador L3. A interface notifica o processador L3 para interromper o desenfileiramento de pacotes para o anel de transmissão da interface porque esse anel está cheio. O processador L3 agora armazena os pacotes excedentes nas filas L3.

  • Quando a interface envia os pacotes no anel de transmissão e esvazia o anel, ela dispõe novamente de buffers suficientes para armazenar os pacotes. Ela alivia a pressão contrária, e o processador L3 retira da fila os novos pacotes para a interface.

O aspecto mais importante desse sistema de comunicação é que a interface reconhece que o seu anel de transmissão está cheio e acelera o recebimento de novos pacotes vindos do sistema do processador L3. Assim, quando a interface está congestionada, a decisão de descarte muda de uma decisão aleatória do tipo último a entrar/primeiro a ser descartado na fila FIFO (first in, first out) do anel de transmissão para uma decisão diferenciada baseada em políticas de serviço de nível IP implementadas pelo processador L3.

Qual é a Diferença entre "Pacotes" e "Pacotes Correspondentes"?

Em seguida, você precisará compreender quando o seu roteador utiliza as filas L3, uma vez que as políticas de serviço se aplicam somente aos pacotes armazenados nessas filas.

Esta tabela ilustra quando os pacotes entram na fila L3. Os pacotes gerados localmente são sempre comutados por processo e entregues à fila L3 antes de serem encaminhados ao driver de interface. Os pacotes comutados rapidamente e comutados pelo CEF (Cisco Express Forwarding) são entregues diretamente ao anel de transmissão e são colocados na fila L3 somente quando esse anel está cheio.

Tipo de Pacote

Congestionamento

Sem Congestionamento

Pacotes gerados localmente, incluindo pings e pacotes Telnet

Sim

Sim

Outros pacotes comutados por processo

Sim

Sim

Pacotes comutados rapidamente ou pelo CEF

Sim

Não

Este exemplo mostra essas diretrizes aplicadas à saída do comando show policy-map interface (os quatro contadores principais estão em negrito):

7206# show policy-map interface atm 1/0.1
 ATM1/0.1: VC 0/100 -
  Service-policy output: cbwfq (1283)
    Class-map: A (match-all) (1285/2)
      28621 packets, 7098008 bytes
      5 minute offered rate 10000 bps, drop rate 0 bps
      Match: access-group 101 (1289)
      Weighted Fair Queueing
        Output Queue: Conversation 73
        Bandwidth 500 (kbps) Max Threshold 64 (packets)
        (pkts matched/bytes matched) 28621/7098008
        (depth/total drops/no-buffer drops) 0/0/0
    Class-map: B (match-all) (1301/4)
      2058 packets, 148176 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: access-group 103 (1305)
      Weighted Fair Queueing
        Output Queue: Conversation 75
        Bandwidth 50 (kbps) Max Threshold 64 (packets)
        (pkts matched/bytes matched) 0/0
        (depth/total drops/no-buffer drops) 0/0/0
    Class-map: class-default (match-any) (1309/0)
      19 packets, 968 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: any  (1313)

Esta tabela define os contadores em negrito:

Contador

Explicação

28.621 pacotes, 7.098.008 bytes

O número de pacotes que atendem aos critérios da classe. Esse contador é incrementado independentemente de a interface estar ou não congestionada.

(pacotes correspondentes/bytes correspondentes) 28621/7098008

O número de pacotes que atendem aos critérios da classe durante o congestionamento da interface. Em outras palavras, o anel de transmissão da interface estava cheio, e o driver e o sistema do processador L3, em conjunto, enfileiraram os pacotes excedentes nas filas L3, às quais a política de serviço se aplica. Os pacotes que são comutados por processo passam sempre pelo sistema de enfileiramento L3 e, portanto, incrementam o contador de "pacotes correspondentes".

Mapa de classes: B (match-all) (1301/4)

Esses números definem uma ID interna utilizada com a MIB (Base de Informações de Gerenciamento) do CISCO-CLASS-BASED-QOS-MIB. Eles não são mais exibidos na saída do comando show policy-map nas versões atuais do Cisco IOS.

taxa oferecida de 0 bps, taxa de descarte de 0 bps em 5 minutos

Utilize o comando load-interval para alterar esse valor e torná-lo mais instantâneo. O valor mínimo é 30 segundos; entretanto, as estatísticas exibidas na saída de show policy-map interface são atualizadas a cada 10 segundos. Como o comando fornece efetivamente um instantâneo em um momento específico, é possível que as estatísticas não reflitam um aumento temporário no tamanho da fila.

Sem congestionamento, não é necessário enfileirar os pacotes excedentes. Com o congestionamento, os pacotes, incluindo os comutados pelo CEF e os comutados rapidamente, podem ser colocados na fila L3. Consulte novamente a definição de congestionamento no guia de configuração do Cisco IOS: "Se você utilizar recursos de gerenciamento do congestionamento, os pacotes acumulados em uma interface serão enfileirados até que ela esteja livre para enviá-los; em seguida, eles serão programados de acordo com a prioridade atribuída e o mecanismo de enfileiramento configurado para a interface".

Normalmente, o contador de "pacotes" é bem maior que o de "pacotes correspondentes". Se os valores dos dois contadores forem praticamente iguais, é porque a interface recebe um grande número de pacotes comutados por processo ou está muito congestionada no momento. Essas duas condições deverão ser investigadas para garantir o encaminhamento eficiente dos pacotes.

Como os Números de Conversação são Alocados?

Esta seção explica como o roteador aloca números de conversão para as filas criadas quando a política de serviço é aplicada.

Router# show policy-map interface s1/0.1 dlci 100
 Serial1/0.1: DLCI 100 -
 output : mypolicy
  Class voice
   Weighted Fair Queueing
       Strict Priority
       Output Queue: Conversation 72
         Bandwidth 16 (kbps) Packets Matched 0
        (pkts discards/bytes discards) 0/0
  Class immediate-data
   Weighted Fair Queueing
       Output Queue: Conversation 73
         Bandwidth 60 (%) Packets Matched 0
         (pkts discards/bytes discards/tail drops) 0/0/0
         mean queue depth: 0
         drops: class  random   tail     min-th   max-th   mark-prob
                0      0        0        64       128      1/10
                1      0        0        71       128      1/10
                2      0        0        78       128      1/10
                3      0        0        85       128      1/10
                4      0        0        92       128      1/10
                5      0        0        99       128      1/10
                6      0        0        106      128      1/10
                7      0        0        113      128      1/10
                rsvp   0        0        120      128      1/10
  Class priority-data
   Weighted Fair Queueing
       Output Queue: Conversation 74
         Bandwidth 40 (%) Packets Matched 0 Max Threshold 64 (packets)
         (pkts discards/bytes discards/tail drops) 0/0/0
  Class class-default
   Weighted Fair Queueing
       Flow Based Fair Queueing
       Maximum Number of Hashed Queues 64  Max Threshold 20 (packets)

A classe class-default é a classe padrão à qual o tráfego será direcionado, se ele não satisfizer os critérios de correspondência de outras classes cujas políticas estão definidas no mapa de políticas. O comando fair-queue permite que você especifique o número de filas dinâmicas nas quais os fluxos IP são classificados. Opcionalmente, o roteador alocará um número padrão de filas derivado da largura de banda da interface ou do VC. Os valores aceitos em ambos os casos são uma potência de dois, em um intervalo de 16 a 4.096.

Esta tabela lista os valores padrão das interfaces e dos PVCs (circuitos virtuais permanentes) ATM:

Número Padrão de Filas Dinâmicas como uma Função da Largura de Banda da Interface

Intervalo de Largura de Banda

Número de Filas Dinâmicas

Menor ou igual a 64 kbps

16

Maior que 64 kbps e menor ou igual a 128 kbps

32

Maior que 128 kbps e menor ou igual a 256 kbps

64

Maior que 256 kbps e menor ou igual a 512 kbps

128

Maior que 512 kbps

256

Número Padrão de Filas Dinâmicas como uma Função da Largura de Banda do PVC ATM

Intervalo de Largura de Banda

Número de Filas Dinâmicas

Menor ou igual a 128 kbps

16

Maior que 128 kbps e menor ou igual a 512 kbps

32

Maior que 512 kbps e menor ou igual a 2000 kbps

64

Maior que 2000 kbps e menor ou igual a 8000 kbps

128

Maior que 8000 kbps

256

Com base no número de filas reservadas para WFQ (Weighted Fair Queuing), o Cisco IOS atribui um número de fila ou de conversação, conforme mostrado nesta tabela:

Número de Conversação / Fila

Tipo de Tráfego

1 - 256

Filas de tráfego baseadas no fluxo geral. O tráfego não correspondente a uma classe criada pelo usuário corresponderá à classe class-default e a uma das filas baseadas em fluxo.

257 - 263

Reservado para o protocolo CDP (Cisco Discovery Protocol) e para os pacotes marcados com um flag interno de alta prioridade.

264

Fila reservada para a classe de prioridade (classes configuradas com o comando priority). Procure o valor "Strict Priority" da classe na saída de show policy-map interface. A fila de prioridade utiliza uma ID de conversação igual ao número de filas dinâmicas mais oito.

265 e superior

Filas para classes criadas pelo usuário.

Confirmação da Política de Serviço

Execute estes passos se precisar testar o contador de "pacotes correspondentes" e a sua política de serviço:

  1. Simule um congestionamento com um ping estendido utilizando um tamanho grande de ping e um grande número de pings. Além disso, tente baixar um arquivo grande de um servidor FTP (File Transfer Protocol). O arquivo constitui dados de "interferência" e preenche a largura de banda da interface.

  2. Reduza o tamanho do anel de transmissão da interface com o comando tx-ring-limit. A redução desse valor acelera o uso da QoS no Cisco IOS Software.

    interface ATMx/y.z point-to-point
    ip address a.b.c.d M.M.M.M
    PVC A/B
    tx-ring-limit <size>
    service-policy output test
  3. Especifique o tamanho como o número de pacotes para os 2600 e 3600 Series Routers ou como o número de partículas de memória para os 7200 e 7500 Series Routers.

  4. Verifique se o fluxo de tráfego corresponde ao parâmetro de entrada ou de saída de sua política. Por exemplo, o download de um arquivo a partir de um servidor FTP gerará congestionamento na direção de recebimento porque o servidor envia frames grandes MTU e o PC cliente retorna confirmações (ACKs) pequenas.


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.


Document ID: 10107