> Спасибо еще раз за ответ. Я решил не гадать и искать где
> все будет разложено по полочкам. А открыл сорцы snmp_agent и также
> с ним вместе идут некоторые mib файлы.
> Почитав на офф сайте информацию по MIB
> http://net-snmp.sourceforge.net/wiki/index.php/TUT:Writing_a...
> http://net-snmp.sourceforge.net/wiki/index.php/Agent_Archite...
> Вот тут есть фраза
>>>>MIB modules, which are responsible for implementing portions of the MIB tree, have the opportunity to register callbacks for any portion of the MIB tree when they are initialized. Registrations can functionally come from any of the following sources:
>>>>MIB Modules register themselves by defining two things Естественно, что даймон, которого мы можем опрашивать по SNMP, знает, какие счетчики он знает.
Естественно, что у него внутри есть какие-то куски кода, которые знают, какие значения выдать в ответ на запрос определенного OID.
Называть ли это MIB или нет?
В одном из пониманий - нет, не называть. Посмотрите на .mib - файлы, которые вы скачали.
Даймон может ответить на запросы к нему и без этих файлов.
Если называть MIB структуру внутри памяти процесса, то да, внутри процесса есть нечто, что можно попробовать назвать MIB, но я не считаю это правильным, т.к. это не полноценная MIB, про которую тут http://net-snmp.sourceforge.net/wiki/index.php/MIB написано определение:
>"MIB is short for Management Information Base. MIBs are written in the SMI language"
> a netsnmp_handler_registration structure containing "where" in the OID tree to register
> the MIB
> a netsnmp_mib_handler structure indicating "what" code is registering to handle the requests
>>>>The name "handler" is exactly what it sounds like: it is a mechanism that "handles a request". The term is used frequently throughout the API.
> То есть насколько я понимаю MIB файлы или же модули это просто
> код который обрабатывает запросы по определенному OID.
Я предлагаю разделить отдельно "MIB файлы" описания и модули, которые обрабатывают запросы по определенным OID.
>При запуске демона все подключенные и скомпилированные модули подгружаются и
> регистрируют сами себя на определенный OID в дереве.
Что-то вроде того.
> Скачав сорцы перешел в директорию net-snmp-5.7.3\net-snmp-5.7.3\agent\mibgroup\udp-mib\data_access
...
> То есть все данные берутся из псевдо файловой системы /proc/ модулем MIB
> (в данном случае UDP).
Здесь - берутся из proc, где-то берутся еще как-то.
> Соответственно MIB нужны для того чтобы отвечать на определенный запрос в дереве
> по OID, также обрабатывать запись.
В моем понимании чтобы отвечать на определенный запрос должен быть соответствующий модуль.
MIB - это база описаний. Загляните в каталог mibs/ архива.
> Поэтому для каждой ветки в дереве
> должне быть свой хендлер и по умолчанию имеется определенный набор файлов
> MIB который скомпилированы под определенную систему.
MIB - это база описаний. Загляните в каталог mibs/ архива.
> Верно я понимаю ? Или опять что-то навыдумывал ?
Надо определиться и согласовать терминологию.
> Спасибо