Marcio Cunha

Como medir largura de banda e rotas de rede com o iperf3

Aprenda a utilizar o iperf3 via terminal para realizar medições reais de throughput, identificar gargalos de transferência e diagnosticar sua rede local.

Marcio Cunha•5 min
Também disponível em:EnglishEspañol
Resumo
  • O iperf3 calcula a taxa de transferência real entre dois pontos da infraestrutura sem depender de estimativas teóricas.
  • A ferramenta opera em arquitetura cliente-servidor para isolar o comportamento do link nos dois sentidos da comunicação.
  • Testes com protocolo TCP ajudam a revelar a capacidade máxima de carga útil antes de ocorrer saturação.
  • Simulações com tráfego UDP permitem mapear a perda de pacotes e o jitter em condições extremas.
  • A análise de rotas e o uso complementar de ferramentas como o mtr ajudam a contextualizar falhas físicas.

Por que medir o throughput real na sua rede local?

Muitas vezes, contratamos planos de internet de alta velocidade ou montamos redes corporativas robustas, mas a transferência real de arquivos grandes continua lenta. Na prática, o throughput — que representa a quantidade efetiva de dados transmitidos com sucesso por segundo — costuma ser bem menor do que a velocidade teórica anunciada pelos fabricantes de roteadores ou switches. Isso acontece porque cabos danificados, interferências eletromagnéticas e gargalos de processamento nos dispositivos ocultam o verdadeiro desempenho da infraestrutura.

Para descobrir exatamente o que está acontecendo, administradores de sistemas e entusiastas recorrem ao iperf3, uma ferramenta de linha de comando amplamente utilizada para estressar enlaces de rede e medir sua capacidade máxima. Diferente de testes simples de navegador, ele força o tráfego de dados diretamente entre duas máquinas, permitindo isolar problemas de hardware ou falhas de configuração. Se você já tentou diagnosticar problemas parecidos com os descritos em nosso guia sobre como diagnosticar perda de pacotes e rotas com o comando mtr, entenderá que medir a largura de banda exige precisão cirúrgica e testes controlados.

Preparando o ambiente e entendendo a arquitetura cliente-servidor

O funcionamento do iperf3 baseia-se no conceito de cliente e servidor. Na prática, isso significa que você precisa de pelo menos duas máquinas conectadas à mesma rede para realizar o teste: uma delas atuará apenas ouvindo as conexões de entrada, enquanto a outra enviará um fluxo intenso de dados para medir a resistência e a velocidade do caminho percorrido. Essa separação garante que os resultados reflitam a capacidade real do meio de transmissão, eliminando variáveis indesejadas.

Para começar, instale o utilitário em ambos os computadores utilizando o gerenciador de pacotes da sua distribuição Linux, como o apt no Ubuntu ou Debian, ou o equivalente no seu sistema operacional. Uma vez instalado, escolha a máquina que fará o papel de receptora, abra o terminal e execute o comando de escuta. Esse processo inicial abre uma porta de comunicação dedicada — por padrão, a porta 5201 — aguardando os pacotes que serão disparados pela máquina cliente durante o experimento.

Executando o servidor iperf3 na máquina de destino

O primeiro passo prático na bancada de testes consiste em colocar o receptor em modo de espera. Na máquina que funcionará como servidor, digite o comando abaixo no terminal e pressione Enter. A ferramenta ficará rodando em primeiro plano, exibindo na tela todas as conexões recebidas e os resultados parciais de cada teste realizado.

iperf3 -s

Caso a sua rede possua regras rígidas de firewall, lembre-se de liberar a porta TCP e UDP 5201 para permitir o tráfego entre os dois nós. Na prática, manter o servidor ativo permite realizar múltiplos testes seguidos a partir de diferentes clientes na rede local, facilitando a comparação de desempenho entre vários pontos de acesso, cabos de rede diferentes ou placas Wi-Fi variadas.

Disparando o teste de tráfego a partir do cliente

Com o servidor ativo aguardando conexões, vá até a segunda máquina da rede, que assumirá o papel de cliente, e aponte o comando iperf3 para o endereço IP do servidor. O comando a seguir inicia uma transferência padrão utilizando o protocolo TCP durante dez segundos, injetando dados continuamente para calcular a largura de banda disponível.

iperf3 -c 192.168.1.50

Substitua o endereço IP do exemplo pelo IP real da máquina onde você iniciou o servidor. Ao término da contagem, o terminal exibirá um relatório detalhado contendo a quantidade total de dados transferidos e a taxa média de transferência obtida, expressa geralmente em Megabits por segundo (Mbps) ou Gigabits por segundo (Gbps). Esses números servem como linha de base para avaliar se os seus cabos de rede estão operando em Gigabit completo ou se houve degradação para o padrão Fast Ethernet de 100 Mbps.

Analisando o comportamento do tráfego UDP e a perda de pacotes

Embora o protocolo TCP seja excelente para medir a velocidade máxima em condições ideais de entrega garantida, ele tende a mascarar problemas intermitentes de instabilidade. Para avaliar a robustez real do enlace frente a interferências, podemos forçar o uso do protocolo UDP adicionando a flag -u no comando do cliente, além de estipular uma largura de banda específica para o teste.

iperf3 -c 192.168.1.50 -u -b 100M

Neste cenário, a ferramenta envia um fluxo constante de pacotes UDP na velocidade de 100 Megabits por segundo. Ao final, o relatório indicará não apenas a taxa de transferência alcançada, mas também a porcentagem exata de pacotes perdidos pelo caminho e a variação no tempo de atraso, conhecida como jitter. Se a porcentagem de pacotes perdidos for alta em uma rede cabeada, é bem provável que exista algum dano físico na infraestrutura, exigindo inspeções detalhadas ou até mesmo verificações pontuais como as discutidas em materiais sobre como testar capacitores eletrolíticos na placa com capacímetro quando o problema decorre de instabilidades na alimentação de placas de rede antigas.

Identificando gargalos ocultos e interpretando os relatórios

A interpretação correta dos resultados do iperf3 exige atenção aos detalhes do relatório final, especificamente nas colunas de intervalo de tempo, transferência acumulada e largura de banda instantânea. Se você notar quedas bruscas na taxa de transferência ao longo dos segundos do teste, isso costuma indicar saturação de buffer em roteadores intermediários ou interferência eletromagnética temporária em cabos mal blindados que passam próximos a fontes de energia elétrica.

Outro fator crítico a observar é o consumo de recursos da CPU durante a execução do comando. Como o iperf3 gera tráfego em alta velocidade, computadores muito antigos ou servidores virtualizados com limitações de núcleos podem sofrer gargalos de processamento antes de atingirem o limite real da placa de rede. Nesses casos, a lentidão observada não é um problema de largura de banda do cabo, mas sim de capacidade computacional para empurrar os pacotes pela pilha TCP/IP do sistema operacional.

Considerações finais

Dominar o uso do iperf3 transforma a maneira como você diagnostica e otimiza redes locais, substituindo suposições vagas por dados precisos e quantificáveis. Ao isolar o comportamento de enlaces TCP e UDP, fica muito mais fácil identificar se a lentidão na transferência de arquivos decorre de problemas físicos na infraestrutura, falhas de configuração em switches ou limitações de hardware nos terminais. Integrar essa rotina de testes ao seu dia a dia garante uma infraestrutura de rede resiliente, previsível e pronta para lidar com grandes volumes de dados.