Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсак.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
592.9 Кб
Скачать
    1. Модуль виведення інформації про систему віддаленої еом

За допомогою цього модуля проходить вибірка даних системи з віддаленої машини. Такі параметри, як ім’я комп’ютера, операційна система, процесор та інше.

<?

session_start();

snmp_set_quick_print(1);

$c = snmpget("192.168.1.2", "pub1", ".1.3.6.1.2.1.1.5.0"); // Назва ПК

echo $c;

echo '<br />';

$c = snmpget("192.168.1.2", "pub1", ".1.3.6.1.2.1.1.1.0"); //Сімейство процесора, Операційна система

echo $c;

echo '<br />';

$c = snmpget("192.168.1.2", "pub1", ".1.3.6.1.2.1.1.3.0"); //UpTime

echo $c;

echo '<br />';

$c = snmpwalk("192.168.1.2", "pub1", ".1.3.6.1.2.1.1");

echo $c[17]; //Виявлення модулю "The MIB module for managing TCP implementations"

echo '<br />';

echo $c[18]; //Виявлення модулю "The MIB module for managing IP and ICMP implementations"

echo '<br />';

echo $c[19]; //Виявлення модулю "The MIB module for managing UDP implementations"

echo '<br />';

echo $c[20]; //Виявлення модулю "The MIB module for SNMPv2 entities"

echo '<br />';

echo $c[21]; //Виявлення модулю "View-based Access Control Model for SNMP."

echo '<br />';

$c = snmpget("192.168.1.2", "pub1", ".1.3.6.1.2.1.4.3.0");

echo '<br />';

echo '<br />';

echo '<p>Число отриманих пакетів IP: ' . $c . '</p>';

$c = snmpget("192.168.1.2", "pub1", ".1.3.6.1.2.1.4.10.0");

echo '<br />';

echo '<br />';

echo '<p>Число відправлених пакетів IP: ' . $c . '</p>';

$c = snmpget("192.168.1.2", "pub1", ".1.3.6.1.2.1.4.12.0");

echo '<br />';

$c = snmpget("192.168.1.2", "pub1", ".1.3.6.1.2.1.6.8.0");

echo '<br />';

echo '<br />';

echo $c;

?>

Snmpwalk проходить через все дерево по заданому OID та виводить інформацію у вигляді масиву. Необхідне значення ми можемо взяти, використавши $c[17]…$c[20] – визначення модулів, які підтримує сервер (агент).

    1. Модуль формування графіків mrtg

Усі графіки формуються виключно на стороні клієнта, а створює їх браузер за допомогою JavaScript. В даній роботі було використано бібліотеку Moris.js. Яка дозволяє швидко і просто сформувати необхідний графік з вихідних даних.

Було використано два типи графіків – Bar і Line для відображення певних параметрів мережі, наприклад кількість прийнятих пакетів IP за день.

<script>

Morris.Bar({

element: 'line-example',

ymax: [1000000],

data: [

{ y: '192.168.1.1', a: 142584},

{ y: '192.168.1.2', a: 323832 },

{ y: '192.168.1.3', a: 455711 },

{ y: '192.168.1.4', a: 653646 },

{ y: '192.168.1.5', a: 933316 },

{ y: '192.168.1.6', a: 716421 },

{ y: '192.168.1.7', a: 564562 }

],

xkey: 'y',

ykeys: ['a'],

labels: ['Число TCP-з\'єднань Active-Open']

});

</script>

<script>

Morris.Line({

element: 'line-example',

ymax: [5000],

data: [

{ y: '2014-02-21', a: 127},

{ y: '2014-02-22', a: 461 },

{ y: '2014-02-23', a: 1084 },

{ y: '2014-02-24', a: 2539 },

{ y: '2014-02-25', a: 912 },

{ y: '2014-02-26', a: 1315 },

{ y: '2014-02-27', a: 3177 }

],

xkey: 'y',

ykeys: ['a'],

labels: ['Число невдалих TCP-з\'єднань']

});

</script>

Дані передаються із змінних MIB, надходять до скрипту php і тільки тоді JavaScript звертається до них і отримує інформацію по графікам. Після цього відбувається їх формування.

Перевагою в тому, що графіки формуються на стороні клієнта є те, що ви на навантажуєте сервер додатковими скриптами, а даєте змогу пере направити навантаження на браузер клієнта, таким чином покращується швидкодія сервера.

Дані, які стосуються мереж можна не тільки використовувати у графіках, а й записати їх в базу даних для подальшої роботи над ними.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]