SDN應用之資源管理平臺
SDN的設計初衷是希望從網絡資源用戶的角度出發改進網絡,通過對網絡的抽象推動更快速的業務創新,而SDN應用層是體現這一觀點的關鍵。與傳統的網絡應用相比,SDN應用將具有更強的智能性、動態控制性和可編程性,控制器可與SDN業務應用交互,根據業務的網絡需求及時動態調整網絡資源能力的交付。可以說,SDN的開放和可編程能力讓“網絡感知應用,應用控制網絡”成為現實。
從SDN架構來看,控制和轉發層解決了控制功能與設備解耦的問題,但以openflow為代表的SDN 轉發機制并沒有涉及傳統網絡更高層信息的識別和處理,因此如果要推動網絡的智能化,還必須在SDN的應用層對4-7層的網絡功能進行完善,進而驅動底層網絡資源的調配,使基于SDN的上層業務可自動、便捷地按需調用底層網絡能力。
應用層位于SDN架構最上層,它基于控制器提供的API接口可實現和網絡業務相關的管理、安全等應用,還能根據用戶需求定制其他網絡業務。目前SDN應用主要包括3種類型:
資源管理平臺:主要是面向云計算資源統一管理和調度的平臺,其目標是實現池化的計算、存儲、網絡等資源的靈活交付,按需滿足云計算的業務資源需求。
軟件定義的應用交付:基于SDN理念改造負債均衡、訪問控制、應用加速等應用交付技術,使之能替換或者擴展此前在傳統網絡中需要利用專用硬件實現的功能。
創新網絡業務:主要是指在傳統的靜態化網絡中難以實現,但在SDN環境下能夠獲得良好支持的新興業務,這類應用具有非常大的創新,將來成為SDN應用未來發展的主流。
這3類主流的SDN應用,資源管理平臺和軟件定義的應用交付為基礎,他們通過一般直接調用SDN控制器提供的北向接口API,他們可根據應用需求直接驅動控制器調用底層的SDN網絡能力。同時,這兩類SDN應用還會在擴展和封裝控制器北向接口的基礎上,為多樣化的創新網絡業務(例如云計算的虛擬主機資源分配、多租戶按需組網等服務)提供功能更全面,更易于使用的應用編程接口,供他們便捷調用網絡能力。當然創新網絡業務也可以直接調用控制器的北向接口API,以提高業務的執行效率。
雖然目前業界對SDN創新應用沒有很全面的解釋,但基于SDN網絡控制能力的云資源平臺,利用SDN技術改造傳統的網絡交付技術等應用已經出現相關案例。
資源管理平臺
資源管理平臺強調的是資源管理能力,即在整合SDN網絡控制能力的前提下,實現對計算、存儲、網絡等多類型資源的統一管控,以滿足云計算等業務場景中的資源按需交付需求。
資源管理平臺中整合SDN交付的網絡控制能力,是為了滿足云計算資源調配自動化的需求。云計算具有的按需提供服務的特點和服務在交付過程中
本質上講,在資源管理平臺中整合SDN交付的網絡控制能力,是為了滿足云計算資源調配自動化的需求,云計算具有的按需提供服務的特點對服務在交付過程中的動態性、擴展性提出了非常高的要求,特別是當云服務承載于具有復雜結構的基礎設施上時,相關的資源和服務配置都務必做到精確。而如果這些大量繁雜的工作全憑人工完成,無論是較低的工作效率,還是更容易出現的人為失誤,都將是不足以支持高效可靠的云計算服務交付的重要原因。
對于資源管理平臺而言,那些由標準步驟構成的工作流程通常是適合自動化實現的,例如網絡的配置與變更管理,虛擬機生命周期管理、中間件和數據庫管理、路由器和交換機的交付與管理,以及其他一些會在多個業務流程實例中反復出現的元素等。對于這類流程的自動化實現,資源管理者可以采用開發專用腳本的方式,將流程操作相關的手工輸入過程進行整理并進行自動重放;同時,他們也可以利用商業化的工具,實現SDN、DHCP、IP地址管理等網絡服務,以及VLAN劃分等管理過程的自動化,而SDN的提出和引入則能夠更好地改善資源管理平臺對網絡資源的控制,實現管理的自動化。
SDN架構將控制平面從分散部署的網絡設備中抽取出來,并以集中化的控制器的方式對全網進行控制。控制器能夠從全局上檢測SDN網絡的資源容量和網絡需求,網絡的配置信息、連接方式甚至分配社么樣的功能和容量都能夠被動態控制。資源管理平臺只需要通過調用控制器的北向接口,以軟件程序的方式自動實現網絡資源的調度和分配,進而將網絡資源與計算資源、存儲資源一起分解成克消耗的資源配置交付給云計算服務即可。
資源管理平臺的核心在于基于SDN控制器北向接口編排資源管理流程,使得它能夠及時有效地將上層云計算業務的資源需求反饋給控制器并對網絡設備和鏈路進行調配。考慮到云計算等典型業務通常需要計算、存儲、網絡等多種類型資源的協同交付,因此對SDN控制能力的調用需要被封裝為獨立組件,并與相應計算資源控制組件、存儲資源控制組件,以及其他一些功能組件共同工作。當前云計算業務普遍是以計算資源為核心的服務,隨著網絡資源管理靈活性和便利性的提升,日后勢必會有越來越多以網絡資源為核心的云計算服務被提出和應用。
在資源管理平臺的主要功能中,對SDN架構底層網絡設備的配置控制是一個重要方面,同時它還需要具備更完善的管理功能,例如性能管理、故障管理、安全管理等,他們都將是單獨的流程,需要在合適的地方調用SDN控制器的北向接口。一般而言,資源管理平臺的網絡管控組件通過遠程調用基于REST API的控制器接口,在架構上實現與控制器的松耦合,使系統部署更方便,使系統部署更方便,更具有擴展性。
最后,需要說明的是,面向云計算服務的資源管理平臺除了可以支持基于開放協議(例如OpenFlow)的SDN實現模型外,還可以根據業務的實際需求,為基于疊加網絡和基于專用接口的SDN實現方式提供相應的支持,例如VMware的云計算管理瓶體就支持了基于疊加網絡的SDN實現,其中包括有利用VXLAN協議隧道搭建疊加網絡的方案,同時在其產品中還整合了Nicira NVP網絡虛擬化平臺解決方案。這主要是因為在以云主機為代表的云計算服務中,多租戶共享資源等業務需要突破傳統VLAN的數量限制,并需要虛擬機跨數據中心遷移等支持,而基于疊加網絡的SDN實現能夠很好地滿足這些需求。