Mininet
Mininet 是一个轻量级软件定义网络和测试平台;它采用轻量级的虚拟化技术使一个单一的系统看起来像一个完整的网络运行相关的内核系统和用户代码,也可简单理解为 SDN 网络系统中的一种基于进程虚拟化平台,它支持 OpenFlow、OpenvSwith 等各种协议,Mininet 也可以模拟一个完整的网络主机、链接和交换机在同一台计算机上且有助于互动开发、测试和演示,尤其是那些使用 OpenFlow 和 SDN 技术;同时也可将此进程虚拟化的平台下代码迁移到真实的环境中。
Mininet的特性
- 可以简单、迅速地创建一个支持用户自定义的网络拓扑,缩短开发测试周期
- 可以运行真实的程序,在Linux上运行的程序基本上可以都可以在Mininet上运行,如Wireshark
- Mininet支持Openflow,在Mininet上运行的代码可以轻松移植到支持OpenFlow的硬件设备上
- Mininet可以在自己的电脑,或服务器,或虚拟机,或者云(例如Amazon EC2)上运行
- Mininet提供python API,简单易用
- Mininet是开源项目,源代码在这里:https://github.com/mininet
安装Mininet
获取源码
git clone git://github.com/mininet/mininet
进入目录
cd mininet
完整安装
./util/install.sh -a
第一次安装,不知道要配置一些什么信息,建议完整安装
测试
sudo mn --test pingall
查看 mininet版本
mn --version
其他安装命令
# install.sh –a ##完整安装(默认安装在home目录下)
# install.sh -s mydir –a ##完整安装(安装在其他目录)
# install.sh –nfv ##安装Mininet+用户交换机+OVS(安装在home目录下)
# install.sh -s mydir –nfv ##安装Mininet+用户交换机+OVS(安装在其他目录下)
创建一个及其简单的数据中心网络
数据中心网络通常具有树状拓扑结构。终端主机连接到机架顶部交换机,这些交换机形成树的叶子(edges);一个或多个核心交换机形成根;一个或多个聚合交换机层形成树的中间。在基本树形拓扑中,每个交换机(除了核心交换机)都有一个单亲交换机。可以添加额外的开关和链路来构造更复杂的树拓扑(e.g., fat tree),以努力提高容错性或增加机架间带宽。
在这个任务中,你的任务是创建一个简单的树拓扑结构。您将假定每个级别,即 core, aggregation, edge and host,由具有可配置扇出值(k)的单层交换机/主机组成,看起来像:
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接