这篇文章就是Mellanox公司给它的InfiniBand做的一个介绍,和GbE(Gigabit Ethernet)与FC(Fibre Channel)作了比较,阐述了InfiniBand的好处。
Mellanox公司的InfiniBand针对的是服务器虚拟化领域。服务器的虚拟化有以下几点好处:
1. 增加服务器利用率。可以按需动态把应用程序分配到物理机上。
2. 减少宕机时间,增加可靠性。不健康的物理机服务器可以很容易的在不影响运行在之上的服务的情况下关机维护。这可以通过物理机间的无缝迁移实现。而当服务器修好后,又可以把虚拟机迁移回来。
3. 动态资源分配和负载均衡。按负载需要,可以把新增物理资源动态分配给正在运行的VM,或者开启新的VM。同样,也可以把VM迁移到新的资源相对更多的物理机上。
4. 面向服务的体系结构。以上的几个特性,使得服务器资源的分配可以纯粹的根据应用程序和用户的服务需要进行。
现在,IO虚拟化有3中途径。
1. 全虚拟的,基于软件的IO虚拟化。
2. native IO虚拟化:结合了基于软件的虚拟化和基于硬件的虚拟化。
3. 旁路(pass-through),基于硬件的IO虚拟化。
基于软件的IO虚拟化如图所示。VMM在这种情况下作为VM和物理IO适配器间的桥梁。这样有好处也有坏处。
可以增强对老软件的兼容性和VM及应用程序的稳定性。迁移时间少宕机时间。更高的服务器利用率。但这样也限制了运行在服务器上VM的数量,同时伴随着更小的IO带宽和更大的IO延迟。
用Mellanox的InfiniBand用CIOV(Channel I/O Virtualization)技术能用于基于软件的IO虚拟化,这样不仅可以有软件虚拟化有点,而且可以让网络和存储域网络共享适配器,一个适配器还可以被共享为多个物理适配器。
CIOV用更小的开销实现了更好的性能。文章接着列举了两种方案证实他的观点。native IO虚拟化解决方案
VM和物理IO适配器间传递的数据绕开了VMM,但控制路径和内存映射功能仍由VMM控制。
IO数据通路的性能有了很大提高;IO数据通路延迟有了很大降低;CPU利用率比软件IO虚拟化时要好得多,一个物理机能支持更多的虚拟机。缺点是,每个VM有了一个新的驱动栈,需对VM中的应用作重新优化;迁移时需要重启VM,动态负载平衡和减少的宕机时间,所带来的便利没有了;
Mellanox的CIOV对VMM层和VM层都有好处:由于绕开了VMM,VMM中不需要嵌入虚拟交换机的功能。
接着又用一个案例说明了CIOV用更小的开销实现了更好的性能。旁路硬件IO虚拟化
完全绕开了VMM,不需要VMM干预。
InfiniBand同GbE和FC比较有很大优势,单位适配器网络吞吐率、单位适配器SAN吞吐率、购买价格、维护费用、IO功率消耗、兼容性、管理透明性等方面都要强于GbE和FC。InfiniBand与GbE间,与FC间都可以实现互操作,这更增加了InfiniBand的适用面。
[1] http://www.zdnet.com.au/whitepaper/0,2000063328,22445637p-16001293q,00.htmLabels: virtualization