加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴散
  • 作品版權(quán)保護
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
    • 傳統(tǒng)TCP/IP網(wǎng)絡(luò)傳輸困境
    • XDP的整體框架
    • RDMA在家寬網(wǎng)絡(luò)中的應(yīng)用探索
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

算力網(wǎng)絡(luò)城域RDMA在家寬網(wǎng)絡(luò)中的應(yīng)用探索

2023/11/06
3082
閱讀需 18 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

作者:戚丁元,單位:中國移動智慧家庭運營中心

通信領(lǐng)域出場率最高的性能指標就是“帶寬”和“時延”。簡單的說,所謂帶寬是指單位時間內(nèi)能夠傳輸?shù)臄?shù)據(jù)量,而時延指的是數(shù)據(jù)從本端發(fā)出到被對端接收所耗費的時間。因為協(xié)議本身設(shè)計的缺陷,傳統(tǒng)以太網(wǎng)城域網(wǎng)絡(luò)算力化全面升級的今天,要同時保證高帶寬和低時延則顯得力不從心,而相比于傳統(tǒng)以太網(wǎng),RDMA技術(shù)同時做到了更高帶寬和更低時延,所以其在帶寬敏感的場景——比如海量數(shù)據(jù)的交互,時延敏感——比如多個計算節(jié)點間的數(shù)據(jù)同步的場景下得以發(fā)揮其作用。

RDMA(Remote Direct Memory Access,遠程直接地址訪問技術(shù))是一種新的內(nèi)存訪問技術(shù),可以讓服務(wù)器直接高速讀寫其他服務(wù)器的內(nèi)存數(shù)據(jù),而不需要經(jīng)過操作系統(tǒng)/CPU耗時的處理。RDMA已經(jīng)廣泛應(yīng)用于高性能(HPC)科學計算中。隨著數(shù)據(jù)中心高帶寬、低時延的發(fā)展需求,RDMA也開始逐漸應(yīng)用于某些要求數(shù)據(jù)中心具備高性能的場景中。舉個例子,2021年某大型網(wǎng)上商城的雙十一交易額再創(chuàng)新高,達到5000多億,比2020年又增長了近10%。如此巨大的交易額背后是海量的數(shù)據(jù)處理,該網(wǎng)上商城就采用了RDMA技術(shù)來支撐高性能網(wǎng)絡(luò),保障了雙十一的順暢購物。

傳統(tǒng)TCP/IP網(wǎng)絡(luò)傳輸困境

1.1 傳統(tǒng)以太網(wǎng)端到端傳輸系統(tǒng)開銷過大

在描述通信過程時的軟硬件關(guān)系時,我們通常將模型劃分為用戶層Userspace、內(nèi)核Kernel以及硬件Hardware。

Userspace和Kernel實際上使用的是同一塊物理內(nèi)存,但是出于安全考慮,Linux將內(nèi)存劃分為用戶空間和內(nèi)核空間。用戶層沒有權(quán)限訪問和修改內(nèi)核空間的內(nèi)存內(nèi)容,只能通過系統(tǒng)調(diào)用陷入內(nèi)核態(tài),Linux的內(nèi)存管理機制比較復雜。

一次典型的基于傳統(tǒng)以太網(wǎng)的通信過程的可以如下圖所示進行分層:

這個模型的數(shù)據(jù)流向大致是像上圖這個樣子,數(shù)據(jù)首先需要從用戶空間復制一份到內(nèi)核空間,這一次復制由CPU完成,將數(shù)據(jù)塊從用戶空間復制到內(nèi)核空間的Socket Buffer中。內(nèi)核中軟件TCP/IP協(xié)議棧給數(shù)據(jù)添加各層頭部和校驗信息。最后網(wǎng)卡會通過DMA從內(nèi)存中復制數(shù)據(jù),并通過物理鏈路發(fā)送給對端的網(wǎng)卡。

而對端是完全相反的過程:硬件將數(shù)據(jù)包DMA拷貝到內(nèi)存中,然后CPU會對數(shù)據(jù)包進行逐層解析和校驗,最后將數(shù)據(jù)復制到用戶空間。上述過程中的關(guān)鍵點是需要CPU全程參與整個數(shù)據(jù)的處理過程,即從用戶空間拷貝數(shù)據(jù)到內(nèi)核空間、以及對數(shù)據(jù)進行組裝和解析等,數(shù)據(jù)量大的情況下,這將對CPU將造成很大的負擔。

傳統(tǒng)網(wǎng)絡(luò)中,“節(jié)點A給節(jié)點B發(fā)消息”實際上做的是“把節(jié)點A內(nèi)存中的一段數(shù)據(jù),通過網(wǎng)絡(luò)鏈路搬移到節(jié)點B的內(nèi)存中”,而這一過程無論是發(fā)端還是收段,都需要CPU的指揮和控制,包括網(wǎng)卡的控制,中斷的處理,報文的封裝和解析等等。

上圖中左邊的節(jié)點在內(nèi)存用戶空間中的數(shù)據(jù),需要經(jīng)過CPU拷貝到內(nèi)核空間的緩沖區(qū)中,然后才可以被網(wǎng)卡訪問,這期間數(shù)據(jù)會經(jīng)過軟件實現(xiàn)的TCP/IP協(xié)議棧,加上各層頭部和校驗碼,比如TCP頭,IP頭等。網(wǎng)卡通過DMA拷貝內(nèi)核中的數(shù)據(jù)到網(wǎng)卡內(nèi)部的緩沖區(qū)中,進行處理后通過物理鏈路發(fā)送給對端。

對端收到數(shù)據(jù)后,會進行相反的過程:從網(wǎng)卡內(nèi)部存儲空間,將數(shù)據(jù)通過DMA拷貝到內(nèi)存內(nèi)核空間的緩沖區(qū)中,然后CPU會通過TCP/IP協(xié)議棧對其進行解析,將數(shù)據(jù)取出來拷貝到用戶空間中??梢钥吹剑词褂辛薉MA技術(shù),上述過程還是對CPU有較強的依賴。

1.2 TCP協(xié)議本身在長肥管道場景下存在天然不足

TCP長肥管道的兩大特征

①傳輸時延(發(fā)送時延)很小:收發(fā)包速度很快,非常短的時間就能把大量的數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)上。

②傳播時延很大:數(shù)據(jù)包從發(fā)送到網(wǎng)絡(luò)上開始,要經(jīng)過很長的時間(相比于發(fā)送時延)才能傳送到接收端。

LFN對TCP性能的影響

①LFN的帶寬延時積很大

(發(fā)送很快,傳播到另外一端需要很長時間),導致會有大量的數(shù)據(jù)包滯留在傳播途中TCP流控算法會在窗口變成0時停止發(fā)送。但原始的TCP頭部的窗口大小字段是16位的,因此窗口大小最大為65535字節(jié),這就將發(fā)送方發(fā)送但未被確認的數(shù)據(jù)的總長度限制到了65536字節(jié)。參考計算65535*8/1024/1024=0.5Mbps,那么假設(shè)發(fā)送速度足夠快的前提下,在傳播時延為100毫秒的網(wǎng)絡(luò)里,只要5Mbps的帶寬就可以做到在第一個bit還沒有到達接收端時,發(fā)送端就已經(jīng)發(fā)送完了最后一個bit, 然后窗口變成0,停止發(fā)送數(shù)據(jù),還要等待至少100毫秒發(fā)送端才能收到接收端發(fā)回來的接收窗口通告,然后才能打開窗口繼續(xù)發(fā)送,意味著最多只能使用到5Mbps的帶寬,因此不能充分利用網(wǎng)絡(luò)。------由此提出了窗口擴大選項以聲明更大的窗口。

②LFN的高延時會導致管道枯竭

據(jù)TCP的擁塞控制,丟失分組會導致連接進行擁塞控制,即便是由于冗余ACK而進入了快速恢復,也會使得擁塞窗口降低一半,而如果是由于超時進入了慢啟動,則擁塞窗口會變?yōu)?,無論是哪一種情形,發(fā)送方允許被發(fā)送的數(shù)據(jù)量都大量減小了,這會使得管道枯竭,網(wǎng)絡(luò)通信速度急劇下降。

③LFN不利于TCP協(xié)議的RTT測量

按TCP協(xié)議,每個TCP連接只有一個RTT計時器, 同一時間,只有一個報文做RTT測量,啟動RTT計時的數(shù)據(jù)在沒有被ACK前, TCP無法進行下一次RTT的測量。而在長肥管道中,傳播時延很大,這意味著RTT的測試周期很大。

④LFN導致收端tcp亂序

長肥管的發(fā)送速度非??欤òl(fā)送時延),TCP對每個字節(jié)數(shù)據(jù)使用一個32bit無符號的序號來進行標識。TCP定義了最大的報文段生存時間(MSL)來限制報文段在網(wǎng)絡(luò)中的生存時間。但是在LFN網(wǎng)絡(luò)上,由于序號空間是有限的,在已經(jīng)傳輸了4294967296個字節(jié)以后序號會被重用。如果網(wǎng)絡(luò)快到在不到一個MSL的時候序號就發(fā)生了回繞,網(wǎng)絡(luò)中就會有兩個具有相同序號的不同的報文段,接收方將無法區(qū)分它們的順序。在一個千兆比特網(wǎng)絡(luò)(1000Mb/s)中只需要34秒就可以完成4294967296個字節(jié)的發(fā)送。

XDP的整體框架

2.1 基本原理

RDMA(Remote Direct Memory Access)意為遠程直接地址訪問,通過RDMA,本端節(jié)點可以“直接”訪問遠端節(jié)點的內(nèi)存。所謂“直接”,指的是可以像訪問本地內(nèi)存一樣,繞過傳統(tǒng)以太網(wǎng)復雜的TCP/IP網(wǎng)絡(luò)協(xié)議棧讀寫遠端內(nèi)存,而這個過程對端是不感知的,而且這個讀寫過程的大部分工作是由硬件而不是軟件完成的。而使用了RDMA技術(shù)之后,這一過程可以簡單的表示成下面的示意圖:

同樣是把本端內(nèi)存中的一段數(shù)據(jù),復制到對端內(nèi)存中,在使用了RDMA技術(shù)時,兩端的CPU幾乎不用參與數(shù)據(jù)傳輸過程(只參與控制面)。本端的網(wǎng)卡直接從內(nèi)存的用戶空間DMA拷貝數(shù)據(jù)到內(nèi)部存儲空間,然后硬件進行各層報文的組裝后,通過物理鏈路發(fā)送到對端網(wǎng)卡。對端的RDMA網(wǎng)卡收到數(shù)據(jù)后,剝離各層報文頭和校驗碼,通過DMA將數(shù)據(jù)直接拷貝到用戶空間內(nèi)存中。RDMA將服務(wù)器應(yīng)用數(shù)據(jù)直接由內(nèi)存?zhèn)鬏數(shù)街悄芫W(wǎng)卡(固化RDMA協(xié)議),由智能網(wǎng)卡硬件完成RDMA傳輸報文封裝,解放了操作系統(tǒng)和CPU。

2.2 核心優(yōu)勢

1)Zero Copy(零拷貝):無需將數(shù)據(jù)拷貝到操作系統(tǒng)內(nèi)核態(tài)并處理數(shù)據(jù)包頭部的過程,傳輸延遲會顯著減小。

2)Kernel Bypass(內(nèi)核旁路) :不需要操作系統(tǒng)內(nèi)核參與,數(shù)據(jù)通路中沒有繁瑣的處理報頭邏輯,不僅會使延遲降低,而且也大大節(jié)省了CPU的資源。

3)Protocol Offload(協(xié)議卸載):RDMA通信可以在遠端節(jié)點CPU不參與通信的情況下,對內(nèi)存進行讀寫,這實際上是把報文封裝和解析放到硬件中做了。對比傳統(tǒng)的以太網(wǎng)通信,雙方CPU都必須參與各層報文的解析,如果數(shù)據(jù)量大且交互頻繁,對CPU來講將是一筆不小的開銷,而這些被占用的CPU計算資源本可以做一些更有價值的工作。

相比于傳統(tǒng)以太網(wǎng),RDMA技術(shù)同時做到了更高帶寬和更低時延,所以其在帶寬敏感的場景——比如海量數(shù)據(jù)的交互,時延敏感——比如多個計算節(jié)點間的數(shù)據(jù)同步的場景下得以發(fā)揮其作用。

2.3 RDMA網(wǎng)絡(luò)基本分類

目前,大致有三類RDMA網(wǎng)絡(luò),分別是InfiniBand、RoCE(RDMA over Converged Ethernet,RDMA過融合以太網(wǎng))和iWARP(RDMA over TCP,互聯(lián)網(wǎng)廣域RDMA協(xié)議)。RDMA最早專屬于Infiniband網(wǎng)絡(luò)架構(gòu),從硬件級別保證可靠傳輸,而RoCE和iWARP都是基于以太網(wǎng)的RDMA技術(shù)。

1)InfiniBand

InfiniBand是一種專為RDMA設(shè)計的網(wǎng)絡(luò), 由IBTA(InfiniBand Trade Association)在2000年提出,其規(guī)定了一整套完整的鏈路層到傳輸層(非傳統(tǒng)OSI七層模型的傳輸層,而是位于其之上)規(guī)范,主要采用Cut-Through轉(zhuǎn)發(fā)模式(直通轉(zhuǎn)發(fā)模式)以減少轉(zhuǎn)發(fā)時延,基于Credit的流控機制(基于信用的流控機制)以保證無丟包。但IB也存在不可避免的成本缺陷。由于其無法兼容現(xiàn)有以太網(wǎng),除了需要支持IB的網(wǎng)卡之外,企業(yè)如果想部署的話還要重新購買配套的交換設(shè)備。

2)RoCE

RoCE有兩個版本:RoCEv1基于以太網(wǎng)鏈路層實現(xiàn),v1版本網(wǎng)絡(luò)層仍然使用了IB規(guī)范,而v2使用了UDP+IP作為網(wǎng)絡(luò)層,使得數(shù)據(jù)包也可以被路由,只能在L2層傳輸;RoCEv2基于UDP承載RDMA,可部署于三層網(wǎng)絡(luò)。

RoCE可以被認為是IB的“低成本解決方案”,部署RoCE網(wǎng)絡(luò)需要支持RDMA專用智能網(wǎng)卡,不需要專用交換機路由器(支持ECN/PFC等技術(shù),降低丟包率),其建網(wǎng)成本在三種rdma網(wǎng)絡(luò)模型中最低。

3)iWARP

傳輸層為iWARP協(xié)議,iWARP是以太網(wǎng)TCP / IP協(xié)議中TCP層實現(xiàn),支持L2 / L3層傳輸,大型組網(wǎng)TCP連接會消耗大量CPU,所以應(yīng)用很少。

iWARP只要求網(wǎng)卡支持RDMA,不需要專用交換機和路由器,建網(wǎng)成本介于InfiniBand和RoCE之間。

2.4 實現(xiàn)對比

Infiniband技術(shù)先進,但是價格高昂,應(yīng)用局限在HPC高性能計算領(lǐng)域,隨著RoCE和iWARPC的出現(xiàn),RDMA的使用成本進一步,從而推動了RDMA技術(shù)普及。

在高性能存儲、計算數(shù)據(jù)中心中采用這三類RDMA網(wǎng)絡(luò),都可以大幅度降低數(shù)據(jù)傳輸時延,并為應(yīng)用程序提供更高的CPU資源可用性。

其中InfiniBand網(wǎng)絡(luò)為數(shù)據(jù)中心帶來極致的性能,傳輸時延低至百納秒,比以太網(wǎng)設(shè)備延時要低一個量級;

RoCE和iWARP網(wǎng)絡(luò)為數(shù)據(jù)中心帶來超高性價比,基于以太網(wǎng)承載RDMA,充分利用了RDMA的高性能和低CPU使用率等優(yōu)勢,同時網(wǎng)絡(luò)建設(shè)成本也不高;

基于UDP協(xié)議的RoCE比基于TCP協(xié)議的iWARP性能更好,結(jié)合無損以太網(wǎng)的流控技術(shù),解決了丟包敏感的問題,RoCE網(wǎng)絡(luò)已廣泛應(yīng)用于各行業(yè)高性能數(shù)據(jù)中心中。

RDMA在家寬網(wǎng)絡(luò)中的應(yīng)用探索

在“網(wǎng)絡(luò)強國、數(shù)字中國、智慧社會”等國家戰(zhàn)略的全面推進下,數(shù)字化、網(wǎng)絡(luò)化、智能化的數(shù)字家庭已經(jīng)成為智慧城市理念在家庭層面的體現(xiàn),“十四五”規(guī)劃和2035遠景目標中,數(shù)字家庭被定位為構(gòu)筑“美好數(shù)字生活新圖景”的重要組成部分,在新一代信息技術(shù)的支持下,數(shù)字家庭正向智慧家庭不斷演進,完成從“數(shù)字”到“智慧”的轉(zhuǎn)變。當前,中國智慧家庭市場規(guī)模逐年擴大,中國已成為全球最大的智能家居市場消費國,占據(jù)全球約50%~60%的市場份額(數(shù)據(jù)來源:CSHIA,艾梅數(shù)據(jù),國家統(tǒng)計局)。據(jù)賽迪顧問研究預計,2030年中國智慧家庭市場規(guī)模將會達到15700億元,2021—2030年平均復合增長率(CAGR)高達14.6%。

伴隨著家寬市場規(guī)模的快速發(fā)展是:

① 家寬無差異化、盡力而為的服務(wù)方式與業(yè)務(wù)差異化、確定性網(wǎng)絡(luò)質(zhì)量需求間的矛盾

當前寬帶接入對不同業(yè)務(wù)網(wǎng)絡(luò)連接不做差異化區(qū)別,以盡力而為方式提供服務(wù),在擁塞時所有業(yè)務(wù)優(yōu)先級相同,采用的處理策略相同。但業(yè)務(wù)對網(wǎng)絡(luò)質(zhì)量要求不同,對時延丟包等敏感度不同,部分時延敏感業(yè)務(wù)如游戲、云電腦等需要確定性網(wǎng)絡(luò)保障,為確保用戶體驗,在網(wǎng)絡(luò)擁塞丟包時,用戶體驗急劇下降,因此在擁塞時對此類業(yè)務(wù)需要不同的處理策略。

② 帶寬提升與長肥管道場景體驗劣化間的矛盾

根據(jù)工信部統(tǒng)計數(shù)據(jù),全國100Mbps以上寬帶用戶占比超過94%,但用戶在訪問遠距離內(nèi)容時仍存在卡頓、下載速度慢的問題。其原因不是接入帶寬不足,而是底層TCP協(xié)議擁塞控制算法在長肥管道(LFN)場景下的天然不足。TCP為幾十年前的協(xié)議,已無法適應(yīng)目前的網(wǎng)絡(luò)狀態(tài)與應(yīng)用需求,亟需新的協(xié)議與算法來確保長肥管道場景下的業(yè)務(wù)體驗。

綜上,從行業(yè)趨勢上來看,在家寬網(wǎng)絡(luò)算力化升級的浪潮之下,RDMA技術(shù)相比于TCP而言,能夠?qū)崿F(xiàn)計算和網(wǎng)絡(luò)的深度融合。將數(shù)據(jù)直接從一臺計算機的內(nèi)存?zhèn)鬏數(shù)搅硪慌_計算機,無需雙方操作系統(tǒng)的介入,不需要經(jīng)過處理器耗時的處理,最終達到高帶寬、低時延和低資源占用率的效果。

參考文獻

[1]https://zhuanlan.zhihu.com/p/138874738, 2021.12.24.

[2]https://blog.csdn.net/meihualing/article/details/129506207, 2023.5.5.

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風險等級 參考價格 更多信息
ADL5561ACPZ-R7 1 Analog Devices Inc 2.9 GHz Ultralow Distortion RF/IF Differential Amplifier

ECAD模型

下載ECAD模型
$9.28 查看
SN65HVD251DR 1 Texas Instruments High Speed CAN Transceiver with Short Loop Delay 8-SOIC -40 to 125

ECAD模型

下載ECAD模型
$4.3 查看
DP83867IRRGZT 1 Texas Instruments Industrial temperature, robust gigabit Ethernet PHY transceiver 48-VQFN -40 to 85

ECAD模型

下載ECAD模型
$16.64 查看
中國移動

中國移動

中國移動有限公司(「本公司」,包括子公司合稱為「本集團」)于1997年9月3日在香港成立,本集團在中國內(nèi)地所有三十一個省、自治區(qū)、直轄市以及香港特別行政區(qū)提供通信和信息服務(wù),業(yè)務(wù)主要涵蓋個人、家庭、政企和新興市場的語音、數(shù)據(jù)、寬帶、專線、IDC、云計算、物聯(lián)網(wǎng)等,是中國內(nèi)地最大的通信和信息服務(wù)供應(yīng)商,亦是全球網(wǎng)絡(luò)和客戶規(guī)模最大、盈利能力領(lǐng)先、市值排名位居前列的世界級通信和信息運營商。

中國移動有限公司(「本公司」,包括子公司合稱為「本集團」)于1997年9月3日在香港成立,本集團在中國內(nèi)地所有三十一個省、自治區(qū)、直轄市以及香港特別行政區(qū)提供通信和信息服務(wù),業(yè)務(wù)主要涵蓋個人、家庭、政企和新興市場的語音、數(shù)據(jù)、寬帶、專線、IDC、云計算、物聯(lián)網(wǎng)等,是中國內(nèi)地最大的通信和信息服務(wù)供應(yīng)商,亦是全球網(wǎng)絡(luò)和客戶規(guī)模最大、盈利能力領(lǐng)先、市值排名位居前列的世界級通信和信息運營商。收起

查看更多

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

移動Labs是中國移動的社交化新媒體平臺,是面向外部行業(yè)及產(chǎn)業(yè)鏈合作伙伴的信息發(fā)布、業(yè)務(wù)發(fā)展和產(chǎn)業(yè)推進門戶。