实验6:开源控制器实践——RYU

实验6:开源控制器实践——RYU

一、实验目的

  1. 能够独立部署RYU控制器
  2. 能够理解RYU控制器实现软件定义的集线器原理
  3. 能够理解RYU控制器实现软件定义的交换机原理
    二、实验环境

  1. 下载虚拟机软件Oracle VisualBox或VMware;
  2. 在虚拟机中安装Ubuntu 20.04 Desktop amd64,并完整安装Mininet;
    三、实验要求

(一)基本要求

  • 完成Ryu控制器的安装

  • 在Ryu安装目录下执行ryu --version查看版本

  • 搭建拓扑
    sudo mn --topo=single,3 --mac --controller=remote,ip=127.0.0.1,port=6633 --switch ovsk,protocols=OpenFlow10

  • 通过编辑保存 L2Switch.py 文件

  • 拓扑可视化

  • tcpdump查看

  • h1 ping h2

  • h1 ping h3

  • 可以看到均为洪泛转发

  • 查看控制器流表,如下图:

  • 看到没有流表,而使用pox的hub模块则会看到流表,如下图:

所以可以看到二者都是洪泛转发,但是不同之处在于POX是直接向交换机下发流表,而Ryu是在每个 Packet In 事件之后,向交换机下发动作。

四、个人总结

  • 实验难度
    基本要求不难。

  • 实验过程遇到的困难及解决办法
    一开始忘记创建L2Switch.py 文件,一直打开,也没啥区别,之后只创建了但是没有改,造成topo的h1h2h3都不能连通,得打开,才能顺利进行。

  • 个人感想
    本次实验本身不难,但是有许多小细节,整的到最后,花费了好多时间,最主要就是topo的问题,经常创建了但是不连通,在同学的帮助下我终于连通了,所以要多问问同学,在拓扑可视化方面遇到了一些问题,但还是很好的解决了。通过本次实验,我初步体会了ryu的使用,以及ryu与pox转发的流表的区别,能够理解RYU控制器实现软件定义的集线器原理,还能够理解RYU控制器实现软件定义的交换机原理,使得我对计算机网络的许多只是,当初懵懵懂懂的,现在就都明了了,果然动手使得记忆更加深入。

posted @ 2021-10-13 17:06  巴鲁ac  阅读(105)  评论(0编辑  收藏  举报