Oam報(bào)文的發(fā)送處理方法和裝置、接收處理方法和裝置制造方法
【專利摘要】本發(fā)明公開了一種應(yīng)用于多鏈接透明互聯(lián)網(wǎng)絡(luò)的OAM報(bào)文的發(fā)送處理方法和裝置。所述OAM報(bào)文的發(fā)送處理方法包括:接收用戶輸入的OAM配置命令,判斷所述OAM配置命令是否使用單播模式;若所述OAM配置命令使用了單播模式,構(gòu)造單播OAM請求報(bào)文,并向目的路由交換機(jī)發(fā)送所述單播OAM請求報(bào)文;若所述OAM配置命令不使用單播模式,構(gòu)造多播OAM請求報(bào)文,并向所述OAM配置命令中分發(fā)樹上的所有節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文。本發(fā)明還公開了一種OAM報(bào)文的接收處理方法和裝置。本發(fā)明實(shí)現(xiàn)了在多鏈接透明互聯(lián)網(wǎng)絡(luò)中的操作、管理和維護(hù)功能。
【專利說明】OAM報(bào)文的發(fā)送處理方法和裝置、接收處理方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)通訊領(lǐng)域,尤其涉及一種OAM報(bào)文的發(fā)送處理方法和裝置、接收處理方法和裝置。
【背景技術(shù)】
[0002]傳統(tǒng)以太網(wǎng)一個(gè)較大的局限性在于生成樹協(xié)議(Spanning tree protocols, STP)對(duì)于網(wǎng)絡(luò)拓?fù)洵h(huán)路的處理方式。首先,生成樹協(xié)議將網(wǎng)絡(luò)鏈接修剪成嚴(yán)格的樹狀拓?fù)浣Y(jié)構(gòu),這導(dǎo)致一方面冗余鏈路無法使用,另一方面根網(wǎng)橋的轉(zhuǎn)發(fā)存在瓶頸,極大的限制了網(wǎng)絡(luò)的利用率。其次,當(dāng)網(wǎng)絡(luò)發(fā)生變化時(shí),生成樹協(xié)議收斂時(shí)間會(huì)達(dá)到幾秒甚至幾十秒,在大型網(wǎng)絡(luò)中,特別是針對(duì)有虛擬環(huán)境的網(wǎng)絡(luò),網(wǎng)絡(luò)重聚時(shí)間過于緩慢。最后,生成樹協(xié)議算法導(dǎo)致拓?fù)鋬?nèi)活躍路徑可能并不是兩個(gè)設(shè)備之間最有效或最短的通信路徑。構(gòu)建三層網(wǎng)絡(luò),使用IP技術(shù),可以解決上述問題,但是針對(duì)子網(wǎng)間主機(jī)動(dòng)態(tài)遷移等情況,會(huì)遇到一些困難。所以,結(jié)合現(xiàn)有的兩種方案的優(yōu)點(diǎn),涉及一種新型的橋接系統(tǒng),在提供二層網(wǎng)絡(luò)服務(wù)的同時(shí),又能使用類似三層的路由功能,將是十分必要的。多鏈接透明互聯(lián)(Transparentinterconnection of lots of links, TRILL)是這種橋接系統(tǒng)的一個(gè)實(shí)現(xiàn)方法。
[0003]在TRILL網(wǎng)絡(luò)中,運(yùn)行TRILL協(xié)議的交換機(jī)同時(shí)具有二層轉(zhuǎn)發(fā)和三層路由功能,通常稱為路由交換機(jī)(Router Bridge, RB)。路由交換機(jī)上執(zhí)行鏈接狀態(tài)路由協(xié)議,這種鏈接狀態(tài)路由協(xié)議使得每臺(tái)路由交換機(jī)具備關(guān)于由所有路由交換機(jī)和所有路由交換機(jī)之間的鏈接組成的拓?fù)涞闹R(shí)。使用該鏈接狀態(tài)路由協(xié)議,每臺(tái)路由交換機(jī)計(jì)算從自身到其他路由交換機(jī)的最短路徑,以及傳送多目的業(yè)務(wù)的分發(fā)樹。圖1是現(xiàn)有技術(shù)提供的TRILL網(wǎng)絡(luò)的結(jié)構(gòu)示意圖。參見圖1,當(dāng)路由交換機(jī)Rl從以太網(wǎng)端節(jié)點(diǎn)S接收到以以太網(wǎng)端節(jié)點(diǎn)D為目的節(jié)點(diǎn)的以太分組,路由交換機(jī)Rl將該以太分組封裝TRILL頭,將封裝TRILL頭后的分組傳送至直接與以太網(wǎng)端節(jié)點(diǎn)D相連接的路由交換機(jī)R4。其中,所述TRILL頭包括一個(gè)“入口路由交換機(jī)”字段,一個(gè)“出口路由交換機(jī)”字段,和一個(gè)跳計(jì)數(shù)字段。當(dāng)路由交換機(jī)R4接收到封裝了 TRILL頭的分組后,去除掉所述分組的TRILL頭,并將所述分組轉(zhuǎn)發(fā)至以太網(wǎng)端節(jié)點(diǎn)D。
[0004]然而,在現(xiàn)有的TRILL網(wǎng)絡(luò)技術(shù)中,沒有在路由交換機(jī)上實(shí)現(xiàn)的操作、管理和維護(hù)(Operation, administration, maintenance, 0AM)機(jī)制,導(dǎo)致 TRILL 網(wǎng)絡(luò)出現(xiàn)故障時(shí),不能對(duì)故障進(jìn)行準(zhǔn)確的監(jiān)測和定位,網(wǎng)絡(luò)的維護(hù)工作存在巨大障礙。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本發(fā)明提出一種OAM報(bào)文的發(fā)送處理方法和裝置、接收處理方法和裝置,來解決以上【背景技術(shù)】部分提到的技術(shù)問題。
[0006]在第一方面,本發(fā)明實(shí)施例提供了一種OAM報(bào)文的發(fā)送處理方法,應(yīng)用于多鏈接透明互聯(lián)(Transparent interconnection of lots of links, TRILL)網(wǎng)絡(luò)中,所述方法包括:[0007]接收用戶輸入的OAM配置命令,判斷所述OAM配置命令是否使用單播模式;
[0008]若所述OAM配置命令使用了單播模式,構(gòu)造單播OAM請求報(bào)文,并向目的路由交換機(jī)(Routing bridge, RB)發(fā)送所述單播OAM請求報(bào)文;
[0009]若所述OAM配置命令不使用單播模式,構(gòu)造多播OAM請求報(bào)文,并向所述OAM配置命令中分發(fā)樹上的所有節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文。
[0010]在第二方面,本發(fā)明實(shí)施例提供了一種OAM報(bào)文的發(fā)送處理裝置,應(yīng)用于多鏈接透明互聯(lián)網(wǎng)絡(luò)中,所述裝置包括:
[0011 ] 發(fā)送模式判斷模塊,用于接收用戶輸入的OAM配置命令,判斷所述OAM配置命令是否使用單播模式;
[0012]單播OAM請求報(bào)文發(fā)送模塊,用于在所述OAM配置命令使用了單播模式時(shí),構(gòu)造單播OAM請求報(bào)文,并向目的路由交換機(jī)(Routing bridge, RB)發(fā)送所述單播OAM請求報(bào)文;
[0013]多播OAM請求報(bào)文發(fā)送模塊,用于在所述OAM配置命令不使用單播模式時(shí),構(gòu)造多播OAM請求報(bào)文,并向所述OAM配置命令中分發(fā)樹上的所有節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文。
[0014]在第三方面,本發(fā)明實(shí)施例提供了一種OAM報(bào)文的接收處理方法,應(yīng)用于多鏈接透明互聯(lián)網(wǎng)絡(luò)中,所述方法包括:
[0015]接收OAM報(bào)文,并根據(jù)所述OAM報(bào)文的報(bào)文頭所包含的信息判斷接收到的OAM報(bào)文是否是單播OAM報(bào)文;
[0016]若所述OAM報(bào)文是單播OAM報(bào)文,根據(jù)所述OAM報(bào)文中的出口別名(Egress nickname)字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行單播轉(zhuǎn)發(fā)或單播應(yīng)答處理,其中,所述OAM報(bào)文的類型包括OAM請求報(bào)文以及OAM應(yīng)答報(bào)文;
[0017]若所述OAM報(bào)文不是單播OAM報(bào)文,根據(jù)所述OAM報(bào)文中出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行多播轉(zhuǎn)發(fā)或多播應(yīng)答處理。
[0018]在第四方面,本發(fā)明實(shí)施例提供了一種OAM報(bào)文的接收處理裝置,應(yīng)用于多鏈接透明互聯(lián)網(wǎng)絡(luò)中,所述裝置包括:
[0019]接收模式判斷模塊,用于接收OAM報(bào)文,并根據(jù)所述OAM報(bào)文的報(bào)文頭所包含的信息判斷接收到的OAM報(bào)文是否是單播OAM報(bào)文;
[0020]單播OAM報(bào)文接收模塊,用于在判定所述OAM報(bào)文是單播OAM報(bào)文后,根據(jù)所述OAM報(bào)文中的出口別名(Egress nick name)字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行單播轉(zhuǎn)發(fā)或單播應(yīng)答處理,其中,所述OAM報(bào)文的類型包括OAM請求報(bào)文以及OAM應(yīng)答報(bào)文;
[0021 ] 多播OAM報(bào)文接收模塊,用于在判定所述OAM報(bào)文不是單播OAM報(bào)文后,根據(jù)所述OAM報(bào)文中出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行多播轉(zhuǎn)發(fā)或多播應(yīng)答處理。
[0022]本發(fā)明提供了一種OAM報(bào)文的發(fā)送處理方法和裝置,以及一種OAM報(bào)文的接收處理方法和裝置;所述OAM報(bào)文的發(fā)送處理方法和裝置以及所述OAM報(bào)文的接收處理方法和裝置都應(yīng)用于多鏈接透明互聯(lián)網(wǎng)絡(luò)中的路由交換機(jī)上;所述OAM報(bào)文的發(fā)送處理方法依據(jù)配置命令中指定的單播或多播模式對(duì)OAM報(bào)文進(jìn)行單播或多播發(fā)送,而所述OAM報(bào)文的接收處理方法依據(jù)所述OAM報(bào)文中包含的指示所述OAM報(bào)文是單播OAM報(bào)文還是多播OAM報(bào)文的信息對(duì)所述OAM報(bào)文進(jìn)行相應(yīng)的接收、轉(zhuǎn)發(fā)或者是回應(yīng)操作;利用所述的OAM報(bào)文的發(fā)送和接收處理方法和裝置,能夠?qū)崿F(xiàn)多鏈接透明互聯(lián)網(wǎng)絡(luò)中的操作、管理和維護(hù)功能。
【專利附圖】
【附圖說明】
[0023]通過閱讀參照以下附圖所作的對(duì)非限制性實(shí)施例所作的詳細(xì)描述,本發(fā)明的其它特征、目的和優(yōu)點(diǎn)將會(huì)變得更明顯:
[0024]圖1是現(xiàn)有技術(shù)提供的多鏈接透明互聯(lián)網(wǎng)絡(luò)的結(jié)構(gòu)示意圖;
[0025]圖2是本發(fā)明第一實(shí)施例提供的OAM報(bào)文的發(fā)送處理方法的流程圖;
[0026]圖3是本發(fā)明第一實(shí)施例提供的單播OAM報(bào)文發(fā)送處理的流程圖;
[0027]圖4是本發(fā)明第一實(shí)施例提供的OAM報(bào)文的TRILL頭的結(jié)構(gòu)示意圖;
[0028]圖5是本發(fā)明第一實(shí)施例提供的OAM報(bào)文的外層以太頭的結(jié)構(gòu)示意圖;
[0029]圖6是本發(fā)明第一實(shí)施例提供的多播OAM報(bào)文發(fā)送處理的流程圖;
[0030]圖7是本發(fā)明第二實(shí)施例提供的OAM報(bào)文的發(fā)送處理裝置的結(jié)構(gòu)圖;
[0031]圖8是本發(fā)明第三實(shí)施例提供的OAM報(bào)文的接收處理方法的流程圖;
[0032]圖9是本發(fā)明第三實(shí)施例提供的單播OAM報(bào)文接收處理的流程圖;
[0033]圖10是本發(fā)明第三實(shí)施例提供的多播OAM報(bào)文接收處理的流程圖;
[0034]圖11是本發(fā)明第四實(shí)施例提供的OAM報(bào)文的接收處理裝置的結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0035]下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明??梢岳斫獾氖牵颂幩枋龅木唧w實(shí)施例僅用于解釋本發(fā)明,而非對(duì)本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部內(nèi)容。
[0036]圖2至圖6示出了本發(fā)明的第一實(shí)施例。
[0037]圖2是本發(fā)明第一實(shí)施例提供的OAM報(bào)文的發(fā)送處理方法的流程圖。參見圖2,所述OAM報(bào)文的發(fā)送處理方法包括:步驟S210,接收用戶輸入的OAM配置命令,判斷所述OAM配置命令是否使用單播模式;步驟S220,若所述OAM配置命令使用了單播模式,構(gòu)造單播OAM請求報(bào)文,并向目的路由交換機(jī)(Routing bridge, RB)發(fā)送所述單播OAM請求報(bào)文;步驟S230,若所述OAM配置命令不使用單播模式,構(gòu)造多播OAM請求報(bào)文,并向所述OAM配置命令中分發(fā)樹上的所有節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文。
[0038]在步驟S210中,接收用戶輸入的OAM配置命令,判斷所述OAM配置命令是否使用單播模式。
[0039]在本實(shí)施例中,所述路由交換機(jī)根據(jù)用戶輸入的OAM配置命令發(fā)送OAM請求報(bào)文。所述OAM配置命令包括ping命令和traceroute命令。Ping命令用于檢測TRILL網(wǎng)絡(luò)中兩個(gè)路由交換機(jī)之間的網(wǎng)絡(luò)連接是否通暢。Traceroute命令用于檢測TRILL網(wǎng)絡(luò)中OAM請求報(bào)文被傳輸至目的路由交換機(jī)所經(jīng)過的路徑。
[0040]所述OAM配置命令可以采用單播模式,也可以采用多播模式,即所述路由交換機(jī)可以根據(jù)用戶輸入的OAM配置命令按照單播模式發(fā)送OAM請求報(bào)文,也可以根據(jù)用戶輸入的OAM配置命令按照多播模式發(fā)送OAM請求報(bào)文。一條采用單播模式的ping命令如下:
[0041]rbridge-ping 8001。[0042]在所述采用單播模式的ping命令中,“rbridge-ping”表示用戶在路由交換機(jī)上輸入的OAM配置命令是ping命令,并且所述ping命令采用單播模式;“8001”是所述ping命令的目的路由交換機(jī)的別名。
[0043]一條采用多播模式的ping命令如下:
[0044]rbridge-mping dtree 8002。
[0045]在所述采用多播模式的ping命令中,“rbridge-mping”表示用戶在路由交換機(jī)上輸入的OAM配置命令是ping命令,并且所述ping命令采用多播模式;“dtree 8002”用于指定所述多播模式下的Ping命令的分發(fā)樹和目的路由交換機(jī)。
[0046]通過上面兩條ping命令可以看出,單播模式下的ping命令和多播模式下的ping命令采用了不同的命令標(biāo)識(shí)字符串,即在單播模式下的Ping命令采用了 “rbridge-ping”作為標(biāo)識(shí)單播模式下的Ping命令的字符串,而在多播模式下的ping命令采用了“rbridge-mping”作為標(biāo)識(shí)多播模式下的ping命令的字符串。
[0047]類似的,單播模式下的traceroute命令和多播模式下的traceroute命令也采用了不同的命令標(biāo)識(shí)字符串。在單播模式下的traceroute命令采用了“rbridge-traceroute”作為標(biāo)識(shí)單播模式下的traceroute命令的字符串,而在多播模式下的traceroute命令米用了 “rbridge-mtraceroute”作為標(biāo)識(shí)多播模式下的traceroute命令的字符串。
[0048]路由交換機(jī)在接收了用戶輸入的OAM配置命令后,通過識(shí)別不同的命令標(biāo)識(shí)字符串,可以確定用戶輸入的OAM配置命令是單播模式下的OAM配置命令,還是多播模式下的OAM配置命令。
[0049]在步驟S220中,若所述OAM配置命令使用了單播模式,構(gòu)造單播OAM請求報(bào)文,并向目的路由交換機(jī)(Routing bridge, RB)發(fā)送所述單播OAM請求報(bào)文。
[0050]圖3是本發(fā)明第一實(shí)施例提供的單播OAM報(bào)文發(fā)送處理的流程圖。參見圖3,所述單播OAM報(bào)文的發(fā)送處理包括:子步驟S221,根據(jù)目的路由交換機(jī)的別名(Nick name)從路由表中獲取下一跳路由交換機(jī)的信息;子步驟S222,構(gòu)造所述單播OAM請求報(bào)文的有效載荷數(shù)據(jù);子步驟S223,構(gòu)造所述單播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息,其中,設(shè)置所述多鏈接透明互聯(lián)頭中的單播多播標(biāo)識(shí)位的取值為單播模式對(duì)應(yīng)的取值,同時(shí)設(shè)置所述多鏈接透明互聯(lián)頭中的配置命令標(biāo)識(shí)位,所述配置命令標(biāo)識(shí)位用于標(biāo)識(shí)所述單播OAM請求報(bào)文對(duì)應(yīng)的配置命令是ping命令還是traceroute命令;子步驟S224,構(gòu)造所述單播OAM請求報(bào)文的外層以太頭信息;子步驟S225,在本地記錄所述單播OAM請求報(bào)文的信息,并向下一跳路由交換機(jī)發(fā)送所述單播OAM請求報(bào)文;子步驟S226,啟動(dòng)定時(shí)器,以等待接收所述單播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0051]在子步驟S221中,根據(jù)目的路由交換機(jī)的別名(Nick name)從路由表中獲取下一跳路由交換機(jī)的信息。
[0052]在本實(shí)施例中,路由交換機(jī)自身存儲(chǔ)有記錄了所述TRILL網(wǎng)絡(luò)中各個(gè)路由交換機(jī)之間的連接關(guān)系的路由表。用戶輸入的OAM配置命令中包括所述OAM配置命令針對(duì)的目的路由交換機(jī)的別名。路由交換機(jī)接收到用戶輸入的OAM配置命令后,根據(jù)所述OAM配置命令中包括的目的路由交換機(jī)的別名,以及自身存儲(chǔ)的路由表,獲取下一跳路由交換機(jī)的信息,以確定將OAM請求報(bào)文轉(zhuǎn)發(fā)的目的路由交換機(jī)。[0053]在子步驟S222中,構(gòu)造所述單播OAM請求報(bào)文的有效載荷數(shù)據(jù)。
[0054]所述單播OAM請求報(bào)文包括有效載荷數(shù)據(jù)、內(nèi)層以太頭、多鏈接透明互聯(lián)頭以及外層以太頭。也就是說,構(gòu)造所述單播OAM請求報(bào)文需要構(gòu)造所述單播OAM請求報(bào)文的有效載荷數(shù)據(jù)、內(nèi)層以太頭、多鏈接透明互聯(lián)頭以及外層以太頭。
[0055]在TRILL網(wǎng)絡(luò)中,路由交換機(jī)構(gòu)造的OAM請求報(bào)文的有效載荷數(shù)據(jù)與在以太網(wǎng)中端節(jié)點(diǎn)構(gòu)造的OAM請求報(bào)文的有效載荷數(shù)據(jù)具有相同的內(nèi)容和格式。因此,路由交換機(jī)根據(jù)以太網(wǎng)中端節(jié)點(diǎn)構(gòu)造有效載荷數(shù)據(jù)的過程構(gòu)造TRILL網(wǎng)絡(luò)中OAM請求報(bào)文的有效載荷數(shù)據(jù)。
[0056]在子步驟S223中,構(gòu)造所述單播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息。
[0057]構(gòu)造所述單播OAM請求報(bào)文還包括構(gòu)造所述單播OAM請求報(bào)文的TRILL頭信息。圖4示出了本發(fā)明第一實(shí)施例提供的OAM請求報(bào)文的TRILL頭的結(jié)構(gòu)。參見圖4,所述OAM請求報(bào)文的TRILL頭包括:以太類型字段、版本號(hào)字段、預(yù)留字段、多播標(biāo)識(shí)字段、Option字段長度字段、跳計(jì)數(shù)字段、出口別名字段以及入口別名字段。其中,所述以太類型字段用于標(biāo)明該網(wǎng)絡(luò)是TRILL網(wǎng)絡(luò),所述出口別名字段用于標(biāo)明所述OAM請求報(bào)文在所述TRILL網(wǎng)絡(luò)中的目的路由交換機(jī)的別名,所述入口別名字段用于標(biāo)明所述OAM請求報(bào)文在所述TRILL網(wǎng)絡(luò)中的源路由交換機(jī)的別名。
[0058]在本實(shí)施例中,在構(gòu)造所述單播OAM請求報(bào)文的TRILL頭時(shí),需要將所述TRILL頭中的多播標(biāo)識(shí)字段作為所述OAM請求報(bào)文的單播多播標(biāo)識(shí)位,并將所述單播多播標(biāo)識(shí)位的取值設(shè)置為單播模式對(duì)應(yīng)的取值。同時(shí),還需要將所述TRILL頭中的預(yù)留字段作為所述OAM請求報(bào)文的配置命令標(biāo)識(shí)位,并根據(jù)所述OAM請求報(bào)文的對(duì)應(yīng)的OAM配置命令的類型,即所述OAM配置命令是ping命令還是traceroute命令設(shè)置所述配置命令標(biāo)識(shí)位的取值。
[0059]在子步驟S224中,構(gòu)造所述單播OAM請求報(bào)文的外層以太頭信息。
[0060]構(gòu)造所述單播OAM請求報(bào)文還包括構(gòu)造所述單播OAM請求報(bào)文的外層以太頭信息。圖5示出了本發(fā)明第一實(shí)施例提供的OAM請求報(bào)文的外層以太頭的結(jié)構(gòu)。參見圖5,所述外層以太頭包括:外層目的MAC地址字段、外層源MAC地址字段、以太類型字段以及外層VLAN標(biāo)識(shí)信息字段。
[0061]在子步驟S225中,在本地記錄所述單播OAM請求報(bào)文的信息,并向下一跳路由交換機(jī)發(fā)送所述單播OAM請求報(bào)文。
[0062]完成對(duì)所述單播OAM請求報(bào)文的構(gòu)造后,需要在本地路由交換機(jī)上記錄所構(gòu)造的單播OAM請求報(bào)文的信息。在本地路由交換機(jī)上記錄的所述單播OAM請求報(bào)文的信息包括所述單播OAM請求報(bào)文的序列號(hào)。在本地路由交換機(jī)上記錄所述單播OAM請求報(bào)文的信息的目的在于,路由交換機(jī)接收到發(fā)送的單播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文后,能夠在本地匹配所述單播OAM請求報(bào)文的信息,以確認(rèn)所述單播OAM請求報(bào)文的目的路由交換機(jī)已經(jīng)接收到了所述單播OAM請求報(bào)文。
[0063]在子步驟S226中,啟動(dòng)定時(shí)器,以等待接收所述單播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0064]在向目的路由交換機(jī)發(fā)送了所述單播OAM請求報(bào)文后,啟動(dòng)定時(shí)器,以識(shí)別是否能夠在預(yù)定的時(shí)間段內(nèi)接收到所述單播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0065]在步驟S230中,若所述OAM配置命令不使用單播模式,構(gòu)造多播OAM請求報(bào)文,并向所述OAM配置命令中分發(fā)樹上的所有節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文。
[0066]圖6是本發(fā)明第一實(shí)施例提供的多播OAM報(bào)文發(fā)送處理的流程圖。參見圖6,所述步驟S230包括:子步驟S231,確定是否存在所述OAM配置命令中預(yù)先指定的分發(fā)樹;子步驟S232,構(gòu)造所述多播OAM請求報(bào)文的有效載荷數(shù)據(jù);子步驟S233,構(gòu)造所述多播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息,其中,設(shè)置所述多鏈接透明互聯(lián)頭中的單播多播標(biāo)識(shí)位的取值為多播模式對(duì)應(yīng)的取值,同時(shí)設(shè)置所述多鏈接透明互聯(lián)頭中的配置命令標(biāo)識(shí)位,所述配置命令標(biāo)識(shí)位用于標(biāo)識(shí)所述多播OAM請求報(bào)文對(duì)應(yīng)的配置命令是ping命令還是traceroute命令;子步驟S234,構(gòu)造所述多播OAM請求報(bào)文的外層以太頭信息;子步驟S235,遍歷所述分發(fā)樹上的節(jié)點(diǎn),按照所述節(jié)點(diǎn)被遍歷的次序記錄所述多播OAM請求報(bào)文的信息,并向各節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文;子步驟S236,啟動(dòng)定時(shí)器,以等待接收所述多播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0067]在子步驟S231中,確定是否存在所述OAM配置命令中預(yù)先指定的分發(fā)樹。
[0068]若用戶在路由交換機(jī)上輸入的OAM配置命令采用了多播模式,用戶需要在所述OAM配置命令中指定進(jìn)行多播傳輸?shù)姆职l(fā)樹。路由交換機(jī)接收到用戶輸入的OAM配置命令后,首先檢查在本地是否存儲(chǔ)有在所述OAM配置命令中預(yù)先指定的所述分發(fā)樹。若本地存儲(chǔ)有在所述OAM配置命令中指定的分發(fā)樹,則可以執(zhí)行所述多播OAM請求報(bào)文的發(fā)送;若本地沒有存儲(chǔ)在所述OAM配置命令中指定的分發(fā)樹,則不執(zhí)行所述多播OAM請求報(bào)文的發(fā)送,并且通過輸出設(shè)備通知用戶輸入的OAM配置命令中的分發(fā)樹參數(shù)存在錯(cuò)誤。
[0069]在子步驟S232中,構(gòu)造所述多播OAM請求報(bào)文的有效載荷數(shù)據(jù)。
[0070]與構(gòu)造所述單播OAM請求報(bào)文的過程類似,構(gòu)造所述多播OAM請求報(bào)文也包括構(gòu)造所述多播OAM請求報(bào)文的有效載荷數(shù)據(jù)。所述多播OAM請求報(bào)文的有效載荷數(shù)據(jù)與以太網(wǎng)報(bào)文的有效載荷數(shù)據(jù)的內(nèi)容和格式相同,因此對(duì)有效載荷數(shù)據(jù)的構(gòu)造過程不再贅述。
[0071]在子步驟S233中,構(gòu)造所述多播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息。
[0072]所述多播OAM請求報(bào)文的TRILL頭與圖4中示出的所述單播OAM請求報(bào)文的TRILL頭的格式相同,在此不再贅述。所述多播OAM請求報(bào)文的TRILL頭與所述單播OAM請求報(bào)文的TRILL頭的不同之處在所述多播OAM請求報(bào)文的多播標(biāo)識(shí)字段的取值與所述單播請求報(bào)文的多播標(biāo)識(shí)字段的取值不同。
[0073]在本實(shí)施例中,在構(gòu)造所述多播OAM請求報(bào)文的TRILL頭時(shí),需要將所述TRILL頭中的多播標(biāo)識(shí)字段作為所述多播OAM請求報(bào)文的單播多播標(biāo)識(shí)位,并將所述單播多播標(biāo)識(shí)位的取值設(shè)置為多播模式對(duì)應(yīng)的值。同時(shí),還需要將所述TRILL頭中的預(yù)留字段作為所述多播OAM請求報(bào)文的配置命令標(biāo)識(shí)位,并根據(jù)所述多播OAM請求報(bào)文的對(duì)應(yīng)的OAM配置命令的類型,即所述OAM配置命令是ping命令還是traceroute命令設(shè)置所述配置命令標(biāo)識(shí)位的取值。
[0074]在子步驟S234中,構(gòu)造所述多播OAM請求報(bào)文的外層以太頭信息。
[0075]所述多播OAM請求報(bào)文的外層以太頭與所述單播OAM請求報(bào)文的外層以太頭具有相同的數(shù)據(jù)字段結(jié)構(gòu),因此構(gòu)造所述多播OAM請求報(bào)文的外層以太頭信息的過程與構(gòu)造所述單播OAM請求報(bào)文的外層以太頭信息的過程相同,在此不再贅述。
[0076]在子步驟S235中,遍歷所述分發(fā)樹上的節(jié)點(diǎn),按照所述節(jié)點(diǎn)被遍歷的次序記錄所述多播OAM請求報(bào)文的信息,并向各節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文。
[0077]在多播模式下,路由交換機(jī)接收到用戶輸入的OAM配置命令后,需要向所述OAM配置命令中指定的分發(fā)樹上的每一個(gè)節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送多播OAM請求報(bào)文。因此,源路由交換機(jī)需要遍歷用戶輸入的OAM配置命令中指定的分發(fā)樹上的每一個(gè)節(jié)點(diǎn),然后根據(jù)每一個(gè)節(jié)點(diǎn)被遍歷的次序向各個(gè)節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送多播OAM請求報(bào)文。在向各個(gè)節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文的同時(shí),需要記錄所述多播OAM請求報(bào)文的信息,以便接收到所述多播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文后進(jìn)行信息匹配。
[0078]在本實(shí)施例的一種優(yōu)選實(shí)施方式中,采用深度優(yōu)先遍歷算法對(duì)分發(fā)樹上的節(jié)點(diǎn)進(jìn)行遍歷。在本實(shí)施例的另一種優(yōu)選實(shí)施方式中,采用廣度優(yōu)先遍歷算法對(duì)分發(fā)樹上的節(jié)點(diǎn)進(jìn)行遍歷。
[0079]在子步驟S236中,啟動(dòng)定時(shí)器,以等待接收所述多播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0080]在向分發(fā)樹上各個(gè)節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送了所述多播OAM請求報(bào)文后,啟動(dòng)定時(shí)器,以識(shí)別是否能夠在預(yù)定的時(shí)間段內(nèi)接收到所述多播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0081]本實(shí)施例通過接收用戶輸入的OAM配置命令,判斷OAM請求報(bào)文需要采用單播模式還是采用多播模式發(fā)送,然后根據(jù)所述OAM請求報(bào)文的發(fā)送模式向目的路由交換機(jī)發(fā)送所述OAM請求報(bào)文,使得在多鏈接透明互聯(lián)網(wǎng)絡(luò)中能夠按照單播模式及多播模式實(shí)現(xiàn)OAM報(bào)文的發(fā)送。
[0082]圖7示出了本發(fā)明的第二實(shí)施例。
[0083]圖7是本發(fā)明第二實(shí)施例提供的OAM報(bào)文的發(fā)送處理裝置的結(jié)構(gòu)圖。參見圖7,所述OAM報(bào)文的發(fā)送處理裝置包括:發(fā)送模式判斷模塊710,用于接收用戶輸入的OAM配置命令,判斷所述OAM配置命令是否使用單播模式;單播OAM請求報(bào)文發(fā)送模塊720,用于在所述OAM配置命令使用了單播模式時(shí),構(gòu)造單播OAM請求報(bào)文,并向目的路由交換機(jī)(Routingbridge, RB)發(fā)送所述單播OAM請求報(bào)文;多播OAM請求報(bào)文發(fā)送模塊730,用于在所述OAM配置命令不使用單播模式時(shí),構(gòu)造多播OAM請求報(bào)文,并向所述OAM配置命令中分發(fā)樹上的所有節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文。
[0084]所述發(fā)送模式判斷模塊710用于接收用戶輸入的OAM配置命令,判斷所述OAM配
置命令是否使用單播模式。
[0085]在本實(shí)施例中,路由交換機(jī)需要接收用戶輸入的OAM配置命令,然后根據(jù)所述OAM配置命令來發(fā)送OAM請求報(bào)文。所述發(fā)送模式判斷模塊710用于完成接收用戶輸入的OAM配置命令的操作。
[0086]完成OAM配置命令的接收后,所述發(fā)送模式判斷模塊710還需要根據(jù)接收到的OAM配置命令判斷所述OAM配置命令是否使用單播模式。判斷所述OAM配置命令是否使用單播模式的方法是所述OAM配置命令是否采用了單播模式對(duì)應(yīng)的OAM配置命令文本。若所述OAM配置命令采用了單播模式對(duì)應(yīng)的OAM配置命令文本,則所述OAM配置命令使用了單播模式;若所述OAM配置命令采用了多播模式對(duì)應(yīng)的OAM配置命令文本,則所述OAM配置命令使用了多播模式。
[0087]所述單播OAM請求報(bào)文發(fā)送模塊720用于在所述OAM配置命令使用了單播模式時(shí),構(gòu)造單播OAM請求報(bào)文,并向目的路由交換機(jī)發(fā)送所述單播OAM請求報(bào)文。
[0088]所述單播OAM請求報(bào)文發(fā)送模塊720包括下一跳路由交換機(jī)信息獲取子模塊721,第一有效載荷數(shù)據(jù)構(gòu)造子模塊722,第一多鏈接透明互聯(lián)頭信息構(gòu)造子模塊723,第一外層以太頭信息構(gòu)造子模塊724,第一 OAM請求報(bào)文發(fā)送子模塊725,以及第一定時(shí)器啟動(dòng)模塊726。
[0089]所述下一跳路由交換機(jī)信息獲取子模塊721用于根據(jù)目的路由交換機(jī)的別名從路由表中獲取下一跳路由交換機(jī)的信息。
[0090]路由交換機(jī)內(nèi)存儲(chǔ)有指示所述路由交換機(jī)與其他路由交換機(jī)之間的連接關(guān)系的路由表。在用戶輸入的OAM配置命令中包括表示目的路由交換機(jī)的別名的參數(shù)。所述下一跳路由交換機(jī)信息獲取子模塊721根據(jù)所述OAM配置命令中表示目的路由交換機(jī)的別名的參數(shù)查找所述路由表,就能獲取到下一跳路由交換機(jī)的信息。
[0091 ] 第一有效載荷數(shù)據(jù)構(gòu)造子模塊722用于構(gòu)造所述單播OAM請求報(bào)文的有效載荷數(shù)據(jù)。
[0092]所述單播OAM請求報(bào)文的有效載荷數(shù)據(jù)與以太網(wǎng)中OAM請求報(bào)文的有效載荷數(shù)據(jù)的內(nèi)容和格式相同。因此,所述第一有效載荷數(shù)據(jù)構(gòu)造子模塊722根據(jù)以太網(wǎng)中OAM請求報(bào)文的有效載荷數(shù)據(jù)的內(nèi)容和格式構(gòu)造所述單播OAM請求報(bào)文的有效載荷數(shù)據(jù)。
[0093]所述第一多鏈接透明互聯(lián)頭信息構(gòu)造子模塊723用于構(gòu)造所述單播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息。
[0094]所述第一多鏈接透明互聯(lián)頭信息構(gòu)造子模塊723在構(gòu)造所述單播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息時(shí),需要將所述單播OAM請求報(bào)文的多播標(biāo)識(shí)字段作為所述單播OAM請求報(bào)文的單播多播標(biāo)識(shí)位,并將所述單播OAM請求報(bào)文的單播多播標(biāo)識(shí)位設(shè)置為單播模式對(duì)應(yīng)的取值。
[0095]所述第一多鏈接透明互聯(lián)頭信息構(gòu)造子模塊723還需要將所述單播OAM請求報(bào)文的預(yù)留字段作為所述單播OAM請求報(bào)文的配置命令標(biāo)識(shí)位,并使用所述單播OAM請求報(bào)文的配置命令標(biāo)識(shí)位標(biāo)識(shí)所述單播OAM請求報(bào)文是由ping命令發(fā)起的,或者是有traceroute命令發(fā)起的。
[0096]所述第一外層以太頭信息構(gòu)造子模塊724用于構(gòu)造所述單播OAM請求報(bào)文的外層以太頭信息。
[0097]所述單播OAM請求報(bào)文的外層以太頭信息包括外層目的MAC地址字段、外層源MAC地址字段、以太類型字段以及外層VLAN標(biāo)識(shí)信息字段。所述第一外層以太頭信息構(gòu)造子模塊724按照上述各個(gè)字段的格式構(gòu)造所述單播OAM請求報(bào)文的外層以太頭信息。
[0098]所述第一 OAM請求報(bào)文發(fā)送子模塊725用于在本地記錄所述單播OAM請求報(bào)文的信息,并向下一跳路由交換機(jī)發(fā)送所述單播OAM請求報(bào)文。
[0099]所述第一 OAM請求報(bào)文發(fā)送子模塊725將構(gòu)造好的單播OAM請求報(bào)文發(fā)送至下一跳路由交換機(jī)。在發(fā)送所述單播OAM請求報(bào)文的同時(shí),所述第一 OAM請求報(bào)文發(fā)送子模塊還需要在本地記錄所述單播OAM請求報(bào)文的信息,以便接收到所述單播OAM請求報(bào)文對(duì)應(yīng)的應(yīng)答報(bào)文后,進(jìn)行單播OAM請求報(bào)文的匹配。
[0100]所述第一定時(shí)器啟動(dòng)模塊726用于啟動(dòng)定時(shí)器,以等待接收所述單播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。[0101]所述第一定時(shí)器啟動(dòng)模塊726用于在發(fā)送所述單播OAM請求報(bào)文后,啟動(dòng)定時(shí)器,以便能夠識(shí)別是否在預(yù)定的時(shí)間段內(nèi)接收到所述單播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0102]所述多播OAM請求報(bào)文發(fā)送模塊730用于在所述OAM配置命令不使用單播模式時(shí),構(gòu)造多播OAM請求報(bào)文,并向所述OAM配置命令中分發(fā)樹上的所有節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文。
[0103]所述多播OAM請求報(bào)文發(fā)送模塊730包括分發(fā)樹確定子模塊731,第二有效載荷數(shù)據(jù)構(gòu)造子模塊732,第二多鏈接透明互聯(lián)頭信息構(gòu)造子模塊733,第二外層以太頭信息構(gòu)造子模塊734,第二 OAM請求報(bào)文發(fā)送子模塊735,以及第二定時(shí)器啟動(dòng)子模塊736。
[0104]所述分發(fā)樹確定子模塊731用于確定是否存在所述OAM配置命令中預(yù)先指定的分發(fā)樹。
[0105]用戶采用多播模式發(fā)送OAM請求報(bào)文時(shí),需要指定在進(jìn)行多播模式OAM請求報(bào)文發(fā)送中使用的分發(fā)樹。路由交換機(jī)預(yù)先存儲(chǔ)了與本路由交換機(jī)有關(guān)聯(lián)的分發(fā)樹的列表。路由交換機(jī)接收到用戶輸入的OAM配置命令后,所述分發(fā)樹確定子模塊731在本地存儲(chǔ)的分發(fā)樹列表中查找用戶在所述OAM配置命令中預(yù)先指定的分發(fā)樹。若經(jīng)過所述分發(fā)樹確定子模塊731的確定,所述路由交換機(jī)本地存儲(chǔ)有用戶在所述OAM配置命令中預(yù)先指定的分發(fā)樹,則所述路由交換機(jī)繼續(xù)所述多播OAM請求報(bào)文的發(fā)送;若經(jīng)過所述分發(fā)樹確定子模塊731的確定,所述路由交換機(jī)本地沒有存儲(chǔ)用戶在所述OAM配置命令中預(yù)先指定的分發(fā)樹,則所述路由交換機(jī)不再進(jìn)行所述OAM請求報(bào)文的發(fā)送,并文本反饋信息提示用戶分發(fā)樹指定有錯(cuò)誤。
[0106]所述第二有效載荷數(shù)據(jù)構(gòu)造子模塊732用于構(gòu)造所述多播OAM請求報(bào)文的有效載荷數(shù)據(jù)。
[0107]與單播OAM請求報(bào)文相同,所述多播OAM請求報(bào)文的有效載荷數(shù)據(jù)與以太網(wǎng)中的OAM請求報(bào)文具有相同的內(nèi)容和格式。因此與第一有效載荷數(shù)據(jù)構(gòu)造子模塊722相同,所述第二有效載荷數(shù)據(jù)構(gòu)造子模塊按照以太網(wǎng)中的OAM請求報(bào)文的格式構(gòu)造所述多播OAM請求報(bào)文的有效載荷數(shù)據(jù)。
[0108]所述第二多鏈接透明互聯(lián)頭信息構(gòu)造子模塊733用于構(gòu)造所述多播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息。
[0109]所述多播OAM請求報(bào)文具有與單播OAM請求報(bào)文相同格式的多鏈接透明互聯(lián)頭信息。因此,對(duì)所述多播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息的格式不再贅述。
[0110]在構(gòu)造所述多播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息時(shí),所述第二多鏈接透明互聯(lián)頭信息構(gòu)造子模塊733需要將所述多播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息中的多播標(biāo)識(shí)字段作為所述多播OAM請求報(bào)文的單播多播標(biāo)識(shí)位,并將所述多播OAM請求報(bào)文的單播多播標(biāo)識(shí)為設(shè)置為多播模式對(duì)應(yīng)的取值。
[0111]所述第二外層以太頭信息構(gòu)造子模塊734用于構(gòu)造所述多播OAM請求報(bào)文的外層以太頭信息。
[0112]與所述單播OAM請求報(bào)文相同,所述多播OAM請求報(bào)文也具有外層以太頭。并且,所述多播OAM請求報(bào)文的外層以太頭與所述單播OAM請求報(bào)文的外層以太頭具有相同的格式。因此,所述第二外層以太頭信息構(gòu)造子模塊734可以按照所述第一外層以太頭信息構(gòu)造子模塊724構(gòu)造所述單播OAM請求報(bào)文的外層以太頭的方式構(gòu)造所述多播OAM請求報(bào)文的外層以太頭。
[0113]所述第二 OAM請求報(bào)文發(fā)送子模塊735用于遍歷所述分發(fā)樹上的節(jié)點(diǎn),按照所述節(jié)點(diǎn)被遍歷的次序記錄所述多播OAM請求報(bào)文的信息,并向各節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文。
[0114]在本實(shí)施例中,所述多播OAM請求報(bào)文的發(fā)送需要指明確定的分發(fā)樹。所述分發(fā)樹是一種樹型的存儲(chǔ)結(jié)構(gòu),并且所述分發(fā)樹上的每一個(gè)節(jié)點(diǎn)代表多數(shù)TRILL網(wǎng)絡(luò)中的一個(gè)路由交換機(jī)。
[0115]所述第二 OAM請求報(bào)文發(fā)送子模塊735用于遍歷所述分發(fā)樹上的節(jié)點(diǎn),并按照對(duì)應(yīng)的節(jié)點(diǎn)被遍歷的次序向分發(fā)樹上的節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送多播OAM請求報(bào)文。在發(fā)送每個(gè)多播OAM請求報(bào)文之前,所述第二 OAM請求報(bào)文發(fā)送子模塊735還將待發(fā)送的多播OAM請求報(bào)文的信息進(jìn)行記錄,以便接收到所述多播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文時(shí),對(duì)所述多播OAM請求報(bào)文進(jìn)行匹配。
[0116]在本實(shí)施例的一種優(yōu)選實(shí)施方式中,所述第二 OAM請求報(bào)文發(fā)送子模塊按照深度優(yōu)先遍歷算法對(duì)所述分發(fā)樹上的節(jié)點(diǎn)進(jìn)行遍歷。在本實(shí)施例的另一種優(yōu)選實(shí)施方式中,所述第二 OAM請求報(bào)文發(fā)送子模塊按照廣度優(yōu)先遍歷算法對(duì)所述分發(fā)樹上的節(jié)點(diǎn)進(jìn)行遍歷。
[0117]所述第二定時(shí)器啟動(dòng)子模塊736用于啟動(dòng)定時(shí)器,以等待接收所述多播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0118]當(dāng)所述第二 OAM請求報(bào)文發(fā)送子模塊735發(fā)送所述多播OAM請求報(bào)文時(shí),所述第二定時(shí)器啟動(dòng)子模塊736啟動(dòng)對(duì)應(yīng)于所述多播OAM請求報(bào)文的定時(shí)器,以便判斷是否能夠在預(yù)定的時(shí)間段內(nèi)接收到所發(fā)送的多播OAM請求報(bào)文的OAM應(yīng)答報(bào)文。
[0119]本實(shí)施例通過接收用戶的OAM配置命令,根據(jù)接收到的OAM配置命令判斷OAM請求報(bào)文的發(fā)送模式,并按照用戶指定的OAM請求報(bào)文的發(fā)送模式向目的路由交換機(jī)發(fā)送OAM請求報(bào)文,使得在多鏈接透明互聯(lián)網(wǎng)絡(luò)中能夠發(fā)送OAM請求報(bào)文。
[0120]圖8至圖10示出了本發(fā)明的第三實(shí)施例。
[0121]圖8是本發(fā)明第三實(shí)施例提供的OAM報(bào)文的接收處理方法的流程圖。參見圖8,所述OAM報(bào)文的接收處理方法包括:步驟S810,接收OAM報(bào)文,并根據(jù)所述OAM報(bào)文的報(bào)文頭所包含的信息判斷接收到的OAM報(bào)文是否是單播OAM報(bào)文;步驟S820,若所述OAM報(bào)文是單播OAM報(bào)文,根據(jù)所述OAM報(bào)文中的出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行單播轉(zhuǎn)發(fā)或單播應(yīng)答處理,其中,所述OAM報(bào)文的類型包括OAM請求報(bào)文以及OAM應(yīng)答報(bào)文;步驟S830,若所述OAM報(bào)文不是單播OAM報(bào)文,根據(jù)所述OAM報(bào)文中出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行多播轉(zhuǎn)發(fā)或多播應(yīng)答處理。
[0122]在步驟S810中,接收OAM報(bào)文,并根據(jù)所述OAM報(bào)文的報(bào)文頭所包含的信息判斷接收到的OAM報(bào)文是否是單播OAM報(bào)文。
[0123]路由交換機(jī)接收的OAM報(bào)文都包括單播多播標(biāo)識(shí)位。接收到OAM報(bào)文的路由交換機(jī)通過識(shí)別所述OAM報(bào)文中的單播多播標(biāo)識(shí)位可以判斷所述OAM報(bào)文是否是單播OAM報(bào)文。
[0124]在本實(shí)施例中,所述OAM報(bào)文的單播多播標(biāo)識(shí)位是所述OAM報(bào)文的多鏈接透明連接頭信息中的多播標(biāo)識(shí)字段中的一位。當(dāng)所述多播標(biāo)識(shí)字段中的該位的取值是O時(shí),所述OAM報(bào)文是單播OAM報(bào)文;當(dāng)所述多播標(biāo)識(shí)字段中的該位的取值是I時(shí),所述OAM報(bào)文是多播OAM報(bào)文。
[0125]在步驟S820中,若所述OAM報(bào)文是單播OAM報(bào)文,根據(jù)所述OAM報(bào)文中的出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行單播轉(zhuǎn)發(fā)或單播應(yīng)答處理,其中,所述OAM報(bào)文的類型包括OAM請求報(bào)文以及OAM應(yīng)答報(bào)文。
[0126]圖9是本發(fā)明第三實(shí)施例提供的單播OAM報(bào)文接收處理的流程圖。參見圖9,所述單播OAM報(bào)文接收處理包括:子步驟S821,判斷所述OAM報(bào)文中的出口別名字段是否與本路由交換機(jī)的別名相同;子步驟S822,若所述OAM報(bào)文中出口別名字段與本路由交換機(jī)的別名不同,根據(jù)所述OAM報(bào)文中的配置命令標(biāo)識(shí)位判斷所述OAM報(bào)文是否由ping命令發(fā)起;子步驟S823,若所述OAM報(bào)文中出口別名字段與本路由交換機(jī)的別名相同,判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文;子步驟S824,若所述OAM報(bào)文是由ping命令發(fā)起的,或者所述OAM報(bào)文是OAM應(yīng)答報(bào)文,則根據(jù)路由表向下一跳路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文;子步驟S825,若所述OAM報(bào)文既不是有ping命令發(fā)起的,也不是OAM應(yīng)答報(bào)文,則向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文,并根據(jù)路由表向下一跳路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文;子步驟S826,若所述OAM報(bào)文是OAM應(yīng)答報(bào)文,用所述OAM應(yīng)答報(bào)文的序列號(hào)匹配本地記錄的OAM請求報(bào)文的信息,并將匹配的OAM請求報(bào)文對(duì)應(yīng)的定時(shí)器的計(jì)時(shí)停止;子步驟S827,若所述OAM報(bào)文不是OAM應(yīng)答報(bào)文,向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0127]在子步驟S821中,判斷所述OAM報(bào)文中的出口別名字段是否與本路由交換機(jī)的別名相同。
[0128]所述路由交換機(jī)接收到的OAM報(bào)文的多鏈接透明互聯(lián)頭信息中都包括有出口別名字段。路由交換機(jī)在接收到OAM報(bào)文后,通過讀取接收到的OAM報(bào)文的出口別名字段,再將讀取到的出口別名字段與自身的別名比較,以辨別接收到的OAM報(bào)文是否是以自身為所述多鏈接透明互聯(lián)網(wǎng)絡(luò)中的目的路由交換機(jī)的OAM報(bào)文。
[0129]在子步驟S822中,若所述OAM報(bào)文中出口別名字段與本路由交換機(jī)的別名不同,根據(jù)所述OAM報(bào)文中的配置命令標(biāo)識(shí)位判斷所述OAM報(bào)文是否由ping命令發(fā)起,以及判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文。
[0130]路由交換機(jī)對(duì)由ping命令發(fā)起的OAM報(bào)文和由traceroute命令發(fā)起的OAM報(bào)文的應(yīng)答處理不同。TRILL網(wǎng)絡(luò)內(nèi)的中間路由交換機(jī)接收到由ping命令發(fā)起的OAM請求報(bào)文時(shí),不需要對(duì)所述OAM請求報(bào)文進(jìn)行應(yīng)答處理,而接收到由traceroute命令發(fā)起的OAM請求報(bào)文時(shí),需要對(duì)所述OAM請求報(bào)文進(jìn)行應(yīng)答處理。其中,所述中間路由交換機(jī)是指除了OAM報(bào)文的源路由交換機(jī)和目的路由交換機(jī)的其他的對(duì)所述OAM報(bào)文進(jìn)行接收和轉(zhuǎn)發(fā)的路由交換機(jī)。為了能夠?qū)Σ煌腛AM配置命令發(fā)起的OAM報(bào)文采取正確的處理,需要根據(jù)所述OAM報(bào)文中的配置命令標(biāo)識(shí)位判斷所述OAM報(bào)文是否由ping命令發(fā)起。
[0131 ] 還有,如果路由交換機(jī)接收到的OAM報(bào)文本身是OAM應(yīng)答報(bào)文,則不需要再對(duì)所述OAM報(bào)文進(jìn)行應(yīng)答處理。因此,還需要判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文。
[0132]具體的,路由交換機(jī)在確定所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名不同后,讀取所述OAM報(bào)文中的預(yù)留字段中被用于表示所述OAM報(bào)文對(duì)應(yīng)的OAM配置命令的配置命令標(biāo)識(shí)位。若所述配置命令標(biāo)識(shí)位的取值是Ping命令對(duì)應(yīng)的取值,則所述OAM報(bào)文是由Ping命令發(fā)起的;若所述配置命令標(biāo)識(shí)位的取值不是ping命令對(duì)應(yīng)的取值,則所述OAM報(bào)文是由traceroute命令發(fā)起的。
[0133]在子步驟S823中,若所述OAM報(bào)文中出口別名字段與本路由交換機(jī)的別名相同,判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文。
[0134]若路由交換機(jī)接收到的OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名相同,貝IJ所述OAM報(bào)文是以所述路由交換機(jī)為目的或者TRILL網(wǎng)絡(luò)的出口的OAM報(bào)文。此時(shí),需要根據(jù)所述OAM報(bào)文的類型判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文,以確定對(duì)所述OAM報(bào)文執(zhí)行應(yīng)答處理還是信息匹配處理。
[0135]在子步驟S824中,若所述OAM報(bào)文是由ping命令發(fā)起的,或者所述OAM報(bào)文是OAM應(yīng)答報(bào)文,則根據(jù)路由表向下一跳路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文。
[0136]由于在子步驟S821中已經(jīng)確定,所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名不同,所以所述OAM報(bào)文不是以本路由交換機(jī)為目的或者TRILL網(wǎng)絡(luò)中的出口的OAM報(bào)文,路由交換機(jī)需要對(duì)所述OAM報(bào)文進(jìn)行轉(zhuǎn)發(fā)。而且,所述OAM報(bào)文是由ping命令發(fā)起的,或者所述OAM報(bào)文是OAM應(yīng)答報(bào)文,所以路由交換機(jī)不需要對(duì)所述OAM報(bào)文進(jìn)行應(yīng)答處理。
[0137]在子步驟S825中,若所述OAM報(bào)文既不是有ping命令發(fā)起的,也不是OAM應(yīng)答報(bào)文,則向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文,并根據(jù)路由表向下一跳路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文。
[0138]由于在子步驟S821中已經(jīng)確定,所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名不同,所以所述OAM報(bào)文不是以本路由交換機(jī)為目的或者TRILL網(wǎng)絡(luò)中的出口的OAM報(bào)文,路由交換機(jī)需要對(duì)所述OAM報(bào)文進(jìn)行轉(zhuǎn)發(fā)。而且,所述OAM報(bào)文是既不是有ping命令發(fā)起的,也不是OAM應(yīng)答報(bào)文,即所述OAM報(bào)文是由traceroute命令發(fā)起的OAM請求報(bào)文,所以路由交換機(jī)需要對(duì)所述OAM報(bào)文進(jìn)行應(yīng)答處理。
[0139]綜上,若所述OAM報(bào)文既不是有ping命令發(fā)起的,也不是OAM應(yīng)答報(bào)文,路由交換機(jī)向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文,并根據(jù)路由表向下一跳路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文。
[0140]在子步驟S826中,若所述OAM報(bào)文是OAM應(yīng)答報(bào)文,用所述OAM應(yīng)答報(bào)文的序列號(hào)匹配本地記錄的OAM請求報(bào)文的信息,并將匹配的OAM請求報(bào)文對(duì)應(yīng)的定時(shí)器的計(jì)時(shí)停止。
[0141]由于在子步驟S821中已經(jīng)確定,所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名相同,所以所述OAM報(bào)文不是以本路由交換機(jī)為目的或者TRILL網(wǎng)絡(luò)中的出口的OAM報(bào)文。而且,所述OAM報(bào)文是OAM應(yīng)答報(bào)文,所以路由交換機(jī)需要對(duì)所述OAM報(bào)文進(jìn)行匹配處理。
[0142]具體的,路由交換機(jī)用所述OAM應(yīng)答報(bào)文的序列號(hào)匹配本地記錄的OAM請求報(bào)文的信息,并將匹配的OAM請求報(bào)文對(duì)應(yīng)的定時(shí)器的計(jì)時(shí)停止。
[0143]在子步驟S827中,若所述OAM報(bào)文不是OAM應(yīng)答報(bào)文,向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0144]由于在子步驟S821中已經(jīng)確定,所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名相同,所以所述OAM報(bào)文不是以本路由交換機(jī)為目的或者TRILL網(wǎng)絡(luò)中的出口的OAM報(bào)文。而且,所述OAM報(bào)文不是OAM應(yīng)答報(bào)文,所以路由交換機(jī)需要對(duì)所述OAM報(bào)文進(jìn)行應(yīng)答處理。
[0145]具體的,路由交換機(jī)向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0146]圖10是本發(fā)明第三實(shí)施例提供的多播OAM報(bào)文接收處理的流程圖。參見圖10,所述多播OAM報(bào)文接收處理包括:子步驟S831,根據(jù)所述OAM報(bào)文的配置命令標(biāo)識(shí)位判斷所述OAM報(bào)文是否由ping命令發(fā)起;子步驟S832,若所述OAM報(bào)文是由ping命令發(fā)起的,判斷所述OAM報(bào)文中的出口別名字段是否與本路由交換機(jī)的別名相同;子步驟S833,若所述OAM報(bào)文不是由ping命令發(fā)起的,向所述分發(fā)樹上的葉子節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文,并向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文;子步驟S834,若所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名相同,判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文;子步驟S835,若所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名不同,則向所述分發(fā)樹上的葉子節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文;子步驟S836,若所述OAM報(bào)文是OAM應(yīng)答報(bào)文,用所述OAM應(yīng)答報(bào)文的序列號(hào)匹配本地記錄的OAM請求報(bào)文的信息,并將匹配的OAM請求報(bào)文對(duì)應(yīng)的定時(shí)器的計(jì)時(shí)停止;子步驟S837,若所述OAM報(bào)文不是OAM應(yīng)答報(bào)文,向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0147]在子步驟S831中,根據(jù)所述OAM報(bào)文的配置命令標(biāo)識(shí)位判斷所述OAM報(bào)文是否由ping命令發(fā)起。
[0148]同單播OAM報(bào)文的接收處理相同,路由交換機(jī)接收到多播OAM報(bào)文后,針對(duì)發(fā)起所述多播OAM報(bào)文的OAM配置命令是ping命令還是traceroute命令,對(duì)所述多播OAM報(bào)文采取不同的接收或者應(yīng)答處理。
[0149]路由交換機(jī)辨別所述多播OAM報(bào)文是由ping命令發(fā)起的還是traceroute命令發(fā)起的基準(zhǔn)是所述多播OAM報(bào)文中的配置命令標(biāo)識(shí)位。其中,所述配置命令標(biāo)識(shí)位是所述多播OAM報(bào)文的多鏈接透明互聯(lián)頭信息中預(yù)留字段中的一位。路由交換機(jī)接收到多播OAM報(bào)文后,讀取所述多鏈接透明互聯(lián)頭中的配置命令標(biāo)識(shí)位,若所述配置命令標(biāo)識(shí)位的取值是Ping命令對(duì)應(yīng)的取值,則判定所述多播OAM報(bào)文是有ping命令發(fā)起的;若所述配置命令標(biāo)識(shí)位的取值是traceroute命令對(duì)應(yīng)的取值,則判定所述多播OAM報(bào)文是由traceroute命令發(fā)起的。
[0150]在子步驟S832中,若所述OAM報(bào)文是由ping命令發(fā)起的,判斷所述OAM報(bào)文中的出口別名字段是否與本路由交換機(jī)的別名相同。
[0151]路由交換機(jī)接收到的所述OAM報(bào)文的多鏈接透明互聯(lián)頭信息中包括出口別名字段。所述出口別名字段用于標(biāo)識(shí)所述OAM報(bào)文的目的路由交換機(jī)或者在TRILL網(wǎng)絡(luò)中的出口路由交換機(jī)。
[0152]通過識(shí)別所述OAM報(bào)文中的配置命令標(biāo)識(shí)位確定所述OAM報(bào)文是由ping命令發(fā)起的后,路由交換機(jī)通過讀取所述OAM報(bào)文的多鏈接透明互聯(lián)頭中的出口別名字段,將所述出口別名字段的取值與本路由交換機(jī)的別名比較,判斷所述OAM報(bào)文是否是以本路由交換機(jī)為目的或者出口的OAM報(bào)文。
[0153]在子步驟S833中,若所述OAM報(bào)文不是由ping命令發(fā)起的,向所述分發(fā)樹上的葉子節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文,并向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0154]在多播模式下,若所述OAM報(bào)文是由traceroute命令發(fā)起的,則所述分發(fā)樹上的節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)不僅需要向所述分發(fā)樹上的葉子節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文,還需要向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文,以便來源路由交換機(jī)清楚所述OAM報(bào)文被轉(zhuǎn)發(fā)至目的路由交換機(jī)所經(jīng)過的路徑。
[0155]需要說明的是,在多播模式下,traceroute命令發(fā)起的OAM報(bào)文發(fā)送存在有目的路由交換機(jī)的方式和無目的路由交換機(jī)的方式。用戶使用有目的路由交換機(jī)的traceroute命令時(shí),用戶在輸入traceroute命令時(shí),在所述traceroute命令中指定OAM報(bào)文的目的路由交換機(jī);路由交換機(jī)接收到有目的路由交換機(jī)的traceroute命令后,從用戶指定的分發(fā)樹上找到能夠到達(dá)所述目的路由交換機(jī)的一條或者多條路徑,通過這些路徑對(duì)所述OAM報(bào)文進(jìn)行轉(zhuǎn)發(fā)。而用戶使用無目的路由交換機(jī)的traceroute命令時(shí),用戶在輸入traceroute命令時(shí),在所述traceroute命令中不指定OAM報(bào)文的路由交換機(jī);路由交換機(jī)接收到無目的路由交換機(jī)的traceroute命令后,按照用戶指定的分發(fā)樹上各節(jié)點(diǎn)的連通路徑對(duì)所述OAM報(bào)文進(jìn)行轉(zhuǎn)發(fā)。
[0156]在子步驟S834中,若所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名相同,判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文。
[0157]與單播模式相同,在多播模式下,所述OAM報(bào)文也分為OAM請求報(bào)文和OAM應(yīng)答報(bào)文。并且,在多播模式下,路由交換機(jī)接收到OAM請求報(bào)文可能需要對(duì)接收到的OAM請求報(bào)文進(jìn)行應(yīng)答處理,即向所述OAM請求報(bào)文的來源目的交換機(jī)發(fā)送所述OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文,而路由交換機(jī)接收到OAM應(yīng)答報(bào)文則不需要對(duì)所述OAM應(yīng)答報(bào)文進(jìn)行應(yīng)答處理。
[0158]在判定所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名相同后,路由交換機(jī)判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文,以便確定針對(duì)所述OAM報(bào)文應(yīng)該執(zhí)行應(yīng)答處理還是匹配處理。
[0159]在子步驟S835中,若所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名不同,則向所述分發(fā)樹上的葉子節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文。
[0160]由于在子步驟S831中已經(jīng)確定,所述OAM報(bào)文是由ping命令發(fā)起的,所以中間節(jié)點(diǎn)路由交換機(jī),即所述OAM報(bào)文的轉(zhuǎn)發(fā)路徑上除了來源路由交換機(jī)和目的路由交換機(jī)的其他路由交換機(jī)不需要對(duì)所述OAM報(bào)文進(jìn)行應(yīng)答處理。而且,所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名不同,所以O(shè)AM報(bào)文不是以本路由交換機(jī)為目的或者出口路由交換機(jī)的OAM報(bào)文,路由交換機(jī)只需要對(duì)所述OAM報(bào)文進(jìn)行轉(zhuǎn)發(fā)。
[0161]在子步驟S836中,若所述OAM報(bào)文是OAM應(yīng)答報(bào)文,用所述OAM應(yīng)答報(bào)文的序列號(hào)匹配本地記錄的OAM請求報(bào)文的信息,并將匹配的OAM請求報(bào)文對(duì)應(yīng)的定時(shí)器的計(jì)時(shí)停止。
[0162]在子步驟S834中通過識(shí)別所述OAM報(bào)文的出口別名字段已經(jīng)確定,所述OAM報(bào)文是以本路由交換機(jī)為目的或者出口路由交換機(jī)的OAM報(bào)文。若所述OAM報(bào)文是OAM應(yīng)答報(bào)文,需要對(duì)所述OAM報(bào)文做匹配處理。
[0163]對(duì)所述OAM報(bào)文進(jìn)行匹配處理時(shí),用所述OAM應(yīng)答報(bào)文的序列號(hào)匹配本地記錄的OAM請求報(bào)文的信息。其中,所述本地記錄的OAM請求報(bào)文的信息可能是以線性表的形式存儲(chǔ)的OAM請求報(bào)文的序列號(hào),也可能是以堆棧的形式存儲(chǔ)的OAM請求報(bào)文的序列號(hào)。
[0164]在線性表或者堆棧中查找到所述OAM應(yīng)答報(bào)文對(duì)應(yīng)的OAM請求報(bào)文的序列號(hào)后,認(rèn)為該OAM請求報(bào)文已經(jīng)成功被傳輸至目的端,將所述OAM請求報(bào)文的序列號(hào)從所述線性表或者所述堆棧中移除,并將所述OAM請求報(bào)文對(duì)應(yīng)的定時(shí)器的計(jì)時(shí)停止。
[0165]在子步驟S837中,若所述OAM報(bào)文不是OAM應(yīng)答報(bào)文,向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0166]在子步驟S834中通過識(shí)別所述OAM報(bào)文的出口別名字段已經(jīng)確定,所述OAM報(bào)文是以本路由交換機(jī)為目的或者出口路由交換機(jī)的OAM報(bào)文。若所述OAM報(bào)文是OAM請求報(bào)文,需要對(duì)所述OAM報(bào)文做應(yīng)答處理。
[0167]路由交換機(jī)對(duì)所述OAM報(bào)文做應(yīng)答處理時(shí),首先構(gòu)造與所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文,再將構(gòu)造的OAM應(yīng)答報(bào)文發(fā)送至所述OAM報(bào)文的來源路由交換機(jī)。
[0168]本實(shí)施例通過接收TRILL網(wǎng)絡(luò)中的OAM報(bào)文,判斷OAM報(bào)文是采用單播模式發(fā)送還是采用多播模式發(fā)送,然后根據(jù)所述OAM報(bào)文的發(fā)送模式向目的路由交換機(jī)轉(zhuǎn)發(fā)或者應(yīng)答所述OAM請求報(bào)文,使得在多鏈接透明互聯(lián)網(wǎng)絡(luò)中能夠按照單播模式及多播模式實(shí)現(xiàn)OAM報(bào)文的傳輸和回應(yīng)。
[0169]圖11示出了本發(fā)明的第四實(shí)施例。
[0170]圖11是本發(fā)明第四實(shí)施例提供的OAM報(bào)文的接收處理裝置的結(jié)構(gòu)圖。參見圖11,所述OAM報(bào)文的接收處理裝置包括:接收模式判斷模塊1110,用于接收OAM報(bào)文,并根據(jù)所述OAM報(bào)文的報(bào)文頭所包含的信息判斷接收到的OAM報(bào)文是否是單播OAM報(bào)文;單播OAM報(bào)文接收模塊1120,用于在判定所述OAM報(bào)文是單播OAM報(bào)文后,根據(jù)所述OAM報(bào)文中的出口別名(Egress nick name)字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行單播轉(zhuǎn)發(fā)或單播應(yīng)答處理,其中,所述OAM報(bào)文的類型包括OAM請求報(bào)文以及OAM應(yīng)答報(bào)文;多播OAM報(bào)文接收模塊1130,用于在判定所述OAM報(bào)文不是單播OAM報(bào)文后,根據(jù)所述OAM報(bào)文中出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行多播轉(zhuǎn)發(fā)或多播應(yīng)答處理。
[0171]所述接收模式判斷模塊1110用于接收OAM報(bào)文,并根據(jù)所述OAM報(bào)文的報(bào)文頭所包含的信息判斷接收到的OAM報(bào)文是否是單播OAM報(bào)文。
[0172]在本實(shí)施例中,所述接收模式判斷模塊1110接收到所述OAM報(bào)文后,根據(jù)所述OAM報(bào)文中的單播多播標(biāo)識(shí)字段判斷接收到的OAM報(bào)文是單播OAM報(bào)文還是多播OAM報(bào)文。
[0173]所述單播OAM報(bào)文接收模塊1120用于在判定所述OAM報(bào)文是單播OAM報(bào)文后,根據(jù)所述OAM報(bào)文中的出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行單播轉(zhuǎn)發(fā)或單播應(yīng)答處理,其中,所述OAM報(bào)文的類型包括OAM請求報(bào)文以及OAM應(yīng)答報(bào)文。
[0174]所述單播OAM報(bào)文接收模塊1120包括:第一出口別名判斷子模塊1121,第一配置命令判斷子模塊1122,第一報(bào)文類型判斷子模塊1123,第一 ping報(bào)文處理子模塊1124,第一 traceroute報(bào)文處理子模塊1125,第一應(yīng)答報(bào)文接收子模塊1126,第一應(yīng)答報(bào)文回應(yīng)子模塊1127。
[0175]所述第一出口別名判斷子模塊1121用于判斷所述OAM報(bào)文中的出口別名字段是否與本路由交換機(jī)的別名相同。
[0176]所述OAM報(bào)文的多鏈接透明互聯(lián)頭信息中包括出口別名字段。所述出口別名字段中記錄了所述OAM報(bào)文的目的路由交換機(jī)或者TRILL網(wǎng)絡(luò)中的出口路由交換機(jī)的別名。所述第一出口別名判斷子模塊1121讀取所述OAM報(bào)文中的出口別名字段,與本路由交換機(jī)的另Ij名比較,如果所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名相同,則說明所述OAM報(bào)文是以本路由交換機(jī)為目的路由交換機(jī)或者TRILL網(wǎng)絡(luò)中的出口路由交換機(jī)的OAM報(bào)文。
[0177]所述第一配置命令判斷子模塊1122用于在判定所述OAM報(bào)文中出口別名字段與本路由交換機(jī)的別名不同之后,根據(jù)所述OAM報(bào)文中的配置命令標(biāo)識(shí)位判斷所述OAM報(bào)文是否由Ping命令發(fā)起,以及判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文。
[0178]在OAM報(bào)文構(gòu)造時(shí),將所述OAM報(bào)文中的多鏈接透明互聯(lián)頭信息中的預(yù)留字段中的一位作為配置命令標(biāo)識(shí)位,用以標(biāo)識(shí)所述OAM報(bào)文是由何種OAM配置命令發(fā)起的OAM報(bào)文。所述第一配置命令判斷子模塊1122根據(jù)所述配置命令標(biāo)識(shí)位判斷所述OAM報(bào)文是否是由Ping命令發(fā)起,并且判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文。
[0179]所述第一報(bào)文類型判斷子模塊1123用于在判定所述OAM報(bào)文中出口別名字段與本路由交換機(jī)的別名相同之后,判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文。
[0180]判定所述OAM報(bào)文中出口別名字段與本路由交換機(jī)的別名相同,說明所述OAM報(bào)文是以本路由交換機(jī)為目的路由交換機(jī)或者出口路由交換機(jī)的OAM報(bào)文。所述第一報(bào)文類型判斷子模塊1123判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文,以便路由交換機(jī)對(duì)所述OAM報(bào)文進(jìn)行應(yīng)答處理或者匹配處理。
[0181]所述第一 ping報(bào)文處理子模塊1124用于在判定所述OAM報(bào)文是由ping命令發(fā)起的,或者所述OAM報(bào)文是OAM應(yīng)答報(bào)文之后,根據(jù)路由表向下一跳路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文。
[0182]所述第一 traceroute報(bào)文處理子模塊1125用于在判定所述OAM報(bào)文既不是有Ping命令發(fā)起的,也不是OAM應(yīng)答報(bào)文之后,向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文,并根據(jù)路由表向下一跳路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文。
[0183]所述第一應(yīng)答報(bào)文接收子模塊1126用于在判定所述OAM報(bào)文是OAM應(yīng)答報(bào)文后,用所述OAM應(yīng)答報(bào)文的序列號(hào)匹配本地記錄的OAM請求報(bào)文的信息,并將匹配的OAM請求報(bào)文對(duì)應(yīng)的定時(shí)器的計(jì)時(shí)停止。
[0184]所述第一應(yīng)答報(bào)文回應(yīng)子模塊1127在判定所述OAM報(bào)文不是OAM應(yīng)答報(bào)文后,向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0185]所述多播OAM報(bào)文接收模塊1130包括:第二配置命令判斷子模塊1131,第二出口別名判斷子模塊1132,第二 traceroute報(bào)文處理子模塊1133,第二報(bào)文類型判斷子模塊1134,第二 ping報(bào)文處理子模塊1135,第二應(yīng)答報(bào)文接收子模塊1136,以及第二應(yīng)答報(bào)文回應(yīng)子模塊1137。
[0186]所述第二配置命令判斷子模塊1131用于根據(jù)所述OAM報(bào)文的配置命令標(biāo)識(shí)位判斷所述OAM報(bào)文是否由ping命令發(fā)起。
[0187]所述第二出口別名判斷子模塊1132用于在判定所述OAM報(bào)文是由ping命令發(fā)起的之后,判斷所述OAM報(bào)文中的出口別名字段是否與本路由交換機(jī)的別名相同。
[0188]所述第二 traceroute報(bào)文處理子模塊1133用于在判定所述OAM報(bào)文不是由ping命令發(fā)起的之后,向所述分發(fā)樹上的葉子節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文,并向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。[0189]所述第二報(bào)文類型判斷子模塊1134用于在判定所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名相同之后,判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文。
[0190]所述第二 ping報(bào)文處理子模塊1135用于在判定所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名不同之后,向所述分發(fā)樹上的葉子節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文。
[0191]所述第二應(yīng)答報(bào)文接收子模塊1136用于在判定所述OAM報(bào)文是OAM應(yīng)答報(bào)文之后,用所述OAM應(yīng)答報(bào)文的序列號(hào)匹配本地記錄的OAM請求報(bào)文的信息,并將匹配的OAM請求報(bào)文對(duì)應(yīng)的定時(shí)器的計(jì)時(shí)停止。
[0192]所述第二應(yīng)答報(bào)文回應(yīng)子模塊1137用于在判定所述OAM報(bào)文不是OAM應(yīng)答報(bào)文之后,向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
[0193]本實(shí)施例通過接收多鏈接透明互聯(lián)網(wǎng)絡(luò)中的OAM報(bào)文,判斷接收到的OAM報(bào)文是單播OAM報(bào)文還是多播OAM報(bào)文,并根據(jù)所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行轉(zhuǎn)發(fā)或者應(yīng)答,使得在多鏈接透明互聯(lián)網(wǎng)絡(luò)中能夠傳輸及回應(yīng)OAM報(bào)文。
[0194]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域技術(shù)人員而言,本發(fā)明可以有各種改動(dòng)和變化。凡在本發(fā)明的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種OAM報(bào)文的發(fā)送處理方法,應(yīng)用于多鏈接透明互聯(lián)網(wǎng)絡(luò)中,其特征在于,包括: 接收用戶輸入的OAM配置命令,判斷所述OAM配置命令是否使用單播模式; 若所述OAM配置命令使用了單播模式,構(gòu)造單播OAM請求報(bào)文,并向目的路由交換機(jī)(Routing bridge, RB)發(fā)送所述單播OAM請求報(bào)文; 若所述OAM配置命令不使用單播模式,構(gòu)造多播OAM請求報(bào)文,并向所述OAM配置命令中分發(fā)樹上的所有節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述構(gòu)造單播OAM請求報(bào)文,并向目的路由交換機(jī)發(fā)送所述單播OAM請求報(bào)文包括: 根據(jù)目的路由交換機(jī)的別名(Nick name)從路由表中獲取下一跳路由交換機(jī)的信息; 構(gòu)造所述單播OAM請求報(bào)文的有效載荷數(shù)據(jù); 構(gòu)造所述單播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息,其中,設(shè)置所述多鏈接透明互聯(lián)頭中的單播多播標(biāo)識(shí)位的取值為單播模式對(duì)應(yīng)的取值,同時(shí)設(shè)置所述多鏈接透明互聯(lián)頭中的配置命令標(biāo)識(shí)位,所述配置命令標(biāo)識(shí)位用于標(biāo)識(shí)所述單播OAM請求報(bào)文對(duì)應(yīng)的配置命令是ping命令還是traceroute命令; 構(gòu)造所述單播OAM請求報(bào)文的外層以太頭信息; 在本地記錄所述單播OAM請求報(bào)文的信息,并向下一跳路由交換機(jī)發(fā)送所述單播OAM請求報(bào)文; 啟動(dòng)定時(shí)器,以等待接收所述單播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述構(gòu)造多播OAM請求報(bào)文,并向所述OAM配置命令中分發(fā)樹上的所有節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文包括: 確定是否存在所述OAM配置命令中預(yù)先指定的分發(fā)樹; 構(gòu)造所述多播OAM請求報(bào)文的有效載荷數(shù)據(jù); 構(gòu)造所述多播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息,其中,設(shè)置所述多鏈接透明互聯(lián)頭中的單播多播標(biāo)識(shí)位的取值為多播模式對(duì)應(yīng)的取值,同時(shí)設(shè)置所述多鏈接透明互聯(lián)頭中的配置命令標(biāo)識(shí)位,所述配置命令標(biāo)識(shí)位用于標(biāo)識(shí)所述多播OAM請求報(bào)文對(duì)應(yīng)的配置命令是ping命令還是traceroute命令; 構(gòu)造所述多播OAM請求報(bào)文的外層以太頭信息; 遍歷所述分發(fā)樹上的節(jié)點(diǎn),按照所述節(jié)點(diǎn)被遍歷的次序記錄所述多播OAM請求報(bào)文的信息,并向各節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文; 啟動(dòng)定時(shí)器,以等待接收所述多播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
4.一種OAM報(bào)文的發(fā)送處理裝置,應(yīng)用于多鏈接透明互聯(lián)網(wǎng)絡(luò)中,其特征在于,包括: 發(fā)送模式判斷模塊,用于接收用戶輸入的OAM配置命令,判斷所述OAM配置命令是否使用單播模式;單播OAM請求報(bào)文發(fā)送模塊,用于在所述OAM配置命令使用了單播模式時(shí),構(gòu)造單播OAM請求報(bào)文,并向目的路由交換機(jī)(Routing bridge, RB)發(fā)送所述單播OAM請求報(bào)文;多播OAM請求報(bào)文發(fā)送模塊,用于在所述OAM配置命令不使用單播模式時(shí),構(gòu)造多播OAM請求報(bào)文,并向所述OAM配置命令中分發(fā)樹上的所有節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文。
5.根據(jù)權(quán)利要求4所述的裝置,其特征在于,所述單播OAM請求報(bào)文發(fā)送模塊包括:下一跳路由交換機(jī)信息獲取子模塊,用于根據(jù)目的路由交換機(jī)的別名(Nick name)從路由表中獲取下一跳路由交換機(jī)的信息; 第一有效載荷數(shù)據(jù)構(gòu)造子模塊,用于構(gòu)造所述單播OAM請求報(bào)文的有效載荷數(shù)據(jù);第一多鏈接透明互聯(lián)頭信息構(gòu)造子模塊,用于構(gòu)造所述單播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息,其中,所述第一多鏈接透明互聯(lián)頭信息構(gòu)造子模塊設(shè)置所述多鏈接透明互聯(lián)頭中的單播多播標(biāo)識(shí)位的取值為單播模式對(duì)應(yīng)的取值,同時(shí)所述第一多鏈接透明互聯(lián)頭信息構(gòu)造子模塊設(shè)置所述多鏈接透明互聯(lián)頭中的配置命令標(biāo)識(shí)位,所述配置命令標(biāo)識(shí)位用于標(biāo)識(shí)所述單播OAM請求報(bào)文對(duì)應(yīng)的配置命令是ping命令還是traceroute命令; 第一外層以太頭信息構(gòu)造子模塊,用于構(gòu)造所述單播OAM請求報(bào)文的外層以太頭信息; 第一 OAM請求報(bào)文發(fā)送子模塊,用于在本地記錄所述單播OAM請求報(bào)文的信息,并向下一跳路由交換機(jī)發(fā)送所述單播OAM請求報(bào)文; 第一定時(shí)器啟動(dòng)模塊,用于啟動(dòng)定時(shí)器,以等待接收所述單播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
6.根據(jù)權(quán)利要求4所述的裝置,其特征在于,所述多播OAM請求報(bào)文發(fā)送模塊包括: 分發(fā)樹確定子模塊,用于確定是否存在所述OAM配置命令中預(yù)先指定的分發(fā)樹;第二有效載荷數(shù)據(jù)構(gòu)造子模塊,用于構(gòu)造所述多播OAM請求報(bào)文的有效載荷數(shù)據(jù);第二多鏈接透明互聯(lián)頭信息構(gòu)造子模塊,用于構(gòu)造所述多播OAM請求報(bào)文的多鏈接透明互聯(lián)頭信息,其中,設(shè)置所述多鏈接透明互聯(lián)頭中的單播多播標(biāo)識(shí)位的取值為多播模式對(duì)應(yīng)的取值,同時(shí)設(shè)置所述多鏈接透明互聯(lián)頭中的配置命令標(biāo)識(shí)位,所述配置命令標(biāo)識(shí)位用于標(biāo)識(shí)所述多播OAM請求報(bào)文對(duì)應(yīng)的配置命令是ping命令還是traceroute命令;. 第二外層以太頭信息構(gòu)造子模塊,用于構(gòu)造所述多播OAM請求報(bào)文的外層以太頭信息; 第二 OAM請求報(bào)文發(fā)送子模塊,遍歷所述分發(fā)樹上的節(jié)點(diǎn),按照所述節(jié)點(diǎn)被遍歷的次序記錄所述多播OAM請求報(bào)文的信息,并向各節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)發(fā)送所述多播OAM請求報(bào)文; 第二定時(shí)器啟動(dòng)子模塊,用于啟動(dòng)定時(shí)器,以等待接收所述多播OAM請求報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
7.—種OAM報(bào)文的接收處理方法,應(yīng)用于多鏈接透明互聯(lián)網(wǎng)絡(luò)中,其特征在于,包括: 接收OAM報(bào)文,并根據(jù)所述OAM報(bào)文的報(bào)文頭所包含的信息判斷接收到的OAM報(bào)文是否是單播OAM報(bào)文; 若所述OAM報(bào)文是單播OAM報(bào)文,根據(jù)所述OAM報(bào)文中的出口別名(Egress nick name)字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行單播轉(zhuǎn)發(fā)或單播應(yīng)答處理,其中,所述OAM報(bào)文的類型包括OAM請求報(bào)文以及OAM應(yīng)答報(bào)文; 若所述OAM報(bào)文不是單播OAM報(bào)文,根據(jù)所述OAM報(bào)文中出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行多播轉(zhuǎn)發(fā)或多播應(yīng)答處理。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述根據(jù)所述OAM報(bào)文的報(bào)文頭所包含的信息判斷接收到的OAM報(bào)文是否是單播OAM報(bào)文是判斷所述OAM報(bào)文的單播多播標(biāo)識(shí)位是否是單播模式對(duì)應(yīng)的取值,其中,若所述OAM報(bào)文的單播多播標(biāo)識(shí)位的取值是單播模式對(duì)應(yīng)的取值,則所述OAM報(bào)文是單播OAM報(bào)文;若所述OAM報(bào)文的單播多播標(biāo)識(shí)位的取值不是單播模式對(duì)應(yīng)的取值,則所述OAM報(bào)文不是單播OAM報(bào)文。
9.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述根據(jù)所述OAM報(bào)文中的出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行單播轉(zhuǎn)發(fā)或單播應(yīng)答處理包括: 判斷所述OAM報(bào)文中的出口別名字段是否與本路由交換機(jī)的別名相同; 若所述OAM報(bào)文中出口別名字段與本路由交換機(jī)的別名不同,根據(jù)所述OAM報(bào)文中的配置命令標(biāo)識(shí)位判斷所述OAM報(bào)文是否由ping命令發(fā)起,以及判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文; 若所述OAM報(bào)文中出口別名字段與本路由交換機(jī)的別名相同,判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,在根據(jù)所述OAM報(bào)文中的配置命令標(biāo)識(shí)位判斷所述OAM報(bào)文是否由ping命令發(fā)起后,所述根據(jù)所述OAM報(bào)文中的出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行單播轉(zhuǎn)發(fā)或單播應(yīng)答處理還包括: 若所述OAM報(bào)文是由ping命令發(fā)起的,或者所述OAM報(bào)文是OAM應(yīng)答報(bào)文,則根據(jù)路由表向下一跳路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文; 若所述OAM報(bào)文既不是有ping命令發(fā)起的,也不是OAM應(yīng)答報(bào)文,則向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文,并根據(jù)路由表向下一跳路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文。
11.根據(jù)權(quán)利要求9所.述的方法,在判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文之后,所述根據(jù)所述OAM報(bào)文中的出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行單播轉(zhuǎn)發(fā)或單播應(yīng)答處理還包括: 若所述OAM報(bào)文是OAM應(yīng)答報(bào)文,用所述OAM應(yīng)答報(bào)文的序列號(hào)匹配本地記錄的OAM請求報(bào)文的信息,并將匹配的OAM請求報(bào)文對(duì)應(yīng)的定時(shí)器的計(jì)時(shí)停止; 若所述OAM報(bào)文不是OAM應(yīng)答報(bào)文,向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
12.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述根據(jù)所述OAM報(bào)文中出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行多播轉(zhuǎn)發(fā)或多播應(yīng)答處理包括: 根據(jù)所述OAM報(bào)文的配置命令標(biāo)識(shí)位判斷所述OAM報(bào)文是否由ping命令發(fā)起; 若所述OAM報(bào)文是由ping命令發(fā)起的,判斷所述OAM報(bào)文中的出口別名字段是否與本路由交換機(jī)的別名相同; 若所述OAM報(bào)文不是由ping命令發(fā)起的,向所述分發(fā)樹上的葉子節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文,并向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
13.根據(jù)權(quán)利要求12所述的方法,其特征在于,在判斷所述OAM報(bào)文中的出口別名字段是否與本路由交換機(jī)的別名相同后,所述根據(jù)所述OAM報(bào)文中出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行多播轉(zhuǎn)發(fā)或多播應(yīng)答處理還包括: 若所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名相同,判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文; 若所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名不同,則向所述分發(fā)樹上的葉子節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文。
14.根據(jù)權(quán)利要求13所述的方法,其特征在于,在判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文后,所述根據(jù)所述OAM報(bào)文中出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行多播轉(zhuǎn)發(fā)或多播應(yīng)答處理還包括: 若所述OAM報(bào)文是OAM應(yīng)答報(bào)文,用所述OAM應(yīng)答報(bào)文的序列號(hào)匹配本地記錄的OAM請求報(bào)文的信息,并將匹配的OAM請求報(bào)文對(duì)應(yīng)的定時(shí)器的計(jì)時(shí)停止; 若所述OAM報(bào)文不是OAM應(yīng)答報(bào)文,向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
15.一種OAM報(bào)文的接收處理裝置,應(yīng)用于多鏈接透明互聯(lián)網(wǎng)絡(luò)中,其特征在于,包括: 接收模式判斷模塊,用于接收OAM報(bào)文,并根據(jù)所述OAM報(bào)文的報(bào)文頭所包含的信息判斷接收到的OAM報(bào)文是否是單播OAM報(bào)文; 單播OAM報(bào)文接收模塊,用于在判定所述OAM報(bào)文是單播OAM報(bào)文后,根據(jù)所述OAM報(bào)文中的出口別名(Egress nick name)字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行單播轉(zhuǎn)發(fā)或單播應(yīng)答處理,其中,所述OAM報(bào)文的類型包括OAM請求報(bào)文以及OAM應(yīng)答報(bào)文;多播OAM報(bào)文接收模塊,用于在判定所述OAM報(bào)文不是單播OAM報(bào)文后,根據(jù)所述OAM報(bào)文中出口別名字段和所述OAM報(bào)文的類型對(duì)所述OAM報(bào)文進(jìn)行多播轉(zhuǎn)發(fā)或多播應(yīng)答處理。
16.根據(jù)權(quán)利要求15所述的裝置,其特征在于,所述接收模式判斷模塊根據(jù)所述OAM報(bào)文的報(bào)文頭所包含的信息判斷接收到的OAM報(bào)文是否是單播OAM報(bào)文是判斷所述OAM報(bào)文的單播多播標(biāo)識(shí)位是否是單.播模式對(duì)應(yīng)的取值,其中,若所述OAM報(bào)文的單播多播標(biāo)識(shí)位的取值是單播模式對(duì)應(yīng)的取值,則所述OAM報(bào)文是單播OAM報(bào)文;若所述OAM報(bào)文的單播多播標(biāo)識(shí)位的取值不是單播模式對(duì)應(yīng)的取值,則所述OAM報(bào)文不是單播OAM報(bào)文。
17.根據(jù)權(quán)利要求15所述的裝置,其特征在于,所述單播OAM報(bào)文接收模塊包括: 第一出口別名判斷子模塊,用于判斷所述OAM報(bào)文中的出口別名字段是否與本路由交換機(jī)的別名相同; 第一配置命令判斷子模塊,用于在判定所述OAM報(bào)文中出口別名字段與本路由交換機(jī)的別名不同之后,根據(jù)所述OAM報(bào)文中的配置命令標(biāo)識(shí)位判斷所述OAM報(bào)文是否由ping命令發(fā)起,以及判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文; 第一報(bào)文類型判斷子模塊,用于在判定所述OAM報(bào)文中出口別名字段與本路由交換機(jī)的別名相同之后,判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文。
18.根據(jù)權(quán)利要求17所述的裝置,所述單播OAM報(bào)文接收模塊還包括: 第一 Ping報(bào)文處理子模塊,用于在判定所述OAM報(bào)文是由ping命令發(fā)起的,或者所述OAM報(bào)文是OAM應(yīng)答報(bào)文之后,根據(jù)路由表向下一跳路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文; 第一 traceroute報(bào)文處理子模塊,用于在判定所述OAM報(bào)文既不是有ping命令發(fā)起的,也不是OAM應(yīng)答報(bào)文之后,向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文,并根據(jù)路由表向下一跳路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文。
19.根據(jù)權(quán)利要求17所述的裝置,其特征在于,所述單播OAM報(bào)文接收模塊還包括: 第一應(yīng)答報(bào)文接收子模塊,用于在判定所述OAM報(bào)文是OAM應(yīng)答報(bào)文后,用所述OAM應(yīng)答報(bào)文的序列號(hào)匹配本地記錄的OAM請求報(bào)文的信息,并將匹配的OAM請求報(bào)文對(duì)應(yīng)的定時(shí)器的計(jì)時(shí)停止; 第一應(yīng)答報(bào)文回應(yīng)子模塊,用于在判定所述OAM報(bào)文不是OAM應(yīng)答報(bào)文后,向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
20.根據(jù)權(quán)利要求15所述的裝置,其特征在于,所述多播OAM報(bào)文接收模塊包括: 第二配置命令判斷子模塊,用于根據(jù)所述OAM報(bào)文的配置命令標(biāo)識(shí)位判斷所述OAM報(bào)文是否由ping命令發(fā)起; 第二出口別名判斷子模塊,用于在判定所述OAM報(bào)文是由ping命令發(fā)起的之后,判斷所述OAM報(bào)文中的出口別名字段是否與本路由交換機(jī)的別名相同; 第二 traceroute報(bào)文處理子模塊,用于在判定所述OAM報(bào)文不是由ping命令發(fā)起的之后,向所述分發(fā)樹上的葉子節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文,并向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
21.根據(jù)權(quán)利要求20所述的裝置,其特征在于,所述多播OAM報(bào)文接收模塊還包括: 第二報(bào)文類型判斷子模塊,用于在判定所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名相同之后,判斷所述OAM報(bào)文是否是OAM應(yīng)答報(bào)文; 第二 Ping報(bào)文處理子模塊,用于在判定所述OAM報(bào)文中的出口別名字段與本路由交換機(jī)的別名不同之后,向所述分發(fā)樹上的葉子節(jié)點(diǎn)對(duì)應(yīng)的路由交換機(jī)轉(zhuǎn)發(fā)所述OAM報(bào)文。
22.根據(jù)權(quán)利要求21所述的裝置,其特征在于,所述多播OAM報(bào)文接收模塊還包括: 第二應(yīng)答報(bào)文接收子模塊 ,用于在判定所述OAM報(bào)文是OAM應(yīng)答報(bào)文之后,用所述OAM應(yīng)答報(bào)文的序列號(hào)匹配本地記錄的OAM請求報(bào)文的信息,并將匹配的OAM請求報(bào)文對(duì)應(yīng)的定時(shí)器的計(jì)時(shí)停止; 第二應(yīng)答報(bào)文回應(yīng)子模塊,用于在判定所述OAM報(bào)文不是OAM應(yīng)答報(bào)文之后,向所述OAM報(bào)文的來源路由交換機(jī)發(fā)送所述OAM報(bào)文對(duì)應(yīng)的OAM應(yīng)答報(bào)文。
【文檔編號(hào)】H04L12/761GK103475588SQ201310410549
【公開日】2013年12月25日 申請日期:2013年9月10日 優(yōu)先權(quán)日:2013年9月10日
【發(fā)明者】張少太, 陳翔 申請人:神州數(shù)碼網(wǎng)絡(luò)(北京)有限公司, 上海神州數(shù)碼有限公司