1.首先安装mininet(将mininet下载到Downloads里)。环境:ubuntu16.04
$ sudo apt-get install git #安装git
$cd /home/username/Downloads/ #进入目录,将mininet下载到Downloads里
$ git clone git://github.com/mininet/mininet #下载mininet
$ cd #返回/home目录
$ mkdir mininet/ #创建mininet文件夹
$ cd Downloads/mininet/util/ #进入Downloads内部的文件夹
$ bash install.sh -s/home/username/mininet/ -a #安装mininet(这里的-a: 全部安装,包括OVS和POX控制器) 若出现Enjoy Mininet!则安装成功
$ sudo mn --test pingall #测试是否安装成功
测试mininet是否安装成功(图中已成功)2. mininet基本操作
$sudo mn #创建最简单的网络拓扑,两个hosts h1和h2,一个switch s1,一个控制器c0.同时启动mininet命令行环境。
mininet环境中:
mininet> nodes #查看网络中的节点
其他功能见下图。
dpctl 程序是一个命令行工具用来检测和管理 OpenFlow 数据通路,它能够显示当前的状态数据通路,包括功能配置和表中的条目,以及合适使用 OpenFlow 的内核模块,可以用来添加,删除,修改和监视 datapaths。
如下图,表示数据流表为空
拓扑建立完成并且不再使用之后,可以输入mn -c清除拓扑。
mininet可视化
在mininet的下载目录下(我的路径cd Downloads/mininet/mininet),进入examples文件夹,运行./miniedit.py即可打开可视化界面,画图,并可以保存成test.py文件以供后续调用(调用时,输入sudo python test.py即可)。
3. pox控制器安装
在第一步mininet安装时,选择-a模式即默认同时安装pox控制器。在我的安装路径里,/home/mininet路径下,就有pox文件夹。如下图。因此之后可以直接使用。
$cd /home/username/mininet/pox #进入pox安装的文件夹
$./pox.py openflow.of.01 --address=127.0.0.1 --port=6666 #运行pox控制器,出现下图情形即代表运行成功。
$此时打开另一个cmd,并启动mininet。
$ sudo mn --controller=remote,ip=127.0.0.1,port=6666 #启动mininet,并且连接到远程ip = 127.0.0.1, port = 6666的pox控制器。
下图表明此虚拟网络已经使用了pox控制器。
此时,控制器窗口变成下图。
基本就是这样啦~新手学SDN mininet,后续有进展再更新。
网友评论