一種確定中間路由節(jié)點的方法、裝置及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,具體涉及一種確定中間路由節(jié)點的方法、裝置及系統(tǒng)。
【背景技術(shù)】
[0002]在路由網(wǎng)絡中,網(wǎng)絡中的故障可以導致源路由節(jié)點與目的路由節(jié)點間的通信路徑被阻斷,從而導致數(shù)據(jù)傳輸?shù)慕K止。在這種情況下現(xiàn)有技術(shù)中通常采用容錯路由技術(shù),通過繞過故障點的方式來容忍網(wǎng)絡故障并向用戶提供可靠的通信服務。
[0003]當路由網(wǎng)絡中的源節(jié)點S和目的節(jié)點D的傳輸路徑上出現(xiàn)故障后,管理節(jié)點為受到影響的節(jié)點對(S,D)找到一個中間路由節(jié)點I。該中間路由節(jié)點I需要滿足兩個條件:l)s到I之間的路徑上沒有故障,2) I到D的路徑上沒有故障。當找到I之后,原本由S發(fā)往D的消息,則首先由S發(fā)往I (路由階段I),然后再由I轉(zhuǎn)發(fā)給D (路由階段2)。
[0004]在現(xiàn)有路由網(wǎng)絡中,為了保證路由無死鎖,當加入中間路由節(jié)點I之后,從S到D路由一個消息會經(jīng)歷兩個階段。即:由S到I和由I到D。為了保證經(jīng)過中間節(jié)點I后,路由無死鎖,現(xiàn)有技術(shù)中在消息經(jīng)過中間路由節(jié)點I時更換一條虛擬通道,并且要求虛擬通道的編號是單調(diào)的。例如,在路由階段I使用第一條虛擬通道,在路由階段2使用第二條虛擬通道。
[0005]現(xiàn)有技術(shù)中使用虛擬通道的方法來避免路由無死鎖,對資源的要求較高。例如需要使用η個中間路由節(jié)點,則需要使用η+1條虛擬通道。這些虛擬通道在無故障情況下都是不使用的,因此資源浪費嚴重,網(wǎng)絡資源利用率低下。另外,大多數(shù)情況下少量的中間路由節(jié)點即能繞過故障區(qū),但是系統(tǒng)必須按照最壞情況預留資源。這就造成資源利用率嚴重失衡,導致系統(tǒng)性能不優(yōu)。
【發(fā)明內(nèi)容】
[0006]本發(fā)明實施例提供一種確定中間路由節(jié)點的方法,在確定中間路由節(jié)點前驗證所述中間路由節(jié)點在通道依賴圖上是否成依賴關(guān)系環(huán),可以確定一個不會在通道依賴圖上出現(xiàn)依賴關(guān)系環(huán)的中間路由節(jié)點,通過一個中間路由節(jié)點就可以實現(xiàn)兩個路由節(jié)點通信故障時的待傳輸數(shù)據(jù)中轉(zhuǎn),不需要多條虛擬通道處于閑置準備狀態(tài),從而提高了路由網(wǎng)絡資源的利用率。本發(fā)明實施例還提供了相應的裝置及系統(tǒng)。
[0007]本發(fā)明第一方面提供一種確定中間路由節(jié)點的方法,包括:
[0008]在兩個路由節(jié)點間的通信路徑存在故障時,確定用于在所述兩個路由節(jié)點間中轉(zhuǎn)待傳輸數(shù)據(jù)的至少一個中間路由節(jié)點;
[0009]將待驗證中間路由節(jié)點與所述兩個路由節(jié)點間的通道依賴關(guān)系,加入到本次故障前路由網(wǎng)絡的通道依賴圖使之成為更新后的通道依賴圖,其中,所述待驗證中間路由節(jié)點為所述至少一個中間路由節(jié)點中的任意一個,所述通道依賴關(guān)系為所述兩個路由節(jié)點通過所述待驗證中間路由節(jié)點進行數(shù)據(jù)傳輸?shù)耐ǖ澜M合,所述本次故障前路由網(wǎng)絡的通道依賴圖用于描述本次故障前所述路由網(wǎng)絡中任意兩個通道所構(gòu)成的依賴關(guān)系,或者與故障前已建立的通道依賴關(guān)系的組合;
[0010]當所述更新后的通道依賴圖中沒有依賴關(guān)系環(huán)時,則將所述待驗證中間路由節(jié)點確定為用于中轉(zhuǎn)待傳輸數(shù)據(jù)的最終中間路由節(jié)點,所述依賴關(guān)系環(huán)為通道依賴關(guān)系組合所形成的環(huán)。
[0011]結(jié)合第一方面,在第一種可能的實現(xiàn)方式中,所述將待驗證中間路由節(jié)點與所述兩個路由節(jié)點間的通道依賴關(guān)系,加入到本次故障前路由網(wǎng)絡的通道依賴圖使之成為更新后的通道依賴圖,包括:
[0012]按照所述待傳輸數(shù)據(jù)的傳輸方向,在所述本次故障前路由網(wǎng)絡的通道依賴圖中查找到所述兩個路由節(jié)點中的源路由節(jié)點與所述待驗證中間路由節(jié)點的路徑中的最后一條通道,以及所述待驗證中間路由節(jié)點與所述兩個路由節(jié)點中的目的路由節(jié)點的路徑中的第一條通道;
[0013]將所述源路由節(jié)點與所述待驗證中間路由節(jié)點的路徑中的最后一條通道確定為依賴起始通道,將所述待驗證中間路由節(jié)點與所述目的路由節(jié)點的路徑中的第一條通道確定為依賴結(jié)束通道;
[0014]在所述本次故障前路由網(wǎng)絡的通道依賴圖中加入所述依賴起始通道到所述依賴結(jié)束通道的通信依賴關(guān)系,使所述本次故障前路由網(wǎng)絡的通道依賴圖成為更新后的通道依賴圖。
[0015]結(jié)合第一方面或第一方面第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述確定用于在所述兩個路由節(jié)點間中轉(zhuǎn)待傳輸數(shù)據(jù)的至少一個中間路由節(jié)點,包括:
[0016]獲取與所述兩個路由節(jié)點中源路由節(jié)點無故障通信連接的路由節(jié)點的信息,作為第一信息集合;
[0017]獲取與所述兩個路由節(jié)點中目的路由節(jié)點無故障通信連接的路由節(jié)點的信息,作為第二信息集合,并計算所述第一信息集合與所述第二信息集合的交集;
[0018]將所述交集中所包含的路由節(jié)點的信息所對應的路由節(jié)點,確定為所述至少一個中間路由節(jié)點。
[0019]結(jié)合第一方面或第一方面第一種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述將待驗證中間路由節(jié)點與所述兩個路由節(jié)點間的通道依賴關(guān)系,加入到本次故障前路由網(wǎng)絡的通道依賴圖使之成為更新后的通道依賴圖之前,所述方法還包括:
[0020]獲取上一次加入通道依賴關(guān)系時得到的不包含依賴關(guān)系環(huán)的通道依賴圖,作為所述本次故障前路由網(wǎng)絡的通道依賴圖。
[0021]結(jié)合第一方面或第一方面第一種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述方法還包括:
[0022]向所述兩個路由節(jié)點中的源路由節(jié)點發(fā)送所述最終中間路由節(jié)點的描述信息,以便于所述源路由節(jié)點向所述最終中間路由節(jié)點發(fā)送所述待傳輸數(shù)據(jù)。
[0023]本發(fā)明第二方面提供一種確定中間路由節(jié)點的裝置,包括:
[0024]第一確定單元,用于在兩個路由節(jié)點間的通信路徑存在故障時,確定用于在所述兩個路由節(jié)點間中轉(zhuǎn)待傳輸數(shù)據(jù)的至少一個中間路由節(jié)點;
[0025]通道依賴圖更新單元,用于將待驗證中間路由節(jié)點與所述兩個路由節(jié)點間的通道依賴關(guān)系,加入到本次故障前路由網(wǎng)絡的通道依賴圖使之成為更新后的通道依賴圖,其中,所述待驗證中間路由節(jié)點為所述確定單元確定的所述至少一個中間路由節(jié)點中的任意一個,所述通道依賴關(guān)系為所述兩個路由節(jié)點通過所述待驗證中間路由節(jié)點進行數(shù)據(jù)傳輸?shù)耐ǖ澜M合,所述本次故障前路由網(wǎng)絡的通道依賴圖用于描述本次故障前所述路由網(wǎng)絡中任意兩個通道所構(gòu)成的依賴關(guān)系,或者與故障前已建立的通道依賴關(guān)系的組合;
[0026]第二確定單元,用于當所述通道依賴圖更新單元所更新的所述更新后的通道依賴圖中沒有依賴關(guān)系環(huán)時,則將所述待驗證中間路由節(jié)點確定為用于中轉(zhuǎn)待傳輸數(shù)據(jù)的最終中間路由節(jié)點,所述依賴關(guān)系環(huán)為通道依賴關(guān)系組合所形成的環(huán)。
[0027]結(jié)合第二方面,在第一種可能的實現(xiàn)方式中,所述通道依賴圖更新單元,包括:
[0028]查找子單元,用于按照所述待傳輸數(shù)據(jù)的傳輸方向,在所述本次故障前路由網(wǎng)絡的通道依賴圖中查找到所述兩個路由節(jié)點中的源路由節(jié)點與所述待驗證中間路由節(jié)點的路徑中的最后一條通道,以及所述待驗證中間路由節(jié)點與所述兩個路由節(jié)點中的目的路由節(jié)點的路徑中的第一條通道;
[0029]確定子單元,用于將所述查找子單元查找的所述源路由節(jié)點與所述待驗證中間路由節(jié)點的路徑中的最后一條通道確定為依賴起始通道,將所述待驗證中間路由節(jié)點與所述目的路由節(jié)點的路徑中的第一條通道確定為依賴結(jié)束通道;
[0030]建立子單元,用于在所述本次故障前路由網(wǎng)絡的通道依賴圖中加入所述確定子單元確定的所述依賴起始通道到所述依賴結(jié)束通道的通道依賴關(guān)系,使所述本次故障前路由網(wǎng)絡的通道依賴圖成為更新后的通道依賴圖。
[0031]結(jié)合第二方面或第二方面第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述第一確定單元,包括:
[0032]第一獲取子單元,用于獲取與所述兩個路由節(jié)點中源路由節(jié)點無故障通信連接的路由節(jié)點的信息,作為第一信息集合;
[0033]第二獲取子單元,用于獲取與所述兩個路由節(jié)點中目的路由節(jié)點無故障通信連接的路由節(jié)點的信息,作為第二信息集合;
[0034]計算子單元,用于計算所述第一獲取子單元獲取的所述第一信息集合與所述第二獲取子單元獲取的第二信息集合的交集;
[0035]確定子單元,用于將所述計算子單元計算的交集中所包含的路由節(jié)點的信息所對應的路由節(jié)點,確定為所述至少一個中間路由節(jié)點。
[0036]結(jié)合第二方面或第二方面第一種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述裝置還包括:
[0037]獲取單元,用于在所述通道依賴圖更新單元更新所述本次故障前路由網(wǎng)絡的通道依賴圖之前,獲取上一次加入通道依賴關(guān)系時得到的不包含依賴關(guān)系環(huán)的通道依賴圖,作為所述本次故障前路由網(wǎng)絡的通道依賴圖。
[0038]結(jié)合第二方面或第二方面第一種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述裝置還包括:
[0039]發(fā)送單元,用于向所述兩個路由節(jié)點中的源路由節(jié)點發(fā)送所述第二確定單元確定的所述最終中間路由節(jié)點的描述信息,以便于所述源路由節(jié)點向所述最終中間路由節(jié)點發(fā)送所述待傳輸數(shù)據(jù)。
[0040]本發(fā)明第三方面提供一種路由控制系統(tǒng),包括:路由節(jié)點和管理節(jié)點,所述路由節(jié)點按照網(wǎng)絡拓撲定義的方式通信連接,所述管理節(jié)點與所述路由節(jié)點中的任意一個路由節(jié)點均存在通信連接;
[0041]所述管理節(jié)點,用于在兩個路由節(jié)點間的通信路徑存在故障時,確定用于在所述兩個路由節(jié)點間中轉(zhuǎn)待傳輸數(shù)據(jù)的至少一個中間路由節(jié)點,將待驗證中間路由節(jié)點與所述兩個路由節(jié)點間的通道依賴關(guān)系,加入到本次故障前路由網(wǎng)絡的通道依賴圖使之成為更新后的通道依賴圖,其中,所述待驗證中間路由節(jié)點為所述至少一個中間路由節(jié)點中的任意一個,所述通道依賴關(guān)系為所述兩個路由節(jié)點通過所述待驗證中間路由節(jié)點進行數(shù)據(jù)傳輸?shù)耐ǖ澜M合,所述本次故障前路由網(wǎng)絡的通道依賴圖用于描述本次故障前所述路由網(wǎng)絡中任意兩個路由節(jié)點所構(gòu)成的通道,或者與故障前已建立的通道依賴關(guān)系的組合,當所述更新后的通道依賴圖中沒有依賴關(guān)系環(huán)時,則將所述待驗證中間路由節(jié)點確定為用于中轉(zhuǎn)待傳輸數(shù)據(jù)的最終中間路由節(jié)點,所述依賴關(guān)系環(huán)為通道依