如何規劃、評估SDN?
軟件定義網絡(SDN)無疑是目前最熱門的事物。然而,從術語的定義,到不同的架構,再到各家技術供應商所提供的產品等方方面面都存在著相當的混亂。
這些混亂導致部分企業的IT部門可能更愿意持觀望態度。這種做法雖然可以理解,但卻并不適當。盡管沒有哪位高人敢于聲稱他們知道未來幾年SDN和網絡虛擬化會如何演進,但大家也都清楚,這些新興技術無疑將會對網絡行業產生重大影響。
企業現在就需要制訂規劃,對SDN技術進行評估,并考慮如何將這些新的解決方案應用到網絡中。我們在這里列出了一些制訂規劃過程中需要重視的宏觀因素,以及某些微觀問題。但首先還是讓我們從SDN的定義開始。
開放網絡基金會(ONF)是一個與SDN的發展和標準化聯系最為緊密的團體。在ONF看來,SDN并不是一種技術而是一種架構。據ONF稱,SDN將網絡控制與轉發功能解耦,網絡控制可直接編程實現,而底層基礎設施對于應用和網絡服務來說則被抽象化。OpenFlow協議成為構建SDN解決方案的基本要素。
導致SDN出現混亂的部分原因是許多廠商根本不認可ONF對SDN的定義。舉例來說,盡管絕大多數廠商都在其SDN定義中包含了集中控制的概念,但它們對于應該集中多少控制權卻并未達成共識。此外,盡管有不少廠商已將OpenFlow協議視為其SDN解決方案的基本要素,但仍有部分廠商對OpenFlow采取了十分謹慎的態度,同時選擇采納XMPP等協議。
產生混亂的另一個原因是網絡虛擬化與SDN的關系。用戶可能會部署類似ONF定義的SDN,并使用這樣的SDN來實施網絡虛擬化。例如,OpenDayLight基金會前不久就接受了NEC貢獻的虛擬租戶網絡(VTN)。這一虛擬租戶網絡能夠讓SDN實施網絡虛擬化。
然而,不必部署SDN也可以實現網絡虛擬化。例如,Nuage Networks和VMware/Nicira就都是利用疊加方式來實施網絡虛擬化的。讓人更加感覺混亂的是,Nuage Networks將其解決方案稱之為SDN,而VMware則認為它的解決方案是網絡虛擬化,而非SDN。
IT組織顯然不能坐等圍繞SDN定義和網絡虛擬化關系的混亂狀況自然平息。在制訂SDN規劃時,IT組織需要確定一種可以很好理解的SDN定義,并讓這一定義在組織內能被接受。
SDN的實現目標
在尚未確認到底希望用SDN解決什么樣的問題或它能提供什么樣的功能之前,對SDN解決方案架構和所包含協議進行分析根本沒有意義。這是因為對架構和協議的分析只有在IT組織確定了需要完成的目標后才有意義。
一般來說,與SDN有關的主要實現目標包括:
支持虛擬化工作負載的動態遷移、復制和分配。
減輕配置和預配置各網元的管理負擔。
讓流量工程擁有端到端的網絡視圖
更容易實施服務質量(QoS)
讓應用能夠動態地申請網絡服務
舉例來說,如果企業的目標是支持虛擬化工作負載的動態遷移、復制和分配,那么Nuage Networks或VMware的疊加解決方案便可供選擇,同樣的,NEC的SDN解決方案也是可行的。不過疊加解決方案不易實現QoS,也不能讓應用動態地申請網絡服務。
SDN目前尚處于發展初期并在迅速演進中。因此為了創建和升級SDN規劃,IT組織需要持續地讓自己了解在SDN生態系統中正在發生什么。這其中包括要分析相關的SDN使用案例,以及能夠驗證SDN部署合理的技術。此外,還應評估各種產品發布、評估各種新的SDN技術或演進技術、測試SDN解決方案互操作性的plugfest測試結果,以及OpenDaylight等組織的工作進展情況。
這方面的培訓可以通過閱讀相關文章和白皮書,參加研討會和講習班的形式完成。IT組織還應當考慮下載一些現成的開源產品,熟悉這些解決方案以便能夠深度洞察它們的功能與弱點。
作為SDN規劃的一部分,企業需要確定將評估哪些廠商的SDN解決方案。評估的標準將在下面討論。在啟動評估SDN工具的流程時,企業需要確定是從單一廠商那里獲得完整的SDN解決方案,還是從多個廠商那里采購各個組件。
從單一廠商獲得完整的SDN解決方案雖然可以排除互操作性問題,但是仍然需要詢問廠商自己對其進行測試的細節,以及第三方對其測試的結果,如果有的話。
#p#
SDN評估
對SDN解決方案的評估流程是循環的。首先需要對眾多廠商進行一個粗略的評估,以查看哪些解決方案能夠符合你的獨特需求,要讓IT部門意識到各個廠商提供的SDN解決方案彼此之間有很大的區別,每一種解決方案都有自己的特色和附加價值。這一階段有助于排除掉部分廠商,只對一小部分供應商做更為詳細的分析。而詳細分析的結果可作為下一步進行概念驗證(POC)的依據。
在評估SDN解決方案時,企業需要考慮以下因素:
■ 解決方案的架構
這其中包括審查由廠商與合作伙伴提供的解決方案組件;SDN控制器集中了多少控制權;解決方案使用了哪些協議;解決方案如何支持高可用性;控制器的北向API所提供的抽象水平等。
此外,還要根據已經確認的實現目標來評估SDN解決方案的相應能力。例如,如果目標是減輕配置和預配置網元的管理負擔,那么就需要確定每個解決方案是如何實現這一目標的。
■ SDN控制器
還需要評估各種SDN控制器架構。例如,控制器是否采用了能夠隨時增加新功能的模塊化架構?IT組織還需要搞清楚控制器架構是如何實現可擴展性、高可靠性和出色性能的。
■ SDN交換機
IT組織需要了解哪些廠商的交換機支持SDN,以及它們是如何實現這種支持的。例如,廠商的交換機是否支持OpenFlow協議?如果支持,那么支持的是哪個版本的協議,支持哪些可選功能?交換機是純SDN交換機還是混合交換機,如果是混合交換機,那么SDN部分是如何與交換機的傳統部分進行交互的?
■ 管理
SDN管理有兩個方面需要加以評估。一個方面是廠商的解決方案能否緩解SDN所帶來的管理上的挑戰。這包括要監控SDN控制器的性能;是否提供了虛擬網絡的端到端可視化;配置SDN交換機,監控交換機之間的物理與邏輯網絡。第二個方面是將SDN管理集成到范圍更大的管理解決方案之中。兩個目標分別是最小化對新的SDN專用管理工具的需求,將現有FCAP(ISO的標準管理框架)流程擴展至整個網絡的SDN部分。
■ 安全
需要進行的安全評估也有兩個方面。一個方面是解決方案所提供的哪些功能可以確保SDN的安全。這一點非常關鍵,如果黑客獲得了訪問SDN控制器的權力,他們就可以訪問所有的網元。安全性評估的另一個方面是解決方案提高IT基礎設施整體安全的能力。例如,Radware近期向OpenDaylight的SDN控制器貢獻了一套工具集。該工具集可用于探測和緩解分布式拒絕服務(DoS)攻擊。
■ 網絡功能
有兩個辦法可以幫助IT組織獲得基于SDN控制器的網絡功能。一個辦法是從廠商那里獲得網絡功能(如Radware的分布式DoS應用和NEC的虛擬租戶網絡功能)。由于大多數IT組織是從廠商那里獲得網絡功能的,因此對廠商提供的網絡功能進行評估是SDN解決方案評估流程中的關鍵一環。第二個辦法是讓IT部門開發部分或是全部所需的網絡功能。這個辦法的主要優勢是IT部門可以定制功能,以滿足組織的特定需求。不利之處是IT部門必須擁有開發和維護這些功能的技術基礎。
■ 測試與認證
如前文所述,即便SDN解決方案的所有組件都來自同一家廠商,組織仍需要了解之前已做過的確保平穩運行的測試。如果SDN組件來自多家廠商,那就需要了解各個解決方案是否已經過了認證,以及在后續遇到問題時是否有一個單獨的聯系點。IT部門可能需要自己進行測試,或是委托第三方代為測試。舉例說,如果企業開發了一個或多個網絡功能,就需要在特定的SDN控制器上測試這些功能;在部署新版本控制器之前也需要重新測試。如果面對的是這樣的環境,那么作為SDN評估流程的一部分,企業就需要評估測試工具能否讓企業自行測試,以及評估外部評測實驗室提供的測試結果。
■ 與現有環境進行整合
對SDN解決方案的評估可能是在獨立于現有環境外進行的,如果要把SDN部署到生產網絡中,評估流程還需要測試SDN在多大程度上可適應現有基礎設施。例如,現有的哪些機制能夠讓流量在SDN和傳統網絡之間流動?是否能夠對SDN進行擴展,讓它們能夠在數據中心和分支辦公室中同時運行?如何橫跨多個數據中心?還應當檢查如何將SDN管理和安全組件集成到現有的管理與安全框架內。
■ 專業支持服務
實際上,所有的IT組織在使用SDN方面都缺乏經驗,因此一些IT組織選擇了由一家或是多家第三方提供的專業服務??梢允褂眠@些服務來輔助評估SDN解決方案,創建和執行POC(概念驗證),或是創建并維護一個或多個網絡功能。還可以使用這些服務執行許多功能,例如將SDN集成到現有基礎設施內,將SDN管理和安全組件集成到現有管理與安全框架內。
#p#
管理層認同
在規劃SDN的不同階段,需要不同層級的管理層認同。沒必要要求管理層必須參加各種研討會、講習班或是去下載開源解決方案,而是要他們多花時間去理解這些解決方案的功能,以及存在的限制。
要想獲得不同級別管理層的認同,就需要與廠商詳細討論SDN,實施POC或是部署SDN。如果預先知道管理層的顧慮在哪兒,并在SDN規劃周期內解決這些顧慮,就更有可能獲得管理層的認同。例如,一些組織在安全顧慮沒有徹底消除的情況下一般不會愿意部署任何新技術。
IT組織最終需要總結出某種形式的業務案例,以證明部署SDN的明智性。這一業務案例可以包含許多因素,如與管理任務自動化相關的成本節約以及SDN所帶來的靈活性。業務案例或許還能讓我們找到SDN支持其他核心IT創新的方式,諸如向云計算遷移等。
在未來幾年,SDN毫無疑問將對企業網絡和網絡專業人員的作用產生重大影響。正因如此,企業需要制訂一個計劃,以便全面評估SDN及其可能的部署前景。
在規劃SDN時,需要關注行業中的新進展,如成立了哪些新公司,推出了哪些新產品、新標準,哪些SDN提供商被并購等。同時還要排除行業中的一些噪音,如對SDN準確定義的爭論等。
既然SDN目前僅處于起步階段且正在迅速發展中,因此SDN規劃就應當隨時調整。我們應當首先確定SDN可幫助實現哪些目標,然后在整個規劃過程中使用這一SDN定義。
不要忘記規劃流程中必須要包括持續不斷的教育。我們目前仍處于軟件定義網絡的初級階段,所做的規劃必須要切實可行。