Anonim

O que é o Flent?

Links Rápidos

  • O que é o Flent?
  • Instalar Flent
    • Ubuntu
    • Debian
    • Arco
    • Gentoo
    • Todos os outros
  • Configuração básica
  • Executando um teste
  • Os testes
    • RRUL
    • RTT
    • TCP
    • Inundação UDP
  • Pensamentos finais

Flent é a sigla para FLE xible Neterwork, e não é um programa completo. Em vez disso, o Flent é um invólucro que agrupa vários aplicativos de teste de rede, principalmente o Netperf, em um pacote uma vez coeso que simplifica a execução dos testes e inclui o Matplotlib para criar gráficos e visualizações de dados automaticamente à medida que você executa seus testes.

O Flent é um kit de ferramentas completo para testar sua rede e diagnosticar tudo, desde ineficiência simples até problemas sérios de conexão. Como mais um bônus, é gratuito e de código aberto.

Instalar Flent

Flent está disponível apenas para Mac e Linux. Isso não significa que você precisa abandonar o Windows e converter toda a sua rede em Linux. Você só precisa encontrar uma maneira de executá-lo temporariamente para seus testes.

Ubuntu

Comece adicionando o Flent PPA.

$ sudo add-apt-repository ppa: tohojo / flent $ sudo apt update

Em seguida, instale o Flent.

$ sudo apt install flent

Debian

Flent está disponível nos repositórios oficiais do Debian, começando com Stretch. Basta instalá-lo.

# apt install flent

Arco

Flent está disponível no AUR. Vá até a página e pegue o que você precisa.

Gentoo

Adicione o Flent ao seu '/etc/portage/package.accept_keywords'.

analisador de rede / flexível ~ amd64

Então, surja.

# emerge --ask flent

Todos os outros

Flent é um pacote Python. Você deve conseguir instalá-lo usando o gerenciador de pacotes pip Python, se o tiver instalado. Está disponível para praticamente todas as distribuições Linux e Homebrew for Macs.

# pip install flent

Configuração básica

Agora que você tem o Flent instalado, pode começar a usá-lo para realizar alguns testes básicos. Flent possui uma linha de comando e uma versão gráfica. Como você provavelmente não deseja memorizar os comandos do Flent, este guia estará trabalhando com o GUI.

Para que o Flent funcione corretamente, você precisa de um servidor para testar. Esse servidor precisa estar executando o Netperf no modo de servidor. É melhor configurá-lo primeiro, para que você possa fazer todos os testes juntos. O Netperf está disponível em praticamente todos os repositórios da distribuição Linux, então instale-o com o seu gerenciador de pacotes.

$ sudo apt install netperf

Depois de instalá-lo no servidor, execute o Netperf no modo servidor.

$ sudo netserver &

Você pode deixar o servidor em paz por enquanto. Ele continuará executando o Netperf no modo de servidor em segundo plano. Você pode fazer tudo o mais do seu cliente executando o Flent.

Executando um teste

Agora você pode executar testes no seu servidor a partir do Flent. Abra a GUI Flent no iniciador de aplicativos ou digitando flent-gui em um terminal. A janela que você verá é bastante simples para começar. Clique em "Arquivo" no canto superior esquerdo e selecione "Executar novo teste" no menu resultante.

A nova janela permitirá que você selecione um teste para executar. Primeiro, use o menu suspenso "Nome do teste" para selecionar um teste. Para o primeiro, escolha “rrul”. Digite o IP do computador que você configurou como servidor e, em seguida, dê um nome ao seu teste. O nome apenas ajudará a identificar os resultados que o Flent salva. Ele usa um formato compactado de JSON com a extensão .gz. Quando tudo estiver bom, clique no botão "Executar teste" na parte inferior esquerda da janela.

Todos os testes demoram um pouco para serem executados; portanto, seja paciente e tente não fazer nada na rede com esses dois computadores que possam interferir na conexão. Isso atrapalhará seus dados.

Após a conclusão do teste, você poderá ver os dados relevantes apresentados em uma série de gráficos na janela principal do Flent. O teste RRUL fornecerá informações sobre o total de upload, download e ping. Os gráficos mostrarão todas as mesmas informações, mas elas serão organizadas de maneira diferente, para ajudá-lo a observar qualquer padrão. No caso do exemplo, um roteador de lixo criou muita latência e produziu alguns resultados bastante quebrados.

Os testes

Flent fornece uma ampla variedade de testes. Cada um pode estressar sua rede de uma maneira diferente. Você não precisa memorizar todos eles. A maioria se enquadra em uma das quatro categorias básicas. Essas categorias testam sua rede de diferentes maneiras específicas.

RRUL

RRUL é a sigla em tempo real para resposta ao pedido. É exatamente isso que ele pretende medir. O teste RRUL tenta simular uma carga de trabalho de rede real e capturar a maneira como a máquina de destino responde sob essa carga. O RRUL foi desenvolvido pelo pessoal do Bufferbloat.net para criar condições de rede nas quais o bufferbloat entraria em ação para ajudar a diagnosticar e remediá-lo.

Bufferbloat é um problema comum em redes. Ocorre quando um roteador armazena em buffer muitos dados ao transferir uma grande parte de dados ou fazer streaming. Esse buffer extra é um peso para o roteador e retarda a transferência. O estresse do teste RRUL foi projetado para colocar uma carga significativa no roteador para acionar o buffer. Se sua rede estiver com um bufferbloat, os números de upload e download começarão a cair e o ping aumentará à medida que o teste for executado.

Tente executar o teste de torrent RRUL. Ele simula um download torrent, que obviamente é um tipo muito extenuante de atividade de rede e ainda é um cenário do mundo real.

Os resultados acima são o que você não quer ver, muita latência e pacotes descartados. Esse teste foi realizado entre dois dispositivos sem fio em uma rede lotada. Observe a alteração quando o servidor estiver conectado.

A diferença é definitivamente perceptível. A conexão não é perfeita, mas se torna muito mais estável com um dispositivo sendo conectado. E os dois?

Há muito menos variação neste teste. Isso ocorre porque não há oportunidade para interferência ou falta de força do sinal. Lembre-se de que essa é a mesma rede do desastre de um teste anterior. Claramente, há um problema com as conexões sem fio. Por fim, tente testar no servidor remoto fornecido pelo Bufferbloat.net.

Não é tão limpo quanto a rede local, mas ainda não é tão confuso quanto os testes sem fio. Esse é o tipo de coisa que você provavelmente esperaria de um download normal de torrent pela Internet.

RTT

Na verdade, os testes de transferência RTT ou RT rip T são muito parecidos com os testes RRUL. Eles não contam com o alvo sob carga. Em vez disso, eles apenas medem o tempo que leva para uma solicitação UDP concluir o circuito e retornar ao cliente. Eles incluem ping também.

Para um bom teste de RTT, tente executar o RTT Fair. Você já tentou o RRUL para simular uma condição mais realista e desafiadora; por que não circunstâncias mais ideais? O teste RTT Fair ajudará você a ver como é uma viagem de ida e volta sob condições mais controladas na sua rede. É consideravelmente menos caótico. Poderia ser ainda menos caótico? Estes são os resultados com um servidor com fio.

É quase uma onda de pecado. Claro, não é o ideal, mas é mais organizado e consideravelmente mais rápido. Com as duas máquinas conectadas, fica ainda melhor.

Essa é uma grande diferença dos 40 Mb / s no primeiro teste. Mais uma vez, faça o teste na Internet.

Ainda é melhor do que aquela bagunça WiFi de antes. Novamente, esses resultados parecem corretos para um teste como esse, embora mais estabilidade possa ser uma meta.

TCP

Os testes TCP são TCP padrão. Eles medem solicitações básicas de TCP como se você estivesse visitando um site ou verificando seu e-mail. As chances são de que esses testes não causem tanto estresse à sua rede, mas podem fornecer uma imagem melhor da aparência do tráfego comum.

Tente um teste TCP mais extenuante. O download do TCP com 12 fluxos é bom para simular um download direto mais intenso. Há uma boa chance de que você veja uma latência séria, se não tiver uma ótima rede. Talvez um servidor com fio possa melhorar as coisas aqui também.

É um pouco mais normalizado e há mais largura de banda. Isso é bom. Há ainda mais melhorias quando o cliente está conectado.

Na verdade, isso se aproximou de 1Gb / s sólido. Isso é incrível, considerando os resultados do WiFi. Por fim, veja como foi o desempenho com o servidor remoto.

Há mais latência, mas as velocidades ainda são muito respeitáveis. Ah, e isso também foi feito através de uma VPN. Claramente, o problema vem de dentro da rede.

Inundação UDP

Os testes de inundação UDP, na verdade, são testes RTT, mas enviam uma avalanche de pacotes UDP na máquina de destino de uma só vez. Eles não respondem ou se adaptam ao fluxo de tráfego, basta enviar. Eles podem ser úteis para testar como a máquina de destino responderá diante de um bug ou ataque.

Pensamentos finais

Se você estiver testando sua rede, é melhor testar entre diferentes pontos da sua rede para ajudar a diminuir áreas problemáticas. A rede de teste deste guia apresenta claramente alguns problemas com o WiFi. As chances são de que largura de banda e interferência limitadas estão em jogo. Também é bom ter uma imagem clara dos tipos de problemas que você está procurando. Crie seus testes com base nisso.

Você deve ter notado que a rede que representou os resultados não é tão boa assim. Não é. Na verdade, alguns dos resultados do lixo que você viu são exatamente o que você precisa procurar em sua própria rede.

Teste a força da sua rede com flent