[bittorrent] more DHT Information

Janek Walkenhorst jwalkenhorst at stud.hs-bremen.de
Mon May 21 04:21:28 EDT 2007

Hi @all!

I'd like to know if there is any more information (other than the 
DHT-Draft http://www.bittorrent.org/Draft_DHT_protocol.html) for the 
Mainline-DHT available. Especially I am looking for information 
regarding the procedures like "joining the DHT", "announcing a torrent" 
and "getting peers for a torrent".
The DHT spec has only two paragraphs about it which isn't much information:
 > When a node wants to find peers for a torrent, it uses the distance
 > metric to compare the infohash of the torrent with the IDs of the
 > nodes in its own routing table. It then contacts the nodes it knows
 > about with IDs closest to the infohash and asks them for the contact
 > information of peers currently downloading the torrent. If a contacted
 > node knows about peers for the torrent, the peer contact information
 > is returned with the response. Otherwise, the contacted node must
 > respond with the contact information of the nodes in its routing table
 > that are closest to the infohash of the torrent. The original node
 > iteratively queries nodes that are closer to the target infohash until
 > it cannot find any closer nodes. After the search is exhausted, the
 > client then inserts the peer contact information for itself onto the
 > responding nodes with IDs closest to the infohash of the torrent.
 > Upon inserting the first node into it's routing table and when
 > starting up thereafter, the node should attempt to find the closest
 > nodes in the DHT to itself. It does this by issuing find_node messages
 > to closer and closer nodes until it cannot find any closer.

So what does my client have to store for/after announces locally?
To whom do I send my "get_peers"/"announce_peer" messages to?

Or am I just too stupid to see the information in the spec? ;)

Thanks for your help!

- Janek

More information about the BitTorrent mailing list