軟件定義網絡(Software?Defined?Network,SDN)是由美國斯坦福大學Clean-Slate課題研究組提出的一種新型網絡創(chuàng)新架構,是網絡虛擬化的一種實現方式。其核心技術OpenFlow通過將網絡設備的控制面與數據面分離開來,從而實現了網絡流量的靈活控制,使網絡作為管道變得更加智能,為核心網絡及應用的創(chuàng)新提供了良好的平臺。
SDN起源于2006年斯坦福大學的Clean Slate研究課題。2009年,Mckeown教授正式提出了SDN概念 [1] 。軟件定義網絡SDN(Software?Defined?Network)是由美國斯坦福大學CLean?Slate研究組提出的一種新型網絡創(chuàng)新架構,可通過軟件編程的形式定義和控制網絡,其控制平面和轉發(fā)平面分離及開放性可編程的特點,被認為是網絡領域的一場革命,為新型互聯網體系結構研究提供了新的實驗途徑,也極大地推動了下一代互聯網的發(fā)展。傳統網絡世界是水平標準和開放的,每個網元可以和周邊網元進行互聯。而在計算機的世界里,不僅水平是標準和開放的,同時垂直也是標準和開放的,從下到上有硬件、驅動、操作系統、編程平臺、應用軟件等等,編程者可以很容易地創(chuàng)造各種應用。從某個角度和計算機對比,在垂直方向上,網絡是“相對封閉”和“沒有框架”的,在垂直方向創(chuàng)造應用、部署業(yè)務是相對困難的。但SDN將在整個網絡(不僅僅是網元)的垂直方向變得開放、標準化、可編程,從而讓人們更容易、更有效地使用網絡資源。因此,SDN技術能夠有效降低設備負載,協助網絡運營商更好地控制基礎設施,降低整體運營成本,成為了最具前途的網絡技術之一。
回顧網絡創(chuàng)新的發(fā)展歷史,在20世紀90年代中期認為“推動網絡的創(chuàng)新,需要在一個簡單的硬件數據通路上編程”,即動態(tài)網絡。它的問題在于隔離性、性能、復雜度。20世紀90年代后期認為,“為了推動網絡創(chuàng)新,我們需要底層的數據通道是可編程的”,也即網絡處理器。它的問題在于加劇了數據通道底層的復雜度。事實上在網絡領域,我們一直以來沒有分清一個簡單通用的硬件底層與一個開放的上層編程環(huán)境之間的界限。之前的嘗試往往犯以下錯誤:1. 假設當前的IP路由底層是固定的,并試圖在其外部編程,包括路由協議;2. 自上而下地定義編程和控制模型。(但事實上Intel在選擇x86指令集的時候,并沒有定義Windows XP、Linux或者VMware)在經過多次的犯錯、失敗后,網絡創(chuàng)新終于取得了突破,新一代互聯網技術的代表——SDN終于誕生。SDN起源于2006年斯坦福大學的Clean State研究課題。2009年,Mckeown教授正式提出了SDN概念。2012年12月6日,北京,中國以“未來網絡的演進之路”為主題的2012中國SDN與開放網絡高峰會議在北京隆重召開,本次峰會獲得國際組織ONF(開放網絡基金會)的大力支持,Justin Joubine Dustzadeh博士代表ONF向大會致辭并發(fā)表主題演講,指出SDN這一顛覆性的技術將對未來網絡產生革命性的影響。2013年8月29日,北京,2013中國SDN與開放網絡高峰會議(第二屆)在京舉辦,眾多國內外運營商、廠商及業(yè)界專家學者將云集于此,共同探討SDN、開放網絡等相關主題。
利用分層的思想,SDN將數據與控制相分離。在控制層,包括具有邏輯中心化和可編程的控制器,可掌握全局網絡信息,方便運營商和科研人員管理配置網絡和部署新協議等。在數據層,包括啞的交換機(與傳統的二層交換機不同,專指用于轉發(fā)數據的設備),僅提供簡單的數據轉發(fā)功能,可以快速處理匹配的數據包,適應流量日益增長的需求。兩層之間采用開放的統一接口(如OpenFlow等)進行交互??刂破魍ㄟ^標準接口向交換機下發(fā)統一標準規(guī)則,交換機僅需按照這些規(guī)則執(zhí)行相應的動作即可 [1] 。軟件定義網絡的思想是通過控制與轉發(fā)分離,將網絡中交換設備的控制邏輯集中到一個計算設備上,為提升網絡管理配置能力帶來新的思路 [3] 。SDN的本質特點是控制平面和數據平面的分離以及開放可編程性。通過分離控制平面和數據平面以及開放的通信協議,SDN打破了傳統網絡設備的封閉性。此外,南北向和東西向的開放接口及可編程性,也使得網絡管理變得更加簡單、動態(tài)和靈活。