Skip to content

KeKsBoTer/accord

Repository files navigation

Accord

Chord implementation written in Rust.

You can find the network design and performance evaluation here.

A description and failure analysis about the network stabilization can be found here.

Build

Install rust first. Go into project directory and run the following:

$ cargo build

Create Network

Install python and run the create_network.py script to create a network with a defined number of nodes. Use script as following:

$ python3 create_network.py --help
usage: network_creator [-h] [--chord-port-start CHORD_PORT] [--api-port-start WS_PORT] [--stabilization-period STABILIZATION_PERIOD]
                       [--num-leaves NUM_LEAVES] [--log-level LOG_LEVEL] [--quit-after-stabilization]
                       num_nodes

creates a chord network

positional arguments:
  num_nodes             number of nodes in the network

optional arguments:
  -h, --help            show this help message and exit
  --chord-port-start CHORD_PORT
                        smallest port for chord network
  --api-port-start WS_PORT
                        smallest port for HTTP API
  --stabilization-period STABILIZATION_PERIOD
                        delay beteween stabilizatios
  --num-leaves NUM_LEAVES
                        number of nodes that leave the network after stabilization (test)
  --log-level LOG_LEVEL
                        log level (DEBUG prints chord binary output)
  --quit-after-stabilization
                        quit program after initial stabilization

About

chord implementation in rust

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published