RoCE網(wǎng)絡(luò)詳解

??以太網(wǎng)技術(shù)目前在全球互聯(lián)的因特網(wǎng)中始終占據(jù)主導(dǎo)地位管削,但在高帶寬、低延時(shí)的專(zhuān)有網(wǎng)絡(luò)中卻透露出許多弊端撑螺。隨著網(wǎng)絡(luò)融合概念的興起含思,在IETF發(fā)布了的DCB(Data Center Bridging)標(biāo)準(zhǔn)中,基于RDMA/Infiniband的無(wú)損鏈路得以解決,以太網(wǎng)終于在專(zhuān)有網(wǎng)絡(luò)領(lǐng)域內(nèi)擁有了自己的標(biāo)準(zhǔn)含潘,同時(shí)也提出了RoCE(RDMA over Converged Ethernet)的概念饲做。經(jīng)過(guò)版本的升級(jí)(從RoCEv1到RoCEv2),10Gb及以上的新型NIC和switch基本都集成了RoCE支持遏弱。

RoCEv1

??2010年4月盆均,IBTA發(fā)布了RoCE,此標(biāo)準(zhǔn)是作為Infiniband Architecture Specification的附加件發(fā)布的漱逸,所以也稱為IBoE(InfiniBand over Ethernet)泪姨。這時(shí)的RoCE標(biāo)準(zhǔn)是在以太鏈路層之上用IB網(wǎng)絡(luò)層代替了TCP/IP網(wǎng)絡(luò)層,所以不支持IP路由功能饰抒。RoCE V1協(xié)議在以太層的typeID是0x8915肮砾。
??在RoCE中,infiniband的鏈路層協(xié)議頭被去掉袋坑,用來(lái)表示地址的GUID被轉(zhuǎn)換成以太網(wǎng)的MAC仗处。Infiniband依賴于無(wú)損的物理傳輸,RoCE也同樣依賴于無(wú)損的以太傳輸咒彤,這一要求會(huì)給以太網(wǎng)的部署帶來(lái)了成本和管理上的開(kāi)銷(xiāo)疆柔。以太網(wǎng)的無(wú)損傳輸必須依靠L2的QoS支持,比如PFC(Priority Flow Control)镶柱,接收端在buffer池超過(guò)閾值時(shí)會(huì)向發(fā)送方發(fā)出pause幀旷档,發(fā)送方MAC層在收到pause幀后,自動(dòng)降低發(fā)送速率歇拆。這一要求鞋屈,意味著整個(gè)傳輸環(huán)節(jié)上的所有節(jié)點(diǎn)包括end、switch故觅、router厂庇,都必須全部支持L2 QoS,否則鏈路上的PFC就不能在兩端發(fā)揮有效作用输吏。

RoCEv1幀結(jié)構(gòu)示意圖

RoCEv1對(duì)應(yīng)的協(xié)議請(qǐng)規(guī)范參考InfiniBand? Architecture Specification Release 1.2.1 Annex A16: RoCE
RoCEv1報(bào)文內(nèi)容示意圖

RoCEv2

??由于RoCEv1的數(shù)據(jù)幀不帶IP頭部权旷,所以只能在L2子網(wǎng)內(nèi)通信。為了解決此問(wèn)題贯溅,IBTA于2014年提出了RoCE V2拄氯,RoCEv2擴(kuò)展了RoCEv1,將GRH(Global Routing Header)換成UDP header + IP header它浅,擴(kuò)展后的幀結(jié)構(gòu)如下圖所示译柏。


RoCEv2幀結(jié)構(gòu)

對(duì)應(yīng)一個(gè)具體的報(bào)文示意圖如下圖所示。


RoCEv2報(bào)文示意圖.png

值得注意的兩點(diǎn):

  • RoCE v1(Layer 2)運(yùn)作在Ehternet Link Layer(Layer 2)所以Ethertype 0x8915姐霍,所以正常的Frame大小為1500 bytes鄙麦,而Jumbo Frame則是9000 bytes典唇。
  • RoCE v2(Layer 3)運(yùn)作在UDP/IPv4或UDP/IPv6之上(Layer 3),采用UDP Port 4791進(jìn)行傳輸胯府。因?yàn)?RoCE v2的封包是座落在 Layer 3之上可進(jìn)行路由介衔,所以有時(shí)又會(huì)稱為「Routable RoCE」或簡(jiǎn)稱「RRoCE」。

Soft-RoCE

??Linux內(nèi)核在4.9通過(guò)軟件的實(shí)現(xiàn)了RoCEv2盟劫,即Soft-RoCE夜牡。不同于RoCE,softRoCE適用于任何以太環(huán)境侣签,無(wú)需依賴NIC塘装、switch、L2QoS等支持影所。
??softRoCE的目標(biāo)是在所有支持以太網(wǎng)的設(shè)備上都可以部署RDMA傳輸蹦肴,其實(shí)現(xiàn)可分成兩部分,對(duì)上通過(guò)librxe與RDMA stack(libibverbs)耦合猴娩,對(duì)下通過(guò)rxe.ko與linux stack layer3耦合阴幌,用戶通過(guò)某個(gè)eth NIC的UDP隧道為虛擬的RDMA設(shè)備傳輸RoCE數(shù)據(jù)。

Soft-RoCE通信示意圖

??在性能敏感的虛擬化場(chǎng)景卷中,VM環(huán)境需要直接訪問(wèn)底層硬件矛双。借助于softRoCE,底層的網(wǎng)卡硬件也不需要暴露在VM環(huán)境就可以使用掛載的虛擬RoCE設(shè)備蟆豫。
??通過(guò)在節(jié)點(diǎn)上安裝soft-RoCE议忽,它就可以與支持RoCE的節(jié)點(diǎn)或者是同樣安裝有soft-RoCE的節(jié)點(diǎn)建立RDMA傳輸。盡管在傳統(tǒng)以太上十减,one-copy甚至zero-copy的方案已經(jīng)出現(xiàn)多個(gè)栈幸,但個(gè)人認(rèn)為soft-RoCE的 最大意義是使得不具備RDMA NIC的數(shù)據(jù)中心用最小的成本構(gòu)建起高效的RDMA網(wǎng)絡(luò),所以softRoCE作為RoCE方案的重要補(bǔ)充帮辟,已經(jīng)逐漸成為RDMA生態(tài)(IBTA)下一步開(kāi)發(fā)的標(biāo)準(zhǔn)構(gòu)件速址。

網(wǎng)絡(luò)要求

&RoCE可以運(yùn)行在無(wú)損網(wǎng)絡(luò)環(huán)境和有損網(wǎng)絡(luò)環(huán)境中,如果運(yùn)行在有損網(wǎng)絡(luò)環(huán)境中由驹,稱為彈性RoCE(Resilient RoCE)芍锚;如果運(yùn)行在無(wú)損網(wǎng)絡(luò)環(huán)境中,稱為無(wú)損RoCE(Lossless RoCE)蔓榄。



??總結(jié):盡管RoCE對(duì)鏈路層和物理層存在特殊依賴润樱,但是在部署新型的數(shù)據(jù)中心時(shí),對(duì)于較新型switch羡棵、NIC壹若、SOC基本上都會(huì)集成網(wǎng)絡(luò)融合DCB和RDMA支持。所以在新建Data Center、SAN時(shí)店展,性能最優(yōu)的RoCE是最佳選擇养篓。而在舊DC、SAN擴(kuò)容或者成本敏感型的優(yōu)化時(shí)赂蕴,僅需要RNIC的iWRAP或者完全不依賴任何硬件的softRoCE更加適合柳弄。

Ref

1 https://www.cnblogs.com/echo1937/p/7018266.html
2 http://hustcat.github.io/roce-protocol/
3 RoCE: An Ethernet-InfiniBand Love Story
4 InfiniBand? Architecture Specification Release 1.2.1 Annex A16: RoCE
5 InfiniBand? Architecture Specification Release 1.2.1 Annex A17: RoCEv2
6 RoCEv2 CNP Packet Format Example

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市概说,隨后出現(xiàn)的幾起案子碧注,更是在濱河造成了極大的恐慌,老刑警劉巖糖赔,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件萍丐,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡放典,警方通過(guò)查閱死者的電腦和手機(jī)逝变,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)奋构,“玉大人壳影,你說(shuō)我怎么就攤上這事∶志剩” “怎么了宴咧?”我有些...
    開(kāi)封第一講書(shū)人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)醋火。 經(jīng)常有香客問(wèn)我悠汽,道長(zhǎng),這世上最難降的妖魔是什么芥驳? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任柿冲,我火速辦了婚禮,結(jié)果婚禮上兆旬,老公的妹妹穿的比我還像新娘假抄。我一直安慰自己,他們只是感情好丽猬,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布宿饱。 她就那樣靜靜地躺著,像睡著了一般脚祟。 火紅的嫁衣襯著肌膚如雪谬以。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,166評(píng)論 1 284
  • 那天由桌,我揣著相機(jī)與錄音为黎,去河邊找鬼邮丰。 笑死,一個(gè)胖子當(dāng)著我的面吹牛铭乾,可吹牛的內(nèi)容都是我干的剪廉。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼炕檩,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼斗蒋!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起笛质,我...
    開(kāi)封第一講書(shū)人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤泉沾,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后经瓷,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體爆哑,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年舆吮,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了揭朝。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡色冀,死狀恐怖潭袱,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情锋恬,我是刑警寧澤屯换,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站与学,受9級(jí)特大地震影響彤悔,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜索守,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一晕窑、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧卵佛,春花似錦杨赤、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至衙解,卻和暖如春阳柔,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背蚓峦。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工盔沫, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留医咨,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓架诞,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親干茉。 傳聞我的和親對(duì)象是個(gè)殘疾皇子谴忧,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容

  • 重新審視RDMA的網(wǎng)絡(luò)支持 本文為SIGCOMM 2018會(huì)議論文。筆者翻譯了該論文角虫。由于時(shí)間倉(cāng)促沾谓,且筆者英文能力...
    二進(jìn)制研究員閱讀 3,326評(píng)論 0 2
  • 簡(jiǎn)介 用簡(jiǎn)單的話來(lái)定義tcpdump,就是:dump the traffic on a network戳鹅,根據(jù)使用者...
    JasonShi6306421閱讀 1,229評(píng)論 0 1
  • 本書(shū)結(jié)構(gòu)是自頂向下的均驶,所以請(qǐng)按下列順序閱讀: 1.計(jì)算機(jī)網(wǎng)絡(luò)自頂向下--應(yīng)用層2.計(jì)算機(jī)網(wǎng)絡(luò)自頂向下--運(yùn)輸層3....
    牛富貴兒閱讀 3,374評(píng)論 1 10
  • ??RDMA(Remote Direct Memory Access)全稱為遠(yuǎn)程直接內(nèi)存訪問(wèn),是從DMA衍生出來(lái)的...
    北春南秋閱讀 5,907評(píng)論 0 2
  • #v課會(huì)·第3季·小學(xué)30天思維導(dǎo)圖實(shí)戰(zhàn)營(yíng)# 打卡天數(shù):29/30 打卡時(shí)間:2018.7.8 打卡主題:思維導(dǎo)圖...
    泡媽雷閱讀 254評(píng)論 0 3