软件定义网络(SDN)第一次实验报告
实验 1 :Mininet 源码安装和可视化拓扑工具
一、实验目的
掌握 Mininet 的源码安装方法和 miniedit 可视化拓扑生成工具。
二、实验任务
使用源码安装 Mininet 的 2.3.0d6 版本,并使用可视化拓扑工具生成一个最简拓扑(每 1 台交换机连接 2 台主机)。
三、实验要求
- 自行安装 Ubuntu 虚拟机,版本推荐 18.04 和 16.04,虚拟机软件推荐使用VisualBox。
- 在 Ubuntu 系统的 home 目录下创建一个目录,目录名为自己的标识,包括但不限于学号、姓名拼音等,目录不要包含中文。
- 在创建的目录下,完成 Mininet 的源码安装。
- 打开可视化工具,参照使用步骤生成一个最简拓扑。
- 在博客园发表一篇博客,记录结果,无需逐步截图。
四、具体实验步骤
- 选择 VMware 虚拟机,装载 Ubuntu 18.04.5 Desktop amd64 的镜像文件进行安装;
- 在 /home/user 目录底下创建 sdn 文件夹,并且进入终端安装 git 和 mininet、openflow 等组件。安装完毕后测试安装是否成功;
- 执行 /mininet/examples 目录下的 miniedit.py 文件,进入可视化页面;
- 按照要求拖动左侧边栏的主机 Host、交换机 Switch、路由器 Router、网络链路 NetLink、控制器 Controller 等组件到右侧空白处,实现网络拓扑的可视化仿真;
5. 连接并配置好相应的参数,点击 run 开始运行,回到终端测试连通性;
6. 拓扑生成并确认无误之后,可以点击 miniedit 左上角的 File 菜单,选择 Export Level 2 Script,将拓扑保存为 Python 脚本,方便之后执行脚本一键生成。重新使用 python 运行该脚本,确认保存无误。
五、注意事项与心得体会
注意事项
- 虚拟机 16.04 和 18.04 版本比较稳定, 20.04 版本暂不推荐
- 注意 Linux 中 python 2.x 版本和 3.x 的调用和切换。 ubuntu 大多采用 2.7 版本,不与 3.x 兼容导致代码报错;
- 如果执行 CLI 命令行测试 " sudo mn --test pingall " 时提示:"Cannot find required executable ifconfig",执行 " sudo apt install net-tools " 安装网络工具 net-tools 。
心得体会
- Linux 基本常用命令需要掌握,例如 ls, mkdir, rmdir, cd, sudo, git, touch, chmod等等;
- 输入指令或者地址时可以灵活使用 tab 键提高效率,尤其是文件名字较长的时候。也可以直接进入文件夹右键进入 " open in terminal " ,同样也能提高效率;
- VMTool 可以实现虚拟机和真实机之间的文件转移以及复制粘贴(目前只知道这个功能);
- Mininet 友好的可视化操作页面有利于快速搭建一个简单测试网络拓扑。