專利名稱:跨虛擬專用網(wǎng)絡(luò)的指定信源組播方法、裝置及網(wǎng)絡(luò)設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù),具體地,涉及一種跨虛擬專用網(wǎng)絡(luò)的指定信源組播方法、裝置及網(wǎng)絡(luò)設(shè)備。
背景技術(shù):
基于多協(xié)議標(biāo)簽交換(Mult1-Protocol Label Switching, MPLS)的虛擬專用網(wǎng)絡(luò)(Virtual Private Network, VPN)第三層(L3VPN)是服務(wù)提供商提供的一種基于邊緣路由器(Provider Edge Router, PE)的VPN技術(shù),它使用邊界網(wǎng)關(guān)協(xié)議(Border GatewayProtocol,BGP)在服務(wù)提供商(Service Provider, SP)的骨干網(wǎng)上發(fā)布VPN路由,使用MPLS技術(shù)在SP骨干網(wǎng)上轉(zhuǎn)發(fā)VPN報(bào)文。而組播VPN是一種基于MPLS L3VPN網(wǎng)絡(luò)傳播VPN內(nèi)組播數(shù)據(jù)的技術(shù),它的網(wǎng)絡(luò)基本模型如圖1所示:通信終端(Communication Edge, CE),位于用戶網(wǎng)絡(luò)邊緣的設(shè)備,邏輯上屬于用戶的VPN,CE的某個(gè)接口與SP的運(yùn)營(yíng)商PE直接相連,CE可以是主機(jī)也可以是路由器或者交換機(jī);在圖1中CEl屬于VPNLCE2屬于VPN2, CEl和CE2分別與PEl連接,CE3屬于VPNl,CE4屬于VPN2,CE3和CE4分別與PE2連接,PE上和CE連接的接口可以稱為私網(wǎng)接口。PE是SP提供的骨干網(wǎng)的邊緣設(shè)備,如圖1中所示PEl和PE2,PE設(shè)備邏輯上屬于SP, PE與CE直連,且一臺(tái)PE可以連接多個(gè)屬于不同或相同VPN的CE。供應(yīng)商設(shè)備(Provider Router, P),位于SP骨干網(wǎng)內(nèi)的核心設(shè)備。P不和CE相連,負(fù)責(zé)公網(wǎng)的路由和快速轉(zhuǎn)發(fā)。圖1中的網(wǎng)絡(luò)拓?fù)洌琕PN內(nèi)運(yùn)行組播協(xié)議來(lái)構(gòu)建VPN內(nèi)的組播路由并為VPN轉(zhuǎn)發(fā)組播流;當(dāng)PEl接收到CEl和CE2到達(dá)的組播流時(shí),將其轉(zhuǎn)換成公網(wǎng)能傳播的組播數(shù)據(jù)格式在公網(wǎng)內(nèi)傳播,使其傳播到連接其它VPN站點(diǎn)的PE2上;PE2收到公網(wǎng)組播數(shù)據(jù)的時(shí)候?qū)⑵浣夥庋b并轉(zhuǎn)發(fā)到對(duì)應(yīng)的VPN站點(diǎn)中。而跨VPN組播是對(duì)上述技術(shù)的擴(kuò)展,即組播VPN的擴(kuò)展應(yīng)用(簡(jiǎn)稱Extranet-MVPN)使得一個(gè)組播VPN內(nèi)的組播源可以將組播流發(fā)布給其它組播VPN的組播接收端。即在圖1所示的拓?fù)浣Y(jié)構(gòu)中,組播源和組播接收端可以存在于VPNl和VPN2中,通過(guò)PEl設(shè)備的跨VPN組播功能,可以實(shí)現(xiàn)不同VPN之間的點(diǎn)播。組播接收端在VPN接入時(shí)有稀疏模式獨(dú)立組播協(xié)議(Protocol IndependentMulticast-Sparse Mode, PIM-SM)和指定信源組播(Protocol IndependentMulticast-Source-Specific Multicast, PIM-SSM)兩種方式接入。其中 PIM-SSM 接入方式為指定源的組播方式,需要通過(guò)在CE和PE之間運(yùn)行互聯(lián)網(wǎng)組播成員管理協(xié)議(InternetGroup Management Protocol, IGMP)第三版本(IGMPv3)協(xié)議實(shí)現(xiàn)。在應(yīng)用IGMPv3實(shí)現(xiàn)跨VPN的指定信源組播轉(zhuǎn)發(fā)時(shí),存在一個(gè)PE對(duì)IGMP版本進(jìn)行v2/v3切換操作,導(dǎo)致跨VPN組播流中斷的問題,中斷時(shí)間為分鐘級(jí)別,該問題是應(yīng)用IGMPv3和PIM-SSM實(shí)現(xiàn)跨VPN的組播轉(zhuǎn)發(fā)技術(shù)中的一個(gè)漏洞,具體過(guò)程如下:如圖1所示場(chǎng)景,如果組播接收端為CE1,組播源為CE2,CE2地址為A,PEU CEl和CE2主機(jī)上均運(yùn)行IGMPv3協(xié)議進(jìn)行跨VPN的組播點(diǎn)播,例如屬于VPNl的CEl點(diǎn)播了屬于VPN2的CE2的組播流量,CE2為組播源、CEl為組播接收端,PEl和CEl之間使用IGMPv3的協(xié)議報(bào)文即詢問(Query)報(bào)文和報(bào)告(Report)報(bào)文進(jìn)行通信,正常情況下PEl定期發(fā)送Query報(bào)文查詢是否有組播接收端存在,CEl回復(fù)Iteport報(bào)文通告組播接收者的存在,PEl根據(jù)收到的Import報(bào)文生成和維護(hù)組播成員關(guān)系以及組播轉(zhuǎn)發(fā)表項(xiàng),在組播轉(zhuǎn)發(fā)表項(xiàng)中包括有CEl點(diǎn)播的組播流量的組播組的標(biāo)識(shí)以及組播源的地址信息。當(dāng)PEl上對(duì)IGMP版本進(jìn)行v2/v3切換操作,將版本從IGMPv3 (以下簡(jiǎn)稱為v3版本)切換為IGMPv2 (以下簡(jiǎn)稱為v2版本),再切換回IGMPv3,PEl將在短時(shí)間內(nèi)發(fā)送v2版本的Query報(bào)文和v3版本的Query報(bào)文,CEl設(shè)備將在短時(shí)間內(nèi)收到v2版本的Query報(bào)文和v3版本的Query報(bào)文,發(fā)生以下處理過(guò)程:步驟一、PEl從IGMPv3切換為IGMPv2后,CEl設(shè)備先收到來(lái)自PEl的v2版本的Query,此時(shí)CEl上運(yùn)行的是IGMPv3,按照IGMPv3協(xié)議處理流程,啟動(dòng)對(duì)IGMPv2版本的兼容機(jī)制,CEl設(shè)備上會(huì)設(shè)定一個(gè)兼容v2版本的查詢計(jì)時(shí)器,時(shí)間為255秒,在這255秒時(shí)間內(nèi)不管收到v2版本還是v3版本的Query報(bào)文,CEl都回復(fù)v2版本的Iteport報(bào)文,并且,在計(jì)時(shí)的255秒內(nèi),CEl每隔60秒向PEl發(fā)送v2版本的Iteport報(bào)文;步驟二、由于CEl回復(fù)v2版本的R印ort報(bào)文,PEl設(shè)備收到之后,認(rèn)為存在v2版本的組播接收者,則啟動(dòng)對(duì)v2版本的兼容機(jī)制,PEl每收到一個(gè)v2的R印ort報(bào)文就生成一個(gè)對(duì)應(yīng)于v2版本的定時(shí)器,時(shí)間為250秒,并在IGMP組播成員表中生成該組播成員CEl的exclude (NULL)信息表項(xiàng),該表項(xiàng)表示PE上連接的CE中有組播的接收者需要接收該組播組的流量,exclude (NULL)表示CE可以接收任意組播源發(fā)出的組播流量。但是由于本場(chǎng)景環(huán)境中是應(yīng)用SSM的VPN接入,組播流需根據(jù)最短路徑樹(Shortest Path Tree, SPT)進(jìn)行組播轉(zhuǎn)發(fā),即以組播源S為根節(jié)點(diǎn),接收者為葉節(jié)點(diǎn)的組播轉(zhuǎn)發(fā)樹,組播流量直接走從組播源到組播接收者的最短路徑,PE進(jìn)行指定信源的組播流量轉(zhuǎn)發(fā)時(shí)必須根據(jù)SPT知道指定的組播源的所在,但PEl針對(duì)CEl的組播轉(zhuǎn)發(fā)表項(xiàng)沒有形成帶源地址的表項(xiàng),只有exclude (NULL)的表項(xiàng),導(dǎo)致PEl不知道CEl指定的組播源地址是什么,對(duì)CEl無(wú)法形成SPT,也就無(wú)法對(duì)CEl進(jìn)行組播流量的轉(zhuǎn)發(fā),導(dǎo)致CEl上斷流,該過(guò)程將持續(xù)大約255秒。3、在CEl計(jì)時(shí)255秒到時(shí)后,CEl設(shè)備停止向PEl發(fā)送v2版本的R印ort報(bào)文,在收到PEl發(fā)出的v3版本的Query報(bào)文后,CEl改為回復(fù)v3版本的R印ort報(bào)文。PEl收到該v3版本R印ort報(bào)文后,由于存在之前形成的CEl的EXCLUDE (NULL)的表項(xiàng),根據(jù)IGMPv3協(xié)議,該組成員信息表項(xiàng)的具體內(nèi)容將被改為EXCLUDE (A),A代表某個(gè)特定組播源的IP地址即CE2的IP地址,這時(shí)組播成員信息表項(xiàng)為EXCLUDE (A),表示排除即不接收該源地址A即CE2組播源發(fā)出的組播流,導(dǎo)致此時(shí)CE2到CEl跨VPN組播流將仍然無(wú)法打通,該過(guò)程將持續(xù)大約250秒,也即PEl接收到CE在計(jì)時(shí)255秒內(nèi)發(fā)送的最后一個(gè)v2版本的R印ort報(bào)文并計(jì)時(shí)250秒。4、PEl在針對(duì)最后一個(gè)v2版本的R印ort報(bào)文計(jì)時(shí)250秒到時(shí)之后,根據(jù)IGMPv3協(xié)議,PEl將針對(duì)CEl的組播成員信息表項(xiàng)會(huì)從EXCLUDE (A)改寫為INCLUDE (A),表示PEl應(yīng)將接收到的指定地址為A的組播流量轉(zhuǎn)發(fā)給CEl,此時(shí),PEl設(shè)備才能針對(duì)CEl并生成SPT,跨VPN組播流才能打通,斷流時(shí)間大概持續(xù)255+250秒。
可見在現(xiàn)有的通過(guò)IGMPv3實(shí)現(xiàn)跨VPN的指定信源組播轉(zhuǎn)發(fā)中,存在PE發(fā)生IGMPv2和IGMPv3版本切換時(shí),導(dǎo)致跨VPN的指定信源組播斷流的問題。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明實(shí)施例提供了一種跨VPN的指定信源組播方法、裝鉻及網(wǎng)絡(luò)設(shè)備,用以解決現(xiàn)有的通過(guò)IGMPv3實(shí)現(xiàn)跨VPN的指定信源組播轉(zhuǎn)發(fā)中,存在PE發(fā)生IGMPv2和IGMPv3版本切換時(shí),導(dǎo)致的跨VPN的指定信源組播斷流的問題。本發(fā)明實(shí)施例技術(shù)方案如下:一種跨虛擬專用網(wǎng)絡(luò)VPN的指定信源組播方法,包括:運(yùn)營(yíng)商邊緣路由器PE在檢測(cè)確定所述PE上運(yùn)行互聯(lián)網(wǎng)組播成員管理協(xié)議第三版本IGMPv3,以及檢測(cè)確定與所述PE相連接的屬于VPN中的通信終端CE上運(yùn)行IGMPv3和指定信源組播模式的情況下,對(duì)根據(jù)來(lái)自所述CE的IGMPv3版本的報(bào)告報(bào)文而建立的主組播表進(jìn)行備份,在所述主組播表和備份組播表中均包括所述CE點(diǎn)播的跨VPN的組播流量的組播源地址信息;所述PE在進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,在所述主組播表和所述備份組播表中的組播源地址信息不一致的情況下,根據(jù)所述備份組播表中的組播源地址信息對(duì)所述CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā)。一種跨虛擬專用網(wǎng)絡(luò)VPN的指定信源組播裝鉻,包括:備份模塊,用于在所述裝鉻所在PE檢測(cè)確定所述PE上運(yùn)行互聯(lián)網(wǎng)組播成員管理協(xié)議第三版本IGMPv3,以及檢測(cè)確定與所述PE相連接的屬于VPN中的通信終端CE上運(yùn)行IGMPv3和指定信源組播模式的情況下,對(duì)所述PE根據(jù)來(lái)自所述CE的IGMPv3版本的報(bào)告報(bào)文而建立的主組播表進(jìn)行備份,在所述主組播表和備份組播表中均包括所述CE點(diǎn)播的跨VPN的組播流量的組播源地址信息;轉(zhuǎn)發(fā)模塊,用于在所述裝鉻所在PE進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,在所述主組播表和所述備份組播表中的組播源地址信息不一致的情況下,根據(jù)所述備份組播表中的組播源地址信息對(duì)所述CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā)。一種網(wǎng)絡(luò)設(shè)備,包括如上所述的跨虛擬專用網(wǎng)絡(luò)的指定信源組播裝鉻。根據(jù)本發(fā)明實(shí)施例的技術(shù)方案,PE建立CE的主組播表的備份組播表,在PE進(jìn)行IGMPv3和IGMPv2切換的不同階段中,PE會(huì)對(duì)主組播表中的組播源地址項(xiàng)中的內(nèi)容進(jìn)行修改,但是不會(huì)對(duì)備份的組播表進(jìn)行修改,這樣PE在進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,在主組播表和備份組播表中的組播源地址信息不一致的情況下,根據(jù)備份組播表中的組播源地址進(jìn)行跨VPN的組播轉(zhuǎn)發(fā),能夠以備份組播表為可靠有效的參考依據(jù),在PE進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,實(shí)現(xiàn)對(duì)CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā),能夠解決現(xiàn)有技術(shù)中在PE在發(fā)生IGMP的v2和v3版本切換時(shí),根據(jù)不斷修改的主組播表進(jìn)行轉(zhuǎn)發(fā),導(dǎo)致對(duì)CE的跨VPN的指定信源組播斷流的問題。本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說(shuō)明書中闡述,并且,部分地從說(shuō)明書中變得顯而易見,或者通過(guò)實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過(guò)在所寫的說(shuō)明書、權(quán)利要求書、以及附圖中所特別指出的結(jié)構(gòu)來(lái)實(shí)現(xiàn)和獲得。
圖1為現(xiàn)有技術(shù)中跨VPN組播轉(zhuǎn)發(fā)的場(chǎng)景示意圖2為本發(fā)明實(shí)施例提供的跨VPN的指定信源組播方法的工作流程;圖3為本發(fā)明實(shí)施例提供的跨VPN的指定信源組播裝鉻的結(jié)構(gòu)框圖;圖4為本發(fā)明實(shí)施例提供的跨VPN的指定信源組播裝鉻的另一結(jié)構(gòu)框圖。
具體實(shí)施例方式以下結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行說(shuō)明,應(yīng)當(dāng)理解,此處所描述的實(shí)施例僅用于說(shuō)明和解釋本發(fā)明,并不用于限定本發(fā)明。針對(duì)現(xiàn)有的通過(guò)IGMPv3實(shí)現(xiàn)跨VPN的指定信源組播轉(zhuǎn)發(fā)中,存在PE發(fā)生IGMPv2和IGMPv3版本切換時(shí),導(dǎo)致跨VPN的指定信源組播斷流的問題,本發(fā)明實(shí)施例提供了一種跨VPN的指定信源組播方案,以解決該問題。在本發(fā)明實(shí)施例提供的技術(shù)方案中,提供了一種主組播表的備份機(jī)制和一種擇機(jī)易表轉(zhuǎn)發(fā)機(jī)制;根據(jù)備份機(jī)制,PE建立CE的主組播表的備份組播表,根據(jù)擇機(jī)易表轉(zhuǎn)發(fā)機(jī)制,在PE進(jìn)行IGMPv3和IGMPv2切換的不同階段中,PE會(huì)對(duì)主組播表中的組播源地址項(xiàng)中的內(nèi)容進(jìn)行修改,但是不會(huì)對(duì)備份的組播表進(jìn)行修改,這樣PE在進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,在主組播表和備份組播表中的組播源地址信息不一致的情況下,根據(jù)備份組播表中的組播源地址進(jìn)行跨VPN的組播轉(zhuǎn)發(fā),在主組播表和備份組播表中的組播源地址信息一致的情況下,根據(jù)主組播表中的組播源地址信息進(jìn)行跨VPN的組播轉(zhuǎn)發(fā),能夠以備份組播表為可靠有效的參考依據(jù),在PE進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,實(shí)現(xiàn)對(duì)CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā),能夠解決現(xiàn)有技術(shù)中在PE發(fā)生IGMP的v2和v3版本切換時(shí),根據(jù)不斷修改的主組播表進(jìn)行轉(zhuǎn)發(fā),導(dǎo)致對(duì)CE的跨VPN的指定信源組播斷流的問題。下面對(duì)本發(fā)明實(shí)施例進(jìn)行詳細(xì)說(shuō)明。圖2示出了本發(fā)明實(shí)施例提供的跨VPN的指定信源組播方法的工作流程,包括:步驟201、PE在檢測(cè)確定所述PE上運(yùn)行IGMPv3,以及檢測(cè)確定與所述PE相連接的屬于VPN中的CE上運(yùn)行IGMPv3和SSM的情況下,對(duì)根據(jù)來(lái)自CE的IGMPv3版本的報(bào)告報(bào)文而建立的主組播表進(jìn)行備份,在主組播表和備份組播表中均包括CE點(diǎn)播的跨VPN的組播流量的組播源地址信息;具體地,主組播表和備份組播表中還可以包括CE點(diǎn)播的跨VPN的組播流量的組播標(biāo)識(shí);更進(jìn)一步,PE還可以在備份組播表中添加CE的地址信息,地址信息可以是CE的互聯(lián)網(wǎng)協(xié)議(IP,Internet Protocol)地址和媒體訪問控制(MAC, Media Access Control)地址;通過(guò)上述備份機(jī)制,能夠?yàn)楹罄m(xù)的轉(zhuǎn)發(fā)過(guò)程提供正確、可靠有效的組播源地址信息;步驟202、PE在進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,在主組播表和備份組播表中的組播源地址信息不一致的情況下,根據(jù)備份組播表中的組播源地址信息對(duì)CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā);具體地,PE從IGMPv3切換為IGMPv2后,PE向CE發(fā)送IGMPv2的詢問報(bào)文(Query ),CE啟動(dòng)對(duì)IGMPv2的兼容機(jī)制,CE設(shè)定一個(gè)兼容IGMPv2的查詢計(jì)時(shí)器,時(shí)間為255秒,在計(jì)時(shí)的255秒內(nèi),CE每隔60秒向PE發(fā)送IGMPv2的報(bào)告報(bào)文(Report) ;PE收到CE回復(fù)的IGMPv2的報(bào)告報(bào)文,則啟動(dòng)對(duì)IGMPv2版本的兼容機(jī)制,PE每收到一個(gè)IGMPv2的報(bào)告報(bào)文就生成一個(gè)對(duì)應(yīng)于v2版本的定時(shí)器,時(shí)間為250秒,并將主組播表中該CE的組播源地址信息表項(xiàng)改寫為eXclude(NULL),即不向CE轉(zhuǎn)發(fā)任何組播源地址的設(shè)備發(fā)出的組播流量,此時(shí)主組播表與備份組播表中,CE的組播源地址信息不一致,此時(shí)如果按照主表中的組播源地址信息進(jìn)行轉(zhuǎn)發(fā),將無(wú)法向CE轉(zhuǎn)發(fā)任何組播流量;在CE針對(duì)IGMPv2進(jìn)行兼容性計(jì)時(shí)255秒后,CE停止向PE發(fā)送IGMPv2的報(bào)告報(bào)文,在收到PE發(fā)出的IGMPv3的詢問報(bào)文后,CE改為回復(fù)IGMPv3的報(bào)告報(bào)文,PE收到該IGMPv3的報(bào)告報(bào)文后,由于存在之前形成的CE的exclude (NULL)的表項(xiàng),根據(jù)IGMPv3協(xié)議,CE的組播源地址信息被改為exclude (A), A代表某個(gè)特定組播源的IP地址,表示不向CE轉(zhuǎn)發(fā)該源地址A發(fā)出的組播流量,此時(shí)主組播表與備份組播表中,CE的組播源地址信息不一致,此時(shí)如果按照主表中的組播源地址信息進(jìn)行轉(zhuǎn)發(fā),將無(wú)法向CE轉(zhuǎn)發(fā)任何組播流量;因此,在PE接收到來(lái)自所述CE的IGMPv2的報(bào)告報(bào)文、且主組播表和備份組播表中的組播源地址信息不一致的情況下,或者在PE接收到來(lái)自CE的IGMPv3的報(bào)告報(bào)文、且主組播表和備份組播表中的組播源地址信息不一致的情況下,根據(jù)備份組播表中的組播源地址信息對(duì)CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā);PE在針對(duì)最后一個(gè)IGMPv2的報(bào)告報(bào)文計(jì)時(shí)250秒到時(shí)之后,根據(jù)IGMPv3協(xié)議,PE將針對(duì)CE的組播成員信息表項(xiàng)會(huì)從EXCLUDE (A)改寫為INCLUDE CA),表示PE應(yīng)將接收到的指定地址為A的組播流量轉(zhuǎn)發(fā)給CE,此時(shí),主組播表中CE的組播源地址信息修改回到PE進(jìn)行IGMPv3和IGMPv2切換之前的狀況,主組播表中和備份組播表中CE的源地址信息一致,可以根據(jù)主組播表中的源地址信息進(jìn)行組播轉(zhuǎn)發(fā);這樣,在主組播表和備份組播表中的組播源地址信息一致的情況下,根據(jù)主組播表項(xiàng)中的組播源地址對(duì)CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā);具體地,可以在PE接收到一個(gè)組播流量、進(jìn)行組播流量轉(zhuǎn)發(fā)時(shí),根據(jù)該組播流量的標(biāo)識(shí),查詢主組播表和備份組播表中點(diǎn)播了該組播流量標(biāo)識(shí)的CE的組播源地址信息是否一致,在不一致的情況下,根據(jù)備份組播表中記錄的情況,將該組播流量轉(zhuǎn)發(fā)給點(diǎn)播了該組播流量的CE,在一致的情況下,根據(jù)主組播表中記錄的情況進(jìn)行組播流量的轉(zhuǎn)發(fā)。根據(jù)上述擇機(jī)易表轉(zhuǎn)發(fā)機(jī)制,能夠保障正確轉(zhuǎn)發(fā)跨VPN的指定信源的組播流量。具體地,當(dāng)主組播轉(zhuǎn)發(fā)表和備份組播轉(zhuǎn)發(fā)表中包括針對(duì)多個(gè)CE的記錄表項(xiàng)時(shí),PE可以根據(jù)接收到的IGMPv3的報(bào)告報(bào)文或者IGMPv2的報(bào)告報(bào)文中攜帶的組播標(biāo)識(shí),以及CE的地址信息,在所述備份組播表中匹配查詢與該組播標(biāo)識(shí)和CE的地址信息相一致的表項(xiàng),從該表項(xiàng)中查找到CE的組播源地址信息。更進(jìn)一步,當(dāng)針對(duì)CE建立的單獨(dú)的主組播表被刪除,或者包括多個(gè)記錄表項(xiàng)的主組播表中對(duì)CE的記錄表項(xiàng)被刪除掉,說(shuō)明CE退出了對(duì)組播流量的點(diǎn)播,則,刪除與單獨(dú)的主組播表對(duì)應(yīng)的備份組播表,或者刪除與包括多個(gè)記錄的主組播表對(duì)應(yīng)的備份組播表中的針對(duì)CE的記錄表項(xiàng)。通過(guò)上述處理過(guò)程,PE建立CE的主組播表的備份組播表,根據(jù)擇機(jī)易表轉(zhuǎn)發(fā)機(jī)制,在PE進(jìn)行IGMPv3和IGMPv2切換的不同階段中,PE會(huì)對(duì)主組播表中的組播源地址項(xiàng)中的內(nèi)容進(jìn)行修改,具體的修改情況為:exclude (NULL) — EXCLUDE (A) — INCLUDE (A),但是不會(huì)對(duì)備份的組播表進(jìn)行修改,這樣PE在進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,在主組播表和備份組播表中的組播源地址信息不一致的情況下,根據(jù)備份組播表中的組播源地址進(jìn)行跨VPN的組播轉(zhuǎn)發(fā),在主組播表和備份組播表中的組播源地址信息一致的情況下,根據(jù)主組播表中的組播源地址信息進(jìn)行跨VPN的組播轉(zhuǎn)發(fā),能夠以備份組播表為參考依據(jù),在PE進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,可靠有效地實(shí)現(xiàn)對(duì)CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā),能夠解決現(xiàn)有技術(shù)中在PE在發(fā)生IGMP的v2和v3版本切換時(shí),根據(jù)不斷修改的主組播表進(jìn)行轉(zhuǎn)發(fā),導(dǎo)致對(duì)CE的跨VPN的指定信源組播斷流的問題?;谙嗤陌l(fā)明構(gòu)思,本發(fā)明實(shí)施例還提供了一種跨VPN的指定信源組播裝鉻。圖3示出了本發(fā)明實(shí)施例提供跨VPN的指定信源組播裝鉻的結(jié)構(gòu)框圖,該裝鉻包括:備份模塊31,用于在所述跨VPN的指定信源組播裝鉻所在PE檢測(cè)確定該P(yáng)E上運(yùn)行IGMPv3,以及檢測(cè)確定與該P(yáng)E相連接的屬于VPN中的CE上運(yùn)行IGMPv3和指定信源組播模式的情況下,對(duì)所述PE根據(jù)來(lái)自CE的IGMPv3版本的報(bào)告報(bào)文而建立的主組播表進(jìn)行備份,在主組播表和備份組播表中均包括CE點(diǎn)播的跨VPN的組播流量的組播源地址信息;主組播表中和備份組播表中還均包括:CE點(diǎn)播的跨VPN的組播流量的組播標(biāo)識(shí);備份模塊31,還用于:在備份組播表中記錄所述CE的地址信息的地址信息包括CE的IP地址和MAC地址;轉(zhuǎn)發(fā)模塊32,連接至備份模塊31,用于在所述裝鉻所在PE進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,在所述主組播表和所述備份組播表中的組播源地址信息不一致的情況下,根據(jù)所述備份組播表中的組播源地址信息對(duì)所述CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā)。具體地,轉(zhuǎn)發(fā)模塊32在所述PE接收到來(lái)自所述CE的IGMPv2的報(bào)告報(bào)文、且所述主組播表和所述備份組播表中的組播源地址信息不一致的情況下,或者在所述PE接收到來(lái)自所述CE的IGMPv3的報(bào)告報(bào)文、且所述主組播表和所述備份組播表中的組播源地址信息不一致的情況下,根據(jù)所述備份組播表中的組播源地址信息對(duì)所述CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā);轉(zhuǎn)發(fā)模塊32還在所述主組播表和所述備份組播表中的組播源地址信息一致的情況下,根據(jù)所述主組播表項(xiàng)中的組播源地址對(duì)所述CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā)。進(jìn)一步,轉(zhuǎn)發(fā)模塊32還用于根據(jù)所述PE接收到的IGMPv3的報(bào)告報(bào)文或者IGMPv2的報(bào)告報(bào)文中攜帶的組播標(biāo)識(shí),以及CE的地址信息,在備份組播表中匹配查詢到CE的組播源地址信息。優(yōu)選地,如圖4所示,在圖3所示裝鉻的基礎(chǔ)上,本發(fā)明實(shí)施例提供的跨VPN的指定信源組播裝鉻還可以包括:刪除模塊33,連接至備份模塊31,用于在主組播表被刪除后,刪除備份組播表。圖3或圖4所示裝絡(luò)的工作原理如圖2所示,這里不再贅述。通過(guò)如圖3或圖4所示的裝鉻,也能夠在PE進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,可靠有效地實(shí)現(xiàn)對(duì)CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā),能夠解決現(xiàn)有技術(shù)中在PE在發(fā)生IGMP的v2和v3版本切換時(shí),根據(jù)不斷修改的主組播表進(jìn)行轉(zhuǎn)發(fā),導(dǎo)致對(duì)CE的跨VPN的指定信源組播斷流的問題?;谙嗤陌l(fā)明構(gòu)思,本發(fā)明實(shí)施例還提供了一種網(wǎng)絡(luò)設(shè)備,該網(wǎng)絡(luò)設(shè)備包括如圖3或圖4所示的跨VPN的指定信源組播裝鉻,優(yōu)選地,該網(wǎng)絡(luò)裝鉻可以是PE。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法攜帶的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),包括方法實(shí)施例的步驟之一或其組合。另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理模塊中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)模塊中。上述集成的模塊既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能模塊的形式實(shí)現(xiàn)。所述集成的模塊如果以軟件功能模塊的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),也可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器和光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝絡(luò)。這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝鉻的制造品,該指令裝鉻實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
權(quán)利要求
1.一種跨虛擬專用網(wǎng)絡(luò)VPN的指定信源組播方法,其特征在于,包括: 運(yùn)營(yíng)商邊緣路由器PE在檢測(cè)確定所述PE上運(yùn)行互聯(lián)網(wǎng)組播成員管理協(xié)議第三版本IGMPv3,以及檢測(cè)確定與所述PE相連接的屬于VPN中的通信終端CE上運(yùn)行IGMPv3和指定信源組播模式的情況下,對(duì)根據(jù)來(lái)自所述CE的IGMPv3版本的報(bào)告報(bào)文而建立的主組播表進(jìn)行備份,在所述主組播表和備份組播表中均包括所述CE點(diǎn)播的跨VPN的組播流量的組播源地址信息; 所述PE在進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,在所述主組播表和所述備份組播表中的組播源地址信息不一致的情況下,根據(jù)所述備份組播表中的組播源地址信息對(duì)所述CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述主組播表和所述備份組播表中的組播源地址信息不一致的情況下,根據(jù)所述備份組播表中的組播源地址對(duì)所述CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā),具體包括: 在所述PE接收到來(lái)自所述CE的IGMPv2的報(bào)告報(bào)文或者IGMPv3的報(bào)告報(bào)文、且所述主組播表和所述備份組播表中的組播源地址信息不一致的情況下,根據(jù)所述備份組播表中的組播源地址信息對(duì)所述CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 在所述主組播表和所述備份組播表中的組播源地址信息一致的情況下,根據(jù)主組播表中的組播源地址信息對(duì)所述CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述主組播表中和所述備份組播表中還均包括:所述CE點(diǎn)播的跨VPN的組播流量的組播標(biāo)識(shí); 所述方法還包括: 在所述備份組播表中記錄所述CE的地址信息; 所述PE根據(jù)接收到的所述IGMPv3的報(bào)告報(bào)文或者IGMPv2的報(bào)告報(bào)文中攜帶的組播標(biāo)識(shí),以及所述CE的地址信息,在所述備份組播表中匹配查詢到所述CE的組播源地址信肩、O
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 在所述主組播表被刪除后,刪除所述備份組播表。
6.根據(jù)權(quán)利要求1 5中任一項(xiàng)所述的方法,其特征在于,所述CE的地址信息包括: 所述CE的互聯(lián)網(wǎng)協(xié)議IP地址信息和媒體訪問控制信息。
7.一種跨虛擬專用網(wǎng)絡(luò)VPN的指定信源組播裝置,其特征在于,包括: 備份模塊,用于在所述裝置所在PE檢測(cè)確定所述PE上運(yùn)行互聯(lián)網(wǎng)組播成員管理協(xié)議第三版本IGMPv3,以及檢測(cè)確定與所述PE相連接的屬于VPN中的通信終端CE上運(yùn)行IGMPv3和指定信源組播模式的情況下,對(duì)所述PE根據(jù)來(lái)自所述CE的IGMPv3版本的報(bào)告報(bào)文而建立的主組播表進(jìn)行備份,在所述主組播表和備份組播表中均包括所述CE點(diǎn)播的跨VPN的組播流量的組播源地址信息; 轉(zhuǎn)發(fā)模塊,用于在所述裝置所在PE進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,在所述主組播表和所述備份組播表中的組播源地址信息不一致的情況下,根據(jù)所述備份組播表中的組播源地址信息對(duì)所述CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā)。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述轉(zhuǎn)發(fā)模塊,具體用于:在所述PE接收到來(lái)自所述CE的IGMPv2的報(bào)告報(bào)文或者IGMPv3的報(bào)告報(bào)文、且所述主組播表和所述備份組播表中的組播源地址信息不一致的情況下,根據(jù)所述備份組播表中的組播源地址信息對(duì)所述CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā)。
9.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述轉(zhuǎn)發(fā)模塊,還用于: 在所述主組播表和所述備份組播表中的組播源地址信息一致的情況下,根據(jù)主組播表中的組播源地址信息對(duì)所述CE進(jìn)行跨VPN的組播轉(zhuǎn)發(fā)。
10.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述主組播表中和所述備份組播表中還均包括:所述CE點(diǎn)播的跨VPN的組播流量的組播標(biāo)識(shí); 所述備份模塊,還用于:在所述備份組播表中記錄所述CE的地址信息; 所述轉(zhuǎn)發(fā)模塊,還用于:根據(jù)所述PE接收到的所述IGMPv3的報(bào)告報(bào)文或者所述IGMPv2的報(bào)告報(bào)文中攜帶的組播標(biāo)識(shí),以及所述CE的地址信息,在所述備份組播表中匹配查詢到所述CE的組播源地址信息。
11.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括: 刪除模塊,用于在所述主組播表被刪除后,刪除所述備份組播表。
12.一種網(wǎng)絡(luò)設(shè)備,其特征在于,包括如權(quán)利要求7 11中任一項(xiàng)所述的跨虛擬專用網(wǎng)絡(luò)的指定信源 組播裝置。
全文摘要
本發(fā)明公開了一種跨VPN的指定信源組播方法、裝置及網(wǎng)絡(luò)設(shè)備,在該方法中,PE建立CE的主組播表的備份組播表,PE在進(jìn)行IGMPv3和IGMPv2切換的過(guò)程中,在主組播表和備份組播表中的組播源地址信息不一致的情況下,根據(jù)備份組播表中的組播源地址進(jìn)行跨VPN的組播轉(zhuǎn)發(fā),在主組播表和備份組播表中的組播源地址信息一致的情況下,根據(jù)主組播表中的組播源地址信息進(jìn)行跨VPN的組播轉(zhuǎn)發(fā),能夠以備份組播表為可靠有效的參考依據(jù),實(shí)現(xiàn)對(duì)CE進(jìn)行跨VPN的指定信源組播轉(zhuǎn)發(fā),能夠解決現(xiàn)有技術(shù)中在PE進(jìn)行IGMPv3和IGMPv2切換時(shí),導(dǎo)致對(duì)CE的跨VPN的指定信源組播斷流的問題。
文檔編號(hào)H04L12/741GK103095473SQ20131002955
公開日2013年5月8日 申請(qǐng)日期2013年1月25日 優(yōu)先權(quán)日2013年1月25日
發(fā)明者吳博文 申請(qǐng)人:福建星網(wǎng)銳捷網(wǎng)絡(luò)有限公司