Subject: Re: setsockopt()

From: Roland Dreier <[email-masked]>
Date: Mon, 07 Jul 2008 23:29:31 -0700

Interesting... I'd not tried nuttcp before, and on my testbed, which is
a very high-bandwidth, low-RTT network (IP-over-InfiniBand with DDR IB,
so the network is capable of 16 Gbps, and the RTT is ~25 microseconds),
the difference between autotuning and not for nuttcp is huge (testing
with 2.6.26-rc8 plus some pending 2.6.27 patches that add checksum
offload, LSO and LRO to the IP-over-IB driver):

nuttcp -T30 -i1 ends up with:

14465.0625 MB /  30.01 sec = 4043.6073 Mbps 82 %TX 2 %RX

while setting the window even to 128 KB with
nuttcp -w128k -T30 -i1 ends up with:

36416.8125 MB /  30.00 sec = 10182.8137 Mbps 90 %TX 96 %RX

so it's a factor of 2.5 with nuttcp.  I've never seen other apps behave
like that -- for example NPtcp (netpipe) only gets slower when
explicitly setting the window size.

Strange...