intel虚拟化VT-dVT-xVT-c的区别
intel 虚拟化 VT-d VT-x VT-c 有什么区别,各是什么意思,有什么作⽤
简单描述理解 VT-d VT-x VT-c
VT-d 英⽂全程为 Virtualization Technology for Directed I/O
其中 VT 是 Virtualization Technology 的缩写,d代表Directed
VT-d 的 Intel 官⽅中⽂名称是定向 I/O 虚拟化技术,这个技术就是俗称的虚拟化直通技术,就是允许宿主机将某些硬件资源(⽐如硬盘、显卡、⽹卡)的管辖权直接移交给虚拟机,此时宿主机将不能再使⽤此硬件,虚拟机会以直通独占的⽅式使⽤它们,这种直通的技术带来的好处就是,虚拟机中使⽤该硬件的性能损耗是极⼩的, 改善了 I/O 设备在虚拟化环境中的性能并且隔离更加彻底提⾼了系统的安全性
VT-x 其实就是 Intel Virtualization Technology
⾄于为什么后边有个 x 呢?
是因为英特尔在起名字的时候,将x86平台上的VT技术,称之为VT-x;在Itanium平台上的VT技术,称之为VT-i。
VT-x 是 Intel CPU 的硬件虚拟化技术,提供内存以及虚拟机的硬件隔离,这也是平常我们想在 intel 平台上做虚拟化最基本需要⽀持的技术。
VT-x不仅需要处理器的⽀持,也需要主板、BOIS的⽀持
VT-c 英⽂全程为 Virtualization Technology for Connectivity
VT-c 主要是针对提⾼⽹络 I/O 提供的虚拟化技术,它可以在⼀个物理⽹卡上,建⽴针对虚拟机的设备队列,最⼤限度的提⾼ I/O 吞吐率。
我看⽹上⽂章千篇⼀律的都只是官⽅的介绍⼀下 VMDq 和 VMDc ,甚⾄搞不清 VT-d 和 VT-c 到底有什么区别
其实这个很简单
⼀个数据包的处理,传统⽅式是由虚拟机管理系统(CPU处理)来分配这个数据包到底给到哪台虚拟机,现在是由⽹卡的硬件直接来处理,所以减少了处理延迟,提⾼了效率
和 VT-d 有什么区别?
VT-d 是可以将⼀个物理⽹卡直通给⼀个虚拟机。现在的 VT-c 就很厉害了,可以将⼀个物理⽹卡分成⼗份,分别直通给10个虚拟机,并且这⼗份都是隔离互不影响的,注意,这⾥我⽤了直通两个字,也就是分割成⼗份这个操作是不经过虚拟机管理系统的(也就是不经过CPU),所以 I/O 性能很⾼,并且减少CPU的负载
以上转载来源:www.d3tt
———————————————————————————————————————————————————
1. 虚拟化分软件虚拟化和硬件虚拟化,没有VT-x也能虚拟化,很⽼的机器都可以跑VMWare,因为使⽤了软件虚拟化的⽅式,不过运⾏
效率肯定没有硬件虚拟化的⾼;
2. 硬件虚拟化分两种:CPU层和IO层/芯⽚层,在Intel平台上,CPU层的虚拟化技术叫VT-x,IO层/芯⽚层叫VT-d;flex软件
3. ⼀个CPU/⼀套平台可以同时⽀持VT-x和VTd,或者都不⽀持,或者只⽀持VT-x,决不可能只⽀持VT-d;
4. 现阶段英特尔SNB/IVB平台都能保证⽀持VT-x;
5. AMD的虚拟化技术叫AMD-v;
6. 硬件虚拟化需软件⽀持,例如微软的Hyper-V;
7. 现在主流的处理器基本都⽀持VT-x;———————————————————————————————————————————————————
“为服务器虚拟化选择适当的硬件平台,与选择适当的虚拟化软件⼀样重要。”— IDC
英特尔VT具体包括分别针对处理器、芯⽚组、⽹络的VT-X、VT-D和VT-C技术。
处理器:英特尔虚拟化技术(英特尔VT-x),包括英特尔虚拟化灵活迁移技术( Intel VT FlexMigration)、英特尔VT FlexPriority、英特尔VT 扩展页表(Extended Page Tables)
芯⽚组:英特尔⽀持直接 I/O 访问的 VT虚拟化技术(英特尔VT-d)
⽹络:⽀持连接的英特尔虚拟化技术(英特尔VT-c),包括虚拟机设备队列(VMDq)、虚拟机直接互连(VMDc)
英特尔将硬件辅助虚拟化集成到所有主要的服务器组件中,帮助 IT 机构在每台服务器上整合更多的应⽤和更繁重的⼯作负载,从⽽进⼀步提⾼灵活性、可靠性并降低 TCO。
处理器:英特尔VT-x
英特尔处理器内更出⾊的虚拟化⽀持英特尔VT-x 有助于提⾼基于软件的虚拟化解决⽅案的灵活性与稳定性。通过按照纯软件虚拟化的要求消除虚拟机监视器(VMM)代表客户操作系统来听取、中断与执⾏特定指令的需要,不仅能够有效减少 VMM ⼲预,还为 VMM 与客户操作系统之间的传输平台控制提供了有⼒的硬件⽀持,这样在需要 VMM⼲预时,将实现更加快速、可靠和安全的切换。
此外,英特尔VT-x 具备的虚拟机迁移特性还可为您的 IT 投资提供有⼒保护,并进⼀步提⾼故障切换、负载均衡、灾难恢复和维护的灵活性:
--英特尔VT FlexPriority:当处理器执⾏任务时,往往会收到需要注意的其它设备或应⽤发出的请求或“中断”命令。为了最⼤程度减少对性能的影响,处理器内的⼀个专⽤寄存器(APIC任务优先级寄存器,或 TPR)将对任务优先级进⾏监控。如此⼀来,只有优先级⾼于当前运⾏任务的中断才会被及时关注。
英特尔FlexPriority 可创建 TPR6 的⼀个虚拟副本,该虚拟副本可读取,在某些情况下,如在⽆需⼲预时,还可由客户操作系统进⾏更改。上述举措可以使频繁使⽤ TPR 的 32 位操作系统获得显著的性能提升。(例如,能够将在 Windows Server* 2000上运⾏的应⽤的性能提⾼35%。)
-
-英特尔虚拟化灵活迁移技术(Intel VT FlexMigration):虚拟化的⼀个重要优势是能够在⽆需停机的情况下,将运⾏中的应⽤在物理服务器之间进⾏迁移。英特尔虚拟化灵活迁移技术(Intel VT FlexMigration)旨在实现基于英特尔处理器的当前服务器与未来服务器之间的⽆缝迁移,即使新的系统可能包括增强的指令集也不例外。借助此项技术,管理程序能够在迁移池内的所有服务器中建⽴⼀套⼀致的指令,实现⼯作负载的⽆缝迁移。这便⽣成了可在多代硬件中⽆缝运⾏的更加灵活、统⼀的服务器资源池。
芯⽚组:英特尔VT-d
英特尔芯⽚组内更出⾊的虚拟化⽀持由于每台服务器上整合了更多的客户操作系统,数据进出系统的传输量(I/O 流量)有所增加并且更趋复杂。如果没有硬件辅助,虚拟机监视器(VMM)必须直接参与每项 I/O 交易。这不仅会减缓数据传输速度,还会由于更频繁的 VMM 活动⽽增⼤服务器处理器的负载。这就如同在⼀个繁忙的购物中⼼,每位顾客都不得不通过⼀个门进出该中⼼,并且只能从中⼼经理那⾥得到指⽰。这样不仅会耽误顾客的时间,也会使经理⽆法处理其它紧急事件。
英特尔VT-d 通过减少 VMM 参与管理 I/O 流量的需求,不但加速了数据传输,⽽且消除了⼤部分的性能开销。这是通过使 VMM将特定 I/O
设备安全分配给特定客户操作系统来实现的。每个设备在系统内存中都有⼀个专⽤区域,只有该设备
及其分配的客户操作系统才能对该区域进⾏访问。
完成初始分配之后,数据即可直接在客户操作系统与为其分配的设备之间进⾏传输。这样,I/O 流量的流动将更加迅速,⽽减少的 VMM 活动则会进⼀步缩减服务器处理器的负载。此外,由于⽤于特定设备或客户操作系统的 I/O 数据不能被其它任何硬件或客户软件组件访问,系统的安全性与可⽤性也得到了进⼀步增强。
⽹络:英特尔 VT-c
英特尔I/O 设备内更出⾊的虚拟化⽀持随着企业在虚拟化环境中部署越来越多的应⽤,并利⽤实时迁移来节省功率或提升可⽤性,对虚拟化I/O 设备的要求也在显著提⾼。通过将⼴泛的硬件辅助特性集成到 I/O 设备(该设备⽤于保持服务器与数据中⼼⽹络、存储基础设施及其它外部设备的连接)中,英特尔VT-c 可针对虚拟化进⼀步优化⽹络。从本质上来说,这套技术组合的功能与邮局⾮常相似:将收到的信件、包裹及信封分门别类,然后投递到各⾃的⽬的地。通过在专⽤⽹络芯⽚上执⾏这些功能,英特尔VT-c ⼤幅提⾼了交付速度,减少了 VMM 与服务器处理器的负载。英特尔VT-c 包括以下两项关键技术(当前所有的英特尔万兆位服务器⽹卡及选定的英特尔千兆位服务器⽹卡均可⽀持):
--借助虚拟机设备队列(VMDq)最⼤限度提⾼ I/O 吞吐率:在传统服务器虚拟化环境中,VMM 必须对每个单独的数据包进⾏分类,并将其发送到为其分配的虚拟机。这样会占⽤⼤量的处理器周期。⽽
借助 VMDq,该分类功能可由英特尔服务器⽹卡内的专⽤硬件来执⾏,VMM 只需负责将预分类的数据包组发送到适当的客户操作系统。这将减缓 I/O 延迟,使处理器获得更多的可⽤周期来处理业务应⽤。英特尔VT-c 可将 I/O 吞吐量提⾼⼀倍以上,使虚拟化应⽤达到接近本机的吞吐率。每台服务器将整合更多应⽤,⽽ I/O 瓶颈则会更少。