專利名稱:一種基于snmp協(xié)議進行網絡管理的方法和系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及網絡通信技術領域,尤其涉及一種基于SNMP協(xié)議進行網絡管理的方法和系統(tǒng)。
背景技術:
簡單網絡管理協(xié)議SNMP(Simple Network Management Protocol)以其簡潔高效的特點,被廣泛應用于計算機網絡的管理上。SNMP網絡管理的框架如圖1所示,在SNMP網絡設備管理系統(tǒng)中,SNMP Manager(管理器)協(xié)助網管完成管理整個網絡的工作。SNMP Agent(管理代理)是一種特殊的軟件或固件,包含了一個特定設備及該設備所處環(huán)境的信息。當一個SNMP Agent被安裝到一個設備上時,這個設備就被列為“被管理的”。SNMP Agent可以獲得所駐留設備的運轉狀態(tài)、設備特性和系統(tǒng)配置等相關信息。它就像是每個被管理設備的經紀人,完成SNMP Manager布置的信息采集任務。
SNMP Manager和運行在被管設備上的SNMP Agent之間是通過標準的SNMP協(xié)議來進行通信的,網絡管理的流程如下所述(1)SNMP Manager根據(jù)操作請求,構造對應的SNMP報文發(fā)送給SNMPAgent;(2)SNMP Agent解析SNMP Manager發(fā)送的SNMP報文并根據(jù)報文的內容讓設備執(zhí)行相關的操作,然后SNMP Agent構造SNMP響應報文發(fā)送給SNMP Manager;(3)SNMP Manager解析結果后顯示操作請求的結果。
當設備發(fā)生特殊的事件時,設備主動產生一個告警,并由SNMP Agent發(fā)送給SNMP Manager。
SNMP的使用極為廣泛,如ATCA(Advanced Telecom ComputerArchitecture先進電信運算架構)機框中功能單元的管理。隨著電信運營商的轉型,IT(Information Technology信息技術)、CT(Communication Technology通信技術)融合已經成為大勢所趨。在現(xiàn)有的ICT(Information CommunicationTechnology信息與通信技術)融合方案中,多個設備集成在一個機框中,不同設備完成不同的業(yè)務。現(xiàn)有的標準如高級電信運算架構(ATCA),這種結構中,一個機框中的一個或多個單板,包括單板上承載的應用組成一個獨立的功能單元。
如圖2所示為使用SNMP協(xié)議進行傳統(tǒng)機框的管理模式,其中每一個功能單元是一個被管設備,其上運行一個SNMP Agent,需使用一個管理IP地址(公有IP地址),則當功能單元很多時,就需要使用多個管理IP地址,這樣不僅會消耗大量的公有IP地址,而且不支持統(tǒng)一的SNMP用戶配置,一個用戶要在多個設備上擁有權限,需要在多個設備上分別進行配置。
發(fā)明內容
本發(fā)明的目的在于提供一種基于SNMP協(xié)議進行網絡管理的方法和系統(tǒng),旨在于對網絡中的設備進行單IP的統(tǒng)一高效的管理。
本發(fā)明的技術方案包括一種基于SNMP協(xié)議進行網絡管理的方法,包括SNMP代理根據(jù)SNMP報文中的引擎ID或團體名,對該SNMP報文進行處理和轉發(fā),完成網管對功能單元的統(tǒng)一管理。
SNMP代理根據(jù)SNMP報文中的引擎ID或團體名查找到對應的功能單元的IP地址,并修改所述的報文源地址和目的地址,將其轉發(fā)到對應的功能單元。
引擎ID與功能單元的實際引擎ID相等,SNMP代理中保存有功能單元的實際引擎ID、IP地址和版本號的映射。
引擎ID與功能單元的虛擬引擎ID相等,SNMP代理中保存有功能單元的虛擬引擎ID、實際引擎ID、IP地址和版本號的映射。
所述的網管對功能單元的統(tǒng)一管理還包括繪制SNMP代理的設備視圖、提供進入每個功能單元自身配套的SNMP網管系統(tǒng)的方式和統(tǒng)一的SNMP用戶配置。
提供統(tǒng)一的SNMP用戶配置包括提供統(tǒng)一的視圖配置、提供統(tǒng)一的組配置和/或提供統(tǒng)一的用戶配置。
SNMP代理根據(jù)SNMP報文中的用戶名確定所述的報文是否加密,若加密,則用加密密鑰對所述的報文進行解密。
SNMP代理根據(jù)功能單元和SNMP代理,以及SNMP代理和網管之間的SNMP協(xié)議版本修改所述的SNMP報文。
一種基于SNMP協(xié)議進行網絡管理的系統(tǒng),包括功能單元和網管,所述的網管通過SNMP協(xié)議對所述的功能單元進行管理,還包括SNMP代理,所述的SNMP代理根據(jù)SNMP報文中的引擎ID或團體名,對該SNMP報文進行處理和轉發(fā),完成網管對功能單元的統(tǒng)一管理。
所述的SNMP代理包括映射表,保存功能單元的引擎ID或團體名、IP地址和版本號的映射;報文接收模塊,從網管或功能單元接收SNMP報文,并獲取所述報文中的用戶名、引擎ID或團體名;報文修改模塊,根據(jù)所述報文中的引擎ID或團體名和所述的映射表中的信息修改所述的報文;報文發(fā)送模塊,將修改后的報文發(fā)送到對應的功能單元或網管。
本發(fā)明的有益效果是SNMP代理為ATCA機框中的各個功能單元提供統(tǒng)一的管理IP,可以屏蔽ATCA機框中各個功能單元的管理IP地址,如果ATCA機框內部使用私有IP地址,則可以節(jié)省很多公有IP地址;通過為snmpEngineID映射虛擬snmpEngineID,避免各個功能單元snmpEngineID重復的問題;對于ATCA機框中的SNMP V1、SNMP V2c的功能單元,通過SNMP代理將SNMPV1、SNMP V2c報文轉換成SNMP V3的報文,從而實現(xiàn)對SNMP V1、SNMP V2c功能單元的安全管理;支持對ACTA機框的網管用戶的統(tǒng)一管理,一個SNMP網管用戶的權限范圍可以是ATCA機框中的一個或者多個功能單元。
圖1是SNMP的網絡管理模型;圖2是傳統(tǒng)機框的管理模式;圖3是本發(fā)明的管理方式的示意圖;圖4是SNMP V3的報文格式;圖5是本發(fā)明的機框管理的示意圖;圖6是顯示在網管端的設備視圖;圖7是每個功能單元的SNMP網管示意圖。
圖8是本發(fā)明實施例的視圖配置示意圖。
圖9是本發(fā)明實施例的組配置示意圖。
圖10是本發(fā)明實施例的用戶配置示意圖。
具體實施例方式
為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
如圖3所示,本發(fā)明在網管和功能單元之間增加一SNMP代理,SNMP代理配置公有IP地址和私有IP地址,功能單元配置私有IP地址, SNMP代理根據(jù)SNMP報文中的引擎ID或團體名,對該SNMP報文進行處理和轉發(fā),完成網管對功能單元的統(tǒng)一管理。
第一實施例本發(fā)明提供一種基于SNMP協(xié)議進行網絡管理的方法,第一實施例的實現(xiàn)流程如下S11、網管向SNMP代理發(fā)送標準格式的SNMP報文,如圖4所示,為SNMPV3的報文格式,其中的引擎ID(contextEngineID)與該報文要管理的功能單元的實際引擎ID(snmpEngineID)相等;S12、SNMP代理根據(jù)所述的引擎ID,對所述的報文進行處理并轉發(fā)給功能單元,該步驟具體包括S121、SNMP代理接收該報文,并從報文中獲取引擎ID;S122、SNMP代理根據(jù)獲取的引擎ID查找到對應的功能單元的IP地址,SNMP代理中保留有功能單元的引擎ID和IP地址的映射,所以根據(jù)報文中的引擎ID(和功能單元的引擎ID相等),就可找到對應的功能單元的IP地址;S123、SNMP代理將報文的源IP地址改為SNMP代理的IP地址,目的IP地址改為該功能單元的IP地址,并轉發(fā)給該功能單元;S13、功能單元將SNMP響應報文發(fā)給SNMP代理;S14、SNMP代理將響應報文的源IP地址改為SNMP代理的IP地址,目的IP地址改為網管的IP地址,并轉發(fā)給網管。
對于設備發(fā)生特殊的事件時,設備主動產生的告警(SNMP Trap)報文的處理過程同上步驟S14,在此不再贅述。
第二實施例在本發(fā)明的第二實施例中,SNMP代理為各個功能單元分配一個虛擬引擎ID(虛擬snmpEngineID),從而避免功能單元之間實際引擎ID(snmpEngineID)的可能的重復,該實施例的實現(xiàn)流程如下S21、網管向SNMP代理發(fā)送標準格式的SNMP報文,其中的引擎ID(contextEngineID)與該報文要管理的功能單元的虛擬引擎ID(虛擬snmpEngineID)相等;S22、SNMP根據(jù)所述的引擎ID,對所述的報文進行處理并轉發(fā)給功能單元,該步驟具體包括
S221、SNMP代理接收該報文,并從報文中獲取引擎ID;S222、SNMP代理根據(jù)獲取的引擎ID查找到對應的功能單元的IP地址,SNMP代理中保留有功能單元的虛擬引擎ID、實際引擎ID和IP地址的映射,所以根據(jù)報文中的引擎ID(和功能單元的虛擬引擎ID相等),就可找到對應的功能單元的IP地址;S223、SNMP代理將報文的引擎ID換成功能單元的實際引擎ID,源IP地址改為SNMP代理的IP地址,目的IP地址改為該功能單元的IP地址,并轉發(fā)給該功能單元;S23、功能單元將SNMP響應報文發(fā)給SNMP代理,該響應報文的引擎ID為該功能單元的實際引擎ID;S24、SNMP代理將響應報文的引擎ID換成功能單元的虛擬ID,源IP地址改為SNMP代理的IP地址,目的IP地址改為網管的IP地址,并轉發(fā)給網管。
對于設備發(fā)生特殊的事件時,設備主動產生的告警(SNMP Trap)報文的處理過程同上步驟S24,在此不再贅述。
第三實施例因為SNMP V3可以對報文加密,也可不加密,所以,本發(fā)明的第三實施例在SNMP代理收到網管發(fā)送的報文時,要先根據(jù)報文的用戶名(如圖4中的msgUserName)確定該報文是否加密,如果發(fā)現(xiàn)有加密,則用加密密鑰對報文進行解密,獲得明文后再進行第一實施例或第二實施例的步驟;在SNMP代理收到功能單元的響應報文或主動告警報文時(此時的報文為非加密報文),對之進行第一實施例或第二實施例的修改后,進行加密再發(fā)送給網管。
第四實施例一個用戶可以屬于多個snmpEngineID(即多個功能單元)中的組(SNMP代理中存在組的配置),使用該用戶名訪問該用戶所屬的所有snmpEngineID(即該用戶所屬的所有功能單元)時使用相同的認證和加密密鑰,組的安全等級決定組中所有功能單元的安全等級,則SNMP代理接收到網管發(fā)送的報文時,SNMP代理根據(jù)報文的用戶名查找對應的組,根據(jù)組的安全等級確定該報文是否加密,若加密用加密密鑰對報文進行解密,獲得明文后再進行第一實施例或第二實施例的步驟;在SNMP代理收到功能單元的響應報文或主動告警報文時(此時的報文為非加密報文),對之進行第一實施例或第二實施例的修改后,進行加密再發(fā)送給網管。
上述實施例中功能單元和SNMP代理之間,以及SNMP代理和網管之間的管理通信協(xié)議都是SNMP V3,但本發(fā)明中功能單元和SNMP代理之間,以及SNMP代理和網管之間的管理通信協(xié)議可以是SNMP V1、SNMP V2c、SNMP V3等所有SNMP版本。
本發(fā)明中若功能單元和SNMP代理之間的管理通信協(xié)議是SNMP V1或SNMP V2c,SNMP代理和網管之間的管理通信協(xié)議是SNMP V3,則SNMP代理還需將SNMP V3的管理報文轉換成SNMP V1或SNMP V2c報文,以及將SNMP V1或SNMP V2c的響應報文或主動告警報文轉換成SNMP V3報文,而且,在SNMP代理中保存的是引擎ID、功能單元團體名(community,SNMP V1或SNMP V2c報文中的團體名和SNMP V3報文中的引擎ID類似)和功能單元IP地址的映射。
本發(fā)明中若功能單元和SNMP代理之間,以及SNMP代理和網管之間的管理通信協(xié)議都是SNMP V1或SNMP V2c,那么就通過報文中的團體名來轉發(fā)報文,SNMP代理中保存有功能單元的團體名和IP地址的映射。
本發(fā)明中若功能單元和SNMP代理之間的管理通信協(xié)議是SNMP V3,SNMP代理和網管之間的管理通信協(xié)議是SNMP V1或SNMP V2c,那么SNMP代理還需將SNMP V1或SNMP V2c的管理報文轉換成SNMP V3報文,以及將SNMP V3的響應報文轉換成SNMP V1或SNMP V2c報文。
本發(fā)明的網管對功能單元的統(tǒng)一管理還包括繪制SNMP代理的設備視圖(如圖5所示,在網管看來整個ATCA機框是一個虛擬的設備,SNMP代理就是這個虛擬設備的邏輯提供者),比如在管理員添加設備時,可以要求管理員輸入用戶參數(shù),然后和SNMP代理建立連接,并向SNMP代理收集所有功能單元的相關信息,并根據(jù)這些信息繪制一個設備視圖,如圖6所示,該圖顯示在網管端,其中每一個方框表示ATCA機框中的一個功能單元;提供進入每個功能單元自身配套的SNMP網管系統(tǒng)的方式,每個功能單元自身有配套的SNMP網管,如圖7所示,每一個方框對應ATCA機框中的一個功能單元,右邊是每個功能單元對應的SNMP網管應用程序,當用戶點擊設備時,進入對應于該功能單元的SNMP網管系統(tǒng);統(tǒng)一SNMP用戶配置,包括提供統(tǒng)一的視圖配置、提供統(tǒng)一的組配置、提供統(tǒng)一的用戶配置等如圖8所示,圖8是統(tǒng)一的視圖配置示意圖。
一個視圖可以包含多個snmpEngineID(即多個功能單元)的不同MIB(Management Information Base管理信息庫)子樹。網管可以發(fā)送兩個SNMP管理配置報文分別完成配置下發(fā),目的地址是SNMP代理報文1中包含的信息<snmpEngineID1(包含在報文頭部中),read view(視圖類型),"test"(view Name is"test"),1(Included oid),1.0.8802.1(Excluded)>
報文2中包含的信息<snmpEngineIDn(包含在報文頭部中),read view(視圖類型),"test"(view Name is"test"),1(Included oid),1.0.8802.1(Excluded)>
等價于先為snmpEngineID1(即功能單元1)配置一個視圖名為”test”、Included節(jié)點為1、Excluded節(jié)點為1.0.8802.1的讀視圖,再為snmpEngineIDn(即功能單元n)配置一個視圖名為”test”、Included節(jié)點為1、Excluded節(jié)點為1.0.8802.1的讀視圖;如圖9所示,圖9是統(tǒng)一的組配置示意圖。
配置一個組時,該組可以屬于多個snmpEngineID(即多個功能單元),對應于某個snmpEngineID(即某個功能單元),可以包含該功能單元的讀寫視圖,對于該組所屬的所有snmpEngineID(即所有功能單元),使用相同的安全級別。網管可以發(fā)送兩個SNMP管理配置報文分別完成配置下發(fā),目的地址是SNMP代理報文1中包含的信息<snmpEngineID1(包含在報文頭部中),"test"(group Name is“test"),"Read MIB View 1"(snmpEngineID 1's Read MIBView),""(snmpEngineID 1's Write MIB View),Authentication and unencryption(Security Level)>
報文2中包含的信息<snmpEngineIDn(包含在報文頭部中),"test"(group Name is"test"),"Read MIB View 2"(snmpEngineIDn's Read MIBView),"Write MIB View 1"(snmpEngineIDn's WriteMIB View),Authentication and unencryption(Security Level)>
等價于先為snmpEngineID1(即功能單元1)配置一個組名為”test”、讀視圖為“Read MIB View 1”、寫視圖為“”、安全級別為Authentication and unencryption的組,再為snmpEngineIDn(即功能單元n)配置一個組名為”test”、讀視圖為“ReadMIB View 2”、寫視圖為“Write MIB View 1”、安全級別為Authentication andunencryption的組;如圖10所示,圖10是統(tǒng)一的用戶配置示意圖。
一個用戶可以屬于多個snmpEngineID(即多個功能單元)中的組,使用該用戶名訪問該用戶所屬的所有snmpEngineID(即該用戶所屬的所有功能單元)時使用相同的認證和加密密鑰。網管可以發(fā)送兩個SNMP管理配置報文分別完成配置下發(fā),目的地址是SNMP代理報文1中包含的信息<snmpEngineID1(包含在報文頭部中),"test"(user Name is test),"group Name 1"(snmpEngineID 1's group Name),authentication algorithm 1(snmpEngineID 1'sauthentication algorithm),"234567"(snmpEngineID 1's authentication privacy),encryption algorithm 2(snmpEngineID 1's encryptionalgorithm),"123456"(snmpEngineID1's encryption privacy)>
報文2中包含的信息<snmpEngineIDn(包含在報文頭部中),"test"(user Name is test),"group Name 2"(snmpEngineIDn's,oup Name),authentication algorithm 1(snmpEngineIDn'sauthentication algorithm),"234567"(snmpEngineIDn's authentication privacy),encryption algorithm 1(snmpEngineIDn's encryptionalgorithm),"123456"(snmpEngineIDn's encryption privacy)>
等價于先為snmpEngineID1(即功能單元1)配置一個用戶名為”test”、組名為group Name 1、認證算法為authentication algorithm 1、認證密鑰為“234567”、加密算法為encryption algorithm 2、加密密鑰為“123456”的用戶,再為snmpEngineIDn(即功能單元n)配置一個用戶名為”test”、組名為group Name2、認證算法為authentication algorithm 1、認證密鑰為“234567”、加密算法為encryption algorithm 2、加密密鑰為“123456”的用戶。
如果新加入了一個功能單元,需要在SNMP代理上增加該功能單元的snmpEngineID(SNMPV3)或團體名(SNMPV1或SNMPV2c)、SNMP初始用戶信息。如果是SNMP V3功能單元,則建立該功能單元IP地址、該功能單元snmpEngineID、虛擬snmpEngineID、SNMP版本號的映射;如果是SNMPV1或SNMPV2c功能單元,則建立該功能單元IP地址、該功能單元團體名、虛擬snmpEngineID、SNMP版本號的映射。
本發(fā)明還提供一種基于SNMP協(xié)議進行網絡管理的系統(tǒng),包括功能單元和網管,所述的網管通過SNMP協(xié)議對所述的功能單元進行管理,所述的系統(tǒng)還包括SNMP代理,所述的SNMP代理根據(jù)SNMP報文中的引擎ID或團體名,對該SNMP報文進行處理和轉發(fā),完成網管對功能單元的統(tǒng)一管理。
所述的SNMP代理包括映射表,保存功能單元的引擎ID或團體名、IP地址和版本號的映射;報文接收模塊,從網管或功能單元接收SNMP報文,并獲取所述報文中的用戶名、引擎ID或團體名;報文修改模塊,根據(jù)所述報文中的引擎ID或團體名和所述的映射表中的信息修改所述的報文;報文發(fā)送模塊,將修改后的報文發(fā)送到對應的功能單元或網管。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發(fā)明的保護范圍之內。
權利要求
1.一種基于SNMP協(xié)議進行網絡管理的方法,其特征在于,包括SNMP代理根據(jù)SNMP報文中的引擎ID或團體名,對該SNMP報文進行處理和轉發(fā),完成網管對功能單元的統(tǒng)一管理。
2.如權利要求1所述的一種基于SNMP協(xié)議進行網絡管理的方法,其特征在于,SNMP代理根據(jù)SNMP報文中的引擎ID或團體名查找到對應的功能單元的IP地址,并修改所述的報文源地址和目的地址,將其轉發(fā)到對應的功能單元。
3.如權利要求1所述的一種基于SNMP協(xié)議進行網絡管理的方法,其特征在于,引擎ID與功能單元的實際引擎ID相等,SNMP代理中保存有功能單元的實際引擎ID、IP地址和版本號的映射。
4.如權利要求1所述的一種基于SNMP協(xié)議進行網絡管理的方法,其特征在于,引擎ID與功能單元的虛擬引擎ID相等,SNMP代理中保存有功能單元的虛擬引擎ID、實際引擎ID、IP地址和版本號的映射。
5.如權利要求1所述的一種基于SNMP協(xié)議進行網絡管理的方法,其特征在于,所述的網管對功能單元的統(tǒng)一管理還包括繪制SNMP代理的設備視圖、提供進入每個功能單元自身配套的SNMP網管系統(tǒng)的方式和統(tǒng)一的SNMP用戶配置。
6.如權利要求5所述的一種基于SNMP協(xié)議進行網絡管理的方法,其特征在于,提供統(tǒng)一的SNMP用戶配置包括提供統(tǒng)一的視圖配置、提供統(tǒng)一的組配置和/或提供統(tǒng)一的用戶配置。
7.如權利要求1所述的一種基于SNMP協(xié)議進行網絡管理的方法,其特征在于,SNMP代理根據(jù)SNMP報文中的用戶名確定所述的報文是否加密,若加密,則用加密密鑰對所述的報文進行解密。
8.如權利要求2所述的一種基于SNMP協(xié)議進行網絡管理的方法,其特征在于,SNMP代理根據(jù)功能單元和SNMP代理,以及SNMP代理和網管之間的SNMP協(xié)議版本修改所述的SNMP報文。
9.一種基于SNMP協(xié)議進行網絡管理的系統(tǒng),包括功能單元和網管,所述的網管通過SNMP協(xié)議對所述的功能單元進行管理,其特征在于,還包括SNMP代理,所述的SNMP代理根據(jù)SNMP報文中的引擎ID或團體名,對該SNMP報文進行處理和轉發(fā),完成網管對功能單元的統(tǒng)一管理。
10.如權利要求9所述的一種基于SNMP協(xié)議進行網絡管理的系統(tǒng),其特征在于,所述的SNMP代理包括映射表,保存功能單元的引擎ID或團體名、IP地址和版本號的映射;報文接收模塊,從網管或功能單元接收SNMP報文,并獲取所述報文中的用戶名、引擎ID或團體名;報文修改模塊,根據(jù)所述報文中的引擎ID或團體名和所述的映射表中的信息修改所述的報文;報文發(fā)送模塊,將修改后的報文發(fā)送到對應的功能單元或網管。
全文摘要
本發(fā)明公開了一種基于SNMP協(xié)議進行網絡管理的方法和系統(tǒng),所述的方法包括設置一SNMP代理,SNMP代理配置公有IP地址和私有IP地址,功能單元配置私有IP地址;SNMP代理根據(jù)SNMP報文中的引擎ID或團體名,對該SNMP報文進行處理和轉發(fā),完成網管對功能單元的統(tǒng)一管理。所述的系統(tǒng)包括功能單元和網管,所述的網管通過SNMP協(xié)議對所述的功能單元進行管理,還包括SNMP代理。通過本發(fā)明所述的方法和系統(tǒng),能夠對網絡中的設備進行單IP的統(tǒng)一高效的管理。
文檔編號H04L29/06GK101043361SQ20061006119
公開日2007年9月26日 申請日期2006年6月16日 優(yōu)先權日2006年6月16日
發(fā)明者易劍鋒, 黎靜, 張國棟 申請人:華為技術有限公司