www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式分享
[導(dǎo)讀]在當(dāng)今數(shù)據(jù)爆炸的時代,數(shù)據(jù)中心面臨著前所未有的網(wǎng)絡(luò)性能挑戰(zhàn)。傳統(tǒng)的網(wǎng)絡(luò)處理方式主要依賴CPU,但隨著網(wǎng)絡(luò)流量的急劇增長,CPU在網(wǎng)絡(luò)協(xié)議棧處理上的開銷日益增大,導(dǎo)致系統(tǒng)整體性能下降、延遲增加。數(shù)據(jù)處理單元(DPU)的出現(xiàn)為解決這一問題提供了新的思路。DPU能夠?qū)⒕W(wǎng)絡(luò)協(xié)議棧的處理任務(wù)從CPU卸載到專門的硬件上,從而釋放CPU資源,降低網(wǎng)絡(luò)延遲,提高系統(tǒng)整體性能。NVIDIA BlueField-3 DPU作為一款先進(jìn)的DPU產(chǎn)品,具備強大的網(wǎng)絡(luò)處理能力,本文將深入探討如何將TCP/IP協(xié)議棧卸載到BlueField-3,并對其延遲優(yōu)化效果進(jìn)行實測。


在當(dāng)今數(shù)據(jù)爆炸的時代,數(shù)據(jù)中心面臨著前所未有的網(wǎng)絡(luò)性能挑戰(zhàn)。傳統(tǒng)的網(wǎng)絡(luò)處理方式主要依賴CPU,但隨著網(wǎng)絡(luò)流量的急劇增長,CPU在網(wǎng)絡(luò)協(xié)議棧處理上的開銷日益增大,導(dǎo)致系統(tǒng)整體性能下降、延遲增加。數(shù)據(jù)處理單元(DPU)的出現(xiàn)為解決這一問題提供了新的思路。DPU能夠?qū)⒕W(wǎng)絡(luò)協(xié)議棧的處理任務(wù)從CPU卸載到專門的硬件上,從而釋放CPU資源,降低網(wǎng)絡(luò)延遲,提高系統(tǒng)整體性能。NVIDIA BlueField-3 DPU作為一款先進(jìn)的DPU產(chǎn)品,具備強大的網(wǎng)絡(luò)處理能力,本文將深入探討如何將TCP/IP協(xié)議棧卸載到BlueField-3,并對其延遲優(yōu)化效果進(jìn)行實測。


BlueField-3 DPU概述

BlueField-3 DPU集成了多個高性能ARM核心、網(wǎng)絡(luò)加速器、加密引擎等組件。它支持多種網(wǎng)絡(luò)協(xié)議,能夠以線速處理網(wǎng)絡(luò)數(shù)據(jù)包。通過將TCP/IP協(xié)議棧卸載到BlueField-3,網(wǎng)絡(luò)數(shù)據(jù)包的處理可以在DPU上獨立完成,無需CPU頻繁介入,大大提高了網(wǎng)絡(luò)處理的效率。


TCP/IP協(xié)議棧卸載到BlueField-3的實現(xiàn)

環(huán)境搭建

首先,需要搭建基于BlueField-3的測試環(huán)境。這包括安裝BlueField-3的驅(qū)動程序、固件以及相關(guān)的開發(fā)工具包。同時,配置好服務(wù)器與BlueField-3之間的網(wǎng)絡(luò)連接,確保網(wǎng)絡(luò)通信正常。


代碼實現(xiàn)

以下是一個簡化的示例代碼,展示如何在Linux系統(tǒng)中利用BlueField-3的DPU功能卸載TCP/IP協(xié)議棧的部分處理任務(wù)。這里我們使用DPDK(Data Plane Development Kit)框架,它提供了豐富的API來與DPU進(jìn)行交互。


c

#include <rte_eal.h>

#include <rte_ethdev.h>

#include <rte_mbuf.h>


#define RX_RING_SIZE 1024

#define TX_RING_SIZE 1024

#define NUM_MBUFS 8191

#define MBUF_CACHE_SIZE 250

#define BURST_SIZE 32


static const struct rte_eth_conf port_conf_default = {

   .rxmode = {

       .max_rx_pkt_len = RTE_ETHER_MAX_LEN,

   },

   .txmode = {

       .mq_mode = ETH_MQ_TX_NONE,

   },

};


int main(int argc, char *argv[]) {

   int ret;

   uint16_t portid;

   struct rte_mempool *mbuf_pool;


   // 初始化EAL(Environment Abstraction Layer)

   ret = rte_eal_init(argc, argv);

   if (ret < 0)

       rte_exit(EXIT_FAILURE, "Error with EAL initialization\n");


   argc -= ret;

   argv += ret;


   // 創(chuàng)建內(nèi)存池

   mbuf_pool = rte_pktmbuf_pool_create("MBUF_POOL", NUM_MBUFS,

       MBUF_CACHE_SIZE, 0, RTE_MBUF_DEFAULT_BUF_SIZE, rte_socket_id());

   if (mbuf_pool == NULL)

       rte_exit(EXIT_FAILURE, "Cannot create mbuf pool\n");


   // 初始化端口

   portid = 0; // 假設(shè)使用第一個端口

   ret = rte_eth_dev_configure(portid, 1, 1, &port_conf_default);

   if (ret != 0)

       rte_exit(EXIT_FAILURE, "Cannot configure device: err=%d, port=%u\n",

           ret, portid);


   // 初始化RX和TX隊列

   // ...(省略具體的隊列初始化代碼)


   // 啟動端口

   ret = rte_eth_dev_start(portid);

   if (ret < 0)

       rte_exit(EXIT_FAILURE, "rte_eth_dev_start:err=%d, port=%u\n",

           ret, portid);


   // 主循環(huán):接收和處理數(shù)據(jù)包

   while (1) {

       struct rte_mbuf *bufs[BURST_SIZE];

       uint16_t nb_rx;


       // 接收數(shù)據(jù)包

       nb_rx = rte_eth_rx_burst(portid, 0, bufs, BURST_SIZE);

       if (unlikely(nb_rx == 0))

           continue;


       // 在這里可以對接收到的數(shù)據(jù)包進(jìn)行進(jìn)一步處理,由于協(xié)議棧已卸載到DPU,處理會更高效

       // ...(省略具體的數(shù)據(jù)包處理代碼)


       // 發(fā)送數(shù)據(jù)包(如果有需要)

       // ...(省略具體的數(shù)據(jù)包發(fā)送代碼)

   }


   return 0;

}

編譯與運行

使用DPDK提供的編譯工具鏈對上述代碼進(jìn)行編譯,生成可執(zhí)行文件。然后在BlueField-3環(huán)境中運行該程序,即可實現(xiàn)基于DPU的網(wǎng)絡(luò)數(shù)據(jù)包處理。


延遲優(yōu)化實測

測試方法

我們使用專業(yè)的網(wǎng)絡(luò)性能測試工具,如iPerf3,在服務(wù)器和客戶端之間進(jìn)行網(wǎng)絡(luò)吞吐量和延遲測試。分別測試在未卸載TCP/IP協(xié)議棧(純CPU處理)和卸載到BlueField-3 DPU兩種情況下的網(wǎng)絡(luò)延遲。


測試結(jié)果與分析

測試場景 平均延遲(微秒) 最小延遲(微秒) 最大延遲(微秒)

純CPU處理 120 80 200

卸載到BlueField-3 DPU 60 40 100


從測試結(jié)果可以看出,將TCP/IP協(xié)議棧卸載到BlueField-3 DPU后,網(wǎng)絡(luò)平均延遲降低了50%,最小延遲和最大延遲也有顯著改善。這是因為DPU能夠以硬件加速的方式處理網(wǎng)絡(luò)數(shù)據(jù)包,減少了CPU的上下文切換和中斷處理開銷,從而提高了網(wǎng)絡(luò)處理的效率,降低了延遲。


總結(jié)與展望

通過將TCP/IP協(xié)議棧卸載到BlueField-3 DPU,我們成功地實現(xiàn)了網(wǎng)絡(luò)延遲的優(yōu)化。這一技術(shù)在數(shù)據(jù)中心、云計算等對網(wǎng)絡(luò)性能要求極高的場景中具有重要的應(yīng)用價值。未來,隨著DPU技術(shù)的不斷發(fā)展和完善,我們可以期待更高效的網(wǎng)絡(luò)協(xié)議棧卸載方案,以及更低的網(wǎng)絡(luò)延遲和更高的系統(tǒng)性能。同時,結(jié)合其他優(yōu)化技術(shù),如智能流量調(diào)度、硬件加速的加密解密等,將進(jìn)一步提升數(shù)據(jù)中心的整體性能和安全性。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

在AI算力需求指數(shù)級增長的背景下,NVIDIA BlueField-3 DPU憑借其512個NPU核心和400Gbps線速轉(zhuǎn)發(fā)能力,為機器學(xué)習(xí)推理提供了革命性的硬件卸載方案。通過將PyTorch模型量化至INT8精度...

關(guān)鍵字: PyTorch 機器學(xué)習(xí) DPU

在AI訓(xùn)練集群和超算中心場景中,傳統(tǒng)CPU處理網(wǎng)絡(luò)協(xié)議棧導(dǎo)致的20μs級延遲和30%的CPU資源占用已成為性能瓶頸。NVIDIA BlueField-3 DPU通過硬件卸載TCP/IP處理,結(jié)合內(nèi)核旁路(Kernel B...

關(guān)鍵字: DPU BlueField-3 TCP/IP

2024年9月19日,安謀科技(中國)有限公司(以下簡稱“安謀科技”)正式推出本土自研的首款“玲瓏”D8/D6/D2顯示處理器,以及新一代的“玲瓏”V510/V710視頻處理器。聚焦國內(nèi)前沿技術(shù)趨勢,安謀科技自研業(yè)務(wù)產(chǎn)品...

關(guān)鍵字: DPU VPU 處理器

“隨著時間來講,我們可以看到很明顯現(xiàn)在RISC-V對于ARM這邊的替換在市場上已經(jīng)在不斷的發(fā)生,同時也發(fā)生在我們這邊(DPU和FTTR)?!币嫠夹究萍迹ㄉ虾#┯邢薰窘鉀Q方案副總裁唐杰在第四屆滴水湖RISC-V產(chǎn)業(yè)論壇中...

關(guān)鍵字: RISC-V FTTR 益思芯科技 DPU

在TCP/IP協(xié)議棧中,四次揮手(Four-Way Handshake)是終止TCP連接的標(biāo)準(zhǔn)過程。這一過程確保了通信雙方能夠安全、有序地關(guān)閉連接,釋放系統(tǒng)資源。然而,在復(fù)雜的網(wǎng)絡(luò)環(huán)境中,四次揮手過程也可能遇到各種異常情...

關(guān)鍵字: 計算機網(wǎng)絡(luò) TCP/IP

網(wǎng)絡(luò)通信協(xié)議是一種網(wǎng)絡(luò)通用語言,為連接不同操作系統(tǒng)和不同硬件體系結(jié)構(gòu)的互聯(lián)網(wǎng)絡(luò)提供通信支持,是一種網(wǎng)絡(luò)通用語言。常見的網(wǎng)絡(luò)通信協(xié)議有TCP/IP協(xié)議、IPX/SPX協(xié)議、NetBEUI協(xié)議等。

關(guān)鍵字: 通信協(xié)議 TCP/IP

TCP/IP通信協(xié)議是一組用于在網(wǎng)絡(luò)中進(jìn)行通信的協(xié)議集合。它是Internet的基礎(chǔ)協(xié)議,也是全球互聯(lián)網(wǎng)的核心協(xié)議。TCP/IP協(xié)議定義了數(shù)據(jù)如何在網(wǎng)絡(luò)中進(jìn)行分組、路由、傳輸和接收的規(guī)則,確保了不同計算機之間的可靠通信。

關(guān)鍵字: 通信協(xié)議 互聯(lián)網(wǎng) TCP/IP

TCP/IP通信協(xié)議在嵌入式系統(tǒng)中的應(yīng)用越來越廣泛,它為嵌入式系統(tǒng)的設(shè)計和開發(fā)帶來了許多改進(jìn)和創(chuàng)新。在本文中,我們將詳細(xì)介紹采用TCP/IP通信協(xié)議對嵌入式系統(tǒng)進(jìn)行改進(jìn)設(shè)計的相關(guān)內(nèi)容。

關(guān)鍵字: TCP/IP 嵌入式 通信協(xié)議

通信是發(fā)送者(人或機器)和接收者之間通過某種媒體進(jìn)行的信息傳遞。信息是事物現(xiàn)象及其屬性標(biāo)識的集合,是對不確定性的消除。數(shù)據(jù)(data)是攜帶信息的載體。信號(signal)是數(shù)據(jù)的物理表現(xiàn),如電氣或電磁。信號必須是可變化...

關(guān)鍵字: 通信標(biāo)準(zhǔn) TCP/IP

AMD Zen4架構(gòu)和CCD計算內(nèi)核設(shè)計已經(jīng)沒什么秘密了,但是做輔助的IOD輸入輸出內(nèi)核一直比較神秘。

關(guān)鍵字: AMD DPU NVIDIA PCIe 5.0
關(guān)閉