欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 高考 > 【ARM Hypervisor And SMMU 系列 2 -- VT-d DMA Remapping 】

【ARM Hypervisor And SMMU 系列 2 -- VT-d DMA Remapping 】

2024/10/25 6:27:10 来源:https://blog.csdn.net/sinat_32960911/article/details/141358640  浏览:    关键词:【ARM Hypervisor And SMMU 系列 2 -- VT-d DMA Remapping 】

文章目录

    • Device Passthough
      • Device Passthough 实现
    • VT-d DMA Remapping
      • DMA Remapping 简介
      • DMA隔离实现
      • DMA隔离和地址翻译

Device Passthough

设备直通(Device Passthrough)是一种虚拟化技术,允许虚拟机(VM)直接访问物理硬件设备,而不需要通过虚拟化层的中介。这种技术提供了接近于原生的性能,并且在某些应用场景下具有重要的意义,例如高性能计算(HPC)、高性能网络和存储应用等。以下是对设备直通的详细介绍。

在传统虚拟化环境中,虚拟机通过虚拟化层(如 KVM、Xen、VMware ESXi 等)与硬件设备交互。虽然这种方法提供了设备抽象和管理的便利,但会增加额外的开销,导致性能下降。 设备直通技术通过允许虚拟机直接访问物理设备,消除了这些中介层,从而提高了性能。这对于需要高吞吐量和低延迟的应用程序尤为重要。

Device Passthough 实现

VT-d 是 Intel 提供的一种 I/O 虚拟化技术,允许虚拟机管理程序(Hypervisor)将物理设备直接分配给虚拟机,并通过 IOMMU(I/O Memory Management Unit)进行 DMA 和中断重映射。

IOMMU 是一种硬件单元,用于管理 I/O 设备的内存访问,提供地址转换和访问控制。它确保设备只能访问分配给它的内存区域,防止 DMA 攻击。

VT-d DMA Remapping

首先回顾下什么是 DMA?
DMA是指在不经过CPU干预的情况下外设直接访问(Read/Write)主存(System Memroy)的能力。 DMA带来的最大好处是:CPU不再需要干预外设对内存的访问过程,而是可以去做其他的事情,这样就大大提高了CPU的利用率。

设备直通(Device Passthough)的虚拟化场景下,直通设备在工作的时候同样要使用DMA技术来访问虚拟机的主存以提升IO性能。那么问题来了,直接分配给某个特定的虚拟机的,我们必须要保证直通设备DMA的安全性,一个VM的直通设备不能通过DMA访问到其他 VM 的内存同时也不能直接访问 Host 的内存,否则会造成极其严重的后果。

因此,必须对直通设备进行 “DMA隔离(DMA isolation)” 和 “DMA地址翻译”,隔离将直通设备的DMA访问限制在其所在VM的物理地址空间内保证不发生访问越界,地址翻译则保证了直通设备的 DMA 能够被正确重定向到虚拟机的物理地址空间内。

为什么直通设备会存在DMA访问的安全性问题呢ÿ

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com