
Estou brincando com o iperf há 4 horas e não consigo entender por que os resultados são diferentes no cliente e no servidor.
Considere a seguinte saída iperf em client :
iperf -c 91.121.112.163 -p 2222
------------------------------------------------------------
Client connecting to 91.121.112.163, TCP port 2222
TCP window size: 1.06 MByte (default)
------------------------------------------------------------
[ 3] local 10.0.0.160 port 36726 connected with 91.121.112.163 port 2222
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-11.4 sec 1.88 MBytes 1.38 Mbits/sec
E aqui está a saída correspondente no servidor:
iperf -V -s -p 2222
------------------------------------------------------------
Server listening on TCP port 2222
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[ 4] local ::ffff:91.121.112.163 port 2222 connected with ::ffff:86.209.154.156 port 36726
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-19.1 sec 1.88 MBytes 823 Kbits/sec
Então, o cliente está enviando a 1,38 Mbits/seg, mas o servidor está recebendo a 823 kbits/seg?
Alguém tem uma explicação sobre esses resultados confusos?
Responder1
Acredito que o problema é que o cliente está se comunicando com um dispositivo que armazenou em buffer o tráfego de saída, então o cliente acredita que isso foi feito antes que o servidor tenha realmente recebido o último bloco de dados. Tenho notado muito isso com o iperf - o relatório segundo a segundo do servidor é muito mais estável que o do cliente. Também notei queprimeiroo segundo no cliente é sempre o maior rendimento, que presumo que seja o preenchimento do buffer de qualquer dispositivo ao longo do caminho que esteja fazendo isso. A seguir está o cliente e o servidor testando um link bidirecionalmente moldado para 7 Mbps...
------------------------------------------------------------
Client connecting to 204.22.22.104, TCP port 5001
TCP window size: 20.0 KByte (default)
------------------------------------------------------------
[ 3] local 10.125.20.100 port 49248 connected with 204.22.22.104 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0- 1.0 sec 1.12 MBytes 9.44 Mbits/sec
[ 3] 1.0- 2.0 sec 768 KBytes 6.29 Mbits/sec
[ 3] 2.0- 3.0 sec 768 KBytes 6.29 Mbits/sec
[ 3] 3.0- 4.0 sec 896 KBytes 7.34 Mbits/sec
[ 3] 4.0- 5.0 sec 768 KBytes 6.29 Mbits/sec
[ 3] 5.0- 6.0 sec 896 KBytes 7.34 Mbits/sec
[ 3] 6.0- 7.0 sec 768 KBytes 6.29 Mbits/sec
[ 3] 7.0- 8.0 sec 896 KBytes 7.34 Mbits/sec
[ 3] 8.0- 9.0 sec 768 KBytes 6.29 Mbits/sec
[ 3] 9.0-10.0 sec 768 KBytes 6.29 Mbits/sec
[ 3] 0.0-10.2 sec 8.38 MBytes 6.91 Mbits/sec
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[ 4] local 204.22.22.104 port 5001 connected with 10.125.20.100 port 49248
[ ID] Interval Transfer Bandwidth
[ 4] 0.0- 1.0 sec 828 KBytes 6.78 Mbits/sec
[ 4] 1.0- 2.0 sec 764 KBytes 6.25 Mbits/sec
[ 4] 2.0- 3.0 sec 857 KBytes 7.02 Mbits/sec
[ 4] 3.0- 4.0 sec 815 KBytes 6.68 Mbits/sec
[ 4] 4.0- 5.0 sec 811 KBytes 6.64 Mbits/sec
[ 4] 5.0- 6.0 sec 814 KBytes 6.66 Mbits/sec
[ 4] 6.0- 7.0 sec 815 KBytes 6.68 Mbits/sec
[ 4] 7.0- 8.0 sec 814 KBytes 6.66 Mbits/sec
[ 4] 8.0- 9.0 sec 812 KBytes 6.65 Mbits/sec
[ 4] 9.0-10.0 sec 806 KBytes 6.60 Mbits/sec
[ 4] 0.0-10.6 sec 8.38 MBytes 6.64 Mbits/sec
Responder2
Do cliente: (ênfase minha)
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-**11.4** sec 1.88 MBytes 1.38 Mbits/sec
Do servidor:
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-**19.1** sec 1.88 MBytes 823 Kbits/sec
Por algum motivo, o servidor acha que o teste está demorando cerca de 8 segundos a mais do que o cliente. Isso seria suficiente para reduzir a largura de banda geral (da perspectiva do servidor) para 823 Kbps.