SNMPSimple Network Management Protocol,简单网络管理协议)是网络中管理设备和被管理设备之间的通信规则,它定义了一系列消息、方法和语法,用于实现管理设备对被管理设备的访问和管理。SNMP具有以下优势:
l
自动化网络管理。网络管理员可以利用SNMP平台在网络上的节点检索信息、修改信息、发现故障、完成故障诊断、进行容量规划和生成报告。
l
屏蔽不同设备的物理差异,实现对不同厂商产品的自动化管理。SNMP只提供最基本的功能集,使得管理任务分别与被管设备的物理特性和下层的联网技术相对独立,从而实现对不同厂商设备的管理,特别适合在小型、快速和低成本的环境中使用。

SNMP
的工作机制SNMP网络元素分为NMSAgent两种。
l
NMSNetwork Management Station,网络管理站)是运行SNMP客户端程序的工作站,能够提供非常友好的人机交互界面,方便网络管理员完成绝大多数的网络管理工作。
l
Agent是驻留在设备上的一个进程,负责接收、处理来自NMS的请求报文。在一些紧急情况下,如接口状态发生改变等,Agent也会主动通知NMS
NMSSNMP网络的管理者,AgentSNMP网络的被管理者。NMSAgent之间通过SNMP协议来交互管理信息。
SNMP提供四种基本操作:
l
Get操作:NMS使用该操作查询Agent的一个或多个对象的值。
l
Set操作:NMS使用该操作重新设置Agent数据库(MIBManagement Information Base)中的一个或多个对象的值。
l
Trap操作:Agent使用该操作向NMS发送报警信息。
l
Inform操作:NMS使用该操作向其他NMS发送报警信息。

SNMP
的协议版本目前,设备的SNMP Agent支持SNMP v1SNMP v2cSNMP v3三种版本。
l
SNMP v1采用团体名(Community Name)认证。团体名用来定义SNMP NMSSNMP Agent的关系。如果SNMP报文携带的团体名没有得到设备的认可,该报文将被丢弃。团体名起到了类似于密码的作用,用来限制SNMP NMSSNMP Agent的访问。
l
SNMP v2c也采用团体名认证。它在兼容SNMP v1的同时又扩充了SNMP v1的功能:它提供了更多的操作类型(GetBulkInformRequest);它支持更多的数据类型(Counter64等);它提供了更丰富的错误代码,能够更细致地区分错误。
l
SNMP v3提供了基于用户的安全模型(USMUser-Based Security Model)的认证机制。用户可以设置认证和加密功能,认证用于验证报文发送方的合法性,避免非法用户的访问;加密则是对NMSAgent之间的传输报文进行加密,以免被窃听。通过有无认证和有无加密等功能组合,可以为SNMP NMSSNMP Agent之间的通信提供更高的安全性。
NMSAgent成功建立连接的前提条件是NMSAgent使用的SNMP版本必须相同