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