專利名稱:一種傳輸狀態(tài)檢測方法以及相關裝置的制作方法
技術領域:
本發(fā)明涉及通信領域,尤其涉及一種傳輸狀態(tài)檢測方法以及相關裝置。
背景技術:
隨著網(wǎng)絡技術的發(fā)展,各種業(yè)務應用對迅速的故障檢測和恢復提出了越來越高的 要求,而因特網(wǎng)協(xié)議(IPJnternet Protocol)網(wǎng)絡在設計上又無法在不到一秒的時間內(nèi)恢 復故障,現(xiàn)有技術中出現(xiàn)一種雙向轉發(fā)檢測(BFD,Bidirectional Forwarding Detection) 來幫助解決這種迅速故障恢復的問題。BFD提供了一種檢測鏈路或系統(tǒng)轉發(fā)傳輸流能力的簡單方法。BFD能夠在系統(tǒng)之 間的任何類型通道上進行故障檢測,這些通道包括直接的物理鏈路,虛電路,隧道,以及非 直接的路由通道。同時正是由于BFD實現(xiàn)故障檢測的簡單、單一性,使得BFD能夠?qū)W⒂谵D 發(fā)故障的快速檢測,幫助網(wǎng)絡以良好的服務質(zhì)量(QoS,Quality of Service)實現(xiàn)語音、視 頻及其它點播業(yè)務的傳輸,從而幫助服務提供商基于IP網(wǎng)的實現(xiàn),為客戶提供所需的高可 靠性、高適用性的音頻數(shù)字化因特網(wǎng)協(xié)議(VoIP,Voice over Internet Protocol)及其它 實時業(yè)務。BFD雖然為故障恢復提供了簡便、快捷的方法,但是,正是由于BFD提供的故障檢 測狀態(tài)過于簡單,使得BFD的狀態(tài)不能完全反映當前鏈路的狀態(tài),導致了用戶在監(jiān)控時獲 取的信息不足,從而影響到用戶對于鏈路狀態(tài)的判斷。例如以BFD鏈路檢測為基礎建立自 動保護倒換(APS,Automatic ProtectionSwitched), BFD鏈路檢測只區(qū)分了“故障”、“初 始化”和“通路”三種狀態(tài),假設當前業(yè)務傳輸?shù)闹魍ǖ蓝氯?,業(yè)務傳輸運行在備用通道上, 若備用通道上的鏈路出現(xiàn)了短暫的擁堵,數(shù)據(jù)傳輸偶然出現(xiàn)丟包現(xiàn)象,發(fā)現(xiàn)業(yè)務傳輸不正 常的終端設備就會向?qū)Χ说脑O備發(fā)送指示狀態(tài)為故障的BFD報文,而對端設備的BFD狀態(tài) 機就會馬上跳轉為“中斷”,并觸發(fā)了 APS狀態(tài)機進行狀態(tài)切換,重新建立備用通道上的業(yè) 務傳輸,這種業(yè)務鏈路重建的過程會使業(yè)務中斷達到秒級,嚴重的影響業(yè)務的進行;而實際 上,備用通道上的鏈路堵塞只是業(yè)務傳輸?shù)馁|(zhì)量較差,從整個傳輸過程來看,這樣的傳輸質(zhì) 量又是可以接受的,沒有必要進行業(yè)務鏈路重建,以致業(yè)務中斷。
發(fā)明內(nèi)容
本發(fā)明實施例提供了 一種傳輸狀態(tài)檢測方法以及相關裝置,用于使得雙向轉發(fā)檢 測技術更精確的進行業(yè)務傳輸狀態(tài)的判斷。本發(fā)明提供的傳輸狀態(tài)檢測方法,包括當本地設備的傳輸狀態(tài)為優(yōu)質(zhì)通路狀態(tài) 時,所述優(yōu)質(zhì)通路狀態(tài)表示本地設備能與對端設備進行業(yè)務傳輸,且傳輸狀態(tài)穩(wěn)定;若收到 對端設備發(fā)送的雙向轉發(fā)檢測BFD報文,且所述BFD報文的指示狀態(tài)為故障,或,若自上一 次收到BFD報文起,經(jīng)過第一預置時長后,沒有再次收到所述對端設備發(fā)送的BFD報文;則 將本地設備的傳輸狀態(tài)切換為次級通路狀態(tài),所述次級通路狀態(tài)表示本地設備能與對端設 備進行業(yè)務傳輸,但傳輸狀態(tài)不穩(wěn)定;自本地設備的傳輸狀態(tài)切換為次級通路狀態(tài)起,若在第三預置時長內(nèi),沒有再次接收到對端設備發(fā)送的BFD報文,或者,自本地設備的傳輸狀態(tài) 切換為次級通路狀態(tài)起,若在經(jīng)過第三預置時長后,收到所述對端設備發(fā)送的指示狀態(tài)為 故障的BFD報文,則將本地設備的傳輸狀態(tài)切換為中斷狀態(tài)。本發(fā)明提供的傳輸狀態(tài)檢測裝置,包括接收單元,用于當本地設備的傳輸狀態(tài)為 優(yōu)質(zhì)通路狀態(tài)時,接收對端設備發(fā)送的BFD報文,并觸發(fā)分析單元;所述優(yōu)質(zhì)通路狀態(tài)表示 本地設備能與對端設備進行業(yè)務傳輸,且傳輸狀態(tài)穩(wěn)定;分析單元,用于分析所述BFD報 文,若所述BFD報文的指示狀態(tài)為故障,則觸發(fā)第一切換單元;故障計時器,用于計算相鄰 兩次收到BFD報文的時間,若自上一次收到BFD報文起,經(jīng)過第一預置時長后,沒有再次收 到所述對端設備發(fā)送的BFD報文,則觸發(fā)第一切換單元;第一切換單元,用于將本地設備的 傳輸狀態(tài)切換為次級通路狀態(tài),所述次級通路狀態(tài)表示本地設備能與對端設備進行業(yè)務傳 輸,但傳輸狀態(tài)不穩(wěn)定;故障中斷計時器,用于從本地設備的傳輸狀態(tài)切換為次級通路狀態(tài) 起,開始計算第三預置時長;第二切換單元,用于自切換為次級通路狀態(tài)起,若在故障中斷 計時器達到第三預置時長后,收到所述對端設備發(fā)送的指示狀態(tài)為故障的BFD報文,則將 本地設備的傳輸狀態(tài)切換為中斷狀態(tài),或者,用于在切換為次級通路狀態(tài)起,若在所述第三 預置時長內(nèi),沒有接收到的對端設備發(fā)送的BFD報文,則將本地設備的傳輸狀態(tài)切換為中 斷狀態(tài)。從以上技術方案可以看出,本發(fā)明實施例具有以下優(yōu)點本發(fā)明擴展了終端設備 的監(jiān)測狀態(tài)機,將BFD的通路狀態(tài)分為優(yōu)質(zhì)通路狀態(tài)和次級通路狀態(tài),優(yōu)質(zhì)通路狀態(tài)和次 級通路狀態(tài)都表示本地設備與對端設備之間能夠進行業(yè)務傳輸,但前者表示傳輸狀態(tài)穩(wěn) 定,而后者表示傳輸狀態(tài)不穩(wěn)定;當本地設備的傳輸狀態(tài)為優(yōu)質(zhì)通路狀態(tài)時,若收到指示狀 態(tài)為故障的BFD報文,或自上一次收到BFD報文起,經(jīng)過第一預置時長后,沒有再次收到對 端設備發(fā)送的BFD報文,則將本地設備的傳輸狀態(tài)切換為次級通路狀態(tài),使得BFD的狀態(tài)顯 示更加精確和合理,用戶可以根據(jù)新增的狀態(tài)獲取更多的信息,從而做出正確的判斷。
圖1是本發(fā)明實施例中傳輸狀態(tài)檢測方法的一個流程示意圖;圖2是本發(fā)明實施例中傳輸狀態(tài)檢測方法的另一個流程示意圖;圖3是本發(fā)明實施例中傳輸狀態(tài)檢測方法的狀態(tài)轉換示意圖;圖4是本發(fā)明實施例中傳輸狀態(tài)檢測裝置的邏輯結構示意圖。
具體實施例方式本發(fā)明實施例提供了一種傳輸狀態(tài)檢測方法以及相關裝置,用于使得雙向轉發(fā)檢 測技術更精確的進行業(yè)務傳輸狀態(tài)的判斷。請參閱圖1,本發(fā)明實施例中的傳輸狀態(tài)檢測方法包括101、本地與對端設備建立BFD會話;本地設備需要與對端設備進行業(yè)務傳輸,為了業(yè)務傳輸可以順利進行,本地設備 通過與對端設備建立BFD會話來進行該業(yè)務傳輸?shù)墓收蠙z測。首先,兩端設備分別建立BFD實例,并分別獲取對端的IP地址;然后,獲取對端分 配給該BFD會話的鑒別符,同時本地設備也為該BFD會話分配鑒別符,并將對端的鑒別符通知給本地設備的BFD實例;最后,當兩端設備能相互識別后,兩端設備通過三次握手的方式 建立BFD會話的時序。在BFD會話建立的過程中,每端的設備都會評估自身發(fā)送和接收BFD報文的速率, 并用自身估算出來的速率與對端設備進行協(xié)商,以協(xié)調(diào)兩端收發(fā)BFD報文的速率、故障確 認時間、以及統(tǒng)一的會話模式。BFD會話通常會通過發(fā)送協(xié)商(Poll)報文進行參數(shù)(這些 參數(shù)包括收發(fā)BFD報文的速率,故障確認時間等)協(xié)商,收到結束(Final)報文后結束協(xié) 商流程;當本地設備收到Poll報文后,需要立即回送Final報文,同時開啟定時發(fā)送和超時 檢測。在實際應用中,這些針對自己系統(tǒng)的收發(fā)報文能力的估算將會被實時地更新。這種 協(xié)商機制能夠使傳輸速率不同的兩種終端設備共享同一個物理鏈路,并且能使相對較快的 終端設備加快偵測速度,使得相當較慢的終端設備最大化的發(fā)揮自身的檢測能力。當各種BFD會話參數(shù)都協(xié)商完畢后,兩端設備就可以進行故障檢測。兩端設備根 據(jù)協(xié)商好的參數(shù),使用異步模式周期性地向?qū)Χ税l(fā)送BFD報文,進行心跳檢測。102、本地的傳輸狀態(tài)設置為優(yōu)質(zhì)通路狀態(tài); 在兩端設備的BFD會話建立之后,雙方周期性的向?qū)Χ税l(fā)送BFD報文,進行心跳檢 測;該BFD報文不管被任何協(xié)議封裝都是適合傳輸媒介和網(wǎng)絡使用的,而且可以運行在多 層面的系統(tǒng)中。若本地設備在BFD會話初始化后,數(shù)據(jù)傳輸?shù)臓顟B(tài)穩(wěn)定,則將本地的傳輸狀態(tài)設 置為優(yōu)質(zhì)通路狀態(tài)。數(shù)據(jù)傳輸時的通路狀態(tài)分為優(yōu)質(zhì)通路狀態(tài)和次級通路狀態(tài);該優(yōu)質(zhì)通 路狀態(tài)表示本地設備與對端設備之間能夠進行業(yè)務傳輸,且傳輸狀態(tài)穩(wěn)定,該次級通路狀 態(tài)表示本地設備與對端設備之間能夠進行業(yè)務傳輸,但傳輸狀態(tài)不穩(wěn)定。判斷本地設備與對端設備之間的數(shù)據(jù)傳輸?shù)臓顟B(tài)是否穩(wěn)定可以包括一、本地設備可以連續(xù)多次(具體次數(shù)可在上述協(xié)商過程中確定)在預置的時間 間隔(可在上述協(xié)商過程中確定)內(nèi)收到對端發(fā)送的BFD報文(非故障指示狀態(tài)),則確認 數(shù)據(jù)傳輸?shù)臓顟B(tài)穩(wěn)定;二、本地設備在一段時間內(nèi),每兩次收到BFD報文之間的間隔時間的正負誤差不 超過一個預置時長(可在上述協(xié)商過程中確定),則確認數(shù)據(jù)傳輸?shù)臓顟B(tài)穩(wěn)定。上面僅以一些例子對本發(fā)明實施例中的數(shù)據(jù)傳輸狀態(tài)的判斷進行說明,可以理解 的是,在實際應用中,數(shù)據(jù)傳輸狀態(tài)還可以有更多的判斷方法,具體此處不作限定。103、接收對端發(fā)送的BFD報文;本地設備接收對端設備發(fā)送的BFD報文,并分析該BFD報文的指示狀態(tài),若該BFD 報文的指示狀態(tài)為故障,則觸發(fā)步驟105。當對端設備檢測到與本地設備的數(shù)據(jù)傳輸出現(xiàn)問題時(包括在預置的時間間隔 (協(xié)商得到)內(nèi)未收到本地設備發(fā)送的BFD報文,或預置的時間間隔(協(xié)商得到)發(fā)生了若 干次(協(xié)商得到)丟包),則會向本地設備發(fā)送指示狀態(tài)為故障的BFD報文。BFD報文的指示狀態(tài)包括通路、故障和初始化。該通路表示本地設備與對端設 備正在進行穩(wěn)定的業(yè)務傳輸,該故障表示本地設備與對端設備無法進行穩(wěn)定的業(yè)務傳輸, 無法進行穩(wěn)定的業(yè)務傳輸?shù)那闆r包括本地設備與對端設備之間的業(yè)務傳輸中斷,或出現(xiàn) 了 “丟包”現(xiàn)象;該初始化表示對端的對端設備正在建立與本地設備進行業(yè)務傳輸?shù)逆溌罚?包括首次建立與本地設備進行業(yè)務傳輸?shù)逆溌?,和重新建立與本地設備進行業(yè)務傳輸?shù)逆溌贰?04、故障計時器超時;在本地設備與對端設備進行心跳檢測的過程中,會周期性的互發(fā)BFD報文,在本 地設備接收到對端發(fā)送BFD報文時,本地的故障計時器就會更新,重新計時;當該故障計時 器的計時數(shù)到達第一預置時長時,還沒有再次收到對端設備發(fā)送的BFD報文,則觸發(fā)步驟 105。105、本地的傳輸狀態(tài)切換為次級通路狀態(tài);本地設備將當前的傳輸狀態(tài)由優(yōu)質(zhì)通路狀態(tài)切換為次級通路狀態(tài)。在進行實際的業(yè)務傳輸中,本地設備和對端設備之間的傳輸鏈路會出現(xiàn)一種短暫 堵塞的狀況,可能是因為瞬間數(shù)據(jù)流量過大引起的,導致在業(yè)務傳輸中出現(xiàn)少數(shù)的“丟包” 現(xiàn)象,這種狀況是暫時性的,而少數(shù)的“丟包”現(xiàn)象也不會影響全局的業(yè)務傳輸,或引起業(yè)務 傳輸?shù)闹袛啵虼?,這種短暫堵塞的狀況是可以接受的;但在終端設備進行故障檢測時,出 現(xiàn)少數(shù)幾次“丟包”現(xiàn)象也會向?qū)Χ嗽O備發(fā)送指示狀態(tài)為故障的BFD報文,而現(xiàn)有技術中終 端設備的監(jiān)測狀態(tài)機在通路的狀態(tài)下收到該BFD報文的話,會直接將本地設備和對端設備 之間的傳輸鏈路判斷為中斷,這樣的判斷顯然是不合理的。因此,本發(fā)明新增了次級通路狀 態(tài)用以表示這種傳輸鏈路短暫堵塞的狀況,使得BFD對業(yè)務傳輸?shù)臓顟B(tài)檢測更加準確。106、本地的傳輸狀態(tài)切換為中斷狀態(tài)。當本地設備的傳輸狀態(tài)為次級通路狀態(tài)時,繼續(xù)嘗試接收對端發(fā)送的BFD報文, 當?shù)诙袛嘤嫊r器的計時數(shù)到達第三預置時長時,還沒有再次收到對端設備發(fā)送的BFD報 文,或若當前的故障中斷計時器的計時數(shù)已經(jīng)超過第三預置時長,仍收到指示狀態(tài)為故障 的BFD報文,則將當前的傳輸狀態(tài)切換為中斷狀態(tài)。該第二中斷計時器是從本地的傳輸狀 態(tài)切換為次級通路狀態(tài)起開始計時的,每接收到一次BFD報文就更新一次;該故障中斷計 時器是從本地的傳輸狀態(tài)切換為次級通路狀態(tài)起開始計時的,每接收到一次指示狀態(tài)為通 路的BFD報文就更新一次本發(fā)明擴展了終端設備的監(jiān)測狀態(tài)機,將BFD的通路狀態(tài)分為優(yōu)質(zhì)通路狀態(tài)和次 級通路狀態(tài),優(yōu)質(zhì)通路狀態(tài)和次級通路狀態(tài)都表示本地設備與對端設備之間能夠進行業(yè)務 傳輸,但前者表示傳輸狀態(tài)穩(wěn)定,而后者表示傳輸狀態(tài)不穩(wěn)定;當本地設備的傳輸狀態(tài)為優(yōu) 質(zhì)通路狀態(tài)時,若收到指示狀態(tài)為故障的BFD報文,或自上一次收到BFD報文起,經(jīng)過第一 預置時長后,沒有再次收到對端設備發(fā)送的BFD報文,則將本地的傳輸狀態(tài)切換為次級通 路狀態(tài),使得BFD的狀態(tài)顯示更加精確和合理,用戶可以根據(jù)新增的狀態(tài)獲取更多的信息, 從而做出正確的判斷。本地設備的傳輸狀態(tài)還可以包括中斷狀態(tài)和初始化狀態(tài)。除了在優(yōu)質(zhì)通路狀態(tài) 下切換為次級通路狀態(tài)的方法,本發(fā)明還提供在不同條件下,各種傳輸狀態(tài)之間的切換方 法,具體請參閱圖2,本發(fā)明實施例中傳輸狀態(tài)檢測方法的另一個實施例包括201、本地與對端設備建立BFD會話;本實施例中的步驟201的內(nèi)容與前述圖1所示的實施例中步驟101的內(nèi)容相同, 此處不再贅述。202、本地發(fā)送指示狀態(tài)為故障的BFD報文;在本地設備與對端設備完成參數(shù)協(xié)商后,將要通過BFD進行故障檢測,此時本地設備的初始傳輸狀態(tài)為中斷狀態(tài),該中斷狀態(tài)表示本地設備與對端設備之間的業(yè)務傳輸斷 開,傳輸鏈路不通;此時,本地設備周期性地向?qū)Χ嗽O備發(fā)送指示狀態(tài)為故障的BFD報文。203、本地接收指示狀態(tài)為故障的BFD報文;當本地設備的傳輸狀態(tài)為中斷狀態(tài)時,本地設備不斷地向?qū)Χ嗽O備發(fā)送BFD報 文,同時,本地設備也不斷地嘗試接收對端設備發(fā)送的BFD報文,若成功的接收到該BFD報 文的話,分析該BFD報文的指示狀態(tài),若該BFD報文的指示狀態(tài)為故障,則觸發(fā)步驟204,將 當前的傳輸狀態(tài)升級為初始化狀態(tài);該初始化狀態(tài)表示兩端設備的鏈路傳輸處于初始化階 段。在剛開始業(yè)務傳輸時,兩端設備都默認當前的傳輸狀態(tài)為中斷狀態(tài),雙方都會周 期性的發(fā)送指示狀態(tài)為故障的BFD報文,同時也會不斷地嘗試接收對端發(fā)送的BFD報文, 此時為業(yè)務傳輸初始階段的故障檢測,若成功的接收到對端的BFD報文的話,表示兩端設 備之間的傳輸鏈路開始通路,而此時也會觸發(fā)步驟204,將本地的傳輸狀態(tài)切換為初始化狀 態(tài)。204、本地的傳輸狀態(tài)切換為初始化狀態(tài);本地設備的將當前的傳輸狀態(tài)切換為初始化狀態(tài),并向?qū)Χ税l(fā)送指示狀態(tài)為初始 化的BFD報文。當本地設備的傳輸狀態(tài)為初始化狀態(tài)時,嘗試繼續(xù)接收對端發(fā)送的BFD報文,當 第一中斷計時器的計時數(shù)到達第三預置時長時,還沒有再次收到對端設備發(fā)送的BFD報 文,則觸發(fā)步驟207,將當前的傳輸狀態(tài)降級為中斷狀態(tài),該第一中斷計時器是從本地的傳 輸狀態(tài)切換為初始化狀態(tài)起開始計時的,每接收到一次BFD報文就更新一次。當成功接收到對端發(fā)送的BFD報文時,則分析該BFD報文的指示狀態(tài)若該BFD報文的指示狀態(tài)為故障,表示對端設備還沒有收到上述步驟203中本地 設備所發(fā)送的BFD報文,對端設備的傳輸狀態(tài)仍處于中斷狀態(tài)的階段,本地終端保持當前 的傳輸狀態(tài)不變,等待對端設備進行狀態(tài)切換;若該BFD報文的指示狀態(tài)為初始化,表示對端設備的傳輸狀態(tài)已經(jīng)處于初始化狀 態(tài)的階段,本地終端可以將傳輸狀態(tài)升級為次級通路狀態(tài),故觸發(fā)步驟205 ;若該BFD報文的指示狀態(tài)為通路,表示對端設備的傳輸狀態(tài)已經(jīng)處于次級通路 狀態(tài)或優(yōu)質(zhì)通路狀態(tài)的階段,本地終端可以將傳輸狀態(tài)升級為次級通路狀態(tài),故觸發(fā)步驟 205。205、本地的傳輸狀態(tài)切換為次級通路狀態(tài);本地設備將當前的傳輸狀態(tài)切換為次級通路狀態(tài),并向?qū)Χ嗽O備發(fā)送指示狀態(tài)為 通路的BFD報文。當本地設備的傳輸狀態(tài)為次級通路狀態(tài)時,嘗試繼續(xù)接收對端發(fā)送的BFD報文, 當?shù)诙袛嘤嫊r器的計時數(shù)到達第三預置時長時,還沒有再次收到對端設備發(fā)送的BFD報 文,則觸發(fā)步驟207,將當前的傳輸狀態(tài)降級為中斷狀態(tài),該第二中斷計時器是從本地的傳 輸狀態(tài)切換為次級通路狀態(tài)起開始計時的,每接收到一次BFD報文就更新一次。當成功接收到對端發(fā)送的BFD報文時,則分析該BFD報文的指示狀態(tài)若該BFD報文的指示狀態(tài)為初始化,則表示對端設備的傳輸狀態(tài)仍處于初始化狀 態(tài)的階段,本地終端保持當前的傳輸狀態(tài)不變,等待對端設備進行狀態(tài)切換;
若該BFD報文的指示狀態(tài)為故障,則表示對端設備出現(xiàn)了“丟包”現(xiàn)象,若當前的 故障中斷計時器的計時數(shù)沒有超過第三預置時長,則保持當前的傳輸狀態(tài)不變;若當前的 故障中斷計時器的計時數(shù)已經(jīng)超過第三預置時長,則觸發(fā)步驟207,將當前的傳輸狀態(tài)降級 為中斷狀態(tài);該故障中斷計時器是從本地的傳輸狀態(tài)切換為次級通路狀態(tài)起開始計時的, 每接收到一次指示狀態(tài)為通路的BFD報文就更新一次;若該BFD報文的指示狀態(tài)為通路,則表示對端設備的傳輸狀態(tài)已經(jīng)處于次級通路 狀態(tài)或優(yōu)質(zhì)通路狀態(tài)的階段,若當前的優(yōu)化計時器的計時數(shù)沒有超過第二預置時長,則保 持當前的傳輸狀態(tài)不變;若當前的優(yōu)化計時器的計時數(shù)已經(jīng)超過第二預置時長,則觸發(fā)步 驟206,將傳輸狀態(tài)升級為優(yōu)質(zhì)通路狀態(tài)。該優(yōu)化計時器是從本地的傳輸狀態(tài)切換為次級通 路狀態(tài)起開始計時的,每接收到一次指示狀態(tài)為故障的BFD報文就更新一次;若優(yōu)化計時 器的計時數(shù)超過第二預置時長后收到了指示狀態(tài)為通路的BFD報文,則表示當前兩端設備 之間的傳輸鏈路非常穩(wěn)定。206、本地的傳輸狀態(tài)切換為優(yōu)質(zhì)通路狀態(tài);本地設備將當前的傳輸狀態(tài)切換為優(yōu)質(zhì)通路狀態(tài),并向?qū)Χ嗽O備發(fā)送指示狀態(tài)為 通路的BFD報文。當本地設備的傳輸狀態(tài)為優(yōu)質(zhì)通路狀態(tài)時,嘗試繼續(xù)接收對端發(fā)送的BFD報文, 當故障計時器的計時數(shù)到達第一預置時長時,還沒有再次收到對端設備發(fā)送的BFD報文, 則觸發(fā)步驟205。當成功接收到對端發(fā)送的BFD報文時,則分析該BFD報文的指示狀態(tài)若該BFD報文的指示狀態(tài)為故障,表示當前的傳輸鏈路出現(xiàn)了 “丟包”現(xiàn)象,則觸 發(fā)步驟205,將傳輸狀態(tài)降級為次級通路狀態(tài);若該BFD報文的指示狀態(tài)為初始化,表示對端設備的傳輸狀態(tài)還處于初始化狀態(tài) 的階段,則保持當前的傳輸狀態(tài)不變;若該BFD報文的指示狀態(tài)為通路,表示對端設備的傳輸狀態(tài)處于次級通路狀態(tài)或 優(yōu)質(zhì)通路狀態(tài)的階段,兩端的業(yè)務傳輸穩(wěn)定,則保持當前的傳輸狀態(tài)不變。207、本地的傳輸狀態(tài)切換為中斷狀態(tài)。本地設備將當前的傳輸狀態(tài)切換為中斷狀態(tài),并停止發(fā)送BFD報文,等待重新發(fā) 起業(yè)務傳輸?shù)倪B接。若此時還收到指示狀態(tài)為通路的報文,表示當前兩端設備之間的傳輸鏈路延時非 常嚴重,因此,仍然保持當前的中斷狀態(tài)不變。當本地設備或?qū)Χ嗽O備重新發(fā)起業(yè)務傳輸?shù)倪B接時,觸發(fā)步驟203。本發(fā)明實施例詳細地說明了不同條件下各種傳輸狀態(tài)之間的切換方法,提供了完 整的狀態(tài)切換機制,可以有效地對當前傳輸鏈路的狀態(tài)進行識別,使得基于BFD技術的故 障檢測更為準確。為了便于理解,下面以一具體應用場景對上述的實施例中描述的傳輸狀態(tài)檢測方 法再進行詳細描述,請參閱圖3,具體為假設A設備需要與B設備進行業(yè)務傳輸,則A設備和B設備使用BFD鏈路檢測為 建立APS保護。首先,A設備和B設備建立BFD會話。兩端設備分別建立BFD實例,并分別獲取對端的IP地址和BFD會話鑒別符,當A設備和B設備分別完成對端鑒別符的識別后,通過三 次握手的方式建立BFD會話的時序。然后,A設備和B設備進行BFD會話參數(shù)的協(xié)商。假設這次業(yè)務傳輸為純數(shù)據(jù)業(yè) 務,需要達到的性能指標為鏈路中斷后流量倒換時間要小于50ms,則在鏈路檢測上的超 時時間不能超過指標時間的一半,即小于25ms。假設A設備和B設備的BFD報文的發(fā)送周 期都為5ms,若A設備和B設備處于優(yōu)質(zhì)通路狀態(tài)UP_PTR3,默認當本地連續(xù)丟失對端發(fā)送 的3個報文時,即認為當前鏈路故障,故協(xié)商得到第一預置時長timel為15ms ;若A設備和 B設備處于初始化狀態(tài)INIT或次級通路狀態(tài)UP_PTR1,默認當本地連續(xù)丟失對端發(fā)送的4 個報文時,即認為當前鏈路中斷,故協(xié)商得到第三預置時長time3為20ms。若A設備和B設 備處于UP_PTR1,默認當本地連續(xù)收到5個報文時,即認為當前鏈路的傳輸狀態(tài)非常穩(wěn)定, 故協(xié)商得到第二預置時長time2為25ms。最后,當雙方將相關參數(shù)協(xié)商完畢之后,周期性的向?qū)Χ税l(fā)送BFD報文,并將本地 的BFD狀態(tài)機將初始的傳輸狀態(tài)設置為中斷狀態(tài)DOWN。A設備和B設備不斷地嘗試接收對端發(fā)送的BFD報文,若成功的接收到對端的BFD 報文的話,表示兩端設備之間的傳輸鏈路開始通路,將本地的傳輸狀態(tài)切換為INIT。當本地設備的傳輸狀態(tài)為INIT時,嘗試繼續(xù)接收對端發(fā)送的BFD報文,當?shù)谝恢?斷計時器的計時數(shù)到達20ms時,還沒有再次收到對端設備發(fā)送的BFD報文,則將當前的傳 輸狀態(tài)降級為DOWN ;當成功接收到對端發(fā)送的BFD報文時,則分析該BFD報文的指示狀態(tài)若該BFD報文的指示狀態(tài)為故障down,則本地終端保持當前的傳輸狀態(tài)不變;若 該BFD報文的指示狀態(tài)為初始化init或通路up,則本地終端可以將傳輸狀態(tài)升級為次級通 路狀態(tài)UP_PTR1。當本地設備的傳輸狀態(tài)為UP_PTR1時,嘗試繼續(xù)接收對端發(fā)送的BFD報文,當?shù)诙?中斷計時器的計時數(shù)到達20ms時,還沒有再次收到對端設備發(fā)送的BFD報文,則將當前的 傳輸狀態(tài)降級為DOWN ;當成功接收到對端發(fā)送的BFD報文時,則分析該BFD報文的指示狀態(tài)若該BFD報文的指示狀態(tài)為init,則本地終端保持當前的傳輸狀態(tài)不變;若該BFD 報文的指示狀態(tài)為down,則判斷當前的故障中斷計時器的計時數(shù)是否超過20ms,若否,則 保持當前的傳輸狀態(tài)不變;若是,則將當前的傳輸狀態(tài)降級為DOWN ;若該BFD報文的指示狀 態(tài)為up,則判斷當前的優(yōu)化計時器的計時數(shù)是否超過25ms,若否,則保持當前的傳輸狀態(tài) 不變;若是,則將傳輸狀態(tài)升級為UP_PTR3。當本地設備的傳輸狀態(tài)為UP_PTR3時,嘗試繼續(xù)接收對端發(fā)送的BFD報文,當故障 計時器的計時數(shù)到達15ms時,還沒有再次收到對端設備發(fā)送的BFD報文,則將傳輸狀態(tài)降 級為 UP_PTR1 ;當成功接收到對端發(fā)送的BFD報文時,則分析該BFD報文的指示狀態(tài)若該BFD報文的指示狀態(tài)為down,則將傳輸狀態(tài)降級為UP_PTR1 ;若該BFD報文的 指示狀態(tài)為init或up,則保持當前的傳輸狀態(tài)不變。在A設備和B設備之間的業(yè)務傳輸運行在APS的保護下,會建立兩條BFD會話通 道,分別為主通道和備通道。當主通道因故障而中斷,而備通道正常時,業(yè)務傳輸會運行在備通道上,此時的APS狀態(tài)機處于備用通道狀態(tài)SF_W。在這種SF_W鏈路狀態(tài)下,如果備通 道出現(xiàn)了一定的擁塞,會存在某段時間內(nèi)BFD報文無法正常傳送,從而導致對端設備檢測 到備通道鏈路故障,對端設備會向本地設備發(fā)送指示狀態(tài)為down的BFD報文,而本地設備 的傳輸狀態(tài)會從UP_PTR3切換為UP_PTR1。由于BFD的監(jiān)測狀態(tài)機仍處于通路狀態(tài)(次級 通路),故APS狀態(tài)機也還保持在SF_W狀態(tài),BFD會話無需重新進行的協(xié)商。如果鏈路斷裂 超出預期(故障中斷計時器的計時數(shù)超過20ms后仍收到down的BFD報文或第二中斷計時 器的計時數(shù)超過20ms),則APS狀態(tài)機由SF_W跳轉為主通道狀態(tài)SF_P,當前業(yè)務傳輸完全 中斷,需要重新進行BFD會話協(xié)商。從整個業(yè)務傳輸?shù)慕嵌榷?,備通道的業(yè)務出現(xiàn)了短時間的擁塞,但是業(yè)務運行 正常,業(yè)務中斷時間極短,只需要將通路狀態(tài)降級UP_PTR1,以此作DOWN與UP_PTR3的過渡 階段,沒必要直接切換為DOWN,觸發(fā)APS的狀態(tài)切換,導致業(yè)務中斷達到秒級。本發(fā)明的狀 態(tài)切換方法相對于現(xiàn)有技術,顯然更加合理和靈活。下面對用于執(zhí)行上述傳輸狀態(tài)檢測方法的本發(fā)明傳輸狀態(tài)檢測裝置的實施例進 行說明,其邏輯結構請參考圖4,本發(fā)明實施例中的傳輸狀態(tài)檢測裝置一個實施例包括接收單元401,用于當本地設備的傳輸狀態(tài)為優(yōu)質(zhì)通路狀態(tài)時,接收對端設備發(fā)送 的BFD報文,并觸發(fā)分析單元;優(yōu)質(zhì)通路狀態(tài)表示本地設備能與對端設備進行業(yè)務傳輸,且 傳輸狀態(tài)穩(wěn)定;分析單元402,用于分析該BFD報文,若該BFD報文的指示狀態(tài)為故障,則觸發(fā)第一 切換單元404 ;故障計時器403,用于計算相鄰兩次收到BFD報文的時間,若自上一次收到BFD報 文起,經(jīng)過第一預置時長后,沒有再次收到該對端設備發(fā)送的BFD報文,則觸發(fā)第一切換單 元 404 ;第一切換單元404,用于將本地的傳輸狀態(tài)切換為次級通路狀態(tài),該次級通路狀態(tài) 表示本地設備能與對端設備進行業(yè)務傳輸,但傳輸狀態(tài)不穩(wěn)定;故障中斷計時器407,用于從本地的傳輸狀態(tài)切換為次級通路狀態(tài)起,開始計算第 三預置時長;第二切換單元408,用于自切換為次級通路狀態(tài)起,若在故障中斷計時器達到第三 預置時長后,收到該對端設備發(fā)送的指示狀態(tài)為故障的BFD報文,則將本地設備的傳輸狀 態(tài)切換為中斷狀態(tài),或者,用于在切換為次級通路狀態(tài)起,若在該第三預置時長內(nèi),沒有接 收到的對端設備發(fā)送的BFD報文,則將本地設備的傳輸狀態(tài)切換為中斷狀態(tài)。本發(fā)明實施例中的傳輸狀態(tài)檢測裝置還可以包括優(yōu)化計時器405,用于從本地的傳輸狀態(tài)切換為次級通路狀態(tài)起,開始計算第二預 置時長;第三切換單元406,用于若收到該對端設備發(fā)送的指示狀態(tài)為通路的BFD報文,且 優(yōu)化計時器405達到第二預置時長,則將本地的傳輸狀態(tài)切換為優(yōu)質(zhì)通路狀態(tài);第四切換單元409,用于將本地的傳輸狀態(tài)切換為初始化狀態(tài)。此外,接收單元還可以用于在本地的傳輸狀態(tài)為初始化狀態(tài)、次級通路狀態(tài)或中 斷狀態(tài)時,接收對端設備發(fā)送的BFD報文;而分析單元還可以用于分析該BFD報文的各種傳 輸狀態(tài),并根據(jù)該傳輸狀態(tài)對應本地預置的相應規(guī)則進行后續(xù)處理。
本發(fā)明實施例的傳輸狀態(tài)檢測裝置中各個單元具體的交互過程如下本地設備與對端設備正在進行BFD會話當本地設備的傳輸狀態(tài)為優(yōu)質(zhì)通路狀態(tài)時,接收單元401接收對端設備發(fā)送的 BFD報文,更新本地的故障計時器403并觸發(fā)分析單元402 ;分析單元402分析該BFD報文的指示狀態(tài),若該BFD報文的指示狀態(tài)為故障,則觸 發(fā)第一切換單元401 ;接收單元401若在故障計時器403的計時數(shù)到達第一預置時長時,沒有收到該對 端設備發(fā)送的BFD報文,故障計時器403就會觸發(fā)第一切換單元401 ;第一切換單元404將本地的傳輸狀態(tài)切換為次級通路狀態(tài),次級通路狀態(tài)表示本 地設備能與對端設備進行業(yè)務傳輸,但傳輸狀態(tài)不穩(wěn)定。在本地設備的傳輸狀態(tài)切換為次級通路狀態(tài)之后,優(yōu)化計時器405開始計算第二 預置時長,故障中斷計時器407開始計算第三預置時長;接收單元401則繼續(xù)嘗試接收對端 設備發(fā)送的BFD報文;若接收單元401連續(xù)的在第三預置時長內(nèi)收到對端設備發(fā)送的指示狀態(tài)為通路 的BFD報文(每收到一次BFD報文故障中斷計時器407都會更新),當優(yōu)化計時器405的計 時數(shù)到達第二預置時長之后,接收單元401收到BFD報文,則觸發(fā)分析單元402分析該BFD 報文,若該BFD報文的指示狀態(tài)為通路,則觸發(fā)第三切換單元406將本地的傳輸狀態(tài)切換為 優(yōu)質(zhì)通路狀態(tài);若在故障中斷計時器407的計時數(shù)到達第三預置時長之后,接收單元401接收到 對端設備發(fā)送的BFD報文,則觸發(fā)分析單元402分析該BFD報文,若該BFD報文的指示狀態(tài) 為故障,則觸發(fā)第二切換單元408將本地的傳輸狀態(tài)切換為中斷狀態(tài)。當本地的傳輸狀態(tài)切換為中斷狀態(tài)之后,接收單元401接收該對端設備發(fā)送的 BFD報文,并觸發(fā)分析單元402分析該BFD報文,若該BFD報文的指示狀態(tài)為故障,則觸發(fā)第 四切換單元409將本地的傳輸狀態(tài)切換為初始化狀態(tài)。當本地的傳輸狀態(tài)切換為初始化狀態(tài)之后,接收單元401接收該對端設備發(fā)送的 BFD報文,并觸發(fā)分析單元402分析該BFD報文,若該BFD報文的指示狀態(tài)為通路或初始化, 則觸發(fā)第一切換單元401。本領域普通技術人員可以理解實現(xiàn)上述實施例方法中的全部或部分步驟是可以 通過程序來指令相關的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質(zhì)中,上 述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。以上對本發(fā)明所提供的一種傳輸狀態(tài)檢測方法以及相關裝置進行了詳細介紹,對 于本領域的一般技術人員,依據(jù)本發(fā)明實施例的思想,在具體實施方式
及應用范圍上均會 有改變之處,綜上所述,本說明書內(nèi)容不應理解為對本發(fā)明的限制。
權利要求
1.一種傳輸狀態(tài)檢測方法,其特征在于,包括當本地設備的傳輸狀態(tài)為優(yōu)質(zhì)通路狀態(tài)時,所述優(yōu)質(zhì)通路狀態(tài)表示本地設備能與對端 設備進行業(yè)務傳輸,且傳輸狀態(tài)穩(wěn)定;若收到對端設備發(fā)送的雙向轉發(fā)檢測BFD報文,且所述BFD報文的指示狀態(tài)為故障, 或,若自上一次收到BFD報文起,經(jīng)過第一預置時長后,沒有再次收到所述對端設備發(fā)送的 BFD報文;則將本地設備的傳輸狀態(tài)切換為次級通路狀態(tài),所述次級通路狀態(tài)表示本地設備能與 對端設備進行業(yè)務傳輸,但傳輸狀態(tài)不穩(wěn)定;自本地設備的傳輸狀態(tài)切換為次級通路狀態(tài)起,若在第三預置時長內(nèi),沒有再次接收 到對端設備發(fā)送的BFD報文,或者,自本地設備的傳輸狀態(tài)切換為次級通路狀態(tài)起,若在經(jīng) 過第三預置時長后,收到所述對端設備發(fā)送的指示狀態(tài)為故障的BFD報文,則將本地設備 的傳輸狀態(tài)切換為中斷狀態(tài)。
2.根據(jù)權利要求1所述的方法,其特征在于,所述BFD報文的指示狀態(tài)包括通路、故障和初始化。
3.根據(jù)權利要求2所述的方法,其特征在于,所述當本地設備的傳輸狀態(tài)為優(yōu)質(zhì)通路 狀態(tài)時,或?qū)⒈镜卦O備的傳輸狀態(tài)切換為次級通路狀態(tài)之后包括接收所述對端設備發(fā)送的BFD報文,若所述BFD報文的指示狀態(tài)為初始化,則本地設備 保持當前的傳輸狀態(tài)不變。
4.根據(jù)權利要求2所述的方法,其特征在于,所述將本地設備的傳輸狀態(tài)切換為次級 通路狀態(tài)之后包括自本地設備的傳輸狀態(tài)切換為次級通路狀態(tài)起,經(jīng)過第二預置時長后,若收到所述對 端設備發(fā)送的指示狀態(tài)為通路的BFD報文,則將本地設備的傳輸狀態(tài)切換為優(yōu)質(zhì)通路狀 態(tài)。
5.根據(jù)權利要求1所述的方法,其特征在于,所述將本地設備的傳輸狀態(tài)切換為中斷 狀態(tài)之后包括接收所述對端設備發(fā)送的BFD報文,若所述BFD報文的指示狀態(tài)為故障,則將本地設備 的傳輸狀態(tài)切換為初始化狀態(tài)。
6.根據(jù)權利要求5所述的方法,其特征在于,所述將本地設備的傳輸狀態(tài)切換為初始 化狀態(tài)之后包括接收所述對端設備發(fā)送的BFD報文,若所述BFD報文的指示狀態(tài)為通路或初始化,則將 本地設備的傳輸狀態(tài)切換為次級通路狀態(tài)。
7.一種傳輸狀態(tài)檢測裝置,其特征在于,包括接收單元,用于當本地設備的傳輸狀態(tài)為優(yōu)質(zhì)通路狀態(tài)時,接收對端設備發(fā)送的BFD 報文,并觸發(fā)分析單元;所述優(yōu)質(zhì)通路狀態(tài)表示本地設備能與對端設備進行業(yè)務傳輸,且傳 輸狀態(tài)穩(wěn)定;分析單元,用于分析所述BFD報文,若所述BFD報文的指示狀態(tài)為故障,則觸發(fā)第一切 換單元;故障計時器,用于計算相鄰兩次收到BFD報文的時間,若自上一次收到BFD報文起,經(jīng) 過第一預置時長后,沒有再次收到所述對端設備發(fā)送的BFD報文,則觸發(fā)第一切換單元;第一切換單元,用于將本地設備的傳輸狀態(tài)切換為次級通路狀態(tài),所述次級通路狀態(tài) 表示本地設備能與對端設備進行業(yè)務傳輸,但傳輸狀態(tài)不穩(wěn)定;故障中斷計時器,用于從本地設備的傳輸狀態(tài)切換為次級通路狀態(tài)起,開始計算第三 預置時長;第二切換單元,用于自切換為次級通路狀態(tài)起,若在故障中斷計時器達到第三預置時 長后,收到所述對端設備發(fā)送的指示狀態(tài)為故障的BFD報文,則將本地設備的傳輸狀態(tài)切 換為中斷狀態(tài),或者,用于在切換為次級通路狀態(tài)起,若在所述第三預置時長內(nèi),沒有接收 到的對端設備發(fā)送的BFD報文,則將本地設備的傳輸狀態(tài)切換為中斷狀態(tài)。
8.根據(jù)權利要求7所述的裝置,其特征在于,所述接收單元還用于當本地設備的傳輸狀態(tài)為優(yōu)質(zhì)通路狀態(tài)時,或本地設備的傳輸 狀態(tài)切換為次級通路狀態(tài)之后,接收所述對端設備發(fā)送的BFD報文,并觸發(fā)分析單元;所述分析單元還用于分析所述BFD報文,若所述BFD報文的指示狀態(tài)為初始化,則本 地設備保持當前的傳輸狀態(tài)不變。
9.根據(jù)權利要求7或8所述的裝置,其特征在于,所述裝置還包括優(yōu)化計時器,用于從本地設備的傳輸狀態(tài)切換為次級通路狀態(tài)起,開始計算第二預置 時長;第三切換單元,用于若收到所述對端設備發(fā)送的指示狀態(tài)為通路的BFD報文,且優(yōu)化 計時器達到第二預置時長,則將本地設備的傳輸狀態(tài)切換為優(yōu)質(zhì)通路狀態(tài)。
10.根據(jù)權利要求7所述的裝置,其特征在于,所述接收單元還用于當本地設備的傳輸狀態(tài)切換為中斷狀態(tài)之后,接收所述對端設 備發(fā)送的BFD報文,并觸發(fā)分析單元;所述分析單元還用于分析所述BFD報文,若所述BFD報文的指示狀態(tài)為故障,則觸發(fā) 第四切換單元;所述裝置還包括第四切換單元,用于將本地設備的傳輸狀態(tài)切換為初始化狀態(tài)。
11.根據(jù)權利要求10所述的裝置,其特征在于,所述接收單元還用于當本地設備的傳輸狀態(tài)切換為初始化狀態(tài)之后,接收所述對端 設備發(fā)送的BFD報文,并觸發(fā)分析單元;所述分析單元還用于分析所述BFD報文,若所述BFD報文的指示狀態(tài)為通路或初始 化,則觸發(fā)第一切換單元。
全文摘要
本發(fā)明實施例公開了一種傳輸狀態(tài)檢測方法以及相關裝置,用于使得雙向轉發(fā)檢測技術更精確的進行業(yè)務傳輸狀態(tài)的判斷。本發(fā)明實施例的方法包括當本地設備的傳輸狀態(tài)為優(yōu)質(zhì)通路狀態(tài)時,所述優(yōu)質(zhì)通路狀態(tài)表示本地設備能與對端設備進行業(yè)務傳輸,且傳輸狀態(tài)穩(wěn)定;若收到對端設備發(fā)送的雙向轉發(fā)檢測BFD報文,且所述BFD報文的指示狀態(tài)為故障;或,若自上一次收到BFD報文起,經(jīng)過第一預置時長后,沒有再次收到所述對端設備發(fā)送的BFD報文;則將本地的傳輸狀態(tài)切換為次級通路狀態(tài),所述次級通路狀態(tài)表示本地設備能與對端設備進行業(yè)務傳輸,但傳輸狀態(tài)不穩(wěn)定。此外,本發(fā)明實施例還提供了實現(xiàn)該方法的裝置。
文檔編號H04L12/56GK102075390SQ20111004145
公開日2011年5月25日 申請日期2011年2月16日 優(yōu)先權日2011年2月16日
發(fā)明者顏丙峰 申請人:華為技術有限公司