![]() |
gnutellanet.com Host Cache I am curreently devloping a Gnutella servant and I have been unable to find anyones description of how to receive a list of recent servants from the connect1.gnutellanet.com group of host cache servers. It is understandable that it is not widely published what the protocol is to connect to these, though I would find it useful to know. Is it a http request, or another form of request, similar to sending a query and receiving a query response? General help or a link would be very much appreciated. |
|
There is no secret to obtaining a list of recent servants from a hostcache like connect1.gnutellanet.com or any other hostcache. They are mostly all just currently online servants (they just never shut down) for example, connect1.gnutellanet.com is a bearshare servant. Just like a servant that is currently not accepting connections, when you make a connection to a hostcache, you must go through the gnutella handshake, right after you send your '200 OK', ping them and they will respond with a number of pongs containing known servants. They then disconnect and you go on your merry way attempting to connect to the ip's in the pongs you just received. There is nothing 'majical' about connecting to a hostcache.:D |
Look here for information: http://rfc-gnutella.sourceforge.net/ |
Yes, but it sounds like he is developing a NEW Gnutella client, no reason to use the obsolete way to get host IPs in a new client. |
The way I described is standard with the 0.6 protocol... Unless you you are referring to Gnucleus's 'GwebCache'. In that case go here... http://www.zero-g.net/gwebcache/ as stated above. |
There is no secret, the host caches send you pongs, just like any other servent would. The protocol is the same you would use as connecting to any other servent - a handshake (0.6 preferred, 0.4 works), send a ping and then wait for pongs. |
There are three ways to get hosts: 1) Pings and Pongs. Some host caches just do that and nothing else. They accept a Gnutella client's connection, wait for a ping, send ~10 pongs (from previously connected clients) back and closes the connection. Any other messages, such as queries, etc, are dropped. 2) GWebCache. This is an HTTP style system, which allows people that have a "shared web hosting account" or their own Web server add a host cache. GWebCache is fairly simple to both implement and use by Gnutella Clients. You can request either a list of hosts (which would be equivalent to Pongs) or a list of URLs, to more registered GWebCaches. 3) The "X-Try" Gnutella v0.6 handshake header. This header simply contains a list of IP:Port combinations. The purpose here, is when the Gnutella client you connect to is full (ie, out of incoming connections), it will still give you a number of other Gnutella clients to try, but does not need a full-fledged Gnutella connection (so at the 2nd handshake part, the connection can be closed with an error instead 200 OK). For more information on the X-Try and other headers, visit the GDF Database (may require a free Yahoo account). |
3 best ideas I have heard :) |
All times are GMT -7. The time now is 12:08 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.