DOCA 1.3上線 讓DPU在數(shù)據(jù)時代找到“芯”價值
隨著數(shù)據(jù)中心成為新的計算單元,數(shù)據(jù)處理器有了更多的用武之地。英偉達的BlueField系列DPU由DOCA(Data-Center-Infrastructure-On-A-Chip Architecture)軟件框架提供支持,可實現(xiàn)更好的網(wǎng)絡、存儲和安全性能。作為一款為BlueField DPU量身打造的軟件開發(fā)框架,DOCA旨在為開發(fā)者提供全面、開放的開發(fā)套件,支持其BlueField DPU上進行簡便、靈活的軟件開發(fā),快速創(chuàng)建基于BlueField DPU加速的高性能應用程序和服務。
本文引用地址:http://m.butianyuan.cn/article/202207/436217.htm“DOCA是依托于面向未來的、API驅動的思維模式來構建的,可以讓BlueField DPU硬件加速器變得更加易用,實現(xiàn)非凡的數(shù)據(jù)中心的性能、效率和安全性,解鎖數(shù)據(jù)中心創(chuàng)新功能,并且能夠更好地兼容下一代BlueField DPU,提供持續(xù)支持,加快應用程序和服務的上市時間,釋放DPU的潛力?!盢VIDIA網(wǎng)絡技術專家崔巖說,“NVIDIA在發(fā)展BlueField DPU的同時,也在積極發(fā)展DOCA生態(tài),這和我們以前發(fā)展GPU的同時在發(fā)展CUDA生態(tài)是異曲同工之妙?!?/p>
今年5月,NVIDIA上線了DOCA 1.3版本,提供了121個新的API開發(fā)接口,加入了更多的增強和新功能,包括優(yōu)化數(shù)據(jù)流插入的DOCA Flow庫、通信通道庫、正則表達式庫、App Shield SDK、基于OVN的IPSec加密的完全卸載,以及一些DOCA服務,例如HBN在主機上實現(xiàn)了三層路由功能。借助DOCA 1.3,開發(fā)者不僅可以在本地BlueField DPU上或X86的容器中搭建開發(fā)環(huán)境,還能獲得一致性的開發(fā)體驗,可以統(tǒng)一訪問BlueField DPU上的各種硬件資源,簡化網(wǎng)絡、存儲、安全和基礎設施管理服務相關的開發(fā)。同時,NVIDIA還為開發(fā)者提供了基于底層API抽象和封裝的高級API庫,大幅減少開發(fā)時間,可以更快的獲得收益,另外通過容器化的DOCA服務,可以在BlueField DPU上直接部署應用。
DOCA軟件棧
DOCA 1.3中的正則表達式庫被稱為Regular Expression(RegEx),是多腳本語言使用的標準模式匹配工具,可以創(chuàng)建與文本模式匹配的過濾器,而不僅僅是單個單詞或短語的匹配。正則表達式專為高吞吐量、低延時、深度包檢測的應用程序設計,這些應用程序需要對數(shù)據(jù)包進行負載檢測和異常監(jiān)測,通過正則表達式模式匹配和字符串來實現(xiàn)相應的應用功能。正則表達式還可以實現(xiàn)安全和遙測功能,可以在DOCA 1.3上提供安全方面的應用,例如應用識別、入侵防御系統(tǒng)、URL過濾、文件掃描、深度數(shù)據(jù)包檢測、App Shield內存掃描等,為安全軟件開發(fā)提供底層的API支持。
借助基于OVN的數(shù)據(jù)路徑加密功能,不同主機之間可以利用IPsec的方式創(chuàng)建不同的隧道進行數(shù)據(jù)加密,保證數(shù)據(jù)在各個主機之間傳遞時是加密的狀態(tài)。當數(shù)據(jù)到達某個主機時,BlueField DPU會將其解密成明文,把這些明文數(shù)據(jù)再傳遞給主機側,為負載和應用程序提供數(shù)據(jù)。
在NVIDIA BlueField DPU上,基于主機的網(wǎng)絡(HBN)有助于對同一節(jié)點上的虛擬機和容器之間的流量進行管理和監(jiān)控。如果在一個服務器主機上創(chuàng)建了多個虛擬機或多個容器,在它們之間會有一些數(shù)據(jù)流量,不管是二層數(shù)據(jù)流量還是三層路由的功能,都可以通過基于主機網(wǎng)絡的DOCA服務在BlueField DPU上實現(xiàn),并且可以做分析和加密進出節(jié)點的流量,還會把一些原來是依賴TOR交換機上的功能也在BlueField DPU中實現(xiàn),改變了數(shù)據(jù)中心網(wǎng)絡構建的方式。
胡效赫是一名來自高校的開發(fā)者,他所在的團隊參加了首屆NVIDIA DPU中國黑客松競賽,并獲得了亞軍?!拔覀兊膱F隊是由一位博士后和兩位博士生組成的,研究方向是云計算、分布式系統(tǒng)、高性能計算。DPU作為數(shù)據(jù)中心重要組成部分,我們從2020年BlueField DPU發(fā)布之后就一直在關注,今年參加黑客松就是想進一步學習和參與DPU的相關開發(fā),對DOCA的API進行深度、定制化開發(fā),實現(xiàn)更好的性能和更豐富的功能,并且與指導專家和其他團隊進行更多的交流。”胡效赫稱。
據(jù)了解,該團隊的項目出發(fā)點是著眼于基礎設施的業(yè)務可觀測性,并為此提出“DeepTrace”項目——面向DPU驅動的基礎設施的網(wǎng)包級函數(shù)粒度業(yè)務可觀測性。以DOCA提供的NetFlow和粗粒度可觀測性為基礎,對應DOCA Netflow API庫,結合DPU的高性能網(wǎng)絡處理功能,對應DPU的ASAP2網(wǎng)包分類引擎,以及DOCA Flow API庫的數(shù)據(jù)平面和控制平面的可編程能力,將可觀測性的力度提升至網(wǎng)包級,并精確到每個函數(shù)功能,性能損耗幾乎可以忽略不計。
在DeepTrace項目的系統(tǒng)架構中,業(yè)務流量先經(jīng)過DeepTrace預選器,再經(jīng)由原始的DPU程序進行處理,在DPU程序中會調用DeepTrace的觸發(fā)器實現(xiàn)相應點位的觀測,被觀測的數(shù)據(jù)會被匯總收集至分析器,通過數(shù)據(jù)的重組和分析得到相應結果,例如異常流量檢測、業(yè)務問題定位等。
其中,觸發(fā)器部分的挑戰(zhàn)是如何以最小的代價收集鏈式函數(shù)和網(wǎng)包的信息,上述團隊采用的方案是以統(tǒng)一化、輕量化的函數(shù)內觸發(fā)器實現(xiàn),將DOCA NetFlow庫修改為網(wǎng)包粒度,而需要觀測的函數(shù)以API的形式調用觸發(fā)器。在預選器部分的挑戰(zhàn)是如何處理大規(guī)模原始流量,并在函數(shù)鏈中記錄網(wǎng)包,該團隊采用的方案是通過硬件卸載的預選器進行標記和過濾。在開發(fā)過程中,調用DOCA Flow庫配置所需預選的規(guī)則實現(xiàn)。分析器部分,由運行在ARM控制平面的開源開放工程實現(xiàn)。
胡效赫表示:“通過專家的指導,我們更充分地了解了DPU軟硬件特性,積累了DPU的開發(fā)經(jīng)驗,也看到了其他團隊在DPU上的創(chuàng)新實踐。這次的經(jīng)歷,為我們后續(xù)基于DPU進行研究和開發(fā)提供了很好的幫助?!毕鄳?,DPU中國虛擬黑客松競賽也可以激發(fā)DOCA開發(fā)者的創(chuàng)新,在NVIDIA BlueField DPU和NVIDIA DOCA應用場景上帶來一些啟發(fā),包括分布式存儲、數(shù)據(jù)流跟蹤分析、裸金屬云管理、RDMA數(shù)據(jù)包加解密等方面。下一步,NVIDIA計劃在今年下半年舉辦第二屆DPU中國虛擬黑客松活動。
目前,全球有超過半數(shù)的DOCA社區(qū)注冊開發(fā)者來自中國。自去年建立以來,DOCA社區(qū)陸續(xù)為國內開發(fā)者開通了BBS官方論壇、DOCA文檔庫,以及DOCA的微信群,并且在微信公眾號后臺和知乎等知識平臺上積極回答相關問題。此外,考慮到開發(fā)者可能沒有DPU為自己的程序做驗證,NVIDIA會通過與合作伙伴聯(lián)合成立的DPU & DOCA卓越中心,提供相應的環(huán)境來測試和驗證代碼。參與第一期卓越中心試運行的合作伙伴為麗臺(上海)信息科技有限公司和上海信弘智能科技有限公司。
卓越中心所提供的DOCA開發(fā)環(huán)境有三個要點:第一是可遠程訪問的免費開發(fā)環(huán)境,或是在上面運行已經(jīng)開發(fā)好的程序;第二是提供了完整的開發(fā)平臺,可以進行程序編譯、運行和相應的測試;第三是主要支持中國的DOCA開發(fā)者,加速應用的創(chuàng)新。同時,卓越中心的工程師和NVIDIA的專家也會提供相關的技術幫助。每個卓越中心的運營公司會提供兩套開發(fā)環(huán)境,這樣初期會有四套開發(fā)環(huán)境供免費使用,DOCA開發(fā)者需要自備登錄設備和相應的軟硬件環(huán)境,卓越中心會提供完整的軟硬件DOCA開發(fā)環(huán)境。
DOCA開發(fā)環(huán)境的開放時間是周一至周四的9:00-15:00。申請人可以向卓越中心提交申請,審核批準之后會獲得2-6小時的免費開發(fā)環(huán)境使用權。需要注意的是,每次申請獲批后的時間是沒有辦法延長的,例如申請了4小時,那么4小時快用完時,再想延長2個小時是不行的,需要再次發(fā)起申請。截至今年年底,每一位開發(fā)者最長半年時間之內總使用時間不超過10個小時。在申請免費開發(fā)環(huán)境時,開發(fā)者需要提前48小時發(fā)出郵件,以便后臺工程師分配系統(tǒng)資源和環(huán)境。
一直以來,NVIDIA都是開源領域的積極貢獻者,在網(wǎng)絡市場亦是如此,包括SONiC、OVS、DPDK、OpenMPI等等,在整個Linux社區(qū)是第三大貢獻者,在DPDK和SPDK社區(qū)的第二大貢獻者,并且成為了Linux OPI項目創(chuàng)始成員。DOCA開放API和庫之后,開發(fā)者可以借此來編寫應用程序的中間層,通過相關接口可以更便捷的發(fā)揮DPU特性,包括硬件卸載、正則表達式、RDMA等。
NVIDIA網(wǎng)絡市場總監(jiān)孟慶表示:“我們會在OPI和基金會里做出相應的貢獻,把整個DOCA開放出來。上層的東西,包括一些安全功能、存儲加速、網(wǎng)絡硬件卸載等特性,都會進行開放,無論是客戶、ISV,還是合作伙伴、OEM廠商,都能在開放的架構之上編寫應用程序,這里指的甚至不止是網(wǎng)絡程序,而是一個大的數(shù)據(jù)中心管理程序,里面會調用DOCA這樣的框架?!?/p>
如今,NVIDIA BlueField DPU已作為核心部件應用到NVIDIA認證系統(tǒng)中,包括HGX、EGX和OVX,以及為這些認證系統(tǒng)平臺提供加速的以太網(wǎng)或InfiniBand解決方案,同時連接NVIDIA Spectrum端到端以太網(wǎng)平臺或Quantum InfiniBand網(wǎng)絡平臺,為現(xiàn)代數(shù)據(jù)中心工作負載提供所需的精確定時、高性能、高級的安全性和豐富的功能,構建AI工廠的核心骨干網(wǎng)絡,有力支撐上層系統(tǒng)軟件、高性能計算、人工智能和虛擬仿真平臺應用,在云計算、網(wǎng)絡安全、存儲、管理平臺和邊緣計算等領域構建全面的生態(tài)解決方案。
相關數(shù)據(jù)顯示,2023年起全球DPU市場規(guī)模將突破百億美元,并進入年增長率超過50%的快車道。2023年,中國的DPU市場規(guī)模會超過300億元,增長潛力巨大。具體來說,DPU 的大規(guī)模應用主要面向三個方面:通過數(shù)據(jù)中心加速計算模型帶來的大規(guī)模應用,DPU能夠為CPU的業(yè)務應用負載和GPU的人工智能、機器學習工作負載提供數(shù)據(jù)傳輸及數(shù)據(jù)處理,性能成本比、基礎架構通用性與軟硬件可迭代成為關注要素;針對客戶的數(shù)據(jù)中心基礎設施應用場景定制設計,通過大規(guī)模部署DPU滿足特定應用場景的需求并解決問題;通過生態(tài)體系帶來的大規(guī)模應用,從客戶多樣化應用需求出發(fā),基于開放、標準化平臺提供創(chuàng)新應用的通用集成解決方案,買來即可集成和部署。
可以看到,DPU是圍繞著數(shù)據(jù)在數(shù)據(jù)中心和應用場景的一系列特征應運而生的,而DOCA就像是DPU的靈魂,二者相互結合才能發(fā)揮出最大的功效。從硬件方面來看,DPU既可以作為獨立的芯片或板卡,也可以作為額外的芯片集成在GPU或CPU中,給了客戶個性化的選購和部署自由度,可以根據(jù)實際應用場景來定制。同時,與之相配的DOCA則借助全面開放的開發(fā)套件,最大限制降低了基于BlueField DPU的開發(fā)門檻和成本,加速業(yè)務創(chuàng)新,推動商業(yè)價值最大化。
評論