IPERF results

Hi - I am seeing some strange IPERF results.. Everything goes through my WIFI/GIGABIT router. For these tests everything is plugged directly into the router via Ethernet cable. My issue is the transfer rate from Windows to FreeBSD. There are 3 different computers in this lab running 3 different OS.

Here are the results:
Code:
FreeBSD as server:

[vic@yeaguy ~] iperf -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 64.0 KByte (default)
------------------------------------------------------------


[  4] local 192.168.1.3 port 5001 connected with 192.168.1.8 port 52505   
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.1 sec   157 MBytes  131 Mbits/sec <----- WINDOWS 8.1 as client on same LAN/ROUTER




[  5] local 192.168.1.3 port 5001 connected with 192.168.1.12 port 60926  
[  5]  0.0-10.0 sec  1.10 GBytes   941 Mbits/sec <------ MACBOOK PRO as client on same LAN/ROUTER


Windows as the server:

------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 64.0 KByte (default)
------------------------------------------------------------
[  4] local 192.168.1.8 port 5001 connected with 192.168.1.3 port 60529  
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec  1014 MBytes   850 Mbits/sec <--------- Freebsd 10 as client on same LAN/ROUTER



[  4] local 192.168.1.8 port 5001 connected with 192.168.1.12 port 60933  
[  4]  0.0-10.0 sec  1.08 GBytes   931 Mbits/sec <------ MACBOOK PRO as client on same LAN/ROUTER



Macbook Pro as the server:

[  3] local 192.168.1.8 port 52509 connected with 192.168.1.12 port 5001  
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec   823 MBytes   690 Mbits/sec <------ WINDOWS 8.1 as client on same LAN/ROUTER

[  3] local 192.168.1.3 port 23190 connected with 192.168.1.12 port 5001  
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  1016 MBytes   852 Mbits/sec <------ Freebsd 10 as client on same LAN/ROUTER


With FreeBSD being the server, Windows transfer to FreeBSD is slow, compared to Macbook to FreeBSD transfer. With Windows as the server, FreeBSD and Macbook to Windows transfer is great.
With Macbook as server, Windows and FreeBSD transfer is good. The only bad transfer is Windows to FreeBSD. Windows transfer to Mac is good. I can't really blame Windows for the poor transfer to FreeBSD then. Macbook to FreeBSD is outstanding, can't really blame FreeBSD for poor receive performance.

Code:
FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC 2014     root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC
 
I suspect this is to do with the performance settings within Windows.

A few thoughts:
  • What version of Windows are you working with?
  • Have you performance tuned the Windows TCP/IP stack as per Microsoft Whitepaper on the topic (TCP Optimiser from SpeedGuide.net...)?
  • Have you tried NUT TCP or some other benchmark than iPerf: I have seen iPerf throw a wobbly on Windows before now in mysterious ways...
  • Have you tried a UDP test in iPerf, would expect >95% throughput on line rate, if the transmit buffer was big enough...

(Could be TCP windowing size, TCP_ACK offload or quench issues on Windows...)

James
 
Back
Top