/p2p-network-simulator

simulation of a p2p network

Primary LanguagePython

Simulation of a p2p network using simpy

Features

Simulation of

  • connections with bandwidth & latency
  • messaging
  • bootstrapping
  • peer reorganisation based on bandwith & availability
  • peer downtimes / disconnects
  • network slowdowns

The optional network visualization is based on Networkx

Usage

To start the default simulation type python run.py.

Browse and modify the source to model your problem.

The Peer class offers to register services which are based on the BaseService class. All registered services are called whenever a Message is received. Services as well as Peers are simpy-processes.