Raspberry Pi e iperf - testador de largura de banda para dispositivos Smart Home e IoT



Como parte do meu projeto anterior, “Videophone from Raspberry Pi”, usei o utilitário Iperf para configurar o equipamento e resolver o problema. O programa é conhecido há muito tempo entre especialistas que trabalham com redes locais.

O utilitário permite gerar tráfego para analisar a largura de banda da rede.

Com sua ajuda, é bastante simples medir a largura de banda máxima da rede entre dois dispositivos (servidor e cliente) e realizar testes de carga do canal de comunicação.
Eu acho que, em conexão com o aumento de dispositivos de rede doméstica, será bastante procurado, tanto para pesquisar e analisar defeitos (defeitos) no trabalho, quanto para a colocação ideal de equipamentos WiFi.

No meu exemplo, o programa foi instalado em um Raspberry Pi com o sistema de automação residencial MajorDoMo instalado - a imagem básica e em dispositivos executando Windows (laptop), Android (smartphone, TV, media player).

Sob o comando do gato, um pouco sobre instalação e testes, bem como um pequeno exemplo de integração no sistema de automação residencial MajorDoMo.

No Raspberry Pi, que serve como servidor de automação residencial MajorDoMo e roda no Debian 9, instalamos o utilitário iperf.

sudo apt-get install iperf 

Por padrão, a versão 2.0.9 está instalada. Existem duas opções para o iperf: iperf 2 e iperf 3. Eles não são compatíveis entre si. Para instalar a terceira versão, é necessário especificar o comando

 sudo apt-get install iperf3 

No segundo dispositivo, se usarmos um PC ou laptop no Windows, instale o Jperf (instalado tanto o 2.0 quanto o 2.2). Jperf é um complemento gráfico para java do Iperf. O complemento é multiplataforma, funciona tanto em sistemas Windows quanto em sistemas nix. O Jperf agenda a largura de banda do canal em tempo real. A instalação não é necessária; uma máquina java deve ser instalada no sistema operacional.

Conectamos Ethernet com o cabo de rede Raspberry ao roteador doméstico, o laptop está conectado à rede Wi-Fi doméstica.

Executamos o utilitário no Raspberry Pi no modo servidor, o cliente gera tráfego, o servidor espera.

 iperf -s -t 3600 

onde –s inicia no modo servidor, –t 3600 por 3600 segundos ou 1 hora.
Em um computador Windows, execute o arquivo * .bat jperf.bat, digite o endereço do servidor, deixe a porta padrão, defina o tempo de teste, clique no ícone Iniciar.

No servidor, obtemos as informações em forma de texto, no cliente no gráfico:



Para o sistema operacional Android (smartphone, TV, decodificador de TV etc.), instalamos o programa no mercado de jogos: Magic iPerf. IPerf mágico .

Introduzimos o endereço IP do nosso RPi, as teclas e iniciamos o teste movendo o controle deslizante da posição parada para a iniciada.



A ajuda sobre os comandos (teclas de inicialização do utilitário) pode ser visualizada digitando-se no terminal ou no aplicativo móvel - help (-h).



Além disso: ao usar o sistema de automação residencial MajorDoMo, a configuração básica, a imagem do Raspberri Pi.

Quando o sistema inicia, o alto-falante está falando de endereços IP. O que é bastante conveniente.
O servidor também possui nome de host (um nome atribuído a um computador conectado à rede que identifica exclusivamente a rede e, portanto, permite o acesso a ela sem usar seu endereço IP). Mesmo sem saber o endereço IP, podemos conectar-se ao terminal SSH ou ao cliente iperf digitando o nome IP: majordomopi.

Uma pequena vantagem do RPi, seu preço e dimensões relativos, permitindo que você coloque um mini PC conectando-o com um cabo de rede a um roteador, seja em um armário, mesa de cabeceira ou rack de 19 ".

Na configuração básica do MajorDoMo, por padrão, existem 3 botões de controle que não estão ocupados com nada, na página principal do sistema é: luz 1, luz 2, luz 3.



Vamos tentar atribuir um deles para testar a largura de banda da rede.

Abra a página inicial do MajorDoMo. Vá para Painel de Controle - Dispositivos - Dispositivos Simples - Editar Chave 1 - Ações .

Nas ações, escrevemos uma linha de código em PHP que executa o utilitário Iperf do usuário Pi no modo de servidor por 600 segundos:

 exec ('sudo -u pi iperf -s -t 600 >/dev/null &'); 




Depois disso, quando o botão “light 1” é pressionado na página principal do sistema de automação residencial, o Iperf inicia por 10 minutos e, em seguida, a taxa de transferência do dispositivo desejado é testada.

Source: https://habr.com/ru/post/pt482012/


All Articles