《企業(yè)網(wǎng)D1Net》2月18日訊
在虛擬化的世界里,SDN是不可或缺的技術(shù)之一,從SDN的概念誕生,到現(xiàn)在已經(jīng)有4年多的時間了但是關(guān)于SDN最基本的問題,“什么是SDN”的爭論和探討從來都沒停止過,就像一些哲學(xué)家經(jīng)常思考的“我是誰”,“我從哪里來”,“我要去哪里”一樣。
對SDN的認識可以分為四個階段,最后一個階段是在第三個階段基礎(chǔ)上的頓悟。
第一階段:SDN=OpenFlow?
跟很多其他人一樣,我最初接觸SDN是從OpenFlow開始的,那個時候甚至都沒去思考什么是SDN的問題,本能的就認為OpenFlow就是SDN,SDN就是Openflow,其實潛意識中,就是把SDN看作是一個具體的技術(shù)和協(xié)議,在將近有半年的時間里,都處于這種認識,因為那個時候還沒有接觸實際案例,也沒有廣泛去網(wǎng)上了解關(guān)于SDN的技術(shù)文章,這是最原始的第一階段。實際上,就算是現(xiàn)在很多人嘴里面說SDN不等于Openflow,但是潛意識里面還會自覺不自覺地將SDN往Openflow靠攏。為什么呢?因為Openflow是大多數(shù)人唯一看得到的具體化的SDN的實現(xiàn)形式(實際上當然還有別的實現(xiàn)形式,但是很多人并沒有看到或者看到了也沒意識到)。
第二階段:SDN的三個本質(zhì)屬性
后來隨著對各種SDN產(chǎn)品了解和網(wǎng)上諸多技術(shù)文章的閱讀,逐漸意識到,SDN只是一種架構(gòu),一種思想,具體的實現(xiàn)多種多樣,OpenFlow只是其中一種。我自己總結(jié)出SDN的三個本質(zhì)屬性,認為只要符合控制跟轉(zhuǎn)發(fā)分離、有開放的編程接口、集中式的控制就可以認為是SDN?;谶@樣一種理念,某個產(chǎn)品或者方案,哪怕沒有使用Openflow,只要它符合這三個原則,也可以認為是SDN。比如Juniper的Open Contrail,不支持Openflow,但是也是SDN。在很長一段時間內(nèi),我都堅定不移地認為這是最符合SDN思想的定義。
第三階段:狹義SDN、廣義SDN、超廣義SDN
其實SDN并沒有確切的定義,只要能實現(xiàn)網(wǎng)絡(luò)自動化,能夠滿足特定場景的需求,哪怕這種做法對別的用戶沒有意義,它也應(yīng)該算SDN。只是從通用的角度來看,這種SDN靈活性比不上控制與轉(zhuǎn)發(fā)分離的那種架構(gòu),但是不可否認的是,它能解決特定客戶特定場景的需求。認識到這一點之后,我將SDN定義歸為三類,第一類是狹義SDN(等同于Openflow),第二類是廣義SDN(控制與轉(zhuǎn)發(fā)分離),第三類是超廣義SDN(管理與控制分離)。而且我認為,第二類定義中的SDN,是最通用,最有價值的一種。
第四階段:返璞歸真,回到軟件定義網(wǎng)絡(luò)
思考的過程中,我突然有種醍醐灌頂?shù)母杏X,就像佛語經(jīng)常說的那樣:看山是山->看山不是山->看山還是山。無論是控制與轉(zhuǎn)發(fā)分離,還是管理與控制分離其實都不是SDN的本質(zhì)定義,SDN的本質(zhì)定義就是軟件定義網(wǎng)絡(luò),也就是說希望應(yīng)用軟件可以參與對網(wǎng)絡(luò)的控制管理,滿足上層業(yè)務(wù)需求,通過自動化業(yè)務(wù)部署簡化網(wǎng)絡(luò)運維,這是SDN的核心訴求,控制與轉(zhuǎn)發(fā)分離不是。但為了滿足這種核心訴求,不分離控制與轉(zhuǎn)發(fā),比較難以做到,至少是不靈活。換句話說,控制與轉(zhuǎn)發(fā)分離只是為了滿足SDN的核心訴求的一種手段,如果某些場景中有別的手段可以滿足,那也可以,比如管理與控制分離。
D1Net評論:
認識一件事物,最基本的要了解這個事物的概念和本質(zhì),然而,最基本的問題往往最復(fù)雜,SDN就是如此,關(guān)于SDN本質(zhì)問題的探究,是一項非常復(fù)雜的過程,以上關(guān)于SDN真諦的闡釋,可以讓我用戶更清楚的認識SDN的本質(zhì)。