Visualisation of OSPF network topology as seen by the BIRD routing daemon.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
Go to file
LEdoian 3987ffa44a Add an option to use empty topology for reference 1 year ago
birdvisu Add an option to use empty topology for reference 1 year ago
design_notes Add note about supported OSPFv3 2 years ago
docs Ensure, that sphinx works 1 year ago
snippets Merge remote-tracking branch 'gitea/toolchain_setup' 1 year ago
.gitignore Merge branch 'socket_api' 1 year ago
Makefile Add a generator for current state 2 years ago
README.md Better wording of comments and strings 1 year ago
empty.ospf Add an almost-empty topology 1 year ago
gennet-changed.ospf Add demo files 1 year ago
gennet.ospf Add demo files 1 year ago
gennet.visu Add demo files 1 year ago
pyproject.toml Act as an app. 1 year ago
reference.ospf Split visualisation directives to separate file. 1 year ago
visu.py Act as an app. 1 year ago
visualisation.ospf Do not use brackets in visualisation.ospf 1 year ago

README.md

A simple tool for visualising OSPF network topology as seen by BIRD

Birdvisu is a library and a graphical app to visualize routing topologies of OSPF. It does not implement OSPF on its own, but rather exports current state from BIRD that's where the name comes from.

The main use case is comparing a reference topology (e.g. a known good one) to the current state. This allows Birdvisu to show failed links and other anomailes in the network.

Also, this is the project for my Bachelor thesis.

Installation

Run pip install -e .. You can use a virtualenv if you wish (recommended).

Birdvisu can then be run just as visu. Other ways include running python -m birdvisu or ./visu.py from this directory, all of them are functionally equivalent.

Documentation

Documentation is built using Sphinx by running make in the docs/ directory.

Licence

I have not decided yet, so please ask for terms if you want to use this in some non-trivial way. Obviously this is source available :-)