Skip to content

Distributed Hash Table protocol definition, client, fake node, and tests

License

Notifications You must be signed in to change notification settings

daniel-zullo/dhtproto

Repository files navigation

Description

dhtproto is a library that contains the protocol for the Distributed Hash Table (DHT), including:

  • The DHT client (src.dhtproto.client).
  • Base classes for the protocol handling parts of the DHT node (src.dhtproto.node).
  • A simple, "fake" DHT node, for use in tests (src.fakedht).
  • A turtle env extension (src.turtle.env.Dht) providing a fake DHT node for use in tests, including methods to inspect and modify its contents.
  • A thorough test of the DHT protocol, using the client to connect to a node. The test is run, in this repo, on a fake node, but it can be reused in other repos to test real node implementations. (src.dhttest)

Dependencies

Dependency Version
ocean v4.0.x
swarm v5.0.x
turtle v9.0.x

Versioning

dhtproto's versioning follows Neptune.

This means that the major version is increased for breaking changes, the minor version is increased for feature releases, and the patch version is increased for bug fixes that don't cause breaking changes.

Support Guarantees

  • Major branch development period: 6 months
  • Maintained minor versions: 1 most recent

Maintained Major Branches

Major Initial release date Supported until Notes
v14.x.x v14.0.0: 30/01/2018 TBD  

Contributing

See the guide for contributing to Neptune-versioned libraries.

About

Distributed Hash Table protocol definition, client, fake node, and tests

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • D 99.8%
  • Other 0.2%