◆姚金玲 閻紅
操作系統、網絡體系與服務器技術
基于SDN新型網絡架構研究
◆姚金玲 閻紅
(天津職業大學電子信息工程學院 天津 300000)
為了提高健壯性,傳統網絡采用分布式控制的架構。在傳統網絡中,每臺網絡設備都包含單獨的控制平面和轉發平面。然而,隨著IT技術進入大數據和云計算的時代,網絡設備的數量越來越多,導致運行維護成本越來越高。新技術的發展要求網絡能夠自動適應業務的變化,完成智能化、自動化運維。這種情況下,軟件定義的網絡(SDN)架構應運而生。當前SDN架構已經在大型互聯網企業得到了廣泛應用。本文對SDN新型網絡的基本架構和部署方式進行了研究,并對各種部署方式的適用場景進行了闡述。
SDN;網絡架構;部署方案
傳統網絡采用的是分布式控制的架構。在傳統網絡架構中,每臺網絡設備包含單獨的控制平面和轉發平面,它們單獨進行各種網絡協議的計算,基于自身網絡協議計算生成單獨的路由表、ARP表和mac地址表,并基于這些信息單獨決定自身的轉發行為。這種方式有一定的優勢,即網絡中單臺設備的宕機不會引起影響其他網絡設備的正常運行。然而這種分布式架構存在兩個方面的缺點:一是由于網絡設備基于自身協議決定轉發行為,缺乏全局性的整體控制,使得錯誤的配置或者設備異常,有產生二層環路或路由環路的可能;二是這種分布式的架構需要網絡管理員對網絡中每臺設備單獨配置,尤其當進行系統升級或補丁維護時,需要逐臺設備進行,后期運行維護成本極高。
近年來,大數據和云計算技術的興起客觀上促進了網絡架構的發展。首先,在大數據和云計算時代,網絡的規模和復雜性成倍增加,在傳統網絡架構中對如此多的網絡設備進行運維將需要非常大的人力成本;其次,近幾年信息技術的更迭變快,尤其在互聯網行業平均每周都會有新的應用版本發布,傳統網絡架構需要較長的配置時間,無法滿足業務快速迭代更新的需求。這種情況下,軟件定義的網絡(SDN)架構應運而生。SDN架構實現了控制平面和轉發平面的分離,網絡設備的控制平面統一由SDN控制器擔當,網絡設備只實現轉發平面的功能。由于SDN架構可以實現網絡自動快速部署,其已經在大型互聯網企業得到了廣泛應用。本文對SDN新型網絡的基本架構和部署方式進行了研究,并對各種部署方式的適用場景進行了闡述。
SDN全稱為“Software Defined Network”,即軟件定義的網絡。SDN是2006年美國斯坦福大學研究組CLeanState提出的一種新型的通過軟件編程方式定義和控制網絡的架構,并在2009年由Mckeown教授正式提出。隨著2010年斯坦福大學OpenFlow1.0的發布,SDN技術迎來了爆發式的發展。傳統的思科、HP、IBM、VMware、Facebook、Huawei、阿里巴巴等國際化大公司紛紛提前布局或者應用SDN技術。根據Allied Market Research的預測,全球SDN市場在2022年將達到1329億美元的規模。
在服務器領域,在硬件、驅動程序、操作系統、開發平臺、應用軟件的垂直體系中,每一層都依賴下一層提供的服務,同時為上一層提供服務,各層之間有著標準的接口,標準的接口使得程序員可以方便地創造各種應用。與服務器不同的是,網絡設備在垂直領域一直以來都是封閉的,其硬件、驅動程序、操作系統一直以來都由網絡設備廠商自行研發并更新。SDN技術的出現使得人們可以通過編程的方式控制和使用網絡,可以實現網絡功能的個性化裁減,甚至可以自行開發網絡接口協議,使得網絡設備智能自動化部署成為可能。可以說,SDN是近10年網絡領域最具有創新性的技術之一,未來必將與“云計算”等新技術深度融合,并給信息技術領域帶來巨大深遠的影響。
SDN核心設計思想是將網絡硬件、驅動程序、操作系統通過標準化的方式解耦,程序員可以通過編程的方式靈活控制網絡轉發方式,使得邏輯網絡脫離物理網絡拓撲的限制,實現網絡硬件的資源池化。其中居于核心地位的就是SDN控制器,SDN控制器是網絡硬件的操作系統,利用OPENFLOW協議管理和控制居于數據轉發平面的網絡硬件設備(OPENFLOW設備),通過向網絡設備下發“流表”來指導數據轉發。OPENFLOW設備接收控制器下發的流表,通過流表中每個表項的匹配來執行相應的動作。
按照ONF(開放網絡基金會)的結構體系,SDN可以分為應用層、控制層和基礎設施層三個層次。在三層體系結構中,應用層包括各種應用程序,其通過SDN控制層提供的北向接口獲取網絡資源,并向下層發送各種指令,指導下層的數據轉發行為;控制層居于應用層和基礎設施層之間,是SDN網絡中的核心組件,擔任著控制網絡流量的重要任務,其通過北向接口接收應用層的指令為其提供網絡資源服務,并通過南向接口連接網絡設備,通過下發流表的方式來指導網絡設備的轉發服務;基礎設施層擔任數據平面的功能,具體由一些路由器、交換機、防火墻等網絡設備或者云計算軟件的虛擬網絡設備組成,其對上接收控制器發來的“流表”,通過流表的表項匹配相應的數據流,并按照動作表來決定“流”的處理方法。
在SDN基本架構中,北向接口、南向接口、東西向接口發揮著至關重要的作用。北向接口使得網絡業務開發者可以通過軟件編程形式調用底層的各種網絡資源,是推動網絡業務創新,實現智能化、自動化網絡的關鍵。然而遺憾的是,目前北向接口還未形成業界公認的標準,各種不同的控制器分別從用戶角度、運營角度和產品能力方面提供了不同的接口。南向接口是控制曾和基礎設施層之間信息交互的通信協議,其有三個主要的功能:一是實現數據平面與控制平面的信息交互,控制層通過南向接口收集網絡設備運行信息,并向網絡設備下發控制策略,指導其轉發行為;二是實現網絡設備的配置和管理,實現智能化、自動化運維;三是向控制層傳送路徑拓撲、鏈路帶寬、鏈路狀態等信息,以便控制層對轉發策略進行調整。與北向接口不同,南向接口標準化的程度較高,目前比較常見的北向接口協議有OpenFLow、OF-Config、NETCONF、OVSDB、XMPP、OpFlex等等。其中OpenFlow獲得的業界支持最為廣泛,一定程度上已經成為SDN領域的事實標準。東西向接口涉及控制平面的擴展性問題,負責多個設備控制平面之間的協調工作。東西向接口使得不同的SDN網絡之間,以及SDN網絡與傳統網絡之間可以互聯。東西向接口的逐漸成熟使得SDN真正成為一種具有“革命性”影響的網絡架構。
SDN網絡的核心是SDN控制器。控制器對上通過北向接口對接云平臺,為云平臺提供網絡資源服務;對下通過南向接口對接網絡設備和計算資源,通過下發流表的方式指導網絡設備的轉發行為。SDN控制器能夠實現對云數據中心網絡集中管控,智能化提供從業務到網絡的自動映射和自動化部署。市場上主流的SDN控制器可以通過北向接口實現與云平臺無縫對接,同時在沒有云平臺的情況下也可以獨立承擔業務呈現和網絡協同的工作。在SDN網絡部署方式上,客戶可以根據自身業務發展和現有的IT基礎設施布局選擇相應的部署模式。按照IT部門的組織結構、有無云平臺、有無計算資源平臺,SDN部署方式可分為云網一體化部署、網絡計算資源聯動和網絡虛擬化單獨部署三個場景。
云網一體化部署即SDN網絡與云計算平臺和計算資源平臺高度融合,SDN控制器對上對接云平臺,對下對接網絡設備和計算資源平臺,形成整個網絡和計算資源的按需、自動化部署。在云網一體化部署模式中,整個架構分為業務呈現/協同層、網絡控制層、網絡服務層和計算接入層。其中業務呈現/協同層通常為OpenStack、CloudStack、Eucalyptus、OpenNebula等云平臺,其為業務管理員、網絡管理員、云租戶提供管理界面實現業務部署和運行監控,并通過虛擬化、網絡、存儲、數據庫、身份認證等子模塊實現對應資源的控制與管理,通過不同組件間交互,實現各資源的協同、自動化部署;網絡控制層是整個云網一體化的核心,通常由SDN控制器擔當,通過北向接口接收云平臺的指令,按照云平臺的需求通過南向接口控制包括網絡在內的基礎設施或虛擬基礎設施,實現網絡資源的資源池化和配置的自動化部署;網絡服務層是云數據中心網絡的基礎設施,為業務數據提供高速轉發服務。在云數據中心,網絡服務層通常使用基于VXLAN的Spine-Leaf架構,Spine節點提供高速IP轉發功能,Leaf節點為各種服務器提供VXLAN網絡接入;計算接入層由各種虛擬化服務器、物理服務器組成,虛擬化服務器將一臺物理服務器虛擬化成多臺虛擬機和虛擬網絡設備,并通過虛擬網絡設備接入網絡服務層。
對于由于業務管理復雜、計算網絡融合度不高無法構建統一的云平臺,但又需要計算資源與網絡資源協同的企業,適用于網絡計算資源聯動的場景。與云網一體化部署模式類似,網絡計算資源聯動的模式同樣由業務呈現層、網絡控制層、網絡服務層和計算接入層組成。由于沒有統一的云平臺,業務呈現層由SDN控制擔當,并獨自向業務管理員、網絡管理員和云租戶提供管理界面,實現業務自動化聯動網絡和計算資源自動化部署,并實現業務查看、網絡監控、計算管理等運維功能。
網絡虛擬化單獨部署適用于無云平臺,僅通過SDN實現網絡資源的自動化部署的情況。一些企業的網絡和計算資源由不同的部門運維并且短期內很難整合,因此需要通過SDN實現網絡資源的資源池化管理。網絡虛擬化單獨部署方式由業務呈現層、網絡控制層和網絡服務層組成。其中業務呈現層由SDN控制器提供,并向網絡管理員提供管理運維界面,實現網絡設備的策略發放和自動化部署;網絡控制層也由SDN控制器擔當,負責協同虛擬與物理網絡,對各種網絡設備進行集中控制和流表下發;網絡服務層由物理網絡設備或者計算平臺上的虛擬網絡設備組成,為各種服務器提供接入服務,并通過接收控制層下發的流表進行數據轉發。
本文對SDN新型網絡的基本架構和部署方式進行了研究,并對各種部署方式的適用場景進行了闡述。總而言之,云網一體化部署方式效率高、資源利用率高、運維管理較為簡單,可以實現基于云租戶的網絡資源的動態自動化調整,在大型云服務商中較為常見;網絡計算資源聯動部署方式實現了網絡資源和計算資源協同,可以一定程度上實現網絡和計算資源自動化分配,適用于無法構建統一云平臺的場景;網絡虛擬化單獨部署僅僅實現網絡資源的資源池化和自動化部署,無法與業務和計算聯動,適用于非運化數據中心網絡的場景。
[1]黃培凱. 基于SDN的網絡架構在物聯網應用中的優勢[J]. 電子技術與軟件工程,2016.
[3]黃浩,冉茂亮,張恩龍.SDN架構與應用研究[J]. 科技風,2017
思政教育融入《計算機文化基礎》課程的研究(編號:JY20170232);產教融合視閾下教學與工作崗位對接研究——以技術測量課程為例(編號:VE3133)