Skip to content

aakash-mishra/chord-dht

Repository files navigation

Chord

Chord is a peer-to-peer, distributed lookup system that uses concepts of Distributed Hash Tables and Consistent Hashing to efficiently perform lookups in networks where nodes join and leave arbitrarily.
Consistent hashing provides a way to quickly stabilize the network in such a dynamic environment, and it does so by re-distributing only a small fraction of keys (hence most of the nodes remain unaffected).

This project is a Java based implementation of the core functionalities of Chord - joining of a node, construction and correction of finger tables and insertion, removal and lookup of keys. For an in-depth understanding, refer the Chord research paper.

How to run (CLI)

After cloning the project, open up a terminal and from the project root directory issue the following commands:

  1. ./gradlew build
  2. ./gradlew --console plain run (--console plain removes unnecessary logs)

build and run commands

Then, use the CLI options to interact with the application (1 to join a new node, 2 to insert data, etc..)
CLI

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages