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

一、实验目的

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

二、实验环境

Ubuntu 20.04 Desktop amd64

三、实验要求

(一)基本要求

  1. 搭建下图所示SDN拓扑,协议使用Open Flow 1.0,并连接Ryu控制器,通过Ryu的图形界面查看网络拓扑。
    • 使用命令在lab6中搭建拓扑图:

       

      启动控制器

       

       

      • 通过Ryu的图形界面查看网络拓

         

        2.阅读Ryu文档的The First Application一节,运行当中的L2Switch,h1 ping h2或h3,在目标主机使用 tcpdump 验证L2Switch,分析L2Switch和POX的Hub模块有何不同。

      • 运行ryu:

         

        重新搭建拓扑图

         

         对p1和p2进行抓包,在目标主机中验证验证L2Switch

         

         

         

         3.编程修改L2Switch.py,另存为L2xxxxxxxxx.py,使之和POX的Hub模块的变得一致?(xxxxxxxxx为学号)

         

         

         

         

        (三)实验小结

      • 本次实验总体会有点复杂,在查看了RYU的资料对部分代码有了理解,RYU控制器在下发流表时和POX控制器都是对数据包进行泛洪转发,而且RYU不能查看对应流表项,在操作硬超时部分时,需要将openflow的版本改为1.3,并且在测试icmp时,再开启硬超时代码,就可以实现主机之间硬超时访问。
posted @ 2022-10-29 11:07  Zoullh  阅读(16)  评论(0)    收藏  举报