專(zhuān)利名稱(chēng):基于狀態(tài)機(jī)的snmp網(wǎng)絡(luò)設(shè)備識(shí)別及數(shù)據(jù)獲取方法
技術(shù)領(lǐng)域:
本發(fā)明涉及應(yīng)用于基于SNMP (Simple Network Management Protocol,簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議)協(xié)議的有源IP網(wǎng)絡(luò)設(shè)備的數(shù)據(jù)獲取方法。是一種可以靈活配置,應(yīng)對(duì)不同設(shè)備代理的識(shí)別與獲取相關(guān)數(shù)據(jù)的方法。
背景技術(shù):
SNMP是目前TCP/IP網(wǎng)絡(luò)中應(yīng)用最為廣泛的網(wǎng)絡(luò)管理協(xié)議,可以應(yīng)用在嵌入式系統(tǒng)中,用于管理端與代理之間能夠正確的交換管理信息的協(xié)議。利用SNMP協(xié)議,一個(gè)管理端可以遠(yuǎn)程管理所有支持這種協(xié)議的網(wǎng)絡(luò)設(shè)備,包括監(jiān)視網(wǎng)絡(luò)狀態(tài)、修改網(wǎng)絡(luò)設(shè)備配置、接收網(wǎng)絡(luò)事件告警等。SNMP協(xié)議構(gòu)建在UDP (User Datagram Protocol,用戶(hù)數(shù)據(jù)報(bào)協(xié)議)層之上,是一種高層的通信協(xié)議。參照?qǐng)D1所示,該圖為SNMP的工作模式示意圖,SNMP協(xié)議采用一種管理端/代理模式。對(duì)管理端來(lái)說(shuō),提供一個(gè)統(tǒng)一的網(wǎng)管接口,無(wú)論代理的數(shù)量與種類(lèi),只需要和代理交互就可以獲得所有的代理數(shù)據(jù)。所有代理的數(shù)據(jù),以O(shè)ID (OBJECT IDENTIFIER,對(duì)象標(biāo)識(shí)) 的方式存儲(chǔ)在代理端。而這些OID被記錄在相應(yīng)的MIB (Management Information Base, 管理信息庫(kù))文件中,描述了該數(shù)據(jù)OID詳細(xì)信息,包括位置、類(lèi)型、范圍、允許的操作等等。 管理端通過(guò)MIB文件就可以清楚的了解到代理的OID信息,并獲取相關(guān)數(shù)據(jù)。SNMP協(xié)議擁有多種操作方式,包括GET、GET-NEXT、GET-BULK等,通過(guò)不同指令與 0ID,可以獲取一個(gè)或多個(gè)該OID或者下一個(gè)OID的數(shù)據(jù)。同時(shí)SNMP協(xié)議擁有Community (社團(tuán)串)的概念,一個(gè)代理一般擁有兩個(gè)Community,標(biāo)識(shí)不同的操作權(quán)限,只讀權(quán)限與讀寫(xiě)權(quán)限。只有在命令中包含相同Community的管理端才具有相關(guān)權(quán)限對(duì)該代理進(jìn)行讀與寫(xiě)操作。目前,大量基于SNMP協(xié)議的設(shè)備越來(lái)越多的被應(yīng)用,對(duì)于該類(lèi)設(shè)備的遠(yuǎn)程實(shí)時(shí)管理就變得非常重要。但由于廠商的不同,各設(shè)備代理之間的社團(tuán)串、MIB以及數(shù)據(jù)的獲取方式不同,導(dǎo)致沒(méi)有一種通用的方法很好的進(jìn)行設(shè)備的識(shí)別以及數(shù)據(jù)獲取。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種基于狀態(tài)機(jī)的SNMP網(wǎng)絡(luò)設(shè)備代理識(shí)別以及數(shù)據(jù)獲取方法,克服各設(shè)備之間的社團(tuán)串、MIB以及數(shù)據(jù)獲取的不同,降低系統(tǒng)實(shí)現(xiàn)與維護(hù)的復(fù)雜性,提高系統(tǒng)的靈活性與代理的兼容性。為了解決上述技術(shù)問(wèn)題,本發(fā)明采用下述技術(shù)方案
一種基于狀態(tài)機(jī)的SNMP網(wǎng)絡(luò)設(shè)備代理識(shí)別及數(shù)據(jù)獲取方法,用于管理端向各種代理發(fā)送不同的命令獲取其中的數(shù)據(jù)記錄,所述的方法包括以下步驟
(1)管理端將文件系統(tǒng)中的配置文件加載并生成狀態(tài)集;
(2)管理端將輸入的IP地址的現(xiàn)在狀態(tài)置為起始狀態(tài);
(3)管理端通過(guò)狀態(tài)集加載現(xiàn)在狀態(tài)所對(duì)應(yīng)的MIB數(shù)據(jù);(4)管理端通過(guò)狀態(tài)集加載變遷條件,獲取發(fā)送命令的類(lèi)型、社團(tuán)以及0ID,并發(fā)送命
令;
(5)代理獲取命令,并返回相應(yīng)的數(shù)據(jù)信息;
(6)管理端獲取命令返回包,通過(guò)MIB將數(shù)據(jù)進(jìn)行翻譯,并通過(guò)對(duì)比變遷條件,若滿足遷移條件,則將現(xiàn)在狀態(tài)遷移為相對(duì)應(yīng)的次態(tài);
(7)重復(fù)步驟3,直至現(xiàn)在狀態(tài)置為結(jié)束狀態(tài)。進(jìn)一步,步驟(6)中的次態(tài)同現(xiàn)在狀態(tài)相同,即是狀態(tài)集中的一種狀態(tài),其中包含該設(shè)備的種類(lèi)、所對(duì)應(yīng)的社團(tuán)串、MIB文件、遷移條件所需要的詢(xún)問(wèn)的0ID、遷移條件所需要的詢(xún)問(wèn)命令種類(lèi)、符合遷移條件則遷移的次態(tài)等信息。從上述方案中的方法和系統(tǒng)中可以看出,由于本發(fā)明的方法可以有效的將不同設(shè)備代理所包含的大量不同的社團(tuán)串、MIB以及數(shù)據(jù)獲取的不同,可以有效地避免管理不同設(shè)備時(shí)產(chǎn)生的差異對(duì)系統(tǒng)帶來(lái)的復(fù)雜度,將所有相關(guān)信息集中在配置文件中,系統(tǒng)可以使用一種統(tǒng)一的方法進(jìn)行設(shè)備的識(shí)別,降低了系統(tǒng)實(shí)現(xiàn)與維護(hù)的復(fù)雜性,提高了系統(tǒng)的靈活性與代理的兼容性。
圖1為SNMP的模式示意圖; 圖2為本發(fā)明的方法流程圖3為實(shí)施例的狀態(tài)機(jī)圖。
具體實(shí)施例方式本發(fā)明通過(guò)引入狀態(tài)機(jī),對(duì)各類(lèi)不同的SNMP設(shè)備代理進(jìn)行識(shí)別與數(shù)據(jù)獲取,從而進(jìn)行設(shè)備的管理。下面結(jié)合附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行詳細(xì)說(shuō)明。實(shí)施例一參見(jiàn)圖2,本基于狀態(tài)機(jī)的SNMP網(wǎng)絡(luò)設(shè)備代理識(shí)別及數(shù)據(jù)獲取方法,用于管理端向各種代理發(fā)送不同的命令獲取其中的數(shù)據(jù)記錄,所述的方法包括以下步驟
(1)管理端將文件系統(tǒng)中的配置文件加載并生成狀態(tài)集;
(2)管理端將輸入的IP地址的現(xiàn)在狀態(tài)置為起始狀態(tài);
(3)管理端通過(guò)狀態(tài)集加載現(xiàn)在狀態(tài)所對(duì)應(yīng)的MIB數(shù)據(jù);
(4)管理端通過(guò)狀態(tài)集加載變遷條件,獲取發(fā)送命令的類(lèi)型、社團(tuán)以及0ID,并發(fā)送命
令;
(5)代理獲取命令,并返回相應(yīng)的數(shù)據(jù)信息;
(6)管理端獲取命令返回包,通過(guò)MIB將數(shù)據(jù)進(jìn)行翻譯,并通過(guò)對(duì)比變遷條件,若滿足遷移條件,則將現(xiàn)在狀態(tài)遷移為相對(duì)應(yīng)的次態(tài);
(7)重復(fù)步驟3,直至現(xiàn)在狀態(tài)置為結(jié)束狀態(tài)。進(jìn)一步,步驟(6)中的次態(tài)同現(xiàn)在狀態(tài)相同,即是狀態(tài)集中的一種狀態(tài),其中包含該設(shè)備的種類(lèi)、所對(duì)應(yīng)的社團(tuán)串、MIB文件、遷移條件所需要的詢(xún)問(wèn)的0ID、遷移條件所需要的詢(xún)問(wèn)命令種類(lèi)、符合遷移條件則遷移的次態(tài)等信息。實(shí)施例二 參照?qǐng)D2所示,為本實(shí)例的方法流程圖,所述方法包括以下步驟。該實(shí)
4施例所管理的設(shè)備為一種光放大器??勺R(shí)別該設(shè)備類(lèi)型、獲取該設(shè)備數(shù)據(jù)。步驟1 管理文件加載相關(guān)配置文件,生成狀態(tài)集。狀態(tài)集包含目前設(shè)備的種類(lèi)、 社團(tuán)串、MIB、變遷條件的信息,實(shí)施例中的狀態(tài)集如表1所示。表權(quán)利要求
1. 一種基于狀態(tài)機(jī)的SNMP網(wǎng)絡(luò)設(shè)備代理識(shí)別及數(shù)據(jù)獲取方法,用于管理端向各種代理發(fā)送不同的命令獲取其中的數(shù)據(jù)記錄,所述的方法包括以下步驟 管理端將文件系統(tǒng)中的配置文件加載并生成狀態(tài)集; 管理端將輸入的IP地址的現(xiàn)在狀態(tài)置為起始狀態(tài); 管理端通過(guò)狀態(tài)集加載現(xiàn)在狀態(tài)所對(duì)應(yīng)的MIB數(shù)據(jù);管理端通過(guò)狀態(tài)集加載變遷條件,獲取發(fā)送命令的類(lèi)型、社團(tuán)以及0ID,并發(fā)送命令; 代理獲取命令,并返回相應(yīng)的數(shù)據(jù)信息;管理端獲取命令返回包,通過(guò)MIB將數(shù)據(jù)進(jìn)行翻譯,并通過(guò)對(duì)比變遷條件,若滿足遷移條件,則將現(xiàn)在狀態(tài)遷移為相對(duì)應(yīng)的次態(tài); 重復(fù)步驟3,直至現(xiàn)在狀態(tài)置為結(jié)束狀態(tài);進(jìn)一步,步驟(6)中的次態(tài)同現(xiàn)在狀態(tài)相同,即是狀態(tài)集中的一種狀態(tài),其中包含該設(shè)備的種類(lèi)、所對(duì)應(yīng)的社團(tuán)串、MIB文件、遷移條件所需要的詢(xún)問(wèn)的0ID、遷移條件所需要的詢(xún)問(wèn)命令種類(lèi)、符合遷移條件則遷移的次態(tài)等信息。
全文摘要
本發(fā)明涉及一種基于狀態(tài)機(jī)的SNMP網(wǎng)絡(luò)代理設(shè)備識(shí)別及數(shù)據(jù)獲取方法。本方法用于相關(guān)網(wǎng)絡(luò)設(shè)備的管理軟件,進(jìn)行設(shè)備信息的詢(xún)問(wèn)管理,僅通過(guò)配置文件,可以靈活配置各種不同設(shè)備管理過(guò)程中的SNMP社團(tuán)串、MIB信息庫(kù)、設(shè)備識(shí)別流程、設(shè)備管理流程等相關(guān)信息,進(jìn)行設(shè)備代理的識(shí)別以及數(shù)據(jù)獲取。從而降低系統(tǒng)實(shí)現(xiàn)與維護(hù)的復(fù)雜性,提高系統(tǒng)的靈活性與代理的兼容性。
文檔編號(hào)H04L12/24GK102387031SQ20111025612
公開(kāi)日2012年3月21日 申請(qǐng)日期2011年9月1日 優(yōu)先權(quán)日2011年9月1日
發(fā)明者尹迪, 李迎春, 楊健, 楊威, 蘇德祥, 陳健 申請(qǐng)人:上海凌云天博光電科技有限公司, 上海大學(xué)