欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

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

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

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


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