Análise de desempenho com Iperf

Publicado por Sandro Roberto Ferrari em 10/09/2007

[ Hits: 54.157 ]

 


Análise de desempenho com Iperf



O Iperf é um software de análise de desempenho de banda e cálculo de perda de datagramas na rede que é mantido pela Universidade de Illinois sob licença GPL.

http://dast.nlanr.net/Projects/Iperf/

O Iperf é um software cliente/servidor adequado para medições ativas. Além das medições, esse software pode ser usado com um gerador simples de carga na rede, quando não há preocupação com o perfil do tráfego que está sendo gerado. Também com Iperf é possível medir o Jitter (variação do atraso) e a perda. O Iperf é capaz de usar tanto o protocolo UDP, quanto TCP e pode lidar com múltiplas conexões simultâneas.

O Iperf usado com protocolo UDP necessita de especificação de banda, utilizando o parâmetro -b. No caso do protocolo TCP há um mecanismo de controle de congestionamento que procurará usufruir de toda a banda disponível no caminho, se o mecanismo de controle de fluxo permitir.

Segue alguns parâmetros:

Entre os parâmetros da linha de comandos encontrar-se-ão os seguintes:
  • -l: Comprimento da mensagem;
  • -c/-s: Especificação de cliente/servidor;
  • -t: Intervalo de tempo entre mensagens (envio contínuo por omissão).

Após execução, uma vez terminada, a aplicação cliente deverá fornecer as informações para análise.

Iperf - Testes

Objetivo: Analisar e comparar o desempenho de uma rede alterando os ambientes de testes usando para isso o software Iperf. Precisamos de pelo menos duas máquinas para fazer os testes: um Servidor e outra Cliente.

1) Teste básico default:

Servidor: iperf -s
Cliente: iperf -c <IP>

2) Teste utilizando 130k no tamanho do buffer para transmissão:

Servidor: iperf -s -w 130k
Cliente: iperf -c <IP> -w 130k

3) Teste utilizando 1M no tamanho do Buffer para transmissão, mas agora um servidor e dois clientes:

Servidor: iperf -s -w 1M
Cliente1: iperf -c <IP> -w 1M
Cliente2: iperf -c <IP> -w 1M -P 2

4) Teste do MSS (Maximum Segment Size) que representa o tamanho do maior bloco de dados que poderá ser enviado para o destino. Não é negociável, cada host divulga o seu MSS. Default: 536 bytes (20 bytes IP, 20 bytes TCP, para um total de 576 bytes). Ethernet: 1460 bytes (20 bytes IP, 20 bytes TCP, para um total de 1500 bytes)

Servidor: iperf -s -m
Cliente: iperf -c <IP> -m

5) Teste utilizando protocolo UDP, onde neste pode ser passado o tempo em segundos para analisar uma faixa de intervalos.

Servidor: iperf -s -u -i 1
Cliente: iperf -c <IP> -u -b 400k

6) Teste passando como parâmetro o tamanho do datagrama para read/write (default 8 KB) sendo 32K e utilizando 300K no tamanho do Buffer para transmissão. Ainda é passado o tempo em segundos para analisar uma faixa de intervalos.

Servidor: iperf -s -u -l 32k -w 300k -i 1
Cliente: iperf -c < IP > -b 10m -l 32k -w 300k

Importante: Para efeitos de testes repita as medidas, mas agora em presença de tráfego anormal gerado através do ping, faça testes executando o ping em várias máquinas. Também pode utilizar um ambiente misto, trabalhando com Linux e Windows ao mesmo tempo, fazer testes com a internet, com Hub, Switchs, com placas de rede em 10 MB 100 MB ou 1 GB.

Navegar é preciso!
Prof. Sandro Roberto Ferrari
sandro@habil.eti.br

Outras dicas deste autor

VI - Como sobreviver

Network Probe

Descobrindo compartilhamentos NFS de uma máquina

Samba - Erros que podem ocorrer durante o logon do cliente

Testar o funcionamento do serviço DHCP

Leitura recomendada

Script gerador de código fonte em ANSI C

Criando um repositório rápido de contole de versão com o Mercurial

Introdução ao QT

Conteúdos para BSD e FreeBSD

Usando tty para logar no ambiente gráfico de outro usuário

  

Comentários
[1] Comentário enviado por a.comaru em 25/11/2008 - 11:28h

Ola,

Excelente artigo. Fiz algumas medições com sucesso.

Sabe me dizer se existe outra ferramenta do gênero para uma comparação de medições?

Abraços

André

[2] Comentário enviado por jcbacel em 02/03/2011 - 19:31h

Olá Sandro,

É necessário mesmo a instalação do agente nos clientes? Há uma outra forma de se fazer análise deste tipo sem instalação de agente?



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts