From: Kevin G. <kg...@nc...> - 2003-02-22 00:09:14
|
The warning is because the OS gave you 64.4K not 64.0K it does a simple comparison, and the size is being set because that is where the 64.4K came from. TCP implementations vary greatly between different OSes, to assume you are going to get the same performance from different OSes is unwise. Unfortunately for UDP tests in order to provide any amount of accuracy in approximating the bandwidth we have to use busy waiting. That is why you are seeing a seemingly large CPU utilization and therefore not able to support 150 clients simultaneously. If we use sleep() or other OS calls to handle the waiting between packets we are stuck with a granularity of maybe .5 secs (worse in some cases) which is completely unacceptable for speeds greater than say 2-5Kb/s. Kevin On Fri, 21 Feb 2003, paul shields wrote: > On Solaris I get the following errors > > $ iperf -s -w 64K > ------------------------------------------------------------ > Server listening on TCP port 5001 > TCP window size: 64.4 KByte (WARNING: requested 64.0 KByte) > ------------------------------------------------------------ > > With the warning, I don't think it properly sets the window size because > performance is below expectations (less than running the same test between > two windows machines). > > ------ > Also, I ma seeing performance issues with running multiple iperf sessions on > one machine. I need to start traffic from one machine going out to 150 > different machines. Once I get past about 40 iperf clients on the Sun > server, the machine get very slow. Each iperf sessions is using about 2.3% > of the CPU. Is there something I can do to help this(besides adding more > endpoints which I am going to do). > > This is while using iperf in UDP mode, streaming 64 byte packets at about > 200K per client. > > Thanks > Paul > > |