A discrete event Simulator for peer-to-peer network modeling. Speer is made for students, researchers and hobbyists. It's goal is to allow
them to easily implement, simulate and study peer to peer networks.
It combines event-driven simulations with cycle-based concepts and allows parallelization by taking advantage of Go’s concurrency features.
Quickstart
After getting Golang >= 1.6 and setting $GOPATH, install Speer via:
curl https://raw.githubusercontent.com/srene/Speer/master/install.sh | bash
Now, you can run a simulation from a JSON configuration as follows:
speer -config=[path_to_configuration]
The see the options provided by speer.go
run:
speer -h
You can run the default example in examples/broadcast.go
via the command:
speer
Table of contents
How to contribute
Projects using Speer
- CacheTorrent - is a file sharing system based on leader election, caches and indirect requests