一種設備異常檢測方法和設備的制作方法
【專利摘要】本發(fā)明實施例公開了一種設備異常檢測方法和設備,通過應用本發(fā)明實施例所提出的技術方案,把心跳報文的收發(fā)從板卡的CPU上獨立出來,并與其他故障檢測機制(例如:看門狗邏輯)相結合,板卡的CPU無需參與心跳報文的收發(fā)和處理,從而,在板卡因為其他故障檢測機制觸發(fā)重啟的過程中,仍可以繼續(xù)進行心跳報文的發(fā)送,避免因為心跳報文未能正常發(fā)送而導致板卡的二次重啟,基于這樣的處理,可以在不降低異常檢測時間的前提下,解決分布式網絡設備板卡異常恢復重啟兩次的問題,提高分布式網絡設備的可靠性和性能。
【專利說明】一種設備異常檢測方法和設備
【技術領域】
[0001]本發(fā)明涉及通信【技術領域】,特別涉及一種設備異常檢測方法和設備。
【背景技術】
[0002]網絡設備具有高可靠性、遠程可維護性、在線診斷和自動恢復的特點,所以網絡設備需要對系統(tǒng)異常(包括死循環(huán)、CPU訪問不存在的地址,CPU運行指令被改寫,多核CPU死鎖等)進行監(jiān)控。網絡設備主要有兩種異常監(jiān)控機制,一種是板卡內部的看門狗檢測;一種是分布式網絡設備不同板卡間的心跳檢測。
[0003]分布式網絡設備上每塊板卡都有看門狗裝置,看門狗裝置可能是一個獨立的硬件芯片,也可能是CPLD (Complex Programmable Logic Device,復雜可編程邏輯器件)或FPGA(Field 一 Programmable Gate Array,現(xiàn)場可編程門陣列)內的一塊邏輯實現(xiàn),也可能是SOC (System on Chip,系統(tǒng)級芯片)CPU片內硬件看門狗模塊。在板卡CPU發(fā)生異常的情況下,CPU無法清狗會導致板卡看門狗超時觸發(fā)板卡重啟??撮T狗是網絡設備最主要的異常監(jiān)控手段,但是對于CPU軟件在死循環(huán)中主動清看門狗的情況,則無法起到監(jiān)控作用。
[0004]分布式網絡設備為了解決看門狗的局限,主控板會定期發(fā)送心跳報文來監(jiān)控接口板運行情況。主控板發(fā)送心跳報文給特定接口板,主控板在規(guī)定時間內收到特定接口板的確認心跳報文表示該接口板運行正常,主控板在規(guī)定時間內沒有收到特定接口板發(fā)送的確認心跳報文則表示該接口板運行異常。主控板在判定特定接口板異常后,會通過硬件復位管腳重啟特定接口板。雙主控之間,也可以采用心跳檢測的方法進行異常監(jiān)控,如圖1所示,為現(xiàn)有技術中的分布式設備心跳監(jiān)控機制示意圖。需要說明的是,現(xiàn)有心跳實現(xiàn)方案,主控板監(jiān)控接口板的心跳,主控板向接口板發(fā)送心跳報文不是必須的,但接口板向主控板發(fā)送心跳報文是必須的。
[0005]分布式網絡設備在運行過程中,普遍采用看門狗和心跳檢測相結合的異常監(jiān)控機制,其中主控板和接口板之間心跳檢測,常規(guī)實現(xiàn)是主控板的CPU和接口板的CPU之間,通過以太網總線互連,主用主控板CPU定期向備用主控板CPU和接口板CPU發(fā)送心跳報文,收到心跳報文后備用主控板CPU和接口板CPU需要在規(guī)定時間內發(fā)送心跳應答報文;其中看門狗監(jiān)控,常規(guī)實現(xiàn)每塊板卡都有獨立于板卡CPU的看門狗裝置,用CPLD或FPGA內邏輯芯片實現(xiàn)。如圖2所示,為現(xiàn)有技術中的分布式網絡設備現(xiàn)有異常監(jiān)控方案的示意圖。
[0006]在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術至少存在以下問題:
[0007]現(xiàn)有兩種監(jiān)控機制相結合的方案提高了分布式網絡設備的可靠性,但由于兩種監(jiān)控機制都是相互獨立運行在同一個分布式網絡設備中,在某些情況下會引入問題。
[0008]例如,在分布式網絡設備中,假如接口板發(fā)生異常(包括CPU死循環(huán)等),由于接口板內部采用看門狗異常檢測機制會導致看門狗超時使接口板重啟,但是在接口板重啟過程中因為無法應答主控板心跳報文,主控板一段時間內收不到接口板應答心跳報文導致主控板心跳超時,在接口板重啟過程中,主控板通過硬件復位管腳再次重啟接口板。
[0009]這樣的二次重啟導致接口板業(yè)務恢復變慢,并且,使異常板卡最終重啟原因和實際異常重啟原因不一致,增加了定位和解決問題的難度。
【發(fā)明內容】
[0010]本發(fā)明實施例提供一種設備異常檢測方法和設備,解決現(xiàn)有的心跳檢測和看門狗檢測相結合的故障檢測技術會導致板卡二次重啟的問題。
[0011]為達到上述目的,本發(fā)明實施例一方面提供了一種設備異常檢測方法,應用于包括多個板卡的網絡系統(tǒng)中,所述板卡被配置為主控板或接口板,所述各板卡包括CPU、心跳檢測裝置和故障檢測裝置,所述方法包括:
[0012]當所述接口板啟動時,所述接口板的心跳檢測裝置接收所述接口板的CPU的指示進入CPU控制心跳模式;
[0013]在所述CPU控制心跳模式下,當所述接口板的心跳檢測裝置檢測到所述接口板的CPU完成了預定操作時,所述接口板的心跳檢測裝置向所述主控板的心跳檢測裝置發(fā)送心跳報文;
[0014]當所述接口板的故障檢測裝置判斷所述CPU發(fā)生故障時,所述接口板的心跳檢測裝置接收所述接口板的故障檢測裝置的指示進入獨立心跳模式;
[0015]在所述獨立心跳模式下,所述接口板的心跳檢測裝置按照預設的心跳檢測周期自動向所述主控板的心跳檢測裝置發(fā)送心跳報文。
[0016]另一方面,本發(fā)明實施例還提供了一種板卡,應用于包括多個板卡的網絡系統(tǒng)中,所述板卡被配置為主控板或接口板,所述各板卡包括CPU、心跳檢測裝置和故障檢測裝置:
[0017]當所述板卡被設置為接口板時,
[0018]所述CPU,用于當所述接口板啟動時,向所述心跳檢測裝置發(fā)送進入CPU控制心跳模式的指示,并通過執(zhí)行預定操作觸發(fā)所述心跳檢測裝置向所述主控板的心跳檢測裝置發(fā)送心跳報文;
[0019]所述故障檢測裝置,用于檢測所述板卡是否出現(xiàn)故障,并在確定出現(xiàn)故障需要對所述板卡進行重新啟動時,向所述心跳檢測裝置發(fā)送進入獨立心跳模式的指示;
[0020]所述心跳檢測裝置,用于在所述CPU控制心跳模式下,當檢測到所述CPU完成了預定操作時,向所述主控板的心跳檢測裝置發(fā)送心跳報文,或在獨立心跳模式下,按照預設的心跳檢測周期自動向所述主控板的心跳檢測裝置發(fā)送心跳報文。
[0021]與現(xiàn)有技術相比,本發(fā)明實施例所提出的技術方案具有以下優(yōu)點:
[0022]通過應用本發(fā)明實施例所提出的技術方案,把心跳報文的收發(fā)從板卡的CPU上獨立出來,并與其他故障檢測機制(例如:看門狗邏輯)相結合,板卡的CPU無需參與心跳報文的收發(fā)和處理,從而,在板卡因為其他故障檢測機制觸發(fā)重啟的過程中,仍可以繼續(xù)進行心跳報文的發(fā)送,避免因為心跳報文未能正常發(fā)送而導致板卡的二次重啟,基于這樣的處理,可以在不降低異常檢測時間的前提下,解決分布式網絡設備板卡異?;謴椭貑纱蔚膯栴},提高分布式網絡設備的可靠性和性能。
【專利附圖】
【附圖說明】
[0023]圖1為現(xiàn)有技術中的分布式設備心跳監(jiān)控機制示意圖;
[0024]圖2為現(xiàn)有技術中的分布式網絡設備現(xiàn)有異常監(jiān)控方案的示意圖;
[0025]圖3為本發(fā)明實施例所提出的一種設備異常檢測方法的流程示意圖;
[0026]圖4為本發(fā)明實施例所提出的一種主控板上進行心跳檢測監(jiān)控的流程示意圖;
[0027]圖5為本發(fā)明實施例所提出的一種心跳檢測監(jiān)控的流程示意圖;
[0028]圖6為本發(fā)明實施例所提出的一種看門狗裝置的處理流程;
[0029]圖7為本發(fā)明實施例所提出的網絡結構示意圖;
[0030]圖8為本發(fā)明實施例所提出的一種具體的實施場景中的心跳檢測裝置和看門狗裝置(故障檢測裝置)的結構示意圖;
[0031]圖9為本發(fā)明實施例所提出的另一種具體的實施場景中的心跳檢測裝置和看門狗裝置(故障檢測裝置)合并后的物理實體的結構示意圖;
[0032]圖10為本發(fā)明實施例所提出的一種板卡的結構示意圖。
【具體實施方式】
[0033]如【背景技術】所述,在現(xiàn)有的看門狗和心跳檢測相結合的異常監(jiān)控機制下,由于兩種監(jiān)控方式彼此獨立,可能會分別觸發(fā)異?;貜吞幚恚丛诔霈F(xiàn)異常接口板時,會存在需要對異常接口板反復重啟兩次才能恢復業(yè)務的情況,可能會導致出現(xiàn)以下問題:
[0034]1、異常接口板的兩次重啟會導致接口板業(yè)務恢復變慢。
[0035]2、異常接口板的兩次重啟會導致最終重啟原因和實際異常重啟原因不一致,增加了定位和解決問題的難度。
[0036]不僅如此,在現(xiàn)有心跳檢測方案中,通過板卡的CPU發(fā)送以太心跳報文的處理方式占用了部分CPU資源,減少了 CPU可用于處理其他業(yè)務的時間,影響路由器性能。
[0037]雖然現(xiàn)有技術存在上述不足,但是,如果關閉分布式網絡設備的板卡心跳檢測機制,又會導致板卡異常(掛死并且能正常喂狗)時分布式網絡設備可能無法自我恢復問題,影響設備的健壯性和可靠性。
[0038]另一方面,如果延長分布式網絡設備板卡心跳超時時間,設置心跳超時時間大于板卡重啟時間,雖然可以規(guī)避異常接口板重啟兩次問題,但接口板重啟時間可能受業(yè)務流量、主控板CPU占用率、主控板存儲介質訪問速度(接口板重啟時一般都是從主控板重新加載版本)等多方面因素影響,是一個變化值,只能把心跳超時時間設置的超長,但超長的心跳超時時間就會加到板卡異常檢測時間,導致接口板異常后無法快速恢復。
[0039]綜上所述,現(xiàn)有的技術方案中,沒有能夠妥善解決上述缺陷的處理方案。
[0040]為了解決這樣的問題,本發(fā)明提出了一種設備異常檢測方法,把心跳報文的收發(fā)從板卡的CPU上獨立出來,并與其他故障檢測機制(例如:看門狗邏輯)相結合,板卡的CPU無需參與心跳報文的收發(fā)和處理,從而,在板卡因為其他故障檢測機制觸發(fā)重啟的過程中,仍可以繼續(xù)進行心跳報文的發(fā)送,避免因為心跳報文未能正常發(fā)送而導致板卡的二次重啟的問題。
[0041]如圖3所示,為本發(fā)明實施例所提出的一種設備異常檢測方法的流程示意圖,該方法應用于包括多個板卡的網絡系統(tǒng)中,系統(tǒng)中的板卡被配置為主控板或接口板,各板卡包括CPU、心跳檢測裝置和故障檢測裝置,該方法具體包括以下步驟:
[0042]步驟S301、當所述接口板啟動時,所述接口板的心跳檢測裝置接收所述接口板的CPU的指示進入CPU控制心跳模式。
[0043]需要說明的是,本步驟所指的接口板啟動,包括板卡的初始化啟動,也包括板卡因為主控板指示或者自身的故障檢測裝置所觸發(fā)的重新啟動,具體啟動類型的變化都不會改變接口板在啟動后觸發(fā)CPU控制心跳模式的技術方案,這樣的變化并不會影響本發(fā)明的保護范圍。
[0044]在所述CPU控制心跳模式下,所述接口板的心跳檢測裝置對所述接口板的CPU是否完成了預定操作進行檢測。
[0045]在所述接口板的心跳檢測裝置沒有檢測到所述接口板的CPU完成預定操作的情況下,所述接口板的心跳檢測裝置放棄進行心跳報文的發(fā)送,從而,如果所述主控板的心跳檢測裝置在所述預設的心跳檢測周期內沒有收到所述接口板的心跳檢測裝置發(fā)送的心跳報文,所述主控板的CPU指示所述接口板進行重新啟動,這樣的處理滿足了心跳檢測機制對于板卡異常的監(jiān)控。
[0046]當然,在接口板根據(jù)主控板的指示進行重啟之后,本發(fā)明實施例所提出的技術方案重新返回步驟S301,執(zhí)行相應的流程。
[0047]反之,當所述接口板的心跳檢測裝置檢測到所述接口板的CPU完成了預定操作時,執(zhí)行步驟S302。
[0048]其中,需要說明的是,在具體的應用場景中,所述接口板的心跳檢測裝置檢測到所述接口板的CPU完成了預定操作,具體包括以下兩種方式:
[0049]方式一、所述接口板的心跳檢測裝置檢測到所述接口板的CPU對預設的任務程序進行了調度。
[0050]其中,在具體的實施場景中,所述接口板的CPU在正常工作的情況下,按照預設的調度策略對所述預設的任務程序進行調度。
[0051]所述預設的調度策略至少包括,對所述預設的任務程序的調度周期小于或等于所述心跳檢測周期。
[0052]方式二、所述接口板的心跳檢測裝置接收到所述接口板的CPU發(fā)送的指示所述CPU狀態(tài)正常的通知消息。
[0053]其中,在具體的實施場景中,所述接口板的CPU發(fā)送的指示所述CPU狀態(tài)正常的通知消息,具體為所述接口板的CPU根據(jù)預設的通知策略所進行的一次性的邏輯接口寫操作,所述邏輯接口與所述接口板的心跳檢測裝置相對應。
[0054]所述預設的通知策略至少包括,所述邏輯接口寫操作的執(zhí)行周期小于或等于所述心跳檢測周期。
[0055]在具體的應用場景中,可以根據(jù)系統(tǒng)設置,具體選擇應用上述的哪種方式,具體方式的變化并不會影響本發(fā)明的保護范圍。
[0056]步驟S302、所述接口板的心跳檢測裝置向所述主控板的心跳檢測裝置發(fā)送心跳報文。
[0057]上述的過程不斷循環(huán),只要所述接口板的心跳檢測裝置檢測到所述接口板的CPU完成了預定操作,機會觸發(fā)心跳報文的上報過程,保證了主控板可以通過心跳檢測機制對接口板進行故障檢測。
[0058]在本發(fā)明的技術方案中,除了主控板通過心跳檢測機制對接口板進行故障檢測以外,還包括接口板自身的故障檢測裝置對于接口板自身的故障檢測機制。
[0059]當所述接口板的故障檢測裝置判斷所述CPU發(fā)生故障時,為了對CPU進行故障恢復,需要對所述接口板進行重新啟動,同時,執(zhí)行步驟S303。
[0060]需要進一步說明的是,在具體的應用場景中,所述接口板的故障檢測裝置對所述接口板進行重新啟動,具體可以通過以下方式確定:
[0061]所述接口板的故障檢測裝置判斷在當前的故障檢測周期內是否接收到所述接口板的CPU發(fā)送的計時清零消息。
[0062]如果接收到,所述接口板的故障檢測裝置將當前的計時清零,并重新開始新的故障檢測周期的計時;
[0063]如果沒有接收到,所述接口板的故障檢測裝置確定所述接口板需要重新啟動,觸發(fā)所述接口板進行重新啟動,并向所述接口板的心跳檢測裝置發(fā)送進入獨立心跳模式的指
/Jn ο
[0064]其中,在具體的實施場景中,所述接口板的CPU發(fā)送的計時清零消息,具體為所述接口板的CPU根據(jù)預設的清零策略所進行的一次性的邏輯接口寫操作,所述邏輯接口與所述接口板的故障檢測裝置相對應。
[0065]所述預設的清零策略至少包括,所述邏輯接口寫操作的執(zhí)行周期小于或等于預設的故障檢測周期。
[0066]需要進一步指出的是,在具體的應用場景中,所述接口板的故障檢測裝置,具體為看門狗裝置。
[0067]當然,看門狗裝置只是故障檢測裝置的一種具體物理形式,其他能夠達到相同技術效果的物理實體同樣可以應用于本方案,這樣的變化并不會影響本發(fā)明的保護范圍。
[0068]步驟S303、所述接口板的心跳檢測裝置接收所述接口板的故障檢測裝置的指示進入獨立心跳模式。
[0069]步驟S304、在所述獨立心跳模式下,所述接口板的心跳檢測裝置按照預設的心跳檢測周期自動向所述主控板的心跳檢測裝置發(fā)送心跳報文。
[0070]在接口板重新啟動完成之前,步驟S304循環(huán)進行,保證心跳報文的正常發(fā)送,在接口板重新啟動完成之后,返回步驟S301,重新進入CPU控制心跳模式。
[0071 ] 通過上述的步驟S303和步驟S304,所述接口板的心跳檢測裝置可以在CPU出現(xiàn)故障,進行重啟回復的情況下,繼續(xù)進行心跳報文的正常發(fā)送,從而,保證主控板對接口板的心跳檢測的正常進行,即在板卡因為故障檢測裝置的故障檢測機制觸發(fā)重啟的過程中,仍可以繼續(xù)進行心跳報文的發(fā)送,避免因為心跳報文未能正常發(fā)送而導致板卡的二次重啟。
[0072]通過上述流程,接口板上的心跳報文發(fā)送機制得以完整實現(xiàn),而進一步的,當上述的板卡被設置為主控板時,其所實現(xiàn)的心跳報文檢測機制則需要通過以下流程來實現(xiàn),具體包括:
[0073]所述主控板的心跳檢測裝置判斷在當前的心跳檢測周期內是否接收到所述接口板的心跳檢測裝置所發(fā)送的心跳報文;
[0074]如果接收到,所述主控板的心跳檢測裝置將當前的計時清零,并重新開始新的心跳檢測周期的計時;
[0075]如果沒有接收到,所述主控板的心跳檢測裝置確定所述接口板需要重新啟動,所述主控板的CPU向所述接口板發(fā)送指示,觸發(fā)所述接口板進行重新啟動。
[0076]需要指出的是,上述的主控板或接口板中所提及的預設的心跳檢測周期等參數(shù),可以預先在板卡中進行配置,當板卡被設置了相應的身份(主控板或接口板)之后,會調用相應的數(shù)據(jù)進行處理,當然,也可以是在設置了板卡身份后,通過具體的參數(shù)配置流程完成的整個分布式網絡系統(tǒng)的配置,這樣的變化并不會影響本發(fā)明的保護范圍。
[0077]與現(xiàn)有技術相比,本發(fā)明實施例所提出的技術方案具有以下優(yōu)點:
[0078]通過應用本發(fā)明實施例所提出的技術方案,把心跳報文的收發(fā)從板卡的CPU上獨立出來,并與其他故障檢測機制(例如:看門狗邏輯)相結合,板卡的CPU無需參與心跳報文的收發(fā)和處理,從而,在板卡因為其他故障檢測機制觸發(fā)重啟的過程中,仍可以繼續(xù)進行心跳報文的發(fā)送,避免因為心跳報文未能正常發(fā)送而導致板卡的二次重啟,基于這樣的處理,可以在不降低異常檢測時間的前提下,解決分布式網絡設備板卡異?;謴椭貑纱蔚膯栴},提高分布式網絡設備的可靠性和性能。
[0079]為了進一步闡述本發(fā)明的技術思想,現(xiàn)結合具體的應用場景,對本發(fā)明的技術方案進行說明。
[0080]首先,對于現(xiàn)有技術的缺陷進行分析,可以知曉,現(xiàn)有分布式網絡設備板卡異?;謴椭貑纱蔚脑蛟谟?
[0081]板卡上看門狗裝置和板卡間心跳檢測裝置是互相獨立的,板卡CPU和板卡實現(xiàn)看門狗的邏輯芯片互連,主控板CPU和接口板CPU通過以太網總線或其它1總線互連;
[0082]板卡看門狗超時觸發(fā)板卡重啟后,導致板卡上CPU暫時失去處理心跳報文的能力,而主控板CPU只能通過心跳報文區(qū)分板卡正常狀態(tài)和板卡異常狀態(tài),無法區(qū)分板卡異常狀態(tài)和板卡異?;謴椭貑顟B(tài)。
[0083]針對現(xiàn)有分布式網絡設備板卡異?;謴椭貑纱蔚膯栴},本發(fā)明實施例一種創(chuàng)新的分布式網絡設備的異常檢測方法及實現(xiàn)裝置,該裝置即為前述的心跳檢測裝置,其與故障檢測裝置和CPU—起部署在一塊板卡上,為了方便說明,其中的故障檢測裝置具體以看門狗裝置為例進行描述,這樣的情況并不會影響本發(fā)明的保護范圍。
[0084]具體的,包含上述裝置的板卡具有以下特征:
[0085]1、心跳檢測裝置把心跳報文的收發(fā)從板卡的CPU上獨立出來,與看門狗裝置相結合,從而,使上述板卡同時兼具心跳報文收發(fā)檢測和看門狗檢測雙重功能。
[0086]上述的看門狗裝置在保留現(xiàn)有看門狗功能的同時,還會觸發(fā)心跳檢測裝置切換心跳報文的發(fā)送模式。
[0087]在默認情況(初始情況)下,心跳檢測裝置工作在CPU控制心跳模式下,接收板卡的CPU的指示(操作或命令)進行板間心跳報文的收發(fā),及時反映板卡CPU的狀態(tài);而在板卡的看門狗裝置超時觸發(fā)板卡重啟后,心跳檢測裝置自動切換為獨立心跳模式,無需板卡CPU的參與,即可獨立收發(fā)心跳報文;板卡異常恢復的重啟結束后,心跳檢測裝置自動切換回CPU控制心跳模式。
[0088]2、本發(fā)明實施例所提出的板卡的CPU完全實現(xiàn)現(xiàn)有板卡CPU收發(fā)和處理心跳報文的功能,并且,僅需通過簡單命令或操作即可通知心跳檢測裝置當前板卡狀態(tài)正常,減輕CPU的心跳報文處理負擔,提高CPU處理能力。
[0089]3、在板卡上的看門狗裝置觸發(fā)板卡進行異?;謴椭貑⑵陂g,本發(fā)明實施例所提出的心跳檢測裝置會切換為獨立心跳模式,無需板卡的CPU參與,獨立收發(fā)和處理心跳報文,保證主控板的CPU不會錯誤的把板卡異?;謴椭貑顟B(tài)判斷為板卡異常狀態(tài)。
[0090]4、在板卡的看門狗裝置沒有超時,但板卡的CPU停止通過預定操作(簡單命令或操作)通知心跳檢測裝置板卡狀態(tài)正常時,本發(fā)明實施例所提出的心跳檢測裝置會停止收發(fā)心跳報文,保證主控板的CPU可以通過心跳報文超時的方式檢測到板卡處于異常狀態(tài)(即板卡CPU陷入死循環(huán)中,但又主動清零看門狗裝置的異常情況),并通過硬件復位管腳復位異常板卡。
[0091]5、本發(fā)明實施例所提出的看門狗裝置會在板卡的CPU沒有下發(fā)清狗命令時,主動計時,當看門狗裝置計時超時后,本發(fā)明實施例所提出的看門狗裝置會觸發(fā)板卡異常恢復重啟,并觸發(fā)心跳檢測裝置切換到獨立心跳模式。
[0092]6、本發(fā)明實施例所提出的板卡可通過板卡邏輯芯片間的一對異步差分總線實現(xiàn)心跳傳輸,擺脫現(xiàn)有實現(xiàn)方案中板間心跳報文和其它控制報文共用CPU的控制通道(一般是以太總線或PC1-E總線)的局限,而且實現(xiàn)簡單的心跳報文傳輸,無需構造復雜的心跳報文。
[0093]綜上所述,基于上述說明,本發(fā)明實施例所提出的技術方案的設計思想是,把心跳報文的收發(fā)從板卡CPU上獨立出來,與看門狗邏輯相結合。板卡CPU無需參與心跳報文的收發(fā)和處理,板卡CPU通過簡單的一次性讀寫邏輯接口實現(xiàn)原有復雜的心跳報文收發(fā)和處理。
[0094]進一步的,板卡間心跳報文可采用現(xiàn)有復雜以太總線或其它1總線進行傳輸,也可采用簡單一對異步差分總線,在板卡邏輯芯片間進行傳輸。
[0095]在后續(xù)的實施例中,重點描述采用異步差分總線(也稱為板間心跳總線)的實現(xiàn)方案。
[0096]在具體的分布式網絡系統(tǒng)(或設備,下同,不再重復說明)中,本發(fā)明實施例所提出的各板卡上都維護一份心跳超時定時器,當收到特定板卡發(fā)送的板卡狀態(tài)正常報文后,心跳檢測裝置會清零相應板卡的心跳超時定時器。
[0097]當板卡初始化時,板卡CPU會設置需要監(jiān)控哪些特定板卡的心跳超時,常規(guī)實現(xiàn)是分布式網絡系統(tǒng)中的主用主控板監(jiān)控其他的所有板卡,即分布式網絡系統(tǒng)中主用主控板(PU初始化時,會設置本板卡的心跳檢測裝置需要監(jiān)控分布式網絡系統(tǒng)中所有板卡的心跳超時,分布式網絡系統(tǒng)中的其它板卡上的心跳檢測裝置只負責發(fā)送本板卡狀態(tài)正常的心跳報文,不負責監(jiān)控其它板卡的心跳超時。
[0098]具體的,如圖4所示,為本發(fā)明實施例所提出的一種主控板上進行心跳檢測監(jiān)控的流程示意圖,具體包括以下步驟:
[0099]步驟S401、分布式網絡系統(tǒng)中的主控板啟動時,主控板CPU設置本板卡的心跳檢測裝置需要監(jiān)控分布式網絡系統(tǒng)中所有板卡的心跳超時。
[0100]即為分布式網絡系統(tǒng)中所有板卡分別維護一個心跳超時定時器。
[0101]步驟S402、主控板的心跳檢測裝置監(jiān)控各板卡所對應的心跳超時定時器是否超時。
[0102]如果沒有超時,并且接收到相應板卡發(fā)送的心跳報文,則執(zhí)行步驟S403 ;
[0103]如果超時,則執(zhí)行步驟S404。
[0104]步驟S403、主控板的心跳檢測裝置對相應的心跳超時定時器清零,然后返回步驟S402。
[0105]步驟S404、主控板的心跳檢測裝置通知CPU相應的板卡的心跳定時器超時。
[0106]即如果特定板卡在一定時間內沒有發(fā)出板卡狀態(tài)正常報文,則主控板上心跳檢測裝置就會確定特定板卡心跳定時器超時,并通知CPU。
[0107]步驟S405、主控板的CPU對心跳超時的板卡進行復位。
[0108]主控板的CPU接收到本板卡的心跳檢測裝置上報的特定板卡心跳超時事件,通過硬件復位管腳主動復位特定板卡。
[0109]進一步的,為了避免CPU控制心跳報文收發(fā)所導致的CPU資源被占用的情況,本發(fā)明實施例進一步對CPU與心跳報文相關的處理過程進行調整,減少CPU資源的占用,具體說明如下:
[0110]在板卡正常工作時,板卡的CPU會按照一定策略一次性寫簡單的邏輯接口,通知板卡的心跳檢測裝置,板卡目前狀態(tài)正常。在具體的應用場景中,一種可用的策略是板卡的CPU專門有一個心跳監(jiān)控軟件任務,在該軟件任務中,板卡的CPU寫邏輯接口,觸發(fā)板卡狀態(tài)正常的通知。在心跳檢測裝置收到CPU觸發(fā)的正常狀態(tài)通知命令后,心跳檢測裝置會通過異步差分總線向其它板卡發(fā)送表示本板狀態(tài)正常的心跳報文。其它板卡上的心跳檢測裝置收到這樣的心跳報文,就會對本板卡上相對應的心跳超時定時器進行清零。板卡CPU的心跳監(jiān)控軟件任務如果在規(guī)定時間內(與主控板上心跳檢測裝置中的板卡心跳超時時間,即前述的心跳檢測周期相對應)沒有被調度,板卡上的心跳檢測裝置就不會發(fā)送板卡狀態(tài)正常的心跳報文,主控板的心跳檢測裝置就會判定心跳超時,主控板CPU收到心跳超時事件的通知后,就會復位板卡。
[0111]具體的,如圖5所示,為本發(fā)明實施例所提出的一種心跳檢測監(jiān)控的流程示意圖,具體包括以下步驟:
[0112]步驟S501、接口板啟動,接口板的CPU配置心跳檢測裝置進入CPU控制心跳模式。
[0113]步驟S502、接口板的心跳檢測裝置判斷CPU是否按照調度周期對心跳監(jiān)控軟件任務進行調度。
[0114]如果判斷結果為是,則執(zhí)行步驟S503 ;
[0115]如果判斷結果為否,則執(zhí)彳了步驟S504。
[0116]在本步驟中,接口板的CPU按照調度周期,對心跳監(jiān)控軟件任務進行調度,該心跳監(jiān)控軟件任務與心跳檢測裝置相對應,對于該任務的調度會使心跳檢測裝置確認CPU當前狀態(tài)正常。其中,調度周期小于或等于前述的心跳檢測周期。
[0117]這是CPU按照一定策略一次性寫簡單的邏輯接口的一種具體操作示例,在具體的應用場景中,CPU也可以直接向心跳檢測裝置發(fā)送狀態(tài)正常的通知消息,相應的發(fā)送周期同樣小于或等于前述的心跳檢測周期,這同樣是上述對邏輯接口進行簡單寫操作的一種具體實例,這樣的變化并不會影響本發(fā)明的保護范圍。
[0118]步驟S503、心跳檢測裝置向主控板心跳檢測裝置發(fā)送心跳報文,并返回步驟S502。
[0119]步驟S504、心跳檢測裝置放棄向主控板心跳檢測裝置發(fā)送心跳報文,主控板因為在心跳檢測周期內沒有收到接口板發(fā)送的心跳檢測報文,確定該接口板的心跳定時器超時,對該板卡進行復位。
[0120]另一方面,本發(fā)明實施例中對于看門狗裝置的處理流程進行了一些修改,在其觸發(fā)板卡重啟時,會觸發(fā)心跳檢測裝置進入獨立心跳模式,以保證心跳報文的正常收發(fā),具體如圖6所示,為本發(fā)明實施例所提出的一種看門狗裝置的處理流程,具體包括以下步驟:
[0121]步驟S601、板卡初始化,使能看門狗裝置。
[0122]步驟S602、看門狗裝置判斷當前是否接收到CPU發(fā)送的計時清零消息。
[0123]如果判斷結果為是,則對當前的計時進行清零,并返回步驟S602 ;
[0124]如果判斷結果為否,則執(zhí)彳了步驟S603。
[0125]其中,所述接口板的CPU發(fā)送的計時清零消息,具體為所述接口板的CPU根據(jù)預設的清零策略所進行的一次性的邏輯接口寫操作,所述邏輯接口與所述接口板的故障檢測裝置相對應,所述預設的清零策略至少包括,所述邏輯接口寫操作的執(zhí)行周期小于或等于預設的故障檢測周期(即看門狗裝置中所設置的計時周期)。
[0126]具體的,板卡CPU可以在軟件任務切換間清零看門狗超時定時器。
[0127]步驟S603、看門狗裝置判斷當前的看門狗計時器是否超時。
[0128]如果判斷結果為否,則返回步驟S602 ;
[0129]如果判斷結果為是,則執(zhí)彳了步驟S604。
[0130]步驟S604、看門狗裝置指示心跳檢測裝置進入獨立心跳模式,自動進行心跳報文的發(fā)送。
[0131]步驟S605、看門狗裝置對本板卡進行重啟。
[0132]在重啟期間,心跳檢測裝置無需板卡CPU參與,自動發(fā)送板卡狀態(tài)正常心跳報文,保證主控板不會因為心跳檢測周期超時而觸發(fā)板卡的二次重啟。
[0133]步驟S606、板卡重啟完成后,CPU通知心跳檢測裝置恢復到CPU控制心跳模式。
[0134]基于上述說明,可以看出,本發(fā)明實施例所提出的技術方案需要分別在分布式網絡設備的主控板和接口板上進行部署,這樣的方案可以用獨立的邏輯芯片實現(xiàn),也可以作為獨立的邏輯單元集成在SOC CPU中,如圖7所示,為本發(fā)明實施例所提出的網絡結構示意圖。
[0135]進一步的,如圖8所示,為本發(fā)明實施例所提出的一種具體的實施場景中的心跳檢測裝置和看門狗裝置(故障檢測裝置)的結構示意圖。
[0136]其中,看門狗裝置81主要包括看門狗邏輯子模塊811、看門狗超時定時器812、看門狗復位邏輯子模塊813。
[0137]心跳檢測裝置82主要包括心跳邏輯控制子模塊821、心跳監(jiān)控邏輯子模塊822、CPU控制心跳邏輯子模塊823、獨立心跳邏輯子模塊824、心跳超時定時器825、心跳報文發(fā)送模塊826、心跳報文接收模塊827。
[0138]各模塊的具體說明如下:
[0139]看門狗邏輯子模塊811:負責接收本板CPU發(fā)出的看門狗使能、看門狗關閉和清看門狗命令。當看門狗邏輯子模塊811接收到CPU的看門狗使能命令,就開始通知看門狗超時定時器812開始計時;當看門狗邏輯子模塊811接收到CPU的清看門狗命令,就開始清O看門狗超時定時器812 ;當看門狗邏輯子模塊811接收到CPU的看門狗關閉命令,就通知清O看門狗超時定時器812停止計時。
[0140]看門狗超時定時器812:負責看門狗超時計時,默認設置一個看門狗超時時間??撮T狗超時定時器812超時后,會觸發(fā)看門狗復位邏輯子模塊813復位版本,同時會觸發(fā)心跳邏輯控制子模塊821,切換到獨立心跳模式。看門狗超時定時器812受看門狗邏輯子模塊811控制,可被看門狗邏輯子模塊811使能、關閉和清O。
[0141]看門狗復位邏輯子模塊813:被看門狗超時定時器812觸發(fā)后,會有效本板復位管腳,復位本板上的CPU和其它芯片。
[0142]心跳邏輯控制子模塊821:負責接收本板CPU發(fā)出的其它板卡心跳監(jiān)控使能命令和板卡狀態(tài)正常命令,還負責被看門狗超時定時器812觸發(fā)為獨立心跳模式。心跳監(jiān)控邏輯子模塊822收到本板CPU發(fā)出的其它板卡心跳監(jiān)控使能命令(分布式網絡設備中都是主控板CPU下發(fā)此命令),就會通知心跳監(jiān)控邏輯子模塊822開始監(jiān)控其它板卡的心跳超時;心跳監(jiān)控邏輯子模塊822收到本板CPU發(fā)出的板卡狀態(tài)正常命令,就會通知CPU控制心跳邏輯子模塊823,開始發(fā)送板卡正常的心跳報文,并通知獨立心跳邏輯子模塊824停止工作;心跳監(jiān)控邏輯子模塊822收到看門狗超時定時器812超時的觸發(fā)信號,就會通知獨立心跳邏輯子模塊824,由獨立心跳邏輯子模塊824負責連續(xù)發(fā)送板卡正常的心跳報文。
[0143]心跳監(jiān)控邏輯子模塊822:負責對分布式網絡設備中所有板卡的心跳報文解析和監(jiān)控,并通知所有板卡的心跳超時定時器825開始計數(shù)。如果心跳監(jiān)控邏輯子模塊822收到特定板卡的心跳報文,就會清O該板卡對應的心跳超時定時器825。
[0144]CPU控制心跳邏輯子模塊823:收到心跳邏輯控制子模塊821發(fā)出板卡狀態(tài)正常通知,就構造板卡狀態(tài)正常的心跳報文,并通過心跳報文發(fā)送模塊826發(fā)到板間心跳總線上。CPU控制心跳邏輯子模塊823是一次性工作,每收到一個板卡狀態(tài)正常通知,僅發(fā)送一個板卡狀態(tài)正常的心跳報文。
[0145]獨立心跳邏輯子模塊824:收到心跳邏輯控制子模塊821發(fā)出的通知后,構造板卡狀態(tài)正常的心跳報文,并通過心跳報文發(fā)送模塊826按照一定時間間隔(遠小于板卡心跳超時時間)連續(xù)發(fā)送。收到心跳邏輯控制子模塊821發(fā)出的停止工作通知后,獨立心跳邏輯子模塊824不再連續(xù)發(fā)送板卡狀態(tài)正常的心跳報文。
[0146]心跳超時定時器825:對應分布式網絡設備中每塊板卡都有一個的心跳超時定時器825,默認設置一個板卡心跳超時時間。接收到心跳監(jiān)控邏輯子模塊822發(fā)出的特定板卡的心跳超時定時器825使能命令后,特定板卡的心跳超時定時器825就開始計數(shù)。收到心跳監(jiān)控邏輯子模塊822發(fā)出的特定板卡的心跳超時定時器825清O命令后,特定板卡的心跳超時定時器825就會被清O。特定板卡的心跳超時定時器825超時后,就會主動通知本板的CPU,由本板CPU(分布式網絡設備是主控板CPU)復位特定板卡。
[0147]心跳報文發(fā)送模塊826:負責通過板間心跳總線(一般采用異步差分總線,傳輸速率高,管腳資源少,報文構造簡單)發(fā)出心跳報文。
[0148]心跳報文接收模塊827:負責通過板間心跳總線接收心跳報文。
[0149]需要指出的是,上述的兩個裝置也可以合并到一個物理實體中來實現(xiàn),其結構示意圖如圖9所示,這樣的變化并不會影響本發(fā)明的保護范圍,各模塊的功能與前述內容類似,不再重復說明。
[0150]與現(xiàn)有技術相比,本發(fā)明實施例所提出的技術方案具有以下優(yōu)點:
[0151]通過應用本發(fā)明實施例所提出的技術方案,把心跳報文的收發(fā)從板卡的CPU上獨立出來,并與其他故障檢測機制(例如:看門狗邏輯)相結合,板卡的CPU無需參與心跳報文的收發(fā)和處理,從而,在板卡因為其他故障檢測機制觸發(fā)重啟的過程中,仍可以繼續(xù)進行心跳報文的發(fā)送,避免因為心跳報文未能正常發(fā)送而導致板卡的二次重啟,基于這樣的處理,可以在不降低異常檢測時間的前提下,解決分布式網絡設備板卡異?;謴椭貑纱蔚膯栴},提高分布式網絡設備的可靠性和性能。
[0152]為了實現(xiàn)本發(fā)明的技術方案,本發(fā)明還提出了一種板卡,應用于包括多個板卡的網絡系統(tǒng)中,所述板卡被配置為主控板或接口板,其結構示意圖如圖10所示,各板卡包括CPUlO1、心跳檢測裝置102和故障檢測裝置103:
[0153]當所述板卡被設置為接口板時,
[0154]所述CPU101,用于當所述接口板啟動時,向所述心跳檢測裝置103發(fā)送進入CPU控制心跳模式的指示,并通過執(zhí)行預定操作觸發(fā)所述心跳檢測裝置103向所述主控板的心跳檢測裝置103發(fā)送心跳報文;
[0155]所述故障檢測裝置102,用于檢測所述板卡是否出現(xiàn)故障,并在確定出現(xiàn)故障需要對所述板卡進行重新啟動時,向所述心跳檢測裝置103發(fā)送進入獨立心跳模式的指示;
[0156]所述心跳檢測裝置103,用于在所述CPU控制心跳模式下,當檢測到所述CPUlOl完成了預定操作時,向所述主控板的心跳檢測裝置103發(fā)送心跳報文,或在獨立心跳模式下,按照預設的心跳檢測周期自動向所述主控板的心跳檢測裝置103發(fā)送心跳報文。
[0157]在具體的應用場景中,所述CPUlOl所執(zhí)行的預定操作,具體包括:
[0158]所述CPUlOl對預設的任務程序進行調度,其中,所述CPUlOl在正常工作的情況下,按照預設的調度策略對所述預設的任務程序進行調度,所述預設的調度策略至少包括,對所述預設的任務程序的調度周期小于或等于所述心跳檢測周期;或,
[0159]所述CPUlOl向所述心跳檢測裝置103接發(fā)送指示所述CPUlOl狀態(tài)正常的通知消息,其中,所述CPUlOl發(fā)送的指示所述CPU狀態(tài)正常的通知消息,具體為所述CPUlOl根據(jù)預設的通知策略所進行的一次性的邏輯接口寫操作,所述邏輯接口與所述心跳檢測裝置103相對應,所述預設的通知策略至少包括,所述邏輯接口寫操作的執(zhí)行周期小于或等于所述心跳檢測周期。
[0160]進一步的,
[0161]所述CPU101,還用于按照預設的故障檢測周期,向所述故障檢測裝置102發(fā)送計時清零消息,其中,所述計時清零消息,具體為所述CPUlOl根據(jù)預設的清零策略所進行的一次性的邏輯接口寫操作,所述邏輯接口與所述接口板的故障檢測裝置102相對應,所述預設的清零策略至少包括,所述邏輯接口寫操作的執(zhí)行周期小于或等于預設的故障檢測周期;
[0162]所述故障檢測裝置102,具體用于:
[0163]判斷在當前的故障檢測周期內是否接收到所述接口板的CPUlOl發(fā)送的計時清零消息;
[0164]如果接收到,則將當前的計時清零,并重新開始新的故障檢測周期的計時;
[0165]如果沒有接收到,則確定所述接口板需要重新啟動,觸發(fā)所述接口板進行重新啟動,并向所述心跳檢測裝置103發(fā)送進入獨立心跳模式的指示。
[0166]在具體的應用場景中,所述故障檢測裝置102,具體為看門狗裝置。
[0167]另一方面,當所述板卡被設置為主控板時,所述心跳檢測裝置103,還用于:
[0168]判斷在當前的心跳檢測周期內是否接收到所述接口板的心跳檢測裝置103所發(fā)送的心跳報文;
[0169]如果接收到,則將當前的計時清零,并重新開始新的心跳檢測周期的計時;
[0170]如果沒有接收到,則確定所述接口板需要重新啟動,觸發(fā)所述接口板進行重新啟動。
[0171]與現(xiàn)有技術相比,本發(fā)明實施例所提出的技術方案具有以下優(yōu)點:
[0172]通過應用本發(fā)明實施例所提出的技術方案,把心跳報文的收發(fā)從板卡的CPU上獨立出來,并與其他故障檢測機制(例如:看門狗邏輯)相結合,板卡的CPU無需參與心跳報文的收發(fā)和處理,從而,在板卡因為其他故障檢測機制觸發(fā)重啟的過程中,仍可以繼續(xù)進行心跳報文的發(fā)送,避免因為心跳報文未能正常發(fā)送而導致板卡的二次重啟,基于這樣的處理,可以在不降低異常檢測時間的前提下,解決分布式網絡設備板卡異?;謴椭貑纱蔚膯栴},提高分布式網絡設備的可靠性和性能。
[0173]通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到本發(fā)明可以通過硬件實現(xiàn),也可以借助軟件加必要的通用硬件平臺的方式來實現(xiàn)?;谶@樣的理解,本發(fā)明的技術方案可以以軟件產品的形式體現(xiàn)出來,該軟件產品可以存儲在一個非易失性存儲介質(可以是⑶-R0M,U盤,移動硬盤等)中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執(zhí)行本發(fā)明各個實施場景所述的方法。
[0174]本領域技術人員可以理解附圖只是一個優(yōu)選實施場景的示意圖,附圖中的模塊或流程并不一定是實施本發(fā)明所必須的。
[0175]本領域技術人員可以理解實施場景中的裝置中的模塊可以按照實施場景描述進行分布于實施場景的裝置中,也可以進行相應變化位于不同于本實施場景的一個或多個裝置中。上述實施場景的模塊可以合并為一個模塊,也可以進一步拆分成多個子模塊。
[0176]上述本發(fā)明序號僅僅為了描述,不代表實施場景的優(yōu)劣。
[0177]以上公開的僅為本發(fā)明的幾個具體實施場景,但是,本發(fā)明并非局限于此,任何本領域的技術人員能思之的變化都應落入本發(fā)明的保護范圍。
【權利要求】
1.一種設備異常檢測方法,應用于包括多個板卡的網絡系統(tǒng)中,所述板卡被配置為主控板或接口板,其特征在于,所述各板卡包括CPU、心跳檢測裝置和故障檢測裝置,所述方法包括: 當所述接口板啟動時,所述接口板的心跳檢測裝置接收所述接口板的CPU的指示進入CPU控制心跳模式; 在所述CPU控制心跳模式下,當所述接口板的心跳檢測裝置檢測到所述接口板的CPU完成了預定操作時,所述接口板的心跳檢測裝置向所述主控板的心跳檢測裝置發(fā)送心跳報文; 當所述接口板的故障檢測裝置判斷所述CPU發(fā)生故障時,所述接口板的心跳檢測裝置接收所述接口板的故障檢測裝置的指示進入獨立心跳模式; 在所述獨立心跳模式下,所述接口板的心跳檢測裝置按照預設的心跳檢測周期自動向所述主控板的心跳檢測裝置發(fā)送心跳報文。
2.如權利要求1所述的方法,其特征在于,所述接口板的心跳檢測裝置檢測到所述接口板的CPU完成了預定操作,具體為: 所述接口板的心跳檢測裝置檢測到所述接口板的CPU對預設的任務程序進行了調度,其中,所述接口板的CPU在正常工作的情況下,按照預設的調度策略對所述預設的任務程序進行調度,所述預設的調度策略至少包括,對所述預設的任務程序的調度周期小于或等于所述心跳檢測周期;或, 所述接口板的心跳 檢測裝置接收到所述接口板的CPU發(fā)送的指示所述CPU狀態(tài)正常的通知消息,其中,所述接口板的CPU發(fā)送的指示所述CPU狀態(tài)正常的通知消息,具體為所述接口板的CPU根據(jù)預設的通知策略所進行的一次性的邏輯接口寫操作,所述邏輯接口與所述接口板的心跳檢測裝置相對應,所述預設的通知策略至少包括,所述邏輯接口寫操作的執(zhí)行周期小于或等于所述心跳檢測周期。
3.如權利要求1所述的方法,其特征在于,所述接口板的故障檢測裝置判斷所述CPU發(fā)生故障,具體通過以下方式確定: 所述接口板的故障檢測裝置判斷在當前的故障檢測周期內是否接收到所述接口板的CPU發(fā)送的計時清零消息; 如果接收到,所述接口板的故障檢測裝置將當前的計時清零,并重新開始新的故障檢測周期的計時; 如果沒有接收到,所述接口板的故障檢測裝置確定所述接口板需要重新啟動,觸發(fā)所述接口板進行重新啟動,并向所述接口板的心跳檢測裝置發(fā)送進入獨立心跳模式的指示; 其中,所述接口板的CPU發(fā)送的計時清零消息,具體為所述接口板的CPU根據(jù)預設的清零策略所進行的一次性的邏輯接口寫操作,所述邏輯接口與所述接口板的故障檢測裝置相對應,所述預設的清零策略至少包括,所述邏輯接口寫操作的執(zhí)行周期小于或等于預設的故障檢測周期。
4.如權利要求3所述的方法,其特征在于,所述接口板的故障檢測裝置,具體為看門狗>j-U ρ?α裝直。
5.如權利要求1至4中任意一項所述的方法,其特征在于,還包括: 所述主控板的心跳檢測裝置判斷在當前的心跳檢測周期內是否接收到所述接口板的心跳檢測裝置所發(fā)送的心跳報文; 如果接收到,所述主控板的心跳檢測裝置將當前的計時清零,并重新開始新的心跳檢測周期的計時; 如果沒有接收到,所述主控板的心跳檢測裝置確定所述接口板需要重新啟動,所述主控板的CPU向所述接口板發(fā)送指示,觸發(fā)所述接口板進行重新啟動。
6.一種板卡,應用于包括多個板卡的網絡系統(tǒng)中,所述板卡被配置為主控板或接口板,其特征在于,所述各板卡包括CPU、心跳檢測裝置和故障檢測裝置: 當所述板卡被設置為接口板時, 所述CPU,用于當所述接口板啟動時,向所述心跳檢測裝置發(fā)送進入CPU控制心跳模式的指示,并通過執(zhí)行預定操作觸發(fā)所述心跳檢測裝置向所述主控板的心跳檢測裝置發(fā)送心跳報文; 所述故障檢測裝置,用于檢測所述板卡是否出現(xiàn)故障,并在確定出現(xiàn)故障需要對所述板卡進行重新啟動時,向所述心跳檢測裝置發(fā)送進入獨立心跳模式的指示; 所述心跳檢測裝置,用于在所述CPU控制心跳模式下,當檢測到所述CPU完成了預定操作時,向所述主控板的心跳檢測裝置發(fā)送心跳報文,或在獨立心跳模式下,按照預設的心跳檢測周期自動向所述主控板的心跳檢測裝置發(fā)送心跳報文。
7.如權利要求 6所述的板卡,其特征在于,所述CPU所執(zhí)行的預定操作,具體包括: 所述CPU對預設的任務程序進行調度,其中,所述CPU在正常工作的情況下,按照預設的調度策略對所述預設的任務程序進行調度,所述預設的調度策略至少包括,對所述預設的任務程序的調度周期小于或等于所述心跳檢測周期;或, 所述CPU向所述心跳檢測裝置接發(fā)送指示所述CPU狀態(tài)正常的通知消息,其中,所述(PU發(fā)送的指示所述CPU狀態(tài)正常的通知消息,具體為所述CPU根據(jù)預設的通知策略所進行的一次性的邏輯接口寫操作,所述邏輯接口與所述心跳檢測裝置相對應,所述預設的通知策略至少包括,所述邏輯接口寫操作的執(zhí)行周期小于或等于所述心跳檢測周期。
8.如權利要求6所述的板卡,其特征在于, 所述CPU,還用于按照預設的故障檢測周期,向所述故障檢測裝置發(fā)送計時清零消息,其中,所述計時清零消息,具體為所述CPU根據(jù)預設的清零策略所進行的一次性的邏輯接口寫操作,所述邏輯接口與所述接口板的故障檢測裝置相對應,所述預設的清零策略至少包括,所述邏輯接口寫操作的執(zhí)行周期小于或等于預設的故障檢測周期; 所述故障檢測裝置,具體用于: 判斷在當前的故障檢測周期內是否接收到所述接口板的CPU發(fā)送的計時清零消息; 如果接收到,則將當前的計時清零,并重新開始新的故障檢測周期的計時; 如果沒有接收到,則確定所述接口板需要重新啟動,觸發(fā)所述接口板進行重新啟動,并向所述心跳檢測裝置發(fā)送進入獨立心跳模式的指示。
9.如權利要求8所述的板卡,其特征在于,所述故障檢測裝置,具體為看門狗裝置。
10.如權利要求6所述的板卡,其特征在于,當所述板卡被設置為主控板時,所述心跳檢測裝置,還用于: 判斷在當前的心跳檢測周期內是否接收到所述接口板的心跳檢測裝置所發(fā)送的心跳報文;如果接收到,則將當前的計時清零,并重新開始新的心跳檢測周期的計時; 如果沒有接收到,則確定所述接口板需要重新啟動,通知所述主控板的CPU向所述接口板發(fā)送指示,觸發(fā)所 述接口板進行重新啟動。
【文檔編號】H04L29/08GK104079454SQ201410330525
【公開日】2014年10月1日 申請日期:2014年7月11日 優(yōu)先權日:2014年7月11日
【發(fā)明者】趙志宇, 秦占明 申請人:杭州華三通信技術有限公司