亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

智能光網(wǎng)絡中路徑選擇的方法

文檔序號:7614204閱讀:182來源:國知局
專利名稱:智能光網(wǎng)絡中路徑選擇的方法
技術領域
本發(fā)明涉及智能光網(wǎng)絡自愈技術,特別涉及一種智能光網(wǎng)絡中路徑選擇的方法。
背景技術
基于網(wǎng)狀網(wǎng)(MESH)的結(jié)構,智能光網(wǎng)絡能夠提供多種業(yè)務保護和恢復策略,例如1+1專用保護、1∶N共享保護、預置路徑保護、完全重路由保護等。其中,1+1專用保護是保護強度最高的一種端對端業(yè)務保護方式。
1+1專用保護就是采用一條專用的路徑(保護路徑)來保護另外一條路徑(工作路徑)。在正常情況下,工作路徑和保護路徑上同時傳輸業(yè)務,業(yè)務方向的出節(jié)點選收工作路徑上的業(yè)務;當工作路徑發(fā)生故障時,業(yè)務方向的出節(jié)點自動切換到從保護路徑上接收業(yè)務。1+1專用保護通過在業(yè)務端點上建立工作路徑和保護路徑的子網(wǎng)連接保護(SNCP)組來實現(xiàn),業(yè)務倒換時間可以達到不大于20ms。為了避免保護路徑和工作路徑同時發(fā)生故障,要求保護路徑和工作路徑相互之間盡量分離,即兩條路徑盡量不經(jīng)過相同的鏈路。
在智能光網(wǎng)絡系統(tǒng)中,業(yè)務路徑的計算通常采用約束最短路徑優(yōu)先(CSPF)算法(即基本迪克斯特拉算法(Dijkstra))。CSPF算法在計算業(yè)務路徑時,首先判斷節(jié)點或鏈路是否滿足業(yè)務約束要求(如帶寬要求、保護類型要求、是否被排除等),然后在滿足約束要求的節(jié)點和鏈路中,選擇出由源節(jié)點到目的節(jié)點的最短路徑。CSPF算法計算出的最短路徑是所有可行路徑中路徑代價最小的一條。路徑代價是衡量路徑優(yōu)劣的一個數(shù)值,一般采用“路徑代價=路徑上所有鏈路的鏈路代價之和”來計算。鏈路代價表示業(yè)務通過該鏈路所花費的代價,它根據(jù)鏈路當前可用帶寬、鏈路長度等屬性而計算出來。
現(xiàn)有獲取1+1業(yè)務的兩條路徑的其中一種方法的過程如下(a)采用基本Dijkstra算法,計算源節(jié)點到目的節(jié)點的首條最短路徑(稱為主用路徑);(b)排除主用路徑上的所有鏈路,然后再次采用基本Dijkstra算法,計算源節(jié)點到目的節(jié)點的第二條最短路徑(稱為備用路徑)。然而,該方法只能獲取由源節(jié)點到目的節(jié)點的兩條鏈路完全分離的路徑,如果網(wǎng)絡拓撲中不存在鏈路完全分離的兩條路徑,則計算失敗;另外在某些網(wǎng)絡拓撲中,即使存在鏈路完全分離的兩條路徑,現(xiàn)有方法可能找不出這兩條路徑;在某些網(wǎng)絡拓撲中,該方法找出的兩條路徑不是最優(yōu)的,即這兩條路徑的路徑代價之和不是所有可行的兩條路徑中最小的。如圖1所示,該方法計算出節(jié)點A到節(jié)點D的1+1業(yè)務的主用路徑為A-B-C-D,其路徑代價為150;排除主用路徑上的鏈路后,由于節(jié)點A和節(jié)點D之間沒有連通的路徑,計算備用路徑失敗。而實際上,圖1的網(wǎng)絡拓撲中存在兩條鏈路完全分離的路徑A-E-C-D和A-B-F-D,其路徑代價分別為350和450。此外,基本Dijkstra算法不適用在具有負鏈路代價的網(wǎng)絡拓撲中獲取最短路徑。
針對圖1的“陷阱”拓撲,存在公知的技術獲取兩條分離的路徑。其中的一種技術的過程如下(a)采用基本Dijkstra算法,計算由源節(jié)點到目的節(jié)點的首條最短路徑(路徑一),如果計算失敗,則找不到滿足條件的兩條路徑,計算結(jié)束;(b)將路徑一上的所有反向鏈路的鏈路代價設置為原鏈路代價的-1倍,并將路徑一上的所有正向鏈路的設置為不可用;采用Bhandari改進Dijkstra算法,計算由源節(jié)點到目的節(jié)點的第二條最短路徑(路徑二),如果計算失敗,則找不到滿足條件的兩條路徑,計算結(jié)束;(c)檢查路徑二上所有正向鏈路,如果某條鏈路的鏈路代價為負值,則從路徑二和路徑一上刪除該鏈路及其反向鏈路,即刪除路徑一和路徑二上相重疊但通過方向相反的鏈路;(d)合并刪除鏈路后的路徑一和路徑二,找到1+1業(yè)務的兩條分離路徑。然而該方法獲取1+1業(yè)務的兩條路徑的方法存在的缺點是只能獲取由源節(jié)點到目的節(jié)點的兩條鏈路完全分離的路徑,如果網(wǎng)絡拓撲中不存在鏈路完全分離的兩條路徑,則計算失敗。例如,對于圖2的網(wǎng)絡拓撲,節(jié)點D到節(jié)點G之間只有一條雙向鏈路,即首節(jié)點A到末節(jié)點G之間不存在鏈路完全分離的兩條路徑,該方法獲取1+1業(yè)務的兩條路徑將失敗,而不能找到兩條鏈路盡量分離的最優(yōu)路徑。

發(fā)明內(nèi)容
本發(fā)明的目的在于,提供一種智能光網(wǎng)絡中路徑選擇的方法,以及一種智能光網(wǎng)絡中鏈路盡量分離的兩條最優(yōu)路徑選擇的方法,解決現(xiàn)有的智能光網(wǎng)絡中不能找到兩條鏈路盡量分離的最優(yōu)路徑的問題。
本發(fā)明的技術方案是,提供一種智能光網(wǎng)絡中路徑選擇的方法,包括以下步驟(a)將第一存儲單元和第二存儲單元清空,并將源節(jié)點放入第一存儲單元;(b)將第一存儲單元中相對于源節(jié)點路徑代價最小的節(jié)點以及對應路徑放入第二存儲單元;(c)若所述相對于源節(jié)點路徑代價最小的節(jié)點為目標節(jié)點,則執(zhí)行步驟(d),若所述相對于源節(jié)點路徑代價最小的節(jié)點不是目標節(jié)點,則選取滿足約束條件的所述節(jié)點的鄰居節(jié)點以及對應路徑放入第一存儲單元;(e)判斷第一存儲單元是否為空;(f)若第一存儲單元非空,則返回步驟(b);若所述第一存儲單元為空,則判斷目的節(jié)點是否在第二存儲單元中,若目的節(jié)點在第二存儲單元中,則第二存儲單元中的路徑就是最短路徑。
上述的智能光網(wǎng)絡中路徑選擇的方法中,步驟(c)還包括(c1)判斷依次判斷所述節(jié)點的鄰居節(jié)點是否滿足約束條件;(c2)若滿足條件的鄰居節(jié)點既不在第一存儲單元中,也不在第二存儲單元,則將所述鄰居節(jié)點放入第一存儲單元中;(c3)若滿足條件的鄰居節(jié)點在第一存儲單元中,則比較源節(jié)點到當前鄰居節(jié)點的新、舊路徑,若新路徑的代價小于舊路徑,則將新路徑放入所述第一存儲單元,同時刪去舊路徑;(c4)若滿足條件的鄰居節(jié)點在第二存儲單元中,當所述鄰居節(jié)點不在源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上,且源節(jié)點到當前鄰居節(jié)點的新路徑的代價小于第一存儲單元中的源節(jié)點到當前鄰居節(jié)點的對應舊路徑,則將新路徑放入所述第一存儲單元和第二存儲單元,同時刪去舊路徑。
上述的智能光網(wǎng)絡中路徑選擇的方法中,所述步驟(c4)還包括以下步驟(c41)判斷當前鄰居節(jié)點是否位于由源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上;(c42)若當前鄰居節(jié)點位于由源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上,則放棄源節(jié)點到當前鄰居節(jié)點的新路徑;(c43)若當前鄰居節(jié)點不位于由源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上,則比較源節(jié)點到當前鄰居節(jié)點的新路徑及第一存儲單元中的源節(jié)點到當前鄰居節(jié)點的對應舊路徑,若新路徑的代價小于舊路徑,則將新路徑放入所述第一存儲單元和第二存儲單元,同時刪去舊路徑。
本發(fā)明還提供一種智能光網(wǎng)絡中路徑選擇的方法,包括以下步驟(a)采用基本Dijkstra算法,計算由源節(jié)點到目的節(jié)點的第一最短路徑;(b)將所述第一最短路徑上的所有反向鏈路代價取反,并將所述第一最短路徑上的所有正向鏈路加上較大常數(shù);(c)采用以下步驟計算第二最短路徑(c1)將第一存儲單元和第二存儲單元清空,并將源節(jié)點放入第一存儲單元;(c2)將第一存儲單元中相對于源節(jié)點路徑代價最小的節(jié)點以及對應路徑放入第二存儲單元;(c3)若所述相對于源節(jié)點路徑代價最小的節(jié)點為目標節(jié)點,則執(zhí)行步驟(c4),若所述相對于源節(jié)點路徑代價最小的節(jié)點不是目標節(jié)點,則選取滿足約束條件的所述節(jié)點的鄰居節(jié)點以及對應路徑放入第一存儲單元;(c4)判斷第一存儲單元是否為空;(c5)若第一存儲單元非空,則返回步驟(c2);若所述第一存儲單元為空,則判斷目的節(jié)點是否在第二存儲單元中,若目的節(jié)點在第二存儲單元中,則第二存儲單元中的路徑就是第二最短路徑;(d)刪除所述第一最短路徑及第二最短路徑上對應于第二最短路徑的負鏈路部分;(e)合并所述第一最短路徑和第二最短路徑的剩余鏈路,獲得兩條由源節(jié)點到目的節(jié)點的路徑;(f)恢復鏈路代價,重新計算所述的兩條路徑的路徑代價,以路徑代價較小的路徑作為最終的第一最短路徑,另外一條路徑作為最終的第二最短路徑。
上述的智能光網(wǎng)絡中路徑選擇的方法中,所述步驟(c3)包括以下步驟(c31)判斷依次判斷所述節(jié)點的鄰居節(jié)點是否滿足約束條件;(c32)若滿足條件的鄰居節(jié)點既不在第一存儲單元中,也不在第二存儲單元,則將所述鄰居節(jié)點放入第一存儲單元中;(c33)若滿足條件的鄰居節(jié)點在第一存儲單元中,則比較源節(jié)點到當前鄰居節(jié)點的新、舊路徑,若新路徑的代價小于舊路徑,則將新路徑放入所述第一存儲單元,同時刪去舊路徑;(c34)若滿足條件的鄰居節(jié)點在第二存儲單元中,當所述鄰居節(jié)點不在源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上,且源節(jié)點到當前鄰居節(jié)點的新路徑的代價小于第一存儲單元中的源節(jié)點到當前鄰居節(jié)點的對應舊路徑,則將新路徑放入所述第一存儲單元和第二存儲單元,同時刪去舊路徑。
上述的智能光網(wǎng)絡中路徑選擇的方法中,所述步驟(c34)還包括以下步驟(c341)判斷當前鄰居節(jié)點是否位于由源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上;(c342)若當前鄰居節(jié)點位于由源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上,則放棄源節(jié)點到當前鄰居節(jié)點的新路徑;(c343)若當前鄰居節(jié)點不位于由源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上,則比較源節(jié)點到當前鄰居節(jié)點的新路徑及第一存儲單元中的源節(jié)點到當前鄰居節(jié)點的對應舊路徑,若新路徑的代價小于舊路徑,則將新路徑放入所述第一存儲單元和第二存儲單元,同時刪去舊路徑。
上述的智能光網(wǎng)絡中路徑選擇的方法中,步驟(d)還包括判斷所述第二最短路徑上鏈路代價大于所述較大常數(shù)的鏈路是否具有約束條件兩倍以上的可用帶寬。若所述第二最短路徑上鏈路代價大于所述較大常數(shù)的鏈路不具有約束條件兩倍以上的可用帶寬,則當前網(wǎng)絡中不存在兩條可行的路徑。
本發(fā)明的智能光網(wǎng)絡中路徑選擇的方法,通過對基本Dijkstra算法進行改進,從而可在具有負鏈路代價的網(wǎng)絡拓撲中獲取最短路徑。此外,本發(fā)明還可獲取1+1業(yè)務的兩條鏈路盡量分離的較優(yōu)路徑。


圖1是第一實施例的網(wǎng)元拓撲結(jié)構示意圖;圖2是第二實施例的網(wǎng)元拓撲結(jié)構示意圖;圖3是智能光網(wǎng)絡的分層體系結(jié)構示意圖;圖4是本發(fā)明的智能光網(wǎng)絡中路徑選擇的方法中獲取最短路徑的流程圖;圖5是本發(fā)明的智能光網(wǎng)絡中路徑選擇的方法中獲取工作路徑與保護路徑的流程圖;圖6是針對圖2采用基本Dijkstra算法獲得的第一路徑的示意圖;圖7是圖2的網(wǎng)元拓撲結(jié)構經(jīng)過取反和加常數(shù)后的示意圖。
圖8是針對圖3采用圖4所示的方法獲取的第二路徑的示意圖;
圖9是對圖6進行鏈路刪除后剩余的鏈路的示意圖;圖10是對圖7進行鏈路刪除后剩余的鏈路的示意圖;圖11是針對圖2最終獲取的鏈路盡量分離的兩條最優(yōu)路徑的示意圖。
具體實施例方式
如圖3所示,智能光網(wǎng)絡由三個邏輯平面,即傳送平面13、控制平面12和管理平面11構成。控制平面12與傳送平面13分別與管理平面11連接,而控制平面12與傳送平面13之間通過連接控制接口14連接。
傳送平面13由作為交換實體的傳送網(wǎng)網(wǎng)元131組成,所述網(wǎng)元131通過子網(wǎng)連接132相互連接。傳送平面13主要完成連接/拆線、交換(選路)和傳送等功能,以提供從一個端點到另一個端點的雙向或單向信息傳送,以及一些控制和網(wǎng)絡管理信息。
控制平面12實現(xiàn)智能光網(wǎng)絡內(nèi)的呼叫控制和連接控制等功能??刂破矫?2由信令網(wǎng)絡支持,由多種功能部件組成,包括一組通信實體和控制單元122(如光連接控制器)及相應的內(nèi)部網(wǎng)絡節(jié)點接口124。通信實體和控制單元122分別組成多個管理域121,管理域121之間通過外部網(wǎng)絡節(jié)點接口124相互連接。通信實體和控制單元122主要用于調(diào)用傳送網(wǎng)的資源,以提供與連接的建立、維持和拆除(釋放網(wǎng)絡資源)有關的功能。這些功能中最主要的就是信令功能和路由功能。此外,控制平面12還通過用戶網(wǎng)絡接口與請求代理16連接。
管理平面11對控制平面12和傳送平面13進行管理,在提供對光傳送網(wǎng)及網(wǎng)元131進行管理的同時,實現(xiàn)網(wǎng)絡操作系統(tǒng)與網(wǎng)元131之間更加高效的通信功能。
如圖4所示,為本發(fā)明的獲取最短路徑的流程圖。在本實施例中,控制平面12在計算兩節(jié)點間最佳路徑時使用到最短路徑樹(PATHS)和潛在下一跳集合(TENT)兩個數(shù)據(jù)庫,其中,PATHS中保存了由源節(jié)點到達其他節(jié)點的最短路徑的信息,而TENT中保存在找到最短路徑之前的嘗試節(jié)點的信息。在計算的初始狀態(tài),兩個數(shù)據(jù)庫都為空。
首先,控制平面12清空PATHS和TENT,并將源節(jié)點放入TENT,并設置源節(jié)點路徑代價為0(步驟S41)。然后,在TENT中選取相對于源節(jié)點的路徑代價最小的節(jié)點以及對應的路徑放入PATHS(步驟S42),并判斷放入PATHS的節(jié)點(當前節(jié)點)是否為目的節(jié)點(步驟S43)。如果當前節(jié)點是目的節(jié)點,則執(zhí)行步驟S45(將在以下描述)。
如果當前節(jié)點不是目的節(jié)點,則執(zhí)行步驟S44,按照規(guī)則逐個檢查剛加入PATHS中的當前節(jié)點的鄰居節(jié)點(稱為當前鄰居節(jié)點)及到達該鄰居節(jié)點的鏈路(稱為當前鏈路)是否滿足約束條件(如帶寬等)。如果不滿足,則當前鏈路和當前鄰居節(jié)點被放棄;如果滿足,則控制平面12計算通過當前鏈路到達當前鄰居節(jié)點的路徑代價(稱為當前路徑代價),并根據(jù)如下方法判斷是否將當前鄰居節(jié)點以及對應路徑加入TENT中A.如果當前鄰居節(jié)點已存在于TENT中,則表示存在到達該鄰居節(jié)點的新路徑,控制平面12比較當前路徑代價與TENT中的舊路徑的路徑代價大小。如果當前路徑代價小于舊路徑的路徑代價,則用新路徑代替舊路徑,即以當前鏈路和當前路徑代價更新保存于TENT中的到達當前鄰居節(jié)點的鏈路和路徑代價;否則,放棄新路徑,保留TENT中的舊路徑。
B.如果當前鄰居節(jié)點已存在于PATHS中,則檢查當前鄰居節(jié)點是否位于由源節(jié)點到當前節(jié)點的路徑上。如果當前鄰居節(jié)點位于由源節(jié)點到當前節(jié)點的路徑上,表示通過當前鏈路到達當前鄰居節(jié)點的路徑會形成環(huán)路,當前鏈路不被放棄;否則,表示存在到達該鄰居節(jié)點的新路徑,然后比較當前路徑代價與TENT中的舊路徑的路徑代價大小,如果當前路徑代價小于舊路徑的路徑代價,則用新路徑代替舊路徑,即以當前鏈路和當前路徑代價更新保存于TENT中的到達當前鄰居節(jié)點的鏈路和路徑代價,并更新PATHS中當前鄰居節(jié)點的子樹上所有節(jié)點的路徑代價;否則,忽略新路徑,保留TENT中的舊路徑。
C.如果當前鄰居節(jié)點既不在PATHS中也不在TENT中,則將當前鄰居節(jié)點加入TENT中。
當前節(jié)點的所有鄰居節(jié)點按照上述方法加入TENT或放棄后,控制平面12判斷當前TENT是否為空(步驟S45)。如果TENT不為空,則返回步驟S42。如果TENT為空,則控制平面12判斷目的節(jié)點是否在PATHS中步驟S46。
如果目的節(jié)點在PATHS中,則計算成功,找到由源節(jié)點到目的節(jié)點的最短路徑為PATHS中的路徑(步驟S48);如果目的節(jié)點不在PATHS中,則計算失敗,不存在由源節(jié)點到目的節(jié)點的最短路徑(步驟S47)。
當然,上述的數(shù)據(jù)庫并不局限于TENT以及PATHS,只要是兩個不同存儲單元即可。
如圖5所示,是本發(fā)明的智能光網(wǎng)絡中獲取鏈路盡量分離的兩條最優(yōu)路徑的流程圖。以下結(jié)合圖2、圖6-圖10介紹本發(fā)明的方法。
首先,采用基本Dijkstra算法,計算由源節(jié)點到目的節(jié)點的首條最短路徑(第一路徑),結(jié)果如圖6所示,即最短路徑A-B-C-D-G(步驟S51)。將第一路徑上的所有反向鏈路的鏈路代價設置為原鏈路代價的-1倍,并將第一路徑上的所有正向鏈路的鏈路代價增加一個大常數(shù)(定義為MAX_METRIC,在本實施例中可以為300000),結(jié)果如圖7所示(步驟S52)。然后采用圖4所示的最短路徑獲取方法,計算由源節(jié)點到目的節(jié)點的第二條最短路徑(第二路徑),結(jié)果如圖8所示,即A-E-C-B-F-D-G(步驟S53)。
檢查第二路徑上所有正向鏈路,并判斷第二路徑上是否存在代價為負值的鏈路,在本實施例中B-C鏈路為負值(步驟S54)。如果某條鏈路的鏈路代價為負值,則從第一路徑和第二路徑上刪除該鏈路及其反向鏈路,即刪除第一路徑和第二路徑上相重疊但通過方向相反的鏈路。在本實施例中刪除鏈路B-C,刪除鏈路后的結(jié)果如圖9和圖10所示。如果第二路徑上某條正向鏈路的鏈路代價大于MAX_METRIC(本實施例中為鏈路D-G),則檢查該鏈路及其反向鏈路是否具有兩倍于需求帶寬或以上的可用帶寬,如果沒有,則表示找不到滿足條件的兩條路徑,計算結(jié)束;否則,表示最終找到的兩條路徑上存在重合的鏈路,不是鏈路完全分離的兩條路徑(步驟S55)。
然后合并刪除鏈路后的第一路徑和第二路徑,結(jié)果如圖11所示,最終獲得1+1業(yè)務的兩條最優(yōu)路徑,本實施例中兩條鏈路分別為A-E-C-D-G和A-B-F-D-G(步驟S56)。恢復鏈路的鏈路代價,分別計算兩條路徑的路徑代價,本實施例中兩路徑的代價分別為400和500,并將路徑代價較小的路徑設置為主用路徑,而路徑代價較大的路徑設置為備用路徑(步驟S57)。
上述步驟S52中,要求選取的MAX_METRIC大于可能的最大路徑代價。步驟2)的作用是使得在計算第二條路徑時,盡量優(yōu)先選擇路徑一上的反向鏈路,而盡量不選擇路徑一的正向鏈路。(鏈路方向是相對于路徑而言,由源節(jié)點到目的節(jié)點的方向為正向)。
上述方法通過加大第一路徑的正向鏈路的鏈路代價而允許兩條路徑通過同一鏈路,從而在僅存在一條鏈路的情況下可找到兩條盡量分離的1+1業(yè)務的兩條路徑。
權利要求
1.一種智能光網(wǎng)絡中路徑選擇的方法,其特征在于,包括以下步驟(a)將第一存儲單元和第二存儲單元清空,并將源節(jié)點放入第一存儲單元;(b)將第一存儲單元中相對于源節(jié)點路徑代價最小的節(jié)點以及對應路徑放入第二存儲單元;(c)若所述相對于源節(jié)點路徑代價最小的節(jié)點為目標節(jié)點,則執(zhí)行步驟(d),若所述相對于源節(jié)點路徑代價最小的節(jié)點不是目標節(jié)點,則選取滿足約束條件的所述節(jié)點的鄰居節(jié)點以及對應路徑放入第一存儲單元;(d)判斷第一存儲單元是否為空;(e)若第一存儲單元非空,則返回步驟(b);若所述第一存儲單元為空,則判斷目的節(jié)點是否在第二存儲單元中,若目的節(jié)點在第二存儲單元中,則第二存儲單元中的路徑就是最短路徑。
2.根據(jù)權利要求1所述的智能光網(wǎng)絡中路徑選擇的方法,其特征在于,步驟(c)還包括(c1)依次判斷所述節(jié)點的鄰居節(jié)點是否滿足約束條件;(c2)若滿足條件的鄰居節(jié)點既不在第一存儲單元中,也不在第二存儲單元,則將所述鄰居節(jié)點放入第一存儲單元中;(c3)若滿足條件的鄰居節(jié)點在第一存儲單元中,則比較源節(jié)點到當前鄰居節(jié)點的新、舊路徑,若新路徑的代價小于舊路徑,則將新路徑放入所述第一存儲單元,同時刪去舊路徑;(c4)若滿足條件的鄰居節(jié)點在第二存儲單元中,當所述鄰居節(jié)點不在源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上,且源節(jié)點到當前鄰居節(jié)點的新路徑的代價小于第一存儲單元中的源節(jié)點到當前鄰居節(jié)點的對應日路徑,則將新路徑放入所述第一存儲單元和第二存儲單元,同時刪去舊路徑。
3.根據(jù)權利要求1所述的智能光網(wǎng)絡中路徑選擇的方法,其特征在于,所述步驟(c4)還包括以下步驟(c41)判斷當前鄰居節(jié)點是否位于由源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上;(c42)若當前鄰居節(jié)點位于由源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上,則放棄源節(jié)點到當前鄰居節(jié)點的新路徑;(c43)若當前鄰居節(jié)點不位于由源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上,則比較源節(jié)點到當前鄰居節(jié)點的新路徑及第一存儲單元中的源節(jié)點到當前鄰居節(jié)點的對應舊路徑,若新路徑的代價小于舊路徑,則將新路徑放入所述第一存儲單元和第二存儲單元,同時刪去舊路徑。
4.一種智能光網(wǎng)絡中路徑選擇的方法,其特征在于,包括以下步驟(a)采用基本Dijkstra算法,計算由源節(jié)點到目的節(jié)點的第一最短路徑;(b)將所述第一最短路徑上的所有反向鏈路代價取反,并將所述第一最短路徑上的所有正向鏈路加上較大常數(shù);(c)采用以下步驟計算第二最短路徑(c1)將第一存儲單元和第二存儲單元清空,并將源節(jié)點放入第一存儲單元;(c2)將第一存儲單元中相對于源節(jié)點路徑代價最小的節(jié)點以及對應路徑放入第二存儲單元;(c3)若所述相對于源節(jié)點路徑代價最小的節(jié)點為目標節(jié)點,則執(zhí)行步驟(c4),若所述相對于源節(jié)點路徑代價最小的節(jié)點不是目標節(jié)點,則選取滿足約束條件的所述節(jié)點的鄰居節(jié)點以及對應路徑放入第一存儲單元;(c4)判斷第一存儲單元是否為空;(c5)若第一存儲單元非空,則返回步驟(c2);若所述第一存儲單元為空,則判斷目的節(jié)點是否在第二存儲單元中,若目的節(jié)點在第二存儲單元中,則第二存儲單元中的路徑就是第二最短路徑;(d)刪除所述第一最短路徑及第二最短路徑上對應于第二最短路徑的負鏈路部分;(e)合并所述第一最短路徑和第二最短路徑的剩余鏈路,獲得兩條由源節(jié)點到目的節(jié)點的路徑;(f)恢復鏈路代價,重新計算所述的兩條路徑的路徑代價,以路徑代價較小的路徑作為最終的第一最短路徑,另外一條路徑作為最終的第二最短路徑。
5.根據(jù)權利要求4所述的智能光網(wǎng)絡中路徑選擇的方法,其特征在于,所述步驟(c3)包括以下步驟(c31)判斷依次判斷所述節(jié)點的鄰居節(jié)點是否滿足約束條件;(c32)若滿足條件的鄰居節(jié)點既不在第一存儲單元中,也不在第二存儲單元,則將所述鄰居節(jié)點放入第一存儲單元中;(c33)若滿足條件的鄰居節(jié)點在第一存儲單元中,則比較源節(jié)點到當前鄰居節(jié)點的新、舊路徑,若新路徑的代價小于舊路徑,則將新路徑放入所述第一存儲單元,同時刪去舊路徑;(c34)若當前鄰居節(jié)點不位于由源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上,則比較源節(jié)點到當前鄰居節(jié)點的新路徑及第一存儲單元中的源節(jié)點到當前鄰居節(jié)點的對應舊路徑,若新路徑的代價小于舊路徑,則將新路徑放入所述第一存儲單元和第二存儲單元,同時刪去舊路徑。
6.根據(jù)權利要求4所述的智能光網(wǎng)絡中路徑選擇的方法,其特征在于,所述步驟(c34)包括以下步驟(c341)判斷當前鄰居節(jié)點是否位于由源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上;(c342)若當前鄰居節(jié)點位于由源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上,則放棄源節(jié)點到當前鄰居節(jié)點的新路徑;(c343)若當前鄰居節(jié)點不位于由源節(jié)點到所述相對于源節(jié)點路徑代價最小的節(jié)點的最短路徑上,則比較源節(jié)點到當前鄰居節(jié)點的新路徑及第一存儲單元中的源節(jié)點到當前鄰居節(jié)點的對應舊路徑,若新路徑的代價小于舊路徑,則將新路徑放入所述第一存儲單元和第二存儲單元,同時刪去舊路徑。
7.根據(jù)權利要求4所述的智能光網(wǎng)絡中路徑選擇的方法,其特征在于,步驟(d)還包括判斷所述第二最短路徑上鏈路代價大于所述較大常數(shù)的鏈路是否具有約束條件兩倍以上的可用帶寬,若所述第二最短路徑上鏈路代價大于所述較大常數(shù)的鏈路不具有約束條件兩倍以上的可用帶寬,則當前網(wǎng)絡中不存在兩條可行的路徑。
全文摘要
一種智能光網(wǎng)絡中路徑選擇的方法,包括以下步驟(a)將第一存儲單元和第二存儲單元清空,并將源節(jié)點放入第一存儲單元;(b)將第一存儲單元中相對于源節(jié)點路徑代價最小的節(jié)點及對應路徑放入第二存儲單元;(c)若所述節(jié)點為目標節(jié)點,則執(zhí)行步驟(d),否則選取滿足約束條件的鄰居節(jié)點及對應路徑放入第一存儲單元;(d)判斷第一存儲單元是否為空;(e)若第一存儲單元非空,返回步驟(b);否則判斷目的節(jié)點是否在第二存儲單元中,若目的節(jié)點在第二存儲單元中,則第二存儲單元中的路徑就是最短路徑。本發(fā)明的智能光網(wǎng)絡中路徑選擇的方法,通過對基本Dijkstra算法進行改進,從而可在具有負鏈路代價的網(wǎng)絡拓撲中獲取最短路徑。
文檔編號H04L29/04GK1825820SQ200510033310
公開日2006年8月30日 申請日期2005年2月22日 優(yōu)先權日2005年2月22日
發(fā)明者馮俊杰, 王彧, 吳文鑫 申請人:華為技術有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1