預設系統 Ubuntu
- 安裝 mininet install mininet
$ sudo apt-get install mininet
- 建立拓樸並開啟 controller 與 nat 模式 launch mininet with defined topology
$ sudo mn --topo single,5 --mac --switch ovsk --controller remote --nat
- 建立
venv
虛擬環境 create a virtual environment namedvenv
$ virtualenv venv
- 啟動虛擬環境 launch the virtual environment
$ source venv/bin/activate
- 下載獎勵式學習系統 clone repo from Github
$ git clone https://github.com/qaz5823091/SDN-Project.git
- 重新命名目錄 rename the directory
$ mv SDN-Project/ project/
- 安裝套件 install target packages
(venv) $ pip install -r project/requirements.txt
- 下載 ryu clone ryu controller from Github
$ git clone https://github.com/faucetsdn/ryu.git
- 把系統放在 ryu/app 底下 move the project directory to the ryu/app/
$ mv project/ ryu/ryu/app/project/
- 進入 ryu/ 目錄 enter the ryu directory
$ cd ryu
- 啟動虛擬環境 launch the virtual environment
$ source venv/bin/activate
- 啟動 controller 程式 start ryu application
(venv) $ sh ryu/app/project/auto-start.sh
-
伺服器會架設在 port 8080 API server is setup on localhost:8080
- 啟動虛擬環境 launch the virtual environment
$ source venv/bin/activate
- 進入網頁後台的目錄 enter ryu/ryu/app/project/console/
(venv) $ cd ryu/ryu/app/project/console/
- 啟動網頁 launch the flask server
(venv) $ flask run
瀏覽器需安裝允許 CORS 的插件,網頁才會運作正常