软件定义网络实验五

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

第一部分:基本实验

实验步骤1

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

在命令行终端输入命令:sudo mn --topo=single,3 --mac --controller=remote,ip=127.0.0.1,port=6633 --switch ovsk,protocols=OpenFlow10

实验步骤2

  • 阅读Hub模块代码,使用 tcpdump 验证Hub模块;
    首先在pox文件目录下输入命令:./pox.py log.level --DEBUG forwarding.hub开启hub模块

  • mininet输入命令 h1 ping h2

  • h2 h3抓包结果

  • 在h1命令行终端输入ping 10.0.0.3来代替h1 ping h3,h2 h3抓包结果

h1 ping h2和h1 ping h3,都可以从h2 h3中抓到数据包,验证了hub模块的洪泛转发。

实验步骤3

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

  • 首先在pox文件目录下输入命令:./pox.py log.level --DEBUG forwarding.l2_learning开启switch模块,开启h1 h2 h3的命令行终端

  • h1命令行终端输入ping 10.0.0.2,抓取h2 h3eth0端口的数据包

  • h1命令行终端输入ping 10.0.0.3,抓包结果

数据包只会发送给相应的主机,验证了switch模块的自学习功能

第二部分:反思与总结

  • 本次实验难度相较前几次较难,在进行抓包时候,忘记先用tcpdump命令开启抓包,导致未能出现抓包信息,实验了多次没有成功,回去重新阅读老师的ppt,发现需要输入tcpdump开启抓包的命令。还有流程图的绘画,由于对于过程的理解不够,所以刚开始对于画流程图一筹莫展,接着通过理解学习,和同学的指导,能够对过程有了简单的理解。
  • 通过本次实验,对pox的使用有了初步的认识与掌握,对hub模块的洪泛转发和switch模块的自学习得到验证和更加深入的了解。也初步学习了解了主机的命令行终端下抓包的效果
posted @ 2021-10-13 14:12  fzux  阅读(92)  评论(0编辑  收藏  举报