專利名稱:路徑計算順序決定方法、程序以及計算裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及路徑計算順序決定方法、程序以及計算裝置,特別涉及決定使用節(jié)點之間的已計算出的最短路徑來計算其他節(jié)點之間的最短路徑時的路徑計算順序的路徑計算順序決定方法、程序以及計算裝置。
背景技術(shù):
存在如下情況網(wǎng)絡(luò)內(nèi)的節(jié)點、連接節(jié)點之間的道路(路線)、網(wǎng)絡(luò)鏈接的鋪設(shè)狀況(拓撲)產(chǎn)生變化,數(shù)據(jù)可以通過此前無法通過的部位,或者相反,無法通過此前可以通過的部位。在需要始終掌握從出發(fā)地(起點節(jié)點)到目的地(終點節(jié)點)的最短路徑的情況下,伴隨路線拓撲的變化,需要再次計算變化后的拓撲中的從出發(fā)地(起點節(jié)點)到目的地 (終點節(jié)點)的最短路徑?,F(xiàn)有的最短路徑計算裝置使用表示變化后的拓撲的拓撲信息,再次計算連接各節(jié)點之間的全部最短路徑。在非專利文獻1中記載了使用拓撲信息來計算各節(jié)點之間的最短路徑的方法。非專利文獻 1 :Ε· W. Di jkstra、「A Note on Two Problems in Connexion with Graphs」、1959 $ 6 月 11 H>Numerische Mathematik 1, p269-27
發(fā)明內(nèi)容
發(fā)明要解決的課題在已經(jīng)計算了某個連接節(jié)點之間的最短路徑的情況下,有時在該已計算出的節(jié)點之間的最短路徑和由此計算的其他節(jié)點之間的最短路徑之間存在共同的部分(以下稱為 “共同部分”)。在存在共同部分的情況下,能夠采用該共同部分作為由此計算的節(jié)點之間的最短路徑的計算結(jié)果的一部分。特別地,在已計算出的節(jié)點之間的最短路徑中包括表示由此計算的從起點到終點的最短路徑的部分(以下稱為“部分路徑”)的情況下,該部分路徑是由此計算的最短路徑。由已計算出的各節(jié)點之間的最短路徑構(gòu)成的最短路徑組包括越多的部分路徑,使用該已計算出的最短路徑組的信息,越能夠縮短由此計算的節(jié)點之間的最短路徑的計算時間。以往,著眼于這一點,即由已計算出的各節(jié)點之間的最短路徑構(gòu)成的最短路徑組包括越多的部分路徑,使用已計算出的最短路徑組的信息,越能夠縮短由此計算的節(jié)點之間的最短路徑的計算時間,不存在縮短節(jié)點之間的最短路徑的計算時間的技術(shù)。本發(fā)明的目的在于,提供以能夠縮短節(jié)點之間的最短路徑的計算時間的方式?jīng)Q定節(jié)點之間的最短路徑的計算順序的路徑計算順序決定方法、程序以及計算裝置。用于解決課題的手段
本發(fā)明的路徑計算順序決定方法是計算裝置執(zhí)行的路徑計算順序決定方法,該計算裝置針對由多個節(jié)點構(gòu)成的網(wǎng)絡(luò),使用節(jié)點之間的已計算出的最短路徑來計算其他節(jié)點之間的最短路徑,其特征在于,所述計算裝置具有存儲單元和計算單元,該存儲單元存儲最短路徑組信息和拓撲信息,所述最短路徑組信息通過多個節(jié)點和該多個節(jié)點中的各節(jié)點之間的路徑來表示起點節(jié)點相同且終點節(jié)點不同的各節(jié)點之間的已計算出的最短路徑,所述拓撲信息表示所述多個節(jié)點的拓撲,所述路徑計算順序決定方法包括計算步驟,在該計算步驟中,所述計算單元按照在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于特定節(jié)點下游的節(jié)點的數(shù)量從多到少的順序,選擇所述多個節(jié)點中與所述起點節(jié)點不同的每一個所述特定節(jié)點,每次選擇所述特定節(jié)點時,使用其他節(jié)點之間的已計算出的最短路徑和所述拓撲信息,計算以該選擇出的特定節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑。本發(fā)明的程序用于使存儲有最短路徑組信息和拓撲信息的計算機針對由多個節(jié)點構(gòu)成的網(wǎng)絡(luò)執(zhí)行計算步驟,所述最短路徑組信息通過多個節(jié)點和該多個節(jié)點的各節(jié)點之間的路徑來表示起點節(jié)點相同且終點節(jié)點不同的各節(jié)點之間的已計算出的最短路徑,所述拓撲信息表示所述多個節(jié)點的拓撲,在所述計算步驟中,按照在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于特定節(jié)點下游的節(jié)點的數(shù)量從多到少的順序, 選擇所述多個節(jié)點中與所述起點節(jié)點不同的每一個所述特定節(jié)點,每次選擇所述特定節(jié)點時,使用其他節(jié)點之間的已計算出的最短路徑和所述拓撲信息,計算以該選擇出的特定節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑。本發(fā)明的計算裝置針對由多個節(jié)點構(gòu)成的網(wǎng)絡(luò),使用節(jié)點之間的已計算出的最短路徑來計算其他節(jié)點之間的最短路徑,其特征在于,該計算裝置具有存儲單元,其存儲最短路徑組信息和拓撲信息,所述最短路徑組信息通過多個節(jié)點和該多個節(jié)點的各節(jié)點之間的路徑來表示起點節(jié)點相同且終點節(jié)點不同的各節(jié)點之間的已計算出的最短路徑,所述拓撲信息表示所述多個節(jié)點的拓撲;以及計算單元,其按照在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于特定節(jié)點下游的節(jié)點的數(shù)量從多到少的順序,選擇所述多個節(jié)點中與所述起點節(jié)點不同的每一個所述特定節(jié)點,每次選擇所述特定節(jié)點時, 使用其他節(jié)點之間的已計算出的最短路徑和所述拓撲信息,計算以該選擇出的特定節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑。優(yōu)選所述計算單元執(zhí)行以下處理檢索處理,檢索在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于所述起點節(jié)點的單跳下游的全部節(jié)點,作為屬于所述特定節(jié)點的計算起點節(jié)點;選擇處理,選擇所述計算起點節(jié)點中的特定計算起點節(jié)點, 在所述各節(jié)點之間的已計算出的最短路徑中,位于所述特定計算起點節(jié)點下游的節(jié)點的數(shù)量最多;最短路徑計算處理,使用其他節(jié)點之間的已計算出的最短路徑和所述拓撲信息,計算以所述特定計算起點節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑;以及反復(fù)處理,反復(fù)進行如下一連串的動作,直到針對全部所述特定節(jié)點, 以該特定節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑的計算結(jié)束為止,所述一連串的動作是,檢索在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于所述特定計算起點節(jié)點的單跳下游的全部節(jié)點,追加該檢索到的節(jié)點作為所述計算起點節(jié)點,然后,進行所述檢索處理、所述選擇處理和所述最短路徑計算處理。發(fā)明的效果根據(jù)本發(fā)明,能夠按照能夠在其他各節(jié)點之間的最短路徑的計算中轉(zhuǎn)用的路徑數(shù)從多到少的順序,計算各節(jié)點之間的最短路徑。由此,能夠縮短全部最短路徑的計算時間。
圖1是示出本發(fā)明的一個實施方式的計算裝置1的結(jié)構(gòu)的框圖。圖2是示出最短路徑組的路徑樹的一例的說明圖。圖3是用于說明計算裝置1的動作的流程圖。圖4是用于說明計算裝置1的動作的說明圖。圖5是用于說明計算裝置1的動作的說明圖。圖6是用于說明計算裝置1的動作的說明圖。圖7是用于說明計算裝置1的動作的說明圖。圖8是用于說明計算裝置1的動作的說明圖。圖9是用于說明計算裝置1的動作的說明圖。標(biāo)號說明1 計算裝置;2 外部接口 ;3 存儲介質(zhì);4 處理器;如路徑計算部;4b 信息管理部。
具體實施例方式下面,參照附圖對本發(fā)明的實施方式進行說明。圖1是示出本發(fā)明的一個實施方式的計算裝置1的框圖。計算裝置1包括外部接口 2、存儲介質(zhì)3、處理器4。外部接口 2向其他裝置(未圖示)發(fā)送各節(jié)點之間的最短路徑的計算結(jié)果,并從其他裝置接收與拓撲有關(guān)的信息(以下稱為“拓撲信息”)。存儲介質(zhì)3是存儲單元的一例,是計算機可讀取的記錄介質(zhì)。存儲介質(zhì)3例如存儲最短路徑組信息和拓撲信息,該最短路徑組信息表示起點節(jié)點相同且終點節(jié)點不同的各節(jié)點之間的已計算出的最短路徑。最短路徑組信息通過多個節(jié)點和該多個節(jié)點中的各節(jié)點之間的路徑,來表示起點節(jié)點相同且終點節(jié)點不同的各節(jié)點之間的已計算出的最短路徑。在本實施方式中,最短路徑組信息利用路徑樹的形式表示起點節(jié)點相同且終點節(jié)點不同的各節(jié)點之間的已計算出的最短路徑組。各最短路徑由從起點到終點沿著樹到達時通過的節(jié)點和該節(jié)點之間的鏈路表示。另外,省略了網(wǎng)絡(luò)拓撲的圖示,但是,在鄰近的節(jié)點彼此之間設(shè)有路線。下面,利用箭頭連接規(guī)定節(jié)點的單跳上游的節(jié)點與規(guī)定節(jié)點之間、以及規(guī)定節(jié)點的單跳下游的節(jié)點與規(guī)定節(jié)點之間,利用箭頭朝向的方向表示上游一下游。作為起點相同的最短路徑組,當(dāng)存在圖2所示的樹時,使用沿著樹從節(jié)點s去往節(jié)點b時通過的節(jié)點即節(jié)點s、a和b,如s — a — b那樣表示從節(jié)點s到節(jié)點b的最短路徑。 同樣,從節(jié)點s到節(jié)點a、c、d的路徑為s — a、s — a — c、s — d。在樹內(nèi)配置成起點位于樹的頂點,接近終點的節(jié)點在下方(下游)。下面,從某個節(jié)點觀察時,將存在于同一路徑上且位于該節(jié)點的起點側(cè)的節(jié)點稱為上游節(jié)點,將位于終點側(cè)的節(jié)點稱為下游節(jié)點。拓撲信息表示最短路徑組信息所示的多個節(jié)點的拓撲。處理器4是計算單元的一例。處理器4包括路徑計算部乜和信息管理部4b。另外,在存儲介質(zhì)3中記錄有規(guī)定處理器4的動作的程序的情況下,處理器4從存儲介質(zhì)3中讀取該程序并執(zhí)行,由此,作為信息管理部4b和路徑計算部如發(fā)揮功能。路徑計算部如從存儲介質(zhì)3中讀入最短路徑組信息和拓撲信息。路徑計算部如按照在最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于特定節(jié)點下游(終點節(jié)點側(cè))的節(jié)點的數(shù)量從多到少的順序,選擇最短路徑組信息表示的多個節(jié)點中與起點節(jié)點不同的每一個特定節(jié)點。路徑計算部如每次選擇特定節(jié)點時,使用其他節(jié)點之間的已計算出的最短路徑和拓撲信息,計算以該選擇出的特定節(jié)點為起點且以最短路徑組信息表示的多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑。在本實施方式中,路徑計算部如執(zhí)行檢索處理、選擇處理、最短路徑計算處理、反
復(fù)處理。在檢索處理中,路徑計算部如檢索在最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于起點節(jié)點的單跳下游的全部節(jié)點,作為屬于特定節(jié)點的計算起點節(jié)
點ο在選擇處理中,路徑計算部如選擇計算起點節(jié)點中的、在最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于該計算起點節(jié)點下游的節(jié)點的數(shù)量最多的計算起點節(jié)點,作為特定計算起點節(jié)點。在最短路徑計算處理中,路徑計算部如使用其他節(jié)點之間的已計算出的最短路徑和拓撲信息,計算以所選擇的特定計算起點節(jié)點為起點且以最短路徑組信息表示的多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑。在反復(fù)處理中,路徑計算部如反復(fù)進行如下一連串的動作,直到針對最短路徑組信息表示的全部特定節(jié)點,以該特定節(jié)點為起點且以最短路徑組信息表示的多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑的計算結(jié)束為止,所述一連串的動作是,檢索在最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于特定計算起點節(jié)點的單跳下游的全部節(jié)點,追加該檢索到的節(jié)點作為計算起點節(jié)點,然后,進行檢索處理、選擇處理和最短路徑計算處理。信息管理部4b進行計算出的路徑信息或拓撲信息的更新或取得。接著,對動作進行說明。圖3是用于說明計算裝置1的動作的流程圖。另外,在本實施方式中,計算裝置1在一次處理中計算起點相同且終點不同的各節(jié)點之間的最短路徑,然后,將起點節(jié)點變更為其他節(jié)點,決定計算全部最短路徑時的最短路徑的計算順序。首先,路徑計算部如從存儲介質(zhì)3中讀取最短路徑組信息和拓撲信息,準(zhǔn)備(輸入)起點為相同節(jié)點的已計算出的最短路徑組(路徑樹)和拓撲信息(步驟301)。通過最短路徑組信息以圖2所示的樹結(jié)構(gòu)來表示最短路徑組。接著,路徑計算部如檢索在由樹結(jié)構(gòu)表示的最短路徑組中位于起點的單跳下游的節(jié)點(計算起點節(jié)點)。然后,路徑計算部如針對檢索到的每個節(jié)點(計算起點節(jié)點), 對在最短路徑組信息所示的各節(jié)點之間的已計算出的最短路徑中位于該節(jié)點(計算起點節(jié)點)下游的節(jié)點的數(shù)量進行計數(shù),將該節(jié)點數(shù)量與檢索到的節(jié)點(計算起點節(jié)點)對應(yīng)起來(步驟302)。接著,路徑計算部如按照與該節(jié)點對應(yīng)的下游節(jié)點數(shù)量從多到少的順序,搜索表示檢索到的節(jié)點(計算起點節(jié)點)的信息(例如節(jié)點ID(IDentification))(步驟303)。接著,路徑計算部如從檢索到的節(jié)點(計算起點節(jié)點)中選擇下游節(jié)點數(shù)量最多的節(jié)點(特定計算起點節(jié)點)。然后,路徑計算部如使用其他節(jié)點之間的已計算出的最短路徑(例如最短路徑組信息)和拓撲信息,在下一處理中計算以該所選擇的節(jié)點(特定計算起點節(jié)點)為起點且以樹結(jié)構(gòu)內(nèi)的其他各節(jié)點為終點的各節(jié)點之間的最短路徑(步驟 304)。接著,路徑計算部如針對最短路徑組信息所示的多個節(jié)點中的與起點節(jié)點不同的全部節(jié)點,判斷以該節(jié)點為起點且以其他各節(jié)點為終點的各節(jié)點之間的最短路徑的計算是否已結(jié)束(步驟305)。在針對最短路徑組信息所示的多個節(jié)點中的與起點節(jié)點不同的全部節(jié)點,以該節(jié)點為起點且以其他各節(jié)點為終點的各節(jié)點之間的最短路徑的計算沒有結(jié)束的情況下(步驟305 否),路徑計算部如檢索在最短路徑組信息所示的各節(jié)點之間的已計算出的最短路徑中位于特定計算起點節(jié)點的單跳下游的全部節(jié)點,追加該檢索到的節(jié)點作為計算起點節(jié)點。接著,路徑計算部如針對所追加的每個計算起點節(jié)點,對在最短路徑組信息所示的各節(jié)點之間的已計算出的最短路徑中位于該計算起點節(jié)點下游的節(jié)點的數(shù)量進行計數(shù),將該節(jié)點數(shù)量與檢索到的節(jié)點(計算起點節(jié)點)對應(yīng)起來(步驟306)。接著,路徑計算部如返回步驟303的處理。另一方面,在針對最短路徑組信息所示的多個節(jié)點中的與起點節(jié)點不同的全部節(jié)點,以該節(jié)點為起點且以其他各節(jié)點為終點的各節(jié)點之間的最短路徑的計算已結(jié)束的情況下(步驟305 是),路徑計算部如結(jié)束計算處理。接著,使用圖4 圖9對各步驟進行說明。在以后的說明中也使用樹結(jié)構(gòu)來表示路徑。在圖4所示的樹結(jié)構(gòu)的情況下,從節(jié)點S連接到節(jié)點E的路徑為S — C — D — E。首先,使用圖5對步驟301、302和303進行說明。如圖5所示,計算以節(jié)點S為起點且分別以其他多個節(jié)點為終點的多個最短路徑時,路徑計算部如著眼于起點節(jié)點S的單跳下游的節(jié)點即節(jié)點A、B、C。然后,路徑計算部如對位于節(jié)點A下游的節(jié)點數(shù)量、位于節(jié)點B下游的節(jié)點數(shù)量、 位于節(jié)點C下游的節(jié)點數(shù)量進行計數(shù)。在圖5中,節(jié)點A下游存在3個節(jié)點,節(jié)點B下游存在2個節(jié)點,節(jié)點C下游存在5個節(jié)點。接著,路徑計算部如生成將節(jié)點A與其下游的節(jié)點數(shù)量對應(yīng)起來的信息(例如節(jié)點A 下游的節(jié)點數(shù)量幻。同樣,路徑計算部如生成將節(jié)點B與其下游的節(jié)點數(shù)量對應(yīng)起來的信息、以及將節(jié)點C與其下游的節(jié)點數(shù)量對應(yīng)起來的信息。
路徑計算部如以從這些信息中取出下游節(jié)點數(shù)量最多的節(jié)點的信息的形式,對這些信息進行管理。作為管理的例子,考慮將各個信息放入堆棧中進行管理的方法。接著,使用圖6和圖7對步驟304進行說明。路徑計算部如從在步驟303中管理的信息中取出下游節(jié)點數(shù)量最多的信息。在圖6的例子中,位于節(jié)點C下游的節(jié)點的數(shù)量最多,因此,路徑計算部如取出與節(jié)點C有關(guān)的信息。接著,路徑計算部如如圖7所示,計算以節(jié)點C為起點的最短路徑。此時,路徑計算部如利用在各節(jié)點之間的已計算出的最短路徑中以位于節(jié)點C上游的節(jié)點(該情況下為節(jié)點幻為起點的最短路徑的計算結(jié)果,計算以節(jié)點C為起點的最短路徑。例如,關(guān)于以節(jié)點C為起點且以其他節(jié)點為終點的最短路徑中的圖5中節(jié)點C為起點的樹部分(節(jié)點C的下屬樹部分),路徑計算部如直接利用以節(jié)點S為起點的最短路徑的計算結(jié)果中的節(jié)點C為起點的樹部分。另外,在本實施方式中,關(guān)于以節(jié)點C為起點且以其他節(jié)點為終點的最短路徑中的以節(jié)點S為起點的最短路徑的計算結(jié)果不包含的部分,使用拓撲信息,按照路徑計算算法進行計算。路徑計算部如保持以節(jié)點C為起點且以其他節(jié)點為終點的最短路徑的計算結(jié)果, 將該計算結(jié)果用于接著進行的以其他節(jié)點為起點的最短路徑的計算。當(dāng)以節(jié)點C為起點且以其他節(jié)點為終點的最短路徑的計算結(jié)束時,如圖8所示,路徑計算部如著眼于節(jié)點C的一個下游的節(jié)點。然后,路徑計算部如對各個節(jié)點的下游的節(jié)點數(shù)量進行計數(shù)。路徑計算部如生成包括下游節(jié)點數(shù)量的所述信息后,如圖9所示,與之前生成的節(jié)點A、B的信息一起,以取出下游節(jié)點數(shù)量最多的信息的形式對這些信息進行管理。路徑計算部如反復(fù)進行以上的處理,直到計算出全部最短路徑為止。因此,路徑計算部如每次進行最短路徑的計算時,在接著進行的以其他節(jié)點為起點的最短路徑的計算中利用的最短路徑的計算結(jié)果增加。在本實施方式中,處理器4按照在最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于特定節(jié)點下游的節(jié)點的數(shù)量從多到少的順序,選擇每一個特定節(jié)點,每次選擇特定節(jié)點時,使用其他節(jié)點之間的已計算出的最短路徑和拓撲信息,計算以選擇出的特定節(jié)點為起點且以其他各節(jié)點為終點的各節(jié)點之間的最短路徑。因此,處理器4按照能夠在其他各節(jié)點之間的最短路徑的計算中轉(zhuǎn)用的路徑數(shù)從多到少的順序,計算各節(jié)點之間的最短路徑。由此,根據(jù)本實施方式,能夠利用已經(jīng)計算出的最短路徑的信息,縮短計算其他最短路徑時的計算時間。另外,在對節(jié)點數(shù)量進行比較時,在存在下游節(jié)點數(shù)量相同的節(jié)點的情況下,路徑計算部如以規(guī)定順序(例如在利用字母示出節(jié)點ID的情況下為節(jié)點ID的字母順序)選擇這些節(jié)點。在圖9的例子中,在下游節(jié)點數(shù)量同樣最多為4個的節(jié)點D和節(jié)點E中,選擇節(jié)點ID的字母順序靠前的節(jié)點D。在以上說明的實施方式中,圖示的結(jié)構(gòu)只是一例,本發(fā)明不限于該結(jié)構(gòu)。
權(quán)利要求
1.一種計算裝置執(zhí)行的路徑計算順序決定方法,該計算裝置針對由多個節(jié)點構(gòu)成的網(wǎng)絡(luò),使用節(jié)點之間的已計算出的最短路徑來計算其他節(jié)點之間的最短路徑,其特征在于,所述計算裝置具有存儲單元和計算單元,該存儲單元存儲最短路徑組信息和拓撲信息,所述最短路徑組信息通過多個節(jié)點和該多個節(jié)點中的各節(jié)點之間的路徑來表示起點節(jié)點相同且終點節(jié)點不同的各節(jié)點之間的已計算出的最短路徑,所述拓撲信息表示所述多個節(jié)點的拓撲,所述路徑計算順序決定方法包括計算步驟,在該計算步驟中,所述計算單元按照在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于特定節(jié)點下游的節(jié)點的數(shù)量從多到少的順序,選擇所述多個節(jié)點中與所述起點節(jié)點不同的每一個所述特定節(jié)點,每次選擇所述特定節(jié)點時,使用其他節(jié)點之間的已計算出的最短路徑和所述拓撲信息, 計算以該選擇出的特定節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑。
2.根據(jù)權(quán)利要求1所述的路徑計算順序決定方法,其特征在于,所述計算步驟包括以下步驟檢索步驟,所述計算單元檢索在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于所述起點節(jié)點的單跳下游的全部節(jié)點,作為屬于所述特定節(jié)點的計算起點節(jié)點.選擇步驟,所述計算單元選擇所述計算起點節(jié)點中的特定計算起點節(jié)點,在所述各節(jié)點之間的已計算出的最短路徑中,位于所述特定計算起點節(jié)點下游的節(jié)點的數(shù)量最多;最短路徑計算步驟,所述計算單元使用其他節(jié)點之間的已計算出的最短路徑和所述拓撲信息,計算以所述特定計算起點節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑;以及反復(fù)步驟,所述計算單元反復(fù)進行如下一連串的動作,直到針對全部所述特定節(jié)點,以該特定節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑的計算結(jié)束為止,所述一連串的動作是,檢索在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于所述特定計算起點節(jié)點的單跳下游的全部節(jié)點,追加該檢索到的節(jié)點作為所述計算起點節(jié)點,然后,進行所述檢索步驟、所述選擇步驟和所述最短路徑計算步驟。
3.—種程序,該程序用于使存儲有最短路徑組信息和拓撲信息的計算機針對由多個節(jié)點構(gòu)成的網(wǎng)絡(luò)執(zhí)行計算步驟,所述最短路徑組信息通過多個節(jié)點和該多個節(jié)點的各節(jié)點之間的路徑來表示起點節(jié)點相同且終點節(jié)點不同的各節(jié)點之間的已計算出的最短路徑,所述拓撲信息表示所述多個節(jié)點的拓撲,在所述計算步驟中,按照在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于特定節(jié)點下游的節(jié)點的數(shù)量從多到少的順序,選擇所述多個節(jié)點中與所述起點節(jié)點不同的每一個所述特定節(jié)點,每次選擇所述特定節(jié)點時,使用其他節(jié)點之間的已計算出的最短路徑和所述拓撲信息,計算以該選擇出的特定節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑。
4.根據(jù)權(quán)利要求3所述的程序,其特征在于,所述計算步驟包括以下步驟檢索步驟,檢索在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于所述起點節(jié)點的單跳下游的全部節(jié)點,作為屬于所述特定節(jié)點的計算起點節(jié)點;選擇步驟,選擇所述計算起點節(jié)點中的特定計算起點節(jié)點,在所述各節(jié)點之間的已計算出的最短路徑中,位于所述特定計算起點節(jié)點下游的節(jié)點的數(shù)量最多;最短路徑計算步驟,使用其他節(jié)點之間的已計算出的最短路徑和所述拓撲信息,計算以所述特定計算起點節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑;以及反復(fù)步驟,反復(fù)進行如下一連串的動作,直到針對全部所述特定節(jié)點,以該特定節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑的計算結(jié)束為止, 所述一連串的動作是,檢索在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于所述特定計算起點節(jié)點的單跳下游的全部節(jié)點,追加該檢索到的節(jié)點作為所述計算起點節(jié)點,然后,進行所述檢索步驟、所述選擇步驟和所述最短路徑計算步驟。
5.一種計算裝置,該計算裝置針對由多個節(jié)點構(gòu)成的網(wǎng)絡(luò),使用節(jié)點之間的已計算出的最短路徑來計算其他節(jié)點之間的最短路徑,其特征在于,該計算裝置具有存儲單元,其存儲最短路徑組信息和拓撲信息,所述最短路徑組信息通過多個節(jié)點和該多個節(jié)點的各節(jié)點之間的路徑來表示起點節(jié)點相同且終點節(jié)點不同的各節(jié)點之間的已計算出的最短路徑,所述拓撲信息表示所述多個節(jié)點的拓撲;以及計算單元,其按照在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于特定節(jié)點下游的節(jié)點的數(shù)量從多到少的順序,選擇所述多個節(jié)點中與所述起點節(jié)點不同的每一個所述特定節(jié)點,每次選擇所述特定節(jié)點時,使用其他節(jié)點之間的已計算出的最短路徑和所述拓撲信息,計算以該選擇出的特定節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑。
6.根據(jù)權(quán)利要求5所述的計算裝置,其特征在于, 所述計算單元執(zhí)行以下處理檢索處理,檢索在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于所述起點節(jié)點的單跳下游的全部節(jié)點,作為屬于所述特定節(jié)點的計算起點節(jié)點;選擇處理,選擇所述計算起點節(jié)點中的特定計算起點節(jié)點,在所述各節(jié)點之間的已計算出的最短路徑中,位于所述特定計算起點節(jié)點下游的節(jié)點的數(shù)量最多;最短路徑計算處理,使用其他節(jié)點之間的已計算出的最短路徑和所述拓撲信息,計算以所述特定計算起點節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑;以及反復(fù)處理,反復(fù)進行如下一連串的動作,直到針對全部所述特定節(jié)點,以該特定節(jié)點為起點且以所述多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑的計算結(jié)束為止, 所述一連串的動作是,檢索在所述最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于所述特定計算起點節(jié)點的單跳下游的全部節(jié)點,追加該檢索到的節(jié)點作為所述計算起點節(jié)點,然后,進行所述檢索處理、所述選擇處理和所述最短路徑計算處理。
全文摘要
在本發(fā)明的計算裝置(1)進行的路徑計算順序決定方法中,針對由多個節(jié)點構(gòu)成的網(wǎng)絡(luò),存儲最短路徑組信息和拓撲信息,最短路徑組信息通過多個節(jié)點和該多個節(jié)點中的各節(jié)點之間的路徑來表示起點節(jié)點相同且終點節(jié)點不同的各節(jié)點之間的已計算出的最短路徑,拓撲信息表示多個節(jié)點的拓撲,按照在最短路徑組信息表示的各節(jié)點之間的已計算出的最短路徑中位于特定節(jié)點下游的節(jié)點的數(shù)量從多到少的順序,選擇多個節(jié)點中與起點節(jié)點不同的每一個特定節(jié)點,每次選擇特定節(jié)點時,使用其他節(jié)點之間的已計算出的最短路徑和拓撲信息,計算以該選擇出的特定節(jié)點為起點且以多個節(jié)點中的其他各節(jié)點為終點的各節(jié)點之間的最短路徑。
文檔編號H04L12/56GK102210128SQ20098014496
公開日2011年10月5日 申請日期2009年11月18日 優(yōu)先權(quán)日2008年11月19日
發(fā)明者巖田英明, 杉園幸司, 青木道宏 申請人:日本電信電話株式會社