基于SNMP网络管理系统的实现

基于SNMP⽹络管理系统的实现
个推作为国内最专业的第三⽅消息推送技术解决⽅案的服务商接⼊SDK⽤户数⾼达90亿,⽇活跃⽤户达6.5亿。⽇分发消息23亿。在实际的运维环境中,需要时刻对⽹络设备进⾏监控和管理,并包含了各种⽹络设备,包括交换机,路由器,服务器等等。
⽹络是计算机通信⽹的重要组成部分,它通过互连和协同⼯作来构成⼤范围的信息处理系统。⽹络管理指通过监督,组织,控制⽹络通信服务和信息处理等活动,确保计算机⽹络的持续正常运⾏,并在运⾏出现异常时及时响应和排除故障。如何有效的进⾏区域内⽹络的管理是计算机⽹络能够有效,可靠,安全,经济的提供服务的重要保障。
认识SNMP协议
意义价值:SNMP协议可以为不同⼚家,不同类型,不同型号的设备,定义⼀个统⼀的接⼝和协议,使得管理员可以通过⽹络,使⽤通⽤的规则管理位于不同物理空间的设备,从⽽⼤⼤提⾼⽹络管理的效率,简化⽹络管理员的⼯作。
SNMP协议处于OSI七层模型中的应⽤层协议。在1988年被制定,并被Internet体系结构委员会(IAB)采纳作为⼀个短期的⽹络管理解决⽅案;由于SNMP的简单性,在Internet时代得到了蓬勃的发展,1992年发布了SNMPv2版本,以增强SNMPv1的安全性和功能。现在,已经有了SNMPv3版本。⽬前⼤部分的⽹络设备如交换机,路由器等都⽀持SNMP协议规范,SNMP协议已经成为了⽹络管理领域中的⼯业标准。
⼀套完整的SNMP⽹络设备监控系统系统主要包括管理信息库(MIB)、管理信息结构(SMI)及SN
MP报⽂协议,管理⼯作站利⽤SNMP 进⾏远程监控管理⽹络上的所有⽀持这种协议的设备(如计算机⼯作站、终端、路由器、Hub、⽹络打印机等),主要负责监视设备状态、修改设备配置、接受事件警告等。
1. Get_Request:Manager端向Agent端发送读取信息的请求;
2. Get_ Next_Request:Manager端向Agent端 发送Get-Request组合起来查询特定的表对象中的列元素。增益控制
3. Get_Response:Agent端对Manager端请求的响应;(被动响应)
4. Set_Request:Manager端向Agent端发送设备设置信息,Agent端可根据设置信息来改变设备状态(包括设备名、设备属性、删除
设备或使某⼀个设备属性有效/⽆效等);
5. Trap:当Agent端发⽣某些事件时,Agent端主动向Manager端发送陷阱信息,如关机事件。
Java Demo(实现对某⼀⽹络主机获取主机名称)
OID: 1.3.6.1.2.1.1.5.0
电热水器控制器Value: com-router
SNMP4J 重要的类和接⼝
Snmp:该包中的核⼼类,它提供发送和接受SNMP PDU的⽅法。拥有同步和异步的两种⽅式。Snmp和传输协议⽆关。⽀持添加特定TransportMapping实例通过调⽤addTransportMapping(TransportMapping TransportMapping)⽅法或使⽤⾮默认的构造函数创建⼀个Snmp实例与相应的传输映射。传输映射⽤于传⼊和传出消息。
TransportMapping:该接⼝代表了SNMP4J所使⽤的传输层协议。这也是SNMP4J⼀⼤特⾊的地⽅。
按照RFC的规定,SNMP是只使⽤UDP作为传输层协议的。⽽SNMP4J⽀持管理端和代理端使⽤UDP或者TCP进⾏传输。该接⼝有两个⼦接⼝。
PDU:PDU类代表⼀个SNMP协议数据单元。PDU(针对Snmpv2c)、PDUv1(针对Snmpv1)、ScopedPDU(针对Snmpv3),但三个类除各⾃特别的⼀些参数外,都基本相同。PDU作为基类,往往⾜够提供⼤部分的特性。
挤爆胶囊Target*:⼀个Target接⼝定义了远程SNMP实体的抽象表⽰。带有⼀个地址对象,以及协议参数,⽐如重试次数和超时时间等。对于SNMPv1和SNMPv2c,适⽤CommunityTarget的实现。SNMPv3,适⽤UserTarget。
SNMP4J API调⽤流程
1. 创建协议。⼀般可以使⽤DefaultUdpTransportMapping实例,作为传输层协议。
2. 创建SNMP对象。填充TransportMapping作为构造参数。
3. 开启监听。
4. 构造⽬标。设置Address,版本号,重试次数,超时时间等参数。
5. 创建报⽂(PDU)。设置请求⽅式,查询的OID。
6. 发送报⽂。同步⽅式:调⽤snmp.send ⽅法;异步⽅式:需要设置。焊接三通
7. 获取ResponseEvent。同步⽅式阻塞返回,异步⽅式在监听线程中的回调函数中获得。Response(),获取回复
报⽂。
8. 释放资源。Snmp.close()。
SNMP⽹络管理系统
⼀个SNMP管理的⽹络包含三个主要部分:被管理设备、代理和⽹络管理系统(NMS)。被管理设备就是处于被管理的⽹络中的多个设备,负责收集和存储管理信息;代理是安装在被管理设备中的软件程序(如⼤部分交换机⾃带SNMP代理程序,仅需开启即可);⽹络管理系统就是⽤于监控被管理设备执⾏状态的软件系统。SNMP进⾏⽹络管理时,⼀般采⽤Manager/Agent结构集中式管理信息的⽅式,管理⼯作站为Manager端,⽹络中的各个设备为Agent端。
三聚氰胺甲醛树脂>烘干机组SMI管理消息结构
管理信息结构SMI是SNMP的基础部分,定义了SNMP框架所使⽤的信息的组成,结构和表⽰,为描述MIB对象和协议如何交换信息奠定了基础。
MIB管理消息库
在复杂的⽹络环境中,⽹络设备的类型各式各样,所以设备的信息也因设备类型不同⽽不同,为了将这些信息能通过⽹络管理系统进⾏管理,必须采⽤⼀套标准来描述这些设备的信息,所以SNMP定义了MIB(Management Information Base)。MIB分为标准MIB和私有MIB,标准MIB适⽤于所有⽹络设备,⽽私有的MIB则由设备⼚家向有关机构申请后⾃⾏定义。MIB采⽤树状结构,每个节点每个结点分配了⼀个字符串和⼀个⼩整数作为标号,即OID(Object Identifier)。
MIB结构树中任⼀对象的名字就是从根到对象结点的路径上各个节点的标号序列,标号之间⽤点分隔。
如被管理设备中每个⽹络接⼝的IP地址信息表⽰为:id.ip,它的数字表⽰为:1.3.6.1.2.1.4。
标准MIB的基本OID以为1.3.6.1.2.1前缀,⽽私有的MIB的基本OID以为1.3.6.1.4.1前缀。如果在某⼀节点下有多个信息,则以列表⽅式存在,⽐如IP地址信息中包括⼦⽹掩码、⽹关地址等。
⽹络环境拓扑图
系统设计图
系统案例和效果

本文发布于:2024-09-22 04:11:35,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/158869.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:设备   管理   协议   信息   对象   作为   包括
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议