Что такое индексы SNMP?

Я пытаюсь узнать то, что предназначено индексами SNMP. Я считал следующее утверждение на Wiki:

Индексные присвоения для экземпляра устройства SNMP могут измениться от опроса до опроса главным образом в результате изменений, инициируемых системным администратором

Мое понимание - то, что системный администратор использует для опроса устройств SNMP, и его программа отображает устройства SNMP с некоторыми порядковыми номерами (что мы звоним как индексы). Так каждый раз, когда он опрашивает устройства SNMP, программа показывает те устройства с различными индексами.

Мое понимание корректно? Что означает что точно мы подразумеваем под индексами SNMP и в этом контексте?

3
задан 16.01.2014, 19:00

2 ответа

Я нашел следующую информацию здесь.

Модуль snmp_index реализует Абстрактный тип данных (ADT) для индексной структуры SNMP для таблиц SNMP. Это реализовано как ets таблица ordered_set типа данных, что означает, что все операции являются O (зарегистрируйте n). В таблице ключ является ИДЕНТИФИКАТОРОМ ОБЪЕКТА ASN.1.

Этот индекс используется для разделения реализации упорядочивания SNMP от фактической реализации таблицы. Упорядочивание SNMP, которое является реализацией, ДОБИРАЕТСЯ, ЗАТЕМ, реализован в этом модуле.

Например, предположите, что существует таблица SNMP, которая лучше всего реализована в Erlang как один процесс на строку таблицы SNMP. Предположим далее, что ИНДЕКС в таблице SNMP является СТРОКОЙ ОКТЕТА. Индексная структура была бы создана следующим образом:

  snmp_index:new(string)

Для каждого нового процесса мы создаем, мы вставляем объект в snmp_index структуру:

  new_process(Name, SnmpIndex) ->
    Pid = start_process(),
    NewSnmpIndex = 
      snmp_index:insert(SnmpIndex, Name, Pid),
    <...>

С этой структурой мы можем теперь отобразить ИДЕНТИФИКАТОР ОБЪЕКТА в, например, ПОЛУЧИТЬ запрос NEXT к корректному процессу:

  get_next_pid(Oid, SnmpIndex) ->
    {ok, {_, Pid}} = snmp_index:get_next(SnmpIndex, Oid),
    Pid.

В Заключении с информацией я знаю и информация, предоставленная в предыдущей кавычке, я полагаю, что индексы SNMP не должны быть изменены из-за того того, что это победило бы цель индекса (исправьте меня, если я неправ).

ОБНОВЛЕНИЕ: путем я вижу его, индекс SNMP подобен индексу базы данных, но это индексирует сетевые устройства для ссылки. Единственное время, которое должен изменить этот индекс, - когда аппаратные средства удалены или добавлены. Вы не хотели бы Вас индексы базы данных, изменяющиеся на существующей записи, потому что она могла вызвать дубликаты или другие проблемы. Возможно, кто-то мог пролить некоторый свет на этот вопрос с другим ответом или комментарием. Я знаю много о сетях, но я никогда не слышал об индексном изменении SNMP. Я Погуглил это приблизительно в течение часа и не придумал ничего очень полезного кроме веб-страницы, уже упомянутой и страница Wiki.

1
ответ дан 08.12.2019, 01:44
So each time he polls the SNMP devices the program shows those devices with different indices.

Это действительно не имеет место, индексы используются для получения информации о новых устройствах, поскольку они вставляются (думайте, заменяя Интерфейсы RAID/RAM/ЦП/виртуального в горячем режиме...), тот способ, которым можно отследить устройство, как только следующий опрос после того, как это было вставлено. Они не ДОЛЖНЫ (как в RFCs) изменение, но я не знаю это, это действительно стандартизировано.

1
ответ дан 08.12.2019, 01:44

Теги

Похожие вопросы