在网络性能评估中一个巨大的挑战就是如何生成真实的网络流量,还好可以通过程序来创造人工的网络流量,通过建立测试环境来模拟真实的状况。
工具/原料
1
计算机
2
虚拟机
方法/步骤
1
首先使用mininet中的iperf工具在网络中生成UDP流量,iperf客户端传送数据流到iperf的服务端,由服务端接收并记录相关,但却并未给出较为明确的API接口来支持用户自定义命令。
2
接着修改mininet/net.py: net模块实现Mininet类,是仿真平台mininet的主体类,该类完成节点添加配置、网络基本功能和一些选项功能的实现,需要自定义的函数定义在该类中。
3
然后修改bin/mn: 在完成命令注册与绑定后,需要在mininet执行解释器中注册命令与对应执行函数的映射关系。
4
接着net.py和cli.py均在mininet/mininet目录,mn文件在在mininet/bin目录中,在代码修改完成后需要重新编译安装一遍mininet。
5
然后在两个主机之间进行iperf测试,并且在server端记录,实现iperf_single函数,为mininet添加自定义命令iperfmult。
6
最后自身以客户端身份按照指定参数发送UDP流,服务器生成的报告以重定向的方式输出到文件中,使用iperfmulti命令,主 机随机地向另一台主机发起一条恒定带宽的UDP数据流。