Questions regarding Mojito

"garethdanielsmith" <[email protected]> Wed, 29 Jul 2009 22:30:28 -0000
Newsgroups gmane.network.gnutella.devel
Message-ID <[email protected]>
I would be grateful if anyone could help me increase my understanding of the Mojito DHT.

My questions are as follows:

* Must security tokens always be 4 bytes long? That there is a length field suggests otherwise, but my tests have shown that limewire only accepts 4 byte ones.

* What is the meaning of contact instance ids? My guess is the number of times that the node/contact has been restarted or lost and regained connectivity.

* What is the meaning of request_load on Find Value Responses. It seems to be some measure of the popularity of the specified key, but what is its purpose, and should it respect any invariants?

* What are the meanings of versions on:
   - Messages? I guess the protocol version.
   - Contacts? Protocol version again?
   - DHT Values? Some sort of *version tag* for the value?

* What is the meaning of secondary keys? Currently I am making the following assumptions regarding them:
   - secondary keys are node-local and can be calculated arbitrarily, but consistently.
   - If no secondary keys are sent on a Find Value Request, then all secondary keys are to be considered.
   - No more values should be stored for a single kuid than the number such that all values can have either the value or the secondary key sent back within a single Find Value Response message.

Thats all for now. I would be grateful for any insight.

Thank you.