當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式分享
[導(dǎo)讀]隨著數(shù)據(jù)中心網(wǎng)絡(luò)需求的不斷提升,尤其是對(duì)數(shù)據(jù)速率和延遲的嚴(yán)格要求,網(wǎng)絡(luò)協(xié)議棧正逐漸從軟件轉(zhuǎn)向硬件實(shí)現(xiàn)。這一轉(zhuǎn)變旨在以低延遲和低CPU利用率實(shí)現(xiàn)100 Gbps甚至更高的數(shù)據(jù)速率。然而,傳統(tǒng)的網(wǎng)絡(luò)接口卡(NIC)中的網(wǎng)絡(luò)協(xié)議棧通常采用硬連線方式,這限制了傳輸協(xié)議的創(chuàng)新和靈活性。為了解決這一問(wèn)題,本文提出了一種名為T(mén)onic的可編程硬件架構(gòu),旨在高速網(wǎng)卡中實(shí)現(xiàn)靈活且高效的傳輸協(xié)議。

隨著數(shù)據(jù)中心網(wǎng)絡(luò)需求的不斷提升,尤其是對(duì)數(shù)據(jù)速率和延遲的嚴(yán)格要求,網(wǎng)絡(luò)協(xié)議棧正逐漸從軟件轉(zhuǎn)向硬件實(shí)現(xiàn)。這一轉(zhuǎn)變旨在以低延遲和低CPU利用率實(shí)現(xiàn)100 Gbps甚至更高的數(shù)據(jù)速率。然而,傳統(tǒng)的網(wǎng)絡(luò)接口卡(NIC)中的網(wǎng)絡(luò)協(xié)議棧通常采用硬連線方式,這限制了傳輸協(xié)議的創(chuàng)新和靈活性。為了解決這一問(wèn)題,本文提出了一種名為T(mén)onic的可編程硬件架構(gòu),旨在高速網(wǎng)卡中實(shí)現(xiàn)靈活且高效的傳輸協(xié)議。


一、背景與挑戰(zhàn)

在數(shù)據(jù)中心網(wǎng)絡(luò)中,傳統(tǒng)的軟件網(wǎng)絡(luò)協(xié)議棧盡管一直在努力提高其性能和效率,但在100 Gbps以太網(wǎng)上,它們往往會(huì)消耗高達(dá)30-40%的CPU周期。為了降低CPU利用率和提高性能,多個(gè)供應(yīng)商開(kāi)發(fā)了完全在NIC上運(yùn)行的硬件網(wǎng)絡(luò)協(xié)議棧。然而,這些NIC通常僅實(shí)現(xiàn)了兩種主要的傳輸協(xié)議(如RoCE和TCP),并且這些協(xié)議是硬連線的,只能由供應(yīng)商進(jìn)行修改。


這種硬連線方式限制了傳輸協(xié)議的創(chuàng)新和適應(yīng)性。例如,盡管近年來(lái)提出了許多用于可靠傳輸和擁塞控制的新算法,但現(xiàn)有的硬件堆棧通常只支持一小部分這些算法。此外,當(dāng)運(yùn)營(yíng)商需要修改數(shù)據(jù)傳輸算法以避免網(wǎng)絡(luò)中出現(xiàn)活鎖時(shí),他們必須依賴(lài)NIC供應(yīng)商進(jìn)行更改,這增加了操作的復(fù)雜性和成本。


二、Tonic架構(gòu)概述

為了克服這些挑戰(zhàn),我們?cè)O(shè)計(jì)并開(kāi)發(fā)了Tonic,這是一種用于傳輸邏輯的靈活硬件架構(gòu)。Tonic旨在高速網(wǎng)卡中實(shí)現(xiàn)可編程傳輸協(xié)議,同時(shí)滿足100 Gbps的數(shù)據(jù)速率要求。


Tonic的核心思想是識(shí)別跨不同傳輸協(xié)議的傳輸邏輯的通用模式,并基于這些模式創(chuàng)建一個(gè)高效的硬件“模板”。這個(gè)模板允許用戶(hù)使用簡(jiǎn)單的API進(jìn)行編程,而無(wú)需深入了解高速硬件編程的復(fù)雜性。


三、Tonic的設(shè)計(jì)與實(shí)現(xiàn)

Tonic的設(shè)計(jì)主要圍繞以下兩個(gè)方面:


可編程傳輸邏輯:

傳輸協(xié)議的實(shí)現(xiàn)涉及多種功能,如連接管理、數(shù)據(jù)緩沖區(qū)管理和數(shù)據(jù)傳輸。然而,其核心任務(wù)是決定傳輸哪些數(shù)據(jù)段(數(shù)據(jù)傳輸)和何時(shí)傳輸(擁塞控制),這些統(tǒng)稱(chēng)為傳輸邏輯。Tonic通過(guò)提供一個(gè)可編程的傳輸邏輯架構(gòu),使用戶(hù)能夠修改這些核心功能,從而實(shí)現(xiàn)靈活的傳輸協(xié)議。

高效硬件模板:

盡管不同的傳輸協(xié)議在連接和數(shù)據(jù)緩沖區(qū)管理方面存在差異,但它們有幾種共同的模式。例如,不同的傳輸協(xié)議使用不同的算法來(lái)檢測(cè)丟失的數(shù)據(jù)包,但一旦數(shù)據(jù)包被宣布丟失,可靠傳輸協(xié)議就會(huì)將其重傳。Tonic利用這些通用模式創(chuàng)建了一個(gè)高效的硬件模板,該模板可以支持多種傳輸協(xié)議的傳輸邏輯。

四、代碼實(shí)現(xiàn)與實(shí)驗(yàn)驗(yàn)證

我們?cè)赩erilog中實(shí)現(xiàn)了Tonic原型,并在FPGA上進(jìn)行了實(shí)驗(yàn)驗(yàn)證。實(shí)驗(yàn)結(jié)果表明,Tonic能夠支持多種協(xié)議的傳輸邏輯,并滿足100 Gbps背靠背128字節(jié)數(shù)據(jù)包的時(shí)序要求。


以下是Tonic原型的一部分Verilog代碼示例:


verilog

module tonic(  

   input wire clk,  

   input wire rst,  

   // 輸入端口,用于接收來(lái)自傳輸層的數(shù)據(jù)和元數(shù)據(jù)  

   input wire [31:0] data_in,  

   input wire [15:0] meta_in,  

   // 輸出端口,用于將數(shù)據(jù)發(fā)送到下游DMA流水線  

   output wire [31:0] data_out,  

   output wire valid_out  

);  

 

// 內(nèi)部信號(hào)定義  

wire [31:0] buffer[0:2047]; // 用于存儲(chǔ)未完成的數(shù)據(jù)段  

wire [15:0] meta_buffer[0:2047]; // 用于存儲(chǔ)元數(shù)據(jù)  

wire [9:0] stream_id; // 流標(biāo)識(shí)符  

wire [11:0] byte_count; // 未完成字節(jié)數(shù)  

 

// 傳輸邏輯實(shí)現(xiàn)(示例)  

// ...(此處省略了具體的傳輸邏輯實(shí)現(xiàn)代碼)  

 

// 數(shù)據(jù)輸出邏輯  

assign data_out = buffer[stream_id];  

assign valid_out = (byte_count > 0) && (/* 其他條件 */);  

 

// 其他邏輯(如連接管理、緩沖區(qū)管理等)  

// ...(此處省略了其他邏輯的實(shí)現(xiàn)代碼)  

 

endmodule

請(qǐng)注意,上述代碼僅為示例,并未包含完整的傳輸邏輯實(shí)現(xiàn)。在實(shí)際應(yīng)用中,需要根據(jù)具體的傳輸協(xié)議和需求進(jìn)行詳細(xì)的實(shí)現(xiàn)。


五、結(jié)論

Tonic作為一種用于高速網(wǎng)卡中可編程傳輸協(xié)議的靈活硬件架構(gòu),為傳輸協(xié)議的創(chuàng)新和靈活性提供了新的解決方案。通過(guò)識(shí)別跨不同傳輸協(xié)議的通用模式,并基于這些模式創(chuàng)建高效的硬件模板,Tonic能夠在滿足100 Gbps數(shù)據(jù)速率要求的同時(shí),支持多種傳輸協(xié)議的傳輸邏輯。實(shí)驗(yàn)結(jié)果表明,Tonic具有可行性和高效性,有望在未來(lái)的數(shù)據(jù)中心網(wǎng)絡(luò)中得到廣泛應(yīng)用。

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

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉