Hi, the larger values I use for -l in UDP mode, the lower bandwidth is reported by iperf, incorrectly I think. With tcpdump I found that it really seems like iperf would calculate only with one IP fragement instead of the whole UDP packet.
I hope someone can explain why this happens, but first let me explain what I did. I wondered why bandwidth decreases when using larger UDP frames: iperf -u -c x.y.0.1 -f m -b30m -l 1400 [ 3] 0.0-10.4 sec 4.01 MBytes 3.25 Mbits/sec 4.203 ms 23810/26811 (89%) iperf -u -c x.y.0.1 -f m -b30m -l 8000 [ 3] 0.0-10.3 sec 0.78 MBytes 0.63 Mbits/sec 9.625 ms 4129/ 4683 (88%) Server is iperf-2.0.5, downloaded just a few minutes ago. So with larger UDP packets, the reported bandwidth decreases from 3.25 Mbit/sec down to 0.63 MBit/sec. With tcpdump on an intermediate router and wireshark I found in IO Graphs for both the same data rate (~3Mbit). - First case, 1400 bytes UDP packets: - iperf tells 4.01 MBytes 3.25 Mbits/sec 23810/26811 (1400bytes), that are 3001 packets - this is OK according to tcpdump/Wireshark port udp.port==60054: displayed 3003 (3001 plus server reply plus one I don't know) - Calculating myself: (26811-23810)*1400bytes/10sec*8bits = 3,361,120 bits/sec - Second case, 8000 bytes UDP packets: - iperf tells 795 KBytes 630 Kbits/sec 4129/ 4683 (8000 bytes), that are 554 packets - this is OK according to tcpdump/Wireshark port udp.port==34339: displayed 556 packets - Calculating myself: (4683-4129)*8000/10sec*8bits = 3,545,600 bits/sec - So rate seems to be fine, but iperf only shows 630 Kbits/sec! (please note that this calculation bases on the values shown by iperf!) - Could iperf use the wrong size, just size of a single fragment? Calculating with one IP fragment of assumed size of 1480 bytes: (4683-4129)*1480/10sec*8bits = 655,936 bits/sec - this is close to the value calculated by iperf When testing with 4000 bytes, I get values in between: - 1.56 MBytes 1.26 Mbits/sec 9.469 ms 8257/ 9370 - resulting in the same situation (I calc ~3.5 Mbit, but when calculating with one fragment, I get ~1.3 Mbit, same as iperf) So it seems that iperf UDP bandwidth calculation does not calculate the correct UDP packet size, but only the size of one IP fragment, could that be the case? Since I cannot imagine that no one ever noticed and fixed this, I think I could have some different issue? Seem I'm missing something? What did I do wrong? Could someone please enlighten me? Regards, Steffen ------------------------------------------------------------------------------ LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d _______________________________________________ Iperf-users mailing list Iperf-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/iperf-users