软件定义网络实验5

这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzzcxy/FZUZCSDN202201
这个作业要求在哪里 https://edu.cnblogs.com/campus/fzzcxy/FZUZCSDN202201/homework/12708
这个作业的目标 能够理解 POX 控制器的工作原理;
通过验证POX的forwarding.hub和forwarding.l2_learning模块,初步掌握POX控制器的使用方法;
能够运用 POX控制器编写自定义网络应用程序,进一步熟悉POX控制器流表下发的方法。
学号 212006240

一、基本要求

  • 搭建下图所示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
./用户名/学号文件夹/pox/pox.py log.level --DEBUG forwarding.hub
  • 阅读Hub模块代码,使用 tcpdump 验证Hub模块;
xterm h1 h2 h3
tcpdump -nn -i h2-eth0
tcpdump -nn -i h3-eth0
ping 10.0.0.2
ping 10.0.0.3

  • 阅读L2_learning模块代码,画出程序流程图,使用 tcpdump 验证Switch模块。
xterm h1 h2 h3
tcpdump -nn -i h2-eth0
tcpdump -nn -i h3-eth0
ping 10.0.0.2
ping 10.0.0.3

个人总结

  • forwarding.hub 组件的作用为:在每个交换机上安装泛洪通配符规则,将数据包广播转发,此时交换机等效于集线器。所以 h1 ping h2或h1 ping h3时h2 h3都能抓到包
  • forwarding.l2_learning组件的作用:让OpenFlow交换机实现L2自学习,当它进行L2地址学习时,它会与尽可能多的字段做匹配,实现流规则多样化。数据只会发给对应的主机
  • 在pox目录下创建 SendFlowInSingle3.py 和 SendPoxHardTimeOut.py 文件时需要加 sudo ,否则无法创建成功
posted @ 2022-10-19 17:15  计科废物2  阅读(72)  评论(0编辑  收藏  举报