实验 2:Mininet 实验——拓扑的命令脚本生成
实验 2:Mininet 实验——拓扑的命令脚本生成
一.实验目的
掌握Mininet的自定义拓扑生成方法:命令行创建,Python脚本编写。
二.实验任务
通过使用命令行创建,Python脚本编写生成拓扑,熟悉Mininet的基本功能。
三.实验步骤
1.实验环境
安装了Ubuntu18.04.5 Desktop amd64 的虚拟机
2.实验过程
(1)针对特定拓扑的命令行快速创建
//最小拓扑,1台交换机下挂2台主机 sudo mn --topo minimal
图1 最小拓扑
//简单拓扑:1台交换机下挂n台主机,此处n=3,n=2即为最小拓扑 sudo mn --topo single,3
图2 简单拓扑
//线性拓扑:交换机连成一线,每台主机下挂1台主机,此处有三台交换机和三台主机 sudo mn --topo linear,3
图3 线性拓扑
//树形拓扑:基于深度depth和扇出fanout,此处均为2 sudo mn --topo tree,fanout=2,depth=2
图4 树形拓扑
(2) 通用情形的Python 脚本自定义创建
执行命令:
$ nano mytopo.py // 复制 Python 代码到 py 文件中
图5 复制代码到文件中
采用命令 sudo python mytopo.py 运行Python文件
图6 执行py文件
修改之前的 Python 程序,使之可用 iPerf 测试网络拓扑中的指定主机之间的带宽。
图7 修改程序代码
图8 运行结果
3实验心得
学习了如何用命令行指令快速创建拓扑,在已有拓扑的情况下,建立相同拓扑会运行失败,应采用sudo mn -c清除原有拓扑。