由于不了解主設(shè)備和備用設(shè)備的狀態(tài)信息而導(dǎo)致的出現(xiàn)多個主設(shè)備的技術(shù)問題。
[0054]具體的,如圖2所示,步驟S1I包括:
[0055]步驟SlOll:分別向主設(shè)備和備用設(shè)備發(fā)送用于查詢狀態(tài)信息的主設(shè)備組播報文和備用設(shè)備組播報文;
[0056]需要說明的是,主設(shè)備組播報文和備用設(shè)備組播報文是周期性向所述主設(shè)備和備用設(shè)備發(fā)送的,以便及時發(fā)現(xiàn)主設(shè)備和備用設(shè)備的狀態(tài)信息變化。
[0057]步驟S1012:接收所述主設(shè)備和備用設(shè)備發(fā)來的包含狀態(tài)信息的主設(shè)備單播報文和備用設(shè)備單播報文;
[0058]這里,主設(shè)備和備用設(shè)備分別接收到主設(shè)備組播報文和備用設(shè)備組播報文后,將各自的工作模式信息、在虛擬路由器中的優(yōu)先級和IP地址信息等信息,分別放入主設(shè)備單播報文和備用設(shè)備單播報文中,并分別發(fā)送給所述主設(shè)備和備用設(shè)備。
[0059]步驟S1013:提取所述備用設(shè)備單播報文中的設(shè)備優(yōu)先級信息,并按照優(yōu)先級由高到低的順序排序;將優(yōu)先級最高的所述備用設(shè)備作為所述主備用設(shè)備。
[0060]其中,主備用設(shè)備用于在主設(shè)備發(fā)生故障需要切換其他備用設(shè)備時使用。在主設(shè)備發(fā)生故障前確定主備用設(shè)備,能夠在主設(shè)備出現(xiàn)故障時及時由主備用設(shè)備替換主設(shè)備,大大縮短了故障的持續(xù)時間。
[0061]監(jiān)測虛擬路由器的主設(shè)備和備用設(shè)備的狀態(tài)信息是一個周期性循環(huán)查詢的過程,在此過程中,還可能存在主備用設(shè)備出現(xiàn)故障的情況。因此,該方法還可以包括:
[0062]如果在5到10個VRRP心態(tài)周期(或其他設(shè)定時間)內(nèi)沒有收到所述主備用設(shè)備發(fā)來的備用設(shè)備單播報文,則按照優(yōu)先級從高到低的順序從其它所述備用設(shè)備中重新選舉主備用設(shè)備。
[0063]其中,現(xiàn)有的主備用設(shè)備切換為普通的備用設(shè)備;當切換前的主備用設(shè)備恢復(fù)正常通信后,再將切換前的主備用設(shè)備重新作為當前的主備用設(shè)備。
[0064]由上述描述可知,步驟SlOl能夠查詢主設(shè)備和備用設(shè)備的數(shù)量和工作模式,防止出現(xiàn)多主設(shè)備的情況發(fā)生。
[0065]如圖3所示,步驟S102包括:
[0066]步驟S1021:當所述備用設(shè)備在第一設(shè)定時間內(nèi)沒有收到所述主設(shè)備發(fā)送的心跳報文時,接收所述備用設(shè)備發(fā)來的所述第一切換請求;
[0067]這里,當所述備用設(shè)備在第一設(shè)定時間內(nèi)沒有收到所述主設(shè)備發(fā)送的心跳報文時,說明主設(shè)備與備用設(shè)備之間出現(xiàn)了通信故障,或主設(shè)備出現(xiàn)了故障。此時,備用設(shè)備需要主動發(fā)送第一切換請求,以盡量縮短可能的故障時間。第一設(shè)定時間通常選為3個心跳報文的發(fā)送周期。
[0068]步驟S1022:根據(jù)所述第一切換請求向所述主設(shè)備發(fā)送用于查詢所述主設(shè)備的當前狀態(tài)信息的第一查詢指令;
[0069]這里,當接收到第一切換請求時,為了盡量避免重大故障,首先要查詢主設(shè)備的狀態(tài)信息;根據(jù)所述第一切換請求向所述主設(shè)備發(fā)送用于查詢所述主設(shè)備的當前狀態(tài)信息的第一查詢指令;并接收所述主設(shè)備發(fā)來的包含所述主設(shè)備當前狀態(tài)信息的第一狀態(tài)信息。
[0070]此外,當在3個VRRP心態(tài)周期(或其他設(shè)定時間)內(nèi)沒有接收到所述主設(shè)備發(fā)來的包含所述主設(shè)備當前狀態(tài)信息的第一狀態(tài)信息時,且所述備用設(shè)備在第一設(shè)定時間內(nèi)沒有收到所述主設(shè)備發(fā)送的心跳報文時,默認主設(shè)備出現(xiàn)故障,則直接將所述主備用設(shè)備切換為當前的主設(shè)備;為了防止切換后的當前的主設(shè)備也發(fā)生故障,還需要再從當前的備用設(shè)備中選出新的主備用設(shè)備。
[0071]步驟S1023:接收所述主設(shè)備發(fā)來的包含所述主設(shè)備當前狀態(tài)信息的第一狀態(tài)信息;
[0072]步驟S1024:若所述第一狀態(tài)信息顯示所述主設(shè)備工作正常,則向發(fā)出所述第一切換請求的備用設(shè)備發(fā)出拒絕切換指令;否則,將所述主備用設(shè)備切換為當前的主設(shè)備;并從當前的備用設(shè)備中選出當前的主備用設(shè)備;
[0073]本步驟中,若能夠收到主設(shè)備發(fā)來的所述第一狀態(tài)信息,并且所述第一狀態(tài)信息顯示所述主設(shè)備工作正常,說明主設(shè)備與發(fā)出所述第一切換請求的備用設(shè)備之間的通信線路沒有出現(xiàn)故障;此時,不需要對主設(shè)備進行切換,則向發(fā)出所述第一切換請求的備用設(shè)備發(fā)出拒絕切換指令;這里,發(fā)出所述第一切換請求的備用設(shè)備可以是主備用設(shè)備,也可以是其它備用設(shè)備。
[0074]若所述第一狀態(tài)信息顯示所述主設(shè)備工作異常,則將所述主備用設(shè)備切換為當前的主設(shè)備;并從當前的備用設(shè)備中選出當前的主備用設(shè)備。工作異常的主設(shè)備則由主設(shè)備狀態(tài)切換為備用設(shè)備狀態(tài),并按照自身的優(yōu)先級在備用設(shè)備中排序。
[0075]通常,切換請求由備用設(shè)備提出,如果切換請求由主設(shè)備提出時,該方法還包括:
[0076]步驟S1025:接收所述主設(shè)備發(fā)來的第二切換請求;
[0077]這里,當主設(shè)備檢測到自身出現(xiàn)通信故障或其他故障時,主動提出第二切換請求;
[0078]步驟S1026:根據(jù)所述第二切換請求將所述主備用設(shè)備切換為當前主設(shè)備;
[0079]本步驟中,為了防止當前的主設(shè)備也發(fā)生故障,還需要從當前的備用設(shè)備中選出當前的主備用設(shè)備。
[0080]本實施例方法無需網(wǎng)絡(luò)維護人員對網(wǎng)絡(luò)故障逐個排查,能夠自動在最短的時間內(nèi)排除網(wǎng)絡(luò)故障。如有需要,可對主設(shè)備的備用設(shè)備各自的狀態(tài)信息進行統(tǒng)計,能夠精確了解到主設(shè)備的備用設(shè)備的工作情況,便于網(wǎng)絡(luò)維護人員的網(wǎng)絡(luò)設(shè)備維護。
[0081]本實施例中發(fā)生設(shè)備切換后,還可以通過發(fā)送相應(yīng)指令告知上層管理單元或通過聲音信號或光信號告知網(wǎng)絡(luò)維護人員等。
[0082]實施例2
[0083]本實施例是在實施例1提出的方法的基礎(chǔ)上提出的一種虛擬路由器監(jiān)控裝置,如圖4所示,所述裝置包括:
[0084]監(jiān)控單元201,用于監(jiān)測虛擬路由器的主設(shè)備和備用設(shè)備狀態(tài)信息;
[0085]狀態(tài)信息包括主設(shè)備和備用設(shè)備的所處的工作模式信息(如作為主設(shè)備使用還是作為備用設(shè)備使用)、主設(shè)備和備用設(shè)備在虛擬路由器中的優(yōu)先級和主設(shè)備和備用設(shè)備的IP地址等。
[0086]切換單元202,用于根據(jù)所述狀態(tài)信息控制所述主設(shè)備和備用設(shè)備之間的相互切換。
[0087]根據(jù)狀態(tài)信息獲得主設(shè)備和備用設(shè)備的工作模式信息,通過工作模式信息能夠了解當前虛擬路由器中主設(shè)備和備用設(shè)備的數(shù)量及切換情況。
[0088]具體的,如圖5所示,所述監(jiān)控單元201包括:
[0089]信息查詢模塊2011,用于分別向所述主設(shè)備和備用設(shè)備發(fā)送用于查詢狀態(tài)信息的主設(shè)備組播報文和備用設(shè)備組播報文;需要說明的是,主設(shè)備組播報文和備用設(shè)備組播報文是周期性向所述主設(shè)備和備用設(shè)備發(fā)送的,以便及時發(fā)現(xiàn)主設(shè)備和備用設(shè)備的狀態(tài)信息變化。
[0090]信息接收模塊2012,用于接收所述主設(shè)備和備用設(shè)備發(fā)來的包含狀態(tài)信息的主設(shè)備單播報文和備用設(shè)備單播報文;主設(shè)備和備用設(shè)備分別接收到主設(shè)備組播報文和備用設(shè)備組播報文后,將各自的工作模式信息、在虛擬路由器中的優(yōu)先級和IP地址信息等信息分別放入主設(shè)備單播報文和備用設(shè)備單播報文中,并發(fā)送給所述主設(shè)備和備用設(shè)備。
[0091]主備用設(shè)備確定模塊2013,用于提取所述備用設(shè)備單播報文中的設(shè)備優(yōu)先級信息并按照優(yōu)先級由高到低的順序排序;將優(yōu)先級最高的所述備用設(shè)備作為所述主備用設(shè)備。主備用設(shè)備用于在主設(shè)備發(fā)生故障需要切換其他備用設(shè)備時使用。在主設(shè)備發(fā)生故障前確定主備用設(shè)備,能夠在主設(shè)備出現(xiàn)故障時及時通過主備用設(shè)備替換主設(shè)備,大大縮短了故障的持續(xù)時間。工作異常的主設(shè)備則由主設(shè)備狀態(tài)切換為備用設(shè)備狀態(tài),并按照自身的優(yōu)先級在備用設(shè)備中排序。
[0092]監(jiān)測虛擬路由器的主設(shè)備和備用設(shè)備狀態(tài)信息是一個周期性循環(huán)查詢的過程,在此過程中還可能存在主備用設(shè)備出現(xiàn)故障的情況。因此,所述監(jiān)控單元201還包括:
[0093]主備用設(shè)備更新模塊,用于在5到10個VRRP心態(tài)周期(或其他設(shè)定時間)內(nèi)沒有收到所述主備用設(shè)備發(fā)來的備用設(shè)備單播報文時,按照優(yōu)先級從高到低的順序從其他所述備用設(shè)備中重新選舉主備用設(shè)備。
[0094]如圖6所示,所述切換單元202包括:
[0095]第一切換請求接收模塊2021,用于在所述備用設(shè)備在第一設(shè)定時間內(nèi)沒有收到所述主設(shè)備發(fā)送的心跳報文時,接收所述備用設(shè)備發(fā)來的所述第一切換請求;
[0096]此時,主設(shè)備與備用設(shè)備之間出現(xiàn)了通信故障,或主設(shè)備出現(xiàn)了故障。此時,備用設(shè)備需要主動發(fā)送第一切換請求,以盡量縮短可能的故障時間。第一設(shè)定時間通常選為3個心跳報文的發(fā)送周期。
[0097]查詢指令發(fā)送模塊2022,用于根據(jù)所述第一切換請求向所述主設(shè)備發(fā)送用于查詢所述主設(shè)備的當前狀態(tài)信息的第一查詢指令;
[0098]狀態(tài)信息接收模塊2023,用于接收所述主設(shè)備發(fā)來的包含所述主設(shè)備當前狀態(tài)信息的第一狀態(tài)信息;
[0099]主備用設(shè)備切換模組,用于在3個VRRP心態(tài)