- Visualize the Mininet topology with information about its nodes
- Define a custom startup topology
- Dynamically modify the toplogy (add/remove hosts/switches)
- View and modify flowtable of any active switch
- Needs RYU controller with access to topology information
- Python 3.8.10
- Mininet (or Mininet Fork such as Containernet)
- Ryu (Topology API)
- PyQT6
- Install all dependencies in your python venv with pip.
- Clone the repo.
git clone https://github.com/Peachmann/mnGui.git
- Switch to master branch.
- Navigate to src subfolder.
- Run the controller.
sudo ryu-manager controller.py --observe-links
- Run the main application
sudo python mngui.py
- Play around with the topology :)
- You can add your own custom topology based on the ones shown in topos.py
- Choose your topology as startup in mininet_thread.py
- Make sure to correctly set up all required information dicts for a correct startup
- Respect the current limitations