專利名稱:一種快速檢測鏈路連通性的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信領(lǐng)域,尤其涉及一種快速檢測鏈路連通 性的方法及系統(tǒng)。
背景技術(shù):
承載網(wǎng)向全IP化發(fā)展的趨勢要求IP網(wǎng)絡(luò)必須解決可靠性問 題,但是在傳統(tǒng)IP網(wǎng)絡(luò)中,故障的4全測和保護響應(yīng)都是秒級的,無法滿足電信級以太網(wǎng)50ms保護倒換的基本要求。切換的前提是能夠快速檢測到故障,目前 提出的進行直連鏈路故障檢測的協(xié)議報文有IETF提出的BFD,基于 IEEE802.3ah的eth-oam等。Eth-oam協(xié)議交互過程比較復(fù)雜,需要CPU參與, 檢測時間在秒級,無法滿足50ms切換要求。BFD協(xié)議主要用于IP路由保護, 其狀態(tài)機制也是通過三次握手方式實現(xiàn)的,需要CPU參與,且BFD報文是UDP 報文,需要對端IP地址,在有些情況下是無法提供的。在以太網(wǎng)通信技術(shù)領(lǐng)域,可以通過應(yīng)用服務(wù)層鏈路檢測的CFM協(xié)議來進行 直鏈鏈路連通性快速檢測的方法和系統(tǒng)。
發(fā)明內(nèi)容
為了解決上述問題,本發(fā)明提出一種快速檢測鏈路連通性的 方法及系統(tǒng),應(yīng)用服務(wù)層鏈路檢測的CFM協(xié)議的CCM報文來進行快速檢測直 鏈鏈路連通性。本發(fā)明公開的一種快速檢測鏈路連通性的系統(tǒng),包括相互交換CCM報文的 本端系統(tǒng)和對端系統(tǒng),本端系統(tǒng)進一步包括帶存儲器的網(wǎng)絡(luò)處理器和本端CPU, 網(wǎng)絡(luò)處理器接收來自本端CPU的參數(shù)配置,并向本端CPU發(fā)送告警信息,包括在所述本端系統(tǒng)和對端系統(tǒng)分別配置link CFM保護,并設(shè)置CCM報文的 發(fā)送和檢測周期;所述本端系統(tǒng)和對端系統(tǒng)在每一個所述發(fā)送周期分別定時發(fā)送攜帶自身MAId和Mepld的CCM報文,并同時檢測對端發(fā)送過來的CCM報文;所述本端系統(tǒng)或者對端系統(tǒng)對所述CCM報文與本地配置的遠端MEP屬性相比較,屬性一致則對端CCM報文計數(shù)加1,否則錯誤報文計數(shù)加l;在每一個所述;f企測周期;險查是否有對端CCM報文計數(shù),所述對端CCM報文計數(shù)為0說明鏈路聯(lián)通斷,大于0說明鏈路聯(lián)通。本發(fā)明公開的一種快速檢測鏈路連通性的系統(tǒng),還包括如下從屬技術(shù)特征所述錯誤報文計數(shù)標(biāo)識對端的CFM配置是否正確。所述遠端MEP屬性通過CCM報文中的特定字段來識別。所述遠端MEP屬性包括MD LEVEL, MAID, MEPID,發(fā)送周期和RDI位。所述CCM報文中的特定字段是Portld+smac。本發(fā)明還公開了 一種快速檢測鏈路連通性的方法,應(yīng)用服務(wù)層鏈路檢測的 CFM協(xié)議的CCM報文來進行第一步,在所述本端系統(tǒng)和對端系統(tǒng)分別配置link CFM保護,并i殳置CCM 報文的發(fā)送和檢測周期;第二步,所述本端系統(tǒng)和對端系統(tǒng)在每一個所述發(fā)送周期分別定時發(fā)送攜 帶自身MAId和Mepld的CCM報文,并同時檢測對端發(fā)送過來的CCM報文;第三步,所述本端系統(tǒng)或者對端系統(tǒng)對所述CCM報文與本地配置的遠端 MEP屬性相比較,屬性一致則對端CCM報文計數(shù)力。1,否則錯誤才艮文計數(shù)加1;第四步,在每一個所述檢測周期檢查是否有對端CCM報文計數(shù),所述對端 CCM報文計數(shù)為0說明鏈路斷,大于0說明鏈路是連通的。本發(fā)明公開的這種快速檢測鏈路連通性的方法,還包括如下從屬技術(shù)特征
所述第三步中的所述錯誤報文計數(shù)標(biāo)識對端的CFM配置是否正確。所述第三步中所述遠端MEP屬性通過CCM報文中的特定字段來識別。.所述第三步中的所述遠端MEP屬性包括MD LEVEL, MAID, MEPID,發(fā)送周期和RDI位。
所述CCM報文中的特定字段是Portld+smac。
本發(fā)明提出的一種快速檢測鏈路連通性的方法及系統(tǒng),應(yīng)用服務(wù)層鏈路檢測的CFM協(xié)議的CCM報文來進行直鏈鏈路連通性快速檢測,進行2條直連鏈路連通性檢測,在配置完成后無需CPU參與,由硬件定時纟企測鏈路狀況,通過設(shè)置最低的發(fā)送周期,在10ms內(nèi)即可4企測到鏈路異常情況,為50ms快速切換打下堅實的基礎(chǔ)。
圖l是本發(fā)明的系統(tǒng)構(gòu)成圖。
圖2是本發(fā)明中的本地mep表示意圖。
圖3是本發(fā)明的檢測信息表與遠端mep狀態(tài)表示意圖。
圖4是本發(fā)明的link CCM定時發(fā)送流程圖。
圖5是本發(fā)明的link CCM報文接收處理流程圖。
圖6是本發(fā)明的鏈路狀態(tài)定時檢測流程圖。
圖7是CCM報文格式。
具體實施方式
下面結(jié)合附圖和具體實施方式
對本發(fā)明做進一步詳細說明。
如圖1所示是本發(fā)明的系統(tǒng)構(gòu)成框圖,本發(fā)明的系統(tǒng)包括相互交換CCM報文的本端系統(tǒng)和對端系統(tǒng),本端系統(tǒng)進一步包括帶存儲器的網(wǎng)絡(luò)處理器和本端
6CPU,網(wǎng)絡(luò)處理器接收來自本端CPU的參數(shù)配置,并向本端CPU發(fā)送告警信息。如圖2所示是本發(fā)明中的本地MEP表示意圖,本地MEP表包含n個表項,每個表項中的信息如下
1 ) Maid為CFM標(biāo)準(zhǔn)規(guī)定,在CCM報文中攜帶的用于標(biāo)識MA的字段,該字段在一個md域內(nèi)唯一。
2 ) Mepid為CFM標(biāo)準(zhǔn)規(guī)定,在CCM報文中攜帶的用于標(biāo)識MEP的字段,該字段在一個MA內(nèi)唯一。
3 )Period為CFM標(biāo)準(zhǔn)規(guī)定,在CCM報文中攜帶的用于標(biāo)識MEP發(fā)送CCM報文的周期
4 ) sMAC:本設(shè)備/端口的MAC地址
5 ) Portid:標(biāo)識一個特定端口 。 CCM才艮文發(fā)送時從這個端口發(fā)送出去。
6 ) Send—enable :發(fā)送使能位。
圖3是本發(fā)明的檢測信息表與遠端mep狀態(tài)表示意圖,檢測信息表中含有n個表項,每個表項中含有Porld、 SMAC、 Check—enable等信息,根據(jù)Portid ,Smac hash得到位于對應(yīng)的遠端Mep狀態(tài)表中的遠端mep狀態(tài)信息,狀態(tài)表包含下面信息內(nèi)容。Check—enable是指示是否要進行遠端mep的檢測,也就是是否需要hash查找。圖中
1 )CCM—count表示在檢測周期內(nèi)收到了多少個對端發(fā)送過來的CCM報文。2) maid—error:表示在檢測周期內(nèi)收到的CCM報文攜帶的maid與本地配置的maid不匹配統(tǒng)計。
3 ) mepid—error:表示在檢測周期內(nèi)收到的CCM報文攜帶的mepid與本地配置的遠端mepdi不匹配統(tǒng)計。
4 ) period—error:表示在檢測周期內(nèi)收到的CCM報文攜帶的period與本地配置的periodi不匹配統(tǒng)計.
5) Rdi—counter:表示在檢測周期內(nèi)收到的CCM報文攜帶的Rdi字段次數(shù)統(tǒng)計。
6 ) check—enable :檢測使能位。
圖4是本發(fā)明的link CCM定時發(fā)送流程圖,圖中
步驟IOI,定時發(fā)送周期到,Addr=0。
步驟102,以Addr為鍵值查找本地mep表,查到且發(fā)送使能,則根據(jù)本地mep表的信息構(gòu)造CCM才艮文并發(fā)送出去。
步驟103,判斷Addr是否為本地mep表最后一個表項,是則結(jié)束發(fā)送流程,等待下一次定時周期到,否則Addr++,轉(zhuǎn)到步驟102。
圖5是本發(fā)明的link CCM報文接收處理流程圖,進一步的描述如下
步驟201,收到CCM報文,判斷是否是link CCM報文(mehO,報文源MAC地址為本地配置的遠端mep MAC地址),不是則轉(zhuǎn)到普通的CCM報文處理流程(為了文字簡潔,這里不對普通的CCM報文處理流程作具體說明)。是link CCM報文則轉(zhuǎn)到步驟202。
步驟202,以入端口信息Portld和l艮文中的源MAC地址sMAC hash查找遠端mep表,查找不到轉(zhuǎn)到步驟205,查到轉(zhuǎn)到步驟203。
步驟203,將報文中的maid, mepld,周期period與遠端mep表中保存的配置值進行比較,都一致轉(zhuǎn)到步驟204,不一致則遠端mep表中的對應(yīng)的錯誤計數(shù)Maid—error,MepId—error,Period—error力口 1。若報文中的RDI標(biāo)志為1,則將Rdi—counter計數(shù)加1,轉(zhuǎn)到步驟204。
步驟204, 遠端mep表中的CCM報文計數(shù)CCM—counter加1 ,轉(zhuǎn)到步驟205。
步驟205,丟棄收到的CCM報文。
圖6是本發(fā)明的鏈路狀態(tài)定時檢測流程圖,進一步的描述步驟301,定時發(fā)送周期到,Addr=0。
步驟302,以Add為鍵值查找檢測信息表,根據(jù)檢測信息表中的PortID和sMAC查找遠端mep狀態(tài)表,沒查到轉(zhuǎn)到步驟303,查到且檢測使能,則根據(jù)遠端mep表的計數(shù)信息決定是否需要告警CCM—counter=0則向CPU發(fā)送鏈路down告警信息,Maid—error或Mepid—error或Period—error不為0則向CPU發(fā)送
配置錯誤告警信息。所有計數(shù)器清O。
步驟303,如果Add為遠端mep表最后一個表項,則結(jié)束檢測流程,等待下一次定時周期到,否則八(1(^++,轉(zhuǎn)到步驟302。
為了便于理解,圖7給出了一種CCM報文的格式。
本發(fā)明所采用的技術(shù)方案CFM保護對象是通過Md—level, MAId , Mepid三級來進行區(qū)分的。對于本專利需要保護的直連鏈路,設(shè)定md level =0, MAId為任意符合標(biāo)準(zhǔn)的名字,但附加保護鏈路屬性(以下稱做linkCFM)。其它配置與普通CFM配置一致。
在需要檢測的鏈路兩端分別配置link CFM保護,根據(jù)需要設(shè)置CCM報文的發(fā)送和檢測周期發(fā)送周期和檢測周期可以靈活設(shè)置,協(xié)議規(guī)定檢測周期為發(fā)送周期的3倍。兩端分別定時發(fā)送攜帶自身MAId和Mepid的CCM才艮文,同時根據(jù)檢測周期定時檢測對端發(fā)送過來的CCM報文。當(dāng)鏈路所在端口接收到CCM報文時,與本地配置的遠端MEP屬性相比較,屬性一致則說明收到的報文為所配置的遠端MEP發(fā)送的CCM報文并計數(shù),否則進行錯誤報文計數(shù)。需要比較
9的屬性包括MD LEVEL, MAID, MEPID,發(fā)送周期,RDI位。定時才全測時間到時,通過檢查是否有對端CCM報文計數(shù)來判斷鏈路是否完好,CCM收包計數(shù)為0說明鏈路down,大于0說明鏈路是up的。同時可以通過錯誤報文的計數(shù)來標(biāo)識對端的CFM配置是否正確。(步驟302中提到的Maid—error或Mepid—error或Period—error不為0,則向CPU發(fā)送配置錯誤告警信息,Maid—error>0說明收到的CCM報文中至少有一個ccm,報文的MAID字段與本地配置的MAID不一致,也就是說對端設(shè)備上配置的MAID與本地設(shè)備配置的Maid不一致。MEPID和perioc也類似。)遠端Mep的識別通過Portld + MAC來hash查找識別的(Portld為鏈if各所在的端口號,MAC為CCM才艮文中的源MAC )。
具體實施包括以下幾個方面
1. link CFM配置在鏈路所連接的兩個端口上配置link CFM,其中md—level=0。每個端口上分別配置本地mepid和遠端mepid,端口 MAC地址,并指定對端端口的MAC地址。兩個端口上link CFM的Maid配成同樣的值。配置CCM報文發(fā)送周期和檢測周期。CFM協(xié)議標(biāo)準(zhǔn)規(guī)定的"R文發(fā)送周期可以是3.3ms,10ms, lOOrns, ls, 10s, lmin, 10min,當(dāng)然也可以自己設(shè)定周期。4企測周期一般是發(fā)送周期的3倍。
2. CPU將配置屬性寫入網(wǎng)絡(luò)處理器中
1 )根據(jù)配置建立遠端mep狀態(tài)表,索引鍵值為Portld+MAC。該表是一個hash表,MAC地址為對端的端口 MAC地址。表的結(jié)果包含各種類型的計數(shù)值。
2)建立本地mep信息表,該表是一個直接表,表條目數(shù)根據(jù)本設(shè)備最大支持的可保護鏈路數(shù)而定。每個表項中存有完整的需要發(fā)送的CCM報文信息,包含配置的md-level,maid,mepid, Vlanid,對端MAC地址,發(fā)送周期period等信3)建立檢測信息表,該表是一個直接表。每個表項中存有用于索引遠端
MEP信息的鍵值(Portld, MAC)。
3. 網(wǎng)絡(luò)處理器根據(jù)配置的發(fā)送周期,周期性發(fā)送CCM報文發(fā)送周期到,網(wǎng)絡(luò)處理器遍歷本地mep索引表,將存儲在表中的CCM報文發(fā)送出去。
4. 端口上接收到一個CCM報文時,首先分離出是否是linkCFM報文。方法是察看報文中sMAC字段是否與本設(shè)備中配置的遠端mep的MAC地址相同以及md一level是否為0。如果兩者都符合則是link CFM。再根據(jù)凈艮文中的入端口號和sMAC來索引本地配置的遠端mep狀態(tài)表。查找不到遠端mep就直接將收到的CCM報文丟棄。查找到就比較報文字段與遠端mep信息表中存儲的屬性是否一致,屬性字段都一致將CCM報文計數(shù)值CCM一count加1,不一致將對應(yīng)的錯誤字段計數(shù)器加1,如MAID不一致則將Maid—error力口 1。處理完以上信息后將報文丟棄掉。
5. 檢測周期到,網(wǎng)絡(luò)處理器遍歷遠端mep索引表,并根據(jù)索引表中存儲的結(jié)果查找遠端mep信息表,判斷遠端mep信息表的CCM報文統(tǒng)計值和錯誤CCM報文值。CCM報文統(tǒng)計值為O則認為鏈路down,向CPU告警;大于O說明鏈路是正常的。如果錯誤的CCM報文統(tǒng)計大于0則可以向CPU告警提示兩端配置情況不一致。之后將表中的各種統(tǒng)計值全部清O。
1 ) 《連路層CFM的md level只能配置為0,防止md level交叉情況的
2) 收到鏈路層CFM報文,如果查找不到對應(yīng)的配置,將CFM"^艮文出現(xiàn)。直接丟棄,不再轉(zhuǎn)發(fā)。
報文字段中的vlan屬性不再作為定位某個遠端mep的參數(shù),以屏蔽端口的vlan屬性變更導(dǎo)致的檢測失效,因為檢測的鏈路狀況,如鏈路上承載的具體vlanld已經(jīng)無關(guān)了。
權(quán)利要求
1. 一種快速檢測鏈路連通性的系統(tǒng),包括相互交換CCM報文的本端系統(tǒng)和對端系統(tǒng),本端系統(tǒng)進一步包括帶存儲器的網(wǎng)絡(luò)處理器和本端CPU,網(wǎng)絡(luò)處理器接收來自本端CPU的參數(shù)配置,并向本端CPU發(fā)送告警信息,其特征在于在所述本端系統(tǒng)和對端系統(tǒng)分別配置link CFM保護,并設(shè)置CCM報文的發(fā)送和檢測周期;所述本端系統(tǒng)和對端系統(tǒng)在每一個所述發(fā)送周期分別定時發(fā)送攜帶自身MAId和MepId的CCM報文,并同時檢測對端發(fā)送過來的CCM報文;所述本端系統(tǒng)或者對端系統(tǒng)對所述CCM報文與本地配置的遠端MEP屬性相比較,屬性一致則對端CCM報文計數(shù)加1,否則錯誤報文計數(shù)加1;在每一個所述檢測周期檢查是否有對端CCM報文計數(shù),所述對端CCM報文計數(shù)為0說明鏈路聯(lián)通斷,大于0說明鏈路聯(lián)通。
2. 根據(jù)權(quán)利要求1所述的快速檢測鏈路連通性的系統(tǒng),其特征在于,所述 錯誤報文計數(shù)標(biāo)識對端的CFM配置是否正確。
3. 根據(jù)權(quán)利要求2所述的快速檢測鏈路連通性的系統(tǒng),其特征在于,所述 遠端MEP屬性通過CCM l艮文中的特定字段來識別。
4. 根據(jù)權(quán)利要求3所述的快速檢測鏈路聯(lián)通性的系統(tǒng),其特征在于,所述 遠端MEP屬性包括MD LEVEL, MAID, MEPID,發(fā)送周期和RDI位。
5. 根據(jù)權(quán)利要求3所述的快速檢測鏈路聯(lián)通性的系統(tǒng),其特征在于,所述 CCM報文中的特定字段是Portld+smac。
6. —種快速檢測鏈路連通性的方法,其特征在于,應(yīng)用服務(wù)層鏈路檢測的 CFM協(xié)議的CCM沖艮文來進行第 一步,在所述本端系統(tǒng)和對端系統(tǒng)分別配置link CFM保護,并設(shè)置CCM報文的發(fā)送和檢測周期;第二步,所述本端系統(tǒng)和對端系統(tǒng)在每一個所述發(fā)送周期分別定時發(fā)送攜帶自身MAId和Mepld的CCM報文,并同時檢測對端發(fā)送過來的CCM報文; 第三步,所述本端系統(tǒng)或者對端系統(tǒng)對所述CCM報文與本地配置的遠端MEP屬性相比較,屬性一致則對端CCM報文計數(shù)加1,否則錯誤報文計數(shù)加1; 第四步,在每一個所述檢測周期檢查是否有對端CCM報文計數(shù),所述對端CCM報文計數(shù)為0說明鏈路斷,大于0說明鏈路是連通的。
7. 根據(jù)權(quán)利要求6所迷的快速檢測鏈路連通性的方法,其特征在于,所述 第三步中的所述錯誤報文計數(shù)標(biāo)識對端的CFM配置是否正確。
8. 根據(jù)權(quán)利要求7所述的快速檢測鏈路連通性的系統(tǒng),其特征在于,所述 第三步中所述遠端MEP屬性通過CCM報文中的特定字段來識別。
9. 根據(jù)權(quán)利要求8所述的快速檢測鏈路連通性的系統(tǒng),其特征在于,所述 第三步中的所述遠端MEP屬性包括MD LEVEL, MAID, MEPID,發(fā)送周期和 RDI位。
10. 根據(jù)權(quán)利要求8所述的快速檢測鏈路連通性的系統(tǒng),其特征在于,所 述CCM報文中的特定字段是Portld+smac。
全文摘要
本發(fā)明公開一種快速檢測鏈路連通性的方法及系統(tǒng),包括帶存儲器的網(wǎng)絡(luò)處理器和本端CPU,在所述本端系統(tǒng)和對端系統(tǒng)分別配置link CFM保護,并設(shè)置CCM報文的發(fā)送和檢測周期;所述本端系統(tǒng)和對端系統(tǒng)在每一個所述發(fā)送周期分別定時發(fā)送攜帶自身MAId和MepId的CCM報文,并同時檢測對端發(fā)送過來的CCM報文;所述本端系統(tǒng)或者對端系統(tǒng)對所述CCM報文與本地配置的遠端MEP屬性相比較,屬性一致則對端CCM報文計數(shù)加1,否則錯誤報文計數(shù)加1;在每一個所述檢測周期檢查是否有對端CCM報文計數(shù),所述對端CCM報文計數(shù)為0說明鏈路聯(lián)通斷,大于0說明鏈路聯(lián)通。本發(fā)明無需CPU參與,由硬件定時檢測鏈路狀況。
文檔編號H04L12/26GK101521603SQ20081024167
公開日2009年9月2日 申請日期2008年12月26日 優(yōu)先權(quán)日2008年12月26日
發(fā)明者張勝友 申請人:中興通訊股份有限公司