导航:首页 > 编程语言 > mininetpython脚本创建拓扑

mininetpython脚本创建拓扑

发布时间:2024-09-10 19:05:01

㈠ 怎么用python写mininet的拓扑

为Mininet添加自定义拓扑:Mininet原生提供了多种拓扑类型:SingleSwitchTopo:简单拓扑(Host——Switch——Host)LinearTopo(k,n):链状拓扑,k台交换机以单链形态连接,分别下接n台主机TreeTopo(depth,fanout):树形拓扑,创建一个深度为depth、扇出为fanout的树状拓扑Mininet默认情况下并没有实现胖树的网络拓扑,但Mininet支持添加自定义拓扑的功能。本文根据Mininet自带的拓扑定义,在原拓扑库中添加了胖树拓扑类,实现从命令行直接启动k叉胖树拓扑环境。(注:加粗的代码行为自定义拓扑关键部分)mininet/topo.py:所有的拓扑类都继承自topo模块下的Topo基类,Topo基类实现了addNode、addSwitch、addHost、addPort、addLink等添加节点、链路的重要方法。Topo模块中还实现了单交换机拓扑SingleSwitchTopo类和链状拓扑LinearTopo类。mininet/topolib.py:topolib模块中定义了树状拓扑TreeTopo类,自定义的拓扑类可以定义在topolib模块下也可定义在topo模块下,拓扑类的__init__方法中可添加构建拓扑所需要的参数,Mininet在调用拓扑类时会将从命令行接收的topo选项之后的参数*args和关键字参数**kwargs传递到该拓扑类的__init__方法中初始化该拓扑类的对象。如本文中定义的FatTree拓扑类需要接收参数k以确定胖树的叉数:classFatTreeTopo(Topo):def__init__(self,k=4):"Createfat-treetopo."#initializationcodebin/mn:mn是Mininet执行的解释器,负责解析参数,定义了MininetRunner类用来构建、配置并运行整个Mininet平台。自定义的拓扑类需要导入mn中,然后在存放拓扑参数的字典TOPOS中加入对应的键值,就可以在mn命令中使用自定义的拓扑了:frommininet.topolibimportFatTreeTopoTOPOS={'linear':LinearTopo,'single':SingleSwitchTopo,'tree':TreeTopo,'fattree':FatTreeTopo}启动8叉胖树自定义拓扑的Mininet拓扑环境:$sudomn--topo=fattree,k=8

阅读全文

与mininetpython脚本创建拓扑相关的资料

热点内容
阿里云扫码登录服务器 浏览:970
化学基础pdf 浏览:896
51单片机晶码管 浏览:281
怎么查服务器假死原因日志在哪看 浏览:277
扫描pdf文件 浏览:926
解压密码百度云在线解压 浏览:767
传播学算法推荐 浏览:749
我的世界网络游戏如何查找服务器 浏览:257
安卓和苹果通讯录怎么互传 浏览:203
怎么打开隐私与应用加密的菜单 浏览:416
我的世界服务器小游戏的地址大全 浏览:578
在网络安全中加密安全机制提供了数据的 浏览:249
南京前端程序员私活怎么收费 浏览:981
拓扑pdf 浏览:440
如何在工行app查我的订单 浏览:214
车压缩机改电动 浏览:83
如何寻找音乐app 浏览:831
一加加密的照片 浏览:200
阿里云虚拟主机php 浏览:639
不卡点的解压视频 浏览:391