SDN相比傳統(tǒng)網(wǎng)絡(luò)具有很多優(yōu)點,比如控制與轉(zhuǎn)發(fā)分離,這種思想打破了傳統(tǒng)設(shè)備供應(yīng)商的綁定,提高了新業(yè)務(wù)的部署速度,可以從整個網(wǎng)絡(luò)層面對流量進行優(yōu)化等等。在SDN網(wǎng)絡(luò)中,不管是開發(fā)人員還是用戶,都可以更多的發(fā)揮自己的想象,而不用再受各種RFC的強力約束。
一、傳統(tǒng)網(wǎng)絡(luò)發(fā)展及特點
從1969年ARPA NET運行算起,傳統(tǒng)網(wǎng)絡(luò)已經(jīng)發(fā)展了半個世紀,網(wǎng)絡(luò)按照OSI的模型分成7層,通常所見最多的是二層和三層。二層就是二層交換機構(gòu)成的網(wǎng)絡(luò),在這個網(wǎng)絡(luò)中交換機學(xué)習(xí)mac地址和端口的對應(yīng)關(guān)系,通過匹配二層報文的mac地址決定如何轉(zhuǎn)發(fā)。一般在一個二層網(wǎng)絡(luò)中,由于廣播風(fēng)暴的原因,管理的設(shè)備不應(yīng)超過百臺,否則會導(dǎo)致網(wǎng)路不穩(wěn)定和網(wǎng)絡(luò)性能的下降。三層就是由路由設(shè)備連接不同網(wǎng)段構(gòu)成的網(wǎng)絡(luò),跨網(wǎng)段的通信都需要路由,而路由器就通過記錄IP地址和端口的對應(yīng)關(guān)系連通不同的網(wǎng)段。不管是IPv4還是IPv6,我們能夠在世界范圍內(nèi)使用internet,底層都是由二層網(wǎng)絡(luò)和三層網(wǎng)絡(luò)構(gòu)成的堅實基礎(chǔ)。
傳統(tǒng)網(wǎng)絡(luò)從一開始就是一個分布式的網(wǎng)絡(luò),沒有中心的控制節(jié)點,網(wǎng)路中的各個設(shè)備之間通過口口相傳的方式學(xué)習(xí)網(wǎng)絡(luò)的可達信息,由每臺設(shè)備自己決定要如何轉(zhuǎn)發(fā),這直接導(dǎo)致了沒有整體觀念,不能從整個網(wǎng)絡(luò)的角度對流量進行調(diào)控。由于是口口相傳,就必須使用大家都會的語言,這就是網(wǎng)絡(luò)協(xié)議。各個設(shè)備供應(yīng)商不能自己隨便開發(fā)協(xié)議,否則不同廠商各執(zhí)己見,網(wǎng)絡(luò)還是不通。這樣全球性的組織就誕生了,比如IETF,而RFC就是網(wǎng)絡(luò)協(xié)議的法律,相當(dāng)于國際法,各個設(shè)備供應(yīng)商遵從國際法行事,就基本保證了整個網(wǎng)絡(luò)世界的正常運行。設(shè)備提供商就相當(dāng)于不同的國家,與現(xiàn)實中一樣,法律為了適應(yīng)時代的發(fā)展也在不斷的修訂補充,而各個國家基于自己利益的考慮,不斷搶占對自己更有利的山頭,想盡辦法規(guī)避其他國家主導(dǎo)的法律對自己的約束,傳統(tǒng)網(wǎng)絡(luò)就在博弈中不斷前進。這種由通用法律約束的發(fā)展方式,就限制了網(wǎng)絡(luò)運營商新業(yè)務(wù)的部署速度。網(wǎng)絡(luò)運營商負責(zé)對用戶提供網(wǎng)絡(luò)接入功能,用戶的需求千差萬別,一旦原有基礎(chǔ)網(wǎng)絡(luò)無法滿足新需求,就需要上升到協(xié)議制定修改的層面,各個設(shè)備提供商開始提出各種方案交由IETF裁決,形成新的法律,再由設(shè)備提供商實現(xiàn),重新升級基礎(chǔ)網(wǎng)絡(luò)內(nèi)的所有設(shè)備以支持新業(yè)務(wù)的部署。這個過程想想就覺得漫長,一般都要經(jīng)過至少半年,甚至幾年的時間。
從傳統(tǒng)網(wǎng)絡(luò)的部署方式能看出來,傳統(tǒng)網(wǎng)絡(luò)新業(yè)務(wù)部署是補丁式的,因為網(wǎng)絡(luò)中新老設(shè)備并存,新業(yè)務(wù)必須兼容老業(yè)務(wù),新的協(xié)議基本上都是在原有協(xié)議上進行擴展,這就大大限制的設(shè)備提供商的想象力。
傳統(tǒng)網(wǎng)絡(luò)的協(xié)議為了適應(yīng)各種不同的需求場景,發(fā)展也越來越復(fù)雜,想必有傳統(tǒng)網(wǎng)絡(luò)開發(fā)和維護經(jīng)驗的同學(xué)都有深刻體會吧。單說部署一個傳統(tǒng)的網(wǎng)絡(luò),就涉及到ARP、STP、OSPF、ISIS、RIP、BGP、組播等多種協(xié)議,如果涉及VPN,又有L2VPN、L3VPN,其中又會有VPLS、PWE3、VLL、MPLS、LDP、BGP VPN擴展,而部署方式又有Martini、Kompella、Option A、Option B、Option C、跨域C&C.....,是不是看著就暈?并且由于法律的不完善,RFC中常常存在一些沒有明確的地方,這導(dǎo)致了各提供商的實現(xiàn)中存在些許差異,而如果你將要部署的網(wǎng)路中存在多個提供商的設(shè)備,那么這些差異很可能在將來某個時候爆發(fā)網(wǎng)絡(luò)問題。傳統(tǒng)網(wǎng)絡(luò)的運維工程師都是經(jīng)過長年累月的學(xué)習(xí)和經(jīng)驗積累成長起來的。
雖然數(shù)量眾多并且復(fù)雜,但是傳統(tǒng)網(wǎng)絡(luò)協(xié)議也有他的優(yōu)點,協(xié)議本身做到了和設(shè)備提供商無關(guān),如果理解了一個協(xié)議,那么運維工程師之間交流不會有問題,運用此協(xié)議構(gòu)建的網(wǎng)絡(luò)都可以維護。各設(shè)備提供商的最大的差異主要集中在操作界面上。
二、SDN網(wǎng)絡(luò)的發(fā)展及特點
當(dāng)前的SDN網(wǎng)絡(luò)一般都是如下形式:有一個控制器(或集群),他負責(zé)收集整個網(wǎng)絡(luò)的拓撲、流量等信息,計算流量轉(zhuǎn)發(fā)路徑,通過openflow協(xié)議將轉(zhuǎn)發(fā)表項下發(fā)給交換機,交換機按照表項執(zhí)行轉(zhuǎn)發(fā)動作。和控制器對應(yīng),執(zhí)行轉(zhuǎn)發(fā)動作的交換機一般稱為轉(zhuǎn)發(fā)器。控制面從傳統(tǒng)網(wǎng)絡(luò)的單個設(shè)備上剝離,集中到了控制器上,轉(zhuǎn)發(fā)面由轉(zhuǎn)發(fā)器構(gòu)成。
網(wǎng)絡(luò)部署有兩種形式:一種是underlay的網(wǎng)絡(luò),這種網(wǎng)絡(luò)中,所有的轉(zhuǎn)發(fā)行為都由控制器決定,控制器通過OpenFlow協(xié)議或者定制的BGP協(xié)議將轉(zhuǎn)發(fā)表項下發(fā)給轉(zhuǎn)發(fā)器,轉(zhuǎn)發(fā)器僅僅執(zhí)行動作,沒有單獨的控制面。另一種是overlay的網(wǎng)絡(luò),這種網(wǎng)絡(luò)的轉(zhuǎn)發(fā)器一般都是傳統(tǒng)設(shè)備,不支持OpenFlow,或者私有定制協(xié)議不能部署。這時就要用到隧道技術(shù),基礎(chǔ)網(wǎng)絡(luò)還是傳統(tǒng)網(wǎng)絡(luò)形式,通過路由協(xié)議打通各個節(jié)點,但是在服務(wù)器接入點,采用隧道技術(shù)將數(shù)據(jù)報文進行封裝或者解封裝。對傳統(tǒng)網(wǎng)絡(luò)來說見到的就是普通的數(shù)據(jù)報文,轉(zhuǎn)發(fā)即可。隧道技術(shù)實際上就是報文的馬甲,迷惑網(wǎng)絡(luò)設(shè)備,讓設(shè)備以為是自己人,但是實際上報文的心是虛擬化的心,F(xiàn)在一般采用VxLan、GRE、NVGRE等隧道技術(shù)。而這些也是新增的協(xié)議,也需要升級現(xiàn)有網(wǎng)絡(luò)設(shè)備才能支持。穿馬甲雖然能夠在不進行大的改造的情況下增加新的功能,但無疑會降低網(wǎng)路性能,underlay方式一定是SDN網(wǎng)絡(luò)的終極形式。
SDN網(wǎng)絡(luò)的控制面,不再是口口相傳,而是集中智能,從更高的層次看整個網(wǎng)絡(luò),通過軟件來控制網(wǎng)絡(luò)行為。這里的軟件已經(jīng)不再由設(shè)備供應(yīng)商綁定設(shè)備提供,而是用戶可以自己實現(xiàn)。SDN網(wǎng)絡(luò)唯一標準化的是控制器與轉(zhuǎn)發(fā)器的通信接口,就是OpenFlow,不是傳統(tǒng)意義上的網(wǎng)絡(luò)控制協(xié)議,只是一個接口,控制器和轉(zhuǎn)發(fā)器按接口實現(xiàn)即可,至于控制器要如何控制,轉(zhuǎn)發(fā)器要如何轉(zhuǎn)發(fā),都是一片空白。SDN打開了一扇通往奇境的大門。
ovs已經(jīng)成為轉(zhuǎn)發(fā)器實現(xiàn)事實上的標準,而控制器則是百家爭鳴,有ODL、ONOS、AC、Ryu等。各種控制器的實現(xiàn)也有不小的差異,控制原理也都不同,這就對運維人員帶來了挑戰(zhàn)。在傳統(tǒng)網(wǎng)絡(luò)時代懂得了協(xié)議就懂得了網(wǎng)絡(luò),而在SDN時代,控制器才是網(wǎng)絡(luò)的核心,只有弄懂控制器實現(xiàn)原理,才能懂得網(wǎng)絡(luò)。
在現(xiàn)階段,OpenFlow作為接口,網(wǎng)絡(luò)上傳遞的報文還是按照傳統(tǒng)網(wǎng)絡(luò)時代定義的格式進行封裝,而控制器現(xiàn)階段能做的也僅是對報文封裝的字段進行修改。而下一階段,當(dāng)P4或者華為的POF作為接口時,網(wǎng)絡(luò)將徹底變革,用戶不僅可以控制轉(zhuǎn)發(fā)行為,還能按需定義報文封裝格式,而不再局限于mac、ip等等。雖然更靈活,但是各個局域網(wǎng)絡(luò)的實現(xiàn)可能都不相同,對網(wǎng)絡(luò)運維人員來說可能會更困難,換一個網(wǎng)絡(luò)可能就需要學(xué)習(xí)一套新的規(guī)則。但是這也真正體現(xiàn)軟件定義的魅力,控制器的控制形式勢必會更加多種多樣,網(wǎng)絡(luò)也會進入一個新的輪回。
三、從ping的流程看傳統(tǒng)網(wǎng)絡(luò)與SDN網(wǎng)絡(luò):
1.傳統(tǒng)網(wǎng)絡(luò)
如上圖拓撲,網(wǎng)絡(luò)中間有三臺設(shè)備構(gòu)成基礎(chǔ)網(wǎng)絡(luò),兩個客戶端屬于不同的網(wǎng)絡(luò),兩個客戶端要互訪。
基礎(chǔ)網(wǎng)絡(luò)構(gòu)建步驟如下:
1)由于客戶端處于不同網(wǎng)段,因此需要路由設(shè)備,可以用CE2作為路由設(shè)備,或者CE1、2、3均作為路由設(shè)備,這里將三臺均作為路由設(shè)備,CE1、2、3之間三層通信。
2)CE1作為CLIENT1的網(wǎng)關(guān)設(shè)備;CE3作為CLIENT2的網(wǎng)關(guān)設(shè)備,網(wǎng)關(guān)代答ARP。
3)CE1、CE2、CE3之間通過靜態(tài)路由或者路由協(xié)議學(xué)習(xí) 192.168.10 和192.168.20 網(wǎng)段的路由。
路由通路的建立主要關(guān)注兩個字段:路由前綴和下一跳。在傳統(tǒng)路由器上,通過命令行可以很直觀的看到各種信息之間的關(guān)聯(lián)。

上面是典型的接口信息表顯示,可以看到接口以及接口IP、狀態(tài)信息Shell
上面是典型的路由表結(jié)構(gòu),從路由表中可以看到路由匹配項及下一跳、出接口信息。要構(gòu)建192.168.10.2 到192.168.20.2的通路,實際上需要讓CE1知道20網(wǎng)段的下一跳是10.1.1.2,CE2要知道20網(wǎng)段的下一跳是20.1.1.2,這樣單向通路就建立起來了,再建反向通路即可。
傳統(tǒng)網(wǎng)絡(luò)的打通,需要在途經(jīng)的每一臺設(shè)備上進行配置,需要自己規(guī)劃整個網(wǎng)絡(luò)的拓撲、端口的IP地址、路由協(xié)議等等,在網(wǎng)絡(luò)構(gòu)建和維護過程中都需要人工持續(xù)不斷的干預(yù)。雖然如此,但是傳統(tǒng)網(wǎng)絡(luò)中仍然有一定的智能,路由協(xié)議在配置好后,一定程度上不再需要做過多的干預(yù)。比如CE1、2、3組成的骨干網(wǎng)在配置好動態(tài)協(xié)議后,后續(xù)再增加同網(wǎng)段的新客戶端,是不需要修改配置的。但是如果要部署新業(yè)務(wù),如VPN等,就需要對整網(wǎng)配置進行修改。在傳統(tǒng)網(wǎng)絡(luò)中,ping的處理流程如下:
1)在CLIENT1上ping CLIENT2
2)CLIENT1在通過ARP獲取到網(wǎng)關(guān)MAC后,構(gòu)造ICMP request報文發(fā)往CE1
3)在CE1上解析ICMP報文,通過目的IP地址在路由表查找匹配表項,找到出接口發(fā)往CE2
4)CE2做同樣的事情,將報文發(fā)往CE3,CE3發(fā)往CLIENT2
5)CLIENT2構(gòu)造應(yīng)答報文發(fā)往,目的IP填192.168.10.2,發(fā)往CE3,通過路由查找過程,報文到達CLIENT1在這個過程中,接收->查找->轉(zhuǎn)發(fā)的一系列動作是設(shè)備的內(nèi)部實現(xiàn),對用戶來說是黑盒,實際上“查找”就是IP的在路由表中的匹配過程。
2.SDN網(wǎng)絡(luò)
以純underlay的SDN網(wǎng)絡(luò)舉例,如下圖所示拓撲:

控制器通過ovs上報的packetin消息觸發(fā)處理流程,計算好路徑后,通過openflow下發(fā)給所有轉(zhuǎn)發(fā)器,打通鏈路,主機之間能夠互通。轉(zhuǎn)發(fā)器上沒有控制面,之間也沒有交互,轉(zhuǎn)發(fā)器最基本動作就是對收到的報文上報控制器,一切的邏輯行為都由控制器負責(zé)。
在轉(zhuǎn)發(fā)器上,需要把物理口綁定到OVS上,OVS才能進行管理,所以在OVS上查看接口信息如下:

這條流表是用來將報文上送控制器的。在主機v1之間ping v2后,查看流表信息:

多了兩條流表,第一條是匹配從2口進入ovs的報文,如果報文的目的mac是v2,從ovs 1口出;第二條是匹配從1口進入ovs的報文,如果報文的目的mac是v1,從ovs2口出。可以看到這里的port已經(jīng)變成了數(shù)字,要查看編號和名字的對應(yīng)關(guān)系,需要通過其他的表:
可以看到在SDN網(wǎng)絡(luò)中的匹配和動作行為比傳統(tǒng)網(wǎng)絡(luò)要豐富的多,不僅僅是匹配前綴,轉(zhuǎn)發(fā)下一跳那么簡單了。但是SDN網(wǎng)絡(luò)設(shè)備的用戶界面信息表現(xiàn)不直觀,相比傳統(tǒng)網(wǎng)絡(luò)還有很大的提升空間。在此網(wǎng)絡(luò)中,ping的處理流程如下:
1) 在V1上ping V2
2) V1通過ARP獲取請求網(wǎng)關(guān)MAC
3) ARP報文在OVS1上匹配流表,上送控制器
4) 控制器進行ARP代答,構(gòu)造ARP應(yīng)答報文通過OVS1發(fā)給V1
5) V1在獲取到mac后,構(gòu)造ICMP request報文發(fā)往V2
6) OVS1在收到ICMP報文后,依然不知道如何處理,繼續(xù)上送控制器
7) 控制器根據(jù)報文信息,計算轉(zhuǎn)發(fā)路徑,向轉(zhuǎn)發(fā)路徑上的所有轉(zhuǎn)發(fā)器下發(fā)流表
8) 控制器將首包通過OVS1發(fā)給OVS2,由于OVS2、OVS3上已經(jīng)有可以匹配的流表,因此報文會一直送到V2上
9) V2的應(yīng)答流程如上類似,差別在于反向的流表已經(jīng)提前下發(fā),V2的應(yīng)答報文不會再上送控制器在SDN網(wǎng)絡(luò)中,對于控制器如何計算、下發(fā)什么樣的流表是沒有統(tǒng)一標準的,只要能正確處理主機之間的報文即可。在上面的例子中,所實現(xiàn)的控制器與通常的不同,由于僅存在兩臺主機,因此對于三層報文,沒有通過匹配IP的方式進行轉(zhuǎn)發(fā),ARP的應(yīng)答也并不是應(yīng)答的網(wǎng)關(guān)mac,而是直接將目的主機的mac進行了應(yīng)答,因此,雖然是三層互通,但是通過控制器,也可以做到流表直接匹配mac轉(zhuǎn)發(fā),而不需要IP。從這也可以看到SDN的靈活性。
四、總結(jié)
傳統(tǒng)網(wǎng)絡(luò)已經(jīng)經(jīng)過半個世紀的發(fā)展,凝聚了無數(shù)人的智慧和心血,但是由于天生的缺陷,導(dǎo)致在很多場景上心有余而力不足,并且越來越復(fù)雜。SDN雖然誕生沒多久,但是已經(jīng)表現(xiàn)出非常強的生命力。傳統(tǒng)網(wǎng)絡(luò)在安全、可靠性、可維護性和性能上還有很大的優(yōu)勢,但是隨著SDN相關(guān)設(shè)備的發(fā)展,這種優(yōu)勢必然會越來越弱,而SDN依靠自己的優(yōu)勢,一定會不斷占領(lǐng)傳統(tǒng)網(wǎng)絡(luò)的領(lǐng)地。而在SDN內(nèi)部,overlay網(wǎng)絡(luò)相比underlay網(wǎng)絡(luò),簡化不足,復(fù)雜有余,在傳統(tǒng)網(wǎng)絡(luò)的基礎(chǔ)上疊加虛擬化,比傳統(tǒng)網(wǎng)絡(luò)更復(fù)雜。overlay之于underlay,就好比ipv4之于ipv6,要從根本上解決問題,underlay必然是最終的選擇。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標題:SDN網(wǎng)絡(luò)與傳統(tǒng)網(wǎng)絡(luò)對比
本文網(wǎng)址:http://www.oesoe.com/html/consultation/10839419297.html