Oskar Sandberg <md98-osa at nada.kth.se> wrote: > How do we want the discouraging of nodes that don't reply to work? Should > we simply remove the the reference in question (which doesn't mean > removing all references to that node, only one at a time) or should we > include some sort of extra blacklisting system where nodes that have bad > uptimes are avoided by some probability, or is it time we did a complete > redesign of how the node chooses nodes to forward to so that, together > with closeness, it also considers the reliability, locality, and speed of > the other node.
I think nodes should definitely be discouraged on a node by node, rather than key by key, basis, otherwise it won't have that much impact on the number of connections attempted to dead nodes. >From a routing point of view, it seems to me that we should take the "blacklisting" rather than "combined scoring" approach, because routing is based on the fact that a request is routed the same way the insert was. This is upset if paths change depending on network conditions -- i.e. at insert time, a node had a fast connection, so the insert went to it; but at request time, if the node is experiencing congestion, the request goes elsewhere. Or the insert and request come from different parts of the network which see different bandwidth conditions -- we still want them to be routed towards each other. Another consideration is that I think the mechanism should be continuous rather than discrete -- it seems better if nodes are gradually discouraged or favored rather than abruptly dropped or reinstated. So I would favor "probabilistic blacklisting": try closest reference with probability P1, if the dice roll goes the wrong way or connection unsuccessful, try next closest with probability P2, then third with P3, etc. I like the exponential backoff approach to assigning probabilities (cut P in half for each unsuccessful connection, add <small constant> to P for each success, where success means "is alive"). theo _______________________________________________ Freenet-dev mailing list Freenet-dev at lists.sourceforge.net http://lists.sourceforge.net/mailman/listinfo/freenet-dev
