-
Notifications
You must be signed in to change notification settings - Fork 62
Add a DHT Concept to docs.ipfs.io #240
Add a DHT Concept to docs.ipfs.io #240
Conversation
@bertrandfalguiere Thank you very much for taking the initiative on this effort! We would love it if you proceeded. Don't worry about English grammar etc -- other folks can go through your finished concept doc for those things. As for getting your questions answered -- I will point you to @dirkmc, @vasco-santos and @jacobheun for their ability to help! Thanks again. |
@bertrandfalguiere there is a WIP PR for the Kademlia based DHT spec at https://github.com/libp2p/specs/pull/108/files. That should have some of the more specific information you're looking for. It's a bit out of date, but still fairly accurate. Each of the implementations vary from the values a bit, and support configuration, so the number of buckets/etc can be set per node.
The current DHT implementations don't do any forwarding. Subsequent requests are made directly by the requesting peer after receiving "closer peers" from the previous queries.
multiaddrs
Contributing to the libp2p docs and pointing to it would be ideal, imo. Thank you again for working on this! ❤️ It's very much appreciated! |
DHT doesn't forward requests: it return a peer ID of a closer peer. DHT doesn't store mapping of peerID to multiaddrs. It doesn't do peer routing. but it stores IPNS records.
Hi @bertrandfalguiere, thank you for taking the time to contribute to the docs. You can find some more information about the Javascript implementation of the DHT here: |
Or are they?
Hi, @bertrandfalguiere! Just wanted to check in on this, and whether anyone needs to help un-block you. Thanks! |
I'm doing that in my leisure time, which I lack at the moment. I might be able to dedicate some Thursday or this weekend. What would be a mergeable MVP that you guys can iterate over? |
@bertrandfalguiere -- Maybe focus on augmenting your usage section, so there's directly actionable info on how to use the DHT implementation used by IPFS. Other than that, this is looking very useful. Thank you! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @bertrandfalguiere -- I've gone through and made some copy edits for English and clarity. Understanding that this isn't complete, but I'm hoping you can incorporate these suggested changes, so that we can push the document as it exists as it is right now to the docs. The reason is that we're migrating existing docs content to a new platform next week, and we'd like to make sure this gets into the migration! It's a good start for newcomers as it is, even if it's not quite finished yet. Thank you!
Hi @bertrandfalguiere -- quick update. I've gone ahead and merged this as-is and will make the suggested copy edits in an additional round of revisions to the merged version (#364), just for expediency. Thank you so much for your contribution on this! 😄 |
Original source: ipfs-inactive/docs#240
I did a draft explaining the DHT.
If you are OK with me carrying on, I will add:
To complete that, I need to know:
When a request is forwarded, is it answered directly to requesting peer? Or does the answer takes the same path as the request (forwarded)?Each peer return the next peer. Requesting peer does another requestShould we say multiaddresses or multiaddrs?multiaddrsShould I do a specific page for Content Routing, add this to the DHT file, or contribute to https://docs.libp2p.io/concepts/content-routing/ and point to it?Should point to libp2pNotes about myself:
fixes ipfs/docs #111