Gnutella Forums  

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

General Gnutella Development Discussion For general discussion about Gnutella development.


Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old August 3rd, 2001
Novicius
 
Join Date: August 3rd, 2001
Location: Azores - Portugal
Posts: 3
Tiago s1x is flying high
Lightbulb Gnutella protocol to sloppy?

Well first of all i would like to know something about TTL, what value is the standart (the mostly used) when you send a msg?
Why is TTL usefull? I did some thinking and i have a question, when one recieves a Ping what shoul one do? Decrement the TTL, increase the Hop pass it on to others then reply to sender a Pong is that right? well if i put a TTL=255 then with all the replies to the first ping isn't that just an expense of bandwith? Why don't you just send TTL=1 and make a new type of MSG where in the payload you put your address and the servents wich are connected to you, the reply to this message is the same and after one get's the reply it connects to all the servents that the other node is connected to, thus creating a MESH (logic) topology where all the nodes are connected to each other, so no one passes on msgs it just reacts to the connected node, i think that this would dramaticly decrease the bandwith usage but also the way gnutella works...
I don't know how much right am i so please reply, someone that knows how all this works could explain me. I think i understood all wrong, yet here's just one idea (wich is by far explained).
Waiting for a reply:
Reply With Quote
  #2 (permalink)  
Old August 3rd, 2001
Enthusiast
 
Join Date: July 21st, 2001
Posts: 33
caused is flying high
Default

I sort of understand it myself, but not enough to comment with any such accuracy.

Have you thought about the connection issues? I mean like instead of TTL=51 and 5 connections, having TTL=1 and 255 connections, gnutellas size varies in the hundreds of thousands, can the average users system handle connecting to that many nodes at one time, what happens if several of these nodes send data at once, what happens to the bandwidth then? What about firewalls and routing in VPNs? And right now Gnutella allows you to specify the number of connections (where you connect to others) and the number of allowed connections (allow others to connect to you). If you look at limewires network size graphs...

http://www.limewire.com/index.jsp/size

You will see that around 1/8th accept incoming connections, that means if they connect to 8 hosts, they allow only 1 host to connect to them on average.
Reply With Quote
  #3 (permalink)  
Old August 3rd, 2001
Milhouse
Guest
 
Posts: n/a
Default

I'm getting the impression that you are looking to have computers cache their connections list and then send them instead of passing along pongs...

Clip2 also has something called a reflector... A reflector acts as a super node which passes info along to computers below it... the only problem is that you would always need some central computers that would have higher TTL's inorder for someone out there to have any sort of cache...

What really should be done is query caching that would reduce the network traffic alot... limewire has a proposal on their site about this... I don't think that caching IP's would help because then you would be sending larger pongs less frequently instead of smaller pongs more frequently... and the you'd only be saving some of the header info for bandwidth...

As for standard I think most clients come with them set TTL = 7, some like Limewire have the nice option of keeping others below a certain TTL... so you don't get outragoeus TTL's from some people...

In regards to the connections vs. TTL basically TTLs give you exponential growth on the network and connections are more or less linear... a quick example...

Connection = 5
TTL = 4

Assuming every node has the same settings you would see 5^4 nodes or 625 nodes...

Increase the connection to 6

Connection = 6
TTL = 4

Once again assume all nodes on the network have the same settings this would give you 6^4 or 1296 nodes

now instead increase the TTL to 5 and keep the connections the same

Connection = 5
TTL = 5

Assuming all nodes have the same config... now you see 3125 nodes... increasing the TTL gives you far more of a horizon...

from the example... Connection = 255 and TTL = 1 would give you only 255 people to search from.... a TTL = 51 and 5 connections would give you 4.4 * 10^35 connections... that's more connection than are possible on the current network...

the graph dictates which clients can accept new incoming connections... ie: if you have a Gnucleus it gives you a min and a max connection numbers... the min is how many people Gnucleus will proactively connect to... the max is how many open connections you will accept at one time... so lets say you set min = 5 and max = 7... gnucleus will connect it self to 5 people... then after those are set up it will accept 2 more... once those are full gnucleus stops accepting incoming connections... and then the person running the program drops off the "accepts incoming connections" graph... so really it's not a count of how many people have incoming connections its a count of how many people will accept "new" incoming connections... some other people in the other portion of the graph may have only incoming... after about 1/2 hour most of my connections are incoming anyways...
Reply With Quote
  #4 (permalink)  
Old August 6th, 2001
Disciple
 
Join Date: July 8th, 2001
Location: Canada
Posts: 16
dbl_221 is flying high
Default

TTL is the standard way of putting a limit on the number of hops a packet can be passed. Setting a TTL to 7 sets your Horizon to 7 hops.

This means that you can't "see beyond" 7 host hops. If we did not have a TTL or similar mechanism every packet would be passed on forever.

This would result in an everincreasing number of packets on the internet. If no packets were ever discarded the number of packets would very quickly shutdown every router on the internet.

Hope this helps
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
Spin-off of Gnutella Protocol? PhreakerONE General Gnutella Development Discussion 0 June 6th, 2002 02:57 PM
gnutella protocol Unregistered General Gnutella / Gnutella Network Discussion 2 May 19th, 2002 10:23 AM
Help On Gnutella Protocol Unregistered General Gnutella Development Discussion 17 January 5th, 2002 04:15 PM
The current Gnutella protocol Unregistered General Gnutella Development Discussion 6 December 19th, 2001 08:43 AM
gnutella protocol v0.6? chuckles42 Gnucleus (Windows) 0 September 15th, 2001 08:11 AM


All times are GMT -7. The time now is 10:02 AM.


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

Copyright © 2020 Gnutella Forums.
All Rights Reserved.