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