使用陷阱而不是获取请求来获取信息?
Using traps rather than get requests to fetch informations?
假设我想制作一个监控应用程序来监控我网络中的一堆设备,我的问题很简单:当设备可以向管理器发送陷阱时,为什么要使用 SNMP-Get 请求?流行的监控应用程序使用陷阱还是 SNMP-get 请求?
谢谢。
有几个注意事项,可以推广到管理层
推送(陷阱、通知)与拉取(获取*请求)的哲学:
1) 只有管理应用程序才确切地知道它要获取的信息
从设备。在拉式架构中(即 SNMP)。它要求提供信息
通过 GET* 请求。在推送架构中,它必须配置推送,例如。装置
必须设置为发送通知,例如。如果检测值高于
一定的门槛,价格昂贵。
2) 在设备上维护推送配置非常昂贵。在 SNMP 中,
设备应该是愚蠢的,管理器应该是聪明的。这些日子
设备变得越来越强大,因此您会看到更多的推送模型(某些
MIB、NetFlow、sFlow 等)。
3) 除了配置之外,仅使通知可靠是昂贵的。在
SNMP 中有 TRAP 和 Inform-Request PDU。前者是不可靠的,并且是
仅被视为设备上发生了某些事情的提示,应用程序
然后使用 pull 获取所有信息。后者是公认的,与设备
必须维护信息以使其可靠(超时、重传等)。
综上所述,想想在设备上设置推送(陷阱)所付出的努力
独家:
1) 您的应用程序(可能是多个应用程序之一)必须配置设备
告诉它你想要 traps/notifications。这本身是做不到的
完全通过推送,必须有一些 SET 请求;
2) 您的应用必须准确地告诉它您想要什么陷阱,再次 SET 请求;
3) 您的设备现在必须确保每个通知都能可靠地到达所有
已在设备上注册的应用程序。
就"popular monitoring applications"而言,SNMP 中的绝大多数信息
被拉取,notifications用于提示提示拉取的异常
信息。
假设我想制作一个监控应用程序来监控我网络中的一堆设备,我的问题很简单:当设备可以向管理器发送陷阱时,为什么要使用 SNMP-Get 请求?流行的监控应用程序使用陷阱还是 SNMP-get 请求? 谢谢。
有几个注意事项,可以推广到管理层 推送(陷阱、通知)与拉取(获取*请求)的哲学:
1) 只有管理应用程序才确切地知道它要获取的信息 从设备。在拉式架构中(即 SNMP)。它要求提供信息 通过 GET* 请求。在推送架构中,它必须配置推送,例如。装置 必须设置为发送通知,例如。如果检测值高于 一定的门槛,价格昂贵。
2) 在设备上维护推送配置非常昂贵。在 SNMP 中, 设备应该是愚蠢的,管理器应该是聪明的。这些日子 设备变得越来越强大,因此您会看到更多的推送模型(某些 MIB、NetFlow、sFlow 等)。
3) 除了配置之外,仅使通知可靠是昂贵的。在 SNMP 中有 TRAP 和 Inform-Request PDU。前者是不可靠的,并且是 仅被视为设备上发生了某些事情的提示,应用程序 然后使用 pull 获取所有信息。后者是公认的,与设备 必须维护信息以使其可靠(超时、重传等)。
综上所述,想想在设备上设置推送(陷阱)所付出的努力 独家:
1) 您的应用程序(可能是多个应用程序之一)必须配置设备 告诉它你想要 traps/notifications。这本身是做不到的 完全通过推送,必须有一些 SET 请求;
2) 您的应用必须准确地告诉它您想要什么陷阱,再次 SET 请求;
3) 您的设备现在必须确保每个通知都能可靠地到达所有 已在设备上注册的应用程序。
就"popular monitoring applications"而言,SNMP 中的绝大多数信息 被拉取,notifications用于提示提示拉取的异常 信息。