[netperf-talk] setting socket size using netperf 2.4.1

Rick Jones rick.jones2 at hp.com
Mon Oct 9 10:08:53 PDT 2006


MAHMOUD HANAFI wrote:
> When trying to set the send and receive socket size netperf always 
> doubles it. Is this normal?

No, it is not normal, and no, it is not netperf doing it.  That is a "we want to 
be different" linuxism where by what getsockopt() returns is the total overhead 
limit rather than the "actual byte" limit one sets with setsockopt().  Linux 
feels compelled to be completely different from all other TCP/IP stacks in this 
regard.

As you set the actual byte limit closer and closer to the "soft limits" one can 
see via sysctl (sysctl -a | grep mem) you will see that it isn't always a doubling.

> 
> ./netperf -f g -p 32769 -l 10 -H xx.xx.xx.xx -t TCP_STREAM -i 10,2 -I 
> 99,5 -- -s 16384 -S 16384
> TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to xx.xx.xx.xx 
> (xx.xx.xx.xx) port 0 AF_INET : +/-2.5% @ 99% conf.
> Recv   Send    Send
> Socket Socket  Message  Elapsed
> Size   Size    Size     Time     Throughput
> bytes  bytes   bytes    secs.    10^9bits/sec
> 
>  87380  32768  32768    10.00       0.90
> 

Also, notice that it didn't just double the -S option, it had a minimum of 87380.

If you want to have an explicit send size, add a -m option to your netperf 
command link.

happy benchmarking,

rick jones
> 
> 
> 
> -Mahmoud
> _______________________________________________
> netperf-talk mailing list
> netperf-talk at netperf.org
> http://www.netperf.org/cgi-bin/mailman/listinfo/netperf-talk



More information about the netperf-talk mailing list