《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動態(tài) > 從DPU看未來網(wǎng)絡(luò)架構(gòu)的演進(jìn)趨勢

從DPU看未來網(wǎng)絡(luò)架構(gòu)的演進(jìn)趨勢

2022-05-06
作者:半山
來源: 半導(dǎo)體行業(yè)觀察

  未來DC數(shù)據(jù)中心的終極目標(biāo),,是變成一臺超級計算機,有著幾乎無限的計算能力和存儲資源,超大帶寬,、超低延遲,,上面跑無數(shù)的虛擬機或者容器之類的云計算平臺,。谷歌近期發(fā)布一篇關(guān)于Aquila網(wǎng)絡(luò)架構(gòu)的文章,,今天我們就順著最近大熱的DPU,來聊聊網(wǎng)絡(luò)架構(gòu),。

  作為芯片和通訊行業(yè)從業(yè)者,,我們先從承載網(wǎng)聊起(也叫傳輸網(wǎng)),然后再說數(shù)據(jù)中心網(wǎng)絡(luò),,最后對照谷歌Aquila架構(gòu),,展望一下網(wǎng)絡(luò)架構(gòu)未來的演進(jìn)趨勢。

  1,、從承載網(wǎng)聊起

  一般我們說到承載網(wǎng),,是指基站和核心網(wǎng)各網(wǎng)元之間的組網(wǎng)。手機通過空口接入基站,,基站通過光纖,、交換機,和核心網(wǎng)各網(wǎng)元進(jìn)行組網(wǎng),,最后通過核心路由器,,匯入互聯(lián)網(wǎng)。如圖1所示,。從2G時代到5G時代,,承載網(wǎng)技術(shù)在不斷演進(jìn),如圖2所示,。

微信截圖_20220506094804.png

  SDH主要用在GSM/2G時代的語音承載(也叫CS電路交換,,不是那個真人射擊游戲CS,而是Circuit Switching),,TDM時分復(fù)用,、雙向環(huán)狀組網(wǎng)、塊狀幀結(jié)構(gòu),憑借著極高的服務(wù)質(zhì)量和可管理性,,一度統(tǒng)治了傳輸網(wǎng),,如圖3所示。市場經(jīng)濟中,,做生意最難的不是生產(chǎn),,而是找到合適、持續(xù)的買家來消費,。語音時代,,就是打電話,需求剛性,、穩(wěn)定、明確,,一切都好說,。

 微信圖片_20220506094837.jpg

  圖3 SDH組網(wǎng)圖(圖片來源:ITU)

  到了3/4G時代,語音通話占比急劇降低,,IP業(yè)務(wù)比重越來越大,,原因也不復(fù)雜,大家看一下自己打電話,、玩微信,、刷抖音的時間分配。IP和Eth這倆貨,,都是秉承著無連接,、盡力而為的原則(這兩點后面會反復(fù)提及),包大小變長,、不固定,,和SDH的剛性網(wǎng)絡(luò)格格不入。為了填平這個GAP,,MSTP(MSTP = SDH + 以太網(wǎng) + ATM),、MSTP+被推了出來,給SDH續(xù)了十年左右的命,。

  但隨著IP占比逐漸達(dá)到壓倒性優(yōu)勢,,SDH再也湊活不下去了,PTN應(yīng)運而生,。之前看過一個公式,,PTN = MPLS + OAM + 保護(hù) - IP,要理解這個公式,,咱們得先看看MPLS是啥,,如圖4所示。

微信圖片_20220506094912.png

  圖4 IP與MPLS轉(zhuǎn)發(fā)的基本行為對比(圖片來源:《圖解網(wǎng)絡(luò)硬件》)

      OSI參考模型中,,ATM和Eth都位于L2(當(dāng)然Eth也是有L1物理層規(guī)范的),,但設(shè)計原則,、幀結(jié)構(gòu)完全不同。以太幀的原則是變長,、無連接,、盡力而為,ATM是定長,、有連接(其實ATM是TDM技術(shù)的一個升級,、優(yōu)化版本),在兩者的競爭中,,憑借著和IP的設(shè)計理念一致,,Eth逐漸勝出,現(xiàn)在ATM都不咋用了,。

  Eth和IP網(wǎng)絡(luò)中,,無連接和盡力而為,是柄雙刃劍,。在非超低延遲組網(wǎng)中,,這個問題不大,交換機根據(jù)MAC地址,,進(jìn)行存儲轉(zhuǎn)發(fā),,路由器根據(jù)IP地址和子網(wǎng)掩碼,進(jìn)行最長匹配,,而且中高端的Switch和Gateway,,目前都是ASIC硬件加速,部分掩蓋了QoS和延遲的缺陷,。

  但在超低延遲組網(wǎng)中,,比如5G uRLLC承載和數(shù)據(jù)中心網(wǎng)絡(luò),QoS和延遲是關(guān)鍵指標(biāo),。既然Eth/IP和ATM各有千秋,,業(yè)界就搞出了個MPLS。簡單來講,,MPLS屬于OSI參考模型中的2.5層,,向IP提供連接服務(wù),本質(zhì)是隧道技術(shù)的一種,,L2可以采用Eth,,也可以用其他的層二技術(shù)。

  傳統(tǒng)路由中,,分為動態(tài)路由和靜態(tài)路由,。動態(tài)路由主要由RIP、OSPF、BGP這些路由協(xié)議(通過UDP/TCP承載),,在Gateway之間同步路由表,,實際上是無連接的分布式處理。因為IP網(wǎng)絡(luò)是M國軍方設(shè)計的,,一開始的目標(biāo),,就是在極端情況下,各核心部門,,依然能夠保持通訊暢通,,所以分布式、去中心化的設(shè)計是必然的,。帶來的額外負(fù)擔(dān),,就是每個路由器節(jié)點,都要維護(hù)一個巨大的路由表,。如果你仔細(xì)閱讀谷歌論文,,會發(fā)現(xiàn)Aquila中,會在TiN中只維護(hù)一個小表,,這個和MPLS類似,。

  MPLS架構(gòu)中,,為了建立連接,、減少路由表的查找和維護(hù)負(fù)擔(dān),會根據(jù)路由協(xié)議下發(fā)的路由表信息,,由邊緣路由器節(jié)點,,生成局部標(biāo)簽,這個Tag就相當(dāng)于一條虛擬的鏈接標(biāo)識,,后面MPLS的內(nèi)部路由器,,根據(jù)標(biāo)簽直接轉(zhuǎn)發(fā),相當(dāng)于對路由表進(jìn)行了提取和抽象,,后面直接用即可,,所以MPLS和動態(tài)路由,還是有很多關(guān)聯(lián),。

  PTN公式中的 - IP,,實際上就是把MPLS中的動態(tài)路由,改成了由控制面的網(wǎng)管,,進(jìn)行統(tǒng)一的配置和下發(fā),,同時L2層面,硬件支持OAM PDU幀的解析,、處理,,這方面借鑒了SDH中豐富的可維護(hù)性設(shè)計,大家都在互相融合,或者說互相抄襲,。

  2,、聊聊數(shù)據(jù)中心網(wǎng)絡(luò)

  聊完運營商的承載網(wǎng),再來看看數(shù)據(jù)中心(DC)網(wǎng)絡(luò),。在這兩種網(wǎng)絡(luò)的組網(wǎng)拓?fù)渲?,都可以分為接入層、匯聚層,、核心層,,只是DC網(wǎng)絡(luò)的演進(jìn)更為劇烈。如圖5所示,。

微信圖片_20220506094949.png

  圖5 數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)(圖片來源:Cisco官網(wǎng))

      通信企業(yè)經(jīng)常說端,、管、云協(xié)同演進(jìn),,這里面的端,,主要指手機移動終端,管主要指承載網(wǎng),,云要稍微解釋一下,。

  通常意義上,云計算是互聯(lián)網(wǎng)廠商的領(lǐng)域,,畢竟他們的各種業(yè)務(wù),,比如微信、支付寶,、抖音的后端,,都是通過PaaS、IaaS這些云計算平臺,,承載在數(shù)據(jù)中心機房的一堆服務(wù)器上,。但實際上,現(xiàn)在核心網(wǎng)的網(wǎng)元,,都已經(jīng)云化了,,這一點和互聯(lián)網(wǎng)廠商是一致的。

  早期亞馬遜這些互聯(lián)網(wǎng)巨頭,,發(fā)現(xiàn)他們自家的服務(wù)器和云服務(wù),,在滿足自身業(yè)務(wù)需求的同時,還有富余,,可以對外售賣,,這就是目前主流的公有云由來。另外說一句,,亞馬遜在云計算領(lǐng)域,,目前是無可爭議的王者,,引領(lǐng)各種技術(shù)路線的演進(jìn)。

  云計算都是承載在大量的服務(wù)器上,,這些機器部署在數(shù)據(jù)中心機房中,。本來傳統(tǒng)的C/S架構(gòu),終端發(fā)請求,,比如訪問某個網(wǎng)站頁面,,通過承載網(wǎng)、骨干網(wǎng)的一堆交換機,、路由器,,一路到了數(shù)據(jù)中心的機房,服務(wù)器就給你返回一堆網(wǎng)頁數(shù)據(jù),,終端收到數(shù)據(jù)后,,瀏覽器引擎解析、展示,。

  但隨著搜索引擎,、大數(shù)據(jù)處理、人工智能這些領(lǐng)域的應(yīng)用興起,,DC的單臺服務(wù)器無法滿足大量計算和存儲的需求,,分布式架構(gòu)成為必然。同時云計算中的熱遷移,、備份,、容災(zāi)和隔離需求日漸增多,DC原有的南北向(C/S)和東西向(內(nèi)部節(jié)點之間)流量對比關(guān)系發(fā)生變化,,原有的松耦合帶來的通信瓶頸,,日趨明顯,。

  這里多說一句存儲,,在SSD固態(tài)硬盤之前,HDD是絕對的主流,。受限于物理磁盤的尋道時延,,HDD讀寫延遲早已逼近物理極限,所以那個時候DC內(nèi)部存儲部分的網(wǎng)絡(luò)時延,,都顯得問題不大,。SSD沒有物理磁盤,內(nèi)部是一堆Flash器件 + 控制器,,速度極快,,配合專為非易失性存儲設(shè)計的NVMe和NVMeOF,網(wǎng)絡(luò)時延從小頭變成了大頭,,木桶效應(yīng)之下,,網(wǎng)絡(luò)帶寬,、時延和QoS優(yōu)化勢在必行。

  在DPU之前,,業(yè)界整了一堆技術(shù)和解決方案,,比如英特爾,他們一直是以處理器為核心,,主推DPDK加速,,通過用戶態(tài)驅(qū)動,ByPass內(nèi)核協(xié)議棧,,中斷改為Poll輪詢,,降低了用戶態(tài)和內(nèi)核態(tài)的切換開銷,以及內(nèi)存Copy負(fù)擔(dān),,配合一些新增的類似AVX 512的專用指令,,但本質(zhì)上還是TCP/IP那一套。

  Mellanox(已被Nvidia收購),,搞出了個IB(Infinite Band,,聽名字就很牛,無限帶寬),,上層承載RDMA協(xié)議,,憑借其超高帶寬、超低延遲,、超可靠傳輸,,在DC內(nèi)部大行其道,但I(xiàn)B需要專用的NIC網(wǎng)卡,、連接線纜和交換機,,一套下來貴的嚇人,急需降成本,。如圖6所示,。

  這里說一下,RDMA和TCP/IP是并列或者說競爭關(guān)系,,TCP/IP的優(yōu)點是生態(tài)繁榮,、穩(wěn)定,缺點是軟件參與過多,,準(zhǔn)確說是內(nèi)核協(xié)議棧,,所以延遲很大。SmartNIC中,,會通過硬件offload一部分TCP/IP軟件開銷,,但TCP/IP協(xié)議棧的設(shè)計理念和實現(xiàn)復(fù)雜度,就不是為了硬件設(shè)計的,。

微信圖片_20220506095146.jpg

  圖6 Infinite Band架構(gòu)(圖片來源:知乎 @Savir)

     RDMA則不同,,設(shè)計之初,,和IB的L2/Phy配合,都是硬化實現(xiàn),,軟件開銷急速降低,,省出來的CPU資源,給云計算的用戶和上層應(yīng)用來用,,如圖7所示,,就問你香不香。IB好是好,,就是太貴,,能不能像ATM和Eth融合一樣,搞出了個類似MPLS的新玩意呢,,這就是后來的RoCE和RoCEv2,。通過以太網(wǎng)卡和以太交換機,來承載RDMA協(xié)議,,這樣一來,,只要網(wǎng)卡升級一下,線纜和交換機都是現(xiàn)成的,,只是上層應(yīng)用需要調(diào)用Verbs接口,,替換原來的Socket接口。

  微信圖片_20220506095204.jpg

圖7 RDMA(圖片來源:知乎 @Savir)

  最近DPU賽道很火,,Nvidia收購Mellanox,、Intel收購Barefoot,最近AMD把幾位前Cisco員工創(chuàng)辦的Pensando攬入麾下,,加上亞馬遜的Nitro,、阿里的神龍架構(gòu),還有最近國內(nèi)幾家初創(chuàng)公司,,市場熱鬧的一塌糊涂,。

  我們來看DPU幾個核心的功能,首先是硬件Offload:

  1,、網(wǎng)絡(luò):RDMA,、OVS交換機等

  2,、存儲:NVMeOF(Over Fabric)等

  3,、虛擬化:Virtio、SR-IOV,、VxLAN(基于UDP的一種大二層隧道技術(shù))4,、安全:加解密、IPSec等

  5,、數(shù)據(jù):壓縮,、解壓

  然后是IaaS/PaaS接管:

  6,、雙Hypervisor:原有的Hyper變輕、變薄,,新增的下沉到DPU內(nèi)置的核,,一般是ARM,最近有采用RISC-V替換的苗頭,。

  目前關(guān)于DPU,,業(yè)界還沒有統(tǒng)一的定義或者規(guī)范,將來也不一定會有,。DPU是DSA架構(gòu)的一種實踐,,屬于SmartNIC的升級版或者說下一代,同時ToR交換機,、Spine - Leaf架構(gòu)網(wǎng)絡(luò),,都還是存在的。

  3,、暢想未來網(wǎng)絡(luò)架構(gòu)的演進(jìn)趨勢

  現(xiàn)在,,我們終于可以開始討論谷歌的Aquila,先對照圖8所示框架圖,,說下論文中的幾個關(guān)鍵術(shù)語:

  1,、Aquila:數(shù)據(jù)中心的一種新型實驗性質(zhì)的網(wǎng)絡(luò)架構(gòu)2、TiN:ToR in NIC,,NIC和ToR交換機二合一,,實現(xiàn)網(wǎng)卡+交換3、GNet:谷歌自定義二層子網(wǎng)和外部Eth/IP網(wǎng)絡(luò)之間的網(wǎng)關(guān),。

微信圖片_20220506095248.png

  圖8 Aquila框架圖(圖片來源:谷歌Aquila論文)

      從論文中可以看出,,谷歌在現(xiàn)有的DC以太局域網(wǎng)基礎(chǔ)上,增加了自己設(shè)計的一個二層子網(wǎng),,在不動現(xiàn)有DC Spine Leaf + Eth/IP架構(gòu)的基礎(chǔ)上,,構(gòu)建一個超低延遲的L2內(nèi)網(wǎng),滿足數(shù)據(jù)中心分布式計算,、存儲的超低時延要求,。

  從架構(gòu)上看,Aquila = 自建IB + 傳統(tǒng)Eth/IP,,既不是Overlay,,也不是Underlay。TiN既然實現(xiàn)了NIC + 交換機的功能,,那就繞不開SDN,。Eth/IP都是盡力而為的分布式設(shè)計,加上多設(shè)備廠商混戰(zhàn),,所以在前期,,QoS,、組網(wǎng)、網(wǎng)優(yōu),、清障都非常麻煩,,長期下去要炸毛。

  原有的交換機/路由器中,,控制面和數(shù)據(jù)面都有,,各自為戰(zhàn)。SDN實際上就是把各個交換機/路由器的控制面職能回收,,統(tǒng)一管理,,讓SW/Gateway只負(fù)責(zé)數(shù)據(jù)面轉(zhuǎn)發(fā)??刂破骱徒粨Q機之間建立安全通道,,通過各種消息,在合適的時機下發(fā)流表,,也就是大家常說的OpenFlow,,指揮交換機如何對各個以太幀/IP報文進(jìn)行處理。

  OpenFlow流表中,,有三個關(guān)鍵要素,,key + action + counter。交換機通過key(比如經(jīng)典的五元組),,查找TCAM表,,進(jìn)行Eth幀/IP報文匹配,然后執(zhí)行流表中的action,,同時更新各種counter計數(shù),。流表類似于處理器架構(gòu)中的指令集,比如指令中有Opcode,,取指完成后會進(jìn)行譯碼,,根據(jù)指令類型,進(jìn)行ALU計算或者訪存,,最后將結(jié)果寫回寄存器或者內(nèi)存,。

  從生態(tài)角度,NIC和交換機/路由器大家各司其職,,Aquila中的TiN搞了個二合一,,相當(dāng)于是把DC市場切了一份出來,搞自己獨立的L2子網(wǎng),,這部分市場的NIC/DPU/ToR都被干掉了,,然后谷歌還要搞自己的SDN控制器。

  再來看一下Aquila的關(guān)鍵特性:

  1,、信元交換:取代原有的以太幀

  2,、無損網(wǎng)絡(luò):強大的流控和QoS

  3、自適應(yīng)路由:TiN之間協(xié)同,。

  回憶一下開篇介紹的ATM,、Eth、MPLS,,有沒有發(fā)現(xiàn)相似之處,。其實現(xiàn)在交換機、路由器內(nèi)部設(shè)計中,,Eth幀進(jìn)來以后,,也會轉(zhuǎn)換成各家自定義的信元,進(jìn)行CrossBar的交換和處理,?;谛旁陀羞B接的設(shè)計,流控和QoS實現(xiàn)會簡單很多,。

  可以對照一下最近很火的Chiplet,。傳統(tǒng)的中小型SoC設(shè)計中,片上網(wǎng)絡(luò)一般是共享總線,,比如AMBA3 AXI,。隨著片內(nèi)核的數(shù)量增多,衍生出Ring環(huán)形總線和Mesh網(wǎng)絡(luò),,此時的片內(nèi),,實際上已經(jīng)有了交換/路由的影子,幾十上百個核,,通過內(nèi)部專用信號線,,連上片內(nèi)的路由節(jié)點,然后多個路由節(jié)點之間,,進(jìn)行報文收發(fā),,實現(xiàn)Mesh組網(wǎng),只是內(nèi)部的報文,,格式一般都是CPU廠商自定義的,,比如ARM的AMBA5 CHI。

  隨著單Die面積變大,,受晶圓面積和良率關(guān)系限制,,單芯片方案逐漸顯露瓶頸,無法集成更多的核或者加速引擎,,多芯片拼接需求增多,,加上2.5D/3D高級封裝技術(shù),應(yīng)用日趨成熟,類似HBM這種堆疊的Chiplet方案也開始增多,。前段時間英特爾搞了個UCIe聯(lián)盟,,想在Chiplet領(lǐng)域復(fù)制PCIe的輝煌,其實本質(zhì)就是片間互聯(lián)網(wǎng)絡(luò)的生態(tài),,開始構(gòu)建了,。

  回到開篇的超級計算機話題,從SoC片內(nèi)總線,,到Chiplet片間互聯(lián)網(wǎng)絡(luò),,再到谷歌Aquila實驗性的數(shù)據(jù)中心全新二層子網(wǎng),其實本質(zhì)都是為了這個終極的目標(biāo)來服務(wù),,從晶圓,、基板、PCB,,到數(shù)據(jù)中心服務(wù)器之間,,超大帶寬、超低延遲,、超強流控的網(wǎng)絡(luò),,在從內(nèi)向外擴展。因為在數(shù)據(jù)中心領(lǐng)域,,運營商的話語權(quán)不像電信承載網(wǎng)這么大,,芯片巨頭和云計算廠商,有動力,、有預(yù)算,、也有技術(shù)空間去進(jìn)行重構(gòu)、優(yōu)化,。

  運營商的承載網(wǎng),,在5G eMMB超高帶寬、URLLC超低延遲的壓力和需求下,,正在進(jìn)行劇烈的變化和演進(jìn),,5G承載和LTE承載之間,已經(jīng)發(fā)生了巨大的變化和改進(jìn),。MPLS,、PTN、OTN這些技術(shù)能在承載網(wǎng)落地生根,,除了其高效的OAM外,,強大的QoS亦功不可沒,當(dāng)然前提是基站和核心網(wǎng)之間的組網(wǎng)中,,網(wǎng)絡(luò)的動態(tài)拓?fù)渥兓皇欠浅4?。如圖9所示。

微信圖片_20220506095312.jpg

  圖9 網(wǎng)絡(luò)切片(圖片來源:無線深海)

  谷歌的Aquila數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu),從某種程度上,,也是借鑒了CT網(wǎng)絡(luò)架構(gòu)的一些理念,,來解決IT網(wǎng)絡(luò)中的時延確定性需求,撇開了傳統(tǒng)的二層以太網(wǎng),,繞過了Nvidia收購Mellanox后把持的Infinite Band,,構(gòu)建了一個類似RDMA的軟硬件全棧生態(tài),,為此還專門設(shè)計了TiN和GNet芯片(工藝節(jié)點未知),,投入如此巨大的資源,相信如同其AI領(lǐng)域的TensorFlow框架一樣,,這一切只是個開始,,DPU的大幕正在徐徐拉開,我們拭目以待,。

  正如計算機體系結(jié)構(gòu)的一代宗師,,David Patterson和John Hennessy,在其2017年著名的論文《計算機體系架構(gòu)的新黃金時代》中所預(yù)言的那樣,,“計算機體系結(jié)構(gòu)領(lǐng)域?qū)⒂瓉碛忠粋€黃金十年,,就像20世紀(jì)80年代那時一樣,新的架構(gòu)設(shè)計將會帶來更低的成本,,更優(yōu)的能耗,、安全和性能?!?/p>

  正所謂軟件定義一切,、硬件加速一切、網(wǎng)絡(luò)連接一切,。

  END

  小知識1:DPU是Data Processing Unit的簡稱,,它是最新發(fā)展起來的專用處理器的一個大類,是繼CPU,、GPU之后,,數(shù)據(jù)中心場景中的第三顆重要算力芯片,為高帶寬,、低延遲,、數(shù)據(jù)密集的計算場景提供計算引擎。

  小知識2:Aquila是一種實驗性的數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu),,將超低延遲作為核心設(shè)計目標(biāo),,同時也支持傳統(tǒng)的數(shù)據(jù)中心業(yè)務(wù)。Aquila使用了一種新的二層基于單元的協(xié)議,、GNet,、一個集成交換機和一個定制的ASIC,ASIC和GNet一同設(shè)計,并具有低延遲遠(yuǎn)程存儲訪問(RMA),。Aquila能夠?qū)崿F(xiàn)40?s以下的IP流量拖尾結(jié)構(gòu)往返時間 (RTT) 和低于10?s的跨數(shù)百臺主機的RMA執(zhí)行時間,。





本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點,。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問題,,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。