[netperf-talk] Testing simultaneus connections

Rick Jones rick.jones2 at hp.com
Wed Feb 22 10:35:29 PST 2012


On 02/22/2012 08:21 AM, Gerd v. Egidy wrote:
> Hi,
>
> I want to measure the number of new tcp connections a firewall can handle
> within a given time.

Perhaps an overly-subtle nit, but that is a connection rate, not the 
simultaneous connections from the subject.

> So I need a tool which is able to create several thousand tcp connections per
> second. Over each connection it should send something short like "GET /" and
> wait for about one or two kilobytes answer. Because the number of tcp sockets
> on one ip will probably be exhausted soon, it should allow to use multiple ips
> as source address. As this probably will become a problem on the server side
> too, the server should be able to use multiple ips too.
>
> Does netperf4 already support something like this? Or would it be possible to
> add it with reasonable effort?

Reasonable is relative.  Netperf4 hasn't had much of anything done to it 
in a very long time and may suffer from non-trivial bit-rot.

That said, if the question is TCP connections through a firewall, do the 
TCP connections actually have to be carrying HTTP?  If not, the standard 
TCP_CRR test (not sure if there is one in netperf4 already, but it is in 
netperf2) could be used, along with the mechanisms one can use to get 
reasonable aggregate results from netperf2 (which is one reason netperf4 
hasn't had as much attention...) described in 
http://www.netperf.org/svn/netperf2/trunk/doc/netperf.html#Using-Netperf-to-Measure-Aggregate-Performance

These days I find myself using the technique described in Section 7.3 - 
http://www.netperf.org/svn/netperf2/trunk/doc/netperf.html#Using-_002d_002denable_002ddemo 
  combined with rrdtool - I use a "demo interval" of 1 second and a one 
second step in rrd.

If you need actual HTTP traffic, you might consider httperf 
http://www.hpl.hp.com/research/linux/httperf/  Or you could in theory 
script something around the likes of curl or wget.

happy benchmarking,

rick jones

I suppose there might be some way to "fake" http traffic with netperf2 
if one used the global -F option to point at a file with the requisite 
http request, knew the response size was fixed, pointed netperf at port 
80 with a test-specific -P option, and employed the "no-control" 
mechanism, but that seems somewhat brittle

http://www.netperf.org/svn/netperf2/trunk/doc/netperf.html#index-g_t_002dF_002c-Global-24

http://www.netperf.org/svn/netperf2/trunk/doc/netperf.html#index-g_t_002dN_002c-Global-33

http://www.netperf.org/svn/netperf2/trunk/doc/netperf.html#index-g_t_002dP_002c-Test_002dspecific-61


More information about the netperf-talk mailing list