2013-04-14 33 views
0

我想一个MIB内使用层次表结构的SNMPv2的诱捕类似这样的答案中所描述的一个https://stackoverflow.com/a/2510340/346899指数MIB表

但是我真的不明白该指数的概念中的条目一个MIB表。例如在所列出的答案以下摘录在子表条目的childIndex使用:如果我不使用的TRAP-内指定特殊childIndex

childEntry OBJECT-TYPE 
SYNTAX  ChildEntry 
MAX-ACCESS not-accessible 
STATUS  current 
DESCRIPTION "Entry in Child table" 
INDEX  { parentIndex, 
       childIndex } 
::= { childTable 1 } 

但是我的陷阱接收器(由iReasoning)也适用它使用的MIB。那么索引的目的是什么?

回答

1

此索引仅用于表格检索,您可以使用GET NEXT或GET BULK邮件查询表格中的所有对象。仅基于INDEX信息,您可以知道接收的对象应如何格式化为适当的表格。

“不过我的陷阱接收器(由iReasoning)也适用,如果我不 它采用了使用陷阱MIB中指定一个特殊childIndex。”

编辑: 对于一个陷阱接收器,它取决于MIB文件,了解如何解释收到的通知。幸运的是,在几乎所有的标准MIB文档中,对于NOTIFICATION-TYPE对象来说,定义是明确的。例如,在RFC 4898

http://tools.ietf.org/html/rfc4898

tcpEStatsEstablishNotification NOTIFICATION-TYPE 
    OBJECTS  { 
       tcpEStatsConnectIndex 
       } 
    STATUS  current 
    DESCRIPTION 
     "The indicated connection has been accepted 
     (or alternatively entered the established state)." 
    ::= { tcpEStatsNotifications 1 } 

对象部分显示了如何解释的对象。

因此,确实没有必要让陷阱接收器返回并检查您是否错误地定义了表(在此MIB的开头)。

当您使用此MIB文件解释表的GET NEXT或GET BULK结果时,您对表格的更改将只会是一个问题,因为那时该实用程序将查找某些索引项目丢失。

+0

为了让我的问题更清楚:陷阱接收器(例如iReasoning的陷阱接收器)是否也使用GET NEXT/GET BULK来获取表数据?据我所知,陷阱数据只是完全发送到一个目的地,所以在这种情况下索引没有真正使用。如果我错了,请纠正我。 – s106mo

+0

刚编辑我的答案。除非收到的数据无法解释,否则MIB文件中的一些错误将不会被检测到。 –