UDP Connection tuning questions regarding the -b and -l options


I'm new to Iperf and looking at using it to test fibre connections where 
there may be problems on one of the pair of fibres between two switches. 
I have FreeBSD servers also connected to the switches that I am using to 
perform the testing.

I have some questions that I hope are more related to Iperf 
specifically, but I'm afraid some seem to me to be more networking in 
general. Pointers to other sources of information, or useful lists that 
will be friendly to an old sys admin would be appreciated if answers are 
not possible because I'm too OT.

1. Using the -b option

I have the testing servers on 100 Mb links. As I increase the -b option 
to near this figure I see increased datagram loss. I assume this is due 
to the addition of IP packet and ethernet frame information causing 
datagrams to be split into packets. Can someone confirm/clarify my 
understanding?

iperf -u -c 172.18.1.1 -l 1470B -b 95m -t 5
0.0- 5.0 sec  57.0 MBytes  95.5 Mbits/sec  0.032 ms   21/40652 (0.052%)

iperf -u -c 172.18.1.1 -l 1470B -b 98m -t 5
0.0- 5.0 sec  57.4 MBytes  95.4 Mbits/sec  0.029 ms 1065/42019 (2.5%)

iperf -u -c 172.18.1.1 -l 1470B -b 100m -t 5
0.0- 5.0 sec  57.4 MBytes  95.4 Mbits/sec  0.053 ms 1783/42737 (4.2%)

1. Using the -l option

In the user guide I see in the example both the server and client have 
the -l option for a test. Is this necessary on the server, or will it 
accept any size (this seems to be the case from my investigation so 
far)? I wanted to leave the server running without having to change its 
parameters each time.

If I lower the -l option from the default of 1470B I see an increase 
data loss the lower I go.

iperf -u -c 172.18.1.1 -l 1470B -b 90m -t 5
0.0- 5.0 sec  53.9 MBytes  90.5 Mbits/sec  0.017 ms    0/38463 (0%)

iperf -u -c 172.18.1.1 -l 1000B -b 90m -t 5
0.0- 5.0 sec  54.2 MBytes  90.9 Mbits/sec  0.046 ms    0/56820 (0%)

iperf -u -c 172.18.1.1 -l 100B -b 90m -t 5
0.0- 5.0 sec  35.1 MBytes  58.8 Mbits/sec  0.025 ms 230978/599009 (39%)

If I remove the -b option I see no datagram loss, but a considerably 
slower bandwidth.

iperf -u -c 172.18.1.1 -l 100B -t 5
0.0- 5.0 sec   641 KBytes  1.05 Mbits/sec  0.025 ms    0/ 6563 (0%)

Can someone explain this? I have seen a previous post this month that I 
think asks the same question but didn't follow the answer :-(. As I 
understand it I am stressing the server nics and switches more by trying 
to achieve the same bandwidth throughput with many more (and less 
optimal from the hardware's point of view) packets. Hence more are 
dropped by the hardware (or OS).

If this is the case I suppose I need to test the servers back to back 
and then with the switches in between to see the difference the network 
devices. As an alternative I can get the NIC cards/switches to report 
packet loss via something like SNMP or interfaces counters available 
from the command line. Is this a typical approach?

Thanks,

Jim Mozley



Other Mailing lists | Author Index | Date Index | Subject Index | Thread Index