书签 分享 收藏 举报 版权申诉 / 12

一种TRAP报文上报的方法及设备.pdf

  • 上传人:t****
  • 文档编号:4304391
  • 上传时间:2018-09-13
  • 格式:PDF
  • 页数:12
  • 大小:448KB
  • 摘要
    申请专利号:

    CN201110339016.1

    申请日:

    2011.11.01

    公开号:

    CN102394773A

    公开日:

    2012.03.28

    当前法律状态:

    驳回

    有效性:

    无权

    法律详情:

    发明专利申请公布后的驳回IPC(主分类):H04L 12/24申请公布日:20120328|||实质审查的生效IPC(主分类):H04L 12/24申请日:20111101|||公开

    IPC分类号:

    H04L12/24

    主分类号:

    H04L12/24

    申请人:

    杭州华三通信技术有限公司

    发明人:

    杨倛

    地址:

    310053 浙江省杭州市高新技术产业开发区之江科技工业园六和路310号华为杭州生产基地

    优先权:

    专利代理机构:

    北京鑫媛睿博知识产权代理有限公司 11297

    代理人:

    龚家骅

    PDF完整版下载: PDF下载
    内容摘要

    本发明公开了一种Trap报文上报的方法及设备,应用于包括简单网络管理协议SNMP服务器和SNMP代理的系统,所述SNMP代理中设置有专用管理信息库MIB节点,该方法包括:SNMP代理向SNMP服务器发送Trap报文,并在接收到所述SNMP服务器返回的Set报文后,根据所述Set报文中携带的Trap标识以及发送方SNMP服务器标识对所述专用MIB节点进行设置;SNMP代理根据其所发送的Trap报文的Trap标识和目的SNMP服务器标识以及所述专用MIB节点中设置的Trap标识以及SNMP服务器标识,判断其所

    权利要求书

    1: 一种 Trap 报文上报的方法, 应用于包括简单网络管理协议 SNMP 服务器和 SNMP 代理 的系统, 其特征在于, 所述 SNMP 代理中设置有专用管理信息库 MIB 节点, 该方法包括 : SNMP 代理向 SNMP 服务器发送 Trap 报文, 并在接收到所述 SNMP 服务器返回的 Set 报文 后, 根据所述 Set 报文中携带的 Trap 标识以及发送方 SNMP 服务器标识对所述专用 MIB 节 点进行设置 ; SNMP 代理根据其所发送的 Trap 报文的 Trap 标识和目的 SNMP 服务器标识以及所述专 用 MIB 节点中设置的 Trap 标识以及 SNMP 服务器标识, 判断其所发送的 Trap 报文是否被相 应目的 SNMP 服务器接收, 并根据判断结果进行相应处理。2: 如权利要求 1 所述的方法, 其特征在于, 所述 SNMP 代理判断其所发送的 Trap 报文是 否被相应目的 SNMP 服务器接收, 具体为 : 所述 SNMP 代理比较自身存储的其所发送的 Trap 报文的 Trap 标识以及目的 SNMP 服务 器标识和专用 MIB 节点中设置的 Trap 标识以及 SNMP 服务器标识 ; 当专用 MIB 节点中设置 有 SNMP 代理所发送的 Trap 报文的 Trap 标识, 且所设置的 SNMP 服务器标识与对应的目的 SNMP 服务器标识相同时, 判断该 Trap 报文被相应目的 SNMP 服务器接收 ; 当专用 MIB 节点中 未设置 SNMP 代理发送的 Trap 报文的 Trap 标识, 或专用 MIB 节点中未设置对应的目的 SNMP 服务器标识时, 判断该 Trap 报文未被相应目的 SNMP 服务器接收。3: 如权利要求 1 所述的方法, 其特征在于, 所述根据判断结果进行相应处理, 具体包 括: 当所述 SNMP 代理判断 Trap 报文未被相应目的 SNMP 服务器接收时, 所述 SNMP 代理向 所述 SNMP 服务器重新发送 Trap 报文, 并记录该 Trap 报文的发送次数 ; 当该 Trap 报文的发送次数等于预设最大发送次数, 且 Trap 报文仍未被相应目的 SNMP 服务器接收时, 所述 SNMP 代理进行报文发送失败处理。4: 如权利要求 1 所述的方法, 其特征在于, 所述 SNMP 代理和 SNMP 服务器中均指定了需 要响应的特定 Trap 报文 ; 其中, SNMP 服务器中对应同一 SNMP 代理所指定的特定 Trap 报文 与该 SNMP 代理所指定的特定 Trap 报文相同 ; 所述 SNMP 代理判断其所发送的 Trap 报文是否被相应目的 SNMP 服务器接收, 具体为 : 所述 SNMP 代理确定所发送的 Trap 报文需要响应时, 判断所发送的 Trap 报文是否被相 应目的 SNMP 服务器接收 ; 其中, 当 SNMP 服务器确定接收到的 Trap 报文需要响应时, 向发送 该 Trap 报文的 SNMP 代理返回 Set 报文。5: 一种简单网络管理协议 SNMP 代理设备, 应用于包括 SNMP 服务器和 SNMP 代理的系 统, 其特征在于, 所述 SNMP 代理中设置有专用管理信息库 MIB 节点, 所述 SNMP 代理包括 : 发送模块, 用于向 SNMP 服务器发送 Trap 报文 ; 接收模块, 用于接收 SNMP 服务器返回的 Set 报文 ; 设置模块, 用于在所述接收模块接收到 SNMP 服务器返回的 Set 报文后, 根据所述 Set 报文中携带的 Trap 标识以及发送方 SNMP 服务器标识对所述专用 MIB 节点中进行设置 ; 判断模块, 用于根据所发送的 Trap 报文的 Trap 标识和目的 SNMP 服务器标识以及所述 专用 MIB 节点中设置的 Trap 标识以及 SNMP 服务器标识, 判断所发送的 Trap 报文是否被相 应目的 SNMP 服务器接收 ; 处理模块, 用于根据所述判断模块的判断结果进行相应处理。 26: 如权利要求 5 所述的 SNMP 代理设备, 其特征在于, 所述判断模块具体用于 : 比较自身存储的所发送的 Trap 报文的 Trap 标识以及目的 SNMP 服务器标识和专用 MIB 节点中设置的 Trap 标识以及 SNMP 服务器标识 ; 当专用 MIB 节点中设置有 SNMP 代理所发送 的 Trap 报文的 Trap 标识, 且所设置的 SNMP 服务器标识与对应的目的 SNMP 服务器标识相 同时, 判断该 Trap 报文被相应目的 SNMP 服务器接收 ; 当专用 MIB 节点中未设置 SNMP 代理 发送的 Trap 报文的 Trap 标识, 或专用 MIB 节点中未设置对应的目的 SNMP 服务器标识时, 判断该 Trap 报文未被相应目的 SNMP 服务器接收。7: 如权利要求 5 所述的 SNMP 代理设备, 其特征在于, 所述处理模块具体用于 : 当判断模块判断 Trap 报文未被相应目的 SNMP 服务器接收时, 指示所述发送模块向所 述 SNMP 服务器重新发送 Trap 报文, 并记录该 Trap 报文的发送次数 ; 当该 Trap 报文的发送 次数等于预设最大发送次数, 且 Trap 报文仍未被相应目的 SNMP 服务器接收时, 进行报文发 送失败处理。8: 如权利要求 5 所述的 SNMP 代理设备, 其特征在于, 所述 SNMP 代理和 SNMP 服务器中 均指定了需要响应的特定 Trap 报文 ; 其中, SNMP 服务器中对应同一 SNMP 代理所指定的特 定 Trap 报文与该 SNMP 代理所指定的特定 Trap 报文相同 ; 所述判断模块具体用于, 当确定所发送的 Trap 报文需要响应时, 判断所发送的 Trap 报 文是否被相应目的 SNMP 服务器接收 ; 其中, 当 SNMP 服务器确定接收到的 Trap 报文需要响 应时, 向发送该 Trap 报文的 SNMP 代理返回 Set 报文。

    说明书


    一种 Trap 报文上报的方法及设备

        【技术领域】
         本发明涉及通信技术领域, 尤其涉及一种 Trap 报文上报的方法及设备。背景技术 SNMP(Simple Network Management Protocol, 简单网络管理协议 ) 协议是基于 UDP(User Datagram Protocol, 用户数据包协议 ) 协议的网络管理协议, 该协议是不基于连 接的。对于 Trap 来说, SNMP 代理 ( 一般由网络设备扮演 ) 上报 Trap 后, 无法保证其真正 的发送成功, 并由 SNMP 服务器 ( 一般由网管系统扮演 ) 接收。若发生报文丢失, SNMP 代理 和 SNMP 服务器均无法获知, 因此, 在现有的 SNMP 管理中 Trap 是不可靠的。
         然而, Trap 是 SNMP 代理向 SNMP 服务器主动上报其状态和问题的唯一途径, 也是 网管人员对网络设备状态监控的重要手段。发生严重的问题时, 若上报该问题的 Trap 因丢 包等原因发送失败, 则由于 SNMP 服务器将无法获知该问题, 进而导致网管人员对网络状态 的误判, 延误问题的解决。
         为了解决上述问题, 现有技术中, 对于 SNMP 代理上重要的状态参数, 由 SNMP 服务 器定时进行轮询, 主动探测 SNMP 代理的状态。
         但由于通过 SNMP 服务器主动轮询 SNMP 状态, 会影响 SNMP 服务器和 SNMP 代理的 性能, 并占用网络带宽, 而一般情况下 SNMP 代理的状态为正常, 因此由 SNMP 服务器主动轮 询 SNMP 代理状态的方式, 影响了 SNMP 服务器和 SNMP 代理的性能, 并造成了网络资源的浪 费, 且轮询周期越小, 影响和浪费越严重。此外, 与 SNMP 代理主动上报状态相比, SNMP 服务 器主动轮询 SNMP 代理状态的方式无法保证问题发现的及时性。
         发明内容
         本发明提供了一种 Trap 报文上报的方法及其设备, 用以提高 Trap 报文上报的可靠性。 为了达到以上目的, 本发明提供一种 Trap 报文上报的方法, 应用于包括简单网络 管理协议 SNMP 服务器和 SNMP 代理的系统, 所述 SNMP 代理中设置有专用管理信息库 MIB 节 点, 该方法包括 :
         SNMP 代理向 SNMP 服务器发送 Trap 报文, 并在接收到所述 SNMP 服务器返回的 Set 报文后, 根据所述 Set 报文中携带的 Trap 标识以及发送方 SNMP 服务器标识对所述专用 MIB 节点进行设置 ;
         SNMP 代理根据其所发送的 Trap 报文的 Trap 标识和目的 SNMP 服务器标识以及所 述专用 MIB 节点中设置的 Trap 标识以及 SNMP 服务器标识, 判断其所发送的 Trap 报文是否 被相应目的 SNMP 服务器接收, 并根据判断结果进行相应处理。
         所述 SNMP 代理判断其所发送的 Trap 报文是否被相应目的 SNMP 服务器接收, 具体 为:
         所述 SNMP 代理比较自身存储的其所发送的 Trap 报文的 Trap 标识以及目的 SNMP
         服务器标识和专用 MIB 节点中设置的 Trap 标识以及 SNMP 服务器标识 ; 当专用 MIB 节点中 设置有 SNMP 代理所发送的 Trap 报文的 Trap 标识, 且所设置的 SNMP 服务器标识与对应的 目的 SNMP 服务器标识相同时, 判断该 Trap 报文被相应目的 SNMP 服务器接收 ; 当专用 MIB 节点中未设置 SNMP 代理发送的 Trap 报文的 Trap 标识, 或专用 MIB 节点中未设置对应的目 的 SNMP 服务器标识时, 判断该 Trap 报文未被相应目的 SNMP 服务器接收。
         所述根据判断结果进行相应处理, 具体包括 :
         当所述 SNMP 代理判断 Trap 报文未被相应目的 SNMP 服务器接收时, 所述 SNMP 代 理向所述 SNMP 服务器重新发送 Trap 报文, 并记录该 Trap 报文的发送次数 ;
         当该 Trap 报文的发送次数等于预设最大发送次数, 且 Trap 报文仍未被相应目的 SNMP 服务器接收时, 所述 SNMP 代理进行报文发送失败处理。
         所述 SNMP 代理和 SNMP 服务器中均指定了需要响应的特定 Trap 报文 ; 其中, SNMP 服务器中对应同一 SNMP 代理所指定的特定 Trap 报文与该 SNMP 代理所指定的特定 Trap 报 文相同 ;
         所述 SNMP 代理判断其所发送的 Trap 报文是否被相应目的 SNMP 服务器接收, 具体 为:
         所述 SNMP 代理确定所发送的 Trap 报文需要响应时, 判断所发送的 Trap 报文是否 被相应目的 SNMP 服务器接收 ; 其中, 当 SNMP 服务器确定接收到的 Trap 报文需要响应时, 向 发送该 Trap 报文的 SNMP 代理返回 Set 报文。
         本发明实施例提供一种 SNMP 代理设备, 应用于包括 SNMP 服务器和 SNMP 代理的系 统, 所述 SNMP 代理中设置有专用管理信息库 MIB 节点, 所述 SNMP 代理包括 :
         发送模块, 用于向 SNMP 服务器发送 Trap 报文 ;
         接收模块, 用于接收 SNMP 服务器返回的 Set 报文 ;
         设置模块, 用于在所述接收模块接收到 SNMP 服务器返回的 Set 报文后, 根据所述 Set 报文中携带的 Trap 标识以及发送方 SNMP 服务器标识对所述专用 MIB 节点中进行设置 ;
         判断模块, 用于根据所发送的 Trap 报文的 Trap 标识和目的 SNMP 服务器标识以及 所述专用 MIB 节点中设置的 Trap 标识以及 SNMP 服务器标识, 判断所发送的 Trap 报文是否 被相应目的 SNMP 服务器接收 ;
         处理模块, 用于根据所述判断模块的判断结果进行相应处理。
         所述判断模块具体用于 :
         比较自身存储的所发送的 Trap 报文的 Trap 标识以及目的 SNMP 服务器标识和专 用 MIB 节点中设置的 Trap 标识以及 SNMP 服务器标识 ; 当专用 MIB 节点中设置有 SNMP 代理 所发送的 Trap 报文的 Trap 标识, 且所设置的 SNMP 服务器标识与对应的目的 SNMP 服务器 标识相同时, 判断该 Trap 报文被相应目的 SNMP 服务器接收 ; 当专用 MIB 节点中未设置 SNMP 代理发送的 Trap 报文的 Trap 标识, 或专用 MIB 节点中未设置对应的目的 SNMP 服务器标识 时, 判断该 Trap 报文未被相应目的 SNMP 服务器接收。
         所述处理模块具体用于 :
         当判断模块判断 Trap 报文未被相应目的 SNMP 服务器接收时, 指示所述发送模块 向所述 SNMP 服务器重新发送 Trap 报文, 并记录该 Trap 报文的发送次数 ; 当该 Trap 报文的 发送次数等于预设最大发送次数, 且 Trap 报文仍未被相应目的 SNMP 服务器接收时, 进行报文发送失败处理。
         所述 SNMP 代理和 SNMP 服务器中均指定了需要响应的特定 Trap 报文 ; 其中, SNMP 服务器中对应同一 SNMP 代理所指定的特定 Trap 报文与该 SNMP 代理所指定的特定 Trap 报 文相同 ;
         所述判断模块具体用于, 当确定所发送的 Trap 报文需要响应时, 判断所发送的 Trap 报文是否被相应目的 SNMP 服务器接收 ; 其中, 当 SNMP 服务器确定接收到的 Trap 报文 需要响应时, 向发送该 Trap 报文的 SNMP 代理返回 Set 报文。
         本发明的有益技术效果包括 :
         本发明中, 通过在 SNMP 代理中设置专用 MIB 节点, 用于确定 Trap 报文的发送结 果。SNMP 代理向 SNMP 服务器发送 Trap 报文后, 根据其所发送的 Trap 报文的 Trap 标识和 目的 SNMP 服务器标识以及所述专用 MIB 节点中设置的 Trap 标识以及 SNMP 服务器标识, 判 断其所发送的 Trap 报文是否被相应目的 SNMP 服务器接收, 在保证 Trap 报文上报可靠性的 同时, 对 SNMP 代理和 SNMP 服务器性能的影响以及对网络资源的消耗均较低。 附图说明
         图 1 为本发明实施例提供的 Trap 报文上报方法的流程示意图 ; 图 2 为本发明实施例提供的 SNMP 代理设备的结构示意图。具体实施方式
         为 了 更好 地理解本 发明实 施例提供的 技术 方案, 下面 对 SNMP 协议 数据单 元 (Protocol Data Unit, 以下简称 PDU) 类型以及 SNMP MIB(Management Information Base, 管理信息库 ) 进行简单的描述。
         SNMP 协 议 中 定 义 了 5 种 PDU 类 型, 分 别 对 应 5 种 SNMP 操 作 的 报 文 类 型 : Get-Request、 Get-Response、 Get-Next-Request、 Set-Request、 Trap。 其 中, SNMP 服 务 器通 过 Get-Request 报文从拥 有 SNMP 代 理 的网 络 设 备中 检 索 信息, 而 SNMP 代 理 则用 Get-Response 报文响应, 交互的信息可以包括 : 系统的名字, 系统自启动后正常运行的时 间, 系统中的网络接口数等。Get-Next-Request 用于和 Get-Request 组合起来查询特定的 表对象中的列元素。Set-Request 报文 ( 以下简称 Set 报文 ) 则用于对网络设备进行远程 配置, 可以包括 : 设置设备名、 设置设备属性、 删除设备或使某一个设备属性有效 / 无效等。 SNMP 代理使用 Trap 向 SNMP 服务器发送非请求报文, 一般用于描述某一事件的发生, 如端口 down、 丢包率过高、 新用户登录等。
         SNMP MIB 指明了网络元素所维持的变量 ( 即能够被管理进程查询和设置的信 息 )。MIB 给出了一个网络中所有可能的被管理对象的集合的数据结构。
         在现有技术中, SNMP 代理通过 Trap 报文上报状态和问题的机制是非闭环的, 即 SNMP 代理发送 Trap 报文后, 无论 SNMP 服务器是否收到该 Trap 报文, 均不会返回响应报文。 因此, SNMP 代理无法获知所发送的 Trap 报文是否发送成功 ; 当该 Trap 报文发送失败时, SNMP 代理和 SNMP 服务器均无法获知。而由于一般情况下 SNMP 代理的状态应为正常, 因此 通过 SNMP 服务器定时轮询 SNMP 代理上重要状态参数的方式会造成网络资源的浪费, 且对 SNMP 代理和 SNMP 服务器性能的影响较大。同时, 该方式也无法保证问题发现的及时性。针对现有技术中存在的上述缺陷, 本发明实施例提供了一种 Trap 报文上报的技 术方案, 通过在 SNMP 代理中设置专用 MIB 节点, 用于确定 Trap 报文的发送结果。当 SNMP 服务器接收到 SNMP 代理发送的 Trap 报文时, 该 SNMP 服务器向 SNMP 代理返回 Set 报文, 以 对 SNMP 代理中专用 MIB 节点中对应该 Trap 的变量进行设置。SNMP 代理在发送 Trap 报文 后, 根据专用 MIB 节点中对应该 Trap 的变量是否被设置确定 Trap 报文发送是否成功。在 本发明实施例中, 在保证 Trap 报文上报可靠性的同时, 对 SNMP 代理和 SNMP 服务器性能的 影响以及对网络资源的消耗均较低。
         在本发明实施例提供的技术方案中, 专用 MIB 节点中记录的变量可以包括但不限 于: Trap 标识 ( 通过该 Trap 标识可以唯一确定一条 Trap 报文 ) 和 SNMP 服务器标识。相应 地, SNMP 服务器返回的 Set 报文中携带的信息可以包括但不限于 : Trap 标识和 SNMP 服务器 标识。SNMP 代理接收到 SNMP 服务器返回的 Set 报文后, 根据其中携带的信息对专用 MIB 节 点中对应的变量进行设置。SNMP 代理根据该专用 MIB 节点判断 Trap 报文是否被指定 SNMP 服务器接收到, 并可在判断 Trap 报文未被指定 SNMP 服务器接收到时进行相应处理。
         下面结合附图对本发明实施例提供的技术方案进行详细描述。
         本发明实施例提出了一种 Trap 报文上报的方法, 该方法应用于包括 SNMP 代理和 SNMP 服务器的系统中, 该 SNMP 代理中设置有专用 MIB 节点, 该 MIB 节点中记录的变量包括 : Trap 标识以及 SNMP 服务器标识。 如图 1 所示, 为本发明实施例提供的 Trap 报文上报方法的流程示意图, 可以包括 以下步骤 :
         步骤 101、 SNMP 代理向 SNMP 服务器发送 Trap 报文。
         具体的, 当网络设备中发生端口 down 或丢包率过高等故障时, 网络设备中设置的 SNMP 代理可以通过 Trap 报文将故障上报给 SNMP 服务器, 以使网管人员获知该网络设备发 生的故障, 进而采取相关的措施。其中, 当 SNMP 代理发送 Trap 报文后, 可以记录该 Trap 报 文的相关信息, 如 Trap 标识、 该 Trap 报文的目的服务器的标识、 Trap 报文发送时间戳等。
         步骤 102、 SNMP 服务器接收到 SNMP 代理发送的 Trap 报文后, 向该 SNMP 代理报文 返回 Set 报文。其中, 该 Set 报文中携带有 Trap 标识及 SNMP 服务器标识。
         具体的, 为了保证 Trap 报文上报的可靠性, SNMP 服务器接收到 SNMP 代理发送的 Trap 报文后, 向该 SNMP 代理报文返回 Set 报文, 以使 SNMP 代理获知该 Trap 报文已发送成 功。
         步骤 103、 SNMP 代理接收到 SNMP 服务器响应的 Set 报文后, 根据接收到的 Set 报 文对专用 MIB 节点进行设置。
         具体的, SNMP 代理接收到 SNMP 服务器返回的 Set 报文后, 获取其中携带的 Trap 标 识、 SNMP 服务器标识等信息, 并根据获取到的信息对专用 MIB 节点进行设置。
         步骤 104, SNMP 代理根据所发送的 Trap 报文的 Trap 标识和目的 SNMP 服务器标识 以及专用 MIB 节点中设置的 Trap 标识以及 SNMP 服务器标识, 判断其所发送的 Trap 报文是 否被相应目的 SNMP 服务器接收, 并根据判断结果进行相应处理。
         具体的, SNMP 代理发送 Trap 报文后, 可以通过比较自身存储的 Trap 报文的相关 信息和专用 MIB 节点中对应变量的设置情况确定相应的 Trap 报文是否发送成功。具体的, SNMP 代理比较自身存储的所发送的 Trap 报文的 Trap 标识以及目的 SNMP 服务器标识和专
         用 MIB 节点中记录的 Trap 标识以及 SNMP 服务器标识 ; 当专用 MIB 节点中设置有 SNMP 代理 所发送的 Trap 报文的 Trap 标识, 且所设置的 SNMP 服务器标识与对应的目的 SNMP 服务器 标识相同时, 判断该 Trap 报文被相应目的 SNMP 服务器接收 ; 当专用 MIB 节点中未设置 SNMP 代理发送的 Trap 报文的 Trap 标识, 或专用 MIB 节点中未设置对应的目的 SNMP 服务器标识 时, 判断该 Trap 报文未被指定的 SNMP 服务器接收。
         需要注意的是, 在本发明实施例提供的技术方案中, 专用 MIB 节点中还可以记录 SNMP 服务器接收到 Trap 报文的时间戳等其他变量。相应地, SNMP 服务器返回给 SNMP 代理 的 Set 报文中也可以携带接收到 Trap 报文的时间戳。SNMP 服务器可以获取 SNMP 代理记录 的一段时间内该 SNMP 代理发送 Trap 报文的发送时间戳和专用 MIB 节点中记录的 SNMP 服 务器接收到对应 Trap 报文的时间戳, 并根据获取到的信息对当前网络状况和 / 或对应 SNMP 服务器的状况进行分析。
         进一步的, 为了提高可靠性, SNMP 代理发送 Trap 报文后, 若在预设时间内专用 MIB 节点中对应该 Trap 报文的变量仍未被指定的 SNMP 服务器设置, 则认为所发送的 Trap 报文 没有被成功发送到该指定 SNMP 服务器。此时 SNMP 代理可以重新向未确认收到 Trap 报文 的 SNMP 服务器发送该 Trap 报文, 直到专用 MIB 节点中对应该 Trap 报文的变量被设置。 进一步的, 针对允许重传 Trap 报文的情况, 为了避免由于网络出现问题而导致 Trap 报文的无限重传风暴, 在本发明实施例中, 可以预先在 SNMP 代理中设置 Trap 报文的 最大发送次数。SNMP 代理向 SNMP 服务器发送 Trap 报文后, 记录该 Trap 报文的发送次数, 若该 Trap 报文的发送次数等于预设的最大发送次数, 且在预设时间内专用节点中对应该 Trap 报文的变量仍未被设置, 则 SNMP 代理确定由于某些原因难以完成 Trap 报文的上报, 进 行报文发送失败处理。
         其中, 该报文发送失败处理可以包括放弃发送该 Trap 报文, 进行报警 ( 如发出蜂 鸣报警 ), 尝试与该 SNMP 服务器重新建立连接, 触发向备用 SNMP 服务器发送 Trap 报文等。
         为了提升 Trap 报文上报的效率, 并降低网络资源的消耗, 在本发明实施例中, SNMP 代理和 SNMP 服务器中均可以指定需要响应的特定 Trap 报文。一方面, SNMP 代理发送 Trap 报文时, 可以判断该 Trap 报文是否需要响应, 并当判断为是时, 根据专用 MIB 节点中的 信息判断 Trap 报文是否被指定 SNMP 服务器接收。另一方面, SNMP 服务器接收到 Trap 报 文后, 判断是否需要响应该 Trap 报文。若判断为是, 则向发送该 Trap 报文的 SNMP 代理返 回 Set 报文 ; 否则, 不进行响应。例如, 可以指定上报端口 down、 丢包率过高等故障的 Trap 报文为特定 Trap 报文 ( 重要 Trap 报文 ), 需要进行响应 ; 而上报新用户登录、 新命令行配置 的 Trap 报文为普通 Trap 报文, 不需要进行响应。则当 SNMP 服务器接收到上报端口 down、 丢包率过高等故障的 Trap 报文时, 向发送该 Trap 报文的 SNMP 代理返回 Set 报文 ; 当接收 到上报新用户登录、 新命令行配置的 Trap 报文时, 则不进行响应。其中, SNMP 服务器中对 应同一 SNMP 代理所指定的特定 Trap 报文与该 SNMP 代理所指定的特定 Trap 报文相同
         需要注意的是, 本发明实施例提供的技术方案中, 对于不同设备, SNMP 服务器指定 的特定报文可以不同。即对同一类型的 Trap 报文 ( 如上报新命令行配置的 Trap 报文 ), 可以根据发送 Trap 报文的设备确定是否指定其为特定 Trap 报文。例如, 对于核心网络设 备中 SNMP 代理发送的上报新命令行配置的 Trap 报文, SNMP 服务器可以认为其为特定 Trap 报文 ( 重要 Trap 报文 ), 需要进行响应 ; 而对于普通 ( 非核心 ) 网络设备中 SNMP 代理发送
         的上报新命令行配置的 Trap 报文, SNMP 服务器可以认为其为普通 Trap 报文, 不需要进行 响应。相应地, SNMP 代理发送的 Trap 报文中还需要携带网络设备的标识信息。
         通过以上流程可以看出, 在本发明实施例中, 通过在 SNMP 代理中设置专用 MIB 节 点, 用于确定 Trap 报文的发送结果。 SNMP 代理向 SNMP 服务器发送 Trap 报文后, 根据其所发 送的 Trap 报文的 Trap 标识和目的 SNMP 服务器标识以及所述专用 MIB 节点中设置的 Trap 标识以及 SNMP 服务器标识, 判断其所发送的 Trap 报文是否被相应目的 SNMP 服务器接收, 在保证 Trap 报文上报可靠性的同时, 对 SNMP 代理和 SNMP 服务器性能的影响以及对网络资 源的消耗均较低。
         基于相同的技术构思, 本发明实施例还提供了一种 SNMP 代理设备, 应用于包括 SNMP 服务器和 SNMP 代理的系统, 所述 SNMP 代理中设置有专用管理信息库 MIB 节点。
         如图 2 所示, 为本发明实施例提供的 SNMP 代理设备的结构示意图, 可以包括 :
         发送模块 201, 用于向 SNMP 服务器发送 Trap 报文 ;
         接收模块 202, 用于接收 SNMP 服务器返回的 Set 报文 ;
         设置模块 203, 用于在接收模块 202 接收到 SNMP 服务器返回的 Set 报文后, 根据所 述 Set 报文中携带的 Trap 标识以及发送方 SNMP 服务器标识对所述专用 MIB 节点中进行设 置;
         判断模块 204, 用于根据所发送的 Trap 报文的 Trap 标识和目的 SNMP 服务器标识 以及所述专用 MIB 节点中设置的 Trap 标识以及 SNMP 服务器标识, 判断所发送的 Trap 报文 是否被相应目的 SNMP 服务器接收 ;
         处理模块 205, 用于根据判断模块 204 的判断结果进行相应处理。
         其中, 判断模块 204 可以具体用于, 比较自身存储的所发送的 Trap 报文的 Trap 标 识以及目的 SNMP 服务器标识和专用 MIB 节点中设置的 Trap 标识以及 SNMP 服务器标识 ; 当 专用 MIB 节点中设置有 SNMP 代理所发送的 Trap 报文的 Trap 标识, 且所设置的 SNMP 服务 器标识与对应的目的 SNMP 服务器标识相同时, 判断该 Trap 报文被相应目的 SNMP 服务器接 收; 当专用 MIB 节点中未设置 SNMP 代理发送的 Trap 报文的 Trap 标识, 或专用 MIB 节点中 未设置对应的目的 SNMP 服务器标识时, 判断该 Trap 报文未被相应目的 SNMP 服务器接收。
         为了提高可靠性, SNMP 代理发送 Trap 报文后, 若在预设时间内专用 MIB 节点中对 应该 Trap 报文的变量仍未被指定的 SNMP 服务器设置, 则认为所发送的 Trap 报文没有被成 功发送到该指定 SNMP 服务器。此时 SNMP 代理可以重新向未确认收到 Trap 报文的 SNMP 服 务器发送该 Trap 报文, 直到专用 MIB 节点中对应该 Trap 报文的变量被设置。
         针对允许重传 Trap 报文的情况, 为了避免由于网络出现问题而导致 Trap 报文的 无限重传风暴, 在本发明实施例中, 处理模块 205 可以具体用于, 当判断模块 204 判断 Trap 报文未被相应目的 SNMP 服务器接收时, 指示发送模块 201 向所述 SNMP 服务器重新发送 Trap 报文, 并记录该 Trap 报文的发送次数 ; 当该 Trap 报文的发送次数等于预设最大发送 次数, 且 Trap 报文仍未被相应目的 SNMP 服务器接收时, 进行报文发送失败处理。
         其中, 该报文发送失败处理可以包括放弃发送该 Trap 报文, 进行报警 ( 如发出蜂 鸣报警 ), 尝试与该 SNMP 服务器重新建立连接, 触发向备用 SNMP 服务器发送 Trap 报文等。
         为了提升 Trap 报文上报的效率, 并降低网络资源的消耗, 所述 SNMP 代理和 SNMP 服务器中均指定了需要响应的特定 Trap 报文 ; 其中, SNMP 服务器中对应同一 SNMP 代理所指定的特定 Trap 报文与该 SNMP 代理所指定的特定 Trap 报文相同 ;
         相应地, 判断模块 204 则可以具体用于, 当确定所发送的 Trap 报文需要响应时, 判 断所发送的 Trap 报文是否被相应目的 SNMP 服务器接收 ; 其中, 当 SNMP 服务器确定接收到 的 Trap 报文需要响应时, 向发送该 Trap 报文的 SNMP 代理返回 Set 报文。
         通过以上的实施方式的描述, 本领域的技术人员可以清楚地了解到本发明可借助 软件加必需的通用硬件平台的方式来实现, 当然也可以通过硬件, 但很多情况下前者是更 佳的实施方式。基于这样的理解, 本发明的技术方案本质上或者说对现有技术做出贡献的 部分可以以软件产品的形式体现出来, 该计算机软件产品存储在一个存储介质中, 包括若 干指令用以使得一台终端设备 ( 可以是手机, 个人计算机, 服务器, 或者网络设备等 ) 执行 本发明各个实施例所述的方法。
         以上所述仅是本发明的优选实施方式, 应当指出, 对于本技术领域的普通技术人 员来说, 在不脱离本发明原理的前提下, 还可以做出若干改进和润饰, 这些改进和润饰也应 视本发明的保护范围。

    关 键  词:
    一种 TRAP 报文 上报 方法 设备
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:一种TRAP报文上报的方法及设备.pdf
    链接地址:https://www.zhuanlichaxun.net/p-4304391.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1