SDN实验---Mininet的相关命令(待补充完善)

一:补充

(一)推文

openvswitch的原理和常用命令

https://blog.csdn.net/ten_sory/article/details/79593554

(二)回顾:sudo mn --test pingall

测试的是一个mininet自带的简单网络拓扑的连通性问题,这个简单的网络拓扑结构包含一个交换机s1,两个主机h1,h2与交换机构成连通网络

1.使用mn命令进入测试网络(上面图中网络)

可以查看信息

2.使用links命令查看链路连通性

3.使用dump查看各个节点信息

4.使用pingall命令测试各个主机之间是否连通

二:命令图谱

三:网络构建参数

(一)topo

1.单一拓扑:整个网络拓扑中交换机只有一个,下面可以连接多个主机

2.线性拓扑:可以有多个交换机,但是每个交换机下面只是连接一个主机

注意:网络链路状态中,links是包含交换机之间也是连通的  s1--s2--s3--s4

3.树形拓扑

depth设置树的深度(不含根节点),fanout设置每个节点下的子树个数(广度)

4.自定义拓扑(重点)

(二)switch

定义网络拓扑要使用的交换机,后面可以接的参数有:ovsk、ovsbr、ivs、lxbr、user,前面三种均为OVS型交换机,后面两种分别为内核型(linux bridge)和用户型(user)交换机。
交换机分类3类:内核型、用户型、OVS型,其中内核型和OVS型的吞吐量比用户型大很多,因此一般采用后两种。
测试三者的TCP bandwidth
sudo mn --test iperf    内核型

sudo mn --switch user --test iperf    用户型
sudo mn --switch ovsk --test iperf        ovs型

(三)controller :一般我们不用mininet自带的控制器,而是自己制定一个远程控制器

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

(四)mac

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

四:内部交互命令

(一)常用内部交互命令(不可修改网络结构)

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

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

nodes           查看有哪些可用节点

links            检测链路是否正常工作

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

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

dump           查看节点信息

(二)采用内部交互命令:可以更改网络结构的命令,或者是带参数命令

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:设置链路状态

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

可以看到,当关闭链路s1 s2后,主机h1和h2是无法通信的

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

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

一定要加上bw

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

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

五:Mininet可视化

(一)启动Miniedit

注意:最好在root权限下运行,在前面加上sudo

(二)自定义创建拓扑,设置设备信息

1.创建拓扑

2.配置设备属性

配置控制器

右击设备,出现控制器选项和属性

配置交换机

注意DPID是16位长度

配置主机

注意:IP配置是根据全局配置中设置的网络地址设置的

配置链路 

miniedit的全局配置

(三)运行拓扑并生成拓扑脚本

运行设置好的网络拓扑,可在命令行界面显示出运行的拓扑信息

运行当中,右击长按,可以查看设备信息
使用图形界面设置好拓扑后,可以通过选择File-Export Level 2 Script,将其保存为python脚本,以后直接运行python脚本即可重现拓扑,重现拓扑后可在命令行直接操作

原文地址:https://www.cnblogs.com/ssyfj/p/11725114.html

时间: 2024-11-04 12:25:54

SDN实验---Mininet的相关命令(待补充完善)的相关文章

​文件检索相关命令总结

文件检索相关命令 一.概览 1. which:用于查找可执行文件(外部命令.脚本) 2. whereis:查找程序.帮助手册.源文件的位置 3. locate:索引库模糊查找 4. whatis:在whatis数据库里查找完整的单词,相当于man –f. 5. find:精确多条件查找 二.细说        实验环境如下显示,操作系统环境不同,命令执行后显示结果会略有出入,但是不影响命令的用法. [[email protected] ~]$ uname–r                  /

ceph集群快照、clone相关命令整理v1

简介:快照 快照是一个镜像在某一个特定时间点的只读拷贝.其中Ceph块设备的高级功能是能够创建快照保留镜像的历史状态.Ceph支持快照分层,允许快速克隆镜像. Ceph还支持使用RDB和如KVM,libvirt等创建快照.当做快照时需要停止I/O.如果镜像包含文件系统,文件系统必须在做快照前保持一致性. 本文档主要从以下几个方面进行测试: 1:快照.创建.查询.删除.清理: 2:快照clone.增量快照.保护快照: 3:image导入.导出: 4:利用ceph存储快照功能,做数据备份.数据恢复:

Linux文件管理相关命令

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在了解了Linux文件管理背景知识之后, 我们可以学习一些命令来管理我们的文件. 文件操作相关 有一些命令可以帮助我们"修剪"之前看到的文件树. $touch a.txt 如果a.txt不存在,生成一个新的空文档a.txt.如果a.txt存在,那么只更改该文档的时间信息.(这个命令实际上用得并不广泛,但可以帮我们创建一个空文件来实验下面操作) $ls . 是list的简

linux账号管理及相关命令和操作

用户和组 用户: 1:用户和UID对应 2:用户需要有权限才能读.写.执行其他用户的文件 组: 1:组和GID对应 2:用户需要加到组中 3:每个用户都有自己的默认组,可以附加到其他的组 4:同组的用户可以根据组的权限,共享文件,协同合作 UID(User id ):linux系统对用户账号的识别,因为系统不会识别你的账号名,而是通过对账号分配数字ID,便于识别,账号名只是易于用户记忆,便于人类操作 UID范围 root:0 系统账号:小于500 一般账号:大于500 对应的账号信息在 /etc

Redis教程2--Redis数据类型及相关命令

Redis支持的种数据类型包括string.list .set .sorted set 和hash. Redis相关的命令可以查看:http://redis.io/commands 这是官方的命令使用手册,也有中文翻译的:http://redis.readthedocs.org/en/2.4/index.html 1. keys:  redis本质上一个key-value store,所以首先了解它的key.首先key也是字符串类型,但是key中不能包括边界字符.由于key不是binary sa

ACL最大权限及相关命令

先查看目录vampire的acl权限 1 [[email protected] home]# getfacl vampire 2 # file: vampire/ 3 # owner: vampire 4 # group: vampire 5 user::rwx 6 user:iaknehc:r-x 7 group::--- 8 mask::r-x 9 other::--- mask是用来指定最大有效权限的,如果给用户赋予了ACL权限,是需要和mask的权限"相与"才能得到用户的真正权

redis cluster (2) 相关命令参考及慢查询

实例关闭命令 redid-cli  shutdown  说明:关闭时强制 bgsave 所以需要一些时间    注:在start时,需要先加载数据到内存,数据加载完毕之后 redis 才会listen 端口 集群相关命令 1.CLUSTER INFO 打印集群的信息   2.CLUSTER NODES 列出集群当前已知的所有节点(node),以及这些节点的相关信息.  3.CLUSTER FAILOVER 手动故障转移,需要在转移的主节点的从节点上执行 节点 相关命令 1.CLUSTER MEE

MBR与GPT分区的区别及磁盘分区相关命令

一.MBR分区结构 主引导记录(Master Boot Record,缩写:MBR),又叫做主引导扇区,是目前比较流行的一种分区结构.磁盘的0磁道0扇区称为MBR,它的大小是512字节,这个区域被分为三个部分: 第一部分为boot loader(主引导程序),占446字节: 第二部分为Partition table(分区表),即DPT,占64字节,每个分区项占用16个字节,这16个字节中存有活动状态标志.文件系统标识.起止柱面号.磁头号.扇区号.隐含扇区数目(4个字节).分区总扇区数目(4个字节

Linux基础--进程管理相关命令介绍(2)

本文主要介绍了Linux中进程管理的相关命令,涉及到的主要命令有top,vmstat等. (1)top ①功能:用来查看CPU,内存以及进程的状态. ②用例: ③相关注释: load average表示负载,三个数值分别表示第1分钟,第5分钟,第10分钟 Cpu中us表示用户空间程序占用百分比,sy表示内核模式占用百分比,ni表示调整NICE值所占用的    CPU百分比,id表示CPU的空闲比例,wa表示等待磁盘IO完成所占用的时间比例,hi表示硬件中断占     据的百分比,si表示软中断所