Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Entendendo a configuração de buffer cos

A memória buffer de pacotes comum do Mecanismo de encaminhamento de pacotes (PFE) é usada para armazenar pacotes em filas de interface. A memória buffer tem contas de entrada e saída separadas para tomar decisões de aceitação, queda ou pausa. Como o switch tem um único pool de memória com contabilidade separada de entrada e saída, a quantidade total de memória buffer está disponível tanto na entrada quanto na perspectiva da saída. Os pacotes são contabilizados à medida que entram e saem do switch, mas não há conceito de um pacote chegando a um buffer de entrada e depois sendo movido para um buffer de saída. Os valores de memória buffer comuns específicos para switches individuais estão listados na Tabela 1.

Tabela 1: Memória buffer de pacote comum em switches

Interruptor

Memória buffer de pacote comum

QFX3500, QFX3600

9MB

QFX5100, EX4600 e Série OCX

12MB

QFX5110, QFX5200-32C

16MB

QFX5200-48Y

22MB

QFX5120

32MB

QFX5130, QFX5700

132MB

QFX5210

42MB

QFX5220

64MB

QFX5230

112MB

QFX5240

165MB

Nota:

QFX10000 não tem um buffer compartilhado.

Os buffers são divididos em dois pools de uma perspectiva de entrada e saída:

  1. Buffers compartilhados são um pool de memória global que o switch aloca dinamicamente para portas conforme necessário, de modo que os buffers são compartilhados entre as portas do switch.

  2. Buffers dedicados são um pool de memória dividido igualmente entre as portas do switch. Cada porta recebe uma quantidade mínima garantida de espaço buffer, dedicado a cada porta, não compartilhado entre as portas.

Nota:

Tráfego sem perdas é o tráfego no qual você permite o controle de fluxo baseado em prioridade (PFC) para garantir um transporte sem perdas. O tráfego sem perdas não se refere ao tráfego de melhor esforço em um link habilitado para Ethernet PAUSE (IEEE 802.3x).

O switch reserva espaço de buffer não configurado para garantir que portas e filas recebam uma alocação mínima de memória. Você pode configurar como o sistema usa o restante do espaço buffer para otimizar a alocação para o seu mix de tráfego de rede. Você pode configurar a porcentagem de espaço buffer disponível usado como espaço buffer compartilhado versus espaço buffer dedicado. Você também pode configurar como o espaço buffer compartilhado é alocado em diferentes tipos de tráfego. Você pode otimizar as configurações de buffer para o tráfego em sua rede.

A configuração padrão de classe de serviço oferece duas aulas de encaminhamento sem perdas (fcoe e no-loss), uma classe de encaminhamento unicast de melhor esforço, uma classe de encaminhamento de tráfego de controle de rede e uma classe de encaminhamento de tráfego multidestinação (multicast, broadcast e fail de busca de destino).

Cada padrão de encaminhamento de classe mapeia para uma fila de saída padrão diferente. A configuração padrão aloca os buffers de uma maneira que oferece suporte a uma quantidade moderada de tráfego sem perdas, ao mesmo tempo em que oferece a capacidade de absorver explosões na transmissão de tráfego de melhor esforço.

Mudar as configurações de buffer muda as habilidades dos buffers para absorver explosões de tráfego e lidar com tráfego sem perdas. Por exemplo, redes com tráfego de melhor esforço exigem alocar a maior parte do espaço buffer compartilhado para buffers de melhor esforço. Isso oferece buffers profundos e flexíveis que podem absorver rajadas de tráfego com perda mínima de pacotes, em detrimento da disponibilidade de buffer para tráfego sem perdas.

Por outro lado, redes com tráfego principalmente sem perdas exigem alocar a maior parte do espaço buffer compartilhado para buffers sem perda de espaço na cabeça. Isso evita a perda de pacotes em fluxos sem perdas em detrimento de absorver o tráfego de melhor esforço com eficiência.

CUIDADO:

Mudar a configuração de buffer é um evento disruptivo. O tráfego para em todas as portas até que a reprogramação de buffer esteja concluída.

Este tópico descreve a arquitetura e as configurações do buffer:

Grupos de buffer

Tanto de uma perspectiva de entrada quanto de saída, o buffer PFE é dividido em dois pools principais, um pool de buffer compartilhado e um pool de buffer dedicado que garante uma alocação mínima para cada porta. Você pode configurar a quantidade de espaço buffer alocado em cada um dos dois pools. Uma parte do espaço buffer é reservada para que haja sempre uma quantidade mínima de espaço buffer compartilhado e dedicado disponível para cada porta.

  • Pool de buffer compartilhado — um espaço de memória global que todas as portas do switch compartilham dinamicamente conforme precisam de buffers. O pool de buffer compartilhado é dividido ainda mais em buffers para unicast de melhor esforço, multidestinação de melhor esforço (broadcast, multicast e fail de busca de destino) e tipos de tráfego PFC (sem perdas). Você pode alocar espaço global de memória compartilhada para buffer de partições para oferecer melhor suporte a diferentes misturas de tráfego de rede. Quanto maior o pool de buffer compartilhado, melhor o switch pode absorver rajadas de tráfego porque mais memória compartilhada está disponível para o tráfego.

  • Pool de buffer dedicado — um espaço de memória global reservado alocado igualmente para cada porta. O switch reserva um pool de buffer dedicado mínimo que não é configurável pelo usuário. Você pode dividir a alocação de buffer dedicada para uma porta entre as filas de porta em uma base por porta por porta por fila. (Por exemplo, isso permite que você dedique mais espaço de buffer a filas que transportam tráfego sem perdas.)

    Um pool de buffer dedicado maior significa uma quantidade maior de espaço buffer dedicado para cada porta, de modo que o congestionamento em uma porta é menos provável que afete o tráfego em outra porta porque o tráfego não precisa usar tanto espaço buffer compartilhado. No entanto, quanto maior o pool de buffer dedicado, menos tráfego estourado o switch pode lidar porque há menos memória buffer compartilhada dinâmica.

Você pode configurar a forma como a parte não reserviço disponível do espaço buffer é alocada no pool de buffer compartilhado global e no pool de buffer compartilhado dedicado configurando as porcentagens de buffer compartilhadas de entrada e saída.

Por padrão, 100% do espaço buffer não reservado disponível é alocado no pool de buffer compartilhado. Se você alterar a porcentagem de espaço alocado no buffer compartilhado, o espaço buffer disponível que não está alocado no buffer compartilhado será alocado no buffer dedicado. Por exemplo, se você configurar o pool de buffer compartilhado de entrada como 80%, os 20% restantes do espaço buffer disponível serão alocados no pool de buffer dedicado e divididos igualmente entre as portas.

Nota:

Quando 100% dos buffers disponíveis (configuráveis pelo usuário) são alocados no pool de buffer compartilhado, o switch ainda reserva um pool de buffer dedicado mínimo.

Você pode configurar separadamente as alocações de pool de buffer compartilhado de entrada e saída. Você também pode dividir o pool de buffer compartilhado de entrada e saída para alocar porcentagens do pool de buffer compartilhado para tipos específicos de tráfego. Se você não usar a configuração padrão ou uma das configurações recomendadas, preste atenção especial à configuração de entrada dos buffers sem perda de cabeça (esses buffers lidam com a pausa do PFC durante períodos de congestionamento) e à configuração de saída dos buffers de melhor esforço para lidar com o congestionamento incast (várias fontes sincronizadas enviando dados para o mesmo receptor em paralelo).

Além do pool de buffer compartilhado e do pool de buffer dedicado, há também um pequeno pool de buffer global de entrada que é reservado e não é configurável.

Quando a disputa por espaço buffer ocorre, o switch usa um algoritmo interno para garantir que os pools de buffer sejam distribuídos de forma justa entre os fluxos concorrentes. Quando o tráfego para um determinado fluxo excede a quantidade de buffer de porta dedicado reservado para esse fluxo, o fluxo começa a consumir memória do pool buffer compartilhado dinâmico. Os fluxos concorrentes competem pela memória buffer compartilhada com outros fluxos que também esgotaram seus buffers dedicados. Quando não há congestionamento, não há fluxos concorrentes.

Manuseio de buffer de fluxos sem perdas (PFC) versus PAUSA Ethernet

Quando discutimos buffers sem perdas nas seções a seguir, queremos dizer buffers que lidam com o tráfego no qual você habilita o PFC a garantir o transporte sem perdas. Os buffers sem perdas não são usados para tráfego de melhor esforço em um link no qual você habilita a PAUSA Ethernet (IEEE 802.3x). A entrada sem perdas e os buffers compartilhados de saída, e o buffer compartilhado de entrada sem perda de cabeça, são usados apenas para tráfego no qual você habilita o PFC.

Nota:

Para suportar fluxos sem perdas, você deve configurar os recursos apropriados de ponte de data center (PFC, DCBX e ETS) e propriedades de agendamento.

Grupo de buffer compartilhado e partições

O pool de buffer compartilhado é um espaço de memória global que todas as portas do switch compartilham dinamicamente, pois precisam de buffers. O switch usa o pool de buffer compartilhado para absorver explosões de tráfego depois que o pool de buffer dedicado para uma porta é esgotado.

Você pode dividir o pool de buffer compartilhado de entrada e o pool de buffer compartilhado de saída em três partições para alocar porcentagens de cada pool de buffer para diferentes tipos de tráfego. Quando você partilha o pool de buffer compartilhado de entrada ou saída:

  • Se você configurar explicitamente uma partição de buffer compartilhada de entrada, você deve configurar explicitamente as três partições de buffer compartilhadas de entrada. (Configure explicitamente as três partições de entrada ou use a configuração padrão para as três partições de entrada.)

    Se você configurar explicitamente uma partição de buffer compartilhada de saída, você deve configurar explicitamente todas as três partições de buffer compartilhadas de saída. (Configure explicitamente as três partições de saída ou use a configuração padrão para as três partições de saída.)

    O switch retorna um erro de confirmação se você não configurar explicitamente as três partições ao configurar as partições de buffer compartilhadas de entrada ou saída.

  • As porcentagens combinadas das três partições de buffer compartilhadas de entrada devem totalizar exatamente 100%.

    As porcentagens combinadas das três partições de buffer compartilhadas de saída devem totalizar exatamente 100%.

    Quando você configura explicitamente as partições de buffer compartilhadas de entrada ou saída, o switch retorna um erro de confirmação se a porcentagem total das três partições não for igual a 100%.

  • Se você dividir explicitamente um conjunto de buffers compartilhados, você não precisa dividir explicitamente o outro conjunto de buffers compartilhados. Por exemplo, você pode configurar explicitamente as partições de buffer compartilhadas de entrada e usar as partições de buffer compartilhadas de saída padrão. No entanto, se você alterar as partições de buffer para o pool de buffer de entrada para combinar com os tipos esperados de fluxos de tráfego, você provavelmente também gostaria de alterar as partições de buffer para o pool de buffer de saída para combinar com esses fluxos de tráfego.

Você pode configurar a porcentagem de espaço buffer não reservado disponível alocado no pool de buffer compartilhado. O espaço que você não aloca no pool de buffer compartilhado é adicionado ao pool de buffer dedicado e dividido igualmente entre as portas. A configuração padrão aloca 100% do espaço buffer de entrada e saída não servido para os buffers compartilhados.

Configurar as partições de pool de buffer compartilhadas de entrada e saída permite que você aloce mais buffers para os tipos de tráfego que sua rede transporta predominantemente e menos buffers para outros tráfegos.

Ingress Shared Buffer Pool Partitions

Você pode configurar três partições de pool de buffer de entrada:

  • Buffers sem perdas — pool de buffer compartilhado para todo o tráfego de entrada sem perdas. Recomendamos 5% como o valor mínimo para buffers sem perdas.

  • Buffers sem perda de espaço para a cabeça — o pool de buffer compartilhado para pacotes recebidos enquanto uma pausa é afirmada. Se o PFC estiver habilitado em prioridades em uma porta, quando a porta envia uma mensagem de pausa para o peer conectado, a porta usa os buffers de sala de cabeça para armazenar os pacotes que chegam entre o momento em que a porta envia a mensagem de pausa e o momento em que o último pacote chega após o peer interromper o tráfego. O valor mínimo para buffers sem perda de cabeça é de 0 (zero) por cento. (Buffers sem perda de cabeça são os únicos buffers para os quais o valor recomendado pode ser inferior a 5%).

    Nota:

    Em um QFX Virtual Chassis e um Chassi Virtual EX4600/EX4650, o valor mínimo para o buffer sem perda de cabeça é de 3%.

  • Buffers com perda — pool de buffer compartilhado para todo o tráfego de entrada de melhor esforço (unicast de melhor esforço, multidestinação e tráfego de prioridade rigorosa). Recomendamos 5% como o valor mínimo para buffers de melhor esforço.

Os valores percentuais combinados das partições de buffer de entrada sem perdas e sem perdas e partições buffer de melhor esforço devem totalizar exatamente 100%. Se as porcentagens de buffer totalizam mais de 100% ou menos de 100%, o switch retorna um erro de confirmação. Se você configurar explicitamente uma partição de buffer compartilhada de entrada, você deve configurar explicitamente as três partições de buffer de entrada, mesmo que a partição buffer sem perda tenha um valor de 0 (zero) por cento.

Egress Shared Buffer Pool Partitions

Você pode configurar três partições de pool de buffer de saída:

  • Buffers sem perdas — pool de buffer compartilhado para todas as filas de saída sem perdas. Recomendamos 5% como o valor mínimo para buffers sem perdas.

  • Buffers com perda — pool de buffer compartilhado para todas as filas de saída de melhor esforço (unicast de melhor esforço e filas de prioridade rigorosas). Recomendamos 5% como o valor mínimo para buffers de melhor esforço.

  • Buffers multicast — pool de buffer compartilhado para todas as filas de saída de multidestinação (multicast, broadcast e de destino). Recomendamos 5% como o valor mínimo para buffers multicast.

Os valores percentuais combinados das partições de buffer de saída sem perda, perdas e multicast devem totalizar exatamente 100%. Se as porcentagens de buffer totalizam mais de 100% ou menos de 100%, o switch retorna um erro de confirmação. Todas as partições de buffer de saída devem ser configuradas explicitamente e devem ter um valor de pelo menos 5%. Se você configurar explicitamente uma partição de buffer compartilhada de saída, você deve configurar explicitamente todas as três partições de buffer de saída, e cada partição deve ter um valor de pelo menos 5%.

Nota:

QFX5200-32C não replica todos os fluxos multicast quando dois ou mais tamanhos de pacotes de interface downstream são superiores a ~6k e têm uma taxa de entrada de pacote de 1000pps. Isso porque o número de fluxos de trabalho em QFX5200-32C é indiretamente proporcional ao tamanho do pacote e diretamente proporcional aos buffers compartilhados multicast disponíveis.

Pool de buffer de porta dedicado e alocação de buffer em filas

O pool de buffer dedicado global é a memória alocada igualmente para cada porta, de modo que cada porta recebe uma quantidade mínima garantida de espaço buffer. Buffers dedicados não são compartilhados entre as portas. Cada porta recebe uma proporção igual do pool de buffer dedicado.

Quando o tráfego entra e sai do switch, as portas do switch usam seus buffers dedicados para armazenar pacotes. Se os buffers dedicados não forem suficientes para lidar com o tráfego, o switch usará buffers compartilhados. A única maneira de aumentar o pool de buffer dedicado é diminuir o pool de buffer compartilhado de seu valor padrão de 100 por cento dos buffers não servidos disponíveis.

A quantidade de espaço de buffer dedicado não é configurável pelo usuário e depende da porcentagem de buffers não atendidos disponíveis alocados nos buffers compartilhados. (O espaço de buffer dedicado é igual aos buffers de porta reservados mínimos, mais o restante dos buffers não atendidos disponíveis que não são alocados no pool de buffer compartilhado.)

Nota:

Se 100% dos buffers não atendidos disponíveis forem alocados no pool de buffer compartilhado, o switch ainda reserva um pool de buffer dedicado mínimo.

Quanto maior o pool de buffer compartilhado, melhor será a absorção de explosão pelas portas. Quanto maior o pool de buffer dedicado, maior a quantidade de espaço buffer dedicado para cada porta. Quanto maior o espaço de buffer dedicado, menor a probabilidade de que o congestionamento em uma porta possa afetar o tráfego em outra porta, porque o tráfego não precisa usar tanto espaço buffer compartilhado.

Allocating Dedicated Port Buffers to Queues

Você pode dividir a alocação de buffer dedicada para uma porta de saída entre as filas de porta, incluindo a buffer-size declaração na configuração do agendador. Isso permite que você controle a alocação dedicada de buffer de porta de saída por porta por fila. (Por exemplo, isso permite que você dedique mais espaço de buffer a filas que transportam tráfego sem perdas ou impeça a porta de reservar buffers para filas que não transportam tráfego.) A alocação dedicada de buffer de porta de saída é uma estrutura hierárquica que aloca um pool de buffer dedicado global igualmente entre as portas e depois divide a alocação para cada porta entre as filas de porta.

Por padrão, as portas dividem sua alocação de buffers dedicados entre suas filas de saída na mesma proporção que o agendador padrão define as taxas mínimas de transmissão garantidas (a opção) para o transmit-rate tráfego. Apenas as filas incluídas no agendador padrão recebem largura de banda e buffers dedicados, nas proporções mostradas na Tabela 2:

Tabela 2: Alocação de buffer dedicada padrão para filas de saída (com base no agendador padrão)

Aula de encaminhamento

Fila

Largura de banda garantida mínima (transmit-rate)

Proporção de buffers de porta dedicados reservados

melhor esforço

0

5%

5%

fcoe

3

35%

35%

sem perdas

4

35%

35%

controle de rede

7

5%

5%

mcast

8

20%

20%

Na configuração padrão, nenhuma fila de saída que não seja a mostrada na Tabela 2 recebe uma alocação de buffers de porta dedicados.

Nota:

O switch usa agendamento hierárquico para controlar a alocação de portas e largura de banda de fila, conforme descrito no Understanding CoS Hierarchical Port Scheduling (ETS) e mostrado em Exemplo: Configuração da agendamento de portas hierárquicas cos (ETS). Para a configuração do tamanho do buffer da fila de saída, quando você anexa um perfil de controle de tráfego (inclui as informações do agendador de fila) a uma porta, os buffers de saída dedicados na porta são divididos entre as filas conforme configurado no agendador.

Se você não quiser usar a alocação padrão de buffers de porta dedicados em filas, use a opção buffer-size no agendador que está anexado à porta para configurar a alocação de filas. Você pode configurar a alocação de buffer dedicada em filas de duas maneiras:

  • Como porcentagem — a fila recebe a porcentagem especificada de buffers de porta dedicados quando a fila é mapeada no agendador e o agendador é anexado a uma porta.

  • Como restante — Após os serviços de porta, as filas que têm uma configuração explícita de tamanho de buffer de porcentagem, o espaço de buffer de porta dedicado restante é dividido igualmente entre as outras filas às quais um agendador é anexado. (Nenhum agendador padrão ou explícito para uma fila significa que não há alocação de buffer dedicada para essa fila.) Se você configurar um agendador e não especificar um tamanho de buffer como porcentagem, o restante será a configuração padrão.

Nota:

O total de todas as porcentagens de tamanho de buffer explicitamente configuradas para todas as filas em uma porta não pode exceder 100%.

Em todas as plataformas QFX5000, ao calcular a alocação de buffer dedicada para filas, o software arredonda qualquer valor de buffer dedicado fracionário para o inteiro inteiro mais próximo e programa esse valor no hardware para evitar a alocação excessiva.

Depois de alocar buffers dedicados a todas as filas configuradas, todas as plataformas QFX5000 alocam qualquer espaço dedicado de buffers de portas nãoutilizados para a primeira fila configurada.

Configuring Dedicated Port Buffer Allocation to Queues

Em uma configuração de porta que inclui vários conjuntos de classe de encaminhamento, com várias classes de encaminhamento mapeadas para vários agendadores, a alocação de buffers dedicados à porta em filas depende da mistura de filas com tamanhos de buffer configurados como porcentagens explícitas e filas configuradas com (ou inadimplentes) a opção remainder .

A melhor maneira de demonstrar como usar a porcentagem e as opções restantes afeta a alocação dedicada de buffer de porta em filas é mostrando um exemplo de alocação de buffer de fila e mostrando como a alocação de buffer de fila muda quando você adiciona outra classe de encaminhamento (fila) à porta.

A Tabela 3 mostra uma configuração inicial que inclui quatro conjuntos de classe de encaminhamento, as cinco classes de encaminhamento padrão (mapeadas para as cinco filas padrão para essas aulas de encaminhamento), a configuração de opção buffer-size e a alocação de buffer resultante para cada fila. A Tabela 4 mostra a mesma configuração depois de adicionarmos outra classe de encaminhamento (melhor esforço-2, mapeada na fila 1) ao conjunto de classe de encaminhamento de melhor esforço. Comparar as alocações de buffer em cada tabela mostra como a inclusão de outra fila afeta a alocação de buffer quando você usa restantes e porcentagens explícitas para configurar a alocação de buffer para diferentes filas.

Tabela 3: Alocação dedicada de buffer de fila de saída (Exemplo 1)

Conjunto de aulas de encaminhamento (Grupo prioritário)

Aula de encaminhamento

Fila

Configuração do tamanho do buffer do agendador

Alocação de buffer por fila (porcentagem)

fc-set-be

melhor esforço

0

10%

10%

fc-set-lossless

fcoe

3

20%

20%

sem perdas

4

40%

40%

fc-set-strict-high

controle de rede

7

restante

15%

fc-set-mcast

mcast

8

restante

15%

Neste primeiro exemplo, 70% do pool de buffer dedicado à porta de saída é explicitamente alocado para as filas de melhor esforço, fcoe e sem perdas. Os 30% restantes do pool de buffer dedicado à porta são divididos entre as duas filas que usam a opção remainder (controle de rede e mcast), de modo que cada fila recebe 15% do pool de buffer dedicado.

Agora, adicionamos outra classe de encaminhamento (fila) ao grupo de prioridade de melhor esforço (fc-set-be) e a configuramos com um tamanho de buffer de restante em vez de configurar uma porcentagem específica. Como uma terceira fila agora compartilha os buffers dedicados restantes, as filas que compartilham o restante recebem menos buffers dedicados, como mostrado na Tabela 4. As filas com porcentagens explicitamente configuradas recebem a porcentagem configurada de buffers dedicados.

Tabela 4: Alocação dedicada de buffer na fila de saída com outra fila restante (Exemplo 2)

Grupo prioritário (fc-set)

Aula de encaminhamento

Fila

Configuração do tamanho do buffer do agendador

Alocação de buffer por fila (porcentagem)

fc-set-be

melhor esforço

0

10%

10%

melhor esforço-2

1

restante

10%

fc-set-lossless

fcoe

3

20%

20%

sem perdas

4

40%

40%

fc-set-strict-high

controle de rede

7

restante

10%

fc-set-mcast

mcast

8

restante

10%

As duas tabelas mostram como a porta divide o espaço buffer dedicado que permanece após o atendimento das filas que têm uma porcentagem explicitamente configurada de espaço buffer dedicado.

Troca entre espaço buffer compartilhado e espaço buffer dedicado

A troca entre o espaço de buffer compartilhado e o espaço de buffer dedicado é:

  • Os buffers compartilhados oferecem uma melhor absorção de rajadas de tráfego porque há um pool maior de buffers dinâmicos que as portas podem usar conforme necessário para lidar com as explosões. No entanto, todos os fluxos que esgotam seu espaço buffer dedicado competem pelo pool de buffer compartilhado. Um pool de buffer compartilhado maior significa um pool de buffer dedicado menor e, portanto, mais concorrência para o pool de buffer compartilhado, porque mais fluxos esgotam sua alocação de buffer dedicada. Muito espaço buffer compartilhado resulta em nenhum fluxo único recebendo muito espaço buffer compartilhado, para manter a justiça quando muitos fluxos lutam por esse espaço.

  • Buffers dedicados oferecem espaço buffer garantido para cada porta. Quanto maior o pool de buffer dedicado, menor a probabilidade de que o congestionamento em uma porta afete o tráfego em outra porta, porque o tráfego não precisa usar tanto espaço buffer compartilhado. No entanto, menos espaço buffer compartilhado significa menos capacidade de absorver dinamicamente as rajadas de tráfego.

Para a absorção ideal de rajadas, o switch precisa de espaço de buffer dedicado suficiente para evitar a concorrência persistente para o espaço buffer compartilhado. Quando menos fluxos competem pelos buffers compartilhados, os fluxos que precisam de espaço buffer compartilhado para absorver explosões recebem mais do buffer compartilhado porque menos fluxos esgotam seu espaço buffer dedicado.

A configuração padrão e as configurações recomendadas para diferentes cenários de tráfego alocam 100% do espaço de memória configurável pelo usuário para o pool de buffer compartilhado global porque a quantidade de espaço reservado para buffers dedicados oferece espaço suficiente para evitar a concorrência persistente para buffers compartilhados dinâmicos. Isso resulta em menos fluxos competindo pelos buffers compartilhados, de modo que os fluxos concorrentes recebem mais do espaço buffer.

Ordem de consumo de buffer

O pool de buffer total é dividido em grupos de buffer compartilhados de entrada e saída e grupos de buffer dedicados. Quando o tráfego flui pelo switch, o espaço buffer é usado em uma determinada ordem que depende do tipo de tráfego.

Na entrada, a ordem de consumo de buffer é:

  • Tráfego unicast de melhor esforço:

    1. Buffers dedicados

    2. Buffers compartilhados

    3. Buffers globais de sala de cabeça (muito pequenos)

  • Tráfego unicast sem perdas:

    1. Buffers dedicados

    2. Buffers compartilhados

    3. Buffers sem perda de espaço para a cabeça

    4. Buffers globais de sala de cabeça (muito pequenos)

  • Tráfego multidestinação:

    1. Buffers dedicados

    2. Buffers compartilhados

    3. Buffers globais de sala de cabeça (muito pequenos)

Na saída, a ordem de consumo de buffer é a mesma para o tráfego unicast de melhor esforço, unicast sem perdas e multidestinação:

  • Buffers dedicados

  • Buffers compartilhados

Em todos os casos em todas as portas, o switch usa primeiro o pool de buffer dedicado e o pool de buffer compartilhado somente após o pool de buffer dedicado para a porta ou fila se esgotar. Isso reserva a quantidade máxima de espaço buffer compartilhado dinâmico para absorver rajadas de tráfego.

Valores padrão do pool de buffer

Você pode visualizar os valores de pool de buffer de entrada e saída padrão ou configurados em unidades KB usando o show class-of-service shared-buffer comando operacional. Você pode visualizar os valores de pool de buffer compartilhado configurados em unidades por cento usando o show configuration class-of-service shared-buffer comando operacional.

Esta seção fornece o buffer total padrão, buffer compartilhado e valores de buffer dedicados.

Tamanho total do pool de buffer

O pool de buffer total é uma memória comum que tem contabilidade separada de entrada e saída, de modo que o pool de buffer completo está disponível tanto da perspectiva de entrada quanto de saída. O pool de buffer total consiste no espaço buffer dedicado e no espaço buffer compartilhado. O tamanho do pool de buffer total não é configurável pelo usuário, mas a alocação de espaço buffer para os pools de buffer dedicados e compartilhados é configurável pelo usuário.

Nos switches QFX3500 e QFX3600, o tamanho total combinado das piscinas de buffer de entrada e saída é de aproximadamente 9 MB (exatamente 9360 KB).

Em QFX5100, switches EX4600 e série OCX, o tamanho total combinado dos pools de buffer de entrada e saída é de aproximadamente 12 MB (exatamente 12480 KB).

Nos switches QFX5110 e QFX5200-32C, o tamanho total combinado dos pools de buffer de entrada e saída é de aproximadamente 16 MB.

Nos switches QFX5200-48Y, o tamanho total combinado dos pools de buffer de entrada e saída é de aproximadamente 22 MB.

Em QFX5210 switches, o tamanho total combinado dos pools de buffer de entrada e saída é de aproximadamente 42 MB.

Em QFX5220 switches, o tamanho total combinado dos pools de buffer de entrada e saída é de aproximadamente 64 MB.

Valores padrão do pool de buffer compartilhado

Alguns switches têm um pool de buffer compartilhado maior do que outros switches. No entanto, a alocação de espaço buffer compartilhado para grupos de buffer de entrada e saída individual é a mesma em porcentagem, embora os valores absolutos sejam diferentes. Por exemplo, o buffer sem perdas de entrada padrão é de 9% do espaço buffer de entrada compartilhada total em todos os switches, embora o valor absoluto padrão do buffer sem perdas de entrada difere do switch para o switch.

Shared Ingress Buffer Default Values

A Tabela 5 mostra os valores de alocação de buffer compartilhados de entrada padrão em unidades de KB para switches QFX5210.

Tabela 5: valores de buffer de entrada compartilhada (KB) padrão do switch QFX5210

Buffer total de entrada compartilhada

Buffer sem perdas

Buffer sem perda de espaço para a cabeça

Buffer perdido

29224

2630.16

13150.80

13443.04

A Tabela 6 mostra os valores de alocação de buffer compartilhados de entrada padrão em unidades KB para switches QFX5200-48Y.

Tabela 6: Valores de buffer de entrada compartilhada (KB) QFX5200-48Y

Buffer total de entrada compartilhada

Buffer sem perdas

Buffer sem perda de espaço para a cabeça

Buffer perdido

19154.69

1723.92

8619.61

8811.16

A Tabela 7 mostra os valores de alocação de buffer compartilhados de entrada padrão em unidades de KB para switches de QFX5110 e QFX5200-32C.

Tabela 7: valores de buffer de entrada compartilhada (KB) de entrada compartilhada (KB) QFX5110 e QFX5200-32C

Buffer total de entrada compartilhada

Buffer sem perdas

Buffer sem perda de espaço para a cabeça

Buffer perdido

11779.62

1060.17

5300.83

5418.63

A Tabela 8 mostra os valores de alocação de buffer compartilhados de entrada padrão em unidades KB para switches QFX5100, EX4600 e Série OCX.

Tabela 8: QFX5100, EX4600 e OCX Series Default Valores de buffer de entrada compartilhada (KB)

Buffer total de entrada compartilhada

Buffer sem perdas

Buffer sem perda de espaço para a cabeça

Buffer perdido

9567,19 KB

861,05 KB

4305,23 KB

4400,91 KB

A Tabela 9 mostra os valores de alocação de buffer compartilhados de entrada padrão em unidades de KB para switches de QFX3500 e QFX3600.

Tabela 9: QFX3500 e QFX3600 Valores de buffer de entrada compartilhada (KB)

Buffer total de entrada compartilhada

Buffer sem perdas

Buffer sem perda de espaço para a cabeça

Buffer perdido

7202 KB

648,18 KB

3240,9 KB

3312,92 KB

A Tabela 10 mostra a entrada padrão de valores de alocação de buffer compartilhados como porcentagens para todos os switches. (Se você alterar a alocação de buffer compartilhada padrão, configure a mudança como uma porcentagem.)

Tabela 10: Valores de buffer de entrada compartilhada padrão (porcentagem)

Buffer total de entrada compartilhada

Buffer sem perdas

Buffer sem perda de espaço para a cabeça

Buffer perdido

100%

9%

45%

46%

Shared Egress Buffer Default Values

A Tabela 11 mostra os valores de alocação de buffer compartilhados de saída padrão em unidades de KB para switches QFX5210.

Tabela 11: QFX5210 Valores de buffer de saída compartilhada (KB) padrão do switch

Buffer total de saída compartilhada

Buffer sem perdas

Buffer perdido

Multicast Buffer

28080

14040

8704.80

5335.20

A Tabela 12 mostra os valores de alocação de buffer compartilhados de saída padrão em unidades KB para switches QFX5200-48Y.

Tabela 12: Valores de buffer de saída compartilhada padrão QFX5200-48Y (KB)

Buffer total de saída compartilhada

Buffer sem perdas

Buffer perdido

Multicast Buffer

19115.69

9557.84

5925.86

3631.98

A Tabela 13 mostra os valores de alocação de buffer compartilhados de saída padrão em unidades de KB para switches de QFX5110 e QFX5200-32C.

Tabela 13: valores de buffer padrão de saída compartilhada (KB) QFX5110 e QFX5200-32C

Buffer total de saída compartilhada

Buffer sem perdas

Buffer perdido

Multicast Buffer

11232

5616

3481.92

2134

Nota:

QFX5200-32C não replica todos os fluxos multicast quando dois ou mais tamanhos de pacotes de interface downstream são superiores a ~6k e têm uma taxa de entrada de pacote de 1000pps. Isso porque o número de fluxos de trabalho em QFX5200-32C é indiretamente proporcional ao tamanho do pacote e diretamente proporcional aos buffers compartilhados multicast disponíveis.

A Tabela 14 mostra os valores de alocação de buffer compartilhados de saída padrão em unidades KB para switches QFX5100, EX4600 e Série OCX.

Tabela 14: QFX5100, EX4600 e OCX Series Default Shared Egress Buffer Values (KB)

Buffer total de saída compartilhada

Buffer sem perdas

Buffer perdido

Multicast Buffer

8736 KB

4368 KB

2708,16 KB

1659,84 KB

A Tabela 15 mostra os valores de alocação de buffer compartilhados de saída padrão em unidades KB.

Tabela 15: Valores de buffer padrão de saída compartilhada (KB) QFX3500 e QFX3600

Buffer total de saída compartilhada

Buffer sem perdas

Buffer perdido

Multicast Buffer

6656 KB

3328 KB

2063,36 KB

1264,64 KB

A Tabela 16 mostra os valores de alocação de buffer compartilhados de saída padrão para todos os switches em porcentagens.

Tabela 16: Valores de buffer de saída compartilhada padrão (porcentagem)

Buffer total de saída compartilhada

Buffer sem perdas

Buffer perdido

Multicast Buffer

100%

50%

31%

19%

Valores de padrão dedicados do pool de buffer

O sistema reserva grupos de buffer dedicados de entrada e saída divididos igualmente entre as portas do switch. Por padrão, o sistema aloca 100% do espaço buffer não reservado disponível para o pool de buffer compartilhado. Se você reduzir a porcentagem de espaço buffer não reservado disponível alocado no pool de buffer compartilhado, o espaço buffer não reservado restante será adicionado à alocação dedicada do pool de buffer. Você configura a quantidade de espaço dedicado do pool de buffer reduzindo (ou aumentando) a porcentagem de espaço buffer alocado no pool de buffer compartilhado. Você não configura diretamente a alocação dedicada do pool de buffer.

A Tabela 17 mostra os valores de pool de buffer dedicados de entrada e saída padrão em unidades de KB para switches QFX5210, QFX5200, QFX5110, QFX5100, QFX3500, QFX3600, EX4600 e Série OCX.

Tabela 17: Entrada e saída padrão Valores de pool de buffer dedicados KB) por switch (

Tipo de buffer dedicado

QFX5210

QFX5200-48Y

QFX5110, QFX5200-32C

QFX5100, EX4600, Série OCX

QFX3500, QFX3600

Entrada

14040

3373.50

4860.38

2912.81

2158

Saída

15184

3412.50

5408

3744

2704

Recomendações compartilhadas de configuração de buffer para diferentes cenários de tráfego de rede

A maneira como você configura o pool de buffer compartilhado depende da mistura de tráfego em sua rede. Esta seção oferece recomendações compartilhadas de configuração de buffer para cinco cenários básicos de tráfego de rede:

  • Tráfego equilibrado — a rede transporta uma combinação equilibrada de tráfego unicast de melhor esforço, sem perdas e multicast. (Esta é a configuração padrão.)

  • Tráfego unicast de melhor esforço — a rede transporta principalmente tráfego unicast de melhor esforço.

  • Tráfego de melhor esforço com Ethernet PAUSE (IEEE 802.3X) habilitado — a rede transporta o tráfego de melhor esforço com a Ethernet PAUSE habilitada nos links.

  • Tráfego multicast de melhor esforço — a rede transporta principalmente tráfego multicast de melhor esforço.

  • Tráfego sem perdas — a rede transporta principalmente tráfego sem perdas (tráfego no qual o PFC está habilitado).

Nota:

O tráfego sem perdas é definido como tráfego no qual você permite que o PFC garanta um transporte sem perdas. O tráfego sem perdas não se refere ao tráfego de melhor esforço em um link no qual você habilita o Ethernet PAUSE. Comece com os perfis recomendados para cada cenário de tráfego de rede e ajuste-os se necessário para as condições de tráfego de sua rede.

Os switches da Série OCX não oferecem suporte a transporte sem perdas ou PFC. Neste tópico, as referências ao transporte sem perdas não se aplicam aos switches da Série OCX. Os switches da Série OCX oferecem suporte a UMA PAUSA Ethernet simétrica.

CUIDADO:

Mudar a configuração de buffer é um evento disruptivo. O tráfego para em todas as portas até que a reprogramação de buffer esteja concluída. Isso inclui mudar a configuração padrão para uma das configurações recomendadas.

Como você configura alocações de buffer em porcentagens, as alocações recomendadas para cada cenário de tráfego de rede são válidas para todos os switches da Série QFX, switches EX4600 e switches da Série OCX. Use uma das seguintes configurações de buffer compartilhadas recomendadas para as condições de tráfego de sua rede. Comece com uma configuração recomendada e faça pequenos ajustes nas alocações de buffer para ajustar os buffers, se necessário, conforme descrito na otimização da configuração de buffer.

Tráfego equilibrado (configuração padrão)

A configuração de buffer compartilhado padrão é otimizada para redes que transportam uma combinação equilibrada de tráfego unicast, sem perdas e multidestinação (multicast, broadcast e fail de pesquisa de destino). A configuração padrão de classe de serviço (CoS) também é otimizada para redes que transportam uma mistura equilibrada de tráfego.

Nota:

Nos switches da Série OCX, a otimização padrão da configuração cos não inclui tráfego sem perdas porque os switches da Série OCX não suportam transporte sem perdas.

Exceto nos switches da Série OCX, recomendamos que você use a configuração de buffer compartilhado padrão para redes que transportam uma mistura equilibrada de tráfego, especialmente se você estiver usando as configurações padrão de CoS. A Tabela 18 mostra a entrada padrão de alocações de buffer compartilhadas:

Tabela 18: Configuração de buffer compartilhado de entrada padrão

Buffer total de entrada compartilhada

Buffer sem perdas

Buffer sem perda de espaço para a cabeça

Buffer perdido

100%

9%

45%

46%

A Tabela 19 mostra a saída padrão de alocações de buffer compartilhadas:

Tabela 19: Configuração de buffer compartilhado de saída padrão

Buffer total de saída compartilhada

Buffer sem perdas

Buffer perdido

Multicast Buffer

100%

50%

31%

19%

Tráfego Unicast de melhor esforço

Se sua rede transporta principalmente tráfego unicast de melhor esforço (perdido), então a configuração de buffer compartilhado padrão aloca muito espaço buffer para oferecer suporte ao transporte sem perdas. Em vez de desperdiçar esses buffers, recomendamos que você use as seguintes configurações de buffer compartilhadas de entrada (veja Tabela 20) e ajustes de buffer compartilhados de saída (ver Tabela 21):

Tabela 20: Configuração de buffer compartilhado de entrada recomendada para redes com tráfego Unicast de melhor esforço

Buffer total de entrada compartilhada

Buffer sem perdas

Buffer sem perda de espaço para a cabeça

Buffer perdido

100%

5%

0%

95%

Tabela 21: Configuração de buffer compartilhado de saída recomendada para redes com tráfego Unicast de melhor esforço

Buffer total de saída compartilhada

Buffer sem perdas

Buffer perdido

Multicast Buffer

100%

5%

75%

20%

Veja exemplo: Configuração recomendada do pool de buffer compartilhado para redes com tráfego Unicast de melhor esforço , por exemplo, que mostra como configurar as configurações de buffer recomendadas mostradas na Tabela 20 e na Tabela 21.

Tráfego DE PAUSA da Ethernet

Se sua rede transporta principalmente tráfego com o melhor esforço (com perda) e permite a PAUSA da Ethernet em links, então a configuração de buffer compartilhado padrão aloca muito espaço de buffer para o buffer de entrada compartilhado (o tráfego Ethernet PAUSE usa os buffers dedicados em vez de buffers compartilhados) e não espaço suficiente para os buffers sem perda de cabeça. Recomendamos que você use as seguintes configurações de buffer compartilhadas de entrada (ver Tabela 22) e ajustes de buffer compartilhados de saída (ver Tabela 23):

Tabela 22: Configuração de buffer compartilhada de entrada recomendada para redes com tráfego de melhor esforço e pausa de ethernet habilitadas

Buffer total de entrada compartilhada

Buffer sem perdas

Buffer sem perda de espaço para a cabeça

Buffer perdido

70%

5%

80%

15%

Tabela 23: Configuração de buffer compartilhada de saída recomendada para redes com tráfego de melhor esforço e pausa de ethernet habilitadas

Buffer total de saída compartilhada

Buffer sem perdas

Buffer perdido

Multicast Buffer

100%

5%

75%

20%

Veja exemplo: Configuração recomendada do pool de buffer compartilhado para redes com o tráfego de melhor esforço em links com A PAUSA Ethernet habilitado para um exemplo que mostra como configurar as configurações de buffer recomendadas mostradas na Tabela 20 e na Tabela 21.

Tráfego multicast de melhor esforço (multidestinação)

Se sua rede transporta principalmente tráfego multicast de melhor esforço (perdido), então a configuração de buffer compartilhado padrão aloca muito espaço buffer para oferecer suporte ao transporte sem perdas. Em vez de desperdiçar esses buffers, recomendamos que você use as seguintes configurações de buffer compartilhado de entrada (ver Tabela 24) e ajustes de buffer compartilhados de saída (ver Tabela 25):

Tabela 24: Configuração de buffer compartilhado de entrada recomendada para redes com tráfego multicast de melhor esforço

Buffer total de entrada compartilhada

Buffer sem perdas

Buffer sem perda de espaço para a cabeça

Buffer perdido

100%

5%

0%

95%

Tabela 25: Configuração de buffer compartilhado de saída recomendada para redes com tráfego multicast de melhor esforço

Buffer total de saída compartilhada

Buffer sem perdas

Buffer perdido

Multicast Buffer

100%

5%

20%

75%

Veja exemplo: Configuração recomendada do pool de buffer compartilhado para redes com tráfego principalmente multicast , por exemplo, que mostra como configurar as configurações de buffer recomendadas mostradas na Tabela 24 e na Tabela 25.

Tráfego sem perdas

Se sua rede transporta tráfego principalmente sem perdas, então a configuração de buffer compartilhado padrão aloca muito espaço de buffer para oferecer suporte ao tráfego de melhor esforço. Em vez de desperdiçar esses buffers, recomendamos que você use as seguintes configurações de buffer compartilhadas de entrada (ver Tabela 26) e ajustes de buffer compartilhados de saída (ver Tabela 27):

Tabela 26: Configuração de buffer compartilhado de entrada recomendada para redes com tráfego em sua maioria sem perdas

Buffer total de entrada compartilhada

Buffer sem perdas

Buffer sem perda de espaço para a cabeça

Buffer perdido

100%

15%

80%

5%

Tabela 27: Configuração de buffer compartilhado de saída recomendada para redes com tráfego em sua maioria sem perdas

Buffer total de saída compartilhada

Buffer sem perdas

Buffer perdido

Multicast Buffer

100%

90%

5%

5%

Veja exemplo: Configuração recomendada do pool de buffer compartilhado para redes com tráfego principalmente sem perdas , por exemplo, que mostra como configurar as configurações de buffer recomendadas mostradas na Tabela 26 e na Tabela 27.

Otimizando a configuração de buffer

A partir da configuração padrão ou de uma configuração de buffer recomendada, você pode otimizar ainda mais a alocação de buffer para oferecer melhor suporte ao mix de tráfego em sua rede. Ajuste as configurações gradualmente para ajustar a alocação de buffer compartilhada. Tenha cuidado ao ajustar a configuração de buffer compartilhado, não apenas quando você ajustar as partições de buffer de entrada e saída, mas também quando ajustar a porcentagem total de buffer compartilhado de entrada e saída. (Lembre-se que se você alocar menos de 100% dos buffers disponíveis para os buffers compartilhados, os buffers restantes serão adicionados aos buffers dedicados). Ajustar os buffers de maneira incorreta pode causar problemas, como congestionamento de porta de entrada.

CUIDADO:

Mudar a configuração de buffer é um evento disruptivo. O tráfego para em todas as portas até que a reprogramação de buffer esteja concluída.

A relação entre os tamanhos do pool de buffer de entrada e o pool de buffer de saída afeta quando e onde os pacotes são descartados. Os tamanhos do pool de buffer incluem os buffers compartilhados e os buffers dedicados. Em geral, se houver mais buffers de entrada do que buffers de saída, o switch pode experimentar congestionamento de porta de entrada porque as filas de saída enchem antes que as filas de entrada possam se vazio.

Use o show class-of-service shared-buffer comando operacional para ver os tamanhos em kilobytes (KB) dos buffers dedicados e compartilhados e das partições de buffer compartilhadas.

Para tráfego de melhor esforço (unicast e multidestinação), a partição de buffer compartilhada com perda de entrada combinada e buffers dedicados de entrada devem ser menores do que as partições de buffer compartilhadas com perda de saída e multicast combinadas, além dos buffers dedicados de saída. Isso evita o congestionamento da porta de entrada, garantindo que os buffers de melhor esforço de saída sejam mais profundos do que os buffers de melhor esforço de entrada e garante que, se os pacotes forem descartados, eles serão deixados nas filas de saída. (A queda de pacotes na entrada impede que os agendadores de saída funcionem corretamente.)

Para tráfego sem perdas (tráfego no qual você habilita o PFC), a partição de buffer compartilhada sem perdas combinada e uma parte razoável da partição de buffer de entrada de entrada, mais os buffers dedicados, devem ser menores do que a partição de buffer compartilhada sem perda total e buffers dedicados. (Uma parte razoável do buffer de entrada é de aproximadamente 20 a 25 por cento do espaço buffer, mas isso varia dependendo de quanto espaço de cabeça buffer é necessário para suportar o tráfego sem perdas.) Quando essas condições são atendidas, se houver congestionamento de porta de entrada, o congestionamento da porta de entrada aciona o PFC na porta de entrada para evitar a perda de pacotes. Se os buffers de entrada sem perdas excederem os buffers de saída sem perdas totais, os pacotes podem ser descartados na saída, em vez de o PFC ser aplicado na entrada para evitar a perda de pacotes.

Nota:

Se você confirmar uma configuração de buffer para a qual o switch não tem recursos suficientes, o switch pode registrar um erro em vez de devolver um erro de confirmação. Nesse caso, uma mensagem de syslog é exibida no console. Por exemplo:

Se a configuração de buffer se confirmar, mas você receber uma mensagem de syslog que indique que a configuração não pode ser implementada, você pode:

  • Reconfigure os buffers ou reconfigure outros parâmetros (por exemplo, a configuração do PFC, que afeta a necessidade de buffers sem perdas e buffers sem perdas — quanto mais prioridades você pausa, mais espaço buffer sem perdas e sem perda você precisa), então tente a operação de confirmação novamente.

  • Reverta o switch para a última configuração bem sucedida.

Se você receber uma mensagem de syslog que diz que a configuração de buffer não pode ser implementada, você deve tomar medidas corretivas. Se você não corrigir a configuração ou reverter para uma configuração de sucesso anterior, o comportamento do sistema é imprevisível.

Considerações e regras gerais de configuração de buffer

Tenha em mente as seguintes regras e considerações ao configurar os buffers:

  • Mudar a configuração de buffer é um evento disruptivo. O tráfego para em todas as portas até que a reprogramação de buffer esteja concluída.

  • Se você configurar as porcentagens de buffer compartilhadas de entrada ou saída em menos de 100%, a porcentagem restante de espaço buffer será adicionada ao pool de buffer dedicado.

  • A soma de todas as partições de buffer compartilhadas de entrada deve equivaler a 100%. Cada partição deve ser configurada com um valor de pelo menos 5%, exceto o buffer sem perda de espaço para a cabeça, que pode ter um valor de 0%.

  • A soma de todas as partições de buffer compartilhadas de saída deve equivaler a 100%. Cada partição deve ser configurada com um valor de pelo menos 5%.

  • Buffers compartilhados sem perdas e sem perdas atendem ao tráfego no qual você habilita o PFC e não atendem ao tráfego sujeito à PAUSA Ethernet.

  • O switch usa primeiro o pool de buffer dedicado e o pool de buffer compartilhado somente após o pool de buffer dedicado para uma porta ou fila se esgotar.

  • Um espaço buffer dedicado demais resulta em muita concorrência para o espaço buffer compartilhado.

  • Muito espaço buffer dedicado resulta em uma absorção de explosão mais baixa porque há menos espaço de buffer compartilhado disponível.

  • Verifique sempre as mensagens de syslog após confirmar uma nova configuração de buffer.

  • A configuração de buffer ideal para sua rede depende dos tipos de tráfego da rede. Se sua rede transporta menos tráfego de um determinado tipo (por exemplo, tráfego sem perdas), então você pode reduzir o tamanho dos buffers alocados para esse tipo de tráfego (por exemplo, você pode reduzir os tamanhos dos buffers sem perdas e sem perda de cabeça).