|
Register | FAQ | The Twelve Commandments | Members List | Calendar | Arcade | Find the Best VPN | Today's Posts | Search |
General Gnutella / Gnutella Network Discussion For general discussion about Gnutella and the Gnutella network. For discussion about a specific Gnutella client program, please post in one of the client forums above. |
| LinkBack | Thread Tools | Display Modes |
| |||
Appendix: Estimating Horizon Size [/QUOTE]The best approach is to introduce one or two messages solely for the purpose of communicating horizon size. Assume for simplicity that the Gnutella network is a tree, i.e., there is only one path between any two hosts. A key observation is that the number of hosts reachable from some host with TTL N is the sum of the number of hosts reachable from all its neighbors with TTL N-1. For formally, let H[A, n, B] be the number of hosts within n hops of host A that are reachable through B. Let H’[A, n, B] be the number of hosts within n hops of host A that are not reachable through B. Then for any host A with neighbors N1...Nm, H[A, n, Ni]=1+H’[Ni, n-1, A] H’[A, n, Ni]=H[A, n, N1]+…+H[A, n, N(i-1)+H[A, n, N(i+1)]+…+H[A, n, Nm] H’[A, 0, Ni]=0 Horizon estimation now works through a sort of dynamic programming algorithm. Each host maintains the horizon size per connection, i.e., H[A, n, Ni] for all n and i. Every few seconds or so, hosts calculate their H’ tables from these values, exchange them with neighbors, and use these values to update their H tables. The total horizon size reported to the user is the sum over all i of H[A, n, Ni]. This scheme is accurate, efficient, and uses almost no bandwidth.[/QUOTE] I would like for someone to explain those equations. I dont see what they represent as in if I plugged in values for the variables how I would work it out to get an answer. ??? |
| |||
So I thought I might try and give my interpretation of the equations you posted. Which means it's time to break out the ascii art: First off there is one assumsion in these equations that is very important: there is only one route to a host. Code: A ---> N1 ---> O1 Code: --> N1 - A--| |--> O1 --> N2 - Code: 0 hop 1 hop 2 hops |--- O1 --- N1--| | |--- O2 A--| | |--- O3 --- N2--|--- O4 |--- O5 H[A,2,N1] = 3 So, A can access three computers through N1: O1,O2 and N1. This is equal to the number of hosts N1 can access in n-1 hops not reachable through A plus 1. Or, H'[N1,n-1,A] + 1. In our spacific case H'[N1,1,A] +1. Redrawing the diagram from N1's point of view: Code: 0 hop 1 hop |-- O1 N1--|-- O2 |-- A Code: H[A,2,N1] = H'[N1,1,A] + 1 3 = 2 + 1 From the above diagram we can see that A is connected to a total of 7 hosts, 3 through N1 and 4 through N2. The last equation says that if you go 0 hops you're not connected to anything. Go figure. Anyway, I hope this helped out some. If there is still something confusing in my explination, post and I'll try and clear it up. Sorry for anything that is confusing or misspelled. Last edited by FuzzeX; December 8th, 2002 at 02:18 PM. |
| |||
Real stats those equations are really just a rough guess. I always wanted some better data, so I started a little project. Though of it after seeing the stat page that Gnucleus nodes send out when a web browser tries to connect. Pretty cool, You can use a spider to "surf" the gnutella network. Only works with gnucleus and shareaza, but check it out if you want. gnuMap project: http://home.attbi.com/~gregory.bray/ |
| |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
what do i type in size box to control size? | withdjkim | Open Discussion topics | 0 | March 28th, 2005 04:11 PM |
how do i increase my horizon? | virtualhalo | General Gnutella / Gnutella Network Discussion | 0 | January 8th, 2005 02:41 PM |
[COLOR=orangered][SIZE=3]can not stay connected[/SIZE] [/COLOR] | ravinman64 | Download/Upload Problems | 0 | December 29th, 2003 10:22 PM |
Horizon estimation used? | TranceTip | General Gnutella Development Discussion | 0 | November 21st, 2003 09:04 AM |
way to change connections / increase network horizon | Unregistered | XoloX Feature Request | 0 | June 26th, 2002 03:51 PM |