[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