Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 01 Dec 2008 15:42:30 +0100
From:      Andre Oppermann <andre@freebsd.org>
To:        Paulo Fragoso <paulo@nlink.com.br>
Cc:        freebsd-net@freebsd.org
Subject:   Re: FreeBSD 7.1 tcp problem (syncache)?
Message-ID:  <4933F7D6.50805@freebsd.org>
In-Reply-To: <4933EC58.5030204@nlink.com.br>
References:  <4933EC58.5030204@nlink.com.br>

next in thread | previous in thread | raw e-mail | index | archive | help
Paulo Fragoso wrote:
> Hi,
> 
> We was using one machine with FreeBSD 6.4-RELEASE running 
> apache-worker-2.2.3 + mysql, this server can answer high request from 
> one client using ab:
> 
> {client}$ ab -n 2000 -c 1000 http://system_using_6.4-RELEASE
> ...
> Benchmarking ***** (be patient)
> Completed 200 requests
> Completed 400 requests
> Completed 600 requests
> Completed 800 requests
> Completed 1000 requests
> Completed 1200 requests
> Completed 1400 requests
> Completed 1600 requests
> Completed 1800 requests
> Finished 2000 requests
> ...
> {client}$
> 
> Using other hardware whit FreeBSD 7.1-PRERELEASE running 
> apache-worker-2.2.9_5 + mysql, we have a poor result:
> 
> {client}$ ab -n 2000 -c 1000 http://system_using_7.1-PRERELEASE
> ...
> Test aborted after 10 failures
> 
> apr_connect(): Invalid argument (22)
> {client}$
> 
> Looking for a problem on new server log we found:
> 
> kernel: TCP: [client]:50197 to [server]:80 tcpflags 0x4<RST>; 
> syncache_chkrst: Spurious RST without matching syncache entry (possibly 
> syncookie only), segment ignored
> kernel: TCP: [client]:53845 to [server]:80 tcpflags 0x4<RST>; 
> syncache_chkrst: Spurious RST without matching syncache entry (possibly 
> syncookie only), segment ignored
> kernel: TCP: [client]:53845 to [server]:80 tcpflags 0x4<RST>; 
> syncache_chkrst: Spurious RST without matching syncache entry (possibly 
> syncookie only), segment ignored

This error is harmless and occurs when the client closes the socket
before the TCP session has terminated.  The RST have crossed and hit
the syncache.  The same happens on 6.4 but it never told you about it.

> All sysctl and apache conf are same on both server, is there a tcp 
> problem with FreeBSD 7.x?

Are you using the HTTP accept filter on the server?  This may cause
the listen accept queue to overflow.

Please post the output of "netstat -n -s -p tcp" to further diagnose
the problem.

-- 
Andre




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4933F7D6.50805>