实验5:开源控制器实践——POX
一、实验目的
- 能够理解 POX 控制器的工作原理;
- 通过验证POX的forwarding.hub和forwarding.l2_learning模块,初步掌握POX控制器的使用方法;
- 能够运用 POX控制器编写自定义网络应用程序,进一步熟悉POX控制器流表下发的方法。
二、实验环境
Ubuntu 20.04 Desktop amd64
三、实验要求
(一)基本要求
- 搭建下图所示SDN拓扑,协议使用Open Flow 1.0,控制器使用部署于本地的POX(默认监听6633端口)
阅读Hub模块代码,使用 tcpdump 验证Hub模块;
1.
创建SDN拓扑以及开启主机测试:
2.
开启Hub模块运行h1 pingh2,h3
开启Switch模块运行h1 pingh2,h3
L2_learning模块代码流程图:
(三)实验报告
通过这次实验我学到了很多新知识,能够理解 POX 控制器的工作原理;通过验证POX的forwarding.hub和forwarding.l2_learning模块,初步掌握了POX控制器的使用方法;能够运用 POX控制器编写自定义网络应用程序,进一步熟悉POX控制器流表下发的方法。跟着ppt做实验时遇到了一些问题,比如弄错了hub模块和switch模块,进而敲错了代码,不过后来顺利解决了。总的来说只要按照实验流程来做就能做的出来。还是要加强动手能力
实验4:开源控制器实践——OpenDaylight
一、实验目的
1、能够独立完成OpenDaylight控制器的安装配置;
2、能够使用Postman工具调用OpenDaylight API接口下发流表。
二、实验环境
Ubuntu 20.04 Desktop amd64
三、实验要求
(一)基本要求
1、利用Mininet平台搭建下图所示网络拓扑,并连接OpenDaylight控制器;
-
使用命令创建topo
-
启动ODL
-
打开控制器UI
清除旧的流规则
-
2、通过Postman工具调用OpenDaylight提供的API下发流表,实现拓扑内主机h1和h3网络中断10s。
实现拓扑内主机h1和h3网络中断10s
-
本次实验难度不大,问题主要是出在对于接口调试工具postman使用操作上的不熟悉。通过进一步地学习,掌握了怎样使用Postman工具调用ODL API接口下发流表从而实现拓扑内主机h1和h3网络中断10s。在进阶部分,通过查找资料,学习了ODL控制器主要的REST API文档,包括获取流表状态数量、获取拓扑的交换机、获取特定交换机端口的状态、新增修改和删除流表等等。
-
-
-