This repository is a lab for NCTU course "Introduction to Computer Networks 2018".
In this lab, we are going to write a Python program with Ryu SDN framework to build a simple software-defined network and compare the different between two forwarding rules.
- Learn how to build a simple software-defined networking with Ryu SDN framework
- Learn how to add forwarding rule into each OpenFlow switch
- We will give you a Python code (
SimpleTopo.py
) that includes an example network topology and another Python code (SimpleController.py
) that includes Ryu controller - We will get you a figure illustrating a topology you should generate
- Copy the necessary function code from
SimpleTopo.py
andSimpleController.py
to your Python code (topo.py
andcontroller.py
) to build your networks with forwarding rules
NOTICE: Please follow this slides for detail.
- Environment Setup
- Example of Ryu SDN
- Mininet Topology
- Ryu Controller
- Measurement
- Report
Route_Configuration/ # This is ./ in this repository
|--- src/ # Folder of source code
|--- scripts/ # Folder of scripts
|--- run_mininet.sh # Running script of Mininet
|--- run_ryu.sh # Running script of Ryu manager
|--- topo/ # Folder of topology figure
|--- topo.png
|--- out/ # Output files
|--- .gitkeep # For keeping this folder
|--- SimpleTopo.py # Example code of topology
|--- SimpleController.py # Example code of controller
|--- controller.py # Your program should be here!
|--- topo.py # Your program should be here!
|--- LICENSE
|--- README.md
|--- .gitignore # For ignoring useless files
- Ryu SDN
- Python
- Others