才子佳人博客

我的故事我讲述

SNMP:简单网络管理协议简介
 
来源:xjh  编辑:xjh  2010-05-28

SNMP:简单网络管理协议

基于TCP/IP的网络管理包含两部分:网络管理站(在管理端运行的程序叫管理进程)和被管的网络设备单元(在被管设备端运行的程序叫代理进程)。

SNMP是一系列协议组和规范,它们提供了一种从网络上的设备中收集网络管理信息的方法,也为设备向网络管理工作站报告问题和错误提供了一种方法。

简单网络管理协议(SNMP)是管理进程和代理进程之间的请求-应答通信协议,是目前TCP/IP网络中应用最为广泛的网络管理协议。

SNMP采用了Client/Server模型的特殊形式:代理/管理站模型。对网络的管理与维护是通过管理工作站与SNMP代理间的交互来完成。

SNMP规定了5种协议数据单元PDU(也就是SNMP报文)

1)get-request操作:从代理进程处提取一个或多个参数值
2)get-next-request操作:从代理进程处提取紧跟当前参数值的下一个参数值
3)set-request操作:设置代理进程的一个或多个参数值
4)get-response操作:返回的一个或多个参数值。这个操作是由代理进程发出的,它是前面三种操作的响应操作。
5)trap操作:代理进程主动发出的报文,通知管理进程有某些事情发生。

前面的3种操作是由管理进程向代理进程发出的,后面的2个操作是代理进程发给管理进程的,为了简化起见,前面3个操作今后叫做get、get-next和set操作。下图描述了SNMP的这5种报文操作。


注意:在代理进程端是用熟知端口161俩接收get或set报文,而在管理进程端是用熟知端口162来接收trap报文。

收集数据的方法

从被管理设备中收集数据有两种方法:一种是只轮询(polling-only)的方法,另一种是基于中断(interrupt-based)的方法。

只轮询的方法:这种方法缺陷在于信息的实时性,尤其是错误的实时性。多久轮询一次,并且在轮询时按照什么样的设备顺序?如果轮询间隔太小,那么将产生太多不必要的通信量。如果轮询间隔太大,并且在轮询时顺序不对,那么关于一些大的灾难性的事件的通知又会太馒。这就违背了积极主动的网络管理目的。

基于中断的方法:这种方法可以立即通知网络管理工作站(在这里假设该设备还没有崩溃,并且在被管理设备和管理工作站之间仍有一条可用的通信途径)。然而,这种方法也不是没有他的缺陷的,首先,产生错误或自陷需要系统资源。如果自陷必须转发大量的信息,那么被管理设备可能不得不消耗更多的时间和系统资源来产生自陷,从而影响了它执行主要的功能。

文章参考:
《TCP/IP详解卷一:协议 》(美)W.Richard Stevens 著 机械工业出版社 271页
http://www.cnpaf.net/中国协议分析网
http://www.cnpaf.net/Class/SNMP/200408/43.html
http://baike.baidu.com/view/2899.htm?fr=ala0_1_1
http://baike.baidu.com/view/21938.htm
http://www.net-snmp.org/


分类:网络日志| 查看评论
相关文章
文章点击排行
本年度文章点击排行
发表评论:
  • 昵称: *
  • 邮箱: *
  • 网址:
  • 评论:(最多100字)
  • 验证码: