BGP RIB processing framework written in Rust.
peer-stats
: collector peer information from a given RIB dump filepfx2as
: prefix-to-AS mapping from a given RIB dump fileas2rel
: AS-level relationshippfx2dist
: prefix-to-collector-distance mapping, counting the minimum AS-path distance for every prefix to each route collector
Checkout the repository and run the following command to install the binary:
cargo install --path .
Get help information:
ribeye cook --help
Process recent RIB dump files
Usage: ribeye cook [OPTIONS]
Options:
--days <DAYS>
Number of days to search back for
[default: 1]
-e, --env <ENV>
Path to environment variables file
-l, --limit <LIMIT>
limit to process the smallest N RIB dump files
-c, --collectors <COLLECTORS>
Specify route collectors to use (e.g. route-views2, rrc00)
-p, --processors <PROCESSORS>
specify processors to use.
Available processors: pfx2as, pfx2dist, as2rel, peer_stats
If not specified, all processors will be used
-t, --threads <THREADS>
Number of threads to use
-d, --dir <DIR>
Root data directory
[default: ./results]
--summarize-only
Only summarize latest results
-h, --help
Print help (see a summary with '-h')
-V, --version
Print version
Set up a cronjob (ideally 2+ hours after UTC midnight) and run the following command to generate daily data:
ribeye cook --dir /DATA/PATH/TO/OUTPUT/DIRECTORY
See the Hashicorp Nomad job spec for an example Nomad deployment.