SR-IOV vs MR-IOV

原创内容,转载请注明:  [http://www.ssdfans.com]  谢谢!

 

我们进入PCIe Switch的最后一部分,IO虚拟化SR-IOV和MR-IOV的大PK。

 

术语介绍

 

上图是PCIe IO虚拟化的架构图,科普一下术语:

  • SI:System Image,其实就是虚拟机OS。
  • VI: Virtual Intermediary,可以看成是VMM,虚拟机管理层,物理机和虚拟机的中介。
  • TA:Translation Agent,PCI地址空间到Host主机内存空间的地址转换。也提供MSI,MSI-X中断重映射。
  • ATPT: Address Translation and Protection Table,对于每个VF或者PF提供地址访问权限,用来进行保护,防治地址越界。其实就是城管,小贩们别想占用别人的摊位。

 

再来看看SR-IOV和MR-IOV的对比图,也来解释一些概念:

 

VF和PF阿呆以前也跟祥林嫂一样老提到,估计你也是被死记硬背了。不过我们再来默写一遍名词解释:

  • PF:Physical Function,可以支持很多SR-IOV,拥有完整的PCIe配置空间和BAR。
  • VF:Virtual Function,多个VF共享一个PF,只有PCIe的数据传输等关键功能。但是1个VF不能关联到多个PF。奴隶禁止买卖,共享,只能私有。
  • MRA:Multi-Root Aware,在它的屁护下,每个VH(Virtual Hierarchy)拥有独立的PCI Memory,IO,配置空间。

 

看到这里,大家估计已经有点感觉了。我们用历史知识来类比,SR-IOV下,每个VF就是明朝的军队,靠国家养活,只能用来打仗,后勤靠别人,总是缺少军需,饿着肚子打仗,最后只能跟着闯王造反。MR-IOV下,每个VH就是唐朝的藩镇,跟着军阀混,割据一方,自己收税养活自己,战斗力强,后勤有保障。

 

SR-IOV

 

传统的PCIe设备是下面这样的,特点有:

  • 扩展性:同一套配置空间和BAR系统最多支持8个PCI Function。如果用了ARI,Alternative Routing-ID Interpretation技术,可支持的Function达到256个,为什么?因为把Device 号的5个bit分配给Function Number了。Device Number在共享式PCI总线中有用,到了点对点的PCIe架构中,没啥用。
  • Function 0管理共享资源。
  • 支持传统中断和MSI,MSI-x。
  • 多个虚拟机不能共享一个PCIe设备。

 

好,SR-IOV出场了:

  • 扩展性:支持65536个function,因为ARI实现了256个,IOV又增加了额外的Bus Number。
  • Function 0是必须的。
  • 支持MSI,MSI-x中断。
  • 每个Function有独立的配置空间和BAR,多个VF共享一个Function。
  • 多个虚拟机共享一个PCIe设备。

 

MR-IOV

 

我们先来看一个刀片服务器系统,有4台服务器节点,每个有两个PCIe设备,通过两个Switch(为了冗余替换,有4个)连出去。每个服务器赔PCIe网络和存储设备,有点浪费,还不好共享。

 

有了MR-IOV之后,这个系统变成了下图:

  • 每个服务器只有PCIe接口,而不是PCIe设备。
  • 有4个MRA设备,两台存储,两台以太网。
  • 两个MRA Switch。
  • PCIe网络和存储设备可以被大家共享。

如下图是MR-IOV的作用,本来上面每个系统只有一个Host,两个设备,但是有了MRA Switch之后,系统里面有2个Host。

MR-IOV里有个重要概念:VH,Virtual Hirearchy:

  • 每个VH至少包含一个PCIe Switch,这个PCIe Switch是MRA Switch里面的一个虚拟组件。
  • 每个VH可以包含各种PCIe设备、MRA PCIe设备、或者PCIe-PCI桥的组合。

 

如下图,在MRA PCIe Switch中,可以有多个根端口Root Port,RP。

 

这样,有了MR-IOV之后,软件系统变成了下面这种,物理机之间也能相互通信,PCIe设备被多台物理机共享。

 

最终PK

 

最后,我们再来做个大对比:

 

再用历史知识来类比。

  • 传统PCIe设备是宋朝的军队,八十万禁军驻扎在京城,打仗了再指个将军派出去。机动性和战斗力都不行。
  • SR-IOV是明朝的军队,边境有各种卫所驻军,职业军人,战斗力是有的。但是后勤靠国家,后来沽名钓誉的东林党带着大家抗税,国家收不上钱,大兵们吃不饱,穿不暖,只能跟着闯王造反。
  • MR-IOV是唐朝的军队,藩镇割据,自己收税养自己,跟着军阀混,战斗力强,后勤也有保障。

 

引用

 

I/O Virtualization and Sharing,Michael Krause (HP, co-chair),Renato Recio (IBM, co-chair),IO Virtualization,PCI-SIG。也不知道这两个co-chair是哪个机构的。

分类目录 未分类.
扫一扫二维码或者微信搜索公众号ssdfans关注(添加朋友->点最下面的公众号->搜索ssdfans),可以经常看到SSD技术和产业的文章(SSD Fans只推送干货)。
ssdfans微信群介绍
技术讨论群 覆盖2000多位中国和世界华人圈SSD以及存储技术精英
固件、软件、测试群 固件、软件和测试技术讨论
异构计算群 讨论人工智能和GPU、FPGA、CPU异构计算
ASIC-FPGA群 芯片和FPGA硬件技术讨论群
闪存器件群 NAND、3D XPoint等固态存储介质技术讨论
企业级 企业级SSD、企业级存储
销售群 全国SSD供应商都在这里,砍砍价,会比某东便宜20%
工作求职群 存储行业换工作,发招聘,要关注各大公司招聘信息,赶快来
高管群 各大SSD相关存储公司高管和创始人、投资人

想加入这些群,请微信扫描下面二维码,或搜索nanoarchplus,加阿呆为微信好友,介绍你的昵称-单位-职务,注明群名,拉你进群。SSD业界需要什么帮助,也可以找阿呆聊。