- From: Jeffrey Mogul <mogul@pa.dec.com>
- Date: Mon, 16 Nov 98 17:44:10 PST
- To: http-wg@hplb.hpl.hp.com
Henrik writes: There is a large group of extensions which your proposed change will impact: the group of extensions describing under which terms a cached entry can be handed out based on payment, copyright, licensing, content filtering, added service, etc. If the cache knows about one of these mandatory extensions (using the M- prefix) then it should be able to serve the request without revalidating the response. Imagine if 80% of requests are M- prefixed with some widely used copyright extension then the forced revalidations are potentially seriously impacting cache performance without reason. True, caches that don't understand the extension will have to validate but on the other hand, if the extension is fully cachable by everyone then it hardly calls for messing with the method name but instead for an optional extension. There is no need to produce more than one GET method. Henrik, please read section 14.9.6 (Cache Control Extensions). It already handles the problem you are describing. For example, an extension can define the meaning of a new cache-control directive (let's call it "henrik-mode"), and send: Cache-control: max-age=0, must-revalidate, henrik-mode=999 Any cache that doesn't understand your extension must ignore "henrik-mode" and so will do the necessary revalidation. If the cache does understand your extension, 14.9.6 allows it to use the "henrik-mode" directive to modify the behavior of the other two ("modify" may mean "ignore"). I do not believe we at this point can change whether we consider caching or the method to be the highest in the hierarchy. I don't think at this point we should be proposing changes to the HTTP/1.1 protocol without first reading the existing specification :-) -Jeff
Received on Monday, 16 November 1998 17:47:13 UTC