Entender os agendadores de porta CoS
O agendamento de portas define as propriedades de classe de serviço (CoS) das filas de saída. Você configura as propriedades de CoS em um agendador e, em seguida, mapeia o agendador para uma classe de encaminhamento. As classes de encaminhamento são, por sua vez, mapeadas para filas de saída. Os classificadores mapeiam o tráfego de entrada em classes de encaminhamento com base nos pontos de código IEEE 802.1p, DSCP ou EXP.
As propriedades da fila de saída incluem a quantidade de largura de banda da interface atribuída à fila, o tamanho do buffer de memória alocado para armazenar pacotes, a prioridade de agendamento da fila e os perfis de queda de detecção antecipada aleatória ponderada (WRED) associados à fila para controlar a queda de pacotes durante períodos de congestionamento.
O agendador mapeia agendadores de mapa para classes de encaminhamento. A fila de saída mapeada para uma classe de encaminhamento recebe os recursos e as propriedades de porta definidos no agendador mapeado para essa classe de encaminhamento. Você aplica um mapa do planejador a uma interface para aplicar o agendamento de filas a uma porta. Você pode associar diferentes mapas de agendador a diferentes interfaces para configurar o agendamento específico da porta para encaminhar classes (filas de saída).
O agendamento de portas é mais simples de configurar do que o agendamento hierárquico de portas de duas camadas de seleção de transmissão aprimorada (ETS). O agendamento de portas aloca largura de banda de porta diretamente para filas de saída, em vez de alocar largura de banda de porta para filas de saída por meio de uma hierarquia de agendamento. Enquanto a programação de portas é mais simples, o ETS é mais flexível.
O ETS aloca largura de banda de porta em uma hierarquia de duas camadas:
A largura de banda da porta é alocada primeiro a um grupo prioritário usando as propriedades de CoS definidas em um perfil de controle de tráfego. Um grupo prioritário é um grupo de classes de encaminhamento (que são mapeadas para filas de saída) que exigem tratamento de CoS semelhante.
A largura de banda do grupo de prioridade é alocada para as filas de saída (que são mapeadas para classes de encaminhamento) usando as propriedades definidas no agendador da fila de saída.
Quando você configura a largura de banda para uma fila, o switch considera apenas os dados como a largura de banda configurada. O switch não leva em conta a largura de banda consumida pelo preâmbulo e a lacuna entre quadros (IFG). Portanto, ao calcular e configurar os requisitos de largura de banda para uma fila, considere o preâmbulo e o IFG, bem como os dados nos cálculos.
Componentes de agendamento de filas
A Tabela 1 fornece uma referência rápida aos componentes do agendador que você pode configurar para determinar as propriedades de largura de banda das filas de saída (classes de encaminhamento).
Componente do Agendador da Fila de Saída |
Descrição |
|---|---|
Tamanho do buffer |
Define o tamanho do buffer da fila. |
Mapa de perfil de queda |
Mapeia um perfil de queda para uma prioridade de perda de pacotes. Os componentes do mapa de perfil suspenso incluem:
|
Taxa de excesso |
Define a porcentagem de largura de banda extra (largura de banda que não é usada por outras filas) que uma fila pode receber. Se não estiver definido, o switch usará a taxa de transmissão para determinar quanta largura de banda extra a fila pode usar. Largura de banda extra é a largura de banda restante após todos os requisitos de largura de banda garantida serem atendidos. |
Notificação explícita de congestionamento |
Habilita a notificação explícita de congestionamento (ECN) na fila. |
Prioridade |
Define a prioridade de agendamento aplicada à fila. |
Taxa de transmissão |
Define a largura de banda mínima garantida em filas de baixa e alta prioridade. Por padrão, se você não configurar uma taxa de excesso, a largura de banda extra será compartilhada entre as filas proporcionalmente à taxa de transmissão de cada fila. Em filas de prioridade rigorosa e alta, define a quantidade de largura de banda que recebe tratamento de encaminhamento de prioridade estrita e alta prioridade. O tráfego que excede a taxa de transmissão compartilha o pool de largura de banda em excesso de porta com base no peso de compartilhamento de largura de banda em excesso de prioridade estrita de "1", que não é configurável. A quantidade real de largura de banda extra que o tráfego que excede a taxa de transmissão recebe depende de quantas outras filas consomem largura de banda em excesso e das taxas excedentes dessas filas. Se você configurar duas ou mais filas de prioridade estrita e alta em uma porta, deverá configurar uma taxa de transmissão nessas filas. No entanto, é altamente recomendável que você sempre configure uma taxa de transmissão em filas de prioridade estrita para evitar que elas deixem outras filas famintas. |
A Tabela 2 fornece uma referência rápida a alguns componentes de configuração de agendamento relacionados.
Componentes de agendamento relacionados |
Descrição |
|---|---|
Classe de encaminhamento |
Mapeia o tráfego classificado na classe de encaminhamento na entrada do switch para uma fila de saída. Os classificadores mapeiam classes de encaminhamento para pontos de código IEEE 802.1p, DSCP ou EXP. Uma classe de encaminhamento, uma fila de saída e bits de ponto de código são mapeados entre si e identificam o mesmo tráfego. (Os bits do ponto de código identificam o tráfego de entrada. Os classificadores atribuem tráfego a classes de encaminhamento com base nos bits de ponto de código. As classes de encaminhamento são mapeadas para filas de saída. Esse mapeamento determina a fila de saída que cada classe de tráfego usa nas interfaces de saída do switch.) |
Fila de saída (fila de saída virtual) |
As filas de saída são virtuais e são compostas pelos buffers físicos no pipeline de entrada de cada chip de Mecanismo de Encaminhamento de Pacotes (PFE) para armazenar o tráfego de cada porta de saída. Cada fila de saída em uma porta de saída tem espaço de armazenamento de buffer em cada pipeline de entrada em todos os chips PFE no switch. O mapeamento do espaço de armazenamento do pipeline de entrada para filas de saída é de 1 para 1, portanto, cada fila de saída recebe espaço de buffer em cada pipeline de entrada. Veja como entender as filas de saída virtual (VOQs) de CoS em switches QFX10000 para obter mais informações. |
Mapa do agendador |
Mapeia agendadores para classes de encaminhamento (as classes de encaminhamento são mapeadas para filas, portanto, uma classe de encaminhamento representa uma fila e o agendador mapeado para uma classe de encaminhamento determina as propriedades de CoS da fila de saída mapeada para essa classe de encaminhamento). |
Agendadores padrão
Se você não configurar o CoS, o switch usará suas configurações padrão. Cada classe de encaminhamento requer um agendador para definir as propriedades de CoS da classe de encaminhamento e sua fila de saída. A configuração padrão tem quatro classes de encaminhamento: best-effort (fila 0), fcoe (fila 3), no-loss (fila 4) e network-control (fila 7). Cada classe de encaminhamento padrão é mapeada para um agendador padrão. Você pode usar os agendadores padrão ou definir novos agendadores para essas quatro classes de encaminhamento. Para classes de encaminhamento configuradas explicitamente, deve-se configurar explicitamente um planejador de filas para alocar recursos de CoS para o tráfego mapeado para cada classe de encaminhamento.
A Tabela 3 mostra os agendadores de fila padrão.
Agendador padrão e número da fila |
Taxa de transmissão (largura de banda mínima garantida) |
Modelagem de taxa (largura de banda máxima) |
Compartilhamento de largura de banda em excesso |
Prioridade |
Tamanho do buffer |
|---|---|---|---|---|---|
Agendador de classe de encaminhamento de melhor esforço (fila 0) |
15% |
Nenhum |
15% |
baixa |
15% |
Agendador de classe de encaminhamento FCoE (fila 3) |
35% |
Nenhum |
35% |
baixa |
35% |
Agendador de classe de encaminhamento sem perdas (fila 4) |
35% |
Nenhum |
35% |
baixa |
35% |
Agendador de classe de encaminhamento de controle de rede (fila 7) |
15% |
Nenhum |
15% |
baixa |
15% |
Por padrão, a largura de banda mínima garantida (taxa de transmissão) determina a quantidade de largura de banda excedente (extra) que uma fila pode compartilhar. A largura de banda extra é alocada às filas proporcionalmente à taxa de transmissão de cada fila. Você pode configurar o compartilhamento de largura de banda (taxa de excesso) para substituir a configuração padrão e configurar a porcentagem de largura de banda em excesso independentemente da taxa de transmissão.
Por padrão, apenas os quatro agendadores padrão mostrados na Tabela 3 têm tráfego mapeado para eles. Somente as classes e filas de encaminhamento associadas aos agendadores padrão recebem largura de banda padrão, com base na taxa de transmissão do agendador padrão. (Você pode configurar agendadores e classes de encaminhamento para alocar largura de banda para outras filas ou para alterar a largura de banda padrão de uma fila padrão.) Se uma classe de encaminhamento não transportar tráfego, a largura de banda alocada para essa classe de encaminhamento estará disponível para outras classes de encaminhamento. O tráfego unicast e multidestino (falha de multicast, broadcast e pesquisa de destino) usa as mesmas classes de encaminhamento e filas de saída.
O agendamento padrão é o agendamento de portas. Se você configurar o agendamento em vez de usar o agendamento padrão, poderá configurar o agendamento de portas ou o agendamento hierárquico de portas da seleção de transmissão aprimorada (ETS).
O agendamento padrão usa o agendamento de rodízio ponderado (WRR). Cada fila recebe uma parte (peso) da largura de banda total da porta disponível. O peso de agendamento é baseado na taxa de transmissão (largura de banda mínima garantida) do agendador padrão para essa fila. Por exemplo, a fila 7 recebe um peso de agendamento padrão de 15% da largura de banda da porta disponível e a fila 4 recebe um peso de agendamento padrão de 35% da largura de banda disponível. As filas são mapeadas para classes de encaminhamento (por exemplo, a fila 7 é mapeada para a classe de encaminhamento de controle de rede e a fila 4 é mapeada para a classe de encaminhamento sem perdas), portanto, as classes de encaminhamento recebem a largura de banda padrão para as filas para as quais estão mapeadas. A largura de banda não utilizada é compartilhada com outras filas padrão.
Você deve mapear explicitamente o tráfego para filas não padrão (não configuradas) e agendar recursos de largura de banda para essas filas se quiser usá-los para encaminhar o tráfego. Por padrão, as filas 1, 2, 5 e 6 não estão configuradas. As filas não configuradas têm um peso de agendamento padrão de 1 para que possam receber uma pequena quantidade de largura de banda caso precisem encaminhar tráfego.
Se você mapear o tráfego para uma fila não configurada e não agendar largura de banda para a fila, a fila receberá apenas a quantidade de largura de banda proporcional ao seu peso padrão (1). A quantidade real de largura de banda que uma fila não configurada recebe depende da largura de banda que as outras filas na porta estão usando.
Se as outras filas usarem menos do que a quantidade alocada de largura de banda, as filas não configuradas poderão compartilhar a largura de banda não utilizada. Devido aos seus pesos de agendamento, as filas configuradas têm maior prioridade para largura de banda do que as filas não configuradas. Se uma fila configurada precisar de mais largura de banda, menos largura de banda estará disponível para filas não configuradas. No entanto, as filas não configuradas sempre recebem uma quantidade mínima de largura de banda com base em seu peso de agendamento (1). Se você mapear o tráfego para uma fila não configurada, para alocar largura de banda a essa fila, configure um agendador e mapeie-o para a classe de encaminhamento mapeada para a fila e, em seguida, aplique o mapa do agendador à porta.
Prioridade de agendamento
A prioridade de agendamento determina a ordem na qual uma interface transmite tráfego de suas filas de saída. As configurações de prioridade garantem que as filas que contêm tráfego importante recebam acesso priorizado à largura de banda da interface de saída. A configuração de prioridade no agendador determina a prioridade da fila (um mapa do agendador mapeia o agendador para uma classe de encaminhamento, a classe de encaminhamento é mapeada para uma fila de saída e a fila de saída usa as propriedades de CoS definidas no agendador).
Por padrão, todas as filas são filas de baixa prioridade. O switch suporta três níveis de prioridade de agendamento:
-
Baixo — No estado de CoS padrão, todas as filas são filas de baixa prioridade. As filas de baixa prioridade transmitem tráfego com base no algoritmo de rodízio ponderado (WRR). Se você configurar prioridades de agendamento maiores do que baixa prioridade nas filas, as filas de prioridade mais alta serão atendidas antes das filas de baixa prioridade.
-
Médio-baixo — (somente switches da Série QFX10000) As filas de prioridade média-baixa transmitem tráfego com base no algoritmo round-robin ponderado (WRR) e têm prioridade de agendamento mais alta do que as filas de baixa prioridade.
-
Médio-alto — (somente switches da Série QFX10000) As filas de prioridade média-alta transmitem tráfego com base no algoritmo round-robin ponderado (WRR) e têm prioridade de agendamento mais alta do que as filas de prioridade média-baixa.
-
Alto — (somente switches da Série QFX10000) As filas de alta prioridade transmitem tráfego com base no algoritmo de rodízio ponderado (WRR) e têm prioridade de agendamento mais alta do que as filas de prioridade média-alta.
-
Strict-high — Você pode configurar filas como
strict-highprioridade. As filas de prioridade estrita recebem tratamento preferencial sobre todas as outras filas e recebem toda a largura de banda configurada antes que outras filas sejam atendidas. Outras filas não transmitem tráfego até que as filas de prioridade estrita e alta estejam vazias e recebam a largura de banda que resta depois que as filas de prioridade estrita alta são atendidas. Como as filas de prioridade estrita alta são sempre atendidas primeiro, as filas de prioridade estrita alta podem privar outras filas em uma porta. Considere cuidadosamente quanta largura de banda você deseja alocar para filas de prioridade estrita alta para evitar deixar outras filas famintas.
Para dispositivos QFX10002, QFX10008 e QFX10016, as filas de prioridade estrita alta compartilham o excesso de largura de banda com base em um peso de compartilhamento de excesso de largura de banda de 1, que não é configurável. A quantidade real de largura de banda extra que o tráfego de prioridade estrita e alta que excede a taxa de transmissão recebe depende de quantas outras filas consomem largura de banda em excesso e das taxas excedentes dessas filas.
Para o QFX10002-60C, o excesso de tráfego na fila strict-high deixará outras filas de alta/baixa prioridade famintas.
Quando você define prioridades de agendamento para filas em vez de usar as prioridades padrão (por padrão, todas as filas são de baixa prioridade), o switch usa as prioridades para determinar a ordem de transmissão de pacotes das filas. O switch atende ao tráfego de diferentes prioridades de agendamento em uma ordem estrita, usando o agendamento round-robin (RR) para arbitrar o serviço de transmissão de fila entre filas da mesma prioridade. O switch transmite pacotes pela seguinte ordem:
-
Tráfego de prioridade rigorosa e alta dentro da taxa de transmissão da fila configurada (em filas de prioridade estrita e alta, a taxa de transmissão limita a quantidade de tráfego tratada como tráfego de prioridade estrita e alta). Quando o tráfego chega em uma fila de prioridade estrita, o switch o encaminha antes de atender a outras filas.
-
Tráfego de alta prioridade dentro da taxa de transmissão da fila configurada (em filas de alta prioridade, a taxa de transmissão define a largura de banda mínima garantida)
-
Tráfego de prioridade média-alta dentro da taxa de transmissão da fila configurada (em filas de prioridade média-alta, a taxa de transmissão define a largura de banda mínima garantida)
-
Tráfego de prioridade média-baixa dentro da taxa de transmissão da fila configurada (em filas de prioridade média-baixa, a taxa de transmissão define a largura de banda mínima garantida)
-
Tráfego de baixa prioridade dentro da taxa de transmissão da fila configurada (em filas de baixa prioridade, a taxa de transmissão define a largura de banda mínima garantida)
-
Todo o tráfego que excede a taxa de transmissão da fila usando a programação de rodízio ponderado (WRR). O tráfego que excede a taxa de transmissão da fila disputa o excesso de largura de banda da porta (largura de banda que não é consumida depois que a porta atende a todos os requisitos de largura de banda garantidos). O switch aloca e pondera o excesso de largura de banda para filas de baixa prioridade com base na taxa de excesso de fila configurada ou na taxa de transmissão se nenhuma taxa de excesso estiver configurada. O switch aloca e pondera o excesso de largura de banda para filas de alta prioridade estrita com base no peso codificado "1", que não é configurável. A quantidade real de largura de banda extra que o tráfego que excede a taxa de transmissão obtém depende de quantas outras filas consomem largura de banda em excesso e da ponderação dessas filas.
Se você usar a configuração de CoS padrão, todas as filas serão filas de baixa prioridade e transmitirão tráfego com base no algoritmo de rodízio ponderado (WRR).
Programação de largura de banda
Um planejador de filas aloca largura de banda de porta para uma fila (o planejador é mapeado para uma classe de encaminhamento e a classe de encaminhamento é mapeada para uma fila). O perfil de largura de banda, que consiste em largura de banda mínima garantida, largura de banda máxima (modelagem de fila) e propriedades de compartilhamento de largura de banda em excesso configuradas no agendador, define a quantidade de largura de banda de porta que uma fila pode consumir durante períodos de transmissão normais e congestionados.
O agendador reavalia regularmente se cada fila individual está dentro de seu perfil de largura de banda definido, comparando a quantidade de dados que a fila recebe com a quantidade de largura de banda que o agendador aloca para a fila. Quando a quantidade recebida é menor que a quantidade mínima garantida de largura de banda, a fila é considerada de perfil. Uma fila fica fora de perfil quando o valor recebido é maior do que o valor mínimo garantido. Os dados da fila fora do perfil são transmitidos somente se a largura de banda extra (excessiva) estiver disponível. Caso contrário, ele será armazenado em buffer se houver espaço de buffer disponível. Se nenhum espaço de buffer estiver disponível, o tráfego poderá ser descartado.
O switch fornece recursos que permitem controlar a alocação de largura de banda de porta para filas, para que você possa atender às demandas de diferentes tipos de tráfego em uma porta:
- Largura de banda mínima garantida
- Largura de banda máxima (modelagem de taxa em filas e LAGs de baixa e alta prioridade)
- Limitando a largura de banda consumida por filas de alta prioridade estrita
- Compartilhamento de largura de banda extra (taxa de excesso em filas de baixa e alta prioridade)
Largura de banda mínima garantida
A taxa de transmissão determina a largura de banda mínima garantida para cada classe de encaminhamento mapeada para uma fila de saída e, portanto, determina a garantia mínima de largura de banda nessa fila.
Se você não quiser usar a configuração padrão, poderá definir a largura de banda mínima garantida de várias maneiras e com várias opções, usando a [set class-of-service schedulers scheduler-name transmit-rate (rate | percent percentage) <exact>]instrução:
Taxa — Defina a largura de banda mínima garantida como uma quantidade fixa (taxa) em bits por segundo de largura de banda da porta (por exemplo, 2 Gbps ou 800 Mbps).
Porcentagem — Defina a largura de banda mínima garantida como uma porcentagem da largura de banda da porta (por exemplo, 25%).
Exato — (somente switches QFX10000) Molde a fila para a taxa de transmissão de modo que a taxa de transmissão seja a quantidade máxima de largura de banda que uma fila pode usar. A fila não pode compartilhar largura de banda de porta extra se você configurar a opção exata. Configurar uma taxa de transmissão como exata é como você define uma taxa de modelagem para configurar a quantidade máxima de largura de banda que as filas de baixa e alta prioridade podem consumir, e a máxima é a taxa de transmissão. Você não pode usar a
exactopção em uma fila de prioridade estrita e alta.Observação:Nos switches QFX10000, a sobreinscrição de todas as 8 filas configuradas com a
transmit rate exact(shaping) declaração no[edit class-of-service schedulers scheduler-name]nível de hierarquia pode resultar em menos de 100% de utilização da largura de banda da porta.Compartilhamento de largura de banda extra — em filas de baixa e alta prioridade, se você configurar uma taxa excedente, a taxa excedente determinará a quantidade de largura de banda de porta extra que uma fila pode usar. Se você não configurar uma taxa de excesso, a taxa de transmissão determinará a quantidade de largura de banda excedente (extra) que uma fila de baixa e alta prioridade pode compartilhar. Se você não configurar uma taxa de excesso, cada fila compartilhará largura de banda extra proporcionalmente à sua taxa de transmissão.
Você não pode configurar uma taxa de excesso em filas de prioridade estrita e alta. As filas de prioridade estrita e alta compartilham largura de banda extra com base em um peso de agendamento de "1", que não é configurável. A quantidade real de largura de banda extra que o tráfego que excede a taxa de transmissão obtém depende de quantas outras filas consomem largura de banda em excesso e das taxas excedentes dessas filas.
A soma das taxas de transmissão das filas em uma porta não deve exceder a largura de banda total dessa porta. (Você não pode garantir uma largura de banda mínima combinada para as filas em uma porta que seja maior que a largura de banda total da porta.)
Para taxas de transmissão abaixo de 1 Gbps, recomendamos que você configure a taxa de transmissão como uma porcentagem em vez de uma taxa fixa. Isso ocorre porque o sistema converte taxas fixas em porcentagens e pode arredondar pequenas taxas fixas para uma porcentagem menor. Por exemplo, uma taxa fixa de 350 Mbps é arredondada para 3%.
A largura de banda que uma fila de baixa ou alta prioridade consome pode exceder a taxa mínima configurada se houver largura de banda adicional disponível e se você não configurar a taxa de transmissão como exact nos switches QFX10000. Durante os períodos de congestionamento, a taxa de transmissão configurada é a largura de banda mínima garantida para a fila. Esse comportamento permite garantir que cada fila receba a quantidade de largura de banda apropriada ao nível de serviço exigido e também seja capaz de compartilhar largura de banda não utilizada.
Largura de banda máxima (modelagem de taxa em filas e LAGs de baixa e alta prioridade)
Nos switches QFX10000, a palavra-chave opcional exact na declaração de configuração molda a [set class-of-service schedulers scheduler-name transmit-rate (rate | percent percentage) <exact>] taxa de transmissão de filas de baixa e alta prioridade. Quando você especifica a exact opção, o switch descarta o tráfego que excede a taxa de transmissão configurada, mesmo que haja excesso de largura de banda disponível. A modelagem de taxa impede que uma fila use mais largura de banda do que o apropriado para o nível de serviço planejado do tráfego na fila. Você não pode usar a exact opção em uma fila de prioridade estrita e alta.
Configurar a modelagem de taxa em uma interface LAG usando a ] declaração pode resultar em fluxos de tráfego programados recebendo mais largura de banda de enlace LAG do que o [edit class-of-service interfaces lag-interface-name scheduler-map scheduler-map-nameesperado.
As interfaces LAG consistem em dois ou mais links Ethernet agrupados para funcionar como uma única interface. O switch pode hash o tráfego que entra em uma interface LAG em qualquer link de membro na interface LAG. Quando você configura uma modelagem de taxa e a aplica a uma interface LAG, a maneira como o switch aplica a modelagem de taxa ao tráfego depende de como o switch faz hash do tráfego nos links LAG.
Para ilustrar como o hash de enlace afeta a maneira como o switch aplica a modelagem de taxa ao tráfego LAG, vejamos uma interface LAG chamada ae0 que tem dois links de membros, xe-0/0/20 e xe-0/0/21. No LAG ae0, configuramos a modelagem de taxa incluindo 2g a transmit-rate 2g exact declaração no agendador de fila e aplicamos o agendador ao tráfego atribuído à classe de encaminhamento, que é mapeada para a best-effort fila 0de saída. Quando o best-effort tráfego na classe de encaminhamento atinge a interface LAG, o switch faz hash do tráfego em um dos dois links de membros.
Se o switch fizer hash de todo o best-effort tráfego no mesmo link LAG, o tráfego receberá um máximo de 2g de largura de banda nesse link. Nesse caso, o limite cumulativo pretendido de 2g para o tráfego de melhor esforço no LAG é aplicado.
No entanto, se o switch fizer hash do best-effort tráfego em ambos os links LAG, o tráfego receberá um máximo de 2g de largura de banda em cada link LAG, não 2g como um total cumulativo para todo o LAG. O resultado é que o tráfego de melhor esforço recebe um máximo de 4g no LAG, não os 2g definidos pela rate shaping declaração. Quando o hash espalha o tráfego atribuído a uma fila de saída (que é mapeada para uma classe de encaminhamento) em vários links LAG, a taxa de modelagem efetiva (largura de banda máxima cumulativa) no LAG é:
(número de interfaces de membros LAG) x (taxa de modelagem para a fila de saída) = taxa de modelagem LAG cumulativa
Limitando a largura de banda consumida por filas de alta prioridade estrita
Você pode limitar a quantidade de tráfego que recebe tratamento de prioridade estrita e alta em uma fila configurando uma taxa de transmissão na fila de prioridade estrita alta A taxa de transmissão define a quantidade de tráfego que recebe tratamento de prioridade estrita e alta. O tráfego que excede a taxa de transmissão compartilha o pool de largura de banda em excesso de porta com base no peso de compartilhamento de largura de banda em excesso de prioridade estrita de "1", que não é configurável. A quantidade real de largura de banda extra que o tráfego que excede a taxa de transmissão obtém depende de quantas outras filas consomem largura de banda em excesso e das taxas excedentes dessas filas. Limitar a quantidade de tráfego que recebe tratamento de prioridade estrita a alta evita que outras filas fiquem sem energia, ao mesmo tempo em que garante que a quantidade de tráfego especificada na taxa de transmissão receba tratamento de prioridade estrita a alta.
A configuração de uma taxa de transmissão em uma fila de baixa ou alta prioridade define a largura de banda mínima garantida da fila, conforme descrito em Largura de banda mínima garantida.
Se você configurar filas de alta prioridade estrita, é altamente recomendável que você configure uma taxa de transmissão nas filas para evitar que elas deixem filas de baixa e alta prioridade famintas nessa porta. Isso é especialmente importante se você configurar mais de uma fila de prioridade estrita e alta em uma porta. Embora não seja obrigatório configurar uma taxa de transmissão em filas de prioridade estrita e alta, se você não configurar uma taxa de transmissão, as filas de prioridade estrita alta poderão consumir toda a largura de banda da porta e privar as outras filas.
Compartilhamento de largura de banda extra (taxa de excesso em filas de baixa e alta prioridade)
A largura de banda extra é essencialmente a largura de banda restante após o switch atender a todos os requisitos de largura de banda garantida. A largura de banda extra está disponível para tráfego de baixa e alta prioridade quando as filas em uma porta não usam toda a largura de banda da porta disponível.
Por padrão, a largura de banda extra da porta é compartilhada entre as classes de encaminhamento em uma porta proporcionalmente à taxa de transmissão de cada fila. Você pode configurar explicitamente a quantidade de largura de banda extra que uma fila pode compartilhar definindo um excess-rate no agendador de uma fila de baixa ou alta prioridade. A taxa de excesso configurada substitui a taxa de transmissão e determina a porcentagem de largura de banda extra que a fila pode consumir.
Você não pode configurar uma taxa de excesso em uma fila de prioridade estrita e alta. As filas de prioridade estrita e alta compartilham largura de banda em excesso com base em um peso de compartilhamento de largura de banda em excesso de "1", que não é configurável. A quantidade real de largura de banda extra que o tráfego de prioridade estrita e alta que excede a taxa de transmissão recebe depende de quantas outras filas consomem largura de banda em excesso e das taxas excedentes dessas filas.
O QFX 10002, o QFX 10008 e o QFX 10016 oferecem suporte a várias filas strict-high.
O QFX 10002-60C suporta apenas uma fila strict-high.
Um exemplo de alocação de largura de banda extra com base em taxas de transmissão é uma porta que tem tráfego em execução em três classes de encaminhamento, best-effort, fcoee network-control. Neste exemplo, a classe de encaminhamento tem uma taxa de transmissão de 2 Gbps, a best-effort classe fcoe de encaminhamento tem uma taxa de transmissão de 4 Gbps e network-control tem uma taxa de transmissão de 2 Gbps, para um total de 8 Gbps da largura de banda da porta. Depois de atender a largura de banda mínima garantida dessas três filas, a porta tem 2 Gbps de largura de banda extra disponível.
Se todas as três filas ainda tiverem pacotes para encaminhar, as filas receberão a largura de banda extra proporcionalmente às suas taxas de transmissão, de modo que a best-effort fila receberá 500 Mbps extras, a fcoe fila receberá 1 Mbps extra e a network-control fila receberá 500 Mbps extras.
Se você configurar uma taxa de excesso para uma fila, a taxa de excesso determinará a proporção de largura de banda extra que a fila recebe da mesma forma que o padrão (taxa de transmissão) determina a proporção de largura de banda extra que uma fila recebe. No exemplo anterior, se você configurou uma taxa de excesso de 20% na fcoe classe de encaminhamento e as taxas de transmissão das best-effort classes de encaminhamento e network-control encaminhamento permaneceram 2g (sem taxa de excesso configurada, portanto, a taxa de transmissão de 2g para cada fila ainda determina a taxa de excesso), os 2 Gbps de largura de banda extra seriam alocados uniformemente entre as três filas porque todas as três filas têm a mesma taxa de excesso.
No exemplo anterior, se você configurou uma taxa de excesso de 10% na fcoe classe de encaminhamento e as taxas de transmissão das best-effort classes de encaminhamento e network-control encaminhamento permaneceram 2g (novamente sem taxa de excesso configurada, portanto, a taxa de transmissão de 2g para cada fila ainda determina a taxa de excesso), os 2 Gbps de largura de banda extra seriam alocados 800 Mbps para a best-effort fila, 400 Mbps para a fcoe fila e 800 Mbps para a network-control fila (novamente, em proporção às taxas de excesso da fila).
Mapas de perfil suspenso do agendador
Os mapas de perfil de queda associam perfis de queda a agendadores de fila e prioridades de perda de pacotes (PLPs). Os perfis de descarte definem limites para descarte de pacotes durante períodos de congestionamento, com base no nível de preenchimento da fila e em uma probabilidade percentual de descarte de pacotes no nível de preenchimento de fila especificado. Em diferentes níveis de preenchimento, um perfil de descarte define diferentes probabilidades de descartar um pacote durante períodos de congestionamento.
Os classificadores atribuem tráfego de entrada a classes de encaminhamento (que são mapeadas para filas de saída) e também atribuem um PLP ao tráfego de entrada. O PLP pode ser baixo, médio-alto ou alto. Você pode classificar o tráfego com diferentes PLPs na mesma classe de encaminhamento para diferenciar o tratamento do tráfego dentro da classe de encaminhamento.
Em um mapa de perfil de queda, é possível configurar um perfil de queda diferente para cada PLP e associar (mapear) os perfis de queda a um planejador de filas. Um mapa do agendador mapeia o agendador da fila para uma classe de encaminhamento (fila de saída). O tráfego classificado na classe de encaminhamento usa as características de queda definidas nos perfis de queda que o mapa de perfil de queda associa ao planejador de filas. O perfil de queda que o tráfego usa depende do PLP que o classificador atribui ao tráfego. (Você pode mapear diferentes perfis de queda para a classe de encaminhamento para diferentes PLPs.)
Em resumo:
Os classificadores atribuem um dos três PLPs (baixo, médio-alto, alto) ao tráfego de entrada quando os classificadores atribuem tráfego a uma classe de encaminhamento.
Os perfis de descarte definem limites para descarte de pacotes em diferentes níveis de preenchimento de fila.
Os mapas de perfil de queda associam um perfil de queda a cada PLP e, em seguida, mapeiam os perfis de queda para agendadores.
O agendador mapeia agendadores de mapa para classes de encaminhamento e as classes de encaminhamento são mapeadas para filas de saída. O agendador mapeado para uma classe de encaminhamento determina as características de CoS da fila de saída mapeada para a classe de encaminhamento, incluindo o mapeamento do perfil de queda.
Você associa um mapa do agendador a uma interface para aplicar os perfis de descarte e outros elementos do agendador ao tráfego na classe de encaminhamento mapeada para o agendador nessa interface.
Tamanho do buffer
Nos switches QFX10000, o tamanho do buffer é a quantidade de tempo em milissegundos de largura de banda da porta que uma fila pode usar para continuar a transmitir pacotes durante períodos de congestionamento, antes que o buffer se esgote e os pacotes comecem a cair.
O switch pode usar até 100 ms de espaço de buffer total (combinado) para todas as filas em uma porta. Um tamanho de buffer configurado como um por cento é igual a 1 ms de uso do buffer. Um tamanho de buffer de 15% (o valor padrão para as filas de melhor esforço e controle de rede) é igual a 15 ms de uso de buffer.
O tamanho total do buffer do switch é de 4 GB. Uma porta de 40 Gigabits pode usar até 500 MB de espaço de buffer, o que equivale a 100 ms de largura de banda em uma porta de 40 Gigabits. Uma porta de 10 Gigabits pode usar até 125 MB de espaço de buffer, o que equivale a 100 ms de largura de banda em uma porta de 10 Gigabits. Os tamanhos totais de buffer das oito filas de saída em uma porta não podem exceder 100%, o que é igual ao buffer total de 100 ms disponível para uma porta. A quantidade máxima de espaço de buffer que qualquer fila pode usar também é de 100 ms (o que equivale a uma configuração de tamanho de buffer de 100%), mas se uma fila usar todo o buffer, nenhuma outra fila receberá espaço de buffer.
Não há alocação mínima de buffer, portanto, você pode definir o tamanho do buffer como zero (0) para uma fila. No entanto, recomendamos que, em filas nas quais você habilite o PFC para dar suporte ao transporte sem perdas, você aloque um mínimo de 5 ms (um tamanho mínimo de buffer de 5%). As duas filas padrão sem perdas, fcoe e no-loss, têm valores de tamanho de buffer padrão de 35 ms (35%).
Se você não configurar buffer-size e não configurar explicitamente um agendador de filas, o buffer-size padrão será a taxa de transmissão padrão da fila. Se você configurar explicitamente um planejador de filas, as alocações de buffer padrão não serão usadas. Se você configurar explicitamente um agendador de filas, configure o tamanho do buffer para cada fila no agendador, tendo em mente que o tamanho total do buffer das filas não pode exceder 100% (100 ms).
Se você não usar a configuração padrão, poderá configurar explicitamente o tamanho do buffer de fila de duas maneiras:
Como uma porcentagem — a fila recebe a porcentagem especificada de buffers de porta dedicados quando a fila é mapeada para o agendador e o agendador é mapeado para uma porta.
Como um remanescente — depois que a porta atende as filas que têm uma configuração explícita de tamanho de buffer percentual, o espaço de buffer dedicado da porta restante é dividido igualmente entre as outras filas às quais um agendador está anexado. (Nenhum agendador padrão ou explícito significa que não há alocação de buffer dedicado para a fila.) Se você configurar um agendador e não especificar um tamanho de buffer como uma porcentagem, o restante será a configuração padrão.
A alocação de buffer de fila é dinâmica, compartilhada entre as portas conforme necessário. No entanto, uma fila não pode usar mais do que sua quantidade configurada de espaço de buffer. Por exemplo, se você estiver usando a configuração de CoS padrão, a fila de melhor esforço receberá um máximo de 15 ms de espaço de buffer porque a taxa de transmissão padrão para a fila de melhor esforço é de 15%.
Se um switch tiver congestionamento, as filas continuarão a receber sua alocação total de buffer até que 90% do espaço de buffer de 4 GB seja consumido. Quando 90% do espaço de buffer está em uso, a quantidade de espaço de buffer por porta, por fila, é reduzida proporcionalmente ao tamanho do buffer configurado para cada fila. À medida que a porcentagem de espaço de buffer consumido sobe acima de 90%, a quantidade de espaço de buffer por porta, por fila, continua a ser reduzida.
Em portas de 40 Gigabits, como o buffer total é de 4 GB e o buffer máximo que uma porta pode usar é de 500 MB, até sete portas de 40 Gigabits podem consumir sua alocação total de 100 ms de espaço de buffer. No entanto, se uma oitava porta de 40 Gigabits exigir os 500 MB completos de espaço de buffer, as alocações de buffer serão reduzidas proporcionalmente porque o consumo de buffer está acima de 90%.
Em portas de 10 Gigabits, como o buffer total é de 4 GB e o buffer máximo que uma porta pode usar é de 125 MB, até 28 portas de 10 Gigabits podem consumir sua alocação total de 100 ms de espaço de buffer. No entanto, se uma 29ª porta de 10 Gigabits exigir 125 MB completos de espaço de buffer, as alocações de buffer serão reduzidas proporcionalmente porque o consumo de buffer está acima de 90%.
Notificação explícita de congestionamento
A ECN permite a notificação de congestionamento de ponta a ponta entre dois endpoints em redes baseadas em TCP/IP. Os dois endpoints são um emissor habilitado para ECN e um receptor habilitado para ECN. O ECN deve ser habilitado em ambos os endpoints e em todos os dispositivos intermediários entre os endpoints para que o ECN funcione corretamente. Qualquer dispositivo no caminho de transmissão que não seja compatível com ECN interrompe a funcionalidade ECN de ponta a ponta. A ECN notifica as redes sobre o congestionamento com o objetivo de reduzir a perda e o atraso de pacotes, fazendo com que o dispositivo de envio diminua a taxa de transmissão até que o congestionamento seja eliminado, sem descartar pacotes.
O ECN está desabilitado por padrão. Normalmente, você habilita a ECN apenas em filas que lidam com o tráfego de melhor esforço porque outros tipos de tráfego usam métodos diferentes de notificação de congestionamento — o tráfego sem perdas usa o controle de fluxo baseado em prioridade (PFC) e o tráfego de alta prioridade estrita recebe toda a largura de banda de porta necessária até o ponto de uma taxa configurada (consulte Prioridade de agendamento).
Mapas do Agendador
Um mapa do planejador mapeia uma classe de encaminhamento para um planejador de filas. Depois de configurar um planejador, você deve incluí-lo em um mapa do planejador e aplicar o mapa do planejador a uma interface para implementar o agendamento de fila configurado.