Depois de muito tempo sem postar nada, vai aqui um post especial, escrito a quatro mãos com a ajuda do amigo também aqui do blog Leandro Oliveira.
Quando olhamos a documentação de um switch, encontramos um série de números que mostram a capacidade de processamento/encaminhamento de pacotes do equipamento. O problema é que cada fabricante usa um termo diferente para a mesma coisa, e as vezes não fica claro o que é cada item. São Gbps pra um lado, Mpps pra outro… O que significam esses números? Quanto maior melhor?
Vamos tentar esclarecer alguns pontos, primeiro temos o backplane, ou switch fabric, ou ainda switching bandwidth. Estes termos referem-se a “largura do barramento” do equipamento, onde estão ligadas as portas e, representando no desenho abaixo com a nomenclatura “Switching bus”.
Quando o barramento (ou switching bus) tem largura igual ou maior do que a soma das portas do switches, dizemos que ele é “wire speed” ou “non-blocking”. Isso quer dizer que mesmo que todas as portas estivessem transmitindo ao mesmo tempo em sua velocidade máxima, ainda assim o backplane seria suficiente para dar vazão ao tráfego.
Exemplo 2960X-48TD-L (equipamento non-blocking)
Vamos pegar o Cisco 2960X, LAN Base, de 48 portas Gigabit + 2 TenGigabit. Ele tem 216 Gbps de switching bandwidth (ou backplane).
Se multiplicarmos o número de portas (48) pela velocidade (1000) e por 2 (full duplex) teremos 96 Gbps. Somando as portas de uplink (2 portas * 10Gbps * 2) temos 136 Gbps.
Mais a banda usada pelo módulo de empilhamento (80 Gbps) chegamos aos 216 Gbps.
Observe que aumentar o switching bandwidth deste equipamento para 400 Gbps não traria nenhum benefício, umas vez que ele consegue encaminhar “apenas” 216 Gbps.
É desejável que o equipamento tenha condição de enviar o tráfego total simultaneamente, mas equipar o switch com o “barramento” com banda maior do que a soma das portas não melhora em nada a performance do equipamento. Isso para switches não modulares!!!
Em switches modulares até faz sentido termos um switching bandwidth maior, pois assim ele pode suportar módulos lançados posteriormente.
Isso posto, sigamos.
Outro número importante no dimensionamento do switch é o forwarding rate, ou a capacidade de encaminhamentos de pacotes, expresso em Mpps – Milhões de Pacotes Por Segundo, afinal a função do switch é encaminhar pacotes.
O mesmo switch do exemplo acima pode encaminhar 130.9 Mpps.
Considerando-se que tenhamos pacotes de 64 Bytes, ele tem throughput de 62.41 Gbps.
Mpps para Gbps
A conta é: capacidade de encaminhamento de pacotes vezes o tamanho do pacote e vezes 8 para termos o número em bits por segundo. Então convertemos para chegar a Gigabits por segundo.
130.900.000 * 64 * 8 = 67.020.800.000 bps
67.020.800.000 / 1000 = 67.020.800 Kbps
67.020.800 / 1000 = 67.020,8 Mbps
67.020,8 / 1000 = 67,02 Gbps
Podemos notar que a capacidade deste equipamento é menor do que seu hardware permite, certo?
Errado.
Veja que neste cálculo usamos pacotes de 64 bytes, que é o menor permitido pelo padrão ethernet (qualquer coisa menor do que isso é descartado pelo switch), porém normalmente os pacotes são maiores do que isso (e podem chegar até 9216 bytes neste modelo de switch especificamente).
Se repetirmos esta conta, e considerarmos pacotes de 500 bytes, este switch teria 487,64 Gbps de throughput!
Teria, pois como já vimos que a soma das interfaces (e também o switching bandwidth) chega no máximo a 216 Gbps.
OBS: Ai que entra outro componente muito importante nos switches: Buffers.
Os switches de boa qualidade contam com buffers (memórias específicas) em cada interface, o que permite que os pacotes sejam armazenados temporariamente até que possam ser encaminhados. Sem buffer (ou com pouco buffer) os pacotes que excederem a capacidade de encaminhamento são descartados, e devem ser retransmitidos pelo host de origem.
E como saber qual switch atende minhas necessidades?
Bom… ai já é mais difícil.
O ideal seria saber qual o tamanho médio dos pacotes na sua rede e quantos pacotes são enviados por segundos.
Como as redes em geral são muito heterogêneas, com hosts diferentes, sistemas operacionais diferentes e aplicações diferentes, é praticamente impossível encontrar esses números.
O que alivia essa questão é que os switches possuem hardwares cada vez mais potentes e acabam dando conta com sobras.
Também é importante se atentar as questões colocadas acima quando comparamos equipamentos.
Não adianta pagar mais porque o switch tem um backplane maior se ele não será usado. Também é preciso prestar atenção na conta do throughput. Um fabricante pode informar o número com base em pacotes de 64 bytes, enquanto outro usa pacotes de 1500 para mostrar um resultado “melhor”.
E por fim a questão dos buffers, que acabam sendo mais importantes que outros componentes.
Até a próxima.
Very useful post ! Thanks !
Muito bom, era exatamente o tipo de informação que eu precisava, até então tinha muita dificuldade de decidir qual switch comprar sem gastar preços absurdos ou super dimensionar o equipamento. Adorei seu blog.
Estão de parabéns pela objetividade, clareza e qualidade técnica do post. Ótima qualidade, espelha o empenho, dedicação e conhecimento do escritor.
Boa noite André.
Quando eu olho algumas especificações de alguns switches na empresa que eu trabalho, eu vejo alguns números nas especificações como 20:1, 5:1 e 1:5. Poderia me tirar algumas dúvidas em relação à isso?
Agradeço desde já!
Olá Saulo,
precisa ver sobre o que estes itens se referem. Pode ser a taxa de oversubscription de algum componente.
Bom dia André.
No caso seria taxa de oversubscription de um switch qualquer.
E qual seria a “conta” para cálculo de desempenho em roteadores?
Seria similar? Ou por envolver software para processamento de rotas é diferente?
Normalmente, no caso de roteadores, olhamos mais a capacidade de encaminhamento de pacotes (Mpps).
Multiplicando os Mpps pelo tamanho dos pacotes chegamos ao throughput do equipamento.
Então no caso de comparação é preciso sempre observar qual o tamanho do pacote utilizado na conta. Um fabricante pode mostrar o desempenho considerando pacotes de 1024 KB e outro pode usar 1024 MB, o que daria a falsa impressão de que o segundo equipamento é mais potente que o primeiro.
Também existem outros itens que podem ser analisados, como hardware dedicado para funcionalidades específicas. Mas aí cada caso é um caso.
Boa tarde, André, tudo bem?
Gostei muito dessa postagem. Você dever ser muito inteligente rsrsrsr
A única dúvida seria do porquê os switches, mesmo os mais modernos, podem ter no máximo 48 portas? Não poderia ter por exemplo 60 portas? Que tipo de limitação impede que um único switch possa ser fabricado além de 48 portas?
Obrigada desde já e beijos!
Olá Isabelly,
Acredito que seja apenas uma padronização do mercado (como todos fazem com 24 e 48 portas, também vou fabricar desse jeito).
Além disso, quando precisamos de mais portas podemos utilizar os equipamentos modulares, certo?