lluckydog / dispersed-ledger

High-throughput Byzantine consensus on variable bandwidth networks.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DispersedLedger

Golang implementation of DispersedLedger.

Paper

DispersedLedger: High-Throughput Byzantine Consensus on Variable Bandwidth Networks

Lei Yang, Seo Jin Park, Mohammad Alizadeh, Sreeram Kannan, David Tse

This repository

  • pika: DispersedLedger protocol implemented as an IO automaton.
  • pikad: DispersedLedger node.
  • pikad/pikaperf: Real-time performance monitor for pikad.
  • testbed: Testbed controller (in Golang) that controls cloud instances and automates experiments.
  • emulator: Local emulator used for testing, not working anymore.
  • paper: Data and Gnuplot scripts for the figures in the paper.

Build

git submodule init
git submodule update  # fetch quic-go with adjustable cubic aggressiveness
cd pikad
go build
./pikad -h  # show help text

About

High-throughput Byzantine consensus on variable bandwidth networks.

License:MIT License


Languages

Language:Go 92.7%Language:Gnuplot 6.9%Language:Python 0.3%Language:Shell 0.2%