首页 > 范文大全 > 正文

SNMP协议在系统监控方面的应用

开篇:润墨网以专业的文秘视角,为您筛选了一篇SNMP协议在系统监控方面的应用范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

【摘 要】一般的网络监控软件普遍存在兼容性差等问题,很难满足空管自动化系统的网络监控要求,维护人员不能有效监控各个网络节点是否存在异常情况。通过对网络监控和snmp协议的介绍,并利用基于SNMP的网络监控工具Cacti监控空管自动化系统中的各个网络设备,使得维护人员对于网络运行的状况有一个清晰的掌握。

【关键词】SNMP;网络监控;Cacti

1 SNMP简介

简单网络管理协议(Simple Network Management Protocol)是一种应用层协议,是TCP/IP协议族的一部分,它使网络设备间能方便地交换管理信息。SNMP能够让网络管理员管理网络的性能,发现和解决网络问题及进行网络的扩充。

SNMP是如何工作的?

1)SNMP程序把从设备读到的各种数据(比如网卡数据包的进出情况)以SMI规定的格式(这种格式要求MIB变量必须以1.3.6.1.2.1开头)写到MIB库中 (MIB库就像抽屉一样,有很多变量,每一个变量存储着设备的信息。比如1.3.6.1.2.1.7.1,这个变量里存储了收到了多少UDP协议包)。

2)SNMP管理器程序通过SNMP协议与SNMP程序联系,以便间接读取MIB库中的数据。

流程如下图所示(图1):

2 SNMP应用

应用举例:

在trace上运行以下指令:

snmpwalk -c public -V 1 192.168.140.73 .1.3.6.1.2.1.2.2.1.10

结果显示:

ifInOctets.1 = 0

ifInOctets.2 = 0

ifInOctets.3 = 1234567

ifInOctets.4 = 0

ifInOctets.5 = 0

ifInOctets.6 = 4567890

ifInOctets.7 = 0

ifInOctets.8 = 8901234

其中以上单位流量为 单位为bytes

-c名为共同体,默认为public

-v1意为使用的是snmp V1的协议

192.168.140.73 是某台机器的IP的地址

.1.3.4.1.2.1.2.2.1.10 是网络的SNMP 的OID,即统计该台机器所有网卡的总的流入流量。

该网卡的实时流量,可以通过以下公式求得:

=网卡实际流量

下面,我们以开源软件Cacti为例来说明SNMP在日常监控中的其他一些应用。

3 Cacti实现原理

Cacti 是用PHP语言实现的一个开源软件,它的主要功能是通过SNMP协议获取数据,然后储存并更新数据,当用户需要查看数据的时候生成图表呈现给用户。SNMP 关系着数据的收集,因此,SNMP是Cacti的关键。由于Cacti对历史数据进行了存储,我们可以通过历史数据对系统的故障进行分析。

Cacti的工作流程如图2所示:

Cacti每隔一段时间(例如:5分钟)进行一次数据采集,通过SNMP协议采集监控设备的信息。

Cacti通过RRDtool模块将采集到的数据按主机以及数据类别保存到硬盘文件。RRDtool是一个用于存储数据和绘制图象的程序。

当用户要查看某台设备的信息,Cacti查询数据库查找该设备对应的存储文件。Cacti读取文件并通过RRDtool进行绘图,然后用http的方式返回给用户。

4 Cacti的应用

Cacti具有非常广泛的应用网络流量,CPU负载,磁盘剩余空间,内存使用,进程占用资源,TCP/UDP信息等等都可以监控。只要OID存在于设备的MIB中,我们都可以通过Cacti对其进行操作,甚至OID不存在于设备MIB中,我们也可以构造自定义的OID采集需要的信息。下面以我们在欧洲猫测试平台所做的相关测试来说明Cacti的应用。

1)设备监控

Cacti可以对设备进行监控,如图3所示,Cacti最大的优点是可以定制需要监控的设备信息。

2)网口流量分析

图4是我们用Cacti采集到某台机器的网口流量数据。通过图形,我们可以非常直观的分析网口在一天的流量情况。

3)CPU负载分析

图5是通过Cacti采集到的某台机器的CPU负载情况。

4)历史数据分析

通过Cacti我们可以分析过去2年内任何时间的数据,可以以日、月、年等不同的事件跨度来做数据分析,图6是CDP在一个月内的网络统计情况。对历史数据的分析可以直观的看清楚设备在过去一段时间的运行情况,以及设备负载的变化趋势,技术维护人员依据这些信息,可以预判故障的潜在情况还有设备是否需要进行更新来适应变化。

5)交换机网络流量监控

Cacti除了可以监控节点外,还可以监控交换机的所有网口。

Cacti还具有良好的扩展性,我们可以针对不同类型的设备,定义不同的主机模版,数据模板,图形显示模版等。

5 结束语

综上所述,我们可以知道SNMP可以非常方便的获取节点的网络流量、cpu使用率、内存使用情况等信息。获取SNMP信息,有利于我们对设备故障的判断,解决MMI屏幕冻结就是一个很好的例子。开源软件Cacti在数据分析方面做了很多的工作,让我们在数据分析方面节省了很多编写代码的工作。当需要对上千个节点进行监控时,SNMP的轮询方式会产生很大的网络流量,可能导致网络阻塞;在这种情况下,我们可以采用snmptrap的方式,让节点在某些参数在超过阀值时,通过snmptrap向监控系统发送信息。

【参考文献】

[1]Thales ATM Pty Ltd. Eurocat-x system/segment specification[Z].

[2]Thales ATM Pty Ltd. Eurocat-x DPR offline data specification[Z].