动态snmp网络设备的制作方法

文档序号:6482931阅读:117来源:国知局
专利名称:动态snmp网络设备的制作方法
技术领域
本发明系关于一种SNMP网络设备,尤指一种可动态扩充或更换管理信息库(management information base,简称MIB)模组,以载入新的MIB,且在更换MIB模组时,无需更新其内所安装的SNMP授管程序(SNMP agent)的核心(kernel)的SNMP网络设备。
传统上,各该SNMP网络设备上的授管程序的核心(SNMP kernel)均系与行为函数(behavior functions)结合(bundle)在一起,网管电脑在载入各该SNMP授管程序所提供的MIB档案后,即能通过读取MIB内容,了解各该SNMP授管程序所支持的项目,并由远端与相关档案进行沟通,完成所期望的网络管理。然而,在该等传统SNMP网络设备中,由于各该SNMP授管程序的核心均系与行为函数结合在一起,故若欲该等传统SNMP网络设备,能针对网络设备业者所开发及定义出的新的MIB,提供新的功能,除非变更各该SNMP授管程序的核心,否则,不可能达成此一目的。故对SNMP网络设备业者而言,若欲令旧型的SNMP网络设备能够支援新开发的MIB,势必须重新制作一个全新的SNMP授管程序,对于嵌入式系统而言,甚至可能需要重新制作整个SNMP网络系统。因此,如何设计出一种可动态扩充或更换MIB模组,以载入新的MIB,且在更换MIB模组时,无需更新该SNMP授管程序核心的SNMP网络设备,即成为网络设备设计上亟待解决的一重要课题。
其中该动态SNMP授管程序引擎包含一SNMP核心,系一标准的SNMP授管程序的处理核心,可通过网络,与一远端的网管电脑相连接,以负责接收由网管电脑传来的SNMP要求封包,或传送SNMP回应封包至该网管电脑,及对标准的SNMP讯息进行处理;一MIB模组分配单元,系分别与该等MIB模组及该SNMP核心相连接,以负责接收由该SNMP核心传来的SNMP封包,并对其进行分析,读取出其中的管理资讯元(object identifier,简称管OID)值,或接收由各该MIB模组完成处理的讯息;一登录资料库,系与该MIB模组分配单元相连接,用以储存至少一个以上MIB模组的名称及对应于各该模组的OID;该SNMP核心在通过网络,接收到由该网管电脑传来的SNMP要求封包后,可将该SNMP要求封包传送给该MIB模组分配单元,由该MIB模组分配单元对其进行分析,读取出其中的OID值,并依据OID值至该登录资料库,寻找出该OID值对应的MIB模组,以得知该SNMP要求封包所要求的行为,系由哪个MIB模组负责处理,并发出请求讯号予该对应的MIB模组,俟该MIB模组分配单元接收到该MIB模组处理完成的资料后,可将其送回该SNMP核心,由该SNMP核心对其进行标准SNMP封包的处理,再送回给远端的该网管电脑。
其中该SNMP要求封包可为一PDU封包。
其中该登录资料库可为一组对应表单,该等表单系以树状架构储存至少一个以上MIB模组的名称及对应于各该模组的OID资料。
其中该动态SNMP授管程序引擎尚包含一MIB模组载入单元,系与该登录资料库相连接,负责MIB模组的载入与卸载,每载入或卸载一个MIB模组,该MIB模组载入单元即必须同时更新该登录资料库内所存放的注册资料。
一基本模组,系与该MIB模组分配单元相连接,系一可选择安装的模组,其中包含一般性的或与网络设备有关的基本变数及行为函数,用以执行对该网管入口的控制与与存取。
一网管入口,该网管入口乃该动态SNMP授管程序引擎所管理的实体,可为硬件、应用程序及作业系统等,系分别与该基本模组及各该MIB模组相连接,使该基本模组及MIB可用以执行对该网管入口的控制与存取。
其中该MIB模组在嵌入式系统上,包含主动式处理、扩充变数及扩充函数等,能满足动态连接的架构。其中该主动式处理系指网络设备将该授管程序的主动式讯息,制作在所产生的讯息中,并将该讯息,通过该MIB模组分配单元,传送给该SNMP核心。其中该扩充变数及扩充函数系指在制作MIB模组时所需的变数及函数,包含由一群扩充变数及扩充行为函数所组成,该二元素可与主动式处理相搭配,令所制作出的MIB模组,能执行对应MIB所定义的行为。
本发明的动态SNMP授管程序引擎可适用于所有新开发的网络设备,而无需重新开发授管程序,故在开发新的网络设备时,仅需依新的MIB,制作出该网络设备的MIB模组,将其下载至该网络设备即可,故可大幅缩短网络设备的开发时间。
对于既有的网络设备,仅需将新定义的MIB,提供予该等网络设备的MIB模组,即可由动态SNMP授管程序引擎将各该MIB模组载入,而动态地扩增新功能。
在对于嵌入式系统而言,动态SNMP授管程序引擎可与SNMP核心结合在一起,而令MIB模组可单独开发,以降低开发的复杂度。


图1系本发明的动态SNMP授管程序引擎的系统架构与运作示意图。
图2系本发明的动态SNMP授管程序引擎的系统局部方块示意图。
图3系本发明的动态SNMP授管程序引擎的SNMP核心的处理流程示意图。
图4系本发明的动态SNMP授管程序引擎的MIB模组分配单元的处理流程示意图。
图5系本发明的动态SNMP网络设备中MIB模组的处理流程示意图。
图6系本发明的动态SNMP授管程序引擎的MIB模组载入单元的处理流程示意图。
在本发明的一最佳实施例中,参阅图1所示,该动态SNMP授管程序引擎30主要包含一SNMP核心(kernel)33、一MIB模组分配单元(MIB moduledispatcher)32及一登录资料库(Registry database)31,其中该MIB模组分配单元32系分别与该SNMP核心33、登录资料库31及至少一个以上的MIB模组35相接,该SNMP核心33并通过网络,与网管电脑相连接,以接收由网管电脑传来的SNMP要求封包(request)34,或传送SNMP回应封包(response)至网管电脑,该等封包可为一PDU封包。在该实施例中,当该SNMP核心(kernel)33接收到由网络上传来的SNMP要求封包34后,即将控制权移转给该MIB模组分配单元32,由该MIB模组分配单元32分析该SNMP核心33传来的SNMP要求封包的内容,并将其中的OID值读取出。网管电脑在发送出一个符合SNMP协定的要求封包时,均会在其中携带一个管理资讯元(OID)的文字串,此文字串必须为该MIB模组的OID值,或该MIB表单的入口OID值,意即为所欲获得的某个MIB模组或表单的入口OID值。
然后,该MIB模组分配单元32读取出SNMP要求封包中的OID值后,再至该登录资料库(Registry database)31中搜寻与该OID相对应的MIB模组,若无法搜寻到对应的MIB模组,该MIB模级分配单元32便回应一失败讯息予该SNMP核心33,由该SNMP核心33对该SNMP讯息的来源地址,发出一适当的回应讯号;若搜寻到某一MIB模组的树状(Tree)内容,与该OID相符合,该MIB模组分配单元32即送出一请求(invoke)讯号,要求该对应的MIB模组35对该SNMP要求封包所请求的行为,进行处理,俟完成处理后,再由该对应的MIB模组35将处理结果,回应给该MIB模组分配单元32,并经该MIB模组分配单元32送回该SNMP核心33,再由该SNMP核心33将讯息封装后,回应给发出该SNMP要求封包的网管电脑,完成整个作业。
至于,该SNMP网络设备主动发出的讯息,如系由该SNMP核心33发出讯息,或由该对应的MIB模组35发出讯息时,若此一讯息系由该SNMP核心33发出,即直接发送出去,若由该对应的MIB模组35发出,则必须通过该MIB模组分配单元32,先传给该SNMP核心33进行处理,始能发送出去。
在本发明的另一最佳实施例中,参阅图2所示,该动态SNMP系统主要包含一动态SNMP授管程序引擎30、至少一个以上的MIB模组35及一网管入口38(Managed entity),而该动态SNMP授管程序引擎30则包含一SNMP核心33、一MIB模组分配单元32、一登录资料库31、一MIB模组载入单元(module loader)36及一基本模组(Basic module)37,其中该MIB模组分配单元32系分别与该SNMP核心33、登录资料库31、至少一个以上的MIB模组35及基本模组37相连接,该SNMP核心33并通过网络,与网管电脑相连接,该MIB模组载入单元36则系与该登录资料库31相连接。
在该另一实施例中,该SNMP核心33为一标准的SNMP授管程序的处理核心,负责接收、发送网络讯息及对标准的SNMP讯息进行处理,其中并包含有可与该MIB模组分配单元32进行沟通的界面。该MIB模组分配单元32系用以接收由该SNMP核心33传来的SNMP封包,并对其进行分析,读取出其中的OID值,使依该OID值至该登录资料库31,寻找出该OID值对应的MIB模组,以得知该SNMP要求封包所要求的行为,系由哪个MIB模组35负责处理,并发出请求讯号予该对应的MIB模组35,俟收到该MIB模组35处理完成的资料后,可将其送回该SNMP核心33,由该SNMP核心33对其进行标准SNMP封包的处理,再送回给远端的网管电脑。该登录资料库31可为一组对应表单,该等表单系以树状架构储存资料,其内容包括至少一个以上MIB模组的名称及对应于各该模组的管理资讯元(OID)。该MIB模组载入单元36系负责MIB模组的载入与卸载,每载入或卸载一个MIB模组,该MIB模组载入单元36必须同时更新该登录资料库31内所存放的注册资料。
另在该另一实施例中,该基本模组37系一可选择安装的模组,其中包含一般性的或与网络设备有关的基本变数(Basic variables)及行为函数(Basic functions)。该MIB模组35可为一动态连结资料档与可执行的执行档,在Microsoft系统上,可为附档名为.DLL及.exe格式的档案;在UNIX系统上,则可为附档名为so格式的可执行档;在嵌入式系统上,只要能满足动态连结的架构,包含主动式处理(Active process)、扩充变数(Extendedvariables)及扩充函数(Extended functions)等,均可满足该MIB模组35在本发明中的设计原理。一般言,该主动式处理系指网络设备将该授管程序(agent)的主动式讯息(如SNMP trap),制作在所产生的讯息中,并将该讯息,通过该MIB模组分配单元32,传送给该SNMP核心33;而该扩充变数及扩充函数,则系指在制作MIB模组时所需的变数及函数,主要系由一群扩充变数(相对于基本变数而言)和扩充行为函数(相对于基本行为函数而言)所组成,该二元素可与主动式处理相搭配,令所制作出的MIB模组,能执行对应MIB所定义的行为。至于,该网管入口38乃该动态SNMP系统所管理的实体,可为硬件、应用程序及作业系统等,系分别与该基本模组37及各该MIB模组35相连接,而该基本模组及MIB模组的行为,实际上系执行对该网管入口38的控制与存取。
在前述二实施例中,该SNMP核心33依下列步骤,参阅图3所示,对由网管电脑传来的SNMP讯息,及MIB模组分配单元32传来的讯息,进行处理(401)首先,接收由网管电脑传来的SNMP要求封包;(402)判断所接收的封包,是否为一正确的SNMP要求封包,若是,继续下列步骤,否则,返回步骤(401),继续接收由网管电脑传来的SNMP要求封包;(403)将所接收的要求封包,传送至该MIB分配单元32,并将对该要求封包的控制权,转移予该MIB模组分配单元32;(404)接收由该MIB模组分配单元32传回来的处理结果;(405)判断所接收到的处理结果,是否为一回应资料,若是,继续下列步骤,否则,返回步骤(401),继续接收由网管电脑传来的SNMP要求封包;(406)将该回应资料封装成一标准的SNMP回应封包,并将其传送至网管电脑。
在该二实施例中,该MIB模组分配单元32系依下列步骤,参阅图4所示,对由该SNMP核心33及该MIB模组35传来的讯息进行处理(501)首先,接收由该SNMP核心33传来的SNMP要求封包;(502)读取该SNMP要求封包中的OID值,根据该OID值,至该登录资料库31内所登录的资料中,寻找与该OID值相对应的MIB模组参数;(503)将所接收的要求封包传送至该MIB模组参数所对应的一适合的MIB模组35;(504)接收由该适合的MIB模组35传回来的处理结果;(505)判断所接收到的处理结果,是否为一回应资料或回应错误的讯息,若是,继续下列步骤,否则,返回步骤(501),继续接收由该SNMP核心33传来的SNMP要求封包;(506)将该回应资料或回应错误的讯息传送至该SNMP核心33,并将对该要求封包的控制权,移转回该SNMP核心33。
各该MIB模组35则依下列步骤,参阅图5所示,对由该MIB模组分配单元32传来的讯息进行处理;(601)首先,判断是否发现有由该MIB模组分配单元32传来的封包,若是,继续下列步骤,否则,继续步骤(603);(602)接收由该MIB模组分配单元32传来的封包,并继续步骤(604);(603)进行主动式处理,将该授管程序(agent)的主动式讯息(如SNMP trap)制作在所产生的讯息中,并将该讯息通过该MIB模组分配单元32传给该SNMP核心33;(604)判断所接收到的要求封包,系要求该MIB模组35对该要求封包进行抓取参数或设定参数的处理,若是抓取参数的处理,继续下列步骤,否则,继续步骤(606);(605)若是抓取参数的处理,即通过该等扩充函数(extendedfunctions),抓取所需的扩充参数(extended variable),并继续步骤(607);(606)若是设定参数的处理,即通过该等扩充函数,设定扩充参数或网管入口(managed entity),并继续步骤(607);(607)将完成处理的讯息传送回该MIB分配单元32。
本发明的该另一实施例中,该MIB模组载入单元(module loader)36依下列步骤,参阅图6所示,将MIB模组载入网络设备或自网络设备卸载
(701)首先,读取使用者通过输入元件输入至网络设备的MIB模组;(702)判断系对所输入的MIB模组,进行载入或卸载;若是进行载入,继续步骤(703),否则,是进行卸载,则继续步骤(704);(703)将所输入的MIB模组,载入网络设备,并继续步骤(705);(704)将所输入的MIB模组,自网络设备卸载,并继续步骤(705);(705)依据载入或卸载处理,对该登录资料库内所记录的资料,进行更新。
如此,本发明的动态SNMP网络设备,即可依实际需求,载入至少一个以上的MIB模组,以利用各该MIB模组,动态地扩充功能模组或更换功能模组,以提供各该MIB所扩增的功能,令所有新开发的网络设备,无需重新开发授管程序,仅需在开发新的网络设备时,重新制作一对应于该网络设备的MIB模组,再由动态SNMP授管程序引擎将各该MIB模组载入,即可动态地扩增新功能。不仅可大幅缩短产品的开发时间,对于既有的网络设备,亦仅需根据新定义的MIB,制作出所需的MIB模组,下载至该等网络设备即可。
以上所述,仅为本发明的一最佳具体实施例,惟本发明的设计并不局限于此,任何熟悉该项技艺者在本发明领域内,可轻易思及的变化或修饰,皆可涵盖在本发明的权利要求内。
权利要求
1.本发明系一种动态SNMP网络设备,其特征在于该网络设备内包含至少一个以上的管理信息库(MIB)模组,其中各该管理信息库(MIB)模组系针对某一管理信息库(MIB),所制作出的对应模组,各该管理信息库(MIB)模组内包含必要的资料变数及函数,以提供对应于各管理信息库(MIB)所需的各种行为;一动态SNMP授管程序引擎,该动态SNMP授管程序引擎可依实际需求,载入一个以上的管理信息库(MIB)模组,以利用各该管理信息库(MIB)模组,动态地扩充功能模组或更换功能模组,以提供各该管理信息库(MIB)所扩增的功能。
2.如权利要求1所述的动态SNMP网络设备,其特征在于该动态SNMP授管程序引擎包含一SNMP核心,系一标准的SNMP授管程序的处理核心,可通过网络,与一远端的网管电脑相连接,以负责接收由网管电脑传来的SNMP要求封包,或传送SNMP回应封包至该网管电脑,及对标准的SNMP讯息进行处理;一管理信息库(MIB)模组分配单元,系分别与该等管理信息库(MIB)模组及该SNMP核心相连接,以负责接收由该SNMP核心传来的SNMP封包,并对其进行分析,读取出其中的管理资讯元(OID)值,或接收由各该管理信息库(MIB)模组完成处理的讯息;一登录资料库,系与该管理信息库(MIB)模组分配单元相连接,用以储存至少一个以上管理信息库(MIB)模组的名称及对应于各该模组的管理资讯元(OID);该SNMP核心在通过网络,接收到由该网管电脑传来的SNMP要求封包后,可将该SNMP要求封包传送给该管理信息库(MIB)模组分配单元,由该管理信息库(MIB)模组分配单元对其进行分析,读取出其中的管理资讯元(OID)值,并依据管理资讯元(OID)值至该登录资料库,寻找出该管理资讯元(OID)值对应的管理信息库(MIB)模组,以得知该SNMP要求封包所要求的行为,系由哪个管理信息库(MIB)模组负责处理,并发出请求讯号予该对应的管理信息库(MIB)模组,俟该管理信息库(MIB)模组分配单元接收到该管理信息库(MIB)模组处理完成的资料后,可将其送回该SNMP核心,由该SNMP核心对其进行标准SNMP封包的处理,再送回给远端的该网管电脑。
3.如权利要求2所述的动态SNMP网络设备,其特征在于该SNMP要求封包可为一PDU封包。
4.如权利要求2所述的动态SNMP网络设备,其特征在于该登录资料库可为一组对应表单,该等表单系以树状架构储存至少一个以上管理信息库(MIB)模组的名称及对应于各该模组的管理资讯元(OID)资料。
5.如权利要求2所述的动态SNMP网络设备,其特征在于该动态SNMP授管程序引擎尚包含一管理信息库(MIB)模组载入单元,系与该登录资料库相连接,负责管理信息库(MIB)模组的载入与卸载,每载入或卸载一个管理信息库(MIB)模组,该管理信息库(MIB)模组载入单元即必须同时更新该登录资料库内所存放的注册资料。
6.如权利要求2所述的动态SNMP网络设备,其特征在于该动态SNMP授管程序引擎尚包含一基本模组,系与该管理信息库(MIB)模组分配单元相连接,系一可选择安装的模组,其中包含一般性的或与网络设备有关的基本变数及行为函数,用以执行对该网管入口的控制与与存取。
7.如权利要求2所述的动态SNMP网络设备,其特征在于该网络设备尚包含一网管入口,该网管入口乃该动态SNMP授管程序引擎所管理的实体,可为硬件、应用程序及作业系统,系分别与该基本模组及各该管理信息库(MIB)模组相连接,使该基本模组及管理信息库(MIB)可用以执行对该网管入口的控制与存取。
8.如权利要求1所述的动态SNMP网络设备,其特征在于该管理信息库(MIB)模组在嵌入式系统上,包含主动式处理、扩充变数及扩充函数,能满足动态连接的架构。
9.如权利要求8所述的动态SNMP网络设备,其特征在于该主动式处理系指网络设备将该授管程序的主动式讯息,制作在所产生的讯息中,并将该讯息,通过该管理信息库(MIB)模组分配单元,传送给该SNMP核心。
10.如权利要求8所述的动态SNMP网络设备,其特征在于该扩充变数及扩充函数系指在制作管理信息库(MIB)模组时所需的变数及函数,包含由一群扩充变数及扩充行为函数所组成,该二元素可与主动式处理相搭配,令所制作出的管理信息库(MIB)模组,能执行对应管理信息库(MIB)所定义的行为。
全文摘要
本发明系一种动态SNMP网络设备(DynamicSNMP device),该网络设备内安装有至少一个以上的管理信息库(management information base,简称MIB)模组(module)及动态SNMP授管程序引擎(Dynamic SNMP Agent Engine),其中各该MIB模组系针对某一MIB,所制作出的对应模组,该MIB模组内包含必要的资料变数及函数,以提供对应于MIB所需的各种行为,该动态SNMP授管程序引擎可依实据需求,载入(plug-in)至少一个以上的MIB模组(亦可依需求卸载任何一个已载入的MIB模组),以利用各该MIB模组,动态地扩充功能模组或更换功能模组,提供各该MIB所扩增的功能。
文档编号G06F17/00GK1442800SQ0210668
公开日2003年9月17日 申请日期2002年3月5日 优先权日2002年3月5日
发明者陈永昕, 黄大山 申请人:友讯科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1