RE: [squid-users] min-fresh / max-stale not working?

From: Markus Karg <karg_at_quipsy.de>
Date: Wed, 3 Sep 2008 08:33:41 +0200

Sorry it was a typo. The test was done mit SQUID-2.7-STABLE4 actually.
The HTTP/1.1-Support is only experimental???
 
> -----Original Message-----
> From: Amos Jeffries [mailto:squid3_at_treenet.co.nz]
> Sent: Mittwoch, 3. September 2008 07:14
> To: Markus Karg
> Cc: squid-users_at_squid-cache.org
> Subject: Re: [squid-users] min-fresh / max-stale not working?
>
> > Dear SQUID Community,
> >
> > it seems as if SQUID is not dealing correctly with "min-fresh" and
> > "max-stale":
> >
> > Currently we are evaluating the use of SQUID-2.6-STABLE4. It all
> seems
> > to work pretty well, but just "min-fresh" and "max-stale" is not
> > working. Our client agent wants to guarantee to get data that is
> fresh
> > for a specific amount of time. So we provide "min-fresh=3500" and
> > "max-stale=0". To verify SQUID's behaviour we have programmed an
> origin
> > server the always responds with some static headers and entity data,
> and
> > a client that requests exactly that information, via SQUID as a
> proxy.
> > The client uses the Cache-Control header with a min-fresh=3500 and
> > max-stale=0 value, and the server is always sending data with a
> > max-age=3600 value. But the client gets from SQUID a 200 OK response
> > having max-age=3600 and Age=502! So, the current age of 502 plus the
> > desired min-fresh of 3500 is 4002, minus the max-stale of 0 still is
> > 4002, what is much more than the max-age of 3600 -- so the request
> > cannot be satisfied without a warning, since the response will not
be
> > fresh long enough! So we expect to get at least a Warning header.
But
> > there is none! It looks like SQUID just ignores the min-fresh=3500
> and
> > max-stale=0 headers!
> >
> > The HTTP/1.1 specification says:
> > 13.1.2 Warnings
> > Whenever a cache returns a response that is neither first-hand nor
> > "fresh enough" (in the sense of condition 2 in section 13.1.1), it
> MUST
> > attach a warning to that effect, using a Warning general-header.
> > also it says:
> > 13.1.1 Cache Correctness
> > If a stored response is not "fresh enough" by the most restrictive
> > freshness requirement of both the client and the origin server, in
> > carefully considered circumstances the cache MAY still return the
> > response with the appropriate Warning header.
> >
> > In the default case, this means it meets the least restrictive
> freshness
> > requirement of the client, origin server, and cache (see section
> 14.9)
> >
> > So for me it looks as if SQUID is buggy, since it does not add the
> > mandatory Warning header. Can that be true? Or do I have to enable
> some
> > switch like "HTTP/1.1-Compliance = YES"?
>
> Squid 2.6 is HTTP/1.0 only. For any HTTP/1.1 stuff you will need
Squid
> 2.7 and its experimental support.
>
> As for the cache controls, someone more knowledgeable will hopefully
> speak
> up.
>
> Amos
Received on Wed Sep 03 2008 - 06:33:57 MDT

This archive was generated by hypermail 2.2.0 : Wed Sep 03 2008 - 12:00:02 MDT