本發(fā)明涉及一種運(yùn)行中間系統(tǒng)到中間系統(tǒng)路由協(xié)議(Intermediate System to Intermediate System,ISIS)路由協(xié)議的網(wǎng)絡(luò)設(shè)備,特別涉及一種ISIS協(xié)議跨層次路徑計(jì)算的方法及裝置。
背景技術(shù):
ISIS是一種動態(tài)的、基于鏈路狀態(tài)的內(nèi)部網(wǎng)關(guān)協(xié)議(Interior Gateway Protocol,IGP)。ISIS協(xié)議通過hello報(bào)文交互協(xié)商建立鄰居后,每一個(gè)中間系統(tǒng)(Intermediate System,IS)都產(chǎn)生鏈路狀態(tài)協(xié)議數(shù)據(jù)包(Link-State Packet,LSP)描述本IS的鏈路狀態(tài)信息發(fā)送到網(wǎng)絡(luò)中,并且也會存儲網(wǎng)絡(luò)拓?fù)渖纤蠭S設(shè)備發(fā)送過來的LSP,形成鏈路狀態(tài)數(shù)據(jù)庫(Link State DataBase,LSDB)。在支持流量工程(Traffic Engineer,TE)中,ISIS使用的LSDB稱為流量工程鏈路狀態(tài)數(shù)據(jù)庫(Traffic Engineer-Link State DataBase,TE-LSDB),依據(jù)TE-LSDB通過受限最短路徑優(yōu)先算法(Constrained Shortest Path First,CSPF)計(jì)算出到達(dá)目的節(jié)點(diǎn)的最佳隧道路徑。
基于流量工程的資源預(yù)留協(xié)議(Resource Reservation Protocol-Traffic Engineer,RSVP-TE)是一種基于多協(xié)議標(biāo)簽交換(Multi-Protocol Label Switching,MPLS)的流量工程技術(shù)。通過信息發(fā)布、路徑計(jì)算、信令交互(RSVP-TE)、流量的轉(zhuǎn)發(fā)四個(gè)部件實(shí)現(xiàn)業(yè)務(wù)流量在TE隧道中的轉(zhuǎn)發(fā)。
RSVP-TE隧道的計(jì)算就是依賴于ISIS的TE-LSDB進(jìn)行計(jì)算,在路徑計(jì)算的過程中大致分為兩類,一類是動態(tài)算路,一類是通過配置的顯式路徑算路。動態(tài)算路是一種沒有其他約束條件的一種算路機(jī)制,只要一條路徑能夠滿足隧道建立所需要的資源即可。如果是動態(tài)算路,只會在頭節(jié)點(diǎn)提交一次CSPF計(jì)算,算出從隧道頭節(jié)點(diǎn)到隧道尾節(jié)點(diǎn)的完整路徑。顯式路徑算路是一種具有配置約束的一種算路機(jī)制,可以配置隧道路徑必須排除某個(gè)接口或者節(jié)點(diǎn),可以配置隧道必須嚴(yán)格或者松散的經(jīng)過某個(gè)接口或者節(jié)點(diǎn)。如果是顯式路徑算路,隧道頭節(jié)點(diǎn)提交 CSPF計(jì)算時(shí),算出的是從隧道頭節(jié)點(diǎn)到顯示路徑中的第一個(gè)松散點(diǎn)的路徑(如果顯示路徑中都是嚴(yán)格的配置,那么算出來的也是從隧道頭節(jié)點(diǎn)到隧道尾節(jié)點(diǎn)的完整路徑),當(dāng)PATH消息到達(dá)第一個(gè)松散點(diǎn)后,會再次進(jìn)行CSPF計(jì)算,算到下一個(gè)松散點(diǎn),這樣最終計(jì)算到隧道尾節(jié)點(diǎn)。
ISIS協(xié)議是一種分層次(level)路由協(xié)議,分為level 1和level 2兩個(gè)層次:level 2形成的域?yàn)楣歉捎?,形成的ISIS拓?fù)錇閘evel 2拓?fù)洌籰evel 2網(wǎng)絡(luò)連接到網(wǎng)絡(luò)上的多個(gè)區(qū)域(area),每個(gè)area形成的ISIS拓?fù)錇閘evel 1拓?fù)洹C總€(gè)level拓?fù)洫?dú)立進(jìn)行鄰居建立和LSP洪泛,形成各自的TE-LSDB。因此,各個(gè)area形成的多個(gè)level 1拓?fù)湟呀?jīng)骨干域的level 2拓?fù)涠枷嗷ジ綦x,TE-LSDB也相互隔離,相互不知道其他域或區(qū)域的鏈路狀態(tài)信息。如果RSVP-TE要求計(jì)算一條在ISIS協(xié)議拓?fù)渲锌鐚哟?level)的隧道路徑,如:隧道路徑第一部分在level 1中,第二部分在level 2中。那么,并不能采用動態(tài)算路從處于level 1中的頭節(jié)點(diǎn)算至處于level 2中的尾節(jié)點(diǎn)。這時(shí),通常采用人為設(shè)置的顯式路徑算路,配置一個(gè)松散節(jié)點(diǎn)到level 1和level 2邊界的同時(shí)支持level 1和level 2的路由器,這樣,從處于level 1中的頭節(jié)點(diǎn)使用level 1的TE-LSDB算至這個(gè)松散節(jié)點(diǎn),再由松散節(jié)點(diǎn)使用level 2的TE-LSDB算至處于level 2中的尾節(jié)點(diǎn)。
此時(shí),存在如下問題:
1、網(wǎng)絡(luò)中這樣的隧道路徑非常龐大,一一配置符合條件的松散節(jié)點(diǎn),配置和維護(hù)人力成本太高;
2、人為配置容易出錯;
3、當(dāng)level 1和level 2邊界的同時(shí)支持level 1和level 2的路由器存在多個(gè)時(shí),人力配置可能選擇不到最優(yōu)的隧道路徑松散節(jié)點(diǎn)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種IS-IS協(xié)議跨層次路徑計(jì)算的方法及裝置,能更好地解決在不需要人力干預(yù)的情況下自動計(jì)算可以滿足要求的最優(yōu)的跨層次隧道路徑的問題。
根據(jù)本發(fā)明的一個(gè)方面,提供了一種IS-IS協(xié)議跨層次路徑計(jì)算的方法,包 括:
同時(shí)處于兩個(gè)層次的中間網(wǎng)絡(luò)設(shè)備將一個(gè)層次的路由標(biāo)識數(shù)據(jù)泄露至另一個(gè)層次的所有網(wǎng)絡(luò)設(shè)備;
當(dāng)兩個(gè)層次中任意一個(gè)層次的網(wǎng)絡(luò)設(shè)備作為源節(jié)點(diǎn)收到路徑計(jì)算請求時(shí),利用所述請求中的目的地路由標(biāo)識數(shù)據(jù),確定是否進(jìn)行跨層次路徑計(jì)算;
若確定進(jìn)行跨層次路徑計(jì)算,則利用所述請求中的目的地路由標(biāo)識數(shù)據(jù),確定用于跨層次路徑計(jì)算的松散節(jié)點(diǎn);
利用所確定的松散節(jié)點(diǎn),進(jìn)行跨層次路徑計(jì)算。
優(yōu)選地,所述的同時(shí)處于兩個(gè)層次的中間網(wǎng)絡(luò)設(shè)備將一個(gè)層次的路由標(biāo)識數(shù)據(jù)泄露至另一個(gè)層次的所有網(wǎng)絡(luò)設(shè)備的步驟包括:
同時(shí)處于兩個(gè)層次的中間網(wǎng)絡(luò)設(shè)備將一個(gè)層次的路由標(biāo)識數(shù)據(jù)添加至另一個(gè)層次的鏈路狀態(tài)數(shù)據(jù)包中,并以洪泛方式將所述鏈路狀態(tài)數(shù)據(jù)包泄露至另一個(gè)層次。
優(yōu)選地,在源節(jié)點(diǎn)收到路徑計(jì)算請求之前,還包括:
所述源節(jié)點(diǎn)接收中間網(wǎng)絡(luò)設(shè)備以洪泛方式泄露的鏈路狀態(tài)數(shù)據(jù)包;
將所述鏈路狀態(tài)數(shù)據(jù)包中的路由標(biāo)識數(shù)據(jù)標(biāo)識為泄露的路由標(biāo)識數(shù)據(jù),保存至其鏈路狀態(tài)協(xié)議數(shù)據(jù)庫。
優(yōu)選地,所述的利用所述請求中的目的地路由標(biāo)識數(shù)據(jù),確定是否進(jìn)行跨層次路徑計(jì)算的步驟包括:
所述源節(jié)點(diǎn)通過查找其鏈路狀態(tài)協(xié)議數(shù)據(jù)庫,判斷所述路徑計(jì)算請求中的目的地路由標(biāo)識數(shù)據(jù)是否是泄露的路由標(biāo)識數(shù)據(jù);
若判斷所述目的地路由標(biāo)識數(shù)據(jù)是泄露的路由標(biāo)識數(shù)據(jù),則確定進(jìn)行跨層次路徑計(jì)算。
優(yōu)選地,所述的利用所述請求中的目的地路由標(biāo)識數(shù)據(jù),確定用于跨層次路徑計(jì)算的松散節(jié)點(diǎn)的步驟包括:
所述源節(jié)點(diǎn)查找泄露所述路由標(biāo)識數(shù)據(jù)的中間網(wǎng)絡(luò)設(shè)備,并將所找到的中間網(wǎng)絡(luò)設(shè)備確定為松散節(jié)點(diǎn)。
根據(jù)本發(fā)明的另一方面,提供了一種IS-IS協(xié)議跨層次路徑計(jì)算的裝置,包括:
泄露模塊,設(shè)置在同時(shí)處于兩個(gè)層次的中間網(wǎng)絡(luò)設(shè)備,用于將一個(gè)層次的路由標(biāo)識數(shù)據(jù)泄露至另一個(gè)層次的所有網(wǎng)絡(luò)設(shè)備;
跨層次確定模塊,當(dāng)其所在的處于兩個(gè)層次中任意一個(gè)層次的網(wǎng)絡(luò)設(shè)備作為源節(jié)點(diǎn)收到路徑計(jì)算請求時(shí),利用所述請求中的目的地路由標(biāo)識數(shù)據(jù),確定是否進(jìn)行跨層次路徑計(jì)算;
松散節(jié)點(diǎn)確定模塊,用于在確定進(jìn)行跨層次路徑計(jì)算時(shí),利用所述請求中的目的地路由標(biāo)識數(shù)據(jù),確定用于跨層次路徑計(jì)算的松散節(jié)點(diǎn);
路徑計(jì)算模塊,用于利用所確定的松散節(jié)點(diǎn),進(jìn)行跨層次路徑計(jì)算。
優(yōu)選地,所述泄露模塊將一個(gè)層次的路由標(biāo)識數(shù)據(jù)添加至另一個(gè)層次的鏈路狀態(tài)數(shù)據(jù)包中,并以洪泛方式將所述鏈路狀態(tài)數(shù)據(jù)包泄露至另一個(gè)層次。
優(yōu)選地,還包括:
鏈路狀態(tài)協(xié)議數(shù)據(jù)庫,用于在收到路徑計(jì)算請求之前,保存所述泄露模塊泄露的鏈路狀態(tài)數(shù)據(jù)包中的路由標(biāo)識數(shù)據(jù),并將其標(biāo)識為泄露的路由標(biāo)識數(shù)據(jù)。
優(yōu)選地,所述跨層次確定模塊通過查找其鏈路狀態(tài)協(xié)議數(shù)據(jù)庫,判斷所述路徑計(jì)算請求中的目的地路由標(biāo)識數(shù)據(jù)是否是泄露的路由標(biāo)識數(shù)據(jù),若判斷所述目的地路由標(biāo)識數(shù)據(jù)是泄露的路由標(biāo)識數(shù)據(jù),則確定進(jìn)行跨層次路徑計(jì)算。
優(yōu)選地,所述松散節(jié)點(diǎn)確定模塊查找泄露所述路由標(biāo)識數(shù)據(jù)的中間網(wǎng)絡(luò)設(shè)備,并將所找到的中間網(wǎng)絡(luò)設(shè)備確定為松散節(jié)點(diǎn)。
與現(xiàn)有技術(shù)相比較,本發(fā)明的有益效果在于:
1、隧道路徑可以自動進(jìn)行跨層次的計(jì)算,不需要人為配置松散路徑,減少了人力配置成本;
2、由于網(wǎng)絡(luò)的變化,原有跨層次路徑計(jì)算,需要人工重新配置松散路徑,而使用本發(fā)明,跨層次的隧道路徑可以自動適應(yīng)網(wǎng)絡(luò)動態(tài)變化,重新計(jì)算滿足要求的跨層次隧道路徑,避免了人為配置出錯問題;
3、原有跨層次路徑計(jì)算,需要人工重新配置松散路徑,人工配置不一定是目前網(wǎng)絡(luò)的最優(yōu)路徑,而使用本發(fā)明后,路徑按照CSPF算法自動計(jì)算,可以計(jì)算滿足要求的跨層次最優(yōu)路徑。
附圖說明
圖1是本發(fā)明實(shí)施例提供的IS-IS協(xié)議跨層次路徑計(jì)算的方法原理框圖;
圖2是本發(fā)明實(shí)施例提供的IS-IS協(xié)議跨層次路徑計(jì)算的裝置框圖;
圖3是本發(fā)明實(shí)施例提供的泄漏TE router-id TLV圖;
圖4是本發(fā)明實(shí)施例提供的跨層次路徑計(jì)算拓?fù)鋱D。
具體實(shí)施方式
以下結(jié)合附圖對本發(fā)明的優(yōu)選實(shí)施例進(jìn)行詳細(xì)說明,應(yīng)當(dāng)理解,以下所說明的優(yōu)選實(shí)施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
圖1是本發(fā)明實(shí)施例提供的IS-IS協(xié)議跨層次路徑計(jì)算的方法原理框圖,如圖1所示,步驟包括:
步驟S101:同時(shí)處于兩個(gè)層次的中間網(wǎng)絡(luò)設(shè)備將一個(gè)層次的路由標(biāo)識數(shù)據(jù)泄露至另一個(gè)層次的所有網(wǎng)絡(luò)設(shè)備。
具體地說,同時(shí)處于兩個(gè)層次的中間網(wǎng)絡(luò)設(shè)備將一個(gè)層次的路由標(biāo)識數(shù)據(jù)添加至另一個(gè)層次的鏈路狀態(tài)數(shù)據(jù)包中,并以洪泛方式將所述鏈路狀態(tài)數(shù)據(jù)包泄露至另一個(gè)層次,以供另一個(gè)層次的網(wǎng)絡(luò)設(shè)備接收所述中間網(wǎng)絡(luò)設(shè)備以洪泛方式泄露的鏈路狀態(tài)數(shù)據(jù)包,并將所述鏈路狀態(tài)數(shù)據(jù)包中的路由標(biāo)識數(shù)據(jù)標(biāo)識為泄露的路由標(biāo)識數(shù)據(jù),保存至其鏈路狀態(tài)協(xié)議數(shù)據(jù)庫。其中,一個(gè)鏈路狀態(tài)數(shù)據(jù)包中可以攜帶一個(gè)層次的多個(gè)路由標(biāo)識數(shù)據(jù)。
步驟S102:當(dāng)兩個(gè)層次中任意一個(gè)層次的網(wǎng)絡(luò)設(shè)備作為源節(jié)點(diǎn)收到路徑計(jì)算請求時(shí),利用所述請求中的目的地路由標(biāo)識數(shù)據(jù),確定是否進(jìn)行跨層次路徑計(jì)算。
具體地說,所述源節(jié)點(diǎn)通過查找其鏈路狀態(tài)協(xié)議數(shù)據(jù)庫,判斷所述路徑計(jì)算請求中的目的地路由標(biāo)識數(shù)據(jù)是否是泄露的路由標(biāo)識數(shù)據(jù),若在鏈路狀態(tài)協(xié)議數(shù)據(jù)庫中找到目的地路由標(biāo)識數(shù)據(jù),且已標(biāo)識為泄露的路由標(biāo)識數(shù)據(jù),則說明所述目的地路由標(biāo)識數(shù)據(jù)對應(yīng)的網(wǎng)絡(luò)設(shè)備不是所述源節(jié)點(diǎn)所在層次的網(wǎng)絡(luò)設(shè)備,需要進(jìn)行跨層次路徑計(jì)算。
若在鏈路狀態(tài)協(xié)議數(shù)據(jù)庫中找到目的地路由標(biāo)識數(shù)據(jù),且已標(biāo)識為非泄露的路由標(biāo)識數(shù)據(jù),則說明所述目的地路由標(biāo)識數(shù)據(jù)對應(yīng)的網(wǎng)絡(luò)設(shè)備是所述源節(jié)點(diǎn)所在層次的網(wǎng)絡(luò)設(shè)備,直接進(jìn)行隧道路徑計(jì)算即可。
步驟S103:若確定進(jìn)行跨層次路徑計(jì)算,則利用所述請求中的目的地路由標(biāo)識數(shù)據(jù),確定用于跨層次路徑計(jì)算的松散節(jié)點(diǎn)。
具體地說,所述源節(jié)點(diǎn)查找泄露所述路由標(biāo)識數(shù)據(jù)的中間網(wǎng)絡(luò)設(shè)備,并將所找到的中間網(wǎng)絡(luò)設(shè)備確定為松散節(jié)點(diǎn)。
步驟S104:利用所確定的松散節(jié)點(diǎn),進(jìn)行跨層次路徑計(jì)算。
圖2是本發(fā)明實(shí)施例提供的IS-IS協(xié)議跨層次路徑計(jì)算的裝置框圖,如圖2所示,包括:設(shè)置在同時(shí)處于兩個(gè)層次的中間網(wǎng)絡(luò)設(shè)備的泄露模塊10、設(shè)置在兩個(gè)層次中任意一個(gè)層次的網(wǎng)絡(luò)設(shè)備的跨層次確定模塊20、松散節(jié)點(diǎn)確定模塊30和路徑計(jì)算模塊40。
泄露模塊10用于將一個(gè)層次的路由標(biāo)識數(shù)據(jù)泄露至另一個(gè)層次的所有網(wǎng)絡(luò)設(shè)備,具體地說,泄露模塊10將一個(gè)層次的路由標(biāo)識數(shù)據(jù)添加至另一個(gè)層次的鏈路狀態(tài)數(shù)據(jù)包中,并以洪泛方式將所述鏈路狀態(tài)數(shù)據(jù)包泄露至另一個(gè)層次。此時(shí),另一個(gè)層次的網(wǎng)絡(luò)設(shè)備接收所述中間網(wǎng)絡(luò)設(shè)備以洪泛方式泄露的鏈路狀態(tài)數(shù)據(jù)包,并將所述鏈路狀態(tài)數(shù)據(jù)包中的路由標(biāo)識數(shù)據(jù)標(biāo)識為泄露的路由標(biāo)識數(shù)據(jù),保存至其鏈路狀態(tài)協(xié)議數(shù)據(jù)庫,換句話說,網(wǎng)絡(luò)設(shè)備還包括鏈路狀態(tài)協(xié)議數(shù)據(jù)庫(圖中未示出),用于在收到路徑計(jì)算請求之前,保存所述泄露模塊10泄露的鏈路狀態(tài)數(shù)據(jù)包中的路由標(biāo)識數(shù)據(jù),并將其標(biāo)識為泄露的路由標(biāo)識數(shù)據(jù)。
跨層次確定模塊20在其所在的網(wǎng)絡(luò)設(shè)備作為源節(jié)點(diǎn)收到路徑計(jì)算請求時(shí),利用所述請求中的目的地路由標(biāo)識數(shù)據(jù),確定是否進(jìn)行跨層次路徑計(jì)算,具體地說,跨層次確定模塊20通過查找其鏈路狀態(tài)協(xié)議數(shù)據(jù)庫,判斷所述路徑計(jì)算請求中的目的地路由標(biāo)識數(shù)據(jù)是否是泄露的路由標(biāo)識數(shù)據(jù),若在鏈路狀態(tài)協(xié)議數(shù)據(jù)庫中找到目的地路由標(biāo)識數(shù)據(jù),且已標(biāo)識為泄露的路由標(biāo)識數(shù)據(jù),說明所述目的地路由標(biāo)識數(shù)據(jù)對應(yīng)的網(wǎng)絡(luò)設(shè)備不是所述源節(jié)點(diǎn)所在層次的網(wǎng)絡(luò)設(shè)備,此時(shí)確定需要進(jìn)行跨層次路徑計(jì)算;若在鏈路狀態(tài)協(xié)議數(shù)據(jù)庫中找到目的地路由標(biāo)識數(shù)據(jù),且已標(biāo)識為非泄露的路由標(biāo)識數(shù)據(jù),說明所述目的地路由標(biāo)識數(shù)據(jù)對應(yīng)的網(wǎng)絡(luò)設(shè)備是所述源節(jié)點(diǎn)所在層次的網(wǎng)絡(luò)設(shè)備,此時(shí)確定不需要進(jìn)行跨層次路徑計(jì)算,即直接進(jìn)行隧道路徑計(jì)算即可。
松散節(jié)點(diǎn)確定模塊30用于在確定進(jìn)行跨層次路徑計(jì)算時(shí),利用所述請求中的目的地路由標(biāo)識數(shù)據(jù),確定用于跨層次路徑計(jì)算的松散節(jié)點(diǎn),具體地說,松散 節(jié)點(diǎn)確定模塊30查找泄露所述路由標(biāo)識數(shù)據(jù)的中間網(wǎng)絡(luò)設(shè)備,并將所找到的中間網(wǎng)絡(luò)設(shè)備確定為松散節(jié)點(diǎn)。
路徑計(jì)算模塊,用于利用所確定的松散節(jié)點(diǎn),進(jìn)行跨層次路徑計(jì)算。
為使本發(fā)明的目的、技術(shù)方案和有益效果更加清楚,下面結(jié)合附圖3和4對本發(fā)明進(jìn)行詳細(xì)描述。
一、新增一種攜帶于LSP中的協(xié)議類型數(shù)據(jù)TLV(類型-長度-值)
圖3是本發(fā)明實(shí)施例提供的泄漏TE router-id TLV圖,如圖3所示,新增一種協(xié)議類型數(shù)據(jù)TLV,稱為TE router-id泄漏TLV,包括一個(gè)字節(jié)的類型,一個(gè)字節(jié)的長度,值包含多個(gè)TE router-id,每個(gè)TE router-id為6個(gè)字節(jié)。因此,長度字段中的長度為6×n,n表示值域中包含TE router-id的個(gè)數(shù)。
任何一個(gè)LSP報(bào)文中可以包含多個(gè)TE router-id泄漏TLV。
二、處理方式
1、生成方IS,如果設(shè)置level 1和level 2使能,同時(shí)設(shè)置了MPLS level 1和level 2功能打開,并且設(shè)置了TE router-id從Level 2泄漏到level 1,那么生成方IS將泄漏Level 2拓?fù)渲兴械腎S的TE router-id到Level 1中,并將泄漏的TE router-id放置于TE router-id泄漏TLV,TE router-id泄漏TLV添加至Level 1的LSP中,最后將LSP洪泛出去。Level 2拓?fù)渲兴械腎S的TE router-id通過對接收到的Level 2拓?fù)渲兴械腎S生成的LSP攜帶的router id TLV處理,提取其中保存的IS配置的TE router id。
2、同樣地,生成方IS,如果設(shè)置level 1和level 2使能,同時(shí)設(shè)置了MPLS level 1和level 2功能打開,并且設(shè)置了TE router-id從Level 1泄漏到level 2,那么生成方IS將泄漏Level 1拓?fù)渲兴械腎S的TE router-id到Level 2中,并將泄漏的TE router-id放置于TE router-id泄漏TLV,TE router-id泄漏TLV添加至Level 2的LSP中,最后將LSP洪泛出去。Level 1拓?fù)渲兴械腎S的TE router-id通過對接收到的Level 1拓?fù)渲兴械腎S生成的LSP攜帶的router id TLV處理,提取其中保存的IS配置的TE router id獲得。
3、計(jì)算方IS收到生成方IS發(fā)送過來的LSP,并且LSP中保存有TE router-id TLV,那么將TE router-id TLV中的TE router-id保存下來,并且標(biāo)識為非泄漏的TE router-id。這個(gè)非泄漏的TE router-id為生成方IS配置的TE router-id,作為在TE網(wǎng)絡(luò)中的唯一標(biāo)識,每一個(gè)IS都會配置一個(gè)TE router-id。
4、計(jì)算方IS收到生成方IS發(fā)送過來的LSP,并且LSP中保存有TE router-id泄漏TLV,那么將TE router-id泄漏TLV中的TE router-id保存下來,并且標(biāo)識為泄漏的TE router-id。這個(gè)泄漏的TE router-id是在生成方IS的LSP中存在,但不是生成方IS配置的TE router-id,不作為TE網(wǎng)絡(luò)中對這個(gè)生成方IS的唯一標(biāo)識,只是表示生成方IS所處level拓?fù)渲锌梢缘竭_(dá)這個(gè)TE router-id標(biāo)識的IS。
5、計(jì)算方IS收到RSVP的隧道路徑計(jì)算請求,需要判斷其目的地TE router-id存在情況,如果在計(jì)算方IS所在Level中可以找到對應(yīng)的TE router-id,并且是非泄漏的TE router-id,那么直接進(jìn)行隧道路徑的計(jì)算,計(jì)算過程中不需要做任何判斷,這種情況下可以直接計(jì)算到目的地。
6、計(jì)算方IS,收到RSVP的隧道路徑計(jì)算請求,需要判斷其目的地TE router-id存在情況,如果在計(jì)算方IS所在Level中可以找到對應(yīng)的TE router-id,并且是泄漏的TE router-id,那么進(jìn)行隧道路徑計(jì)算。計(jì)算到一個(gè)IS時(shí),判斷這個(gè)IS是否有泄漏的TE router-id為這個(gè)目的地TE router-id,如果沒有,計(jì)算方IS隧道路徑計(jì)算繼續(xù)進(jìn)行;如果有,計(jì)算方IS自動設(shè)置隧道路徑松散至這個(gè)IS的TE router-id,計(jì)算方IS隧道路徑計(jì)算結(jié)束。隨后,由RSVP將隧道建立至這個(gè)IS后,再次提交剩余隧道路徑計(jì)算最終到達(dá)目的地TE router-id。
概括地說,ISIS協(xié)議是一種分層次路由協(xié)議,分為level 1和level 2兩個(gè)層次,同時(shí)處于level 1和level 2的生成方IS,將一個(gè)level網(wǎng)絡(luò)拓?fù)渖汐@取的所有IS配置的非泄漏的router-id,填寫在一種新類型的TE router-id泄漏TLV中,并攜帶至另一level的LSP中,并在此level洪泛通告。計(jì)算方IS在一個(gè)level中進(jìn)行隧道路徑計(jì)算中,計(jì)算至一個(gè)level 1和level 2的生成方IS時(shí),查看本次計(jì)算的目的地是否為這個(gè)IS泄漏的TE router-id,如果是,自動設(shè)置這個(gè)IS設(shè)置的非泄漏的TE router-id為松散節(jié)點(diǎn)TE router-id,實(shí)現(xiàn)跨層次的隧道路徑計(jì)算。不僅消除了人為配置及其導(dǎo)致的不能動態(tài)適應(yīng)網(wǎng)絡(luò) 變化成功計(jì)算跨層次隧道路徑的弊端,同時(shí)可以根據(jù)當(dāng)前網(wǎng)絡(luò)狀態(tài)計(jì)算出跨層次的最優(yōu)隧道路徑。
圖4是本發(fā)明實(shí)施例提供的跨層次路徑計(jì)算拓?fù)鋱D,以下結(jié)合圖4,給出兩個(gè)具體實(shí)施例,以對本發(fā)明進(jìn)行進(jìn)一步說明。
實(shí)施例一:
如圖4所示,由R1、R2、R3、R4組成的網(wǎng)絡(luò),R1、R2、R3構(gòu)成一個(gè)區(qū)域,為一個(gè)Level 1區(qū)域,相互建立Level 1的鄰居關(guān)系,R2、R4建立Level 2的骨干區(qū)域,建立Level 2的鄰居關(guān)系。顯然R2處于Level 1區(qū)域中,同時(shí)也處于Level 2骨干區(qū)域中。R1、R2、R3、R4中間系統(tǒng)的TE router-id分別為1.1.1.1、2.2.2.2、3.3.3.3、4.4.4.4,作為在TE網(wǎng)絡(luò)中的唯一標(biāo)識。顯然,R1,R2,R3ISIS的level 1功能開啟,同時(shí)開啟MPLS的level 1功能。R2,R4ISIS的level2功能開啟,同時(shí)開啟MPLS的level2功能。R2為level 1/Level2的路由器,同時(shí)使能了level 1/Level2的MPLS功能。假設(shè)目前配置一條隧道從router-id1.1.1.1計(jì)算到達(dá)目的地為4.4.4.4,即從R1到達(dá)R4的隧道。
按照原有協(xié)議要求,R1所處層次為level 1,只擁有本區(qū)域level 1的LSP數(shù)據(jù)庫,即只擁有R2和R3本level 1的鏈路狀態(tài)信息。沒有R3和R4的level 2LSP數(shù)據(jù)庫,即沒有R2和R3不同level層次level 2的鏈路狀態(tài)信息。所以R1進(jìn)行隧道路徑計(jì)算只能計(jì)算到R2和R3。因此,如果希望建立一條從R1到達(dá)R4,即router-id 1.1.1.1到達(dá)router-id 4.4.4.4的一條路徑,必須人為規(guī)劃配置R2為松散路徑,配置路徑松散到R2的router-id 2.2.2.2。這樣,R1首先計(jì)算隧道路徑到達(dá)R2,RSVP先建立從R1到達(dá)R2的隧道。R2上既有l(wèi)evel 1的LSP數(shù)據(jù)庫,也有l(wèi)evel 2的LSP數(shù)據(jù)庫,然后在R2上再次發(fā)起到達(dá)router-id 4.4.4.4的隧道路徑計(jì)算,使用level2的LSP數(shù)據(jù)庫在level2中進(jìn)行隧道路徑計(jì)算到達(dá)router-id 4.4.4.4的R4,RSVP再建立從R2到達(dá)R4的剩余隧道。這樣,一條跨層次的隧道路徑計(jì)算完成并建立成功。這種方法,必須人為配置隧道松散的router-id 2.2.2.2,也就是人為配置這條隧道必須通過R2。
使用本發(fā)明后,R2為level 1和Level2的路由器,同時(shí)打開了level 1和Level2的MPLS功能,在R2上配置TE router-id的從level 2到level 1的泄漏。R2的level 2的LSP數(shù)據(jù)庫保存了R2和R4的所有LSP報(bào)文,經(jīng)過對 level 2的LSP數(shù)據(jù)庫處理,將level 2R2自己的TE router-id 2.2.2.2保存下來標(biāo)識為非泄漏TE router-id,將level 2R4的TE router-id 4.4.4.4保存下來標(biāo)識為非泄漏TE router-id。然后,將R4的Level2TE router-id 4.4.4.4放置于TE router-id泄漏TLV,TE router-id泄漏TLV添加至R2(生成方中間系統(tǒng))的Level 1的LSP中,并將這條Level 1的LSP洪泛出去。
R1為計(jì)算方IS,其接收自己所在level 1的網(wǎng)絡(luò)拓?fù)銻1、R2、R3所有IS生成的LSP,構(gòu)成自己level 1的鏈路狀態(tài)數(shù)據(jù)庫。同樣,經(jīng)過對level 1的LSP數(shù)據(jù)庫處理,將level 1R2的TE router-id 2.2.2.2保存下來標(biāo)識為非泄漏TE router-id;將level 1R3的TE router-id 3.3.3.3保存下來標(biāo)識為非泄漏TE router-id;將level 1R1的TE router-id 1.1.1.1保存下來標(biāo)識為非泄漏TE router-id。同時(shí),在處理R2生成的level 1LSP時(shí),發(fā)現(xiàn)存在泄漏TE router-id TLV,TE router-id TLV包含一個(gè)TE router-id 4.4.4.4,正是Level 2拓?fù)渖蟁4的TE router-id,將其保存下來作為泄漏的TE router-id。
計(jì)算方IS R1收到RSVP的計(jì)算請求后,發(fā)現(xiàn)從R1的TE router-id 1.1.1.1計(jì)算到達(dá)目的地R4的TE router-id 4.4.4.4。查找目的地TE router-id 4.4.4.4,發(fā)現(xiàn)是一個(gè)泄漏的TE router-id。開始隧道路徑計(jì)算,計(jì)算到任何一個(gè)IS都會執(zhí)行一次判斷,判斷目的地TE router-id 4.4.4.4是否為這個(gè)IS泄漏的TE router-id。本例中,計(jì)算到TE router-id為1.1.1.1的R2,查找發(fā)現(xiàn)是R2泄漏了TE router-id 4.4.4.4,那么自動設(shè)置這條隧道路徑計(jì)算松散router-id為2.2.2.2,同時(shí)計(jì)算方IS R1的隧道路徑結(jié)束。RSVP將會建立從R1到R2的隧道,并且在R2上再次發(fā)起隧道路徑計(jì)算計(jì)算目的地是4.4.4.4,使用level2的鏈路狀態(tài)數(shù)據(jù)庫計(jì)算的時(shí)候可以完成計(jì)算,那么整個(gè)跨level 1到level 2的跨層次路徑計(jì)算完成并建立成功。
實(shí)施例二:
如圖4,由R1、R2、R3、R4組成的網(wǎng)絡(luò),R1、R2、R3構(gòu)成一個(gè)區(qū)域,為一個(gè)Level 1區(qū)域,相互建立Level 1的鄰居關(guān)系,R2、R4建立Level 2的骨干區(qū)域,建立Level 2的鄰居關(guān)系。顯然R2處于Level 1區(qū)域中,同時(shí)也處于Level 2骨干區(qū)域中。R1、R2、R3、R4中間系統(tǒng)的TE router-id分別為1.1.1.1、2.2.2.2、3.3.3.3、4.4.4.4,作為在TE網(wǎng)絡(luò)中的唯一標(biāo)識。顯然,R1,R2,R3ISIS的 level 1功能開啟,同時(shí)開啟MPLS的level 1功能。R2,R4ISIS的level2功能開啟,同時(shí)開啟MPLS的level2功能。R2為level 1/Level2的路由器,同時(shí)使能了level 1/Level2的MPLS功能。假設(shè)目前配置一條隧道從router-id 4.4.4.4計(jì)算目的地為1.1.1.1,即從R4到達(dá)R1的隧道。
使用本發(fā)明后,R2為level 1和Level2的路由器,同時(shí)打開了level 1和Level2的MPLS功能,在R2上配置TE router-id的從level 1到level 2的泄漏。R2的level 1的LSP數(shù)據(jù)庫保存了R1、R2和R3的所有LSP報(bào)文,經(jīng)過對level 1的LSP數(shù)據(jù)庫處理,將level 1R2自己的TE router-id 2.2.2.2保存下來標(biāo)識為非泄漏TE router-id,將level 1R1和R3的TE router-id 1.1.1.1和3.3.3.3保存下來標(biāo)識為非泄漏TE router-id。然后,將R1和R3的Level 1TE router-id 1.1.1.1和3.3.3.3放置于TE router-id泄漏TLV,TE router-id泄漏TLV添加至R2(生成方中間系統(tǒng))的Level 2的LSP中,并將這條Level 2的LSP洪泛出去。
R4為計(jì)算方IS,他會接受自己所在level 2的網(wǎng)絡(luò)拓?fù)銻2、R4所有IS生成的LSP,構(gòu)成自己level 2的鏈路狀態(tài)數(shù)據(jù)庫。同樣,經(jīng)過對level 2的LSP數(shù)據(jù)庫處理,將level 2R2的TE router-id 2.2.2.2和R4的TE router-id 4.4.4.4保存下來標(biāo)識為非泄漏TE router-id;同時(shí),在處理R2生成的level 2LSP時(shí),發(fā)現(xiàn)存在泄漏TE router-id TLV,將level 2R2在LSP中發(fā)布的TE router-id 1.1.1.1和3.3.3.3保存下來標(biāo)識為泄漏TE router-id。
R4收到RSVP的計(jì)算請求后,發(fā)現(xiàn)從R4的TE router-id 4.4.4.4計(jì)算到達(dá)目的地R1的TE router-id 1.1.1.1。查找目的地TE router-id 1.1.1.1,發(fā)現(xiàn)是一個(gè)泄漏的TE router-id。開始隧道路徑計(jì)算,計(jì)算到任何一個(gè)IS(中間系統(tǒng))都會執(zhí)行一次判斷,判斷目的地TE router-id 1.1.1.1是否為這個(gè)IS泄漏的TE router-id。本例中,計(jì)算到TE router-id為1.1.1.1的R2,查找發(fā)現(xiàn)是R2泄漏了TE router-id 1.1.1.1,那么自動設(shè)置這條隧道路徑計(jì)算松散router-id為2.2.2.2,同時(shí)計(jì)算方IS R4的隧道路徑結(jié)束。RSVP將會建立從R4到R2的隧道,并且在R2上再次發(fā)起隧道路徑計(jì)算計(jì)算目的地是1.1.1.1,使用level 1的鏈路狀態(tài)數(shù)據(jù)庫計(jì)算的時(shí)候可以完成計(jì)算,那么整個(gè)跨level 2到level 1的跨層次路徑計(jì)算完成并建立成功。
本發(fā)明適用于各種支持ISIS的設(shè)備,包括路由器和交換機(jī)等。
盡管上文對本發(fā)明進(jìn)行了詳細(xì)說明,但是本發(fā)明不限于此,本技術(shù)領(lǐng)域技術(shù)人員可以根據(jù)本發(fā)明的原理進(jìn)行各種修改。因此,凡按照本發(fā)明原理所作的修改,都應(yīng)當(dāng)理解為落入本發(fā)明的保護(hù)范圍。