河北省武安市工业促进局河北武安056300
摘要:近年来,网络监测和管理技术平台的设计与构建问题得到了业内的广泛关注,研究其相关课题有着重要意义。本文首先对相关内容做了概述,分析了网络监测和管理技术平台设计技术,并结合相关实践经验,分别从系统结构等多个角度与方面,就该平台的设计与实现问题展开了研究,阐述了个人对此的几点看法与认识,望有助于相关工作的实践。
关键词:网络监测和管理;平台;设计;构建
1前言
作为一项实际要求较高的实践性工作,网络监测和管理技术平台的设计与构建有着其自身的特殊性。该项课题的研究,将会更好地提升对网络监测和管理技术平台的分析与掌控力度,从而通过合理化的措施与途径,进一步优化该项工作的最终整体效果。
2概述
近年来,因特网已经成为越来越重要的需求,在军事医学科学院园区网络(AMMSNET)的环境里,已经普及到几乎所有实验室和住户都可以连上因特网。面对日益复杂的网络结构和逐渐增加的网络流量,网络管理人员必须花费更多时间和精力来了解网络设备的运行状况,以维持系统的正常工作。当网络问题发生时,管理员必须能够很快地判断出问题的发生原因,可能是线路问题、网络设备问题、或者是路由器的参数设置问题。一个有经验的管理员要回答这些问题并不难,但由于所管理的网络范围庞大,需要一个统一的网络监测平台,通过网管系统综合显示网络上目前发生的各种流量与运行情况。网络设备监测:监测网络设备(包括路由器与交换机)运行状况,并提供网络设备平台的相关信息。应该支持各种网络接口监测。
3技术分析
3.1SNMP(SimpleNetworkManagementProtocol)
3.1.1简介
SNMP是专为网络管理者所设计的网络管理协议,主要目的是用来管理网络上各式各样的设备。SNMP一共发展有3个主版本,分别为SNMPv1,SNMPv2和SNMPv3。其中SNMPv2又分为若干个子版本,其中SNMPv2c应用最为广泛。
3.1.2功能原理
SNMP实际上是一个特殊的「要求/响应」协议,可支持两种要求信息:get及put。前者是用来从某些节点取出状态信息,而后者则是用来在某些节点上储存一份新的状态信息(SNMP也支持第三种动作,get-next)。SNMP定义了五种Manager与Agent之间的通讯形式。
Get-request
Get-next-request
Set-request
Get-response
Trap
前三项都是属于Manager向Agent发出的信息,后两项则属于Agent向Manager发出的信息。
每个Agent都是一个执行程序,负责将该网络节点(设备)的设定数据以及运作现状以数据结构的方式储存,设备的所有的需要被管理的信息被看作一个各种被管理对象的集合,这些被管理对象由OSI定义在一个被称作管理信息库(MIB)的虚拟的信息库中。当Agent收到网管主机所发出的SNMPget-request、get-next-request、set-request时,便以相对应的MIB数据通过SNMPget-response方式响应。MIB定义了可以从网络节点取得的特定信息,MIB变量。此外,有一种特殊的SNMP命令,称为trap,可允许Agent在特殊的情况下(如error,shutdown)主动发信息给网管主机。
TCP/IP网络中事实上的标准网络管理协议目前所有的网络设备都支持SNMP协议功能丰富,满足网络管理需求配置简单
3.2MRTG(MultiRouterTrafficGrapher)
3.2.1MRTG简介
MRTG是一个监测网络链路流量负载的工具软件,它通过SNMP协议从设备得到设备的数据经过计算后绘成图表,其中最常用的是网络流量统计图,其它如CPULoad,ErrorCount等也可以支持,最终以包含PNG格式的图形的HTML文档方式显示给用户。
3.2.2功能原理
MRTG软件中包含一个perl程序,利用SNMP读取路由器等网络设备的流量计数,以及一个C程序可将流量数据记录下来,并为所监测之网络连结上的流量产生图形式表现。这些图形会被包含在网页中,并可从任何网页浏览器读取。MRTG除了能够提供详细的每日流量记录,同时也能够以相同的视觉呈现方式产生过去七天,过去四周,以及过去12个月的流量记录。能够做到这点是因为MRTG把从路由器取得的所有数据都记录下来。这些记录会自动合计,所以不至于随着时间成长地太大,不过仍保留足够提供过去两年来流量趋势的信息。这些程序以很有效率的方式进行,因此管理人员能够监测200段或更多网络连结。
3.2.3MRTG的特点
可移植性:可以运行在大多数Unix系统和WindowsNT之上。
源码开放:采用perl编写的,源代码完全开放。
高可移植性的SNMP支持:采用了SimonLeinen编写的具有高可移植性的SNMP实现模块,不依赖于操作系统SNMP模块支持。
支持SNMPv2c:大大减少了记数器回转次数。可靠的接口标识:被监测的设备的接口可以以IP地址、设备描述、SNMP对接口的编号及MAC地址来标识。常量大小的日志文件:MRTG的日志不会变大,使用了独特的数据合并算法。
自动配置功能:自身有配置工具套件,配置过程非常简单。
性能:时间敏感的部分使用C代码编写,因此具有很好的性能。
PNG格式图形:图形采用GD库直接产生PNG格式。可定制性:产生的web页面是完全可以定制的。
4设计与实现
4.1系统结构
目前运行的网络监测与管理系统实际上由SNMP,MRTG,WEB三部分组成。
首先在各个需要监测网络设备(交换机、路由器、防火墙、各类服务器)上正确安装、配置SNMP协议。
其次,鉴于MRTG技术的一些不足,在实际构建综合网络监测管理平台时加入了RRD技术。
RRD是RoundRobinDatabase的意思,这个工具专门用于收集数据,并且按照一定的周期生成曲线图。RRD很象MRTG(RRD的作者也是MRTG的作者),不过它不包含数据采集功能,而且灵活性高适应面更广。使用RRDTools的目的一是为了能使用MRTG的第三方的前端工具routers2.cgi,还有就是可以减少服务器的负担,增加工作效率,如果不使用这个软件,MRTG会每5分钟采样一次并对每个端口生成每日、每周、每月和每年的流量分析图。而使用这个软件后,MRTG会每隔5分钟将采样数据保存到rrd数据库中,但是不会再生成流量分析图了,这样就降低了服务器的负载。
因此实际应用中,使用MRTGBundle软件包,具有以下优点:
包含RRDTools前端工具应用routers2.cgi,它一般是14all.cgi(RRDTools的显示脚本)文件首选的默认值包含ApacheWeb软件,不必为了查看MRTG降低IIS服务器的安全性。Apache默认使用9191端口,所以不会干扰任何正在运行的IIS设备(除非IIS正在涉及9191端口,这是不常见的)包含GetIF(一个应用于Windows平台的SNMP协议软件)包含很多非常有用的script脚本文件来管理、更新网络设备清单包含类似UNIX操作系统形式的CRON(后台进程程序),当其每分钟运行一次任务时它比WINDOWS的内置调度程序更可靠,易于安装。
4.2实现的功能
目前,已经可以在WEB界面下统一监测网络中所有支持SNMP协议的交换机和路由器等设备,其中包括国外厂家的CISCO交换机、3COM路由器以及国内厂家的港湾交换机、清华得实防火墙等多种设备。同时也测试成功了对于WINDOWS服务器CPU、硬盘、内存、网卡等信息的监测。
4.3监测系统特点
通用性:完全支持包括国外厂家的CISCO交换机、3COM路由器以及国内厂家的港湾交换机、清华得实防火墙等多种设备。
统一性:管理员可以从任意一台联网计算机上查看监测信息。
简便性:使用MRTGBundle软件包套件,配置过程非常简便。
4.4改进设想
对应于设计构想,已经基本实现了网络设备监测和服务器系统监测,但是还没有完成对于网络应用服务的监测,需要进一步配置WINDOWS下HTTP、SMTP、DHCP、IAS等多种服务(网络上已有Linux系统各类服务的MRTG配置),完善这一简单的网络监测管理系统的功能。下一步希望在分析MRTG生成数据格式的基础上,配置后台数据库(SQL等),结合PHP等技术开发简单的网络监测查询界面,按照网管人员需求生成不同时期的监测数据报表。
5结束语
综上所述,加强对网络监测和管理技术平台设计与构建问题的研究分析,对于其良好实践效果的取得有着十分重要的意义,因此在今后的网络监测和管理技术平台设计工作过程中,应该加强对其关键环节与重点要素的重视程度,并注重其具体实施措施与方法的科学性。
参考文献
[1]秦刚,等.基于SNMP的网络设备监控系统的设计与实现[J].计算机工程与应用.2017(01):115-116.
[2]周超,等.新一代网络管理工具MRTG的实现及改进.中国科学院计算机网络信息中心学术研讨会论文摘要.2017(11):60-62.
[3]段海新,等.基于Web和数据库的网络管理系统的设计与实现[J].软件学报.2016(21):88-89.