官术网_书友最值得收藏!

1.2 認識SDN

介紹完為什么需要SDN和SDN的起源后,是時候介紹SDN到底是什么了。理解SDN架構(gòu),對于理解VMware NSX網(wǎng)絡(luò)虛擬化解決方案的三個平面架構(gòu)以及其邏輯網(wǎng)絡(luò)、物理網(wǎng)絡(luò)解耦的設(shè)計,是非常重要的——SDN的核心思想是控制平面與轉(zhuǎn)發(fā)平面的分離,這與NSX中管理平面、控制平面和數(shù)據(jù)平面的設(shè)計如出一轍。

SDN其實直到現(xiàn)在也沒有清晰的定義,但是其核心理念已逐漸被人們接受。本章將下來會討論SDN的理念、架構(gòu),以及它如何面對當(dāng)前的IT難題。

1.2.1 SDN是什么

SDN是Software Defined Network的縮寫。正如業(yè)內(nèi)很難回答“云計算”的定義是什么一樣,業(yè)內(nèi)也很難回答SDN的定義。但是SDN在經(jīng)歷了幾年的發(fā)展后,業(yè)內(nèi)也對其概念達成了一個基本的共識。前文已經(jīng)介紹了SDN的歷史,在這里我們介紹一下SDN的模糊定義。

SDN其實并不是一種技術(shù),也不是一種協(xié)議,它只是一個體系框架,一種設(shè)計理念。這種框架或理念要求網(wǎng)絡(luò)系統(tǒng)中的控制平面和轉(zhuǎn)發(fā)平面必須是分離的。在轉(zhuǎn)發(fā)平面,它可能希望與協(xié)議無關(guān),管理員的意志最重要。管理員可以通過軟件來執(zhí)行自己的意志,控制轉(zhuǎn)發(fā)行為,并驅(qū)動整個網(wǎng)絡(luò)。

除此之外,SDN的理念還希望控制器與轉(zhuǎn)發(fā)平面的接口標(biāo)準(zhǔn)化,我們把這樣的接口稱為南向接口。因為如果軟件想要真正控制轉(zhuǎn)發(fā)行為,就應(yīng)該盡量不依賴特定的硬件。除了硬件設(shè)備,該控制器也可以對網(wǎng)絡(luò)中的應(yīng)用程序進行集中控制,一般來說這是通過硬件提供一些可編程的特性來實現(xiàn)的??刂茟?yīng)用程序的接口稱之為北向接口。

當(dāng)前業(yè)內(nèi)比較認可的SDN的特征屬性如下:

● 控制平面與轉(zhuǎn)發(fā)平面分離;

● 開放的可編程接口;

● 集中化的網(wǎng)絡(luò)控制;

● 網(wǎng)絡(luò)業(yè)務(wù)的自動化應(yīng)用過程控制。

其中前兩點是SDN的核心。如果一個網(wǎng)絡(luò)系統(tǒng)具備了這兩點特征,那么就可以寬泛地認為這是一個SDN架構(gòu)。

OpenFlow作為目前主流的南向接口協(xié)議,這個名詞當(dāng)然被炒得火熱,有人認為SDN就是OpenFlow。這是不正確的。因為SDN是一種框架,一種理念,而OpenFlow只是實現(xiàn)這個框架的一種協(xié)議。

如今,VMware公司、Cisco公司和Microsoft公司都在大力宣傳自己的網(wǎng)絡(luò)虛擬化(Network Virtualization)技術(shù)。有人認為網(wǎng)絡(luò)虛擬化也是SDN,這種觀點是不完全正確的。早期的網(wǎng)絡(luò)虛擬化雛形(如早期的Cisco Nexus 1000v和VMware內(nèi)嵌在vSphere里的虛擬交換機),指的是在服務(wù)器虛擬化平臺中加一層虛擬交換機,用于與虛擬機連接,細分虛擬機的接口策略,而不是在服務(wù)器網(wǎng)卡上用一個Trunk把所有VLAN封裝并連接上行鏈路。而現(xiàn)在,網(wǎng)絡(luò)虛擬化特指實現(xiàn)方式是基于一種叫做Overlay技術(shù)(現(xiàn)在還沒有很好的中文翻譯,我們姑且先把它叫做“疊加網(wǎng)絡(luò)”技術(shù))的網(wǎng)絡(luò)虛擬化。有了這種技術(shù),用戶可以突破一個網(wǎng)絡(luò)系統(tǒng)中的VLAN數(shù)量、MAC地址容量等的限制,輕松跨越三層網(wǎng)絡(luò)打通二層隧道,對于超大規(guī)模數(shù)據(jù)中心、多租戶數(shù)據(jù)中心、雙活/災(zāi)備數(shù)據(jù)中心來說,這種技術(shù)相當(dāng)合適。Overlay可以由物理網(wǎng)絡(luò)搭建,也可以通過服務(wù)器的hypervisor來搭建。通過物理網(wǎng)絡(luò)搭建的Overlay并沒有真正實現(xiàn)控制平面和轉(zhuǎn)發(fā)平面的分離,不符合SDN特征。通過服務(wù)器的hypervisor搭建的Overlay,即基于主機的Overlay,現(xiàn)在一般會有集中的管理平面和控制平面,以及分離的轉(zhuǎn)發(fā)平面。因此,網(wǎng)絡(luò)虛擬化是SDN發(fā)展到一定階段的必然趨勢,可能是SDN的一個分支,但不是SDN本身。因此,有人把基于主機的Overlay稱為新一代SDN,因為它和第一代SDN有很大區(qū)別。本書的重點——VMware NSX網(wǎng)絡(luò)虛擬化解決方案正是基于SDN思想的網(wǎng)絡(luò)虛擬化的絕佳解決方案,是新一代SDN,后文會詳細闡述。

一些運營商和軟件廠商現(xiàn)今正在推廣自己的網(wǎng)絡(luò)功能虛擬化(Network Function Virtualization, NFV)技術(shù)。NFV也不是SDN,它的目標(biāo)是利用當(dāng)前的一些虛擬化技術(shù),在標(biāo)準(zhǔn)的硬件設(shè)備上運行各種執(zhí)行網(wǎng)絡(luò)功能的軟件來虛擬出多種網(wǎng)絡(luò)設(shè)備。由于這些虛擬的網(wǎng)絡(luò)設(shè)備(如虛擬交換機、虛擬路由器、虛擬防火墻、虛擬負載均衡設(shè)備)可能會有統(tǒng)一的控制平面,因此NFV和SDN是一種互補的關(guān)系。VMware NSX具備NFV的屬性——NSX使用x86服務(wù)器的軟件來實現(xiàn)各種網(wǎng)絡(luò)功能,但由于NSX中的Overlay屬性過于明顯,因此VMware更愿意將NSX解決方案稱為一種網(wǎng)絡(luò)虛擬化解決方案,而不是NFV解決方案。

另外,近來一些熱門詞匯如Openstack、Cloudstack、OVS等,與SDN都沒有任何直接的關(guān)系。其中Openstack和Cloudstack是云管理平臺,而OVS之前已經(jīng)提到過了,是SDN鼻祖Nicira公司開發(fā)的一款虛擬交換機,現(xiàn)在已經(jīng)開源。這些新技術(shù)和SDN也是一種互補的關(guān)系,可以共同實現(xiàn)融合解決方案。

1.2.2 SDN架構(gòu)

圖1.6所示為SDN架構(gòu)中的各個層面,它直觀地闡述了SDN架構(gòu),我們具體解釋一下圖中的各個層面。

圖1.6 SDN架構(gòu)中的各個層面

基礎(chǔ)設(shè)施層:該層主要是網(wǎng)絡(luò)設(shè)備,可以將這一層理解為“轉(zhuǎn)發(fā)平面”。這些工作在“轉(zhuǎn)發(fā)平面”的網(wǎng)絡(luò)設(shè)備可以是路由器、物理交換機,也可以是虛擬交換機。所有的轉(zhuǎn)發(fā)表項都貯存在網(wǎng)絡(luò)設(shè)備中,用戶數(shù)據(jù)報文在這里被處理和轉(zhuǎn)發(fā)。網(wǎng)絡(luò)設(shè)備通過南向接口接受控制層發(fā)來的指令,產(chǎn)生轉(zhuǎn)發(fā)表項,并可以通過南向接口主動將一些實時事件上報給控制層。

南向接口:南向接口是負責(zé)控制器與網(wǎng)絡(luò)設(shè)備通信的接口,也就是控制層和基礎(chǔ)設(shè)施層之間的接口。在SDN的世界里,人們希望南向接口標(biāo)準(zhǔn)化(這只是一個理想,還未成為現(xiàn)實,但OpenFlow協(xié)議是目前主流的南向接口協(xié)議,未來能否成為標(biāo)準(zhǔn)協(xié)議也有待觀察)。只有這樣,SDN技術(shù)才能擺脫硬件的束縛,否則SDN技術(shù)永遠只能是特定的軟件用于特定的硬件上。

控制層:該層就是前文所說的“控制平面”,該平面內(nèi)的SDN控制器可能有一個,也可能有多個;可能是一個廠家的控制器,也可能是多個廠家的控制器協(xié)同工作。一個控制器可以控制多臺設(shè)備,甚至可以控制其他廠家的控制器;而一個設(shè)備也可能被多個控制器同時控制。一個控制器可以是一臺專門的物理設(shè)備(如NEC的SDN控制器),也可以運行在專門的一臺(或多臺[成集群工作])物理服務(wù)器上(如Cisco的APIC),也可以通過虛擬機的方式部署在虛擬化環(huán)境中(如VMware NSX Controller)。

北向接口:北向接口指的是控制層和應(yīng)用之間的接口。在SDN的理念中,人們希望控制器可以控制最終的應(yīng)用程序,只有這樣才能針對應(yīng)用的使用,合理調(diào)度網(wǎng)絡(luò)、服務(wù)器、存儲等資源,以適應(yīng)應(yīng)用的變化。目前北向接口尚未標(biāo)準(zhǔn)化,也沒有類似OpenFlow這樣的主流接口協(xié)議。一些組織和公司希望將其標(biāo)化,但是非常困難——它和南向接口的標(biāo)準(zhǔn)化相比,顯得異常復(fù)雜,因為轉(zhuǎn)發(fā)平面畢竟萬變不離其宗,容易抽象出通用接口,而應(yīng)用的變數(shù)則太多了。

應(yīng)用層:該層主要是企業(yè)的最終應(yīng)用程序,通過北向接口與控制層通信。該層也可能包括一些服務(wù),如負載均衡、安全、網(wǎng)絡(luò)監(jiān)控等,這些服務(wù)都是通過應(yīng)用程序表現(xiàn)的。它可以與控制器運行在同一臺服務(wù)器上,也可以運行在其他服務(wù)器上,并與控制器通信。該層的應(yīng)用和服務(wù)往往通過SDN控制器實現(xiàn)自動化。前文所說的一些時段應(yīng)用以及服務(wù)需求量的激增和激退,在SDN的環(huán)境里應(yīng)當(dāng)自動完成。對于這種自動化,英文資料中經(jīng)常使用一個叫Orchestration的名詞,該詞的原意是“管弦樂”、“樂曲編排”、“和諧演奏”,在這里可以引申為將各種技術(shù)糅合在一起,實現(xiàn)數(shù)據(jù)中心的自動化,最終達到為應(yīng)用提供最好的服務(wù)效果。

1.2.3 SDN如何應(yīng)對當(dāng)前IT環(huán)境

介紹完SDN的幾個工作層面,接下來討論SDN究竟如何應(yīng)對前文提到的IT行業(yè)架構(gòu)遇到的問題。SDN解決這些問題的核心思想是改變傳統(tǒng)網(wǎng)絡(luò)中控制數(shù)據(jù)流的方式。在傳統(tǒng)網(wǎng)絡(luò)中,報文從源轉(zhuǎn)發(fā)到目的的過程中,轉(zhuǎn)發(fā)行為是逐條控制并獨立進行配置的,這種控制也不是統(tǒng)一的。

而SDN是將每臺設(shè)備里的控制平面剝離出來,放到一個控制器中,由這個控制器通過統(tǒng)一的指令來集中管理轉(zhuǎn)發(fā)路徑上的所有設(shè)備。這個控制器知曉整網(wǎng)的拓撲,知曉轉(zhuǎn)發(fā)過程中所有的必需信息,而且上層應(yīng)用程序也可以通過控制器提供的API以可編程的方式進行控制,這樣可以消除大量手工配置(無需管理員登錄到每一臺設(shè)備上進行配置),從而大大增加了網(wǎng)絡(luò)靈活性和可視性,提高了部署和維護效率。

我們來解析一個SDN的應(yīng)用案例:一個對外提供服務(wù)的托管數(shù)據(jù)中心,需要增加一個租戶,并為這個租戶增加一臺新的虛擬機。在SDN環(huán)境中,只要管理員將其屬性定義好,管理平臺就可以自動按照其所需資源進行配置——申請多少內(nèi)存,申請多大容量的存儲空間,虛擬網(wǎng)絡(luò)和物理網(wǎng)絡(luò)的路由策略、安全策略、負載均衡策略,都是自動完成的。而這一切的配置都可以通過SDN控制器自動發(fā)布到各個設(shè)備中。這樣一來,一個業(yè)務(wù)上線的時間,可能由10小時縮短為10分鐘——如果沒有SDN,網(wǎng)絡(luò)管理員、服務(wù)器管理員和存儲管理員必須通力合作,在不同的網(wǎng)絡(luò)設(shè)備、服務(wù)器虛擬化軟件、存儲設(shè)備上進行逐步配置和資源分配,而且中間還可能會產(chǎn)生錯誤配置。這也解決了我們之前提到的網(wǎng)絡(luò)資源無法實現(xiàn)按需自助式服務(wù)的問題。

此外,SDN還可以更細顆粒度地進行流量優(yōu)化。Nicira創(chuàng)始人、SDN的提出者卡薩多先生曾經(jīng)用一個生動的比喻形容數(shù)據(jù)中心內(nèi)部的流量:小股數(shù)據(jù)流構(gòu)成的突發(fā)流量稱為“老鼠流”,持久且負載較高的穩(wěn)定流量則稱為“大象流”。對于數(shù)據(jù)中心中大多數(shù)流量的性能問題,我們都可以將其視為大象踩著老鼠前進的狀況,而從用戶的角度看,就是持久穩(wěn)定的流量擠占了小股突發(fā)流量的資源。而在SDN的幫助下,系統(tǒng)可以對流量進行智能識別。換句話說,基于SDN的網(wǎng)絡(luò)系統(tǒng)會辨認出其是否屬于大象流,并對這些流量加以優(yōu)化、標(biāo)記、識別,確保它不會踩著老鼠前進,這樣就達到了大象流和老鼠流的共存。這是因為在SDN架構(gòu)中,控制器可以知曉全網(wǎng)的拓撲和健康狀況。

SDN的引入還能防止廠商鎖定。只要設(shè)備支持SDN,支持可編程,那么系統(tǒng)管理員就可以通過南向接口和北向接口,通過控制器對設(shè)備進行控制,改變轉(zhuǎn)發(fā)行為。這也是Google、Facebook在其內(nèi)部數(shù)據(jù)中心大力推進SDN的原因之一。廠商鎖定問題不僅帶來成本問題(尤其是大型數(shù)據(jù)中心網(wǎng)絡(luò)),還會受其創(chuàng)新能力、私有協(xié)議的限制,帶來擴展性和維護方面的問題。而有了SDN后,網(wǎng)絡(luò)管理員需要學(xué)習(xí)的知識大大減少——異構(gòu)設(shè)備、私有協(xié)議等都大大減少了,只要SDN控制器的界面足夠友好和美觀即可。就算SDN控制器的界面操作性一般,如果網(wǎng)絡(luò)管理員的編程能力強,部署和運維也就不是問題。當(dāng)然,真正解決了廠商鎖定的問題之后,可能會導(dǎo)致白牌交換機大行其道,這顯然是網(wǎng)絡(luò)硬件廠商不愿意看到的。

理論上,越是復(fù)雜的網(wǎng)絡(luò)越適用SDN架構(gòu)。在當(dāng)前的大型復(fù)雜數(shù)據(jù)中心中,如果現(xiàn)有網(wǎng)絡(luò)問題到了非解決不可的時候,也就是SDN發(fā)揮其用武之地的時候。

1.2.4 SDN相關(guān)的組織以及廠商對SDN的態(tài)度

由于各個設(shè)備和軟件廠家、各個大專院校和研究機構(gòu)對一項技術(shù)有不同的理解,這就需要成立一個組織去推動這項技術(shù)的發(fā)展,如推動網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)制定的IEEE和IETF。按常理來說,一項技術(shù)只應(yīng)由一個標(biāo)準(zhǔn)組織去推動,這樣才可以集中力量將其標(biāo)準(zhǔn)化,但是事與愿違——不同的廠家和科研機構(gòu)有不同的見解和利益關(guān)系,這就產(chǎn)生了分歧,導(dǎo)致出現(xiàn)了多個組織去推動某一項技術(shù)的發(fā)展,SDN也不例外。

此外,各大IT廠商由于在產(chǎn)品線、功能和特性上的差異,因此它們看待SDN的角度也不盡相同,應(yīng)對SDN浪潮的手段也不同。

目前,SDN領(lǐng)域最具影響力的組織就是ONF(Open Networking Foundation)了。它由Google、Facebook、Microsoft等公司共同發(fā)起(這些發(fā)起者都不是網(wǎng)絡(luò)設(shè)備制造商),成立于2011年,是最早著手定義并希望推動SDN標(biāo)準(zhǔn)化的非盈利組織,其科研和活動經(jīng)費來自于會員公司的贊助和年費。該組織成立至今已有近5年時間,其主要工作成果就是制定了OpenFlow、OF-Config版本的標(biāo)準(zhǔn)。該組織也是全球范圍內(nèi)各個廠商間SDN互通互聯(lián)測試的組織人和協(xié)調(diào)人,并定期組織學(xué)術(shù)研討會。

在SDN被提出后的很長一段時間,ONF都是唯一的標(biāo)準(zhǔn)化組織,但是2013年4月,18家IT廠商聯(lián)合推動了ODL(Open DayLight)的成立。這18家廠商是Brocade、Cisco、Citrix、Ericsson、IBM、Juniper、Red Hat、Microsoft、NEC、VMware、Arista Networks、Fujitsu、HP、Intel、PlumGrid、Nuage Networks、Dell與Big Switch(后退出)。這18家公司絕大部分是IT行業(yè)內(nèi)的巨頭,多為網(wǎng)絡(luò)設(shè)備制造商,它們不滿ONF制定的游戲規(guī)則,另起爐灶。

表1.1比較了ONF和ODL這兩個組織的異同。

表1.1 ONF和ODL的比較

不難看出,ONF站在網(wǎng)絡(luò)用戶的角度,希望徹底擺脫廠商鎖定,希望所有的接口都能被標(biāo)準(zhǔn)化,而硬件也應(yīng)當(dāng)是標(biāo)準(zhǔn)化的硬件,可以由標(biāo)準(zhǔn)的OpenFlow協(xié)議去管理。但由設(shè)備廠商主導(dǎo)的ODL不同,它們希望部分接口被標(biāo)準(zhǔn)化,保證設(shè)備廠商的利益,防止白牌交換機侵蝕其市場。

此外,運營商和一些軟件公司基于SDN的一些想法,提出NFV(前文有提到)。斯坦福大學(xué)、加州大學(xué)伯克利分校聯(lián)合了一些IT公司,建立了開放網(wǎng)絡(luò)研究中心(Open Networking Reserch Center, ONRC)。IEEE、IETF這兩個網(wǎng)絡(luò)界的龍頭組織也有一些想法,由于不是本書重點,在這里不多贅述。

盡管網(wǎng)絡(luò)設(shè)備制造商聯(lián)合發(fā)起了ODL組織,但是它們并沒有拋棄ONF。換句話說,由于OpenFlow巨大的影響力,網(wǎng)絡(luò)設(shè)備廠商還沒有牛到能完全另起爐灶的程度。Google、Facebook旗幟鮮明地站在ONF這邊,沒有加入ODL。Amazon是個特例,它既沒加入ONF,也沒加入ODL,而是封閉式地發(fā)展自己的AWS(Amazon Web Service)。而那些耳熟能詳?shù)木W(wǎng)絡(luò)設(shè)備制造商或軟件公司,如Brocade、Cisco、Citrix、Juniper、IBM、NEC、VMware、Arista Networks、Dell、Alcatel-Lucent、H3C、華為,都既是ONF會員,也是ODL的黃金/白銀會員。這些廠商都開放了自己物理或虛擬網(wǎng)絡(luò)設(shè)備的接口,可以將自己的設(shè)備交給SDN控制器管理。然而,這些IT廠商也都會在自己的交換機中加入有自己特色的東西,否則自己的設(shè)備豈不是任由其他廠家擺布,任由別人的控制器來定義了嗎?因此,這些IT巨頭們有些靠自己研發(fā),有些靠并購,希望在SDN浪潮下不至于被競爭對手落下。它們大多使用Hybrid模式,而非純OpenFlow的方法來實現(xiàn)SDN。對于自己設(shè)備的可編程接口,除了支持OpenFlow外,還加入了JSON API、XMPP、Phyton API等。在芯片方面,它們有些使用商用芯片,有些混合使用商用芯片和自研芯片。而這些內(nèi)部研發(fā)和并購中,又以VMware收購Nicira和Cisco收購Insieme最為重磅——VMware收購Nicira后推出的NSX解決方案、Cisco收購Insieme后推出的ACI解決方案,都是將SDN和近年興起的網(wǎng)絡(luò)虛擬化技術(shù)完美融合在了一起。而Microsoft作為史上最成功的IT公司之一,自然不甘落后,Hyper-V在Windows Server 2012版本中也增加了基于其自主研發(fā)的NVGRE協(xié)議的網(wǎng)絡(luò)虛擬化功能。但Microsoft并沒有特別強調(diào)SDN,且刻意淡化OpenFlow(雖然它們是ONF的發(fā)起者和核心會員,且加入了ODL)。此外,Juniper收購SDN初創(chuàng)公司Contrail后也推出了同名的Contrail解決方案。這些不同廠商之間的解決方案的比較,會在下一章詳細分析。

主站蜘蛛池模板: 静宁县| 长阳| 舞阳县| 潮州市| 古蔺县| 安康市| 上虞市| 宁城县| 石狮市| 饶阳县| 呼和浩特市| 公主岭市| 桐乡市| 达州市| 青河县| 诏安县| 浦江县| 浮梁县| 盖州市| 开封县| 西乌珠穆沁旗| 鸡东县| 手游| 隆尧县| 肇州县| 临沭县| 景宁| 阿城市| 肥西县| 石景山区| 瑞丽市| 黔西| 禹城市| 卓尼县| 阿鲁科尔沁旗| 故城县| 新丰县| 阿拉尔市| 保德县| 仁布县| 荣成市|