組播負載場景下選路的方法和路由器的制造方法
【專利摘要】本發(fā)明提供一種組播負載場景下選路的方法和路由器,涉及通信【技術領域】,解決了采用單播路由的方式獲取接收端到組播源的上游鏈路,若當前路由器選取的上游鏈路與多個路由器相連接,該上游鏈路分擔與之連接的多個路由器的組播數(shù)據(jù),導致組播數(shù)據(jù)擁塞或丟失,降低了系統(tǒng)的性能的問題。本發(fā)明的方法具體可以包括:第一路由器獲取第二路由器的組播處理能力和第三路由器的組播處理能力;將第二路由器和第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器,下行方向為由組播源到第一路由器的方向。可應用于組播負載場景下選路中。
【專利說明】組播負載場景下選路的方法和路由器
【技術領域】
[0001]本發(fā)明涉及通信【技術領域】,尤其涉及組播負載場景下選路的方法和路由器。
【背景技術】
[0002]I? (1111:61-1161:網(wǎng)絡之間互連的協(xié)議)組播技術實現(xiàn)了 I?網(wǎng)絡中點到多點的高效數(shù)據(jù)傳送。由于組播技術能夠有效地節(jié)省帶寬控制網(wǎng)絡流量,減輕服務器的負荷、降低網(wǎng)絡負載,因此在1917(19〖61價181011,交互式網(wǎng)絡電視?、多媒體會議、視頻監(jiān)控等諸多方面都有廣泛的應用。
[0003]I?組播協(xié)議可以包括:路由器和接收者主機之間協(xié)議、路由器和路由器之間協(xié)議,兩者結合可以用于構建從組播源到組播數(shù)據(jù)接收者之間的組播轉發(fā)樹。其中,路由器和路由器之間通常采用?II (^1-01:0001 111(161)611(16111:血11: 1(38181:,協(xié)議無關組播)協(xié)議。
[0004]?11根據(jù)I?組播中組播源和組播目的的不同可以分為43180111-00
,任意源組播)模型和 331 (80111-00 8^001^10,特定源組播)模型。
[0005]在組播源需通過相應的鏈路向接收端進行組播傳輸,因此,在進行組播傳輸之前,首先需要建立組播轉發(fā)樹,即建立組播源與接收端之間的鏈路。無論是八31還是331模型,
協(xié)議建立組播轉發(fā)樹的原理都是類似的,下面以331模型為例簡單介紹一下組播轉發(fā)樹的建立過程。
[0006]如圖1 所不,首先,路由器尺丁0 收到主機尺 1 的61-0111) 18118^61116111:?1~01:00017 組管理協(xié)議)加入請求后,采用單播路由的方式獲取到組播源3的傳輸鏈路,逐跳向上游路由器發(fā)送?II加入報文,主機[朝向組播源3的途徑可以為:
沿并該途徑建立組播加入樹,然后組播源3沿著?11加入報文傳輸?shù)姆捶较驅⒔M播數(shù)據(jù)轉發(fā)給主機[,即可以為從
[0007]具體的,采用單播路由的方式獲取主機町到組播源3的傳輸鏈路可以但不限于包括:當前路由可以選取被選取次數(shù)較少的一個鄰居路由作為上游路由,與該上游路由之間的鏈路即為獲取到的上游鏈路,將途經(jīng)的路由所選取好的上游鏈路整合,得到主機町到組播源3的傳輸鏈路;還可以通過(6 (0和(3, 6)以及哈希方式選取一個上游路由,例如,可以選取哈希值較大的鄰居路由作為上游路由。
[0008]在實現(xiàn)上述組播負載場景下選路的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術中至少存在如下問題:采用單播路由的方式獲取主機町到組播源3的鏈路,若當前路由選取的上游鏈路與多個路由相連接,該上游鏈路分擔與之連接的多個路由的組播數(shù)據(jù),導致組播數(shù)據(jù)擁塞或丟失,降低了系統(tǒng)的性能。
【發(fā)明內容】
[0009]本發(fā)明的實施例提供一種組播負載場景下選路的方法和路由器,組播源通過該方法確定的上游鏈路將組播數(shù)據(jù)傳輸至接收端,可以保證組播數(shù)據(jù)傳輸?shù)目煽啃院屯暾?,進而增加了系統(tǒng)的性能。
[0010]為達到上述目的,本發(fā)明的實施例采用如下技術方案:
[0011]第一方面,提供一種組播負載場景下選路的方法,包括:
[0012]第一路由器獲取第二路由器的組播處理能力和第三路由器的組播處理能力,所述第二路由器是所述第一路由器在上行方向上的第一下一跳路由器,所述第三路由器是所述第一路由器在所述上行方向上的第二下一跳路由器,所述上行方向為由所述第一路由器到組播源的方向;
[0013]將所述第二路由器和所述第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器,所述下行方向為由所述組播源到所述第一路由器的方向
[0014]在第一種可能的實現(xiàn)方式中,所述組播處理能力包括:路由器的數(shù)據(jù)流通能力參數(shù),所述數(shù)據(jù)流通能力參數(shù)用于描述以下至少一項:路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量。
[0015]結合第一方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述將所述第二路由器和所述第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器包括:
[0016]當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,當前承載的數(shù)據(jù)流量最小的路由器確定為所述最優(yōu)上游路由器;或,
[0017]當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器能夠承載的最大數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,能夠承載的最大數(shù)據(jù)流量最大的路由器確定為所述最優(yōu)上游路由器;或,
[0018]當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量時,按照權重確定所述最優(yōu)上游路由器,所述權重用于表征路由器當前承載的數(shù)據(jù)流量的權重和路由器能夠承載的最大數(shù)據(jù)流量的權重。
[0019]結合第一方面的第一種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述第一路由器獲取第二路由器的組播處理能力和第三路由器的組播處理能力包括:
[0020]根據(jù)第一鏈路的狀態(tài)參數(shù)與第二鏈路的狀態(tài)參數(shù)計算所述第一鏈路和所述第二鏈路的優(yōu)先級,所述第一鏈路為所述第一路由器與所述第二路由器之間的鏈路,所述第二鏈路為所述第一路由器與所述第三路由器之間的鏈路,所述狀態(tài)參數(shù)用于描述鏈路不被允許傳輸數(shù)據(jù)的次數(shù),所述次數(shù)越小的鏈路的優(yōu)先級越高,所述次數(shù)越大的鏈路的優(yōu)先級越低,所述組播處理能力還包括:所述優(yōu)先級。
[0021]結合第一方面的第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述將所述第二路由器和所述第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器包括:
[0022]當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,當前承載的數(shù)據(jù)流量最小的路由器確定為所述最優(yōu)上游路由器;或,
[0023]當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器能夠承載的最大數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,能夠承載的最大數(shù)據(jù)流量最大的路由器確定為所述最優(yōu)上游路由器;或,
[0024]當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量時,按照權重確定所述最優(yōu)上游路由器,所述權重用于表征路由器當前承載的數(shù)據(jù)流量的權重和路由器能夠承載的最大數(shù)據(jù)流量的權重;或,
[0025]將所述第一鏈路與所述第二鏈路中,優(yōu)先級最高的鏈路連接的下一跳路由器確定為所述最優(yōu)上游路由器。
[0026]結合第一方面或第一方面的第一種可能的實現(xiàn)方式至第四種可能的實現(xiàn)方式中任意一種實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,所述第一路由器獲取第二路由器的組播處理能力和第三路由器的組播處理能力包括:
[0027]接收所述第二路由器和所述第三路由器每隔預設時間分別上報的第一抱110報文和第二抱110報文,所述第一抱110報文包括:用于表征所述第二路由器的組播處理能力的?頂!16110 0的1011字段,所述第二抱110報文包括:用于表征所述第三路由器的組播處理能力的?11 ^110 0^1011字段;
[0028]從所述第一抱110報文中獲取所述用于表征所述第二路由器的組播處理能力的?頂116110 0的10??!字段,并從所述第二抱110報文中獲取用于表征所述第三路由器的組播處理能力的?頂抱11。0的1011字段。
[0029]第二方面,提供一種第一路由器,包括:
[0030]獲取單元,用于路由器獲取第二路由器的組播處理能力和第三路由器的組播處理能力,所述第二路由器是所述第一路由器在上行方向上的第一下一跳路由器,所述第三路由器是所述第一路由器在所述上行方向上的第二下一跳路由器,所述上行方向為由所述第一路由器到組播源的方向;
[0031]確定單元,用于將所述第二路由器和所述第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器,所述下行方向為由所述組播源到所述第一路由器的方向。
[0032]在第一種可能的實現(xiàn)方式中,所述獲取單元獲取的所述組播處理能力包括:路由器的數(shù)據(jù)流通能力參數(shù),所述數(shù)據(jù)流通能力參數(shù)用于描述以下至少一項:路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量。
[0033]結合第二方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述確定單元包括:
[0034]第一確定模塊,用于當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,當前承載的數(shù)據(jù)流量最小的路由器確定為所述最優(yōu)上游路由器;或,
[0035]第二確定模塊,用于當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器能夠承載的最大數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,能夠承載的最大數(shù)據(jù)流量最大的路由器確定為所述最優(yōu)上游路由器;或,
[0036]第三確定模塊,用于當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量時,按照權重確定所述最優(yōu)上游路由器,所述權重用于表征路由器當前承載的數(shù)據(jù)流量的權重和路由器能夠承載的最大數(shù)據(jù)流量的權重。
[0037]結合第二方面的第一種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述獲取單元還包括:
[0038]第四確定模塊,用于根據(jù)第一鏈路的狀態(tài)參數(shù)與第二鏈路的狀態(tài)參數(shù)計算所述第一鏈路和所述第二鏈路的優(yōu)先級,所述第一鏈路為所述第一路由器與所述第二路由器之間的鏈路,所述第二鏈路為所述第一路由器與所述第三路由器之間的鏈路,所述狀態(tài)參數(shù)用于描述鏈路不被允許傳輸數(shù)據(jù)的次數(shù),所述次數(shù)越小的鏈路的優(yōu)先級越高,所述次數(shù)越大的鏈路的優(yōu)先級越低,所述組播處理能力還包括:所述優(yōu)先級。
[0039]結合第二方面的第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述確定單元還包括:
[0040]第五確定模塊,用于當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,當前承載的數(shù)據(jù)流量最小的路由器確定為所述最優(yōu)上游路由器;或,
[0041]第六確定模塊,用于當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器能夠承載的最大數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,能夠承載的最大數(shù)據(jù)流量最大的路由器確定為所述最優(yōu)上游路由器;或,
[0042]第七確定模塊,用于當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量時,按照權重確定所述最優(yōu)上游路由器,所述權重用于表征路由器當前承載的數(shù)據(jù)流量的權重和路由器能夠承載的最大數(shù)據(jù)流量的權重;或,
[0043]第八確定模塊,用于將所述第一鏈路與所述第二鏈路中,優(yōu)先級最高的鏈路連接的下一跳路由器確定為所述最優(yōu)上游路由器。
[0044]結合第二方面或第二方面的第一種可能的實現(xiàn)方式至第四種可能的實現(xiàn)方式中任意一種實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,所述獲取單元包括:
[0045]接收模塊,用于接收所述第二路由器和所述第三路由器每隔預設時間分別上報的第一 06110報文和第二!16110報文,所述第一!16110報文包括:用于表征所述第二路由器的組播處理能力的?頂116110 0^1011字段,所述第二抱110報文包括:用于表征所述第三路由器的組播處理能力的?頂116110 0的1011字段;
[0046]獲取模塊,用于從所述第一抱110報文中獲取所述用于表征所述第二路由器的組播處理能力的?頂116110 0的1011字段,并從所述第二抱110報文中獲取用于表征所述第三路由器的組播處理能力的?頂116110 0的1011字段。
[0047]本發(fā)明實施例提供的組播負載場景下選路的方法和第一路由器,采用上述方案后,第一路由器可以從第二路由器和第三路由器中選取組播處理能力最優(yōu)的路由器作為下行方向上的最優(yōu)上游路由器,并根據(jù)最優(yōu)上游路由器確定的上游鏈路,這樣,使得該上游鏈路為組播處理能力最好的鏈路,組播源通過該上游鏈路將組播數(shù)據(jù)傳輸至接收端,可以保證組播數(shù)據(jù)傳輸?shù)目煽啃院屯暾?,進而增加了系統(tǒng)的性能。
【專利附圖】
【附圖說明】
[0048]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0049]圖1為現(xiàn)有技術中組播負載場景下選路所應用的場景的結構示意圖;
[0050]圖2為本實施例提供的一種組播負載場景下選路的方法流程圖;
[0051]圖3為本實施例提供的另一種組播負載場景下選路的方法流程圖;
[0052]圖4為?頂!16110 0^1011報文的結構示意圖;
[0053]圖5為本實施例所應用的“場景1 ”的構示意圖;
[0054]圖6為本實施例所應用的“場景2”的構示意圖;
[0055]圖7為本實施例所應用的“場景3”的構示意圖;
[0056]圖8為本實施例提供的一種路由器的結構示意圖;
[0057]圖9為本實施例提供的另一種路由器的結構示意圖。
【具體實施方式】
[0058]下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0059]為了可以更清晰的理解下面提供的實施例,首先對實施例所應用的場景進行簡單介紹。
[0060]I?組播技術實現(xiàn)了 I?網(wǎng)絡中點到多點的高效數(shù)據(jù)傳送。I?組播協(xié)議可以包括:331模型和八31模型。
[0061]其中,331是一種區(qū)別于傳統(tǒng)組播的新的業(yè)務模型,它使用組播組地址和組播源地址同時來標識一個組播會話,而不是向傳統(tǒng)的組播服務那樣只使用組播組地址來標識一個組播會話。331 保留了傳統(tǒng)?頂-31 (^1-01:0001 111(161)611(16111:86 10(16,稀疏模式獨立組播協(xié)議)模式中的主機顯示加入組播組的高效性,但是跳過了 ?頂-31模式中的共享樹和即(1^611(162^0118 ?01社,集合點)規(guī)程。在傳統(tǒng)?頂-31模式中,共享樹和規(guī)程使用(匕6)組對來表示一個組播會話,其中,“ V’可以表示一個特定的I?組播組,可以表示發(fā)向組播組6的任何一個源。331直接建立由(3, (0標識的一個組播七?3訪11*66,最短路徑樹),其中,“6”表示一個特定的I?組播組地址,“3”可以表示發(fā)向組播組6的特定源的I?地址。
[0062]331的一個(3,(0對也被稱為一個頻道,以區(qū)分八31。由于431支持點到多點和多點到多點兩種組播業(yè)務模式,因此八31中發(fā)現(xiàn)組播源的過程較復雜。例如,在?頂-31模式中,用戶點擊瀏覽器中的組播內容,接收端設備只被通知到組播組的內容,而沒有被通知到組播源的信息。而在331模式中,用戶端將同時接收到組播源和組播組信息。
[0063]因此,331較適合于點到多點的組播服務,例如,可以為網(wǎng)絡娛樂頻道、網(wǎng)絡新聞頻道、網(wǎng)絡體育頻道等業(yè)務,但如果要求多點到多點組播服務則需要八31模式。
[0064]在331模型中,可以直接在組播源和接收者之間建立3?1,而不是像八31那樣先建立I??!1 (0611(162^0118 ^01111:-1-001:6(1 1^66,共享樹)而后再根據(jù)需要轉換為3?!',省去了? 11-81中先建立再從向3?1切換的過程,從而能夠從一開始就沿3?1轉發(fā)數(shù)據(jù)。因此與其它組播技術相比,在已知組播源的情況下,331技術有著其自己的優(yōu)勢:不但效率高,而且簡化了組播地址分配,881需要和161?。協(xié)議結合使用。
[0065]組播源需通過相應的鏈路向接收端進行組播傳輸,在進行組播傳輸之前,首先需要建立組播轉發(fā)樹,即建立組播源與接收端之間的鏈路。具體的,各路由器選取子上游鏈路(即當前路由器選取到達下一跳路由器的鏈路),將各子上游鏈路進行整合后,得到組播源與接收端之間的上游鏈路。
[0066]現(xiàn)有技術中,如圖1所示,采用單播路由的方式獲取主機町到組播源3的鏈路,若當前路由選取的上游鏈路與多個路由相連接,該上游鏈路分擔與之連接的多個路由的組播數(shù)據(jù),導致組播數(shù)據(jù)擁塞或丟失,降低了系統(tǒng)的性能。
[0067]為了解決上述問題,本實施例提供一種組播負載場景下選路的方法,該方法的執(zhí)行主體可以為當前路由器,如圖2所示,可以包括:
[0068]201、第一路由器獲取第二路由器的組播處理能力和第三路由器的組播處理能力。
[0069]其中,第二路由器可以是第一路由器在上行方向上的第一下一跳路由器,第三路由器可以是第一路由器在上行方向上的第二下一跳路由器,上行方向為由第一路由器到組播源的方向。
[0070]作為本實施例的一種實施方式,為了保證通過上游鏈路可以準確可靠的對數(shù)據(jù)進行傳輸,首先需要確定用于數(shù)據(jù)傳輸?shù)纳嫌捂溌分邢滦蟹较蛏系淖顑?yōu)上游路由器,在以第一路由器為執(zhí)行主體的情況下,第一路由器可以首先獲取第二路由器的組播處理能力和第三路由器的組播處理能力,然后根據(jù)組播處理能力確定最優(yōu)上游路由器。
[0071]202、將第二路由器和第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器。
[0072]其中,下行方向可以為由組播源到第一路由器的方向。
[0073]采用上述方案后,第一路由器可以從第二路由器和第三路由器中選取組播處理能力最優(yōu)的路由器作為下行方向上的最優(yōu)上游路由器,并根據(jù)最優(yōu)上游路由器確定的上游鏈路,這樣,使得該上游鏈路為組播處理能力最好的鏈路,組播源通過該上游鏈路將組播數(shù)據(jù)傳輸至接收端,即可以保證組播數(shù)據(jù)傳輸?shù)目煽啃院屯暾?,進而增加了系統(tǒng)的性能。
[0074]本實施例提供另一種組播負載場景下選路的方法,該方法是對圖2所示的方法的進一步擴展,如圖3所示,可以包括:
[0075]301、第一路由器接收第二路由器和第三路由器每隔預設時間分別上報的第一116110報文和第二抱110報文。
[0076]其中,第一抱110報文可以包括:用于表征第二路由器的組播處理能力的?頂116110 0的1011字段,第二抱110報文可以包括:用于表征第三路由器的組播處理能力的?頂06110 0^)1:1011 字段。
[0077]作為本實施例的一種實施方式,組播處理能力可以是一種綜合能力,即可以是根據(jù)當前板卡的狀態(tài)(如,⑶!! (06111:1-81 ?1~006881118 11=11:,中央處理器)狀態(tài)、內存狀態(tài)、上行和下行狀態(tài)等?、接口類型、鏈路類型、標清和高清的節(jié)目個數(shù)等綜合考慮下得出的值。其中,標清和高清可以通過協(xié)議來標識,該表示方法為已公開的方案,為本領域技術人員公知的技術,在此步驟贅述。
[0078]進一步的,如圖4所示,為?頂06110 0^1011字段的結構示意圖。其中,丁可以為報文類型,匕叩訪可以為報文長度,可以為組播處理能力,0^1:101117?665533:?10^可以為:選項類型65533:流通容量。
[0079]本實施例對?頂06110 0的1011報文的格式以及包含的內容不作限定,可以根據(jù)實際需要進行設定,在此不再贅述。
[0080]進一步的,組播處理能力可以但不限于包括:路由器的數(shù)據(jù)流通能力參數(shù)等。
[0081]數(shù)據(jù)流通能力參數(shù)可以用于描述以下至少一項:路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量。值得說明的是,這里提供的當前承載的數(shù)據(jù)流量與能夠承載的最大數(shù)據(jù)流量均包括下游數(shù)據(jù)流量,即組播流量。
[0082]302、第一路由器從第一抱110報文中獲取用于表征第二路由器的組播處理能力的?頂116110 0的10??!字段,并從第二抱110報文中獲取用于表征第三路由器的組播處理能力的?II 06110 0的1011字段。
[0083]為了使第一路由器確定的子上游鏈路不僅可以可靠的傳輸上游數(shù)據(jù),而且還可以可靠的傳輸下游數(shù)據(jù),則第一路由器可以根據(jù)組播處理能力確定子上游鏈路(即確定第一路由器下行方向上的最優(yōu)上游路由器),即系統(tǒng)可以根據(jù)組播處理能力確定上游鏈路,在這之前,第一路由器需要從第一抱110報文中獲取用于表征第二路由器的組播處理能力的?頂!16110 0的1011字段,并從第二抱110報文中獲取用于表征第三路由器的組播處理能力的?11 06110 0^)1:1011 字段。
[0084]303、第一路由器根據(jù)第一鏈路的狀態(tài)參數(shù)與第二鏈路的狀態(tài)參數(shù)計算第一鏈路和第二鏈路的優(yōu)先級。
[0085]其中,第一鏈路可以為第一路由器與第二路由器之間的鏈路,第二鏈路可以為第一路由器與第三路由器之間的鏈路,狀態(tài)參數(shù)可以用于描述鏈路不被允許傳輸數(shù)據(jù)的次數(shù),次數(shù)越小的鏈路的優(yōu)先級越高,次數(shù)越大的鏈路的優(yōu)先級越低,組播處理能力還可以包括:優(yōu)先級。
[0086]作為本實施例的一種實施方式,狀態(tài)參數(shù)可以用數(shù)字進行表示,例如,可以將狀態(tài)參數(shù)設置為10,第一路由器與每個下一跳路由器之間的鏈路均對應一個狀態(tài)參數(shù),當鏈路出現(xiàn)一次故障時,相應的狀態(tài)參數(shù)便減1,即為9,此時,狀態(tài)參數(shù)的數(shù)值越小的鏈路其優(yōu)先級越低,反之,狀態(tài)參數(shù)的數(shù)值越大的鏈路其優(yōu)先級越高;當狀態(tài)參數(shù)為預設上限值或預設下限值時,則將狀態(tài)參數(shù)設置為初始化的數(shù)值。
[0087]作為本實施例的一種實施方式,當?shù)谝宦酚善髟谶x取子上游鏈路時,可以考慮傳輸上游數(shù)據(jù)和下游數(shù)據(jù)的可靠性,還可以考慮鏈路不被允許傳輸數(shù)據(jù)的概率,例如,出現(xiàn)故障的概率等。若某鏈路出現(xiàn)故障的概率較高,則降低了數(shù)據(jù)傳輸?shù)目煽啃院屯暾?,例如,?shù)據(jù)丟失等。因此,為了增加上游鏈路的性能,在確定上游鏈路時還需要考慮鏈路不被允許傳輸數(shù)據(jù)的概率。
[0088]本實施例對計算鏈路的優(yōu)先級的方法不作限定,可以根據(jù)實際需要進行設定,在此步驟贅述。
[0089]304、第一路由器將第二路由器和第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器。
[0090]其中,下行方向為由組播源到第一路由器的方向。
[0091]進一步的,第一路由器將第二路由器和第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器可以但不限于包括:
[0092]當數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量時,將第二路由器與第三路由器中,當前承載的數(shù)據(jù)流量最小的路由器確定為最優(yōu)上游路由器;或,
[0093]當數(shù)據(jù)流通能力參數(shù)用于描述路由器能夠承載的最大數(shù)據(jù)流量時,將第二路由器與第三路由器中,能夠承載的最大數(shù)據(jù)流量最大的路由器確定為最優(yōu)上游路由器;或,
[0094]當數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量時,按照權重確定最優(yōu)上游路由器,權重用于表征路由器當前承載的數(shù)據(jù)流量的權重和路由器能夠承載的最大數(shù)據(jù)流量的權重;或,
[0095]將第一鏈路與第二鏈路中,優(yōu)先級最高的鏈路連接的下一跳路由器確定為最優(yōu)上游路由器。
[0096]值得說明的是,本實施例還可以不執(zhí)行步驟303,即在確定上游鏈路時不考慮鏈路不被允許傳輸數(shù)據(jù)的概率。
[0097]則此時,當數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量時,將第二路由器與第三路由器中,當前承載的數(shù)據(jù)流量最小的路由器確定為最優(yōu)上游路由器;或,
[0098]當數(shù)據(jù)流通能力參數(shù)用于描述路由器能夠承載的最大數(shù)據(jù)流量時,將第二路由器與第三路由器中,能夠承載的最大數(shù)據(jù)流量最大的路由器確定為最優(yōu)上游路由器;或,
[0099]當數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量時,按照權重確定最優(yōu)上游路由器,權重用于表征路由器當前承載的數(shù)據(jù)流量的權重和路由器能夠承載的最大數(shù)據(jù)流量的權重。
[0100]進一步的,在第一路由器確定好最優(yōu)上游路由器后,確定上游鏈路,其中,確定的上游鏈路可以包括:至少一個相應的第一路由器確定的子上游鏈路。
[0101]本實施例對本步驟中根據(jù)子上游鏈路確定上游鏈路的方法不作限定,為本領域技術人員熟知的技術,且可以根據(jù)實際需要進行描述,在此不再贅述。
[0102]305、在上游鏈路確定之后,系統(tǒng)按照通過該上游鏈路傳輸上游數(shù)據(jù)的反方向傳輸下游數(shù)據(jù),即組播數(shù)據(jù)。
[0103]作為本實施例的一種實施方式,系統(tǒng)中可以存在多個通過上述方法確定的上游鏈路,為了使數(shù)據(jù)更準確的傳輸,在通過相應的上游鏈路傳輸數(shù)據(jù)的同時,可以實施根據(jù)實際情況更換進行數(shù)據(jù)傳輸?shù)纳嫌捂溌?。具體內容在步驟306至309中進行可描述。
[0104]306、系統(tǒng)在第一狀態(tài)下,判斷第一上游鏈路是否不被允許傳輸數(shù)據(jù)。
[0105]進一步的,系統(tǒng)可以但不限于包括:第一狀態(tài),在第一狀態(tài)下,通過當前的第一上游鏈路進行數(shù)據(jù)傳輸。
[0106]作為本實施例的一種實施方式,若被允許傳輸數(shù)據(jù),則執(zhí)行步驟305,若不被允許傳輸數(shù)據(jù),則執(zhí)行步驟307。
[0107]307、若不被允許傳輸數(shù)據(jù),則從第一狀態(tài)切換至第二狀態(tài)。
[0108]進一步的,系統(tǒng)還可以但不限于包括:第二狀態(tài),在第二狀態(tài)下,通過除第一上游鏈路外的其他被允許傳輸數(shù)據(jù)的第二上游鏈路進行數(shù)據(jù)傳輸。
[0109]308、在第二狀態(tài)下,判斷第一上游鏈路是否被允許傳輸數(shù)據(jù)。
[0110]作為本實施例的一種實施方式,若第一上游鏈路被允許傳輸數(shù)據(jù),則執(zhí)行步驟309,若第一上游鏈路不被允許傳輸數(shù)據(jù),則執(zhí)行步驟308。
[0111]309、若被允許傳輸數(shù)據(jù),則等待預設時間后,從第二狀態(tài)切換至第一狀態(tài)。
[0112]這樣,可以避免當鏈路頻繁發(fā)送故障時,用于傳輸組播數(shù)據(jù)的鏈路頻繁進行切換,導致降低了數(shù)據(jù)傳輸?shù)目煽啃院屯暾缘膯栴}。
[0113]本實施例對預設時間不作限定,可以根據(jù)實際需要進行設定,在此不再贅述。
[0114]為了可以更清晰的對本實施例進行理解,下面提供一些具體場景進行簡單說明,其中,主要對在確定上游鏈路后進行組播數(shù)據(jù)傳輸進行簡單描述。
[0115]場景1,如圖5所示,路由器部到組播源之間可以包括兩條的等價鏈路“成』、 組播源向31?傳輸?shù)慕M播流量分別可以經(jīng)過鏈路“成』、11111^8。
[0116]若鏈路11成」\發(fā)生故障,則部降低鏈路11成」\的狀態(tài)參數(shù)的數(shù)值,即降低了1111^的優(yōu)先級;則此時,由于鏈路11成3的優(yōu)先級高于鏈路11成」\的優(yōu)先級,因此可以選取鏈路“成—8作為第一路由器部的子上游鏈路,換言之,81?到組播源之間的鏈路可以選擇鏈路111118。
[0117]若鏈路出現(xiàn)故障不能進行組播數(shù)據(jù)傳輸,則切換至鏈路進行組播數(shù)據(jù)傳輸。若組播源的組播流量都經(jīng)過鏈路八,當鏈路“1^—8故障恢復的時候,3尺到組播源不會立刻切換到鏈路11成3,而是等待預設時間,如果在這段預設時間內鏈路11110沒有再次發(fā)生過故障才會切換到鏈路“1^-8。相反,這段時間內鏈路11111^8又發(fā)生了故障,則組播源仍然通過鏈路11成—八向路由器部進行組播數(shù)據(jù)傳輸。
[0118]這樣避免了鏈路頻繁故障時,組播流量不停切換鏈路而導致組播數(shù)據(jù)傳輸可靠性和完整性較低的問題。
[0119]場景2,如圖6所示,路由器部到組播源之間的上游方向的下一跳接口是以/0/1,上游方向的下一跳路由器是路由器奶―八。
[0120]在組播源不進行組播數(shù)據(jù)傳輸時,路由器與81^8的組播處理能力相同。若尺丁」\上有組播流量,且維護一個組播表項,沒有組播流量,且沒有維護組播表項時,則此時的組播處理能力優(yōu)于的組播處理能力,路由器31?選取與中間的鏈路作為子上游鏈路。
[0121]或者,如圖7所示,若路由器部上到組播源的路由的上游的下一跳有兩接口61/0/1, 61/0/2,上游的下一跳路由器分別是路由器奶」\、81^8。但是由于路由器81^8組播處理能力更優(yōu),且兩接口以/0/1、61/0/2分別只有一個上游的下一跳路由器,因此接口61/0/2所在鏈路的組播處理能力比接口以/0/1更優(yōu),路由器部選取與接口以/0/2對應的中鏈路作為子上游鏈路。換言之,路由器部選擇接口以/0/2作為到組播源的上游接口,選擇路由器奶^8為上游的下一跳路由器。
[0122]這樣,在多條鏈路的場景使組播流量分擔更均。
[0123]場景3,如圖7所示,路由器部上到組播源的上游的下一跳是接口以/0/1,上游的下一跳路由器是路由器奶』、8乙8。
[0124]在組播源不進行組播數(shù)據(jù)傳輸時,路由器上有組播流量,且維護一個組播表項,路由器奶^8沒有組播流量,且沒有維護組播表項,則路由器奶^8的組播處理能力比第一路由器的組播處理能力更優(yōu),此時,所以路由器31?選擇接口以/0/1作為到組播源的尺??上游接口,選擇路由器奶^8為上游的下一跳路由器鄰居。
[0125]這樣,在多個鄰居的場景使組播流量分擔更均。
[0126]采用上述方案后,第一路由器可以從第二路由器和第三路由器中選取組播處理能力最優(yōu)的路由器作為下行方向上的最優(yōu)上游路由器,并根據(jù)最優(yōu)上游路由器確定的上游鏈路;另外,在確定上游鏈路時還考慮了鏈路不被允許傳輸數(shù)據(jù)的概率,這樣,組播源不僅可以通過上游鏈路將組播數(shù)據(jù)傳輸至接收端,而且該鏈路也是組播處理能力最好的鏈路,同時避免了由于鏈路頻繁發(fā)生故障(即不被允許傳輸數(shù)據(jù))導致頻繁切換鏈路的問題,即可以保證組播數(shù)據(jù)傳輸?shù)目煽啃院屯暾?,進而增加了系統(tǒng)的性能。
[0127]下面提供一些裝置實施例,該裝置實施例分別與上述提供的相應的方法實施例對應。
[0128]本實施例提供一種第一路由器,如圖8所示,可以包括:
[0129]獲取單元81,用于路由器獲取第二路由器的組播處理能力和第三路由器的組播處理能力,第二路由器是第一路由器在上行方向上的第一下一跳路由器,第三路由器是第一路由器在上行方向上的第二下一跳路由器,上行方向為由第一路由器到組播源的方向;
[0130]確定單元82,用于將第二路由器和第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器,下行方向為由組播源到第一路由器的方向。
[0131]采用上述方案后,第一路由器可以從第二路由器和第三路由器中選取組播處理能力最優(yōu)的路由器作為下行方向上的最優(yōu)上游路由器,并根據(jù)最優(yōu)上游路由器確定的上游鏈路,這樣,使得該上游鏈路為組播處理能力最好的鏈路,組播源通過該上游鏈路將組播數(shù)據(jù)傳輸至接收端,即可以保證組播數(shù)據(jù)傳輸?shù)目煽啃院屯暾?,進而增加了系統(tǒng)的性能。
[0132]本實施例提供另一種路由器,該路由器是對圖8所示的路由器的進一步擴展,如圖9所示,可以包括:
[0133]獲取單元91,用于路由器獲取第二路由器的組播處理能力和第三路由器的組播處理能力,第二路由器是第一路由器在上行方向上的第一下一跳路由器,第三路由器是第一路由器在上行方向上的第二下一跳路由器,上行方向為由第一路由器到組播源的方向;
[0134]確定單元92,用于將第二路由器和第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器,下行方向為由組播源到第一路由器的方向。
[0135]進一步的,獲取單元91獲取的組播處理能力包括:路由器的數(shù)據(jù)流通能力參數(shù),數(shù)據(jù)流通能力參數(shù)用于描述以下至少一項:路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量。
[0136]進一步的,確定單元92包括:
[0137]第一確定模塊921,用于當數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量時,將第二路由器與第三路由器中,當前承載的數(shù)據(jù)流量最小的路由器確定為最優(yōu)上游路由器;或,
[0138]第二確定模塊922,用于當數(shù)據(jù)流通能力參數(shù)用于描述路由器能夠承載的最大數(shù)據(jù)流量時,將第二路由器與第三路由器中,能夠承載的最大數(shù)據(jù)流量最大的路由器確定為最優(yōu)上游路由器;或,
[0139]第三確定模塊923,用于當數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量時,按照權重確定最優(yōu)上游路由器,權重用于表征路由器當前承載的數(shù)據(jù)流量的權重和路由器能夠承載的最大數(shù)據(jù)流量的權重。
[0140]進一步的,獲取單元91還包括:
[0141]第四確定模塊911,用于根據(jù)第一鏈路的狀態(tài)參數(shù)與第二鏈路的狀態(tài)參數(shù)計算第一鏈路和第二鏈路的優(yōu)先級,第一鏈路為第一路由器與第二路由器之間的鏈路,第二鏈路為第一路由器與第三路由器之間的鏈路,狀態(tài)參數(shù)用于描述鏈路不被允許傳輸數(shù)據(jù)的次數(shù),次數(shù)越小的鏈路的優(yōu)先級越高,次數(shù)越大的鏈路的優(yōu)先級越低,組播處理能力還包括:優(yōu)先級。
[0142]進一步的,確定單元92還包括:
[0143]第五確定模塊924,用于當數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量時,將第二路由器與第三路由器中,當前承載的數(shù)據(jù)流量最小的路由器確定為最優(yōu)上游路由器;或,
[0144]第六確定模塊925,用于當數(shù)據(jù)流通能力參數(shù)用于描述路由器能夠承載的最大數(shù)據(jù)流量時,將第二路由器與第三路由器中,能夠承載的最大數(shù)據(jù)流量最大的路由器確定為最優(yōu)上游路由器;或,
[0145]第七確定模塊926,用于當數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量時,按照權重確定最優(yōu)上游路由器,權重用于表征路由器當前承載的數(shù)據(jù)流量的權重和路由器能夠承載的最大數(shù)據(jù)流量的權重;或,
[0146]第八確定模塊927,用于將第一鏈路與第二鏈路中,優(yōu)先級最高的鏈路連接的下一跳路由器確定為最優(yōu)上游路由器。
[0147]進一步的,獲取單元91包括:
[0148]接收模塊912,用于接收第二路由器和第三路由器每隔預設時間分別上報的第一06110報文和第二 06110報文,第一 06110報文包括:用于表征第二路由器的組播處理能力的?頂116110 0的1011字段,第二抱110報文包括:用于表征第三路由器的組播處理能力的?11 耐10 0^1011 字段;
[0149]獲取模塊913,用于從第一 06110報文中獲取用于表征第二路由器的組播處理能力的?頂!16110 0的1011字段,并從第二抱110報文中獲取用于表征第三路由器的組播處理能力的?頂^6110 0^)1:1011字段。
[0150]采用上述方案后,第一路由器可以從第二路由器和第三路由器中選取組播處理能力最優(yōu)的路由器作為下行方向上的最優(yōu)上游路由器,并根據(jù)最優(yōu)上游路由器確定的上游鏈路;另外,在確定上游鏈路時還考慮了鏈路不被允許傳輸數(shù)據(jù)的概率,這樣,組播源不僅可以通過上游鏈路將組播數(shù)據(jù)傳輸至接收端,而且該鏈路也是組播處理能力最好的鏈路,同時避免了由于鏈路頻繁發(fā)生故障(即不被允許傳輸數(shù)據(jù))導致頻繁切換鏈路的問題,即可以保證組播數(shù)據(jù)傳輸?shù)目煽啃院屯暾?,進而增加了系統(tǒng)的性能。
[0151]通過以上的實施方式的描述,所屬領域的技術人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件的方式來實現(xiàn),當然也可以通過硬件,但很多情況下前者是更佳的實施方式?;谶@樣的理解,本發(fā)明的技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分可以以軟件產品的形式體現(xiàn)出來,該計算機軟件產品存儲在可讀取的存儲介質中,如計算機的軟盤,硬盤或光盤等,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例所述的方法。
[0152]以上所述,僅為本發(fā)明的【具體實施方式】,但本發(fā)明的保護范圍并不局限于此,任何熟悉本【技術領域】的技術人員在本發(fā)明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發(fā)明的保護范圍之內。因此,本發(fā)明的保護范圍應所述以權利要求的保護范圍為準。
【權利要求】
1.一種組播負載場景下選路的方法,其特征在于,包括: 第一路由器獲取第二路由器的組播處理能力和第三路由器的組播處理能力,所述第二路由器是所述第一路由器在上行方向上的第一下一跳路由器,所述第三路由器是所述第一路由器在所述上行方向上的第二下一跳路由器,所述上行方向為由所述第一路由器到組播源的方向; 將所述第二路由器和所述第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器,所述下行方向為由所述組播源到所述第一路由器的方向。
2.根據(jù)權利要求1所述的組播負載場景下選路的方法,其特征在于,所述組播處理能力包括:路由器的數(shù)據(jù)流通能力參數(shù),所述數(shù)據(jù)流通能力參數(shù)用于描述以下至少一項:路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量。
3.根據(jù)權利要求2所述的組播負載場景下選路的方法,其特征在于,所述將所述第二路由器和所述第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器包括: 當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,當前承載的數(shù)據(jù)流量最小的路由器確定為所述最優(yōu)上游路由器;或, 當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器能夠承載的最大數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,能夠承載的最大數(shù)據(jù)流量最大的路由器確定為所述最優(yōu)上游路由器;或, 當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量時,按照權重確定所述最優(yōu)上游路由器,所述權重用于表征路由器當前承載的數(shù)據(jù)流量的權重和路由器能夠承載的最大數(shù)據(jù)流量的權重。
4.根據(jù)權利要求2所述的組播負載場景下選路的方法,其特征在于,所述第一路由器獲取第二路由器的組播處理能力和第三路由器的組播處理能力包括: 根據(jù)第一鏈路的狀態(tài)參數(shù)與第二鏈路的狀態(tài)參數(shù)計算所述第一鏈路和所述第二鏈路的優(yōu)先級,所述第一鏈路為所述第一路由器與所述第二路由器之間的鏈路,所述第二鏈路為所述第一路由器與所述第三路由器之間的鏈路,所述狀態(tài)參數(shù)用于描述鏈路不被允許傳輸數(shù)據(jù)的次數(shù),所述次數(shù)越小的鏈路的優(yōu)先級越高,所述次數(shù)越大的鏈路的優(yōu)先級越低,所述組播處理能力還包括:所述優(yōu)先級。
5.根據(jù)權利要求4所述的組播負載場景下選路的方法,其特征在于,所述將所述第二路由器和所述第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器包括: 當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,當前承載的數(shù)據(jù)流量最小的路由器確定為所述最優(yōu)上游路由器;或, 當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器能夠承載的最大數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,能夠承載的最大數(shù)據(jù)流量最大的路由器確定為所述最優(yōu)上游路由器;或, 當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量時,按照權重確定所述最優(yōu)上游路由器,所述權重用于表征路由器當前承載的數(shù)據(jù)流量的權重和路由器能夠承載的最大數(shù)據(jù)流量的權重;或, 將所述第一鏈路與所述第二鏈路中,優(yōu)先級最高的鏈路連接的下一跳路由器確定為所述最優(yōu)上游路由器。
6.根據(jù)權利要求1至5中任一項所述的組播負載場景下選路的方法,其特征在于,所述第一路由器獲取第二路由器的組播處理能力和第三路由器的組播處理能力包括: 接收所述第二路由器和所述第三路由器每隔預設時間分別上報的第一 Hello報文和第二 Hello報文,所述第一 Hello報文包括:用于表征所述第二路由器的組播處理能力的PIM Hello Opt1n字段,所述第二 Hello報文包括:用于表征所述第三路由器的組播處理能力的PIM Hello Opt1n字段; 從所述第一 Hello報文中獲取所述用于表征所述第二路由器的組播處理能力的PMHello Opt1n字段,并從所述第二 Hello報文中獲取用于表征所述第三路由器的組播處理能力的PIM Hello Opt1n字段。
7.一種第一路由器,其特征在于,包括: 獲取單元,用于路由器獲取第二路由器的組播處理能力和第三路由器的組播處理能力,所述第二路由器是所述第一路由器在上行方向上的第一下一跳路由器,所述第三路由器是所述第一路由器在所述上行方向上的第二下一跳路由器,所述上行方向為由所述第一路由器到組播源的方向; 確定單元,用于將所述第二路由器和所述第三路由器中的組播處理能力最優(yōu)的路由器確定為下行方向上的最優(yōu)上游路由器,所述下行方向為由所述組播源到所述第一路由器的方向。
8.根據(jù)權利要求7所述的第一路由器,其特征在于,所述獲取單元獲取的所述組播處理能力包括:路由器的數(shù)據(jù)流通能力參數(shù),所述數(shù)據(jù)流通能力參數(shù)用于描述以下至少一項:路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量。
9.根據(jù)權利要求8所述的第一路由器,其特征在于,所述確定單元包括: 第一確定模塊,用于當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,當前承載的數(shù)據(jù)流量最小的路由器確定為所述最優(yōu)上游路由器;或, 第二確定模塊,用于當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器能夠承載的最大數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,能夠承載的最大數(shù)據(jù)流量最大的路由器確定為所述最優(yōu)上游路由器;或, 第三確定模塊,用于當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量時,按照權重確定所述最優(yōu)上游路由器,所述權重用于表征路由器當前承載的數(shù)據(jù)流量的權重和路由器能夠承載的最大數(shù)據(jù)流量的權重。
10.根據(jù)權利要求8所述的第一路由器,其特征在于,所述獲取單元還包括: 第四確定模塊,用于根據(jù)第一鏈路的狀態(tài)參數(shù)與第二鏈路的狀態(tài)參數(shù)計算所述第一鏈路和所述第二鏈路的優(yōu)先級,所述第一鏈路為所述第一路由器與所述第二路由器之間的鏈路,所述第二鏈路為所述第一路由器與所述第三路由器之間的鏈路,所述狀態(tài)參數(shù)用于描述鏈路不被允許傳輸數(shù)據(jù)的次數(shù),所述次數(shù)越小的鏈路的優(yōu)先級越高,所述次數(shù)越大的鏈路的優(yōu)先級越低,所述組播處理能力還包括:所述優(yōu)先級。
11.根據(jù)權利要求10所述的第一路由器,其特征在于,所述確定單元還包括: 第五確定模塊,用于當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,當前承載的數(shù)據(jù)流量最小的路由器確定為所述最優(yōu)上游路由器;或, 第六確定模塊,用于當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器能夠承載的最大數(shù)據(jù)流量時,將所述第二路由器與所述第三路由器中,能夠承載的最大數(shù)據(jù)流量最大的路由器確定為所述最優(yōu)上游路由器;或, 第七確定模塊,用于當所述數(shù)據(jù)流通能力參數(shù)用于描述路由器當前承載的數(shù)據(jù)流量和路由器能夠承載的最大數(shù)據(jù)流量時,按照權重確定所述最優(yōu)上游路由器,所述權重用于表征路由器當前承載的數(shù)據(jù)流量的權重和路由器能夠承載的最大數(shù)據(jù)流量的權重;或, 第八確定模塊,用于將所述第一鏈路與所述第二鏈路中,優(yōu)先級最高的鏈路連接的下一跳路由器確定為所述最優(yōu)上游路由器。
12.根據(jù)權利要求7至11中任一項所述的第一路由器,其特征在于,所述獲取單元包括: 接收模塊,用于接收所述第二路由器和所述第三路由器每隔預設時間分別上報的第一Hello報文和第二 Hello報文,所述第一 Hello報文包括:用于表征所述第二路由器的組播處理能力的P頂Hello Opt1n字段,所述第二 Hello報文包括:用于表征所述第三路由器的組播處理能力的PM Hello Opt1n字段; 獲取模塊,用于從所述第一 Hello報文中獲取所述用于表征所述第二路由器的組播處理能力的P頂Hello Opt1n字段,并從所述第二 Hello報文中獲取用于表征所述第三路由器的組播處理能力的PM Hello Opt1n字段。
【文檔編號】H04L12/771GK104348736SQ201310328376
【公開日】2015年2月11日 申請日期:2013年7月31日 優(yōu)先權日:2013年7月31日
【發(fā)明者】李向東 申請人:北京華為數(shù)字技術有限公司