SDN到底是什麼

2021-06-20 11:56:24 字數 2119 閱讀 1283

sdn到底是什麼?雖然這個概念已經被炒到了,但還沒有人對其給出乙個明確的概念。盛科網路總監張衛峰撰寫了自己關注sdn以來,對其認識的四個階段,最後乙個階段又回到了sdn字面的意思軟體定義網路,每個階段作者的新觀點,也會給我們帶來一些啟發。以下為原文:

我對sdn的認識可以分為四個階段,最後乙個階段是在第三個階段基礎上的頓悟。

第一階段:sdn=openflow?

跟很多其他人一樣,我最初接觸sdn是從openflow開始的,那個時候甚至都沒去思考什麼是sdn的問題,本能的就認為openflow就是sdn,sdn就是openflow,其實潛意識中,就是把sdn看作是乙個具體的技術和協議,在將近有半年的時間裡,都處於這種認識,因為那個時候還沒有接觸實際案例,也沒有廣泛去網上了解關於sdn的技術文章,這是最原始的第一階段。實際上,就算是現在很多人嘴裡面說sdn不等於openflow,但是潛意識裡面還會自覺不自覺地將sdn往openflow靠攏。為什麼呢?因為openflow是大多數人唯一看得到的具體化的sdn的實現形式(實際上當然還有別的實現形式,但是很多人並沒有看到或者看到了也沒意識到)。

第二階段:sdn的三個本質屬性

後來隨著對各種sdn產品了解和網上諸多技術文章的閱讀,逐漸意識到,sdn只是一種架構,一種思想,具體的實現多種多樣,openflow只是其中一種。我自己總結出sdn的三個本質屬性,認為只要符合控制跟**分離、有開放的程式設計介面、集中式的控制就可以認為是sdn。基於這樣一種理念,某個產品或者方案,哪怕沒有使用openflow,只要它符合這三個原則,也可以認為是sdn。比如juniper的open contrail,不支援openflow,但是也是sdn。在很長一段時間內,我都堅定不移地認為這是最符合sdn思想的定義。包括我開始寫《深度解析sdn》那本書的期間,也是這樣認為。

第三階段:狹義sdn、廣義sdn、超廣義sdn

後來突然看到阿里巴巴推出了自己的sdn方案,在2013 gitc會議期間,我詳細聽了阿里巴巴專家的介紹,發現他們這種sdn跟我理解中的控制跟**分離並不相同,他們自己也說他們的sdn不是大家一般所理解中的sdn,他們的sdn是通過軟體控制指令碼,讓這些指令碼向遠端的交換機傳送命令(不清楚是netconf還是直接的命令列)來控制交換機,交換機上仍然執行了傳統的二三層協議,控制跟**並沒有分離,分離的是管理和控制。剛看到這個方案的時候,我馬上就問自己,這算不算sdn?我反覆思考了這個問題,他們為什麼要這麼做,而不是使用更徹底的控制跟**分離?我個人理解是他們網路中已經有了大量傳統的交換機,他們不可能把這些交換機都替換掉,但是又想通過軟體自動化來代替手動操作,所以就採取了這樣一種折衷的做法。這種做法有沒有價值?肯定是有,否則他們不會這麼幹。那算不算sdn?我一時陷入了迷茫。幾經思考之後,我認為,其實sdn並沒有確切的定義,只要能實現網路自動化,能夠滿足特定場景的需求,哪怕這種做法對別的使用者沒有意義,它也應該算sdn。只是從通用的角度來看,這種sdn靈活性比不上控制與**分離的那種架構,但是不可否認的是,它能解決特定客戶特定場景的需求。認識到這一點之後,我在對外宣講的ppt中,將sdn定義歸為三類,第一類是狹義sdn(等同於openflow),第二類是廣義sdn(控制與**分離),第三類是超廣義sdn(管理與控制分離)。而且我認為,第二類定義中的sdn,是最通用,最有價值的一種。

第四階段:返璞歸真,回到軟體定義網路

在跟中國電信研究院的專家們一次交流中,我講了我對sdn的看法之後,研究院的王老師向我提出了乙個問題:從sdn的字面意思來看,根本看不出控制與**分離的意思,你怎麼看這個問題?雖然我當時噼里啪啦講了一堆,回答了這個問題。但是回來之後,我又深入的思考了一下王老師的這個問題,很慚愧,這麼乙個明顯的問題,我之前居然都沒去思考過。思考的過程中,我突然有種醍醐灌頂的感覺,就像佛語經常說的那樣:看山是山->看山不是山->看山還是山。無論是控制與**分離,還是管理與控制分離其實都不是sdn的本質定義,sdn的本質定義就是軟體定義網路,也就是說希望應用軟體可以參與對網路的控制管理,滿足上層業務需求,通過自動化業務部署簡化網路運維,這是sdn的核心訴求,控制與**分離不是。但為了滿足這種核心訴求,不分離控制與**,比較難以做到,至少是不靈活。換句話說,控制與**分離只是為了滿足sdn的核心訴求的一種手段,如果某些場景中有別的手段可以滿足,那也可以,比如管理與控制分離。

第六屆中國雲計算大會(china cloud computing conference)將於2023年05月在國家會議中心·北京召開。此次會議繼承了前五屆大會的成功經驗,將邀請更多國內外知名院士、專家學者、行業cio參加會議並作演講。

敏捷到底是什麼?

文 ivar jacobson 在支援軟體工程 比如rational統一過程rup 與敏捷陣營 比如scrum或是xp 之間,人們一直存在著衝突。也不難理解,因為這兩種方法間都是在用著彼此並不相容的方式來描述的。其實大可不必,因為他們背後的觀點全然是相輔相成的。關鍵在於該如何用對兩者來說都公平的方式...

我們到底是什麼?

我們到底是什麼?我們是一種生物電流 生物電流有幾種狀態,喜怒哀樂等,可以根據外部環境進行自我切換 該種生物電流附屬在一種器官硬體上面 我們可以從器官硬體上感知一些資訊,產生新的資訊生物電流,新產生的生物電流符合原先的標準 我們可以把資訊電流儲存在器官硬體上,但具體如何儲存等資訊無法被我們感知 我們的...

UEFI GPT MBR到底是什麼?

uefi gpt mbr是什麼?這些專業術語不難理解,uefi屬於主機板類名詞,其作用類似於bios。gpt mbr則屬於硬碟類名詞,它們的作用類似一艘航母的骨架,有了這個骨架,我們才可以進行細緻到諸如c d e等碟符的分割槽。全新硬碟在磁碟管理模式下需進行mbr或gpt選擇 一塊硬碟接駁主機之後,...