Re: digest only peering?

From: Alex Rousskov <rousskov@dont-contact.us>
Date: Wed, 25 Nov 1998 01:36:31 -0700 (MST)

On Wed, 25 Nov 1998, Bruce Campbell wrote:

> It seems to cover the case of fulfilling a request which would otherwise
> be denied if we've got a false hit in the (current) cache-digest.
>
> It also covers the case of if a peer retrieves a cache-digest, we discard
> an object, the peer then requests the object.

Yes. Both cases are false hits, just two different reasons for "false":
digest collisions and refresh algorithm.
 
> That still leaves a window of up to an hour between when we discard an
> object/generate cache-digest without said object, and a when peer
> retrieves the latest cache-digest without the object in it,

(a) The window between digest rebuilt and other caches asking for a new
    digest should be small in most cases (several minutes, not an hour)

(b) New digest in most cases is more than 90% the same as the old one so the
    rebuild itself will not cause a lot of false hits.

> possibly
> longer if the peer is disconnected, during which time the peer's client
> will get our 'Bugger off, not letting you have this object'.

If a peer is disconnected, Squid will detect that and will not use the digest
from that peer until the peer is back. Meantime, Squid will try to re-fresh
the peer digest and is likely to fail (since the peer is disconnected) and
disable the digest.

> Hmmm... its starting to get too much effort to keep the previous (X) cache
> digests around to deal with that aspect.

I do not think there is any good reason to start keeping old digests (except
during the rebuild process).
 
> Skimming store_digest.c, around line 190 says "this object won't be added
> to the digest as we're going to toss it out before the next rebuild", so
> that seems to cover most cases, although I'd be inclined to trust in the
> Note there and increase that amount of time, ie:

You sure can do that. Just note that it will cause more false hits (handled
correctly or not). Also, you probably do not have to patch Squid to achieve
similar effect. Try using the default "." refresh pattern for that (not
exactly the same, but probably close). Refresh statistics in cache manager
will show you how many objects (%) you have digested.

Alex.
Received on Wed Nov 25 1998 - 01:50:17 MST

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:43:19 MST