[httperf] connreset and errors accounting ?

Arlitt, Martin martin.arlitt at hp.com
Mon May 26 11:05:11 PDT 2008

Hi Paul

Looking at the session length histogram, we see there were 223 sessions with 12 successful transactions each (2,676 transactions) and 1,777 sessions with 1 successful transaction each (1,777 transactions).  This accounts for the 4,453 successful HTTP transactions, as well as the 2000 (223 + 1777) sessions.

I don't know why the resets were occurring in your environment, but if the sessions were not complete, and if at least some of them issued requests in bursts (the output indicates the maximum connect burst length is 2), then this could account for the smaller number of connection errors than outstanding requests (i.e., if a bunch of the connections issued 2 requests in parallel before being reset).  I'm not sure how easy it will be to verify this.  If you could make the reset behavior occur at a lower rate, you could capture the network traffic (e.g., using tcpdump) and verify that this is why the counts differ.  You could also try using more verbose httperf output (e.g., print-reply, print-request, or compile DEBUG mode, etc), and see if that explains the numbers better.  However, I haven't tried this for the specific problem you are seeing.

Of course, if you could track down the source of the resets and correct that, the numbers should all add up, and then you wouldn't need to go this extra step.


-----Original Message-----
From: httperf-bounces at napali.hpl.hp.com [mailto:httperf-bounces at napali.hpl.hp.com] On Behalf Of Paul Guermonprez
Sent: Monday, May 26, 2008 9:59 AM
To: httperf at napali.hpl.hp.com
Subject: [httperf] connreset and errors accounting ?


i am trying to caracterize several apache setups with this great tool,
but i don't understand all the results.

i don't get 5XX, fine,
no client-timo, fine
but early in my bench i get connresets
i don't really understand if this reset is part of the normal exchange ???

and if i get a difference between requests and replies,
why is the difference not the numbers of errors ?
9136 = 4453 + 2453 + ???

thanks a lot, paul.

httperf --hog --server= --port 8080
--wsesslog=2000,2,blog.session --timeout=5 --think-timeout=2 --rate=15
httperf --hog --think-timeout=2 --timeout=5 --client=0/1
--server= --port=8080 --uri=/ --rate=15
Maximum connect burst length: 2

Total: connections 4453 requests 9136 replies 4453 test-duration 151.557 s

Connection rate: 29.4 conn/s (34.0 ms/conn, <=113 concurrent connections)
Connection time [ms]: min 0.3 avg 1859.3 max 7818.4 median 1439.5 stddev 1771.9
Connection time [ms]: connect 0.1
Connection length [replies/conn]: 1.000

Request rate: 60.3 req/s (16.6 ms/req)
Request size [B]: 210.0

Reply rate [replies/s]: min 8.8 avg 29.7 max 33.8 stddev 5.1 (30 samples)
Reply time [ms]: response 1266.4 transfer 66.7
Reply size [B]: header 328.0 content 26726.0 footer 1.0 (total 27055.0)
Reply status: 1xx=0 2xx=4453 3xx=0 4xx=0 5xx=0

CPU time [s]: user 23.16 system 128.40 (user 15.3% system 84.7% total 100.0%)
Net I/O: 788.7 KB/s (6.5*10^6 bps)

Errors: total 2453 client-timo 0 socket-timo 0 connrefused 0 connreset 2453

Session rate [sess/s]: min 4.00 avg 13.20 max 15.40 stddev 2.91 (2000/2000)
Session: avg 2.23 connections/session
Session lifetime [s]: 4.1
Session failtime [s]: 0.0
Session length histogram: 0 1777 0 0 0 0 0 0 0 0 0 0 223
httperf mailing list
httperf at linux.hpl.hp.com

More information about the httperf mailing list