基于Mininet测量路径的损耗率

1 实验目的

  • 熟悉Mininet自定义拓扑脚本的编写与损耗率的设定;
  • 熟悉编写POX脚本,测量路径损耗速率

2 实验原理

在SDN环境中,控制器可以通过对交换机下发流表操作来控制交换机的转发行为,此外,还可以利用控制器测量路径的损耗率。在本实验中,基于Mininet脚本,设置特定的交换机间的路径损耗速率,然后编写POX脚本,实现对路径的损耗率的测量。

3 实验任务

先看一下本次实验的拓扑图:

应用POX基于Mininet测量路径的损耗率 图1

在该环境下,h0向h1发送数据包,由于在mininet脚本中设置了连接损耗率,在传输过程中会丢失一些包,本次实验的目的是展示如何通过控制器计算路径损耗速率(h0-s0-s1-h1)。这里假设控制器预先知道网络拓扑,所以我没有显示发现网络的代码以及其他相关代码。控制器将向s0和s1发送flow_stats_request,当控制器接收到来自s0的response时,将特定流的数据包数保存在input_pkts中,当控制器接收到来自s1的response时,将接收到特定流的数据包数保存在output_pkts中,差值就是丢失的数据包数量。

4 实验步骤

4.1 搭建环境

本实验需要安装POX、支持OpenFlow1.3协议的Mininet。

4.2 实验操作

步骤1:编写Mininet脚本

1在装有Mininet的虚拟机里新建文件mymininet.py。

2 编辑文件mymininet.py,内容如下:

步骤2:编写POX脚本

1 在装有POX的虚拟机里新建文件flow_stats.py。

2 编辑文件flow_stats.py,内容如下:

步骤3:运行脚本flow_stats.py。

应用POX基于Mininet测量路径的损耗率 图9

步骤4:运行脚本mymininet.py。

应用POX基于Mininet测量路径的损耗率 图10
应用POX基于Mininet测量路径的损耗率 图11

查看POX控制台信息:

应用POX基于Mininet测量路径的损耗率 图12

可以看到数据传输路径的平均损耗速率在10%,与在mymininet.py脚本中设置的s0与s1之间的损耗速率相吻合。

5 实验结论

基于Mininet的脚本设计拓扑,主要是对交换机间传输数据包的路径损耗速率进行设置,并且通过控制器POX进行测量。


  • 本站原创文章仅代表作者观点,不代表SDNLAB立场。所有原创内容版权均属SDNLAB,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用,转载须注明来自 SDNLAB并附上本文链接。 本站中所有编译类文章仅用于学习和交流目的,编译工作遵照 CC 协议,如果有侵犯到您权益的地方,请及时联系我们。
  • 本文链接https://www.sdnlab.com/15100.html

分享到:
条评论

登录后才可以评论

SDNLAB君 发表于15-12-01
2