一種清除鏈路狀態(tài)通告的方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明實施方式屬于網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,特別是一種清除鏈路狀態(tài)通告的方法和
目.0
【背景技術(shù)】
[0002]開放最短路徑優(yōu)先(Open Shortest Path First,OSPF)是互聯(lián)網(wǎng)工程任務(wù)組(Internet Engineering Task Force,IETF)開發(fā)的一個基于鏈路狀態(tài)的內(nèi)部網(wǎng)關(guān)協(xié)議。OSPF協(xié)議包含五種類型的協(xié)議報文。分別為=Hello報文;數(shù)據(jù)庫描述(DatabaseDescript1n,DD)報文;用于請求所需的鏈路狀態(tài)通告(Link State Advertisement, LSA)的鏈路狀態(tài)請求(Link State Request,LSR)報文;鏈路狀態(tài)更新(Link State Update,LSU)報文;鏈路狀態(tài)確認(rèn)(Link State Acknowledgment, LSAck)報文。
[0003]在現(xiàn)有技術(shù)的OSPF網(wǎng)絡(luò)中,在本端設(shè)備上設(shè)置待過濾的LSA,如果本端設(shè)備已經(jīng)和其他鄰居路由器形成鄰接關(guān)系,本端設(shè)備產(chǎn)生一個結(jié)束鄰居(KillNbr)的狀態(tài)機事件來觸發(fā)鄰居重建,并在鄰居重建的數(shù)據(jù)交換過程中完成LSA過濾。然而,結(jié)束鄰居的狀態(tài)機事件將會導(dǎo)致鄰居震蕩。
[0004]而且,在現(xiàn)有技術(shù)的LSA過濾過程中,本端設(shè)備雖然不向鄰居路由器發(fā)送待過濾的LSA,但是鄰居路由器在重建鄰居之前可能已學(xué)習(xí)到這些待過濾的LSA,而且這些待過濾的LSA在鄰居路由器會持續(xù)殘留。為了清除鄰居路由器中這些殘留LSA,需要網(wǎng)絡(luò)管理員手工配置重置命令以重啟OSPF進(jìn)程,或者依靠LSA自身的老化機制予以清除,因此清除效率不尚。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實施方式提出一種清除鏈路狀態(tài)通告的方法和裝置,以快速清除殘留LSA。
[0006]本發(fā)明實施方式的技術(shù)方案如下:
[0007]根據(jù)本發(fā)明實施方式的一方面,提出一種清除LSA的方法,該方法應(yīng)用于運行有OSPF協(xié)議的路由設(shè)備,該方法包括:
[0008]確定保存在所述路由設(shè)備中的待過濾的LSA ;
[0009]復(fù)制所述待過濾的LSA,并設(shè)置所述復(fù)制的LSA的生存時間大于或等于預(yù)定最大生存時間;
[0010]向所述路由設(shè)備的鄰居節(jié)點發(fā)送所述復(fù)制的LSA,所述復(fù)制的LSA用于使得保存有所述待過濾的LSA或所述待過濾的LSA的頭部信息的鄰居節(jié)點刪除所述待過濾的LSA或所述待過濾的LSA的頭部信息。
[0011]優(yōu)選地,所述向路由設(shè)備的鄰居節(jié)點發(fā)送復(fù)制的LSA包括:
[0012]主動向所有鄰居節(jié)點泛洪包含所述復(fù)制的LSA的鏈路狀態(tài)更新LSU報文。
[0013]優(yōu)選地,所述向路由設(shè)備的鄰居節(jié)點發(fā)送復(fù)制的LSA包括:
[0014]接收保存有所述待過濾的LSA或所述待過濾的LSA的頭部信息的鄰居節(jié)點發(fā)送的、用于請求所述待過濾的LSA的LSR ;
[0015]發(fā)送包含所述復(fù)制的LSA的LSU報文到所述保存有所述待過濾的LSA或所述待過濾的LSA的頭部信息的鄰居節(jié)點。
[0016]優(yōu)選地,所述向路由設(shè)備的鄰居節(jié)點發(fā)送復(fù)制LSA包括:
[0017]接收保存有所述待過濾的LSA或所述待過濾的LSA的頭部信息的鄰居節(jié)點發(fā)送的、包含所述待過濾的LSA的頭部信息的數(shù)據(jù)庫描述(DD)報文;
[0018]發(fā)送包含所述復(fù)制的LSA的LSU報文到所述保存有待過濾的LSA或待過濾的LSA的頭部信息的鄰居節(jié)點。
[0019]優(yōu)選地,所述主動向所有鄰居節(jié)點泛洪包含復(fù)制的LSA的LSU報文包括:
[0020]將所述復(fù)制的LSA加入每個鄰居節(jié)點的重傳列表,并分別為各自重傳列表設(shè)置重傳定時器;
[0021]當(dāng)各自重傳列表的重傳定時器的定時時間到時,分別向相應(yīng)的鄰居節(jié)點發(fā)送包含復(fù)制的LSA的LSU報文;
[0022]當(dāng)接收到相應(yīng)的鄰居節(jié)點發(fā)送的、對應(yīng)于所述LSA的鏈路狀態(tài)確認(rèn)LSAck報文時,分別在所述鄰居節(jié)點的重傳列表中刪除所述復(fù)制LSA。
[0023]優(yōu)選地,所述路由設(shè)備為星形網(wǎng)中的核心路由設(shè)備。
[0024]根據(jù)本發(fā)明實施方式的另一方面,提出一種清除LSA的裝置,該裝置應(yīng)用于運行有OSPF協(xié)議的路由設(shè)備,該裝置包括:
[0025]LSA確定模塊,用于確定保存在所述路由設(shè)備中的待過濾的LSA ;
[0026]復(fù)制模塊,用于復(fù)制所述待過濾的LSA,并設(shè)置所述復(fù)制的LSA的生存時間大于或等于預(yù)定最大生存時間;
[0027]發(fā)送模塊,用于向所述路由設(shè)備的鄰居節(jié)點發(fā)送所述復(fù)制的LSA,所述復(fù)制的LSA用于使得保存有所述待過濾的LSA或所述待過濾的LSA的頭部信息的鄰居節(jié)點刪除所述待過濾的LSA或所述待過濾的LSA的頭部信息。
[0028]優(yōu)選地,發(fā)送模塊,用于主動向所有鄰居節(jié)點泛洪包含所述復(fù)制的LSA的LSU報文。
[0029]優(yōu)選地,進(jìn)一步包括接收模塊,用于接收保存有所述待過濾的LSA或所述待過濾的LSA的頭部信息的鄰居節(jié)點發(fā)送的、用于請求所述待過濾的LSA的鏈路狀態(tài)請求LSR ;
[0030]發(fā)送模塊,用于發(fā)送包含所述復(fù)制的LSA的LSU報文到所述保存有待過濾的LSA或待過濾的LSA的頭部信息的鄰居節(jié)點。
[0031]優(yōu)選地,進(jìn)一步包括接收模塊,用于接收保存有待過濾的LSA或待過濾的LSA的頭部信息的鄰居節(jié)點發(fā)送的、包含所述待過濾的LSA的頭部信息的DD報文;
[0032]發(fā)送模塊,用于發(fā)送包含所述復(fù)制的LSA的LSU報文到保存有待過濾的LSA或待過濾的LSA的頭部信息的鄰居節(jié)點。
[0033]優(yōu)選地,發(fā)送模塊,用于將所述復(fù)制的LSA加入每個鄰居節(jié)點的重傳列表,并分別為各自重傳列表設(shè)置重傳定時器;當(dāng)各自重傳列表的重傳定時器的定時時間到時,分別向相應(yīng)的鄰居節(jié)點發(fā)送包含復(fù)制的LSA的LSU報文;當(dāng)接收到相應(yīng)的鄰居節(jié)點發(fā)送的、對應(yīng)于所述LSA的鏈路狀態(tài)確認(rèn)LSAck報文時,分別在所述鄰居節(jié)點的重傳列表中刪除所述復(fù)制的 LSA0
[0034]優(yōu)選地,所述路由設(shè)備為星形網(wǎng)中的核心路由設(shè)備。
[0035]由此可見,根據(jù)本發(fā)明提供的實施方式,在運行有OSPF協(xié)議的路由設(shè)備配置待過濾LSA,并復(fù)制待過濾的LSA,而且復(fù)制的LSA的LS時限大于或等于預(yù)定最大生存時間,本地保存該待過濾LSA或待過濾LSA的頭部信息的鄰居節(jié)點收到復(fù)制的LSA后,可以主動清除本地所保存的待過濾LSA或待過濾LSA的頭部信息,從而可以快速清除殘留LSA。
[0036]另外,本發(fā)明配置LSA過濾時,對于已經(jīng)形成鄰接關(guān)系的OSPF鄰居不再產(chǎn)生KillNbr事件,從而可以避免不必要的鄰居震蕩。
【附圖說明】
[0037]圖1為根據(jù)本發(fā)明實施方式清除LSA的方法流程圖;
[0038]圖2為根據(jù)本發(fā)明實施方式主動泛洪清除LSA的方法流程圖;
[0039]圖3為根據(jù)本發(fā)明實施方式接收到包含過濾LSA的LSR報文時,清除LSA的方法流程圖;
[0040]圖4為根據(jù)本發(fā)明實施方式接收到包含過濾LSA的DD報文時,清除LSA的方法流程圖;
[0041]圖5為根據(jù)本發(fā)明實施方式清除LSA的裝置結(jié)構(gòu)圖。
【具體實施方式】
[0042]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖對本發(fā)明作進(jìn)一步的詳細(xì)描述。
[0043]在本發(fā)明實施方式中,在運行有OSPF協(xié)議的路由設(shè)備配置LSA過濾特性后,不同于現(xiàn)有技術(shù)中產(chǎn)生KillNbr事件并復(fù)用新建OSPF鄰居的處理流程,而是首先復(fù)制待過濾的LSA,并設(shè)置復(fù)制的LSA的生存時間(即LS時限)大于或等于預(yù)定最大生存時間,然后向本地保存有待過濾的LSA或待過濾的LSA的頭部信息的鄰居節(jié)點發(fā)送復(fù)制的LSA。本地保存有待過濾的LSA或待過濾的LSA的頭部信息的鄰居節(jié)點收到復(fù)制的LSA后,主動清除本地所保存的待過濾的LSA或待過濾的LSA的頭部信息。
[0044]圖1為根據(jù)本發(fā)明實施方式清除LSA的方法流程圖,該方法應(yīng)用于運行有OSPF協(xié)議的路由設(shè)備。
[0045]如圖1所示,該方法包括:
[0046]步驟101:確定保存在路由設(shè)備中的待過濾的LSA。
[0047]在這里,在運行有OSPF協(xié)議的路由設(shè)備確定待過濾的LSA。待過濾的LSA,即是路由設(shè)備所保存的且路由設(shè)備的鄰居節(jié)點不需要學(xué)習(xí)的LSA。比如,當(dāng)路由設(shè)備期望自己的某一部分網(wǎng)絡(luò)拓?fù)鋵︵従庸?jié)點不可達(dá)時,可以在路由設(shè)備的本地數(shù)據(jù)庫中為該部分網(wǎng)絡(luò)拓?fù)渌鶎?yīng)的LSA設(shè)置特定的標(biāo)識,以表明該部分網(wǎng)絡(luò)拓?fù)渌鶎?yīng)的LSA為待過濾的LSA。
[0048]具體地,待過濾的LSA既可以是路由設(shè)備自己生成的LSA,也可以是路由設(shè)備從OSPF網(wǎng)絡(luò)中接收到的LSA。而且,待過濾的LSA的數(shù)目既可以為一條,也可以為多條(大于等于兩條)。
[0049]步驟102:復(fù)制待過濾的LSA,并設(shè)置復(fù)制的LSA的生存時間大于或等于預(yù)定最大生存時間。
[0050]在這里,路由設(shè)備可以從本地數(shù)據(jù)庫中基于特定的標(biāo)識檢索到待過濾的LSA,復(fù)制待過濾的LSA,并且將復(fù)制的LSA的生存時間大于或等于預(yù)定最大生存時間。比如,預(yù)定最大生存時間通常為3600秒。
[0051]步驟103:向路由設(shè)