Por que o iperf ainda reporta desempenho de 1Gbps ao usar ligação em dois adaptadores de 1Gbps?

5

Pelo que entendi, a ligação traz, entre outros benefícios, a capacidade de aumentar a velocidade da rede entre duas máquinas em uma LAN.

Bonding [...] means combining several network interfaces (NICs) to a single link, providing either high-availability, load-balancing, maximum throughput, or a combination of these.

Fonte: documentação do Ubuntu , ênfase minha.

Eu tenho ligação configurada em dois servidores; ambos têm dois adaptadores NIC de 1 Gbps. Ao testar a velocidade entre esses servidores usando iperf , o relatório indica:

  • 930 a 945 Mbits / seg ao usar o modo de ligação balance-rr .
  • 520 a 530 Mbits / seg da máquina A para B ao usar 802.3ad ,
  • 930 a 945 Mbits / seg da máquina B para A ao usar 802.3ad .

Uma coisa interessante é que, ao usar 802.3ad , ifconfig indica que praticamente todo RX está em eth0 (2,5 GB vs. alguns KB / MB) e todos TX on eth1 on máquina A, e o inverso na máquina B.

Ao solicitar que iperf use várias conexões ( iperf -c 192.168.1.2 -P 10 ), a soma obtida é muito próxima dos resultados exibidos ao usar uma única conexão.

Duas máquinas são conectadas a um Netgear GS728TS que tem o LACP configurado apropriadamente (espero), com dois LAGs cobrindo duas portas cada. O modo IEEE 802.3x está ativado.

O iperf é adequado para esse tipo de teste? Se sim, há algo que me falta?

    
por Arseni Mourzenko 30.08.2014 / 00:07

2 respostas

2

Após entrar em contato com o suporte da Netgear, parece que:

If you use 2 stations (1 client/1 server), it will actually only use one link (hence the 1Gbps/940mbps), the link used is decided by the LACP hashing algorithm.

To go above the 1Gbps limit, you will need to test with more that 1 client.

Fonte: Resposta do ticket de suporte da Netgear

Os mesmos links para a postagem no fórum público da Netgear, onde podemos ler:

You can only get 2Gbps aggregate when the LACP hashing algorithm puts multiple traffic streams down different paths and it doesn't always. With a small number of clients (2 in your case), odds are good that they both might get hashed to the same link.

Para aqueles que não querem ler toda a discussão do fórum, aqui estão os pontos principais:

  • Deve haver pelo menos dois clientes se conectando ao servidor para se beneficiarem do LACP. Um único cliente usará apenas um link, o que limitará sua velocidade a 1 Gbps.

  • Dois clientes devem usar links diferentes para se beneficiarem do LACP.

  • Com apenas dois adaptadores de rede no servidor, há 50% de chance de obter o mesmo link de dois clientes, o que resultará em velocidade total limitada a 1 Gbps. Três adaptadores de rede reduzem a chance para 33%, quatro a 25%.

Para concluir, não há como o Netgear GS728TS obter uma velocidade de 1,4 a 1,8 Gbps entre duas máquinas.

    
por 21.04.2015 / 23:49
2

As interfaces ligadas não concedem largura de banda adicional a fluxos de rede individuais. Portanto, se você estiver executando apenas uma cópia do iperf, só poderá usar uma interface de rede por vez. Se você tiver duas placas de rede em um intervalo, precisará de pelo menos duas cópias completamente independentes do iperf em execução no computador para ver qualquer utilização simultânea. Isso também se aplicará a cargas reais - por exemplo, um cliente Samba ainda só verá uma taxa de transferência de 1 Gb, mas dois clientes poderão ver 1 Gb se o seu lagg tiver dois NICs. Isso tudo supõe que você tenha o lagg configurado para usar ambos os NICs (a opção 802.3ad fará isso).

    
por 30.09.2014 / 22:34