O iPerf3 é uma ferramenta para medir ativamente a largura de banda máxima alcançável em uma rede IP. Ele suporta o ajuste de vários parâmetros relacionados ao tempo, buffers e protocolos (TCP, UDP, SCTP com IPv4 e IPv6). Para cada teste, ele reporta largura de banda, perda e outros parâmetros. Esta é uma nova implementação que não compartilha código com o iPerf original e não é compatível retroativamente. O iPerf foi originalmente desenvolvido pela NLANR/DAST. O iPerf3 foi desenvolvido principalmente pelo ESnet/Lawrence Berkeley National Laboratory.
A família de ferramentas iperf realiza medições ativas para determinar a largura de banda máxima alcançável em uma rede IP. Ele suporta o ajuste de vários parâmetros relacionados ao tempo, protocolos e buffers. Para cada teste, ele reporta a taxa de transferência medida, a perda e outros parâmetros.
Este lançamento, às vezes chamado de iperf3, é um redesenho da versão original desenvolvida pela NLANR / DAST. O IPERF3 é uma nova implementação criada do zero que visa uma base de código menor e mais simples, além de uma versão da biblioteca que pode ser usada em outros programas. O IPERF3 também incorpora recursos de muitas outras ferramentas como NutTCP e Netperf, que estão ausentes no IPerf original. Essas incluem, por exemplo, modo de cópia zero e saída JSON opcional. Note que o iperf3 não é compatível com o iperf original.
O iPerf3 pode ser usado para testar a velocidade de comunicação de rede do dispositivo, e o iPerf3 pode ser instalado em dois dispositivos de computador, um como servidor e outro como cliente, e a velocidade de comunicação pode ser testada enviando mensagens entre si via iPerf3.
Os parâmetros do iPerf3 são os seguintes:
Usage: iperf [-s|-c host] [options] iperf [-h|--ajuda] [-v|--versão]
Servidor ou Cliente: -p, --porta # porta do servidor para escutar/conectar -f, --formato [kmgKMG] para reportar: Kbits, Mbits, KBytes, MBytes -i, --intervalo # segundos entre relatórios periódicos de largura de banda -F, --nome do arquivo xmit/recv o arquivo especificado -B, --<host>vincular a uma interface específica -V, --prolixe saída mais detalhada -J, --saída json em formato JSON --logfile f envia saída para um arquivo log -d, --debug emitir saída de depuração -v, --versão mostrar informações da versão e sair -h, --ajuda a mostrar essa mensagem e saia Específico do servidor: -s, --servidor rodando no modo servidor -D, --daemon roda o servidor como daemon -I, --arquivo pidfile escreva arquivo PID -1, --uma única vez gerencie uma conexão de cliente e depois saia Específico do cliente: -c, --<host>cliente executado no modo cliente, conectando-se a <host> -u, --udp usa UDP em vez de TCP -b, --banda #[KMG][/#] largura de banda alvo em bits/s (0 para ilimitado) (padrão 1 Mbit/segundo para UDP, ilimitado para TCP) (barras e contagem de pacotes opcionais para modo rajada) -t, --tempo # tempo em segundos para transmitir por (padrão 10 segundos) -n, --bytes #[KMG] número de bytes a transmitir (em vez de -t) -k, --blockcount #[KMG] número de blocos (pacotes) a transmitir (em vez de -t ou -n) -l, --len #[KMG] comprimento do buffer para ler ou escrever (padrão 128 KB para TCP, 8 KB para UDP) --<port>cport vinculado a uma porta cliente específica (TCP e UDP, padrão: porta efêmera) -P, --paralelo # número de fluxos clientes paralelos a serem executados -R, --execução reversa no modo reverso (servidor envia, cliente recebe) -w, --janela #[KMG] definir tamanho da janela / tamanho do buffer do soquete -M, --set-mss # definir tamanho máximo do segmento TCP/SCTP (MTU - 40 bytes) -N, --sem atraso configurado TCP/SCTP sem atraso, desativando o Algoritmo de Nagle -4, --versão 4 usa apenas IPv4 -6, --versão6 usam apenas IPv6 -S, ---tos N definem o 'tipo de serviço' IP -Z, --zerocopy usam um método de 'zero copy' para enviar dados -O, --omita N omita os primeiros n segundos -T, --título prefixo str para toda linha de saída com essa string --get-server-output obter resultados do servidor --contadores udp-64 bits usam contadores de 64 bits em pacotes de teste UDP
[KMG] indica opções que suportam o sufixo K/M/G para kilo-, mega- ou giga-
Página inicial do IPERF3 em:http://software.es.net/iperf/ Reporte bugs para: https://github.com/esnet/iperf Endereço de download da versão do Windows 64 bits:O login do hiperlink está visível.
Servidores LINUX, tomando o CentOS como exemplo, podem instalar a ferramenta iPerf3 usando o comando yum, cujo comando é o seguinte:
servidor
Com o servidor Linux no lado do servidor, execute o seguinte comando:
cliente
Usando meu computador local como lado do cliente, executei o seguinte comando:
Comentário:192.168.50.227 é o endereço IP do lado do servidor
resumo
O log do servidor mostra que uma solicitação de teste foi recebida de 192.168.50.243, porta de origem 22376. O lado do cliente realiza um teste contínuo por 10 segundos e exibe o número de bytes transmitidos por segundo e as informações de largura de banda. As estatísticas enviadas e recebidas são resumidas após a conclusão do teste. A escuta da porta 5201 continua após o fechamento da conexão do cliente.
Conectando ao host 192.168.50.227, porta 5201 [ 4] local 192.168.50.243 porta 22377 conectada à porta 192.168.50.227 porta 5201 [ ID] Largura de banda de transferência de intervalo [ 4] 0,00-1,00 seg 112 MBytes 943 Mbits/s [ 4] 1,00-2,00 seg 112 MBytes 940 Mbits/s [ 4] 2,00-3,00 seg 112 MBytes 941 Mbits/s [ 4] 3,00-4,00 seg 112 MBytes 940 Mbits/s [ 4] 4,00-5,00 seg 112 MBytes 941 Mbits/s [ 4] 5,00-6,00 seg 112 MBytes 941 Mbits/s [ 4] 6,00-7,00 seg 112 MBytes 942 Mbits/s [ 4] 7,00-8,00 seg 112 MBytes 941 Mbits/s [ 4] 8,00-9,00 seg 112 MBytes 942 Mbits/s [ 4] 9,00-10,00 seg 112 MBytes 942 Mbits/s - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Largura de banda de transferência de intervalo [ 4] 0,00-10,00 seg 1,10 GBytes 941 Mbits/s remetente [ 4] 0,00-10,00 seg 1,10 GBytes 941 Mbits/s receptor
iperf Pronto. Tanto o servidor quanto os dispositivos cliente são Gigabit Etherports, e os roteadores também são Gigabit Etherports, então uma largura de banda de 941 Mbits/s é normal.
Máquinas virtuais de teste sob ESXI
Ambos são sistemas CentOS, e o roteador físico recebe um endereço IP privado, que é testado através do IP privado da seguinte forma:
Conectando ao host 192.168.50.227, porta 5201 [5] Local 192.168.50.131 porta 35394 conectada à porta 192.168.50.227 5201 [ ID] Taxa de Bits de Transferência Intervalada Retr Cwnd [5] 0,00-1,00 seg 2,72 GBytes 23,3 Gbits/s 0 1,39 MBytes [5] 1,00-2,00 seg 2,74 GBytes 23,5 Gbits/s 0 1,48 MBytes [5] 2,00-3,00 seg 2,60 GBytes 22,3 Gbits/s 0 1,48 MBytes [5] 3,00-4,00 seg 2,58 GBytes 22,2 Gbits/s 0 1,48 MBytes [5] 4,00-5,00 seg 2,67 GBytes 23,0 Gbits/s 0 1,48 MBytes [5] 5,00-6,00 seg 2,65 GBytes 22,7 Gbits/s 0 1,48 MBytes [5] 6,00-7,00 seg 2,67 GBytes 23,0 Gbits/s 0 1,48 MBytes [5] 7,00-8,00 seg 2,64 GBytes 22,7 Gbits/s 0 1,48 MBytes [5] 8,00-9,00 seg 2,63 GBytes 22,6 Gbits/s 0 1,48 MBytes [5] 9,00-10,00 seg 2,67 GBytes 22,9 Gbits/s 0 1,48 MBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Taxa de Bits de Transferência Intervalada Retr [5] 0,00-10,00 seg 26,6 GBytes 22,8 Gbits/s 0 emissor [5] 0,00-10,04 seg 26,6 GBytes 22,7 Gbits/s receptor
iperf Pronto. Isso é um pouco anormal, porque eu sou um roteador Gigabit, e a velocidade do teste é 22,7 Gbits/s, não é por uma placa de rede física?
Informações de acesso:https://communities.vmware.com/t ... Routes/ta-p/2783083
VM1 e VM2 estão conectados ao mesmo vSwitch chamado "vSwitch1", ao mesmo grupo de portas chamado Produção e também à mesma VLAN chamada VLAN 20, além de ambos rodando no mesmo host ESXi chamado ESX1. O tráfego de rede entre essas VMs (VM1 e VM2) não vai para NICs físicas no host ESXi, e esses frames também não são encaminhados para a rede física, como switch e roteador físicos, porque as VMs também comunica dentro do vSwitch e resulta em alcançar maior velocidade de rede e menor latência de rede. VM1 e VM2 estão conectados ao mesmo vSwitch chamado "vSwitch1", ao mesmo grupo de portas chamado Production e à mesma VLAN chamada VLAN 20, e ambos estão rodando no mesmo host ESXi chamado ESX1. Tráfego de rede entre essas VMs (VM1 e VM2).Não vai para a placa física do host ESXi, e esses quadros tambémNão é encaminhado para a rede física(como switches físicos e roteadores) porque as VMs se comunicam dentro do vSwitch, resultando em velocidades de rede maiores e menor latência de rede.
Eu mesmo testei o ambiente.Duas VMs estão no mesmo host e vSwitch, mas não no mesmo grupo de portas, parece que não é encaminhado para a placa de rede física e para a rede física.
|