SDN 仿真:mininet pox

2018-12-05  本文已影响0人  cca1yy

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,后续有进展再更新。

上一篇 下一篇

猜你喜欢

热点阅读