一種以太環網的地址刷新方法
2023-06-20 04:15:21 5
專利名稱:一種以太環網的地址刷新方法
技術領域:
本發明涉及通信領域,尤其涉及一種以太環網的地址刷新方法。
背景技術:
隨著乙太網絡向著多業務承載的方向發展,特別是一些業務對網絡的可靠性、實
時性的要求越來越高,乙太網廣泛採用了環形的組網結構以提高網絡可靠性。在環形網
絡的保護方法中,通常需要進行快速的保護倒換,要求保護倒換時間在50ms以下。目前這
種快速保護倒換技術有IETF(InternetEngineering Task Force,網際網路工程任務組)的
RFC3619、 ITU-T(InternationalTelecommunication Union,國際電信聯盟)的G. 8032vl 等。 如圖1所示的以太環網保護技術,節點A至F都是具有乙太網交換功能的節點,網
絡M和節點B相連,網絡N和節點D相連。網絡M和網絡N之間有2條物理路徑,即 網絡N 節點D w節點C H節點B w網絡M ;禾口 網絡N H節點D <^節點E ,e節點F w節點A 一節點B <^網絡M 。
在應用乙太網環保護技術時,定義了環保護鏈路和控制節點,S卩在以太環網無故
障的情況下,以太環網上對數據報文進行阻塞防止環路形成的鏈路為環保護鏈路,通過對
這段環保護鏈路的操作,可以進行以太環網的主用路徑和保護路徑的切換。擁有環保護鏈
路的節點稱為控制節點(或者稱為主節點)。 如圖2a所示,以太環網包含的節點有A、 B、 C、 D、 E和F,包含的鏈路有〈A, B>、 〈B, C>、 〈C, D>、 〈D, E>、 〈E, F>和〈F, A>。節點A為控制節點,與a2埠直連的鏈路〈F, A>為環 保護鏈路。 當以太環網上的鏈路完好時,控制節點阻塞與環保護鏈路相連埠的數據報文轉 發功能,網絡中無環路產生,防止了由於網絡環路引起的"廣播風暴"。如圖2a所示,控制節 點A阻塞了 a2埠的數據報文轉發功能,網絡M和網絡N之間的通信路徑為網絡M^節 點B 發生了故障時,如果節點D的轉發表沒有刷新,網絡N向網絡M發送的數據報文仍 然沿著原來的路徑繼續傳輸,這些數據報文在節點C被丟棄,這種現象將一直持續到節點D 學習到節點B的正確地址為止。因此,在G.8032vl中,常常運用刷新地址轉發表的方法來防止節點仍然使用鏈路切換前的路徑轉發數據報文。 在G.8032vl中,地址刷新信息通常是由SF(鏈路故障通知)協議報文和NR(無請 求)協議報文的DNF欄位來指示。這些協議報文通常由源節點周期性發送,使以太環網穩 定地處於一種狀態。在G. 8032vl中,節點僅有IDLE(空閒)狀態和PROTECTION(保護)狀 態,分別定義如下 IDLE狀態以太環網上沒有故障,控制節點周期性發送的NR-RB協議報文,表示環 保護鏈路已經阻塞數據報文的轉發;以太環網上的節點收到該協議報文後都進入IDLE狀 態。 PROTECTION狀態以太環網上有故障,檢測到故障的節點周期性發送SF協議報 文;以太環網上收到SF協議報文的節點進入PROTECTION狀態。 為了防止節點重複刷新地址轉發表,在G.8032vl中,協議規定在一種節點狀態 下,節點僅刷新一次地址轉發表。如圖3a所示,以太環網上的鏈路〈B,C〉發生了故障,節點 B和節點C分別沿著b2和cl埠向外周期性發送SF協議報文。以太環網上的節點D、 E、 F和A雖然能夠不斷地收到SF協議報文,但是這些節點在PROTECTION狀態僅刷新一次地址 轉發表,即,節點在PROTECTION狀態收到第一個SF協議報文時刷新地址轉發表,對後續的 SF協議報文進行忽略。 上述地址刷新機制(即在一種狀態下僅刷新一次地址轉發表且節點僅有IDLE和 PROTECTION兩種狀態)在反轉恢復模式下沒有問題,但是對於非反轉恢復模式,則會出現 問題。 上述反轉恢復模式是指當以太環網的故障鏈路恢復正常時,整個以太環網僅在 控制節點與環保護鏈路相連的埠阻塞數據報文的轉發。上述非反轉恢復模式是指當以 太環網的故障鏈路恢復正常時,整個以太環網阻塞數據報文轉發的埠不一定是控制節點 與環保護鏈路相連的埠。 在反轉恢復模式下,當以太環網上的鏈路〈B,C〉的故障消失時,節點B和C分別沿 著b2和cl埠向外周期性發送NR協議報文,用於表示鏈路故障消失;節點A收到NR協議 報文後,啟動定時器,在定時器超時後阻塞a2埠的數據報文轉發功能,並發送NR-RB協議 報文;以太環網上的各節點在接收到NR-RB協議報文後進入IDLE狀態,並根據NR-RB協議 報文的DNF欄位刷新地址轉發表。 但是,在非反轉恢復模式下,如圖3b所示,當以太環網上的鏈路〈B, C>的故障消失 時,節點B和C分別沿著b2和cl埠向外周期性發送NR (NODE—ID)協議報文;節點B收 到節點C發送的NR(NODE_ID)協議報文時,發現節點C的NODE_ID (節點標識符)比自己的 大,則停止發送NR(NODEJD)協議報文,同時打開bl埠的數據報文轉發功能;節點C仍然 保持阻塞c2埠的數據報文轉發功能。根據G.8032vl的節點狀態規定,此時以太環網上 的各節點仍然處在PROTECTION狀態,以太環網上的各節點不會刷新地址轉發表。在這種情 況下,如果此後以太環網上的鏈路發生新的故障,節點的地址刷新就會遇到問題。如圖3c 所示,以太環網在鏈路〈B, C〉的故障消失一段時間以後,鏈路〈E, D>又發生了故障,節點E 和節點D檢測到故障後,分別沿著el和d2埠向外周期性發送SF協議報文,節點C收到 SF協議報文後,打開c2埠的數據報文轉發功能。由於此時以太環網上的各節點仍然處 於PROTECTION狀態,所有節點都不會刷新地址轉發表。然而,由於以太環網的拓撲結構發生了新的變化,如果以太環網上的節點沒有刷新地址轉發表,以太環網上的數據流會沿著 以太環網拓撲結構發生變化之前的路徑(即節點B^節點Aw節點Fo節點E^節點D) 轉發,數據會發生大量的丟失。 從以上分析可以看出,在非反轉恢復模式下採用現有技術中的地址刷新方法會出 現由於地址無法及時刷新而造成的數據丟失的問題。
發明內容
本發明所要解決的技術問題是,克服現有技術的不足,提供一種新的基於狀態轉 移的地址刷新機制,以解決在非反轉恢復模式下由於地址無法及時刷新而造成的數據丟失 的問題。 為了解決上述問題,本發明提供一種以太環網的地址刷新方法,該方法包括
以太環網中的各節點當前的節點狀態為保護狀態時,若以太環網中的第一鏈路的 故障消失,則通過第一鏈路相連的節點發送表示鏈路故障消失的無請求NR協議報文;以太 環網中接收到所述表示鏈路故障消失的NR協議報文的節點將節點狀態轉換為未決狀態;
以太環網中的各節點當前的節點狀態為未決狀態時,若以太環網出現鏈路故障, 則通過該故障鏈路相連的節點發送鏈路故障通知SF協議報文;以太環網中接收到所述SF 協議報文的節點將節點狀態轉換為保護狀態,並根據SF協議報文中攜帶的地址刷新信息 刷新地址轉發表。 此外,以太環網中的各節點當前的節點狀態為保護狀態時,若所述第一鏈路的故 障消失,則通過所述第一鏈路相連的節點阻塞所述第一鏈路的一個或多個埠的數據報文 轉發功能; 以太環網中的各節點當前的節點狀態為未決狀態時,所述出現故障的鏈路為第二 鏈路;接收到所述SF協議報文後,通過所述第一鏈路相連的節點打開已阻塞的所述第一鏈 路的埠的數據報文轉發功能。 此外,以太環網中的各節點當前的節點狀態為保護狀態時,若所述第一鏈路的故 障消失,則通過所述第一鏈路相連的節點將節點狀態轉換為未決狀態; 以太環網中的各節點當前的節點狀態為未決狀態時,若以太環網出現鏈路故障, 則通過所述出現故障的鏈路相連的節點將節點狀態轉換為保護狀態。 此外,以太環網中的各節點當前的節點狀態為未決狀態時,若以太環網出現鏈路 故障,則通過所述出現故障的鏈路相連的節點刷新地址轉發表。 此外,以太環網的控制節點接收到所述表示鏈路故障消失的NR協議報文後,啟動 等待恢復定時器,並在等待恢復定時器超時後發送表示環保護鏈路已經阻塞數據報文的轉 發的NR協議報文。 此外,以太環網中的各節點當前的節點狀態為未決狀態時,接收到控制節點發送 的所述用於表示環保護鏈路已經阻塞數據報文的轉發的NR協議報文後,節點將節點狀態 轉換為空閒狀態。 此外,以太環網中的各節點當前的節點狀態為未決狀態時,接收到控制節點發送 的所述用於表示環保護鏈路已經阻塞數據報文的轉發的NR協議報文後,節點根據該NR協 議報文中攜帶的地址刷新信息刷新地址轉發表。
此夕卜,以太環網中的節點僅在以下情況之一刷新地址轉發表 (A)當前的節點狀態為空閒狀態時,若節點檢測到鏈路故障,或接收到SF協議報 文;或 (B)當前的節點狀態為未決狀態時,若節點檢測到鏈路故障,或接收到SF協議報 文;或 (C)當前的節點狀態為未決狀態時,若節點啟動的等待恢復定時器超時,或節點接 收到用於表示環保護鏈路已經阻塞數據報文的轉發的NR協議報文。 綜上所述,本發明通過引用新的節點狀態(PENDING狀態),解決了非反轉恢復模 式下無法及時進行地址刷新的問題。
圖1為現有技術中以太環網的拓撲圖; 圖2a為現有技術中以太環網中鏈路完好時的通信路徑拓撲圖; 圖2b為現有技術中以太環網中鏈路故障時的通信路徑拓撲圖; 圖3a為現有技術中以太環網中鏈路故障時SF協議報文的傳輸示意圖; 圖3b為現有技術中以太環網的非反轉恢復示意圖; 圖3c為現有技術中以太環網鏈路在非反轉恢復後的另一鏈路發生故障的示意 圖; 圖4為本發明實施例基於狀態的地址刷新方法流程圖; 圖5a為本發明實施例節點由IDLE狀態進入PROTECTION狀態的示意圖; 圖5b為本發明實施例節點由PENDING狀態進入IDLE狀態的示意圖; 圖5c為本發明實施例節點由PENDING狀態進入PROTECTION狀態的示意圖; 圖6a、6b、6c和6d為本發明實施例基於狀態轉移的地址刷新方法的一個應用實例
示意圖。
具體實施例方式
本發明的基本思想是,引入一個新的節點狀態PENDING(未決)狀態;當以太環網 中的節點在PROTECTION狀態接收到NR協議報文時進入PENDING狀態,在PENDING狀態接 收到SF協議報文時進入PROTECTION狀態;並且僅當節點發生了 IDLE到PROTECTION、或 PENDING到IDLE (僅限於反轉恢復模式)、或PENDING到PROTECTION的狀態轉移時,節點才 根據協議報文中攜帶的地址刷新信息刷新地址轉發表。
上述3種節點狀態分別定義如下 IDLE狀態以太環網上沒有故障,控制節點周期性發送的NR-RB協議報文,表示環 保護鏈路已經阻塞數據報文的轉發;以太環網上的節點收到該協議報文後進入IDLE狀態。
PROTECTION狀態以太環網上有故障,檢測到故障的節點周期性發送SF協議報 文;以太環網上收到SF協議報文的節點進入PROTECTION狀態。 PENDING狀態以太環網上沒有故障,原故障鏈路兩端的節點或節點之一繼續阻 塞原故障鏈路埠的數據報文轉發功能,並周期性發送NR協議報文;以太環網上收到NR協 議報文的節點進入PENDING狀態。
需要注意的是,與現有技術不同,以太環網上的節點不能夠由PROTECTION狀態直 接進入IDLE狀態,必須經過PENDING狀態才能進入PROTECTION狀態。
下面將結合附圖和實施例對本發明進行詳細描述。
圖4是本發明實施例的地址刷新方法流程圖,步驟如下 步驟401,在以太環網上的每個節點配置2個狀態變量,一個是節點狀態記錄變量 ST,另一個是報文狀態記錄變量RV。 步驟402,當節點收到協議報文時,根據協議報文的類別確定報文狀態記錄變量 RV的值。 例如收到SF協議報文時,該節點的RV = PROTECTION ;收到NR協議報文時,該節 點的RV = PENDING ;收到NR-RB協議報文時,該節點的RV = IDLE。 步驟403,節點判定RV和ST是否相等;如果不等,執行步驟404 ;否則本流程結束。
步驟404,節點對RV和ST值進行判斷 如果ST = IDLE且RV = PROTECTION (情況1),則執行步驟405 ;
如果ST = PENDING且RV = IDLE (情況2),則執行步驟406 ;
如果ST = PENDING且RV = PROTECTION (情況3),則執行步驟407 ;
否則,本流程結束。 步驟405,對於情況l,節點檢查接收到的SF協議報文的地址刷新欄位,判斷節點 是否要刷新;如果要刷新,則刷新地址轉發表。 如圖5a所示,以太環網上的各節點開始處於IDLE狀態;當鏈路〈C, D〉發生了故 障,節點C和D向外周期性發送SF協議報文;以太環網上的其它節點收到SF協議報文後, 將RV值記錄為PROTECTION狀態;以太環網上的節點比較ST和RV的值,發現節點由IDLE 狀態進入PROTECTION狀態,隨後檢查收到的SF協議報文的地址刷新信息,如果需要刷新, 則刷新地址轉發表。 步驟406,對於情況2,節點檢查接收到的NR-RB協議報文的地址刷新欄位,判定節 點是否要刷新;如果要刷新,則刷新地址轉發表。 如圖5b所示,以太環網各節點開始處於PENDING狀態;節點C和節點D周期性發 送NR協議報文;控制節點收到NR協議報文後,啟動WTR(等待恢復)定時器;當WTR定時 器超時後,控制節點A周期性向外發送NR-RB協議報文;當以太環網上的節點收到NR-RB 協議報文後,將RV值記錄為IDLE狀態;以太環網上的節點比較ST和RV的值,發現節點由 PENDING進入IDLE狀態,隨後檢查收到的NR-RB協議報文的地址刷新信息,如果需要刷新, 則刷新地址轉發表。 步驟407,對於情況3,節點檢查接收到的SF協議報文的地址刷新欄位,判定節點 是否要刷新;如果要刷新,則刷新地址轉發表。 如圖5c所示,以太環網採用非反轉恢復模式,各節點開始處於PENDING狀態,節點 C和節點D周期性發送NR協議報文;當鏈路〈F, E>發生了故障,節點F和E向外周期性發 送SF協議報文;以太環網上的其它節點收到SF協議報文後,將RV值記錄為PROTECTION狀 態;以太環網上的節點比較ST和RV的值,發現節點由PENDING進入PROTECTION狀態,隨後 檢查收到的SF協議報文的地址刷新信息,如果需要刷新,則刷新地址轉發表。
步驟408,節點將ST記錄的節點狀態更新為RV記錄的報文狀態。
需要注意的是,上述流程中省略了發送協議報文的節點所進行的狀態轉移和地址 刷新操作。例如,當前各節點都處於PENDING狀態時,節點C和D檢測到鏈路〈C,D〉的故障 後,將自身的節點狀態記錄變量ST設置為PROTECTION,用於表示當前已進入PROTECTION狀 態。當然,節點C和D也可以在收到對方發送的SF協議報文後將節點狀態記錄變量ST設 置為PROTECTION.同樣,節點C和D可以在發送SF協議報文前刷新地址轉發表,也可以在 接收到對方發送的SF協議報文後刷新地址轉發表。
應用實例 某以太環網發生了單點故障後進行非反轉恢復,然後另外一條鏈路發生了故障。
如圖6a和6b所示,以太環網各節點開始處於IDLE狀態;當鏈路〈C, D〉發生 了故障,節點C和D檢測到該故障後刷新地址轉發表,將RV值記錄為PROTECTION狀態, 向外周期性發送SF協議報文;以太環網上的其它節點收到SF協議報文後,將RV值記 錄為PROTECTION狀態,以太環網上的各節點比較ST和RV的值,發現節點由IDLE進入 PROTECTION狀態,隨後檢查收到的SF協議報文的地址刷新信息,發現需要刷新,則各節點 刷新地址轉發表。 如圖6c所示,當〈C, D>鏈路的故障消失,節點C和/或D檢測到故障消失後繼 續阻塞原故障埠 (現在故障已消失)的數據報文的轉發功能,將RV值記錄為PENDING, 並周期性向外發送NR協議報文;以太環網上的其它節點收到該協議報文後,將RV值記錄 為PENDING狀態,以太環網上的各節點比較ST和RV的值,發現節點由PROTECTION進入 PENDING狀態,這種狀態轉移說明節點不需要進行地址刷新,因此以太環網上節點不刷新地 址轉發表。 如圖6d所示,以太環網的〈F, E〉鏈路發生故障,節點F和E檢測到該故障後阻 塞故障埠的數據報文的轉發,將RV值記錄為PROTECTION狀態,刷新地址轉發表,並向 外周期性發送SF協議報文;以太環網上的其它節點收到SF協議報文後,將RV值記錄為 PROTECTION狀態,同時節點C和節點D打開數據報文的轉發功能;以太環網上的各節點比 較ST和RV的值,發現節點由PENDING進入PROTECTION狀態,隨後檢查收到的SF協議報文 的地址刷新信息,如果發現需要刷新,則刷新各節點的地址轉發表。
權利要求
一種以太環網的地址刷新方法,其特徵在於,該方法包括以太環網中的各節點當前的節點狀態為保護狀態時,若以太環網中的第一鏈路的故障消失,則通過第一鏈路相連的節點發送表示鏈路故障消失的無請求NR協議報文;以太環網中接收到所述表示鏈路故障消失的NR協議報文的節點將節點狀態轉換為未決狀態;以太環網中的各節點當前的節點狀態為未決狀態時,若以太環網出現鏈路故障,則通過該故障鏈路相連的節點發送鏈路故障通知SF協議報文;以太環網中接收到所述SF協議報文的節點將節點狀態轉換為保護狀態,並根據SF協議報文中攜帶的地址刷新信息刷新地址轉發表。
2. 如權利要求l所述的方法,其特徵在於,以太環網中的各節點當前的節點狀態為保護狀態時,若所述第一鏈路的故障消失,則通過所述第一鏈路相連的節點阻塞所述第一鏈路的一個或多個埠的數據報文轉發功能;以太環網中的各節點當前的節點狀態為未決狀態時,所述出現故障的鏈路為第二鏈路;接收到所述SF協議報文後,通過所述第一鏈路相連的節點打開已阻塞的所述第一鏈路的埠的數據報文轉發功能。
3. 如權利要求1或2所述的方法,其特徵在於,以太環網中的各節點當前的節點狀態為保護狀態時,若所述第一鏈路的故障消失,則通過所述第一鏈路相連的節點將節點狀態轉換為未決狀態;以太環網中的各節點當前的節點狀態為未決狀態時,若以太環網出現鏈路故障,則通過所述出現故障的鏈路相連的節點將節點狀態轉換為保護狀態。
4. 如權利要求3所述的方法,其特徵在於,以太環網中的各節點當前的節點狀態為未決狀態時,若以太環網出現鏈路故障,則通過所述出現故障的鏈路相連的節點刷新地址轉發表。
5. 如權利要求l所述的方法,其特徵在於,以太環網的控制節點接收到所述表示鏈路故障消失的NR協議報文後,啟動等待恢復定時器,並在等待恢復定時器超時後發送表示環保護鏈路已經阻塞數據報文的轉發的NR協議報文。
6. 如權利要求5所述的方法,其特徵在於,以太環網中的各節點當前的節點狀態為未決狀態時,接收到控制節點發送的所述用於表示環保護鏈路已經阻塞數據報文的轉發的NR協議報文後,節點將節點狀態轉換為空閒狀態。
7. 如權利要求6所述的方法,其特徵在於,以太環網中的各節點當前的節點狀態為未決狀態時,接收到控制節點發送的所述用於表示環保護鏈路已經阻塞數據報文的轉發的NR協議報文後,節點根據該NR協議報文中攜帶的地址刷新信息刷新地址轉發表。
8. 如權利要求l所述的方法,其特徵在於,以太環網中的節點僅在以下情況之一刷新地址轉發表(A) 當前的節點狀態為空閒狀態時,若節點檢測到鏈路故障,或接收到SF協議報文;或(B) 當前的節點狀態為未決狀態時,若節點檢測到鏈路故障,或接收到SF協議報文;或(C)當前的節點狀態為未決狀態時,若節點啟動的等待恢復定時器超時,或節點接收到用於表示環保護鏈路已經阻塞數據報文的轉發的NR協議報文。
全文摘要
一種以太環網的地址刷新方法,該方法包括以太環網中的各節點當前的節點狀態為保護狀態時,若以太環網中的第一鏈路的故障消失,則通過第一鏈路相連的節點發送表示鏈路故障消失的NR協議報文;以太環網中接收到所述表示鏈路故障消失的NR協議報文的節點將節點狀態轉換為未決狀態;以太環網中的各節點當前的節點狀態為未決狀態時,若以太環網出現鏈路故障,則通過該故障鏈路相連的節點發送SF協議報文;以太環網中接收到所述SF協議報文的節點將節點狀態轉換為保護狀態,並根據SF協議報文中攜帶的地址刷新信息刷新地址轉發表。本發明通過引用新的節點狀態,解決了非反轉恢復模式下無法及時進行地址刷新的問題。
文檔編號H04L12/56GK101741673SQ200810179018
公開日2010年6月16日 申請日期2008年11月25日 優先權日2008年11月25日
發明者王斌 申請人:中興通訊股份有限公司