SDN控制器:透過現(xiàn)象看本質(zhì)

責任編輯:editor004

2013-11-28 16:34:19

摘自:中關村在線

軟件定義網(wǎng)絡潛在用戶所面臨的一個關鍵挑戰(zhàn)是判斷特定SDN控制器的特定價值,畢竟控制器作為網(wǎng)絡應用和網(wǎng)絡基礎設施之間的橋梁發(fā)揮著關鍵性作用

軟件定義網(wǎng)絡潛在用戶所面臨的一個關鍵挑戰(zhàn)是判斷特定SDN控制器的特定價值,畢竟控制器作為網(wǎng)絡應用和網(wǎng)絡基礎設施之間的橋梁發(fā)揮著關鍵性作用。但目前還沒有一個可以規(guī)范SDN的模型,也沒有一個SDN控制器必須要遵守的任何標準。

雖然Linux基金會旗下的多廠商OpenDaylight項目的出現(xiàn)為統(tǒng)一的模塊化控制器架構所需的SDN堆棧帶來了希望,但是對于控制器需要提供什么樣的特定服務,廠商當中仍然存在著許多不同的意見。用戶的壓力在于確定SDN控制器具有什么樣的能力,以及這些功能是否能夠幫助實現(xiàn)期望的目標。即便如此,消費者也難以購買到一個獨立的SDN控制器。實際情況是廠商常常將控制器捆綁在整個SDN套裝之中,這個套裝通常包括:應用軟件、控制器和網(wǎng)絡硬件。

即便你考慮從廠商那里購買一個整體解決方案,控制器的功能也可能出現(xiàn)麻煩。畢竟,軟件定義網(wǎng)絡正在迅速發(fā)展,而最初的整體解決方案會顯得陳舊。因此我們有眾多的因素需要考慮,細述如下。

原始性能

談到原始性能,我們首先需要明確SDN控制器的作用。通常,SDN控制器的功能是將網(wǎng)絡環(huán)境中的控制與數(shù)據(jù)平面互相分離。換句話說,控制器將告訴網(wǎng)絡設備如何轉發(fā)流量(控制平面),但是它們并不真正轉發(fā)這些流量(數(shù)據(jù)平面)。這種情況在OpenFlow(OF)網(wǎng)絡中非常常見。在OpenFlow網(wǎng)絡中,SDN控制器主要用于對網(wǎng)絡設備中的OF表單進行編程。

在OpenFlow網(wǎng)絡中,OF交換機接收數(shù)據(jù)包并根據(jù)流表處理這些數(shù)據(jù)包。但是如果流表中的數(shù)據(jù)包沒有匹配的條目,將會怎樣?在這種情況下,OF交換機將把數(shù)據(jù)包發(fā)給OF控制器,這實際上相當于在問“我應該怎么處理這些數(shù)據(jù)包?”。OF控制器來決定當數(shù)據(jù)包與流匹配時交換機應當做些什么,并對交換機進行編程。這一程序被稱為“流安裝”。

由于擴展方面的需求,SDN控制器每秒的流安裝量受到了高度重視。通常,流安裝在SDN中會存在一個性能瓶頸。但是不要想當然的認為,在大量交換機和你希望控制的龐大微流數(shù)量共同作用下,它們很快就會超過控制器流安裝能力。必須牢記并不是每個流都需要與控制器聯(lián)系。只有那些還沒有被識別或編程的流才需要這一步驟,而這通常只是例外情況。

對于廠商來說,他們非常清楚OpenFlow網(wǎng)絡的流安裝性能所帶來的挑戰(zhàn)。廠商們已經(jīng)制訂了許多緩解控制器瓶頸的策略。因此不要因為原始性能數(shù)據(jù)不佳就簡單地將某一控制器選擇排除在外。廠商可能有辦法優(yōu)化你的網(wǎng)絡環(huán)境,將流安裝的需求量降到最低限度。在這些緩解辦法當中,有一種名為流通配符技術。該技術允許通過一個單一的流條目處理眾多微流。

拓撲

在評估SDN控制器時另一個要考慮因素是你的網(wǎng)絡拓撲。讓我們先考慮一下LAN和WAN的區(qū)別。你想用軟件定義網(wǎng)絡中的哪一部分?盡管LAN是典型的SDN使用案例,但是如果你希望橫跨WAN部署網(wǎng)絡虛擬化,那會是什么情況?控制器在這一模式中將如何工作?這在很大程度上是一個有關功能性的問題。當你的SDN環(huán)境對于單個控制器來說顯得過大因而無法有效管理時,供應商會提供什么樣的選項幫助你向廣域網(wǎng)擴展?

采用中央控制器方式的SDN解決方案可以進行橫向擴展。換句話說,你可以增加控制器以應對額外的交換機。不過這里存在一個非常棘手的問題,這些交換機彼此之間將如何進行通信。

對此,廠商給出了許多種答案。盡管業(yè)內(nèi)很早就展開了對控制器彼此對話方式進行標準化的討論,但是在大多數(shù)情況下,目前的解決方案還只是局限于特定的控制器。一個常見的技術組合是通過BGP協(xié)議實現(xiàn)控制器之間的信息交換。在這種方式中,控制器知道如何查找網(wǎng)絡中不同的軟件定義部分,并在兩個區(qū)域之間轉發(fā)流量。如果這一功能對你來說非常重要,那么你需要向備選的供應商詢問這個關鍵性問題。

雖然許多SDN解決方案能夠支持一個中央控制器,但是中央化控制器的概念仍然存在一個潛在的問題。首先是控制平面的流量(如從控制器到網(wǎng)絡交換機的指令)如何被傳輸。帶內(nèi)通信意味著控制平面的流量將使用所有正常網(wǎng)絡流量所使用的路徑,帶外(OOB)通信意味著傳輸控制平面的流量需要一個獨立的物理網(wǎng)絡。

帶內(nèi)通信受到了一些希望通過“可達性”調(diào)整網(wǎng)絡拓撲的廠商們的支持。這一方案的理念是,如果網(wǎng)絡設備不再能夠被控制器控制,那么拓撲將會發(fā)生調(diào)整,控制器能夠發(fā)現(xiàn)這些變化并做出相應調(diào)整。帶外通信也受到了一些廠商的支持。這部分廠商主要是希望確??刂破髦g和交換機之間的低延遲,提升安全性,消除控制平面流量丟失所造成的數(shù)據(jù)流量風險。

第二個關于中央控制器的顧慮是這些控制器將被實現(xiàn)中央化控制的方式。智能化中央化控制并不一定意味只有一個物理設備或是一組冗余設備來擔當SDN控制器。許多廠商將控制平面功能分散至能夠相互通信并共享數(shù)據(jù)庫的分布式虛擬機當中。這些組件可能會向控制器軟件的核心部分反饋信息,但是也有可能是向虛擬機反饋信息。物理控制器或控制器集群,以及履行控制平臺職責的分布式虛擬機這幾種模式在目前的SDN產(chǎn)品當中都存在。

能力

值得注意的是,并非所有SDN控制器都具有相同的能力。這里的能力并不是指控制器流安裝等原始性能,而是指控制器對網(wǎng)絡的實際操控能力。大部分網(wǎng)絡運營者并不僅僅尋找一款OpenFlow控制器,而是希望它讓盡可能多的網(wǎng)絡元素配置實現(xiàn)自動化。此時,你需要問廠商以下一些問題,包括:

這一控制器將與哪些設備進行對話?你需要知道,這一控制器是否除了與網(wǎng)絡交換機對話外,還可以與防火墻、負載均衡設備、虛擬交換機、云編排工具以及其他設備對話。

該供應商擁有哪些合作關系?許多SDN控制器廠商都與主要的網(wǎng)絡廠商建立了戰(zhàn)略同盟關系。這些合作使得SDN控制器與合作廠商的工具之間更容易通信。不過,并非所有的SDN廠商都有著相同的合作關系。因此在評估SDN控制器時,搞清楚該廠商擁有哪些合作關系,以及這些合作關系促成了哪些合作成果非常關鍵。

現(xiàn)有應用都有哪些?一些SDN控制器更像是一個空白的畫板—能夠展示任何東西,但是首先需要有人在上面作畫才行。另有一部分SDN控制器已經(jīng)建立了其應用生態(tài)環(huán)境—有人已經(jīng)在上面為你畫了非常漂亮的畫。搞清楚其現(xiàn)在都有些什么應用,對于你決定讓SDN控制器在網(wǎng)絡中發(fā)揮多大作用將大有幫助。

控制器的API是否已經(jīng)被明確?API是從控制器中獲取和向控制器發(fā)送信息的機制,網(wǎng)絡應用程序會通過北向API告訴控制器它們需要什么。API是自動化和編配的關鍵。例如,你的機構能夠以多高的效率利用控制器API?對于正在尋求整體解決方案的用戶,他們可能并不關心這個。但是對于那些希望編寫自己的網(wǎng)絡應用程序的用戶來說,這一點非常關鍵。

開放vs.廠商鎖定

傳統(tǒng)的網(wǎng)絡協(xié)議在廠商之間具有很大程度的互操作性。例如,一家廠商的使用BGP協(xié)議的設備也可以被其他廠商使用BGP協(xié)議的設備所理解。雖然廠商可能會在協(xié)議中增加一些私有特性,但是在基本上通用網(wǎng)絡設備廠商都會遵守一條底線。

在SDN方面,情況卻并非如此。目前還沒有創(chuàng)建SDN控制器的統(tǒng)一方式,也沒有一套關于SDN必須具備哪些功能的要求。接觸的控制器和架構越多,你就越會發(fā)現(xiàn)它們之間存在著相當大的差異。這些都是意料之中的事情。由于SDN還是一項新興技術,因此廠商都在發(fā)布能夠代表其SDN觀念的控制器,以盡可能地在市場中突出自己,從而力爭成為市場領導者。

對于用戶來說,由于缺乏標準,導致他們在控制器采購中遇到了許多尷尬問題。首先是這個控制器是不是將你套牢在一個特定解決方案當中?這是一個需要回答的重要問題。盡管許多SDN解決方案都具有強大的能力,但是它們可能只針對特定類型的用戶,幫助他們解決某一單一問題。雖然目前這一解決方案可能會為你帶來優(yōu)勢,但是未來它們可能會成為你的包袱。例如,若干年后你可能會更換你的負載平衡設備供應商以減少運營支出,但是SDN控制器及其相關應用可能無法與其他廠商開發(fā)的負載平衡設備協(xié)同工作。廠商鎖定隱藏的風險值得我們在決策時謹慎考慮。

用戶能夠轉而使用其他的控制器嗎?如果能,過渡應當如何進行?表面看來,這與其他的顧慮沒有太多的不同。例如,從路由器供應商A更換至供應商B需要對產(chǎn)品的功能和操作性進行考慮—B供應商的產(chǎn)品能否滿足你的要求?你的網(wǎng)絡團隊能否管理B供應商的路由器?但在SDN控制器方面,更換供應商的挑戰(zhàn)更為復雜。這需要回到控制器究竟在為你做什么這一概念上來看。標準遵從性可以極大地降低更換路由器廠商所存在的風險,但是在SDN領域中,還沒有類似的標準出臺。你的網(wǎng)絡應用是否能夠與不同的控制器協(xié)同工作?如果不進行適當修改,那么為某一控制器編寫的應用很可能無法在其他控制器上工作?;蛟SOpenDaylight組織能夠改變這一現(xiàn)狀,但是目前網(wǎng)絡用戶必須要花時間了解SDN控制器,以搞清楚是否自己在某些地方被廠商鎖定了。

總之,購買SDN控制器并不是一件無關緊要的小事。此類投資不僅僅需要了解控制器的能力和性能,還需要搞清楚控制器是如何解決特定網(wǎng)絡問題的。在添加SDN控制器之前你必須要熟悉自己的網(wǎng)絡功能?;ㄐ┕Ψ蜻M行研究對防止大的投資失誤很有幫助。

鏈接已復制,快去分享吧

企業(yè)網(wǎng)版權所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號