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

From: Markus Karg <karg_at_quipsy.de>
Date: Wed, 3 Sep 2008 22:10:55 +0200

Is there a plan when HTTP/1.1 completely will be supported in all sides?
I mean, I hardly can't believe it -- HTTP/1.1 was specified in 2008. Why
waiting so long?

Thanks
Markus

> -----Original Message-----
> From: Amos Jeffries [mailto:squid3_at_treenet.co.nz]
> Sent: Mittwoch, 3. September 2008 15:40
> To: Markus Karg
> Cc: squid-users_at_squid-cache.org
> Subject: Re: [squid-users] min-fresh / max-stale not working?
>
> Markus Karg wrote:
> > Sorry it was a typo. The test was done mit SQUID-2.7-STABLE4
> actually.
> > The HTTP/1.1-Support is only experimental???
>
> Brand new in 2.7 and some bugs still being found.
> It's also only on one side of Squid, the one which links to Servers
> IIRC, so the client-facing code is still HTTP/1.0-only.
>
> Amos
>
> >
> >> -----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
> >
>
>
> --
> Please use Squid 2.7.STABLE4 or 3.0.STABLE8
Received on Wed Sep 03 2008 - 20:11:00 MDT

This archive was generated by hypermail 2.2.0 : Thu Sep 04 2008 - 12:00:02 MDT