Mininet源代码的目录结构

Mininet 源代码*有 bin、custom、doc、mininet.egg-info、build、debian、examples、dist、mininet、util 10个子目录以及mnexec.c、setup.py等文件,目录结构如图所示。

Mininet源代码的目录结构
(1)bin/:该文件夹下的mn文件是Mininet的运行文件,应用Python程序编写的文件,定义了MininetRunner类,Mininet安装后执行mn时即调用本程序,为整个测试创建基础平台。
Mininet运行文件mn执行过程中函数调用如下:首先,应用parseArgs()解析命令行传递的参数;然后通过setup()调用Mininet.net.init()来校验运行环境配置;再调用 begin()执行给定参数,完成包括创建拓扑、地址分配等操作;接着调用Mininet.net.Mininet()创建网络平台mn;应用Mininet.cli.CLI()函数创建CLI对象;并通过调用mn.start()启动网络实例;启动网络实例后,执行指定的测试命令,默认为cli,即调用CLI(mn)进入交互环境;执行结束后调用mn.stop()退出应用的网络实例。

(2)custom/:可以防止用户自定义的Python文件,如自定义的拓扑等。

(3)doc/:doxygen.cfg文件执行doxygen生成文档时的配置文件。

(4)debian/:生成deb安装包时的配置文件。

(5)mininet/:mininet的核心代码都在该文件夹内,下一小节将对各模块进行详细介绍。此外,该文件夹中的_init_.py文件用于将Python代码导入控制文件;clean.py文件提供两个函数:sh(cmd)调用shell来执行cmd,cleanup()用于清理残余进程或临时文件;test子文件夹用于存放测试的例子。

(6)util/:可放置辅助文件,包括安装脚本、文档辅助生成等。

(7)INSTALL:安装说明。

(8)setup.py:安装Python包时的配置文件,在Makefile中调用。

(9)CONTRIBUTORS:作者信息。

(10)README.md:说明文件。

(11)mnexec.c:执行一些快速命令,如关闭文件描述等,该文件是C程序,编译后生成的二进制文件mnexec被Python 库调用。

上一篇:二维层状金属碲化物【Mn(en)3】Ag6Sn2Te8


下一篇:P2680_运输计划