>The problem is that if no reference are being set to you, then having the >data is actually not worth that much.
But references *are* being sent to you - that's how you got the original request. Alice still has a pointer to Charles (although the new pointer to Bob/David will diminish the old pointer's coverage), but more importantly, some other node has a pointer to Charles as well. (If nobody else has a pointer to Charles, it doesn't really matter what Charles caches, so let's consider the interesting case where some other node has a pointer to Charles.) Alice and one of Charles' other neighbours (call him Evan) must be using Charles as an authority on a similar volume of the keyspace in order for document clustering to achieve anything. (If Alice is the only node forwarding requests to Charles then Charles is just an extension of Alice; if Alice and Evan are using Charles as an authority on two disjoint volumes of the keyspace then Charles is little more than an extension of Alice in the same box as an extension of Evan, with no efficiency gained through shared cache hits & cache space. So again, let's consider the interesting case where document clustering improves efficiency.) So assuming that Alice and Evan are using Charles as an authority on the same volume of the keyspace (and this assumption is kind of crucial to freenet because document clustering relies on it), when Charles caches a document for Alice there is a better-than-random chance that Evan will request the same document and Charles will be able to serve it out of cache. So it still makes sense for Charles to cache the document, even if Alice doesn't use it. Michael _______________________________________________ Freenet-dev mailing list Freenet-dev at lists.sourceforge.net http://lists.sourceforge.net/mailman/listinfo/freenet-dev