ТОП-10 популярных



Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...

НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...

БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...

Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...

ПОД ЛИТЕРОЙ «N»
Aтаку LCD-мониторов не остановить, а масштабы этого наступления даже немного пугают. Судите сами — многие пользователи только начинают приглядываться к новому для...


Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...

Размер объему не помеха.
С тех пор как компания Fujitsu отказалась от производства жестких дисков для настольных компьютеров, многие пользователи начали забывать о том,...


Какую только информацию мы не помещаем на компакт-диски: резервные копии важных данных, музыку, фильмы... Многие полагают, что главное - «купить...

PHP. Операции ввода-вывода на сетевом уровне. Часть Триннадцатая.


28-12-2009

10.5. SNMP
Протокол SNMP (Simple Network Management Protocol) является протоколом управления сетями. Он описан в документе RFC 1089, а изучение его можно начать на узле <http://www.snmp.com/>. Для того чтобы иметь возможность пользоваться этим протоколом под управлением ОС Unix, необходимо иметь в своем распоряжении библиотеки UCD SNMP. Их можно найти на Web-узле <http://www.net-snmp.org/>.
boolean snmp_get_quick_print()
Функция snmp_get_quick_print возвращает состояние установки quick_print для библиотеки UCD SNMP. Эта установка определяет степень полноты описания объектов. По умолчанию значение quick_print равно FALSE. Подробнее о нем можно узнать в руководстве UCD SNMP. 
snmp_set_quick_print(boolean on)
Функция snmp_set_quick_print делает установки quick_print для библиотеки UCD SNMP. Краткое описание установок quick_print можно найти в описании функции snmp_get_quick_print.
string snmpget(string host, string community, string object, integer timeout, integer retries)
Функция snmpget (листинг 10.24) возвращает значение указанного объекта. Адрес узла может быть записан в виде цифр или имени. Существует возможность задавать сообщество и объект (аргументы community и object). Кроме того, можно указать необязательный тайм-аут в секундах или количество попыток установки соединения.

| Листинг 10.24. Функция snmpget_
<?php
//определите, как долго работала система //при этом она должна возвращать что-то наподобие //Timeticks: (586731977) 67 days, 21:48:39.77 if($snmp = snmpget("test.net-snmp.org", "demopublic", "system.sysUpTime.0"))
{
print($snmp);
}
else
{
print("snmpget failed!");
}

boolean snmpset(string host, string community, string object, string type, string value, integer timeout, integer retries)
Функция snmpset (листинг 10.25) устанавливает значение указанного объекта. Адрес узла может быть записан в виде цифр или имени. В этой функции существует возможность задавать сообщество и объект (аргументы community и object). Аргумент type представляет собой односимвольную строку. Допустимые типы приведены в табл. 10.12. Кроме того, можно указать необязательный тайм-аут в секундах или количество попыток установки соединения.
Операции ввода-вывода на сетевом уровне
Операции ввода-вывода на сетевом уровне
Листинг 10.25. Функция snmpset

<?php
// отобразить текущее значение строки demo $snmp = snmpget("test.net-snmp.org",
"demopublic", "ucdDemoPublicString.0"),-print("$snmp (первоначальное значение)<br>n"); // задать новое значение snmpset("test.net-snmp.org",
"demopublic", "ucdDemoPublicString.0",
"s", "Core PHP Programming"); // отобразить текущее значение строки demo $snmp = snmpget("test.net-snmp.org",
"demopublic", "ucdDemoPublicString.0"),-print("$snmp (текущее значение)^^^"),-
?>

array snmpwalk(string host, string community, string object, integer timeout, integer retries)
Функция snmpwalk (листинг 10.26) возвращает массив всех объектов в дереве, которое берет начало из указанного объекта. Для того чтобы получить все объекты, можно указать пустую строку. Кроме того, можно указать необязательный тайм-аут в секундах или количество попыток установки соединения.

Листинг 10.26. Функция snmpwalk

<?php
//получить все SNMP-объекты
$snmp = snmpwalk("test.net-snmp.org", "demopublic", ""); print_r($snmp);
?>

Понравился материал? Поделитесь с друзьями!



<< Предыдущая статьяСледующая статья >>
PHP. Операции ввода-вывода на сетевом уровне. Часть Двеннадцатая. PHP. Данные