第五章 Mininet常用命令参数介绍(4)

简介: 第五章 Mininet常用命令参数介绍(4)

(d)以上3中建立网络拓扑的方式,均是建立有规则的网络拓扑,如何自定义网络呢?语法如下:


mn --custom file.py --topo mytopo


具体使用请看下一篇:mininet自定义网络拓扑结构


(2)--switch  定义网络拓扑要使用的交换机,后面可以接的参数有:ovsk、ovsbr、ivs、lxbr、user,前面三种均为OVS型交换机,后面两种分别为内核型(linux bridge)和用户型(user)交换机。


交换机分类3类:用户型、内核型和OVS型,其中内核型和OVS型的吞吐量比用户性大很多,因此一般采用后两种。可以测试三者的TCP bandwidth(区别UDP bandwidth):


sudo mn --test iperf

sudo mn --switch user --test iperf

sudo mn --switch ovsk --test iperf



(3)--controller 一般我们不用mininet自带的控制器,而是自己制定一个远程控制器,代码如下:


mn --controller = remote,

     --ip = [控制器的IP地址]

     --port = [控制器的端口号]

如果--ip和--port省略的话,则默认使用本地ip地址,端口默认使用6653或6633端口号。


(4)--mac 使用这个参数可以让MAC地址从小到达排列,使得复杂的网络更清晰,容易辨识各个组件的MAC地址。不使用这个参数的话,复杂的网络容易混乱。


2.用户查看设备信息和状态的命令参数

这些命令在 mininet> 命令模式下使用,仅查看网络设备状态信息,不对网络结构进行改变


net             查看链路信息,两个设备之间的之间连线,称为一个链路,链路是双向的


微信图片_20220113201428.png


nodes        查看有哪些可用节点


links           检测链路是否正常工作


pingall       检测各个主机之间的连通性


pingpair     检测前两个主机的连通性            


dump         查看节点信息


3.更改网络结构的命令参数

(1)py命令


执行Python表达式,例如添加网络设备。下面举例说明:


在mininet自带的网络拓扑的基础上,我们想添加一个主机h3,并且让它和s1之间连通,且可以和其他两个主机h1和h2互相ping通。


代码如下:


py net.addHost('h3')                                #给当前网络net添加新的主机h3


py net.addLink(s1,h3)                              #为主机h3和交换机s1之间添加一条链路


py s1.attach('s1-eth3')                             #为交换机s1添加一个借口用于与h3相连


py h3.cmd('ifconfig h3-eth0 10.3')         #为主机h3配置端口及改端口的IP地址


h1 ping h3                                                #重要!!h1知道h3的IP地址,而h3不知道h1的地址,因此需要h1告诉h3的地址


pingall                                                       #测试所有主机都是连通的


(2)link(和links不同),用法如下:


link s1 s2 down/up              禁用/开启s1和s2这两个节点之间的链路


(3)iperf


iperf h1 h2                          测试两个主机h1和h2之间的TCP带宽


(4)iperfupd


iperfupd bw h1 h2             测试两个主机h1和h2之间的UDP带宽


(5)dpctl                             对所有交换机操作流表,包括流表的显示、添加、修改、删除,具体用法,参考dpctl命令实践


(6)xterm                             如xterm h1打开主机h1的操作窗口


相关文章
|
8月前
|
网络协议 Unix Shell
第十一章 Shell常用命令与工具(二)
第十一章 Shell常用命令与工具(二)
|
8月前
|
移动开发 Shell Linux
第十一章 Shell常用命令与工具(一)
第十一章 Shell常用命令与工具(一)
|
8月前
|
Ubuntu Shell Linux
Ubantu终端常用命令、快捷键和基本操作(系统性学习day2)
Ubantu终端常用命令、快捷键和基本操作(系统性学习day2)
第五章 Mininet常用命令参数介绍(1)
第五章 Mininet常用命令参数介绍(1)
337 0
第五章 Mininet常用命令参数介绍(1)
第五章 Mininet常用命令参数介绍(2)
第五章 Mininet常用命令参数介绍(2)
132 0
第五章 Mininet常用命令参数介绍(2)
第五章 Mininet常用命令参数介绍(3)
第五章 Mininet常用命令参数介绍(3)
135 0
第五章 Mininet常用命令参数介绍(3)
|
NoSQL Ubuntu MongoDB
本地部署 explainshell (命令行解释服务)
前段时间我们分享了explainshell.com 一个命令行解释的网站,它会分析命令的帮助文档,根据你想查询的命令参数来抽取对应的解释,然后非常清晰地显示出来。
295 0
本地部署 explainshell (命令行解释服务)
|
Shell Linux
关于shell的几个不为人知却十分有用的命令
关于shell的几个不为人知却十分有用的命令
116 0
|
缓存 网络虚拟化 C++