Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 17 Feb 2008 23:42:12 -0600 (CST)
From:      Mike Silbersack <silby@silby.com>
To:        freebsd-performance@freebsd.org
Subject:   Syncache / syncookies performance
Message-ID:  <20080210112241.W11665@odysseus.silby.com>

next in thread | raw e-mail | index | archive | help

Kris Kennaway pointed me at Stefan Lambrev's benchmarks on the 
syncache/syncookies:

http://docs.freebsd.org/cgi/getmsg.cgi?fetch=188234+0+archive/2008/freebsd-performance/20080210.freebsd-performance

Which seem to say:

Syncache only (default size): 316000 pps
Syncookies only:              281000 pps
Syncookies + syncache:        252000 pps
Syncache (larger size):       186000 pps

This seems to line up with what I was told by some of the Yahoo guys a few 
years back.  They said that the syncache gets more expensive the bigger 
you make its hash tables.  In theory, the root of problem with the 
syncache is the dropping of entries; if you're just dropping entries out 
of the syncache before you get a response, it's not doing anything 
productive.

What SHOULD be the optimal thing to do is to avoid using syncookies in the 
normal case, unless a syncache bucket fills up.  In the case where a 
bucket is full, we should then leave the syncache entries alone (rather 
than purging them) and emit a syncookie at that time.

I don't have time to implement that, but I'd be happy review it if someone 
else gets it working and is able to show that it is more efficient.

Mike "Silby" Silbersack



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