本文共分為四個部分:第一部分SDN的概述;第二部分:Openflow技術(shù)及其相關(guān)組件和研究的進展;第三部分:SDN面臨的問題和解決思路;第四部分:SDN的應用部署。
第一部分:SDN概述:SDN,軟件定義網(wǎng)絡,分離了網(wǎng)絡的控制面和數(shù)據(jù)面,為研發(fā)網(wǎng)絡新應用和未來互聯(lián)網(wǎng)技術(shù)提供了一種新的解決方案。
為什么會出現(xiàn)SDN?1、傳統(tǒng)網(wǎng)絡的弊端
互聯(lián)網(wǎng)的接入方式和網(wǎng)絡角色定位發(fā)生了根本性的變化,移動接入、物聯(lián)網(wǎng)成為互聯(lián)網(wǎng)的主要接入方式,云計算成為主要的互聯(lián)網(wǎng)計算模式,多媒體分享應用和社交網(wǎng)絡成為互聯(lián)網(wǎng)的新型應用,網(wǎng)路已經(jīng)成為信息采集、傳輸、存儲、處理于一體的信息化平臺。但是這卻使以IP地址為核心的,點對點通信的TCP/IP體系結(jié)構(gòu)在可擴展性、動態(tài)性、安全可控性面臨著巨大的挑戰(zhàn)。
可擴展性:流量激增和路由表急劇膨脹已經(jīng)影響到了傳統(tǒng)網(wǎng)絡的可擴展性。根源在于以IP地址為核心的點對點的通信模式。NDN/CDN
動態(tài)性:便攜式移動終端的日益普及、物聯(lián)網(wǎng)的出現(xiàn)使得低智能終端數(shù)量爆發(fā)性的增長。以移動為中心的網(wǎng)絡結(jié)構(gòu)(安全機制+全局名字解析)
安全可控性:通過擴展網(wǎng)絡協(xié)議(IPsec、SSL)、增加安全設(shè)備(防火墻)。
PS: IP地址為核心的點對點的體系結(jié)構(gòu)中,服務資源與物理網(wǎng)絡缺乏互感互知,比如P2P遇到的問題。
2、路由器的缺陷
網(wǎng)絡的核心路由器,承載的功能不斷擴展,如分組過濾、區(qū)分服務、多播、服務質(zhì)量、流量工程等,路由器最初定義的“啞的”、“簡單的”數(shù)據(jù)轉(zhuǎn)發(fā)單元已經(jīng)變得臃腫不堪?,F(xiàn)在的路由器只能通過命令行接口等方式對外開放少量功能,研究人員難以在真實的網(wǎng)絡中試驗和部署新型網(wǎng)絡體系結(jié)構(gòu)和網(wǎng)絡技術(shù)。
第二部分:penflow技術(shù)及其相關(guān)組件和研究的進展Openflow,狹義的SDN,指的是SDN控制平面和數(shù)據(jù)平面之間多種通信協(xié)議之一,是SDN的一個具體實現(xiàn)。SDN最初作為SDN的原型提出時,主要是由Openflow交換機、控制器兩部分組成。最初提出SDN是試圖通過一個集中式的控制器,讓網(wǎng)絡管理員可以方便的定義基于網(wǎng)絡流的安全控制策略,并將這些策略應用到各種網(wǎng)絡設(shè)備中去,從而實現(xiàn)對整個網(wǎng)絡通信的安全控制。
Openflow交換機有三部分組成:流表、安全通道、openflow協(xié)議。
1、流表:為了提升流量的查詢效率,目前的流表查詢通過多級流表和流水線模式來獲得對應的操作,流表項主要包括:匹配域、計數(shù)器、操作這三部分組成。匹配域的結(jié)構(gòu)包含了很多匹配項,涵蓋了鏈路層、網(wǎng)絡層、和傳輸層的大部分標識。
2、Openflow協(xié)議,隨著Openflow規(guī)約的不斷發(fā)展,VLAN、MPLS、ipv6等協(xié)議也逐漸擴展到Openflow標準當中。
3、Openflow采取流的匹配和轉(zhuǎn)發(fā)模式,因此在Openflow中不再區(qū)分路由器和交換機,二是統(tǒng)稱為Openflow交換機。
安全通道是連接Openflow交換機與控制器的接口,控制器通過這個接口,按照Openflow協(xié)議的規(guī)定格式來配置和管理openflow交換機。
目前基于軟件實現(xiàn)的Openflow的交換機有兩個版本,都部署在Linux系統(tǒng)中:基于用戶空間的軟件Openflow交換機操作簡單,便于修改,但是性能較差;基于內(nèi)核空間的軟件,Openflow交換機速度較快,提供虛擬化服務,但實際修改和操作復雜。
控制器:
1、在基于NOX的Openflow網(wǎng)絡中,NOX是控制中心,運行在NOX之上的應用程序通過調(diào)用網(wǎng)絡視圖中的全局數(shù)據(jù),進而操作Openflow交換機來對整個網(wǎng)絡進行管理和控制。NOX實現(xiàn)了網(wǎng)絡的基本管控功能,為Openflow網(wǎng)絡提供了API的基礎(chǔ)控制平臺,但是未能提供充分的可靠性和靈活性來滿足可擴展的需求。
2、為使控制器能夠直接部署在真實的網(wǎng)絡之中,解決多控制器對openflow交換機的控制共享問題,同時滿足網(wǎng)絡虛擬化的現(xiàn)實需求,flowvisor實現(xiàn)了在交換機和控制器之間的網(wǎng)絡虛擬層,踏實的硬件轉(zhuǎn)發(fā)平面能被多個邏輯網(wǎng)絡切片共享,每個網(wǎng)絡切片擁有不同的轉(zhuǎn)發(fā)策略。在這種模式下多個控制器能夠同時管控一臺交換機,多個試驗網(wǎng)絡能夠同時運行在一個真實的網(wǎng)絡中。
SDN的功能:
應用層根據(jù)網(wǎng)絡不通的應用需求,調(diào)用控制層的北向接口,實現(xiàn)不同功能的應用程序。通過這種軟件模式,網(wǎng)絡管理者能夠通過動態(tài)的SDN應用程序來配置、管理、優(yōu)化底層的網(wǎng)絡資源,從而實現(xiàn)靈活可控的網(wǎng)絡。這也是SDN開放性和可編程性最重要的體現(xiàn)。
第三部分:SDN面臨的問題和解決思路1、SDN轉(zhuǎn)發(fā)平面的設(shè)計問題,隨著Openflow的規(guī)約不斷發(fā)布,交換機的流表也從最初的單表結(jié)構(gòu)變?yōu)槎啾斫Y(jié)構(gòu),流表項匹配字段也支持ipv6、MPLS等,這就意味著Openflow交換機的結(jié)構(gòu)更加復雜。
2、控制平面的可擴展性:隨著網(wǎng)絡業(yè)務量的增加,需要多控制器的解決方案,而控制單元的數(shù)量和他們之間的網(wǎng)絡狀態(tài)的協(xié)同和交互如何實現(xiàn),還需要深入研究。
3、SDN控制邏輯的一致性。雖然控制平面能夠?qū)⒖刂七壿嫾胁渴鸬秸麄€網(wǎng)絡,但數(shù)據(jù)平面轉(zhuǎn)發(fā)設(shè)備仍然是一個分布式的系統(tǒng),可能存在的延遲,難以保證一致性,有可能造成斷路,丟包的問題。
4、運算壓力大、軟件復雜度高、系統(tǒng)穩(wěn)定性存在隱患:為了實現(xiàn)網(wǎng)絡的可編程性,應用程序會被賦予大量對環(huán)境的控制權(quán),而這容易導致系統(tǒng)崩潰。
5、控制器接口尚未標準化
6、網(wǎng)絡集中控制固有的安全隱患,SDN安全問題的獨特性在于SDN管理的集中性和開放性??刂泼姘踩ūO(jiān)聽)、應用層安全(蠕蟲,惡意軟件),通過授權(quán)、訪問控制等來解決控制層面的問題,通過控制器提供的編程接口進行鑒定應用層的應用。
7、市場利益
第四部分:SDN的應用部署:面向校園網(wǎng)的應用:實現(xiàn)網(wǎng)絡虛擬劃分和移動管理。
面向數(shù)據(jù)中心的部署
面向網(wǎng)絡管理的應用
面向安全控制的應用