Larry asked for implementers opinions; we have two versions in the field:
1) ICS 4.2 - which does NOT claim 1.1-compatability as a proxy - generates an
Age: header on every cacheable response that flows through the
proxy iff caching is enabled.
2) A beta of our next version generates an Age: header on every response that
flows through it (Mogul's option C).
We think that both of these make the Age: header useless.
For example, with only 1 proxy in the chain and fairly rapid response times,
the Age: header just shows the amount of clock skew (which
Mogul shows to be very common) in the response, which is not informative.
Age, in our opinion, is intended to allow you to detect how long the response
has been sitting in a proxy cache, not how long it has been in transit (which
is information that can be derived by the client anyway).
We think that Fielding has the right idea (Option B), since that gives a
meaningful interpretation to Age:, and plan to ship our next release that
way.
Now, while I'm on the subject, if a proxy *KNOWS* that it has a synchronized
clock, it can detect and adust for skew (as long as it is not a multiple of 60
minutes - you cannot really deal effectively with bad timezone settings).
Regards,
Richard Gray
Domino Go Webserver