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

一、实验目的

1.能够理解 POX 控制器的工作原理;
2.通过验证POX的forwarding.hub和forwarding.l2_learning模块,初步掌握POX控制器的使用方法;
3.能够运用 POX控制器编写自定义网络应用程序,进一步熟悉POX控制器流表下发的方法。
4.能够独立部署RYU控制器;
5.能够理解RYU控制器实现软件定义的集线器原理;
6.能够理解RYU控制器实现软件定义的交换机原理。

二、实验环境

Ubuntu 20.04 Desktop amd64

三、实验要求


(一)开源控制器实践——POX

1.搭建下图所示SDN拓扑,协议使用Open Flow 1.0,控制器使用部署于本地的POX(默认监听6633端口)

2.阅读Hub模块代码,使用 tcpdump 验证Hub模块;

3.阅读L2_learning模块代码,画出程序流程图,使用 tcpdump 验证Switch模块。

(二)开源控制器实践——RYU

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

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

(2)h1 ping h3

pox下查看拓扑流表

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

posted @ 2022-10-29 20:01  20计科姚慧英  阅读(49)  评论(0)    收藏  举报