Re: Still trying to make sense of HTTP caching model

According to Paul Leach:
> 
> Roy says:
> ]
> ] Just as an informational point, I already included these semantics
> ] in draft 01 for the "max-age" (now Cache-Control: max-age=NNN) parameter.
> 
> In general, how is
> 	Expires: now+T
> different than
> 	Cache-Control: max-age=T
> 
> (Modulo clock skew issues, which Jeff has sugegsted a way to fix.)
> 


1. Cache-Control: max-age=T is much easier to implement at both ends.

2. The clock skew problem never arises with Cache-Control: max-age=T.
The extra complexity of "fixing" it may be unnecessary.

3. The meaning of Cache-Control: max-age=T is much clearer to people
who have never read the protocol.

A final word on this last point.  The HTTP protocol can presumably
legally define any header to have any semantics.  But we need to keep
in mind that most Expires headers (and most Cache-Control headers
in the future) are set by server maintainers.  The fraction of server
maintainers who ever have or ever will read the protocol is
negligible.  The chances that the typical maintainer will figure out
that "Expires: <yesterday>" is intended to mean "Cache-Control:max-age=0"
seems to me to be nil.

Of course, we can self-righteously say, "Too bad for them; they should
read the protocol."  But isn't it better to select headers which, 
insofar as possible, are suggestive of their semantics?

John Franks

Received on Wednesday, 6 September 1995 20:27:37 UTC