View Single Post
  #3 (permalink)  
Old October 3rd, 2002
cultiv8r cultiv8r is offline
Connoisseur
 
Join Date: August 9th, 2001
Location: Philadelphia, PA, USA
Posts: 358
cultiv8r is flying high
Default

Actually, that's more a question for in the developer forum. But allas, to answer your question: messages on the Gnutella network have a unique ID. Gnutella clients will keep a list of ID's they have seen before. So for a period of time, depending on how many IDs a client will/can store, if a message tries to pass that's been "seen before", it is dropped.

The exception to that rule is Query Hits and Push messages. Query Hits re-use the unique ID of the Query. Also, Query-Hits can be "seen before" multiple times, as obviously you'd like to receive results from more than one person. As for Push messages, they also re-use an ID, but not that of the message itself - it re-uses the ID assigned to each client.

If you need more details about this, visit http://rfc-gnutella.sourceforge.net/ and read the PDF document for the version 0.4 specs. The only difference between version 0.4 and 0.6 is that the handshake header has changed. "Internally" (or rather, how the messages are sent, etc.) it remains the same.
Reply With Quote