上傳時間:2011年12月7日
OpenFlow軟件定義網(wǎng)絡(luò)與應(yīng)用開源軟件定義網(wǎng)絡(luò)OpenFlow架構(gòu)  Open Networking Foundation (ONF)開放式網(wǎng)絡(luò)基金會今年成立以來,OpenFlow規(guī)范得到主流網(wǎng)絡(luò)廠家追捧,尤其是最近在Las Vegas Interop 2011舉行網(wǎng)絡(luò)大會,OpenFlow大出風(fēng)頭。究其原因,其背后基本理念是軟件定義網(wǎng)絡(luò)(Software-Defined Network)。OpenFlow規(guī)范實際上是一整套軟件應(yīng)用程序接口,控制網(wǎng)絡(luò)數(shù)據(jù)如何轉(zhuǎn)發(fā),可基于硬件實現(xiàn),OpenFlow增加了定制轉(zhuǎn)發(fā)數(shù)據(jù)的控制程度,減少了支撐復(fù)雜控制所需的硬件成本。OpenFlow網(wǎng)絡(luò)控制節(jié)點可以通過規(guī)范與支持OpenFlow的交換節(jié)點溝通配置信息,決定數(shù)據(jù)轉(zhuǎn)發(fā)平面的轉(zhuǎn)發(fā)表,控制器與轉(zhuǎn)發(fā)節(jié)點間通過SSL加密傳輸。OpenFlow支持定義的“信息流”主要是從1層到4層的關(guān)鍵信息包括端口號、VLAN、MAC、以太網(wǎng)包頭、IP地址、 IP協(xié)議號、TCP端口號等。配置信息通常包括“信息流”和與之對于的動作。每個“信息流”有符合某種特征的數(shù)據(jù)包及動作組成,比如源IP/源Port,目的IP/目的Port,5種不同轉(zhuǎn)發(fā)動作。
圖6
圖6 OpenFLow的架構(gòu)圖
圖7
圖7 OpenFlow“信息流”定義
  用戶可以通過OpenFlow預(yù)設(shè)通用規(guī)則,每種不同網(wǎng)絡(luò)節(jié)點可以根據(jù)設(shè)備特點更新轉(zhuǎn)發(fā)平面規(guī)則,比如轉(zhuǎn)發(fā)交換機更新MAC地址轉(zhuǎn)發(fā)表、VLAN端口轉(zhuǎn)發(fā)表、1到4層轉(zhuǎn)發(fā)表,路由器修改訪問控制IP列表,防火墻修改進出端口規(guī)則等。
圖8
圖8 不同網(wǎng)絡(luò)節(jié)點應(yīng)用不同網(wǎng)絡(luò)“信息流”規(guī)則
  OpenFlow它增加了網(wǎng)絡(luò)靈活控制能力,分布式節(jié)點智能通過OpenFlow指令得以實現(xiàn),外部OpenFlow控制管理節(jié)點的實時控制,集中統(tǒng)一中央智能。OpenFlow根據(jù)運行實況實時控制分布式節(jié)點,分布式節(jié)點生成快速轉(zhuǎn)發(fā)表,無須進行復(fù)雜智能分析計算,只要執(zhí)行網(wǎng)絡(luò)轉(zhuǎn)發(fā)平面功能。當(dāng)新轉(zhuǎn)發(fā)節(jié)點加入到OpenFlow網(wǎng)絡(luò)時,自動從中央控制節(jié)點得的最新網(wǎng)絡(luò)配置信息,完成網(wǎng)絡(luò)自動化感知。而中央控制節(jié)點基于x86標準服務(wù)器架構(gòu),強大計算能力和橫向擴展特性保證了控制平面擴展性和經(jīng)濟性。  OpenFlow獨立控制平面出現(xiàn),TRILL或Shortest Path Bridging協(xié)議變得不是那么重要,因為OpenFlow控制器可以擁有有全網(wǎng)視圖,所以動態(tài)防止環(huán)路發(fā)生。OpenFlow不但增加了傳統(tǒng)轉(zhuǎn)發(fā)平面的效率,在提供高級網(wǎng)絡(luò)服務(wù)方面還可以展現(xiàn)獨特價值,比如多對一的網(wǎng)絡(luò)虛擬化,分布式負載均衡和分布式防火墻或入侵檢測,非常不同于傳統(tǒng)模式的一對多網(wǎng)絡(luò)虛擬化模式。每一類分布式網(wǎng)絡(luò)資源服務(wù)與單獨云租戶對應(yīng),每個云租戶都有獨立的跨物理節(jié)點的虛擬化網(wǎng)絡(luò),比如不同虛擬端口交換機,對租戶管理員來物理網(wǎng)絡(luò)端口透明,邏輯化網(wǎng)絡(luò)派生于在物理網(wǎng)絡(luò)資源上抽象出的網(wǎng)絡(luò)虛擬資源池。虛擬機移動后,當(dāng)虛擬機相應(yīng)“信息流”的第一個數(shù)據(jù)包到達移動后的本地交換機節(jié)點,如果本地交換機節(jié)點沒有發(fā)現(xiàn)匹配的轉(zhuǎn)發(fā)規(guī)則,整個數(shù)據(jù)報文會被送到中央管理節(jié)點,中央管理節(jié)點根據(jù)定義規(guī)則邏輯設(shè)定本地規(guī)則,并應(yīng)用到本地交換機的轉(zhuǎn)發(fā)表建立新的匹配項,之后的“信息流”不再通過管理節(jié)點,由轉(zhuǎn)發(fā)節(jié)點直接完成。OpenFlow在虛擬化軟件交換機Open vSwitch應(yīng)用  Open vSwitch是多層虛擬化軟件交換機,它遵循Apache 2.0開源代碼版權(quán)協(xié)議,可用于生產(chǎn)環(huán)境,支持跨物理服務(wù)器分布式管理、擴展編程、大規(guī)模網(wǎng)絡(luò)自動化和標準化接口,實現(xiàn)了和大多數(shù)商業(yè)閉源交換機功能類似的軟件交換機。 OpenSwitch分離快速數(shù)據(jù)轉(zhuǎn)發(fā)平面,OpenFlow作為新型控制平面,不同物理主機的虛擬化交換機通過OpenFlow控制,集群組成分布式虛擬化交換機,還可以實現(xiàn)不同租戶虛擬機和虛擬網(wǎng)絡(luò)隔離。正是由于Open vSwitch對OpenFlow支持,推動了OpenFlow在開源虛擬化領(lǐng)域的應(yīng)用和發(fā)展。軟件定義網(wǎng)絡(luò)商業(yè)價值應(yīng)用展望軟件定義網(wǎng)絡(luò)OpenFlow在超大規(guī)模Web 2.0 網(wǎng)絡(luò)應(yīng)用  Web 2.0用戶如Google、Facebook的服務(wù)器臺數(shù)近百萬臺,單數(shù)據(jù)中心服務(wù)器數(shù)目也超過十萬臺,國內(nèi)公司如Tencent、Aliababa和Baidu安裝服務(wù)器數(shù)估計也超過數(shù)十萬臺。在這些超大規(guī)模服務(wù)器群的網(wǎng)絡(luò)設(shè)計與實現(xiàn)尤為重要,穩(wěn)定、可靠和高性能的網(wǎng)絡(luò)是Web 2.0業(yè)務(wù)的生命線。一方面在核心層實現(xiàn)高可靠性和高性能,另一方面是大量的服務(wù)器接入需要內(nèi)網(wǎng)、外網(wǎng)和管理網(wǎng)接口,3倍以上端口數(shù)目,大量接入層設(shè)備成本成為是基礎(chǔ)架構(gòu)成本的重要組成。為了進一步降低服務(wù)器成本,集中、整合與開源虛擬化是下一代Web 2.0架構(gòu)的發(fā)展趨勢,單一數(shù)據(jù)中心虛擬機數(shù)目將部署到上十萬臺,這種環(huán)境下的公共云虛擬化移動性比我們之前說私有云移動性來得技術(shù)更加復(fù)雜、管理更加困難,傳統(tǒng)網(wǎng)絡(luò)廠家設(shè)備非常難以滿足超大規(guī)模的“信息流”要求。  從傳統(tǒng)網(wǎng)絡(luò)架構(gòu)遷移到軟件定義網(wǎng)絡(luò)將是一個艱難的旅程。網(wǎng)絡(luò)技術(shù)應(yīng)用演變過程有兩種方式,一種是先邊緣后核心,另外一種是先中心后邊緣,不過從客戶心理學(xué)來看,先邊緣后核心是更容易接受的應(yīng)用方式,所以我們可以預(yù)計OpenFlow應(yīng)用過程也將是從邊緣到核心的應(yīng)用過程。具體方式是用戶在接入層采用支持OpenFlow交換機,建立獨立管理網(wǎng),安裝獨立開發(fā)的或商用控制平臺軟件,測試和完善控制平臺軟件,從類OpenFlow交換機采集數(shù)據(jù)流量模式和優(yōu)化定義規(guī)則,并同時至頂向下從應(yīng)用角度分析,兩種分析方式結(jié)合抽象出網(wǎng)絡(luò)數(shù)據(jù)模型,這就是軟件定義網(wǎng)絡(luò)的規(guī)則基礎(chǔ),從是什么推進到應(yīng)該是什么,再到如何是什么?! ∧壳爸髁鹘粨Q機廠家都還沒有推出OpenFlow交換機,NEC公司是第一個推出支持OpenFlow交換機的公司,產(chǎn)品型號是PF5240,帶有48個千兆和4個萬兆上聯(lián)端口,NEC還開發(fā)了OpenFlow控制器軟件支持PF5240或其它第三方OpenFlow兼容交換機。
圖9
圖9 OpenFlow基于3層網(wǎng)絡(luò)建立2層虛擬化轉(zhuǎn)發(fā)路徑
  如上圖所示,OpenFlow在數(shù)據(jù)中心網(wǎng)絡(luò)里建立從一臺虛擬機到另外一臺虛擬機的轉(zhuǎn)發(fā)路徑,虛擬機與虛擬機之間的三層網(wǎng)絡(luò)基礎(chǔ)上建立了二層廣播域——虛擬以太網(wǎng)交換機,OpenFlow擴展了三層相對靜態(tài)功能,根據(jù)數(shù)據(jù)流動態(tài)建立負載均衡決策路徑,并依據(jù)虛擬化交換網(wǎng)絡(luò)配置改變最優(yōu)化的轉(zhuǎn)發(fā)路徑,從而簡化了大型數(shù)據(jù)中心3層網(wǎng)絡(luò)適應(yīng)2層虛擬機移動性要求。軟件定義網(wǎng)絡(luò)OpenFlow在電信運營商網(wǎng)絡(luò)應(yīng)用  在傳統(tǒng)電信運營商網(wǎng)絡(luò)里,IP層網(wǎng)絡(luò)和傳輸網(wǎng)絡(luò)獨立分離的,它們分別單獨管理,IP網(wǎng)和傳輸網(wǎng)之間沒有交互,IP鏈路靜態(tài)配置,傳輸層電路或放大器也是靜態(tài)的,導(dǎo)致不同層次功能和資源重復(fù),增加用戶采購成本和運營成本負擔(dān)。傳統(tǒng)網(wǎng)絡(luò)電路交換更無法自動感知報文交換要求,自動化控制平面操作,只是被動地依賴網(wǎng)管平臺手工操作,服務(wù)交付時間長達幾天,運營商只能是成為網(wǎng)絡(luò)帶寬銷售者。尤其在云計算環(huán)境下,需要跨越數(shù)據(jù)中心的資源管理,需要上層資源與物理鏈路層調(diào)度的匹配與自動化,每個租戶在數(shù)據(jù)中心之外需要建立虛擬網(wǎng)絡(luò)服務(wù)和實現(xiàn)自助管理。這樣用戶趨勢就是報文交換網(wǎng)絡(luò)與電路交換網(wǎng)絡(luò)融合,在同一平臺下管理和運維,報文交換和電路交換之間互動,實現(xiàn)不同層次間動態(tài)調(diào)度。但是問題是報文和電路融合非常困難,因為IP網(wǎng)絡(luò)和傳輸網(wǎng)絡(luò)架構(gòu)非常不一樣,整合運維非常困難,傳輸網(wǎng)絡(luò)保持不變,結(jié)果會造成融合更加膨脹,最后導(dǎo)致網(wǎng)絡(luò)不可用,所以有專家說了架構(gòu)融合才是真正融合。哪什么才是最佳控制和管理方式呢?可不可以基于1層到4層建立 “信息流”的控制方式呢?可以,解決思路是按光纖、放大器、時隙和報文內(nèi)容細分,從電路交換和報文交換抽象映射到2到4層信息流交換層,實現(xiàn)基于廣域網(wǎng)的網(wǎng)絡(luò)虛擬化。斯坦福大學(xué)的有關(guān)專家正在積極研究將報文交換和電路交換集成,,合并起來統(tǒng)一抽象并管理和控制,實現(xiàn)基于“信息流”網(wǎng)絡(luò)服務(wù)架構(gòu),基于不同流量和應(yīng)用模型建立端對端網(wǎng)絡(luò)虛擬化,這些研究為OpenFlow在運營商網(wǎng)絡(luò)應(yīng)用提供無限的可能性。
圖10
圖10 運營商基于”流”統(tǒng)一控制管理網(wǎng)絡(luò)
軟件定義網(wǎng)絡(luò)發(fā)展挑戰(zhàn)  盡管軟件定義網(wǎng)絡(luò)發(fā)展可以幫助我們解決云計算網(wǎng)絡(luò)的管理和經(jīng)濟問題,前途是非常光明的,但從目前發(fā)展階段來看還是需要較長時間的發(fā)展和普及過程,從技術(shù)本身到管理和市場方面都有不少的挑戰(zhàn)?! 〉谝稽c,每個控制節(jié)點和轉(zhuǎn)發(fā)節(jié)點需要維護大量“信息流”表,控制節(jié)點或轉(zhuǎn)發(fā)節(jié)點的內(nèi)存及其他資源需要相應(yīng)提高,大量突發(fā)的第一次“信息流”建立可能會導(dǎo)致新的“信息流”瓶頸問題。而且如果控制點故障,大量“信息流”需要在轉(zhuǎn)發(fā)節(jié)點重建,突發(fā)“信息流”配置對網(wǎng)絡(luò)性能和魯棒性都會有潛在的巨大影響?! 〉诙c,OpenFlow成熟度問題,目前OpenFlow還只應(yīng)用于科學(xué)實驗和校園內(nèi)部網(wǎng)。沒有大規(guī)模產(chǎn)品化,量產(chǎn)之前的成本優(yōu)勢還是很大疑問。網(wǎng)絡(luò)供應(yīng)商選擇不多,沒有供應(yīng)商與供應(yīng)商橫向比較,企業(yè)難以通過市場競爭方式獲取新技術(shù)并最優(yōu)成本的產(chǎn)品。除了轉(zhuǎn)發(fā)節(jié)點成熟度問題外,因為目前并沒有商業(yè)化的控制平臺,如何實現(xiàn)控制節(jié)點軟件開發(fā)、如何維護升級也是大問題。OpenFlow產(chǎn)業(yè)的先行者還需要對企業(yè)用戶進行更多初期普及、培育、培訓(xùn)工作,幫助他們了解、測試和小規(guī)模測試軟件定義網(wǎng)絡(luò)新技術(shù)產(chǎn)品。  第三點,和大多數(shù)開源項目一樣,目前OpenFlow等項目無法像商業(yè)解決方案一樣有獨立的商業(yè)機構(gòu)為客戶提供專業(yè)從咨詢、、分析、設(shè)計、部署和運維管理服務(wù),保證客戶網(wǎng)絡(luò)與IT系統(tǒng)運行。用戶需要更多更高水平的有經(jīng)驗的網(wǎng)絡(luò)維護人員,非一站式解決方案將導(dǎo)致學(xué)習(xí)成本比較高昂。盡管很多大公司參與OpenFlow項目,但是開發(fā)驅(qū)動力和技術(shù)支持主要來自社區(qū)自由軟件編程人員。所以成熟的閉源軟件定義網(wǎng)絡(luò)將繼續(xù)在普通企業(yè)應(yīng)用尤其是私有云起主導(dǎo)作用。  第四點,軟件定義網(wǎng)絡(luò)天生的安全風(fēng)險問題。集中智能雖然可以給運營管理帶來全網(wǎng)視圖和優(yōu)化,以簡化管理提高效率的好處,但是也帶來而外的管理風(fēng)險,中央中樞如果損壞或被黑客侵入怎么辦?(基于x86軟件系統(tǒng)顯然比私有嵌入架構(gòu)容易受到黑客攻擊,尤其是開源社區(qū)提供豐富源代碼),結(jié)果會導(dǎo)致全網(wǎng)癱瘓或變成僵尸網(wǎng)絡(luò),變成又聾又啞或失去控制的龐大網(wǎng)絡(luò)怪物?網(wǎng)絡(luò)攻擊將從單點網(wǎng)絡(luò)節(jié)點直接上升為集中網(wǎng)絡(luò)控制器,后果將更加嚴重。

1    2   3