来自 instance/dynamic OID 的分支静态 OID

Branch static OID from instance/dynamic OID

我想知道 if/how 是否可以从动态 OID 中分离出一个 OID。

数值上:
.1.3.6.1.4.1.(PEN).1.1.(variable OID).1.1.1

已申请:
.iso.org.dod.internet.private.enterprises.company.category.device.deviceinstance.property.sensor.level
其中 deviceinstance 是一个 唯一 ID

如果没有设备实例,则分支 .property.sensor.level 的其余部分不存在。换句话说,附加的 OID 结构是建立在 per instance 的基础上的。

您可以通过定义 MIB table 轻松实现这一点。我会使用这样的东西:

deviceInstancesTable OBJECT-TYPE
      SYNTAX   SEQUENCE OF deviceInstanceEntry
      ACCESS   not-accessible
      STATUS   mandatory
      ::= { device 1 }

deviceInstanceEntry OBJECT-TYPE
      SYNTAX   DeviceInstanceEntry
      ACCESS   not-accessible
      STATUS   mandatory
      INDEX    { deviceInstanceIndex }
      ::= { deviceInstancesTable 1 }

DeviceInstanceEntry::=
      SEQUENCE {
         deviceInstanceIndex INTEGER,
         property            DisplayString,
         sensor              DisplayString,
         level               INTEGER,
         deviceInstanceRowStatus        RowStatus
         }

因此您可以使用 RowStatus 动态创建实例。