通常情況下,一個服務器上跑幾十個虛機,對計算和網絡的需求是很驚人的。前者促生了當下的多核技術發展,后者則不能簡單的用多網卡來實現。
試想,每個虛機如果都需要10G的交換能力,服務器要配置幾十塊物理網卡,且不說主板是否支持這么多的接口,光成本上就難以接受。
另外,如果給vm分配的接口都是軟件交換機的虛擬接口,維護這些接口和轉發本身就要消耗大量的服務器計算資源。
因此,業界推出了VMDq和SR-IOV技術來提升虛機的網絡性能。
VMDq
VMM在服務器的物理網卡中為每個虛機分配一個獨立的隊列,這樣虛機出來的流量可以直接經過軟件交換機發送到指定隊列上,軟件交換機無需進行排序和路由操作。
但是,VMM和虛擬交換機仍然需要將網絡流量在VMDq和虛機之間進行復制。
SR-IOV
對於SR-IOV來說,則更加徹底,它通過創建不同虛擬功能(VF)的方式,呈現給虛擬機的就是獨立的網卡,因此,虛擬機直接跟網卡通信,不需要經過軟件交換機。
VF和VM之間通過DMA進行高速數據傳輸。
SR-IOV的性能是最好的,但是需要一系列的支持,包括網卡、主板、VMM等。

[1] http://windowsitpro.com/virtualization/q-are-vmdq-and-sr-iov-performing-same-functio
---------------------
作者:yeasy
來源:CSDN
原文:https://blog.csdn.net/yeasy/article/details/39178335
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!
