浅谈
Linux
中开发
SNMP Trap
SNMP
Trap
是一种标准的报告机制,广泛应用在各种网络管理软件中。本文
详细介绍了
SNMP Trap
的基本概念,以及
Linux
下面
net-snmp
对
SNMP Trap
的开发与应用。
1.
SNMP Trap
简介
SNMP
简单网络管理协议
(Simple
Network
Management
Protocol)
是一种应用
层协议,是
TCP/IP
协议族的一部分。它使网络设备之间能够方便地交换管理信
息。
能够让网络管理员管理网络的性能,
发现和解决网络问题及进行网络的扩充。
SNMP
Trap
是
SNMP
的一部分,
当被监控段出现特定事件,
可能是性能问题,
甚至是网络设备接口宕掉等,
代理端会给管理站发告警事件。
假如在特定事件出
现的时刻,不是由
Agent
主动通知
NMS(Network
Management
Station
)
,那么
NMS
必须不断地对
Agent
进行轮询。这是非常浪费计算资源的方法,正如人们
用中断通知
CPU
数据的到达,而不是让
CPU
进行轮询一样。
Trap
通知是更加
合理的选择。
总的来说,
SNMP Trap
就是被管理设备主动发送消息给
NMS
的一种机制。
2.
SNMP Trap
报文
Trap PDU
不同于其他类型的
PDU
格式,
Trap PDU
包含的部分都是为描述事
件而定义的,见下图所示: