Skip to content

srene/p2p-simulator

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kademlia Simulator

Overview

This is a Kademlia Simulator that was used in the research project for the new Service Discovery in Ethereum 2.0 (Discv5) (available at: https://github.com/datahop/p2p-service-discovery). The simulator is built on top of PeerSim and it is based on the Kademlia implementation from Daniele Furlan and Maurizio Bonani that can be found here.

Requirements

To run the simulator it is necessary to have Java and Maven installed. For Ubuntu systems just run:

$ sudo apt install maven default-jdk

How to run it

To execut a simulation it is necessary to call the run.sh, with a configuration file as a parameter. For example:

$ ./run.sh config/kademlia.cfg

How to create your own scenario file

Follow PeerSim documentation

Contribution

If you want to contribute:

  • Fork the repo to your repo
  • Write your contribution
  • Rebase your code (here's a tutorial) to make sure the changes introduced into the main repo are take into account in your contribution
  • Create a pull request

Code Documentation

Kademlia draft documentation

Javadoc generated documentation

How to create a protocol on top of Kademlia

TBC

About

A Kademlia simulator based on PeerSim

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 44.3%
  • Java 33.3%
  • Jupyter Notebook 19.2%
  • JavaScript 1.5%
  • CSS 1.2%
  • Python 0.5%