雲端服務與智慧網卡(Smart NIC)之間密不可分的關係

SmartNIC

隨著疫情的發展加速了全球數位化及雲端服務的轉型,遠距視訊看診以及AI快篩影像辨識即將成為當前減輕人工PCR醫療作業負擔的一大助力。大量即時影像資料傳遞及判讀處理的同時,網路資料交換中心(Data Center)高效計算能力及低延遲傳輸,加上快速的資料分析(Data Analytics)和安全的資料加解密,正是Data Center的關鍵特性。

 

在資料處理量急遽上升的情況下,伺服器(Server)如何有效率的運用中央處理器(CPU),及透過網路控制器(NIC,Network Interface Controller)協助卸載(Offload) 繁雜且固定的網路工作,進而減輕CPU負擔並釋放更多運算執行效能,對於Data Center至關重要。

網路控制器(NIC,Network Interface Controller)

從一般的通用網路卡(NIC)、智慧網路卡(Smart NIC), 到DPU資料處理器 (DPU,Data Processing Unit) 的智慧網路卡,主要功能差異有哪些?

 

NVIDIA對 Smart NIC的定義為:協助卸載(Offload)中央處理器網路工作的控制器,而在實現這些不同卸載的架構下,又可大致分為ASIC、FPGA 和SoC 的架構。

ASIC-based SmartNIC
(ConnectX)
SoC-based SmartNIC
(BlueField
FPGA-based SmartNIC
(INNOVA FLEX)
  • 優異的性價比
  • 供應商開發成本高
  • 不可編程和可擴展
  • 靈活性僅限於預定義的功能
  • 良好的性價比
  • 可編程處理器
  • 最高靈活性
  • 最簡單的可編程性
  • 性能好但價格昂貴
  • 難以編程
  • 特定於工作負載的優化

ASIC-based SmartNIC:

ASIC 具有成本效益,提供高性價比,但靈活性有限。如NVIDIA ConnectX-6 系列及ConnectX-7,具有相對簡單的可編程數據,為資料中心提供完整的乙太網路解決方案,提供Security(Inline IPseTLS crypto , AEX-XTS , Key management , Hardware Root-od-Trust, Connection Tracking )、Virtualization(OVS offload, SR-IOV, VirtIO acceleration)、Time Sensitive(PTP Hardware Clock)、Storage (NVMe-over-Fabric target offload), 具可擴充性、可靠性和價值,跨足各種應用程式使用,例如:雲端運算、資料儲存空間、人工智慧…等。

圖一、ConnectX-6 系列卸載功能 圖一、ConnectX-6 系列卸載功能

SoC-based SmartNIC :

對於具靈活性的SoC (System On Chip,系統單晶片),如Mellanox DPU 它結合了: NIC subsystem (ConnectX NIC的卸載技術)、Server Class CPU subsystem (64位元16核 ARM A78 處理器),PCIe subsystem、Data acceleration (Virtio-Net emulation , QoS scheduling, Telemetry , Micro Segmentation, Enctyption-IPSec/MACSec , Tunneling-VxLAN/GRE , NAT , Routing, ACL),並提供了Programmability through DOCA SDK, 易於編程和高度的靈活性。

 

DPU主打加速和分離多種先進的網路、儲存空間(NVMe-oF : NVMe over Fabrics)和安全服務(加密/解密、防火墙),藉以在雲端、資料中心到邊緣端的任何環境中,提供適用於任何工作負載且安全的加速基礎架構等應用,以對應諸多的儲存與網路層面需求。靈活和可編程的加速引擎為大量的網路作業負載提供了有效率的處理分工,並提升其性能。所有這些 DPU 功能對於實現安全的雲端原生超級電腦大規模運算,提供了最佳的彈性部屬。

image not found 圖二、架構

FPGA-based SmartNIC:

相較之下,FPGA NIC,如NVIDIA Innova-2 Flex,具有高度可編程性及多功能介面卡組合能力,幾乎可以支持任何功能。然而,眾所周知,FPGA 編程需要一些技術門檻且價格相較昂貴,但在某些特定應用場景下可以用以實現最高效率,也為客戶提供了更多樣性的選擇。

NIC網卡種類介紹

回歸到網卡類別而言,因不同的加速及不同的工作負載而依功能來區分三類。

  1. 基礎卡Foundational NIC
  2. 智慧卡ASIC-based Smart NIC
  3. 基於DPU 的智慧卡SoC-based Smart NIC

基礎卡Foundational NIC:

基礎NIC (Foundational NIC)僅僅提供了移動網絡流量或是SRIOV 和基本TCP 加速之外,很少或是沒有提供卸載功能。

智慧卡ASIC-based Smart NIC:

NVIDIA ConnectX 適配器系列具有可編程數據路徑,並加速及卸載了一系列功能,這些功能最初在公共雲使用案例中變得非常重要,NVIDIA 最新的ConnectX-7 SmartNIC 可處理大量網絡、安全和存儲工作,它支援網路卸載的大多數需求。例如:

 

  •  對於泛用或自定義的SDN提供加速功能
  •  透過在線加解密機制提供安全性
  •  使用防火牆和硬體信任機制來實現安全啓動
  •  支持業界通用的安全協議,如TLS、IP安全和MAC安全
  •  支持網路存儲和資料傳輸的協議,例如 RoCE、GPU Direct Storage、NVM Express 和TCP
  •  通過SR-IOV和虛擬交換、路由功能來支持虛擬化數據中心

基於DPU 的智慧卡SoC-based Smart NIC:

NVIDIA 基於BlueField DPU的智慧卡,除了NVIDIA ConnectX 既有對於網路中的封包進行加速及卸載功能,而嵌入式的CPU 則被用來做控制路徑的初始化和異常情況處理,而更專注於加速資料的處理。而DPU網路數據路徑加速引擎,至少需要具備下述 10 項功能:

 

  •  透過對網路封包的解析、配對和處理來實現Open vSwitch (OVS)
  • 透過RDMA加速功能支援NVIDIA Zero Touch RoCE (ZTR)
  •  透過GPUDirect技術,可以讓資料直接在儲存媒體與GPU直接進行交換,不透過CPU來處理
  • 支援TCP加速,包含RSS, LRO, checksum等等…
  • 支援網路虛擬化:VXLAN, Geneve Overlays 及 VTEP Offload
  •  透過資料流量控制(限速或整形)來支援多媒體流、內容傳輸網路和新的 4K / 8K IP 影片(RiverMax for ST 2110)
  • 5T-for-5G提供精準的校時加速,符合電信CloudRAN的需求
  •  支援IPSEC跟TLS的加解密加速,完全不影響其他的加速功能
  • 支援SR-IOV, VirtIO 及para-virtualization的虛擬化功能
  •  安全隔離:如信任根、安全啟動、安全韌體升級以及基於身份驗證的容器和應用的生命週期管理等

產品資訊

有關SmartNIC 的更多相關產品訊息,請參閱以下NVIDIA官網連結:

 

ConnectX Smart NICs

 

Latest DPU News

 

Cables and Transceiver

參考文獻

1. Choosing the Best SmartNIC, NVIDIA, https://reurl.cc/n1r2x8
2. 选择基于 DPU 的最佳 SmartNIC, NVIDIA, https://reurl.cc/9G7qx8
3. What Is a DPU?, NVIDIA, https://reurl.cc/rDr2nE
4. Functional Diagram of the BlueField® SmartNIC. , NVIDIA, https://reurl.cc/NA4gLq
5. Nvidia GTC 2022 keynote , NVIDIA, https://reurl.cc/n1r2M2