Определение SNMP Gauge32 против Counter32 - PullRequest
12 голосов
/ 27 апреля 2010

Может кто-нибудь указать мне хорошее определение Gauge32 против Counter32? Я понимаю, что Counter32 может обернуть, но Gauge32 не может.

Я пытаюсь понять их семантику. Например, я слышал, что вы должны взять разницу между двумя показаниями Counter32, чтобы получить значение в секунду. Есть ли что-то подобное для значения Gauge32?

Спасибо за понимание.

Ответы [ 3 ]

24 голосов
/ 02 августа 2011

Лучшее их определение (т. Е. определение ) содержится в разделах RFC, который их определяет : RFC 2578 .

Как говорится в RFC, Counter32 не имеет определенного начального значения, поэтому одно чтение Counter32 не имеет информационного содержания. Вот почему вы должны взять два (или более) чтения, чтобы понять это. Примером этого может быть количество пакетов, полученных по интерфейсу Ethernet. Если вы прочитаете и вернете 4 миллиона пакетов, вы ничего не узнаете: возможно, провод был отключен от интерфейса за последний год, или он может передавать миллионы пакетов в секунду. Чтобы узнать что-либо, нужно пройти несколько чтений.

Датчик 32, с другой стороны, измеряет некоторое количество в определенный момент времени и может увеличиваться или уменьшаться. Вы не можете делать значимые наблюдения о двух (или более) чтениях с течением времени. Примером этого является свободное дисковое пространство. Вы можете получить значение сейчас и через час и обнаружить, что изменение равно нулю, но вы не можете сделать вывод, что в течение часа ничего не было записано на диск. Возможно, диск забит постоянными добавлениями и удалениями, которые не приводят к чистому изменению свободного пространства.

8 голосов
/ 27 апреля 2010

Да, для 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

3 голосов
/ 30 июня 2015

Они оба могут представлять значение до 2 ^ 32.

Разница заключается в том, что как только a достигает 2 ^ 32, счетчик снова начинается с 0 и представляет значение (N + 2 ^ 32) + X как X, тогда как датчик не переносится.

Счетчики также называются счетчиками опрокидывания. Обычно они используются для подсчета количества отправленных или полученных пакетов или октетов. После того, как счетчик опрокидывания обернулся несколько раз, системе управления трудно узнать, означает ли значение счетчика X значение наблюдаемой величины X или (N + 2 ^ 32) + X, где N не равно опрокидываниям. система должна периодически опрашивать объект, чтобы отслеживать обходы.

С другой стороны, датчик используется для измерения текущего значения некоторого объекта, такого как текущее количество пакетов, хранящихся в очереди. Датчик может использоваться для хранения разницы в значении некоторого объекта от начала до конца временной интервал. Это позволяет использовать датчик для контроля скорости изменения стоимости объекта.

...