驟S401的替代路徑轉(zhuǎn)發(fā)判定處理。
[0280]該轉(zhuǎn)發(fā)節(jié)點(diǎn)(ID = 10)由于是去往第一替代路徑的分支點(diǎn),因此為了向替代路徑切換而進(jìn)行路徑信息頭的值的設(shè)定。
[0281]作為執(zhí)行如圖16所示的替代路徑轉(zhuǎn)發(fā)判定處理的結(jié)果,路徑信息頭的“D”字段、“F”字段立即被再次設(shè)定為“0”,“Ex”字段也被減少。其結(jié)果是“Ex”字段成為“I”。所參考的局部ID的“U”字段設(shè)定為“1”,而且同樣地將局部ID的“Alt”字段復(fù)制到替代路徑信息頭的“Alt”字段。其結(jié)果是該字段被設(shè)定為“I”。
[0282]通過(guò)以上的處理,該內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400a以及之后的轉(zhuǎn)發(fā)節(jié)點(diǎn)執(zhí)行使用第一替代路徑的轉(zhuǎn)發(fā)處理。首先,內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400a由于路徑信息頭的“Alt”字段是“1”,因此參考設(shè)定有第一替代路徑信息的替代路徑信息頭的局部ID。其結(jié)果是局部ID (鏈路標(biāo)識(shí)符)是“3”,因此從與鏈路標(biāo)識(shí)符=“3”連接的通信接口發(fā)出所述分組(步驟S905)。這時(shí),所述替代路徑頭的“Current Offset”字段被加上該局部ID的字節(jié)數(shù)。
[0283]所述轉(zhuǎn)發(fā)的結(jié)果,所述分組被內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400b(ID = 5)接收。之后,參考由第一替代路徑信息頭的“Current Offset”表示的位置的局部ID,分組被依次轉(zhuǎn)發(fā)至作為下一跳的轉(zhuǎn)發(fā)節(jié)點(diǎn),最終分組被轉(zhuǎn)發(fā)給通信節(jié)點(diǎn)10b (步驟S906?步驟S908)。
[0284]接著,參考圖23的序列圖,對(duì)作為IP節(jié)點(diǎn)的通信節(jié)點(diǎn)10a向邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300a發(fā)送分組、該分組被依次進(jìn)行轉(zhuǎn)發(fā)處理、但在第一算出的最優(yōu)路徑(基本路徑)以及第一替代路徑進(jìn)行轉(zhuǎn)發(fā)的途中發(fā)生了發(fā)送失敗、并使用第二替代路徑轉(zhuǎn)發(fā)成功的情況的一系列的流程進(jìn)行說(shuō)明。
[0285]以下與圖21同樣地,以各節(jié)點(diǎn)的連接狀況是如圖13所示的網(wǎng)絡(luò)拓?fù)涞那闆r進(jìn)行說(shuō)明。
[0286]圖23的步驟S1000至步驟S1004與圖22的步驟S900至步驟S904完全相同,因此省略說(shuō)明。
[0287]在步驟S1005中,內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400a是去往第一替代路徑的分支點(diǎn),因此參考設(shè)定有第一替代路徑的替代路徑信息頭的局部ID。其結(jié)果是局部ID (鏈路標(biāo)識(shí)符)是“3”,因此從與鏈路標(biāo)識(shí)符=“ 3 ”連接的通信接口發(fā)出所述分組。這時(shí),所述替代路徑頭的“ CurrentOffset”字段被加上該局部ID的字節(jié)數(shù)。
[0288]到此與步驟S905相同,這里,假設(shè)內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400a檢測(cè)到分組轉(zhuǎn)發(fā)失敗(圖17的步驟S404的“否”)。
[0289]這時(shí),內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400a確認(rèn)有無(wú)替代路徑(步驟S1006)。這里,路徑信息頭的“Ex”字段不是“O” ( “I”),因此判定為在到該轉(zhuǎn)發(fā)節(jié)點(diǎn)為止的路徑的途中存在替代路徑。
[0290]其結(jié)果是,內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400a取代該分組的路徑信息頭,而通過(guò)替代路徑轉(zhuǎn)發(fā)該分組,因此進(jìn)行將分組逆向轉(zhuǎn)發(fā)至分支點(diǎn)的設(shè)定(圖17的步驟S406的“恢復(fù)用設(shè)定”)。具體地說(shuō),將路徑信息頭的“D”字段、“F”字段都設(shè)定為“ I ”。
[0291]之后,內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400a不是立即將該分組逆向轉(zhuǎn)發(fā),而是再次實(shí)施圖17的步驟S401的替代路徑轉(zhuǎn)發(fā)判定處理。
[0292]然后,按照?qǐng)D16所示的替代路徑轉(zhuǎn)發(fā)判定處理,在第一替代路徑所參考的局部ID中沒(méi)有去往其他代理路徑的分支點(diǎn)的信息,因此轉(zhuǎn)移到圖16的步驟S300的“是”以及步驟S301的“否”,在圖16的步驟S303中判定是否已返回到替代路徑的起點(diǎn)。
[0293]這時(shí),第一替代路徑信息頭的“Current Offset”是“0”,因此能夠判定以返回到起點(diǎn)。從而,前進(jìn)到圖16的步驟S304,執(zhí)行向原路徑的恢復(fù)處理。向所述原路徑的恢復(fù)處理通過(guò)將第一替代路徑信息頭的“Frm”字段的值復(fù)制到路徑信息頭“Alt”字段來(lái)進(jìn)行。
[0294]其結(jié)果是,所述“Alt”字段被設(shè)定為“0”,包括內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400a在內(nèi),在此之后接收到該分組的轉(zhuǎn)發(fā)節(jié)點(diǎn)根據(jù)基本路徑信息(路徑信息頭中設(shè)定的路徑)進(jìn)行轉(zhuǎn)發(fā)處理。
[0295]按照?qǐng)D16的流程圖,之后,再次在步驟S301中判定是否有未使用的替代路徑。在這里的判定中使用路徑信息頭的局部ID。其結(jié)果是,雖存在從該內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400a向第一替代路徑的路徑,但已經(jīng)使用過(guò)(“U” = “l(fā)”),因此在圖16的步驟S301中向“否”前進(jìn),接著在圖16的步驟S303中,判定是否為代理路徑的起點(diǎn)。該內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400a不是基本路徑的起點(diǎn),并且原本也不是替代路徑,因此判定結(jié)果為“否”,替代路徑轉(zhuǎn)發(fā)判定處理結(jié)束。
[0296]之后,在圖17的步驟S402中進(jìn)行的轉(zhuǎn)發(fā)方向的判定,由于“D”字段是“1”,因此為“否”(逆向),因此在圖17的步驟S408中執(zhí)行逆向的轉(zhuǎn)發(fā)處理。其結(jié)果是,接收分組從與鏈路標(biāo)識(shí)符=“I”連接的通信接口發(fā)送給邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300a(ID = I)(步驟S1007)。
[0297]接著當(dāng)在步驟S1008中接收到所述逆向轉(zhuǎn)發(fā)的分組時(shí),邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300a執(zhí)行圖15所示的轉(zhuǎn)發(fā)處理。首先,在步驟S200的替代路徑轉(zhuǎn)發(fā)判定處理中,接收分組是逆向且轉(zhuǎn)發(fā)失敗(“D”字段=1、“F”字段=I),并且還有未使用的替代路徑(第二替代路徑),因此在圖16的步驟S302中實(shí)施向替代路徑的切換處理。
[0298]具體地說(shuō),路徑信息頭的“D”字段、“F”字段被設(shè)定為“O”。另外,同樣地路徑信息頭的“Alt”字段被復(fù)制局部ID的“Alt”字段,結(jié)果被設(shè)定為“2”。另外,所述局部ID中的“U”字段被設(shè)定為“I”。之后,按照?qǐng)D15的步驟S201之后的步驟,使用第二替代路徑信息頭進(jìn)行接收分組的轉(zhuǎn)發(fā)處理。
[0299]這里,第二替代路徑信息頭中的第一個(gè)局部ID信息是“2” (鏈路標(biāo)識(shí)符=“2”),因此分組從該邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300a(ID= I)的通信接口中的與鏈路標(biāo)識(shí)符=“2”的鏈路連接的通信接口發(fā)出(步驟S1009)。
[0300]由內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400b (ID = 5)執(zhí)行在步驟S1009中接收到的分組的轉(zhuǎn)發(fā)處理(步驟S1010)。轉(zhuǎn)發(fā)的步驟如之前說(shuō)明的那樣參考路徑信息頭的“Alt”字段,由于該字段不是“O”( “2”),因此使用了第二替代路徑信息頭的轉(zhuǎn)發(fā)被開(kāi)始。根據(jù)第二替代路徑信息頭的“Current Offset”字段來(lái)確定應(yīng)參考的局部ID。這里“Current Offset”是“Cl ”,因此參考第二替代路徑信息頭的“Local ID#1”。如所述的那樣“Local ID#1”是“ 1”,因此該內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400b從與鏈路標(biāo)識(shí)符是“I”的鏈路連接的通信接口發(fā)出該分組(步驟SlOlI)。
[0301]接著,內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400c(ID = 6)進(jìn)行在步驟S1011中發(fā)出的分組的轉(zhuǎn)發(fā)處理(步驟S1012)。處理內(nèi)容與步驟SlOlO中說(shuō)明的內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400b中的轉(zhuǎn)發(fā)處理相同。結(jié)果是,該內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400c從與鏈路標(biāo)識(shí)符是“3”鏈路連接的通信接口發(fā)出該分組(步驟S1013)ο
[0302]最后在步驟S1014中,邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300b (ID = 8)進(jìn)行在步驟S1013發(fā)出的分組的轉(zhuǎn)發(fā)處理。這時(shí),邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300b按照?qǐng)D14所示的流程實(shí)施處理。并且在圖14的步驟S103中,實(shí)施進(jìn)一步在圖15中示出的流程圖所示的轉(zhuǎn)發(fā)處理。這里,由于是向外部網(wǎng)絡(luò)的轉(zhuǎn)發(fā),因此在圖15的步驟S210中去除路徑信息頭、替代路徑開(kāi)始位置信息頭、替代路徑信息頭,之后,該分組從與外部網(wǎng)絡(luò)連接的通信接口發(fā)出(步驟S1015)。其結(jié)果是,分組被發(fā)送給通信節(jié)點(diǎn)100b。
[0303]如上所述,根據(jù)本實(shí)施方式,構(gòu)成為不是使用諸如IP地址等確保全局唯一性的路徑信息,而是使用僅在轉(zhuǎn)發(fā)節(jié)點(diǎn)內(nèi)、或者在鄰接的轉(zhuǎn)發(fā)節(jié)點(diǎn)之間等局部范圍內(nèi)保證唯一性的局部ID來(lái)指定轉(zhuǎn)發(fā)目的地。因此,可用一個(gè)字節(jié)或兩個(gè)字節(jié)程度的信息量保存一跳的轉(zhuǎn)發(fā)路徑,即使在將該轉(zhuǎn)發(fā)路徑的信息保存在路徑信息頭中并附加給分組的情況下,也能夠?qū)⒂筛郊拥念^引起的開(kāi)銷抑制在極小的大小。其結(jié)果是,能夠不限用途地將路徑信息頭保存到所有分組中。
[0304]另外,在本實(shí)施方式中,能夠使轉(zhuǎn)發(fā)節(jié)點(diǎn)所具有的轉(zhuǎn)發(fā)表的條目數(shù)為各轉(zhuǎn)發(fā)節(jié)點(diǎn)所具有的通信接口的數(shù)目的程度。另外,還可抑制為了進(jìn)行轉(zhuǎn)發(fā)表的保存、更新、使用而轉(zhuǎn)發(fā)節(jié)點(diǎn)所需要的存儲(chǔ)器的大小和CPU的處理能力,能夠使轉(zhuǎn)發(fā)節(jié)點(diǎn)更廉價(jià)。
[0305]作為這些的結(jié)果,根據(jù)本實(shí)施方式,即使在按每一跳嚴(yán)格地指定轉(zhuǎn)發(fā)路徑的情況下也可高效且高速轉(zhuǎn)發(fā)凈荷信息。
[0306]而且,根據(jù)本實(shí)施方式,由于向分組附加替代轉(zhuǎn)發(fā)路徑信息,轉(zhuǎn)發(fā)節(jié)點(diǎn)具有向適當(dāng)?shù)奶娲D(zhuǎn)發(fā)路徑切換的功能,因此在轉(zhuǎn)發(fā)路徑發(fā)生了故障的情況、或流量變得過(guò)大的情況下等等,也能夠不受影響地將分組轉(zhuǎn)發(fā)到目的地。
[0307][第二實(shí)施方式]
[0308]接著,參考附圖,詳細(xì)說(shuō)明本發(fā)明的第二實(shí)施方式,本發(fā)明的第二實(shí)施方式對(duì)本發(fā)明的第一實(shí)施方式施加改變以記錄保持轉(zhuǎn)發(fā)失敗路徑。
[0309]本發(fā)明第二實(shí)施方式的整體構(gòu)成上具有與第一實(shí)施方式大致相同的構(gòu)成、功能,但對(duì)邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)301和內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)401做了改變。以下以該不同點(diǎn)為中心加以說(shuō)明。
[0310]圖24是示出本發(fā)明第二實(shí)施方式的邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)301的構(gòu)成的圖。對(duì)于與第一實(shí)施方式的邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300相同的功能模塊,標(biāo)注相同的標(biāo)號(hào)。以下,對(duì)標(biāo)注了與第一實(shí)施方式的邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300不同標(biāo)號(hào)的替代路徑切換部371、轉(zhuǎn)發(fā)結(jié)果記錄部381以及記錄部391進(jìn)行說(shuō)明。
[0311]替代路徑切換部371具備與本發(fā)明第一實(shí)施方式的替代路徑切換部370大致相同的功能,但還包括以下功能:將接收分組中的路徑信息頭(在使用替代路徑的情況下是替代路徑信息頭)中的路徑信息(局部ID的排列)與記錄部391中記錄的轉(zhuǎn)發(fā)失敗路徑信息表的各條目進(jìn)行比較,在一致的情況下,將該接收分組視為精油無(wú)效路徑的分組,并使轉(zhuǎn)發(fā)路徑切換到替代路徑或其他替代路徑。
[0312]這里,對(duì)記錄在記錄部391中的轉(zhuǎn)發(fā)失敗路徑信息表進(jìn)行說(shuō)明。轉(zhuǎn)發(fā)失敗路徑信息表的格式如圖25所示,各條目包括轉(zhuǎn)發(fā)失敗路徑和有效時(shí)刻的信息。
[0313]所述轉(zhuǎn)發(fā)失敗路徑信息是對(duì)從該轉(zhuǎn)發(fā)節(jié)點(diǎn)參考的參考局部ID直到在該轉(zhuǎn)發(fā)節(jié)點(diǎn)之后的轉(zhuǎn)發(fā)節(jié)點(diǎn)處轉(zhuǎn)發(fā)失敗的局部ID為止進(jìn)行排列的信息。這里,如后面說(shuō)明的那樣,本實(shí)施方式的局部ID與第一實(shí)施方式僅僅是格式不同,是轉(zhuǎn)發(fā)失敗的轉(zhuǎn)發(fā)節(jié)點(diǎn)嘗試了轉(zhuǎn)發(fā)的通信接口的標(biāo)識(shí)符或者與前述通信接口連接的鏈路的鏈路標(biāo)識(shí)符中的某一個(gè)。
[0314]有效時(shí)刻信息表示在時(shí)刻超過(guò)這里記錄的有效時(shí)刻的情況下該條目被刪除或被設(shè)為無(wú)效。但是,也可以不使用有效時(shí)刻。
[0315]替代路徑切換部371還具有以下功能:在接收到轉(zhuǎn)發(fā)失敗從而被逆向轉(zhuǎn)發(fā)而來(lái)的分組(即,“D”字段、“F”字段均是“I”的分組)的情況下,并且在該轉(zhuǎn)發(fā)節(jié)點(diǎn)是去往替代路徑的分支點(diǎn)的情況下,向替代路徑轉(zhuǎn)發(fā)所述接收分組,并且使用接收分組的路徑信息頭或替代路徑信息頭的信息向所述轉(zhuǎn)發(fā)失敗路徑信息表中追加條目。
[0316]圖26是本實(shí)施方式中使用的局部ID的格式。對(duì)于第一實(shí)施方式中的局部ID,追加了 “B”(BrokenLink,斷線的鏈路)字段。在發(fā)生了轉(zhuǎn)發(fā)失敗的情況下,發(fā)生了轉(zhuǎn)發(fā)失敗的通信接口標(biāo)識(shí)符、或者與鏈路標(biāo)識(shí)符相當(dāng)?shù)木植縄D的“B”字段被設(shè)定成“I”。因此,能夠讀取從該轉(zhuǎn)發(fā)節(jié)點(diǎn)參考的局部ID至轉(zhuǎn)發(fā)失敗的局部ID,并記錄到轉(zhuǎn)發(fā)失敗路徑信息表中。
[0317]轉(zhuǎn)發(fā)結(jié)果記錄部381具有與本發(fā)明第一實(shí)施方式的轉(zhuǎn)發(fā)結(jié)果記錄部380大致相同的功能,但在轉(zhuǎn)發(fā)失敗時(shí),除了將路徑信息頭的“D”字段以及“F”字段設(shè)定為“ I ”之外,還具有將嘗試轉(zhuǎn)發(fā)時(shí)所參考了的局部ID的“B”字段設(shè)定為“I”的功能。
[0318]在記錄部391中除了在本發(fā)明的第一實(shí)施方式中記錄的轉(zhuǎn)發(fā)表之外,還記錄如圖25所示的轉(zhuǎn)發(fā)失敗路徑信息表。
[0319]圖27是示出本發(fā)明第二實(shí)施方式的內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)401的構(gòu)成的圖。與第一實(shí)施方式的內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400相同的功能模塊被標(biāo)注了相同的標(biāo)號(hào)。
[0320]標(biāo)注了與第一實(shí)施方式的內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400不同標(biāo)號(hào)的替代路徑切換部451、轉(zhuǎn)發(fā)結(jié)果記錄部461以及記錄部471分別具有與邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)301的替代路徑切換部371、轉(zhuǎn)發(fā)結(jié)果記錄部381以及記錄部391相同的功能,因此省略這些模塊的說(shuō)明。
[0321]接著,對(duì)第二實(shí)施方式中的邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)301以及內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)401從鄰近節(jié)點(diǎn)接收到分組時(shí)的處理流程。
[0322]邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)301、內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)401進(jìn)行與第一實(shí)施方式中的邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300、內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400大致相同的動(dòng)作。不同的是,圖16所示的替代路徑轉(zhuǎn)發(fā)判定處理、圖15的邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300中的恢復(fù)用設(shè)定(步驟S206)、以及圖17的內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)400中的恢復(fù)用設(shè)定(步驟S406)。以下,以與第一實(shí)施方式的不同點(diǎn)為中心進(jìn)行說(shuō)明。
[0323]首先,使用圖28所示的流程圖來(lái)說(shuō)明本發(fā)明第二實(shí)施方式中的替代路徑轉(zhuǎn)發(fā)判定處理。
[0324]首先,轉(zhuǎn)發(fā)節(jié)點(diǎn)判定接收分組是否是在該轉(zhuǎn)發(fā)節(jié)點(diǎn)以及經(jīng)由該轉(zhuǎn)發(fā)節(jié)點(diǎn)在之后的轉(zhuǎn)發(fā)節(jié)點(diǎn)發(fā)生了轉(zhuǎn)發(fā)失敗,經(jīng)過(guò)所經(jīng)由的轉(zhuǎn)發(fā)節(jié)點(diǎn)逆向被送回的分組(步驟S1100)。具體地說(shuō),參考該接收分組的路徑信息頭中的“D”字段以及“F”字段,判定是否兩者都是“ I ”。
[0325]在接收分組不是因?yàn)槭《嫦蜣D(zhuǎn)發(fā)的分組的情況下(步驟SllOO的“否”),轉(zhuǎn)發(fā)節(jié)點(diǎn)將在接收分組的路徑信息頭(在使用替代路徑的情況下是替代路徑信息頭)中當(dāng)前參考的局部ID和接在其后的局部ID與圖25所示的轉(zhuǎn)發(fā)失敗路徑信息表的各條目進(jìn)行比較(步驟S1101)。在比較的結(jié)果是存在一致的條目的情況下,決定將該接收分組作為轉(zhuǎn)發(fā)失敗的分組切換到替代路徑(步驟SllOl的“是”)。另一方面,在沒(méi)有一致的條目的情況下向“否”前進(jìn),處理結(jié)束(步驟SllOl的“否”)。
[0326]上述步驟SllOl的處理是通過(guò)本發(fā)明第二實(shí)施方式中的替代路徑切換部371以及替代路徑切換部451新追加的處理。
[0327]另一方面,在接收分組是因?yàn)槭《嫦蜣D(zhuǎn)發(fā)的分組(“D”字段、“F”字段均是“I”)的情況下(步驟SllOO的“是”),轉(zhuǎn)發(fā)節(jié)點(diǎn)根據(jù)“Current Offset”字段檢查應(yīng)參考的局部ID,判定該轉(zhuǎn)發(fā)節(jié)點(diǎn)是否是能夠向替代路徑切換的分支點(diǎn),并且替代路徑是否未使用(步驟S1102)。具體地說(shuō),判定所述局部ID ( “Local ID#n”)中的“Alt”字段是否是“O”以外的值,并且“U”字段是否是“O”。
[0328]進(jìn)行前述判定的結(jié)果,在判定為是未使用的替代路徑的分支點(diǎn)的情況下(步驟S1102的“是”),轉(zhuǎn)發(fā)節(jié)點(diǎn)根據(jù)路徑信息頭(在使用替代路徑的情況下是替代路徑信息頭),讀出從該轉(zhuǎn)發(fā)節(jié)點(diǎn)參考的局部ID到所述“B” (BrokenLink)字段被設(shè)定為“I”的局部ID為止的一系列的局部ID,并將該一系列的局部ID注冊(cè)為圖25所示的轉(zhuǎn)發(fā)失敗路徑信息表的條目。
[0329]上述步驟S1103的處理是本發(fā)明第二實(shí)施方式中的替代路徑切換部371以及替代路徑切換部451新追加的處理。
[0330]接著,轉(zhuǎn)發(fā)節(jié)點(diǎn)為了向替代路徑轉(zhuǎn)發(fā)分組,將路徑信息頭、代理信息頭的各字段設(shè)定為適當(dāng)?shù)闹?步驟S1104)。具體的設(shè)定內(nèi)容與圖16的S302相同,因此這里省略。在所述設(shè)定結(jié)束之后,替代路徑轉(zhuǎn)發(fā)判定處理結(jié)束。
[0331]另一方面,在不滿足上述條件的情況下,即在不是去往替代路徑的分支點(diǎn),或者雖然是分支點(diǎn)但分支目標(biāo)替代路徑是已經(jīng)轉(zhuǎn)發(fā)過(guò)該分組的路徑的情況下(步驟S1102的“否”),轉(zhuǎn)發(fā)節(jié)點(diǎn)判定當(dāng)前參考的是否是替代路徑信息頭,并且是否參考了其中第一個(gè)路徑信息(局部ID)(步驟S1105)。這里,是否是參考替代路徑信息頭的判定,只要參考路徑信息頭的“Alt”字段就能判定。另外,是否是第一個(gè)路徑信息的判定,能夠通過(guò)替代路徑信息頭的“Current Offset”是否為“O”來(lái)判定。
[0332]進(jìn)行所述判定的結(jié)果,在判定為不是替代路徑的第一個(gè)路徑信息、即本節(jié)點(diǎn)不是替代路徑的起點(diǎn)的情況下(步驟S1105的“否”),替代路徑轉(zhuǎn)發(fā)判定處理結(jié)束。
[0333]進(jìn)行所述判定的結(jié)果,在判定為是替代路徑的第一個(gè)路徑信息的情況下,即在判定為本節(jié)點(diǎn)是替代路徑的起點(diǎn)的情況下(步驟S1105的“是”),轉(zhuǎn)發(fā)節(jié)點(diǎn)執(zhí)行向原路徑的恢復(fù)處理。向所述原路徑的恢復(fù)處理通過(guò)將作為當(dāng)前參考對(duì)象的替代路徑信息頭中的“Frm”復(fù)制到路徑信息頭的“Alt”字段來(lái)進(jìn)行。
[0334]接著,對(duì)本發(fā)明第二實(shí)施方式中的邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)301的恢復(fù)用設(shè)定處理與圖15的第一實(shí)施方式中的恢復(fù)用設(shè)定處理(步驟S206)的不同點(diǎn)進(jìn)行說(shuō)明。
[0335]在本發(fā)明第一實(shí)施方式中的恢復(fù)用設(shè)定處理(圖15的步驟S206)中,將路徑信息頭的各字段進(jìn)行適當(dāng)?shù)卦O(shè)定,以便實(shí)施將接收分組一直返回到作為去往替代路徑的分支點(diǎn)(也可以是本轉(zhuǎn)發(fā)節(jié)點(diǎn)為分支點(diǎn)的情況)的轉(zhuǎn)發(fā)節(jié)點(diǎn)的處理。具體地說(shuō),將路徑信息頭的“D”以及“F”字段都設(shè)定為“I”。
[0336]與此相對(duì),在本發(fā)明第二實(shí)施方式的恢復(fù)用設(shè)定處理中,除了上述的以外,通過(guò)轉(zhuǎn)發(fā)結(jié)果記錄部381執(zhí)行將進(jìn)行最終以失敗告終的轉(zhuǎn)發(fā)時(shí)所參考的局部ID信息的“B”字段設(shè)定為“I”的處理。
[0337]接著,對(duì)本發(fā)明第二實(shí)施方式的內(nèi)部轉(zhuǎn)發(fā)節(jié)點(diǎn)401的恢復(fù)用設(shè)定處理與第一實(shí)施方式的恢復(fù)用設(shè)定處理(圖17的步驟S406)的不同點(diǎn)進(jìn)行說(shuō)明。
[0338]本發(fā)明第一實(shí)施方式的恢復(fù)用設(shè)定處理(圖17的步驟S406)將路徑信息頭的各字段進(jìn)行適當(dāng)?shù)卦O(shè)定,以便實(shí)施將接收分組一直返回到作為向替代路徑的分支點(diǎn)(也可以是本轉(zhuǎn)發(fā)節(jié)點(diǎn)就是分支點(diǎn)的情況)的轉(zhuǎn)發(fā)節(jié)點(diǎn)的處理。具體地說(shuō),將路徑信息頭的“D”以及“F”字段都設(shè)定為“I”。
[0339]與此相對(duì),在本發(fā)明第二實(shí)施方式的恢復(fù)用設(shè)定處理中,除了上述的以外,通過(guò)轉(zhuǎn)發(fā)結(jié)果記錄部461執(zhí)行將進(jìn)行最終以失敗告終的轉(zhuǎn)發(fā)時(shí)所參考的局部ID信息的“B”字段設(shè)定為“I”的處理。
[0340]接著,參考圖29的序列圖,對(duì)作為IP節(jié)點(diǎn)的通信節(jié)點(diǎn)10a向邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300a發(fā)送分組、該分組被依次進(jìn)行轉(zhuǎn)發(fā)并最終到達(dá)作為IP節(jié)點(diǎn)的通信節(jié)點(diǎn)10b的處理進(jìn)行說(shuō)明。
[0341]但是,這里,為了更加易于理解地說(shuō)明本發(fā)明的第二實(shí)施方式,假設(shè)分組如下發(fā)送了分組。
[0342]首先,在最初的分組的轉(zhuǎn)發(fā)途中發(fā)生轉(zhuǎn)發(fā)失敗,將該分組一直返回到作為向替代路徑的分支點(diǎn)的轉(zhuǎn)發(fā)節(jié)點(diǎn)(這里的例子中是邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300a)之后,通過(guò)替代路徑轉(zhuǎn)發(fā)該分組。
[0343]接著,同樣地在邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300a接收到從通信節(jié)點(diǎn)10a向通信節(jié)點(diǎn)10b發(fā)送的分組的情況下,由于預(yù)測(cè)到該分組的轉(zhuǎn)發(fā)失敗,因此邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300a不使用基本路徑,而是立即使用替代路徑進(jìn)行轉(zhuǎn)發(fā)。
[0344]參考圖29,當(dāng)從通信節(jié)點(diǎn)10a發(fā)來(lái)的IP分組到達(dá)邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300a時(shí)(步驟S1200),接收到所述IP分組的邊界轉(zhuǎn)發(fā)節(jié)點(diǎn)300a從路徑管理服務(wù)器500取得路徑信息,并執(zhí)行向所述IP頭中附加路徑信息頭的處理(步驟S1201)。
[0345]以下與第