Sa1ka's Shelter

mininet 学习

Word count: 796Reading time: 3 min
2019/12/06 Share

命令语法

$ 这个符号代表现在处于 Linux 的shell 交互下,需要使用的是 Linux 命令
mininet> 这个符号表示现在处于 Mininet 交互下,需要使用的是 Mininet 的命令
# 这个符号表示的是现在处于 Linux 的 root 权限下。
sudo mn -h 命令用于显示mininet的帮助信息
Mininet使用基于过程虚拟化和网络命名空间的特性来创建虚拟网络,并且创建的网络在当前的Linux内核中是可用的

sudo mn 启动Mininet

查看全部节点:nodes

查看链路信息:net

输出各节点信息:dump

sudo mn –test pingpair 直接对主机连通性进行测试

sudo mn –test iperf启动后直接进行性能测试

主机端

sudo mn -x ,通过使用-x参数,Mininet在启动后会在每个节点上自动打开一个XTerm,方便某些情况下对多个节点分别进行操作。

在进入mn cli 之后,也可以使用xterm node(s1 h2)命令指定启动某些节点上的xterm,如分别启动s1和h2上的xterm

禁用或启用某条链路,格式为:link node1 node2 up/down

–switch选项和–controller选项,可以指定采用哪种类型的交换机跟控制器

–innamespace参数,可以让所有结点拥有各自的名字空间

启动参数总结
-h, –help 打印帮助信息

–switch=SWITCH 交换机类型,包括 [kernel user ovsk]

–host=HOST 模拟主机类型,包括 [process]

–controller=CONTROLLER 控制器类型,包括 [nox_dump none ref remote nox_pysw]

–topo=TOPO,arg1,arg2,…argN 指定自带拓扑,包括 [tree reversed single linear minimal]

-c, –clean清理环境

–custom=CUSTOM 使用自定义拓扑和节点参数

–test=TEST 测试命令,包括 [cli build pingall pingpair iperf all iperfudp none]

-x, –xterms 在每个节点上打开 xterm

–mac 让MAC 地址跟 DP ID 相同

–arp 配置所有 ARP 项

-v VERBOSITY, –verbosity=VERBOSITY [info warning critical error debug output] 输出日志级别

–ip=IP 远端控制器的IP地址

–port=PORT 远端控制器监听端口

–innamespace 在独立的名字空间内

–listenport=LISTENPORT 被动监听的起始端口

–nolistenport 不使用被动监听端口

–pre=PRE 测试前运行的 CLI 脚本

–post=POST 测试后运行的 CLI 脚本

常用命令总结
help 默认列出所有命令文档,后面加命令名将介绍该命令用法

dump 打印节点信息

gterm 给定节点上开启 gnome-terminal。注:可能导致 Mininet 崩溃

xterm 给定节点上开启 xterm

intfs 列出所有的网络接口

iperf 两个节点之间进行简单的 iperf TCP测试

iperfudp 两个节点之间用指定带宽 udp 进行测试

net 显示网络链接情况

noecho 运行交互式窗口,关闭回应(echoing)

pingpair 在前两个主机之间互 ping 测试

source 从外部文件中读入命令

dpctl 在所有交换机上用 dptcl 执行相关命令,本地为 tcp 127.0.0.1:6634

link 禁用或启用两个节点之间的链路

nodes 列出所有的节点信息

pingall 所有 host 节点之间互 ping

py 执行 Python 表达式

sh 运行外部 shell 命令

quit/exit 退出

CATALOG