> Hello, > > Sorry for my typing and grammar mistakes. I am not an > english or american. I also meant scalability instead > of vurnulability, again I'm sorry. > > Anyway, here is some short CS lecture: > > A freenet node will look at his store first for a > search (local or forwarded). If it cannot find it > there, it fill forward this to its first connection > (with some order not important at the moment). If it > fails to find it there, it will ask the next > connection, and so on... (this info is from the > freenet protocol definition) > > This trivial algorithm is called DFS > (depth-first-search). It is the very first algorithm > you learn on tree data structure. (one may argue that > freenet is a graph. but a full connected acyclic graph > is a tree. druing searches, freenet is a tree!). > > So DFS has comlexity of O(n), where n is the "number > of nodes" not "depth of the tree". > > If freenet did searches parallelly (like gnutella) the > complexity becomes O(logn) where logn is the depth of > tree (base of the logarithm is avarage connection per > nodes). But as I understand freenet will NEVER do > this. > > But freenet does this search using a heuristic > algorithm, which is supposed to make avarage better > than O(n). > > But for newly inserted nodes, the algorithm is non > effictible, it will just change the search order, > blindly (blind DFS=DFS). > > What freenet has to do is, generating automatic > routing information. Every data must be "advertised" > in a specific way. This will of course not be "network > wise" advertising, but it must somehow make every node > be able to reach that data in O(logn). The current > internet infrastructure is like this. Every node must > know where to forward a query and which nodes it > should advertise new "data". > > This is not a trivial problem. This is not even a MS > thesis. This may be a PhD thesis. Because you will > have to build a consistent and efficient routing > algorithm on a very dynamic network. > > I LOVE THE FREENET IDEA. EVERY ASPECT OF IT (FREE > SPEECH, ANONIMITY, AUTOMATIC REPLICATION AND LOAD > BALANCING, DISCONNECTED OPERATION). BUT FREENET HAS TO > COME WITH AN INTELLIGENT ROUTING ALGORITHM IN ORDER TO > SCALE BEYON EVEN 10,000 NODES.
There is no need for "key advertisement", as each node will figure out a value of the key being searched for. It then looks through a list of nodes (in which nodes are paired up with a key value that they had previously inserted or requested) and then finds the node containing a key value which is closest to the key value being searched for. A similar process goes on during insertion (it inserts to the node with the closest key value). BTW--Ian Clark already used this as a thesis. ----------------------------------------------- Runbox Mail Manager - www.runbox.com Online email application _______________________________________________ freenet-tech mailing list [EMAIL PROTECTED] http://lists.freenetproject.org/mailman/listinfo/tech
