代码之家  ›  专栏  ›  技术社区  ›  DougN

SNMP Gauge32与Counter32的定义

  •  12
  • DougN  · 技术社区  · 14 年前

    有人能给我指一下高度计32对计数器32的定义吗?我知道柜台32可以包装,但高度计32不能。

    我在试着理解他们的语义学。例如,我听说你应该取两个计数器32读数之间的差来得到一个值/秒。对于gauge32值有类似的东西吗?

    谢谢你的洞察力。

    3 回复  |  直到 6 年前
        1
  •  8
  •   Lightness Races in Orbit    6 年前

    是的,对于Gauge32,您也可以使用它。

    在内部深处,Gauge32和Counter32是相同的,只是Counter32中存储的数据不断增加(并在达到上限时自动换行)。

    http://www.ireasoning.com/javadocs/com/ireasoning/protocol/snmp/SnmpCounter32.html

    对于Gauge32,您可以根据它试图提供的实际信息来预测数据的增加和减少。

    http://www.ireasoning.com/javadocs/com/ireasoning/protocol/snmp/SnmpGauge32.html

        2
  •  24
  •   bstpierre Edgar Aviles    13 年前

    这些的最佳定义(即 这个 定义)在 定义它们的RFC : RFC 2578 .

    正如RFC所说,counter32没有定义的初始值,因此counter32的单个读取没有信息内容。这就是为什么你必须读两个(或更多)读数才能理解它。在以太网接口上接收的数据包数量就是一个例子。如果你阅读并取回400万个数据包,你就什么都没学到:过去一年,电线可能已经从接口中拔出,或者它可能每秒传输数百万个数据包。你必须多读几遍才能知道任何事情。

    另一方面,测量仪32可以测量某一时刻的某个量,并可能上升或下降。随着时间的推移,你不一定要对两个(或更多)读数进行有意义的观察。其中一个例子就是可用磁盘空间。你可以现在取这个值,一个小时后,发现变化是零——但是你不能得出结论,在一个小时的过程中没有任何东西被写入磁盘。有可能磁盘受到不断的添加和删除的重击,而这些添加和删除不会导致可用空间的净变化。

        3
  •  3
  •   ashish2199    9 年前

    它们都可以表示高达2^32的值。

    区别在于,一旦A达到2^32,计数器就会从0重新开始,并将值(n+2^32)+x表示为x,而仪表则不换行。

    计数器也称为滚动计数器。 它们通常用于计算发送或接收的数据包或八位字节的数量。 当一个翻转计数器经过多次缠绕后,管理系统很难知道x的计数器值是否意味着观察到的数量是x或(n+2^32)+x,其中n不是翻转次数,因此系统需要定期对对象进行轮询以跟踪翻转次数。

    另一方面,仪表用于测量某些实体的当前值,例如存储在队列中的当前数据包数。仪表可用于存储某个实体从时间间隔开始到结束的值差。这使得仪表可以用来监控实体值的变化率。