Skip to content

Simplified implementation of the Chord DHT model for learning purposes

License

Notifications You must be signed in to change notification settings

hexafluoride/Chordette

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chordette

Simplified implementation of the Chord DHT model for learning purposes.

Features

  • All Chord primitives as described in the whitepaper
  • Networking support, with a tracker system implemented in hexafluoride/Harmony
  • A higher layer to Chord, handling things like key handoff and abstraction of the successor(hash(key)).{get, put}(hash(key)) chain: implemented in hexafluoride/Harmony
  • Data duplication: implemented in hexafluoride/Harmony

Performance metrics

The following metrics all scale with log(N) where N = peer count, matching the performance guarantees laid out in the Chord whitepaper, which corroborates the correctness of this implementation to some degree.

Milliseconds spent per query

Bytes on wire per query

Messages sent per query

Screenshots

Chordette immediately after boot, in the process of stabilization

Chordette immediately after boot, in the process of stabilization

Chordette a few minutes after boot, when stabilization is complete

Chordette a few minutes after boot, when stabilization is complete

License

Chordette is licensed under MIT.

About

Simplified implementation of the Chord DHT model for learning purposes

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages