




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
專用數據處理器(DPU)TechnicalWhitePaperofDataProcessingUnit技術白皮書主編單位聯合編寫發布單位DPUWhitePaperAllRightsReserved2INTENTIONALLYLEFTBLANKAllRightsReserved3編委會編委(按姓?拼音排序):崔慧敏、陳巖、陳世敏、樊海爽、孔浩、盧?巖、AllRightsReserved4特別致謝本白皮書編寫過程中還得到了北京市科學技術委員會、中關村科技園區管理委員會、中國移動物聯?有限公司、曙光信息產業有限公司、浪潮集團、國)有限公司、賽靈思電?科技公司、東?國信科技股份有限公司、首都在AllRightsReserved5版權聲明本白皮書版權屬于主編和聯合編寫發布單位,并受法律保護。轉載、摘編或利用其它?式使用本白皮書?字或者觀點應注明“來源:專用數據處理器(DPU)技術AllRightsReserved6 71.DPU技術發展概況 9 9 2.DPU特征結構 232.1.DPU是以數據為中?IO密集的專用處理器 3.DPU應用場景 35 4.DPU軟件棧五層模型 58 5.業界產品概要介紹 705.1.NVIDIABLUEFIELD 5.2.INTELIPU(MOUNTEVANS) 5.3.MARVELLOCTEON 5.4.FUNGIBLEDPU 6.DPU發展展望 92AllRightsReserved7DPU(DataProcessingUnit)是新近發展起來的一種專用處理器。2020年NVIDIA公司發布的DPU產品戰略中將其定位為數據中心繼CPU和GPU之后的“第三顆主力芯片”,掀起了一波行業熱潮。DPU的出現是異構計算的一個階段性標志。與GPU的發展類似,DPU是應用驅動的體系結構設計的又一典型案例;但與GPU不同的是,DPU面向的應用更加底層,類型也更多樣。DPU要解決的核心問題是基礎設施的“降本增效”,即將“CPU處理效率低下、GPU處理不了”的負載卸載到專用DPU,提升整個計算系統的效率、降低整體系統的總體擁有成本(TCO)。新一代的DPU不僅可以作為運算的加速引擎,還具備控制平面的功能,能夠運行Hypervisor,更高效的完成網絡虛擬化、IO虛擬化、存儲虛擬化等任務,徹底將CPU的算力釋放給應用程序。DPU的出現也許是體本白皮書將重點分析DPU產生的背景、技術特征、軟硬件參考架構,應用場景、并對目前已經公布的DPU產品做簡要的比較分析,為后續DPU技術發展第一部分介紹DPU的技術發展概況,首先對DPU做了一個基本的定義,然后闡述了DPU發展的背景,并簡要介紹DPU發展的歷程,DPU在現有計算生態第二部分詳細說明DPU的特征結構,對DPU的定位做了進一步闡述,然后第三部分介紹DPU的應用場景,本文總結了三大應用場景:網絡功能卸AllRightsReserved8第四部分提出DPU開發的五層參考模型,包括設備層、操作層、計算引擎層、應用服務層和業務開發層,既體現了DPU開發過程中的軟硬協同,也充分第五部分概要介紹目前行業的已經發布或已經披露的DPU產品,雖然其中絕大部分尚未到批量應用的階段,各個競品的優缺點也尚未得到市場的充分驗AllRightsReserved9DPU(DataProcessingUnit)是以數據為中心構造的專用處理器,采用軟件定義技術路線支撐基礎設施層資源虛擬化,支持存儲、安全、服務質量管理等基礎設施層服務。2020年NVIDIA公司發布的DPU產品戰略中將其定位為數據中心繼CPU和GPU之后的“第三顆主力芯片”,掀起了一波行業熱潮。DPU的出現是異構計算的一個階段性標志。與GPU的發展類似,DPU是應用驅動的體系結構設計的又一典型案例;但與GPU不同的是,DPU面向的應用更加底層。DPU要解決的核心問題是基礎設施的“降本增效”,即將“CPU處理效率低下、GPU處理不了”的負載卸載到專用DPU,提升整個計算系統的效率、降低整體系統的總體擁有成本(TCO)。DPU的出現也許是體系結構朝著專用化路(1)DataProcessingUn位置,區別于信號處理器、基帶處理器等通信相關的處理器對應的“信號”,也區別于GPU對應的圖形圖像類數據,這里的“數據”主要指數字化以后的各種信息,特別是各種時序化、結構化的數據,比如大型的結構化表格,網絡流(2)DatacenterProcessingUnit,即數據中心作為DPU的應用場景,特別是隨著WSC(Warehouse-scaleComputer)的興起,不同規模的數據中心成為了IT核心基礎設施。目前來看,DPU確實在數據中心中使用前景非常廣闊。但是計算中心的三大部分:計算、網絡、存儲,計算部AllRightsReserved10分是CPU占主導,GPU輔助;網絡部分是路由器和交換機,存儲部分是高密度磁盤構成的的RAID系統和SSD為代表非易失性存儲系統。在計算和網絡中扮演數據處理的芯片都可以稱之為DatacenterProcessingUnit,所以這種說法相對比(3)Data-centricProcessingUnit,即以數據為中心的處理器。Data-centric,即數據為中心,是處理器設計的一種理念,相對于“Control-centric”即控制為中心。經典的馮諾依曼體系結構就是典型的控制為中心的結構,在馮諾依曼經典計算模型中有控制器、計算器、存儲器、輸入和輸出,在指令系統中的表現是具有一系列非常復雜的條件跳轉和尋址指令。而數據為中心的理念與數據流(DataFlow)計算一脈相承,是一種實現高效計算的方法。同時,現在試圖打破訪存墻(MemoryWall)的各種近存(Near-memory)計算、存內(In-以上三種關于“D”的解釋,從不同角度反映DPU的特征,都有一定的可DPU最直接的作用是作為CPU的卸載引擎,接管網絡虛擬化、硬件資源池化等基礎設施層服務,釋放CPU的算力到上層應用。以網絡協議處理為例,要包處理,就可以占去一個8核高端CPU一半的算力。如果考慮40G、100G的高速網絡,性能的開銷就更加難以承受了。Amazon把這些開銷都稱之為“DatacenterTax”,即還未運行業務程序,先接入網絡數據就要占去的源。AWSNitro產品家族旨在將數據中心開銷(為密,故障跟蹤,安全策略等服務程序)全部從CPU卸載到Nitro加速卡上,將給AllRightsReserved11DPU可以成為新的數據網關,將安全隱私提升到一個新的高度。在網絡環境下,網絡接口是理想的隱私的邊界,但是加密、解密算法開銷都很大,例如國密標準的非對稱加密算法SM2、哈希算法SM3和對稱分組密碼算法SM4。如果用CPU來處理,就只能做少部分數據量的加密。在未來,隨著區塊鏈承載的業務的逐漸成熟,運行共識算法POW,驗簽等也會消耗掉大量的CPU算力。而這DPU也可以成為存儲的入口,將分布式的存儲和遠程訪問本地化。隨著SSD性價比逐漸可接受,部分存儲遷移到SSD器件上已經成為可能,傳統的面向機械硬盤的SATA協議并不適用于SSD存儲,所以,將SSD通過本地PCIe或高速網絡接入系統就成為必選的技術路線。NVMe(NonVolatileMemoryExpress)就是用于接入SSD存儲的高速接口標準協議,可以通過PCIe作為底層傳輸協議,將SSD的帶寬優勢充分發揮出來。同時,在分布式系統中,還可通過NVMeoverFabrics(NVMe-oF)協議擴展到In?niBand、Ethernet、或Fibrechannel節點中,以RDMA的形式實現存儲的共享和遠程訪問。這些新的協議處理都可以集成在DPU中以實現對CPU的透明處理。進而,DPU將可能承接各種DPU將成為算法加速的沙盒,成為最靈活的加速器載體。DP顆固化的ASIC,在CXL、CCIX等標準組織所倡導CPU、GPU與DPU等數據一致性訪問協議的鋪墊下,將更進一步掃清DPU編程障礙,結合FPGA等可編程器件,可定制硬件將有更大的發揮空間,“軟件硬件化”將成為常態,異構計算的潛能將因各種DPU的普及而徹底發揮出來。在出現“KillerApplication”的領AllRightsReserved12DPU的出現是異構計算的又一個階段性標志。摩爾定律放緩使得通用CPU性能增長的邊際成本迅速上升,數據表明現在CPU的性能年化增長(面積歸一片得以發展的重要背景因素。以AI芯片為例,最新的GPT-3等千億級參數的超大型模型的出現,將算力需求推向了一個新的高度。DPU也不例外。隨著2019年我國以信息網絡等新型基礎設施為代表的“新基建”戰略帷幕的拉開,5G、千兆光纖網絡建設發展迅速,移動互聯網、工業互聯網、車聯網等領域發展日新月異。云計算、數據中心、智算中心等基礎設施快速擴容。網絡帶寬從主流10G朝著25G、40G、100G、200G甚至400G發展。網絡帶寬數據的通路更寬、更密,直接將處于端、邊、云各處的計算節點暴露在了劇增的數據量下,而CPU的性能增長率與數據量增長率出現了顯著的“剪刀差”現象。所以,尋求效率更高的計算芯片就成為了業界的共識。DPU芯片就是在這摩爾定律的放緩與全球數據量的爆發這個正在迅速激化的矛盾通常被作為處理器專用化的大背景,正所謂硅的摩爾定律雖然已經明顯放緩,但“數據摩爾定律”已然到來。IDC的數據顯示,全球數據量在過去10年年均復合增長率接近50%,并進一步預測每四個月對于算力的需求就會翻一倍。因此必須要找到新的可以比通用處理器帶來更快算力增長的計算芯片,DPU于是應運而生。這個大背景雖然有一定的合理性,但是還是過于模糊,并沒有回答DPU之所以1HennessyJ,PattersonD.ComputerArchitectuAllRightsReserved13從現在已經公布的各個廠商的DPU架構來看,雖然結構有所差異,但都不約而同強調網絡處理能力。從這個角度看,DPU是一個強IO型的芯片,這也是DPU與CPU最大的區別。CPU的IO性能主要體現在高速前端總線(在Intel的體系里稱之為FSB,FrontSideBusCPU通過FSB連接北橋芯片組,然后連接到主存系統和其他高速外設(主要是PCIe設備)。目前更新的CPU雖然通過集成存儲控制器等手段弱化了北橋芯片的作用,但本質是不變的。CPU對于處理網絡處理的能力體現在網卡接入鏈路層數據幀,然后通過操作系統(OS)內核態,發起DMA中斷響應,調用相應的協議解析程序,獲得網絡傳輸的數據(雖然也有不通過內核態中斷,直接在用戶態通過輪詢獲得網絡數據的技術,如Intel的DPDK,Xilinx的Onload等,但目的是降低中斷的開銷,降低內核態到用戶態的切換開銷,并沒有從根本上增強IO性能)。可見,CPU是通過非常間接的手段來支持網絡IO,CPU的前端總線帶寬也主要是要匹配主存(特別是相較而言,DPU的IO帶寬幾乎可以與網絡帶寬等同,例如,網絡支持25G,那么DPU就要支持25G。從這個意義上看,DPU繼承了網卡芯片的一些特征,但是不同于網卡芯片,DPU不僅僅是為了解析鏈路層的數據幀,而是要做直接的數據內容的處理,進行復雜的計算。所以,DPU是在支持強IO基礎上的具備強算力的芯片。簡言之,DPU是一個IO密集型的芯片;相較而言,GPU還進一步地,通過比較網絡帶寬的增長趨勢和通用CPU性能增長趨勢,能發現一個有趣的現象:帶寬性能增速比(RBP,RatioofBandwidthandPerformancegrowthrate)失調。RBP定義為網絡帶寬的增速比上CPU性能增速,即RBP=BWGR/Perf.GR如圖1-1所示,以Mellanox的ConnectX系列網卡帶網絡IO的案例,以Intel的系列產品性能作為CPU的案例,定義一個新指標“帶AllRightsReserved142010年前,網絡的帶寬年化增長大約是30%,到2015年微增到35%,然后在近年達到45%。相對應的,CPU的性能增長從10年前的23%,下降到12%,并在近年直接降低到3%。在這三個時間段內,RBP指標從1附近,上升到3,并在近年超過了10!如果在網絡帶寬增速與CPU性能增速近乎持平,RGR~1,IO壓力尚未顯現出來,那么當目前RBP達到10倍的情形下,CPU幾乎已經網絡帶寬的增速。RBP指標在近幾年劇增也許是DPU終于等到機會“橫空出DPU首先作為計算卸載的引擎,直接效果是給CPU“減負”。DPU的功能可以在早期的TOE(TCP/IPOf?oadingEngine)中看到。正如其名,TOE就是將CPU的處理TCP協議的任務“卸載”到網卡上。傳統的TCP軟件處理方式雖然層次清晰,但也逐漸成為網絡帶寬和延遲的瓶頸。軟件處理方式對CPU的占用,也影響了CPU處理其他應用的性能。TCP卸載引擎(TOE)技術,通過將TCP協議和IP協議的處理進程交由網絡接口控制器進行處理,在利用硬件加有三個方面的優化:1)隔離網絡中斷,2)降低內存數據拷貝量,3)協議解析AllRightsReserved15硬件化。這三個技術點逐漸發展成為現在數據平面計算的三個技術,也是DPU普遍需要支持的技術點。例如,NVMe協議,將中斷策略替換為輪詢策略,更充分的開發高速存儲介質的帶寬優勢;DPDK采用用戶態調用,開發“Kernel-bypassing”機制,實現零拷貝(Zeor-Copy);在DPU中的面向特定應用的專用核,例如各種復雜的校驗和計算、數據包格式解析、查找表、IP安全(IPSec)的支持等,都可以視為協議處理的硬件化支持。所以,TOE基本可以被視為延續TOE的思想,將更多的計算任務卸載至網卡側來處理,促進了智能網卡(SmartNIC)技術的發展。常見的智能網卡的基本結構是以高速網卡為基本功能,外加一顆高性能的FPGA芯片作為計算的擴展,來實現用戶自定義的計算邏輯,達到計算加速的目的。然而,這種“網卡+FPGA”的模式并沒有將智能網卡變成一個絕對主流的計算設備,很多智能網卡產品被當作單純的FPGA加速卡來使用,在利用FPGA優勢的同時,也繼承了所有FPGA的局限性。DPU是對現有的SmartNIC的一個整合,能看到很多以往SmartNIC的影子,但明顯高于之Amazon的AWS在2013研發了Nitro產品,將數據中心開銷(為虛機提供遠程資源,加密解密,故障跟蹤,安全策略等服務程序)全部放到專用加速器上執行。Nitro架構采用輕量化Hypervisor配合定制化的硬件,將虛擬機的計算(主要是CPU和內存)和I/O(主要是網絡和存儲)子系統分離開來,通過PCIe總線連接,節省了30%的CPU資源。阿里云提出的X-Dragon系統架構,核心是MOC卡,有比較豐富的對外接口,也包括了計算資源、存儲資源和網絡資源。MOC卡的核心X-DragonSOC,統一支持網絡,IO、存儲和外設的虛擬化,為虛擬AllRightsReserved16可見,DPU其實在行業內已經孕育已久,從早期的網絡協議處理卸載,到后續的網絡、存儲、虛擬化卸載,其帶來的作用還是非常顯著的,只不過在此隨著云平臺虛擬化技術的發展,智能網卡的發展基本可以分為三個階段DPU智能網卡(第二代智能網卡)PCIeRootComplex或EndPoint智能網卡(第一代智能網卡)智能網卡(第一代智能網卡)PCIe總線主機接口網絡接口基礎網卡基礎網卡主機接口硬件卸載網絡接口融合網絡無損需求網絡接口融合網絡無損需求卸載能力全卸載)-提供2x10G帶寬基本能力Virtio-blk-安全相關功能全卸載(數據AllRightsReserved17基礎功能網卡(即普通網卡)提供2x10G或2x25G帶寬吞吐,具有較少的硬件卸載能力,主要是Checksum,LRO/LSO等,支持SR-IOV,以及有限的多隊列能力。在云平臺虛擬化網絡中,基礎功能網卡向虛擬機(VM)提供網絡接入的方式主要是有三種:由操作系統內核驅動接管網卡并向虛擬機(VM)分發網絡流量;由OVS-DPDK接管網卡并向虛擬機(VM)分發網絡流量;以及高性能場可以認為是第一代智能網卡,具有豐富的硬件卸載能力,比較典型的有OVSFastpath硬件卸載,基于RoCEv1和RoCEv2的RDMA網絡硬件卸載,融合網絡中無損網絡能力(PFC,ECN,ETS等)的硬件卸載,存儲領域NVMe-件卸載,以及安全傳輸的數據面卸載等。這個時期的智能網卡以數據平面的卸可以認為是第二代智能網卡,在第一代智能網卡基礎上加入CPU,可以用來卸載控制平面的任務和一些靈活復雜的數據平面任務。目前DPU智能網卡的特點首先是支持PCIeRootComplex模式和Endpoint模式,在配置為PCIeRootComplex模式時,可以實現NVMe存儲控制器,與NVMeSSD磁盤一起構建存儲服務器;另外,由于大規模的數據中心網絡的需要,對無損網絡的要求更加嚴格,需要解決數據中心網絡中Incast流量、“大象”流等帶來的網絡擁塞和時延問題,各大公有云廠商紛紛提出自己的應對方法,比如阿里云的高精度擁塞控制(HPCC,HighPrecisionCongestionControl),AWS的可擴展可靠數據報(SRD,ScalableReliableDatagram)等。DPU智能網卡在解決這類問題時將會引入更為先進的方法,如Fungible的TrueFabric,就是在DPU智能網卡上的新式解決方案。還有,業界提出了Hypervisor中的網絡,存儲和安全全棧卸載的發展方AllRightsReserved18向,以Intel為代表提出了IPU,將基礎設施的功能全部卸載到智能網卡中,可以隨著越來越多的功能加入到智能網卡中,其功率將很難限制在75W之內,(1)獨立供電的智能網卡,需要考慮網卡狀態與計算別,在計算系統啟動的過程中或者啟動之后,智能網卡是否已經是進入服務狀(2)沒有PCIe接口的DPU智能網卡,可以組成DPU資源池,專門負責網絡功能,例如負載均衡,訪問控制,防火墻設備等。管理軟件可以直接通過智能網卡管理接口定義對應的網絡功能,并作為虛擬化網絡功能集群提供對應網絡模PCIe控制器,可以配置為RootComplex接口。通過PCIeGen3x8接口可以支撐8個DAllRightsReserved19DPU作為一種新型的專用處理器,隨著需求側的變化,必將在未來計算系CPU是整個IT生態的定義者,無論是服務器端的x86還是移動端的ARM,都GPU是執行規則計算的主力芯片,如圖形渲染。經過NVIDIA對通用GPU(GPGPU)和CUDA編程框架的推廣,GPU在數據并行的任務如圖形圖像、深度學習、矩陣運算等方面成為了主力算力引擎,并且成為了高性能計算最重要的輔助計算單元。2021年6月公布的Top500高性能計算機(超級計算機)的前10數據中心與超極計算機不同,后者主要面向科學計算,如大飛機研制,石油勘探、新藥物研發、氣象預報、電磁環境計算等應用,性能是主要指標,對接入帶寬要求不高;但數據中心面向云計算商業化應用,對接入帶寬,可靠性、災備、彈性擴展等要求更高,與之相適應發展起來的虛擬機、容器云、并AllRightsReserved20行編程框、內容分發網等等技術,都是為了更好的支撐上層商業應用如電商、支付、視頻流、網盤、辦公OA等。但是這些IaaS和PaaS層的服務開銷極大,Amazon曾公布AWS的系統開銷在30%以上。如果需要實現更好的QoS,在網這些基礎層應用類型與CPU架構匹配程度不高導致計算效率低下。現有的CPU的架構有兩個大類:多核架構(數個或數十幾個核)和眾核架構(數百個核以上),每種架構支持唯一的規范通用指令集之一,如x86、ARM等。以指令集為界,軟件和硬件被劃分開來分別獨立發展,迅速的催生了軟件產業和微處理器產業的協同發展。但是,隨著軟件復雜度的上升,軟件的生產率(Productivity)得到更多的重視,軟件工程學科也更加關注如何高效地構建大型軟件系統,而非如何用更少的硬件資源獲得盡可能高的執行性能。業界有個被戲稱的“安迪比爾定律”,其內容是“WhatAndygives,Billtakesaway”,安正如CPU在處理圖像處理時不夠高效一樣,現在有大量的基礎層應用CPU處理起來也比較低效,例如網絡協議處理,交換路由計算,加密解密,數據壓縮等這類計算密集的任務,還有支持分布式處理的數據一致性協議如RAFT等。這些數據或者通過從網絡IO接入系統,或者通過板級高速PCIe總線接入系統,再通過共享主存經由DMA機制將數據提供給CPU或GPU來處理。既要處理大量的上層應用,又要維持底層軟件的基礎設施,還要處理各種特殊的IO類協議,這些基礎層負載給“異構計算”提供了一個廣闊的發展空間。將這些基礎層負載從CPU上卸載下來,短期內可以“提質增效”,長遠來看還為新的業務增長提供技術保障。DPU將有望成為承接這些負載的代表性芯片,與CPU和GPU優勢互補,建立起一個更加高效的算力平臺。可以預測,用于數據中心的AllRightsReserved21DPU的量將達到和數據中心服務器等量的級別,每年千萬級新增,算上存量的替代,估算五年總體的需求量將突破兩億顆,超過獨立GPU卡的需求量。每臺數據中心作為IT基礎設施最重要的組成部分在過去10年成為了各大高端芯片廠商關注的焦點。各大廠商都將原有的產品和技術,用全新的DPU的理念重NVIDIA收購Mellanox后,憑借原有的ConnectX系列高速網卡技術,推出其BlueField系列DPU,成為DPU賽道的標桿。作為算法加速芯片頭部廠商的Xilinx在2018年還將“數據中心優先(DatacenterFirst)”作為其全新發展戰略。發布了Alveo系列加速卡產品,旨在大幅提升云端和本地數據中心服務器性能。2019年4月,Xilinx宣布收購Solar?are通信公司,將領先的FPGA、MPSoC和ACAP解合,從而實現全新的融合SmartNIC解決方案。Intel2015年底收購了Xilinx的競爭對手——Altera,在通用處理器的基礎上,進一步完善硬件加速能力。Intel2021年6月新發布的IPU產品(可以被視為Intel版本的DPU),將FPGA與XeonD系列處理器集成,成為了DPU賽道有力的競爭者。IPU是具有強化的加速器和以太網連接的高級網絡設備,它使用緊密耦合、專用的可編程內核加速和管理基礎架構功能。IPU提供全面的基礎架構分載,并可作為運行基礎架構應用的主機的控制點,從而提供一層額外防護。幾乎同一時間,Marvall發布了OCTEON10在同一時期,一些傳統并不涉足芯片設計的互聯網廠商,如海外的Google、Amazon,國內的阿里巴巴等巨頭紛紛啟動了自研芯片的計劃,而且研發重點都是面向數據處理器的高性能專用處理器芯片,希望以此改善云端的服AllRightsReserved22務器的成本結構,提高單位能耗的性能水平。數據研究預測DPU在云計算市場的應用需求最大,且市場規模隨著云計算數據中心的迭代而增長,到2025年單AllRightsReserved23從應用特征來看,可以把應用分為“IO密集型”和“計算密集型”兩類,如圖2-1縱軸所示。IO密集型應用,通常體現為較高的輸入和輸出帶寬,數據直接來自于IO,數據通常具備流式特征,數據局部性不顯著,如果處理性能與帶寬匹配,片上緩存的作用就可以弱化。例如處理路由轉發、數據加密、壓縮等。計算密集型應用,體現為較高的計算密度,通常浮點性能突出,數據來自主存,數據局部性顯著,復用性高,主存的大小對于問題求解的性能有直接影一個處理器芯片是“IO密集”還是“計算密集”只部分決定了芯片的結構特征,并不能完全定義芯片的主體架構。無論是IO密集,還是計算密集,即可以以通用CPU為核心構造主體計算架構,也可以以專用加速器為核心構造主體 3“DPU:以數據為中?的專?處理器”,鄢貴AllRightsReserved24計算架構。前者可稱之為以控制為中心(control-centric)的模式,后者稱之為以數據為中心(data-centric)的模式。控制為中心的核心是實現“通用”,數據為中心的核心是通過定制化實現“高性能”。以應用特征和架構特征這兩個維通用CPU是偏向于控制為中心結構,理論上看就是要“圖靈完備”,要支持完備的指令集,通過編程指令序列來定義計算任務,通過執行指令序列來完成計算任務,因此具備極其靈活的編程支持,可以任意定義計算的邏輯實現“通用”——這也是CPU最大的優勢。同時,為了提高編程的開發效率,降低編譯器復雜度,緩存管理和細粒度并行度的開發通常都是由硬件來完成。類似的,還有大量的用于各種嵌入式、移動設備的微控制器MCU,并不強調高帶寬,也是以控制為中心的結構。NP,DSP也是便向于基于通用處理器來做專用化擴展,但是非常注重高通量的性能屬性。例如,NP要支持數Tbps的轉發帶GPU是以數據為中心的結構,形式上更傾向于專用加速器。GPU的結構稱之為數據并行(data-parallel)結構,優化指令并行度并不是提升性能的重點,通過大規模同構核進行細粒度并行來消化大的數據帶寬才是重點。例如,最新的NVIDIATITANRTXGPU有460通常配置數十GB的超大顯存。同時緩存管理多采用軟件顯示管理,降低硬件復DPU也偏向于數據為中心的結構,形式上集成了更多類別的專用加速器,犧牲一定的指令靈活性以獲得更極致的性能。但是與GPU不同,DPU要應對更多的網絡IO,既包括外部以太網,也包括內部虛擬IO,所以DPU所面臨的數據并行更多可能是數據包并行,而不是圖像中的像素、像塊級并行。而且DPU也會配置少數通用核(如ARM,MIPS)來處理一定的控制面的任務,運行輕量級操作系統來管理DPU上的眾多的異構核資源,所以體現了一定“通用”性,但AllRightsReserved25性能優勢主要不源于這些通用核,而是大量專用計算核。早期的一些網絡處理器采用過類似Tile64的通用眾核結構,以增加核的數量來應對多路處理的數據,實現并發處理,但單路延遲性能通常都比較差。因此,DPU更偏向于以數據為DPU是軟件定義的技術路線下的重要產物。在軟件定義網絡中,將數據面與控制面分離是最核心的思想。DPU被定義為強化了數據面性能的專用處理2.2.計算平臺從“計算為中心”轉向“數據為中心”(1)網絡擁塞和長尾延遲。數據中心網絡最真實的性能指標之一是“尾部延遲”,即流量最慢百分位數所經歷的延時水平。數據中心網絡擁塞的一個典型原因是Incast流量,而Incast流量在數據中心網絡中是不可避免的。現在常見的解決擁塞的方法,如基于優先級的流量控制(PFC),顯示擁塞通知(ECN),數據中心量化擁塞通知(DCQCN)和數據中心TCP連接等,這些方案并沒有完全解決擁塞問題,如突發流量導致的擁塞,同時也帶來一系列新的(2)負載不均衡。在數據中心網絡中等價多路徑(ECMP)路由是一種典型的流量轉發負載均衡方式,它能夠保證同一數據流跨網絡Fabric轉發時根據特定元組信息選擇的路徑相同,不同數據流選擇的路徑根據哈希的結果選擇不同路徑,從而實現不同流量之間的負載均衡和更高的帶寬利用率。但是,當數據中心主要流量是“大象”流和“老鼠”流時,ECMP可能存在問題了。如大數據處理和存儲數據同步等工作負載需在數據中心網絡中創建大量持續的數據流,這些數據流與對時延相對敏感的短期流共存。多個AllRightsReserved26“大象”流的哈希沖突會導致數據中心網絡中某些路徑上流量出現不均甚至擁絡高可靠性,即當某一網絡路徑出現故障時,通過協議或者網絡端口狀態自動將故障路徑上的業務流量切換到其它正常路徑上。在數據中心這種Spine-Leaf的網絡架構下,服務器的網卡如何能夠快速檢測到故障,進而規避流量通過故障(4)不可靠傳輸。像RoCEv2這樣的網絡協議是基于網絡無損的假設而設計的。然而在數據中心網絡中,丟包是不可避免的。目前大部分解決方案都是通過在網絡設備上實現復雜的協議或者遙測能力,來加固網絡或者識別數據中心的網絡狀況,進而避免應用程序吞吐量和性能下降。如果數據包重傳發生在傳輸層,這可能會顯著提高性能。不幸的是UDP缺乏重傳機制,而TCP又過于數據中心是云計算時代最重要的基礎設施之一,為云提供強大的計算和存儲能力。近年來業界對數據中心網絡性能以及虛擬化能力的需求日益增長,并伴隨著后摩爾時代的到來,傳統的以CPU為中心的計算機體系結構,其計算能力已經無法支撐網絡帶寬的增長速度,會造成網絡擁塞,以單節點能力為上限的資源分配方式無法滿足云資源需求,運維成本和影響也日益增加,主要表現●以計算為中心的數據中心,所有數據都需要先被送到CPU。CPU的計算包含了應用的計算,通信的計算和存儲的計算等,每一類計算都需要獨占AllRightsReserved27●以CPU為中心的計算機體系結構,通過內部系統總線的通信方式,單節點服務器上的總線能力和PCIe插槽的數量是固定的,導致單節點上支持的專加速卡等無法被其它節點使用,這也導致了專用算力資源無法按需擴展,預●在運維方面,由于單節點上資源是耦合的,故障維修需對節點斷電,使鑒于當前以計算為中心的數據中心體系中所存在的局限,一個宏觀趨勢是數據中心的體系架構將會從以計算為中心轉向以數據為中心。后者相對于前者具有顯著的優勢。以CPU為中心的通信場景里,由于數據轉發都需要經過CPU(如虛擬機場景——CPU收包轉給CPU,大數據場景——CPU收包轉給GPUCPU的處理時延通常會比較高,約30至40微秒,另外,由于CPU數據轉發能力和CPU數量的限制,會在數據通道上成為系統的瓶頸,使得虛擬機CPU或者GPU的算力無法釋放,甚至在觸及性能瓶頸時出現嚴重的丟包現象,進一步惡化網絡傳輸。以數據為中心的架構,數據轉發通道不再需要CPU參與,DPU智能網卡可以直接將數據送達GPU和虛擬機CPU,不需要基于CPU的軟件轉發,時延上可以提升到3至4微秒,典型的通信時延可以從30至40微妙降低到3至4微妙,有近10倍的性能提升。另外,由于DPU智能網卡硬件線速轉AllRightsReserved28(1)分散(Disaggreggaed)的計算架構。計算結構內部資源不是緊耦合。通過DPU智能網卡提供的網絡能力,對系統總線數據做轉換傳輸、延伸和分發,使得CPU、GPU、存儲和加速器等可以在不同的位置或物理機上,通過數(2)虛擬化資源池(ResourcePooling)。以降低TCO為目的,對CPU、GPU、存儲和加速器等資源按需分配,同時降低資源維護和管理調度的復雜度,集中的資源池化勢在必行。同時,通過虛擬化資源池的方式向用戶提供各(3)可伸縮性(Scalability)。資源池化后,資源的維護和管理更容易,整(4)可組合性(Composability)。數據中心的網絡能力使得服務資源的接入更加靈活。對于新加入資源池的資源(如專用FPGA加速器),可以通過對DPU智能網卡做軟件定義網絡,打通數據中心的數據傳輸通路,讓新加入的資AllRightsReserved29傳統云計算基礎設施可組合,池化的,可伸縮的分散(計算)基礎設施?總線通信CPU瓶頸問題?總線擴展的問題?維護需停機?資源伸縮性差?加速器加速器加速器加速器為了滿足“數據為中心”的設計理念,本節給出一個通用的DPU參考設計。目前DPU架構的演化比較快,DPU既可以呈現為一個被動設備作為CPU的協處理器,也可以作為一個主動設備,承接Hypervisor的一些功能。尤其是容器技術、虛擬化技術的廣泛采用,DPU的角色已經不僅僅是一個協處理器,而是呈現出更多的HOST的特征,比如運行Hypervisor,做跨節點的資源整合,為裸金屬和虛擬機提供虛擬網絡,數據安全,熱遷移等支撐。宏觀來看,DPU架構AllRightsReserved30負責管理、配置,通常由通用處理器核來實現。控制平臺負責DPU設備運行管理,以及計算任務和計算資源的配置。運行管理通常包含設備的安全管理和實時監控兩個主要功能。在安全管理方面支持支持如信任根、安全啟動、安全固件升級以及基于身份驗證的容器和應用的生命周期管理等。在設備實時監控方面,對DPU各子系統、數據平面中各處理核動態監測,實時觀察設備是否可用、設備中流量是否正常,周期性生成報表,記錄設備訪問日志核配置修改計算任務和計算資源配置方面,根據計算任務實施配置數據平面中處理單元間的通路,以及各處理單元參數。根據資源利用情況實時進行任務調度以及在計算單元的映射和部署。同時DPU上層同時會支持多個虛擬機,控制平面在任務部署時還要進行虛擬設備的管理,考慮虛擬機間數據和資源隔離,記錄運行狀態協助虛擬機熱遷移。最后,當DPU集成第三方計算平臺,如G由于控制平面任務多樣,靈活性要求較高,算力要求較低,通常由通用處理器核來實現,比如ARM、MIPS等核心。為便于用戶統一管理和配置DPU設AllRightsReserved31備,提供較好的可編程性,通常會運行標準Linux應用程序。并且控制平面與數據平面數據交互驅動程序需要進行深度優化,來提升控制平面與數據平面有效(1)系統IO,負責DPU和其他處理平臺(如X86、ARM處理器、GPU、FPGA等)或高速外部設備(如SSD)的集成。系統IO通常傳輸數據量較大對帶寬有著極高的要求,因此多基于PCIe來實現。系統IO接口分為兩大類:EPEP類接口負責將DPU作為從設備與X86、ARM等處理平臺相連接。為了充分利用DPU上的內部資源,此類接口要支持強大的硬件設備虛擬化功能,比如SR-IOV和VirtIO。并且可以靈活地支持多種類型的設備,如NIC、Storage、RC類接口負責將DPU作為主設備與加速平臺(如GPU、FPGA)或外設(SSD)相連接。通過此種方式將部分數據處理卸載到第三方加速平臺GPU、(2)網絡IO,負責DPU與高速網絡相連接,主要是以太網或者FC為主。為了能應對急劇增加的網絡帶寬,DPU中通常輔以專門的網絡協議處理核來加速網絡包的處理。包括L2/L3/L4層的ARP/IP/TCP/UDP網絡協議處理、RDMA、數據包交換協議、基本網絡虛擬化協議等,可以實現100G以上的網絡(3)主存IO,負責緩存網絡IO和系統IO輸入輸出數據,以及數據平面中間數據結果。也可作為共享內存,實現不同處理核之間的數據通信。目前主存IO主要包含DDR和HBM接口類型,兩類接口,DDR可以提供比較大的存儲容AllRightsReserved32量,可以提供512GB以上的存儲容量;HBM可以提供比較大的存儲帶寬,可以提供500GB/s以上的帶寬。兩種存儲接口相結合可以滿足不同主要負責高速數據通路的功能單元的集成,通常集成多個處理核。數據平1)高速數據包處理,主要對接收到的網絡數據包進行如OvS(開放式虛擬交換機)解析、匹配和處理,以及RDMA遠程數據傳輸加速等操作,和之前的網絡處理器NP功能類似,但是在性能上有更高的要求,處理帶寬線速要達到100G、200G甚至400G。同時,在進行有狀態數據處理時也有著更高的要求,如2)虛擬化協議加速,支持SR-IOV、VirtIO和PV(Para-Virtualization)等虛擬化。支持網絡虛擬化VxLAN、Genev3)安全加密,在線IPSec和TLS加密加速,以及多種標準加解密算法和國密算法。并且對于安全算法的處理性能有較高的要求,要達到網絡線速,從而不4)流量壓縮,對網絡數據包,或者要存儲的數據,進行實時地數據壓縮/解壓縮處理,壓縮過程中還要完成地址的轉換和重映射等操作。或者在線完成數據流變換處理,如面向多媒體流、CDN(內容分發網絡)和4K/8KIP視頻的5)其他算法加速。除了上述網絡、安全協議外還要支持NVMe等存儲協AllRightsReserved33數據平面是整個DPU設計的關鍵,也是DPU設計中最有挑戰的模塊。主要1)數據中心的工作負載復雜多樣,數據平不僅包括網絡、存儲、安全和虛擬化等基礎設施服務,另外業務相關的處理也2)高并發性數據處理,數據中心承載的業務多且復雜,多虛擬機多種類業務并發要求數據平面集成足夠數量的核心,規模要達到幾百個核心規模。隨著數據中心數據量的不斷增加,對處理性能提出越來越多的挑戰,DPU數據平面3)復雜的片上互聯系統,隨著DPU數據平面處理核數量的增加,再加之高并發處理線程運行,同時還要兼顧好數據平面數據處理的靈活,這就要求處理核之間的數據交互既要靈活又要兼顧高帶寬。處理核之間的數據互聯,以及核4)高效簡易的編程方式,數據中心業務的復雜多變決定了DPU數據平臺可編程性的硬性需求。一方面要兼顧計算效率,必須直觀表達出并發處理任務,充分利用計算資源。另一方面要兼顧DPU的易用性,盡量采用高級語言進行編總之,DPU數據平面需要一種大規模敏捷異構的計算架構。這一部分的實現也處在“百家爭鳴”的階段,各家的實現方式差別較大,有基于通用處理器核的方式,有基于可編程門陣列FPGA的方式,也有基于異構眾核的方式,還有AllRightsReserved34(1)算力卸載。將存儲協議和安全協議的封裝與解封裝等不適合CPU做的(2)虛擬網絡控制面隔離。DPU需要獨立的網絡控制平面(3)主機側總線通信的延展。在分散的計算架構中,連接不同式將從原來的系統總線承載,轉變成總線——網絡——總線的方式,DPU不僅(4)網絡側無損網絡傳輸。網絡側提供針對Incast流量模型和“大象”流影響的擁塞控制機制和增強的負載均衡能力,降低長尾時延,提供更可靠更高(5)精細化的測量和故障檢測能力。精細化的流量測量支撐精AllRightsReserved35網絡功能卸載是伴隨云計算網絡而產生的,主要是對云計算主機上的虛擬交換機的能力做硬件卸載,從而減少主機上消耗在網絡上的CPU算力,提高可ComputeComputeVM……VMVM……VM虛擬交換機NICNICFabricNetwork目前除了公有云大廠采用自研云平臺,絕大部分私有云廠商都使用開源的OpenStack云平臺生態。在OpenStack云平臺中,虛擬交換機通常是OpenvSwitch,承擔著云計算中網絡虛擬化的主要工作,負責虛擬機(VM)與同主機上虛擬機(VM)、虛擬機(VM)與其它主機上虛擬機(VM)、虛擬機(VM)與外部的網絡通信。虛擬交換機與網關路由器(GW)通常由同一SDN控制器來管理控制,為租戶開通VPC網絡以及和外部通信的網絡。主機與主機間的網絡通常是Underlay網絡,是由TOR/EOR構建的Spine-Leaf結構的FabricNetwork。虛擬機(VM)與虛擬機(VM)通信的網絡是Overlay網絡,是承載在AllRightsReserved36Underlay網絡構建的VxLAN,NVGRE或Geneve隧道之上的。通常VxLAN,NVGRE或Geneve的隧道端點(VTEP)在虛擬交換機和網關路由器(GW)上。也有部分對網絡性能要求比較高的場景,采用SR-IOV替代虛擬交換機,VF直通到虛擬機(VM)內部,這樣就要求隧道端點(VTEP)部署在TOR上,TOR與網關路由器(GW)創建隧道,提供Overlay網絡服務。虛擬交換機的場景是最通用的應用場景,所以,虛擬交換機的技術迭代也直接影響著虛擬化網行業內主流的Hypervisor主要有Linux系統下的KVM-Qemu,VMWare的ESXi,微軟Azure的Hyper-V,以及亞馬遜早期用的Xen(現在亞馬遜已經轉向KVM-Qemu)。KVM-Qemu有著以Redhat為首在持續推動的更好的開源生態,在KVM-Qemu這個Hypervisor的開源生態里,與網絡關系最緊密的標準協議包括virtio和vhost,以及vhost衍生出來的vhost-vdpa。Virtio在KVM-Qemu中定義了一組虛擬化I/O設備,和對應設備的共享內存的通信方法,配合后端協議vhost和vhost-vdpa使用,使虛在虛擬化網絡的初期,以打通虛擬機(VM)間和與外部通信能力為主,對功能訴求遠高于性能,虛擬交換機OVS(OpenvSwitch)的最初版本也作系統Linux內核轉發來實現的。vhost協議作為控制平面,由Qemu做代理與主機kernel內的vhost-net通信,主機內核vhost-net作為virtio的backend,與虛擬機間和虛擬機(VM)與外部的通信能力,但是內核轉發效率和吞吐量都很低。目AllRightsReserved37另外,英特爾和Linux基金會推出了DPDK(DataPlaneDevelopmentKit)開源項目,實現了用戶空間直接從網卡收發數據報文并進行多核快速處理的開發庫,虛擬交換機OVS將數據轉發平面通過DPDK支持了用戶空間的數據轉發,進而實現了轉發帶寬量級的提升。OVS-DPDK通過將virtio的backend實現在用戶空間,實現了虛擬機(VM)與用戶空間OVS-DPDK的共享內存,這樣虛擬機(VM)在收發報文時,只需要OVS-DPDK將從網卡收到的報文數據寫入虛擬機(VM)的內存,或從虛擬機(VM)內存將要發送的報文拷貝到網卡DMA的內存,由于減少了內存拷貝次數和CPU調度干擾,提升了轉發通道的整體效率和控制面GuestGuestOSVQvhost-net驅動VQovsdb-servervirtio控制面vhost-netvhost-net設備QEMUvhost-user協議OVS-DPDKVQvhost-libraryVQOVS二層轉發OVS二層轉發4Ajourneytothevhost-usersrealm/en/blog/journey-vhost-users-realmAllRightsReserved38OVS-DPDK相對轉發能力有所提高,但也存在新的問題。首先,目前大多數服務器都是NUMA(多CPU)結構,在跨NUMA轉發時性能要比同NUMA轉發弱。而物理網卡只能插在一個PCIe插槽上,這個插槽只會與一個NUMA存在親和性,所以OVS-DPDK上跨NUMA轉發的流量不可避免。第二,在虛擬機(VM)與OVS-DPDK共享內存時,初始化的隊列數量通常是與虛擬機(VM)的CPU個數相同,才能保證虛擬機上每一個CPU都可以通過共享內存收發數據包,這樣導致不同規格的虛擬機(VM)在OVS-DPDK上收發隊列所接入的CPU是非對稱的,在轉發過程中需要跨CPU轉發數據。最后,OVS-DPDK在轉發數據時,不同虛擬機(VM)的流量由于CPU瓶頸導致擁塞,會隨機丟包,無法保在一些對網絡有高性能需求的場景,如NFV業務部署,OVS-DPDK的數據轉發方式,無法滿足高性能網絡的需求,這樣就引入的SR-IOV透傳在SRIOVpassthrough的場景下,虛擬機(VM)可以獲得與裸金屬主機上相(1)SRIOVVFpassthrough到VM后,VM的遷移性會受限,主要原因在于SRIOV這種passthroughI/O借助了IntelCPUVT-d(VirtualizationTechnologyforDirectedI/O)或AMD的IOMMU(I/OMemoryManagementUnit)技術,在VM上VF網卡初始化的時候,建立了Guest虛擬地址到Host物理地址的映射表,所以(2)由于SRIOVVFpassthrough到VM,而SRIOVPF直接連接到TOR上,在這種部署環境中虛擬機(VM)對外的網絡需要自定義,如需要像OVS-DPDK那樣自動開通網絡,則需要將TOR加入SDN控制器的管理范疇,由SDN控制器AllRightsReserved39針對上面第二個問題,Mellanox最早提出在其智能網卡上支持OVSFastpath硬件卸載,結合SRIOVVFpassthrough到VM一起使用,提供臨近線速轉發的網控制面ovsdb-server廠商VF驅動OVS控制面OVS數據面QEMUOVS-DPDKovs-vswitchdPF智能網卡eth0在OVSFastpath卸載后,OVS轉發報文時,數據流首包仍然做軟件轉發,在轉發過程中生成Fastpath轉發流表并配置到硬件網卡上,這個數據流的后續報文則通過硬件直接轉發給虛擬機(VM)。由于早期的Mellanox智能網卡還沒有集為了解決高性能SRIOV網絡的熱遷移問題,出現了很多做法和嘗試,尚未形成統一的標準。在Redhat提出硬件vDPA架構之前,Mellanox實現了軟件vDPA(即VFRelay)。理論上講,Mellanox的軟件vDPA并不能算是vDPA,其實就是將數據在用戶空間的virtio隊列和VF的接收隊列做了一次數據Relay。Redhat提出AllRightsReserved40的硬件vDPA架構,目前在DPDK和內核程序中均有實現,基本是未來的標準架構。Qemu支持兩種方式的vDPA,一種是vhost-user,配合DPDK中的vDPA運行,DPDK再調用廠商用戶態vDPA驅動;另一種方式是vhost-vdpa,通過ioctl調過virtio轉發給虛擬機(VM),如Mellanox在OVS-DPDK實現了這個relay,OVS流表由硬件卸載加速,性能上與SR-IOVVF直通(passthrough)方式比略有降通信。由于控制面復雜,所以用硬件難以實現。廠商自己開發驅動,對接到用戶空間DPDK的vDPA和內核vDPA架構上,可以實現硬件vDPA。目前Mellanox控制面GuestGuestOSovsdb-serverVQvirtio驅動VQvirtio控制面OVS控制面OVSvirtio控制面QEMUvhost-net設備QEMUvhost-user協議vDPAvDPAControl廠家vDPA驅動ovs-vswitchd驅動消息virtio-netvirtio-netvirtio-netvirtio-netVQFlowoffloadVQOVSFastpatheth0eth0AllRightsReserved41在硬件vDPA場景下,通過OVS轉發的流量首包依然由主機上的OVS轉發平后來在Blue?eld-2上,由于集成了ARM核,所以NVIDIA在與UCloud的合作中,將OVS的控制面也完全卸載到網卡到ARM核上,這樣主機上就可以將OVS伴隨著越來越多的業務上云,一些原來運行在專用設備或者特定主機上的網絡產品也開始重視上云后的按需擴縮容能力,所以出現了網路功能虛擬化(NFV)產品。NFV產品主要以虛擬機(VM)或者容器(Container)的形態部署到云計算平臺上,對外提供對應的網絡功能,如LoadBalance,Firewall,NAT,vRouter,DPI和5G邊緣計算UPF等。這些NFV產品之前全部基于DPDK在X86CPU上運行,由于CPU算力上限問題,通常難以提供對應網絡帶寬的吞5G垂直行業對5G網絡提出了更高的要求,如大帶寬,高可靠,低時延,低邊緣網絡,交互式VR/AR在大帶寬的要求下,還需要低時延,從而提高業務的用戶體驗;而車路協同系統等,對高可靠和低時延低抖動的要求更高,這是保障車路協同能夠實時做出正確決策的關鍵;一些工業控制實時自動化應用,也是要求視頻數據實時傳輸到服務端,并通過視頻識別等功能實時做出控制指令下發等等。這些典型的應用,都對邊緣計算中5GUPF提出了更嚴苛的要求。在5G邊緣計算中,未來的主要應用場景包括:增強型視頻服務,監測與追蹤類服務,實時自動化,智能監控,自動機器人,危險和維護傳感,增強現實,網聯車輛和遠程操控等。對應的5G技術指標和特征也比較明顯。首先,超AllRightsReserved42大帶寬(eMBB,EnhancedMobileBroadband)要求單用戶峰值帶寬可達20Gbps,用戶體驗數據速率在100Mbps;其次,超密連接(mMTC,MassiveMachineTypeCommunication)要求每平方公里設備數量在10k到1M個終端,流量密度10Mbps每平方米;最后,超低時延(uRLLC,UltraReliableLowLatencyCommunication)要求時延在1~10超大帶寬峰值速率20Gbps用戶體驗超密連接連接密度Devices/km2連接密度流量密度10Mbps/m2超低時延可靠性99.999%可靠性(ofpackets)網絡云化網絡云化化與彈性調節多切片適應企業各種任務分布式+邊緣計算確保低時延與業務一致性安全強用戶認證,用戶傳統的5GUPF通常由軟件實現,運行在X86CPU上,雖然在吞吐過增加CPU來實現更大能力,但是,時延和抖動通常都會比較高,很難穩定支撐低時延低抖動業務。對于超大帶寬,超低時延的需求,這類數據轉發業務更5GUPF業務模型復雜,需要選擇性卸載轉發,將高可靠低時延低抖動業務要求的用戶會話卸載到硬件中。如圖3-5所示,數據流首包通過軟件轉發,然后將對應的流表卸載到智能網卡,后續報文通過智能網卡硬件轉發,這樣可以在5G邊緣計算中,提供低時延低抖動和超大帶寬網絡能力的同時,還能降低邊緣AllRightsReserved43管理面Anchor5G核心網管理面AnchorMANOEMS云管平臺PCFUDMNEFAFAMFSMFNRFNSSF服務器InternetAnchorOffloadTOR/EORApp服務器 企業PCFUDMNEFAFAMFSMFNRFNSSF服務器InternetAnchorOffloadTOR/EORApp服務器 企業IT生產網絡網關上云網絡 企業辦公網絡 企業OT網絡基站用戶數據和業務接入控制DPI不論在運營商網絡還是互聯網數據中心,都是重要的配套設備。而且DPI功能是很多網絡功能產品的基礎功能,如IPS/IDS,5GUPF,DDoS防攻擊設備等,具有重要的產品價值。DPI具有高新建、高并發、高吞吐等特性能成為虛擬化部署的瓶頸。通過DPU智能網卡實現DPI流量卸載,性能可以55G時代?業互聯?邊緣計算?絡??書/Uploads/file/20201209AllRightsReserved44DPI應用程序統計數據策略polices策略polices統計statisticsAction計數count識別識別timestamp解析parser過濾Filter鏡像mirroring解析parser過濾Filterclassification丟棄drop轉發數據流智能網卡轉發forward智能網卡規則,再將軟件策略下發到硬件形成對應的動作。這樣數據流進入網卡通過打時間戳進行硬件解析,匹配識別規則庫,根據匹配的規則尋找對應的策略,根據策略進行計數,鏡像,丟棄和轉發等行為。通云的運維系統也是通過DPI功能做流日志,除云原生,從廣義上來說,是更好的構建云平臺與云應用的一整套新型的設計理念與方法論,而狹義上講則是以docker容器和Kubernetes(K8S)為支撐的云原生計算基金會(CNCF)技術生態堆棧的新式IT架構。對比虛擬機,容器應用對磁盤的占用空間更小,啟動速度更快,直接運行在宿主機內核上,因而無Hypervisor開銷,并發支持上百個容器同時在線,接近宿主機上本地進程的性AllRightsReserved45容器平臺包括容器引擎Runtime(如containerd,cri-o等),容器網絡接口(CNI,如calico,?annel,contiv,cilium等)和容器存儲接口(CSI,如EBS通常為了追求更高的性能,云原生平臺會部署在裸金屬上。如果考慮故障后更云原生對于網絡的需求,既有基礎的二三層網絡聯通,也有四至七層的高級網絡功能。二三層的網絡主要是實現K8S中的CNI接口,具體如calico,?annel,weave,contiv,cilium等。主要是支持大規模實例,快速彈性伸縮,自服務網格的本質是提供安全、可靠、靈活、高效的服務間通信。服務網格還提AllRightsReserved46供了一些更加高級的網絡功能,如有狀態的通信,路由限流,灰度流量切換,eBPF是一項革命性的技術,可以在Linux內核中運行沙盒程序,而無需重新編譯內核或者加載內核模塊。在過去幾年,eBPF已經成為解決以前依賴于內核更改或者內核模塊的問題的標準方法。對比在Kubernetes上Iptables的轉發路徑,使用eBPF會簡化其中大部分轉發步驟,提高內核的數據轉發性能。Cilium是一個基于eBPF實現的開源項目,提供和保護使用Linux容器管理平臺部署的應用程序服務之間的網絡和API連接,以解決容器工作負載的新可伸縮性,安全性和可見性要求。Cilium超越了傳統的容器網絡接口(CNI),可提供服務解析,策略執行等功能,實現了組網與安全一體化的云原生網絡。Cilium數據平面采用eBPF加速,能夠以Service/pod/container為對象進行動態地網絡和安全策略管理,解耦控制面等策略管理和不斷變化的網絡環境,具有應用感知能力(如https,gRPC等應用),從而實現對流量的精確化控制。同時它的狀態通過K-V基于eBPF的Cilium已經被證明是Kubernetes云原生網絡的最佳實踐,國內阿為進一步提升性能,Netronome將eBPF路徑上的部分功能卸載到硬件網卡,如XDP和Traf?cClassi?ercls-bpf,實現了對于用戶無感知的eBPF卸載加速。硬件卸載的eBPF程序可以直接將報文送到任意內核eBPF程序,eBPF中map的維eBPF程序的編譯需要在生成內核微碼的基礎上,加入編譯硬件可識別的微AllRightsReserved47Istio是CNCF主推的微服務框架,實現了云原生四至七層網絡能力。Istio在數據平面通過Sidecar對流量進行劫持,實現了無代碼侵入的服務網格。控制平面組件中,pilot負責下發控制,mixer收集運行的狀態,citadel則負責安全證書方數據平面ServicegRPC和TCPAdapterAdapterAdapter下發策略給配置驗證、提取、III分發TLS證書 Citadel在Istio中,原生的七層代理使用的是Envoy,Envoy提供了動態服務發現,協議。同時支持熔斷器,流量拆分,故障注入等能力和豐富的度量指標。另外,阿里還提出了MOSN作為Istio的七層代理,這里不再介紹細節。由于引層代理后,增加數據轉發時延。Broadcom嘗試在StingrayDPU智能網卡將Enovy以網關模式卸載到智能網卡的ARM核上,用了八個ARM核中的六個來做EnovyAllRightsReserved48卸載支持100G網卡上的流量。這種方式是否能夠適用于當前Sidecar上代理模式ArmAppAppAppAppAppAppeSwitchOVS硬件卸載的加速方式主要由OVN-Kubernete
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年微波集成電路AL2O3基片資金籌措計劃書代可行性研究報告
- 2024年甲氧基酚資金籌措計劃書代可行性研究報告
- 直播銷售電子教案 項目七任務一:直播銷售數據采集 教案
- 2025年中國變色玻璃行業市場前景預測及投資價值評估分析報告
- 2025年嵌入式考試政策解讀試題及答案
- 高端體育賽事品牌贊助全面合作協議
- 抖音火花汽車行業品牌合作共贏合同
- 虛擬偶像IP與動漫產業聯合開發合同
- 2025年中國保險杠行業市場前景預測及投資價值評估分析報告
- 新能源汽車試駕體驗及售后服務保障及充電設施建設合同
- 浙江省杭州市濱江區2022-2023學年七年級下學期期末語文試卷(含答案)
- 誠信教育主題班會
- 成都醫學院輔導員考試真題2022
- 氯磺化聚乙烯生產工藝技術
- 桐廬縣2023年三下數學期末綜合測試試題含解析
- 裝飾施工階段安全檢查表完整
- 數值課件第章非線性方程求根
- TEC-5600除顫操作培訓
- 蘇科版二年級下冊勞動第7課《做皮影》課件
- 芯片手冊盛科sdk用戶開發指南
- SH/T 0659-1998瓦斯油中飽和烴餾分的烴類測定法(質譜法)
評論
0/150
提交評論