- From: Koen Holtman <koen@win.tue.nl>
- Date: Thu, 22 Aug 1996 14:35:43 +0200 (MET DST)
- To: "Roy T. Fielding" <fielding@liege.ICS.UCI.EDU>
- Cc: mogul@pa.dec.com, http-wg%cuckoo.hpl.hp.com@hplb.hpl.hp.com
Roy T. Fielding: [...] >My summary is that the spec of sections 13.2.3 and 14.6 is not only >wrong (produces the wrong Age value on every request), but also has >the probability of causing catastrophic network failure for those >networks which are becoming increasingly dependent on cache >efficiency. I too think that Jeff goes way to far in never trying to underestimate the age, and that there could be problems because of this. My main concern is that with the `every proxy cache must add an Age header' interpretation, first-hand responses with max-age=0 or some other small max-age value may have been marked as aged and gotten a warning:stale header by the time they have passed a few 1.1 proxy caches. This is extremely bad because a) the next proxy might retry the request to get a fresh response, and might even go into an infinite retry-loop when it keeps getting responses with Age: 1. b) the user will get a big *warning:stale* message from the browser while in fact nothing is wrong (the response is firsthand, so it is as fresh as it can be). Such warnings might drown out the actual warnings when responses *are* stale, might cause lots of reload-pressing, might cause service authors to never use max-age=0, etc. There may be ways to carefully code around both problems, but all in all, I think that Jeff's interpretation leads to a very brittle system, in which `obvious' mechanisms added for robustness could easily cause catastrophic failure when deployed in a chain of proxies. I exchanged e-mail with Jeff and Jim about this before the 06 draft was finished, and this led to Jeff writing the current ambiguous sentence, which I interpreted at the time as Roy does now: `must add an Age header only when serving a response from cache memory'. My proposal to Jeff at the time was something like the following Age header rule: - MUST add Age when serving from cache memory - MAY add Age when relaying a response from a 1.0 proxy - MUST NOT add Age when relaying a response from a 1.1 or higher proxy > ...Roy T. Fielding Koen.
Received on Thursday, 22 August 1996 05:43:32 UTC