The Cache employs TTL-based cache consistency, patterned after the Internet's Domain Naming System [15]. Because of this, the Cache can return stale data. Unfortunately, HTTP, Gopher, and FTP provide neither a means for owners to specify TTLs, nor a protocol to pass TTLs from servers to caches and clients . Hence, when the Harvest cache fetches an object from the object's home, it is forced to assign a default TTL. When the TTL expires, the cache discards the object. When a cache fetches an object from a parent or neighbor, it inherits the parent's remaining TTL. Version 1.3 includes support for setting TTLs as a percent of an object's lifetime. Different TTL parameters can be specified to match different URL regular expressions.
For measurements about the Cache's consistency mechanism (and other mechanisms with which we have experimented), see [7].
Periodically, the Cache will run a garbage collection routine which will purge all objects from the cache which have expired TTLs. You can adjust the frequency of the garbage collection by changing the clean_rate value in cached.conf. By default, the Cache will purge expired objects every 30 minutes.