Global high-performance proof-of-stake blockchain with erasure coding

1 week ago 5

Research reference implementation of the Alpenglow consensus protocol.

Latency Histogram for Random Leaders

A local cluster example can be run with the following command:

This spawns a local cluster with 6 nodes. These nodes communicate via UDP on localhost. Console output from the fastrace crate shows the progress of all nodes.

Further, we provide the simulations binary target. It provides various simulations of parts of the Alpenglow protocol, specifically resilience of Rotor, as well as latency and bandwidth requirements of Alpenglow as a whole. Currently, configuration is a bit cumbersome and is done via the const values in src/bin/simulations/main.rs.

Some of the simulations, specifically the latency simulation, requires first downloading a public ping dataset via this script:

After that, the simulations can be run like this:

RUST_LOG="simulations=debug" cargo run --release --bin=simulations

Some micro-benchmarks can be run like this:

Regular tests can be run like this:

The more extensive test suite, including some slow tests, can be run like this:

For security related issues, please do not file a public issue on GitHub, instead reach out directly via email to:

quentin (at) anza (dot) xyz

Copyright (c) Anza Technology, Inc.

Licensed under the Apache License, Version 2.0. See LICENSE for details.

Read Entire Article