專(zhuān)利名稱(chēng):一種無(wú)虛擬通道的子環(huán)地址更新方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)通信領(lǐng)域,更具體地涉及一種無(wú)虛擬通道的子環(huán)地址更新方法。
背景技術(shù):
隨著以太網(wǎng)絡(luò)向著多業(yè)務(wù)承載方向的發(fā)展,特別是一些業(yè)務(wù)對(duì)網(wǎng)絡(luò)的可靠性、 實(shí)時(shí)性要求越來(lái)越高,以太網(wǎng)廣泛采用了環(huán)形的組網(wǎng)以提高網(wǎng)絡(luò)可靠性。并且在環(huán)形 的保護(hù)方法中,通常要求快速保護(hù)倒換,達(dá)到50ms以下。目前這種快速保護(hù)倒換的 技術(shù)有 IETF(Internet Engineering Task Force,互聯(lián)網(wǎng)工程任務(wù)組)的 RFC3619、 ITU-T (International Telecommunication Union,國(guó)際電信聯(lián)盟)的 G. 8032 等。對(duì)于子環(huán)的定義,國(guó)際上正在制定的標(biāo)準(zhǔn)(如ITU的G. 8032)認(rèn)為子環(huán) (Sub-Ring)是一種通過(guò)互連節(jié)點(diǎn)(Interconnection Node)與其它環(huán)或者網(wǎng)絡(luò)相連的以太 環(huán),互連節(jié)點(diǎn)(Interconnection Node)是同時(shí)屬于兩個(gè)或者多個(gè)以太環(huán)的公共節(jié)點(diǎn)。例如圖1所示,子環(huán)Sub-ringl上的節(jié)點(diǎn)A至G都為具有以太網(wǎng)交換功能的節(jié)點(diǎn), Sub-ringl通過(guò)互連接點(diǎn)接入網(wǎng)絡(luò)X。用戶(hù)M和節(jié)點(diǎn)B相連接,用戶(hù)N和節(jié)點(diǎn)D相連接。網(wǎng) 絡(luò)M和網(wǎng)絡(luò)N之間進(jìn)行通信。網(wǎng)絡(luò)M和網(wǎng)絡(luò)N之間有2條物理路徑,即用戶(hù)N ――節(jié)點(diǎn) D 一一節(jié)點(diǎn)C 一一節(jié)點(diǎn)B —一網(wǎng)絡(luò)M,用戶(hù)N —一節(jié)點(diǎn)D —一節(jié)點(diǎn)E —一節(jié)點(diǎn)F —一網(wǎng)絡(luò) X 一一節(jié)點(diǎn)A —一節(jié)點(diǎn)G —一節(jié)點(diǎn)B —一用戶(hù)M。在應(yīng)用子環(huán)保護(hù)技術(shù)時(shí),一般定義了環(huán)保護(hù)鏈路和控制節(jié)點(diǎn),即在以太環(huán)網(wǎng)無(wú)故 障的情況下,子環(huán)上對(duì)數(shù)據(jù)報(bào)文進(jìn)行阻塞防止數(shù)據(jù)環(huán)路形成的鏈路為環(huán)保護(hù)鏈路,通過(guò)對(duì) 這段環(huán)保護(hù)鏈路的操作,可以進(jìn)行子環(huán)的主用路徑和保護(hù)路徑的切換。擁有環(huán)保護(hù)鏈路的 節(jié)點(diǎn),這里稱(chēng)為控制節(jié)點(diǎn)(或者稱(chēng)為主節(jié)點(diǎn))。如圖2a所示,環(huán)網(wǎng)包含的節(jié)點(diǎn)有G、A、B、C、 D、E和F,包含的鏈路有<G,A>、<A,B>、<B, C>、<C,D>、<D,E>和<E,F(xiàn)>鏈路。節(jié)點(diǎn)A為控 制節(jié)點(diǎn),與它的w端口直連鏈路<A,B>為環(huán)保護(hù)鏈路。當(dāng)環(huán)上鏈路完好時(shí),控制節(jié)點(diǎn)阻塞與環(huán)保護(hù)鏈路相連端口的數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)功能, 網(wǎng)絡(luò)中無(wú)環(huán)路產(chǎn)生,防止了由于網(wǎng)絡(luò)環(huán)路引起的“廣播風(fēng)暴”。如圖2a所示,控制節(jié)點(diǎn)A阻 塞了 e端口的保護(hù)數(shù)據(jù)轉(zhuǎn)發(fā)功能,用戶(hù)M和N的通信路徑為用戶(hù)M ——節(jié)點(diǎn)B ——節(jié)點(diǎn) C ——節(jié)點(diǎn)D ——用戶(hù)N。當(dāng)鏈路發(fā)生故障時(shí),控制節(jié)點(diǎn)放開(kāi)與環(huán)保護(hù)鏈路相連端口的數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)功能, 從而保障了業(yè)務(wù)的連通。如圖2b所示,環(huán)上的<B,C>鏈路發(fā)生了故障,控制節(jié)點(diǎn)A放開(kāi)了端 口 w的數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)功能,用戶(hù)M和N新的通信路徑為用戶(hù)M ——節(jié)點(diǎn)B ——節(jié)點(diǎn)A —— 節(jié)點(diǎn)G —一網(wǎng)絡(luò)X —一節(jié)點(diǎn)F —一節(jié)點(diǎn)E —一節(jié)點(diǎn)D —一用戶(hù)N。當(dāng)子環(huán)保護(hù)切換時(shí),需要傳播大量的控制報(bào)文,這些控制報(bào)文是在子環(huán)的控制信 道中傳播的。子環(huán)的控制信道有兩種配置方式,一種是不帶有虛擬通道的配置方式,即,子 環(huán)的控制信道僅僅配置在子環(huán)內(nèi)(如圖3a所示)。另一種子環(huán)的控制信道配置包含子環(huán)內(nèi) 的部分和虛擬通道(Virtual Channel)。虛擬通道是配置在互連點(diǎn)之間的其它網(wǎng)絡(luò)或者其 它環(huán)(包含其它子環(huán))為子環(huán)協(xié)議報(bào)文提供傳輸通道的子環(huán)的控制信道(如圖3b所示)。
3
在本發(fā)明中,我們只關(guān)注無(wú)虛擬通道的的子環(huán)情況,其中重點(diǎn)關(guān)注子環(huán)的地址更 新問(wèn)題。采用以太環(huán)網(wǎng)保護(hù)的地址刷新機(jī)制的目的是刪除節(jié)點(diǎn)中已經(jīng)過(guò)時(shí)的MAC地址 (如環(huán)網(wǎng)的拓?fù)浒l(fā)生變化,導(dǎo)致環(huán)上節(jié)點(diǎn)原先學(xué)習(xí)到的MAC地址已經(jīng)不能使用),防止環(huán)上 節(jié)點(diǎn)繼續(xù)使用原先已經(jīng)過(guò)時(shí)的MAC地址。目前,ITU-T G. 8032v2的地址刷新機(jī)制如下所示當(dāng)一個(gè)節(jié)點(diǎn)的環(huán)上端口收到R-APS消息時(shí),所述端口讀取該消息的<Node_ID, BPR>信息,并且將它與該端口自身保存的<Node_ID,BPR>信息進(jìn)行比較,如果不同,所述端 口刪除原先保存的<Node_ID,BPR>信息并且存儲(chǔ)讀取的<Node_ID,BPR>。更進(jìn)一步地,如果 該讀取的<Node_ID,BPR>信息與所述節(jié)點(diǎn)的另一個(gè)環(huán)上端口保存的<Node_ID,BPR>信息不 同,該節(jié)點(diǎn)刷新地址轉(zhuǎn)發(fā)表。需要特別指出的是當(dāng)所述環(huán)上端口收到的是R-APS(NR)消息 時(shí),該端口刪除保存的保存的<Node_ID,BPR>信息,但是不存儲(chǔ)R-APS (NR)消息中的<Node_ ID, BPR>信息。另外,當(dāng)環(huán)上端口變?yōu)樽枞麜r(shí),該節(jié)點(diǎn)刪除兩個(gè)環(huán)上端口保存的<Node_ID, Bra>信息。其中Node_ID是發(fā)送R-APS消息的節(jié)點(diǎn)號(hào),BI3R是阻塞端口的指示,0為東面端口 阻塞,1為西面端口阻塞。為了更好地說(shuō)明現(xiàn)有的ITU-T G. 8032v2的地址刷新機(jī)制,下面舉一個(gè)具體的實(shí)例 來(lái)說(shuō)明該機(jī)制如圖4a所示,節(jié)點(diǎn)A是控制節(jié)點(diǎn),<A,F(xiàn)>是環(huán)保護(hù)鏈路(在環(huán)網(wǎng)正常情況下,節(jié)點(diǎn) 阻塞e端口),鏈路<C,D>發(fā)生了故障,節(jié)點(diǎn)C (D)阻塞w端口(e端口),同時(shí)清除兩個(gè)環(huán)上 端口保存的<Node_ID,BPR>,刷新地址轉(zhuǎn)發(fā)表,并且延環(huán)上端口周期性地發(fā)送SF消息,該消 息攜帶<C,w>信息(節(jié)點(diǎn)D發(fā)送的SF消息攜帶<D,e>信息)。環(huán)上的其它節(jié)點(diǎn)收到SF消息后將采取以下動(dòng)作。以節(jié)點(diǎn)F的e端口為例,當(dāng)節(jié)點(diǎn)F 的e端口收到節(jié)點(diǎn)D發(fā)送來(lái)的SF報(bào)文后,該e端口讀取SF報(bào)文中的<D,e>信息,并將該信 息與自身保存的<Node_ID,BPR>進(jìn)行比較,發(fā)現(xiàn)不一致,所述e端口刪除原先保存的<Node_ ID,Bra>,存儲(chǔ)<D,e>信息。所述e端口將<D,e>信息與F節(jié)點(diǎn)的w端口保存的<Node_ID, BPR>進(jìn)行比較,發(fā)現(xiàn)還不一致,節(jié)點(diǎn)F刷新地址轉(zhuǎn)發(fā)表。如圖4b所示,鏈路<C,D>故障消失,節(jié)點(diǎn)C (D)周期性地發(fā)送NR報(bào)文,環(huán)上的節(jié)點(diǎn) 收到NR報(bào)文后,開(kāi)始清除保存的<Node_ID,BPR>信息,例如節(jié)點(diǎn)F的e端口收到節(jié)點(diǎn)D發(fā) 送來(lái)的NR報(bào)文后,該e端口清除保存的<D,e>信息。另外,節(jié)點(diǎn)C收到節(jié)點(diǎn)D發(fā)送來(lái)的NR 報(bào)文后,發(fā)現(xiàn)該報(bào)文中的節(jié)點(diǎn)號(hào)D比自己的節(jié)點(diǎn)號(hào)大,節(jié)點(diǎn)C打開(kāi)w端口的數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)功 能,并停止發(fā)送NR報(bào)文。上述地址刷新機(jī)制在完整的環(huán)中能工作得很好,但是該方案運(yùn)用到子環(huán)的場(chǎng)景 中,會(huì)造成環(huán)上的某些節(jié)點(diǎn)不能刷新地址轉(zhuǎn)發(fā)表。
發(fā)明內(nèi)容
技術(shù)問(wèn)題1:如圖5a所示,子環(huán)1處于無(wú)故障狀態(tài),控制節(jié)點(diǎn)A阻塞e端口,并周期性地發(fā)送 NR, RB報(bào)文通知環(huán)上的其它節(jié)點(diǎn)“環(huán)保護(hù)鏈路阻塞了”,NR, RB報(bào)文攜帶<A,e>信息。環(huán)上
4的B、C、D、E和F節(jié)點(diǎn)的e端口收到最新的NR,RB報(bào)文后,發(fā)現(xiàn)報(bào)文中的<A,e>與自己的e 端口保存的<Node_ID,BPR>不同,這些e端口都存儲(chǔ)了 <A,e>。在圖5b中,鏈路<F,E>發(fā)生了故障,節(jié)點(diǎn)E阻塞w端口的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)功能,刷 新地址轉(zhuǎn)發(fā)表,同時(shí)清空兩個(gè)環(huán)上端口保存的<Node_ID,BPR>,并且沿e端口周期性地向外 發(fā)送SF報(bào)文,該報(bào)文攜帶<E,w>信息。節(jié)點(diǎn)G、A、B、C和D的w端口收到SF (攜帶<E,w> 信息)報(bào)文后,將<E,w>與原先存儲(chǔ)的<Node_ID,BPR>進(jìn)行比較,發(fā)現(xiàn)兩者不一致,這些節(jié) 點(diǎn)的w端口存儲(chǔ)<E,w>信息,并且刷新地址轉(zhuǎn)發(fā)表。另外,節(jié)點(diǎn)A收到SF報(bào)文后,還要打開(kāi) e端口的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)功能。在圖5c中,鏈路<F,E>的故障消失了,節(jié)點(diǎn)F和E都沿環(huán)上兩個(gè)端口周期性地發(fā) 送NR報(bào)文,節(jié)點(diǎn)E收到節(jié)點(diǎn)F發(fā)送來(lái)的NR報(bào)文后發(fā)現(xiàn)報(bào)文中的節(jié)點(diǎn)號(hào)F比自己的節(jié)點(diǎn)號(hào) 要大,節(jié)點(diǎn)E打開(kāi)數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)功能。環(huán)上各個(gè)節(jié)點(diǎn)的w端口收到NR報(bào)文后清空自己保 存的<Node_ID,BPR>信息。節(jié)點(diǎn)A收到NR報(bào)文后還要啟動(dòng)WTR定時(shí)器(防止抖動(dòng)故障)。在圖5d中,WTR定時(shí)器超時(shí),控制節(jié)點(diǎn)A阻塞e端口的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)功能,刷新 地址轉(zhuǎn)發(fā)表,并且沿環(huán)上的兩個(gè)端口周期性地發(fā)送NR,RB報(bào)文,該報(bào)文攜帶<A,e>信息。節(jié) 點(diǎn)F(E)的e端口收到該NR,RB之后,發(fā)現(xiàn)報(bào)文中的<A,e>信息與該e端口保存的<Node_ ID, BPR>信息不同,所述e端口存儲(chǔ)<A,e>信息并且節(jié)點(diǎn)刷新地址轉(zhuǎn)發(fā)表。然而,節(jié)點(diǎn)B(C 或D)的e端口讀取報(bào)文中的<A,e>信息,并且將該信息與它的e端口保存的<A,e>進(jìn)行比 較,發(fā)現(xiàn)兩者一致,節(jié)點(diǎn)不刷新地址轉(zhuǎn)發(fā)表,因此,節(jié)點(diǎn)B、C和D不刷新它們的地址轉(zhuǎn)發(fā)表。因此,通過(guò)上面的分析我們可以知道,在無(wú)虛擬通道的子環(huán)的場(chǎng)景中,運(yùn)用傳統(tǒng) 的地址刷新方法時(shí),子環(huán)上的某些節(jié)點(diǎn)不能夠刷新地址轉(zhuǎn)發(fā)表,在上面的場(chǎng)景中,造成這 種問(wèn)題出現(xiàn)的原因是子環(huán)不是一個(gè)完整的環(huán),NR報(bào)文不能夠完全清空節(jié)點(diǎn)端口上保存的 <Node_ID,BPR> 信息。技術(shù)問(wèn)題2:如圖6a所示,子環(huán)1處于無(wú)故障狀態(tài),控制節(jié)點(diǎn)A阻塞e端口,并周期性地發(fā)送 NR, RB報(bào)文通知環(huán)上的其它節(jié)點(diǎn)“環(huán)保護(hù)鏈路阻塞了”,NR, RB報(bào)文攜帶<A,e>信息。環(huán)上 的B、C、D、E和F節(jié)點(diǎn)的e端口端口收到最新的NR,RB報(bào)文后,發(fā)現(xiàn)報(bào)文中的<A,e>與自己 的e端口端口保存的<Node_ID,BPR>不同,這些e端口都存儲(chǔ)了 <A,e> ;如圖6b所示,節(jié)點(diǎn)E上啟動(dòng)了手工切換MS,節(jié)點(diǎn)E阻塞w端口的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā) 功能,刷新地址轉(zhuǎn)發(fā)表,同時(shí)清空兩個(gè)環(huán)上端口保存的<Node_ID,ΒΗ >,并且沿兩個(gè)環(huán)上端 口周期性地向外發(fā)送MS報(bào)文,該報(bào)文攜帶<E,w>信息。節(jié)點(diǎn)G、A、B、C和D的w端口收到 MS(攜帶<E,w>信息)報(bào)文后,將<E,w>與原先存儲(chǔ)的<Node_ID,BPR>進(jìn)行比較,發(fā)現(xiàn)兩者 不一致,這些節(jié)點(diǎn)的w端口存儲(chǔ)<E,w>信息,并且刷新地址轉(zhuǎn)發(fā)表。另外,節(jié)點(diǎn)A收到MS報(bào) 文后,還要打開(kāi)e端口的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)功能。如圖6c所示,節(jié)點(diǎn)A上啟動(dòng)了強(qiáng)制倒換(FS),節(jié)點(diǎn)A阻塞e端口的數(shù)據(jù)報(bào)文的轉(zhuǎn) 發(fā)功能,清空兩個(gè)環(huán)上端口保存的<Node_ID,ΒΗ >,刷新地址轉(zhuǎn)發(fā)表,并且沿環(huán)上的兩個(gè)端 口周期性地發(fā)送FS報(bào)文,該報(bào)文攜帶<A,e>信息。節(jié)點(diǎn)E的e端口收到FS報(bào)文之后,發(fā)現(xiàn) 報(bào)文中的<A,e>信息與該e端口保存的<Node_ID,BPR>信息不同,所述e端口存儲(chǔ)<A,e> 信息并且節(jié)點(diǎn)刷新地址轉(zhuǎn)發(fā)表,并且打開(kāi)阻塞端口的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)功能。然而,節(jié)點(diǎn)B (C、 D和F)的e端口讀取報(bào)文中的<A,e>信息,并且將該信息與它的e端口保存的<A,e>進(jìn)行
5比較,發(fā)現(xiàn)兩者一致,節(jié)點(diǎn)不刷新地址轉(zhuǎn)發(fā)表,因此,節(jié)點(diǎn)B、C、D和F不刷新它們的地址轉(zhuǎn)發(fā)表。技術(shù)問(wèn)題2產(chǎn)生的原因也是子環(huán)不是封閉的環(huán)引起的,導(dǎo)致某些節(jié)點(diǎn)端口上的 <Node_ID, BPR>不能及時(shí)更新。技術(shù)方案鑒于上面的問(wèn)題,本發(fā)明提出一種新型的地址更新方案,本發(fā)明一種無(wú)虛擬通道的子環(huán)地址更新方法如下當(dāng)環(huán)網(wǎng)拓?fù)浒l(fā)生變化時(shí)即環(huán)網(wǎng)上有節(jié)點(diǎn)將端口阻塞,阻塞端口的節(jié)點(diǎn)刷新地址 轉(zhuǎn)發(fā)表,同時(shí)清空兩個(gè)環(huán)上端口保存的<Node_ID,BPR> ;所述阻塞端口的節(jié)點(diǎn)連續(xù)發(fā)送3個(gè) CLNB報(bào)文即清空<Node_ID,BPR>的報(bào)文,然后周期性地發(fā)送帶有地址刷新信息的協(xié)議報(bào) 文;環(huán)上的節(jié)點(diǎn)收到CLNB報(bào)文后,清空兩個(gè)環(huán)上端口保存的<Node_ID,BPR> ;當(dāng)環(huán)上的節(jié)點(diǎn)的環(huán)上端口收到R-APS消息時(shí),所述環(huán)上端口讀取R-APS消息的 <Node_ID, BPR>信息,并且將R-APS消息的<Node_ID,BPR>信息與環(huán)上端口自身保存的 <Node_ID,BPR>信息進(jìn)行比較,如果不同,所述環(huán)上端口刪除原先保存的<Node_ID,BPR>信 息并且存儲(chǔ)讀取的<Node_ID,BPR> ;如果該讀取的<Node_ID,BPR>信息與所述節(jié)點(diǎn)的另一個(gè)環(huán)上端口保存的<Node_ ID, BPR>信息不同并且所述接收到的報(bào)文中帶有地址刷新信息,該節(jié)點(diǎn)刷新地址轉(zhuǎn)發(fā)表。優(yōu)選地,所述帶有地址刷新信息的協(xié)議報(bào)文包括SF、NR(RB)、FS和MS。優(yōu)選地,當(dāng)節(jié)點(diǎn)的環(huán)上端口收到NR報(bào)文時(shí),所述環(huán)上端口不清空保存的<Node_ ID, BPR>信息,也不將NR報(bào)文中的<Node_ID,BPR>信息存儲(chǔ)在該端口中。周期性是指所述帶有地址刷新信息的協(xié)議報(bào)文的頭3個(gè)以3. 33ms間隔發(fā)送,后續(xù) 的所述的帶有地址刷新信息的協(xié)議報(bào)文以5s為周期進(jìn)行發(fā)送(這是國(guó)際上目前流行的協(xié) 議報(bào)文的發(fā)送方法)。有益效果當(dāng)子環(huán)的拓?fù)浒l(fā)生變化時(shí),傳統(tǒng)的地址刷新方案在子環(huán)的場(chǎng)景下可能會(huì)造成某些 節(jié)點(diǎn)不刷新地址轉(zhuǎn)發(fā)表,從而導(dǎo)致通信中斷,更談不上子環(huán)在鏈路倒換后能夠在50ms內(nèi)收 斂。因此,本發(fā)明能夠解決傳統(tǒng)方案中的地址刷新協(xié)議的缺陷,對(duì)提升子環(huán)的性能是非常有 意義的。
圖1是子環(huán)的結(jié)構(gòu)圖2a是子環(huán)無(wú)故障情況下的數(shù)據(jù)轉(zhuǎn)發(fā)示意圖;圖2b是子環(huán)發(fā)生故障的情況下數(shù)據(jù)流保護(hù)倒換的示意圖;圖3a和3b是子環(huán)的兩種控制信道;圖4a和4b是地址刷新機(jī);圖5a、5b、5c和5d是傳統(tǒng)刷新方案出現(xiàn)問(wèn)題1的示意圖;圖6a、6b和6c是傳統(tǒng)刷新方案出現(xiàn)問(wèn)題2的示意圖;圖7和8是本發(fā)明實(shí)施的具體流程圖;圖9a、9b、9c和9d是實(shí)施例1的示意6
圖IOaUOb和IOc是實(shí)施例2的示意圖;
具體實(shí)施例方式為了進(jìn)一步說(shuō)明本發(fā)明的方案,本發(fā)明的步驟闡述如圖7和8所示圖7a是節(jié)點(diǎn)發(fā)送帶地址刷新信息報(bào)文的過(guò)程步驟701,環(huán)網(wǎng)發(fā)生拓?fù)渥兓?,產(chǎn)生新的阻塞點(diǎn);步驟702,帶有新的阻塞端口的節(jié)點(diǎn)刷新地址轉(zhuǎn)發(fā)表,清空兩個(gè)環(huán)上端口的 <Node_ID, BPR>。步驟703,所述節(jié)點(diǎn)連續(xù)發(fā)送3個(gè)CLNB報(bào)文;步驟704,所述節(jié)點(diǎn)隨后周期性地發(fā)送帶有地址刷新信息的協(xié)議報(bào)文。圖8a是節(jié)點(diǎn)處理收到的帶地址刷新信息報(bào)文的過(guò)程步驟801,節(jié)點(diǎn)收到協(xié)議報(bào)文,判定協(xié)議報(bào)文的類(lèi)型;步驟802,分3種情況進(jìn)行討論1)是CLNB報(bào)文,轉(zhuǎn)入步驟803 ; 2)是NR報(bào)文,轉(zhuǎn) 入步驟804 ;3)其它協(xié)議報(bào)文,轉(zhuǎn)入步驟805 ;步驟803,所述節(jié)點(diǎn)清空兩個(gè)環(huán)上端口保存的<Node_ID,BPR> ;步驟804,所述節(jié)點(diǎn)收到NR報(bào)文的端口不清空保存的<Node_ID,BPR>信息,也不 將NR報(bào)文中的<Node_ID,BPR>信息存儲(chǔ)在該端口中。步驟805,節(jié)點(diǎn)的接收端口讀取該協(xié)議報(bào)文的<Node_ID,BTO〉,并將它與自身保存 的<Node_ID,BPR>進(jìn)行比較。步驟806,判定兩者是否相等。如果不相等,轉(zhuǎn)入步驟807。步驟807,該端口保存協(xié)議報(bào)文的<Node_ID,BPR>,刪除原先自身保存的<Node_ ID, Bra>。步驟808,所述節(jié)點(diǎn)將讀取的<Node_ID,BPR>信息與所述節(jié)點(diǎn)的另一個(gè)環(huán)上端口 保存的<Node_ID,BPR>信息進(jìn)行比較;步驟809,判定兩者是否相等。如果不相等,轉(zhuǎn)入步驟810 ;步驟810,節(jié)點(diǎn)刷新地址轉(zhuǎn)發(fā)表;實(shí)施例一如圖9a所示,子環(huán)1處于無(wú)故障狀態(tài),控制節(jié)點(diǎn)A阻塞e端口,并周期性地發(fā)送 NR, RB報(bào)文通知環(huán)上的其它節(jié)點(diǎn)“環(huán)保護(hù)鏈路阻塞了”,NR, RB報(bào)文攜帶<A,e>信息。環(huán)上 的B、C、D、E和F節(jié)點(diǎn)的e端口收到最新的NR,RB報(bào)文后,發(fā)現(xiàn)報(bào)文中的<A,e>與自己的e 端口端口保存的<Node_ID,BPR>不同,這些e端口都存儲(chǔ)了 <A,e>。在圖9b中,鏈路<F,E>發(fā)生了故障,節(jié)點(diǎn)E阻塞w端口的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)功能,刷 新地址轉(zhuǎn)發(fā)表,刪除兩個(gè)環(huán)上端口保存的<Node_ID,BPR>,首先沿e端口連續(xù)3次發(fā)送CLNB 報(bào)文,然后周期性地向外發(fā)送SF報(bào)文,該報(bào)文攜帶<E,w>信息。節(jié)點(diǎn)G、A、B、C和D的w端口收到CLNB報(bào)文后,它們都刪除兩個(gè)環(huán)上端口保存的 <Node_ID,BPR>。隨后,節(jié)點(diǎn)G、A、B、C和D的w端口又收到SF (攜帶<E,w>信息)報(bào)文后, 將<E,w>與原先存儲(chǔ)的<Node_ID,BPR>進(jìn)行比較,發(fā)現(xiàn)兩者不一致,這些節(jié)點(diǎn)的w端口存儲(chǔ) <E,w>信息,并且刷新地址轉(zhuǎn)發(fā)表。另外,節(jié)點(diǎn)A收到SF報(bào)文后,還要打開(kāi)e端口的數(shù)據(jù)報(bào) 文的轉(zhuǎn)發(fā)功能
7
在圖9c中,鏈路<F,E>的故障消失了,節(jié)點(diǎn)F和E都沿環(huán)上兩個(gè)端口周期性地發(fā) 送NR報(bào)文,節(jié)點(diǎn)E收到節(jié)點(diǎn)F發(fā)送來(lái)的NR報(bào)文后發(fā)現(xiàn)報(bào)文中的節(jié)點(diǎn)號(hào)F比自己的節(jié)點(diǎn)號(hào) 要大,節(jié)點(diǎn)E打開(kāi)數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)功能。環(huán)上各個(gè)節(jié)點(diǎn)的w端口收到NR報(bào)文后不刪除自己 保存的<Node_ID,BPR>信息,同時(shí)也不存儲(chǔ)NR保文中的<Node_ID,BPR>。節(jié)點(diǎn)A收到NR 報(bào)文后還要啟動(dòng)WTR定時(shí)器(防止抖動(dòng)故障)在圖9d中,WTR定時(shí)器超時(shí),控制節(jié)點(diǎn)A阻塞e端口的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)功能,刷新 地址轉(zhuǎn)發(fā)表,刪除兩個(gè)環(huán)上端口保存的<Node_ID,BPR>,首先沿環(huán)上端口連續(xù)3次發(fā)送CLNB 報(bào)文,然后周期性地向外發(fā)送NR,RB報(bào)文,該報(bào)文攜帶<A,e>信息。環(huán)上E (F、B、C和D)節(jié)點(diǎn)收到CLNB報(bào)文后,刪除兩個(gè)環(huán)上端口保存的<Node_ID, BPR>。隨后,該e端口又收到NR,RB(攜帶<A,e>信息)報(bào)文,所述e端口讀取報(bào)文中的<A, e>信息,并且將該信息與它們的e端口保存的<Node_ID,BPR>進(jìn)行比較,發(fā)現(xiàn)兩者不一致, 所述e端口存儲(chǔ)<A,e>信息。然后,所述節(jié)點(diǎn)將NR,RB報(bào)文中的<A,e>信息與它的w端口 保存的<Node_ID,BPR>信息進(jìn)行比較,發(fā)現(xiàn)兩者還是不一致,節(jié)點(diǎn)刷新地址轉(zhuǎn)發(fā)表,因此, 環(huán)上的節(jié)點(diǎn)都能夠刷新它們的地址轉(zhuǎn)發(fā)表。實(shí)施例二如圖IOa所示,子環(huán)1處于無(wú)故障狀態(tài),環(huán)上各個(gè)節(jié)點(diǎn)的情況與圖9a相同。在圖IOb中,節(jié)點(diǎn)E上又啟動(dòng)了手工切換MS,節(jié)點(diǎn)E阻塞w端口的數(shù)據(jù)報(bào)文的轉(zhuǎn) 發(fā)功能,刷新地址轉(zhuǎn)發(fā)表,刪除兩個(gè)環(huán)上端口保存的<Node_ID,BPR>,連續(xù)發(fā)送3個(gè)CLNB報(bào) 文,然后沿環(huán)上端口周期性地發(fā)送MS報(bào)文該報(bào)文攜帶<E,w>信息。節(jié)點(diǎn)G、A、B、C和D的w端口收到CLNB報(bào)文后,刪除它們兩個(gè)環(huán)上端口保存的 <Node_ID, BPR>。節(jié)點(diǎn)G、A、B、C和D的w端口收到MS(攜帶<E,w>信息)報(bào)文后,將<E,w>與原先 存儲(chǔ)的<Node_ID,BPR>進(jìn)行比較,發(fā)現(xiàn)兩者不一致,這些節(jié)點(diǎn)的w端口存儲(chǔ)<E,w>信息,并 且刷新地址轉(zhuǎn)發(fā)表。另外,節(jié)點(diǎn)A收到MS報(bào)文后,還要打開(kāi)e端口的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)功能。在圖IOc中,節(jié)點(diǎn)A上啟動(dòng)了強(qiáng)制倒換(FS),節(jié)點(diǎn)A阻塞e端口的數(shù)據(jù)報(bào)文的轉(zhuǎn) 發(fā)功能,刪除兩個(gè)環(huán)上端口保存的<Node_ID,BPR>,刷新地址轉(zhuǎn)發(fā)表,連續(xù)發(fā)送3個(gè)CLNB報(bào) 文,然后沿環(huán)上端口周期性地發(fā)送FS報(bào)文,該報(bào)文攜帶<A,e>信息。環(huán)上的其它節(jié)點(diǎn)收到CLNB報(bào)文后,刪除它們兩個(gè)環(huán)上端口保存的<Node_ID, Bra>。節(jié)點(diǎn)B (C、D、E和F)的e端口收到FS報(bào)文后,讀取報(bào)文中的<A,e>信息,并且將 該信息與它的e端口保存的<A,e>進(jìn)行比較,發(fā)現(xiàn)兩者不一致,所述節(jié)點(diǎn)刷新地址轉(zhuǎn)發(fā)表, 因此,節(jié)點(diǎn)B、C、D、E和F能夠刷新它們的地址轉(zhuǎn)發(fā)表。節(jié)點(diǎn)E收到FS報(bào)文后,還要打開(kāi)w 端口的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)功能。從上面分析可知,本發(fā)明能夠很好地解決了傳統(tǒng)刷新方案造成子環(huán)上的節(jié)點(diǎn)不刷 新地址的問(wèn)題,從而避免了通信中斷,大大提高了子環(huán)的性能,同時(shí)也為多環(huán)保護(hù)方案的部 署打下了基礎(chǔ)。當(dāng)然,本發(fā)明還可有其他多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下,熟 悉本領(lǐng)域的技術(shù)人員可根據(jù)本發(fā)明做出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形 都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
8
權(quán)利要求
一種無(wú)虛擬通道的子環(huán)地址更新方法,其特征在于所述方法如下當(dāng)環(huán)網(wǎng)拓?fù)浒l(fā)生變化時(shí)即環(huán)網(wǎng)上有節(jié)點(diǎn)將端口阻塞,阻塞端口的節(jié)點(diǎn)刷新地址轉(zhuǎn)發(fā)表,同時(shí)清空兩個(gè)環(huán)上端口保存的<Node_ID,BPR>;所述阻塞端口的節(jié)點(diǎn)連續(xù)發(fā)送3個(gè)CLNB報(bào)文即清空<Node_ID,BPR>的報(bào)文,然后周期性地發(fā)送帶有地址刷新信息的協(xié)議報(bào)文;環(huán)上的節(jié)點(diǎn)收到CLNB報(bào)文后,清空兩個(gè)環(huán)上端口保存的<Node_ID,BPR>;當(dāng)環(huán)上的節(jié)點(diǎn)的環(huán)上端口收到R APS消息時(shí),所述環(huán)上端口讀取R APS消息的<Node_ID,BPR>信息,并且將R APS消息的<Node_ID,BPR>信息與環(huán)上端口自身保存的<Node_ID,BPR>信息進(jìn)行比較,如果不同,所述環(huán)上端口刪除原先保存的<Node_ID,BPR>信息并且存儲(chǔ)讀取的<Node_ID,BPR>;如果該讀取的<Node_ID,BPR>信息與所述節(jié)點(diǎn)的另一個(gè)環(huán)上端口保存的<Node_ID,BPR>信息不同并且所述接收到的報(bào)文中帶有地址刷新信息,該節(jié)點(diǎn)刷新地址轉(zhuǎn)發(fā)表。
2.根據(jù)權(quán)力要求1所述的一種無(wú)虛擬通道的子環(huán)地址更新方法,其特征在于所述帶有 地址刷新信息的協(xié)議報(bào)文包括SF、NR(RB)、FS和MS。
3.根據(jù)權(quán)力要求1所述的一種無(wú)虛擬通道的子環(huán)地址更新方法,其特征在于當(dāng)節(jié)點(diǎn) 的環(huán)上端口收到NR報(bào)文時(shí),所述環(huán)上端口不清空保存的<Node_ID,BPR>信息,也不將NR報(bào) 文中的<Node_ID,BPR>信息存儲(chǔ)在該端口中。
全文摘要
本發(fā)明公布了一種無(wú)虛擬通道的子環(huán)地址更新方法,當(dāng)環(huán)網(wǎng)拓?fù)浒l(fā)生變化時(shí)即環(huán)網(wǎng)上有節(jié)點(diǎn)將端口阻塞,阻塞端口的節(jié)點(diǎn)刷新地址轉(zhuǎn)發(fā)表,同時(shí)清空兩個(gè)環(huán)上端口保存的<Node_ID,BPR>;所述阻塞端口的節(jié)點(diǎn)連續(xù)發(fā)送3個(gè)CLNB報(bào)文即清空<Node_ID,BPR>的報(bào)文,然后周期性地發(fā)送帶有地址刷新信息的協(xié)議報(bào)文,環(huán)上的節(jié)點(diǎn)收到CLNB報(bào)文后,清空兩個(gè)環(huán)上端口保存的<Node_ID,BPR>。本發(fā)明能夠解決傳統(tǒng)方案中的地址刷新協(xié)議的缺陷,對(duì)提升子環(huán)的性能是非常有意義的。
文檔編號(hào)H04L12/56GK101977135SQ201010299569
公開(kāi)日2011年2月16日 申請(qǐng)日期2010年9月27日 優(yōu)先權(quán)日2010年9月27日
發(fā)明者王斌 申請(qǐng)人:南京郵電大學(xué)