隨著云計(jì)算和虛擬化技術(shù)的發(fā)展,網(wǎng)卡在功能和硬件結(jié)構(gòu)方面也經(jīng)歷了四個(gè)階段,即網(wǎng)卡、智能網(wǎng)卡、基于FPGA的DPU和DPU SoC網(wǎng)卡。本文將重點(diǎn)介紹這些不同類型的網(wǎng)絡(luò)適配器和處理器,在硬件、可編程能力、開發(fā)和應(yīng)用方面的特點(diǎn)。
網(wǎng)卡的演進(jìn)和應(yīng)用
傳統(tǒng)的基本網(wǎng)卡,也被稱為NIC或網(wǎng)絡(luò)適配器,在計(jì)算機(jī)網(wǎng)絡(luò)中的作用至關(guān)重要。它的主要功能是將數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡(luò)設(shè)備之間高效傳輸所需的格式。隨著時(shí)間的推移,網(wǎng)卡的功能不斷擴(kuò)展,除了融合額外功能,還具備基本的硬件卸載功能,例如CRC校驗(yàn)、TSO/UF0、LSO/LR0以及VLAN支持等。它還支持SR-IOV以實(shí)現(xiàn)虛擬化和QoS以提升網(wǎng)絡(luò)性能。在網(wǎng)絡(luò)接口帶寬方面,它已經(jīng)從100M和1000M的速率演進(jìn)到支持更高速率的10G、25G甚至100G。
在云計(jì)算虛擬化網(wǎng)絡(luò)中,傳統(tǒng)的基本網(wǎng)卡提供了三種主要方法來為虛擬機(jī)提供網(wǎng)絡(luò)訪問。
1. 通過操作系統(tǒng)內(nèi)核協(xié)議棧,網(wǎng)卡將傳入的流量轉(zhuǎn)發(fā)到虛擬機(jī)。
2. DPDK用戶態(tài)驅(qū)動(dòng)程序繞過內(nèi)核協(xié)議棧,直接將數(shù)據(jù)包復(fù)制到虛擬機(jī)的內(nèi)存中,以提高性能。
3. SR-IOV技術(shù)將物理網(wǎng)卡虛擬化為多個(gè)直接分配給虛擬機(jī)的虛擬功能(VF)。
隨著VxLAN等隧道協(xié)議和虛擬交換技術(shù)等網(wǎng)絡(luò)復(fù)雜性的增加,對(duì)CPU資源的需求也越來越高。智能網(wǎng)卡通過從CPU中卸載網(wǎng)絡(luò)處理任務(wù),提升整體網(wǎng)絡(luò)性能,從而應(yīng)對(duì)這一挑戰(zhàn)。
智能網(wǎng)卡的演進(jìn)和應(yīng)用
智能網(wǎng)卡不僅提供傳統(tǒng)基本網(wǎng)卡中的網(wǎng)絡(luò)傳輸功能,還融合數(shù)據(jù)平面硬件卸載功能,例如使用FPGA或集成處理器與FPGA和處理器核心的OVS/vRouter硬件卸載。這些智能網(wǎng)卡提升云計(jì)算網(wǎng)絡(luò)的轉(zhuǎn)發(fā)速率,并減輕主機(jī)CPU的計(jì)算資源負(fù)擔(dān)。
與傳統(tǒng)的網(wǎng)卡不同,智能網(wǎng)卡不包含通用的CPU。相反,它們依賴主機(jī)CPU來管理控制平面。智能網(wǎng)卡卸載加速的主要焦點(diǎn)是數(shù)據(jù)平面,涵蓋了諸如0VS/vRouter等虛擬交換機(jī)的快速路徑卸載、RDMA網(wǎng)絡(luò)卸載、NVMe-oF存儲(chǔ)卸載和IPsec/TLS數(shù)據(jù)平面安全卸載等任務(wù)。
然而,隨著云計(jì)算應(yīng)用中網(wǎng)絡(luò)速度的不斷提高,主機(jī)CPU仍然需要大量的資源用于流量分類、跟蹤和控制。實(shí)現(xiàn)主機(jī)CPU的“零消耗”已成為云服務(wù)提供商的下一個(gè)研究方向,旨在盡可能減少主機(jī)CPU參與這些任務(wù)。
基于FPGA的數(shù)據(jù)處理單元(DPU)的演進(jìn)和應(yīng)用
基于FPGA的數(shù)據(jù)處理單元(DPU)是一種智能網(wǎng)卡,可以卸載數(shù)據(jù)并具有平面控制功能。它在控制平面和數(shù)據(jù)平面上都是部分可編程的。在硬件方面,它包括一個(gè)基于FPGA的通用CPU處理器,例如英特爾CPU。
與智能網(wǎng)卡相比,基于FPGA的數(shù)據(jù)處理單元(DPU)通過整合通用CPU處理單元來增強(qiáng)硬件架構(gòu),形成了FPGA+CPU架構(gòu)。這種配置有助于加速和卸載各種基礎(chǔ)設(shè)施組件,包括網(wǎng)絡(luò)、存儲(chǔ)、安全和管理。目前,主流形式的DPU是FPGA+CPU配置,基于這種架構(gòu)的DPU具有出色的軟件和硬件可編程性。
在DPU的早期開發(fā)階段,它提供了更短的開發(fā)時(shí)間和快速迭代,便于快速定制功能。這使得DPU制造商能夠快速推出產(chǎn)品并抓住市場(chǎng)機(jī)遇。然而,隨著網(wǎng)絡(luò)帶寬從25G過渡到100G,基于FPGA+CPU的DPU架構(gòu)由于芯片工藝和FPGA結(jié)構(gòu)的限制遇到挑戰(zhàn)。這些限制使得在追求更高吞吐量的同時(shí),有效控制芯片面積和功耗變得困難。因此,這種DPU架構(gòu)的持續(xù)發(fā)展受到了阻礙。
DPU SoC網(wǎng)卡的演進(jìn)和應(yīng)用
與基于FPGA的架構(gòu)不同,基于應(yīng)用專用集成電路(ASIC)的DPU SoC將專用加速器的性能與通用處理器的可編程性相結(jié)合,解決了成本、功耗和功能等方面的問題。尤其是針對(duì)下一代100G服務(wù)器,它們?cè)诔杀?、功耗、高吞吐量和靈活的編程能力方面具有優(yōu)勢(shì),DPU SoC可支持應(yīng)用管理、虛擬機(jī)、容器和裸金屬應(yīng)用。
DPU技術(shù)正在不斷發(fā)展,通用可編程的DPU SoC現(xiàn)在對(duì)于云服務(wù)提供商的數(shù)據(jù)中心建設(shè)至關(guān)重要。它們能夠高效地管理計(jì)算和網(wǎng)絡(luò)資源,支持多樣化的云計(jì)算場(chǎng)景,并優(yōu)化數(shù)據(jù)中心資源利用率。芯片巨頭和領(lǐng)先的云服務(wù)提供商在DPU的研究、開發(fā)和利用方面進(jìn)行了重大投資,通過持續(xù)的探索和實(shí)際實(shí)施取得了顯著的成本效益。
亞馬遜云中的DPU
亞馬遜網(wǎng)絡(luò)服務(wù)(AWS)是一家以Nitro DPU系統(tǒng)作為關(guān)鍵技術(shù)基礎(chǔ)的頂級(jí)云計(jì)算服務(wù)提供商。Nitro DPU系統(tǒng)可以高效地將網(wǎng)絡(luò)、存儲(chǔ)、安全和監(jiān)控功能卸載到專用的硬件和軟件上。這使得服務(wù)實(shí)例可以訪問大部分的服務(wù)器資源,從而大幅降低成本并增加年收入。Nitro DPU系統(tǒng)由多個(gè)組件組成:
1. Nitro卡:用于網(wǎng)絡(luò)、存儲(chǔ)和控制的專用硬件,以提升整體系統(tǒng)性能。
2. Nitro安全芯片:將虛擬化和安全功能轉(zhuǎn)移到專用的硬件和軟件上,減小攻擊面,確保安全的云平臺(tái)。
3. Nitro虛擬化管理程序:一種輕量級(jí)的虛擬化管理程序,高效地管理內(nèi)存和CPU分配,提供與裸金屬相當(dāng)?shù)男阅堋?
通過提供關(guān)鍵的網(wǎng)絡(luò)、安全、服務(wù)器和監(jiān)控功能,Nitro DPU系統(tǒng)可以釋放底層服務(wù)資源供客戶虛擬機(jī)使用。它使得AWS可以提供更多的裸金屬實(shí)例類型,甚至能夠?yàn)樘囟▽?shí)例實(shí)現(xiàn)高達(dá)100Gbps的網(wǎng)絡(luò)性能。
英偉達(dá)(NVIDIA)DPU
英偉達(dá)(NVIDIA)是一家知名的半導(dǎo)體公司,以其在高性能計(jì)算領(lǐng)域的圖形處理單元(GPU)而聞名。該公司于2020年4月以69億美元收購(gòu)了網(wǎng)絡(luò)芯片和設(shè)備公司邁絡(luò)思(Mellanox)。在收購(gòu)之后,英偉達(dá)(NVIDIA)推出了BlueField系列的DPU。
NVIDIA BlueField-3 DPU是專為加速計(jì)算而設(shè)計(jì)的,繼承了BlueField-2 DPU的先進(jìn)功能。它提供高達(dá)400G的網(wǎng)絡(luò)連接,并為軟件定義的網(wǎng)絡(luò)、存儲(chǔ)、安全和管理功能提供卸載、加速和隔離能力。
英特爾(Intel)IPU
英特爾(Intel)IPU是一種配備了硬化加速器和以太網(wǎng)連接的先進(jìn)網(wǎng)絡(luò)設(shè)備。它利用緊密耦合的專用可編程核心來加速和管理基礎(chǔ)設(shè)施功能。IPU實(shí)現(xiàn)基礎(chǔ)設(shè)施卸載,并充當(dāng)運(yùn)行基礎(chǔ)設(shè)施應(yīng)用程序的主機(jī)控制點(diǎn),提供了額外的安全層。將所有基礎(chǔ)設(shè)施服務(wù)從服務(wù)器卸載到IPU中,釋放服務(wù)器CPU資源,并為云服務(wù)提供商提供了一個(gè)獨(dú)立且安全的控制點(diǎn)。
英特爾的路線圖包括Oak Springs Canyon和Mount Evans IPU產(chǎn)品。Oak Springs Canyon是基于FPGA的IPU產(chǎn)品,而Mount Evans IPU是基于ASIC的IPU產(chǎn)品。Oak Springs Canyon采用了英特爾的Agilex FPGA和Xeon-D CPU,而Mount Evans則由英特爾和谷歌共同設(shè)計(jì),結(jié)合用于數(shù)據(jù)包處理的ASIC和16個(gè)ARM Neoverse N1核心,具備強(qiáng)大的計(jì)算能力。
阿里云中的DPU
阿里云是DPU技術(shù)探索的前沿。在2022年的阿里云峰會(huì)上,他們發(fā)布了基于神龍架構(gòu)開發(fā)的云基礎(chǔ)架構(gòu)處理器CIPU。CIPU繼承了其前身MoC卡(卡上微服務(wù)器)的功能和定位,與DPU的定義相吻合。MoC卡具有獨(dú)立的I/O、存儲(chǔ)和處理單元,并處理網(wǎng)絡(luò)、存儲(chǔ)和設(shè)備虛擬化任務(wù)。MoC卡經(jīng)歷了四個(gè)發(fā)展階段:
第一代和第二代MoC卡解決計(jì)算虛擬化的零開銷挑戰(zhàn),通過軟件實(shí)現(xiàn)了網(wǎng)絡(luò)和存儲(chǔ)虛擬化。
第三代MoC卡引入了增強(qiáng)的網(wǎng)絡(luò)轉(zhuǎn)發(fā)功能,顯著提高了網(wǎng)絡(luò)性能。
第四代MoC卡實(shí)現(xiàn)了網(wǎng)絡(luò)和存儲(chǔ)操作的完全硬件卸載,并支持RDMA功能。
阿里云的CIPU專為飛天系統(tǒng)設(shè)計(jì),對(duì)于構(gòu)建新一代綜合軟硬件云計(jì)算架構(gòu)系統(tǒng)至關(guān)重要。
火山引擎DPU
火山引擎致力于推進(jìn)自主開發(fā)的DPU技術(shù),采用軟硬集成的虛擬化方法,提供彈性和可擴(kuò)展的高性能計(jì)算服務(wù)。他們的第二代彈性裸金屬服務(wù)器和第三代云服務(wù)器都配備了自主研發(fā)DPU。這些DPU經(jīng)過了廣泛的測(cè)試,以確保其在各種應(yīng)用中的功能和適應(yīng)性。2022年推出的第二代彈性裸金屬實(shí)例將物理機(jī)的穩(wěn)定性和安全性與虛擬機(jī)的靈活性相結(jié)合,代表了高性能云服務(wù)器的新一代。2023年上半年發(fā)布的第三代云服務(wù)器實(shí)例將火山引擎最新的DPU架構(gòu)與專有的虛擬交換機(jī)和虛擬化技術(shù)集成在一起,顯著提高了網(wǎng)絡(luò)和存儲(chǔ)I/O性能。通過結(jié)合自主開發(fā)的DPU、虛擬交換機(jī)和虛擬化技術(shù),Volcano Engine旨在提供可擴(kuò)展和高效的高性能計(jì)算解決方案,以滿足云計(jì)算不斷演變的需求。
新聞來源:架構(gòu)師技術(shù)聯(lián)盟
相關(guān)文章