本發(fā)明涉及計算機網(wǎng)絡(luò),更具體地,涉及在計算機網(wǎng)絡(luò)內(nèi)轉(zhuǎn)發(fā)網(wǎng)絡(luò)業(yè)務(wù)。
背景技術(shù):
數(shù)據(jù)中心是為訂閱用戶和其他實體提供數(shù)據(jù)服務(wù)和備份以及其他基于網(wǎng)絡(luò)的服務(wù)的專門設(shè)施。最簡單形式的數(shù)據(jù)中心可包括承載所有基礎(chǔ)設(shè)施設(shè)備的單個設(shè)施,諸如網(wǎng)絡(luò)和存儲系統(tǒng)、服務(wù)器、冗余電源和環(huán)境控制。
可使用位于各種物理主機設(shè)施(站點)中的用戶支持設(shè)備來為地理上分散的組織提供更復雜的數(shù)據(jù)中心。因此,已經(jīng)開發(fā)了將兩個以上的物理數(shù)據(jù)中心互聯(lián)以形成單個邏輯數(shù)據(jù)中心的技術(shù)。一個實例層2(l2)互聯(lián)是穿透耦接多個物理數(shù)據(jù)中心的中間網(wǎng)絡(luò)的以太網(wǎng)虛擬專用網(wǎng)(evpn)數(shù)據(jù)中心互聯(lián)(dci)。
evpndci常常用于以透明方式穿透中間層3(l3)網(wǎng)絡(luò)來擴展地理上分離的數(shù)據(jù)中心的兩個或更多個遠程層2(l2)用戶網(wǎng)絡(luò),即,就好像中間l3網(wǎng)絡(luò)不存在。evpn經(jīng)由中間網(wǎng)絡(luò)在用戶網(wǎng)絡(luò)之間傳輸l2通信,諸如以太網(wǎng)數(shù)據(jù)包或“幀”。在典型的配置中,耦接到用戶網(wǎng)絡(luò)的用戶邊緣(ce)網(wǎng)絡(luò)設(shè)備的提供商邊緣(pe)網(wǎng)絡(luò)設(shè)備(例如,路由器和/或交換機)在提供商網(wǎng)絡(luò)內(nèi)定義標簽交換路徑(lsp)(也稱為偽線),以攜帶封裝的l2通信,就好像這些用戶網(wǎng)絡(luò)直接附接至同一局域網(wǎng)(lan)。在一些配置中,pe網(wǎng)絡(luò)設(shè)備也可通過ip基礎(chǔ)設(shè)施連接,在這種情況下,可在數(shù)據(jù)中心之間使用ip/gre隧道或其他ip隧道。
通過活動備用evpn多宿主,用戶邊緣設(shè)備可通過由多個pe網(wǎng)絡(luò)設(shè)備提供的以太網(wǎng)段多宿主到evpn。也就是說,多個pe網(wǎng)絡(luò)設(shè)備通過單獨的訪問鏈路(邏輯上作為單個以太網(wǎng)段操作)耦接到數(shù)據(jù)中心,并且因此為本地數(shù)據(jù)中心內(nèi)的一個或多個用戶網(wǎng)絡(luò)的evpn提供多宿主連接。但是,在活動備用配置中,以太網(wǎng)段中的多個pe網(wǎng)絡(luò)設(shè)備中只有一個pe網(wǎng)絡(luò)設(shè)備相對于在以太網(wǎng)段上運行的每個evpn實例作為指定的轉(zhuǎn)發(fā)器(df)操作,并且使用以太網(wǎng)段將evpn實例的入站以太網(wǎng)幀從evpn向多宿主用戶網(wǎng)絡(luò)轉(zhuǎn)發(fā)。
技術(shù)實現(xiàn)要素:
一般來說,描述了用于避免由于活動備用多宿主配置中指定的轉(zhuǎn)發(fā)(df)故障,在多個數(shù)據(jù)中心網(wǎng)絡(luò)之間的多宿主以太網(wǎng)虛擬專用網(wǎng)(evpn)數(shù)據(jù)中心互聯(lián)(dci)中的業(yè)務(wù)黑洞的技術(shù)。在一些實例中,用于多宿主用戶網(wǎng)絡(luò)的evpn的多宿主提供商邊緣設(shè)備(pe)配置有用于根據(jù)覆蓋隧道協(xié)議操作的數(shù)據(jù)中心虛擬覆蓋網(wǎng)絡(luò)的相應(yīng)虛擬網(wǎng)絡(luò)接口的公共任播ip地址,諸如虛擬可擴展局域網(wǎng)(vxlan)、使用通用路由封裝的網(wǎng)絡(luò)虛擬化(nvgre)和無狀態(tài)傳輸隧道(stt)。一旦選擇為用于以太網(wǎng)段/用戶網(wǎng)絡(luò)的覆蓋的虛擬網(wǎng)絡(luò)的活動指定轉(zhuǎn)發(fā)器(df),多宿主pe的dfpe解除對以太網(wǎng)段/虛擬網(wǎng)絡(luò)的流量轉(zhuǎn)發(fā),并且向用戶網(wǎng)絡(luò)通告用于任播ip地址的igp度量,該igp度量低于由任何非df備用pe路由器通告的igp度量。因為較低的igp度量表明較低的成本并且被路由協(xié)議視為較短的路由距離,所以多宿主到pe的用戶網(wǎng)絡(luò)設(shè)備從活動df接收遠程用戶網(wǎng)絡(luò)業(yè)務(wù),并且獲悉經(jīng)由任播ip地址可達遠程用戶設(shè)備。
活動df可隨后經(jīng)歷故障情況,諸如活動df本身的故障,以太網(wǎng)段故障或核心網(wǎng)絡(luò)隔離。響應(yīng)于檢測到活動df的故障,pe為以太網(wǎng)段選擇新df,新df然后向多宿主用戶網(wǎng)絡(luò)通告用于任播ip地址的較低igp度量。先前的df轉(zhuǎn)換到備用非df,并且通告比由新的活動df通告的igp度量更高的igp度量。igp網(wǎng)絡(luò)鏈路到活動df和備用非df的新的igp量度使得用戶網(wǎng)絡(luò)設(shè)備多宿主到pe,以經(jīng)由新的dfpe開始將業(yè)務(wù)轉(zhuǎn)發(fā)到遠程用戶設(shè)備,盡管先前已經(jīng)經(jīng)由已經(jīng)轉(zhuǎn)換到備用非df的角色的pe從遠程用戶設(shè)備接收業(yè)務(wù)。
所述技術(shù)可具有一個或多個優(yōu)點。例如,因為用于數(shù)據(jù)中心覆蓋的pe接口被配置有公共任播ip地址,所以這些技術(shù)可允許用戶網(wǎng)絡(luò)設(shè)備避免重新學習通過新的df可達到的遠程用戶設(shè)備媒體訪問控制(mac)地址。這在遠程用戶設(shè)備不再通過pe發(fā)送業(yè)務(wù)時、以及在具有不能檢測pe設(shè)備故障并執(zhí)行mac刷新響應(yīng)的用戶網(wǎng)絡(luò)設(shè)備的部署中是特別有用的。另外,如本文所描述的修改igp度量確保了用戶網(wǎng)絡(luò)設(shè)備將綁定到遠程用戶網(wǎng)絡(luò)綁定的業(yè)務(wù)引導到在活動-備用pe配置中活動地轉(zhuǎn)發(fā)業(yè)務(wù)的df。
在一個實例中,一種方法,包括:利用多個提供商邊緣設(shè)備的一個提供商邊緣設(shè)備(pe)執(zhí)行以太網(wǎng)虛擬專用網(wǎng)絡(luò)(evpn)實例,以在中間網(wǎng)絡(luò)上向一個或多個遠程提pe提供evpn,所述多個pe通過在活動-備用多鏈路以太網(wǎng)段上形成的覆蓋網(wǎng)絡(luò)耦接至多宿主的用戶邊緣設(shè)備(ce)。該方法進一步包括:利用所述pe設(shè)備,參與所述多個pe的一個pe的指定轉(zhuǎn)發(fā)器(df)選擇,以通過所述以太網(wǎng)段將來自所述evpn的數(shù)據(jù)包轉(zhuǎn)發(fā)到所述用戶網(wǎng)絡(luò)。該方法進一步包括:響應(yīng)于所述pe被選為所述df,利用所述pe根據(jù)內(nèi)部網(wǎng)關(guān)協(xié)議(igp)路由協(xié)議輸出igp消息,所述igp消息指定通過所述以太網(wǎng)段相應(yīng)的鏈路到達所述pe的虛擬網(wǎng)絡(luò)接口的度量,以指示所述ce將來自所述用戶網(wǎng)絡(luò)的網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)發(fā)到所述pe。
在另一實例中,pe包括連接到以太網(wǎng)段的多個鏈路之一的網(wǎng)絡(luò)接口,其中pe是耦接到多宿主用戶邊緣設(shè)備(ce)的多個pe中的一個。pe進一步包括一個或多個處理器,所述處理器被配置為,執(zhí)行以太網(wǎng)虛擬專用網(wǎng)絡(luò)(evpn)實例,以通過中間網(wǎng)絡(luò)向一個或多個遠程提供商邊緣設(shè)備提供evpn。該處理器被配置為:參與多個提供商邊緣設(shè)備的一個提供商邊緣設(shè)備的指定轉(zhuǎn)發(fā)器(df)選擇,以通過所述以太網(wǎng)段將來自所述以太網(wǎng)虛擬專用網(wǎng)絡(luò)的數(shù)據(jù)包轉(zhuǎn)發(fā)到用戶網(wǎng)絡(luò)。該處理進一步被配置為響應(yīng)于被選為df,根據(jù)內(nèi)部網(wǎng)關(guān)協(xié)議(igp)路由協(xié)議輸出igp消息,該igp消息指定通過以太網(wǎng)段的相應(yīng)鏈路到達pe的度量,以指示ce將來自用戶網(wǎng)絡(luò)的網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)發(fā)到pe。
在另一實例中,非暫時性計算機可讀介質(zhì)包括用于使網(wǎng)絡(luò)設(shè)備的可編程處理器執(zhí)行本文所描述的方法的指令。
在附圖和下面的描述中闡述了一個或多個實例的細節(jié)。
附圖說明
圖1至2是示出根據(jù)本公開中描述的技術(shù)的實例網(wǎng)絡(luò)系統(tǒng)的框圖,其中提供商邊緣設(shè)備使用以太網(wǎng)虛擬專用網(wǎng)(evpn)技術(shù)提供數(shù)據(jù)中心互聯(lián)。
圖3是示出被配置為根據(jù)本文描述的技術(shù)操作的實例網(wǎng)絡(luò)設(shè)備的框圖。
圖4是示出根據(jù)本公開中描述的技術(shù)的網(wǎng)絡(luò)設(shè)備的實例操作模式的框圖。
在整個附圖和文本中,相同的附圖標記表示相同的元件。
具體實施方式
圖1至2是示出根據(jù)本公開中描述的技術(shù)的實例網(wǎng)絡(luò)系統(tǒng)的框圖,其中提供商邊緣設(shè)備使用以太網(wǎng)虛擬專用網(wǎng)(evpn)技術(shù)提供數(shù)據(jù)中心互聯(lián)。在圖1的實例中,數(shù)據(jù)中心5a-5b(統(tǒng)稱為“數(shù)據(jù)中心5”)表示具有向用戶和其他實體提供數(shù)據(jù)的存儲、管理和傳播的專用設(shè)施的網(wǎng)絡(luò)。實例數(shù)據(jù)中心5a,5b包括具有用戶設(shè)備的多個物理和/或邏輯的用戶網(wǎng)絡(luò),諸如具有為用戶提供計算環(huán)境的用戶設(shè)備4a-4d(統(tǒng)稱為“用戶設(shè)備4”)的用戶網(wǎng)絡(luò)7a,7b。用戶設(shè)備4可共處于數(shù)據(jù)中心5中或以其它方式連接到數(shù)據(jù)中心5,以請求和接收由數(shù)據(jù)中心5提供的服務(wù)和數(shù)據(jù)。在一些情況下,數(shù)據(jù)中心5a,5b是總的數(shù)據(jù)中心的在地理上分散的設(shè)施,或者“站點”,以提供針對數(shù)據(jù)中心之一的本地故障的地理冗余。
在該實例中,數(shù)據(jù)中心5通過廣域網(wǎng)(wan)3互聯(lián)。一般來說,wan3表示層3(l3)網(wǎng)絡(luò),并且可包括在數(shù)據(jù)中心5之間的鏈路上傳輸數(shù)據(jù)業(yè)務(wù)的多個中間路由和交換設(shè)備(未示出)。例如,廣域網(wǎng)3可實現(xiàn)多協(xié)議標簽交換(mpls)技術(shù),并且可被稱為mpls/ip網(wǎng)絡(luò)。雖然描述為廣域網(wǎng),但是wan3可表示能夠傳送在提供商邊緣路由器(pe)6之間交換的業(yè)務(wù)的任何網(wǎng)絡(luò)。
例如,提供商邊緣路由器(pe)6a-6b和12a-12b(統(tǒng)稱為“pe6,12”)可利用wan3上的以太網(wǎng)vpn(e-vpn)技術(shù),在數(shù)據(jù)中心5a和5b之間提供evpn數(shù)據(jù)中心互聯(lián)(dci)。以這種方式,pe6以透明的方式(也就是好像數(shù)據(jù)中心5直接橋接在層2)穿透中間網(wǎng)絡(luò)(wan3),提供evpn實例23(以下稱為“evpn23”)以傳輸用于數(shù)據(jù)中心5的用戶網(wǎng)絡(luò)7的l2通信。
具體地,pe6,12中的每一個提供evpn23以穿透wan3為數(shù)據(jù)中心5的一個或多個用戶網(wǎng)絡(luò)7傳輸l2通信(諸如以太網(wǎng)數(shù)據(jù)包或“幀”)。此外,在每個數(shù)據(jù)中心5內(nèi)設(shè)置的不同的用戶網(wǎng)絡(luò)7的用戶設(shè)備4可虛擬地隔離到不同的虛擬可擴展lan(vxlan)14中。盡管關(guān)于vxlan的描述為提供用于覆蓋虛擬網(wǎng)絡(luò)的隧道,但是數(shù)據(jù)中心5的一些實例可使用網(wǎng)絡(luò)虛擬化路,使用通用路由封裝(nvgre)、無狀態(tài)傳輸隧道(stt)或其他虛擬網(wǎng)絡(luò)隧道協(xié)議。
數(shù)據(jù)中心5包括相應(yīng)的網(wǎng)絡(luò)15a-15b,網(wǎng)絡(luò)15a-15b每個包括使用針對該用戶的相應(yīng)vxlan14a-14b傳輸用于相應(yīng)用戶網(wǎng)絡(luò)7a,7b的l2通信的傳輸交換機。每個網(wǎng)絡(luò)15是用于vxlan14的底層網(wǎng)絡(luò),并且每個本地執(zhí)行用于在相應(yīng)網(wǎng)絡(luò)內(nèi)的網(wǎng)絡(luò)15路由器之間內(nèi)部交換路由信息的層3內(nèi)部網(wǎng)關(guān)協(xié)議(igp)路由協(xié)議。網(wǎng)絡(luò)15在本文中可替代地稱為“igp網(wǎng)絡(luò)”、“底層網(wǎng)絡(luò)”或“底層igp網(wǎng)絡(luò)”。實例igp路由協(xié)議包括開放最短路徑優(yōu)先(ospf)、中間系統(tǒng)到中間系統(tǒng)(is-is)和路由信息協(xié)議(rip)。
這樣,pe6,12可從本地vxlan14接收用戶業(yè)務(wù),并且穿透wan3經(jīng)由evpn23轉(zhuǎn)發(fā)業(yè)務(wù)。類似地,pe6可從evpn23接收隧道l2通信,并且經(jīng)由vxlan14轉(zhuǎn)發(fā)l2通信以經(jīng)由相應(yīng)的底層網(wǎng)絡(luò)15通過本地數(shù)據(jù)中心5傳輸。
用戶網(wǎng)絡(luò)7經(jīng)由具有配置有vxlan14的接口的用戶邊緣設(shè)備8a,8b到達由pe6,12提供的evpn23。pe6,12使用evpn23在ce設(shè)備8之間提供虛擬l2橋接連接。pe6,12可在一些實例中提供多個evpn實例。ce設(shè)備8中的每一個可表示主機(例如,在真實服務(wù)器或真實服務(wù)器上執(zhí)行的虛擬機)、路由器或交換機。
以這種方式,pe6,12在數(shù)據(jù)中心5之間提供多宿主的evpn/vxlan數(shù)據(jù)中心互聯(lián)(dci)。這樣,pe6,12中的每一個作為evpn23和vxlan14之間的網(wǎng)關(guān)操作,并且可作為相對于vxlan14的vxlan隧道端點(“vtep”)發(fā)揮功能。也就是說,每個pe6,12可包括用于vxlan14和evpn23的邏輯上分離的虛擬路由和轉(zhuǎn)發(fā)實例(vrf),并且每個pe6,12操作以橋接兩個不同的內(nèi)部路由實例之間的業(yè)務(wù)。在“vxlandciusingevpn”,draft-boutros-bess-vxlan-evpn-00.txt,internetengineeringtaskforce(ietf),2015年7月4日;和“bgpmpls-basedethernetvpn”,requestforcomments7432,ietf,2015年2月,中描述了數(shù)據(jù)中心互聯(lián)技術(shù)的進一步的實例結(jié)構(gòu)和功能細節(jié),其全部內(nèi)容通過引用并入本文。
如圖1所示,pe6為以太網(wǎng)段13a提供wan3到vxlan14a的多宿主接入。pe路由器6的面向數(shù)據(jù)中心的接口被配置為邏輯上捆綁的以太網(wǎng)段13a,使得pe6操作以連接地向數(shù)據(jù)中心5a的用戶邊緣路由器(ce)8a提供活動備用(或“單-活動”)多宿主的l2。對于vxlan,pe路由器6的面向數(shù)據(jù)中心的接口是源vxlan隧道端點(vtep),這些端點是面向數(shù)據(jù)中心或面向用戶的虛擬網(wǎng)絡(luò)接口的實例。在一些部署中,pe6可包括多于2個pe路由器,但是在任何時間只有一個pe6是活動的。
每個以太網(wǎng)段中的多個pe設(shè)備中的一個被選擇作為指定轉(zhuǎn)發(fā)器(df)進行操作,以將來自evpn23的入站以太網(wǎng)幀經(jīng)由以太網(wǎng)段轉(zhuǎn)發(fā)到用戶網(wǎng)絡(luò)設(shè)備8a,從而避免vxlan14內(nèi)的業(yè)務(wù)循環(huán)。例如,pe6a可相對于從evpn23接收的單播業(yè)務(wù)以及廣播的、未識別的單播和多播(bum)業(yè)務(wù),被選作以太網(wǎng)段13a的指定轉(zhuǎn)發(fā)器。作為指定的轉(zhuǎn)發(fā)器,pe6a將業(yè)務(wù)轉(zhuǎn)發(fā)到以太網(wǎng)段13a。
根據(jù)本公開中描述的技術(shù),pe6被配置有用于面向數(shù)據(jù)中心接口(其在pe上終止vxlan14a)的公共任播ip地址。換句話說,pe6的相應(yīng)的面向數(shù)據(jù)中心的接口具有相同的任播ip地址。例如,pe6的vtep可配置有公共任播ip地址。
根據(jù)本文所描述的技術(shù),因為pe6被配置為用于evpn23的活動-備用冗余,并且更具體地被配置用于以太網(wǎng)段13a,所以pe6通告不同的下層igp度量(以下稱為“度量”),以使得ce設(shè)備8將去往遠程用戶網(wǎng)絡(luò)7b的用戶設(shè)備的業(yè)務(wù)發(fā)送到活動pe6(也是關(guān)于evpn23的df)。當選擇作為evpn23的df時,針對用于vxlan14a的公共任播ip地址,pe6a使用本地igp路由協(xié)議來通告較低igp度量到網(wǎng)絡(luò)15a中。進一步地,作為非df,針對公共任播ip地址,pe6b使用網(wǎng)絡(luò)15a的本地igp路由協(xié)議以向網(wǎng)絡(luò)15a通告相對較高的igp度量。因此,pe6a,6b基于pe相對于中間廣域網(wǎng)3的evpn23的df狀態(tài)影響本地網(wǎng)絡(luò)15a內(nèi)的出站業(yè)務(wù)的轉(zhuǎn)發(fā)。
在一些實例中,ce設(shè)備8a可經(jīng)由ce設(shè)備8a和pe6a是端點的igp鏈路直接連接到pe6a。同樣地,ce設(shè)備8a可經(jīng)由ce設(shè)備8a和pe6b是端點的igp鏈路直接連接到pe6b。換句話說,由于pe6共享的公共任播ip地址,從網(wǎng)絡(luò)15a的igp的角度看,ce設(shè)備8a和pe6之間的igp路徑通過多條鏈路連接到同一igp目的地,以及與不同鏈路相關(guān)聯(lián)的igp度量可用于選擇性地控制當經(jīng)由覆蓋網(wǎng)絡(luò)將數(shù)據(jù)包輸出到pe時ce設(shè)備做出的數(shù)據(jù)包轉(zhuǎn)發(fā)決定。作為活動df,pe6a可通告用于igp鏈路的相對低的度量,以用于從ce設(shè)備8a到達由pe6a配置的公共任播ip地址。作為備用非df,pe6b可通告用于igp鏈路的相對高的度量,以用于從ce設(shè)備8a到達由pe6b配置的公共任播ip地址。
對于ospf作為網(wǎng)絡(luò)15a的igp,igp通告可以是描述igp鏈路并指定度量的鏈路狀態(tài)通告,諸如路由器-lsa。對于rip,igp通告可以是描述igp鏈路并指定度量的請求消息。對于is-is,igp通告可以是描述igp鏈路并指定度量的鏈路狀態(tài)數(shù)據(jù)包。在一些實例中,較高度量是igp的最大可能度量,例如max_igp度量。在一些實例中,較低度量(相對于較高度量)是igp的最小可能度量,例如min_igp度量。
pe6實現(xiàn)evpn,并且因此經(jīng)由wan3的bgp覆蓋接收由pe12通過vxlan14b學習的遠程用戶媒體訪問控制(mac)地址。作為公共任播ip配置的結(jié)果,ce設(shè)備8a可以學習從任何pe6可到達的遠程mac地址。但是,由于在該實例中pe6a最初是活動df,所以pe6a將源自于客戶設(shè)備4c,4d(例如)的macm3、m4的單播和廣播、未識別/未知單播以及多播(bum)業(yè)務(wù)轉(zhuǎn)發(fā)到ce設(shè)備8a。ce設(shè)備8a學習,例如,作為經(jīng)由為vxlan14a配置的公共任播ip地址在vxlan14a上可達的macm4。
因為在這個實例中pe6a最初是活動df,并且從ce設(shè)備8a向自身通告比由備用非dfpe6b通告的igp度量相對較低的igp度量,所以ce設(shè)備8a計算到pe6a的公共任播ip地址的igp最短路徑。也就是說,ce設(shè)備8a確定由具有相對較低度量的pe6a通告的igp鏈路是到公共任播ip地址的最短路徑中的鏈路。ce設(shè)備8a因此首先經(jīng)由至pe6a的出站接口轉(zhuǎn)發(fā)去往vxlan14a上的macm4的l2業(yè)務(wù)24。
隨后,pe6a可經(jīng)歷故障情況,該故障情況阻止pe6a滿足用于多宿主活動-備用evpn配置(例如用于dci的)的活動df的要求(如圖1所示)。示例故障情況可包括:與wan3的隔離,使得pe6a不能在wan3上發(fā)送或接收網(wǎng)絡(luò)數(shù)據(jù)包;關(guān)于pe6a的面向數(shù)據(jù)中心的接口或igp鏈路或其他以太網(wǎng)段13a故障的故障,使得pe6a不能在vxlan14a上發(fā)送或接收數(shù)據(jù)包;以及pe6a本身的故障。在一些情況下,非dfpe6b使用雙向轉(zhuǎn)發(fā)檢測(bfd)或其它用于檢測pe6故障的操作、管理和維護(oam)技術(shù),經(jīng)由網(wǎng)絡(luò)15a來監(jiān)視dfpe6a的健康。
響應(yīng)于檢測到活動dfpe6a的故障情況,pe6選擇新的活動dfpe6b。在一些實例中,基于pe6的服務(wù)配置,pe6,12交換evpn路由,并且基于路由類型1(即,以太網(wǎng)自動發(fā)現(xiàn)(a-d),其可以是每個以太網(wǎng)段標識符)路由和路由類型4(以太網(wǎng)段)路由,pe6可以選擇pe6b作為新的df。
響應(yīng)于選擇新的活動df,pe6b不阻塞(unblock)對至少部分地由vxlan14a實現(xiàn)的以太網(wǎng)段的核心到vxlan業(yè)務(wù)轉(zhuǎn)發(fā)。另外,pe6b輸出igp消息26b,其將較低igp度量(針對為vxlan14a配置的公共任播ip地址)通告給網(wǎng)絡(luò)15a。先前的活動df即pe6a轉(zhuǎn)換到用于以太網(wǎng)段13a的備用非df的角色,并且輸出igp消息26a,其將相對較高的igp度量(針對為vxlan14a配置的公共任播ip地址)通告給網(wǎng)絡(luò)15a。igp消息26可表示用于ospf、is-is、rip的任何上述igp通告,或用于通告igp的鏈路和鏈路度量的另一igp的igp消息。
ce設(shè)備8a接收到至pe6的igp鏈路的新的igp度量。圖2示出了ce設(shè)備8a在接收到igp消息26之后的操作。ce設(shè)備8a重新計算到新的活動df即pe6b的面向網(wǎng)絡(luò)15a的接口上的公共任播ip地址的igp最短路徑。因此,不必更新用于以太網(wǎng)段13a的mac表,ce設(shè)備8a開始將用于vxlan14a的面向網(wǎng)絡(luò)15a的接口上的l2業(yè)務(wù)轉(zhuǎn)發(fā)至pe6b。在所示實例中,例如,ce設(shè)備8a經(jīng)由出站接口將去往vxlan14a上的macm4的l2業(yè)務(wù)24發(fā)送到pe6b。
對于作為pe6a自身故障的故障情況,pe6a可能不能發(fā)送通告更高igp度量的igp消息26a。但是,因為從ce設(shè)備8a到pe6a的igp鏈路可能最終從igp數(shù)據(jù)庫(例如,鏈路狀態(tài)數(shù)據(jù)庫)過期,導致ce設(shè)備8a經(jīng)由出站接口將去往vxlan14a上的macm4的l2業(yè)務(wù)24發(fā)送至pe6b。
因為用于數(shù)據(jù)中心覆蓋虛擬網(wǎng)絡(luò)(圖1的實例中的vxlan14a)的相應(yīng)pe6接口被配置有公共任播ip地址,所以這些技術(shù)可允許ce設(shè)備8a避免重新學習通過新的活動df即pe6b可到達的遠程用戶設(shè)備媒體訪問控制(mac)地址。在其中例如macm4不向用戶網(wǎng)絡(luò)7a提供l2業(yè)務(wù)并且因此macm4業(yè)務(wù)在ce設(shè)備8之間不是雙向的情況下,這樣的重新學習可能是不可能的。因此,該技術(shù)可避免到macm4的業(yè)務(wù)黑洞,該業(yè)務(wù)黑洞相反將發(fā)生在用于evpndci的活動-備用冗余配置中,諸如在圖1-2的網(wǎng)絡(luò)系統(tǒng)2中表示的。
在一些情況下,例如,在ce設(shè)備8a不能檢測到pe6a故障并且不能響應(yīng)地執(zhí)行mac刷新以觸發(fā)未識別的單播洪泛并且執(zhí)行重新學習到pe6b的macm4的部署中,該技術(shù)可避免至上述部署中的macm4的業(yè)務(wù)黑洞。這可以減少網(wǎng)絡(luò)15a內(nèi)的l2洪泛。例如,ce設(shè)備8a可以不支持bfd或其他檢測pe6故障的oam技術(shù)。可替代地或另外,ce設(shè)備8a可由不以對網(wǎng)絡(luò)15a中的網(wǎng)絡(luò)性能產(chǎn)生負面影響的方式支持或執(zhí)行mac刷新的供應(yīng)商制造。因此,通過減少l2洪泛,這些技術(shù)可改善網(wǎng)絡(luò)15a中的網(wǎng)絡(luò)性能。
在一些情況下,用于相應(yīng)的以太網(wǎng)段(例如,vxlan)的pe6的每個虛擬網(wǎng)絡(luò)接口可配置有不同的任播ip地址。以這種方式,pe6可以相對于多個不同vxlan上的多個以太網(wǎng)段執(zhí)行本公開的技術(shù)。
圖3是示出被配置為根據(jù)本文描述的技術(shù)操作的實例網(wǎng)絡(luò)設(shè)備的框圖。網(wǎng)絡(luò)設(shè)備30可表示圖1-2的pe6中的任何一個。
網(wǎng)絡(luò)設(shè)備30包括包含路由引擎34的控制單元32,并且控制單元32耦接到轉(zhuǎn)發(fā)單元33a-33n。轉(zhuǎn)發(fā)引擎33中的每一個與一個或多個接口卡35a-35n(“ifc35”)相關(guān)聯(lián),其中,接口卡35a-35n經(jīng)由入站鏈路58a-58n(“入站鏈路58”)接收數(shù)據(jù)包并經(jīng)由出站鏈路60a-60n(“入站鏈路”)發(fā)送數(shù)據(jù)包。ifc35通常經(jīng)由多個接口端口(未示出)耦接到鏈路58,60。入站鏈路58和出站鏈路60可表示物理接口、邏輯接口或其某種組合。
控制單元32和轉(zhuǎn)發(fā)單元33的元件可單獨以軟件或硬件實現(xiàn),或者可以現(xiàn)為軟件、硬件或固件的組合。例如,控制單元32可包括執(zhí)行軟件指令的一個或多個處理器、一個或多個微處理器、數(shù)字信號處理器(dsp)、專用集成電路(asic)、現(xiàn)場可編程門陣列(fpga)或任何其它等效集成或離散邏輯電路,或其任何組合。在這種情況下,控制單元32的各種軟件模塊可包括在包含指令的計算機可讀介質(zhì)(例如計算機可讀存儲介質(zhì))中存儲、實現(xiàn)或編碼的可執(zhí)行指令。嵌入在或編碼在計算機可讀介質(zhì)中的指令可使可編程處理器或其他處理器執(zhí)行該方法,例如當執(zhí)行指令時。計算機可讀存儲介質(zhì)可包括隨機存取存儲器(ram)、只讀存儲器(rom)、可編程只讀存儲器(prom)、可擦除可編程只讀存儲器(eprom)、電可擦除可編程只讀存儲器(eeprom)、非易失性隨機存取存儲器(nvram)、閃存、硬盤、cd-rom、軟盤、盒式磁帶、固態(tài)驅(qū)動器、磁性介質(zhì)、光學介質(zhì)或其它計算機可讀介質(zhì)。計算機可讀介質(zhì)可用與網(wǎng)絡(luò)設(shè)備30的各個方面對應(yīng)的指令(例如,協(xié)議、過程和模塊)來編碼。在一些實例中,控制單元32針對這些方面檢索并執(zhí)行來自存儲器的指令。
路由單元34包括內(nèi)核43,其為用戶級進程提供運行時操作環(huán)境。內(nèi)核43可表示例如unix操作系統(tǒng)派生物,諸如linux或伯克利軟件分發(fā)(bsd)。內(nèi)核43提供庫和驅(qū)動程序,憑此用戶級進程可與底層系統(tǒng)交互。路由單元34的硬件環(huán)境55包括微處理器57,微處理器57執(zhí)行從存儲設(shè)備(也未在圖3中示出)加載到主存儲器(圖3中未示出)中的程序指令,以便執(zhí)行軟件棧,其包括內(nèi)核43和在由內(nèi)核43提供的操作環(huán)境上執(zhí)行的進程兩者。微處理器57可表示一個或多個通用或?qū)S锰幚砥?,諸如數(shù)字信號處理器(dsp)、專用集成電路(asic)、現(xiàn)場可編程門陣列(fpga)或任何其它等效邏輯器件。因此,如本文所使用的術(shù)語“處理器”或“控制器”可指代前述結(jié)構(gòu)中的任何一個或多個或可操作以執(zhí)行本文所描述的技術(shù)的任何其它結(jié)構(gòu)。
內(nèi)核43為在網(wǎng)絡(luò)堆棧的不同層執(zhí)行各種協(xié)議44的路由進程45提供操作環(huán)境。例如,路由單元34包括在網(wǎng)絡(luò)堆棧的網(wǎng)絡(luò)層操作的網(wǎng)絡(luò)協(xié)議。在圖3的實例中,網(wǎng)絡(luò)協(xié)議包括路由協(xié)議邊界網(wǎng)關(guān)協(xié)議(bgp)44a和igp44b。bgp44a可包括多協(xié)議bgp(mp-bgp)。網(wǎng)絡(luò)協(xié)議44還包括vxlan44c和mpls44d。evpn模塊48和路由進程45執(zhí)行路由協(xié)議44,以與其他pe設(shè)備合作提供evpndci,諸如vxlanevpndci或nvgreevpndci。
路由單元34可包括圖3中未示出的其他協(xié)議。路由單元34負責維護路由信息42以反映網(wǎng)絡(luò)設(shè)備30連接到的網(wǎng)絡(luò)和其他網(wǎng)絡(luò)實體的當前拓撲。具體而言,路由協(xié)議周期性地更新路由信息42,以基于由網(wǎng)絡(luò)設(shè)備30接收的路由協(xié)議消息來準確地反映網(wǎng)絡(luò)和其他實體的拓撲。
如圖3所示,網(wǎng)絡(luò)設(shè)備30可配置有多個虛擬路由和轉(zhuǎn)發(fā)實例(vrf)60,包括vrf60a。vrf60a與vrf表相關(guān)聯(lián)以存儲與vrf相關(guān)聯(lián)的路由和轉(zhuǎn)發(fā)信息。網(wǎng)絡(luò)設(shè)備30包括配置接口59,用于接收用于配置網(wǎng)絡(luò)設(shè)備30的配置數(shù)據(jù),諸如vrf60配置數(shù)據(jù)、evpn配置數(shù)據(jù)和路由配置數(shù)據(jù)。
轉(zhuǎn)發(fā)單元33a-33n(“轉(zhuǎn)發(fā)單元33”或“轉(zhuǎn)發(fā)引擎33”)表示提供網(wǎng)絡(luò)業(yè)務(wù)的高速轉(zhuǎn)發(fā)的硬件和邏輯功能。轉(zhuǎn)發(fā)單元33可包括用轉(zhuǎn)發(fā)信息(將具有特定的下一跳的網(wǎng)絡(luò)目的地與相應(yīng)的輸出接口端口映射)編程的一個或多個轉(zhuǎn)發(fā)芯片的集合。一般來說,當網(wǎng)絡(luò)設(shè)備30經(jīng)由入站鏈路58中的一個接收數(shù)據(jù)包時,轉(zhuǎn)發(fā)單元33中的一個轉(zhuǎn)發(fā)單元基于數(shù)據(jù)包內(nèi)的信息通過遍歷編程的轉(zhuǎn)發(fā)信息來識別數(shù)據(jù)包的相關(guān)聯(lián)的下一跳。轉(zhuǎn)發(fā)單元33中的一個(入口轉(zhuǎn)發(fā)引擎或不同的出口轉(zhuǎn)發(fā)引擎)在映射到相應(yīng)的下一跳的出站鏈路60上轉(zhuǎn)發(fā)數(shù)據(jù)包。
在圖3的實例中,轉(zhuǎn)發(fā)單元33a包括轉(zhuǎn)發(fā)信息56。根據(jù)路由信息42,轉(zhuǎn)發(fā)單元33a存儲將具有特定下一跳的網(wǎng)絡(luò)目的地與相應(yīng)的接口端口相關(guān)聯(lián)的轉(zhuǎn)發(fā)信息56。例如,路由單元34分析路由信息42并根據(jù)路由信息42生成轉(zhuǎn)發(fā)信息56。轉(zhuǎn)發(fā)信息56可以以一個或多個表、鏈接列表、基數(shù)樹、數(shù)據(jù)庫、平面文件或任何其他數(shù)據(jù)結(jié)構(gòu)的形式保持。
轉(zhuǎn)發(fā)單元33a存儲由網(wǎng)絡(luò)設(shè)備建立的用于每個以太網(wǎng)vpn實例(evi)的轉(zhuǎn)發(fā)信息56,以將具有特定的下一跳的網(wǎng)絡(luò)目的地與相應(yīng)的接口端口相關(guān)聯(lián)。evi可與evpn中的一個或多個以太網(wǎng)段相關(guān)聯(lián)。一般來說,當網(wǎng)絡(luò)設(shè)備經(jīng)由入站鏈路58中的一個接收在給定以太網(wǎng)段的核心lsp上的數(shù)據(jù)包時,轉(zhuǎn)發(fā)引擎33a例如基于數(shù)據(jù)包內(nèi)的信息(例如,標簽信息)通過遍歷轉(zhuǎn)發(fā)信息56來識別數(shù)據(jù)包的相關(guān)聯(lián)的下一跳。轉(zhuǎn)發(fā)引擎30a根據(jù)與以太網(wǎng)段相關(guān)聯(lián)的轉(zhuǎn)發(fā)信息56,將出站鏈路60中的一個上的數(shù)據(jù)包轉(zhuǎn)發(fā)到相應(yīng)的下一跳。
路由單元34還包括evpn模塊48,evpn模塊48具有執(zhí)行洪泛的洪泛模塊54和執(zhí)行層2(l2)學習的學習模塊52,例如從入站標簽交換路徑(lsp)上學習用戶設(shè)備mac地址,以及這些用戶mac地址與相應(yīng)的出站lsp和輸出接口的關(guān)聯(lián)。例如,evpn模塊48可在用于evpn實例的mac/ip通告路由類型特定evpn網(wǎng)絡(luò)層可達性信息(nlri)中的mp-bgp消息中接收這種關(guān)聯(lián)。evpn模塊48可為由網(wǎng)絡(luò)設(shè)備30建立的每個evi維護mac表50,或者在替換實例中,可維護獨立于每個相應(yīng)evi的一個或多個mac表??商娲兀瑢W習模塊52和洪泛模塊54可以被配置為全部或部分地由轉(zhuǎn)發(fā)單元33a執(zhí)行。在一些實例中,evpn模塊48可以是路由進程45的一部分或由路由處理45執(zhí)行。
信令模塊40輸出控制平面消息,以自動建立lsp、以太網(wǎng)段,以及另外在網(wǎng)絡(luò)設(shè)備30和用于層3內(nèi)核的每個其他pe設(shè)備之間提供一個或多個evpn。信令模塊40可以使用一個或多個合適的l3協(xié)議(例如bgp)向pe設(shè)備發(fā)信號。信令模塊40可與轉(zhuǎn)發(fā)單元33a通信以自動更新轉(zhuǎn)發(fā)信息56。在一些實例中,信令模塊40可以是路由進程45的一部分或由路由進程45執(zhí)行。
evpn模塊48在網(wǎng)絡(luò)設(shè)備30的控制平面中執(zhí)行,并且執(zhí)行mac地址學習以為由網(wǎng)絡(luò)設(shè)備30建立的每個evi自動更新轉(zhuǎn)發(fā)信息56的部分。在一些實例中,當網(wǎng)絡(luò)設(shè)備30在由路由器網(wǎng)絡(luò)設(shè)備30為作為evi的成員的一個或多個pe10建立的lsp上接收數(shù)據(jù)包時,evpn模塊48被調(diào)用。evpn模塊48使用學習模塊52執(zhí)行mac地址學習,并更新mac表50中的一個,以初始記錄連接到網(wǎng)絡(luò)設(shè)備30的lsp與在lsp上接收數(shù)據(jù)包的evpn用戶設(shè)備的用戶源mac地址之間的關(guān)聯(lián)。例如,mac表50中的一個記錄用于標識連接到網(wǎng)絡(luò)設(shè)備30的lsp的lsp標識符,并記錄用于標識通過lsp發(fā)送的數(shù)據(jù)包的源用戶設(shè)備的mac地址。實際上,路由器網(wǎng)絡(luò)設(shè)備30、l3路由設(shè)備(或者在一些實例中,l2交換設(shè)備)學習mac地址和lsp(其被映射到端口或接口)之間的關(guān)聯(lián),就像l2交換機學習mac地址和端口之間的關(guān)聯(lián)。轉(zhuǎn)發(fā)信息56可表示虛擬端口綁定和橋接表。
為了更新mac表50中的一個,路由單元34中的evpn模塊48的學習模塊52執(zhí)行l(wèi)2學習和l2用戶mac地址與特定lsp的關(guān)聯(lián)。學習模塊52然后傳送記錄在一個mac表50中的信息以配置轉(zhuǎn)發(fā)信息56。以這種方式,轉(zhuǎn)發(fā)單元33a可利用每個lsp和輸出接口和經(jīng)由這些lsp可達的特定源用戶mac地址之間的關(guān)聯(lián)編程。evpn模塊48可與轉(zhuǎn)發(fā)單元33通信以更新與evpn相關(guān)聯(lián)的mac表50中的一個,以將用戶mac地址與適當?shù)某稣緇sp相關(guān)聯(lián)。在一些實例中,轉(zhuǎn)發(fā)單元33a可維護本地mac表(未示出)。在更新之后,mac表50包括連接到網(wǎng)絡(luò)設(shè)備30的lsp之間的關(guān)聯(lián),其用于將l2業(yè)務(wù)傳送到用戶設(shè)備的mac地址。換句話說,mac表50記錄了lsp和可以在lsp上發(fā)送數(shù)據(jù)包的網(wǎng)絡(luò)設(shè)備之間的關(guān)聯(lián)。例如,mac表50可記錄用于標識源自網(wǎng)絡(luò)設(shè)備30的lsp的lsp標識符,以及標識可達的用戶設(shè)備的mac地址的那些lsp標識符。
轉(zhuǎn)發(fā)單元33a接收在入站鏈路58上的目的地為evpn中的pe路由器之一的數(shù)據(jù)包。轉(zhuǎn)發(fā)單元33a確定數(shù)據(jù)包的目的地用戶mac地址是否包括在與evpn相關(guān)聯(lián)的一個mac表中。如果mac地址包括在mac表中的一個中,則網(wǎng)絡(luò)設(shè)備30基于與evpn相關(guān)聯(lián)的轉(zhuǎn)發(fā)信息56將數(shù)據(jù)包轉(zhuǎn)發(fā)到與mac地址相關(guān)聯(lián)的lsp上的目的地pe路由器。如果用戶mac地址不包括在mac表中的一個中,則網(wǎng)絡(luò)設(shè)備30基于與evpn相關(guān)聯(lián)的轉(zhuǎn)發(fā)信息56經(jīng)由lsp將數(shù)據(jù)包洪泛到所有pe路由器。
evpn模塊48另外管理用于網(wǎng)絡(luò)設(shè)備30的evpn多宿主操作模式。也就是說,evpn模塊48操作以維持轉(zhuǎn)發(fā)到ce設(shè)備的evpn服務(wù)和業(yè)務(wù)和從ce設(shè)備轉(zhuǎn)發(fā)的evpn服務(wù)和業(yè)務(wù),其中,所述ce設(shè)備多宿主到網(wǎng)絡(luò)設(shè)備30和一個或多個其他路由器(例如,在圖1-2的實例拓撲中的另外的pe6)。例如,在其中網(wǎng)絡(luò)設(shè)備30作為pe6a的實例操作的實例中,在這樣的情況下:諸如pe6a-ce8故障的故障事件;pe6a的故障;或mpls可達性或在pe6a和遠程pe12之間引起核心隔離的其他類型的隧道故障;evpn模塊48與pe6b協(xié)調(diào)以確保對于給定的evpn實例,pe6之一處于活動模式而另一個處于備用模式。evpn模塊48可與pe6b協(xié)調(diào)以使用vxlan14a為至少部分地實現(xiàn)的以太網(wǎng)段選擇新的指定轉(zhuǎn)發(fā)器。
響應(yīng)于網(wǎng)絡(luò)設(shè)備30被選為以太網(wǎng)段的指定轉(zhuǎn)發(fā)器(df),evpn模塊48可以解除對以太網(wǎng)段的業(yè)務(wù)的阻塞,并且指示路由進程45以減少被配置用于以太網(wǎng)段的虛擬網(wǎng)絡(luò)接口的任播地址的igp度量。路由進程45可隨后輸出用于鏈路的igp通告,以使得用于以太網(wǎng)段的一個或多個ce設(shè)備將以太網(wǎng)段業(yè)務(wù)指示向網(wǎng)絡(luò)設(shè)備30,而不是先前的df。
響應(yīng)于網(wǎng)絡(luò)設(shè)備30放棄作為df的角色以承擔以太網(wǎng)段的非df的角色,evpn模塊48可指示路由進程45增加用于公共任播ip地址的igp度量,所述任播ip地址被配置用于以太網(wǎng)段的虛擬網(wǎng)絡(luò)接口。路由進程45可隨后輸出用于鏈路的igp通告,以使得以太網(wǎng)段的一個或多個ce設(shè)備將以太網(wǎng)段業(yè)務(wù)指示到新的df而不是到網(wǎng)絡(luò)設(shè)備30。以這種方式,網(wǎng)絡(luò)設(shè)備30可避免目的地為遠程用戶網(wǎng)絡(luò)的、以太網(wǎng)段上的l2業(yè)務(wù)的業(yè)務(wù)黑洞,其中網(wǎng)絡(luò)設(shè)備30和用于以太網(wǎng)段的其他pe設(shè)備被配置為以活動-備用冗余模式操作。
圖4是示出根據(jù)本公開中描述的技術(shù)的網(wǎng)絡(luò)設(shè)備的實例操作模式的框圖。相對于圖1-2的pe6a對操作100進行了描述,但是操作100可由本公開中描述的任何網(wǎng)絡(luò)設(shè)備執(zhí)行。
pe6a接收配置數(shù)據(jù),該配置數(shù)據(jù)用于將pe6a和pe6b配置為多宿(multi-home)用于evpn23的以太網(wǎng)段的ce設(shè)備8(102)。pe6a還接收利用公共任播ip地址配置vxlan14a的虛擬網(wǎng)絡(luò)接口的配置數(shù)據(jù),所述公共任播ip地址用于vxlan14a的pe6的虛擬網(wǎng)絡(luò)接口(104)。
pe6a可確定pe6之一處于故障情況(106)。pe6a和pe6b執(zhí)行指定的轉(zhuǎn)發(fā)器選擇,以確定以太網(wǎng)段的新的指定轉(zhuǎn)發(fā)器(108)。如果pe6a先前是指定的轉(zhuǎn)發(fā)器并且另一個pe(例如,pe6b)被選擇為新的指定轉(zhuǎn)發(fā)器(110的“是”分支),則pe6a可修改其路由信息,以增加從ce設(shè)備8a到網(wǎng)絡(luò)15a上的pe6a的路由成本。pe6a可通過輸出具有高igp度量的igp通告來輸出增加的路由成本的指示,所述高igp度量用于到為pe6a配置的公共任意播ip地址的igp鏈路(112)。
如果pe6a先前是非指定轉(zhuǎn)發(fā)器并且pe6a被選擇為新df(114的“是”分支),則pe6a解除對以太網(wǎng)段的業(yè)務(wù)轉(zhuǎn)發(fā)的阻塞,并且可修改其路由信息,以降低ce設(shè)備8a到網(wǎng)絡(luò)15a上的pe6a的路由成本。pe6a可通過輸出具有低igp度量的igp通告來輸出降低的路由成本的指示,所述低igp度量用于到為pe6a配置的公共任播ip地址的igp鏈路(116)。結(jié)果,pe6a隨后從以太網(wǎng)段的ce設(shè)備8接收業(yè)務(wù)(通過igp鏈路上的vxlan14a),并且使用evpn23將業(yè)務(wù)轉(zhuǎn)發(fā)到wan3。如果pe6a先前是非df并且不選擇df(118的“否”分支),則pe6a不修改其路由信息來改變網(wǎng)絡(luò)15a上的從ce設(shè)備8a到pe6a的路由成本。
在本公開中描述的技術(shù)可至少部分地在硬件、軟件、固件或其任何組合中實現(xiàn)。例如,所描述的技術(shù)的各個方面可在一個或多個處理器內(nèi)實現(xiàn),包括一個或多個微處理器、數(shù)字信號處理器(dsp)、專用集成電路(asic)、現(xiàn)場可編程門陣列(fpga)或任何其它等效集成或離散邏輯電路,以及這些組件的任何組合。術(shù)語“處理器”或“處理電路”通??芍复魏吻笆鲞壿嬰娐罚瑔为毜鼗蚺c其他邏輯電路組合或任何其它等效電路。包括硬件的控制單元還可執(zhí)行本公開的一個或多個技術(shù)。
這樣的硬件、軟件和固件可在相同的設(shè)備內(nèi)或在單獨的設(shè)備內(nèi)實現(xiàn),以支持本公開中描述的各種技術(shù)。另外,所描述的單元、模塊或組件中的任何一個可一起或單獨實現(xiàn)為離散但可互操作的邏輯設(shè)備。將不同特征描述為模塊或單元旨在突出不同的功能方面,并且不一定意味著這樣的模塊或單元必須由單獨的硬件、固件或軟件組件實現(xiàn)。相反,與一個或多個模塊或單元相關(guān)聯(lián)的功能可由單獨的硬件、固件或軟件組件來執(zhí)行,或者集成在公共或單獨的硬件、固件或軟件組件中。
本公開中描述的技術(shù)還可在包括編碼有指令的計算機可讀介質(zhì)的制品中實現(xiàn)或編碼。嵌入或編碼在包括編碼的計算機可讀介質(zhì)的制品中的指令可使得一個或多個可編程處理器或其他處理器實現(xiàn)這里描述的一個或多個技術(shù),諸如當包括或編碼在計算機中的指令由一個或多個處理器執(zhí)行時。計算機可讀存儲介質(zhì)可以包括隨機存取存儲器(ram)、只讀存儲器(rom)、可編程只讀存儲器(prom)、可擦除可編程只讀存儲器(eprom)、電可擦除可編程只讀存儲器(eeprom)、閃存、硬盤、光盤rom(cd-rom)、軟盤、盒式磁帶、磁性介質(zhì)、光學介質(zhì)或其他計算機可讀介質(zhì)。在一些實例中,制品可以包括一個或多個計算機可讀存儲介質(zhì)。在一些實例中,計算機可讀存儲介質(zhì)可包括非暫時性介質(zhì)。術(shù)語“非暫時性”可表明存儲介質(zhì)未被包含在載波或傳播信號中。在某些實例中,非暫時性存儲介質(zhì)可存儲隨時間可改變的數(shù)據(jù)(例如,在ram或高速緩存中)。
除了上述之外或作為上述的替代,描述以下實施例。在任何以下實施例中描述的特征可與本文所述的任何其它實施例一起使用。
實例1、一種方法,包括:利用多個提供商邊緣設(shè)備(pe)的一個pe執(zhí)行以太網(wǎng)虛擬專用網(wǎng)絡(luò)(evpn)實例,以在中間網(wǎng)絡(luò)上向一個或多個遠程提供商邊緣設(shè)備提供evpn,所述多個pe通過在活動-備用多鏈路以太網(wǎng)段上形成的覆蓋網(wǎng)絡(luò)耦接至多宿主的用戶邊緣設(shè)備(ce);利用所述pe設(shè)備參與所述多個pe中的一個pe的指定轉(zhuǎn)發(fā)器(df)選擇,以通過所述以太網(wǎng)段將來自所述evpn的數(shù)據(jù)包轉(zhuǎn)發(fā)到所述用戶網(wǎng)絡(luò);以及,響應(yīng)于所述pe被選為所述df,利用所述pe根據(jù)內(nèi)部網(wǎng)關(guān)協(xié)議(igp)路由協(xié)議輸出igp消息,所述igp消息指定通過所述以太網(wǎng)段相應(yīng)的鏈路到達所述覆蓋網(wǎng)絡(luò)的pe的虛擬網(wǎng)絡(luò)接口的度量,以指示所述ce將來自用戶網(wǎng)絡(luò)的網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)發(fā)到所述pe。
實例2、根據(jù)實例1所述的方法,進一步包括:響應(yīng)于所述多個pe中的不同的一個隨后被選為用于所述evpn的所述df,利用所述pe輸出第二igp消息以修改所述度量以指示經(jīng)由以太網(wǎng)段的相應(yīng)鏈路到達所述pe的虛擬網(wǎng)絡(luò)接口的更長的路由距離,以引導所述ce將來自所述用戶網(wǎng)絡(luò)的后續(xù)網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)發(fā)到所述pe中不同的一個。
實例3、根據(jù)實例2所述的方法,其中,當所述pe被選為df時,輸出的igp消息的度量包括具有用于所述igp路由協(xié)議的最小可允許值的min_igp度量,并且其中,當所述pe中不同的一個被選為所述df時,所述第二igp消息的所述度量包括具有用于所述igp路由協(xié)議的最大可允許值的max_igp度量。
實例4、根據(jù)實例1所述的方法,進一步包括:由所述pe接收用于配置所述虛擬網(wǎng)絡(luò)接口的公共任播互聯(lián)網(wǎng)協(xié)議(ip)地址的配置數(shù)據(jù),其中,所述公共任播ip地址由所述多個pe中的每一個分配給所述覆蓋虛擬網(wǎng)絡(luò)的相應(yīng)虛擬網(wǎng)絡(luò)接口,所述虛擬網(wǎng)絡(luò)接口用于將所述多個提供商邊緣設(shè)備中的每一個連接到所述ce的以太網(wǎng)段的相應(yīng)鏈路。
實例5、根據(jù)實例1所述的方法,進一步包括:由所述pe從所述evpn實例的遠程pe接收邊界網(wǎng)關(guān)協(xié)議(bgp)消息,所述bgp消息包括針對遠程用戶設(shè)備的多協(xié)議標簽交換(mpls)標簽和媒體接入控制(mac)地址的關(guān)聯(lián);由所述pe,在所述虛擬網(wǎng)絡(luò)接口處,從所述ce設(shè)備接收目的地為所述遠程用戶設(shè)備的mac地址的層2數(shù)據(jù)包;以及基于所述遠程用戶設(shè)備的mpls標簽與所述mac地址的關(guān)聯(lián),由所述pe向所述evpn實例的遠程pe發(fā)送將所述層2數(shù)據(jù)包封裝在所述mpls標簽中的帶標簽數(shù)據(jù)包。
實例6、根據(jù)實例5所述的方法,其中,所述bgp消息中包括所述evpn實例的媒體接入控制/網(wǎng)際協(xié)議(mac/ip)通告路由類型特定的evpn網(wǎng)絡(luò)層可達性信息。
實例7、根據(jù)實例5所述的方法,其中,用于所述覆蓋虛擬網(wǎng)絡(luò)的覆蓋隧道協(xié)議包括虛擬可擴展局域網(wǎng)(vxlan)、使用通用路由封裝的網(wǎng)絡(luò)虛擬化(nvgre)和無狀態(tài)傳輸隧道(stt)中的一個。
實例8、根據(jù)實例1所述的方法,其中,所述evpn實例包括第一數(shù)據(jù)中心的evpn數(shù)據(jù)中心互聯(lián)(dci),其中,所述第一數(shù)據(jù)中心包括所述多個提供商邊緣設(shè)備,其中,第二數(shù)據(jù)中心包括經(jīng)由所述中間網(wǎng)絡(luò)連接到所述第一數(shù)據(jù)中心的所述多個提供商邊緣設(shè)備的所述一個或多個遠程提供商邊緣設(shè)備。
實例9、根據(jù)實例1所述的方法,其中,所述pe包括第一pe,所述方法進一步包括:響應(yīng)于確定所述多個提供商邊緣設(shè)備中的第二pe的故障情況,由所述第一pe觸發(fā)所述evpn實例的指定轉(zhuǎn)發(fā)器選擇,以選擇所述多個pe中的一個作為所述evpn實例的指定轉(zhuǎn)發(fā)器。
實例10、根據(jù)實例9所述的方法,進一步包括基于以下之一確定所述故障情況:來自所述中間網(wǎng)絡(luò)的核心隔離的指示,所述核心隔離使得所述第二pe不能在所述中間網(wǎng)絡(luò)上發(fā)送或接收網(wǎng)絡(luò)數(shù)據(jù)包;所述第二pe不能在所述覆蓋網(wǎng)絡(luò)上發(fā)送或接收數(shù)據(jù)包的指示;所述第二pe已經(jīng)故障的指示。
實例11、一種提供商邊緣設(shè)備(pe),包括:連接到以太網(wǎng)段的多個鏈路之一的網(wǎng)絡(luò)接口,其中,所述pe是通過所述以太網(wǎng)段耦接到多宿主的用戶邊緣設(shè)備(ce)的多個pe中的一個;以及一個或多個處理器,被配置為執(zhí)行以太網(wǎng)虛擬專用網(wǎng)絡(luò)(evpn)實例,以通過中間網(wǎng)絡(luò)向一個或多個遠程提供商邊緣設(shè)備提供evpn,其中,所述處理器被配置為:參與多個pe的一個pe的指定轉(zhuǎn)發(fā)器(df)選擇,以通過所述以太網(wǎng)段將來自所述evpn的數(shù)據(jù)包轉(zhuǎn)發(fā)到所述用戶網(wǎng)絡(luò);以及響應(yīng)于被選為所述df,根據(jù)內(nèi)部網(wǎng)關(guān)協(xié)議(igp)路由協(xié)議輸出igp消息,所述igp消息指定通過所述以太網(wǎng)段相應(yīng)的鏈路到達所述pe的度量,以指示所述ce將來自所述用戶網(wǎng)絡(luò)的網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)發(fā)到所述pe。
實例12、根據(jù)實例11所述的pe,其中,所述處理器被配置為,響應(yīng)于所述pe中的不同一個被選為用于所述evpn的df,輸出第二igp消息以修改所述度量以指示用于經(jīng)由所述以太網(wǎng)段的相應(yīng)鏈路到達所述pe的更長的路由距離,以引導所述ce將來自所述用戶網(wǎng)絡(luò)的后續(xù)網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)發(fā)到所述pe中不同的一個。
實例13、根據(jù)實例12所述的pe,其中,當所述pe被選為df時,輸出的igp消息的度量包括具有用于所述igp路由協(xié)議的最小可允許值的min_igp度量,并且其中,當所述pe中不同的一個被選為所述df時,所述第二igp消息的所述度量包括具有用于所述igp路由協(xié)議的最大可允許值的max_igp度量。
實例14、根據(jù)實例11所述的pe,其中,所述處理器被配置為執(zhí)行隧道協(xié)議,以在所述以太網(wǎng)段上形成覆蓋網(wǎng)絡(luò),并且分配虛擬網(wǎng)絡(luò)接口以在所述以太網(wǎng)段的相應(yīng)鏈路上到達所述pe。
實例15、根據(jù)實例14所述的pe,其中,所述處理器被配置為接收用于配置在所述以太網(wǎng)段上形成的所述虛擬網(wǎng)絡(luò)的虛擬網(wǎng)絡(luò)接口的公共任播互聯(lián)網(wǎng)協(xié)議(ip)地址的配置數(shù)據(jù),并且其中,所述公共任播ip地址由所述多個pe中的每一個分配給所述覆蓋虛擬網(wǎng)絡(luò)的相應(yīng)虛擬網(wǎng)絡(luò)接口,所述虛擬網(wǎng)絡(luò)接口用于將所述多個提供商邊緣設(shè)備中的每一個連接到所述ce的所述以太網(wǎng)段的相應(yīng)鏈路。
實例16、根據(jù)實例14所述的pe,其中,用于所述覆蓋虛擬網(wǎng)絡(luò)的覆蓋隧道協(xié)議包括虛擬可擴展局域網(wǎng)(vxlan),使用通用路由封裝的網(wǎng)絡(luò)虛擬化(nvgre)和無狀態(tài)傳輸隧道(stt)中之一。
實例17、根據(jù)實例11所述的pe,其中,所述處理器被配置為:從用于所述evpn實例的遠程pe接收邊界網(wǎng)關(guān)協(xié)議(bgp)消息,所述bgp消息包括針對遠程用戶設(shè)備的多協(xié)議標簽交換(mpls)標簽和媒體訪問控制(mac)地址的關(guān)聯(lián);在所述虛擬網(wǎng)絡(luò)接口處,從所述ce設(shè)備接收目的地為所述遠程用戶設(shè)備的mac地址的層2數(shù)據(jù)包;并基于所述遠程用戶設(shè)備的mpls標簽和設(shè)備的mac地址的關(guān)聯(lián),發(fā)送將層2封裝在所述mpls標簽中的標簽數(shù)據(jù)包。
實例18、根據(jù)實例17所述的pe,其中,所述bgp消息包括用于所述evpn實例的媒體接入控制/互聯(lián)網(wǎng)協(xié)議(mac/ip)通告路由類型特定的evpn網(wǎng)絡(luò)層可達性信息。
實例19、根據(jù)實例11所述的pe,其中,所述evpn實例包括第一數(shù)據(jù)中心的evpn數(shù)據(jù)中心互聯(lián)(dci),其中,所述第一數(shù)據(jù)中心包括所述多個提供商邊緣設(shè)備,其中,第二數(shù)據(jù)中心包括所述一個或多個遠程提供商邊緣設(shè)備,經(jīng)由所述中間網(wǎng)絡(luò)連接到所述第一數(shù)據(jù)中心的所述多個提供商邊緣設(shè)備。
實例20、根據(jù)實例11所述的pe,其中,所述處理器被配置為,響應(yīng)于確定所述多個提供商邊緣設(shè)備中的第二pe的故障情況,觸發(fā)所述evpn實例的指定轉(zhuǎn)發(fā)器選擇,以選擇所述多個pe中的一個作為evpn實例的指定轉(zhuǎn)發(fā)器。
實例21、根據(jù)實例20所述的pe,其中,所述處理器被配置為基于以下之一來確定所述故障情況:來自所述中間網(wǎng)絡(luò)的核心隔離的指示,使得所述第二pe不能發(fā)送或接收網(wǎng)絡(luò)數(shù)據(jù)包中間網(wǎng)絡(luò)的指示;第二pe不能在覆蓋網(wǎng)絡(luò)上發(fā)送或接收數(shù)據(jù)包的指示;以及第二pe已經(jīng)故障的指示。
實例22、根據(jù)實例11所述的pe,其中,所述第一度量包括具有所述igp的最大可允許值的max_igp度量,并且其中,所述第二度量包括具有所述igp的最小可允許值的min_igp度量。
實例23、一種非暫時性計算機可讀介質(zhì),包括用于使得提供商邊緣設(shè)備(pe)的一個或多個可編程處理器執(zhí)行以下操作的指令:利用多個提供商邊緣設(shè)備(pe)的一個pe執(zhí)行以太網(wǎng)虛擬專用網(wǎng)絡(luò)(evpn)實例,以在中間網(wǎng)絡(luò)將上向一個或多個遠程提供商邊緣設(shè)備提供evpn,所述多個pe在活動-備用多鏈路以太網(wǎng)段上形成的覆蓋網(wǎng)絡(luò)耦接至多宿主用戶邊緣設(shè)備(ce);利用所述pe設(shè)備,參與所述多個pe中的一個pe的指定轉(zhuǎn)發(fā)器(df)選擇,以通過所述以太網(wǎng)段將來自所述evpn的數(shù)據(jù)包轉(zhuǎn)發(fā)到所述用戶網(wǎng)絡(luò);以及響應(yīng)于所述pe被選為所述df,利用所述pe根據(jù)內(nèi)部網(wǎng)關(guān)協(xié)議(igp)路由協(xié)議輸出igp消息,所述igp消息指定通過所述以太網(wǎng)段相應(yīng)的鏈路到達所述pe的虛擬網(wǎng)絡(luò)接口的度量,以指示所述ce將來自所述用戶網(wǎng)絡(luò)的網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)發(fā)到所述pe。
此外,在上述任何實例中闡述的任何特定特征可組合成所描述的技術(shù)的有益實例。也就是說,任何特定特征一般可應(yīng)用于本發(fā)明的所有實例。已經(jīng)描述了本發(fā)明的各種實例。