Google案例:利用SDN實現(xiàn)數(shù)據(jù)中心互聯(lián)
谷歌為用戶提供多種業(yè)務(wù),包括搜索、Google+、Gmail郵箱、YouTube以及地圖服務(wù)等。為了使得全球范圍內(nèi)的用戶能夠更快更方便地獲取信息,每天大量的數(shù)據(jù)從一個地區(qū)傳送到另一個地區(qū)。如此一來,廣域網(wǎng)流經(jīng)的應(yīng)用或服務(wù)流量呈現(xiàn)密集型發(fā)展態(tài)勢。
當我們重新審視基礎(chǔ)網(wǎng)絡(luò)設(shè)施的管理、成本和性能時,“規(guī)模經(jīng)濟”特別適用于存儲、計算部件,然而廣域網(wǎng)卻不需要。傳統(tǒng)的網(wǎng)絡(luò)解決方案并不會隨著網(wǎng)絡(luò)主干的規(guī)模變化而獲得任何顯著的成本效益。
不適合的原因有很多,比如非線性的網(wǎng)絡(luò)設(shè)備交互性的復雜度、手動配置復雜、管理成本高昂以及非標準化的API接口配置表。因此,我們需要一個規(guī)模經(jīng)濟同樣適用的廣域網(wǎng),它具有更高的效率、更高的性能、更好的容錯和可管理性。
我們需要能夠方便地管理廣域網(wǎng),就像管理一個矩陣,而不是一個不同鐵皮盒子堆積在一起的雜亂無章的網(wǎng)絡(luò)。
谷歌SDN理念
谷歌的廣域網(wǎng)由兩張骨干網(wǎng)平面組成:外網(wǎng),用于承載用戶流量,被稱為I-scale網(wǎng)絡(luò);內(nèi)網(wǎng),用于承載數(shù)據(jù)中心之間的流量,被成為G-scale網(wǎng)絡(luò)。這兩張網(wǎng)絡(luò)的需求差別性很大,流量特性也存在著很大的差別。
根據(jù)G-scale網(wǎng)絡(luò)的需求和流量特性,并為了解決廣域網(wǎng)在規(guī)模經(jīng)濟下遇到的問題,我們試圖利用目前備受關(guān)注的Openflow協(xié)議,通過SDN解決方案來實現(xiàn)我們的目標。
開始這個項目時,我們發(fā)現(xiàn)沒有合適的Openflow網(wǎng)絡(luò)設(shè)備能夠滿足我們的需求,所以谷歌決定自己開發(fā)網(wǎng)絡(luò)交換機,當然里面采用了成熟的商用芯片。我們還基于OpenFlow開發(fā)了開放的路由協(xié)議棧。
每個站點部署了多臺交換機設(shè)備,保證可擴展性(高達T比特的帶寬)和高容錯率。站點之間通過Openflow交換機實現(xiàn)通信,并通過OpenFlow控制器實現(xiàn)網(wǎng)絡(luò)調(diào)度。多個控制器的存在就是為了確保不會發(fā)生單點故障。
在這個廣域網(wǎng)矩陣中,我們建立了一個集中的流量工程模型。這個模型從底層網(wǎng)絡(luò)收集實時的網(wǎng)絡(luò)利用率和拓撲數(shù)據(jù),以及應(yīng)用實際消耗的帶寬。有了這些數(shù)據(jù),谷歌計算出***的流量路徑,然后利用Openflow協(xié)議寫入程序中。如果出現(xiàn)需求改變或者意外的網(wǎng)絡(luò)事件時,模型會重新計算路由路徑,并寫入程序中。
如今我們已經(jīng)在G-scale網(wǎng)絡(luò)中大規(guī)模的部署了SDN解決方案,支持了G-scale網(wǎng)絡(luò)的高效運營。谷歌高級副總裁UrsHolzle表示,SDN能夠有效地降低網(wǎng)絡(luò)的復雜性和管理成本。雖然目前預(yù)言SDN的成功還為時過早,但是谷歌的實際經(jīng)歷卻證明SDN以及Openflow已經(jīng)做好了規(guī)模商用的準備。
谷歌的數(shù)據(jù)中心廣域網(wǎng)以SDN和OpenFlow為基礎(chǔ)架構(gòu)。SDN和OpenFlow提升了網(wǎng)絡(luò)的可管理、可編程、網(wǎng)絡(luò)利用率以及成本效益。2010年1月,Google開始采用SDN和OpenFlow,2012年初,Google全部數(shù)據(jù)中心骨干連接已經(jīng)都采用這種架構(gòu)。網(wǎng)絡(luò)利用率提升到95%,這一數(shù)字讓人難以置信。(本文原載于ONF官網(wǎng)。)
PC的軟硬分離造就了微軟的崛起,締造了WinTel帝國。毫不夸張地說,OpenFlow的影響不亞于PC的軟硬分離。但不同的是;當年IBM并不重視PC,才給了微軟崛起的機會。而今天思科卻明顯感覺到了OpenFlow帶來的挑戰(zhàn),甚至,思科比任何競爭對手都要積極。對于新出現(xiàn)的廠家來說,這也許是能爭得一席之地***的機會。
Google總結(jié)SDN優(yōu)點
提供網(wǎng)絡(luò)結(jié)構(gòu)的統(tǒng)一視圖:對整個網(wǎng)絡(luò)架構(gòu)實現(xiàn)統(tǒng)一的查看,從而簡化配置、管理和優(yōu)化。
高利用率:集中化的流量工程使得我們能夠有效地調(diào)整端到端的流量路徑,從而達到網(wǎng)絡(luò)資源的高效利用。
快速故障修復:鏈路、節(jié)點故障都能實現(xiàn)快速修復。而且系統(tǒng)能夠快速的聚合網(wǎng)絡(luò)資源,實現(xiàn)平均分配,并且對于一些網(wǎng)絡(luò)行為可進行預(yù)測。
平滑升級:控制平面和轉(zhuǎn)發(fā)/數(shù)據(jù)平面的分離可以做到軟件平滑升級的同時保證沒有數(shù)據(jù)丟包或者性能衰減。
彈性計算:大規(guī)模的計算、路徑分析都被集成在子控制器中,由***代的服務(wù)器完成
Google分析SDN挑戰(zhàn)
協(xié)議不成熟:Openlow協(xié)議還處于發(fā)展初期。不過,正如我們的研發(fā)成果呈現(xiàn)的,現(xiàn)有的Openflow協(xié)議已經(jīng)足夠支撐很多網(wǎng)絡(luò)應(yīng)用的開發(fā)了。
高容錯的控制器:為了提高容錯率,必須在網(wǎng)絡(luò)中部署多個控制器。從而就要區(qū)分主次控制器,以便于高效配合。
功能區(qū)分:路由器和控制器的功能區(qū)分仍在探討階段,功能配置仍是一個懸而未決的問題。