一種eprs環(huán)路多點故障的處理方法和設備的制作方法
【專利摘要】本發(fā)明公開了一種EPRS環(huán)路多點故障的處理方法和設備,該方法包括:當?shù)谝换ヂ?lián)節(jié)點的Common端口所在的鏈路發(fā)生故障時,所述第一互聯(lián)節(jié)點確定所述第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障;若第一互聯(lián)節(jié)點確定所述主環(huán)發(fā)生多點故障,則確定所述第一互聯(lián)節(jié)點觸發(fā)第一MS事件的第一優(yōu)先級;所述第一互聯(lián)節(jié)點阻塞所述第一互聯(lián)節(jié)點的第一子環(huán)端口,并通過所述第一子環(huán)端口發(fā)送第一MS報文,所述第一MS報文攜帶所述第一優(yōu)先級。本發(fā)明實施例中,可以避免流量發(fā)生中斷等問題。
【專利說明】一種EPRS環(huán)路多點故障的處理方法和設備
【技術領域】
[0001]本發(fā)明涉及通信【技術領域】,尤其是涉及一種EPRS環(huán)路多點故障的處理方法和設備。
【背景技術】
[0002]ERPS(Ethernet Ring Protect1n Switching,以太網(wǎng)環(huán)保護切換)是一個專門應用于以太網(wǎng)環(huán)的鏈路層協(xié)議。在以太網(wǎng)環(huán)完整時,ERPS能夠防止數(shù)據(jù)環(huán)路所引起的廣播風暴。在以太網(wǎng)環(huán)上一條鏈路斷開時,ERPS能夠迅速恢復以太網(wǎng)環(huán)上各個節(jié)點(即網(wǎng)絡設備)之間的通信通路,具備較高的收斂速度。
[0003]如圖1所示,為多環(huán)的ERPS網(wǎng)絡的組網(wǎng)示意圖,該ERPS網(wǎng)絡中包括一個主環(huán)和兩個子環(huán)。其中,主環(huán)上包括節(jié)點A、節(jié)點B、節(jié)點C和節(jié)點D,節(jié)點A為主節(jié)點,節(jié)點B為鄰居節(jié)點,節(jié)點C和節(jié)點D為普通節(jié)點,節(jié)點A與節(jié)點B之間的鏈路為RPL (Ring Protect1nLink,環(huán)網(wǎng)保護鏈路)。子環(huán)I上包括節(jié)點E、節(jié)點F、節(jié)點C和節(jié)點D,節(jié)點E為主節(jié)點,節(jié)點F為鄰居節(jié)點,節(jié)點C和節(jié)點D為互聯(lián)節(jié)點,連接主環(huán)和子環(huán)的節(jié)點為互聯(lián)節(jié)點,節(jié)點E與節(jié)點F之間的鏈路為RPL。子環(huán)2上包括節(jié)點B、節(jié)點C、節(jié)點G和節(jié)點H,節(jié)點G為主節(jié)點,節(jié)點H為鄰居節(jié)點,節(jié)點B和節(jié)點C為互聯(lián)節(jié)點,節(jié)點G與節(jié)點H之間的鏈路為RPL。
[0004]在ERPS網(wǎng)絡中,如果環(huán)路上沒有鏈路發(fā)生故障,則通過阻塞RPL兩端的端口防止環(huán)路的形成。如果環(huán)路上有鏈路發(fā)生故障,則阻塞故障端口,并打開RPL兩端的端口,從而將業(yè)務切換到RPL,完成環(huán)路的保護切換。
[0005]在多環(huán)的ERPS網(wǎng)絡中,如果主環(huán)有多點故障,則會導致互聯(lián)節(jié)點的鏈路都出現(xiàn)故障,并導致流量發(fā)生中斷。如圖1所示,如果節(jié)點B與節(jié)點C之間的鏈路發(fā)生故障,節(jié)點C與節(jié)點D之間的鏈路發(fā)生故障,則節(jié)點E和節(jié)點F無法感知到上述情況,不會打開RPL兩端的端口,節(jié)點G和節(jié)點H無法感知到上述情況,不會打開RPL兩端的端口,因此節(jié)點C與其它節(jié)點之間的流量將發(fā)生中斷。
【發(fā)明內(nèi)容】
[0006]本發(fā)明實施例提供一種以太網(wǎng)環(huán)保護切換EPRS環(huán)路多點故障的處理方法,所述方法包括以下步驟:
[0007]當?shù)谝换ヂ?lián)節(jié)點的公共Common端口所在的鏈路發(fā)生故障時,所述第一互聯(lián)節(jié)點確定所述第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障;其中,所述Common端口為在主環(huán)和子環(huán)的公共鏈路上的端口;
[0008]若所述第一互聯(lián)節(jié)點確定主環(huán)發(fā)生多點故障,則所述第一互聯(lián)節(jié)點確定所述第一互聯(lián)節(jié)點觸發(fā)第一手工切換MS事件的第一優(yōu)先級;
[0009]所述第一互聯(lián)節(jié)點阻塞所述第一互聯(lián)節(jié)點所在的第一子環(huán)上的第一子環(huán)端口,并通過所述第一子環(huán)端口發(fā)送第一 MS報文,所述第一 MS報文攜帶所述第一優(yōu)先級;
[0010]所述第一互聯(lián)節(jié)點接收所述第一子環(huán)上的第二互聯(lián)節(jié)點發(fā)送的第二 MS報文,所述第二 MS報文攜帶第二互聯(lián)節(jié)點觸發(fā)的第二 MS事件的第二優(yōu)先級;
[0011]若所述第二優(yōu)先級高于所述第一優(yōu)先級,或所述第二優(yōu)先級等于所述第一優(yōu)先級且所述第一互聯(lián)節(jié)點為次互聯(lián)節(jié)點,則所述第一互聯(lián)節(jié)點停止發(fā)送所述第一 MS報文,且打開所述第一子環(huán)端口。
[0012]所述方法還包括:
[0013]在所述第一互聯(lián)節(jié)點阻塞所述第一子環(huán)端口時,若所述第一互聯(lián)節(jié)點在觸發(fā)第一MS事件之前未觸發(fā)過MS事件,則所述第一互聯(lián)節(jié)點啟動所述第一子環(huán)端口對應的第一計時器;
[0014]當所述第一計時器超時時,所述第一互聯(lián)節(jié)點打開所述第一子環(huán)端口 ;
[0015]當所述第二優(yōu)先級高于所述第一優(yōu)先級,或所述第二優(yōu)先級等于所述第一優(yōu)先級且所述第一互聯(lián)節(jié)點為次互聯(lián)節(jié)點時,如果所述第一子環(huán)端口當前對應有所述第一計時器,則所述第一互聯(lián)節(jié)點刪除所述第一計時器。
[0016]所述第一互聯(lián)節(jié)點確定所述第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障,具體包括:
[0017]所述第一互聯(lián)節(jié)點判斷非common端口所在的鏈路是否發(fā)生故障;如果是,則確定所述第一互聯(lián)節(jié)點所在的主環(huán)發(fā)生多點故障;或者,
[0018]若所述第一互聯(lián)節(jié)點從所述非common端口收到的第一鏈路故障SF報文攜帶互聯(lián)介質(zhì)訪問控制MAC地址,則確定所述第一互聯(lián)節(jié)點所在的主環(huán)未發(fā)生多點故障,否則,確定所述第一互聯(lián)節(jié)點所在的主環(huán)發(fā)生多點故障;
[0019]其中,所述互聯(lián)MAC地址具體為所述第二互聯(lián)節(jié)點的MAC地址。
[0020]所述第一互聯(lián)節(jié)點確定所述第一互聯(lián)節(jié)點觸發(fā)第一手工切換MS事件的第一優(yōu)先級,具體包括:
[0021]當所述多點故障為所述第一互聯(lián)節(jié)點的Common端口所在的鏈路發(fā)生故障和所述第一互聯(lián)節(jié)點的非Common端口所在的鏈路發(fā)生故障時,所述第一互聯(lián)節(jié)點確定所述第一優(yōu)先級為最高優(yōu)先級;
[0022]當所述第一互聯(lián)節(jié)點通過所述第一 SF報文確定發(fā)生多點故障時,所述第一互聯(lián)節(jié)點確定所述第一優(yōu)先級為次高優(yōu)先級。
[0023]當所述第一互聯(lián)節(jié)點通過所述第一 SF報文確定發(fā)生多點故障時,所述方法還包括:
[0024]所述第一互聯(lián)節(jié)點通過所述第一互聯(lián)節(jié)點的非Common端口發(fā)送第二 SF報文,所述第二 SF報文攜帶觸發(fā)標識以及第一子環(huán)號,以使若所述主環(huán)上接收到所述第二 SF報文的第三互聯(lián)節(jié)點已觸發(fā)過MS事件且所述第三互聯(lián)節(jié)點上的第二子環(huán)端口阻塞并對應有第二計時器時,當所述第一子環(huán)號與所述第三互聯(lián)節(jié)點所在的第二子環(huán)號的比較結(jié)果符合預設規(guī)則,則所述第三互聯(lián)節(jié)點刪除所述第二定時器;其中,所述觸發(fā)標識用于指示發(fā)送所述第二 SF報文的互聯(lián)節(jié)點已觸發(fā)過MS事件。
[0025]本發(fā)明實施例提供一種以太網(wǎng)環(huán)保護切換EPRS環(huán)路多點故障的處理設備,作為環(huán)路網(wǎng)絡中的第一互聯(lián)節(jié)點,所述第一互聯(lián)節(jié)點具體包括:
[0026]確定模塊,用于當所述第一互聯(lián)節(jié)點的公共Common端口所在的鏈路發(fā)生故障時,確定所述第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障;其中,所述Common端口為在主環(huán)和子環(huán)的公共鏈路上的端口 ;若確定主環(huán)發(fā)生多點故障,則確定所述第一互聯(lián)節(jié)點觸發(fā)第一手工切換MS事件的第一優(yōu)先級;
[0027]發(fā)送模塊,用于阻塞所述第一互聯(lián)節(jié)點所在的第一子環(huán)上的第一子環(huán)端口,并通過所述第一子環(huán)端口發(fā)送第一 MS報文,所述第一 MS報文攜帶所述第一優(yōu)先級;
[0028]接收模塊,用于接收所述第一子環(huán)上的第二互聯(lián)節(jié)點發(fā)送的第二 MS報文,所述第二 MS報文攜帶第二互聯(lián)節(jié)點觸發(fā)的第二 MS事件的第二優(yōu)先級;
[0029]處理模塊,用于若所述第二優(yōu)先級高于所述第一優(yōu)先級,或所述第二優(yōu)先級等于所述第一優(yōu)先級且所述第一互聯(lián)節(jié)點為次互聯(lián)節(jié)點,則停止發(fā)送所述第一 MS報文,且打開所述第一子環(huán)端口。
[0030]所述處理模塊,還用于在所述第一互聯(lián)節(jié)點阻塞所述第一子環(huán)端口時,若所述第一互聯(lián)節(jié)點在觸發(fā)第一 MS事件之前未觸發(fā)過MS事件,則啟動所述第一子環(huán)端口對應的第一計時器;
[0031]當所述第一計時器超時時,打開所述第一子環(huán)端口 ;
[0032]當所述第二優(yōu)先級高于所述第一優(yōu)先級,或所述第二優(yōu)先級等于所述第一優(yōu)先級且所述第一互聯(lián)節(jié)點為次互聯(lián)節(jié)點時,如果所述第一子環(huán)端口當前對應有所述第一計時器,則刪除所述第一計時器。
[0033]所述確定模塊,具體用于在確定所述第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障時,判斷非common端口所在的鏈路是否發(fā)生故障;如果是,則確定所述第一互聯(lián)節(jié)點所在的主環(huán)發(fā)生多點故障;或者,
[0034]若所述第一互聯(lián)節(jié)點從所述非common端口收到的第一鏈路故障SF報文攜帶互聯(lián)介質(zhì)訪問控制MAC地址,則確定所述第一互聯(lián)節(jié)點所在的主環(huán)未發(fā)生多點故障,否則,確定所述第一互聯(lián)節(jié)點所在的主環(huán)發(fā)生多點故障;
[0035]其中,所述互聯(lián)MAC地址具體為所述第二互聯(lián)節(jié)點的MAC地址。
[0036]所述確定模塊,具體用于在確定所述第一互聯(lián)節(jié)點觸發(fā)第一 MS事件的第一優(yōu)先時,當所述多點故障為所述第一互聯(lián)節(jié)點的Common端口所在的鏈路發(fā)生故障和所述第一互聯(lián)節(jié)點的非Common端口所在的鏈路發(fā)生故障時,確定所述第一優(yōu)先級為最高優(yōu)先級;當所述第一互聯(lián)節(jié)點通過所述第一 SF報文確定發(fā)生多點故障時,確定所述第一優(yōu)先級為次高優(yōu)先級。
[0037]當所述第一互聯(lián)節(jié)點通過所述第一 SF報文確定發(fā)生多點故障時,
[0038]所述發(fā)送模塊,還用于通過所述第一互聯(lián)節(jié)點的非Common端口發(fā)送第二 SF報文,所述第二 SF報文攜帶觸發(fā)標識以及第一子環(huán)號,以使若所述主環(huán)上接收到所述第二 SF報文的第三互聯(lián)節(jié)點已觸發(fā)過MS事件且所述第三互聯(lián)節(jié)點上的第二子環(huán)端口阻塞并對應有第二計時器時,當所述第一子環(huán)號與所述第三互聯(lián)節(jié)點所在的第二子環(huán)號的比較結(jié)果符合預設規(guī)則,則所述第三互聯(lián)節(jié)點刪除所述第二定時器;其中,所述觸發(fā)標識用于指示發(fā)送所述第二 SF報文的互聯(lián)節(jié)點已觸發(fā)過MS事件。
[0039]基于上述技術方案,本發(fā)明實施例中,在多環(huán)的ERPS網(wǎng)絡中,如果主環(huán)有多點故障,互聯(lián)節(jié)點通過向子環(huán)發(fā)送攜帶優(yōu)先級的MS報文和向主環(huán)發(fā)送攜帶觸發(fā)標識和子環(huán)號的SF報文,使其它互聯(lián)節(jié)點確定阻塞相應的子環(huán)端口,從而避免流量發(fā)生中斷等問題,保證流量在多環(huán)的ERPS網(wǎng)絡中正常傳輸。
【專利附圖】
【附圖說明】
[0040]圖1是多環(huán)的ERPS網(wǎng)絡的組網(wǎng)示意圖;
[0041]圖2是本發(fā)明實施例提供的一種EPRS環(huán)路多點故障的處理方法流程圖;
[0042]圖3是本發(fā)明實施例提出的多點故障的應用場景示意圖;
[0043]圖4是本發(fā)明實施例提供的一種EPRS環(huán)路多點故障的處理設備結(jié)構圖。
【具體實施方式】
[0044]針對現(xiàn)有技術中存在的問題,本發(fā)明實施例提供一種EPRS環(huán)路多點故障的處理方法,該方法可以應用于包括一個主環(huán)和多個子環(huán)的ERPS網(wǎng)絡中。
[0045]本發(fā)明實施例中,針對一個子環(huán)上的兩個互聯(lián)節(jié)點:(1)在兩個互聯(lián)節(jié)點上分別配置Common (公共)端口,該Common端口為在主環(huán)和子環(huán)的公共鏈路上的端口。此外,在互聯(lián)節(jié)點上還包括非Common端口和子環(huán)端口。非Common端口是指互聯(lián)節(jié)點在主環(huán)上的除Common端口之外的其它端口。子環(huán)端口是指互聯(lián)節(jié)點在與Common端口同一子環(huán)上的除Common端口之外的其它端口。(2)在兩個互聯(lián)節(jié)點上分別配置互聯(lián)MAC (Media AccessControl,介質(zhì)訪問控制)地址;其中,在一個互聯(lián)節(jié)點上配置的互聯(lián)MAC地址為另一個互聯(lián)節(jié)點的MAC地址。(3)在一個互聯(lián)節(jié)點上配置該互聯(lián)節(jié)點為主(Primary)互聯(lián)節(jié)點,并在另一個互聯(lián)節(jié)點上配置該互聯(lián)節(jié)點為次(Secondry)互聯(lián)節(jié)點。
[0046]如圖2所示,該EPRS環(huán)路多點故障的處理方法包括以下步驟:
[0047]步驟201,當?shù)谝换ヂ?lián)節(jié)點的Common端口所在的鏈路發(fā)生故障時,第一互聯(lián)節(jié)點確定本第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障。
[0048]如果第一互聯(lián)節(jié)點確定主環(huán)發(fā)生多點故障,則執(zhí)行步驟202 ;如果第一互聯(lián)節(jié)點確定主環(huán)未發(fā)生多點故障,則第一互聯(lián)節(jié)點按照現(xiàn)有技術進行處理。
[0049]本發(fā)明實施例中,在第一互聯(lián)節(jié)點的Common端口所在的鏈路未發(fā)生故障時,無論主環(huán)上是否發(fā)生多點故障,第一互聯(lián)節(jié)點均不會開啟多點故障檢測,一旦第一互聯(lián)節(jié)點的Common端口所在的鏈路發(fā)生故障,則第一互聯(lián)節(jié)點就會開啟多點故障檢測,即第一互聯(lián)節(jié)點確定本第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障。
[0050]本發(fā)明實施例中,第一互聯(lián)節(jié)點確定本第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障,具體包括:第一互聯(lián)節(jié)點判斷本第一互聯(lián)節(jié)點的非common端口所在的鏈路是否發(fā)生故障;如果是,則第一互聯(lián)節(jié)點確定本第一互聯(lián)節(jié)點所在的主環(huán)發(fā)生多點故障;或者,若第一互聯(lián)節(jié)點從本第一互聯(lián)節(jié)點的非common端口收到的第一 SF(Signal fail,鏈路故障)報文中攜帶互聯(lián)MAC地址時,則第一互聯(lián)節(jié)點確定本第一互聯(lián)節(jié)點所在的主環(huán)未發(fā)生多點故障,否則,第一互聯(lián)節(jié)點確定本第一互聯(lián)節(jié)點所在的主環(huán)發(fā)生多點故障。
[0051]當主環(huán)上的節(jié)點檢測到有端口發(fā)生故障時,該節(jié)點會在主環(huán)上發(fā)送SF報文,且SF報文的NodeID(節(jié)點標識)字段中將攜帶本節(jié)點的MAC地址。其中,SF報文可以為基于R-APS (Ring Automatic Protect1n Switching,以太網(wǎng)環(huán)自動保護倒換)協(xié)議的SF報文,R-APS協(xié)議的報文格式與現(xiàn)有R-APS協(xié)議的報文格式相同,本發(fā)明實施例中將其稱為R-APS報文,且SF報文是指將R-APS報文的SF字段置位的報文?;诖耍谝换ヂ?lián)節(jié)點在從非common端口收到第一 SF報文之后,解析該第一 SF報文中的NodeID字段;如果該NodeID字段中攜帶的MAC地址是互聯(lián)MAC地址,則第一互聯(lián)節(jié)點確定本第一互聯(lián)節(jié)點所在的主環(huán)未發(fā)生多點故障,否則,第一互聯(lián)節(jié)點確定本第一互聯(lián)節(jié)點所在的主環(huán)發(fā)生多點故障。
[0052]步驟202,第一互聯(lián)節(jié)點確定本第一互聯(lián)節(jié)點觸發(fā)第一MS (Manual Switch,手工切換)事件的第一優(yōu)先級。
[0053]本發(fā)明實施例中,第一互聯(lián)節(jié)點確定本第一互聯(lián)節(jié)點觸發(fā)第一 MS事件的第一優(yōu)先級,具體包括但不限于如下方式:當多點故障為第一互聯(lián)節(jié)點的Common端口所在的鏈路發(fā)生故障和第一互聯(lián)節(jié)點的非Common端口所在的鏈路發(fā)生故障時,第一互聯(lián)節(jié)點確定第一優(yōu)先級為最高優(yōu)先級,后續(xù)以最高優(yōu)先級為O為例;當?shù)谝换ヂ?lián)節(jié)點通過第一 SF報文確定發(fā)生多點故障時,第一互聯(lián)節(jié)點確定第一優(yōu)先級為次高優(yōu)先級,后續(xù)以次高優(yōu)先級為I為例。
[0054]步驟203,第一互聯(lián)節(jié)點阻塞第一互聯(lián)節(jié)點所在的第一子環(huán)上的第一子環(huán)端口,并通過第一互聯(lián)節(jié)點上的第一子環(huán)端口發(fā)送第一 MS報文。
[0055]其中,該第一 MS報文攜帶第一優(yōu)先級,且該第一 MS報文用于使第一子環(huán)上的第二互聯(lián)節(jié)點收到第一 MS報文時,若第二互聯(lián)節(jié)點觸發(fā)的第二 MS事件的第二優(yōu)先級低于第一優(yōu)先級,或第二優(yōu)先級等于第一優(yōu)先級且第二互聯(lián)節(jié)點為次互聯(lián)節(jié)點,由第二互聯(lián)節(jié)點停止發(fā)送第二 MS報文,且打開觸發(fā)第二 MS事件時阻塞的子環(huán)端口。
[0056]步驟204,第一互聯(lián)節(jié)點接收第一子環(huán)上的第二互聯(lián)節(jié)點發(fā)送的第二 MS報文,該第二 MS報文攜帶第二互聯(lián)節(jié)點觸發(fā)的第二 MS事件的第二優(yōu)先級。
[0057]步驟205,若第二優(yōu)先級高于第一優(yōu)先級,或第二優(yōu)先級等于第一優(yōu)先級且第一互聯(lián)節(jié)點為次互聯(lián)節(jié)點,則第一互聯(lián)節(jié)點停止發(fā)送第一 MS報文,且打開第一子環(huán)端口(即之前阻塞的第一子環(huán)上的第一子環(huán)端口)。
[0058]本發(fā)明實施例中,在第一互聯(lián)節(jié)點阻塞第一互聯(lián)節(jié)點的第一子環(huán)端口時,若第一互聯(lián)節(jié)點在觸發(fā)第一 MS事件之前未觸發(fā)過MS事件,則第一互聯(lián)節(jié)點啟動第一子環(huán)端口對應的第一計時器。其中,子環(huán)端口對應的計時器用于超時放開因MS事件觸發(fā)阻塞的子環(huán)端口,且因MS事件觸發(fā)阻塞互聯(lián)節(jié)點上的子環(huán)端口是為了防止短時間內(nèi)網(wǎng)絡中可能出現(xiàn)的環(huán)路?;诖耍?shù)谝蛔迎h(huán)端口對應的第一計時器超時,第一互聯(lián)節(jié)點打開第一子環(huán)端口。
[0059]進一步的,當?shù)诙?yōu)先級高于第一優(yōu)先級,或第二優(yōu)先級等于第一優(yōu)先級且第一互聯(lián)節(jié)點為次互聯(lián)節(jié)點時,如果第一子環(huán)端口當前對應有第一計時器,則第一互聯(lián)節(jié)點還可以刪除第一子環(huán)端口對應的第一計時器。
[0060]本發(fā)明實施例中,MS報文中可以預留優(yōu)先級字段,優(yōu)先級字段用于標識MS事件的級別,如O表示最高優(yōu)先級,I表示次高優(yōu)先級,因此第一 MS報文中可以攜帶第一優(yōu)先級。其中,MS報文可以為基于R-APS協(xié)議的MS報文,R-APS協(xié)議的報文格式與現(xiàn)有R-APS協(xié)議的報文格式相同,本發(fā)明實施例中將其稱為R-APS報文,且MS報文是指將R-APS報文的MS置位的報文。
[0061]本發(fā)明實施例中,當?shù)谝换ヂ?lián)節(jié)點通過第一 SF報文確定發(fā)生多點故障時,第一互聯(lián)節(jié)點還可以通過第一互聯(lián)節(jié)點的非Common端口發(fā)送第二 SF報文,該第二 SF報文中攜帶觸發(fā)標識以及第一子環(huán)號,以使若主環(huán)上接收到該第二 SF報文的第三互聯(lián)節(jié)點已觸發(fā)過MS事件,且第三互聯(lián)節(jié)點上的第二子環(huán)端口阻塞并對應有第二計時器時,當?shù)谝蛔迎h(huán)號與第三互聯(lián)節(jié)點所在的第二子環(huán)號的比較結(jié)果符合預設規(guī)則,則第三互聯(lián)節(jié)點刪除該第二定時器。其中,觸發(fā)標識用于指示發(fā)送第二 SF報文的互聯(lián)節(jié)點已經(jīng)觸發(fā)過MS事件。
[0062]本發(fā)明實施例中,SF報文中可以預留觸發(fā)標識字段,且觸發(fā)標識字段表示主環(huán)上的互聯(lián)節(jié)點是否因多點故障已經(jīng)給某個子環(huán)觸發(fā)過MS事件,在觸發(fā)標識字段攜帶的是觸發(fā)標識(如I)時,表示互聯(lián)節(jié)點因多點故障已經(jīng)給某個子環(huán)觸發(fā)過MS事件,在觸發(fā)標識字段攜帶的是未觸發(fā)標識(如O)時,表示互聯(lián)節(jié)點沒有因多點故障給某個子環(huán)觸發(fā)過MS事件。在互聯(lián)節(jié)點因多點故障已經(jīng)給某個子環(huán)觸發(fā)過MS事件時,SF報文中還會攜帶該子環(huán)的子環(huán)號。
[0063]其中,該觸發(fā)標識字段可以通過already (已經(jīng))標記位表示,already標記位置位表示互聯(lián)節(jié)點因多點故障已經(jīng)給某個子環(huán)觸發(fā)過MS事件,already標記位未置位表示互聯(lián)節(jié)點沒有因多點故障給某個子環(huán)觸發(fā)過MS事件。進一步的,互聯(lián)節(jié)點上也可以維護already標記位,如果already標記位已經(jīng)置位,則表示互聯(lián)節(jié)點因多點故障已經(jīng)給某個子環(huán)觸發(fā)過MS事件,如果already標記位沒有置位,則表示互聯(lián)節(jié)點沒有因多點故障給某個子環(huán)觸發(fā)過MS事件。
[0064]本發(fā)明實施例中,當主環(huán)上的多點故障恢復時,各互聯(lián)節(jié)點可以清除MS事件,并清除自身的already標記位,且子環(huán)RPL端口恢復阻塞狀態(tài)。
[0065]基于上述技術方案,本發(fā)明實施例中,在多環(huán)的ERPS網(wǎng)絡中,如果主環(huán)有多點故障,互聯(lián)節(jié)點通過向子環(huán)發(fā)送攜帶優(yōu)先級的MS報文和向主環(huán)發(fā)送攜帶觸發(fā)標識和子環(huán)號的SF報文,使其它互聯(lián)節(jié)點確定阻塞相應的子環(huán)端口,從而避免流量發(fā)生中斷等問題,保證流量在多環(huán)的ERPS網(wǎng)絡中正常傳輸。
[0066]以下結(jié)合具體應用場景對本發(fā)明實施例提供的技術方案進行詳細說明。
[0067]應用場景I。如圖1所示,主環(huán)上包括節(jié)點A、節(jié)點B、節(jié)點C和節(jié)點D,節(jié)點A為主節(jié)點,節(jié)點B為鄰居節(jié)點,節(jié)點C和節(jié)點D為普通節(jié)點,節(jié)點A與節(jié)點B之間的鏈路為RPL。子環(huán)I上包括節(jié)點E、節(jié)點F、節(jié)點C和節(jié)點D,節(jié)點E為主節(jié)點,節(jié)點F為鄰居節(jié)點,節(jié)點C和節(jié)點D為互聯(lián)節(jié)點,節(jié)點E與節(jié)點F之間的鏈路為RPL。子環(huán)2上包括節(jié)點B、節(jié)點C、節(jié)點G和節(jié)點H,節(jié)點G為主節(jié)點,節(jié)點H為鄰居節(jié)點,節(jié)點B和節(jié)點C為互聯(lián)節(jié)點,節(jié)點G與節(jié)點H之間的鏈路為RPL。
[0068]針對子環(huán)I上的兩個互聯(lián)節(jié)點(節(jié)點C和節(jié)點D),在節(jié)點C上配置端口 7為Common端口,配置互聯(lián)MAC地址為節(jié)點D的MAC地址,配置節(jié)點C為次互聯(lián)節(jié)點,且節(jié)點C上的非Common端口為端口 6,節(jié)點C上的子環(huán)端口為端口 8 ;在節(jié)點D上配置端口 10為Common端口,配置互聯(lián)MAC地址為節(jié)點C的MAC地址,配置節(jié)點D為主互聯(lián)節(jié)點,且節(jié)點D上的非Common端口為端口 11,節(jié)點D上的子環(huán)端口為端口 12。針對子環(huán)2上的兩個互聯(lián)節(jié)點(節(jié)點C和節(jié)點B),在節(jié)點C上配置端口 6為Common端口,配置互聯(lián)MAC地址為節(jié)點B的MAC地址,配置節(jié)點C為次互聯(lián)節(jié)點,且節(jié)點C上的非Common端口為端口 7,節(jié)點C上的子環(huán)端口為端口 9 ;在節(jié)點B上配置端口 4為Common端口,配置互聯(lián)MAC地址為節(jié)點C的MAC地址,配置節(jié)點B為主互聯(lián)節(jié)點,且節(jié)點B上的非Common端口為端口 3,節(jié)點B上的子環(huán)端口為端口 5。
[0069]當主環(huán)上沒有發(fā)生故障時,主環(huán)和子環(huán)上的RPL都處于阻塞狀態(tài),即節(jié)點A阻塞端口 I,節(jié)點B阻塞端口 3,節(jié)點E阻塞端口 14,節(jié)點F阻塞端口 15,節(jié)點G阻塞端口 18,節(jié)點H阻塞端口 19,此時,網(wǎng)絡中所有節(jié)點互通且沒有產(chǎn)生環(huán)路。
[0070] 如果端口 10與端口 7之間的鏈路發(fā)生故障,且主環(huán)上的其它鏈路沒有發(fā)生故障。節(jié)點D會檢測到Common端口(端口 10)對應的鏈路發(fā)生故障,此時節(jié)點D確定非Common端口(端口 11)對應的鏈路沒有發(fā)生故障,并從端口 11發(fā)送攜帶本節(jié)點D的MAC地址的SF報文,并且從端口 11收到的SF報文中攜帶的是互聯(lián)MAC地址,因此節(jié)點D確定主環(huán)未發(fā)生多點故障,結(jié)束處理流程。同理,節(jié)點C會檢測到Common端口(端口 7)對應的鏈路發(fā)生故障,此時節(jié)點C確定非Common端口(端口 6)對應的鏈路沒有發(fā)生故障,并從端口 6發(fā)送攜帶本節(jié)點C的MAC地址的SF報文,并且從端口 6收到的SF報文中攜帶的是互聯(lián)MAC地址,因此節(jié)點C確定主環(huán)未發(fā)生多點故障,結(jié)束處理流程。節(jié)點A和節(jié)點B在收到節(jié)點C或節(jié)點D發(fā)送的SF報文后,分別打開端口 I和端口 3。
[0071 ] 如果端口 10與端口 7之間的鏈路發(fā)生故障,且端口 4與端口 6之間的鏈路發(fā)生故障。針對子環(huán)1,節(jié)點D會檢測到端口 10對應的鏈路發(fā)生故障,此時節(jié)點D確定端口 11對應的鏈路沒有發(fā)生故障,并從端口 11發(fā)送攜帶本節(jié)點D的MAC地址的SF報文,并且從端口11收到的SF報文中攜帶的是節(jié)點B的MAC地址,不是互聯(lián)MAC地址(不是節(jié)點C的MAC地址),因此節(jié)點D確定主環(huán)發(fā)生多點故障。節(jié)點C會檢測到端口 7對應的鏈路發(fā)生故障,此時節(jié)點C確定端口 6對應的鏈路發(fā)生故障,因此節(jié)點C確定主環(huán)發(fā)生多點故障。針對子環(huán)2,節(jié)點B會檢測到端口 4對應的鏈路發(fā)生故障,此時節(jié)點B確定端口 3對應的鏈路沒有發(fā)生故障,并從端口 3發(fā)送攜帶本節(jié)點B的MAC地址的SF報文,并且從端口 3收到的SF報文中攜帶的是節(jié)點D的MAC地址,不是互聯(lián)MAC地址(不是節(jié)點C的MAC地址),因此節(jié)點B確定主環(huán)發(fā)生多點故障。節(jié)點C會檢測到端口 6對應的鏈路發(fā)生故障,此時節(jié)點C確定端口 7對應的鏈路發(fā)生故障,因此節(jié)點C確定主環(huán)發(fā)生多點故障。
[0072]針對子環(huán)1,由于節(jié)點D是通過SF報文確定發(fā)生多點故障,因此節(jié)點D通過端口 12向子環(huán)I發(fā)送攜帶優(yōu)先級為I的MS報文,并阻塞子環(huán)I上的端口 12,且由于節(jié)點D之前未觸發(fā)過MS事件,因此啟動端口 12對應的計時器;進一步的,節(jié)點D通過端口 11向主環(huán)發(fā)送攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文。由于節(jié)點C是通過Common端口所在的鏈路和非Common端口所在的鏈路發(fā)生故障確定發(fā)生多點故障,因此節(jié)點C通過端口 8向子環(huán)I發(fā)送攜帶優(yōu)先級為O的MS報文,并阻塞子環(huán)I上的端口 8,且由于節(jié)點C之前未觸發(fā)過MS事件(以節(jié)點C先針對子環(huán)I進行處理為例進行說明),因此啟動端口 8對應的計時器。針對子環(huán)2,由于節(jié)點B是通過SF報文確定發(fā)生多點故障,因此節(jié)點B通過端口
5向子環(huán)2發(fā)送攜帶優(yōu)先級為I的MS報文,并阻塞子環(huán)2上的端口 5,且由于節(jié)點B之前未觸發(fā)過MS事件,因此啟動端口 5對應的計時器;進一步的,節(jié)點B通過端口 3向主環(huán)發(fā)送攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文。由于節(jié)點C是通過Common端口所在的鏈路和非Common端口所在的鏈路發(fā)生故障確定發(fā)生多點故障,因此節(jié)點C通過端口9向子環(huán)2發(fā)送攜帶優(yōu)先級為O的MS報文,并阻塞子環(huán)2上的端口 9,且由于節(jié)點C之前已經(jīng)觸發(fā)過MS事件(即已經(jīng)觸發(fā)過針對子環(huán)I的MS事件),因此,不需要啟動端口 9對應的計時器。
[0073]針對子環(huán)1,節(jié)點E在收到MS報文之后,打開端口 14,節(jié)點F在收到MS報文之后,打開端口 15。針對子環(huán)2,節(jié)點G在收到MS報文之后,打開端口 18,節(jié)點H在收到MS報文之后,打開端口 19。
[0074]針對子環(huán)1,情況一、如果節(jié)點D先收到節(jié)點C發(fā)送的MS報文,后收到節(jié)點B發(fā)送的攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文,則:節(jié)點D在收到來自節(jié)點C的優(yōu)先級為O的MS報文之后,由于優(yōu)先級O高于自身的優(yōu)先級1,因此節(jié)點D停止通過端口12向子環(huán)I發(fā)送攜帶優(yōu)先級為I的MS報文,并打開之前阻塞的子環(huán)I上的端口 12,并刪除端口 12對應的計時器。節(jié)點D在收到來自節(jié)點B的攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文之后,由于節(jié)點D上已經(jīng)沒有計時器,因此不在做任何處理。情況二、如果節(jié)點D先收到節(jié)點B發(fā)送的攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文,后收到節(jié)點C發(fā)送的MS報文,則:節(jié)點D在收到來自節(jié)點B的攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文之后,節(jié)點D上存在端口 12對應的計時器,但是節(jié)點D對應的子環(huán)I的環(huán)號小于SF報文中攜帶的子環(huán)2的環(huán)號(預設的規(guī)則為:節(jié)點所在子環(huán)號大于SF報文中攜帶的子環(huán)號),因此,節(jié)點D不做任何處理。節(jié)點D在收到來自節(jié)點C的優(yōu)先級為O的MS報文之后,由于優(yōu)先級O高于自身的優(yōu)先級1,因此節(jié)點D停止通過端口 12向子環(huán)I發(fā)送攜帶優(yōu)先級為I的MS報文,并打開之前阻塞的子環(huán)I上的端口 12,并刪除端口12對應的計時器。
[0075]針對子環(huán)1,節(jié)點C在收到來自節(jié)點D的優(yōu)先級為I的MS報文之后,由于優(yōu)先級I低于自身的優(yōu)先級0,因此不在做任何處理。由于節(jié)點C在主環(huán)上的所有端口對應的鏈路均故障,因此不會收到SF報文。
[0076]針對子環(huán)2,情況一、如果節(jié)點B先收到節(jié)點C發(fā)送的MS報文,后收到節(jié)點D發(fā)送的攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文,則:節(jié)點B在收到來自節(jié)點C的優(yōu)先級為O的MS報文之后,由于優(yōu)先級O高于自身的優(yōu)先級1,因此節(jié)點B停止通過端口 5向子環(huán)2發(fā)送攜帶優(yōu)先級為I的MS報文,并打開之前阻塞的子環(huán)2上的端口 5,并刪除端口 5對應的計時器。節(jié)點B在收到來自節(jié)點D的攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文之后,由于節(jié)點B上已經(jīng)沒有計時器,因此不在做任何處理。情況二、如果節(jié)點B先收到節(jié)點D發(fā)送的攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文,后收到節(jié)點C發(fā)送的MS報文,則:節(jié)點B在收到來自節(jié)點D的攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文之后,節(jié)點B上存在端口 5對應的計時器,且節(jié)點B對應的子環(huán)2的環(huán)號大于SF報文中攜帶的子環(huán)I的環(huán)號,因此,節(jié)點B刪除端口 5對應的計時器。節(jié)點B在收到來自節(jié)點C的優(yōu)先級為O的MS報文之后,由于優(yōu)先級O高于自身的優(yōu)先級1,因此節(jié)點B停止通過端口 5向子環(huán)2發(fā)送攜帶優(yōu)先級為I的MS報文,并打開之前阻塞的子環(huán)2上的端口 5,由于端口 5對應的計時器已經(jīng)被刪除,因此節(jié)點B無需刪除計時器。
[0077]針對子環(huán)2,節(jié)點C在收到來自節(jié)點B的優(yōu)先級為I的MS報文之后,由于優(yōu)先級I低于自身的優(yōu)先級0,因此不在做任何處理。
[0078]進一步的,在經(jīng)過一定時間之后,節(jié)點C上啟動的端口 8對應的計時器將會超時,此時節(jié)點C會打開之前阻塞的子環(huán)I上的端口 8。
[0079]在經(jīng)過上述處理之后,當端口 10與端口 7之間的鏈路發(fā)生故障,且端口 4與端口 6之間的鏈路發(fā)生故障時,只有節(jié)點C上的端口 9處于阻塞狀態(tài),此時,網(wǎng)絡中的所有流量都可以正?;ネ?,而且不會產(chǎn)生環(huán)路。
[0080]應用場景2。如圖3所示,主環(huán)上包括節(jié)點A、節(jié)點B、節(jié)點C和節(jié)點D,節(jié)點A為主節(jié)點,節(jié)點B為鄰居節(jié)點,節(jié)點C和節(jié)點D為普通節(jié)點,節(jié)點A與節(jié)點B之間的鏈路為RPL。子環(huán)I上包括節(jié)點E、節(jié)點F、節(jié)點C和節(jié)點D,節(jié)點E為主節(jié)點,節(jié)點F為鄰居節(jié)點,節(jié)點C和節(jié)點D為互聯(lián)節(jié)點,節(jié)點E與節(jié)點F之間的鏈路為RPL。子環(huán)2上包括節(jié)點A、節(jié)點B、節(jié)點G和節(jié)點H,節(jié)點G為主節(jié)點,節(jié)點H為鄰居節(jié)點,節(jié)點A和節(jié)點B為互聯(lián)節(jié)點,節(jié)點G與節(jié)點H之間的鏈路為RPL。針對子環(huán)I上的兩個互聯(lián)節(jié)點(節(jié)點C和節(jié)點D),在節(jié)點C上配置端口 8為Common端口,配置互聯(lián)MAC地址為節(jié)點D的MAC地址,配置節(jié)點C為次互聯(lián)節(jié)點,且節(jié)點C上的非Common端口為端口 7,節(jié)點C上的子環(huán)端口為端口 9 ;在節(jié)點D上配置端口 10為Common端口,配置互聯(lián)MAC地址為節(jié)點C的MAC地址,配置節(jié)點D為主互聯(lián)節(jié)點,且節(jié)點D上的非Common端口為端口 11,節(jié)點D上的子環(huán)端口為端口 12。針對子環(huán)2上的兩個互聯(lián)節(jié)點(節(jié)點A和節(jié)點B),在節(jié)點A上配置端口 I為Common端口,配置互聯(lián)MAC地址為節(jié)點B的MAC地址,配置節(jié)點A為次互聯(lián)節(jié)點,且節(jié)點A上的非Common端口為端口2,節(jié)點A上的子環(huán)端口為端口 3 ;在節(jié)點B上配置端口 4為Common端口,配置互聯(lián)MAC地址為節(jié)點A的MAC地址,配置節(jié)點B為主互聯(lián)節(jié)點,且節(jié)點B上的非Common端口為端口 5,節(jié)點C上的子環(huán)端口為端口 6。
[0081]當主環(huán)上沒有發(fā)生故障時,主環(huán)和子環(huán)的所有RPL端口都處于阻塞轉(zhuǎn)臺,即節(jié)點A阻塞端口 1,節(jié)點B阻塞端口 4,節(jié)點E阻塞端口 14,節(jié)點F阻塞端口 16,節(jié)點G阻塞端口20,節(jié)點H阻塞端口 18,此時,網(wǎng)絡中所有節(jié)點互通且沒有產(chǎn)生環(huán)路。
[0082]如果端口 I與端口 4之間的鏈路發(fā)生故障,且端口 10與端口 8之間的鏈路發(fā)生故障。針對子環(huán)1,節(jié)點D會檢測到端口 10對應的鏈路發(fā)生故障,此時節(jié)點D確定端口 11對應的鏈路沒有發(fā)生故障,并從端口 11發(fā)送攜帶本節(jié)點D的MAC地址的SF報文,且從端口 11收到的SF報文中攜帶的節(jié)點A的MAC地址,不是互聯(lián)MAC地址(不是節(jié)點C的MAC地址),因此節(jié)點D確定主環(huán)發(fā)生多點故障。節(jié)點C會檢測到端口 8對應的鏈路發(fā)生故障,此時節(jié)點C確定端口 7對應的鏈路沒有發(fā)生故障,并從端口 7發(fā)送攜帶本節(jié)點C的MAC地址的SF報文,且從端口 7收到的SF報文中攜帶的是節(jié)點B的MAC地址,不是互聯(lián)MAC地址(不是節(jié)點D的MAC地址),因此節(jié)點C確定主環(huán)發(fā)生多點故障。針對子環(huán)2,節(jié)點A會檢測到端口 I對應的鏈路發(fā)生故障,此時節(jié)點A確定端口 2對應的鏈路沒有發(fā)生故障,并從端口 2發(fā)送攜帶本節(jié)點A的MAC地址的SF報文,且從端口 2收到的SF報文中攜帶的是節(jié)點D的MAC地址,不是互聯(lián)MAC地址(不是節(jié)點B的MAC地址),因此節(jié)點A確定主環(huán)發(fā)生多點故障。節(jié)點B會檢測到端口 4對應的鏈路發(fā)生故障,此時節(jié)點B確定端口 5對應的鏈路沒有發(fā)生故障,并從端口 5發(fā)送攜帶本節(jié)點B的MAC地址的SF報文,且從端口 5收到的SF報文中攜帶的是節(jié)點C的MAC地址,不是互聯(lián)MAC地址(不是節(jié)點A的MAC地址),因此節(jié)點B確定主環(huán)發(fā)生多點故障。
[0083]針對子環(huán)1,由于節(jié)點D是通過SF報文確定發(fā)生多點故障,因此節(jié)點D通過端口12向子環(huán)I發(fā)送攜帶優(yōu)先級為I的MS報文,并阻塞子環(huán)I上的端口 12,且由于節(jié)點D之前未觸發(fā)過MS事件,因此啟動端口 12對應的計時器;進一步的,節(jié)點D通過端口 11向主環(huán)發(fā)送攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文。由于節(jié)點C是通過SF報文確定發(fā)生多點故障,因此節(jié)點C通過端口 9向子環(huán)I發(fā)送攜帶優(yōu)先級為I的MS報文,并阻塞子環(huán)I上的端口 9,且由于節(jié)點C之前未觸發(fā)過MS事件,因此啟動端口 9對應的計時器;進一步的,節(jié)點C通過端口 7向主環(huán)發(fā)送攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文。
[0084]針對子環(huán)2,由于節(jié)點A是通過SF報文確定發(fā)生多點故障,因此節(jié)點A通過端口 3向子環(huán)2發(fā)送攜帶優(yōu)先級為I的MS報文,并阻塞子環(huán)2上的端口 3,且由于節(jié)點A之前未觸發(fā)過MS事件,因此啟動端口 3對應的計時器;進一步的,節(jié)點A通過端口 2向主環(huán)發(fā)送攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文。由于節(jié)點B是通過SF報文確定發(fā)生多點故障,因此節(jié)點B通過端口 6向子環(huán)2發(fā)送攜帶優(yōu)先級為I的MS報文,并阻塞子環(huán)2上的端口 6,且由于節(jié)點B之前未觸發(fā)過MS事件,因此啟動端口 6對應的計時器;進一步的,節(jié)點B通過端口 5向主環(huán)發(fā)送攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文。
[0085]針對子環(huán)1,節(jié)點E在收到MS報文之后,打開端口 14,節(jié)點F在收到MS報文之后,打開端口 16。針對子環(huán)2,節(jié)點G在收到MS報文之后,打開端口 20,節(jié)點H在收到MS報文之后,打開端口 18。
[0086]針對子環(huán)1,情況一、如果節(jié)點D先收到節(jié)點C發(fā)送的MS報文,后收到節(jié)點A發(fā)送的攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文,則:節(jié)點D在收到來自節(jié)點C的優(yōu)先級為I的MS報文之后,由于優(yōu)先級I等于自身的優(yōu)先級1,且節(jié)點D自身為主互聯(lián)節(jié)點,因此不在做任何處理。節(jié)點D在收到來自節(jié)點A的攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文之后,節(jié)點D上存在端口 12對應的計時器,但由于節(jié)點D對應的子環(huán)I的環(huán)號小于SF報文中攜帶的子環(huán)2的環(huán)號(預設規(guī)則為:節(jié)點所在子環(huán)號大于SF報文中攜帶的子環(huán)號),因此節(jié)點D不在做任何處理。情況二、如果節(jié)點D先收到節(jié)點A發(fā)送的攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文,后收到節(jié)點C發(fā)送的MS報文,則:節(jié)點D在收到來自節(jié)點A的攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文之后,節(jié)點D上存在端口 12對應的計時器,但由于節(jié)點D對應的子環(huán)I的環(huán)號小于SF報文中攜帶的子環(huán)2的環(huán)號,因此節(jié)點D不在做任何處理。節(jié)點D在收到來自節(jié)點C的優(yōu)先級為I的MS報文之后,由于優(yōu)先級I等于自身的優(yōu)先級1,且節(jié)點D自身為主互聯(lián)節(jié)點,因此不在做任何處理。
[0087]針對子環(huán)1,情況一、如果節(jié)點C先收到節(jié)點D發(fā)送的MS報文,后收到節(jié)點B發(fā)送的攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文,則:節(jié)點C在收到來自節(jié)點D的優(yōu)先級為I的MS報文之后,由于優(yōu)先級I等于自身的優(yōu)先級1,且節(jié)點C自身為次互聯(lián)節(jié)點,因此節(jié)點C停止通過端口 9向子環(huán)I發(fā)送攜帶優(yōu)先級為I的MS報文,并打開之前阻塞的子環(huán)I上的端口 9,并刪除端口 9對應的計時器。節(jié)點C在收到來自節(jié)點B的攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文之后,由于節(jié)點C對應的子環(huán)I的環(huán)號小于SF報文中攜帶的子環(huán)2的環(huán)號,因此不在做任何處理。情況二、如果節(jié)點C先收到節(jié)點B發(fā)送的攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文,后收到節(jié)點D發(fā)送的MS報文,則:節(jié)點C在收到來自節(jié)點B的攜帶已經(jīng)置位的already標記位和子環(huán)2的環(huán)號的SF報文之后,節(jié)點C上存在端口 9對應的計時器,但由于節(jié)點C對應的子環(huán)I的環(huán)號小于SF報文中攜帶的子環(huán)2的環(huán)號,因此節(jié)點C不在做任何處理。節(jié)點C在收到來自節(jié)點D的優(yōu)先級為I的MS報文之后,由于優(yōu)先級I等于自身的優(yōu)先級1,且節(jié)點C自身為次互聯(lián)節(jié)點,因此節(jié)點C停止通過端口 9向子環(huán)I發(fā)送攜帶優(yōu)先級為I的MS報文,并打開之前阻塞的子環(huán)I上的端口 9,并刪除端口 9對應的計時器。
[0088]針對子環(huán)2,如果節(jié)點A先收到節(jié)點B發(fā)送的MS報文,后收到節(jié)點D發(fā)送的攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文,則:節(jié)點A在收到來自節(jié)點B的優(yōu)先級為I的MS報文之后,由于優(yōu)先級I等于自身的優(yōu)先級1,且節(jié)點A自身為次互聯(lián)節(jié)點,因此節(jié)點A停止通過端口 3向子環(huán)2發(fā)送攜帶優(yōu)先級為I的MS報文,并打開之前阻塞的子環(huán)2上的端口 3,并刪除端口 3對應的計時器。節(jié)點A在收到來自節(jié)點D的攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文之后,雖然節(jié)點A對應的子環(huán)2的環(huán)號大于SF報文中攜帶的子環(huán)I的環(huán)號,但是由于節(jié)點A上已經(jīng)沒有計時器,因此不在做任何處理。情況二、如果節(jié)點A先收到節(jié)點D發(fā)送的攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文,后收到節(jié)點B發(fā)送的MS報文,則:節(jié)點A在收到來自節(jié)點D的攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文之后,節(jié)點A上存在端口 3對應的計時器,且節(jié)點A對應的子環(huán)2的環(huán)號大于SF報文中攜帶的子環(huán)I的環(huán)號,因此,節(jié)點A刪除端口 3對應的計時器。節(jié)點A在收到來自節(jié)點B的優(yōu)先級為I的MS報文之后,由于優(yōu)先級I等于自身的優(yōu)先級1,且節(jié)點A自身為次互聯(lián)節(jié)點,因此節(jié)點A停止通過端口 3向子環(huán)2發(fā)送攜帶優(yōu)先級為I的MS報文,并打開之前阻塞的子環(huán)2上的端口 3,由于端口 3對應的計時器已經(jīng)被刪除,因此節(jié)點A無需刪除計時器。
[0089]針對子環(huán)2,情況一、如果節(jié)點B先收到節(jié)點A發(fā)送的MS報文,后收到節(jié)點C發(fā)送的攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文,則:節(jié)點B在收到來自節(jié)點A的優(yōu)先級為I的MS報文之后,由于優(yōu)先級I等于自身的優(yōu)先級1,且節(jié)點B自身為主互聯(lián)節(jié)點,因此不在做任何處理,。節(jié)點B在收到來自節(jié)點C的攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文之后,由于節(jié)點B對應的子環(huán)2的環(huán)號大于SF報文中攜帶的子環(huán)I的環(huán)號,且節(jié)點B上仍然有端口 6對應的計時器,因此,節(jié)點B刪除端口 6對應的計時器。情況二、如果節(jié)點B先收到節(jié)點C發(fā)送的攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文,后收到節(jié)點A發(fā)送的MS報文,則:節(jié)點B在收到來自節(jié)點C的攜帶已經(jīng)置位的already標記位和子環(huán)I的環(huán)號的SF報文之后,由于節(jié)點B對應的子環(huán)2的環(huán)號大于SF報文中攜帶的子環(huán)I的環(huán)號,且節(jié)點B上仍然有端口 6對應的計時器,因此,節(jié)點B刪除端口 6對應的計時器。節(jié)點B在收到來自節(jié)點A的優(yōu)先級為I的MS報文之后,由于優(yōu)先級I等于自身的優(yōu)先級1,且節(jié)點B自身為主互聯(lián)節(jié)點,因此不在做任何處理。
[0090]在經(jīng)過一定時間后,節(jié)點D上啟動的端口 12對應的計時器將會超時,此時節(jié)點D會打開之前阻塞的子環(huán)I上的端口 12。
[0091]在經(jīng)過上述處理之后,當端口 10與端口 8之間的鏈路發(fā)生故障,且端口 I與端口 4之間的鏈路發(fā)生故障時,由于端口 6對應的計時器被刪除,因此,端口 6將一直處于阻塞狀態(tài),即網(wǎng)絡中只有節(jié)點B上的端口 6處于阻塞狀態(tài),此時,網(wǎng)絡中的所有流量都可以正?;ネǎ也粫a(chǎn)生環(huán)路。
[0092]基于與上述方法同樣的發(fā)明構思,本發(fā)明實施例中提供一種以太網(wǎng)環(huán)保護切換EPRS環(huán)路多點故障的處理設備,作為環(huán)路網(wǎng)絡中的第一互聯(lián)節(jié)點,如圖4所示,所述第一互聯(lián)節(jié)點具體包括:
[0093]確定模塊11,用于當所述第一互聯(lián)節(jié)點的公共Common端口所在的鏈路發(fā)生故障時,確定所述第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障;其中,所述Common端口為在主環(huán)和子環(huán)的公共鏈路上的端口 ;若確定主環(huán)發(fā)生多點故障,則確定所述第一互聯(lián)節(jié)點觸發(fā)第一手工切換MS事件的第一優(yōu)先級;
[0094]發(fā)送模塊12,用于阻塞所述第一互聯(lián)節(jié)點所在的第一子環(huán)上的第一子環(huán)端口,并通過所述第一子環(huán)端口發(fā)送第一 MS報文,所述第一 MS報文攜帶所述第一優(yōu)先級;
[0095]接收模塊13,用于接收所述第一子環(huán)上的第二互聯(lián)節(jié)點發(fā)送的第二 MS報文,所述第二 MS報文攜帶第二互聯(lián)節(jié)點觸發(fā)的第二 MS事件的第二優(yōu)先級;
[0096]處理模塊14,用于若所述第二優(yōu)先級高于所述第一優(yōu)先級,或所述第二優(yōu)先級等于所述第一優(yōu)先級且所述第一互聯(lián)節(jié)點為次互聯(lián)節(jié)點,則停止發(fā)送所述第一 MS報文,且打開所述第一子環(huán)端口。
[0097]所述處理模塊14,還用于在所述第一互聯(lián)節(jié)點阻塞所述第一子環(huán)端口時,若所述第一互聯(lián)節(jié)點在觸發(fā)第一 MS事件之前未觸發(fā)過MS事件,則啟動所述第一子環(huán)端口對應的第一計時器;
[0098]當所述第一計時器超時時,打開所述第一子環(huán)端口 ;
[0099]當所述第二優(yōu)先級高于所述第一優(yōu)先級,或所述第二優(yōu)先級等于所述第一優(yōu)先級且所述第一互聯(lián)節(jié)點為次互聯(lián)節(jié)點時,如果所述第一子環(huán)端口當前對應有所述第一計時器,則刪除所述第一計時器。
[0100]所述確定模塊11,具體用于在確定所述第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障時,判斷非common端口所在的鏈路是否發(fā)生故障;如果是,則確定所述第一互聯(lián)節(jié)點所在的主環(huán)發(fā)生多點故障;或者,
[0101]若所述第一互聯(lián)節(jié)點從所述非common端口收到的第一鏈路故障SF報文攜帶互聯(lián)介質(zhì)訪問控制MAC地址,則確定所述第一互聯(lián)節(jié)點所在的主環(huán)未發(fā)生多點故障,否則,確定所述第一互聯(lián)節(jié)點所在的主環(huán)發(fā)生多點故障;
[0102]其中,所述互聯(lián)MAC地址具體為所述第二互聯(lián)節(jié)點的MAC地址。
[0103]所述確定模塊11,具體用于在確定所述第一互聯(lián)節(jié)點觸發(fā)第一 MS事件的第一優(yōu)先時,當所述多點故障為所述第一互聯(lián)節(jié)點的Common端口所在的鏈路發(fā)生故障和所述第一互聯(lián)節(jié)點的非Common端口所在的鏈路發(fā)生故障時,確定所述第一優(yōu)先級為最高優(yōu)先級;當所述第一互聯(lián)節(jié)點通過所述第一 SF報文確定發(fā)生多點故障時,確定所述第一優(yōu)先級為次高優(yōu)先級。
[0104]當所述第一互聯(lián)節(jié)點通過所述第一 SF報文確定發(fā)生多點故障時,
[0105]所述發(fā)送模塊12,還用于通過所述第一互聯(lián)節(jié)點的非Common端口發(fā)送第二 SF報文,所述第二 SF報文攜帶觸發(fā)標識以及第一子環(huán)號,以使若所述主環(huán)上接收到所述第二 SF報文的第三互聯(lián)節(jié)點已觸發(fā)過MS事件且所述第三互聯(lián)節(jié)點上的第二子環(huán)端口阻塞并對應有第二計時器時,當所述第一子環(huán)號與所述第三互聯(lián)節(jié)點所在的第二子環(huán)號的比較結(jié)果符合預設規(guī)則,則所述第三互聯(lián)節(jié)點刪除所述第二定時器;其中,所述觸發(fā)標識用于指示發(fā)送所述第二 SF報文的互聯(lián)節(jié)點已觸發(fā)過MS事件。
[0106]其中,本發(fā)明裝置的各個模塊可以集成于一體,也可以分離部署。上述模塊可以合并為一個模塊,也可以進一步拆分成多個子模塊。
[0107]通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當然也可以通過硬件,但很多情況下前者是更佳的實施方式?;谶@樣的理解,本發(fā)明的技術方案本質(zhì)上或者說對現(xiàn)有技術做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例所述的方法。本領域技術人員可以理解附圖只是一個優(yōu)選實施例的示意圖,附圖中的模塊或流程并不一定是實施本發(fā)明所必須的。本領域技術人員可以理解實施例中的裝置中的模塊可以按照實施例描述進行分布于實施例的裝置中,也可以進行相應變化位于不同于本實施例的一個或多個裝置中。上述實施例的模塊可以合并為一個模塊,也可以進一步拆分成多個子模塊。上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。以上公開的僅為本發(fā)明的幾個具體實施例,但是,本發(fā)明并非局限于此,任何本領域的技術人員能思之的變化都應落入本發(fā)明的保護范圍。
【權利要求】
1.一種以太網(wǎng)環(huán)保護切換EPRS環(huán)路多點故障的處理方法,其特征在于,所述方法包括以下步驟: 當?shù)谝换ヂ?lián)節(jié)點的公共Common端口所在的鏈路發(fā)生故障時,所述第一互聯(lián)節(jié)點確定所述第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障;其中,所述Common端口為在主環(huán)和子環(huán)的公共鏈路上的端口; 若所述第一互聯(lián)節(jié)點確定主環(huán)發(fā)生多點故障,則所述第一互聯(lián)節(jié)點確定所述第一互聯(lián)節(jié)點觸發(fā)第一手工切換MS事件的第一優(yōu)先級; 所述第一互聯(lián)節(jié)點阻塞所述第一互聯(lián)節(jié)點所在的第一子環(huán)上的第一子環(huán)端口,并通過所述第一子環(huán)端口發(fā)送第一 MS報文,所述第一 MS報文攜帶所述第一優(yōu)先級; 所述第一互聯(lián)節(jié)點接收所述第一子環(huán)上的第二互聯(lián)節(jié)點發(fā)送的第二 MS報文,所述第二 MS報文攜帶第二互聯(lián)節(jié)點觸發(fā)的第二 MS事件的第二優(yōu)先級; 若所述第二優(yōu)先級高于所述第一優(yōu)先級,或所述第二優(yōu)先級等于所述第一優(yōu)先級且所述第一互聯(lián)節(jié)點為次互聯(lián)節(jié)點,則所述第一互聯(lián)節(jié)點停止發(fā)送所述第一 MS報文,且打開所述第一子環(huán)端口。
2.如權利要求1所述的方法,其特征在于,所述方法還包括: 在所述第一互聯(lián)節(jié)點阻塞所述第一子環(huán)端口時,若所述第一互聯(lián)節(jié)點在觸發(fā)第一 MS事件之前未觸發(fā)過MS事件,則所述第一互聯(lián)節(jié)點啟動所述第一子環(huán)端口對應的第一計時器; 當所述第一計時器超時時,所述第一互聯(lián)節(jié)點打開所述第一子環(huán)端口 ; 當所述第二優(yōu)先級高于所述第一優(yōu)先級,或所述第二優(yōu)先級等于所述第一優(yōu)先級且所述第一互聯(lián)節(jié)點為次互聯(lián)節(jié)點時,如果所述第一子環(huán)端口當前對應有所述第一計時器,則所述第一互聯(lián)節(jié)點刪除所述第一計時器。
3.如權利要求1所述的方法,其特征在于,所述第一互聯(lián)節(jié)點確定所述第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障,具體包括: 所述第一互聯(lián)節(jié)點判斷非common端口所在的鏈路是否發(fā)生故障;如果是,則確定所述第一互聯(lián)節(jié)點所在的主環(huán)發(fā)生多點故障;或者, 若所述第一互聯(lián)節(jié)點從所述非common端口收到的第一鏈路故障SF報文攜帶互聯(lián)介質(zhì)訪問控制MAC地址,則確定所述第一互聯(lián)節(jié)點所在的主環(huán)未發(fā)生多點故障,否則,確定所述第一互聯(lián)節(jié)點所在的主環(huán)發(fā)生多點故障; 其中,所述互聯(lián)MAC地址具體為所述第二互聯(lián)節(jié)點的MAC地址。
4.如權利要求3所述的方法,其特征在于,所述第一互聯(lián)節(jié)點確定所述第一互聯(lián)節(jié)點觸發(fā)第一手工切換MS事件的第一優(yōu)先級,具體包括: 當所述多點故障為所述第一互聯(lián)節(jié)點的Common端口所在的鏈路發(fā)生故障和所述第一互聯(lián)節(jié)點的非Common端口所在的鏈路發(fā)生故障時,所述第一互聯(lián)節(jié)點確定所述第一優(yōu)先級為最聞優(yōu)先級; 當所述第一互聯(lián)節(jié)點通過所述第一 SF報文確定發(fā)生多點故障時,所述第一互聯(lián)節(jié)點確定所述第一優(yōu)先級為次高優(yōu)先級。
5.根據(jù)權利要求3所述的方法,其特征在于,當所述第一互聯(lián)節(jié)點通過所述第一SF報文確定發(fā)生多點故障時,所述方法還包括: 所述第一互聯(lián)節(jié)點通過所述第一互聯(lián)節(jié)點的非Common端口發(fā)送第二 SF報文,所述第二 SF報文攜帶觸發(fā)標識以及第一子環(huán)號,以使若所述主環(huán)上接收到所述第二 SF報文的第三互聯(lián)節(jié)點已觸發(fā)過MS事件且所述第三互聯(lián)節(jié)點上的第二子環(huán)端口阻塞并對應有第二計時器時,當所述第一子環(huán)號與所述第三互聯(lián)節(jié)點所在的第二子環(huán)號的比較結(jié)果符合預設規(guī)貝U,則所述第三互聯(lián)節(jié)點刪除所述第二定時器;其中,所述觸發(fā)標識用于指示發(fā)送所述第二SF報文的互聯(lián)節(jié)點已觸發(fā)過MS事件。
6.一種以太網(wǎng)環(huán)保護切換EPRS環(huán)路多點故障的處理設備,作為環(huán)路網(wǎng)絡中的第一互聯(lián)節(jié)點,其特征在于,所述第一互聯(lián)節(jié)點具體包括: 確定模塊,用于當所述第一互聯(lián)節(jié)點的公共Common端口所在的鏈路發(fā)生故障時,確定所述第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障;其中,所述Common端口為在主環(huán)和子環(huán)的公共鏈路上的端口 ;若確定主環(huán)發(fā)生多點故障,則確定所述第一互聯(lián)節(jié)點觸發(fā)第一手工切換MS事件的第一優(yōu)先級; 發(fā)送模塊,用于阻塞所述第一互聯(lián)節(jié)點所在的第一子環(huán)上的第一子環(huán)端口,并通過所述第一子環(huán)端口發(fā)送第一 MS報文,所述第一 MS報文攜帶所述第一優(yōu)先級; 接收模塊,用于接收所述第一子環(huán)上的第二互聯(lián)節(jié)點發(fā)送的第二 MS報文,所述第二 MS報文攜帶第二互聯(lián)節(jié)點觸發(fā)的第二 MS事件的第二優(yōu)先級; 處理模塊,用于若所述第二優(yōu)先級高于所述第一優(yōu)先級,或所述第二優(yōu)先級等于所述第一優(yōu)先級且所述第一互聯(lián)節(jié)點為次互聯(lián)節(jié)點,則停止發(fā)送所述第一 MS報文,且打開所述第一子環(huán)端口。
7.如權利要求6所述的設備,其特征在于, 所述處理模塊,還用于在所述第一互聯(lián)節(jié)點阻塞所述第一子環(huán)端口時,若所述第一互聯(lián)節(jié)點在觸發(fā)第一 MS事件之前未觸發(fā)過MS事件,則啟動所述第一子環(huán)端口對應的第一計時器; 當所述第一計時器超時時,打開所述第一子環(huán)端口 ; 當所述第二優(yōu)先級高于所述第一優(yōu)先級,或所述第二優(yōu)先級等于所述第一優(yōu)先級且所述第一互聯(lián)節(jié)點為次互聯(lián)節(jié)點時,如果所述第一子環(huán)端口當前對應有所述第一計時器,則刪除所述第一計時器。
8.如權利要求6所述的設備,其特征在于, 所述確定模塊,具體用于在確定所述第一互聯(lián)節(jié)點所在的主環(huán)是否發(fā)生多點故障時,判斷非common端口所在的鏈路是否發(fā)生故障;如果是,則確定所述第一互聯(lián)節(jié)點所在的主環(huán)發(fā)生多點故障;或者, 若所述第一互聯(lián)節(jié)點從所述非common端口收到的第一鏈路故障SF報文攜帶互聯(lián)介質(zhì)訪問控制MAC地址,則確定所述第一互聯(lián)節(jié)點所在的主環(huán)未發(fā)生多點故障,否則,確定所述第一互聯(lián)節(jié)點所在的主環(huán)發(fā)生多點故障; 其中,所述互聯(lián)MAC地址具體為所述第二互聯(lián)節(jié)點的MAC地址。
9.如權利要求8所述的設備,其特征在于, 所述確定模塊,具體用于在確定所述第一互聯(lián)節(jié)點觸發(fā)第一 MS事件的第一優(yōu)先時,當所述多點故障為所述第一互聯(lián)節(jié)點的Common端口所在的鏈路發(fā)生故障和所述第一互聯(lián)節(jié)點的非Common端口所在的鏈路發(fā)生故障時,確定所述第一優(yōu)先級為最高優(yōu)先級;當所述第一互聯(lián)節(jié)點通過所述第一 SF報文確定發(fā)生多點故障時,確定所述第一優(yōu)先級為次高優(yōu)先級。
10.如權利要求8所述的設備,其特征在于,當所述第一互聯(lián)節(jié)點通過所述第一SF報文確定發(fā)生多點故障時, 所述發(fā)送模塊,還用于通過所述第一互聯(lián)節(jié)點的非Common端口發(fā)送第二 SF報文,所述第二 SF報文攜帶觸發(fā)標識以及第一子環(huán)號,以使若所述主環(huán)上接收到所述第二 SF報文的第三互聯(lián)節(jié)點已觸發(fā)過MS事件且所述第三互聯(lián)節(jié)點上的第二子環(huán)端口阻塞并對應有第二計時器時,當所述第一子環(huán)號與所述第三互聯(lián)節(jié)點所在的第二子環(huán)號的比較結(jié)果符合預設規(guī)則,則所述第三互聯(lián)節(jié)點刪除所述第二定時器;其中,所述觸發(fā)標識用于指示發(fā)送所述第二 SF報文的互聯(lián)節(jié)點已觸發(fā)過MS事件。
【文檔編號】H04L12/437GK104184639SQ201410338655
【公開日】2014年12月3日 申請日期:2014年7月16日 優(yōu)先權日:2014年7月16日
【發(fā)明者】熊志鑫, 王佳炳, 戎衍博 申請人:杭州華三通信技術有限公司