突破傳統(tǒng)網(wǎng)絡(luò)棧的性能困境
隨著100G/400G高速網(wǎng)絡(luò)普及,傳統(tǒng)Linux內(nèi)核協(xié)議棧暴露出核心瓶頸。內(nèi)核態(tài)處理64B小包難以突破5Mpps(實測數(shù)據(jù)),依賴NPU/ASIC實現(xiàn)高性能,導(dǎo)致生態(tài)封閉。內(nèi)核調(diào)度抖動>20μs(Cloudflare 2024報告)。
VPP(矢量包處理)與DPDK的協(xié)同創(chuàng)新,通過算法重構(gòu)+架構(gòu)解耦,在通用CPU上實現(xiàn):
- 性能對標專有硬件:ARM Neoverse N2處理器實現(xiàn)72Mpps轉(zhuǎn)發(fā)(64B包)
- 成本降低10倍:替代傳統(tǒng)路由器方案(TCO對比數(shù)據(jù))
- 全棧開放可控:基于FD.io開源生態(tài)
VPP:通用CPU上的高性能網(wǎng)絡(luò)引擎

VPP(Vector Packet Processing,矢量包處理)是Linux基金會旗下FD.io項目中的核心組件。它的目標是在通用CPU架構(gòu)(如x86, ARM, POWER)上,提供一個極其快速的用戶態(tài)L2-L4網(wǎng)絡(luò)協(xié)議棧,實現(xiàn)傳統(tǒng)上需要專用網(wǎng)絡(luò)硬件才能達到的高性能。
矢量處理:效率的革命
傳統(tǒng)“標量”處理的痛點: 系統(tǒng)一次僅處理一個數(shù)據(jù)包,完成整個流程后才處理下一個。這導(dǎo)致每個包都需要獨立的資源分配、緩存管理和上下文切換開銷。當I/O速率很高時,這些開銷甚至與處理單個包的時間相當,效率低下。VPP的解決方案:
- 批量處理: VPP將一組數(shù)據(jù)包(如64個)組合成一個“矢量”,在每個處理節(jié)點中一次性處理整個矢量。這大幅分攤了資源準備和上下文切換的開銷。
- 利用SIMD指令: 現(xiàn)代CPU的SIMD(單指令多數(shù)據(jù))指令集(如ARM的SVE2)允許單條指令同時操作多個數(shù)據(jù)包中的數(shù)據(jù)(如同時處理64個IPv4地址),顯著加速計算密集型操作(如路由查找、加解密)。
- 優(yōu)化緩存利用: 一次性將多個數(shù)據(jù)包加載到CPU高速緩存(L1/L2)中處理,減少了對主內(nèi)存的頻繁訪問次數(shù),極大提升了效率。

簡言之,VPP通過批量化、并行計算和緩存優(yōu)化,在通用CPU上實現(xiàn)了接近專用硬件的包處理性能。
用戶態(tài)協(xié)議棧:繞過內(nèi)核瓶頸
傳統(tǒng)Linux內(nèi)核網(wǎng)絡(luò)協(xié)議棧雖然通用性強,但在高性能場景下存在顯著瓶頸。用戶程序處理網(wǎng)絡(luò)數(shù)據(jù)需要頻繁陷入內(nèi)核,帶來延遲。OSI模型逐層處理和層間數(shù)據(jù)拷貝效率低下。軟中斷與單線程限制, 主要依賴軟中斷和單線程模型,難以充分利用多核CPU,高并發(fā)下成為瓶頸。
VPP的優(yōu)勢在于完全在用戶態(tài)實現(xiàn)網(wǎng)絡(luò)協(xié)議棧:
- 消除模式切換: 運行在用戶態(tài),結(jié)合DPDK直接訪問網(wǎng)卡,徹底繞過內(nèi)核協(xié)議棧和內(nèi)核態(tài)/用戶態(tài)切換。
- 融合協(xié)議處理: 將IP、TCP、Session等層處理緊密結(jié)合在同一內(nèi)存區(qū)域進行,減少冗余數(shù)據(jù)傳遞和拷貝。
- 用戶態(tài)多線程并行: 利用現(xiàn)代CPU多核能力,通過線程池并行處理多個數(shù)據(jù)流,調(diào)度開銷更小,任務(wù)分配更靈活,吞吐量可隨核心數(shù)近線性增長。
用戶態(tài)網(wǎng)絡(luò)協(xié)議棧是VPP實現(xiàn)高性能的關(guān)鍵架構(gòu),通過消除內(nèi)核瓶頸、融合處理和多核并行,釋放了通用硬件的網(wǎng)絡(luò)潛能。

DPDK(Data Plane Development Kit)是另一個關(guān)鍵的開源項目(同樣在Linux基金會下)。它提供了一套用戶態(tài)庫和驅(qū)動程序:
- 核心思想: 繞過Linux內(nèi)核,直接在用戶態(tài)進行高速數(shù)據(jù)包處理。
- 實現(xiàn)方式: 使用用戶態(tài)的“輪詢模式驅(qū)動程序”(PMD),持續(xù)輪詢網(wǎng)卡隊列獲取新數(shù)據(jù)包,實現(xiàn)高吞吐量和低延遲(工作在L2)。
提供對網(wǎng)絡(luò)硬件的直接、高效訪問能力。
VPP + DPDK:強強聯(lián)合,釋放極致性能
VPP與DPDK的集成是天然且高效的:
- 分工協(xié)作: VPP專注于L2-L7的高層網(wǎng)絡(luò)協(xié)議處理邏輯,而DPDK則作為其底層“驅(qū)動程序”,負責(zé)L2的快速收發(fā)包和直接硬件訪問。

核心優(yōu)勢:
- 直接硬件訪問: VPP通過DPDK直接操作網(wǎng)卡,完全避開了內(nèi)核協(xié)議棧及其開銷。
- 零拷貝(或最小化拷貝): DPDK將網(wǎng)卡的DMA內(nèi)存區(qū)域映射到用戶態(tài),使得VPP可以直接訪問數(shù)據(jù)包,避免了內(nèi)核態(tài)到用戶態(tài)的數(shù)據(jù)拷貝。
這種集成構(gòu)建了一個完整的、高性能的用戶態(tài)網(wǎng)絡(luò)數(shù)據(jù)平面,在通用CPU上實現(xiàn)了以往只有專用硬件才能提供的網(wǎng)絡(luò)性能。
應(yīng)用實例:開放網(wǎng)絡(luò)硬件平臺
基于VPP+DPDK的強大能力,構(gòu)建了系列開放網(wǎng)絡(luò)硬件平臺,滿足不同場景需求:
智能網(wǎng)關(guān)平臺

- 核心硬件: 采用高性能Marvell OCTEON 10 ARM Neoverse N2 8核處理器。
- 性能亮點: 在加載全互聯(lián)網(wǎng)BGP路由表(約100萬條)的嚴苛條件下,仍能提供高達48Gbps的路由轉(zhuǎn)發(fā)性能。這相當于能同時流暢承載3000路4K高清視頻通話。
- 價值: 滿足企業(yè)出口網(wǎng)關(guān)、小型城域網(wǎng)邊緣、云邊緣網(wǎng)關(guān)等場景對高性能、低成本、開放性的需求。
- 對比優(yōu)勢: 相比未采用VPP的同等硬件平臺,性能提升超過10倍。

Helium DPU 智能網(wǎng)卡

- 核心功能: 基于高性能DPU芯片設(shè)計,通過PCIe Gen3.0/4.0接口連接服務(wù)器,提供高達100Gbps的網(wǎng)絡(luò)、計算、存儲功能卸載和加速能力,顯著釋放服務(wù)器主CPU資源。
- 關(guān)鍵優(yōu)勢:
- 強大的業(yè)務(wù)處理: 支持復(fù)雜網(wǎng)絡(luò)功能卸載(如OVS, Firewall, VPN)及存儲、安全加速。
- 卓越的開放性 & 易移植性: 基于x86開發(fā)的DPDK應(yīng)用、VPP應(yīng)用以及標準Linux驅(qū)動應(yīng)用,僅需簡單編譯即可快速遷移到Helium DPU卡上運行,保護客戶投資,降低開發(fā)門檻。
- 產(chǎn)品規(guī)格: 提供4x25GE和2x100GE端口型號,更高規(guī)格產(chǎn)品持續(xù)開發(fā)中。
公眾號:星融元Asterfusion(獲取《開放網(wǎng)絡(luò)架構(gòu)指南》)
-
網(wǎng)關(guān)
+關(guān)注
關(guān)注
9文章
5654瀏覽量
52964 -
VPP
+關(guān)注
關(guān)注
0文章
8瀏覽量
9760 -
DPDK
+關(guān)注
關(guān)注
0文章
14瀏覽量
1855
發(fā)布評論請先 登錄
2012:IT產(chǎn)業(yè)界成王敗寇戰(zhàn)役即將開打
資深業(yè)界女將深度解析智能硬件投資邏輯
物聯(lián)網(wǎng)助力RFID產(chǎn)業(yè)發(fā)展
一文幫你梳理Cortex與ARMv8等基礎(chǔ)概念
簡單梳理一下嵌入式視覺領(lǐng)域的主流硬件平臺
技術(shù)構(gòu)筑萬物智聯(lián),第一屆OpenHarmony技術(shù)峰會圓滿舉行
共建、共享開源EDA核心共性技術(shù)框架|2023開放原子全球開源峰會開源EDA分論壇成功舉辦
NXP量產(chǎn)業(yè)界最高性能的CortexTM-M3微控制器--L
松下公司開始出產(chǎn)業(yè)界容量最高筆記本電池
5G是產(chǎn)業(yè)互聯(lián)網(wǎng)的爆發(fā)期將為產(chǎn)業(yè)界創(chuàng)造巨大機遇
豆?jié){早餐會的談話 七個產(chǎn)業(yè)界的重量級人物
華為先于產(chǎn)業(yè)界啟動5G研究,力推全球統(tǒng)一標準
簡述高速流量處理DPDK替代方案

光伏連接器:跨越家用與產(chǎn)業(yè)界的電力使者

評論