Mininet建立topology zoo中的拓扑
以前用Mininet建立拓扑都是在别人的代码上进行需求上的修改,这次从头开始将topology zoo(http://www.topology-zoo.org/)中的拓扑用Mininet建立,不失一般性,每个交换机只给分配了一个host,所有链路的端口都由Mininet自动分配,代码链接如下:https://github.com/cotyb/LISA/tree/master/topology%20mininet
其中遇到的问题有:
- File "build/bdist.linux-x86_64/egg/mininet/topo.py", line 143, in addSwitch AttributeError: 'Mininet_topology_zoo' object has no attribute 'sopts'
最后发现是因为python基础的问题,在类定义__init__(self)函数中加入:super(Mininet_topology_zoo, self).__init__()即可,当存在继承关系的时候,需要在子类中调用父类的方法,super可以实现直接用父类的方法名在子类中用父类的方法,而不需要在方法名前加上父类的名称。 - 在建立拓扑的时候总是提醒TypeError: 'list' object is not callable
最后发现是因为我的拓扑子类有switches属性,是一个list,而net.py中将switches用作方法,所以报错,遇到这种问题,mininet的CLI只提示问题,为了定位问题,可以在建立拓扑的时候使用--verbosity=debug来查看错误。
不向静中参妙理,纵然颖悟也虚浮
立乎其大 和而不同
古之成大事者,不惟有超世之才,亦必有坚韧不拔之志
分类:
Mininet
标签:
topology zoo
, mininet
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?