專利名稱:一種實(shí)現(xiàn)vpn組播的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種組播方法,特別是一種在組播域中實(shí)現(xiàn)VPN組播的方法。屬通信領(lǐng)域。
背景技術(shù):
網(wǎng)絡(luò)中,每個(gè)用戶接入點(diǎn)稱作一個(gè)站點(diǎn)(Site)。VPN(虛擬專用網(wǎng))網(wǎng)絡(luò)中包括如下實(shí)體運(yùn)營(yíng)商邊界路由器(Provider Edge Router,簡(jiǎn)稱PE)用于在運(yùn)營(yíng)商骨干網(wǎng)中為用戶提供網(wǎng)絡(luò)接口、存儲(chǔ)虛擬路由(VirtualRouting Forwarding Instance,簡(jiǎn)稱VRF)轉(zhuǎn)發(fā)、處理VPN-IPv4路由、接入位于各個(gè)站點(diǎn)的VPN子網(wǎng),是VPN的主要實(shí)現(xiàn)部分;用戶邊界路由器(Customer Edge Router,簡(jiǎn)稱CE),用戶VPN站點(diǎn)中接入運(yùn)營(yíng)商骨干網(wǎng)的網(wǎng)絡(luò)接口,匯聚本站點(diǎn)的私網(wǎng)路由,發(fā)布和接收用戶網(wǎng)絡(luò)路由;運(yùn)營(yíng)商網(wǎng)絡(luò)核心路由器(簡(jiǎn)稱P路由器),承擔(dān)著所有數(shù)據(jù)包在骨干網(wǎng)中轉(zhuǎn)發(fā)的任務(wù);每個(gè)站點(diǎn)的VPN用戶經(jīng)用戶邊界路由器CE連接本地運(yùn)營(yíng)商邊界路由器PE,并在PE上對(duì)應(yīng)特定的存儲(chǔ)虛擬路由VRF。VRF上配置一些策略,規(guī)定該站點(diǎn)的路由器可以接收哪些站點(diǎn)的路由信息,可以向外發(fā)布那些路由信息。每個(gè)PE根據(jù)BGP(邊界網(wǎng)關(guān)協(xié)議)的擴(kuò)展信息進(jìn)行路由計(jì)算,生成每個(gè)相關(guān)VPN的路由表。運(yùn)營(yíng)商邊界路由器PE設(shè)備維護(hù)多個(gè)路由表,支持動(dòng)態(tài)路由協(xié)議的多實(shí)例。
運(yùn)營(yíng)商網(wǎng)絡(luò)是用于傳遞不同站點(diǎn)的組播數(shù)據(jù)包的公網(wǎng)網(wǎng)絡(luò)。其中,包括公網(wǎng)組播組(簡(jiǎn)稱P-Group),公網(wǎng)組播分發(fā)樹(shù)(簡(jiǎn)稱P-Tree)。
用戶的私網(wǎng)是一個(gè)獨(dú)立的、自治的IPv4網(wǎng)絡(luò)系統(tǒng)。其中,包括私網(wǎng)組播組(簡(jiǎn)稱C-Group),私網(wǎng)組播分發(fā)樹(shù)(簡(jiǎn)稱C-Tree)。
組播VPN可以以多種形式方案實(shí)現(xiàn),如單播方案(簡(jiǎn)稱GRE Tunnel)是在用戶VPN網(wǎng)絡(luò)的所有CE之間建立組播的全連接關(guān)系,完成點(diǎn)對(duì)點(diǎn)的隧道連接。這種方案存在著嚴(yán)重的效率問(wèn)題,每改變其中的一個(gè)CE,其它所有的都需要重新配置,因此系統(tǒng)的擴(kuò)展性能很差。
組播域方案(Multicast-Domain,簡(jiǎn)稱MD),是通過(guò)在現(xiàn)有的運(yùn)營(yíng)商網(wǎng)絡(luò)中為每個(gè)VPN建立并維護(hù)一個(gè)組播域來(lái)實(shí)現(xiàn)的。它實(shí)質(zhì)上是一個(gè)多端口隧道,每一個(gè)PE路由器都是這個(gè)隧道的一個(gè)端口,從任何端口進(jìn)入的數(shù)據(jù)都會(huì)在該端口以外的其它端口上流出,所以用戶可以簡(jiǎn)單的把該組播域看作是一個(gè)網(wǎng)絡(luò)切換器(LAN Switch)。這種方案中,組播數(shù)據(jù)在骨干網(wǎng)組播域路由器中采用洪泛的方式傳送,數(shù)據(jù)轉(zhuǎn)發(fā)不是最優(yōu)轉(zhuǎn)發(fā),會(huì)到達(dá)沒(méi)有私網(wǎng)接收者的路由器,然后被丟棄掉,這在一定程度上浪費(fèi)了骨干網(wǎng)中的網(wǎng)絡(luò)帶寬,也增加了路由器的處理負(fù)荷。
組播域(MD)改進(jìn)方案,當(dāng)組播域中某個(gè)VPN的某個(gè)組播組數(shù)據(jù)傳輸量超過(guò)一定的閾值時(shí),采用VPN-IP PIM方案會(huì)為該組播組建立一個(gè)動(dòng)態(tài)的組播分發(fā)樹(shù)(Multicast Distribution Tree,簡(jiǎn)稱MDT),組播流量可以沿著這條動(dòng)態(tài)MDT優(yōu)化路徑流動(dòng)。這樣既能減小運(yùn)營(yíng)商管理公網(wǎng)中組播路由的負(fù)擔(dān),同時(shí)也為高速的組播數(shù)據(jù)傳輸提供了保障。事實(shí)上,這種為VPN建立動(dòng)態(tài)MDT的方案仍然存在著一定的局限性,因?yàn)樵谶\(yùn)營(yíng)上網(wǎng)絡(luò)中需要支持的VPN數(shù)目很多,而且每個(gè)VPN中又有很多動(dòng)態(tài)MDT,所以采用改進(jìn)的組播域方法時(shí)公網(wǎng)中組播路由表項(xiàng)依然很多;同時(shí),在這種方案當(dāng)中只能檢測(cè)公網(wǎng)組播組中流量大的情況,而對(duì)站點(diǎn)分布稀疏所造成的缺憾卻不能很好的處理。
在現(xiàn)有VPN組播方案中,改進(jìn)的組播域方案是采用對(duì)流量的檢測(cè),其路由表項(xiàng)完全可控,同時(shí)又能針對(duì)特定的數(shù)據(jù)源進(jìn)行優(yōu)化傳輸?shù)膬?yōu)勢(shì)獲得了大多數(shù)研究者的認(rèn)可。但是,改進(jìn)的組播域方案只考慮了某個(gè)源發(fā)送速率高的問(wèn)題,而沒(méi)有考慮站點(diǎn)分布稀疏的問(wèn)題,而這時(shí)的帶寬浪費(fèi)依然是非常大的。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題在于針對(duì)現(xiàn)有技術(shù)中的不足,提供一種在組播域中實(shí)現(xiàn)VPN組播的方法,該方法考慮到接收成員分布稀疏的情況,針對(duì)該情況,引入了覆蓋度檢測(cè)的概念,根據(jù)覆蓋度的大小來(lái)確定P-Tree,減少了帶寬的浪費(fèi)。
為此,本發(fā)明提供了一種在組播域中實(shí)現(xiàn)VPN組播的方法,包括如下步驟步驟1、VPN網(wǎng)絡(luò)側(cè)按照如下公式,對(duì)當(dāng)前組播組中接收成員的覆蓋度進(jìn)行計(jì)算 其中,PEs為運(yùn)營(yíng)商邊界路由器;C-Group為私網(wǎng)組播組;P-Tree為公網(wǎng)組播分發(fā)樹(shù);步驟2、VPN網(wǎng)絡(luò)側(cè)判斷該覆蓋度的數(shù)值是否小于預(yù)先設(shè)定的覆蓋度閾值,如果是,則執(zhí)行步驟3;如果否,則結(jié)束;步驟3、VPN網(wǎng)絡(luò)側(cè)建立大于等于預(yù)先設(shè)定的覆蓋度閾值的一個(gè)公網(wǎng)組播分發(fā)樹(shù)。
本發(fā)明針對(duì)改進(jìn)的MD方案,提出了一個(gè)新的覆蓋度的概念,通過(guò)覆蓋度的檢測(cè),減少了現(xiàn)有技術(shù)中對(duì)接收成員站點(diǎn)分布稀疏所造成的帶寬浪費(fèi),在覆蓋度不滿足條件的情況下,通過(guò)選擇或新建一個(gè)P-Tree的方法,使得滿足覆蓋度的要求,就避免了接收成員站點(diǎn)分布稀疏的情況,減少了帶寬的浪費(fèi)。
下面通過(guò)附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
圖1為本發(fā)明第一實(shí)施例的流程圖;圖2為本發(fā)明第一實(shí)施例中步驟1的具體流程圖;圖3為本發(fā)明第一實(shí)施例中步驟3的具體流程圖;圖4為本發(fā)明的一個(gè)較佳實(shí)施例的流程圖。
具體實(shí)施例方式
下面首先介紹一下本發(fā)明所涉及的相關(guān)術(shù)語(yǔ)。
組管理路由器為進(jìn)行管理和維護(hù)工作并用于完成映射功能的路由器。組管理路由器是相對(duì)于每個(gè)C-Group來(lái)說(shuō)的。如,切換到公網(wǎng)中的私網(wǎng)組播組(C-Group),需要為其選擇一個(gè)公網(wǎng)組播分發(fā)樹(shù)(P-Tree)作為它的分發(fā)樹(shù)。組管理路由器就是監(jiān)督和管理C-Group,為其建立分發(fā)樹(shù)P-Tree,并通知C-Group的其它接收者運(yùn)營(yíng)商邊界路由器PE切換到該P(yáng)-Tree上。一個(gè)路由器實(shí)體可能包含了很多的組管理路由器,這些組管理路由器可以共享該路由器的分發(fā)樹(shù),或者向該路由器申請(qǐng)新建一棵分發(fā)樹(shù)。我們也用組管理路由器來(lái)表示一個(gè)包含組管理路由器的路由器實(shí)體。在實(shí)際中,組管理路由器可以由其它功能實(shí)體來(lái)承擔(dān),例如,PE路由器。
覆蓋度是指當(dāng)私網(wǎng)組播組(C-Group)的接收者PE成員都是P-Tree的PE成員時(shí)(也就是說(shuō)兩者是子集與原集的關(guān)系),C-Group對(duì)P-Tree的覆蓋程度。其值為
之間的一個(gè)實(shí)數(shù)值。如果采用某個(gè)P-Tree來(lái)分發(fā)該C-Group的數(shù)據(jù)包,覆蓋度越小,則表示帶寬浪費(fèi)程度越大。其公式如下 其中,PEs為運(yùn)營(yíng)商邊界路由器;C-Group為私網(wǎng)組播組;P-Tree為公網(wǎng)組播分發(fā)樹(shù)。
組播域?yàn)槊總€(gè)VPN所配置的一棵的分發(fā)樹(shù),它是一棵靜態(tài)共享樹(shù),包括了VPN的所有PE成員,所有的C-Group默認(rèn)使用這棵樹(shù)分發(fā)數(shù)據(jù),一些VPN的控制消息也在這棵樹(shù)中進(jìn)行分發(fā)。
實(shí)施例1圖1為本發(fā)明第一實(shí)施例的流程圖。如圖1所示,本發(fā)明包括如下步驟步驟1、VPN網(wǎng)絡(luò)側(cè)按照如下公式,對(duì)當(dāng)前組播組中接收成員的覆蓋度進(jìn)行計(jì)算 其中,PEs為運(yùn)營(yíng)商邊界路由器;C-Group為私網(wǎng)組播組;P-Tree為公網(wǎng)組播分發(fā)樹(shù);步驟2、VPN網(wǎng)絡(luò)側(cè)判斷該覆蓋度的數(shù)值是否小于預(yù)先設(shè)定的覆蓋度閾值,如果是,則執(zhí)行步驟3;如果否,則結(jié)束;步驟3、VPN網(wǎng)絡(luò)側(cè)建立大于等于預(yù)先設(shè)定的覆蓋度閾值的一個(gè)公網(wǎng)組播分發(fā)樹(shù)。
步驟3為選用一個(gè)滿足大于等于覆蓋度閾值的,并能覆蓋當(dāng)前組播組所有接收成員的現(xiàn)有的公網(wǎng)組播分發(fā)樹(shù),或者為當(dāng)前組播組所有接收成員新建一個(gè)公網(wǎng)組播分發(fā)樹(shù)。
實(shí)施例2圖2為本發(fā)明第一實(shí)施例中步驟1的具體流程圖。本實(shí)施例與實(shí)施例1的區(qū)別僅在于,將實(shí)施例1中的步驟1具體細(xì)化,其余步驟同實(shí)施例1。如圖2所示,步驟1具體為步驟11、所述VPN網(wǎng)絡(luò)側(cè)中的組管理路由器周期性的在組播域中發(fā)送覆蓋度查詢消息,用于查詢當(dāng)前的接收者PEs列表;步驟12、VPN中收到查詢消息的路由器確定發(fā)出所述查詢消息的所述組管理路由器;步驟13、收到查詢消息的路由器判斷所述查詢消息的類型,如果是查詢所有組,則執(zhí)行步驟14;如果是查詢部分組,則執(zhí)行步驟17;
步驟14、收到查詢消息的路由器把其路由轉(zhuǎn)發(fā)表中屬于所述組管理路由器管理的組播組地址全部發(fā)回到所述組管理路由器;步驟15、所述組管理路由器收集到所述的響應(yīng)消息,經(jīng)過(guò)統(tǒng)計(jì)得出所查詢的組的接收成員列表;步驟16、所述組管理路由器分析統(tǒng)計(jì)結(jié)果,計(jì)算出當(dāng)前每個(gè)組的覆蓋度,按照如下公式 其中,PEs為運(yùn)營(yíng)商邊界路由器,C-Group為私網(wǎng)組播組,P-Tree為公網(wǎng)組播分發(fā)樹(shù);然后結(jié)束;步驟17、收到查詢消息的路由器確認(rèn)所要查詢的組,如果自己連接有該組的接收成員,則將該組地址發(fā)回到所述組管理路由器。
實(shí)施例3圖3為本發(fā)明第一實(shí)施例中步驟3的具體流程圖。本實(shí)施例與實(shí)施例1的區(qū)別僅在于將步驟3進(jìn)行具體細(xì)化,如圖3所示,步驟3的具體步驟為步驟31、VPN網(wǎng)絡(luò)側(cè)現(xiàn)有P-Tree中,是否有大于等于覆蓋度閾值的,并能覆蓋當(dāng)前組播組所述接收成員的現(xiàn)有P-Tree,如果是,則執(zhí)行步驟32;如果否,則執(zhí)行步驟34;步驟32、選擇一個(gè)大于等于覆蓋度閾值的現(xiàn)有P-Tree分發(fā)信息;然后結(jié)束;步驟33、為當(dāng)前組播組中所有接收成員新建一個(gè)P-Tree。
實(shí)施例4圖4為本發(fā)明的一個(gè)較佳實(shí)施例的流程圖。如圖4所示,本發(fā)明包括如下步驟步驟11、所述VPN網(wǎng)絡(luò)側(cè)中的組管理路由器周期性的在組播域中發(fā)送覆蓋度查詢消息,用于查詢當(dāng)前的接收者PEs列表;
步驟12、VPN中收到查詢消息的路由器確定發(fā)出所述查詢消息的所述組管理路由器;步驟13、收到查詢消息的路由器判斷所述查詢消息的類型,如果是查詢所有組,則執(zhí)行步驟14;如果是查詢部分組,則執(zhí)行步驟17;步驟14、收到查詢消息的路由器把其路由轉(zhuǎn)發(fā)表中屬于所述組管理路由器管理的組播組地址全部發(fā)回到所述組管理路由器;步驟15、所述組管理路由器收集到所述的響應(yīng)消息,經(jīng)過(guò)統(tǒng)計(jì)得出所查詢的組的接收成員列表;步驟16、所述組管理路由器分析統(tǒng)計(jì)結(jié)果,計(jì)算出當(dāng)前每個(gè)組的覆蓋度,按照如下公式 其中,PEs為運(yùn)營(yíng)商邊界路由器,C-Group為私網(wǎng)組播組,P-Tree為公網(wǎng)組播分發(fā)樹(shù);然后結(jié)束;步驟17、收到查詢消息的路由器確認(rèn)所要查詢的組,如果自己連接有該組的接收成員,則將該組地址發(fā)回到所述組管理路由器;步驟2、VPN網(wǎng)絡(luò)側(cè)判斷該覆蓋度是否小于預(yù)先設(shè)定的覆蓋度閾值,如果是,則執(zhí)行步驟3;如果否,則結(jié)束;步驟31、VPN網(wǎng)絡(luò)側(cè)現(xiàn)有P-Tree中,是否有大于等于覆蓋度閾值的,并能覆蓋當(dāng)前組播組所述接收成員的現(xiàn)有P-Tree,如果是,則執(zhí)行步驟32;如果否,則執(zhí)行步驟34;步驟32、選擇一個(gè)大于等于覆蓋度閾值的現(xiàn)有P-Tree分發(fā)信息;然后結(jié)束;步驟33、為當(dāng)前組播組中所述接收成員新建一個(gè)P-Tree。
最后所應(yīng)說(shuō)明的是,以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非限制,盡管參照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明技術(shù)方案的精神和范圍。
權(quán)利要求
1.一種在組播域中實(shí)現(xiàn)VPN組播的方法,其特征在于,包括如下步驟步驟1、VPN網(wǎng)絡(luò)側(cè)按照如下公式,對(duì)當(dāng)前組播組中接收成員的覆蓋度進(jìn)行計(jì)算 其中,PEs為運(yùn)營(yíng)商邊界路由器;C-Group為私網(wǎng)組播組;P-Tree為公網(wǎng)組播分發(fā)樹(shù);步驟2、VPN網(wǎng)絡(luò)側(cè)判斷該覆蓋度的數(shù)值是否小于預(yù)先設(shè)定的覆蓋度閾值,如果是,則執(zhí)行步驟3;如果否,則結(jié)束;步驟3、VPN網(wǎng)絡(luò)側(cè)建立大于等于預(yù)先設(shè)定的覆蓋度閾值的一個(gè)公網(wǎng)組播分發(fā)樹(shù)。
2.根據(jù)權(quán)利要求1所述的在組播域中實(shí)現(xiàn)VPN組播的方法,其特征在于,所述步驟1具體為步驟11、所述VPN網(wǎng)絡(luò)側(cè)中的組管理路由器周期性的在組播域中發(fā)送覆蓋度查詢消息,用于查詢當(dāng)前的接收者PEs列表;步驟12、VPN中收到查詢消息的路由器確定發(fā)出所述查詢消息的所述組管理路由器;步驟13、收到查詢消息的路由器判斷所述查詢消息的類型,如果是查詢所有組,則執(zhí)行步驟14;如果是查詢部分組,則執(zhí)行步驟17;步驟14、收到查詢消息的路由器把其路由轉(zhuǎn)發(fā)表中屬于所述組管理路由器管理的組播組地址全部發(fā)回到所述組管理路由器;步驟15、所述組管理路由器收集到所述的響應(yīng)消息,經(jīng)過(guò)統(tǒng)計(jì)得出所查詢的組的接收成員列表;步驟16、所述組管理路由器分析統(tǒng)計(jì)結(jié)果,計(jì)算出當(dāng)前每個(gè)組的覆蓋度,按照如下公式 其中,PEs為運(yùn)營(yíng)商邊界路由器,C-Group為私網(wǎng)組播組,P-Tree為公網(wǎng)組播分發(fā)樹(shù);然后結(jié)束;步驟17、收到查詢消息的路由器確認(rèn)所要查詢的組,如果自己連接有該組的接收成員,則將該組地址發(fā)回到所述組管理路由器;然后執(zhí)行步驟15。
3.根據(jù)權(quán)利要求3所述的在組播域中實(shí)現(xiàn)VPN組播的方法,其特征在于,所述步驟3為選用一個(gè)滿足大于等于覆蓋度閾值的,并能覆蓋當(dāng)前組播組所有接收成員的現(xiàn)有的公網(wǎng)組播分發(fā)樹(shù),或者為當(dāng)前組播組所有接收成員新建一個(gè)公網(wǎng)組播分發(fā)樹(shù)。
4.根據(jù)權(quán)利要求1所述的在組播域中實(shí)現(xiàn)VPN組播的方法,其特征在于,所述步驟3具體為步驟31、VPN網(wǎng)絡(luò)側(cè)現(xiàn)有P-Tree中,是否有大于等于覆蓋度閾值的,并能覆蓋當(dāng)前組播組所述接收成員的現(xiàn)有P-Tree,如果是,則執(zhí)行步驟32;如果否,則執(zhí)行步驟34;步驟32、選擇一個(gè)大于等于覆蓋度閾值的現(xiàn)有P-Tree分發(fā)信息;然后結(jié)束;步驟33、為當(dāng)前組播組中所述接收成員新建一個(gè)P-Tree。
全文摘要
本發(fā)明涉及一種在組播域中實(shí)現(xiàn)VPN組播的方法,包括VPN網(wǎng)絡(luò)側(cè)對(duì)當(dāng)前組播組中接收成員的覆蓋度進(jìn)行計(jì)算;VPN網(wǎng)絡(luò)側(cè)判斷該覆蓋度的數(shù)值是否小于預(yù)先設(shè)定的覆蓋度閾值,如果是,則VPN網(wǎng)絡(luò)側(cè)建立大于等于預(yù)先設(shè)定的覆蓋度閾值的一個(gè)公網(wǎng)組播分發(fā)樹(shù)。本發(fā)明通過(guò)覆蓋度的計(jì)算,在覆蓋度不滿足條件的情況下,通過(guò)選擇或新建一個(gè)P-Tree的方法,使得滿足覆蓋度的要求,就避免了接收成員站點(diǎn)分布稀疏的情況,減少了帶寬的浪費(fèi)。
文檔編號(hào)H04L12/56GK1964309SQ20061014116
公開(kāi)日2007年5月16日 申請(qǐng)日期2006年10月13日 優(yōu)先權(quán)日2006年10月13日
發(fā)明者林華生, 陸慧梅, 孫少陵, 向勇, 劉鴻, 高建敏 申請(qǐng)人:中國(guó)移動(dòng)通信集團(tuán)公司, 清華大學(xué)