iperf 2.0.2 bug?


Hi,

I am running iperf-2.0.2 on Linux 2.6.21 on x86 hosts.  We just upgraded
to Linux 2.6.21 and the behavior of the UDP client seems to have
changed ... even though we applied the linux-2.6.21 patch.

The symptoms are that the UDP client outputs a message at the end of
a transmission that says there are 2 out-of-order packets.  After looking
at tcpdump output, I realized that the client is outputting an incorrect
sequence number in the FIN packets that are sent at the end of a UDP
transmission.  Furthermore, the cause seems to be that the FIN packet is
sent out before the Reporter thread has had time to process all of its work;
i.e., the sequence number seen by the transfer agent (packet->packetID)
is different than the count seen by the Reporter (agent->report.cntDatagrams)
because the Reporter still has a backlog of packet reports that it has
not processed.

I fixed the problem by calling thread_rest() in Client::Run() right before
calling CloseReport() to give the Reporter thread to catch up but that
may or may not be the best solution.

Regards,
Ken Wong



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