專利名稱:確定組播路徑的方法、接收數(shù)據(jù)報文的方法及路由器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明的實施例涉及通信領(lǐng)域,尤其涉及一種確定組播路徑的方法、接收數(shù)據(jù)報文的方法及路由器。
背景技術(shù):
現(xiàn)有技術(shù)中,可以利用第四版互聯(lián)網(wǎng)協(xié)議(英文全稱為Internet Protocolversion 4,英文簡稱為IPv4)組播地址構(gòu)建的第六版互聯(lián)網(wǎng)協(xié)議(英文全稱為InternetProtocol version 4,英文簡稱為IPv6)組播地址作為IPv4-1n_IPv6封裝模式下單向組播數(shù)據(jù)流的目的地址,以及組播源的IPv4單播地址根據(jù)RFC6052定義的格式構(gòu)建成組播源的IPv6地址,使得接入網(wǎng)的組播基礎(chǔ)橋?qū)拵гO(shè)備(英文全稱為Multicast BasicBridging BroadBand,英文簡稱為mB4)或者用戶駐地設(shè)備(英文全稱為Customer PremiseEquipment,英文簡稱為CPE)能夠接收包括IPv4節(jié)點和IPv6節(jié)點所在的網(wǎng)絡(luò)中的組播報文。其中,mB4設(shè)備負(fù)責(zé)解封裝接收到的IPv4-1n-1Pv6的組播報文,并把IPv4組播數(shù)據(jù)流轉(zhuǎn)發(fā)到IPv4接收者,如機頂盒(英文全稱為Set Top Box,英文簡稱為STB)等。另外,組播地 址轉(zhuǎn)換路由器為雙棧網(wǎng)絡(luò)中的一節(jié)點,其處理協(xié)議無關(guān)組播(英文全稱為Protocol Independent Multicast,英文簡稱為PIM)加入請求報文或組播偵聽者發(fā)現(xiàn)協(xié)議(英文全稱為Multicast Listener Discover,簡稱MLD)加入請求報文或互聯(lián)網(wǎng)組管理協(xié)議(英文全稱為Internet Group Management Protocol,英文簡稱為IGMP)加入請求報文。例如組播地址轉(zhuǎn)換路由器檢查加入的IPv6組播地址是否屬于某個mPref ix64 (IPv6的前綴信息),即檢查是否是IPv4_in_IPv6封裝模式下的IPv4組播地址,同時組播地址轉(zhuǎn)換路由器負(fù)責(zé)復(fù)制IPv4組播數(shù)據(jù)流到IPv6域,并且把IPv4組播數(shù)據(jù)流以IPv4-1n-1Pv6的封裝模式在IPv6網(wǎng)絡(luò)中發(fā)送。通常,為了可靠性和負(fù)載均衡的目的,網(wǎng)絡(luò)中的幾個節(jié)點(如IPv4節(jié)點或IPv6節(jié)點)可以同時嵌入了組播地址轉(zhuǎn)換路由器的功能。這種情況下每個組播地址轉(zhuǎn)換路由器使用相同的組播前綴映射法則和單播前綴映射法則來創(chuàng)建IPv4嵌入IPv6的組播報文。在雙棧網(wǎng)絡(luò)中,組播地址轉(zhuǎn)換路由器屬于IPv4組播分發(fā)樹,但組播地址轉(zhuǎn)換路由器到IPv4源的路徑不一定在源的反向最短路徑分發(fā)樹上,由此導(dǎo)致現(xiàn)有技術(shù)中選擇的組播分發(fā)樹路徑并不一定是最優(yōu)的組播分發(fā)路徑。導(dǎo)致組播流傳送效率低,傳輸延遲。
發(fā)明內(nèi)容
本發(fā)明實施例的一個目的為提供一種確定組播路徑的方法、接收數(shù)據(jù)報文的方法及路由器。本發(fā)明實施例技術(shù)方案包括如下內(nèi)容。一種確定組播路徑的方法,包括:組播地址轉(zhuǎn)換路由器接收第一組播加入請求報文,其中,所述第一組播加入請求報文為第四版互聯(lián)網(wǎng)協(xié)議IPv4報文并且所述第一組播加入請求報文的組播地址為IPv4組播地址,或,所述第一組播加入請求報文為第六版互聯(lián)網(wǎng)協(xié)議IPv6報文并且所述第一組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址;所述組播地址轉(zhuǎn)換路由器在第一路徑和第二路徑中確定最短路徑,其中,所述第一路徑為所述組播地址轉(zhuǎn)換路由器的IPv4接口與所述第一組播加入請求報文對應(yīng)的組播數(shù)據(jù)提供節(jié)點之間的路徑,所述第二路徑為所述組播地址轉(zhuǎn)換路由器的IPv6接口與所述第一組播加入請求報文對應(yīng)的組播數(shù)據(jù)提供節(jié)點之間的路徑。一種接收組播數(shù)據(jù)報文的方法,包括:組播地址轉(zhuǎn)換路由器通過第一路徑接收來自組播數(shù)據(jù)提供節(jié)點的第一組播數(shù)據(jù)報文,所述第一路徑為所述組播地址轉(zhuǎn)換路由器的第四版互聯(lián)網(wǎng)協(xié)議IPv4接口和所述組播數(shù)據(jù)提供節(jié)點之間的路徑;組播地址轉(zhuǎn)換路由器通過第二路徑接收來自所述組播數(shù)據(jù)提供節(jié)點的第二組播數(shù)據(jù)報文,所述第二路徑為所述組播地址轉(zhuǎn)換路由器的第六版互聯(lián)網(wǎng)協(xié)議IPv6接口和所述組播數(shù)據(jù)提供節(jié)點之間的路徑,其中所述第二組播數(shù)據(jù)報文的組播地址可以通過對所述第一組播數(shù)據(jù)報文的組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換得到;確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑;組播地址轉(zhuǎn)換路由器沿所述非最短路徑向所述組播數(shù)據(jù)提供節(jié)點發(fā)送剪枝消息。一種組播地址轉(zhuǎn)換路由器,包括:接收單元,用于接收第一組播加入請求報文,其中,所述第一組播加入請求報文為第四版互聯(lián)網(wǎng)協(xié)議IPv4報文并且所述第一組播加入請求報文的組播地址為IPv4組播地址,或,所述第一組播加入請 求報文為第六版互聯(lián)網(wǎng)協(xié)議IPv6報文并且所述第一組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址;最短路徑確定單元,用于在第一路徑和第二路徑中確定最短路徑,其中,所述第一路徑為所述組播地址轉(zhuǎn)換路由器的IPv4接口與所述第一組播加入請求報文對應(yīng)的組播數(shù)據(jù)提供節(jié)點之間的路徑,所述第二路徑為所述組播地址轉(zhuǎn)換路由器的IPv6接口與所述第一組播加入請求報文對應(yīng)的組播數(shù)據(jù)提供節(jié)點之間的路徑。一種組播地址轉(zhuǎn)換路由器,包括第一組播數(shù)據(jù)報文接收單元,用于通過第一路徑接收來自組播數(shù)據(jù)提供節(jié)點的第一組播數(shù)據(jù)報文,所述第一路徑為所述組播地址轉(zhuǎn)換路由器的第四版互聯(lián)網(wǎng)協(xié)議IPv4接口和所述組播數(shù)據(jù)提供節(jié)點之間的路徑;第二組播數(shù)據(jù)報文接收單元,用于通過第二路徑接收來自所述組播數(shù)據(jù)提供節(jié)點的第二組播數(shù)據(jù)報文,所述第二路徑為所述組播地址轉(zhuǎn)換路由器的第六版互聯(lián)網(wǎng)協(xié)議IPv6接口和所述組播數(shù)據(jù)提供節(jié)點之間的路徑,其中所述第二組播數(shù)據(jù)報文的組播地址可以通過對所述第一組播數(shù)據(jù)報文的組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換得到;最短路徑確定單元,用于確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑;剪枝單元,用于沿所述非最短路徑向所述組播數(shù)據(jù)提供節(jié)點發(fā)送剪枝消息。本發(fā)明實施例的一個優(yōu)點在于所述組播地址轉(zhuǎn)換路由器在收到IPv4或IPv6組播加入請求報文后,可以從第一路徑和第二路徑中確定最短路徑,其中第一路徑和第二路徑的全部或者部分分別屬于不同的網(wǎng)絡(luò)類型,從而實現(xiàn)了在不同的網(wǎng)絡(luò)類型中選取最短路徑的方法,提高了組播的效率。
圖1所示為本發(fā)明的一個實施例的方法示意圖;圖2所示為本發(fā)明的一個實施例的網(wǎng)絡(luò)結(jié)構(gòu)示意圖;圖3所示為本發(fā)明的一個實施例的方法示意圖;圖4所示為本發(fā)明的一個實施例的網(wǎng)絡(luò)結(jié)構(gòu)示意圖;圖5所示為本發(fā)明的一個實施例的方法示意圖;圖6所示為本發(fā)明的一個實施例的方法示意圖;圖7A所示為本發(fā)明的一個實施例的裝置示意·
圖7B所示為本發(fā)明的一個實施例的裝置示意圖;圖8A所示為本發(fā)明的一個實施例的裝置示意圖;圖8B所示為本發(fā)明的一個實施例的裝置示意圖。
具體實施例方式為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。另外,本發(fā)明的實施例中,術(shù)語“和/或”用于描述關(guān)聯(lián)對象的關(guān)聯(lián)關(guān)系,表示可以存在三種關(guān)系,例如,A和/或B,可以表示:單獨存在A,同時存在A和B,單獨存在B這三種情況。另外,本文中字符“/”,一般表示前后關(guān)聯(lián)對象是一種“或”的關(guān)系。本發(fā)明的實施例一圖1所示為本發(fā)明的一個實施例的方法示意圖。101、組播地址轉(zhuǎn)換路由器接收第一組播加入請求報文,其中,所述第一組播加入請求報文為第四版互聯(lián)網(wǎng)協(xié)議(英文全稱為Internet Protocol version 4,英文簡稱為IPv4)報文并且所述第一組播加入請求報文的組播地址為IPv4組播地址,或,所述第一組播加入請求報文為第六版互聯(lián)網(wǎng)協(xié)議(英文全稱為Internet Protocol version 6,英文簡稱為IPv6)報文并且所述第一組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址。102、所述組播地址轉(zhuǎn)換路由器在第一路徑和第二路徑中確定最短路徑,其中,所述第一路徑為所述組播地址轉(zhuǎn)換路由器的IPv4接口與所述第一組播加入請求報文對應(yīng)的組播數(shù)據(jù)提供節(jié)點之間的路徑,所述第二路徑為所述組播地址轉(zhuǎn)換路由器的IPv6接口與所述第一組播加入請求報文對應(yīng)的組播數(shù)據(jù)提供節(jié)點之間的路徑??蛇x地,所述組播地址轉(zhuǎn)換路由器的IPv4接口是指通過數(shù)據(jù)信號線與所述組播數(shù)據(jù)提供節(jié)點相連的物理接口或虛擬接口,并且所述組播地址轉(zhuǎn)換路由器的IPv4接口與所述組播數(shù)據(jù)提供節(jié)點間的距離不是無限長。在如圖2所示的網(wǎng)絡(luò)中,接口 11即為所述組播地址轉(zhuǎn)換路由器的IPv4接口。所述組播地址轉(zhuǎn)換路由器的IPv6接口是指通過數(shù)據(jù)信號線與所述組播數(shù)據(jù)提供節(jié)點相連的物理接口或虛擬接口,并且所述組播地址轉(zhuǎn)換路由器的IPv6接口與所述組播數(shù)據(jù)提供節(jié)點間的距離不是無限長。在如圖2所示的網(wǎng)絡(luò)中,接口 12即為所述組播地址轉(zhuǎn)換路由器的IPv6接口??蛇x地,所述最短路徑是根據(jù)路徑參數(shù)確定的??蛇x地,所述路徑參數(shù)包括所述第一路徑的距離、所述第二路徑的距離和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離。可選地,當(dāng)所述第一組播加入請求報文為IPv6報文并且所述第一組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址時,所述組播地址轉(zhuǎn)換路由器在所述第一路徑和所述第二路徑中確定所述最短路徑包括:根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定第一路徑的距離計算值,例如,可以將所述第一路徑的距離和所述轉(zhuǎn)換距離相加,得到所述第一路徑的距離計算值;根據(jù)所述第一路徑的距離計算值與所述第二路徑的距離,從所述第一路徑和第二路徑中確定所述最短路徑。例如,可以比較所述第一路徑的距離計算值與所述第二路徑的距離的大小,如果所述第一路徑的距離計算值小于所述第二路徑的距離,則確定所述第一路徑為所述最短路徑??蛇x地,當(dāng)所述第一組播加入請求報文為IPv4報文并且所述第一組播加入請求報文的組播地址為IPv4組播地址時,所述組播地址轉(zhuǎn)換路由器在所述第一路徑和所述第二路徑中確定所述最短路徑包括:根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定第二路徑的距離計算值;根據(jù)所述第二路徑的距離計算值與所述第一路徑的距離,從所述第一路徑和第二路徑中確定所述最短路徑??蛇x地,所述路徑參數(shù)包括所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷??蛇x地,當(dāng)所述第一組播加入請求報文為IPv6報文并且所述第一組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址時,所述組播地址轉(zhuǎn)換路由器在所述第一路徑和所述第二路徑中確定所述最短路徑包括:根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定第一路徑的開銷計算值,例如可以將所述第一路徑的開銷和所述轉(zhuǎn)換開銷相加,得到所述第一路徑的開銷計算值;根據(jù)所述第一路徑的開銷計算值與所述第二路徑的開銷從所述第一路徑和第二路徑中確定所述最短路徑,例如,可以比較所述第一路徑的開銷計算值與所述第二路徑的開銷的大小,如果所述第一路徑的開銷計算值小于所述第二路徑的開銷,則確定所述第一路徑為所述最短路徑??蛇x地,當(dāng)所述第一組播加入請求報文為IPv4報文并且所述第一組播加入請求報文的組播地址為IPv4組播地址時,所述組播地址轉(zhuǎn)換路由器在所述第一路徑和所述第二路徑中確定所述最短路徑包括:根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定第二路徑的開銷計算值;根據(jù)所述第二路徑的開銷計算值與所述第一路徑的開銷,從所述第一路徑和第二路徑中確定所述最短路徑。可選地,所述路徑參數(shù)包括所述第一路徑的距離、所述第二路徑的距離、所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離、所述第一路徑的開銷、所述第二 路徑的開銷和所述組播地址轉(zhuǎn)換路由器對所述組播報文進行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷??蛇x地,當(dāng)所述第一組播加入請求報文為IPv6報文并且所述第一組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址時,所述組播地址轉(zhuǎn)換路由器在所述第一路徑和所述第二路徑中確定所述最短路徑包括:根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定第一路徑的距離計算值;根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定第一路徑的開銷計算值;根據(jù)所述第一路徑的距離計算值和所述第一路徑的開銷計算值確定第一綜合計算值;根據(jù)所述第二路徑的距離和所述第二路徑的開銷確定第二綜合計算值;根據(jù)所述第一綜合計算值和所述第二綜合計算值,從所述第一路徑和第二路徑中確定所述最短路徑??蛇x地,當(dāng)所述第一組播加入請求報文為IPv4報文并且所述第一組播加入請求報文的組播地址為IPv4組播地址時,所述組播地址轉(zhuǎn)換路由器在所述第一路徑和所述第二路徑中確定所述最短路徑包括:根據(jù)所述第一路徑的距離和所述第一路徑的開銷確定第一綜合計算值;根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定第二路徑的距離計算值;根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定第二路徑的開銷計算值;根據(jù)所述第二路徑的距離計算值和所述第二路徑的開銷計算值確定第二綜合計算值;根據(jù)所述第一綜合計算值和所述第二綜合計算值從所述第一路徑和第二路徑中確定所述最短路徑。當(dāng)所述路徑參數(shù)包括所述第一路徑的距離、所述第二路徑的距離、所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離、所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對所述組播報文進行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷時,可以先根據(jù)第一路徑的距離、所述第二路徑的距離、所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離確定最短路徑,當(dāng)?shù)谝宦窂胶偷诙窂降木嚯x相同,再根據(jù)所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對所述組播報文進行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷確定最短路徑;也可以先根據(jù)所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對所述組播報文進行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷確定最短路徑,當(dāng)?shù)谝宦窂胶偷诙窂降拈_銷相同,再根據(jù)第一路徑的距離、所述第二路徑的距離、所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離確定最短路徑。可選地,所述第一路徑的距離和/或所述第一路徑的開銷是由所述IPv4接口接收到的協(xié)議無關(guān)組播斷言(英文全稱為PIM Assert)報文攜帶的??蛇x地,所述PIM Assert報文是由所述組播數(shù)據(jù)提供 節(jié)點生成,并沿著所述第一路徑被逐跳轉(zhuǎn)發(fā)至所述IPv4接口的。所述PIM Assert每被轉(zhuǎn)發(fā)一次,其中攜帶的所述第一路徑的距離和/或所述第一路徑的開銷會被相應(yīng)地增加一次。這樣,當(dāng)所述PIM Assert報文被所述IPv4接口接收時,就可以確定所述第一路徑的距離和/或所述第一路徑的開銷。當(dāng)所述第一路徑為包括IPv4路徑段和IPv6路徑段的混合路徑時,所述第一路徑的距離還可以包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換距離,也可以不包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換距離;所述第一路徑的開銷還可以包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換開銷,也可以不包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換開銷??蛇x地,所述第二路徑的距離和/或所述第二路徑的開銷是由所述IPv6接口接收到的協(xié)議無關(guān)組播斷言(英文全稱為PIM Assert)報文攜帶的??蛇x地,所述PIM Assert報文是由所述組播數(shù)據(jù)提供節(jié)點生成,并沿著所述第二路徑被逐跳轉(zhuǎn)發(fā)至所述IPv6接口的。所述PIM Assert每被轉(zhuǎn)發(fā)一次,其中攜帶的所述第二路徑的距離和/或所述第二路徑的開銷會被相應(yīng)地增加一次。這樣,當(dāng)所述PIM Assert報文被所述IPv6接口接收時,就可以確定所述第二路徑的距離和/或所述第二路徑的開銷。當(dāng)所述第二路徑為包括IPv4路徑段和IPv6路徑段的混合路徑時,所述第二路徑的距離還可以包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換距離,也可以不包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換距離;所述第二路徑的開銷還可以包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換開銷,也可以不包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換開銷??蛇x地,所述轉(zhuǎn)換距離和/或轉(zhuǎn)換開銷是由所述組播地址轉(zhuǎn)換路由器確定的,或,所述轉(zhuǎn)換距離和/或轉(zhuǎn)換開銷是預(yù)先配置在所述組播地址轉(zhuǎn)換路由器中的??蛇x地,所述組播數(shù)據(jù)提供節(jié)點為組播源節(jié)點或匯聚節(jié)點??蛇x地,當(dāng)所述第一組播加入請求報文攜帶了組播地址,但沒有攜帶組播源地址時,所述組播數(shù)據(jù)提供節(jié)點為所述組播源節(jié)點。可選地,當(dāng)所述第一組播加入請求報文攜帶了組播地址和組播源地址時,所述組播數(shù)據(jù)提供節(jié)點為所述匯聚節(jié)點。在本實施例中,所述組播地址轉(zhuǎn)換路由器在收到IPv4或IPv6組播加入請求報文后,可以從第一路徑和第二路徑中確定最短路徑,其中第一路徑和第二路徑的全部或者部分分別屬于不同的網(wǎng)絡(luò)類型,從而實現(xiàn)了在不同的網(wǎng)絡(luò)類型中選取最短路徑的方法,提高了組播的效率??蛇x地,在本實施例還可以包括以下內(nèi)容。103、所述組播地址轉(zhuǎn)換路由器在確定所述最短路徑后,沿所述最短路徑向所述組播數(shù)據(jù)提供節(jié)點發(fā)送第二組播加入請求報文。所述第二組播加入請求報文請求的組播數(shù)據(jù)可以包括所述第一組播加入請求報文請求的組播數(shù)據(jù),也可以與第一組播加入請求報文請求的組播數(shù)據(jù)相同??蛇x地,本實施例在包括所述101和102的基礎(chǔ)上,或者在包括101、102和103的基礎(chǔ)上,還可以包括以下內(nèi)容。104、所述組播地·址轉(zhuǎn)換路由器通過第三路徑接收到第一組播數(shù)據(jù)報文。105、所述組播地址轉(zhuǎn)換路由器通過第四路徑接收到第二組播數(shù)據(jù)報文,其中所述第二組播數(shù)據(jù)報文的組播地址可以通過對所述第一組播數(shù)據(jù)報文的組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換得到。也就是說,第二組播數(shù)據(jù)報文的組播地址和第一組播數(shù)據(jù)報文的組播地址存在映射關(guān)系,對第二組播數(shù)據(jù)報文的組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換可以得到第一組播數(shù)據(jù)報文的組播地址,對第一組播數(shù)據(jù)報文的組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換可以得到第二組播數(shù)據(jù)報文的組播地址。106、所述組播地址轉(zhuǎn)換路由器從所述第三路徑和所述第四路徑中確定新的最短路徑和新的非最短路徑??蛇x地,本實施例還包括以下內(nèi)容。107、所述組播地址轉(zhuǎn)換路由器沿所述新的非最短路徑向所述組播數(shù)據(jù)提供節(jié)點發(fā)送剪枝消息。所述第三路徑可以是所述第一路徑,也可以不是所述第一路徑;所述第四路徑可以是第二路徑,也可以不是所述第二路徑;所述第三路徑和所述第四路徑不可以是同一條路徑。本實施例在接收組播數(shù)據(jù)報文的過程中進行了進一步的優(yōu)化,從不同的網(wǎng)絡(luò)類型中選取最短路徑,并將非最短路徑剪枝,進一步提高了組播的效率。
本發(fā)明實施例二圖2所示為本發(fā)明的一個實施例的網(wǎng)絡(luò)結(jié)構(gòu)示意圖。組播地址轉(zhuǎn)換路由器1(英文縮寫為MTR_1)和組播地址轉(zhuǎn)換路由器2 (英文縮寫為MTR_2)均為同時支持IPv4和IPv6的設(shè)備,MTR_2為匯聚節(jié)點。MTR_1和MTR_2之間包括兩條并聯(lián)的鏈路,分別為MTR_1、IPv4路由器1、IPv4路由器2、IPv4路由器3和MTR_2,MTR_1、IPv6路由器2和MTR_2。MTR_1通過IPv6路由器I與IPv6用戶駐地設(shè)備I (英文縮寫為IPv6 CPE_1)相連,IPv6 CPE_1還與IPv4機頂盒I (英文縮寫為IPv4STBl)相連。如圖3所示,本發(fā)明實施例二包括以下內(nèi)容。201、MTR_1從IPv6路由器I接收第一組播加入請求報文,在本實施例中,所述第一組播加入請求報文為P頂加入請求報文1,所述P頂加入請求報文I為IPv6報文,并且所述PM加入請求報文I的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址。在本實施例中,所述PM加入請求報文I的組播地址為ffxx:abc::232.1.1.1 23,是為IPv4地址232.1.1.1 23添加IPv6前綴得到的,指定的源地址為64:ff9b::1 0.1.1.1 40,是為IPv4地址I 0.1.1.140添加前綴得到的。所述PIM加入請求報文I是由IPv6路由器I對IPv6 CPE_1向其發(fā)送的MLD v2加入請求報文進行重新封裝得到的??蛇x地,IPv6路由器I在收到所述MLD v2加入請求報文后還建立組播地址為 ffxx:abc::232.1.1.123 和源地址為 64:ff9b::10.1.1.140 的(組播源,組播組)(S,G)狀態(tài)信息和與該狀態(tài)信息對應(yīng)的接收者列表信息,將IPv6路由器I中與IPv6 CPE_1連接的接口加入到接收者 列表中。所述MLD v2加入請求報文是由所述IPv6 CPE_1對IPv4STBl發(fā)送的IGMP v3加入請求報文進行重新封裝而得到的,所述IGMP v3加入請求報文的組播地址為232.1.1.123,指定的組播源地址為10.1.1.140。可選地,MTR_1在收到PM加入請求報文I后,根據(jù)PM加入請求報文I建立組播地址為ffxx:abc::232.1.1.123和組播源地址為64:ff9b:: 10.1.1.140的(S,G)狀態(tài)信息和與該狀態(tài)信息對應(yīng)的接收者列表信息,并把MTR_1中與IPv6路由器I連接的接口(即接收PM加入請求報文I的接口 )加入到MTR_1的接收者列表中。202、MTR_1確定到達(dá)組播數(shù)據(jù)提供節(jié)點最短路徑。在本實施例中,由于所述PM加入請求報文I中攜帶了組播源地址,因此所述組播數(shù)據(jù)提供節(jié)點為IPv4組播源,而不是作為匯聚節(jié)點的MTR_2。如圖2所示,MTR_1到IPv4組播源的路徑至少包括路徑I和路徑2,路徑I經(jīng)過的節(jié)點包括MTR_1、IPv4路由器1、IPv4路由器2、IPv4路由器3、MTR_2和IPv4組播源,路徑2經(jīng)過的節(jié)點包括MTR_1、IPv6路由器2、MTR_2和IPv4組播源。MTR_1從MTR_1上與IPv4路由器I相連的IPv4接口接收到PIMAssert報文1,所述PM Assert報文I攜帶路徑I的距離,距離值為5,其中MTR_1上與IPv4路由器I相連的IPv4接口即為實施例一中的所述組播地址轉(zhuǎn)換路由器的IPv4接口。MTR_1從MTR_1上與IPv6路由器2相連的IPv6接口接收PM Assert報文2,所述PIM Assert報文2攜帶路徑2的距離,距離值為4,其中所述距離值4包括了 MTR_2將IPv4組播報文轉(zhuǎn)換為IPv6組播報文時產(chǎn)生的轉(zhuǎn)換距離,MTR_1上與IPv6路由器2相連的IPv6接口即為實施例一中的所述組播地址轉(zhuǎn)換路由器的IPv6接口??蛇x地,所述PM Assert報文2攜帶路徑2的距離也可以不包括MTR_2將IPv4組播報文轉(zhuǎn)換為IPv6組播報文時產(chǎn)生的轉(zhuǎn)換距離。由于MTR_1需要將從路徑I上接收到的IPv4組播報文轉(zhuǎn)換為IPv6組播報文,因此在確定最短路徑時,需要根據(jù)路徑I的距離和由于MTR_1將IPv4組播報文轉(zhuǎn)換為IPv6組播報文而產(chǎn)生的轉(zhuǎn)換距離確定距離計算值,例如當(dāng)由于MTR_1將IPv4組播報文轉(zhuǎn)換為IPv6組播報文而產(chǎn)生的轉(zhuǎn)換距離的距離值為I時,所述距離計算值可以為6。因為所述距離計算值6大于路徑2的距離值4,因此可以確定路徑2為最短路徑。在本實施例中,所述MTR_1在收到第一組播加入請求報文后,可以從路徑I和路徑2中確定最短路徑,其中路徑I的一部分為IPv4路徑和路徑2的一部分為IPv6路徑,從而實現(xiàn)了在不同的網(wǎng)絡(luò)類型中選取最短路徑的方法,提高了組播的效率??蛇x地,本實施例還可以包括以下內(nèi)容。203、MTR_1沿路徑2向所述組播數(shù)據(jù)提供節(jié)點發(fā)送第二組播加入請求報文,在本實施例中所述第二組播加入請求報文為PIM加入請求報文2,所述組播數(shù)據(jù)提供節(jié)點為IPv4組播源。在本實施例中,由于MTR_2在路徑2上的下一跳節(jié)點為IPv6路由器2,因此PIM加入請求報文2為IPv6報文,其攜帶的組播地址和組播源地址與PM加入請求報文I的組播地址和組播源地址相同。204、MTR_1沿路徑3接收第一組播數(shù)據(jù)報文,沿路徑4接收第二組播數(shù)據(jù)報文,其中第一組播數(shù)據(jù)報文為IPv4報文,第二組播數(shù)據(jù)報文為IPv6報文,其中所述第二組播數(shù)據(jù)報文的組播地址可以通過對所述第一組播數(shù)據(jù)報文的組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換得到。也就是說,第二組播數(shù)據(jù)報文的組播地址可以是根據(jù)IPv6前綴和第一組播數(shù)據(jù)報文的IPv4組播地址生成的。所述路徑3可以和所述路徑I相同,也可以不同;所述路徑4可以與所述路徑2相同,也可以不同。205、MTR_1確定路徑3和路徑4中的最短路徑和非最短路徑。
可選地,本 實施例還包括以下內(nèi)容。206、MTR_1沿所述路徑3和路徑4中的非最短路徑發(fā)送剪枝消息,以便僅從所述路徑3和路徑4中的最短路徑接收第一組播數(shù)據(jù)報文或第二組播數(shù)據(jù)報文攜帶的組播數(shù)據(jù)。在本實施例中,第一組播數(shù)據(jù)報文和第二組播數(shù)據(jù)報文來自相同的組播源,因此第一組播數(shù)據(jù)報文中攜帶的組播數(shù)據(jù)和第二組播數(shù)據(jù)報文中攜帶的組播數(shù)據(jù)屬于相同的數(shù)據(jù)源??蛇x地,本實施例還包括以下內(nèi)容。207、MTR_1將從路徑3和路徑4中的最短路徑接收到的組播數(shù)據(jù)向IPv4STBl發(fā)送。本實施例在接收組播數(shù)據(jù)報文的過程中進行了進一步的優(yōu)化,從不同的網(wǎng)絡(luò)類型中選取最短路徑,并將非最短路徑剪枝,進一步提高了組播的效率。本發(fā)明實施例三圖4所示為本發(fā)明的一個實施例的網(wǎng)絡(luò)結(jié)構(gòu)示意圖。在本發(fā)明的實施例三中,組播地址轉(zhuǎn)換路由器1(英文縮寫為MTR_1)和組播地址轉(zhuǎn)換路由器2 (英文縮寫為MTR_2)均為同時支持IPv4和IPv6的設(shè)備,MTR_2為匯聚節(jié)點。MTR_1和MTR_2之間包括兩條并聯(lián)的鏈路,分別為MTR_1、IPv4路由器1、IPv4路由器2、IPv4路由器3和MTR_2,MTR_l、IPv6路由器I和MTR_2。MTR_1通過IPv4路由器4與IPv4用戶駐地設(shè)備I (英文縮寫為IPv4 CPE_1)相連,IPv4 CPE_1還與IPv4機頂盒I (英文縮寫為IPv4 STB I)相連。如圖5所示,本本發(fā)明實施例三包括如下內(nèi)容。301、MTR_1從IPv4路由器4接收第一組播加入請求報文,在本實施例中,所述第一組播加入請求報文為P頂加入請求報文1,所述P頂加入請求報文I的組播地址為232.1.1.123,指定的源地址為 10.1.1.140??蛇x地,MTR_1在收到PM加入請求報文I后,根據(jù)PM加入請求報文I建立組播地址為232.1.1.123和組播源地址為10.1.1.140的(S,G)狀態(tài)信息和與該狀態(tài)信息對應(yīng)的接收者列表信息,并把MTR_1中與IPv4路由器4連接的接口(即接收PIM加入請求報文I的接口 )加入到MTR_1的接收者列表中。302、MTR_1確定到達(dá)組播數(shù)據(jù)提供節(jié)點最短路徑。在本實施例中,由于所述PM加入請求報文I中攜帶了組播源地址,因此所述組播數(shù)據(jù)提供節(jié)點為IPv4組播源,而不是作為匯聚節(jié)點的MTR_2。如圖4所示,MTR_1到IPv4組播源的路徑至少包括路徑I和路徑2,路徑I經(jīng)過的節(jié)點包括MTR_1、IPv4路由器1、IPv4路由器2、IPv4路由器3、MTR_2和IPv4組播源,路徑2經(jīng)過的節(jié)點包括MTR_1、IPv6路由器1、MTR_2和IPv4組播源。MTR_1從MTR_1上與IPv4路由器I相連的IPv4接口接收到PIMAssert報文1,所述PM Assert報文I攜帶路徑I的距離,距離值為5。MTR_1從MTR_1上與IPv6路由器I相連的IPv6接口接收PIM Assert報文2,所述PIM Assert報文2攜帶路徑2的距離,距離值為4,其中所述距離值4包括了 MTR_2將IPv4組播報文轉(zhuǎn)換為IPv6組播報文時產(chǎn)生的轉(zhuǎn)換距離。可選地,所述PM Assert報文2攜帶路徑2的距離也可以不包括MTR_2將IPv4組播報文轉(zhuǎn)換為IPv6組播報文時產(chǎn)生的 轉(zhuǎn)換距離。由于MTR_1需要將從路徑2上接收到的IPv6組播報文轉(zhuǎn)換為IPv4組播報文,因此在確定最短路徑時,需要根據(jù)路徑2的距離和由于MTR_1將IPv6組播報文轉(zhuǎn)換為IPv4組播報文而產(chǎn)生的轉(zhuǎn)換距離確定距離計算值,例如當(dāng)由于MTR_1將IPv6組播報文轉(zhuǎn)換為IPv4組播報文而產(chǎn)生的轉(zhuǎn)換距離的距離值為1、所述P頂Assert報文2攜帶路徑2的距離值為4時,所述距離計算值可以為4+1 = 5。此時可以任選路徑I和路徑2中的一條路徑作為最短路徑,也可以繼續(xù)根據(jù)開銷繼續(xù)確定最短路徑。在本實施例中,所述MTR_1在收到第一組播加入請求報文后,可以從路徑I和路徑2中確定最短路徑,其中路徑I的一部分為IPv4路徑和路徑2的一部分為IPv6路徑,從而實現(xiàn)了在不同的網(wǎng)絡(luò)類型中選取最短路徑的方法,提高了組播的效率。當(dāng)需要根據(jù)開銷繼續(xù)確定最短路徑時,本實施例還可以包括以下內(nèi)容。303、MTR_1從所述PM Assert報文I和PM Assert報文2中獲取路徑I的開銷和路徑2的開銷。例如,路徑I的開銷為10,路徑2的開銷為5。304、MTR_1根據(jù)路徑2的開銷和由于MTR_1將IPv6組播報文轉(zhuǎn)換為IPv4組播報文而產(chǎn)生的轉(zhuǎn)換開銷確定開銷計算值。由于MTR_1需要將收到的IPv6組播報文轉(zhuǎn)換為IPv4組播報文,因此會產(chǎn)生轉(zhuǎn)換開銷,在選擇最短路徑時需要考慮所述轉(zhuǎn)換開銷。在本實施例中,所述轉(zhuǎn)換開銷的值為1,實際上所述轉(zhuǎn)換開銷的值也可以根據(jù)實際情況確定為其他數(shù)值。當(dāng)路徑2的開銷為5,所述轉(zhuǎn)換開銷的值為I時,所述開銷計算值可以為6,即路徑2的開銷與所述轉(zhuǎn)換開銷之和。當(dāng)然,也可以使用其他的數(shù)學(xué)運算關(guān)系確定所述開銷計算值。305、MTR_1根據(jù)所述開銷計算值和所述路徑I的開銷確定最短路徑。當(dāng)路徑I的開銷為10,所述開銷計算值為6時,MTR_1將路經(jīng)2確定為所述最短路徑。本實施例在接收組播數(shù)據(jù)報文的過程中進行了進一步的優(yōu)化,從不同的網(wǎng)絡(luò)類型中選取最短路徑,并將非最短路徑剪枝,進一步提高了組播的效率。本發(fā)明實施例四圖6所示為本發(fā)明的一個實施例的方法示意圖。如圖6所示,本發(fā)明實施例四包括以下內(nèi)容。401、組播地址轉(zhuǎn)換路由器通過第一路徑接收來自組播數(shù)據(jù)提供節(jié)點的第一組播數(shù)據(jù)報文,所述第一路徑為所述組播地址轉(zhuǎn)換路由器的第四版互聯(lián)網(wǎng)協(xié)議(英文全稱為Internet Protocol version 4,英文簡稱為IPv4)接口和所述組播數(shù)據(jù)提供節(jié)點之間的路徑??蛇x地,所述組播地址轉(zhuǎn)換路由器的IPv4接口是指通過數(shù)據(jù)信號線與所述組播數(shù)據(jù)提供節(jié)點相連的物理接口或虛擬接口,并且所述組播地址轉(zhuǎn)換路由器的IPv4接口與所述組播數(shù)據(jù)提供節(jié)點間的距離不是無限長。在如圖2所示的網(wǎng)絡(luò)中,接口 11即為所述組播地址轉(zhuǎn)換路由器的IPv4接口。402、組播地址轉(zhuǎn)換路由器通過第二路徑接收來自所述組播數(shù)據(jù)提供節(jié)點的第二組播數(shù)據(jù)報文,所述第二路徑為所述組 播地址轉(zhuǎn)換路由器的第六版互聯(lián)網(wǎng)協(xié)議(英文全稱為Internet Protocol version 6,英文簡稱為IPv6)接口和所述組播數(shù)據(jù)提供節(jié)點之間的路徑,其中所述第二組播數(shù)據(jù)報文的組播地址可以通過對所述第一組播數(shù)據(jù)報文的組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換得到??蛇x地,所述組播地址轉(zhuǎn)換路由器的IPv6接口是指通過數(shù)據(jù)信號線與所述組播數(shù)據(jù)提供節(jié)點相連的物理接口或虛擬接口,并且所述組播地址轉(zhuǎn)換路由器的IPv6接口與所述組播數(shù)據(jù)提供節(jié)點間的距離不是無限長。在如圖2所示的網(wǎng)絡(luò)中,接口 12即為所述組播地址轉(zhuǎn)換路由器的IPv6接口。403、確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑??蛇x地,所述最短路徑是根據(jù)路徑參數(shù)確定的。可選地,所述路徑參數(shù)包括所述第一路徑的距離、所述第二路徑的距離和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離??蛇x地,當(dāng)所述組播地址轉(zhuǎn)換路由器接收到的請求所述第一組播數(shù)據(jù)報文或第二組播數(shù)據(jù)報文的組播加入請求報文為IPv6報文并且所述組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址時,確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑包括:根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值,例如,可以將所述第一路徑的距離和所述轉(zhuǎn)換距離相加,得到所述第一路徑的距離計算值;根據(jù)所述第一路徑的距離計算值與所述第二路徑的距離從所述第一路徑和第二路徑中確定所述最短路徑和所述非最短路徑,例如,可以比較所述第一路徑的距離計算值與所述第二路徑的距離的大小,選擇距離最小的路徑作為所述最短路徑??蛇x地,當(dāng)所述組播地址轉(zhuǎn)換路由器接收到的請求所述第一組播數(shù)據(jù)報文或第二組播數(shù)據(jù)報文的組播加入請求報文為IPv4報文時,確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑包括:根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值;根據(jù)所述第二路徑的距離計算值與所述第一路徑的距離,從所述第一路徑和第二路徑中確定所述最短路徑和非最短路徑??蛇x地,所述路徑參數(shù)包括所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷。可選地,當(dāng)所述組播地址轉(zhuǎn)換路由器接收到的請求所述第一組播數(shù)據(jù)報文或第二組播數(shù)據(jù)報文的組播加入請求報文為IPv6報文并且所述組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址時,確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑包括:根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值,例如可以將所述第一路徑的開銷和所述轉(zhuǎn)換開銷相加,得到所述第一路徑的開銷計算值;根據(jù)所述第一路徑的開銷計算值與所述第二路徑的開銷從所述第一路徑和第二路徑中確定所述最短路徑和所述非最短路徑,例如,可以比較所述第一路徑的開銷計算值與所述第二路徑的開銷的大小,選擇開銷最小的路徑作為所述最短路徑??蛇x地,當(dāng)所述組播地址轉(zhuǎn)換路由器接收到的請求所述第一組播數(shù)據(jù)報文或第二組播數(shù)據(jù)報文的組播加入請求報文為IPv4報文時,確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑包括:根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值;根據(jù)所述第二路徑的開銷計算值與所述第一路徑的開銷,從所述第一路徑和第二路徑中確定所述最短路徑和非最短路徑??蛇x地,所述路徑參數(shù)包括所述第一路徑的距離、所述第二路徑的距離、所述組播地址轉(zhuǎn)換路由器對組播報 文進行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離、所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對所述組播報文進行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷??蛇x地,當(dāng)所述組播地址轉(zhuǎn)換路由器接收到的請求所述第一組播數(shù)據(jù)報文或第二組播數(shù)據(jù)報文的組播加入請求報文為IPv6報文并且所述組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址時,確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑包括:根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值;根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值;根據(jù)所述第一路徑的距離計算值和所述第一路徑的開銷計算值確定第一綜合計算值;根據(jù)所述第二路徑的距離和所述第二路徑的開銷確定第二綜合計算值;根據(jù)所述第一綜合計算值和所述第二綜合計算值,從所述第一路徑和第二路徑中確定所述最短路徑和所述非最短路徑??蛇x地,當(dāng)所述組播地址轉(zhuǎn)換路由器接收到的請求所述第一組播數(shù)據(jù)報文或第二組播數(shù)據(jù)報文的組播加入請求報文為IPv4報文時,確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑包括:根據(jù)所述第一路徑的距離和所述第一路徑的開銷確定第一綜合計算值;根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值;根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值;根據(jù)所述第二路徑的距離計算值和所述第二路徑的開銷計算值確定第二綜合計算值;根據(jù)所述第一綜合計算值和所述第二綜合計算值從所述第一路徑和第二路徑中確定所述最短路徑。可選地,所述第一路徑的距離和/或所述第一路徑的開銷是由所述IPv4接口接收到的協(xié)議無關(guān)組播斷言(英文全稱為PIM Assert)報文攜帶的??蛇x地,所述PIM Assert報文是由所述組播數(shù)據(jù)提供節(jié)點生成,并沿著所述第一路徑被逐跳轉(zhuǎn)發(fā)至所述IPv4接口的。所述PIM Assert每被轉(zhuǎn)發(fā)一次,其中攜帶的所述第一路徑的距離和/或所述第一路徑的開銷會被相應(yīng)地增加一次。這樣,當(dāng)所述PIM Assert報文被所述IPv4接口接收時,就可以確定所述第一路徑的距離和/或所述第一路徑的開銷。當(dāng)所述第一路徑為包括IPv4路徑段和IPv6路徑段的混合路徑時,所述第一路徑的距離還可以包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換距離,也可以不包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換距離;所述第一路徑的開銷還可以包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換開銷,也可以不包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換開銷。可選地,所述第二路徑的距離和/或所述第二路徑的開銷是由所述IPv6接口接收到的協(xié)議無關(guān)組播斷言(英文全稱為PIM Assert)報文攜帶的??蛇x地,所述PIM Assert報文是由所述組播數(shù)據(jù)提供節(jié)點生成,并沿著所述第二路徑被逐跳轉(zhuǎn)發(fā)至所述IPv6接口的。所述PIM Assert每被轉(zhuǎn)發(fā)一次,其中攜帶的所述第二路徑的距離和/或所述第二路徑的開銷會被相應(yīng)地增加一次。這樣,當(dāng)所述PIM Assert報文被所述IPv6接口接收時,就可以確定所述第二路徑的距離和/或所述第二路徑的開銷。當(dāng)所述第二路徑為包括IPv4路徑段和IPv6路徑段的混合路徑時,所述第二路徑的距離還可以包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換距離,也可以不包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換距離;所述第二路徑的開銷還可以包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換開銷,也可以不包括所述IPv4路徑段和IPv6路徑段之間的轉(zhuǎn)換開銷??蛇x地,所述轉(zhuǎn)換距離是由所述組播地址轉(zhuǎn)換路由器確定的,或,所述轉(zhuǎn)換距離是預(yù)先配置在所述組播地址轉(zhuǎn)換路由器中的。可選地,所述組播數(shù)據(jù)提供節(jié)點為組播源節(jié)點或匯聚節(jié)點??蛇x地,當(dāng)所述第一組播加入請求報文攜帶了組播地址,但沒有攜帶組播源地址時,所述組播數(shù)據(jù)提供節(jié)點為所述組播源節(jié)點??蛇x地,當(dāng)所述第一組播加入請求報文攜帶了組播地址和組播源地址時,所述組播數(shù)據(jù)提供節(jié)點為所述匯聚節(jié)點。404、組播地址轉(zhuǎn)換路由器沿所述非最短路徑向所述組播數(shù)據(jù)提供節(jié)點發(fā)送剪枝消息。在本實施例中,所述組播地址轉(zhuǎn)換路由器在收到第一組播數(shù)據(jù)報文和第二組播數(shù)據(jù)報文后,可以從第一路徑和第二路徑中確定最短路徑來接收組播數(shù)據(jù)報文,其中第一路徑和第二路徑的全部或者部分分別屬于不同的網(wǎng)絡(luò)類型,從而實現(xiàn)了在不同的網(wǎng)絡(luò)類型中選取最短路徑來接收組播數(shù)據(jù)報文的方法,提高了組播的效率。本發(fā)明實施例五如圖7A所示,一種組播地址轉(zhuǎn)換路由器70,包括:接收單元71,用于接收第一組播加入請求報文,其中,所述第一組播加入請求報文為第四版互聯(lián)網(wǎng)協(xié)議IPv4報文并且所述第一組播加入請求報文的組播地址為IPv4組播地址,或,所述第一組播加入請求報文為第六版互聯(lián)網(wǎng)協(xié)議IPv6報文并且所述第一組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址;
最短路徑確定單元72,用于在第一路徑和第二路徑中確定最短路徑,其中,所述第一路徑為所述組播地址轉(zhuǎn)換路由器的IPv4接口與所述第一組播加入請求報文對應(yīng)的組播數(shù)據(jù)提供節(jié)點之間的路徑,所述第二路徑為所述組播地址轉(zhuǎn)換路由器的IPv6接口與所述第一組播加入請求報文對應(yīng)的組播數(shù)據(jù)提供節(jié)點之間的路徑??蛇x地,所述最短路徑確定單元72根據(jù)路徑參數(shù)確定所述最短路徑,所述路徑參數(shù)包括:所述第一路徑的距離、所述第二路徑的距離和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離,或所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷,或所述第一路徑的距離、所述第二路徑的距離、所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離、所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對所述組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷??蛇x地,當(dāng)所述第一組播加入請求報文為IPv6報文并且所述第一組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址時,所述最短路徑確定單元72具體用于:根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值,根據(jù)所述第一路徑的距離計算值與所述第二路徑的距離從所述第一路徑和第二路徑中確定所述最短路徑;或,根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值,根據(jù)所述第一路徑的開銷計算值與所述第二路徑的開銷從所述第一路徑和第二路徑中確定所述最短路徑;或,根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值,根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值,根據(jù)所述第一路徑的距離計算值和所述第一路徑的開銷計算值確定第一綜合計算值,根據(jù)所述第二路徑的距離和所述第二路徑的開銷確定第二綜合計算值,根據(jù)所述第一綜合計算值和所述第二綜合計算值,從所述第一路徑和第二路徑中確定所述最短路徑??蛇x地,當(dāng)所述第一組播加入請求報文為IPv4報文并且所述第一組播加入請求報文的組播地址為IPv4組播地址時,所述最短路徑確定單元72具體用于:根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值,根據(jù)所述第二路徑的距離計算值與所述第一路徑的距離,從所述第一路徑和第二路徑中確定所述最短路徑;或,根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值,根據(jù)所述第二路徑的開銷計算值與所述第一路徑的開銷,從所述第一路徑和第二路徑中確定所述最短路徑;或,根據(jù)所 述第一路徑的距離和所述第一路徑的開銷確定第一綜合計算值,根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值,根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值,根據(jù)所述第二路徑的距離計算值和所述第二路徑的開銷計算值確定第二綜合計算值,根據(jù)所述第一綜合計算值和所述第二綜合計算值從所述第一路徑和第二路徑中確定所述最短路徑。如圖7B所示,所述組播地址轉(zhuǎn)換路由器70除包括接收單元71和所述最短路徑確定單元72之外,還包括:IPv4接口 73,用于接收攜帶所述第一路徑的距離和/或所述第一路徑的開銷的協(xié)議無關(guān)組播斷言P頂Assert報文;IPv6接口 74,用于接收攜帶所述第二路徑的距離和/或所述第二路徑的開銷的協(xié)議無關(guān)組播斷言P頂Assert報文??蛇x地,所述組播地址轉(zhuǎn)換路由器70還包括:轉(zhuǎn)換信息確定單元75,用于確定所述轉(zhuǎn)換距離和/或轉(zhuǎn)換開銷;或,轉(zhuǎn)換信息預(yù)置單元75,用于在所述組播地址轉(zhuǎn)換路由器中預(yù)置所述轉(zhuǎn)換距離和/或轉(zhuǎn)換開銷。在本實施例中,所述組播數(shù)據(jù)提供節(jié)點70可以為組播源節(jié)點或匯聚節(jié)點。在本實施例中,所述組播地址轉(zhuǎn)換路由器70在收到IPv4或IPv6組播加入請求報文后,可以從第一路徑和第二路徑中確定最短路徑,其中第一路徑和第二路徑的全部或者部分分別屬于不同的網(wǎng)絡(luò)類型,從而實現(xiàn)了在不同的網(wǎng)絡(luò)類型中選取最短路徑的方法,提高了組播的效率。
`
可選地,所述組播地址轉(zhuǎn)`換路由器70還包括:第一組播數(shù)據(jù)報文接收單元76,用于通過第三路徑接收到第一組播數(shù)據(jù)報文;第二組播數(shù)據(jù)報文接收單元77,用于通過第四路徑接收到第二組播數(shù)據(jù)報文,其中所述第二組播數(shù)據(jù)報文的組播地址可以通過對所述第一組播數(shù)據(jù)報文的組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換得到。可選地,所述最短路徑確定單元72還用于從所述第三路徑和所述第四路徑中確定新的最短路徑和新的非最短路徑??蛇x地,所述組播地址轉(zhuǎn)換路由器70還包括:剪枝單元78,用于沿所述新的非最短路徑向所述組播數(shù)據(jù)提供節(jié)點發(fā)送剪枝消
肩、O所述組播地址轉(zhuǎn)換路由器70包括的各個單元或接口可以是物理實體,也可以是虛擬的。組播地址轉(zhuǎn)換路由器70可以為一個獨立的網(wǎng)絡(luò)設(shè)備或者也可以集成于其他網(wǎng)絡(luò)設(shè)備中。本實施例在接收組播數(shù)據(jù)報文的過程中進行了進一步的優(yōu)化,從不同的網(wǎng)絡(luò)類型中選取最短路徑,并將非最短路徑剪枝,進一步提高了組播的效率。本發(fā)明實施例六如圖8A所示,一種組播地址轉(zhuǎn)換路由器80,包括:第一組播數(shù)據(jù)報文接收單元81,用于通過第一路徑接收來自組播數(shù)據(jù)提供節(jié)點的第一組播數(shù)據(jù)報文,所述第一路徑為所述組播地址轉(zhuǎn)換路由器的第四版互聯(lián)網(wǎng)協(xié)議IPv4接口和所述組播數(shù)據(jù)提供節(jié)點之間的路徑;第二組播數(shù)據(jù)報文接收單元82,用于通過第二路徑接收來自所述組播數(shù)據(jù)提供節(jié)點的第二組播數(shù)據(jù)報文,所述第二路徑為所述組播地址轉(zhuǎn)換路由器的第六版互聯(lián)網(wǎng)協(xié)議IPv6接口和所述組播數(shù)據(jù)提供節(jié)點之間的路徑,其中所述第二組播數(shù)據(jù)報文的組播地址可以通過對所述第一組播數(shù)據(jù)報文的組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換得到;最短路徑確定單元83,用于確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑;剪枝單元84,用于沿所述非最短路徑向所述組播數(shù)據(jù)提供節(jié)點發(fā)送剪枝消息。優(yōu)選地,最短路徑確定單元根據(jù)路徑參數(shù)確定所述最短路徑,所述路徑參數(shù)包括:所述第一路徑的距離、所述第二路徑的距離和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離,或,所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷,或所述第一路徑的距離、所述第二路徑的距離、所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離、所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對所述組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷??蛇x地,如圖SB所示,所述組播地址轉(zhuǎn)換路由器80除了包括第一組播數(shù)據(jù)報文接收單元81、第二組播數(shù)據(jù)報文接收單元82、最短路徑確定單元83和剪枝單元84外,還包括:
IPv4接口 85,用于接收攜帶所述第一路徑的距離和/或所述第一路徑的開銷的協(xié)議無關(guān)組播斷言P頂Assert報文;IPv6接口 86,用于接收攜帶所述第二路徑的距離和/或所述第二路徑的開銷的協(xié)議無關(guān)組播斷言P頂Assert報文;可選地,所述組播地址轉(zhuǎn)換路由器80還包括:轉(zhuǎn)換信息確定單元87,用于確定所述轉(zhuǎn)換距離和/或轉(zhuǎn)換開銷;或,轉(zhuǎn)換信息預(yù)置單元87,用于在所述組播地址轉(zhuǎn)換路由器中預(yù)置所述轉(zhuǎn)換距離和/或轉(zhuǎn)換開銷??蛇x地,當(dāng)所述組播地址轉(zhuǎn)換路由器80接收到的請求所述第一組播數(shù)據(jù)報文或第二組播數(shù)據(jù)報文的組播加入請求報文為IPv6報文并且所述組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址時,所述最短路徑確定單元83具體用于:根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值,根據(jù)所述第一路徑的距離計算值與所述第二路徑的距離從所述第一路徑和第二路徑中確定所述最短路徑和所述非最短路徑;或,根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值,根據(jù)所述第一路徑的開銷計算值與所述第二路徑的開銷從所述第一路徑和第二路徑中確定所述最短路徑和所述非最短路徑;或,根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值,根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值,根據(jù)所述第一路徑的距離計算值和所述第一路徑的開銷計算值確定第一綜合計算值,根據(jù)所述第二路徑的距離和所述第二路徑的開銷確定第二綜合計算值,根據(jù)所述第一綜合計算值和所述第二綜合計算值,從所述第一路徑和第二路徑中確定所述最短路徑和所述非最短路徑??蛇x地,當(dāng)所述組播地址轉(zhuǎn)換路由器80接收到的請求所述第一組播數(shù)據(jù)報文或第二組播數(shù)據(jù)報文的組播加入請求報文為IPv4報文時,所述最短路徑確定單元83具體用于:根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值,根據(jù)所述第二路徑的距離計算值與所述第一路徑的距離,從所述第一路徑和第二路徑中確定所述最短路徑和非最短路徑;或,根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值,根據(jù)所述第二路徑的開銷計算值與所述第一路徑的開銷,從所述第一路徑和第二路徑中確定所述最短路徑和非最短路徑;或,根據(jù)所述第一路徑的距離和所述第一路徑的開銷確定第一綜合計算值,根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值,根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值,根據(jù)所述第二路徑的距離計算值和所述第二路徑的開銷計算值確定第二綜合計算值,根據(jù)所述第一綜合計算值和所述第二綜合計算值從所述第一路徑和第二路徑中確定所述最短路徑。所述組播地址轉(zhuǎn)換路由器80包括的各個單元或接口可以是物理實體,也可以是虛擬的。組播地址轉(zhuǎn)換路由器80可以為一個獨立的網(wǎng)絡(luò)設(shè)備或者也可以集成于其他網(wǎng)絡(luò)設(shè)備中。在本實施例中,所述組播地址轉(zhuǎn)換路由器在收到第一組播數(shù)據(jù)報文和第二組播數(shù)據(jù)報文后,可以從第一路徑和第二路徑中確定最短路徑來接收組播數(shù)據(jù)報文,其中第一路徑和第二路徑的全部或者部分分別屬于不同的網(wǎng)絡(luò)類型,從而實現(xiàn)了在不同的網(wǎng)絡(luò)類型中選取最短路徑來接收組播數(shù)據(jù)報文的方法,提高了組播的效率。本領(lǐng)域普通技術(shù)人員可以理解:實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質(zhì)包括:R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。以上 所述,僅為本發(fā)明較佳的具體實施方式
,但本發(fā)明的保護范圍并不局限于此,任何熟悉該技術(shù)的人在本發(fā)明所揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種確定組播路徑的方法,其特征在于,包括: 組播地址轉(zhuǎn)換路由器接收第一組播加入請求報文,其中,所述第一組播加入請求報文為第四版互聯(lián)網(wǎng)協(xié)議IPv4報文并且所述第一組播加入請求報文的組播地址為IPv4組播地址,或,所述第一組播加入請求報文為第六版互聯(lián)網(wǎng)協(xié)議IPv6報文并且所述第一組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址; 所述組播地址轉(zhuǎn)換路由器在第一路徑和第二路徑中確定最短路徑,其中,所述第一路徑為所述組播地址轉(zhuǎn)換路由器的IPv4接口與所述第一組播加入請求報文對應(yīng)的組播數(shù)據(jù)提供節(jié)點之間的路徑,所述第二路徑為所述組播地址轉(zhuǎn)換路由器的IPv6接口與所述第一組播加入請求報文對應(yīng)的組播數(shù)據(jù)提供節(jié)點之間的路徑。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,其中, 所述最短路徑是根據(jù)路徑參數(shù)確定的,所述路徑參數(shù)包括: 所述第一路徑的距離、所述第二路徑的距離和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離,或 所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷,或 所述第一路徑的距離、所述第二路徑的距離、所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離、所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對所述組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,當(dāng)所述第一組播加入請求報文為IPv6報文并且所述第一組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址時,所述組播地址轉(zhuǎn)換路由器在所述第一路徑和所述第二路徑中確定所述最短路徑包括: 根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值,并且根據(jù)所述第一路徑的距離計算值與所述第二路徑的距離從所述第一路徑和第二路徑中確定所述最短路徑; 或, 根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值,并且根據(jù)所述第一路徑的開銷計算值與所述第二路徑的開銷從所述第一路徑和第二路徑中確定所述最短路徑; 或, 根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值, 根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值, 根據(jù)所述第一路徑的距離計算值和所述第一路徑的開銷計算值確定第一綜合計算值,根據(jù)所述第二路徑的距離和所述第二路徑的開銷確定第二綜合計算值,并且根據(jù)所述第一綜合計算值和所述第二綜合計算值,從所述第一路徑和第二路徑中確定所述最短路徑。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,當(dāng)所述第一組播加入請求報文為IPv4報文并且所述第一組播加入請求報文的組播地址為IPv4組播地址時,所述組播地址轉(zhuǎn)換路由器在所述第一路徑和所述第二路徑中確定所述最短路徑包括: 根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值,并且根據(jù)所述第二路徑的距離計算值與所述第一路徑的距離,從所述第一路徑和第二路徑中確定所述最短路徑; 或, 根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值,并且根據(jù)所述第二路徑的開銷計算值與所述第一路徑的開銷,從所述第一路徑和第二路徑中確定所述最短路徑; 或, 根據(jù)所述第一路徑的距離和所述第一路徑的開銷確定第一綜合計算值, 根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值, 根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值, 根據(jù)所述第二路徑的距離計算值和所述第二路徑的開銷計算值確定第二綜合計算值,并且 根據(jù)所述第一綜合計算值和所述第二綜合計算值從所述第一路徑和第二路徑中確定所述最短路徑。
5.根據(jù)權(quán)利要求2至4中任意一項所述的方法,其特征在于,其中 所述第一路徑的距離和/或所述第一路徑的開銷是由所述IPv4接口接收到的協(xié)議無關(guān)組播斷言PIM Assert報文攜帶的;` 所述第二路徑的距離和/或所述第二路徑的開銷是由所述IPv6接口接收到的協(xié)議無關(guān)組播斷言PIM Assert報文攜帶的; 所述轉(zhuǎn)換距離和/或轉(zhuǎn)換開銷是由所述組播地址轉(zhuǎn)換路由器確定的,或,所述轉(zhuǎn)換距離和/或轉(zhuǎn)換開銷是預(yù)先配置在所述組播地址轉(zhuǎn)換路由器中的。
6.根據(jù)權(quán)利要求1至5中任意一項所述的方法,其特征在于,所述方法還包括: 所述組播地址轉(zhuǎn)換路由器通過第三路徑接收到第一組播數(shù)據(jù)報文; 所述組播地址轉(zhuǎn)換路由器通過第四路徑接收到第二組播數(shù)據(jù)報文,其中所述第二組播數(shù)據(jù)報文的組播地址可以通過對所述第一組播數(shù)據(jù)報文的組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換得到; 所述組播地址轉(zhuǎn)換路由器從所述第三路徑和所述第四路徑中確定新的最短路徑和新的非最短路徑; 所述組播地址轉(zhuǎn)換路由器沿所述新的非最短路徑向所述組播數(shù)據(jù)提供節(jié)點發(fā)送剪枝消息。
7.根據(jù)權(quán)利要求1至6中任意一項所述的方法,其特征在于,所述組播數(shù)據(jù)提供節(jié)點為組播源節(jié)點或匯聚節(jié)點。
8.一種接收組播數(shù)據(jù)報文的方法,其特征在于,包括: 組播地址轉(zhuǎn)換路由器通過第一路徑接收來自組播數(shù)據(jù)提供節(jié)點的第一組播數(shù)據(jù)報文,所述第一路徑為所述組播地址轉(zhuǎn)換路由器的第四版互聯(lián)網(wǎng)協(xié)議IPv4接口和所述組播數(shù)據(jù)提供節(jié)點之間的路徑; 組播地址轉(zhuǎn)換路由器通過第二路徑接收來自所述組播數(shù)據(jù)提供節(jié)點的第二組播數(shù)據(jù)報文,所述第二路徑為所述組播地址轉(zhuǎn)換路由器的第六版互聯(lián)網(wǎng)協(xié)議IPv6接口和所述組播數(shù)據(jù)提供節(jié)點之間的路徑,其中所述第二組播數(shù)據(jù)報文的組播地址可以通過對所述第一組播數(shù)據(jù)報文的組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換得到; 確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑; 組播地址轉(zhuǎn)換路由器沿所述非最短路徑向所述組播數(shù)據(jù)提供節(jié)點發(fā)送剪枝消息。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于, 所述最短路徑是根據(jù)路徑參數(shù)確定的,所述路徑參數(shù)包括: 所述第一路徑的距離、所述第二路徑的距離和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離,或, 所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷,或 所述第一路徑的距離、所述第二路徑的距離、所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離、所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對所述組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于, 所述第一路徑的距離和/或所述第一路徑的開銷是由所述IPv4接口接收到的協(xié)議無關(guān)組播斷言PIM Assert報文攜帶的; 所述第二路徑的距離和/或所述第二路徑的開銷是由所述I Pv6接口接收到的協(xié)議無關(guān)組播斷言PIM Assert報文攜帶的; 所述轉(zhuǎn)換距離是由所述組播地址轉(zhuǎn)換路由器確定的,或,所述轉(zhuǎn)換距離是預(yù)先配置在所述組播地址轉(zhuǎn)換路由器 中的。
11.根據(jù)權(quán)利要求9或10所述的方法,其特征在于,當(dāng)所述組播地址轉(zhuǎn)換路由器接收到的請求所述第一組播數(shù)據(jù)報文或第二組播數(shù)據(jù)報文的組播加入請求報文為IPv6報文并且所述組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址時,確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑包括: 根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值,并且根據(jù)所述第一路徑的距離計算值與所述第二路徑的距離從所述第一路徑和第二路徑中確定所述最短路徑和所述非最短路徑; 或, 根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值,并且根據(jù)所述第一路徑的開銷計算值與所述第二路徑的開銷從所述第一路徑和第二路徑中確定所述最短路徑和所述非最短路徑; 或, 根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值, 根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值, 根據(jù)所述第一路徑的距離計算值和所述第一路徑的開銷計算值確定第一綜合計算值,根據(jù)所述第二路徑的距離和所述第二路徑的開銷確定第二綜合計算值,并且根據(jù)所述第一綜合計算值和所述第二綜合計算值,從所述第一路徑和第二路徑中確定所述最短路徑和所述非最短路徑。
12.根據(jù)權(quán)利要求9至11中任意一項所述的方法,其特征在于,當(dāng)所述組播地址轉(zhuǎn)換路由器接收到的請求所述第一組播數(shù)據(jù)報文或第二組播數(shù)據(jù)報文的組播加入請求報文為IPv4報文時,確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑包括: 根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值,并且根據(jù)所述第二路徑的距離計算值與所述第一路徑的距離,從所述第一路徑和第二路徑中確定所述最短路徑和非最短路徑; 或, 根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值,并且根據(jù)所述第二路徑的開銷計算值與所述第一路徑的開銷,從所述第一路徑和第二路徑中確定所述最短路徑和非最短路徑; 或, 根據(jù)所述第一路徑的距離和所述第一路徑的開銷確定第一綜合計算值, 根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值, 根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值, 根據(jù)所述第二路徑的距離計算值和所述第二路徑的開銷計算值確定第二綜合計算值,并且 根據(jù)所述第一綜合計算值和 所述第二綜合計算值從所述第一路徑和第二路徑中確定所述最短路徑。
13.—種組播地址轉(zhuǎn)換路由器,其特征在于,包括: 接收單元,用于接收第一組播加入請求報文,其中,所述第一組播加入請求報文為第四版互聯(lián)網(wǎng)協(xié)議IPv4報文并且所述第一組播加入請求報文的組播地址為IPv4組播地址,或,所述第一組播加入請求報文為第六版互聯(lián)網(wǎng)協(xié)議IPv6報文并且所述第一組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址; 最短路徑確定單元,用于在第一路徑和第二路徑中確定最短路徑,其中,所述第一路徑為所述組播地址轉(zhuǎn)換路由器的IPv4接口與所述第一組播加入請求報文對應(yīng)的組播數(shù)據(jù)提供節(jié)點之間的路徑,所述第二路徑為所述組播地址轉(zhuǎn)換路由器的IPv6接口與所述第一組播加入請求報文對應(yīng)的組播數(shù)據(jù)提供節(jié)點之間的路徑。
14.根據(jù)權(quán)利要求13所述的組播地址轉(zhuǎn)換路由器,其特征在于,所述最短路徑確定單元根據(jù)路徑參數(shù)確定所述最短路徑,所述路徑參數(shù)包括: 所述第一路徑的距離、所述第二路徑的距離和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離,或 所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷,或 所述第一路徑的距離、所述第二路徑的距離、所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離、所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對所述組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷。
15.根據(jù)權(quán)利要求14所述的組播地址轉(zhuǎn)換路由器,其特征在于,當(dāng)所述第一組播加入請求報文為IPv6報文并且所述第一組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址時,所述最短路徑確定單元具體用于:根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值,并且根據(jù)所述第一路徑的距離計算值與所述第二路徑的距離從所述第一路徑和第二路徑中確定所述最短路徑; 或, 根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值,并且根據(jù)所述第一路徑的開銷計算值與所述第二路徑的開銷從所述第一路徑和第二路徑中確定所述最短路徑; 或, 根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值, 根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值, 根據(jù)所述第一路徑的距離計算值和所述第一路徑的開銷計算值確定第一綜合計算值,根據(jù)所述第二路徑的距離和所述第二路徑的開銷確定第二綜合計算值,并且根據(jù)所述第一綜合計算值和所述第二綜合計算值,從所述第一路徑和第二路徑中確定所述最短路徑。
16.根據(jù)權(quán)利要求14所述的組播地址轉(zhuǎn)換路由器,其特征在于,當(dāng)所述第一組播加入請求報文為IPv4報文并且所述第一組播加入請求報文的組播地址為IPv4組播地址時,所述最短路徑確定單元具體用于: 根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值,并且根據(jù)所述第二路徑的距離計算值與所述第一路徑的距離,從所述第一路徑和第二路徑中確定所述最短路徑; 或,· 根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值,并且根據(jù)所述第二路徑的開銷計算值與所述第一路徑的開銷,從所述第一路徑和第二路徑中確定所述最短路徑; 或, 根據(jù)所述第一路徑的距離和所述第一路徑的開銷確定第一綜合計算值, 根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值, 根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值, 根據(jù)所述第二路徑的距離計算值和所述第二路徑的開銷計算值確定第二綜合計算值,并且 根據(jù)所述第一綜合計算值和所述第二綜合計算值從所述第一路徑和第二路徑中確定所述最短路徑。
17.根據(jù)權(quán)利要求14至16中任意一項所述的組播地址轉(zhuǎn)換路由器,其特征在于,還包括: IPv4接口,用于接收攜帶所述第一路徑的距離和/或所述第一路徑的開銷的協(xié)議無關(guān)組播斷言P頂Assert報文; IPv6接口,用于接收攜帶所述第二路徑的距離和/或所述第二路徑的開銷的協(xié)議無關(guān)組播斷言P頂Assert報文; 所述組播地址轉(zhuǎn)換路由器還包括:轉(zhuǎn)換信息確定單元,用于確定所述轉(zhuǎn)換距離和/或轉(zhuǎn)換開銷; 或, 轉(zhuǎn)換信息預(yù)置單元,用于在所述組播地址轉(zhuǎn)換路由器中預(yù)置所述轉(zhuǎn)換距離和/或轉(zhuǎn)換開銷。
18.根據(jù)權(quán)利要求13至17中任意一項所述的組播地址轉(zhuǎn)換路由器,其特征在于,還包括: 第一組播數(shù)據(jù)報文接收單元,用于通過第三路徑接收到第一組播數(shù)據(jù)報文; 第二組播數(shù)據(jù)報文接收單元,用于通過第四路徑接收到第二組播數(shù)據(jù)報文,其中所述第二組播數(shù)據(jù)報文的組播地址可以通過對所述第一組播數(shù)據(jù)報文的組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換 得到; 所述最短路徑確定單元還用于從所述第三路徑和所述第四路徑中確定新的最短路徑和新的非最短路徑; 所述組播地址轉(zhuǎn)換路由器還包括: 剪枝單元,用于沿所述新的非最短路徑向所述組播數(shù)據(jù)提供節(jié)點發(fā)送剪枝消息。
19.根據(jù)權(quán)利要求13至18中任意一項所述的組播地址轉(zhuǎn)換路由器,其特征在于,所述組播數(shù)據(jù)提供節(jié)點為組播源節(jié)點或匯聚節(jié)點。
20.一種組播地址轉(zhuǎn)換路由器,其特征在于,包括 第一組播數(shù)據(jù)報文接收單元,用于通過第一路徑接收來自組播數(shù)據(jù)提供節(jié)點的第一組播數(shù)據(jù)報文,所述第一路徑為所述組播地址轉(zhuǎn)換路由器的第四版互聯(lián)網(wǎng)協(xié)議IPv4接口和所述組播數(shù)據(jù)提供節(jié)點之間的路徑; 第二組播數(shù)據(jù)報文接收單元,用于通過第二路徑接收來自所述組播數(shù)據(jù)提供節(jié)點的第二組播數(shù)據(jù)報文,所述第二路徑為所述組播地址轉(zhuǎn)換路由器的第六版互聯(lián)網(wǎng)協(xié)議IPv6接口和所述組播數(shù)據(jù)提供節(jié)點之間的路徑,其中所述第二組播數(shù)據(jù)報文的組播地址可以通過對所述第一組播數(shù)據(jù)報文的組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換得到; 最短路徑確定單元,用于確定所述第一路徑和所述第二路徑中的最短路徑和非最短路徑; 剪枝單元,用于沿所述非最短路徑向所述組播數(shù)據(jù)提供節(jié)點發(fā)送剪枝消息。
21.根據(jù)權(quán)利要求20所述的組播地址轉(zhuǎn)換路由器,其特征在于,最短路徑確定單元根據(jù)路徑參數(shù)確定所述最短路徑,所述路徑參數(shù)包括: 所述第一路徑的距離、所述第二路徑的距離和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離,或, 所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷,或 所述第一路徑的距離、所述第二路徑的距離、所述組播地址轉(zhuǎn)換路由器對組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換距離、所述第一路徑的開銷、所述第二路徑的開銷和所述組播地址轉(zhuǎn)換路由器對所述組播報文進行互聯(lián)網(wǎng)協(xié)議IP轉(zhuǎn)換而產(chǎn)生的轉(zhuǎn)換開銷。
22.根據(jù)權(quán)利要求21所述的組播地址轉(zhuǎn)換路由器,其特征在于,還包括: IPv4接口,用于接收攜帶所述第一路徑的距離和/或所述第一路徑的開銷的協(xié)議無關(guān)組播斷言P頂Assert報文;IPv6接口,用于接收攜帶所述第二路徑的距離和/或所述第二路徑的開銷的協(xié)議無關(guān)組播斷言P頂Assert報文; 所述組播地址轉(zhuǎn)換路由器還包括: 轉(zhuǎn)換信息確定單元,用于確定所述轉(zhuǎn)換距離和/或轉(zhuǎn)換開銷; 或, 轉(zhuǎn)換信息預(yù)置單元,用于在所述組播地址轉(zhuǎn)換路由器中預(yù)置所述轉(zhuǎn)換距離和/或轉(zhuǎn)換開銷。
23.根據(jù)權(quán)利要求21或22所述的組播地址轉(zhuǎn)換路由器,其特征在于, 當(dāng)所述組播地址轉(zhuǎn)換路由器接收到的請求所述第一組播數(shù)據(jù)報文或第二組播數(shù)據(jù)報文的組播加入請求報文為IPv6報文并且所述組播加入請求報文的組播地址為對IPv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的IPv6組播地址時,所述最短路徑確定單元具體用于: 根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值,并且根據(jù)所述第一路徑的距離計算值與所述第二路徑的距離從所述第一路徑和第二路徑中確定所述最短路徑和所述非最短路徑; 或, 根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值,并且根據(jù)所述第一路 徑的開銷計算值與所述第二路徑的開銷從所述第一路徑和第二路徑中確定所述最短路徑和所述非最短路徑; 或, 根據(jù)所述第一路徑的距離和所述轉(zhuǎn)換距離確定所述第一路徑的距離計算值, 根據(jù)所述第一路徑的開銷和所述轉(zhuǎn)換開銷確定所述第一路徑的開銷計算值, 根據(jù)所述第一路徑的距離計算值和所述第一路徑的開銷計算值確定第一綜合計算值,根據(jù)所述第二路徑的距離和所述第二路徑的開銷確定第二綜合計算值,并且根據(jù)所述第一綜合計算值和所述第二綜合計算值,從所述第一路徑和第二路徑中確定所述最短路徑和所述非最短路徑。
24.根據(jù)權(quán)利要求21至23中任意一項所述的組播地址轉(zhuǎn)換路由器,其特征在于,當(dāng)所述組播地址轉(zhuǎn)換路由器接收到的請求所述第一組播數(shù)據(jù)報文或第二組播數(shù)據(jù)報文的組播加入請求報文為IPv4報文時,所述最短路徑確定單元具體用于: 根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值,并且根據(jù)所述第二路徑的距離計算值與所述第一路徑的距離,從所述第一路徑和第二路徑中確定所述最短路徑和非最短路徑; 或, 根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值,并且根據(jù)所述第二路徑的開銷計算值與所述第一路徑的開銷,從所述第一路徑和第二路徑中確定所述最短路徑和非最短路徑; 或, 根據(jù)所述第一路徑的距離和所述第一路徑的開銷確定第一綜合計算值, 根據(jù)所述第二路徑的距離和所述轉(zhuǎn)換距離確定所述第二路徑的距離計算值,根據(jù)所述第二路徑的開銷和所述轉(zhuǎn)換開銷確定所述第二路徑的開銷計算值, 根據(jù)所述第二路徑的距離計算值和所述第二路徑的開銷計算值確定第二綜合計算值,并且 根據(jù)所述第一綜合計算值和所述第二綜合計算值從所述第一路徑和第二路徑中確定所述最短路徑。 ·
全文摘要
本發(fā)明的實施例涉及一種確定組播路徑的方法、接收數(shù)據(jù)報文的方法及路由器。確定組播路徑的方法包括組播地址轉(zhuǎn)換路由器接收第一組播加入請求報文,其中,所述第一組播加入請求報文為I Pv4報文,或,所述第一組播加入請求報文為第六版互聯(lián)網(wǎng)協(xié)議I Pv6報文并且所述第一組播加入請求報文的組播地址為對I Pv4組播地址進行互聯(lián)網(wǎng)協(xié)議版本轉(zhuǎn)換而得到的I Pv6組播地址;所述組播地址轉(zhuǎn)換路由器在第一路徑和第二路徑中確定最短路徑。所述組播地址轉(zhuǎn)換路由器可以從第一路徑和第二路徑中確定最短路徑,其中第一路徑和第二路徑的全部或者部分分別屬于不同的網(wǎng)絡(luò)類型,從而實現(xiàn)了在不同的網(wǎng)絡(luò)類型中選取最短路徑的方法,提高了組播的效率。
文檔編號H04L12/781GK103248577SQ201210022349
公開日2013年8月14日 申請日期2012年2月1日 優(yōu)先權(quán)日2012年2月1日
發(fā)明者張忠建 申請人:華為技術(shù)有限公司