W3C home > Mailing lists > Public > ietf-http-wg-old@w3.org > September to December 1996

Re: Calculating Age Question

From: Roy T. Fielding <fielding@kiwi.ICS.UCI.EDU>
Date: Tue, 26 Nov 1996 15:46:18 -0800
To: Paul Hethmon <phethmon@utk.edu>
Cc: HTTP-WG <http-wg%cuckoo.hpl.hp.com@hplb.hpl.hp.com>
Message-Id: <9611261547.aa26953@paris.ics.uci.edu>
>> > should be 13? Basically, at each cache, the Age value will   
>> > be increased by the response_delay of that cache (plus   
>> > resident_time if applicable).   
>>   
>> Regardless of what it says in the spec, the Age value is not touched  
>> by the cache unless resident_time > 0.  In other words, a cache does  
>> not age a response that it has never had in its possession.  It is only  
>> when resident_time > 0 (the response is coming from the cache and  
>> not from an upstream server) that the cache sets the Age value in  
>> the message. 
>  
> Are we making a distinction here between "proxies" and "caches" 
> then? It seems the wording in 14.6 still requires caches to 
> send the Age header, even if acting more as a proxy. Henrik's code 
> that he posted earlier seems to follow this too. 

I am, yes, because that is the only way to interpret the spec without
breaking the purpose of Age.  I couldn't tell whether Henrik's code
actually set the Age header, or was just interpreting the age locally
(you have to do that when you store the cached entity).

> As an implementer, I take the wording to mean calculate the 
> Age value and send it everytime even if I've just received the 
> response and it's not really in the cache yet. 

That's why I began with "Regardless of what it says in the spec" --
the spec is in error, grievously so, and there is no excuse for it.

> Putting that aside though, my real question went back to the 
> discussion in July between you and Jeff Mogul over the algorithm. I 
> guess your point here still reflects that. It does seem the 
> algorithm (if all caches send Age) can easily inflate the value. 
> More so if there are multiple caches in a chain and the resource 
> is kept resident for any length of time in each. 

Yep, that about sums it up.  More importantly, Age becomes less reliable
on average than just comparing the Date stamps between systems, which
makes it a waste of time (no pun intended).  That's silly, since it was
designed to be a lower bound on the actual age time, not a
"conservative estimate".

.....Roy
Received on Tuesday, 26 November 1996 16:52:06 EST

This archive was generated by hypermail pre-2.1.9 : Wednesday, 24 September 2003 06:32:18 EDT