#### Archived

This topic is now archived and is closed to further replies.

# WHY??

This topic is 6004 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

Question. How come on Gnutella, when you connect to a user, and he informs you of other users, you can only connect to them through the first user? For example, you are Joe. You connect to Bob, who is also connected to Mary1 and Mary2. Your connection works like this.
  Mary1 / Joe -----> Bob \ Mary2 
So if you send out a search request, it only goes to bob, then bob relays it to Mary1 and Mary2. If mary1/2 respond, they send it back to bob, and he sends it back to you. My question is...WHY!?@ That seems so pointless! Why doesn''t Gnutella just simply connect you directly to Bob, Mary1, and Mary2 at once? it takes way more time this way...and what if bob disconnects?? you lose your connections to mary1/2?..

##### Share on other sites
i dont know if gnutella is this way or not, but most of those filesharing programs that allow simultaneous downloads has an option as to whether or not you want to function as a supernode (one of those who show in the search list initially). If you get disconnected from ''bob'', that shouldn''t mean that you get disconnected from the others though.

##### Share on other sites
quote:
Original post by amemorex
How come on Gnutella, when you connect to a user, and he informs you of other users, you can only connect to them through the first user?

Because otherwise you would have to have a connection open to every client on the network, and your computer grinds to a halt because you quickly run out of system resources. In most clients, the user is allowed to specify how many connections to keep open.

quote:

it takes way more time this way...and what if bob disconnects?? you lose your connections to mary1/2?..

Yup. The idea is that once you know mary 1 & 2 are there, if you lose Bob, then you can try to connect to a Mary on your own.

"So crucify the ego, before it''s far too late. To leave behind this place so negative and blind and cynical, and you will come to find that we are all one mind. Capable of all that''s imagined and all conceivable."
- Tool
------------------------------

##### Share on other sites
any other reasons except last post?

##### Share on other sites
That''s why it''s called Peer-to-Peer.

[ GDNet Start Here | GDNet FAQ | MS RTFM | STL | Google ]
Thanks to Kylotan for the idea!

##### Share on other sites
quote:
Original post by amemorex
any other reasons except last post?

Because it would never work any other way?

Gerenally you connect to about 5 people on the gnutella network to provide redundancy in case someone disconnects. Yes that means when you search it could be sent to everyone 5 times.

It''s necassary that it works in a very redundany way because there''s no centralized server for everyone to connect to.

The reason why the search results come back along the path they took, rather than directly, is so that you never know who actually initiated the search. Only the ''direction'' that it came from. A sort of legal snafu as well as privacy protection.

##### Share on other sites
One of the people from Napster did a report on how Gnutella doesn''t scale well with many many users. This redundancy is probably why. Just to send out a single search requires 4GB of traffic as I remember. I don''t remember where the article is but I think it was on techtv.com

• 11
• 20
• 12
• 10
• 37
• ### Forum Statistics

• Total Topics
631400
• Total Posts
2999860
×