數(shù)據(jù)中心現(xiàn)狀
隨著“新基建”將 5G、人工智能、工業(yè)互聯(lián)網(wǎng)列為新型基礎(chǔ)領(lǐng)域,機(jī)器學(xué)習(xí)、智能語(yǔ)音交互、自動(dòng)駕駛等一大批基于高性能計(jì)算的應(yīng)用層出不窮,這些應(yīng)用帶來(lái)了數(shù)據(jù)的爆炸式增長(zhǎng),給數(shù)據(jù)中心的處理能力帶來(lái)了很大的挑戰(zhàn)。
計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)是推動(dòng)數(shù)據(jù)中心發(fā)展的三駕馬車。計(jì)算隨著 CPU、GPU 和 FPGA 的發(fā)展,算力得到了極大的提升。存儲(chǔ)隨著閃存盤(SSD)的引入,數(shù)據(jù)存取時(shí)延已大幅降低。但是網(wǎng)絡(luò)的發(fā)展明顯滯后,傳輸時(shí)延高,逐漸成為了數(shù)據(jù)中心高性能的瓶頸。

在數(shù)據(jù)中心內(nèi),70% 的流量為東西向流量(服務(wù)器之間的流量),這些流量一般為數(shù)據(jù)中心進(jìn)行高性能分布式并行計(jì)算時(shí)的過(guò)程數(shù)據(jù)流,通過(guò) TCP / IP 網(wǎng)絡(luò)傳輸。如果服務(wù)器之間的 TCP / IP 傳輸速率提升了,數(shù)據(jù)中心的性能自然也會(huì)跟著提升。

下面我們就來(lái)看看服務(wù)器之間數(shù)據(jù) TCP / IP 傳輸?shù)倪^(guò)程,了解下“時(shí)間都去哪了”,才好“對(duì)癥下藥”。
服務(wù)器間的 TCP / IP 傳輸
在數(shù)據(jù)中心,服務(wù)器 A 向服務(wù)器 B 發(fā)送數(shù)據(jù)的過(guò)程如下:
1、CPU 控制數(shù)據(jù)由 A 的 App Buffer 拷貝到操作系統(tǒng) Buffer。
2、CPU 控制數(shù)據(jù)在操作系統(tǒng)(OS)Buffer 中添加 TCP、IP 報(bào)文頭。
3、添加 TCP、IP 報(bào)文頭后的數(shù)據(jù)傳送到網(wǎng)卡(NIC),添加以太網(wǎng)報(bào)文頭。
4、報(bào)文由網(wǎng)卡發(fā)送,通過(guò)以太網(wǎng)絡(luò)傳輸?shù)椒?wù)器 B 網(wǎng)卡。
5、服務(wù)器 B 網(wǎng)卡卸載報(bào)文的以太網(wǎng)報(bào)文頭后,將其傳輸?shù)讲僮飨到y(tǒng) Buffer。
6、CPU 控制操作系統(tǒng) Buffer 中的報(bào)文卸載 TCP、IP 報(bào)文頭。
7、CPU 控制卸載后的數(shù)據(jù)傳輸?shù)?App Buffer 中。

從數(shù)據(jù)傳輸?shù)倪^(guò)程可以看出,數(shù)據(jù)在服務(wù)器的 Buffer 內(nèi)多次拷貝,在操作系統(tǒng)中需要添加 / 卸載 TCP、IP 報(bào)文頭,這些操作既增加了數(shù)據(jù)傳輸時(shí)延,又消耗了大量的 CPU 資源,無(wú)法很好得滿足高性能計(jì)算的需求。
那么,如何構(gòu)造高吞吐量、超低時(shí)延和低 CPU 開(kāi)銷的高性能數(shù)據(jù)中心網(wǎng)絡(luò)呢?RDMA 技術(shù)可以做到。
什么是 RDMA
RDMA( Remote Direct Memory Access,遠(yuǎn)程直接地址訪問(wèn)技術(shù) )是一種新的內(nèi)存訪問(wèn)技術(shù),可以讓服務(wù)器直接高速讀寫其他服務(wù)器的內(nèi)存數(shù)據(jù),而不需要經(jīng)過(guò)操作系統(tǒng) / CPU 耗時(shí)的處理。
RDMA 不算是一項(xiàng)新技術(shù),已經(jīng)廣泛應(yīng)用于高性能(HPC)科學(xué)計(jì)算中。隨著數(shù)據(jù)中心高帶寬、低時(shí)延的發(fā)展需求,RDMA 也開(kāi)始逐漸應(yīng)用于某些要求數(shù)據(jù)中心具備高性能的場(chǎng)景中。舉個(gè)例子,2021 年某大型網(wǎng)上商城的雙十一交易額再創(chuàng)新高,達(dá)到 5000 多億,比 2020 年又增長(zhǎng)了近 10%。如此巨大的交易額背后是海量的數(shù)據(jù)處理,該網(wǎng)上商城采用了 RDMA 技術(shù)來(lái)支撐高性能網(wǎng)絡(luò),保障了雙十一的順暢購(gòu)物。
下面我們一起來(lái)看看 RDMA 讓網(wǎng)絡(luò)實(shí)現(xiàn)低時(shí)延的絕招吧。
RDMA 將服務(wù)器應(yīng)用數(shù)據(jù)直接由內(nèi)存?zhèn)鬏數(shù)街悄芫W(wǎng)卡(固化 RDMA 協(xié)議),由智能網(wǎng)卡硬件完成 RDMA 傳輸報(bào)文封裝,解放了操作系統(tǒng)和 CPU。

這使得 RDMA 具有兩大優(yōu)勢(shì):
Zero Copy(零拷貝):無(wú)需將數(shù)據(jù)拷貝到操作系統(tǒng)內(nèi)核態(tài)并處理數(shù)據(jù)包頭部的過(guò)程,傳輸延遲會(huì)顯著減小。
Kernel Bypass(內(nèi)核旁路)和 Protocol Offload(協(xié)議卸載):不需要操作系統(tǒng)內(nèi)核參與,數(shù)據(jù)通路中沒(méi)有繁瑣的處理報(bào)頭邏輯,不僅會(huì)使延遲降低,而且也大大節(jié)省了 CPU 的資源。

三大 RDMA 網(wǎng)絡(luò)
目前,大致有三類 RDMA 網(wǎng)絡(luò),分別是 InfiniBand、RoCE(RDMA over Converged Ethernet,RDMA 過(guò)融合以太網(wǎng))和 iWARP(RDMA over TCP,互聯(lián)網(wǎng)廣域 RDMA 協(xié)議)。RDMA 最早專屬于 Infiniband 網(wǎng)絡(luò)架構(gòu),從硬件級(jí)別保證可靠傳輸,而 RoCE 和 iWARP 都是基于以太網(wǎng)的 RDMA 技術(shù)。
InfiniBand
InfiniBand 是一種專為 RDMA 設(shè)計(jì)的網(wǎng)絡(luò)。
采用 Cut-Through 轉(zhuǎn)發(fā)模式(直通轉(zhuǎn)發(fā)模式),減少轉(zhuǎn)發(fā)時(shí)延。
基于 Credit 的流控機(jī)制(基于信用的流控機(jī)制),保證無(wú)丟包。
要求 InfiniBand 專用的網(wǎng)卡、交換機(jī)和路由器,建網(wǎng)成本最高。
RoCE
傳輸層為 InfiniBand 協(xié)議。
RoCE 有兩個(gè)版本:RoCEv1 基于以太網(wǎng)鏈路層實(shí)現(xiàn),只能在 L2 層傳輸;RoCEv2 基于 UDP 承載 RDMA,可部署于三層網(wǎng)絡(luò)。
需要支持 RDMA 專用智能網(wǎng)卡,不需要專用交換機(jī)和路由器(支持 ECN / PFC 等技術(shù),降低丟包率),建網(wǎng)成本最低。
iWARP
傳輸層為 iWARP 協(xié)議。
iWARP 是以太網(wǎng) TCP / IP 協(xié)議中 TCP 層實(shí)現(xiàn),支持 L2 / L3 層傳輸,大型組網(wǎng) TCP 連接會(huì)消耗大量 CPU,所以應(yīng)用很少。
iWARP 只要求網(wǎng)卡支持 RDMA,不需要專用交換機(jī)和路由器,建網(wǎng)成本介于 InfiniBand 和 RoCE 之間。
Infiniband 技術(shù)先進(jìn),但是價(jià)格高昂,應(yīng)用局限在 HPC 高性能計(jì)算領(lǐng)域,隨著 RoCE 和 iWARPC 的出現(xiàn),降低了 RDMA 的使用成本,推動(dòng)了 RDMA 技術(shù)普及。
在高性能存儲(chǔ)、計(jì)算數(shù)據(jù)中心中采用這三類 RDMA 網(wǎng)絡(luò),都可以大幅度降低數(shù)據(jù)傳輸時(shí)延,并為應(yīng)用程序提供更高的 CPU 資源可用性。其中 InfiniBand 網(wǎng)絡(luò)為數(shù)據(jù)中心帶來(lái)極致的性能,傳輸時(shí)延低至百納秒,比以太網(wǎng)設(shè)備延時(shí)要低一個(gè)量級(jí)。RoCE 和 iWARP 網(wǎng)絡(luò)為數(shù)據(jù)中心帶來(lái)超高性價(jià)比,基于以太網(wǎng)承載 RDMA,充分利用了 RDMA 的高性能和低 CPU 使用率等優(yōu)勢(shì),同時(shí)網(wǎng)絡(luò)建設(shè)成本也不高?;?UDP 協(xié)議的 RoCE 比基于 TCP 協(xié)議的 iWARP 性能更好,結(jié)合無(wú)損以太網(wǎng)的流控技術(shù),解決了丟包敏感的問(wèn)題,RoCE 網(wǎng)絡(luò)已廣泛應(yīng)用于各行業(yè)高性能數(shù)據(jù)中心中。
結(jié)語(yǔ)
隨著 5G、人工智能、工業(yè)互聯(lián)網(wǎng)等新型領(lǐng)域的發(fā)展,RDMA 技術(shù)的應(yīng)用會(huì)越來(lái)越普及,RDMA 將成為助力數(shù)據(jù)中心高性能的一大功臣。
本文來(lái)自微信公眾號(hào):中興文檔 (ID:ztedoc)
廣告聲明:文內(nèi)含有的對(duì)外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時(shí)間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。