Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Entender a configuração do buffer cos

A memória de buffer de pacotes comum do Packet Forwarding Engine (PFE) é usada para armazenar pacotes em filas de interface. A memória de 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 de entrada e saída separada, a quantidade total de memória de buffer está disponível tanto na perspectiva de entrada quanto de 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 de buffer comuns específicos para switches individuais estão listados na Tabela 1.

Tabela 1: Memória tampão de pacote comum nos switches

Interruptor

Memória de buffer de pacote comum

QFX3500, QFX3600

9MB

SérieS QFX5100, EX4600 e OCX

12MB

QFX5110, QFX5200-32C

16MB

QFX5200-48Y

22MB

QFX5120

32MB

QFX5130, QFX5700

132MB

QFX5210

42MB

QFX5220

64MB

Nota:

O QFX10000 não tem um buffer compartilhado.

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

  1. Os 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 sejam 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 de 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 o transporte sem perdas. O tráfego sem perdas não se refere ao tráfego de melhor esforço em um enlace 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 de buffer para otimizar a alocação para o seu mix de tráfego de rede. Você pode configurar a porcentagem do espaço de buffer disponível usado como espaço de buffer compartilhado versus espaço de buffer dedicado. Você também pode configurar como o espaço de 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 classes 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 lookup fail de destino).

Cada mapa de classe de encaminhamento padrão 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.

Alterar 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 de buffer compartilhado para buffers de melhor esforço. Isso fornece buffers profundos e flexíveis que podem absorver explosões de tráfego com perda mínima de pacotes, às custas da disponibilidade de buffer para tráfego sem perdas.

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

CUIDADO:

Alterar a configuração do buffer é um evento disruptivo. O tráfego para em todas as portas até que a reprogramação do buffer esteja completa.

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

Buffer Pools

De uma perspectiva de entrada e 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 de buffer alocado em cada um dos dois pools. Uma parte do espaço de buffer é reservada para que haja sempre uma quantidade mínima de espaço de 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 de memória compartilhada global 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 explosões 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 dedicada de buffer para uma porta entre as filas de porta em uma base por porta por fila. (Por exemplo, isso permite dedicar 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 de 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 de buffer compartilhado. No entanto, quanto maior o pool de buffer dedicado, menos tráfego estourado o switch pode lidar porque há menos memória de buffer compartilhado dinâmica.

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

Por padrão, 100% do espaço de 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 de buffer disponível que não é alocado no buffer compartilhado é alocado no buffer dedicado. Por exemplo, se você configurar o pool de buffer compartilhado de entrada como 80%, os 20% restantes do espaço de 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, também existe um pequeno pool de buffer global de entrada que é reservado e não é configurável.

Quando ocorre a disputa pelo espaço de buffer, o switch usa um algoritmo interno para garantir que os pools de buffer sejam distribuídos de maneira 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 de buffer compartilhado dinâmico. Os fluxos concorrentes competem pela memória de buffer compartilhado 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) em comparação com a PAUSA da Ethernet

Quando discutimos buffers sem perdas nas seções a seguir, queremos dizer buffers que lidam com o tráfego no qual você permite que o PFC garanta um 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 Ethernet PAUSE (IEEE 802.3x). Os buffers compartilhados de entrada e saída sem perdas e o buffer compartilhado sem perda de ingresso são usados apenas para tráfego no qual você habilita o PFC.

Nota:

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

Pool 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 após o pool de buffer dedicado para uma porta ser 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ê divide o pool de buffer compartilhado de entrada ou saída:

  • Se você configurar explicitamente uma partição de buffer compartilhado de entrada, você deve configurar explicitamente todas as três partições de buffer compartilhado de entrada. (Você configura explicitamente todas as três partições de entrada ou usa a configuração padrão para todas as três partições de entrada.)

    Se você configurar explicitamente uma partição de buffer compartilhado de saída, você deve configurar explicitamente todas as três partições de buffer compartilhado de saída. (Você configura explicitamente todas as três partições de saída ou usa 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 todas as três partições ao configurar as partições de buffer compartilhado de entrada ou saída.

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

    Os percentuais combinados das três partições de buffer compartilhado de saída devem totalizar exatamente 100%.

    Quando você configura explicitamente partições de buffer compartilhado de entrada ou saída, o switch devolve 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, não precisa dividir explicitamente o outro conjunto de buffers compartilhados. Por exemplo, você pode configurar explicitamente as partições de buffer compartilhado 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 do espaço de 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 de buffer de entrada e saída não servido para os buffers compartilhados.

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

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 cabeça — pool de buffer compartilhado para pacotes recebidos enquanto uma pausa é afirmada. Se o PFC for 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 a hora 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 por cento.)

    Nota:

    Em um QFX Virtual Chassis e um Chassi Virtual EX4600/EX4650, o valor mínimo para o buffer sem perda de espaço para a 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 divisões de 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 comprometimento. Se você configurar explicitamente uma partição de buffer compartilhado de entrada, você deve configurar explicitamente todas as três partições de buffer de entrada, mesmo que a partição de buffer sem perdas 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 (multicast, broadcast e lookup de destino). Recomendamos 5% como o valor mínimo para buffers multicast.

Os valores percentuais combinados das partições de buffer multicast sem perdas, perdas e saídas de saída devem totalizar exatamente 100%. Se as porcentagens de buffer totalizam mais de 100% ou menos de 100%, o switch retorna um erro de comprometimento. 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 compartilhado 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:

O 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 ingresso de pacotes de 1000pps. Isso ocorre porque o número de fluxos de trabalho no 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 para 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 de 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 de 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 de buffer compartilhado.

Allocating Dedicated Port Buffers to Queues

Você pode dividir a alocação dedicada de buffer para uma porta de saída entre as filas de porta, incluindo a buffer-size declaração na configuração do agendador. Isso permite controlar a alocação dedicada de buffer da porta de saída por porta por porta por fila. (Por exemplo, isso permite dedicar mais espaço de buffer a filas que transportam tráfego sem perdas ou impedir que a porta reserva 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 portas.

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 filas de largura de banda, conforme descrito no Understanding CoS Hierarchical Port Scheduling (ETS) e mostrado em Exemplo: Configuração de agendamento hierárquico de portas (ETS) cos. 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 para filas, use a opção buffer-size no agendador conectado à porta para configurar a alocação da fila. Você pode configurar a alocação dedicada de buffer para 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 um restante — Após os serviços de porta, as filas que têm uma configuração explícita de tamanho de buffer percentual, o espaço de buffer de porta dedicado restante é dividido igualmente entre as outras filas às quais um programador é conectado. (Nenhum agendador padrão ou explícito para uma fila significa que não há alocação dedicada de buffer 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 todos os percentuais de tamanho de buffer explicitamente configurados para todas as filas em uma porta não pode exceder 100%.

Em todas as plataformas QFX5000, ao calcular a alocação dedicada de buffer 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 de buffer dedicado de porta não usado 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 para 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 nas filas é mostrando um exemplo de alocação de buffer de fila e, em seguida, mostrando como a alocação do 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 classes 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 para a fila 1) ao conjunto de classe de encaminhamento de melhor esforço. Comparar as alocações de buffer em cada tabela mostra como adicionar 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 na fila de saída (exemplo 1)

Conjunto de classes 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 da porta de saída é explicitamente alocado nas filas de melhor esforço, fcoe e sem perdas. Os 30% restantes do pool de buffer dedicado da 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 o 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 de buffer dedicado que permanece após o serviço das filas que têm uma porcentagem explicitamente configurada de espaço de buffer dedicado.

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

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

  • Os buffers compartilhados fornecem uma melhor absorção de explosões 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 de 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 dedicada de buffer. Muito espaço de buffer compartilhado resulta em nenhum único fluxo recebendo muito espaço de buffer compartilhado, para manter a equidade quando muitos fluxos lutam por esse espaço.

  • Buffers dedicados fornecem espaço de buffer garantido para cada porta. Quanto maior o pool de buffer dedicado, menos provável é que o congestionamento em uma porta afete o tráfego em outra porta, porque o tráfego não precisa usar tanto espaço de buffer compartilhado. No entanto, menos espaço de buffer compartilhado significa menos capacidade de absorver explosões de tráfego dinamicamente.

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

Ordem de consumo de buffer

O pool de buffer total é dividido em pools de buffer compartilhados de entrada e saída e pools de buffer dedicados. Quando o tráfego flui pelo switch, o espaço de buffer é usado em uma ordem específica 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 headroom (muito pequenos)

  • Tráfego unicast sem perdas:

    1. Buffers dedicados

    2. Buffers compartilhados

    3. Buffers sem perda de cabeça

    4. Buffers globais de headroom (muito pequenos)

  • Tráfego multidestinação:

    1. Buffers dedicados

    2. Buffers compartilhados

    3. Buffers globais de headroom (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 o pool de buffer dedicado primeiro 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 de buffer compartilhado dinâmico para absorver explosões de tráfego.

Valores padrão do pool de buffer

Você pode visualizar os valores padrão ou configurados de pool de buffer de entrada e saída em unidades KB usando o show class-of-service shared-buffer comando operacional. Você pode visualizar os valores do pool de buffer compartilhado configurado em unidades percentuais 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 de entrada e saída separada, 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 de buffer dedicado e no espaço de buffer compartilhado. O tamanho do pool de buffer total não é configurável pelo usuário, mas a alocação de espaço de buffer para os pools de buffer dedicados e compartilhados é configurável pelo usuário.

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

Nos switches QFX5100, 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.

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

Nos switches QFX5220, 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 de buffer compartilhado para pools de buffer de entrada e saída individuais é a mesma em uma base percentual, embora os valores absolutos sejam diferentes. Por exemplo, o buffer sem perda de ingresso padrão é de 9% do espaço total de buffer de entrada compartilhada em todos os switches, embora o valor absoluto padrão do buffer sem perda de entrada difere do switch para o switch.

Shared Ingress Buffer Default Values

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

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

Buffer de ingresso compartilhado total

Buffer sem perdas

Buffer sem perda de cabeça

Buffer de perda

29224

2630.16

13150.80

13443.04

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

Tabela 6: QFX5200-48Y Switch Padrão De entrada compartilhada Valores de buffer (KB)

Buffer de ingresso compartilhado total

Buffer sem perdas

Buffer sem perda de cabeça

Buffer de perda

19154.69

1723.92

8619.61

8811.16

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

Tabela 7: QFX5110 e QFX5200-32C Padrão de buffer de ingresso compartilhado (KB)

Buffer de ingresso compartilhado total

Buffer sem perdas

Buffer sem perda de cabeça

Buffer de perda

11779.62

1060.17

5300.83

5418.63

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

Tabela 8: QFX5100, EX4600 e OCX Series Default Shared Ingress Buffer Values (KB)

Buffer de ingresso compartilhado total

Buffer sem perdas

Buffer sem perda de cabeça

Buffer de perda

9567.19 KB

861,05 KB

4305,23 KB

4400.91 KB

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

Tabela 9: QFX3500 e QFX3600 valores de buffer de entrada compartilhada (KB) padrão do switch

Buffer de ingresso compartilhado total

Buffer sem perdas

Buffer sem perda de cabeça

Buffer de perda

7202 KB

648,18 KB

3240,9 KB

3312,92 KB

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

Tabela 10: Valores de buffer de ingresso compartilhados padrão (porcentagem)

Buffer de ingresso compartilhado total

Buffer sem perdas

Buffer sem perda de cabeça

Buffer de perda

100%

9%

45%

46%

Shared Egress Buffer Default Values

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

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

Buffer de saída compartilhado total

Buffer sem perdas

Buffer de perda

Multicast Buffer

28080

14040

8704.80

5335.20

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

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

Buffer de saída compartilhado total

Buffer sem perdas

Buffer de perda

Multicast Buffer

19115.69

9557.84

5925.86

3631.98

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

Tabela 13: QFX5110 e QFX5200-32C Valores de buffer de saída compartilhada (KB)

Buffer de saída compartilhado total

Buffer sem perdas

Buffer de perda

Multicast Buffer

11232

5616

3481.92

2134

Nota:

O 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 ingresso de pacotes de 1000pps. Isso ocorre porque o número de fluxos de trabalho no QFX5200-32C é indiretamente proporcional ao tamanho do pacote e diretamente proporcional aos buffers compartilhados multicast disponíveis.

A Tabela 14 mostra os valores padrão de alocação de buffer compartilhado 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 de saída compartilhado total

Buffer sem perdas

Buffer de perda

Multicast Buffer

8736 KB

4368 KB

2708.16 KB

1659,84 KB

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

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

Buffer de saída compartilhado total

Buffer sem perdas

Buffer de perda

Multicast Buffer

6656 KB

3328 KB

2063.36 KB

1264,64 KB

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

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

Buffer de saída compartilhado total

Buffer sem perdas

Buffer de perda

Multicast Buffer

100%

50%

31%

19%

Valores padrão dedicados do pool de buffer

O sistema reserva pools 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 de buffer não reservado disponível para o pool de buffer compartilhado. Se você reduzir a porcentagem de espaço de buffer não servido disponível alocado no pool de buffer compartilhado, o espaço de buffer não servido 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 de 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 KB para QFX5210, QFX5200, QFX5110, QFX5100, QFX3500, QFX3600, EX4600 e switches da Série OCX.

Tabela 17: Entrada padrão e valores de pool de buffer dedicados de saída 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 de configuração de buffer compartilhado 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 fornece recomendações de configuração de buffer compartilhado para cinco cenários básicos de tráfego de rede:

  • Tráfego equilibrado — a rede transporta uma combinação balanceada 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 é habilitado).

Nota:

O tráfego sem perdas é definido como tráfego no qual você habilita o PFC a garantir o 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 a PAUSA Ethernet. 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:

Alterar a configuração do buffer é um evento disruptivo. O tráfego para em todas as portas até que a reprogramação do buffer esteja completa. Isso inclui alterar 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 compartilhado recomendadas para suas condições de tráfego de 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 configuração de buffer otimizado.

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

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

Nota:

Nos switches da Série OCX, a otimização padrão de configuração de 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 padrão de buffer compartilhado para redes que transportam uma mistura balanceada de tráfego, especialmente se você estiver usando as configurações padrão de CoS. A Tabela 18 mostra as alocações padrão de buffer compartilhado de entrada:

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

Buffer de ingresso compartilhado total

Buffer sem perdas

Buffer sem perda de cabeça

Buffer de perda

100%

9%

45%

46%

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

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

Buffer de saída compartilhado total

Buffer sem perdas

Buffer de perda

Multicast Buffer

100%

50%

31%

19%

Tráfego Unicast de melhor esforço

Se sua rede transporta o tráfego unicast de melhor esforço (com perda), a configuração padrão de buffer compartilhado aloca muito espaço de 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 (consulte a Tabela 20) e a saída das configurações de buffer compartilhado (consulte a Tabela 21):

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

Buffer de ingresso compartilhado total

Buffer sem perdas

Buffer sem perda de cabeça

Buffer de perda

100%

5%

0%

95%

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

Buffer de saída compartilhado total

Buffer sem perdas

Buffer de perda

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 o tráfego de melhor esforço (com perda) e permite a PAUSA da Ethernet nos links, a configuração padrão de buffer compartilhado 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 compartilhado de entrada (consulte a Tabela 22) e as configurações de buffer compartilhado de saída (consulte a Tabela 23):

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

Buffer de ingresso compartilhado total

Buffer sem perdas

Buffer sem perda de cabeça

Buffer de perda

70%

5%

80%

15%

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

Buffer de saída compartilhado total

Buffer sem perdas

Buffer de perda

Multicast Buffer

100%

5%

75%

20%

Veja exemplo: configuração recomendada do pool de buffer compartilhado para redes com tráfego de melhor esforço em links com Ethernet PAUSE 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 tiver tráfego multicast de melhor esforço (com perda), a configuração padrão de buffer compartilhado aloca muito espaço de 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 (consulte a Tabela 24) e a saída das configurações de buffer compartilhado (consulte a Tabela 25):

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

Buffer de ingresso compartilhado total

Buffer sem perdas

Buffer sem perda de cabeça

Buffer de perda

100%

5%

0%

95%

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

Buffer de saída compartilhado total

Buffer sem perdas

Buffer de perda

Multicast Buffer

100%

5%

20%

75%

Veja exemplo: configuração recomendada do pool de buffer compartilhado para redes com tráfego multicast principalmente, 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, a configuração padrão de buffer compartilhado 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 compartilhado de entrada (veja a Tabela 26) e as configurações de buffer compartilhado de saída (consulte a Tabela 27):

Tabela 26: Configuração recomendada de buffer compartilhado de ingresso para redes com tráfego principalmente sem perdas

Buffer de ingresso compartilhado total

Buffer sem perdas

Buffer sem perda de cabeça

Buffer de perda

100%

15%

80%

5%

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

Buffer de saída compartilhado total

Buffer sem perdas

Buffer de perda

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 dar melhor suporte à mistura de tráfego em sua rede. Ajuste as configurações gradualmente para ajustar a alocação de buffer compartilhado. 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 incorretamente pode causar problemas, como o congestionamento da porta de entrada.

CUIDADO:

Alterar a configuração do buffer é um evento disruptivo. O tráfego para em todas as portas até que a reprogramação do buffer esteja completa.

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 preenchem antes que as filas de entrada possam se esvaziar.

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 compartilhado.

Para tráfego de melhor esforço (unicast e multidestinação), a partição combinada de buffer compartilhado com perda de ingresso e buffers dedicados de entrada deve ser menor do que as partições combinadas de buffer compartilhados com perda de saída e multicast, 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 descartados nas filas de saída. (A queda de pacotes na entrada impede que os agendadores de saída funcionem corretamente.)

Para o tráfego sem perdas (tráfego no qual você habilita o PFC), a partição combinada de buffer compartilhado sem perdas e uma porção razoável da partição de buffer de entrada, além dos buffers dedicados, devem ser menores do que a partição total de buffer compartilhado sem perdas e buffers dedicados. (Uma porção razoável do buffer de entrada é de aproximadamente 20 a 25% do espaço de buffer, mas isso varia dependendo de quanto espaço de cabeça de buffer é necessário para suportar o tráfego sem perdas.) Quando essas condições são atendidas, se houver congestionamento na 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 totais 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 comprometimento. Nesse caso, uma mensagem de syslog é exibida no console. Por exemplo:

Se a configuração do buffer se comprometer, 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 de PFC, que afeta a necessidade de buffers sem perdas e buffers sem perdas — quanto mais prioridades você pausa, mais espaço de buffer sem perdas e sem perda você precisa), então tente a operação de compromisso novamente.

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

Se você receber uma mensagem de syslog que diz que a configuração do 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.

Regras e considerações de configuração de buffer geral

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

  • Alterar a configuração do buffer é um evento disruptivo. O tráfego para em todas as portas até que a reprogramação do buffer esteja completa.

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

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

  • A soma de todas as partições de buffer compartilhado de saída deve ser igual 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 atende ao tráfego sujeito à PAUSA da Ethernet.

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

  • Muito pouco espaço de buffer dedicado resulta em muita concorrência para espaço de buffer compartilhado.

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

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

  • A configuração ideal de buffer 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 a esse tipo de tráfego (por exemplo, você pode reduzir os tamanhos dos buffers sem perdas e sem perdas).