Tungsten Fabric架構解析丨vRouter的部署選項

Hi!這裏是Tungsten Fabric架構解析內容的第五篇,介紹vRouter的部署選項。
Tungsten Fabric架構解析系列文章,由TF中文社區爲你呈現,旨在幫助初入TF社區的朋友答疑解惑。咱們將系統介紹TF有哪些特色、如何運做、如何收集/分析/部署、如何編排、如何鏈接到物理網絡等話題。

vRouter有多種部署選項,可提供不一樣的好處和易用性:編程

  • Kernel Module(內核模塊)——默認部署模式
  • DPDK——使用英特爾庫提供轉發加速
  • SR-IOV——提供從VM直接訪問NIC
  • Smart NIC(智能NIC)—— vRouter轉發器在可編程NIC中實現

這些選項以下所示:服務器

Tungsten Fabric架構解析丨vRouter的部署選項

每一個選項的功能和優勢以下所述:微信

內核模塊vRouter

vRouter轉發器在Linux內核中運行的模塊的方式,是目前的默認部署選項。 vRouter實現了網絡功能,不然將使用iptables或Open vSwitch來執行。在內核中運行使轉發器在經過KVM的網絡堆棧時能夠直接訪問網絡流量,而且與轉發器做爲用戶空間中的進程運行時相比,能夠實現顯著的性能提高。已實施的優化包括:網絡

  • TCP分片卸載
  • 大量接收卸載
  • 使用多隊列virtio數據包處理

內核模塊方法容許用戶使用Tungsten Fabric實現網絡虛擬化,同時對底層服務器和NIC硬件的依賴性最小。不過,這種方式僅支持特定的Linux內核版本。架構

DPDK vRouter

英特爾的數據平面開發工具包(DPDK)是一組庫和驅動程序,容許在用戶空間中運行的應用程序直接訪問NIC,而無需經過KVM網絡堆棧。能夠在用戶空間中運行並支持DPDK的vRouter轉發器版本。ide

與具備未修改的VM的內核模塊相比,DPDK vRouter提供了加速的數據包吞吐量,若是訪客 VM也啓用了DPDK,則能夠實現更好的性能。工具

DPDK vRouter經過將CPU內核專用於數據包轉發來工做,該內核不斷轉發循環等待數據包。這些內核不能用於運行訪客VM,由於它們連續100%運行,這在某些環境中多是個問題。性能

SR-IOV (Single Root – 輸入/輸出虛擬化)

SR-IOV不是vRouter自己的嚴格部署選項,但在某些應用程序中能夠與vRouter一塊兒使用。開發工具

SR-IOV容許NIC的硬件資源在多個客戶端之間共享,就好像每一個客戶端都具備惟一訪問權限同樣,就像虛擬機管理程序對CPU所作的同樣。它使VM接口能夠直接訪問NIC,所以數據路徑會繞過虛擬機管理程序網絡堆棧,從而提升性能。當VM在物理網絡和虛擬網絡之間執行網關功能時,SR-IOV很是有用,但因爲SR-IOV涉及繞過vRouter,所以接口不參與Tungsten Fabric虛擬網絡,也不參與網絡策略和網絡服務。優化

智能 NIC vRouter

一些新的可編程NIC正在變得可用。 Tungsten Fabric vRouter轉發器功能能夠在這些新的NIC上實現,這在性能方面帶來了實質性的提高,特別是對於在某些環境中占主導地位的小字節數據包。

此外,轉發幾乎徹底從服務器的x86 CPU上卸載了,所以能夠爲更多的VM釋放CPU內核。

智能NIC看起來很是有前途,但顯然要求智能NIC在生產環境中可用,而且它們須要時間才能獲得普遍使用。

MORE
更多Tungsten Fabric解析文章

第一篇:TF主要特色和用例
第二篇:TF怎麼運做
第三篇:詳解vRouter體系結構
第四篇:TF的服務鏈

Tungsten Fabric架構解析丨vRouter的部署選項

關注微信:TF中文社區
Tungsten Fabric架構解析丨vRouter的部署選項

相關文章
相關標籤/搜索