OVS笔记

Linux-虚拟网络设备-OpenvSwitch(持续更新) 概述      OpenvSwitch,简称OVS是一个虚拟交换软件,主要用于虚拟机VM环境,作为一个虚拟交换机,支持Xen/XenServer, KVM, and VirtualBox多种虚拟化技术。 在虚拟化平台上,OVS 可以为动态变化的端点提供 2 层交换功能,很好的控制虚拟网络中的访问策略、网络隔离、流量监控等等。     OVS 遵循 Apache 2.0 许可证, 能同时支持多种 阅读详情

一.OpenVSwitch是什么

OVS是一个高质量的,多层虚拟交换机(网络分层的层),其目的是让大规模网络自动化可以通过编程扩展,同事仍然支持标准的管理借口和协议:NetFlow,SFlow等,并且它还支持多个物理机的分布式环境。

什么是虚拟交换?就是利用软件的方式形成交换部件,所以也叫软件交换机,跟传统的物理交换机相比,虚拟交换机同要具备很多优点:1配置灵活,因为是软件实现的,一台物理服务器上可以配置书十台或者数百台虚拟交换机,而且端口数目可以灵活选择。2成本低,通过软件的方式可轻易达到10Gbps的交换速度。  所以OVS是一个虚拟交换机,可以用来组成虚拟网络,虚拟机还有其他类型的不同的架构。

二.虚拟网络

浅显的理解就是使用虚拟交换机组成的网络,就是虚拟网络(和物理网络相比),如图所示:

 

三.OVS组件

OVS的内部组件,简单来看,OVS由着三大不封构成:

 

1.OVSDB-server:OVS的数据库服务器,用来存储虚拟交换机的配置信息。它与manager和ovs-vswitch交换信息使用了OVSDB(json-rpc)的方式。

2.Ovs-vswitchd:OVS的核心部件,它和上层controller通信遵从OPENFLOW协议,它与ovsdb-sever通信使用OVSDB协议,它和内核模块通过netlink通信,它支持多个独立的datapath(网桥),它通过更改flowtable实现了绑定,和VLAN等功能。

3.ovs kernel module: OVS的内核模块,处理包交换和隧道,缓存flow,如果在内核的缓存中找到转发规则则转发,否则发向用户空间去处理。

四、OVS结构详解

      OVS到底由哪些模块组成,以及个模块的作用。如图:

    

ovs-vswitchd 主要模块,实现switch的daemon,包括一个支持流交换的Linux内核模块;

ovsdb-server 轻量级数据库服务器,提供ovs-vswitchd获取配置信息;

ovs-brcompatd 让ovs-vswitch替换Linuxbridge,包括获取bridge ioctls的Linux内核模块;

ovs-dpctl 用来配置switch内核模块;一些Scripts and specs 辅助OVS安装在Citrix XenServer上,作为默认switch;

ovs-vsctl 查询和更新ovs-vswitchd的配置;

ovs-appctl 发送命令消息,运行相关daemon;

ovsdbmonitorGUI工具,可以远程获取OVS数据库和OpenFlow的流表。

此外,OVS也提供了支持OpenFlow的特性实现,包括

ovs-openflowd:一个简单的OpenFlow交换机;

ovs-controller:一个简单的OpenFlow控制器;

ovs-ofctl 查询和控制OpenFlow交换机和控制器;

ovs-pki :OpenFlow交换机创建和管理公钥框架;

ovs-tcpundump:tcpdump的补丁,解析OpenFlow的消息;

运行原理:

内核模块实现了多个“数据路径”(类似于网桥),每个都可以有多个“vports”(类似于桥内的端口)。每个数据路径也通过关联一下流表(flow table)来设置操作,而这些流表中的流都是用户空间在报文头和元数据的基础上映射的关键信息,一般的操作都是将数据包转发

到另一个vport。当一个数据包到达一个vport,内核模块所做的处理是提取其流的关键信息并在流表中查找这些关键信息。当有一个匹配的流时它执行对应的操作。如果没有匹配,它会将数据包送到用户空间的处理队列中(作为处理的一部分,用户空间可能会设置一个流

用于以后碰到相同类型的数据包可以在内核中执行操作)。

五、示例

1. 物理机器之间通过虚拟交换机

可以看到虚拟机的两个网卡是虚拟交换机虚拟出来的两个端口。

2. 一台物理机上的虚拟机之间的虚拟交换机

 

【linux命令】OVS命令以及了解 OVS简单命令以及基础了解 阅读详情

相关推荐

OVS练习笔记20250518

本文详细介绍了在Ubuntu系统中安装和配置Open vSwitch(OVS)的过程,以及如何通过OVS实现虚拟机之间的网络互通。

zkyqss的博客 1335

云计算:Linux 部署 OVS 集群(服务端)实现VXLAN

原始数据(二层包)封装在UDP,原端口随机,目的端口为4789。观察抓取的流量(源端口一直在变化,目的端口都为4789)(5)ovs_server02创建云主机。(4)ovs_server01创建云主机。云主机1 ping 云主机2 ,目前不通。云主机1 ping 云主机2 ,目前已通。(13) 流量抓包(Wireshark)(14)流量分析(Wireshark)(12)流量抓包(tcpdump)云主机1 ping 云主机2。云主机1 ping 云主机2。(7)查看云主机网卡并修改。

cronaldo91的博客 2563

ovs命令学习笔记

Open vSwitch(下面简称为 OVS)是由 Nicira Networks 主导的,运行在虚拟化平台(例如 KVM,Xen)上的虚拟交换机。在虚拟化平台上,OVS 可以为动态变化的端点提供 2 层交换功能,很好的控制虚拟网络中的访问策略、网络隔离、流量监控等等。 OVS 遵循 Apache 2.0 许可证, 能同时支持多种标准的管理接口和协议。OVS 也提供了对 OpenFlow 协

Sherry_Rui的专栏 3057

云计算:Linux 部署 OVS 集群(控制端)实现OpenFlow

ovs_server02的MAC地址为 00:0c:29:d5:c1:24 ,openflow流表为52241482020。ovs_server01 的MAC地址为00:0c:29:50:7a:08,openflow流表为52232747528。ovs_server02的云主机需要从2口进,1口出。ovs_server01的仅主机网卡为ens36。ovs_server02的仅主机网卡为ens36。(12)cloudserver02云主机修改网卡。(5)服务端云交换机添加物理端⼝(仅主机网卡)

cronaldo91的博客 2480

【ovs】Ovs+dpdk上通过vhostuser与虚拟机通信(实践笔记)

本文仅是在ovs+dpdk上尝试vhu接口通信的记录文档,不做原理性的分析。

Asia Wong的博客 2738

OVS Faucet Tutorial笔记(上)

本文介绍了如何使用Faucet控制器配置Open vSwitch(OVS)实现SDN交换功能。

zkyqss的博客 952

ovs原理与实践

相比于其它虚拟交换机/网桥(例如docker0和普通的linux bridge),ovs有着更加丰富的功能和生态,目前在openstack和kubernetes容器网络(ovn-kubernetes、kube-ovn)都能看到它的身影。本文仅仅简单介绍了ovs的基本原理和单机使用,后续会更新ovs跨主机隧道通信和ovn/ovs等内容,敬请期待。...

weixin_60043341的博客 9985

到底什么是电源的斜波补偿,电源芯片CS引脚作用,一文讲清楚!

上文有提到电流环,其实电流环再细分也有很多模式,用的最多的是峰值电流模式峰值电流模式调节工作原理如下:(1)当输出负载增大时,输出电压降低,因此,Vc 增大,线性增加的电感电流只有升高到更大的值才能使 PWM 电流比较器翻转,开关管导通的时间增长,占空比增加,输入功率增加,因此输出电压增加,当输出电压增加到调节的范围内时,系统保持平衡。

jwgdhuwdhg的博客 1万+

ovs相关快速查找笔记

OVS相关快速查找笔记 研究生一年总结的ovs相关笔记,感谢mininet和ovs和openflow陪伴我这么久,都磨出感情了。 虽然一年了还是没有什么长进,这个笔记还是值得record的。加油吧! 代码路径 #内核态代码: /ovs/datapath/veridp-* #用户态:/ovs/lib/ #只有内核流表匹配失败的时候才会upcall到用户态去查,入口函数在/ovs/datapath/actions.c下的do_execute_actions,然后转veridp的pipeline处理。 ip操

qq_37622344的博客 1211

Sentinel2 哨兵2数据下载方法(USGS)-史上最全讲解

本文讲述了从USGS官网下载Sentinel2的方法。主要包括USGS官网的注册和下载流程,以及选定研究区中所出现的问题、解决办法。

xiatiandexia123的博客 6万+

利用VBA宏实现LightTools仿真数据自动化导出至Excel

本文详细介绍了如何利用VBA宏实现LightTools仿真数据自动化导出至Excel的完整流程。通过调用LTAPI接口,工程师可以自动执行仿真、抓取照度与光强等数值数据、捕获并粘贴仿真图像,从而将重复性工作自动化,显著提升光学设计工作的效率和准确性。

weixin_28314575的博客 502

OVS代码笔记

OVS代码笔记 >> 原创文章,转载请保留地址,欢迎交流学习 ovsdb-client: 从main开始分析: 1、for (command = get_all_commands(); ; command++) { if (!command->name) { VLOG_FATAL("unknown command '%s';...

老五的作坊 811

MATLAB多项式计算

MATLAB多项式计算 在MATLAB中,n次多项式用一个长度为n+1的行向量表示(因为是n个幂次项系数加上一个常数项),缺少的幂次项系数为0。 例如 n次多项式: P(x)=anxn+an-1xn-1+an-2xn-2+…+a1x+a0 表示为: [an,an-1,an-2,…,a1,a0] 目录MATLAB多项式计算1.多项式的加减运算2.多项式的乘法运算3.多项式的除法运算4.多项式的导函数5.代数多项式求值6.矩阵多项式求值7.多项式求根 1.多项式的加减运算 事实上,多项式的加减运算就是其所对应的

路遥芝麻的博客 1万+

OVS框架以及源码笔记1

引言 是基于2.3.90的版本 1.OVS网络架构 OVS全名字Openvswitch,是一个虚拟交换机,支持Open Flow协议,被远端的controller通过Open Flow协议统一管理着,从而实现对接入的虚拟机(或设备)镜像组网和互通,整体组网结构如下: 2.OVS内部架构 ovs-vswitchd 是主要模块,实现vswitch的守护进程daemon ovsdb-server 是轻量级数据库服务器,用于ovs的配置信息 ovs-vsctl通过和ovsdb-server通信,查询和更新v

nb_zsy的博客 2654

大模型-高通平台性能测试示例-2

在QNN中,可以使用(genis-t2t-run)和这两个工具来进行推理的性能分析。支持在QNX操作系统或Android操作系统上进行性能分析。:提供基本的性能数据,如运行时间、资源消耗等。:提供更详细的性能数据,可能包括各个操作的执行时间、资源使用情况等。:是指在性能分析的同时进行代码质量检查,以发现潜在的问题。:是指跟踪和分析神经网络中各个操作的性能,以优化网络结构或参数。

点滴的岁月 1493

YOLOv8 更换损失函数DIoU、EIoU、GIoU...Inner-IoU...

介绍了一些损失函数,并将其应用到yolov8训练中

分享一些自己改进代码的实例 888

OVS Faucet Tutorial笔记(下)

通过YAML配置、流表分析和报文测试,验证Faucet控制器实现三层路由和ACL控制的能力,并对性能优化机制进行了描述。

zkyqss的博客 1277

SQL进阶技巧:数据预处理如何对数据进行分桶【分箱】?

本文详细介绍了数据分析中常见的几种分桶方式:基于业务规则的分桶、等距分桶及等频分桶等,针对每种分桶方式给出了SQL实现

石榴姐yyds 4020

ovs笔记

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33971205的博客 164

华为OD机试 - 机器人活动区域(Python/JS/C/C++ 双机位C卷 200分)

本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。现有一个机器人,可放置于 M × N的网格中任意位置,每个网格包含一个非负整数编号。当相邻网格的数字编号差值的绝对值小于等于 1 时,机器人可在网格间移动问题:求机器人可活动的最大范围对应的网格点数目。说明:1)网格左上角坐标为 (0, 0),右

学Java,找哪吒 1434

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

OVS使用笔记(四十三)

一、open vswitch常用操作 ovs-vsctl 查询和更新ovs-vswitchd的配置 添加网桥: ovs-vsctl add-br br0 列出open vswitch中的所有网桥: ovs-vsctl list-br 判断网桥是否存在: ovs-vsctl br-exists br0 将物理网卡挂接到网桥: ovs-vsctl add-port br0 eth0 列出网桥中的所有端口: ovs-vsctl list-ports br0 列出所有挂接到网卡的网

bob的博客 7994

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

ovs datapath笔记

ovs datapath笔记 转载于:https://www.cnblogs.com/wangjq19920210/p/9714858.html

weixin_30772105的博客 212

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

OVS 学习笔记

OVS常用命令与使用总结_云云生息的专栏-优快云博客_ovs命令

wjw7869的专栏 263

floodlight ovs 更改拓扑_OVS 设计与实现论文阅读笔记

熟悉我的人最近可能知道我这一年的精力基本都扑在 kube-ovn这个项目上,自然而然的接触了很多 ovs 社区的知识。而这篇论文其实很早就看到了,但是当时很多概念都理解不了。经过一年后再翻开发现已经能明白一些了,于是做一下阅读心得和自己的思考。当然论文里的一些东西其实还是理解的比较模糊,有什么不对的地方希望大佬们可以指正。概述这篇论文发表在 NSDI‘15 上,是网络系统学术领域中相当好的一个会议...

weixin_39901685的博客 319

SDN软件交换机OVS笔记

OVSOpenvSwitch 以其丰富的功能,作为多层虚拟交换机,已经广泛应用于云环境中。Open vSwitch的主要功能是为物理机上的VM提供二层网络接入,和云环境中的其它物理交换机并行工作在Layer 2。在早期OVS的版本中,为缓解多级流表查表慢的问题,OVS在内核态采用Microflow Cache方法。Microflow Cache是基于Hash的精确匹配查表(O(1)),表项缓存了多...

hzx5200693的博客 4010
上一篇: DPDK框架原理简介 (0002转)
下一篇: Centos 启动盘制作与安装以及遇到的问题
废言Pro
博客等级 码龄16年 1093粉丝 142原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值