DPU數據平面需要一種大規模敏捷異構的計算架構。這一部分的實現也處在“百家爭鳴”的階段,各家的實現方式差別較大,有基于通用處理器核的方式,有基于可編程門陣列FPGA的方式,也有基于異構眾核的方式,還有待探索。
網絡功能卸載
網絡功能卸載是伴隨云計算網絡而產生的,主要是對云計算主機上的虛擬交換機的能力做硬件卸載,從而減少主機上消耗在網絡上的CPU算力,提高可售賣計算資源。
目前除了公有云大廠采用自研云平臺,絕大部分私有云廠商都使用開源的OpenStack云平臺生態。在OpenStack云平臺中,虛擬交換機通常是Open vSwitch,承擔著云計算中網絡虛擬化的主要工作,負責虛擬機(VM)與同主機 上虛擬機(VM)、虛擬機(VM)與其它主機上虛擬機(VM)、虛擬機(VM)與外部的網絡通信。虛擬交換機與網關路由器(GW)通常由同一SDN控制器來管理控制,為租戶開通VPC網絡以及和外部通信的網絡。
主機與主機 間的網絡通常是Underlay網絡,是由TOR/EOR構建的Spine-Leaf結構的Fabric Network。虛擬機(VM)與虛擬機(VM)通信的網絡是Overlay網絡,是承載在Underlay網絡構建的VxLAN,NVGRE或Geneve隧道之上的。通常VxLAN,NVGRE或Geneve的隧道端點(VTEP)在虛擬交換機和網關路由器(GW) 上。也有部分對網絡性能要求比較高的場景,采用SR-IOV替代虛擬交換機,VF直通到虛擬機(VM)內部,這樣就要求隧道端點(VTEP)部署在TOR上,TOR與網關路由器(GW)創建隧道,提供Overlay網絡服務。虛擬交換機的場景是最通用的應用場景,所以,虛擬交換機的技術迭代也直接影響著虛擬化網絡的發展。
虛擬化網絡功能(Virtual Network Function)
行業內主流的Hypervisor主要有Linux系統下的KVM-Qemu,VMWare的ESXi,微軟Azure的Hyper-V,以及亞馬遜早期用的Xen(現在亞馬遜已經轉向 KVM-Qemu)。KVM-Qemu有著以Redhat為首在持續推動的更好的開源生態,目前行業內90%以上的云廠商都在用KVM-Qemu作為虛擬化的基礎平臺。
在KVM-Qemu這個Hypervisor的開源生態里,與網絡關系最緊密的標準協議包括virtio和vhost,以及vhost衍生出來的vhost-vdpa。Virtio在KVM-Qemu中定義了一組虛擬化I/O設備,和對應設備的共享內存的通信方法,配合后端協議vhost和vhost-vdpa使用,使虛擬化I/O性能得到提升。
(1)內核虛擬化網絡(vhost-net)
在虛擬化網絡的初期,以打通虛擬機(VM)間和與外部通信能力為主,對功能訴求遠高于性能,虛擬交換機OVS(Open vSwitch)的最初版本也是基于操作系統Linux內核轉發來實現的。
(2)用戶空間DPDK虛擬化網絡(vhost-user)
隨著虛擬化網絡的發展,虛擬機(VM)業務對網絡帶寬的要求越來越高,另外,英特爾和Linux基金會推出了DPDK(Data Plane Development Kit)開源項 目,實現了用戶空間直接從網卡收發數據報文并進行多核快速處理的開發庫,虛擬交換機OVS將數據轉發平面通過DPDK支持了用戶空間的數據轉發,進而實現了轉發帶寬量級的提升。
(3)高性能SR-IOV網絡(SR-IOV)
在一些對網絡有高性能需求的場景,如NFV業務部署,OVS-DPDK的數據轉 發 方 式 , 無 法 滿 足 高性能網絡的 需 求 , 這 樣 就 引 入 的 SR-IOV 透 傳(passthrough)到虛擬機(VM)的部署場景。
(4)Virtio硬件加速虛擬化網絡(vDPA)
為了解決高性能SRIOV網絡的熱遷移問題,出現了很多做法和嘗試,尚未形成統一的標準。在Redhat提出硬件vDPA架構之前,Mellanox實現了軟件vDPA(即VF Relay)。
云原生網絡功能 (1)云原生網絡架構
云原生,從廣義上來說,是更好的構建云平臺與云應用的一整套新型的設計理念與方法論,而狹義上講則是以docker容器和Kubernetes(K8S)為支撐的云原生計算基金會(CNCF)技術生態堆棧的新式IT架構。對比虛擬機,容器應用對磁盤的占用空間更小,啟動速度更快,直接運行在宿主機內核上,因而無Hypervisor開銷,并發支持上百個容器同時在線,接近宿主機上本地進程的性能,資源利用率也更高。以K8S為代表的云原生容器編排系統,提供了統一調度 與彈性擴展的能力,以及標準化組件與服務,支持快速開發與部署。
容器平臺包括容器引擎Runtime(如containerd,cri-o等),容器網絡接口(CNI,如calico,flannel,contiv,cilium等)和容器存儲接口(CSI,如EBS CSI,ceph-csi等)。
云原生對于網絡的需求,既有基礎的二三層網絡聯通,也有四至七層的高級網絡功能。二三層的網絡主要是實現K8S中的CNI接口,具體如calico,flannel,weave,contiv,cilium等。主要是支持大規模實例,快速彈性伸縮,自 愈合,多集群多活等。四至七層網絡功能,主要是服務網格(Service Mesh)。
(2)eBPF的硬件加速
eBPF是一項革命性的技術,可以在Linux內核中運行沙盒程序,而無需重新 編譯內核或者加載內核模塊。在過去幾年,eBPF已經成為解決以前依賴于內核更改或者內核模塊的問題的標準方法。對比在Kubernetes上Iptables的轉發路徑, 使用eBPF會簡化其中大部分轉發步驟,提高內核的數據轉發性能。Cilium是一個基于eBPF實現的開源項目,提供和保護使用Linux容器管理平臺部署的應用程序服務之間的網絡和API連接,以解決容器工作負載的新可伸縮性,安全性和可見性要求。
RDMA網絡功能
(1)RDMA網絡功能介紹
面對高性能計算、大數據分析和浪涌型IO高并發、低時延應用,現有TCP/IP軟硬件架構和應用高CPU消耗的技術特征根本不能滿足應用的需求。這主要體現在處理時延過大——數十微秒,多次內存拷貝、中斷處理,上下文切換,復雜的TCP/IP協議處理,以及存儲轉發模式和丟包導致額外的時延。而RDMA通過網絡在兩個端點的應用軟件之間實現Buffer的直接傳遞,相比TCP/IP,RDMA無需操作系統和協議棧的介入,能夠實現端點間的超低時延、超高吞吐量傳輸,不需要網絡數據的處理和搬移耗費過多的資源,無需OS和CPU的介入。RDMA的本質實際上是一種內存讀寫技術。
RDMA和TCP/IP網絡對比可以看出,RDMA的性能優勢主要體現在:
(1)零拷貝——減少數據拷貝次數,由于沒有將數據拷貝到內核態并處理數據包頭部到過程,傳輸延遲會顯著減少。
(2)Kernel Bypass和協議卸載——不需要內核參與,數據通路中沒有繁瑣的處理報頭邏輯,不僅會使延遲降低,而且也節省了CPU的資源。
(2)RDMA硬件卸載方式
原生RDMA是IBTA(InfiniBand Trade Association)在2000年發布的基于InfiniBand的RDMA規范;基于TCP/IP的RDMA稱作iWARP,在2007年形成標準;基于Ethernet的RDMA叫做RoCE,在2010年發布協議,基于增強型以太網并 將傳輸層換成IB傳輸層實現;在2014年,IBTA發布了RoCEv2,引入IP解決擴展性問題,可以跨二層組網,引入UDP解決ECMP負載分擔等問題。
InfiniBand是一種專為RDMA設計的網絡,從硬件級別保證可靠傳輸。全球HPC高算系統TOP500大效能的超級計算機中有相當多套系統在使用InfiniBand Architecture(IBA)。最早做InfiniBand的廠商是IBM和HP,現在主要是NVIDIA的Mellanox。InfiniBand從L2到L4都需要自己的專有硬件,成本非常高。
iWARP直接將RDMA實現在TCP上,優點就是成本最低,只需要采購支出 iWARP的NIC即可以使用RDMA,缺點是性能不好,因為TCP協議棧本身過于重量級,即使按照iWARP廠商的通用做法將TCP卸載到硬件上實現,也很難超越 IB和RoCE的性能。
RoCE(RDMA over Converged Ethernet)是一個允許在以太網上執行RDMA的網絡協議。由于底層使用的以太網幀頭,所以支持在以太網基礎設施上使用 RDMA。不過需要數據中心交換機DCB技術保證無丟包。相比IB交換機時延,交換機時延要稍高一些。由于只能應用于二層網絡,不能跨越IP網段使用,市場應用場景相對受限。
RoCEv2協議構筑于UDP/IPv4或UDP/IPv6協議之上。由于基于IP層,所以可以被路由,將RoCE從以太網廣播域擴展到IP可路由。由于UDP數據包不具有保序的特征,所以對于同一條數據流,即相同五元組的數據包要求不得改變順序。另外,RoCEv2還要利用IP ECN等擁塞控制機制,來保障網絡傳輸無損。RoCEv2也是目前主要的RDMA網絡技術,以NVIDIA的Mellanox和Intel為代表的廠商,均支持RoCEv2的硬件卸載能力。
審核編輯:湯梓紅
-
處理器
+關注
關注
68文章
19169瀏覽量
229155 -
云計算
+關注
關注
39文章
7744瀏覽量
137206 -
網絡
+關注
關注
14文章
7519瀏覽量
88635 -
DPU
+關注
關注
0文章
354瀏覽量
24132 -
RDMA
+關注
關注
0文章
76瀏覽量
8928
原文標題:詳解DPU網絡卸載場景及架構
文章出處:【微信號:AI_Architect,微信公眾號:智能計算芯世界】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論