gnutella general bandwidth usage Hi,
I'm new to gnutella and I had some general questions. The only thing I've known about the protocol for a while is that all the system administrators and some of the comp sci majors at my college complain about it bogging down the network horribly due its "distributed nature". It seems to me that the actual downloads are either parallel or direct point to point and so don't hurt network speed. The only thing that might is the way gnutella searches for files, broadcasting a request to an exponentially growing number of hosts.
Here's my question: Is the distributed searching that gnutella does the only thing that could slow down a network more than a non-distributed protocol and hence why all these comp sci major hate it? and..
exactly how much bandwidth does this searching take up. If the "horizon" is 10,000 clients and a lot of those packets for a particular search are recieved more than once by a host...and say each search packet is some small size...and then...
is this search flooding that is done done to every host on a network? Even if they aren't running gnutella? Supposedly there are no servers with lists which you connect to to find hosts to talk to? If there were then you might as well put the file list on this server and have them download that because you've already lost the advantage that being distributed has given you. If this is true that gnutella floods every single host on a network (gnutella server or no) with search packets...and then those hosts (be they gnutella) flood every single host they know of with packets. MY GOD!!!
Then again....maybe when a client initially starts up it establishes a list of gnutella hosts in the area (what is defined as "in the area"?) so it doesn't send packets to none gnutella-server-running computers. But still a search packet can be recieved multiple times by a host?
Let me put myself into perspective. The gnutella protocol is neat... its also true that this sort of distributed network is extremely robust and impossible to shut down since its not centralized. But what I think people might forget is that the gnutella protocol is a protocol written on top of the IP protocol. People use the IP protocol to do things besides use gnutella...maybe they shouldn't. But isn't a lot of the potential advantages of using gnutella lost because it is not low level enough and isn't it causing significant waste of bandwidth throughout the world?
At any rate...it seems to be the only place I can get mp3s for friends of mine without downloading some "satellite" that infects by computer with its marketing and installs things I don't want.
I would appreciate it if no would flames me but rather responds with a truthful and thought-out answer to some of my questions. The more technical the better. I don't dislike gnutella at all. As I said its useful and very interesting. In actuality, I have no opinion on anything.
- Peter |