Re: Questions on Iperf still actual
On Wed, 27 Aug 2003 carsten --at-- walther-syke.de wrote:
> Hello Kevin,
> the questions I asked you about my problems in understanding
> Iperf are still actual. I made some more UDP measurements
> because Iperf ist the only tool I found which is able to
> determine and to evaluate jitter and packet loss in a simple way.
Yes Iperf is one of a kind and lots of people have not found anything like
> So I would still be glad if you could answer the questions
> of my last email. Here they are again.
> 1. I used a mobile device terminal for UDP Upload (max. available
> upload bandwith 64 kBit/s). How does Iperf know how much data to
> send to reach the maximum bandwidth of the connection. In this case
> I wondered about, how the Iperf instance on the server can calculate
> the number of lost packets. Could you give me more detailed information
> of how this mechanism works? Could you tell me more about this
> regulation mechanism?
Each packet carries a ID number, so when the server sees a jump in the ID
it quickly realizes that it must have missed something. The regulation
mechanism performed on the client side is a tight loop that accurately
waits for specified periods before waking up (on *nix machines this is
VERY accurate but on windows it is not so accurate, we will be updating
the windows code in the future to be more accurate). The timer is set
based on the desired speed and is adjusted to compensate for missed
> 2. After watching the results in the log files with different datagram
> (100 Byte, 500 Byte, 1470 Byte) I wondered about higher bandwidth
> than the mobile device supported. The rates increased with increasing
> datagram sizes. For example with 1470 Byte datagrams I recognized a
> bandwidths of 70.4 and 90.1 kBit/s although the mobile device only
> supports 64 kBit/s in upload direction. Also the distances between the
> occured bandwidth values increased and so the accuracy decreased.
> Can you explain this effect by the functionalities of Iperf? How does
> Iperf exactly calculate the bandwith for each log row entry (very
> important for the evaluation of measurements in my diploma thesis)?
> Here some examples of the exactly parameters I used with Iperf:
> >> iperf -s -u -i -0.5
> >> iperf -c <server ip> -u -b 10m -l 100 -t 600
> >> iperf -c <server ip> -u -b 10m -l 1000 -t 600
First off why are you using a negative interval (-0.5) ??? That is quite
odd. You may want to check if you have any link layer compression. This is
often the case with slow connections such as dial-up. Since the transfer
is so slow extra processing is performed to first compress the data before
sending it across the slow link. To test this theory send a already
compressed file using the -R flag as described in the documentation. If
the numbers are less then you know that compression is being provided at a
lower level than Iperf.
If you have further questions let me know.