Contents

Introduction

Antes de Começar

Conventions

Prerequisites

Componentes Utilizados

Background

Algoritmos de gravação de buffer

Memória de pacote de recebimento

Fluxo de pacotes no ToFab BMA

Memória dos pacotes de transmissão

Fluxo de pacotes no FrFab BMA

Informações Relacionadas

Introduction

Este documento explica como ler a saída dos comandos show controller frfab queue e show controller tofab queue. Ele também oferece uma visão geral detalhada da arquitetura subjacente do Cisco 12000 Series Internet Router relacionada a essas filas especiais.

Antes de Começar

Conventions

Para obter mais informações sobre convenções de documento, consulte as Convenções de dicas técnicas Cisco.

Prerequisites

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

Componentes Utilizados

As informações neste documento são baseadas em:

- O Cisco 12000 Series Internet Router

- Todas as versões do software Cisco IOS©

As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. All of the devices used in this document started with a cleared (default) configuration. Se você estiver trabalhando em uma rede ativa, certifique-se de que entende o impacto potencial de qualquer comando antes de utilizá-lo.

Background

Cada LC em um Roteador Interno da Série Cisco 12000 possui dois tipos de memória:

- Memória de rota ou processador (RAM dinâmica - DRAM): Essa memória permite principalmente que o processador integrado execute o software Cisco IOS e armazene tabelas de roteamento de rede (Forwarding Information Base - FIB, adjacência).

- Memória de pacote (RAM dinâmica síncrona - SDRAM): A memória do pacote da placa de linha armazena temporariamente os pacotes de dados aguardando decisões de switching a serem tomadas pelo processador da placa de linha.

Este documento concentra-se exclusivamente na Memória de Pacote, que é dividida em dois bancos: ToFab e FrFab (em direção à estrutura e da estrutura). A memória ToFab é utilizada para os pacotes que chegam em uma das interfaces do LC e se encaminham até a tela, enquanto que a memória FrFab é utilizada para os pacotes que saem de uma interface do LC, partindo da tela.

As filas Tofab e Frfab são os conceitos mais importantes a se entender para solucionar com eficiência problemas de pacotes ignorados no Cisco 12000 Series Internet Router. Consulte Troubleshooting de Pacotes Ignorados e Quedas Sem Memória no Cisco 12000 Series Internet Router para obter detalhes.

Observação: "ToFab" (em direção à estrutura) e "Rx" (recebido pelo roteador) são dois nomes diferentes para a mesma coisa, assim como "FrFab" (da estrutura) e "Tx" (transmitido pelo roteador). Por exemplo, ToFab Buffer Management ASIC (BMA) é também chamado de RxBMA. Este documento usa a convenção ToFab/FrFab, mas você pode ver a nomenclatura Rx/TX usada em qualquer outro lugar.

Acesso à memória de pacotes por meio do ASIC de Gerenciamento de Buffer (BMA). O BMA fornece armazenamento em buffer de pacotes e funções de gerenciamento de fila de buffer para a placa de ingresso. Todos os pacotes passam duas vezes pela BMA - uma vez entrando e uma vez saindo. Em outras palavras, os pacotes chegam a um Módulo de interface da camada física (PLIM), levam pouco tempo nos buffers SDRAM e são, em seguida, lidos nos buffers e entregues ao módulo ASIC de interface de tela (FIA). Aqui, eles estão segmentados em células Cisco e transmitidos para a tela do Switch. Em seguida, os pacotes são recebidos do Switch Fabric pelo Fabric Interaface ASIC na placa de linha de saída. Eles são remontados, vão para os buffers SDRAM, depois para o PLIM e, finalmente, são enviados pela rede.

Algoritmos de gravação de buffer

O software Cisco IOS implementa um algoritmo de gravação de “buffer” que divide o SDRAM em buffers de vários tamanhos. O GRP e outras fontes fornecem instruções de gravação à placa de linha, que depois executa as instruções. Existem diferentes tipos de papel. Por exemplo, uma gravação simples cria um pool de buffers de mesmo tamanho, enquanto uma gravação complexa cria vários pools de tamanhos diferentes, com cada pool contendo buffers do mesmo tamanho.

Todos os buffers do mesmo tamanho estão associados em um conjunto. Um conjunto é sempre alocado para utilização de Comunicação Interprocesso (IPC). Cada QSRAM associado é atualizado com o primeiro e o último da fila, o tamanho dela, seu limiar de tamanho, os endereços de buffer associados no SDRAM e o próximo elemento da fila.

As seguintes condições seqüenciais disparam a gravação de buffer em uma placa de linha:

- Carregador de inicialização sobre o barramento de manutenção (MBUS) - Simples chamada de gravação para gravar buffers que controlem o download de imagem do software Cisco IOS.

- Imagem do software Cisco IOS em vigor - Chamada de gravação simples LC para ativar a comunicação entre processos (IPC) para que o GRP possa usar IPCs para dar aos LCs a especificação de gravação inicial. Todos os SDRAM disponíveis para gravação são regravados.

- Quando o IPC estiver funcionando – Usando IPCs, o GRP pode chamar uma gravação LC complexa diversas vezes para regravar de forma dinâmica todo o SDRAM.

- Uma configuração ou alteração manual da MTU (Maximum Transmission Unit) em uma interface faz com que a memória seja regravada. As filas FrFab são gravadas até o MTU máximo de todo o sistema, enquanto as filas ToFab são gravadas até o MTU máximo da placa de linha específica.

Observação: nós só regravamos se alterarmos o máximo de MTU para a placa de linha (filas ToFab) ou se alterarmos o máximo de MTU para todo o sistema (filas FrFab). Por exemplo, alterar o MTU de 1500 para 4470 não muda nada se já houver uma interface com MTU 4470 nessa placa de linha (filas ToFab) ou em todo o sistema (filas FrFab).

Veja o seguinte exemplo:

Router#attach 1

Entering Console for 1 Port Packet Over SONET OC-48c/STM-16 in Slot: 1

Type "exit" to end this session

Press RETURN to get started!

LC-Slot1>enable

LC-Slot1#show controllers tofab queues

Carve information for ToFab buffers

SDRAM size: 268435456 bytes, address: 30000000, carve base: 30019100

268332800 bytes carve size,  4 SDRAM bank(s), 16384 bytes SDRAM

pagesize, 2 carve(s)

max buffer data size 4544 bytes, min buffer data size 80 bytes

262140/262140 buffers specified/carved

240637152/240637152 bytes sum buffer sizes specified/carved

Qnum    Head    Tail            #Qelem  LenThresh

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

4 non-IPC free queues:

115254/115254 (buffers specified/carved), 43.96%, 80 byte data size

1       201     115454          115254  262143

81202/81202 (buffers specified/carved), 30.97%, 608 byte data size

2       115455  196656          81202   262143

41910/41910 (buffers specified/carved), 15.98%, 1568 byte data size

3       196657  238566          41910   262143

23574/23574 (buffers specified/carved), 8.99%, 4544 byte data size

4       238567  262140          23574   262143

IPC Queue:

200/200 (buffers specified/carved), 0.7%, 4112 byte data size

30      131     130             200     262143

Raw Queue:

31      0       0               0       65535

ToFab Queues:

Dest

Slot

0       0       0               0       262143

1       0       0               0       262143

2       0       0               0       262143

3       0       0               0       262143

4       0       0               0       262143

5       0       0               0       262143

6       0       0               0       262143

7       0       0               0       262143

8       0       0               0       262143

9       0       0               0       262143

10      0       0               0       262143

11      0       0               0       262143

12      0       0               0       262143

13      0       0               0       262143

14      0       0               0       262143

15      0       0               0       262143

Multicast     0       0               0       262143

Você pode ver que há duas seções desde que a placa de linha está funcionando e que há quatro pools: 80, 608, 1568 e 4544.

Agora altere o MTU em uma interface que pertence a esta placa de linha:

Router(config)#interface pos1/0

Router(config-if)#mtu ?

<64-18020>  MTU size in bytes

Router(config-if)#mtu 2000

Agora, conecte-se ao LC e verifique o que mudou:

LC-Slot1#show control tofab queue

Carve information for ToFab buffers

SDRAM size: 268435456 bytes, address: 30000000, carve base: 30019100

268332800 bytes carve size,  4 SDRAM bank(s), 16384 bytes SDRAM

pagesize, 3 carve(s)

max buffer data size 4112 bytes, min buffer data size 80 bytes

262142/262142 buffers specified/carved

247054400/247054400 bytes sum buffer sizes specified/carved

Qnum    Head    Tail            #Qelem  LenThresh

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

4 non-IPC free queues:

91680/91680 (buffers specified/carved), 34.97%, 80 byte data size

1       202     201             91680   262143

65485/65485 (buffers specified/carved), 24.98%, 608 byte data size

2       91884   91883           65485   262143

49769/49769 (buffers specified/carved), 18.98%, 1568 byte data size

3       157366  207134          49769   262143

55008/55008 (buffers specified/carved), 20.98%, 2048 byte data size

4       207135  262142          55008   262143

IPC Queue:

200/200 (buffers specified/carved), 0.7%, 4112 byte data size

30      118     117             200     262143

Raw Queue:

31      206     205             0       65535

ToFab Queues:

Dest

Slot

0       0       0               0       262143

1       0       0               0       262143

2       0       0               0       262143

3       0       0               0       262143

4       0       0               0       262143

5       0       0               0       262143

6       0       0               0       262143

7       206     205             0       262143

8       0       0               0       262143

9       0       0               0       262143

10      0       0               0       262143

11      0       0               0       262143

12      0       0               0       262143

13      0       0               0       262143

14      0       0               0       262143

15      0       0               0       262143

Multicast      0       0               0       262143

Existem agora três seções e o tamanho máximo do buffer para a fila não IPC é 2048 bytes em vez de 4544.

As filas FrFab permanecem inalteradas:

LC-Slot1#show controllers frfab queues

Carve information for FrFab buffers

SDRAM size: 268435456 bytes, address: 20000000, carve base: 2039D100

264646400 bytes carve size,  4 SDRAM bank(s), 16384 bytes SDRAM

pagesize, 3 carve(s)

max buffer data size 9248 bytes, min buffer data size 80 bytes

251927/251927 buffers specified/carved

209883344/209883344 bytes sum buffer sizes specified/carved

Qnum    Head    Tail            #Qelem  LenThresh

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

6 non-IPC free queues:

123349/123349 (buffers specified/carved), 48.96%, 80 byte data size

1       210     209             123349  262143

75519/75519 (buffers specified/carved), 29.97%, 608 byte data size

2       123552  123551          75519   262143

37759/37759 (buffers specified/carved), 14.98%, 1568 byte data size

3       199069  236827          37759   262143

2516/2516 (buffers specified/carved), 0.99%, 2048 byte data size

4       236828  239343          2516    262143

7551/7551 (buffers specified/carved), 2.99%, 4544 byte data size

5       239344  246894          7551    262143

5033/5033 (buffers specified/carved), 1.99%, 9248 byte data size

6       246895  251927          5033    262143

IPC Queue:

200/200 (buffers specified/carved), 0.7%, 4112 byte data size

30      52      51              200     262143

Multicast Raw Queue:

29      0       0               0       62981

Raw Queue:

31      52      51              0       251928

Interface Queues:

0       210     209             0       262143

O tamanho máximo do buffer é 9248 bytes. Agora, configure uma MTU de 10000 em uma outra interface em outra placa:

Router(config-if)#interface pos5/0

Router(config-if)#mtu ?

<64-18020>  MTU size in bytes

Router(config-if)#mtu 10000

LC-Slot1#show contr frfab queues

Carve information for FrFab buffers

SDRAM size: 268435456 bytes, address: 20000000, carve base: 2039D100

264646400 bytes carve size,  4 SDRAM bank(s), 16384 bytes SDRAM

pagesize, 4 carve(s)

max buffer data size 10064 bytes, min buffer data size 80 bytes

257309/257309 buffers specified/carved

213496016/213496016 bytes sum buffer sizes specified/carved

Qnum    Head    Tail            #Qelem  LenThresh

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

5 non-IPC free queues:

128556/128556 (buffers specified/carved), 49.96%, 80 byte data size

1       204     203             128556  262143

77133/77133 (buffers specified/carved), 29.97%, 608 byte data size

2       128758  128757          77133   262143

38566/38566 (buffers specified/carved), 14.98%, 1568 byte data size

3       205890  244455          38566   262143

7713/7713 (buffers specified/carved), 2.99%, 4544 byte data size

4       244456  252168          7713    262143

5141/5141 (buffers specified/carved), 1.99%, 10064 byte data size

5       252169  257309          5141    262143

IPC Queue:

200/200 (buffers specified/carved), 0.7%, 4112 byte data size

30      24      23              200     262143

Multicast Raw Queue:

29      0       0               0       64327

Raw Queue:

31      24      23              0       257310

Interface Queues:

0       205     204             0       262143

Existem agora quatro seções para as filas FrFab e o tamanho máximo do buffer foi alterado para 10064 bytes.

Observação: nas placas de linha de POS (Packet Over Sonet) configuradas com o encapsulamento PPP (Point-to-Point Protocol), a negociação da MRU (Maximum Receive Unit, Unidade máxima de recepção) ocorre, mas não ajusta o tamanho da MTU. Além disso, as conexões PPP não são redefinidas quando o MTU é alterado na interface.

Memória de pacote de recebimento

Esta memória é gravada em diferentes conjuntos de buffers do pacote. Para ver como a memória de recepção é gravada, você pode se conectar a uma Placa de Linha e executar o comando show controller tofab queue, como demonstrado abaixo:

Router#attach ?

<0-15>  slot number of linecard to connect

<cr>

Router#attach 1

Entering Console for 1 Port SONET based SRP OC-12c/STM-4 in Slot: 1

Type "exit" to end this session

Press RETURN to get started!

LC-Slot1>enable

LC-Slot1#

LC-Slot1#show controllers tofab queues

Carve information for ToFab buffers

SDRAM size: 33554432 bytes, address: 30000000, carve base: 30029100

33386240 bytes carve size, 4 SDRAM bank(s), 8192 bytes SDRAM pagesize, 2 carve(s)

max buffer data size 9248 bytes, min buffer data size 80 bytes

40606/40606 buffers specified/carved

33249088/33249088 bytes sum buffer sizes specified/carved

Qnum    Head    Tail        #Qelem     LenThresh

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

5 non-IPC free queues:

20254/20254    (buffers specified/carved), 49.87%, 80 byte data size

1       17297   17296       20254      65535

12152/12152    (buffers specified/carved), 29.92%, 608 byte data size

2       20548   20547       12152      65535

6076/6076    (buffers specified/carved), 14.96%, 1568 byte data size

3       32507   38582       6076       65535

1215/1215    (buffers specified/carved), 2.99%, 4544 byte data size

4       38583   39797       1215       65535

809/809    (buffers specified/carved), 1.99%, 9248 byte data size

5       39798   40606       809        65535

IPC Queue:

100/100 (buffers    specified/carved), 0.24%, 4112 byte data size

30      72      71          100        65535

Raw  Queue:

31      0       17302       0          65535

ToFab Queues:

Dest

Slot

0       0       0           0          65535

1       0       0           0          65535

2       0       0           0          65535

3       0       0           0          65535

4       0       0           0          65535

5       0       17282       0          65535

6       0       0           0          65535

7       0       75          0          65535

8       0       0           0          65535

9       0       0           0          65535

10      0       0           0          65535

11      0       0           0          65535

12      0       0           0          65535

13      0       0           0          65535

14      0       0           0          65535

15      0       0           0          65535

Multicast      0       0           0          65535

LC-Slot1#

A lista a seguir descreve alguns dos campos-chave encontrados no exemplo anterior:

- Tamanho da SDRAM: 33554432 bytes, endereço: 30000000, base de gravação: 30029100 - O tamanho da memória do pacote de recepção e o local do endereço onde começa.

- max buffer data size 9248 bytes, min buffer data size 80 bytes – Tamanhos máximo e mínimo do buffer.

- 40606/40606 buffers especificados/gravados - Buffers a serem gravados especificados pelo software Cisco IOS e o número de buffers realmente gravados.

- filas livres não IPC - Os pools de buffer não IPC são os pools de buffer de pacotes. É alocado um buffer do pool de buffers para os pacotes que chegam à placa, dependendo do tamanho dos pacotes. É possível ter apenas três filas livres não IPC; se a placa for Ethernet, você não terá o pool 4k, mas apenas um pool de até 1,5k. Isto se deve ao fato de as filas ToFab serem gravadas até a Unidade Máxima de Transmissão (MTU) da placa de linha específica. A saída de exemplo mostra cinco pools de buffers de pacotes de tamanhos de 80, 608, 1568, 4544 e 9248 bytes. Para cada conjunto, são fornecidos detalhes adicionais abaixo:

- 20254/20254 (buffers especificados/gravados), 49,87%, tamanho dos dados de 80 bytes - 49.87% da memória de pacote recebida foram gravados nos buffers de 80 bytes 20254.

- Qnum - O número da fila.

- #Qelem - O número de buffers atribuídos àquela fila no momento. Se for uma fila livre, esses buffers estarão disponíveis para o sistema. Se essa for uma fila ToFab ou uma fila de transmissão, esses buffers não estarão disponíveis no sistema. Essa é a coluna para verificar e encontrar de qual fila foi feito backup.

- Começo e fim - Um mecanismo de começo e fim é usado para garantir que as filas estejam se movimentando corretamente.

- Fila IPC – Reservada para mensagens de comunicação entre processos, do LC para o GRP.

- Fila Bruta – Quando um pacote de entrada é atribuído a um buffer de uma fila livre não-IPC, ele é colocado na fila bruta. A fila bruta é processada First In First Out (FIFO) pela CPU da LC durante as interrupções. Se você vir um número muito grande na coluna #Qelem da linha "Raw Queue", terá dois pacotes aguardando na CPU e eles começarão a ser ignorados, porque a CPU não pode acompanhar a carga. Mas isso é muito raro.

- Fila ToFab - Filas de saída virtuais; um slot por destino mais um para tráfego de transmissão múltipla. A última parte do exemplo anterior mostra 15 filas de saída virtual. Este é um roteador 12012, originalmente projetado como um chassi de 15 slots; as filas 13 a 15 não são usadas.

Depois que a CPU da placa de ingresso toma uma decisão de comutação de pacotes, o pacote é enfileirado na fila de saída virtual correspondente ao slot para o qual o pacote é destinado. O número na quarta coluna é o número de pacotes atualmente enfileirados em uma fila de saída virtual.

Fluxo de pacotes no ToFab BMA

Etapa 1 - Um pacote entra no módulo de interface da camada física (PLIM). Como o pacote é recebido e processado, ele recebe DMA (Acesso direto à memória) para uma pequena memória (aproximadamente o dobro do buffer da MTU - unidade de transmissão máxima) chamada memória de burst FIFO (primeiro a entrar, primeiro a sair). A quantidade desta memória depende do tipo de LC (de 128 KB a 1 MB).

Etapa 2 - Quando o pacote está completamente na memória FIFO, um circuito integrado específico de aplicativo (ASIC) no PLIM entra em contato com o BMA (Buffer Management ASIC) e pede um buffer para colocar o pacote. O BMA recebe a informação de qual o tamanho do pacote e aloca um buffer adequadamente. Se o BMA não puder obter um buffer do tamanho correto, o pacote será descartado e o contador "ignorado" será incrementado na interface de entrada. Não há mecanismo de recuo como em algumas outras plataformas.

Etapa 3 - Enquanto isso estiver acontecendo, o PLIM pode estar recebendo outro pacote na memória de intermitência FIFO, que é o motivo pelo qual ela está com duas vezes o tamanho do MTU. Se houver um buffer livre disponível na fila da direita, o pacote será armazenado pelo BMA na lista de filas livres do tamanho apropriado. Esse buffer é colocado na Fila bruta, que é examinada pelo Salsa ASIC ou pela CPU R5K, dependendo do tipo de mecanismo de comutação da placa de linha.

Passo 4 – No mecanismo 0 LC, a CPU R5K determina o destino do pacote, consultando as tabelas locais de Encaminhamento Distribuído do Cisco Express (dCEF) na DRAM. Em seguida, ela move o buffer da Fila bruta para uma fila ToFabric que corresponde ao slot de destino. Se o destino não estiver nas tabelas de dCEF, o pacote será descartado. Se o pacote for um pacote de controle (por exemplo, atualizações de roteamento), ele será enfileirado na fila do GRP e será processado pelo GRP. Em um roteador 12016, há 17 filas ToFab (16 unicast, mais um multicast).

Etapa 5 - ToFab BMA enfileira o buffer na fila ToFab apropriada. Neste ponto, o contador #Qelem do conjunto do qual veio o buffer diminui um (1) e o contador da fila ToFab aumenta um (1).

Observação: há uma fila ToFab por placa de linha (isso inclui o GRP). Essas filas são conhecidas como Filas de saída virtuais (VOQs). Eles são importantes para evitar o bloqueio de head-of-line.

Etapa 6 - O FIA (Fabric Interface ASIC, Interface de Estrutura) vê que uma fila de saída não está vazia. O FIA está configurado para segmentar o pacote em células de 48 bytes. Um cabeçalho de 8 bytes é adicionado ao pacote e a célula de 56 bytes da Cisco é enviada pela tela do Switch.

Memória dos pacotes de transmissão

A memória de pacotes de transmissão armazena pacotes de surgem do Switch Fabric e aguardam a transmissão para a interface física. Essa memória é também gravada em pools de vários tamanhos.

A partir do GRP, é possível anexar a uma placa de linha e executar o comando show controller frfab queue para exibir a memória do pacote de transmissão. Além dos campos na saída ToFab, a saída FrFab exibe uma seção "Filas de interface". A saída varia com o tipo e o número de interfaces no LC de saída.

Uma dessas filas existe para cada interface na placa de linha. Os pacotes destinados a uma interface específica são colocados na fila da interface correspondente.

LC-Slot1#show controller frfab queue

========= Line Card (Slot 2) =======

Carve information for FrFab buffers

SDRAM size: 16777216 bytes, address: 20000000, carve base: 2002D100

16592640 bytes carve size, 0 SDRAM bank(s), 0 bytes SDRAM pagesize, 2 carve(s)

max buffer data size 9248 bytes, min buffer data size 80 bytes

20052/20052 buffers specified/carved

16581552/16581552 bytes sum buffer sizes specified/carved

Qnum    Head       Tail               #Qelem  LenThresh

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

5 non-IPC free queues:

9977/9977 (buffers    specified/carved), 49.75%, 80 byte data size

1       101        10077              9977    65535

5986/5986 (buffers    specified/carved), 29.85%, 608 byte data size

2       10078      16063              5986    65535

2993/2993 (buffers    specified/carved), 14.92%, 1568 byte data size

3       16064      19056              2993    65535

598/598 (buffers    specified/carved), 2.98%, 4544 byte data size

4       19057      19654              598     65535

398/398 (buffers    specified/carved), 1.98%, 9248 byte data size

5       19655      20052              398     65535

IPC Queue:

100/100 (buffers    specified/carved), 0.49%, 4112 byte data size

30      77         76                 100     65535

Raw Queue:

31      0          82                 0       65535

Interface Queues:

0       0          0                  0       65535

1       0          0                  0       65535

2       0          0                  0       65535

3       0          0                  0       65535

A lista a seguir descreve alguns dos campos-chave encontrados no exemplo anterior:

- Filas livres não IPC: Essas filas são pools de buffers de pacotes de tamanhos diferentes. Quando um pacote é recebido na tela, um buffer de tamanho apropriado é tirado de uma dessas filas, o pacote é copiado para ele e o buffer é colocado na fila de interface de saída apropriada.

Observação: há tantos pools quanto necessário para todo o roteador. Como conseqüência, filas FrFab são formadas até a MTU máxima do sistema inteiro. Isso é diferente para as filas ToFab gravadas até o MTU máximo da placa de linha específica.

- Fila de IPC: Reservado para mensagens de Comunicação entre Processos do GRP para o LC.

- Filas de interface: Essas filas são para as interfaces, não para os números de slot. O último número (65535) é o limite de fila TX. Esse número controla o comprimento máximo de qualquer fila e pode ser ajustado pelo comando TX-queue limit na placa de linha Engine 0. Se você enfrentar algum congestionamento, esse comando poderá ser usado para impedir o LC de egresso de armazenar em buffer mais do que o número configurado de pacotes na fila da interface para essa porta específica. Certifique-se de que este número esteja configurado baixo o suficiente, de modo que não contenha todas as filas FwFab para esta interface. No entanto, esse ajuste não fornece um controle sobre os pacotes que são descartados no LC de saída. Consulte Troubleshooting de Pacotes Ignorados e Quedas Sem Memória no Cisco 12000 Series Internet Router para obter detalhes.

Fluxo de pacotes no FrFab BMA

Neste ponto, as células Cisco foram transmitidas pela matriz de comutação pelo FIA.

Etapa 1 - Essas células Cisco são acessadas como DMA em FIFOs nos FIAs de FrFab e depois em um buffer no BMA de FrFab. O FrFab BMA é o que realmente faz a remontagem de células em um pacote.

Como o FrFab BMA reconhece em que buffer colocar as células antes de reagrupá-las? Esta é outra decisão tomada pelo mecanismo de switching da placa de linha recebida. Como todas as filas em toda a caixa têm o mesmo tamanho e na mesma ordem, o mecanismo de comutação instrui o LC transmissor a colocar o pacote na fila de número igual a partir da qual ele entrou no roteador.

As filas FrFab BMA SDRAM podem ser visualizadas com o comando show controller frfab queue no LC.

Etapa 2  Esta etapa é basicamente a mesma da saída ToFab BMA. Os pacotes chegam e são colocados em pacotes que são retirados de suas respectivas filas livres. Esses pacotes são colocados na fila FrFab e enfileirados na fila da interface (há uma fila por porta física) ou no rawQ para o processamento de saída. Pouca coisa acontece na cruzQ: replicação multicast por porta, Rodízio de Déficit Modificado (MDRR - Modified Deficit Round Robin) - mesma ideia do Enfileiramento Moderado Ponderado Distribuído (DWFQ - Distributed Weighted Fair Queuing) e Taxa de Acesso Consolidada de Saída (CAR - Committed Access Rate). Se a fila de transmissão estiver cheia, o pacote será descartado e o contador de queda de emissor será incrementado.

Etapa 3 - O FrFab BMA espera até que a parte TX do PLIM esteja pronta para enviar um pacote. O FrFab BMA faz a regravação real do Media Access Control (MAC) (lembre-se, com base nas informações contidas no cabeçalho de célula da Cisco) e o DMAS envia o pacote por meio de um pequeno (novamente, 2xMTU) buffer nos circuitos PLIM. O PLIM faz a SAR (Segmentação e remontagem) do ATM (Modo de transferência assíncrono) e o encapsulamento da SONET (Rede Ótica Síncrona), onde for adequado, e transmite o pacote.

Informações Relacionadas

- Troubleshooting de Pacotes Ignorados e Quedas Sem Memória no Cisco 12000 Series Internet Router

- Troubleshooting de Quedas de Entrada no Cisco 12000 Series Internet Router

- Como ler a saída do comando show controller fia

- Suporte Técnico - Cisco Systems