Gnutella Forums  

Go Back   Gnutella Forums > Gnutella News and Gnutelliums Forums > General Gnutella / Gnutella Network Discussion
Register FAQ The Twelve Commandments Members List Calendar Arcade Find the Best VPN Today's Posts

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.


Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old June 13th, 2001
scud
Guest
 
Posts: n/a
Default 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. ???
Reply With Quote
  #2 (permalink)  
Old November 22nd, 2002
Disciple
 
Join Date: November 16th, 2002
Posts: 14
peng is flying high
Question I what to know it too.

Or at least give some more reference. Thanks.
Reply With Quote
  #3 (permalink)  
Old December 8th, 2002
BearShare Mod
 
Join Date: April 12th, 2002
Location: Chicago
Posts: 29
linuxrocks is flying high
Default Re: I what to know it too.

Quote:
Originally posted by peng
Or at least give some more reference. Thanks.
That 'quote' was from LimeWire's web site.
Reply With Quote
  #4 (permalink)  
Old December 8th, 2002
BearShare Mod
 
Join Date: April 12th, 2002
Location: Chicago
Posts: 29
linuxrocks is flying high
Default Re: Appendix: Estimating Horizon Size

Why don't you try BearShare, which calculates the horizon for you?
Reply With Quote
  #5 (permalink)  
Old December 8th, 2002
Novicius
 
Join Date: December 6th, 2002
Location: Washington, USA
Posts: 4
FuzzeX is flying high
Default

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
If there is more than one route to a host this won't work.
Code:
    --> N1 -
A--|       |--> O1
    --> N2 -
So a situation is descibed where a host A is connected to a number of hosts. I'm just going to say two for simpicity, but this should be scalible. Each of these hosts is connected to a number of hosts and so on a so forth. I'm going to diagram 2 hops here, but again this is scaleble.
Code:
0 hop  1 hop   2 hops
           |--- O1
   --- N1--|
   |       |--- O2
A--|
   |       |--- O3
   --- N2--|--- O4
           |--- O5
The first part of the first equation states H[A,n,N1] or the number of hosts accessable to host A within n hops through host N1. In the example I've given we could write it:

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
As we can see N1 can access 3 computers within 1 hop, but only 2 are not reachable through A. H'[N1,1,A] = 2. If we add 1 we get three which is the number of hosts A could access through N1:
Code:
H[A,2,N1] = H'[N1,1,A] + 1
    3     =    2       + 1
The second equation says that the number of hosts with in n hops of A not accessable through the host N1 is equal to the number of hosts within n hops of A accessable though the other hosts its connected to.

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.
Reply With Quote
  #6 (permalink)  
Old December 9th, 2002
Devotee
 
Join Date: December 31st, 2001
Location: Sandy, ut
Posts: 22
gbrayut is flying high
Default 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/
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


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


All times are GMT -7. The time now is 01:44 PM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
SEO by vBSEO 3.6.0 ©2011, Crawlability, Inc.

Copyright © 2020 Gnutella Forums.
All Rights Reserved.