mininet基础

article/2025/9/19 22:44:06

mininet介绍

一、Mininet是什么

Mininet是由斯坦福大学基于Linux Container架构开发的一个进程虚拟化网络仿真工具,可以创建一个包含主机,交换机,控制器和链路的虚拟网络,其交换机支持OpenFlow,具备高度灵活的自定义软件定义网络。
二、Mininet可以做什么

为OpenFlow应用程序提供一个简单,便宜的网络测试平台;
启用复杂的拓扑测试,无需连接物理网络;
具备拓扑感知和OpenFlow感知的CLI,用于调试或运行网络范围的测试;
支持任意自定义拓扑,主机数可达4096,并包括一组基本的参数化拓扑;
提供用户网络创建和实验的可拓展Python API。

三、Mininet的优势

Mininet结合了许多仿真器,硬件测试床和模拟器的有优点:

与仿真器比较:启动速度快;拓展性大;带宽提供多;方便安装,易使用。
与模拟器比较:可运行真实的代码;容易连接真实的网络。
与硬件测试床比较:便宜;快速重新配置及重新启动。

四、Mininet的主要特性

Mininet作为一个轻量级软定义网络研发和测试平台,其主要特性包括:

支持OpenFlow、Open vSwitch等软定义网络部件;
方便多人协同开发;
支持系统级的还原测试;
支持复杂拓扑、自定义拓扑;
提供python API;
很好的硬件移植性(Linux兼容),结果有更好的说服力;
高扩展性,支持超过4096台主机的网络结构。

mininet安装

环境:Ubuntu18.04 (其他Linux操作系统也可)

下载源码:

git clone git://github.com/mininet/mininet

然后进入mininet/util目录,执行安装命令-a表示全部安装

cd mininet
cd util
sudo ./install.sh -a

其他安装方式

mininet/util/install.sh -a  在home目录下安装Mininet所需的所有的东西,包括Open vSwitch、wireshark和POX控制器等
mininet/util/install.sh -s mydir -a 在指定的目录下安装Mininet所需的所有的东西
mininet/util/install.sh -nfv 在home目录下安装Mininet、OpenFlow推荐的交换机和Open vSwitch
mininet/util/install.sh -s mydir -nfv 在指定的目录下安装Mininet、OpenFlow推荐的交换机和Open vSwitch
在home目录下安装Mininet所需的所有的东西,包括Open vSwitch、wireshark和POX控制器等

全部安装的话需要的时间稍微比较长,稍安勿躁

image-20210510184400623

看到Enjoy Mininet就是已经安装成功了

启动mininet

mn

image-20210510184606800

这里介绍一下

h 代表 host 即主机

s 代表 switch 即交换机 (这里的交换机不是普通的交换机,是openvswitch 是一种支持SDN(OpenFlow 协议)的交换机)

c 代表 controller 即 控制器(SDN控制器)

什么是Open vSwitch

OpenvSwitch简称OVS,正如其官网(http://openvswitch.org/)所述,OVS是一个高质量、多层的虚拟交换软件。它的目的是通过编程扩展支持大规模网络自动化,同时还支持标准的管理接口和协议。

随着虚拟化应用普及,需要部署更多的虚拟化交换机,而费用昂贵的闭源虚拟交换机让用户不堪重负,多层虚拟化软件交换机Open vSwitch由Nicira Networks开发,主要实现代码为可移植的C代码。它遵循Apache 2.0开源代码版权协议,可用于生产环境,支持跨物理服务器分布式管理、扩展编程、大规模网络自动化和标准化接口,实现了和大多数商业闭源交换机功能类似的软件交换机。

OVS官方的定位是要做一个产品级质量的多层虚拟交换机,通过支持可编程扩展来实现大规模的网络自动化。设计目标是方便管理和配置虚拟机网络,检测多物理主机在动态虚拟环境中的流量情况。针对这一目标,OVS具备很强的灵活性。可以在管理程序中作为软件switch运行,也可以直接部署到硬件设备上作为控制层。

详细可以看这篇文章: https://blog.csdn.net/qq_15437629/article/details/74858832

SDN控制器

SDN控制器是软件定义网络(SDN)中的应用程序,负责流量控制以确保智能网络。SDN控制器是基于如OpenFlow等协议的,允许服务器告诉交换机向哪里发送数据包。

SDN控制器的种类 :https://blog.csdn.net/qq_29229567/article/details/88313976

SDN控制器的监听端口是6653 ,openvswitch作为客户端去连接控制器(此时的sdn控制器是pox控制器)

image-20210510192845712

mininet基础操作

mn  启动mininet 默认创建两台主机一个交换机和启动控制器

启动参数总结

-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 退出
sh 运行外部 shell 命令
quit/exit 退出

详细操作参考文章 :
https://blog.csdn.net/qq_29229567/article/details/105230800


http://chatgpt.dhexx.cn/article/H3Uf6tty.shtml

相关文章

第一讲——mininet的安装和使用

第一讲——mininet的安装和使用 1.调出字符界面。 2.进入root。 3.直接安装git,发现无法安装,原因是没有安装源。 4.更新安装源。 5.再次安装git,发现可以安装。 6.下载mininet。 7.安装mininet。 8.查看mininet安装情况和创建线性网络拓扑。…

距离(distance)算法小结

18种和“距离(distance)”、“相似度(similarity)”相关的量的小结 在计算机人工智能领域,距离(distance)、相似度(similarity)是经常出现的基本概念,它们在自然语言处理、计算机视觉等子领域有重要的应用,而这些概念又大多源于数学领域的度…

概率论 联合分布

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢! 我之前一直专注于单一的随机变量及其概率分布。我们自然的会想将以前的结论推广到多个随机变量。联合分布(joint distribution)描述了多个随机变…

推荐 :联合概率和条件概率的区别和联系

联合概率P(A∩B) 两个事件一起(或依次)发生的概率。 例如:掷硬币的概率是 ⁄₂ 50%,翻转 2 个公平硬币的概率是 ⁄₂ ⁄₂ ⁄₄ 25%(这也可以理解为 50% 的 50%) P(A ∩ B) P(A) ⋅ P(B) 对于 2 个硬币…

【概率论】五分钟搞懂概率论联合密度函数与概率之间的计算

【例题】 设X和Y的联合密度函数为&#xff1a; f ( x , y ) { 2 0 < x < ∞ , 0 < y < ∞ 0 其 他 区 域 f(x,y)\left\{ \begin{array}{rcl} 2 && {0<x<\infty,0<y<\infty}\\ 0 && 其他区域 \end{array} \right. f(x,y){20​​0<…

python3 联合概率,边缘概率,贝叶斯定理(含详细推导)

1、贝叶斯原理 假设有两个随机变量X&#xff1b;Y&#xff08;下方左图&#xff09;&#xff1b; X的取值为 {}&#xff0c;其中 i1,...,M(M个特征&#xff09;&#xff1b; Y的取值为 {}&#xff0c;&#xff0c;其中 j1,...,L&#xff08;L个类&#xff09;&#xff0c;如…

条件概率、联合概率

条件概率的条件已经发生了&#xff0c;而联合概率的两个事件不一定发生。 图中可以看出 等式左边是联合概率&#xff0c;联合概率是指两个事件同时发生的概率&#xff0c;与条件概率不是一回事&#xff0c;条件概率的条件已经发生。 万普尼克理论&#xff1a;

贝叶斯网络的联合概率到底有什么用:贝叶斯理论(4)

上篇博客我们描述了如何计算贝叶斯网络联合概率的方法。这里再举一个例子&#xff1a; 上图这个例子中&#xff0c;事件a导致了b和c的发生。假设a有、、三种状态&#xff0c;b有、两种状态&#xff0c;c有、&#xff0c;a的每个状态的先验概率是&#xff1a; 0.30.50.2 b对a的…

机器学习之条件概率,联合概率,贝叶斯定理详解

文章目录 前言边缘概率联合概率定义分析 条件概率定义问条件概率能举个例子吗问条件概率在图中表示的是哪一块呢&#xff1f;条件概率习题&#xff1a; 全概率定义推导全概率习题 贝叶斯公式定义推导贝叶斯定理习题 结束语 前言 条件概率&#xff0c;边缘概率&#xff0c;联合…

概率论中的联合概率理解

最近在看信息论中的概念&#xff0c;对于联合熵的概念比较混乱&#xff0c;从而引发出对联合概率的思考&#xff0c; 当提到联合概率的时候大家都会看到这么一个图&#xff1a; 学习概率论是这样理解还可以&#xff0c;还能解释条件概率&#xff0c;总体挺好的&#xff1b; 但…

5分钟理解边缘概率,联合概率,条件概率,随机事件独立,随机事件依赖

在隐马尔可夫&#xff08;HMM&#xff09;和条件随机场&#xff08;CRF&#xff09;中有很多概率计算问题&#xff0c;要想理解他们&#xff0c;必须先把概率的一些概念及计算公式搞清楚。本文旨在用形象的图形和具体事例来讲解这些概念和公式&#xff0c;以帮助理解。这里讲的…

联合概率和条件概率的区别和联系

联合概率P(A∩B) 两个事件一起&#xff08;或依次&#xff09;发生的概率。 例如&#xff1a;掷硬币的概率是 ⁄₂ 50%&#xff0c;翻转 2 个公平硬币的概率是 ⁄₂ ⁄₂ ⁄₄ 25%&#xff08;这也可以理解为 50% 的 50%&#xff09; P(A ∩ B) P(A) ⋅ P(B) 对于 2 个硬…

联合概率和条件概率区别

为什么从定义上看&#xff0c;觉得联合概率和条件概率是一个意思&#xff1f; P(A|B) 和 P(AB) 这俩真的不是一个东西吗&#xff1f;&#xff1f; 碎碎念开始&#xff0c;正文请跳往第2分割线 虽然我产生了这种疑问&#xff0c;但我的直觉告诉我&#xff1a;大概是个傻逼。于…

联合概率(joint probability)、分布函数(distribution function)

0. PMF 与 PDF 的记号 PMF&#xff1a; PX(x) PDF&#xff1a; fX(x) 1. 联合概率 联合概率&#xff1a;是指两个事件同时发生的概率。 P(A,B)P(B|A)⋅P(A)⇒P(B|A)P(A,B)P(A) P(A,B)=P(B|A)\cdot P(A) ⇒ P(B|A)=\frac{P(A,B)}{P(A)}因此当两事件独立时&#xff0c; P(A,B)P…

条件概率和联合概率

表示两个事件共同发生百的概率。 A与B的联合概率表示为 P(AB) 或者P(A,B)&#xff0c;或者P(A∩B)。 在概率论中&#xff0c;联合概率是指在多元的概率分布中多个随机变量分别满足各自条件的概率。 举例说明&#xff1a;假设X和Y都服从正态分布&#xff0c;那么P{X<4,Y&l…

联合概率

在机器学习经常出现联合概率&#xff0c;总是困扰者我。因此记录一下 联合概率分布简称联合分布&#xff0c;是两个及以上随机变量组成的随机向量的概率分布。根据随机变量的不同&#xff0c;联合概率分布的表示形式也不同。 对于离散型随机变量&#xff0c;联合概率分布可以以…

条件联合分布的分解

前言 有挺长一段时间没有更新博客了&#xff0c;一方面是学校期末考试&#xff0c;后来又看了一些很基础的编程数学思想的东西&#xff08;《程序员的数学》第一卷&#xff09;&#xff0c;大多数东西都在之前的学习和使用中都有注意到&#xff0c;所以没有什么特别值得更新的…

概率统计篇:概率基础(联合概率、条件概率和贝叶斯法则)[第二天]

联合概率&#xff1a;由多个随机变量决定的概率我们就叫联合概率&#xff0c;它的概率分布就是联合概率分布。 边缘概率&#xff1a;对于离散型随机变量&#xff0c;我们可以通过联合概率 P(x, y) 在 y 上求和&#xff0c;就可以得到 P(x)。对于连续型随机变量&#xff0c;我们…

什么是联合概率分布?

联合概率分布简称联合分布&#xff0c;是两个及以上随机变量组成的随机向量的概率分布。根据随机变量的不同&#xff0c;联合概率分布的表示形式也不同。对于离散型随机变量&#xff0c;联合概率分布可以以列表的形式表示&#xff0c;也可以以函数的形式表示&#xff1b;对于连…

强迫症有哪些表现呢?

不知道大家有没有过这样的经历呢~ 明明自己已经把全部的电源开关都关了&#xff0c;可是当要出门的时候还是再检查很多遍。 有时候&#xff0c;已经出门了&#xff0c;还是忍不住回去检查很多次。 手已经洗干净了&#xff0c;但还是得再洗几遍&#xff0c;甚至洗破皮。 其实…