本公開的實施例涉及分布式接入復用器。更具體地,本公開的實施例涉及分布式接入復用器系統(tǒng)中的包含式或選擇式運營商組播樹的建立方法和設備。
背景技術(shù):
本公開的實施例所要解決的技術(shù)問題源于分布式接入復用器(dam)模型。在討論具體的技術(shù)問題之前,先介紹一下dam的一些背景技術(shù)。
概括地說,dam是一種接入設備,其由互聯(lián)了任何形式的“虛鏈路”的分布式模塊構(gòu)成?!疤撴溌贰敝复鷮?(l3)底層網(wǎng)絡上建立的層2(l2)疊加隧道。l2疊加隧道可以是點對點隧道以及點對多點隧道。圖1示出了dam的邏輯模型。
圖1顯示了分布式dam的部署模型,其中主要包含4類模塊:邊緣路由器模塊(erm模塊),它運行網(wǎng)際互聯(lián)/多協(xié)議標簽交換(ip/mpls)數(shù)據(jù)平面功能;控制平面模塊(cpm模塊),它運行控制平面和管理平面功能;業(yè)務平面模塊(spm),它運行業(yè)務和應用功能;遠程接入模塊(ram模塊),該模塊位于靠近用戶的位置,且終止了各種特定的接入層技術(shù),例如,所述各種特定的接入層技術(shù)是:基于docsis(有線電纜數(shù)據(jù)服務接口規(guī)范)的電纜接入技術(shù)、以太無源光網(wǎng)絡(epon)以及千兆比特無源光網(wǎng)絡(gpon)的光接入技術(shù)、或各種類型的數(shù)字用戶線xdsl接入技術(shù),ram模塊對網(wǎng)絡側(cè)呈現(xiàn)統(tǒng)一的以太網(wǎng)接口。
圖1中所有的中心模塊(erm、cpm和spm)相互之間構(gòu)成網(wǎng)狀拓撲,即它們兩兩之間都可以直接發(fā)送和接收數(shù)據(jù)包,它們作為 一個整體,構(gòu)成分布式dam的中心。而所有的ram模塊構(gòu)成dam系統(tǒng)的輻條,即每個ram模塊僅能與中心模塊之間直接發(fā)送和接收數(shù)據(jù)包,ram模塊兩兩之間不能直接發(fā)送和接收數(shù)據(jù)包。而且,通過在底層傳輸網(wǎng)絡(一般為以太網(wǎng)或ip網(wǎng))上構(gòu)建一個疊加網(wǎng)絡,可把dam系統(tǒng)的所有模塊互聯(lián)成一個整體,圖1所示的部分模塊可以虛擬化為標準服務器或數(shù)據(jù)中心虛擬機上運行的軟件。
目前存在許多種疊加網(wǎng)絡,例如,運營商骨干橋接網(wǎng)絡(也被稱作在介質(zhì)訪問控制(mac)中封裝mac的網(wǎng)絡)、基于mpls的層2虛擬專用網(wǎng)(l2vpn)或?qū)?虛擬專用網(wǎng)(l3vpn)。為了獲取更好的可擴展能力,本公開的實施例假定底層網(wǎng)絡是純ip網(wǎng)絡(即,不涉及以太網(wǎng)和mpls底層網(wǎng)絡)。因為本公開的實施例僅僅集中在dam方面,所以其同時還假定疊加網(wǎng)絡提供了l2服務,具體而言,假定l2疊加隧道的有效載荷為ieee802.3以太網(wǎng)幀(即,本公開的實施例不涉及l(fā)3疊加網(wǎng)絡)。ietf層3上的網(wǎng)絡虛擬化(ietfnvo3)工作組的rfc7365和draft-ietf-nvo3-arch等文獻提供了用來描述l3底層網(wǎng)絡之上的l2和l3疊加網(wǎng)絡通用的架構(gòu)組件和術(shù)語,因此,本公開的實施例大量地引用了ietfnvo3的架構(gòu)組件和術(shù)語來描述dam模型。
雖然本公開的實施例大量地引用了ietfnvo3的架構(gòu)組件和術(shù)語,但是應該注意的是,本公開的實施例的應用場景和ietfnvo3的應用場景之間存在顯著的差異。ietfnvo3架構(gòu)針對數(shù)據(jù)中心的網(wǎng)絡虛擬化而設計,其中的l2疊加網(wǎng)絡的數(shù)量巨大且性質(zhì)上是動態(tài)的。但是在dam模型中,l2疊加網(wǎng)絡的數(shù)量非常有限且性質(zhì)上是相對靜態(tài)的。dam模型中的l2疊加網(wǎng)絡的性質(zhì)非常類似于ietfl2vpn,但是ietfl2vpn僅支持在mpls中封裝mpls或在通用路由封裝(gre)中封裝mpls的l2疊加隧道,而不支持dam模型中所需要的基于ip且兼容nvo3的l2疊加隧道。因此,本公開的實施例的目標可以被看作是對ietfl2vpn技術(shù)進行擴展以支持nvo3l2疊加隧道。
需要注意的是,在本公開的實施例中,nvo3l2疊加隧道指的是在ip底層網(wǎng)絡上建立的能夠由ietfnvo3架構(gòu)所支持的任何l2疊加隧道。當前最廣泛使用的ietfnvo3l2疊加網(wǎng)絡中的隧道類型是rfc7348中的虛擬可擴展局域網(wǎng)(vxlan)、draft-sridharan-virtualization-nvgre文檔中的采用通用路由封裝的網(wǎng)絡虛擬化(nvger)、以及rfc4023中的在gre中封裝mpls,而且這些隧道類型中也包含了在dam模型中將會使用的缺省隧道類型。
在圖1所示的dam模型中,一個重要的技術(shù)問題是建立運營商組播樹來有效地傳輸從中心節(jié)點到輻條節(jié)點(例如,從erm模塊到ram模塊)的組播(和廣播)流量。組播流量包括基礎(chǔ)組播流量和/或用戶ip組播(用戶組播)流量。在本公開的實施例中,基礎(chǔ)組播流量指的是由諸如地址解析協(xié)議(arp)、網(wǎng)絡發(fā)現(xiàn)(nd)等協(xié)議所產(chǎn)生的廣播、未知及組播(bum)以太幀的流量。
簡言之,本公開的實施例試圖對rfc7117中所規(guī)定的虛擬專用局域網(wǎng)服務(vpls)的組播機制進行擴展,從而將其應用于dam模型,以進行虛擬網(wǎng)絡(vn)實例自動發(fā)現(xiàn)和包含式/選擇式運營商組播樹的建立,從而能夠更有效地傳輸bum流量和/或用戶組播流量。
當前,除了draft-ietf-nvo3-mcast-framework文檔中的一些一般性討論之外,還沒有用于ietfnov3網(wǎng)絡的正式的標準的組播解決方案。可能的情況是,nvo3組播解決方案將會基于中央服務器。然而,由于在dam模型中使用的l2疊加網(wǎng)絡將會類似于傳統(tǒng)的l2vpn,所以本公開的實施例基于對rfc7117中的vpls組播解決方案進行擴展來設計dam組播解決方案。
在現(xiàn)階段,rfc7117是用于在vpls網(wǎng)絡中傳輸組播流量的標準解決方案。然而不幸的是,rfc7117僅僅支持基于mpls的組播隧道,例如通過資源預留協(xié)議-流量工程(rsvp-te)所建立的點對多點(p2mp)標簽交換路徑(lsp),或通過標簽分發(fā)協(xié)議的多點擴展(mldp)所建立的p2mplsp,而在我們所假定的部署dam的純 ip底層網(wǎng)絡中是不能夠建立這些組播隧道的。
可以參考同一發(fā)明人的標題為“一種分布式接入復用器dam疊加網(wǎng)絡系統(tǒng)及其裝置”的在先發(fā)明專利申請來獲取其他相關(guān)的技術(shù)內(nèi)容。
技術(shù)實現(xiàn)要素:
根據(jù)本公開的一個方面,提供了在dam系統(tǒng)中建立運營商組播樹的方法,包括:在所述dam系統(tǒng)中的網(wǎng)絡單元之間傳遞邊界網(wǎng)關(guān)協(xié)議bgp消息bgp-vnad-ipmsi或bgp-vnad-spmsi中的至少一種,用以建立所述運營商組播樹;其中所述bgp-vnad-ipmsi消息和所述bgp-vnad-spmsi消息包含以下屬性:mp_reach_nlri屬性、pmsi_tunnel屬性、以及bgp封裝擴展團體屬性。需要注意的是,本公開的實施例中的bgp指的是多協(xié)議擴展邊界網(wǎng)關(guān)協(xié)議(mp-bgp)。
可選地,通過所述mp_reach_nlri屬性,來發(fā)布可達目的網(wǎng)絡信息及相應的下一跳信息,并傳送vn實例下的虛擬網(wǎng)絡上下文標識符id;通過所述pmsi_tunnel屬性來攜帶運營商組播服務接口(pmsi)隧道信息;以及,通過所述bgp封裝擴展團體屬性來指示疊加網(wǎng)絡隧道封裝的隧道類型。
可選地,在所述網(wǎng)絡單元之間傳遞所述bgp-vnad-ipmsi消息時,將vn上下文id字段包含在所述mp_reach_nlri屬性中,用以區(qū)分不同的vn上下文。
可選地,通過所述pmsi_tunnel屬性中所包含的標志字段、隧道類型字段、vn上下文id字段、以及可變長度的隧道標識符字段,來攜帶所述pmsi隧道信息。
可選地,所述隧道類型字段被設置為支持建立指定組播源的協(xié)議獨立組播(pim-ssm)的組播樹。
可選地,所述隧道類型字段被設置為支持建立稀疏模式的協(xié)議獨立組播(pim-sm)的組播樹。
可選地,所述bgp封裝擴展團體屬性被設置為支持虛擬可擴展局域網(wǎng)。
可選地,所述bgp封裝擴展團體屬性被設置為支持使用通用路由封裝的網(wǎng)絡虛擬化。
可選地,所述bgp封裝擴展團體屬性被設置為支持在通用路由封裝中封裝多協(xié)議標簽交換。
根據(jù)本公開的實施例的另一個方面,所述bgp-vnad-ipmsi消息和所述bgp-vnad-spmsi消息還包含l2vpn標識符擴展團體屬性和路由目標擴展團體屬性。
可選地,通過所述l2vpn標識符擴展團體屬性來標識所述dam系統(tǒng)中的特定虛擬網(wǎng)絡實例;以及,通過所述路由目標擴展團體屬性來控制疊加網(wǎng)絡隧道的拓撲結(jié)構(gòu)。
根據(jù)本公開的另一個方面,提供了一種dam系統(tǒng)中的設備,包括:用以傳遞bgp消息bgp-vnad-ipmsi或bgp-vnad-spmsi中的至少一種、以建立運營商組播樹的處理裝置;其中所述bgp-vnad-ipmsi消息和所述bgp-vnad-spmsi消息包含以下屬性:mp_reach_nlri屬性、pmsi_tunnel屬性、以及bgp封裝擴展團體屬性。
可選地,所述處理裝置通過所述mp_reach_nlri屬性,來發(fā)布可達目的網(wǎng)絡信息及相應的下一跳信息,并傳送vn實例下的虛擬網(wǎng)絡上下文標識符id;通過所述pmsi_tunnel屬性來攜帶pmsi隧道信息;以及,通過所述bgp封裝擴展團體屬性來指示疊加網(wǎng)絡隧道封裝的隧道類型。
可選地,當所述處理裝置在所述網(wǎng)絡單元之間傳遞所述bgp-vnad-ipmsi消息時,將vn上下文id字段包含在所述mp_reach_nlri屬性中,用以區(qū)分不同的vn上下文。
可選地,通過所述pmsi_tunnel屬性中所包含的標志字段、隧道類型字段、vn上下文id字段、以及可變長度的隧道標識符字段,來攜帶所述pmsi隧道信息。
可選地,所述隧道類型字段被設置為支持建立指定組播源的協(xié)議獨立組播的組播樹。
可選地,所述隧道類型字段被設置為支持建立稀疏模式的協(xié)議獨立組播的組播樹。
可選地,所述bgp封裝擴展團體屬性被設置為支持虛擬可擴展局域網(wǎng)。
可選地,所述bgp封裝擴展團體屬性被設置為支持使用通用路由封裝的網(wǎng)絡虛擬化。
可選地,所述bgp封裝擴展團體屬性被設置為支持在通用路由封裝中封裝多協(xié)議標簽交換。
根據(jù)本公開的實施例的另一個方面,所述處理裝置所傳遞的所述bgp-vnad-ipmsi消息和所述bgp-vnad-spmsi消息還包含l2vpn標識符擴展團體屬性和路由目標擴展團體屬性。
可選地,所述處理裝置通過所述l2vpn標識符擴展團體屬性來標識所述dam系統(tǒng)中的特定虛擬網(wǎng)絡實例;以及,通過所述路由目標擴展團體屬性來控制疊加網(wǎng)絡隧道的拓撲結(jié)構(gòu)。
如上所述,本公開的實施例對rfc7117中規(guī)定的組播解決方案進行了擴展,使其能夠被應用于純ip底層網(wǎng)絡。而且,在本公開的實施例中所提出的這種擴展盡可能地保留了rfc7117中可以重用的已有機制和過程。
附圖說明
圖1示出了dam模型;
圖2示出了dam模塊之間的包含式運營商組播樹;
圖3示出了用于dam的包含式運營商組播樹的bgp信令;
圖4示出了用于dam的選擇式運營商組播樹的bgp信令;
圖5示出了pmsi_tunnel(pmsi_隧道)屬性的編碼格式;以及
圖6示出了根據(jù)本公開的實施例的dam系統(tǒng)中的設備。
具體實施方式
在以下可選的實施例的具體描述中,將參考構(gòu)成本公開的一部分的附圖。各個附圖通過示例的方式示出了能夠?qū)崿F(xiàn)本公開的特定實施例。但是,需要了解的是,示例實施例并不旨在窮盡根據(jù)本公開的所有實施例。
以下實施例采用ietfnvo3的架構(gòu)和術(shù)語來對分布式接入復用器來進行說明,并以基于nvo3架構(gòu)的l2業(yè)務為例來進行說明。
可以將需要加入到運營商組播樹中的dam模塊分為兩類——根節(jié)點和葉節(jié)點。根節(jié)點在點對多點疊加隧道上(即,在運營商組播樹上)向葉節(jié)點發(fā)送bum或用戶組播流量,在點對點疊加隧道上發(fā)送已知目的mac地址的單播流量。與此不同,葉節(jié)點在點對點疊加隧道上向根節(jié)點發(fā)送所有的流量(包括bum流量和已知目標mac地址的單播流量)。在如圖1所示的dam模型中,erm是根節(jié)點,ram是葉節(jié)點。
需要了解的是,并不是所有的dam模塊都需要加入到運營商組播樹。如果一個dam模塊沒有加入到任何運營商組播樹中,那么其發(fā)送和接收到的所有業(yè)務都將由點對點l2疊加隧道攜帶。例如,通??刂破矫婺K(cpm)不需要加入到任何運營商組播樹。對于業(yè)務平面模塊(spm)而言,根據(jù)具體應用,其可能需要也可能不需要加入到運營商多播樹。為了簡化描述,本公開的實施例假定沒有cpm節(jié)點和spm節(jié)點加入到運營商組播樹中,而是只有erm和ram加入到運營商組播樹中。在spm和/或cpm需要加入到運營商組播樹中的情況下,可以容易地將本公開的實施例的機制應用于spm和/或cpm。
最終,所建立的l2疊加隧道將會類似于圖1。所建立的每個運營商組播樹都以一個erm為根節(jié)點,且其具有到達所有ram或部分ram的葉節(jié)點。需要注意的是,每個erm都不是另一個erm的葉節(jié)點。在成功建立i-pmsi/s-pmsi隧道之后,erm必須在 i-pmsi/s-pmsi隧道上發(fā)送bum和用戶組播流量,而ram必須在i-pmsi/s-pmsi隧道上接收bum和用戶組播流量。
圖2示出了連接若干dam模塊的(匯聚多業(yè)務的)包含式運營商組播樹的相關(guān)細節(jié),其具有中心節(jié)點(erm)上的根節(jié)點以及輻條節(jié)點(ram)上的葉節(jié)點。圖2中的遠程接入復用器ram1、ram2包含網(wǎng)絡虛擬實體(nve)、特定接入技術(shù)的mac模塊、以及l(fā)2/l3轉(zhuǎn)發(fā)器。其中的nve是關(guān)鍵的nvo3功能實體,負責建立和維護各種類型的網(wǎng)絡虛擬化隧道,并且將來自l2/l3轉(zhuǎn)發(fā)器的數(shù)據(jù)按照指定類型封裝,通過疊加隧道送往遠端的dam模塊。其中的l2/l3轉(zhuǎn)發(fā)器實現(xiàn)基于層2或?qū)?的數(shù)據(jù)轉(zhuǎn)發(fā)。例如,它可以包含層3的ip業(yè)務轉(zhuǎn)發(fā)裝置和l2vpn業(yè)務轉(zhuǎn)發(fā)裝置。而其中的特定接入技術(shù)的mac模塊完成物理層的用戶接入。例如,所述物理層的用戶接入是在上文中結(jié)合圖1所描述的不同接入技術(shù)。在圖2中顯示了一個點對多點的包含式運營商組播樹,所有業(yè)務(在圖2的例子里是ip業(yè)務和l2vpn業(yè)務)的基礎(chǔ)組播流量都可承載于該運營商組播樹上,它們分別由獨立的虛擬網(wǎng)絡上下文vn上下文id1和vn上下文id2來進行區(qū)分。
本公開的實施例提出了用于建立如圖2所示的包含式運營商組播樹的方法。需要了解的是,盡管圖2中僅僅示出了包含式運營商組播樹,但是本公開的實施例不限于建立包含式運營商組播樹的方法。而且,需要注意的是,當引用諸如包含式/選擇式運營商組播樹、聚合包含式/選擇式運營商組播樹、運營商組播服務接口(pmsi)、包含式運營商組播服務接口(i-pmsi)、以及選擇式運營商組播服務接口(s-pmsi)的不同種類的組播路徑時,本公開的實施例遵循rfc7117。請參照rfc7117來獲取它們的準確含義。
下面將結(jié)合附圖說明本公開的實施例。具體地,在圖3中示出了用于在erm模塊和ram模塊之間建立基于ip且兼容nvo3的i-pmsi隧道的bgp信令機制,更具體地,圖3示出了在網(wǎng)絡單元之間傳遞的bgp-vnad-ipmsi消息。而在圖4示出了用于在erm模 塊和ram模塊之間建立基于ip且兼容nvo3的s-pmsi隧道的bgp信令機制,更具體地,在圖4中示出了在網(wǎng)絡單元之間傳遞的bgp-vnad-spmsi消息。
可選地,在所述dam系統(tǒng)中的網(wǎng)絡單元(包括erm、ram等)之間傳遞如圖3所示的bgp-vnad-ipmsi消息或如圖4所示的bgp-vnad-spmsi消息中的至少一種,用以建立所述運營商組播樹;其中所述bgp-vnad-ipmsi消息和所述bgp-vnad-spmsi消息包含以下屬性:mp_reach_nlri屬性、pmsi_tunnel屬性、以及bgp封裝擴展團體屬性。
可選地,通過所述mp_reach_nlri屬性,來發(fā)布可達目的網(wǎng)絡信息及相應的下一跳信息,并傳送vn實例下的虛擬網(wǎng)絡上下文標識符id;通過所述pmsi_tunnel屬性來攜帶運營商組播服務接口隧道信息;以及,通過所述bgp封裝擴展團體屬性來指示疊加網(wǎng)絡隧道封裝的隧道類型。
根據(jù)本公開的實施例的另一個方面,所述bgp-vnad-ipmsi消息和所述bgp-vnad-spmsi消息還包含l2vpn標識符擴展團體屬性和路由目標擴展團體屬性。
可選地,通過所述l2vpn標識符擴展團體屬性來標識所述dam系統(tǒng)中的特定虛擬網(wǎng)絡實例;以及,通過所述路由目標擴展團體屬性來控制疊加網(wǎng)絡隧道的拓撲結(jié)構(gòu)。
如上所述,新定義的bgp-vnad-ipmsi消息和bgp-vnad-spmsi消息至少可以包含下列五個屬性:
●mp_reach_nlri屬性
●pmsi_tunnel屬性
●l2vpn標識符擴展團體屬性
●bgp封裝擴展團體屬性
●路由目標擴展團體屬性
下面將結(jié)合bgp-vnad-ipmsi消息和bgp-vnad-spmsi消息分別對這五個屬性進行描述:
mp_reach_nlri屬性
bgp-vnad-ipmsi消息和bgp-vnad-spmsi消息的mp_reach_nlri屬性的格式是不同的。
(1)bgp-vnad-ipmsi消息的mp_reach_nlri屬性
bgp-vnad-ipmsi消息的mp_reach_nlri屬性使用的地址族標識符(afi)和子地址族標識符(safi)與rfc6074(以及rfc7117中用以包含式運營商組播樹自動發(fā)現(xiàn)/綁定)中所使用的地址族標識符(afi)和子地址族標識符(safi)相同,即afi=25(l2vpn)、safi=65(vpls)。然而,其中的nlri字段的編碼格式卻與rfc6074中所使用的編碼格式不同。除了vn自動發(fā)現(xiàn)之外,該nlri還通過信令指示vn上下文id(vncontextid)。
需要注意的是,這種格式的nlri最初定義在同一發(fā)明人的標題為“一種分布式接入復用器dam疊加網(wǎng)絡系統(tǒng)及其裝置”的在先發(fā)明專利申請中。在本公開的實施例中,在新定義的bgp-vnad-ipmsi消息中重用了nlri的這種格式。
(2)bgp-vnad-spmsi消息的mp_reach_nlri屬性
bgp-vnad-spmsi消息的mp_reach_nlri屬性重用了在rfc7117中所規(guī)定的針對“用以s-pmsi自動發(fā)現(xiàn)路由mcast-nlri”(即,afi=25(l2vpn),safi=8(mcast-vpls),路由類型=3(s-pmsi自動發(fā)現(xiàn)路由))進行編碼的相同格式。具體細節(jié)請參照rfc7117。
pmsi_tunnel屬性
最初在rfc6514中定義了pmsi_tunnel屬性的編碼格式,并且在rfc7117中對其進行了重用。類似于rfc7117,本公開的實施例了對該屬性進行重用以攜帶pmsi隧道信息。在圖5中示出了pmsi_tunnel屬性的編碼格式,所述編碼格式從rfc6514中復制并進行了較小的修改。
可選地,通過上述修改后的pmsi_tunnel屬性中所包含的標志字段、隧道類型字段、vn上下文id字段、以及可變長度的隧道標 識符字段,來攜帶所述pmsi隧道信息。
如上所述,從rfc6514中復制了pmsi_tunnel屬性的編碼格式并進行了較小的修改,例如,圖5中的“vn上下文id”字段在rfc6514中最初被命名為“mpls標簽”。然而,在圖5中,將該字段稱作“vn上下文id”,以表示本公開的實施例中的pmsi_tunnel屬性被用以攜帶點對多點nvo3疊加隧道的信息,而不是用于攜帶基于mpls的ietfl2vpn/l3vpn組播信息。
在最初由rfc6514所定義的pmsi_tunnel屬性中,將3個8位字節(jié)的“mpls標簽”字段限制為只攜帶20比特的值,在本公開的實施例中取消了這種限制,從而允許其攜帶24比特值或20比特值中的任何一種。在本公開的實施例中,根據(jù)nvo3的疊加隧道類型,3個8位字節(jié)的“vn上下文id”字段可以攜帶用于vxlan的疊加隧道的24比特的vxlan網(wǎng)絡標識符(vni)、或攜帶用于nvgre疊加隧道的24比特的虛擬子網(wǎng)標識符(vsid)、或攜帶用于在gre中封裝mpls的疊加隧道的20比特的mpls業(yè)務標簽。當這3個8位字節(jié)的“vn上下文id”字段編碼了20比特的mpls業(yè)務標簽時,僅僅使用高位的20比特,且保留了低位的4比特并應該將其設置為零,這與rfc6514中所規(guī)定的一致。
對于圖5中的“隧道類型(tunneltype)”字段,rfc7117將其中的值限制為只能是0、1、2或6中的一個,這些值分別對應于“不存在隧道信息”、“rsvp-tep2mplsp”、“l(fā)dpp2mplsp”、以及“入口復制”。也就是說,rfc7117不支持任何基于ip且兼容nvo3的pmsi隧道。為了支持基于ip且兼容nvo3的pmsi隧道類型,本公開的實施例允許pmsi_tunnel屬性中的“隧道類型”值被設置為3(pim-ssm樹)或4(pim-sm樹)。因此,可選地,所述隧道類型字段被設置為支持建立指定組播源的協(xié)議獨立組播的組播樹。并且,可選地,所述隧道類型字段被設置為支持建立稀疏模式的協(xié)議獨立組播的組播樹。
需要注意的是,雖然在互聯(lián)網(wǎng)數(shù)字分配機構(gòu)(iana)中定義了 pmsi隧道類型3和4,但是在rfc6514中卻將其專門定義為用于bgp/mplsip-vpn組播的bgp編碼。換句話說,如果不進行如本文所公開的適當擴展的話,那么其將不能與vpls組播的l2vpnnlri(afi=25、safi=65或8)進行組合使用。本公開的實施例允許pmsi隧道類型3(pim-ssm樹)和類型4(pim-sm樹)與l2vpnnlri進行組合使用,并且描述了這些新pmsi隧道類型與l2vpnnlri進行組合使用的適當方式。
如上所述,因為rfc7117僅支持將mpls業(yè)務標簽作為基于mpls的聚合運營商組播樹(即,rsvp-te或mldpp2mplsp)中的解復用符,所以在rfc7117中僅使用pmsi_tunnel屬性中的一個隧道類型字段來指定運營商組播樹就足夠了。然而,在dam中所使用的基于ip且兼容nvo3的點對多點疊加隧道中,使用pmsi_tunnel屬性中的一個隧道類型字段不足以指定葉節(jié)點對隧穿的組播業(yè)務進行解封裝所需要的所有必要的信息。除了指定運營商外部組播樹類型(例如,pim-ssm樹或pim-sm樹)之外,還需要指定葉節(jié)點對所接收到的分組進行解封裝并且恢復原始的bum幀或用戶組播分組的內(nèi)部vn封裝類型。這通過新引入的bgp封裝擴展團體屬性來實現(xiàn)。參照下文中的bgp封裝擴展團體以獲取具體細節(jié)。
l2vpn標識符擴展團體
如rfc6074和rfc7117中所述,還在bgp更新消息中提供了l2vpn標識符擴展團體,其意義、使用及編碼格式與rfc6074中所規(guī)定的相同。在dam模型中,這些l2vpn標識符擴展團體指示對應的bgp-vnad-ipmsi消息或bgp-vnad-spmsi消息所對應的l2vpn實例,因此,可以將其設想為對每個dam模塊中的特定vn實例(例如,如圖2中所描述的ip業(yè)務實例或l2vpn業(yè)務實例)進行標識。這個值必須本地配置于每個dam模塊的網(wǎng)絡虛擬實體上??梢允褂萌缭趓fc6074中所規(guī)定的兩種標準形式中的任何一種標準形式來對l2vpn標識符擴展團體進行編碼。
需要注意的是,如果vn上下文id表示分別為vxlan或nvger網(wǎng)絡中的vni或vsid等全局意義的vn標識符,那么在l2vpn標識符的值和vn上下文id的值之間將存在一對一的映射,盡管l2vpn標識符和vn上下文id具有不同字段長度,但是它們都唯一地標識vn實例。
bgp封裝擴展團體
在現(xiàn)有的vpls組播(rfc7117)和bgp-ad(rfc6074)的任何bgp更新消息中都不存在bgp封裝擴展團體。rfc7117和rfc6074都不能通過信令指示bgp隧道封裝的隧道類型。也就是說,在rfc7117中,vn上下文id始終是局部意義的mpls業(yè)務標簽。bgp封裝擴展團體最初在rfc5512中進行了定義,其為bgp不透明擴展團體(類型是0x030c),用以指示隧穿幀/分組的封裝所使用的隧道類型。在本公開的實施例中,最初僅支持分別對應于vxlan、nvgre、以及在gre中封裝mpls的隧道類型8、9、11。因此,可選地,所述bgp封裝擴展團體屬性被設置為支持虛擬可擴展局域網(wǎng)。可選地,所述bgp封裝擴展團體屬性被設置為支持使用通用路由封裝的網(wǎng)絡虛擬化。并且,可選地,所述bgp封裝擴展團體屬性被設置為支持在通用路由封裝中封裝多協(xié)議標簽交換。
簡而言之,“bgp封裝擴展團體”結(jié)合pmsi_tunnel屬性中的“隧道類型”字段,唯一地指定了下列內(nèi)容:(1)基于ip且兼容nvo3的運營商組播樹(pim-ssm樹或pim-sm樹中的一種);以及,(2)nvo3疊加隧道的封裝類型(vxlan、nvgre、或在gre中封裝mpls中的一種)。
需要注意的是,到目前為止僅有vxlan、nvgre、或在gre中封裝mpls適于dam疊加隧道。ietfnvo3工作組目前正在對新的隧道類型進行研究。如果ietf接受了任何新的隧道類型,那么本公開的實施例可以非常容易地通過使用bgp封裝擴展團體來擴展對其它新的nvo3疊加隧道類型的支持。
路由目標擴展團體
路由目標(rt)擴展團體與rfc7117和/或rfc6074中所使用的路由目標(rt)擴展團體相同。它是在許多應用的bgp更新消息中都出現(xiàn)的標準擴展團體;其意義、使用及編碼格式與rfc6074中所規(guī)定的相同。在本公開的實施例中不對其進行詳細闡述。
除了上述五個關(guān)鍵的bgp屬性之外,也可以適當?shù)貙⑵渌腷gp屬性添加到bgp更新消息中。本公開的實施例沒有列出這些屬性,因為這些屬性與dam模型中的vn自動發(fā)現(xiàn)和i-pmsi/s-pmsi信令無關(guān)。
在dam模型中,當erm需要進行下列操作時——即,需要:
(1)將其vn成員關(guān)系通過信令指示給其它dam模塊,用以建立點對點nvo3l2疊加隧道時;以及
(2)將i-pmsi隧道信息通過信令指示給ram,用以建立點對多點i-pmsi隧道時;
erm應該如圖3所示地宣告bgp更新消息(參考圖3右側(cè)的bgp更新消息)。在本公開的實施例中,這種格式的bgp更新消息被稱作bgp-vnad-ipmsi消息,其在一個bgp更新消息中同時支持vn自動發(fā)現(xiàn)信令和i-pmsi信令。
需要注意的是,當ram(或未加入到任何運營商組播樹的cpm或spm)需要將其vn成員關(guān)系通過信令指示給其它dam模塊,從而建立點對點nvo3l2疊加隧道(即,vn自動發(fā)現(xiàn))時,其應該宣告如圖3的左側(cè)所示的bgp更新消息(用灰色表示)。這種格式的bgp更新消息在同一發(fā)明人的標題為“一種分布式接入復用器dam疊加網(wǎng)絡系統(tǒng)及其裝置”的在先發(fā)明專利申請中進行了定義,在本公開的實施例中不再對其進行詳細闡述。在本公開的實施例中,這種格式的bgp更新消息將被稱作bgp-vnad-only消息。
類似地,在該dam模型中,當erm需要將s-pmsi隧道信息通過信令指示給ram,用以建立點對多點s-pmsi隧道時,erm應該如圖4所示地宣告bgp更新消息。在本公開的實施例中,這種bgp更新消息被稱作bgp-vnad-spmsi消息。
需要注意的是,s-pmsi隧道被用以傳輸特定的用戶組播流,這些特定的用戶組播流通常為高數(shù)據(jù)量的特定用戶組播流而建立。具體細節(jié)請參照rfc7117。
建立這些pmsi隧道的過程與rfc7117中所規(guī)定的過程類似,但是對rfc7117進行了如下修改:
(1)將其擴展為支持pmsi隧道類型3和類型4,從而使得pim-ssm樹和/或pim-sm樹能夠被建立為包含式/選擇式運營商組播樹。
(2)對bgp更新消息的格式進行了修改。在bgp更新消息中添加新的bgp封裝擴展團體(最初在rfc5512中定義,但是在本公開的實施例中被重用),以指示業(yè)務幀的封裝所使用的bgp封裝隧道類型。在本公開的實施例中,支持bgp封裝隧道類型8、9、11,其分別對應于vxlan、nvger和在gre中封裝mpls。
需要注意的是,如圖5所示,rfc7117將其中的“隧道類型(tunneltype)”字段的值限制為只能是0、1、2或6中的一個,這些值分別對應于“不存在隧道信息”、“rsvp-tep2mplsp”、“l(fā)dpp2mplsp”、以及“入口復制”。因此,rfc7117僅僅能夠建立基于mpls的運營商組播樹(rsvp-te或mldpp2mplsp)。所以需要對rfc7117進行擴展,以在dam模塊之間建立基于ip且兼容nvo3的運營商組播樹。
下面的偽算法示出了mp-bgp處理程序能夠如何擴展以支持基于ip且兼容nvo3的i-pmsi隧道和s-pmsi隧道。
設l為vplsnlri(afi=25、safi=65)的長度子字段的值,route_type為mcast-vplsnlri(afi=25、safi=8)的路由類型子字段的值,pmsi_tunnel_type為pmsi_tunnel屬性的隧道類型的子字段的值。
nvo3點對點和/或點對多點疊加隧道的拓撲由bgp-vnad-only消息、bgp-vnad-ipmsi消息、以及bgp-vnad-spmsi消息中的路由目標擴展團體(也被稱為輸出rt)和針對dam模塊上的每個vn實例進行配置的輸入路由目標(輸入rt)進行控制。本公開的實施例沒有詳細闡述這種標準的機制。當輸出rt值與輸入rt值的組合允許將bgp-vnad-ipmsi消息或bgp-vnad-spmsi消息導入到一個dam模塊(即,葉節(jié)點)上的vn實例中時,可以從中提取下列信息:
(1)基于ip且兼容nvo3的運營商組播樹的類型(pim-ssm樹或pim-sm樹中的一種)
(2)nvo3疊加隧道的類型(vxlan、nvgre、或在gre中封裝mpls中的一種)
(3)運營商組播樹的參數(shù)(根節(jié)點的系統(tǒng)ip地址以及運營商組播樹的組ip地址)
(4)對來自運營商組播樹的bum流量或用戶組播流量進行解復用的vn上下文id的值(需要注意的是:如果上下文id=0,則運營商組播樹是非聚合的)
(5)在s-pmsi消息的情況下,用戶組播流(通過用戶組播源地址和組ip地址進行標識)綁定至選擇式運營商組播樹
在對bgp-vnad-ipmsi消息或bgp-vnad-spmsi消息進行成功解碼之后,dam模塊應該通過發(fā)送igmp(互聯(lián)網(wǎng)組管理協(xié)議)加入消息來立即加入pim-ssm或pim-sm樹,并且準備從所建立的包含式或選擇式運營商組播樹接收(可選地進行解復用)bum流或用戶組播流。本公開的實施例沒有對其進行詳細闡述。
圖6示出了根據(jù)本公開的實施例的dam系統(tǒng)中的設備600。設備600包含處理裝置601,處理裝置601用以執(zhí)行如上所述的在dam系統(tǒng)中建立運營商組播樹的各種方法。
可選地,處理裝置601用以傳遞bgp消息bgp-vnad-ipmsi或bgp-vnad-spmsi中的至少一種、以建立運營商組播樹;其中所述bgp-vnad-ipmsi消息和所述bgp-vnad-spmsi消息包含以下屬性:mp_reach_nlri屬性、pmsi_tunnel屬性、以及bgp封裝擴展團體屬性。
可選地,處理裝置601通過所述mp_reach_nlri屬性,來發(fā)布可達目的網(wǎng)絡信息及相應的下一跳信息,并傳送vn實例下的虛擬網(wǎng)絡上下文標識符id;通過所述pmsi_tunnel屬性來攜帶pmsi隧道信息;以及,通過所述bgp封裝擴展團體屬性來指示疊加網(wǎng)絡隧道封裝的隧道類型。
可選地,處理裝置601所傳遞的所述bgp-vnad-ipmsi消息和所述bgp-vnad-spmsi消息還包含l2vpn標識符擴展團體屬性和路由目標擴展團體屬性。
可選地,處理裝置601通過所述l2vpn標識符擴展團體屬性來標識所述dam系統(tǒng)中的特定虛擬網(wǎng)絡實例;以及,通過所述路由目標擴展團體屬性來控制疊加網(wǎng)絡隧道的拓撲結(jié)構(gòu)。
綜上所述,本公開的實施例已經(jīng)提出了用于dam模型的下列機制。
提出了兩種新的bgp更新消息格式,在本公開的實施例中被稱作bgp-vand-ipmsi消息和bgp-vnad-spmsi消息,由該dam模型中的運營商組播樹的根節(jié)點(即,erm)宣告這兩種消息,用 于在一個bgp更新消息進行vn自動發(fā)現(xiàn)和i-pmsi的信令指示、或用以bgp更新消息中的s-pmsi信令指示。所提出的bgp-vand-ipmsi消息和bgp-vnad-spmsi消息可以與同一發(fā)明人的在先發(fā)明專利申請(標題為“一種分布式接入復用器dam疊加網(wǎng)絡系統(tǒng)及其裝置”)中所提出的bgp-vnad-only消息共存,所述bgp-vnad-only消息由不加入到運營商組播樹中的葉節(jié)點(即,ram、cpm、spm)進行宣告。
已經(jīng)簡要地對如何在dam模型中建立攜帶bum業(yè)務和用戶組播業(yè)務的包含式/選擇式運營商組播樹進行了描述。但是,需要了解的是,本公開的實施例所要保護的范圍僅由權(quán)利要求的內(nèi)容限定。