Re: Clarification on behaviour of Iperf's -w option


On Thu, 12 Jul 2007, Lawrence Stewart wrote:

It appears the "-w" switch is in fact modifying the size of the send buffer on the client, and is doing so successfully at that.

Well, and this is a Good Thing, since this is the only parameter that matters on the sender. If it's too small, the sender may be blocked waiting for acknowledgements. On the other hand, setting the *receive* buffer size on the *sender* is absolutely useless for performance.


If the documentation could drop the misleading "window size" terminology in profit for the correct "socket buffer size" name which it is actually setting (SO_SNDBUF / SO_RCVBUF), this would make such recurrent confusions go away.

Receive socket buffer size and TCP window are definitely related, and definitely different (Hint: buffers are not always empty. Else why
allocate them?)


Send socket buffer size and TCP window are very very indirectly related => bad terminology.

The -w option as it is currently performs The Only Perfect Thing That Matters For Performance (for one-way tests). It is only confusingly misnamed. It sets the send buffer size on the sender and the receive buffer on the receiver: I like it, and I suspect that most people that got used to it for ages like it too.

Maybe it is interesting to add new options for people wanting to control more finely and more explicitely receive versus send buffers, but... please do not change the existing and useful -w option?

Bidirectional tests are yet another story... *sigh*



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