本發(fā)明涉及通信技術(shù)領(lǐng)域,具體涉及一種以太網(wǎng)環(huán)保護倒換方法及節(jié)點。
背景技術(shù):
以太網(wǎng)環(huán)保護倒換(Ethernet Ring Protection Switching,ERPS)是國際電信聯(lián)盟遠程通信標準化組織制定的G.8032標準,該標準基于傳統(tǒng)的以太網(wǎng)媒體訪問控制(Media Access Control,MAC)和網(wǎng)橋功能,利用以太網(wǎng)成熟的操作管理維護(Operation Administration and Maintenance,OAM)功能和一個環(huán)網(wǎng)自動保護倒換(Ring Automatic Protection Switching,R-APS)協(xié)議,實現(xiàn)以太環(huán)網(wǎng)的快速保護倒換。但現(xiàn)有的ERPS所需時間較長,倒換效率較低。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供一種ERPS方法及節(jié)點,用于提高ERPS效率。
本發(fā)明實施例第一方面公開一種ERPS方法,包括:
當?shù)谝籈RPS端口出現(xiàn)故障時,第一節(jié)點將所述第一ERPS端口和第二ERPS端口的媒體訪問控制MAC地址轉(zhuǎn)發(fā)表清除,同時將包括所述第一ERPS端口和所述第二ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài),所述第二ERPS端口是除所述第一ERPS端口之外的另一ERPS端口;
當所述第一節(jié)點接收到MAC報文時,所述第一節(jié)點使用所述多個端口中的端口將所述MAC報文以廣播方式發(fā)送至目標節(jié)點,所述目標節(jié)點是與所述第一節(jié)點連接的節(jié)點中除所述第一ERPS端口連接的節(jié)點和發(fā)送所述MAC報文的節(jié)點之外的節(jié)點;
當所述第一ERPS端口和所述第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除時,所述第一節(jié)點將所述多個端口由廣播態(tài)轉(zhuǎn)換為轉(zhuǎn)發(fā)態(tài),根據(jù)所述MAC報文的廣播路徑進行MAC地址學習以獲得所述第二ERPS端口的目標MAC地址轉(zhuǎn)發(fā)表,并將所述目標MAC地址轉(zhuǎn)發(fā)表作為所述第二ERPS端口轉(zhuǎn)發(fā) MAC報文的MAC地址轉(zhuǎn)發(fā)表。
結(jié)合本發(fā)明實施例第一方面,在本發(fā)明實施例第一方面的第一種可能的實現(xiàn)方式中,所述方法還包括:
第一節(jié)點檢測與第一ERPS端口連接的鏈路是否出現(xiàn)故障,若是,則確定所述第一ERPS端口出現(xiàn)故障。
結(jié)合本發(fā)明實施例第一方面或本發(fā)明實施例第一方面的第一種可能的實現(xiàn)方式,在本發(fā)明實施例第一方面的第二種可能的實現(xiàn)方式中,當?shù)谝籈RPS端口出現(xiàn)故障時,所述第一節(jié)點將所述第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除之前,所述方法還包括:
第一節(jié)點阻塞所述第一ERPS端口,并向第二ERPS端口連接的第二節(jié)點發(fā)送信號錯誤消息,以觸發(fā)所述第二節(jié)點將兩個ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括所述兩個ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài)。
結(jié)合本發(fā)明實施例第一方面的第二種可能的實現(xiàn)方式,在本發(fā)明實施例第一方面的第三種可能的實現(xiàn)方式中,所述第一節(jié)點阻塞所述第一ERPS端口包括:
當所述第一節(jié)點為環(huán)保護鏈路主節(jié)點時,所述第一節(jié)點阻塞所述第一ERPS端口,并打開被阻塞的第二ERPS端口。
本發(fā)明實施例第二方面公開一種節(jié)點,包括:
清除轉(zhuǎn)換單元,用于當?shù)谝籈RPS端口出現(xiàn)故障時,將所述第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括所述第一ERPS端口和所述第二ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài),所述第二ERPS端口是除所述第一ERPS端口之外的另一ERPS端口;
通信單元,用于當接收到MAC報文時,使用所述清除轉(zhuǎn)換單元轉(zhuǎn)換的多個端口中的端口將所述MAC報文以廣播方式發(fā)送至目標節(jié)點,所述目標節(jié)點是與所述節(jié)點連接的節(jié)點中除所述第一ERPS端口連接的節(jié)點和發(fā)送所述MAC報文的節(jié)點之外的節(jié)點;
學習單元,用于當所述第一ERPS端口和所述第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表被所述清除轉(zhuǎn)換單元清除時,將所述多個端口由廣播態(tài)轉(zhuǎn)換為轉(zhuǎn) 發(fā)態(tài),根據(jù)所述MAC報文的廣播路徑進行MAC地址學習以獲得所述第二ERPS端口的目標MAC地址轉(zhuǎn)發(fā)表,并將所述目標MAC地址轉(zhuǎn)發(fā)表作為所述第二ERPS端口轉(zhuǎn)發(fā)MAC報文的MAC地址轉(zhuǎn)發(fā)表。
結(jié)合本發(fā)明實施例第二方面,在本發(fā)明實施例第二方面的第一種可能的實現(xiàn)方式中,所述節(jié)點還包括:
檢測單元,用于檢測與第一ERPS端口連接的鏈路是否出現(xiàn)故障,若是,則確定所述第一ERPS端口出現(xiàn)故障。
結(jié)合本發(fā)明實施例第二方面或本發(fā)明實施例第二方面的第一種可能的實現(xiàn)方式,在本發(fā)明實施例第二方面的第二種可能的實現(xiàn)方式中,所述節(jié)點還包括:
阻塞單元,用于阻塞所述第一ERPS端口,并向第二ERPS端口連接的第二節(jié)點發(fā)送信號錯誤消息,以觸發(fā)所述第二節(jié)點將兩個ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括所述兩個ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài)。
結(jié)合本發(fā)明實施例第二方面的第二種可能的實現(xiàn)方式,在本發(fā)明實施例第二方面的第三種可能的實現(xiàn)方式中,所述阻塞單元阻塞所述第一ERPS端口的方式具體為:
當所述節(jié)點為環(huán)保護鏈路主節(jié)點時,阻塞所述第一ERPS端口,并打開被阻塞的第二ERPS端口。
本發(fā)明實施例中,當ERPS端口出現(xiàn)故障時,將ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除的同時將所有端口轉(zhuǎn)換為廣播態(tài),以進行MAC報文廣播,當ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除之后,進行MAC地址學習,由于MAC地址清除與MAC報文廣播是同時進行的,因此可以減少ERPS時間,從而可以提高ERPS效率。
附圖說明
為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提 下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明實施例公開的一種ERPS方法的流程圖;
圖2是本發(fā)明實施例公開的另一種ERPS方法的流程圖;
圖3是本發(fā)明實施例公開的一種節(jié)點的結(jié)構(gòu)圖;
圖4是本發(fā)明實施例公開的另一種節(jié)點的結(jié)構(gòu)圖;
圖5是本發(fā)明實施例公開的又一種節(jié)點的結(jié)構(gòu)圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
本發(fā)明實施例提供一種ERPS方法及節(jié)點,用于提高ERPS效率。以下分別進行詳細說明。
請參閱圖1,圖1是本發(fā)明實施例公開的一種ERPS方法的流程圖。如圖1所示,該ERPS方法可以包括以下步驟。
S101、當?shù)谝籈RPS端口出現(xiàn)故障時,第一節(jié)點將第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括第一ERPS端口和第二ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài),第二ERPS端口是除第一ERPS端口之外的另一ERPS端口。
本實施例中,為了防止以太網(wǎng)環(huán)中出現(xiàn)廣播風暴、MAC地址震蕩等問題,指定以太網(wǎng)環(huán)中的一條鏈路為環(huán)保護鏈路(Ring Protection Link,RPL),與RPL相連的一個節(jié)點稱為RPL Owner,即環(huán)保護鏈路主節(jié)點。正常情況下,環(huán)保護鏈路主節(jié)點阻塞與RPL相連的RPL端口以防止形成環(huán)路。
本實施例中,以太網(wǎng)環(huán)中的節(jié)點都包括兩個ERPS屬性的ERPS端口,以太網(wǎng)環(huán)中的節(jié)點可以通過端口狀態(tài)檢測ERPS端口是否出現(xiàn)故障。其中,第一節(jié)點可以是以太網(wǎng)環(huán)中的任一節(jié)點,第一ERPS端口可以是第一節(jié)點中兩個ERPS 端口的任一端口。
本實施例中,檢測第一ERPS端口是否出現(xiàn)故障,可以是檢測第一ERPS端口本身是否出現(xiàn)故障,也可以是檢測與第一ERPS連接的鏈路是否出現(xiàn)故障,本實施例不作限定。其中,可以通過第一ERPS端口硬件來檢測第一ERPS端口本身是否出現(xiàn)故障,可以通過檢測信號是否丟失來檢測與第一ERPS連接的鏈路是否出現(xiàn)故障。
本實施例中,當?shù)谝籈RPS端口出現(xiàn)故障時,表明第一ERPS端口將無法傳輸報文,原先通過第一ERPS端口傳輸?shù)膱笪膶o法繼續(xù)進行傳輸,因此觸發(fā)ERPS,第一節(jié)點阻塞第一ERPS端口,以便第一節(jié)點的其它端口接收到MAC報文之后,將不發(fā)送給第一ERPS端口。之后第一節(jié)點向第二ERPS端口連接的第二節(jié)點發(fā)送信號錯誤(Signal Failure,SF)消息,以便第二節(jié)點將SF消息發(fā)送至第三節(jié)點,并將兩個ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括這兩個ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài)。其中,第二節(jié)點的一個ERPS端口與第一節(jié)點相連,第二節(jié)點的另一個ERPS端口與第三節(jié)點相連。
本實施例中,第一節(jié)點將SF消息發(fā)送至第二節(jié)點之后,將第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括第一ERPS端口和第二ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài)。其中,第二ERPS端口是除第一ERPS端口之外的另一ERPS端口。
S102、當?shù)谝还?jié)點接收到MAC報文時,第一節(jié)點使用多個端口中的端口將MAC報文以廣播方式發(fā)送至目標節(jié)點,目標節(jié)點是與第一節(jié)點連接的節(jié)點中除第一ERPS端口連接的節(jié)點和發(fā)送MAC報文的節(jié)點之外的節(jié)點。
本實施例中,第一節(jié)點不僅包括第一ERPS端口和第二ERPS端口,而且還包括非ERPS端口,當?shù)谝还?jié)點的第二ERPS端口和非ERPS端口中任一端口接收到MAC報文時,接收到MAC報文的端口將這個MAC報文廣播到第一節(jié)點包括的除接收MAC報文的端口和第一ERPS端口之外的所有端口,并由這些端口將MAC報文發(fā)送至相連的節(jié)點。
S103、當?shù)谝籈RPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除時,第一節(jié)點將多個端口由廣播態(tài)轉(zhuǎn)換為轉(zhuǎn)發(fā)態(tài),根據(jù)MAC報文的廣播路徑進行 MAC地址學習以獲得第二ERPS端口的目標MAC地址轉(zhuǎn)發(fā)表,并將目標MAC地址轉(zhuǎn)發(fā)表作為第二ERPS端口轉(zhuǎn)發(fā)MAC報文的MAC地址轉(zhuǎn)發(fā)表。
本實施例中,當檢測到第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除時,第一節(jié)點將多個端口由廣播態(tài)轉(zhuǎn)換為轉(zhuǎn)發(fā)態(tài),根據(jù)MAC報文的廣播路徑進行MAC地址學習以獲得第二ERPS端口的目標MAC地址轉(zhuǎn)發(fā)表,并將目標MAC地址轉(zhuǎn)發(fā)表作為第二ERPS端口轉(zhuǎn)發(fā)MAC報文的MAC地址轉(zhuǎn)發(fā)表,當后續(xù)第二ERPS端口接收到MAC報文之后,將按照目標MAC地址轉(zhuǎn)發(fā)表進行轉(zhuǎn)發(fā)。
在圖1所描述的ERPS方法中,當ERPS端口出現(xiàn)故障時,將ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除的同時將所有端口轉(zhuǎn)換為廣播態(tài),以進行MAC報文廣播,當ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除之后,進行MAC地址學習,由于MAC地址清除與MAC報文廣播是同時進行的,因此可以減少ERPS時間,從而可以提高ERPS效率。
請參閱圖2,圖2是本發(fā)明實施例公開的另一種ERPS方法的流程圖。如圖2所示,該ERPS方法可以包括以下步驟。
S201、第一節(jié)點檢測第一ERPS端口是否出現(xiàn)故障。
本實施例中,為了防止以太網(wǎng)環(huán)中出現(xiàn)廣播風暴、MAC地址震蕩等問題,指定以太網(wǎng)環(huán)中的一條鏈路為RPL,與RPL相連的一個節(jié)點稱為RPL Owner,即環(huán)保護鏈路主節(jié)點。正常情況下,環(huán)保護鏈路主節(jié)點阻塞與RPL相連的RPL端口以防止形成環(huán)路。
本實施例中,以太網(wǎng)環(huán)中的節(jié)點都包括兩個ERPS屬性的ERPS端口,以太網(wǎng)環(huán)中的節(jié)點可以通過端口狀態(tài)檢測ERPS端口是否出現(xiàn)故障。其中,第一節(jié)點可以是以太網(wǎng)環(huán)中的任一節(jié)點,第一ERPS端口可以是第一節(jié)點中兩個ERPS端口的任一端口。
本實施例中,檢測第一ERPS端口是否出現(xiàn)故障,可以是檢測第一ERPS端口本身是否出現(xiàn)故障,也可以是檢測與第一ERPS連接的鏈路是否出現(xiàn)故障,本實施例不作限定。其中,可以通過第一ERPS端口硬件來檢測第一ERPS端口 本身是否出現(xiàn)故障,可以通過檢測信號是否丟失來檢測與第一ERPS連接的鏈路是否出現(xiàn)故障。
S202、當?shù)谝籈RPS端口出現(xiàn)故障時,第一節(jié)點阻塞第一ERPS端口,并向第二ERPS端口連接的第二節(jié)點發(fā)送SF消息,以觸發(fā)第二節(jié)點將兩個ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括兩個ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài)。
本實施例中,當?shù)谝籈RPS端口出現(xiàn)故障時,表明第一ERPS端口將無法傳輸報文,原先通過第一ERPS端口傳輸?shù)膱笪膶o法繼續(xù)進行傳輸,因此觸發(fā)ERPS,第一節(jié)點阻塞第一ERPS端口,以便第一節(jié)點的其它端口接收到MAC報文之后,將不發(fā)送給第一ERPS端口。之后第一節(jié)點向第二ERPS端口連接的第二節(jié)點發(fā)送SF消息,以便第二節(jié)點將SF消息發(fā)送至第三節(jié)點,并將兩個ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括這兩個ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài)。其中,第二節(jié)點的一個ERPS端口與第一節(jié)點相連,第二節(jié)點的另一個ERPS端口與第三節(jié)點相連。
作為一種可能的實施方式,第一節(jié)點阻塞第一ERPS端口的方式具體為:
當?shù)谝还?jié)點為環(huán)保護鏈路主節(jié)點時,第一節(jié)點阻塞第一ERPS端口,并打開被阻塞的第二ERPS端口。
本實施例中,當?shù)谝还?jié)點為環(huán)保護鏈路主節(jié)點時,第二ERPS端口為RPL端口,因此,不僅需要阻塞第一ERPS端口,而且也需要打開被阻塞的第二ERPS端口。
S203、第一節(jié)點將第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括第一ERPS端口和第二ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài),第二ERPS端口是除第一ERPS端口之外的另一ERPS端口。
本實施例中,第一節(jié)點將SF消息發(fā)送至第二節(jié)點之后,將第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括第一ERPS端口和第二ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài)。其中,第二ERPS端口是除第一ERPS端口之外的另一ERPS端口。
S204、當?shù)谝还?jié)點接收到MAC報文時,第一節(jié)點使用多個端口中的端口 將MAC報文以廣播方式發(fā)送至目標節(jié)點,目標節(jié)點是與第一節(jié)點連接的節(jié)點中除第一ERPS端口連接的節(jié)點和發(fā)送MAC報文的節(jié)點之外的節(jié)點。
本實施例中,第一節(jié)點不僅包括第一ERPS端口和第二ERPS端口,而且還包括非ERPS端口,當?shù)谝还?jié)點的第二ERPS端口和非ERPS端口中任一端口接收到MAC報文時,接收到MAC報文的端口將這個MAC報文廣播到第一節(jié)點包括的除接收MAC報文的端口和第一ERPS端口之外的所有端口,并由這些端口將MAC報文發(fā)送至相連的節(jié)點。
S205、當?shù)谝籈RPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除時,第一節(jié)點將多個端口由廣播態(tài)轉(zhuǎn)換為轉(zhuǎn)發(fā)態(tài),根據(jù)MAC報文的廣播路徑進行MAC地址學習以獲得第二ERPS端口的目標MAC地址轉(zhuǎn)發(fā)表,并將目標MAC地址轉(zhuǎn)發(fā)表作為第二ERPS端口轉(zhuǎn)發(fā)MAC報文的MAC地址轉(zhuǎn)發(fā)表。
本實施例中,當檢測到第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除時,第一節(jié)點將多個端口由廣播態(tài)轉(zhuǎn)換為轉(zhuǎn)發(fā)態(tài),根據(jù)MAC報文的廣播路徑進行MAC地址學習以獲得第二ERPS端口的目標MAC地址轉(zhuǎn)發(fā)表,并將目標MAC地址轉(zhuǎn)發(fā)表作為第二ERPS端口轉(zhuǎn)發(fā)MAC報文的MAC地址轉(zhuǎn)發(fā)表,當后續(xù)第二ERPS端口接收到MAC報文之后,將按照目標MAC地址轉(zhuǎn)發(fā)表進行轉(zhuǎn)發(fā)。
在圖2所描述的ERPS方法中,當ERPS端口出現(xiàn)故障時,將ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除的同時將所有端口轉(zhuǎn)換為廣播態(tài),以進行MAC報文廣播,當ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除之后,進行MAC地址學習,由于MAC地址清除與MAC報文廣播是同時進行的,因此可以減少ERPS時間,從而可以提高ERPS效率。
請參閱圖3,圖3是本發(fā)明實施例公開的一種節(jié)點的結(jié)構(gòu)圖。如圖3所示,該節(jié)點300可以包括:
清除轉(zhuǎn)換單元301,用于當?shù)谝籈RPS端口出現(xiàn)故障時,將第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括第一ERPS端口和第二ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài),第二ERPS端口是除第 一ERPS端口之外的另一ERPS端口;
通信單元302,用于當接收到MAC報文時,使用清除轉(zhuǎn)換單元301轉(zhuǎn)換的多個端口中的端口將MAC報文以廣播方式發(fā)送至目標節(jié)點,目標節(jié)點是與該節(jié)點連接的節(jié)點中除第一ERPS端口連接的節(jié)點和發(fā)送MAC報文的節(jié)點之外的節(jié)點;
學習單元303,用于當?shù)谝籈RPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除轉(zhuǎn)換單元301清除時,將多個端口由廣播態(tài)轉(zhuǎn)換為轉(zhuǎn)發(fā)態(tài),根據(jù)MAC報文的廣播路徑進行MAC地址學習以獲得第二ERPS端口的目標MAC地址轉(zhuǎn)發(fā)表,并將目標MAC地址轉(zhuǎn)發(fā)表作為第二ERPS端口轉(zhuǎn)發(fā)MAC報文的MAC地址轉(zhuǎn)發(fā)表。
本實施例中,為了防止以太網(wǎng)環(huán)中出現(xiàn)廣播風暴、MAC地址震蕩等問題,指定以太網(wǎng)環(huán)中的一條鏈路為RPL與RPL相連的一個節(jié)點稱為RPL Owner,即環(huán)保護鏈路主節(jié)點。正常情況下,環(huán)保護鏈路主節(jié)點阻塞與RPL相連的RPL端口以防止形成環(huán)路。
本實施例中,當?shù)谝籈RPS端口出現(xiàn)故障時,清除轉(zhuǎn)換單元301將第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括第一ERPS端口和第二ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài)。其中,第二ERPS端口是除第一ERPS端口之外的另一ERPS端口。
本實施例中,該節(jié)點300不僅包括第一ERPS端口和第二ERPS端口,而且還包括非ERPS端口,當通信單元302檢測到第二ERPS端口和非ERPS端口中任一端口接收到MAC報文時,接收到MAC報文的端口將這個MAC報文廣播到該節(jié)點300包括的除接收MAC報文的端口和第一ERPS端口之外的所有端口,并由這些端口將MAC報文發(fā)送至相連的節(jié)點。
本實施例中,當檢測到第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除轉(zhuǎn)換單元302清除時,學習單元303將多個端口由廣播態(tài)轉(zhuǎn)換為轉(zhuǎn)發(fā)態(tài),根據(jù)MAC報文的廣播路徑進行MAC地址學習以獲得第二ERPS端口的目標MAC地址轉(zhuǎn)發(fā)表,并將目標MAC地址轉(zhuǎn)發(fā)表作為第二ERPS端口轉(zhuǎn)發(fā)MAC報文的MAC地址轉(zhuǎn)發(fā)表,當后續(xù)第二ERPS端口接收到MAC報文之后,將按照目標MAC地址轉(zhuǎn)發(fā)表進行轉(zhuǎn)發(fā)。
在圖3所描述的節(jié)點中,當ERPS端口出現(xiàn)故障時,將ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除的同時將所有端口轉(zhuǎn)換為廣播態(tài),以進行MAC報文廣播,當ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除之后,進行MAC地址學習,由于MAC地址清除與MAC報文廣播是同時進行的,因此可以減少ERPS時間,從而可以提高ERPS效率。
請參閱圖4,圖4是本發(fā)明實施例公開的另一種節(jié)點的結(jié)構(gòu)圖。如圖4所示,該節(jié)點400可以包括:
清除轉(zhuǎn)換單元401,用于當?shù)谝籈RPS端口出現(xiàn)故障時,將第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括第一ERPS端口和第二ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài),第二ERPS端口是除第一ERPS端口之外的另一ERPS端口;
通信單元402,用于當接收到MAC報文時,使用清除轉(zhuǎn)換單元401轉(zhuǎn)換的多個端口中的端口將MAC報文以廣播方式發(fā)送至目標節(jié)點,目標節(jié)點是與該節(jié)點400連接的節(jié)點中除第一ERPS端口連接的節(jié)點和發(fā)送MAC報文的節(jié)點之外的節(jié)點;
學習單元403,用于當?shù)谝籈RPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除轉(zhuǎn)換單元401清除時,將多個端口由廣播態(tài)轉(zhuǎn)換為轉(zhuǎn)發(fā)態(tài),根據(jù)MAC報文的廣播路徑進行MAC地址學習以獲得第二ERPS端口的目標MAC地址轉(zhuǎn)發(fā)表,并將目標MAC地址轉(zhuǎn)發(fā)表作為第二ERPS端口轉(zhuǎn)發(fā)MAC報文的MAC地址轉(zhuǎn)發(fā)表。
本實施例中,為了防止以太網(wǎng)環(huán)中出現(xiàn)廣播風暴、MAC地址震蕩等問題,指定以太網(wǎng)環(huán)中的一條鏈路為RPL,與RPL相連的一個節(jié)點稱為RPL Owner,即環(huán)保護鏈路主節(jié)點。正常情況下,環(huán)保護鏈路主節(jié)點阻塞與RPL相連的RPL端口以防止形成環(huán)路。
本實施例中,當?shù)谝籈RPS端口出現(xiàn)故障時,清除轉(zhuǎn)換單元401將第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括第一ERPS端口和第二ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài)。其中,第二ERPS端口是除第一ERPS端口之外的另一ERPS端口。
本實施例中,該節(jié)點400不僅包括第一ERPS端口和第二ERPS端口,而且還包括非ERPS端口,當通信單元402檢測到第二ERPS端口和非ERPS端口中任一端口接收到MAC報文時,接收到MAC報文的端口將這個MAC報文廣播到該節(jié)點400包括的除接收MAC報文的端口和第一ERPS端口之外的所有端口,并由這些端口將MAC報文發(fā)送至相連的節(jié)點。
本實施例中,當檢測到第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除轉(zhuǎn)換單元401清除時,學習單元403將多個端口由廣播態(tài)轉(zhuǎn)換為轉(zhuǎn)發(fā)態(tài),根據(jù)MAC報文的廣播路徑進行MAC地址學習以獲得第二ERPS端口的目標MAC地址轉(zhuǎn)發(fā)表,并將目標MAC地址轉(zhuǎn)發(fā)表作為第二ERPS端口轉(zhuǎn)發(fā)MAC報文的MAC地址轉(zhuǎn)發(fā)表,當后續(xù)第二ERPS端口接收到MAC報文之后,將按照目標MAC地址轉(zhuǎn)發(fā)表進行轉(zhuǎn)發(fā)。
作為一種可能的實施方式,該節(jié)點400還可以包括:
檢測單元404,用于檢測與第一ERPS端口連接的鏈路是否出現(xiàn)故障,若是,則確定第一ERPS端口出現(xiàn)故障。
作為一種可能的實施方式,該節(jié)點400還可以包括:
阻塞單元405,用于阻塞第一ERPS端口,并向第二ERPS端口連接的第二節(jié)點發(fā)送SF消息,以觸發(fā)第二節(jié)點將兩個ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括兩個ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài)。
具體地,當檢測單元404的檢測結(jié)果為第一ERPS端口出現(xiàn)故障時,觸發(fā)阻塞單元405阻塞第一ERPS端口,向第二ERPS端口連接的第二節(jié)點發(fā)送SF消息,并觸發(fā)清除轉(zhuǎn)換單元401將第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括第一ERPS端口和第二ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài)。
作為一種可能的實施方式,阻塞單元405阻塞第一ERPS端口的方式具體為:
當該節(jié)點400為環(huán)保護鏈路主節(jié)點時,阻塞第一ERPS端口,并打開被阻塞的第二ERPS端口。
本實施例中,當該節(jié)點400為環(huán)保護鏈路主節(jié)點時,第二ERPS端口為RPL端口,因此,阻塞單元405不僅需要阻塞第一ERPS端口,而且也需要 打開被阻塞的第二ERPS端口。
在圖4所描述的節(jié)點中,當ERPS端口出現(xiàn)故障時,將ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除的同時將所有端口轉(zhuǎn)換為廣播態(tài),以進行MAC報文廣播,當ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除之后,進行MAC地址學習,由于MAC地址清除與MAC報文廣播是同時進行的,因此可以減少ERPS時間,從而可以提高ERPS效率。
請參閱圖5,圖5是本發(fā)明實施例公開的又一種節(jié)點的結(jié)構(gòu)圖。如圖5所示,該節(jié)點可以包括處理器501、存儲器502、輸入裝置503和輸出裝置504。其中,存儲器502和處理器501之間、輸入裝置503和處理器501之間、輸出裝置504和處理器501之間可以通過總線或其它方式連接。圖5中以通信總線連接為例。其中:
存儲器502中存儲有一組程序代碼,處理器501用于調(diào)用存儲器502中存儲的程序代碼執(zhí)行以下操作:
當?shù)谝籈RPS端口出現(xiàn)故障時,將第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括第一ERPS端口和第二ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài),第二ERPS端口是除第一ERPS端口之外的另一ERPS端口;
輸入裝置503,用于接收MAC報文,并將MAC報文發(fā)送至輸出裝置504;
輸出裝置504,用于使用多個端口中的端口將MAC報文以廣播方式發(fā)送至目標節(jié)點,目標節(jié)點是與該節(jié)點500連接的節(jié)點中除第一ERPS端口連接的節(jié)點和發(fā)送MAC報文的節(jié)點之外的節(jié)點;
處理器501還用于調(diào)用存儲器502中存儲的程序代碼執(zhí)行以下操作:
當?shù)谝籈RPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除時,將多個端口由廣播態(tài)轉(zhuǎn)換為轉(zhuǎn)發(fā)態(tài),根據(jù)MAC報文的廣播路徑進行MAC地址學習以獲得第二ERPS端口的目標MAC地址轉(zhuǎn)發(fā)表,并將目標MAC地址轉(zhuǎn)發(fā)表作為第二ERPS端口轉(zhuǎn)發(fā)MAC報文的MAC地址轉(zhuǎn)發(fā)表。
作為一種可能的實施方式,處理器501還用于調(diào)用存儲器502中存儲的 程序代碼執(zhí)行以下操作:
檢測與第一ERPS端口連接的鏈路是否出現(xiàn)故障,若是,則確定第一ERPS端口出現(xiàn)故障。
作為一種可能的實施方式,當?shù)谝籈RPS端口出現(xiàn)故障時,處理器501將第一ERPS端口和第二ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除之前,處理器501還用于調(diào)用存儲器502中存儲的程序代碼執(zhí)行以下操作:
阻塞第一ERPS端口;
輸出裝置504,還用于向第二ERPS端口連接的第二節(jié)點發(fā)送SF消息,以觸發(fā)第二節(jié)點將兩個ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除,同時將包括兩個ERPS端口在內(nèi)的多個端口轉(zhuǎn)換為廣播態(tài)。
作為一種可能的實施方式,處理器501阻塞第一ERPS端口的方式具體為:
當該節(jié)點500為環(huán)保護鏈路主節(jié)點時,阻塞第一ERPS端口,并打開被阻塞的第二ERPS端口。
在圖5所描述的節(jié)點中,當ERPS端口出現(xiàn)故障時,將ERPS端口的MAC地址轉(zhuǎn)發(fā)表清除的同時將所有端口轉(zhuǎn)換為廣播態(tài),以進行MAC報文廣播,當ERPS端口的MAC地址轉(zhuǎn)發(fā)表被清除之后,進行MAC地址學習,由于MAC地址清除與MAC報文廣播是同時進行的,因此可以減少ERPS時間,從而可以提高ERPS效率。
本領(lǐng)域普通技術(shù)人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,該程序可以存儲于一計算機可讀存儲介質(zhì)中,存儲介質(zhì)可以包括:閃存盤、只讀存儲器(Read-Only Memory,ROM)、隨機存取器(Random Access Memory,RAM)、磁盤或光盤等。
以上對本發(fā)明實施例所提供的ERPS方法及節(jié)點進行了詳細介紹,本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應用范圍上均會有改變之處, 綜上所述,本說明書內(nèi)容不應理解為對本發(fā)明的限制。