一种获取代理端扩展错误信息的方法及装置制造方法

文档序号:7980050阅读:103来源:国知局
一种获取代理端扩展错误信息的方法及装置制造方法
【专利摘要】本发明公开了一种获取代理端扩展错误信息的方法,包括:若代理端处理本次收到的简单网络管理协议(SNMP)请求消息时出现错误,则根据预置的错误信息库确定并保存错误信息;当代理端收到管理端发来的获取错误信息的请求时,提取匹配的错误信息发送给管理端。本发明还同时公开了一种获取代理端扩展错误信息的装置,采用本发明能避免对SNMP中规定的协议报文做出修改,也避免使用TRAP信息传输扩展错误信息,从而保证扩展错误信息的兼容性,且保证管理端接收错误信息的时效性和可靠性。
【专利说明】一种获取代理端扩展错误信息的方法及装置
【技术领域】
[0001 ] 本发明涉及网络管理领域中的简单网络管理协议(SNMP, Simple NetworkManagement Protocol)技术,尤其涉及一种获取代理端扩展错误信息的方法及装置。
【背景技术】
[0002]SNMP是用于在互联网协议(IP,Internet Protocol)网络中,管理网络节点(服务器、工作站、路由器和交换机等)的一种应用层协议。所述SNMP用来保证管理信息在管理进程所在的管理端和代理进程所在的代理端之间传送,且便于网络管理员在网络上的任何节点检索信息、进行修改以及寻找故障。其中,所述寻找故障的方法为:管理站使用SNMP获取代理端的错误消息的方法为:当管理端向代理端发出请求消息(get-request、get-next-request、set-request)时,代理端根据请求消息进行处理,若处理过程中出现错误,则将本次操作出现的错误对应的SNMP定义的错误码编写在SNMP响应信息(get-response)中,代理端向管理端返回SNMP响应信息。但是,上述方法中,错误码都是用来描述SNMP的协议本身的错误原因,比如:数据类型不对、数据不可写等,不能获得代理端的真正错误原因,所以用户无法根据返回的错误码确定管理节点出现的确切错误,进而无法得知本次操作中出现的具体错误。
[0003]为解决上述问题,目前提出了以下两种解决方法:
[0004]—、通过在代理端反馈的SNMP响应信息(get-response)中绑定当前操作发生的错误的具体描述,将当前操作的详细错误原因通过SNMP响应信息反馈给管理端,由管理端显示给用户。比如,专利申请号为CN200710112460.3公开的在SNMP交互中返回错误消息的方法和装置:管理端向代理端发送SNMP操作消息时,在SNMP操作消息中绑定变量;在代理端返回对SNMP操作消息响应失败的响应消息的情况下,在响应消息的变量中填写错误原因消息;管理端根据SNMP协议本身的错误码判断SNMP操作是否成功,若不成功,则将响应消息的变量中的错误原因消息提示给用户。但是,这种方法由于需要在SNMP协议规定的报文中绑定不属于协议规定的内容,需要在管理端和代理端均做出读取SNMP响应报文的方式的修改,所以该方法的兼容性较差。
[0005]二、通过TRAP信息将当前操作的错误发送给管理端。如,专利申请号为CN200910109833.0公开的一种网管操作错误信息的处理方法及装置:代理端在操作错误TRAP报文中绑定操作错误信息,将所述操作错误TRAP报文通过SNMP发送给管理器。这种方法相对于上面一种方法,没有破坏标准操作,对接第三方的兼容性好。但是,这种方法由于使用TRAP信息,所以会受到TRAP信息及时性及可靠性较差的影响。
[0006]可见,目前已有的获取代理端扩展错误信息的方法,要么需要对SNMP中的协议报文做出修改,导致兼容性差;要么,由于使用TRAP信息,导致无法保证管理端接收错误信息的时效性和可靠性。

【发明内容】
[0007]有鉴于此,本发明的目的在于提供一种获取代理端扩展错误信息的方法及装置,避免对SNMP中规定的协议报文做出修改,也避免使用TRAP信息传输扩展错误信息,从而保证扩展错误信息的兼容性,且保证管理端接收错误信息的时效性和可靠性。
[0008]为达到上述目的,本发明的技术方案是这样实现的:
[0009]本发明提供了一种获取代理端扩展错误信息的方法,该方法包括:
[0010]若代理端处理本次收到的SNMP请求消息时出现错误,则根据预置的错误信息库确定并保存错误信息;
[0011]当代理端收到管理端发来的获取错误信息的请求时,提取匹配的错误信息发送给
管理端。
[0012]上述方案中,所述若代理端处理本次收到的SNMP请求消息时出现错误,则根据预置的错误信息库确定并保存错误信息,包括:代理端对本次收到的SNMP请求消息进行处理,若处理出现错误,则根据预置的错误信息库确定本次处理出现的错误对应的错误信息,并根据SNMP确定本次处理出现的错误对应的错误码,向管理端返回包含所述错误码的SNMP响应信息;
[0013]若处理没出现错误,则根据SNMP确定本次处理对应的错误码为0,向管理端返回包含所述错误码的SNMP响应信息。
[0014]上述方案中,所述根据预置的错误信息库确定并保存错误信息,包括:提取SNMP请求消息的标识作为本次处理的错误信息的标识,根据预置的错误信息库确定本次处理出现的错误对应的编码和具体的错误描述信息,将所述错误信息的标识、编码和具体的错误描述信息组成错误信息并保存。
[0015]上述方案中,所述向管理端返回包含所述错误码的SNMP响应信息之后,该方法还包括:所述管理端根据SNMP响应信息中的错误码判断代理端是否出现错误,若错误码为0,则结束处理流程;若错误码不为0,则向代理端发出获取错误信息的请求。
[0016]上述方案中,所述当代理端收到管理端发来的获取错误信息的请求时,提取匹配的错误信息发送给管理端,包括:代理端判断是否收到管理端发来的获取错误信息的请求,若收到,则根据获取错误信息的请求中的标识,从自身保存的错误信息中查找与获取错误信息的请求的标识一致的错误信息,将所述错误信息发送给管理端;否则,结束处理流程。
[0017]上述方案中,所述提取匹配的错误信息发送给管理端之后,该方法还包括:管理端将错误信息中的编码和具体的错误描述信息作为显示信息,显示在自身的显示界面。
[0018]本发明还提供了一种获取代理端扩展错误信息的装置,该装置包括:代理端SNMP处理模块、代理端扩展处理模块和管理端扩展处理模块;其中,
[0019]代理端SNMP处理模块,用于若代理端处理本次收到的SNMP请求消息时出现错误,则通知代理端扩展处理模块确定错误信息;
[0020]代理端扩展处理模块,用于收到代理端SNMP处理模块发来的确定错误信息的通知后,根据预置的错误信息库确定并保存错误信息,当收到管理端扩展处理模块发来的获取错误信息的请求时,提取匹配的错误信息发送给管理端扩展处理模块;
[0021]管理端扩展处理模块,用于向代理端扩展处理模块发送获取错误信息的请求,并接收代理端扩展处理模块发来的错误信息。
[0022]上述方案中,所述装置还包括:管理端SNMP处理模块,用于接收代理端SNMP处理模块发来的SNMP响应信息;
[0023]相应的,所述代理端SNMP处理模块,具体用于对本次收到的SNMP请求消息进行处理,若处理出现错误,则根据预置的错误信息库确定本次处理出现的错误对应的错误信息,并根据SNMP确定本次处理出现的错误对应的错误码,向管理端SNMP处理模块,返回包含所述错误码的SNMP响应信息;若处理没出现错误,则根据SNMP确定本次处理对应的错误码为0,向管理端SNMP处理模块,返回包含所述错误码的SNMP响应信息。
[0024]上述方案中,所述代理端扩展处理模块,具体用于提取SNMP请求消息的标识作为本次处理的错误信息的标识,根据预置的错误信息库确定本次处理出现的错误对应的编码和具体的错误描述信息,将所述错误信息的标识、编码和具体的错误描述信息组成错误信息并保存。
[0025]上述方案中,所述管理端SNMP处理模块,还用于根据SNMP响应信息中的错误码判断代理端是否出现错误,若错误码为0,则不做处理,若错误码不为0,则向管理端扩展处理模块发出获取错误信息的通知;
[0026]相应的,所述管理端扩展处理模块,还用于根据管理端SNMP处理模块发来的获取错误信息的通知,向代理端扩展处理模块发送获取错误信息的请求。
[0027]上述方案中,所述代理端扩展处理模块,具体用于判断是否收到管理端扩展处理模块发来的获取错误信息的请求,若收到,则根据获取错误信息的请求中的标识,从自身保存的错误信息中查找与获取错误信息的请求的标识一致的错误信息,将所述错误信息发送给管理端扩展处理模块,否则,不做操作。
[0028]上述方案中,所述管理端扩展处理模块,还用于将错误信息中的编码和具体的错误描述信息作为显示信息,显示在所在管理端的显示界面。
[0029]本发明所提供的获取代理端扩展错误信息的方法及装置,能在代理端的处理出现错误时,保存错误信息,以及通过获取错误信息的请求和发送错误信息这两条交互信息,即可将代理端的详细错误发送给管理端;如此,即可避免对SNMP中规定的协议报文做出修改,并避免使用SNMP中的TRAP报文,从而保证扩展错误信息的兼容性,且保证管理端接收错误信息的时效性和可靠性。
【专利附图】

【附图说明】
[0030]图1为本发明的获取代理端扩展错误信息的方法流程示意图;
[0031]图2为本发明的获取代理端扩展错误信息的装置组成结构示意图。
【具体实施方式】
[0032]本发明的基本思想是:若代理端处理本次收到的SNMP请求消息时出现错误,则根据预置的错误信息库确定并保存错误信息;当代理端收到管理端发来的获取错误信息的请求时,提取匹配的错误信息发送给管理端。
[0033]下面结合附图及具体实施例对本发明再作进一步详细的说明。
[0034]本发明提供的一种获取代理端扩展错误信息的方法,如图1所示,包括以下步骤:
[0035]步骤101:代理端判断自身是否收到SNMP请求消息,若没收到,则重复步骤101 ;若收到,则执行步骤102。[0036]这里,所述SNMP请求消息可以是SNMP中规定的get-request、get-next_request或 set-request。
[0037]步骤102:若代理端处理本次收到的SNMP请求消息时出现错误,则根据预置的错
误信息库确定并保存错误信息。
[0038]具体的,代理端对本次收到的SNMP请求消息进行处理,若处理出现错误,则根据预置的错误信息库确定本次处理出现的错误对应的错误信息,并根据SNMP确定本次处理出现的错误对应的错误码,向管理端返回包含所述错误码的SNMP响应信息;若处理没出现错误,则根据SNMP确定本次处理对应的错误码为0,向管理端返回包含所述错误码的SNMP响应信息。
[0039]这里,所述对本次收到的SNMP请求消息进行处理为代理端根据SNMP进行处理,为现有技术,这里不做赘述;所述根据SNMP确定本次处理出现的错误对应的错误码为现有技术中SNMP规定的操作,具体实现方式,这里不做赘述;
[0040]所述根据预置的错误信息库确定并保存错误信息为:提取SNMP请求消息的标识作为本次处理的错误信息的标识,根据预置的错误信息库确定本次处理出现的错误对应的编码和具体的错误描述信息,将所述错误信息的标识、编码和具体的错误描述信息组成错误信息并保存;其中,所述请求消息的标识为现有SNMP技术中规定的请求消息中包括的识别码(ID,Identity);所述预置的错误信息库为根据实际情况编写的,由具体的错误描述信息和其编码组成,预置在代理端。
[0041]所述SNMP响应信息为SNMP规定的协议报文,包括:标识和错误码等,这里不做赘述;其中,所述标识与请求消息一致。
[0042]上述步骤102完成后,所述管理端根据SNMP响应信息中的错误码判断代理端是否出现错误,若错误码为0,则确定对应的代理端没有出现错误,结束处理流程;若错误码不为0,则向代理端发出获取错误信息的请求。
[0043]其中,所述向代理端发出获取错误信息的请求可以为:由网管人员根据实际情况,确定管理端是否向代理端发送获取错误信息的请求;还可以为:预置管理端为一直发送获取错误息的请求;
[0044]所述获取错误信息的请求可以采用SNMP中请求报文的格式,包括:标识和获取错误信息的请求等,编写所述SNMP中请求报文的编写方式为现有技术,这里不做赘述;所述标识为与响应信息一致,即与步骤101中的请求信息中的标识一致。
[0045]步骤103:当代理端收到管理端发来的获取错误信息的请求时,提取匹配的错误信息发送给管理端。
[0046]具体为:代理端判断是否收到管理端发来的获取错误信息的请求,若收到,则根据获取错误信息的请求中的标识,从自身保存的错误信息中查找与获取错误信息的请求的标识一致的错误信息,将所述错误信息发送给管理端;否则,结束处理流程。
[0047]这里,所述将所述错误信息发送给管理端可以为:按照SNMP响应报文的格式将错误信息发送给管理端,具体编写SNMP响应报文的方法为现有技术,这里不做赘述。
[0048]另外,步骤103完成后,管理端将错误信息中的编码和具体的错误描述信息作为显示信息,显示在自身的显示界面;根据显示信息,由网管人员进行后续操作,这里不做赘述。[0049]本发明提出一种获取代理端扩展错误信息的装置,如图2所示,包括:代理端SNMP处理模块21、代理端扩展处理模块22和管理端扩展处理模块23 ;其中,
[0050]代理端SNMP处理模块21,用于若代理端处理本次收到的SNMP请求消息时出现错误,则通知代理端扩展处理模块22确定错误信息;
[0051]代理端扩展处理模块22,用于收到代理端SNMP处理模块21发来的确定错误信息的通知后,根据预置的错误信息库确定并保存错误信息;当收到管理端扩展处理模块23发来的获取错误信息的请求时,提取匹配的错误信息发送给管理端扩展处理模块23 ;
[0052]管理端扩展处理模块23,用于向代理端扩展处理模块22发送获取错误信息的请求,并接收代理端扩展处理模块22发来的错误信息。
[0053]所述代理端SNMP处理模块21,具有现有技术中SNMP规定的代理端所需的所有功倉泛。
[0054]所述装置还包括:管理端SNMP处理模块24,用于接收代理端SNMP处理模块21发来的SNMP响应信息;相应的,所述代理端SNMP处理模块21,具体用于判断所在代理端是否收到SNMP请求消息,若没收到,则继续判断是否收到SNMP请求消息,若收到,则对本次收到的请求消息进行处理,若处理出现错误,则通知代理端扩展处理模块22确定错误信息,并根据SNMP确定本次处理出现的错误对应的错误码,向管理端SNMP处理模块24返回响应信息,若处理没出现错误,则根据SNMP确定本次处理对应的错误码为0,向管理端SNMP处理模块24返回响应信息。
[0055]所述管理端SNMP处理模块24,具有现有技术中SNMP规定的管理端所需的所有功倉泛。
[0056]所述代理端扩展处理模块22,具体用于提取SNMP请求消息的标识作为本次处理的错误信息的标识,根据预置的错误信息库确定本次处理出现的错误对应的编码和具体的错误描述信息,将所述错误信息的标识、编码和具体的错误描述信息组成错误信息并保存。
[0057]所述代理端扩展处理模块22,具体用于保存根据实际情况编写的,由具体的错误描述息和其编码组成的错误息库。
[0058]所述管理端SNMP处理模块24,还用于根据SNMP响应信息中的错误码判断代理端是否出现错误,若错误码为0,则对应的代理端没有出现错误,结束处理流程,若错误码不为0,则向管理端扩展处理模块23发出获取错误信息的通知;相应的,所述管理端扩展处理模块23,还用于接收管理端SNMP处理模块24发来的获取错误信息的通知,向代理端扩展处理模块22发送获取错误信息的请求。
[0059]所述代理端扩展处理模块22,具体用于判断是否收到管理端扩展处理模块23发来的获取错误信息的请求,若收到,则根据获取错误信息的请求中的标识,从自身保存的错误信息中查找与获取错误信息的请求的标识一致的错误信息,将所述错误信息发送给管理端扩展处理模块23,否则,结束操作;相应的,所述管理端扩展处理模块23,还用于将代理端扩展处理模块22发来的错误信息中的编码和具体的错误描述信息作为显示信息,显示在所在管理端的显示界面。
[0060]上述代理端扩展处理模块和代理端SNMP处理模块均作为逻辑模块安装于现有的代理端中;上述管理端扩展处理模块和管理端SNMP处理模块均作为逻辑模块安装于现有的管理端中。 [0061] 以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
【权利要求】
1.一种获取代理端扩展错误信息的方法,其特征在于,该方法包括: 若代理端处理本次收到的简单网络管理协议SNMP请求消息时出现错误,则根据预置的错误信息库确定并保存错误信息; 当代理端收到管理端发来的获取错误信息的请求时,提取匹配的错误信息发送给管理端。
2.根据权利要求1所述的方法,其特征在于,所述若代理端处理本次收到的SNMP请求消息时出现错误,则根据预置的错误信息库确定并保存错误信息,包括: 代理端对本次收到的SNMP请求消息进行处理,若处理出现错误,则根据预置的错误信息库确定本次处理出现的错误对应的错误信息,并根据SNMP确定本次处理出现的错误对应的错误码,向管理端返回包含所述错误码的SNMP响应信息; 若处理没出现错误,则根据SNMP确定本次处理对应的错误码为O,向管理端返回包含所述错误码的SNMP响应信息。
3.根据权利要求1或2所述的方法,其特征在于,所述根据预置的错误信息库确定并保存错误信息,包括:提取SNMP请求消息的标识作为本次处理的错误信息的标识,根据预置的错误信息库确定本次处理出现的错误对应的编码和具体的错误描述信息,将所述错误信息的标识、编码和具体的错误描述信息组成错误信息并保存。
4.根据权利要求2所述的方法,其特征在于,所述向管理端返回包含所述错误码的SNMP响应信息之后,该方法还包括:所述管理端根据SNMP响应信息中的错误码判断代理端是否出现错误,若错误码为O,则结束处理流程;若错误码不为O,则向代理端发出获取错误信息的请求。
5.根据权利要求1所述的方法,其特征在于,所述当代理端收到管理端发来的获取错误信息的请求时,提取匹配的错误信息发送给管理端,包括:代理端判断是否收到管理端发来的获取错误信息的请求,若收到,则根据获取错误信息的请求中的标识,从自身保存的错误信息中查找与获取错误信息的请求的标识一致的错误信息,将所述错误信息发送给管理端;否则,结束处理流程。
6.根据权利要求1或5所述的方法,其特征在于,所述提取匹配的错误信息发送给管理端之后,该方法还包括:管理端将错误信息中的编码和具体的错误描述信息作为显示信息,显示在自身的显示界面。
7.一种获取代理端扩展错误信息的装置,其特征在于,该装置包括:代理端SNMP处理模块、代理端扩展处理模块和管理端扩展处理模块;其中, 代理端SNMP处理模块,用于若代理端处理本次收到的SNMP请求消息时出现错误,则通知代理端扩展处理模块确定错误信息; 代理端扩展处理模块,用于收到代理端SNMP处理模块发来的确定错误信息的通知后,根据预置的错误信息库确定并保存错误信息,当收到管理端扩展处理模块发来的获取错误信息的请求时,提取匹配的错误信息发送给管理端扩展处理模块; 管理端扩展处理模块,用于向代理端扩展处理模块发送获取错误信息的请求,并接收代理端扩展处理模块发来的错误信息。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:管理端SNMP处理模块,用于接收代理端SNMP处理模块发来的SNMP响应信息;相应的,所述代理端SNMP处理模块,具体用于对本次收到的SNMP请求消息进行处理,若处理出现错误,则根据预置的错误信息库确定本次处理出现的错误对应的错误信息,并根据SNMP确定本次处理出现的错误对应的错误码,向管理端SNMP处理模块,返回包含所述错误码的SNMP响应信息;若处理没出现错误,则根据SNMP确定本次处理对应的错误码为O,向管理端SNMP处理模块,返回包含所述错误码的SNMP响应信息。
9.根据权利要求8所述的装置,其特征在于, 所述代理端扩展处理模块,具体用于提取SNMP请求消息的标识作为本次处理的错误信息的标识,根据预置的错误信息库确定本次处理出现的错误对应的编码和具体的错误描述信息,将所述错误信息的标识、编码和具体的错误描述信息组成错误信息并保存。
10.根据权利要求9所述的装置,其特征在于, 所述管理端SNMP处理模块,还用于根据SNMP响应信息中的错误码判断代理端是否出现错误,若错误码为0,则不做处理,若错误码不为0,则向管理端扩展处理模块发出获取错误信息的通知; 相应的,所述管理端扩展处理模块,还用于根据管理端SNMP处理模块发来的获取错误信息的通知,向代理端扩展处理模块发送获取错误信息的请求。
11.根据权利要求10所述的装置,其特征在于, 所述代理端扩展处理模块,具体用于判断是否收到管理端扩展处理模块发来的获取错误信息的请求,若收到,则根据获取错误信息的请求中的标识,从自身保存的错误信息中查找与获取错误信息的请求的标识一致的错误信息,将所述错误信息发送给管理端扩展处理模块,否则,不做操作。
12.根据权利要求11所述的装置,其特征在于, 所述管理端扩展处理模块,还用于将错误信息中的编码和具体的错误描述信息作为显示信息,显示在所在管理端的显示界面。
【文档编号】H04L29/08GK103516530SQ201210204556
【公开日】2014年1月15日 申请日期:2012年6月20日 优先权日:2012年6月20日
【发明者】张文君 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1