首页/心系八方/正文
从技术演进角度谈Linux现有的及即将到来的设备虚拟化技术

 2025年05月07日  阅读 3

摘要:第01部分前言设备虚拟化技术一直是云计算领域中最重要的基本技术之一。我们在虚拟机中看到的各种设备,例如网络卡,磁盘,键盘,鼠标等,与该技术的帮助密不可分。在本文中,我们将从技术进化的角度讨论现有的和即将到来的设备虚拟化技术。第02部分陷阱在最早的阶段...

第01部分

前言

设备虚拟化技术一直是云计算领域中最重要的基本技术之一。我们在虚拟机中看到的各种设备,例如网络卡,磁盘,键盘,鼠标等,与该技术的帮助密不可分。在本文中,我们将从技术进化的角度讨论现有的和即将到来的设备虚拟化技术。

第02部分

陷阱

在最早的阶段,设备虚拟化通常与机器模拟器技术(例如QEMU)结合在一起。我们可以通过QEMU模拟真实设备的所有寄存器布局和操作过程。当QEMU虚拟机中的设备驱动程序需要访问虚拟设备的寄存器时,此访问说明将被困在QEMU并由QEMU处理。这样,虚拟机中的设备驱动程序就像在操作虚拟设备时访问真实硬件设备一样,设备驱动程序不需要任何更改。

第03部分

上述陷阱和方法用于模拟设备。尽管无需更改真实的设备驱动程序,但是设备访问期间频繁的入侵和流出带来了严重的性能问题。因此,这种双重虚拟化技术成立,并于2008年加入了核心主线。

与陷阱和陷阱相比,此方法不再限制依靠现有的设备驱动程序,而是定义了专用于虚拟设备的新驱动程序框架。设备驱动程序知道它正在操作虚拟设备,因此它避免了大量的MMIO/PIO操作,这些操作可能会在真实的I/O路径上引起陷阱和耗尽,从而提高性能。虚拟机和QEMU模拟的设备中的驱动程序之间的数据相互作用本质上是基于共享内存 +环队队列的通信机制。核心数据结构()包括:两个(环,二手环)和一个。工作机制类似于DMA。虚拟机中的驱动程序将首先写入要求将内存中传输到一个描述符中的哈希的地址和长度,然后将相应的描述符写入环,并通过机制通知主机。由于这些和哈希人都在共享内存中(虚拟机本质上是用户态过程,因此用户应用和分配虚拟机内存,可以给予其他进程,例如SPDK,DPDK等),因此,可以直接访问和获得哈希的地址和长度,然后直接访问这些。处理该请求后,将数据填充到相应的数据中,并将相应的数据写入使用的环中,并通过机制注入中断通知虚拟机中的驱动器。

第04部分

提出技术后,通常在QEMU中模拟设备,数据传输和接收必须通过QEMU,然后通过虚拟机内传递。但是逐渐地,开发人员发现,在模拟网卡时,QEMU中的数据传输和接收最终需要通过系统调用将内核捕获到内核中,以操作网卡硬件以进行实际数据传输和接收。因此,是否有任何方法可以优化从Qemu到内核的上下文切换以及带来的其他副本?

内核社区最终在2010年合并了这项技术,以通过将数据平面处理为内核线程进行优化。这样,通信机制从原始的QEMU用户态I/O线程和虚拟机驱动程序(QEMU用户态VCPU线程)转变为内核I/O线程和虚拟机驱动程序(QEMU用户态vcpu vcpu线程)通信。内核I/O线程获得数据包后,它直接转到内核协议堆栈和网卡驱动程序进行处理,从而优化了QEMU的额外开销到内核状态。

第05部分

VFIO

虚拟化技术中主流和成熟_主流虚拟化技术有哪些_目前主流的虚拟化架构有哪几种

随着云计算量表的持续扩展,用户不再对这种偏金属化设备带来的性能经验感到满意,另一方面,难以实现的设备(例如GPU)的应用程序场景每天都在增加。在此背景下,提出了VFIO技术,并于2012年加入了核心主线。VFIO是全名I/O。它实际上是用户状态设备驱动程序框架。与较早的UIO用户状态设备驱动程序框架相比,VFIO可以有效地使用硬件机制进行安全隔离,因此可以在诸如具有多租户需求的云计算等方案中广泛使用。

如上图所示,通过VFIO,QEMU可以直接连接虚拟PCI设备的数据链接和物理PCI设备。当虚拟机中的设备驱动程序访问虚拟PCI设备的条形空间时,通过EPT机制,这一次将将MMIO访问重定向到真实物理设备的相应条形空间位置,而不再需要捕获QEMU。这样,虚拟机驱动程序可以直接以接近零的消耗方式直接访问真实的物理设备,并且性能可以是最佳的。同时,VFIO驱动程序使用设备DMA并中断重新映射。一方面,它扮演一个隔离角色,即虚拟机无法操作VFIO Pass-设备以启动DMA并中断同一主机上的其他虚拟机。另一方面,它还确保设备可以在执行DMA时通过给定的虚拟机理地址直接访问正确的物理内存。

第06部分

-用户

尽管VFIO可以将I/O性能经验接近物理机器带到虚拟机上,但该技术仍然存在缺陷,也就是说,它不支持热迁移,并且具有VFIO设备的虚拟机将无法执行像带有设备的传统虚拟机一样执行热迁移。这使开发人员探索了可以满足性能要求并具有操作和维护灵活性的新设备虚拟化技术。 2014年,QEMU社区共同纳入的 - 使用技术就是其中之一。由于QEMU和螺纹模型对I/O性能的优化不友好,因此每个虚拟机都将线程分开以处理I/O。从系统的全局角度来看,这种方法可能不是最佳的,-user提出了一种新方法,即将设备的数据平面处理到另一个专用过程。这样,由于它是一个专门的过程,因此线程模型不再受传统QEMU和线程模型的限制,并且可以随意优化。同时,它还可以以1:m的方式同时处理多台虚拟机的I/O请求。与此内核线程方法相比,用户流程在操作和维护方面更加灵活。 - 用户框架在引入开始时已广泛关注,并扩展了新的虚拟机I/O服务模型,例如SPDK和OVS-DPDK,并以 +用户态驱动程序为核心。

第07部分

VFIO-MDEV

在实际的应用程序方案中,除了不支持前面提到的热迁移的问题外,还有另一个限制,即设备只能传输到虚拟机且无法实现资源共享。 SR-IOV技术可以在某种程度上解决此问题,也就是说,将物理PCI设备从硬件级别划分为多个VF,并将其传递给多个虚拟机供使用。但是,许多设备可能没有SR-IOV功能。因此,内核社区于2016年合并到VFIO-MDEV技术框架中,希望提供标准接口,以帮助设备驱动程序实现软件级资源细分,并使用VFIO技术将其传递给虚拟机。

该技术实质上在内核中实现了虚拟设备()总线驱动程序模型,并已在VFIO内核框架上扩展,从而增加了对MDEV(MDEV BUS)等虚拟设备的支持。从原始支持中,仅从标准硬件PCI设备和硬件设备(例如PCI bar )获得透明信息,它已成为一个虚拟设备接口,该界面既支持从硬件设备中直接获取,又可以从MDEV 定义获得。例如,这样的方式,当需要通过实现适当的MDEV设备驱动程序来将PCI设备的条形空间拆分为资源时,可以分别以4KB(页面大小)将条形空间分别传输到粒度的不同虚拟机。

第08部分

VDPA

目前主流的虚拟化架构有哪几种_虚拟化技术中主流和成熟_主流虚拟化技术有哪些

VFIO和这两种技术一直是最主流设备虚拟化技术。 VFIO可以将硬件资源直接传递给虚拟机,以供使用,具有最佳性能和稍微较低的性能,但优势在于它更灵活。那么可以结合两者的优势吗? VDPA技术框架于2020年合并为核心主线,是为了实现这一目标。

VDPA的全名是数据路径,这意味着一种设备:这种类型的设备的数据表面处理严格遵循协议规范,即,驾驶员和设备将根据第三部分中提到的通信过程进行通信,但是控制路径,但驾驶员的频率和驾驶员的特征是驾驶员以及驾驶员的各个范围,以及驾驶员的范围,以及驾驶员的范围,以及驾驶员的范围,以及驾驶员的范围,以及驾驶员的范围,以及驾驶员的范围,以及驾驶员的范围,以及驾驶员的范围。遵循协议。这样做的优点是,它可以在实施此类设备时降低制造商的复杂性。

为了应用这种类型的设备,内核提出了一个技术框架,例如VDPA。该技术框架基本类似于VFIO-MDEV,并且还实现了虚拟设备(VDPA)总线驱动程序模型。与VFIO-MDEV不同,通过VDPA框架虚拟化的设备可以由虚拟机使用,可以直接从主机(例如容器)访问。所有这些都归因于符合协议规范的VDPA设备的数据路径,因此可以由驱动程序在主机上直接访问。同时,该技术框架扩展了内核子系统,并给出了类似于VFIO技术框架的功能,从而允许VDPA设备使用的硬件资源(环,寄存器等)传递到虚拟机进行数据通信。这样,当虚拟机驱动程序进行数据通信时,他们也直接访问硬件资源,而不再需要通过, - 用户等处理。更重要的是,由于虚拟机驱动程序是原始驱动程序,因此在支持热迁移时,QEMU可以灵活地切换软件仿真方法以确保热迁移的顺畅进度。通过这种方式,设备虚拟化技术框架VDPA不仅可以确保最佳性能,而且可以保持设备的灵活性,而且还可以统一虚拟机和容器的I/O技术堆栈。

第09部分

通过上述VDPA技术框架,我们基本上解决了在虚拟机场场景中长期以来通过设备虚拟化技术暴露的一些问题,更重要的是,它也将技术带入了容器场。但是,此技术框架仍然存在问题,即它需要支持硬件设备的支持。回想上述提到的, - 用户本质上是软件定义的虚拟设备。因此,VDPA技术框架是否可以使用软件定义的设备?该技术用于实现这一目标。通过在用户流程中实现软件定义的VDPA设备,我们可以通过上述VDPA框架访问或子系统,以供容器或虚拟机使用。

这项技术是由我们独立开发的,并于去年10月正式开放给内核社区。在此阶段,我们的计划已集成到内核主线中,并将在5.15版中与您会面。同时,我们还将在9月15日举行的虚拟化领域的高端技术论坛KVM上在线共享。

第10部分

结论

从服务虚拟机到支持容器,从纯软件仿真到硬件直接访问软件和硬件集成,设备虚拟化技术在过去几十年中一直在不断发展朝着极端性能和应用程序灵活性发展。随着云原生的浪潮和主要硬件制造商的进入,软件和硬件的新组合继续出现。我们认为,将来会更令人兴奋的技术等待我们。

参考链接

〜/-spec/ - 。pdf

版权声明:本文为 “博览广文网” 原创文章,转载请附上原文出处链接及本声明;

原文链接:http://wen.bjhwtx.com/post/31432.html

标签:

博览广文网

博览广文网为所有文学爱好者、新闻爱好者、关注生活多方面内容的观众朋友提供多方位的内容呈现、提升阅读空间、填充碎片时间,开阔读者的视野、增长见识、了解民生、一个让您不出户尽知天下事的网站平台!
热门标签
关于我们
广文舒阅网—让天下读者有家可归!这里汇聚了各类优质文化信息,无论是全球热点、历史故事,还是实用百科、趣味探索,您都能轻松获取。我们希望用阅读点亮您的世界,让每一次浏览都充满收获和乐趣。
导航栏A标题
广文舒阅网
扫码关注
联系方式
全国服务热线:0755-88186625
Q Q:8705332
Email:admin@lanyu.com
地址:深圳市福田区海雅缤纷国际大厦5层501
Copyright 深圳市蓝宇科技有限公司 版权所有 备案号:粤ICP备80126003-03号