Explicit revocation

A feature-request I have bumped into several times just recently, and
towards which I'm tempted to incline, is kind of what AFS does:

	Have the server (as a server option) choose to tell
	the proxy that it is ok to return directly from the
	cache without a check for so-and-so long time.  If
	during that time the object changes, the *server* will
	notify the *proxy* about this.

The theory behind this is that _most_ of the time _most_ objects do
_not_ change soon after they get retrieved -- that's why today's
proxies perform so well already (Netscape's proxy saves up to 60% in
connections and 75% in bandwidth) when properly configured and with
the critical mass of users using it), even though they rely heavily on
heuristics, and there's minimal support for them in the protocol.

Or in other words, the fact is that _most_ of the If-modified-since
checks performed by proxies in fact yield 304.  We're talking about
over 90%; if configured to perform up-to-date checks for every
request, that figure comes pretty darn close to 99.9%.

So hey -- up-to-date checks are wasteful, too, and in practice all the
service providers and most companies that run a proxy configure it so
that it does _not_ perform checks during a few hours after the last
check.

So the conclusion is, it would make a lot of sense to at least provide
a possibility for the origin server to take the responsibility of
contacting the proxy back to let it know if something has suddenly
changed before its given expiration date.

This has at least a couple of things to worry about, though:

1. the origin server has to maintain a list (for every document) of
   proxy servers that contacted to it during the last X period of
   time; alternatively, it could be a single list of proxy sites, and
   once things change (there may be a batch process run once an hour),
   the changes would be reported in batches to the proxy sites

2. the proxy may be unreachable from the server (firewall letting only
   outbound connections from the proxy)

Opinions?

Cheers,
--
Ari Luotonen				ari@netscape.com
Netscape Communications Corp.		http://home.netscape.com/people/ari/
501 East Middlefield Road
Mountain View, CA 94043, USA		Netscape Server Development Team

Received on Friday, 29 December 1995 02:29:29 UTC