2017-08-28 163 views
0

我有一个表在SNMP这样的:分组列中的MIB SNMP

Id Name A.x A.y B.x B.y 
1  Test  1  2  1 3 
2  Next  3  4  5 6 

我可以使用SNMP使这个访问是

table.1.1 = 1    table.1.2 = 2 
table.2.1 = Name   table.2.2 = Next 
table.3.1 = 1    table.3.2 = 3 
table.4.1 = 2    table.4.2 = 4 
table.5.1 = 1    table.5.2 = 5 
table.6.1 = 3    table.6.2 = 6 

所以列一个任务将是

1 = Id 2 = Name 3 = A.x 4 = A.y 5 = B.x 6 = B.y 

但是由于某些原因(比如能够在“正确的顺序”中添加Az和Bz),我想要c olumns如下:然后

1 = Id 2 = Name 3.1 = A.x 3.2 = A.y 4.1 = B.x 4.2 = B.y 

我的数据是这样的:

table.1.1 = 1    table.1.2 = 2 
table.2.1 = Name   table.2.2 = Next 
table.3.1.1 = 1   table.3.1.2 = 3 
table.3.2.1 = 2   table.3.2.2 = 4 
table.4.1.1 = 1   table.4.1.2 = 5 
table.4.2.1 = 3   table.4.2.2 = 6 

基本上SNMP(只要求所有的数据可以与一些被遍历开始OID每列,并没有进一步的内部的表格规则)允许。

然而,它可以用MIB来表达吗?

客户端是否能够处理该问题?

回答

0

你可以做任何你想做的事。但是,如果你要服从标准RFC 2578,则第7.1.12概念 表“管理信息结构”在

https://tools.ietf.org/html/rfc2578#section-7.1.12

解释说,你已经知道的规则。大多数应用程序不会知道您的特设表格布局。

+0

但我不明白这与我的布局有什么矛盾。让我们看看那里给出的例子。 “evalString”可以很好地定义为“{evalEntry 2 1}”和“evalValue”作为“{evalEntry 2 2}”。为什么会这样呢? –

0

您建议的分配,其中一些柱状对象不是该行的直接子节点,而是在它们之间具有中间子节点,这是不合法的。相关规则在RFC 2578 section 7.10(2)定义,对象类型值的映射:

(2)如果该对象对应于概念上的行,则至少有一个 分配,一个用于概念行中的每一列,在该对象下方存在 。 每个 列的管理分配名称都是通过将唯一的肯定子标识符附加到概念行的管理性分配名称而得到的。

强调我的。含义很明确:您的列的OID 必须单个子标识符指定,该子标识符附加到该行的OID(请注意,“name”表示OBJECT IDENTIFIER值。文本标签往往被认为是名称,称为“ “描述符”)。