BGP path propagation inference
We have some tests to check the propagation algorithm in pre-built topologies. Run with:
python3 -m unittest tests/test_bgpsim.py
You can check the runtime of random path inferences on CAIDA's January 2020 graph by using the tests/bench_bgpsim.py
script. It reports 5 averages over 32 full inference runs each. Disabling assertions with -O
makes the code significantly faster as it is pretty heavy on asserts.
$ python3 tests/bench_bgpsim.py
[1065.9921099510975, 1129.7197931839619, 1341.9510222299723, 1212.2649150219513, 1117.318360270001]
$ python3 -O tests/bench_bgpsim.py
[244.108187089907, 246.5742465169169, 244.00426896300633, 235.13479439693037, 255.45060764998198]
You man want to check these papers on an introduction to BGP routing policies, and on how policies can be inferred in the wild.
- Write tests for poisoned announcements. The code should work for announcements with poisoning, but there are no tests for this functionality yet.