Google B4 and After 論文閱讀二

這篇文章主要講的內(nèi)容是Google在假設(shè)好B4后侨舆,從2013年以來(lái)到2018年5年時(shí)間內(nèi)對(duì)B4的升級(jí)改造和技術(shù)更新,以及在運(yùn)維過(guò)程中遇到的問(wèn)題解決問(wèn)題的經(jīng)驗(yàn)總結(jié),還有一些有待更進(jìn)一步研究的開放性問(wèn)題。因?yàn)楸救瞬⒉皇侵饕獙W(xué)的網(wǎng)絡(luò)禽炬,只是選的課程相關(guān),所以就來(lái)研讀論文勤家。選課老師說(shuō)瞎抛,國(guó)內(nèi)很多互聯(lián)網(wǎng)企業(yè)大多關(guān)注上層的應(yīng)用,而對(duì)于這種底層的習(xí)以為常的技術(shù)研究的并不是很前沿却紧,不過(guò)商業(yè)利益在那,Google研究B4也是為了私有網(wǎng)絡(luò)胎撤,不過(guò)Google的開源分享確實(shí)有利于技術(shù)的發(fā)展晓殊,現(xiàn)如今科學(xué)技術(shù)越來(lái)越受到政治等因素的影響了。我在讀的過(guò)程中也是查閱了好些資料伤提,不好的地方歡迎批評(píng)指正巫俺。如果想了解更多關(guān)于SDN的可以看下“馬紹文”大佬的文章(見文末參考文獻(xiàn))。

文章標(biāo)題:B4 and After: Managing Hierarchy, Partitioning, and Asymmetry for Availability and Scale in Google’s Software-Defined WAN

一肿男、B4的發(fā)展與挑戰(zhàn)

本篇論文是有關(guān)B4[1]發(fā)展和挑戰(zhàn)經(jīng)驗(yàn)總結(jié)的第二篇介汹,在B4繼續(xù)發(fā)展5年后,谷歌再次發(fā)表論文介紹和總結(jié)其私有數(shù)據(jù)中心網(wǎng)絡(luò)的技術(shù)和運(yùn)維經(jīng)驗(yàn)舶沛。上一篇閱讀報(bào)告介紹了B4的整體網(wǎng)絡(luò)架構(gòu)和運(yùn)行效果評(píng)估嘹承。本文將概括介紹B4數(shù)據(jù)中心網(wǎng)絡(luò)5年來(lái)的主要技術(shù)難題及其解決方案和運(yùn)維方面經(jīng)驗(yàn)教訓(xùn)。

B4最初的設(shè)計(jì)是面向跨數(shù)據(jù)中心索引復(fù)制的如庭,對(duì)于可用性的要求并沒有太高叹卷。但隨著廣域網(wǎng)(WAN)流量的激增以及軟件的快速發(fā)展,帶寬需求每9個(gè)月翻一番坪它,對(duì)于B4的服務(wù)水平目標(biāo)(SLOs)要求也越來(lái)越高骤竹,達(dá)到了99.99%。因此往毡,需要更加革新的技術(shù)方案來(lái)解決B4的擴(kuò)展性和可用性的問(wèn)題蒙揣。

1.扁平拓?fù)涞膯?wèn)題

B4之前的站點(diǎn)物理拓?fù)錇楸馄酵負(fù)浣Y(jié)構(gòu),網(wǎng)絡(luò)難以擴(kuò)展开瞭,網(wǎng)絡(luò)流量承載能力難以有效提升與帶寬需求指數(shù)級(jí)增長(zhǎng)相矛盾懒震。為此谷歌增加了與現(xiàn)有B4站點(diǎn)臨近的站點(diǎn)來(lái)提升網(wǎng)絡(luò)容量。但是這種方法帶來(lái)了三個(gè)問(wèn)題:第一惩阶,站點(diǎn)數(shù)量增加導(dǎo)致集中式TE優(yōu)化算法顯著變慢挎狸。優(yōu)化算法在站點(diǎn)級(jí)別的拓?fù)湎逻\(yùn)行時(shí)間超線性增長(zhǎng),這將導(dǎo)致數(shù)據(jù)平面故障時(shí)數(shù)據(jù)黑洞(數(shù)據(jù)流向失效鏈路)的時(shí)間也延長(zhǎng)断楷,無(wú)法滿足可用性目標(biāo)锨匆。第二,交換機(jī)有限的轉(zhuǎn)發(fā)表空間使得站點(diǎn)數(shù)量增加較為困難。第三恐锣,最為重要的是茅主,這種方法將導(dǎo)致網(wǎng)絡(luò)容量規(guī)劃更加復(fù)雜化,使得原本只需考慮集群之間的數(shù)據(jù)交換土榴,變成了還需要理解集群內(nèi)部單獨(dú)B4站點(diǎn)的相關(guān)映射情況诀姚。最終谷歌選擇并重新設(shè)計(jì)了層次化的物理拓?fù)浣Y(jié)構(gòu)。如圖1. B4物理拓?fù)浣Y(jié)構(gòu)由扁平式第一代Saturn逐漸發(fā)展到層級(jí)式Stargate玷禽。

圖1. B4網(wǎng)絡(luò)物理拓?fù)浣Y(jié)構(gòu)發(fā)展圖

Stargate提供了高達(dá)81.92Tbps的站點(diǎn)到外部容量赫段,這些容量可以在WAN、集群和旁路間劃分矢赁,相對(duì)簡(jiǎn)單的拓?fù)涓尤菀拙S護(hù)糯笙,并且比Saturn的站點(diǎn)容量提升了8倍以上,滿足了流量增長(zhǎng)的需求撩银。

2.層次化拓?fù)渫負(fù)淙萘坎粚?duì)稱

雖然層次化拓?fù)鋷?lái)了可擴(kuò)展性给涕,但是也為TE帶來(lái)了挑戰(zhàn)。由于固有的網(wǎng)絡(luò)維護(hù)额获、運(yùn)維和數(shù)據(jù)平面設(shè)備的不穩(wěn)定够庙,在一定規(guī)模下容量不對(duì)稱問(wèn)題是不可避免的,主要表現(xiàn)為設(shè)計(jì)的超級(jí)節(jié)點(diǎn)(supernode)提供的承載流量的容量都是相同的抄邀,但是在具體數(shù)據(jù)傳輸過(guò)程中耘眨,有些超級(jí)節(jié)點(diǎn)的準(zhǔn)入流量(即承載的數(shù)據(jù)容量)是明顯少于設(shè)計(jì)標(biāo)準(zhǔn)的。

2.1 旁路技(sidelink)術(shù)

因此撤摸,引入旁路(sidelink)毅桃,將同一站點(diǎn)中超級(jí)節(jié)點(diǎn)連接成全mesh拓?fù)洹?/p>

? ?圖2. 利用旁路動(dòng)態(tài)重均衡數(shù)據(jù)流解決不對(duì)稱WAN鏈路故障

如圖2. 通過(guò)集中控制器利用旁路動(dòng)態(tài)重均衡站點(diǎn)內(nèi)數(shù)據(jù)流來(lái)解決WAN鏈路故障導(dǎo)致的容量不對(duì)稱。c為最大網(wǎng)絡(luò)準(zhǔn)入流量准夷,圖2.(b)中沒有旁路技術(shù)钥飞,受限于A2的最大容量2,站點(diǎn)A中衫嵌,c最大為4读宙。圖2.(b)中引入旁路,使得A2可以將超出的流量容量重分配給A1楔绞,從而使得從站點(diǎn)A傳遞到站點(diǎn)B的最大準(zhǔn)入流量c增至12结闸,也較好地利用起超級(jí)節(jié)點(diǎn)的容量設(shè)計(jì)。旁路的成本更低且比WAN鏈路更為可靠酒朵。不過(guò)也帶來(lái)了兩個(gè)問(wèn)題:第一桦锄,TE通常需要隧道封裝,需要設(shè)計(jì)TE算法蔫耽;第二结耀,TE升級(jí)會(huì)引入路由黑洞和環(huán)路,在排序超級(jí)節(jié)點(diǎn)TE更新操作的時(shí)候,需要利用無(wú)黑洞和環(huán)路并且不需要任何隧道或標(biāo)簽的方法图甜。

2.2 層次化TE架構(gòu)

引入旁路概念碍粥,利用負(fù)載均衡機(jī)制最大化站點(diǎn)級(jí)拓?fù)淙萘浚枰獙哟位疶E架構(gòu)黑毅。如圖3. 在站點(diǎn)級(jí)TE嚼摩,隧道分組(TG)通過(guò)IP-in-IP封裝數(shù)據(jù)流分組(FG)映射到隧道集合(站點(diǎn)級(jí)路徑),谷歌利用的是類似最大-最小公平優(yōu)化算法來(lái)為每個(gè)隧道流量劃分設(shè)置權(quán)重值矿瘦。在超級(jí)節(jié)點(diǎn)級(jí)TE枕面,隧道劃分組(TSG)指明某一隧道中的流量分布,控制當(dāng)前站點(diǎn)的其他超級(jí)節(jié)點(diǎn)和隧道另一端站點(diǎn)的超級(jí)節(jié)點(diǎn)之間的流量劃分缚去。在交換機(jī)級(jí)路由中膊畴,交換機(jī)劃分組(SSG)指明了交換機(jī)上跨物理鏈路的流量劃分。通過(guò)域控制器編排FG病游,TG和TSG,根據(jù)域內(nèi)拓?fù)溆?jì)算SSG稠通,實(shí)現(xiàn)層次化TE劃分規(guī)則達(dá)到可擴(kuò)展性衬衬。

在以任意順序進(jìn)行TSG更新時(shí)會(huì)導(dǎo)致B4網(wǎng)絡(luò)嚴(yán)重的流量黑洞或環(huán)路,降低可用性改橘。因此滋尉,谷歌開發(fā)了通過(guò)構(gòu)造依賴圖的方式編排TSG更新順序的可擴(kuò)展算法,并且證明得知TSG更新是無(wú)黑洞或環(huán)路的飞主。

圖3. 層次化的超級(jí)節(jié)點(diǎn)級(jí)TE通過(guò)旁路技術(shù)解決容量不對(duì)稱


3.高效的交換機(jī)規(guī)則管理

解決容量不對(duì)稱問(wèn)題使用了層次化TE結(jié)構(gòu)狮惜,而層次化TE需要交換機(jī)更多的哈希項(xiàng)來(lái)執(zhí)行兩層的細(xì)粒度流量劃分,同時(shí)當(dāng)前匹配規(guī)則下商用交換機(jī)的哈希項(xiàng)數(shù)量有限碌识。為此碾篡,谷歌使用兩種機(jī)制優(yōu)化了交換機(jī)轉(zhuǎn)發(fā)行為。分別是層次化FG匹配和使用高效的流哈希劃分筏餐。

3.1 層次化FG匹配

一開始谷歌采用訪問(wèn)控制列表(ACL)實(shí)現(xiàn)FG匹配开泽,但是FG匹配項(xiàng)的數(shù)量受限于ACL表的大小。因此魁瞪,將FG匹配換分為兩個(gè)層次化階段穆律。如圖4. 首先將集群前綴匹配(Cluster prefix match)移動(dòng)到最長(zhǎng)前綴匹配(LPM)表,LPM表項(xiàng)遠(yuǎn)多于ACL表导俘。利用LPM表匹配虛擬路由轉(zhuǎn)發(fā)(VRF)標(biāo)簽峦耘,通過(guò)虛擬轉(zhuǎn)發(fā)平面(VFP)表匹配DSCP標(biāo)記,使得匹配的數(shù)據(jù)包進(jìn)入交換機(jī)流水線的LPM表之前可以關(guān)聯(lián)一個(gè)VRG標(biāo)簽標(biāo)示其相應(yīng)的服務(wù)等級(jí)旅薄。這種兩階段可擴(kuò)展的方法可以支持1920個(gè)站點(diǎn)辅髓,而解耦前的ACL表最多只支持32個(gè)站點(diǎn)。

?圖4. 解耦FG匹配為兩個(gè)階段

3.2 高效的流哈希劃分

使用層次化TE,源站點(diǎn)負(fù)責(zé)實(shí)現(xiàn)TG利朵、TSG和SSG劃分律想。如表1. 原始設(shè)計(jì)中,僅在入口邊緣交換機(jī)(Ingress edge switches)實(shí)現(xiàn)劃分绍弟。但是這樣有交換機(jī)ECMP(Equal-cost multi-path)表大小的限制

為了將在入口邊緣交換機(jī)的劃分決策送達(dá)后端交換機(jī)(Backend swithces)技即,谷歌將數(shù)據(jù)封裝到TG劃分確定的隧道IP地址中,同時(shí)使用TSG(part 1)劃分確定的MAC地址表示自身站點(diǎn)/下一站點(diǎn)目標(biāo)樟遣。后端交換機(jī)而叼,根據(jù)隧道IP和源MAC地址,在TSG(part 2)劃分規(guī)則中豹悬,決定數(shù)據(jù)包轉(zhuǎn)發(fā)的超級(jí)節(jié)點(diǎn)葵陵;在SSG劃分規(guī)則中,確定與目標(biāo)超級(jí)節(jié)點(diǎn)連接的出口邊緣交換機(jī)瞻佛。

??表1. 細(xì)粒度流量劃分表

通過(guò)高效的交換機(jī)規(guī)則管理脱篙,采用層次化兩階段匹配規(guī)則使B4支持的站點(diǎn)數(shù)目增加了約60倍。通過(guò)分割路由路徑實(shí)現(xiàn)跨CLOS設(shè)備伤柄,細(xì)粒度劃分入口邊緣交換機(jī)和后端交換機(jī)绊困,采取這種優(yōu)化的兩階段哈希規(guī)則,使得B4網(wǎng)絡(luò)吞吐量提升了6%适刀。

二秤朗、運(yùn)維經(jīng)驗(yàn)與未來(lái)展望

谷歌作為第一家將SDN技術(shù)成功運(yùn)用到數(shù)據(jù)中心網(wǎng)絡(luò)的公司,其產(chǎn)品B4的成功部署和運(yùn)行笔喉,以及谷歌的開源和分享精神取视,對(duì)于SDN技術(shù)的發(fā)展和推廣有莫大的幫助。谷歌對(duì)B4網(wǎng)絡(luò)的運(yùn)維經(jīng)驗(yàn)和一些開放性的問(wèn)題也是非常值得借鑒和學(xué)習(xí)的常挚。

1. 簡(jiǎn)化網(wǎng)絡(luò)管理工作

谷歌在B4運(yùn)維期間作谭,從扁平化的Saturn的擴(kuò)展性差,到層次化的Stargate準(zhǔn)入流量瓶頸奄毡,當(dāng)網(wǎng)絡(luò)故障時(shí)需要人為物理拓?fù)浼軜?gòu)和容量不對(duì)稱導(dǎo)致的容量損失等問(wèn)題丢早。但是隨著B4網(wǎng)絡(luò)規(guī)模的越來(lái)越大,網(wǎng)絡(luò)故障或者流量控制相關(guān)的問(wèn)題秧倾,還需要工程師人為檢測(cè)怨酝、分析、發(fā)現(xiàn)和處理那先,已經(jīng)變得越來(lái)越復(fù)雜农猬。因此谷歌對(duì)于網(wǎng)絡(luò)管理工作更傾向于由開發(fā)的管理工具去通過(guò)控制器暴露的RPC管理編排網(wǎng)絡(luò)操作。

2.旁路容量規(guī)劃

旁路技術(shù)在同站點(diǎn)內(nèi)超級(jí)節(jié)點(diǎn)之間售淡,形成mesh拓?fù)浣锎校梢詰?yīng)對(duì)物理故障慷垮、網(wǎng)絡(luò)操作和劃分不均衡導(dǎo)致WAN容量不對(duì)稱。但是對(duì)于旁路容量的規(guī)劃則需要基于統(tǒng)計(jì)學(xué)的需求分析揍堕,預(yù)測(cè)和評(píng)估較長(zhǎng)期的網(wǎng)絡(luò)需求料身、成本等。為此衩茸,谷歌也在開發(fā)基于日志的統(tǒng)計(jì)分析框架芹血,來(lái)以最小化成本規(guī)劃旁路容量。

3. 入口流量均衡管理

TSG算法假設(shè)的是站點(diǎn)內(nèi)超級(jí)節(jié)點(diǎn)間輸入流量都是均衡的楞慈,這種假設(shè)簡(jiǎn)化了TSG在網(wǎng)絡(luò)中具體設(shè)計(jì)與實(shí)現(xiàn)幔烛。但是TSG算法并未考慮入口流量的不均衡,谷歌也正在計(jì)劃研究更多的可選擇的設(shè)計(jì)囊蓝,因?yàn)榻鉀Q方案的開放性饿悬,谷歌提出了一個(gè)可選的方案,就是為每對(duì)相鄰站點(diǎn)級(jí)鏈路計(jì)算TSG聚霜。

三狡恬、總結(jié)

隨著大規(guī)模云數(shù)據(jù)中心的發(fā)展,越來(lái)越多的新思想被引入到云網(wǎng)絡(luò)設(shè)計(jì)蝎宇。OTT云公司也期望軟硬件解耦傲宜,控制和轉(zhuǎn)發(fā)解耦,來(lái)增加網(wǎng)絡(luò)的可編程性夫啊,擴(kuò)展網(wǎng)絡(luò)的靈活性。P4編程語(yǔ)言對(duì)交換機(jī)的控制的深入使得智能網(wǎng)卡成為可能辆憔,越來(lái)越多的功能將會(huì)集成到網(wǎng)卡上撇眯,則SDN的應(yīng)用場(chǎng)景將會(huì)更加全面。人工智能的技術(shù)也能更好地在網(wǎng)絡(luò)方面運(yùn)用起來(lái)虱咧,比如對(duì)網(wǎng)絡(luò)流量的轉(zhuǎn)發(fā)和擁塞控制熊榛,谷歌的旁路容量設(shè)計(jì)也可以利用機(jī)器學(xué)習(xí)來(lái)預(yù)測(cè)容量需求。未來(lái)發(fā)展是云數(shù)據(jù)中心腕巡、WAN深度接入SDN玄坦,SDN對(duì)網(wǎng)絡(luò)狀態(tài)的管理和控制更加全面,云技術(shù)和網(wǎng)絡(luò)技術(shù)更進(jìn)一步融合绘沉。

上一篇:Google B4 論文閱讀一 - 簡(jiǎn)書 (jianshu.com)

參考文獻(xiàn):

[1]Jain S , ?Kumar A , ?Mandal S , et al. B4: Experience with a Globally-Deployed Software Defined WAN[C]// Proceedings of the ACM SIGCOMM 2013 conference on SIGCOMM. ACM, 2013:3-14.

[2]Hong C Y , ?Liang S , ?Mendelev K , et al. B4 and after: managing hierarchy, partitioning, and asymmetry for availability and scale in google's software-defined WAN[C]// the 2018 Conference of the ACM Special Interest Group. ACM, 2018.

[3]馬紹文. Google B4廣域網(wǎng)SDN 的前世今生[EB/OL].https://www.sdnlab.com/22346.html, 2018-09-13

[4]馬紹文. 超大規(guī)模云網(wǎng)絡(luò)數(shù)據(jù)中心創(chuàng)新(下)[EB/OL].https://www.sdnlab.com/24041.html, 2020-04-21

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末煎楣,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子车伞,更是在濱河造成了極大的恐慌择懂,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,884評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件另玖,死亡現(xiàn)場(chǎng)離奇詭異困曙,居然都是意外死亡表伦,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門慷丽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)蹦哼,“玉大人,你說(shuō)我怎么就攤上這事要糊「傺” “怎么了?”我有些...
    開封第一講書人閱讀 157,435評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵杨耙,是天一觀的道長(zhǎng)赤套。 經(jīng)常有香客問(wèn)我,道長(zhǎng)珊膜,這世上最難降的妖魔是什么容握? 我笑而不...
    開封第一講書人閱讀 56,509評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮车柠,結(jié)果婚禮上剔氏,老公的妹妹穿的比我還像新娘。我一直安慰自己竹祷,他們只是感情好谈跛,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,611評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著塑陵,像睡著了一般感憾。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上令花,一...
    開封第一講書人閱讀 49,837評(píng)論 1 290
  • 那天阻桅,我揣著相機(jī)與錄音,去河邊找鬼兼都。 笑死嫂沉,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的扮碧。 我是一名探鬼主播趟章,決...
    沈念sama閱讀 38,987評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼慎王!你這毒婦竟也來(lái)了蚓土?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,730評(píng)論 0 267
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤赖淤,失蹤者是張志新(化名)和其女友劉穎北戏,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體漫蛔,經(jīng)...
    沈念sama閱讀 44,194評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡嗜愈,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,525評(píng)論 2 327
  • 正文 我和宋清朗相戀三年旧蛾,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蠕嫁。...
    茶點(diǎn)故事閱讀 38,664評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡锨天,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出剃毒,到底是詐尸還是另有隱情病袄,我是刑警寧澤,帶...
    沈念sama閱讀 34,334評(píng)論 4 330
  • 正文 年R本政府宣布赘阀,位于F島的核電站益缠,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏基公。R本人自食惡果不足惜幅慌,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,944評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望轰豆。 院中可真熱鬧胰伍,春花似錦、人聲如沸酸休。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)斑司。三九已至渗饮,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間宿刮,已是汗流浹背互站。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留糙置,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,389評(píng)論 2 360
  • 正文 我出身青樓是目,卻偏偏與公主長(zhǎng)得像谤饭,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子懊纳,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,554評(píng)論 2 349