ChainSafe / das-prototype

Research prototypes of Data Availability Sampling for Ethereum (WIP)

Home Page:https://hackmd.io/@timofey/SyqzhA4vo

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DAS prototype

This repo contains various prototypes of the core DAS components - dissemination and random sampling.

Usage

cargo run -- -n <num-servers> -p <start-listen-port> -t <topology> [simulation-case] [ARGS]

This will spin up num-servers of discv5 servers starting at port start-listen-port all the way to start-listen-port + num-servers, and then start simulation-case.

Disseminate

cargo run -- -n 500 --topology uniform disseminate -n 256 --batching-strategy 'bucket-wise' --forward-mode 'FA' --replicate-mode 'RS' --redundancy 1

Sample

cargo run -- -n 500 -t uniform --timeout 6 sample --validators-number 2 --samples-per-validator 75 --parallelism 30

Use snapshots

Snapshots allow saving network configurations along with various RNG seeds to have more consistent measurements and for debugging. Use --snapshot flag with values new, last, and specific timecode eg. 2022-11-08-11:46:09. Snapshots are saved in --cache-dir folder default value = ./data.

cargo run -- -n 500 --topology uniform --snapshot last disseminate -n 256

About

Research prototypes of Data Availability Sampling for Ethereum (WIP)

https://hackmd.io/@timofey/SyqzhA4vo


Languages

Language:Rust 100.0%