2

假设我正在编写一个 SNMP v1/2 代理。

是否必须将实例编号附加到陷阱 PDU 中的变量 OID?

例如,在 SNMP V1 中,RFC 1157 中定义了一个陷阱,其中包含以下字段:

  • 企业
  • 代理地址
  • 通用陷阱类型
  • 具体陷阱代码
  • 时间戳
  • 变量绑定

“变量绑定”部分由变量名称和值的列表组成。根据 RFC 1157:

通常,SNMP 变量的名称是 xy 形式的 OBJECT IDENTIFIER,其中 x 是 MIB 中定义的非聚合对象类型的名称,y 是 OBJECT IDENTIFIER 片段,它以特定于命名的方式对象类型,标识所需的实例。

困扰我的是“一般”,.y 是强制性的吗?

4

1 回答 1

4

是的,必须在变量绑定中包含任何变量 OID 的实例子标识符。该段落描述了变量 OID 的一般(即通用)形式,而不是使用“一般”来表示不明确的“嗯,通常是这样的,但并非总是如此”。后来的 RFC 使用更具体的措辞:

变量绑定列表是变量绑定的简单列表。

变量的名称是一个 OBJECT IDENTIFIER,它是相应对象类型的 OBJECT IDENTIFIER 与标识实例的 OBJECT IDENTIFIER 片段的串联。对应对象类型的 OBJECT IDENTIFIER 称为变量的 OBJECT IDENTIFIER 前缀。

[RFC 3416,第 2.1 节]

于 2010-03-02T22:29:13.687 回答