It seems to me there is a slight problem/deficiency with data propagation, node assimilation and network capacity. I'm mostly thinking of how new nodes become assimilated, how "mostly empty" datastores (like mine :) become "mostly full" and how data could be distributed automatically by a mechanism that conforms to the system's mentality. What I'm saying is, it's not only about inserting the data once on the network, but to stuff most-wanted data into every nook-and-cranny! So, meditate on the following scenario:
Nodes work in two modes: "Normal" and "Assimilation" "Normal" is operation as usual. "Assimilation" mode kicks-in whenever the node has its datastore use under a certain percentage (say 80%). In this mode all cancelled, RNF'd and (optionally) DNF'd (with a HTL cap) requests are cached for the next, let's say, 24 to 48 hours. If the node load and bandwidth use fall under certain percentages (say 30% for both), these requests are resubmitted slowly (i.e. generating only a certain low connection/thread use). If regular requests come up, resubmitted requests are aborted temporarily but retain their priority in the list. If a resubmited request DNFs, it could be deleted from the cache or it could be moved to the end if the list with a higher HTL (with a cap). If a resubmitted request RNFs, it is moved to the end of the list. I have no idea if this scenario could be implemented. This mode would actually activate only when a new node connects to the network or a node increases its datastore capacity. This would help whenever there is a node-explosion period, like the one there will certainly be with the release of 0.5.1. Also, genuinely requested data will propagate faster making use of unused storage (i.e. no bogus requests made just for the benefit of the side-effects), even if the user has decided to stop waiting. The drawbacks are that it relies mostly on the user making lots of requests initially that he aborts or they fail, and that there is some compromise of anonymity until the node becomes part of the network with regard to it being requested data by other nodes [grammar?]. Any thoughts? Doc _______________________________________________ devl mailing list devl at freenetproject.org http://hawk.freenetproject.org:8080/cgi-bin/mailman/listinfo/devl
