Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DHT Refactoring #160

Closed
whyrusleeping opened this issue Oct 13, 2014 · 4 comments
Closed

DHT Refactoring #160

whyrusleeping opened this issue Oct 13, 2014 · 4 comments

Comments

@whyrusleeping
Copy link
Member

As @jbenet is quick to mention, the DHT could use a bit more abstraction, this issue will be a place to discuss those changes.

@whyrusleeping
Copy link
Member Author

We have a good number of methods that make a single one hop request to a single given peer, i have most of these methods suffixed with 'Single' but it would be nice to come up with a name that more clearly describes their purpose and refactor them to have a similar interface. and potentially put them all in their own file.

These methods are:

findProvidersSingle
findPeerSingle
getValueSingle
putValueToNetwork

@whyrusleeping
Copy link
Member Author

The clustering idea needs to be abstracted out more, and some pleasant interface should be made. Maybe having a channel to read peers from would be the easiest interface to satisfy, then the object can automatically move to more distant peers as it runs out of closer ones.

@whyrusleeping
Copy link
Member Author

@jbenet what do you think of having a peer type for the dht that contains context about routing levels? Something like a LeveledPeer, that (for coral type routing scenarios) contains information about which level of cluster its in

@jbenet
Copy link
Member

jbenet commented Oct 13, 2014

All this sgtm. there's also a dht interface lying around somewhere in an issue (that both standard kademlia, coral, etc can implement for the general "routing-over-dht" dht/routing.go code.

ariescodescream pushed a commit to ariescodescream/go-ipfs that referenced this issue Oct 23, 2021
find self in DHT when bootstrapping
laurentsenta pushed a commit to laurentsenta/kubo that referenced this issue Feb 25, 2022
laurentsenta pushed a commit to laurentsenta/kubo that referenced this issue Feb 25, 2022
Jorropo pushed a commit that referenced this issue May 30, 2023
This ensures cid-codec introduced in #8568
gets correctly passed (+ we maintain backward-compatibility with CIDv0)

This commit was moved from ipfs/go-ipfs-http-client@9c9f43f
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants