《企業(yè)網(wǎng)D1Net》2月11日訊
隨著虛擬化技術(shù)的深入應(yīng)用,SDN也越來越受到關(guān)注,然而,關(guān)于SDN的定義卻十分模糊,目前,圍繞SDN概念爭論,已經(jīng)分化成兩大陣營,這兩大陣營有對抗也有共鳴。
原則和協(xié)議陣營不同看待SDN
當(dāng)大部分人在談?wù)撌裁词荢DN時,他們大概可分為兩種陣營:原則和協(xié)議,你會經(jīng)常聽到有人把SDN描述為控制和轉(zhuǎn)發(fā)層的分離,你或許聽到人們說SDN需要“開放”,這些人屬于原則陣營,他們不太關(guān)注技術(shù)的實例化,更關(guān)心的是如何定義SDN。
另一個陣營則旨在探討專用協(xié)議和技術(shù),他們無疑是以O(shè)penFlow為旗幟,但是他們或許還包括BGP-TE, PCE,ALTO和I2RS技術(shù)。他們視SDN為一種帶有專門創(chuàng)建模塊的架構(gòu),而這種創(chuàng)建模塊的出現(xiàn)決定了一個方案是否能被稱作是SDN。
我認為這兩種定位都不正確。
上周爭論過GMPLS是否是SDN,它確實是側(cè)重控制層和轉(zhuǎn)發(fā)層的分離,是一種開放的標(biāo)準(zhǔn),它也絕對是用軟件部署的,似乎它滿SDN的大部分架構(gòu)標(biāo)準(zhǔn),但GMPLS是否是SDN的討論還不如其周圍的討論要精彩。
是以軟件來定義SDN嗎?如果只因為部署的時候依靠軟件部署,就稱某個東西為軟件定義,或許也太糊弄人了。事實上,傳統(tǒng)網(wǎng)絡(luò)的主體特性都是用軟件部署的,而主流廠商也把80%的研發(fā)投入在軟件相關(guān)的工作上,如果僅以此來定義,那么一切都可謂之軟件定義。
人們談?wù)撥浖渴鸬臅r候,真正用來區(qū)分的是看產(chǎn)品功能是寄居在聯(lián)網(wǎng)設(shè)備上,還是在網(wǎng)絡(luò)之上的其他地方。但是我們應(yīng)該對此非常明了,不論無論某些應(yīng)用是不是在機箱上運行,這都是封裝的細節(jié),而不是核心屬性,網(wǎng)絡(luò)設(shè)備都具備一些轉(zhuǎn)發(fā)ASIC和通用的處理器,無論你是編寫什么東西,還是在金屬薄片中或服務(wù)器上本地運行,這些都不相關(guān),如果廠商決定在他們的機箱里放入單獨的中央處理卡,你會把這種方案標(biāo)榜為軟件定義嗎?
控制和轉(zhuǎn)發(fā)的分離是有意義的決定性因素嗎?
網(wǎng)絡(luò)設(shè)備行為都是狀態(tài)驅(qū)動的,無論狀態(tài)是由持久的配置來決定還是通過協(xié)議來學(xué)習(xí),如果你通過一個CLI技術(shù)或控制器設(shè)置狀態(tài),這會讓方案偏向SDN一點還是偏離一點呢?
大多數(shù)人談?wù)摽刂坪娃D(zhuǎn)發(fā)的時候,其實是談?wù)摴芾韺?基于控制器的方案肯定要分離管理層,但策略服務(wù)器,OSS/BSS方案和其他編寫較好的Perl腳本也是如此,它們把從內(nèi)容版本化的系統(tǒng)把信息作為設(shè)備管理的一部分推入。
開放就意味著SDN嗎?沒有人會說只要開放,就能成為SDN,真正的問題在于,是否有什么可以被稱作SDN且不開放呢?答案很大程度上取決于人們?nèi)绾味xSDN。你能創(chuàng)建一個由軟件部署,基于控制器,且使用專屬協(xié)議的方案嗎?當(dāng)然可以,如果這種方案的壽命是八年,而且IETF批準(zhǔn)了用于基礎(chǔ)協(xié)議的標(biāo)準(zhǔn),那么你部署的方案有沒有從非SDN轉(zhuǎn)向SDN呢?
討論落腳點在哪里呢?
我并非認為在為產(chǎn)品貼上SDN標(biāo)簽前,不需要考慮一些重要的原則,我只是認為它跟環(huán)境的相關(guān)性大過和技術(shù)的相關(guān)性,對我而言,我相信有技術(shù)可兼容SDN和非SDN架構(gòu)的,協(xié)議的使用方式?jīng)Q定了你的產(chǎn)品是否是SDN。例子不勝枚舉,但是我會從BGP,XMPP,NETCONF,YANG甚至是GMPLS開始,同理,我認為也存在非SDN的基于控制器的方案,就好像可能存在不基于控制器的SDN方案一樣。
這意味著,我們的討論要避開技術(shù)搭建模塊,而要更側(cè)重環(huán)境。這里舉三個例子:
授權(quán)——OSS/BSS系統(tǒng)已經(jīng)處理了不同廠商的不同設(shè)備所搭建網(wǎng)絡(luò)的內(nèi)部管理問題。方案就不能只是簡單地部署主控翻譯器,把配置告訴其他設(shè)備嗎?對我而言,SDN似乎是用來減輕單個要素的管理難度的。這只在授權(quán)的時候才發(fā)生。只有中心控制器通過單個要素的要求,而不是從細節(jié)對它們進行管理時,才能發(fā)揮大作用。想象一下,如果你的CEO告訴每個員工該怎么做事,你的公司怎么可能高效呢?
提取——授權(quán)取決于提取。如果SDN的目標(biāo)是讓工作流更具可控性,提升網(wǎng)絡(luò)性能,那么我們就需要降低其復(fù)雜度。我們跟設(shè)備指定型的指令要少打交道,應(yīng)更側(cè)重主要意圖。IT基礎(chǔ)設(shè)施的不同部件能協(xié)作的唯一方式是使用通用語言,而這就需要提取。要讓運算,存儲或應(yīng)用依據(jù)VLAN和ACL不比把網(wǎng)絡(luò)管理員變?yōu)榇鎯蜻\算怪杰來得實際。
全球化——集中式控制說的并不是軟件在何處運行;它指的是軟件可以從事的事情?;诳刂破鞯姆桨?,其前提條件是對可用資源有全盤了解,這樣才能做出明智決定。如果你的網(wǎng)絡(luò),有沒有OpenFlow都沒啥區(qū)別,那么你叫不叫它SDN又有啥關(guān)系?我們需要是要把事情做好,而不是僅僅與人有差別。這樣的目標(biāo)就需要我們有全球化的視角。
D1Net評論:
創(chuàng)建一種開放的,以控制器為基礎(chǔ)的系統(tǒng),是完全有可能的,并非想象中那么困難,不過這種系統(tǒng)可能不能實現(xiàn)SDN的承諾,就好像有可能用新的方式再次利用原有技術(shù)一樣。最終,是環(huán)境——而不是性能決定了SDN能兌現(xiàn)什么。