資料中心與雲端網路

智慧網卡(SmartNIC)

一張普通的網路卡(NIC)像個單純的收發員:它只把你電腦的封包放上線路、把抵達的取下。但在一台雲端伺服器裡,許多工作——替覆疊包裝封包、執行安全規則、加密流量、跑虛擬交換器——傳統上是由伺服器的主 CPU 來做,偷走了客戶付錢買的運算週期。SmartNIC 則是一張本身也是一台小電腦的網路卡:它有自己的處理器與記憶體,所以能自己接手所有那些網路與安全工作,把主機 CPU 空出來,專心只跑客戶的工作負載。

具體來說,SmartNIC(常被稱為 DPU,資料處理單元,或 IPU)在網路介面上加了可程式化的運算能力——通常是一顆多核處理器、有時是 FPGA 或客製 ASIC,再加上記憶體與它自己的作業系統。它把資料中心的網路與儲存堆疊從主機卸載下來:虛擬交換與 VXLAN 封裝、防火牆與存取控制規則、負載平衡決策、加密、RDMA、儲存協定,全都可以在 SmartNIC 上跑,而不是在伺服器的 CPU 核心上。因為它位於主機與線路之間,它也是執行隔離與安全的理想位置——雲端營運者的控制邏輯可以住在 SmartNIC 上,與跑在主 CPU 上(可能不受信任)的租戶程式碼隔開。

為什麼重要:SmartNIC 是現代雲端經濟學的核心。當網路速度攀上 100 Gbps 乃至更高,在軟體中處理每個封包的 CPU 成本變得如此龐大,以致營運者形同把核心送給了網路負擔——所謂的「資料中心稅」。把那些工作卸載到 SmartNIC 上,可以收回那些核心拿去賣給客戶、降低並穩定延遲、並乾淨地把營運者的基礎設施與租戶工作負載分開。它們屬於朝向可程式化結構(與 P4 及可程式化交換器並列)這個更大趨勢的一部分。誠實的提醒:SmartNIC 比笨網卡更貴、更複雜,它本身就是必須被保護與更新的軟體,而選錯的卸載可能變成新的瓶頸——所以它是刻意的工程取捨,不是免費的勝利。

在一台 100 Gbps 的雲端伺服器上,光是把虛擬交換器、VXLAN 封裝與防火牆跑在軟體裡,就可能光為了網路就吃掉好幾顆完整的 CPU 核心。把那份工作搬到 SmartNIC 上,那些核心就回來了——營運者可以把它們賣給客戶,而主機 CPU 從不需要看到任何封包標頭。

把網路卸載到網卡上,收回可以賣的 CPU 核心。

SmartNIC 不是什麼神奇加速器——它是一台跑著自己(需被保護、需被更新)軟體的小電腦。它比普通網卡更貴、更複雜,而設計不良的卸載本身就可能變成瓶頸;它的好處是收回主機 CPU 與隔離,而不是原始連結速度。

又称
smart network cardDPUdata processing unitIPU智慧網卡智慧型網路卡