在原先的拓扑基础上进行操作,和上文一样的topo:
有了前面的学习基础,这次我们不再手动去设置s1 s2 s3 s4的flow table了,而改用远程controller
mininet在创建topo时会自带一个controller:c0,xterm c0登录它
在上面使用以下命令安装ryu:
sudo apt-get update
sudo apt install python3-pip
pip3 install ryu
然后cd到ryu下的app文件夹下使用下面的命令运行写好的controller脚本(放在文章最后):
ryu-manager FourSW.py --verbose
(1)
这个过程可能用到cp 文件存储路径 ryu/app 来把文件复制到app文件夹里
(2)
把windows下的py文件直接拖到ubuntu里打开可能会产生空格不对的问题,然后运行时报错module not found,需要检查一下
controller代码如下:
from ryu.base import app_manager
from ryu.controller import ofp_event
from ryu.controller.handler import CONFIG_DISPATCHER, MAIN_DISPATCHER
from ryu.controller.handler import set_ev_cl