SDN系統(tǒng)方法 | 3. 基本架構(gòu)

隨著互聯(lián)網(wǎng)和數(shù)據(jù)中心流量的爆炸式增長萄传,SDN已經(jīng)逐步取代靜態(tài)路由交換設(shè)備成為構(gòu)建網(wǎng)絡(luò)的主流方式剥纷,本系列是免費(fèi)電子書《Software-Defined Networks: A Systems Approach》的中文版醉拓,完整介紹了SDN的概念、原理查吊、架構(gòu)和實(shí)現(xiàn)方式醋界。原文: Software-Defined Networks: A Systems Approach

第3章 基本架構(gòu)

SDN是一種利用可編程的商用硬件構(gòu)建網(wǎng)絡(luò)的方法,從而通過軟件實(shí)現(xiàn)智能的包轉(zhuǎn)發(fā)控制以及其他網(wǎng)絡(luò)操作坡脐。實(shí)現(xiàn)這樣的設(shè)計(jì)不依賴任何特定協(xié)議棧泄私,而是需要一組開放API以及支持這些API的新軟件組件。本章將介紹SDN軟件棧的基本架構(gòu)备闲。

本章定義了這種軟件棧的一般架構(gòu),介紹了符合該架構(gòu)的一個(gè)示例集合捅暴,不過能夠集成到該架構(gòu)中的特定組件和工具其實(shí)有多種選擇恬砂。我們這樣做只是為了使討論更加具體,我們介紹的組件有兩個(gè)重要屬性蓬痒。第一泻骤,它們是開源的,可以在GitHub上免費(fèi)獲得梧奢。第二狱掂,它們旨在共同努力,提供全面的解決方案亲轨,覆蓋我們需要的所有場(chǎng)景趋惨。這兩個(gè)屬性使得任何人都可以構(gòu)建出在生產(chǎn)網(wǎng)絡(luò)中運(yùn)行的相同的端到端系統(tǒng)。

3.1 軟件棧(Software Stack)

圖15給出了軟件棧的概覽惦蚊,包括一個(gè)運(yùn)行本地交換機(jī)操作系統(tǒng)(Switch OS)裸金屬交換機(jī)(Bare-Metal Switch)器虾,由一組控制應(yīng)用程序(Control Applications) 控制讯嫂,這些控制程序托管在全局網(wǎng)絡(luò)操作系統(tǒng)(Network OS) 上。圖15右邊顯示了一組對(duì)應(yīng)的范例開源組件(SD-Fabric, ONOSStratum)兆沙,左邊顯示了相關(guān)的P4工具鏈欧芽。本章將介紹這些組件,后面章節(jié)將給出更多細(xì)節(jié)葛圃。

請(qǐng)注意此圖與第1章中的圖2之間的相似性千扔。兩幅圖都包含兩個(gè)開放接口: 一個(gè)在控制程序和網(wǎng)絡(luò)操作系統(tǒng)之間,另一個(gè)在網(wǎng)絡(luò)操作系統(tǒng)和底層可編程交換機(jī)之間库正。在圖15中昏鹃,這兩個(gè)接口被描述為“API shims”,在示例組件的上下文中诀诊,第一種接口對(duì)應(yīng)于gNMI洞渤、gNOIFlowObjective的組合,第二種接口對(duì)應(yīng)于gNMI属瓣、gNOIP4RuntimeOpenFlow的組合载迄。gRPC是這些API的傳輸協(xié)議,這是一種常規(guī)的實(shí)現(xiàn)選擇抡蛙。(注意护昧,與其他協(xié)議不同,OpenFlow不會(huì)在gRPC上運(yùn)行粗截。)

圖15. SDN軟件椡锇遥總體架構(gòu)。

重要的是要記住熊昌,圖15中列出的軟件組件都對(duì)應(yīng)于活躍開源項(xiàng)目绽榛,因此會(huì)繼續(xù)發(fā)展(就像它們的API一樣)。每個(gè)組件的特定版本(及其相關(guān)API)已經(jīng)集成并部署到試驗(yàn)和生產(chǎn)環(huán)境中婿屹。例如灭美,雖然圖中顯示P4Runtime是Switch OS導(dǎo)出的候選控制接口,但也有一些部署的解決方案使用OpenFlow昂利。(包括Comcast的部署届腐。)類似的,雖然圖中顯示gNMI/gNOI作為交換機(jī)的配置/操作接口蜂奸,但也有使用NETCONF的解決方案犁苏。

本書的目的不是要試圖跟蹤所有可能的組合的組件版本和API,而是在圖15中選擇專注于單一一致的堆棧扩所,因?yàn)檫@代表了迄今為止我們基于早期軟件棧所能做出的關(guān)于"正確"方法的最佳判斷。

3.1.1 交換機(jī)實(shí)現(xiàn) vs 主機(jī)實(shí)現(xiàn)(Switch vs Host Implementation)

圖15顯示了從單一交換機(jī)視角出發(fā)的軟件棧視圖碌奉,但是從網(wǎng)絡(luò)視角分析也很重要寒砖。圖16通過關(guān)注連接虛擬機(jī)(VM)的網(wǎng)絡(luò)端到端路徑給出了這樣一個(gè)視角嫉拐。

圖16. 軟件定義網(wǎng)絡(luò)的端到端視角哩都,包括終端主機(jī)和托管虛擬機(jī)日麸。

這一視圖突出了系統(tǒng)的兩個(gè)重要方面概行。首先強(qiáng)調(diào)了網(wǎng)絡(luò)操作系統(tǒng)(如ONOS)是網(wǎng)絡(luò)范圍內(nèi)的盖呼,而交換機(jī)操作系統(tǒng)(如Stratum)在每個(gè)交換機(jī)內(nèi)儒鹿。

其次,SDN軟件棧的一部分運(yùn)行在終端主機(jī)上约炎。尤其是需要在服務(wù)器管理程序中運(yùn)行虛擬交換機(jī)(vSwitch, Virtual Switch) 軟件蟹瘾,負(fù)責(zé)將數(shù)據(jù)包轉(zhuǎn)發(fā)到VM以及轉(zhuǎn)發(fā)從VM返回的包。(當(dāng)然狸捕,并不是每個(gè)終端主機(jī)都運(yùn)行VM众雷,但類似架構(gòu)同樣適用于容器主機(jī)或裸金屬服務(wù)器。)就像物理交換機(jī)一樣鸡岗,vSwitch將數(shù)據(jù)包從輸入端口轉(zhuǎn)發(fā)到輸出端口纯蛾,但這些是連接到VM(或容器)的虛擬端口,而不是連接到物理機(jī)器的物理端口。

幸運(yùn)的是碰煌,可以把vSwitch看作物理交換機(jī)绅作,包括其支持的API。注意一個(gè)實(shí)現(xiàn)細(xì)節(jié)个少,即vSwitch是在通用處理器上而不是在專用集成電路(ASIC)上通過軟件實(shí)現(xiàn)的。因此作為軟件交換機(jī)壳澳,大大降低了引入額外功能的障礙茫经,從而能夠提供豐富、動(dòng)態(tài)的功能集抹镊。例如荤傲,OVS(Open vSwitch) 是一款應(yīng)用廣泛的開源vSwitch,支持OpenFlow作為北向API终佛,構(gòu)成了原有Nicira網(wǎng)絡(luò)虛擬化平臺(tái)的數(shù)據(jù)平面妓湘。OVS可以與一系列補(bǔ)充工具集成榜贴,比如另一個(gè)開源組件DPDK(數(shù)據(jù)平面開發(fā)工具包, Data Plane Development Kit),從而優(yōu)化x86處理器上的數(shù)據(jù)包轉(zhuǎn)發(fā)操作鹃共。雖然這是一個(gè)重要的主題驶拱,但本書不會(huì)探討vSwitch(如OVS或其他終端主機(jī)優(yōu)化)的所有可能性蓝纲,而是像對(duì)待端到端路徑上的任何其他交換機(jī)一樣對(duì)待vSwitch。

圖16顯示的另一個(gè)實(shí)現(xiàn)細(xì)節(jié)是永丝,主機(jī)可能用智能網(wǎng)卡(SmartNIC, Smart Network Interface Card) 來輔助(甚至取代)vSwitch箭养。廠商將內(nèi)核功能卸載到網(wǎng)卡上已經(jīng)有很長的歷史了(例如,從計(jì)算TCP/IP checksum到支持VM)喝检,但在SDN環(huán)境中,一種可能的有趣應(yīng)用是復(fù)制網(wǎng)絡(luò)交換機(jī)上的轉(zhuǎn)發(fā)流水線澡谭。這同樣有一系列可能的實(shí)現(xiàn)選擇译暂,包括FPGA和ASIC撩炊,以及網(wǎng)卡是固定功能還是可編程(使用P4)。就我們的目的而言伯顶,將把這種智能網(wǎng)卡當(dāng)作端到端路徑上的另一個(gè)交換組件祭衩。

主機(jī)中心視角

本書采用面向網(wǎng)絡(luò)的SDN視角阅签,將終端主機(jī)(運(yùn)行在主機(jī)操作系統(tǒng)中的虛擬交換機(jī)和連接主機(jī)到網(wǎng)絡(luò)的網(wǎng)卡)視為網(wǎng)絡(luò)的擴(kuò)展,在網(wǎng)絡(luò)操作系統(tǒng)的控制下運(yùn)行路克。不過以主機(jī)為中心的觀點(diǎn)同樣有效养交,更重要的是碎连,其附帶了一個(gè)健壯的開源軟件生態(tài)系統(tǒng),作為主機(jī)操作系統(tǒng)的一部分運(yùn)行廉嚼。

DPDK是其中一個(gè)例子倒戏,但另一個(gè)受到關(guān)注的是eBPF(擴(kuò)展伯克利包過濾器, extended Berkeley Packet Filter)和XDP(快速數(shù)據(jù)路徑, eXpress Data Path)的組合峭梳,它們提供了一種方法來在OS內(nèi)核(甚至可能在SmartNIC上)中編程通用的Match-Action規(guī)則。這在精神上與OpenFlow和P4相似捂寿,只是它們?cè)试SAction部分是任意程序孵运。相比之下,OpenFlow定義了一組固定的動(dòng)作驳概,而P4是表達(dá)動(dòng)作的特定語言(例如顺又,不包括循環(huán))等孵。當(dāng)Action必須在固定周期內(nèi)執(zhí)行時(shí),這是必要的果录,例如基于交換機(jī)的轉(zhuǎn)發(fā)流水線咐熙。它還使數(shù)據(jù)平面的形式化驗(yàn)證(formal verification)成為可能棋恼,這是第10章討論的一個(gè)很有前途的機(jī)會(huì)。

3.2 裸金屬交換機(jī)(Bare-Metal Switch)

我們從圖15和圖16所示軟件棧從下往上介紹琉苇,底層的網(wǎng)絡(luò)數(shù)據(jù)平面是由一組互連的裸金屬交換機(jī)實(shí)現(xiàn)悦施。我們現(xiàn)在重點(diǎn)關(guān)注單個(gè)交換機(jī)抡诞,整個(gè)網(wǎng)絡(luò)拓?fù)涫怯蛇\(yùn)行在軟件棧頂層的控制程序決定,后面我們會(huì)介紹一個(gè)管理葉脊拓?fù)涞目刂茟?yīng)用程序肴熏。

該架構(gòu)與交換機(jī)供應(yīng)商無關(guān)顷窒,本章介紹的完整軟件棧運(yùn)行在基于Tofino和Tomahawk交換芯片構(gòu)建的交換機(jī)上,分別由Barefoot Networks(現(xiàn)在是英特爾)和博通制造励烦。Tofino芯片實(shí)現(xiàn)了基于PISA的可編程轉(zhuǎn)發(fā)流水線泼诱,而Tomahawk芯片實(shí)現(xiàn)了固定功能流水線。

兩種芯片都通過兩個(gè)P4程序定義轉(zhuǎn)發(fā)流水線屉栓,第一個(gè)(forward.p4)指定轉(zhuǎn)發(fā)行為友多,第二個(gè)(arch.p4)指定目標(biāo)轉(zhuǎn)發(fā)芯片的邏輯架構(gòu)句灌。P4編譯器生成加載到網(wǎng)絡(luò)操作系統(tǒng)和交換機(jī)中的目標(biāo)文件,圖15中我們沒有指出這些目標(biāo)文件(后面將在第4章和第5章中介紹詳細(xì)信息)胰锌,但是兩個(gè)組件都需要感知輸出邏輯资昧,因?yàn)橐粋€(gè)實(shí)現(xiàn)轉(zhuǎn)發(fā)行為(交換機(jī)),而另一個(gè)控制轉(zhuǎn)發(fā)行為(網(wǎng)絡(luò)操作系統(tǒng))撤缴。

我們將在第4章介紹編譯器工具鏈的細(xì)節(jié)∵闯現(xiàn)在棺亭,我們將只回答為什么在有固定功能交換芯片的情況下,還需要一個(gè)P4程序(我們沒有使用P4來修改其固定行為)嗽桩。簡(jiǎn)單總結(jié)一下凄敢,因?yàn)槲覀冃枰降霓D(zhuǎn)發(fā)流水線規(guī)范來生成數(shù)據(jù)平面API涝缝。P4程序提供了轉(zhuǎn)發(fā)流水線的抽象模型譬重,無論芯片的實(shí)際硬件流水線是固定的還是可編程的害幅,我們?nèi)匀恍枰廊绾螌⒊橄罅魉€映射到物理流水線上岂昭,這就是arch.p4起作用的地方约啊。對(duì)于可編程芯片佣赖,forward.p4實(shí)際上定義了流水線,而對(duì)于固定功能芯片外傅,僅僅只是通過forward.p4描述流水線俩檬。我們?nèi)匀恍枰?code>forward.p4,因?yàn)樵趦煞N情況下工具鏈都需要使用它以及arch.p4生成位于控制平面和數(shù)據(jù)平面之間的API技竟。

3.3 交換機(jī)操作系統(tǒng)(Switch OS)

從基本硬件往上看屈藐,每個(gè)交換機(jī)運(yùn)行一個(gè)本地交換機(jī)操作系統(tǒng)联逻。不要與管理交換機(jī)網(wǎng)絡(luò)的網(wǎng)絡(luò)操作系統(tǒng)混淆,這個(gè)交換機(jī)操作系統(tǒng)運(yùn)行在交換機(jī)內(nèi)部的商品處理器上(圖15中沒有顯示)锨推。它負(fù)責(zé)處理發(fā)送給交換機(jī)的API調(diào)用箫踩,例如來自網(wǎng)絡(luò)操作系統(tǒng)的調(diào)用境钟,以及對(duì)交換機(jī)內(nèi)部資源采取適當(dāng)?shù)牟僮鳎袝r(shí)會(huì)影響交換機(jī)芯片洞渔。

有多種開源交換機(jī)操作系統(tǒng)(包括最初由Microsoft Azure開發(fā)的SONiC)磁椒,但我們使用StratumOpen Network Linux(ONL) 的組合作為主要示例。ONL是Linux的交換機(jī)發(fā)行版(最初由Big Switch Networks提供)本辐,而Stratum(最初由谷歌開發(fā))主要負(fù)責(zé)外部API和內(nèi)部交換機(jī)資源之間的轉(zhuǎn)換医增。因此叶骨,我們有時(shí)把Stratum稱為瘦交換機(jī)操作系統(tǒng)(Thin Switch OS) 忽刽。

Stratum在交換機(jī)與外部世界的所有交互中起到中介作用,包括加載P4編譯器生成的目標(biāo)文件今膊,該文件定義了數(shù)據(jù)平面和控制平面之間的契約歉甚。契約有效的用自動(dòng)生成的規(guī)范替換了OpenFlow的流規(guī)則抽象纸泄。其他Stratum管理API定義如下:

  • P4Runtime: 控制轉(zhuǎn)發(fā)行為的運(yùn)行時(shí)接口,是填充轉(zhuǎn)發(fā)表和操作轉(zhuǎn)發(fā)表狀態(tài)的關(guān)鍵雪营。P4Runtime獨(dú)立于任何特定P4程序献起,并且與底層硬件無關(guān)镣陕。這與OpenFlow形成了鮮明對(duì)比呆抑,OpenFlow對(duì)轉(zhuǎn)發(fā)模型以及如何與控制平面交互有著相當(dāng)明確的規(guī)定。(為了完整起見厌殉,圖15還列出了OpenFlow作為另一個(gè)控制接口。)
  • gNMI(gRPC Network Management Interface): 用于設(shè)置和檢索配置狀態(tài)器紧。gNMI通常與OpenConfig YANG模型配對(duì)铲汪,后者定義配置和狀態(tài)樹的結(jié)構(gòu)摩桶。
  • gNOI(gRPC Network OperationsInterfaces): 用于設(shè)置和檢索運(yùn)行狀態(tài)硝清,如證書管理转晰、設(shè)備測(cè)試查邢、軟件升級(jí)、組網(wǎng)故障處理等缓苛。

如果你還記得在第一章中介紹的控制和配置之間的區(qū)別未桥,那么你會(huì)認(rèn)出P4Runtime就是控制API芥备,而gNMI/gNOI組合在一起就是交換機(jī)傳統(tǒng)配置API的現(xiàn)代版本萌壳。后一種API在歷史上被稱為OAM接口(即"Operations, Administration, and Maintenance"),通常被實(shí)現(xiàn)為命令行接口(當(dāng)然缤骨,這不是真正的API)绊起。

3.4 網(wǎng)絡(luò)操作系統(tǒng)(Network OS)

網(wǎng)絡(luò)操作系統(tǒng)是配置和控制交換機(jī)網(wǎng)絡(luò)的平臺(tái)褐望,作為邏輯上集中的SDN控制器在交換機(jī)之外運(yùn)行,并在全網(wǎng)范圍內(nèi)管理一組交換機(jī)荡碾。這個(gè)角色的核心是負(fù)責(zé)監(jiān)控交換機(jī)狀態(tài)(例如局装,檢測(cè)端口和鏈路故障)铐尚,維護(hù)反映網(wǎng)絡(luò)當(dāng)前狀態(tài)和拓?fù)涞娜忠晥D,并為任何感興趣的控制程序提供該視圖玫膀。這些控制程序反過來"指示"網(wǎng)絡(luò)操作系統(tǒng)根據(jù)它們提供的服務(wù)來控制底層交換機(jī)的數(shù)據(jù)包流爹脾,這些"控制指令"的表達(dá)方式是網(wǎng)絡(luò)操作系統(tǒng)API的關(guān)鍵方面。

我們基于ONOS(開放網(wǎng)絡(luò)操作系統(tǒng), Open Network Operating System) 這一特定網(wǎng)絡(luò)操作系統(tǒng)作為范例來完整描述這一概念解阅,ONOS在性能泌霍、可伸縮性和可用性方面是最好的朱转。簡(jiǎn)單來說,ONOS負(fù)責(zé)三件事情:

  • 管理拓?fù)?Managing Topology): 跟蹤網(wǎng)絡(luò)基礎(chǔ)設(shè)施及其互聯(lián)設(shè)備锈津,為平臺(tái)和其他應(yīng)用程序提供網(wǎng)絡(luò)環(huán)境的共享視圖琼梆。
  • 管理配置(Managing Configuration): 幫助在多個(gè)網(wǎng)絡(luò)設(shè)備上執(zhí)行窿吩、跟蹤纫雁、回滾和驗(yàn)證原子配置操作。這可以有效反映每個(gè)交換機(jī)的配置和操作接口(也使用gNMI和gNOI)刽脖,但是在網(wǎng)絡(luò)級(jí)別而不是設(shè)備級(jí)別上實(shí)現(xiàn)的曲管。
  • 控制交換(Controlling Switches): 控制網(wǎng)絡(luò)交換機(jī)的數(shù)據(jù)平面數(shù)據(jù)包處理流水線,并對(duì)流水線內(nèi)的流規(guī)則腊徙、組撬腾、監(jiān)控等構(gòu)建塊進(jìn)行后續(xù)控制民傻。

關(guān)于最后一個(gè)角色场斑,ONOS導(dǎo)出了一個(gè)北向FlowObjectives抽象和簸,以一種獨(dú)立于流水線的方式泛化流規(guī)則接口(在第6章中有更詳細(xì)的描述)碟刺,但不像獨(dú)立交換機(jī)導(dǎo)出的控制接口那樣標(biāo)準(zhǔn)化[1]半沽。與傳統(tǒng)服務(wù)器操作系統(tǒng)一樣者填,基于ONOS API上的應(yīng)用程序不容易移植到另一個(gè)網(wǎng)絡(luò)操作系統(tǒng)上。對(duì)這個(gè)接口的需求是開放的以及定義良好的心墅,當(dāng)前并不是只有一個(gè)這樣的接口怎燥。如果隨著時(shí)間的推移蜜暑,如果業(yè)界對(duì)網(wǎng)絡(luò)操作系統(tǒng)接口達(dá)成了共識(shí)肛捍,那么應(yīng)用程序?qū)⒏菀妆灰浦病5拖穹?wù)器操作系統(tǒng)一樣棺禾,在軟件棧中層級(jí)越高的操作系統(tǒng)悍手,就越難以達(dá)成這樣的共識(shí)坦康。

[1] 我們沒有說FlowObjectives是控制交換機(jī)的理想接口。API會(huì)出于實(shí)際需要而發(fā)展古胆,允許開發(fā)人員處理不同的流水線逸绎。定義通用接口是正在進(jìn)行的研究的主題棺牧。

最后朗儒,盡管圖15沒有顯示關(guān)于ONOS內(nèi)部的任何細(xì)節(jié)醉锄,但為了更好的理解其在更高層面上所扮演的角色恳不,我們注意到在任何網(wǎng)絡(luò)操作系統(tǒng)中最關(guān)鍵的子系統(tǒng)是可伸縮鍵/值存儲(chǔ)(Scalable Key/Value Store)。由于ONOS提供了一個(gè)邏輯上集中的網(wǎng)絡(luò)視圖规求,其性能颓哮、可伸縮性和可用性的關(guān)鍵在于如何存儲(chǔ)這些狀態(tài)鸵荠。在ONOS中,這個(gè)存儲(chǔ)是由一個(gè)名為Atomix的開源項(xiàng)目提供的哨坪,該項(xiàng)目實(shí)現(xiàn)了RAFT共識(shí)算法当编。像Atomix這樣的存儲(chǔ)服務(wù)是當(dāng)今幾乎所有水平可伸縮云服務(wù)的基石忿偷,我們將在第6章中詳細(xì)介紹臊泌。

3.5 葉棘網(wǎng)絡(luò)(Leaf-Spine Fabric)

由于我們使用ONOS作為網(wǎng)絡(luò)操作系統(tǒng),所以僅限于使用ONOS托管的SDN控制應(yīng)用程序渠概。為了說明問題茶凳,我們使用SD-Fabric作為控制應(yīng)用程序,它在可編程交換機(jī)網(wǎng)絡(luò)上實(shí)現(xiàn)了葉棘網(wǎng)絡(luò)播揪。意思是贮喧,SD-Fabric定義了特定的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),特別是數(shù)據(jù)中心集群常見的葉脊拓?fù)浣Y(jié)構(gòu)猪狈。如2.3節(jié)所述箱沦,該拓?fù)浒ㄒ唤M葉交換機(jī),每一個(gè)都作為ToR交換機(jī)(即連接單個(gè)機(jī)架中的所有服務(wù)器)雇庙,然后葉交換機(jī)再由一組脊交換機(jī)互連。

從架構(gòu)上來說状共,SD-Fabric扮演了三個(gè)角色。首先谁帕,提供了一個(gè)交換結(jié)構(gòu)峡继,在多機(jī)架集群中將服務(wù)器和運(yùn)行在這些服務(wù)器上的虛擬機(jī)相互連接。其次匈挖,使用BGP將集群作為整體連接到對(duì)等網(wǎng)絡(luò)碾牌,包括Internet(也就是說,其行為很像路由器)儡循。最后舶吗,將集群作為整體連接到下游接入網(wǎng)(即PON、RAN等接入網(wǎng))择膝。換句話說誓琼,與其將SD-Fabric看作傳統(tǒng)的在數(shù)據(jù)中心內(nèi)部構(gòu)建的葉脊網(wǎng)絡(luò),不如將其看作是運(yùn)行在網(wǎng)絡(luò)邊緣的互連系統(tǒng),幫助連接訪問特定邊緣云和基于IP的數(shù)據(jù)中心云腹侣。

在實(shí)現(xiàn)方面叔收,SD-Fabric實(shí)際上對(duì)應(yīng)一套運(yùn)行在ONOS上的控制程序,而不是單一應(yīng)用程序傲隶。該套件支持多種控制平面特性饺律,包括:

  • VLAN和L2橋接
  • IPv4和IPv6單播/組播路由
  • DHCP L3中繼
  • 服務(wù)器和上行路由器的雙歸屬冗余
  • QinQ轉(zhuǎn)發(fā)/終止
  • 基于MPLS的偽連接

對(duì)于每個(gè)特性,都有相應(yīng)的控制程序與ONOS交互跺株,通過觀察網(wǎng)絡(luò)拓?fù)涞淖兓l(fā)出Flow Objective而實(shí)現(xiàn)复濒,而不是基于任何傳統(tǒng)路由器/交換機(jī)的標(biāo)準(zhǔn)協(xié)議實(shí)現(xiàn)。只有當(dāng)SD-Fabric需要與外部通信(例如乒省,上游城市/核心路由器)時(shí)巧颈,才會(huì)涉及到傳統(tǒng)協(xié)議,這時(shí)需要使用標(biāo)準(zhǔn)BGP(由開源Quagga服務(wù)器實(shí)現(xiàn))作儿。這實(shí)際上是SDN環(huán)境的共同特征: 內(nèi)部或在新領(lǐng)域避免傳統(tǒng)路由協(xié)議洛二,但與外部世界的交互仍然需要。

圖17. SD-Fabric控制程序套件攻锰,管理(可能是分布式的)葉脊網(wǎng)絡(luò)晾嘶。

最后,SD-Fabric有時(shí)部署在一個(gè)站點(diǎn)娶吞,多個(gè)RAN基站通過SD-Fabric葉交換機(jī)連接垒迂。但是,SD-Fabric還可以使用多層棘網(wǎng)絡(luò)擴(kuò)展到多個(gè)站點(diǎn)妒蛇,如圖17所示机断。第7章會(huì)更詳細(xì)介紹這部分內(nèi)容。

你好绣夺,我是俞凡吏奸,在Motorola做過研發(fā),現(xiàn)在在Mavenir做技術(shù)工作陶耍,對(duì)通信奋蔚、網(wǎng)絡(luò)、后端架構(gòu)烈钞、云原生泊碑、DevOps、CICD毯欣、區(qū)塊鏈馒过、AI等技術(shù)始終保持著濃厚的興趣,平時(shí)喜歡閱讀酗钞、思考腹忽,相信持續(xù)學(xué)習(xí)来累、終身成長,歡迎一起交流學(xué)習(xí)留凭。
微信公眾號(hào):DeepNoMind

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末佃扼,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子蔼夜,更是在濱河造成了極大的恐慌兼耀,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,324評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件求冷,死亡現(xiàn)場(chǎng)離奇詭異瘤运,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)匠题,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,356評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門拯坟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人韭山,你說我怎么就攤上這事郁季。” “怎么了钱磅?”我有些...
    開封第一講書人閱讀 162,328評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵梦裂,是天一觀的道長。 經(jīng)常有香客問我盖淡,道長年柠,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,147評(píng)論 1 292
  • 正文 為了忘掉前任褪迟,我火速辦了婚禮冗恨,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘味赃。我一直安慰自己掀抹,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,160評(píng)論 6 388
  • 文/花漫 我一把揭開白布心俗。 她就那樣靜靜地躺著渴丸,像睡著了一般。 火紅的嫁衣襯著肌膚如雪另凌。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,115評(píng)論 1 296
  • 那天戒幔,我揣著相機(jī)與錄音吠谢,去河邊找鬼。 笑死诗茎,一個(gè)胖子當(dāng)著我的面吹牛工坊,可吹牛的內(nèi)容都是我干的献汗。 我是一名探鬼主播,決...
    沈念sama閱讀 40,025評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼王污,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼罢吃!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起昭齐,我...
    開封第一講書人閱讀 38,867評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤尿招,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后阱驾,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體就谜,經(jīng)...
    沈念sama閱讀 45,307評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,528評(píng)論 2 332
  • 正文 我和宋清朗相戀三年里覆,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了丧荐。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,688評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡喧枷,死狀恐怖虹统,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情隧甚,我是刑警寧澤车荔,帶...
    沈念sama閱讀 35,409評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站呻逆,受9級(jí)特大地震影響夸赫,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜咖城,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,001評(píng)論 3 325
  • 文/蒙蒙 一茬腿、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧宜雀,春花似錦切平、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,657評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至简烘,卻和暖如春苔严,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背孤澎。 一陣腳步聲響...
    開封第一講書人閱讀 32,811評(píng)論 1 268
  • 我被黑心中介騙來泰國打工届氢, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人覆旭。 一個(gè)月前我還...
    沈念sama閱讀 47,685評(píng)論 2 368
  • 正文 我出身青樓退子,卻偏偏與公主長得像岖妄,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子寂祥,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,573評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容