>> OK, any function which: routes every insertion to somewhere; routes any two >> insertions with the same key to the same place; routes a request and an >> insertion with the same key to the same place. > >"Any function of the key (and only the key) which routes requests and >inserts alike by comparing the relation of the key to others for which >references are known to the node".
If it had to be a function of the key (and only the key) it could not take into account which nodes the node knows about and which nodes it doesn't. A routing algorithm based on the key (and only the key) would require perfect knowledge of the network. The key is the only *variable* input to the algorithm, but there can (and must) be other, constant inputs - the addresses of neighbouring nodes, for example. (In fact these are not constant, they're slow-changing, but ideally they would be constant because every change damages the network by breaking the determinism of routing.) >Note that where we started (looking for the best connection) is NOT >included in this definition. And whether everybody is doing it actually >has little to do with it (because while the key value looks the same to >everyone, the physical network topology looks completely different). Yes, and the speed of each connection is part of a node's knowledge of the network topology. How is it different from the knowledge that a node exists? Think of it in terms of a weighted graph - each address has a weight. Addresses which are not known to host nodes have infinite weight. Addresses which are known to host nodes have a finite weight, representing the speed of the connection. The routing algorithm takes the graph representing the network and the key as its inputs. The only difference from the current model is that in the current model, all finite weights are equal. >> >Try "send to the node from which you have the most previous responses" and >> >see what happens then. >> >> Not a function. > >It is too a function, just not a function of the key value. But then >neither is the quality of the connections (for the two hundreth time). Not a function whose only variable argument is the key, then. Whatever. >Yes, it is assumed that the closeness relation has to be the same on every >node. In fact, I'm convinced it cannot work if it varries (some deviance >may be acceptable, so weighing in the connection capacity to some degree >may be possible). OK. Thank you. Michael _______________________________________________ Freenet-dev mailing list Freenet-dev at lists.sourceforge.net http://lists.sourceforge.net/mailman/listinfo/freenet-dev
