mirror of
https://github.com/status-im/nim-libp2p-dht.git
synced 2025-02-24 01:58:28 +00:00
Project has been updated to use nimble as a build system. All required dependencies have been added. All nim-eth mirrored files were added to a private folder in the libp2pdht module. A libp2pdht/discv5 module was added to alias the nim-eth modules (which will change over time). Test have been updated to use status-im/asynctest. This PR uses a branch of asynctest that supports async suite before/after. This seemed like the only the tests would work without throwing gcsafe errors. All tests working.
A DHT implementation for Dagger
This DHT implementation is aiming to provide a DHT for Dagger with the following properties
- flexible transport usage with
- fast UDP based operation
- fallback to TCP-based operation (maybe though libp2p)
- support operation on top of libp2p
- flexible message encoding that plays well with the above transports
- provide node lookup, content storage/lookup, and provider storage/lookup operations
- roughly follow the libp2p-dht specifications from https://github.com/libp2p/specs/tree/master/kad-dht
- provide compatibility mode with the above specs
Current implementation is based on nim-eth's Discovery v5 implementation. Base files were copied from nim-eth@779d767b024175a51cf74c79ec7513301ebe2f46
Description
Languages
Nim
100%