解密谷歌SDN網(wǎng)絡(luò) 三個階段實現(xiàn)混合遷移
谷歌運行著一個龐大的網(wǎng)絡(luò),在2010年Arbor Networks公司在其研究中總結(jié)道:“如果谷歌是一個互聯(lián)網(wǎng)服務(wù)供應(yīng)商,它將是發(fā)展最快的全球第三大網(wǎng)絡(luò)運營商。只有兩家公司比谷歌貢獻更多的跨域流量,這兩家供應(yīng)商都承載著谷歌龐大的流量。”
在開放網(wǎng)絡(luò)峰會上,谷歌杰出工程師Amin Vahdat介紹了谷歌如何結(jié)合Quagga開源軟件以及OpenFlow來優(yōu)化其數(shù)據(jù)中心互連,他還介紹了谷歌在其內(nèi)部數(shù)據(jù)中心使用OpenFlow的細節(jié)信息,谷歌稱其SDN網(wǎng)絡(luò)為“B4”。
谷歌為何選擇SDN?
Vahdat指出,谷歌后端(東西)網(wǎng)絡(luò)的增長迅速超越了其前端面向用戶的網(wǎng)絡(luò)。這種增長非常昂貴,因為網(wǎng)絡(luò)并不能像存儲和計算一樣以符合成本效益的方式來擴展。計算和存儲的運營成本會隨著規(guī)模的擴展而更加便宜,但網(wǎng)絡(luò)并不是如此。
Vahdat介紹了谷歌選擇軟件定義網(wǎng)絡(luò)的理由。首先,通過從軟件分離硬件,該公司可以基于所需的功能選擇硬件,同時能夠?qū)浖r間線進行創(chuàng)新和部署。其次,它提供邏輯上的集中控制,這將會更具確定性、更高效以及更容錯。第三,自動化允許谷歌分離、監(jiān)控、管理和操作。所有這些元素能夠提供靈活性以及創(chuàng)新性。
在這個項目開始時,谷歌使用商用芯片建立了自己的交換機(見圖片)。谷歌構(gòu)建自己的硬件,因為當(dāng)時市場上并沒有硬件能夠滿足其需求。
▲B4網(wǎng)絡(luò)硬件
Vahdat并沒有提到現(xiàn)在市場上是否存在滿足于谷歌部署SDN硬件需求的交換機,這通常涉及供應(yīng)商固件升級到納入OpenFlow代理。
然而,Vahdat指出,雖然OpenFlow并不是且仍然部署***的協(xié)議,但谷歌將繼續(xù)使用OpenFlow用于流量實例,因為它受到各種廠商的支持。筆者認為,這意味著谷歌并不打算推出其自己的硬件,并且,OpenFlow支持將會是未來硬件購買的采購要求。
谷歌B4網(wǎng)絡(luò)的混合遷移分三個階段
Vahdat接著討論了谷歌的SDN遷移路徑,從完全分布式的單片控制和數(shù)據(jù)平面硬件架構(gòu)轉(zhuǎn)移到物理分散的(盡管邏輯上集中)控制平面架構(gòu)。
谷歌B4網(wǎng)絡(luò)的混合遷移分三個階段進行:
▲傳統(tǒng)混合SDN部署
▲混合綜合SDN部署
▲最終:混合SDN部署
在下面的圖中,你可以看到,谷歌已經(jīng)在交換機旁邊部署了網(wǎng)絡(luò)控制器服務(wù)器(NCS),這個NCS包含針對一定數(shù)量網(wǎng)絡(luò)元素的提取的控制平面。這些交換機運行具有低水平控制的OpenFlow代理,所有真正重要的元件運行在外部服務(wù)器(但仍位于同一位置)的一套控制器上,NCS是32核服務(wù)器。
▲B4架構(gòu)
在NCS上面是OpenFlow控制器,用于高可用性故障切換。Vahdat談到的主要應(yīng)用程序是流量工程應(yīng)用程序—將政策實例化到控制協(xié)議,包括BGP、ISIS和OpenFlow。
作者總結(jié)
筆者對谷歌的混合部署戰(zhàn)略很感興趣。這筆者看來,在對網(wǎng)絡(luò)狀態(tài)的丟失和機械地繼續(xù)轉(zhuǎn)發(fā)數(shù)據(jù)包方面,谷歌相當(dāng)受限。網(wǎng)絡(luò)可能會回落到低優(yōu)先級,實例化流量規(guī)則。流量表中,不符合流量規(guī)則的數(shù)據(jù)包將會流入到正常的轉(zhuǎn)發(fā)管道或者預(yù)先安裝的捕捉全部的流量規(guī)則,來到達出口網(wǎng)關(guān)。雖然自定義轉(zhuǎn)發(fā)將會回落到最短路徑或者靜態(tài)路徑,但它會保持流量轉(zhuǎn)發(fā),直到控制元件恢復(fù)。
這些圖表明控制元件是按照多層層次來部署。分層和模塊化是我們現(xiàn)在擴展大型網(wǎng)絡(luò)的方法。通過將NIB(網(wǎng)絡(luò)信息庫)分成模塊,谷歌的方法類似于現(xiàn)在的網(wǎng)絡(luò)架構(gòu)從每個數(shù)據(jù)平面減去專用控制平面的方法。這些模塊然后可在所有模塊中再分發(fā)哈希表和NIB,并提供整體視圖。






