專利名稱:一種通用路由封裝隧道的檢測方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種通用路由封裝隧道的檢測方法。
背景技術(shù):
GRE(通用路由封裝)是對某些網(wǎng)絡(luò)層協(xié)議,如IP和IPX(包交換協(xié)議)的報文進行封裝,使這些被封裝的報文能夠在另一網(wǎng)絡(luò)層協(xié)議,如IP中傳輸。
目前的GRE協(xié)議自身沒有檢測機制,導(dǎo)致GRE隧道存在著不可維護性。由于無法對GRE隧道進行探測,無法監(jiān)控GRE隧道的狀態(tài),也無法實現(xiàn)隧道的備份,因此,隧道的可靠性不高。
因此,需要提供一種方法可以對GRE隧道進行檢測。
發(fā)明內(nèi)容
鑒于上述現(xiàn)有技術(shù)所存在的問題,本發(fā)明的目的在于提供一種通用路由封裝隧道的檢測方法,利用OAM(操作維護)/BFD(雙向轉(zhuǎn)發(fā)檢測)檢測機制,檢測GRE隧道,有效提高了GRE隧道的可靠性。
本發(fā)明的目的是通過以下技術(shù)方案實現(xiàn)的一種通用路由封裝隧道的檢測方法,包括A、通用路由封裝隧道GRE兩端的路由器使能檢測功能,分別發(fā)送檢測報文給對端;
B、統(tǒng)計規(guī)定時間內(nèi)接收到的報文個數(shù),確定GRE隧道狀態(tài)。
采用OAM檢測機制對所述GRE隧道進行檢測。
所述步驟A包括兩端路由器分別發(fā)送連通性驗證CV/快速故障檢測FFD報文,將所述CV/FFD報文打包在用戶數(shù)據(jù)報協(xié)議UDP中,設(shè)置接收驗證指示Hear域值為0。
所述步驟B包括B1、當(dāng)發(fā)送Hear值為0的報文時,GRE隧道處于會話狀態(tài);B2、當(dāng)接收到Hear值為0的報文時,停止發(fā)送Hear值為0的報文時,改為發(fā)送Hear值為1的報文,GRE隧道處于檢測狀態(tài)。
所述步驟B包括B3、統(tǒng)計規(guī)定時間內(nèi)接收的報文個數(shù),若在規(guī)定范圍內(nèi),則確定GRE隧道處于檢測狀態(tài);若超過規(guī)定范圍,則可確定GRE隧道處于缺陷狀態(tài)。
所述步驟B3包括GRE隧道處于會話狀態(tài)時檢測出GRE隧道缺陷及GRE隧道處于檢測狀態(tài)時檢測出GRE隧道缺陷。
當(dāng)GRE隧道處于會話狀態(tài)檢測出GRE隧道缺陷時,所述方法還包括向管理平面發(fā)出告警,請求GRE隧道配置的維護操作。
當(dāng)GRE隧道處于缺陷狀態(tài)時,所述步驟B3還包括B31、繼續(xù)對GRE隧道進行檢測,若在規(guī)定時間內(nèi)一直檢測到缺陷,則確定GRE隧道處于故障狀態(tài);或,B32、繼續(xù)對GRE隧道進行檢測,若在規(guī)定時間內(nèi)一直檢測到GRE隧道正常,則可確定GRE隧道處于檢測狀態(tài)。
確定GRE隧道處于故障狀態(tài)時,所述方法還包括向管理平面發(fā)出告警,將業(yè)務(wù)自動切換到備用隧道上。
所述步驟B31還包括
B311、GRE隧道處于故障狀態(tài)時,繼續(xù)對GRE隧道進行檢測,在一定時間內(nèi)一直檢測到GRE隧道正常,則可確定GRE隧道正常。
所述方法還包括向管理平面發(fā)出報告,將業(yè)務(wù)倒回到原GRE隧道。
采用雙向轉(zhuǎn)發(fā)檢測BFD檢測機制對所述GRE隧道進行檢測。
將BFD控制報文作為GRE隧道的凈荷發(fā)送。由上述本發(fā)明提供的技術(shù)方案可以看出,本發(fā)明實現(xiàn)了對GRE隧道的雙向連通性檢測,并在GRE隧道出現(xiàn)異常時,啟用倒換機制,有效提高了GRE隧道的可靠性。
圖1為本發(fā)明所述方法操作流程圖;圖2為本發(fā)明所述方法實施例一操作流程圖;圖3為本發(fā)明所述方法信號流向示意圖;圖4為本發(fā)明所述方法實施例二操作流程圖。
具體實施例方式
本發(fā)明的核心思想是提供一種通用路由封裝隧道的檢測方法,利用OAM(操作維護)/BFD(雙向轉(zhuǎn)發(fā)檢測)檢測機制,檢測GRE隧道,有效提高了GRE隧道的可靠性。
本發(fā)明提供一種通用路由封裝隧道的檢測方法,參照圖1為本發(fā)明所述方法操作流程圖,該方法具體包括步驟10GRE隧道建立后,GRE隧道兩端的路由器使能檢測功能,分別向?qū)Χ税l(fā)送檢測報文;由于GRE隧道為雙向隧道,因此雙向連通性都需要進行檢測,兩端的路由器都要發(fā)送檢測報文給對端;
首先在GRE隧道的兩端配置檢測功能實體,在GRE隧道建立后,路由器使能檢測功能,該檢測功能實體開始發(fā)送檢測報文給對端;步驟11統(tǒng)計規(guī)定時間內(nèi)接收到的對端報文個數(shù),確定當(dāng)前隧道狀態(tài);GRE隧道兩端的路由器接收對端發(fā)送的檢測報文,由于該檢測報文是按照一定的周期發(fā)送,因此在確定當(dāng)前GRE隧道狀態(tài)時,可通過在規(guī)定時間內(nèi)接收到的報文個數(shù)與規(guī)定個數(shù)相比來判斷,當(dāng)所述接收到的報文個數(shù)在規(guī)定范圍內(nèi)時,檢測該GRE隧道正常,則可確定GRE隧道處于檢測狀態(tài);若所述接收到的報文個數(shù)不在規(guī)定范圍內(nèi)時,則可確定該GRE隧道進入故障狀態(tài);步驟12根據(jù)當(dāng)前隧道狀態(tài)對GRE隧道采取相應(yīng)措施;若判斷GRE隧道處于故障狀態(tài),則檢測功能實體發(fā)出告警,若該故障GRE隧道有備份隧道,切換到備份隧道,繼續(xù)檢測;若判斷GRE隧道處于檢測狀態(tài),則繼續(xù)對該隧道進行檢測。
下面分別以O(shè)AM、BFD檢測為例對具體的檢測進行說明當(dāng)采用OAM進行檢測時,參照圖2包括如下步驟步驟20首先簡化OAM的報文格式,使用CV(連通性驗證)/FFD(快速故障檢測)報文作為檢測報文,進行檢測;將報文打包在UDP(用戶數(shù)據(jù)包協(xié)議)報文中,端口號為3786,報文格式如下
CV報文格式為
1 octet 1 octet2 octets 32 octets 18 octets 2 octets
FFD報文格式為
1 octet 1 2 octets 32 octets1 octet 17 octets 2octet octetsTTSI(路徑源端標(biāo)識符)如下
16 octets 16 octetsIP地址如下
10 octets 2 octets4 octets步驟21GRE隧道建立后,路由器使能檢測功能,發(fā)送CV/FFD檢測報文給對端,開始檢測;由于GRE隧道為雙向隧道,因此雙向連通性都需要進行檢測,兩端的路由器都要發(fā)送檢測報文給對端;參照圖3,路由器A根據(jù)配置向路由器B發(fā)送CV/FFD報文,設(shè)置Hear(表示接收驗證的指示)域值為0,路由器B發(fā)送同樣報文給路由器A,在開始檢測時,隧道處于會話狀態(tài);步驟22根據(jù)接收報文個數(shù)判斷GRE隧道狀態(tài);當(dāng)路由器接收到CV/FFD報文時,若隧道處于會話狀態(tài),則停止發(fā)送Hear為0的報文,改為發(fā)送Hear為1的報文,則隧道處于檢測狀態(tài);在規(guī)定的時間內(nèi)統(tǒng)計接收的報文個數(shù),其中CV報文發(fā)送周期為1s,F(xiàn)FD報文發(fā)送周期可以根據(jù)需要設(shè)置為10ms、20ms、50ms、100ms、200ms或500ms,如可以統(tǒng)計3個檢測周期內(nèi)接收到的報文個數(shù),并判斷是否超過規(guī)定個數(shù),如判斷是否超過4個,若3個檢測周期內(nèi)接收到的報文個數(shù)超過4個,則可以確定檢測到缺陷;若接收到的報文個數(shù)在規(guī)定范圍內(nèi),如在3個檢測周期內(nèi)接收到的報文為2-4個,則可確定檢測正常,GRE隧道處于檢測狀態(tài);步驟23根據(jù)檢測到的GRE隧道狀態(tài),對GRE隧道采取相應(yīng)措施;若GRE隧道處于會話狀態(tài)時,檢測到隧道缺陷,則向管理平面告警,通知管理平面該GRE隧道存在缺陷,請求維護隧道的配置;若GRE隧道處于檢測狀態(tài)時,檢測到隧道缺陷,則隧道進入缺陷狀態(tài);當(dāng)GRE隧道在缺陷狀態(tài)時,若在T1時間內(nèi)一直檢測到缺陷,則可確定隧道進入故障狀態(tài),此時向管理平面告警,若該隧道存在備用隧道,并自動切換到備用隧道上;所述的T1時間可根據(jù)需要設(shè)定,如可以設(shè)定為0-10個檢測周期;隧道進入故障狀態(tài)后,若在T2時間內(nèi)一直檢測正常,則確定隧道進入檢測狀態(tài),需要向管理平面報告,若此隧道的業(yè)務(wù)切換到了備用隧道上,則可根據(jù)需要將業(yè)務(wù)倒回;所述T2時間可根據(jù)需要設(shè)定,如可以設(shè)定為3-10個檢測周期;若隧道進入缺陷狀態(tài)后,在T1時間內(nèi)檢測到正常,則確定隧道處于檢測狀態(tài),繼續(xù)進行檢測操作。
上述為采用OAM進行檢測的操作步驟,當(dāng)采用BFD進行檢測時,可以采用1hop(單跳)的檢測方式來檢測GRE隧道,將UDP端口號為3784的BFD控制報文作為GRE隧道的凈荷,其中BFD控制報文如下表
上述BFD控制報文各個域的說明參照下表
參照圖4,采用BFD進行GRE檢測的方法具體包括如下步驟步驟30路由器使能檢測功能,發(fā)送BFD檢測報文到對端;參照圖3路由器A對隧道啟動BFD檢測后,構(gòu)造一個端口號為3784的UDP報文,報文的凈荷為BFD控制報文,BFD控制報文的H域設(shè)置為0,YourDiscriminator域為0,將此UDP報文作為GRE隧道的凈荷發(fā)送,設(shè)置隧道的檢測狀態(tài)為INIT(初始狀態(tài)),路由器B的操作同路由器A;步驟31路由器B收到Y(jié)our Discriminator域為0的控制報文后,根據(jù)GRE隧道的索引將其關(guān)聯(lián)到本端BFD檢測Session(會話)上,將發(fā)送的BFD控制報文的Your Discriminator域填為收到的BFD控制報文中的MyDiscriminator域值,路由器A的操作過程同路由器B;步驟32確定GRE隧道狀態(tài),根據(jù)所述狀態(tài)對GRE隧道采取相應(yīng)處理;在INIT狀態(tài)收到BFD控制報文后,將隧道狀態(tài)設(shè)置為DOWN(缺陷)狀態(tài),將發(fā)送的BFD控制報文H域值設(shè)置為1,繼續(xù)發(fā)送BFD報文;在INIT狀態(tài)若一定周期內(nèi)沒有收到H域為1的BFD控制報文,則確定GRE隧道進入FAILING(故障)狀態(tài);在FAILING狀態(tài)收到H域為0的BFD控制報文時,不需做任何處理;在INIT狀態(tài)收到H域為1的BFD控制報文時,則確定GRE隧道進入UP(正常)狀態(tài),并向管理平面報告;在DOWN狀態(tài)收到H域為1的BFD控制報文,則可確定GRE隧道進入UP狀態(tài),并向管理平面報告;在UP狀態(tài)下若收到H域為0的BFD控制報文,則進入FAILING狀態(tài),并且根據(jù)Diag中的原因向管理平面報告;
若在UP狀態(tài)下,Detect Mult(檢測時間倍數(shù))個周期內(nèi)沒有收到BFD控制報文,則也可確定GRE處于FAILING狀態(tài),并向管理平面報告。
由于GRE隧道采用1∶1保護的方式,OAM/BFD啟用對主GRE隧道的檢測,若OAM/BFD檢測到隧道異常時,則向管理平面報告,管理平面可以根據(jù)配置啟用倒換機制;若在一定周期內(nèi)沒有收到隧道正常的報告,則啟用倒換機制,將業(yè)務(wù)流量倒換到備份隧道;在發(fā)生倒換后,主用隧道繼續(xù)檢測,若發(fā)現(xiàn)主用隧道恢復(fù)正常,則管理平面可以根據(jù)配置,若在一定周期內(nèi)沒有收到隧道異常的報告,則啟用倒回機制,將業(yè)務(wù)流量倒回到主隧道。
綜上所述,本發(fā)明實現(xiàn)了對GRE隧道的雙向連通性檢測,并在GRE隧道出現(xiàn)異常時,啟用倒換機制,有效提高了GRE隧道的可靠性。
以上所述,僅為本發(fā)明較佳的具體實施方式
,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)該以權(quán)利要求的保護范圍為準(zhǔn)。
權(quán)利要求
1.一種通用路由封裝隧道的檢測方法,其特征在于,包括A、通用路由封裝隧道GRE兩端的路由器使能檢測功能,分別發(fā)送檢測報文給對端;B、統(tǒng)計規(guī)定時間內(nèi)接收到的報文個數(shù),確定GRE隧道狀態(tài)。
2.如權(quán)利要求1所述的一種通用路由封裝隧道的檢測方法,其特征在于,采用OAM檢測機制對所述GRE隧道進行檢測。
3.如權(quán)利要求2所述的一種通用路由封裝隧道的檢測方法,其特征在于,所述步驟A包括兩端路由器分別發(fā)送連通性驗證CV/快速故障檢測FFD報文,將所述CV/FFD報文打包在用戶數(shù)據(jù)報協(xié)議UDP中,設(shè)置接收驗證指示Hear域值為0。
4.如權(quán)利要求2或3所述的一種通用路由封裝隧道的檢測方法,其特征在于,所述步驟B包括B1、當(dāng)發(fā)送Hear值為0的報文時,GRE隧道處于會話狀態(tài);B2、當(dāng)接收到Hear值為0的報文時,停止發(fā)送Hear值為0的報文時,改為發(fā)送Hear值為1的報文,GRE隧道處于檢測狀態(tài)。
5.如權(quán)利要求2或3所述的一種通用路由封裝隧道的檢測方法,其特征在于,所述步驟B包括B3、統(tǒng)計規(guī)定時間內(nèi)接收的報文個數(shù),若在規(guī)定范圍內(nèi),則確定GRE隧道處于檢測狀態(tài);若超過規(guī)定范圍,則可確定GRE隧道處于缺陷狀態(tài)。
6.如權(quán)利要求5所述的一種通用路由封裝隧道的檢測方法,其特征在于,所述步驟B3包括GRE隧道處于會話狀態(tài)時檢測出GRE隧道缺陷及GRE隧道處于檢測狀態(tài)時檢測出GRE隧道缺陷。
7.如權(quán)利要求6所述的一種通用路由封裝隧道的檢測方法,其特征在于,當(dāng)GRE隧道處于會話狀態(tài)檢測出GRE隧道缺陷時,所述方法還包括向管理平面發(fā)出告警,請求GRE隧道配置的維護操作。
8.如權(quán)利要求6所述的一種通用路由封裝隧道的檢測方法,其特征在于,當(dāng)GRE隧道處于缺陷狀態(tài)時,所述步驟B3還包括B31、繼續(xù)對GRE隧道進行檢測,若在規(guī)定時間內(nèi)一直檢測到缺陷,則確定GRE隧道處于故障狀態(tài);或,B32、繼續(xù)對GRE隧道進行檢測,若在規(guī)定時間內(nèi)一直檢測到GRE隧道正常,則可確定GRE隧道處于檢測狀態(tài)。
9.如權(quán)利要求8所述的一種通用路由封裝隧道的檢測方法,其特征在于,確定GRE隧道處于故障狀態(tài)時,所述方法還包括向管理平面發(fā)出告警,將業(yè)務(wù)自動切換到備用隧道上。
10.如權(quán)利要求8所述的一種通用路由封裝隧道的檢測方法,其特征在于,所述步驟B31還包括B311、GRE隧道處于故障狀態(tài)時,繼續(xù)對GRE隧道進行檢測,在一定時間內(nèi)一直檢測到GRE隧道正常,則可確定GRE隧道正常。
11.如權(quán)利要求10所述的一種通用路由封裝隧道的檢測方法,其特征在于,所述方法還包括向管理平面發(fā)出報告,將業(yè)務(wù)倒回到原GRE隧道。
12.如權(quán)利要求1所述的一種通用路由封裝隧道的檢測方法,其特征在于,采用雙向轉(zhuǎn)發(fā)檢測BFD檢測機制對所述GRE隧道進行檢測。
13.如權(quán)利要求12所述的一種通用路由封裝隧道的檢測方法,其特征在于,將BFD控制報文作為GRE隧道的凈荷發(fā)送。
全文摘要
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域中一種通用路由封裝隧道的檢測方法,利用OAM(操作維護)/BFD(雙向轉(zhuǎn)發(fā)檢測)檢測機制,檢測GRE隧道,首先,通用路由封裝隧道GRE兩端的路由器使能檢測功能,分別發(fā)送檢測報文給對端;統(tǒng)計規(guī)定時間內(nèi)接收到的報文個數(shù),確定GRE隧道狀態(tài);根據(jù)所述GRE隧道狀態(tài)采取相應(yīng)措施。本發(fā)明實現(xiàn)了對GRE隧道的雙向連通性檢測,并在GRE隧道出現(xiàn)異常時,啟用倒換機制,有效提高了GRE隧道的可靠性。
文檔編號H04L12/26GK1863101SQ200510109119
公開日2006年11月15日 申請日期2005年10月18日 優(yōu)先權(quán)日2005年10月18日
發(fā)明者李賀軍 申請人:華為技術(shù)有限公司