Snmp ASN.1和SMI之间有什么区别?

Snmp ASN.1和SMI之间有什么区别?,snmp,asn.1,Snmp,Asn.1,据我了解: ASN.1的使用范围很广,SMI是ASN.1的一个子集,专门用于SNMP 这是正确的吗?如果没有,区别是什么?这正是教科书上的内容。阅读IETF RFC 1155和2578了解更多详细信息。这正是教科书上的内容。阅读IETF RFC 1155和2578了解更多详细信息。ASN.1是标准化符号。从RFC2578来看,SMI似乎使用了这种符号,就像我目前使用英语语法来构造这些句子一样。例如,在第2节中,他们给出: SNMPv2-SMI DEFINITIONS ::= BEGIN -

据我了解:

ASN.1的使用范围很广,SMI是ASN.1的一个子集,专门用于SNMP


这是正确的吗?如果没有,区别是什么?

这正是教科书上的内容。阅读IETF RFC 1155和2578了解更多详细信息。

这正是教科书上的内容。阅读IETF RFC 1155和2578了解更多详细信息。

ASN.1是标准化符号。从RFC2578来看,SMI似乎使用了这种符号,就像我目前使用英语语法来构造这些句子一样。例如,在第2节中,他们给出:

SNMPv2-SMI DEFINITIONS ::= BEGIN
   -- the path to the root
   org            OBJECT IDENTIFIER ::= { iso 3 }  --  "iso" = 1
本文遵循ASN.1语法来定义ASN.1模块SNMPv2 SMI,模块中的第一个定义是具有特定ASN.1类型对象标识符的ASN.1值组织

此外,RFC2578对可能使用的ASN.1符号进行了限制。例如,在3.1中,它们限制ASN.1标识符使用连字符,否则是允许的。这就像在一篇文章中说,我们将根据英语语法使用句子,但不允许使用过去时


旁注:RFC2578使用ASN.1 1988。ASN.1标准的较新版本已经存在,1988年标准中的一些符号被删除,特别是宏。

ASN.1是标准化符号。从RFC2578来看,SMI似乎使用了这种符号,就像我目前使用英语语法来构造这些句子一样。例如,在第2节中,他们给出:

SNMPv2-SMI DEFINITIONS ::= BEGIN
   -- the path to the root
   org            OBJECT IDENTIFIER ::= { iso 3 }  --  "iso" = 1
本文遵循ASN.1语法来定义ASN.1模块SNMPv2 SMI,模块中的第一个定义是具有特定ASN.1类型对象标识符的ASN.1值组织

此外,RFC2578对可能使用的ASN.1符号进行了限制。例如,在3.1中,它们限制ASN.1标识符使用连字符,否则是允许的。这就像在一篇文章中说,我们将根据英语语法使用句子,但不允许使用过去时


旁注:RFC2578使用ASN.1 1988。ASN.1标准的较新版本已经存在,1988年标准中的一些符号被删除,特别是宏。

不幸的是,尽管ASN.1委员会多年来一直试图让IETF将实际的ASN.1用于SNMP,负责SNMP的小组以各种方式偏离了ASN.1,这使得通用ASN.1工具无法完全处理SNMP MIB。他们不仅使用了撤销的ASN.1宏表示法,而且使用方式使得即使是仍然支持过时的ASN.1宏表示法的ASN.1工具也无法正确处理MIB定义。您需要一个专门为SNMP MIB创建的特殊工具来完全解析和正确处理它们。

不幸的是,尽管ASN.1委员会多年来一直试图让IETF将实际的ASN.1用于SNMP,负责SNMP的小组以各种方式偏离了ASN.1,这使得通用ASN.1工具无法完全处理SNMP MIB。他们不仅使用了撤销的ASN.1宏表示法,而且使用方式使得即使是仍然支持过时的ASN.1宏表示法的ASN.1工具也无法正确处理MIB定义。您需要一个专门为SNMP MIB创建的特殊工具来完全解析和正确处理它们。

是的,它在RFC中有,但RFC中的定义在技术上不太容易理解,您能用通俗易懂的术语告诉我吗。是的,它在RFC中有,但是RFC中的定义在技术上不太容易理解,你能用外行术语告诉我吗?这很容易理解。我在不同的地方读过,例如,SMI是ASN.1的一个子集。我一直不清楚“改编”在这里是否有特殊含义,但我认为你的答案意味着,与ASN.1相比,它只是具有零更改或添加的限制?@k1eran我对SMI RFC的研究还不够深入,无法说明它们是否添加了ASN.1不支持的任何符号。我对这个词也有同样的疑问。快速阅读让我觉得他们可以省略单词adapted并避免它可能引起的混淆,但我不确定。@凯文:我是否正确,所有的SMI符号在ASN.1中都有效,但某些ASN.1符号在SMI中可能无效。@pankajkushwaha肯定有些ASN.1符号在SMI中是不允许的。如果SMI真的使用了ASN.1的一个子集,那么所有SMI表示法都将是有效的ASN.1,但我不知道它是否真的使用了一个子集。保罗·索普(Paul Thorpe)的回答表明他们没有使用真子集。我在不同的地方读过,例如,SMI是ASN.1的一个适应子集。我一直不清楚“改编”在这里是否有特殊的含义,但我认为你的回答意味着,与ASN相比,它只是零变化或增加的限制。1?@k1eran我还没有对SMI RFC进行足够的研究,以确定是否
添加ASN.1不支持的任何符号。我对这个词也有同样的疑问。快速阅读让我觉得他们可以省略单词adapted并避免它可能引起的混淆,但我不确定。@凯文:我是否正确,所有的SMI符号在ASN.1中都有效,但某些ASN.1符号在SMI中可能无效。@pankajkushwaha肯定有些ASN.1符号在SMI中是不允许的。如果SMI真的使用了ASN.1的一个子集,那么所有SMI表示法都将是有效的ASN.1,但我不知道它是否真的使用了一个子集。保罗·索普(Paul Thorpe)的回答表明,他们没有使用真正的子集。尽管规模不同,但它与甲骨文/谷歌(Oracle/Google)在Java问题上的争吵有几分相似:别再搅乱我们的东西了!尽管规模不一样,但它与甲骨文/谷歌(Oracle/Google)在Java问题上的争吵有几分相似:别再搅乱我们的东西了!