This project is a GUI client access ryu network manager to control the flows in the swithes networks. By default, using mininet to simulate the swithes network.
Basically, this programm can run any OS but must be with docker env as blow. Otherwise, you must build mininet environment on VM or linux OS.
- Pull ryu manager image.
docker pull osrg/ryu
- Build a container for this
(eg path: /d/Technology/Python_project/Tools/Own_flowmanager/server_flows)
docker run -it --rm -p 6633:8080 -v {the path of your code on local os}:/root/project osrg/ryu /bin/bash
- check ip address for mininet
(eg.. 170.17.0.2)
ip addr show eth0
- Run your ryu-manager.
cd project ryu-manager {filename in the path of your code}.py
- Under docker-mininet file, run command:
docker-compose run --rm mininet
- If issue appear, reboot docker host try to solve it.
- Do not build a independent container. Anyway, mininet images only work on this command. That means you need to run this again to start a mininet services.
- create a switches network.
mn --controller remote,ip={ryu manager ip above} --switch ovsk,protocols=OpenFlow13 --mac --ipbase=10.1.1.0/24 --topo single,4
python Main.py
Change the server ip and port to connect ryu server. By default if using docker:
IP: 127.0.0.1
Port: 6633
- flowmanager depends on web.