Ray Heasman wrote: > 3. Insertion of data > > My understanding is that FreeNet performs a depth-first backtracking graph > traversal of nodes on the network.
Technically, yes, but keep in mind that backtracking happens only in two circumstances: if you hit a dead node (hopefully rare), or if you hit a node which is already working on this search request (common). > Insertion has two stages: first, a search > to check that the data to be inserted does not already exist, second, an > insertion phase that tunnels data to the last point at which the search > failed. ...and caches it along the way. > During the request phase, each node forwards a request to nodes it thinks > most likely of having the data being inserted. This is done by making an > estimate of how close the key describing the search is to the keys usually > handled by the nodes it knows about. Isn't it still just a matter of choosing the node which holds the key closest to the target one? This description makes it sound like a more elaborate algorithm is used. > Unique IDs are used so that requests > are never processed twice by the same node (i.e. They are used by the search > algorithm to change the graph of nodes into a dynamically generated tree
