增強型資料路徑是網路堆疊模式,一旦設定,便可提供卓越的網路效能。它主要適用於 NFV 工作負載,可以利用 DPDK 功能產生提高效能的效益。

只能在 ESXi 主機上以增強型資料路徑模式設定 N-VDS 交換器。ENS 還支援流經 Edge 虛擬機器的流量。

在增強型資料路徑模式中,可同時支援兩種流量模式:

  • 覆疊流量
  • VLAN 流量

支援的 VMkernel NIC

藉由支援多個 ENS 主機交換器的 NSX-T Data Center,每台主機支援的 VMkernel NIC 數目上限為 32。

設定增強型資料路徑的高階程序

做為網路管理員,您必須先使用支援的 NIC 卡和驅動程式準備網路,然後在增強型資料路徑模式下建立支援 N-VDS 的傳輸區域。若要提升網路效能,您可以啟用負載平衡來源整併原則使其能夠感知 NUMA 節點。

高階步驟如下:

  1. 使用支援增強型資料路徑的 NIC 卡。

    請參閱《VMware 相容性指南》,以瞭解支援增強型資料路徑的 NIC 卡。

    在《VMware 相容性指南》頁面上的 IO 裝置類別下,選取 ESXi 6.7、IO 裝置類型為網路,並且功能為 N-VDS 增強型資料路徑

  2. My VMware 頁面下載並安裝最新版的 NIC 驅動程式。
    1. 移至驅動程式和工具 > 驅動程式光碟
    2. 下載 NIC 驅動程式:

      Intel 乙太網路控制器 82599、x520、x540、x550 和 x552 系列適用的 VMware ESXi 6.7 ixgben-ens 1.1.3 NIC 驅動程式

      Intel 乙太網路控制器 X710、XL710、XXV710 和 X722 系列適用的 VMware ESXi 6.7 i40en-ens 1.1.3 NIC 驅動程式

    3. 若要將主機用作 ENS 主機,則系統上至少要有一個具備 ENS 功能的 NIC。如果沒有具備 ENS 功能的 NIC,則管理平面將不允許主機新增至 ENS 傳輸區域。
    4. 列出 ENS 驅動程式。

      esxcli software vib list | grep -E "i40|ixgben"

    5. 確認 NIC 是否能夠處理 ENS 資料路徑流量。
      esxcfg-nics -e
      Name    Driver   ENS Capable   ENS Driven    MAC Address       Description                   
      vmnic0  ixgben   True          False         e4:43:4b:7b:d2:e0 Intel(R) Ethernet Controller X550
      vmnic1  ixgben   True          False         e4:43:4b:7b:d2:e1 Intel(R) Ethernet Controller X550
      vmnic2  ixgben   True          False         e4:43:4b:7b:d2:e2 Intel(R) Ethernet Controller X550
      vmnic3  ixgben   True          False         e4:43:4b:7b:d2:e3 Intel(R) Ethernet Controller X550
      vmnic4  i40en    True          False         3c:fd:fe:7c:47:40 Intel(R) Ethernet Controller X710/X557-AT 10GBASE-T
      vmnic5  i40en    True          False         3c:fd:fe:7c:47:41 Intel(R) Ethernet Controller X710/X557-AT 10GBASE-T
      vmnic6  i40en    True          False         3c:fd:fe:7c:47:42 Intel(R) Ethernet Controller X710/X557-AT 10GBASE-T
      vmnic7  i40en    True          False         3c:fd:fe:7c:47:43 Intel(R) Ethernet Controller X710/X557-AT 10GBASE-T
    6. 安裝 ENS 驅動程式。

      esxcli software vib install -v file:///<DriverInstallerURL> --no-sig-check

    7. 或者,將驅動程式下載到系統,然後加以安裝。

      wget <DriverInstallerURL>

      esxcli software vib install -v file:///<DriverInstallerURL> --no-sig-check

    8. 將主機重新開機以載入驅動程式。繼續進行下一步驟。
    9. 若要解除載入驅動程式,請執行下列步驟:

      vmkload_mod -u i40en

      ps | grep vmkdevmgr

      kill -HUP "$(ps | grep vmkdevmgr | awk {'print $1'})"

      ps | grep vmkdevmgr

      kill -HUP <vmkdevmgrProcessID>

      kill -HUP "$(ps | grep vmkdevmgr | awk {'print $1'})"

    10. 若要解除安裝 ENS 驅動程式:esxcli software vib remove --vibname=i40en-ens --force --no-live-install
  3. 建立上行原則。

    請參閱建立上行設定檔

  4. 建立傳輸區域。

    請參閱建立傳輸區域

    備註: 為覆疊流量設定的 ENS 傳輸區域:對於執行 11.0.0 版以前的 VMware Tools 版本的 Microsoft Windows 虛擬機器,如果 vNIC 類型為 VMXNET3,請務必將 MTU 設定為 1500。對於執行 vSphere 6.7 U1 和 VMware Tools 11.0.0 及更新版本的 Microsoft Windows 虛擬機器,請務必將 MTU 設定為小於 8900 的值。對於執行其他受支援作業系統的虛擬機器,請確定虛擬機器 MTU 設定為小於 8900 的值。
  5. 建立主機傳輸節點。在具有邏輯核心和 NUMA 節點的 N-VDS 或 VDS 交換器上,設定增強型資料路徑中的模式。

    請參閱準備獨立主機作為傳輸節點

感知 NUMA 的負載平衡來源整併原則模式

當符合下列條件時,為增強型資料路徑 N-VDS 定義的負載平衡來源整併原則模式可以感知 NUMA:
  • 虛擬機器上的延遲敏感度

  • 使用的網路介面卡類型為 VMXNET3。

如果虛擬機器或實體 NIC 的 NUMA 節點位置無法使用,負載平衡來源整併原則不會考慮 NUMA 感知來與虛擬機器和 NIC 保持一致。

在下列條件下,整併原則會在沒有 NUMA 感知的情況下運作:
  • LAG 上行設定了多個 NUMA 節點中的實體連結。
  • 虛擬機器與多個 NUMA 節點具有相似性。
  • ESXi 主機無法為虛擬機器或實體連結定義 NUMA 資訊。

ENS 支援需要流量可靠性的應用程式

NFV 工作負載可能會利用串流控制傳輸通訊協定 (SCTP) 提供的多宿主和備援功能,讓應用程式上執行的流量更具彈性和可靠性。多宿主是支援從來源虛擬機器到目的地虛擬機器之冗餘路徑的能力。

根據可作為覆疊網路或 VLAN 網路之上行的實體 NIC 數目,虛擬機器可使用這些冗餘網路路徑將流量傳送至目標虛擬機器。將 pNIC 釘選到邏輯交換器失敗時,會使用冗餘路徑。增強型資料路徑交換器會在主機之間提供備援網路路徑。

圖 1. 透過 ENS 之流量的多宿主和備援功能

高階工作如下:

  1. 準備主機做為 NSX-T Data Center 傳輸節點。
  2. 在增強型資料路徑模式下,透過兩個 N-VDS 交換器準備 VLAN 或覆疊傳輸區域。
  3. 在 N-VDS 1 上,將第一個實體 NIC 釘選到交換器。
  4. 在 N-VDS 2 上,將第二個實體 NIC 釘選到交換器。

增強型資料路徑模式下的 N-VDS 可確保在 pNIC1 變得無法使用時,虛擬機器 1 的流量會透過冗餘路徑路由 - vNIC 1 → 通道端點 2 → pNIC 2 → 虛擬機器 2。