IAB认为,就目前的情况看,简单网络管理协议SNMP变得非常流行,它已经变成了对基于IP网络的管理数据进行报告的工业标准。在这里,我们重点介绍SNMP在数据网络监控中的两个应用:实时监测网络时延、实时绘制ATM/FR电路流量和电路告警。
一、SNMP网络管理框架概述
SNMP网络管理框架包括两类实体,一类是执行网络管理应用(NMA)的网络管理站点(NMS),另一类是使用管理代理(MA)来执行NMS请求的网络要素(NE)。简单网络管理协议SNMP用来在网络管理站点和网络要素代理间传递管理信息,其作用如图1所示。
SNMP的管理器,即NMA通常使用SNMP协议从MA请求管理数据。SNMP的代理,即MA管理它所在的IP主机上的管理信息库MIB,并对这个管理信息库提供支持。
从NMS到NE,所有的SNMP命令只是改变(set)或者检查(get)变量。在另一个方向,即从NE到NMS,少量未被请求而触发的消息(trap)用于指示异步事件。SNMP避免了复杂的信息交换,RFC1157规定了它使用UDP传输协议来传送。
Netsnmp是目前网络主机上使用比较多的SNMP软件之一,可以在Sunfreeware网站的许多镜像网点下载。它作为NMA软件,可通过SNMP协议(SNMPv1(RFC1155-1157)、SNMPv2(RFC 1901-1908)、SNMPv3 (RFC 2571-2574)中的命令,调用设备MIB库的对象标识符OID串,编写脚本集中提取设备的参数值,如CPU利用率、内存利用率、进程状态、时延、端口流量、性能参数等。
在网络维护中,有时基于网络安全的角度,会暂停网络上重要设备的snmpagent服务或者限制路由器和交换机的snmpaccess服务访问权限。
二、实时监测网络时延
安装完成Netsnmp后,启动主机的snmpd进程,它成为一个带有管理器的SNMP实体,即NMS。
以Cisco设备为例,通过192.168.1.4这台主机对Cisco路由器192.168.1.1进行监控,实时监测其网络时延。
在Cisco路由器上,配置snmpserver和允许访问列表,使其接受snmpmanager的管理,显示数据如下:snmp-serverengineID local 00000009020000089A9E47FF,snmp-server community <8bit/s字符串命名> RW 81,snmp-server community <8bit/s字符串命名> RO 81,snmp-server enable traps,snmp-server host 192.168.1.4 <上述被命名的8bit/s字符串之一> snmp,snmp-server trap-source loopback 0,access-list 81 permit 192.168.1.4。SNMP实时监测网络时延如图2所示。
在NMS(192.168.1.4)上,通过SNMP协议对NE(192.168.1.1)这台路由器的变量进行设置,得到路由器A(192.168.1.1)到路由器B(192.168.1.2)remoteping的时延。NMS通过SNMP命令的改变(snmpset),设置路由器A到路由器B的扩展ping变量,包括包数、包大小、超时时间等,通过SNMP的检查(snmpwalk),得到返回的时延结果。数据显示如下:snmpset-v1-cprivate 192.168.1.1 .1.3.6.1.4.1.9.9.16.1.1.1.16. 331 integer 6(破坏上次设置),snmpset-v 1-c private 192.168.1.1.1.3.6.1.4.1.9.9.16.1.1.1.16.331 integer 5(重新创建),snmpset-v 1-c private192.168.1.1.1.3.6.1.4.1.9.9.16.1.1.1.15.331s“GSR12012”(设置CiscoPingEntryOwner),snmpset-v 1-c private 192.168.1.1 .1.3.6.1.4.1.9.9.16.1.1.1.2.331 integer 1(设置协议为IP),snmpset-v 1-c private 192.168.1.1 .1.3.6.1.4.1.9.9.16.1.1.1.3.331 x“C0 A8 1 2”(设置目的地192.168.1.2),snmpset-v 1-c private 192.168.1.1 .1.3.6.1.4.1.9.9.16.1.1.1.6.331 integer 1000(超时设置),snmpset-v 1-c private 192.168.1.1 .1.3.6.1.4.1.9.9.16.1.1.1.4.331 integer 10(设置包数),snmpset-v 1-c private 192.168.1.1 .1.3.6.1.4.1.9.9.16.1.1.1.5.331 integer 111(设置包大小),snmpset-v 1-c private 192.168.1.1.1.3.6.1.4.1.9.9.16.1.1.1.16.331 integer 1(激活开始执行命令动作),snmpwalk-v 1-c private 192.168.1.1 1.3.6.1.4.1.9.9.16.1.1.1.12.331(得到返回时延为1ms),SNMPv2-SMI::enterprises.9.9.16.1.1.1.12.331 = INTEGER: 1,我们编写脚本,就可以实现192.168.1.4这台主机对Cisco路由器192.168.1.1的远程监控。
三、实时绘制ATM/FR电路流量和电路告警
以Nortel的ATM设备为例,利用Passport15K/7K/160支持的VR作为snmpagent,NMS通过snmp协议访问snmpagent的Passport私有mib库(nortel-atmCoreV1.mib),得到ATM/FR电路的运行状态或配置状态。实时绘制ATM/FR电路流量和电路告警如图3所示。
在Passport交换机上设置VR
首先需要将Passport交换机设置虚拟路由器功能VR,这样Passport将作为一个snmpagent,响应来自NMS的SNMP的管理。配置文件激活后,Passport设备作为snmpagent接受a.b.c.d这台NMS主机的SNMP命令请求。
(2)SNMP监控Passport交换机的电路性能及运行状态
例如监控PassportA交换机的第一槽第一端口(155M端口)所联电路的流量情况和运行告警情况,它建立的案例为10。端口上若建立的是ATMVCC电路,可以得到电路发向Txcell和收向Rxcell当前的ATM信元数,即电路流量性能。电路的运行状态,也可以通过SNMP来远程监控。最后我们能编写脚本,当电路状态异常时,弹出声光告警窗口,能够及时被发现。
(3)绘制PVC性能流量曲线
基于SNMP探测得到的电路性能值,我们使用mrtg等绘图程序,绘制PVC性能流量曲线。电路的性能监测及运行状态监测的呈现结果。