IO虚拟化解决方案

IO虚拟化是虚拟化领域最大的瓶颈,也是整个IT架构里面的一个瓶颈。

纯软件实现的IO虚拟化

优点:软件模拟不需要硬件的支持,通过CPU计算来模拟,跟宿主机物理网卡隔离,没有平台要求。虚拟机的操作系统不需要修改,模块的都是赏见的网上,主流操作系统都自带这些驱动,因为默认情况下虚拟机不需要再安装驱动 。

缺点:CPU资源消耗大,尤其当虚拟机数量多的时候。网卡的性能一般,由于软件模拟,只能模拟常见的,功能比较简单的网卡,现在已经基本不用了,因为功能太过单一,已经不能满足需求了。

半虚拟化IO

半虚拟化由于要更改代码,所以虚拟机的网卡驱动只能由VMM厂商来开发,redhat,wmwarecitrixmicrosoft这几大虚拟厂商都有各自己的适用于半虚拟化的驱动,每当OS要使用驱动的时候都会主动向VMM通知,由VMM代替它进行调用 。

优点:由于虚拟机与VMM之间有了通信,所以性能比纯软件的虚拟化要好很多。

缺点:需要修改虚拟机的子系统的内核,只适用于LINUX内核。

直通访问IO

VMM直接将一个PCI(网卡、USB、光驱)设备直接分配给指定虚拟机单独访问,为了安全和稳定性考虑,直接访问通常要结合intel VT-D来使用。

优点:性能好。单独的PCI设备分配给虚拟主机,虚拟主机直接跟物理机设备通信。

扫描二维码关注公众号,回复: 2882591 查看本文章

缺点:设备只能被一个虚拟机的使用,配置也比较复杂。

升级版的直通访问技术:(当前正在使用)

解决,升级版的直通访问技术解决了一个设备只能被一台虚拟机访问的问题,但是需要多个硬件的配合才能实现。

主要于CPU、芯片组和PCI设备协同配合才能实现,效率大大增加,被称赞为解决了虚拟化最后一公里的问题,架构图如下:

image.png

PCI设备虚拟成多个设备(VF),然后把这个我个设备映射到OS里面,这样多个OS可以同时使用一个物理PCI设备,而且效率还比较高。


猜你喜欢

转载自blog.51cto.com/13778749/2162151