《SNMP的功能及使用.docx》由会员分享,可在线阅读,更多相关《SNMP的功能及使用.docx(9页珍藏版)》请在三一办公上搜索。
1、SNMP的功能及使用TCP/IP课程设计 课题:SNMP的功能及应用 小组成员:原志祺、张冰雪、栗国齐、许杰 姓名:原志祺 院系:计算机与通信工程学院 班级:通信工程09-1班 学号:540907040146 题目:SNMP的功能及使用 网络管理功能一般分为性能管理、配置管理、安全管理、计费管理、故障管理 等五大管理功能。现分工如下: 1、 性能管理,配置管理 原志祺 2、 安全管理 张冰雪 3、 计费管理 栗国齐 4、 故障管理 许杰 配置管理是网络管理的基本功能。计算机网络由各种物理结构和逻辑结构组成,这些结构中有许多参数、状态等信息需要设置并协调。另外,网络运行在多变的环境中,系统本身也
2、经常要随着用户的增、减或设备的维修而调整配置。网络管理系统必须具有足够的手段支持这些调整的变化,使网络更有效的工作。 性能管理的目的是在使用最少的网络资源和具有最小延迟的前提下,确保网络能提供可靠、连续的通信能力,并使网络资源的使用达到最优化的程度。网络的性能管理有监测和控制两大功能,监测功能实现对网络中的活动进行跟踪,控制功能实施相应调整来提高网络性能。性能管理的具体内容包括:从被管对象中收集与网络性能有关的数据,分析和统计历史数据,建立性能分析的模型,预测网络性能的长期趋势,并根据分析和预测的结果,对网络拓扑结构、某些对象的配置和参数做出调整,逐步达到最佳运行状态。如果需要做出的调整较大时
3、,还要考虑扩充或重建网络 什么是SNMP?SMNP 是Simple Network Management Protocol 缩写,解释为简单网络管理协议。SNMP 是最早提出的网络管理协议之一,它一推出就得到了广泛的应用和支持,特别是很快得到了数百家厂商的支持,其中包括IBM、HP、SUN 等大公司和厂商。目前SNMP 已成为网络管理领域中事实上的工业标准,并被广泛支持和应用,大多数网络管理系统和平台都是基于SNMP 的。 一、SNMP 概述 SNMP 的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。随后,人们对SGMP 进行了很大的修改,特别是加入了符合Internet 定义的
4、 SMI 和 MIB 体系结构,改进后的协议就是著名的SNMP。SNMP 的目标是管理互联网Internet 上众多厂家生产的软硬件平台,因此SNMP 受Internet 标准网络管理框架的影响也很大。现在SNMP 已经出到第三个版本的协议,其功能较以前已经大大地加强和改进了。SNMP 的体系结构是围绕着以下四个概念和目标进行设计的: 保持管理代理(Agent)的软件成本尽可能低; 最大限度地保持远程管理的功能,以便充分利用Internet 的网络资源; 体系结构必须有扩充的余地; 保持SNMP 的独立性,不依赖于具体的计算机、网关和网络传输协议。在最近的改进中,又加入了保证SNMP 体系本身
5、安全性的目标。 二、SNMP 的配置管理功能 SNMP 管理控制框架 SNMP 是一个应用层协议,提供了SNMP 管理者和SNMP 代理间报文格式的消息通信。它规定了在网络环境中对设备进行监视和管理的标准化管理框架,通信的公共语言和相对应的安全控制机制。 SNMP 管理框架包含有四个组成部分: SNMP 管理者; SNMP 代理; 一个用于在SNMP 实体间传输管理信息的管理协议; MIB 库(Management Information Base,管理信息库)。 SNMP 管理者是一个利用SNMP 协议对网络节点进行控制和监视的系统。其中网络环境中最常见的SNMP 管理者被称为网络管理系统(
6、NMS,Network Management System)。网络管理系统既可以指一台专门用来进行网络管理的服务器,也可以指某个网络设备中执行管理功能的一个应用程序。现在市场上有众多软硬件厂商提供有支持SNMP 协议的网络管理系统,如SolarWinds 网络管理软件产品。 SNMP 代理是被管理设备中的一个软件模块,用来维护被管理设备的管理信息数据并可在需要时把管理数据汇报给一个SNMP 管理系统。SNMP代理和相关的MIB 库存在于网络设备中(如路由器、交换机、接入服务器,等等)。MIB 库是一个保存网络管理信息的虚拟数据存储空间,由多组被管理对象组成。在设备MIB 库中有由多个MIB 模
7、块定义的多组各自相关联的对象。 SNMP 代理中保存有MIB 对象变量,变量的数值可以被SNMP 管理者通过Get 或Set 操作进行读取和修改。一个SNMP 管理者可以从SNMP 代理中读取一个变量的数值或把一个数值存储到SNMP 代理的一个变量中。SNMP 代理从代表设备参数和网络运行数据的MIB 库中采集数据,且可以对SNMP 管理者的Get 和Set 操作进行应答。SNMP 管理者和SNMP 代理间的通信关系:一个SNMP 管理者可以向SNMP 代理发送请求,读取(Get)或设置(Set)一个或多个MIB 变量数值。SNMP代理可以应答这些请求。除了这种交互式通信方式,SNMP 代理还
8、可以主动向SNMP 管理者发送通知(Trap 或Inform Request)以提示管理者一个设备或网络状态。 SNMP 通知 SNMP 协议的一个重要特性是SNMP 代理具有产生通知的能力。通知不需要SNMP 管理者请 求就会主动发送,发送采用异步方式,形式可分为Trap 和Inform Request(简称Inform)两种。Trap 是发送给SNMP 管理者的通知网络状况的警告消息,而Inform 是需要SNMP 管理者确认接收的Trap。SNMP 通知可以用于指示网络中出现的不正确用户授权、重启、连接关闭、设备通信中断或其他异常事件。与Inform 相比较,Trap 通知方式为不可靠传
9、输,因为接收者在收到一条Trap 通知后无需回复任何确认信息,发送者无法知道Trap 通知是否已经被正确接收。与此相对应,当SNMP 管理者收到一条Inform 通知后它需要向发送者回复一条确认信息,使用的是SNMP 应答数据包(PDU)。如果SNMP 管理者没有接收到Inform 通知,它将不会发送任何应答,所以当发送者无法接受到期望的应答时,它将再次发送一条Inform 通知给SNMP 管理者。这种方式保证了Inform 通知方式可以较有保证地把通知发送到期望的目的地。 然而在多数情况下,Trap 通知方式被较多采用,因为Inform 方式将会耗用更多的网络和设备资源。与Trap 通知方式
10、不同的是,被管理设备不能在发送后立即把一条Inform 通知丢弃,它需要把通知信息保存在系统内存中直到收到相应的确认应答或设备规定的计时器超时。由此可见,一条Trap 通知只会被发送一次,而Inform 通知可能会被重复发送多次。这种重复发送将会增加网络流量,造成网络额外开销的上升。管理员在选择Trap 或Inform 通知形式时需要根据可靠性要求和系统资源状况统筹考虑:如果SNMP 管理者需要确保收到每条通知,应该采用Inform 通知方式;如果更关心减少网络流量和网络设备的资源消耗且并不需要每条通知都需要接收,则应该采用Trap 通知方式。 SMNP 在网络设备中的配置 以Cisco 的网
11、络设备为例: config terminal 进入全局配置状态; snmp- server community public ro 配置本路由器的只读字串为public; snmp- server community public rw 配置本路由器的读写字串为public; snmp- server enable traps 允许路由器将所有类型SNMP Trap 发送出去; snmp- server host IP- address- server trapsversion 1/2C/3 指定路由器SNMP Trap 的接收者的IP 地址,发送Trap 时采用1/2C/3 那个版本。 三、
12、SNMP的性能管理功能 性能监测参数分析 服务器设备性能监测 硬件监控 1、系统配置, 对网络中的服务器进行故障诊断时, 需要能够远程获取服务器的硬件配置信息, 例如: CPU、内存、显示卡、打印机、硬盘、网络接口、鼠标、键盘等相关信息。通过使用SNMP协议, 这些信息可以从主机资源M IB 的hos.t hrDev ice. hrD ev ice- T able表中直接获取, 而且对于CPU、网卡、打印机、磁盘等硬件分别还有hrProcessor- T able, hrN etwork-T able, hrPrinterTab le, hrD isk- StorageTable表对其工作状态
13、进行深入描述。 2、磁盘空间, 一般来说, 磁盘利用率不能超过90% , 如果超过, 系统的性能会显著降低, 当磁盘空间严重不足时, 甚至会发生程序退出、系统崩溃的情况。因此, 当磁盘已利用空间大于90% 时, 如果能及时产生报警信息, 从而及时整理磁盘空间, 就能避免故障的产生。对磁盘空间的监控可以使用hos.thrDev ice . hrD isk- S torageTab le表。 3、 CPU 和内存利用率, CPU 和内存利用率是对服务器系统进行监控的一项重要指标。CPU 占用率时间长达100%时通常意味着某些程序进入了死锁, 而内存利用率过高则会导致程序大量使用缓存, 从而使系统慢
14、得让人无法忍受。因此对系统CPU和内存利用率进行实时监测, 对于维持系统的稳定运行具有重要意义。对于CPU 总体使用情况可以使用hos.t hrDev ice. hrProcessorTab le表; 对于内存总体使用情况也可以使用hos.t hrDevice.hrStorageTable表。 软件监控 1、已经安装的软件, 对服务器所安装软件的监控主要用到hos.t hrSW Installed组, 在使用时先根据hrSW InstalledLastChange, hrSW InstalledLastUpdateTim e给出的时间值确定该组数据是否有变化(是否有更新) , 如果有变化, 再
15、读取hrSW Insta lledTable中的数据。根据已安装软件表, 监控人员可以远程监控服务器上安装软件清单、版本号、安装时间等信息, 当系统出现故障时, 可以提供一些有用信息。 2、正在运行的软件, 对当前正在运行的软件 监控主要用到hos.t hrSWRun组, 被监控服务器的运行软件的具体信息都包含在hrSWRunTab le表中。 网络设备性能监测 主要以MIB-为基础, 它是当前使用最为广泛的通用标准的网络管理信息库。通过查询和处理MIB-数据来实现网络设备的管理和维护。以下是网络监测系统中使用的一些关键数据: (1) ifType( OID为. 1. 3. 6. 1. 2.
16、1. 2. 2. 1. 3): 标识接口的类型。 (2) iMf tu( OID 为. 1. 3. 6. 1. 2. 1. 2. 2. 1. 4) : 在该接口上可以发送或接受的最大包的大小。太小的MTU 值会导致网络和设备效率低下。 (3) ifSpeed( O ID 为. 1. 3. 6. 1. 2. 1. 2. 2. 1. 5 ):传输速率, 单位为位/ s。 (4) ifInO ctets ( O ID 为. 1. 3. 6. 1. 2. 1. 2. 2. 1.10): 在接口处收到的总字数。 (5) ifIndiscards( O ID 为. 1. 3. 6. 1. 2. 1. 2.
17、 2. 1.13): 由于资源紧张导致丢弃包的数目。如果一个接口的包丢弃率较高, 则表示该设备存在拥塞问题。 (6) ifInE rrors ( O ID 为. 1. 3. 6. 1. 2. 1. 2. 2. 1.14) : 由于出错而导致丢弃的接受包的数目。错误率较高时表示存在接收器问题或坏线路问题。 (7) ifOu tO ctests( O ID 为. 1. 3. 6. 1. 2. 1. 2. 2. 1.16) : 从该接口上发送的字节总数。 (8) ifOutD iscards( O ID 为. 1. 3. 6. 1. 2. 1. 2. 2. 1.19) : 由于资源局限而导致丢弃的发
18、出包的总数。高丢包率表示需要为该口分配更多的缓冲区空间。 (9) ifOutE rrors( O ID 为. 1. 3. 6. 1. 2. 1. 2. 2. 1.20) : 由于出错而导致丢弃的发出包的总数目。高出错率表示存在硬件问题。 利用上述数据, 可计算一个接口的接收率: rx.utilization=delta( ifInOctets)*8*100/ifSpeed*delta( seconds) (1) 函数delta表示不同时间间隔内2 个计数器的差值。在计算delta( seconds) 时, 还须收集sysUp-Time。计算接口发送率的表达式: tx.utilization=d
19、elta( ifOutOcte ts) * 8* 100/ifSpeed * delta( seconds) ( 2) 以太网利用率= rx.ultilization+ tx.utilization 接收丢包率=delta( ifInd iscards)/delta( seconds) 发送丢包率=delta( ifOutd iscards)/delta( seconds) 接收错误率=delta( ifInE rrors)/delta( seconds) 发送错误率=delta( ifOutErrors)/delta( seconds) 实现流程 本系统的具体实现主要体现在数据采集、数据存储
20、、数据分析、告警管理4个部分。数据采集是根据网管人员设定的设备信息和采集时间间隔, 对网络中的各个设备进行监视。数据采集由定时器触发, 采用轮询的方法对网络设备进行采集。数据处理对采集到的数据进行处理, 转化成系统需要的信息格式; 最后将其存入数据库作为网络状态分析、统计、查询和生成报表的依据。告警功能的实现较为简单, 首先将采集到的数据与数据库中该数据项对应的阈值相比较, 如未超出, 则不做操作; 如超出, 则修改数据库中该数据项对应的告警字段值, 比如由0改为1。当判断是否有告警事件时, 读取数据库中该字段值, 比如为0的不操作; 如为1的则调用相应告警行为及调用相应的默认处理过程。 结语 网络管理是一项重要而艰巨的工作。如何快速地发现网络问题,准确地了解问题发生的原因,及时地进行故障处理,已成为网络维护工作质量评定的一个标准。SNMP 给我们提供了一个监控与管理网络设备的平台,能使我们清楚知道网络设备的运行情况,方便日常的网络维护。