SNMP
Матеріал з Вікіпедії — вільної енциклопедії.
| TCP/IP модель (RFC 1122) |
|---|
| Рівень програмного забезпечення |
| BGP · DHCP · DNS · FTP · Gopher · GTP · HTTP · IMAP · IRC · NNTP · NTP · POP · RIP · RPC · RTCP · RTP · RTSP · SDP · SIP · SMTP · SNMP · SOAP · SSH · STUN · Telnet · TLS/SSL · XMPP · |
| Транспортний рівень |
| TCP · UDP · DCCP · SCTP · RSVP · ECN · (more) |
| Рівень Інтернет |
| IP (IPv4, IPv6) · ICMP · ICMPv6 · IGMP · IPsec · (more) |
| Канальний рівень |
| ARP · RARP · NDP · OSPF · Tunnels (L2TP) · Media Access Control (Ethernet, DSL, ISDN, FDDI) · Device Drivers · (more) |
SNMP (англ. Simple Network Management Protocol — простий протокол керування мережею) — це протокол керування мережами зв'язку на основі архітектури TCP/IP.
На основі концепції TMN в 1980—1990 р. різними органами стандартизації був вироблений ряд протоколів керування мережами передачі даних з різним спектром реалізації функцій TMN. До одного з типів таких протоколів керування відноситься Simple Network Management Protocol (SNMP). SNMP — це технологія, покликана забезпечити керування й контроль за пристроями й додатками в мережі зв'язку шляхом обміну керуючою інформацією між агентами, що розташовуються на мережних пристроях, і менеджерами, розташованими на станціях керування. SNMP визначає мережу як сукупність мережних керуючих станцій й елементів мережі (головні машини, шлюзи й маршрутизатори, термінальні сервери), які спільно забезпечують адміністративні зв'язки між мережними керуючими станціями й мережними агентами. SNMP різних версій присвячений цілий ряд рекомендацій проблемної групи проектування Internet (RFC).
Зміст |
[ред.] Огляд і базові концепції
Звичайно при використанні SNMP присутні керовані та керуючі системи. До складу керованої системи входить компонент, який називається агентом, який відправляє звіти керуючій системі. По суті SNMP агенти передають управлінську інформацію на керуючі системи як змінні (такі як «вільна пам'ять», «ім'я системи», «кількість працюючих процесів» тощо).
Керуюча система може отримати достовірну інформацію через операції протоколу GET, GETNEXT і GETBULK. Агент може самостійно без запиту надіслати дані, використовуючи операцію протоколу TRAP або INFORM. Управляючі системи можуть також відправляти конфігураційні оновлення або контролюючі запити, використовуючи операцію SET для безпосереднього управління системою. Операції конфігурування та управління використовуються тільки тоді, коли потрібні зміни до мережної інфраструктури. Операції моніторингу зазвичай виконуються на регулярній основі.
Змінні, доступні через SNMP, організовані в ієрархії. Ці ієрархії та інші метадані (такі як тип і опис змінної) описуються Базами Керуючою Інформації' (англ. Management Information Bases (MIBs)).
[ред.] Management Information Base (MIB)
SNMP не визначає, яку інформацію (які змінні) керована система повинна надавати. Навпаки, SNMP використовує розширювану модель, в якій доступна інформація визначається Базами Керуючою Інформації (MIB - Management Information Base). Бази Керуючої Інформації описують структуру керуючої інформації пристроїв. Вони використовують ієрархічний адресний простір імен, що містить унікальний ідентифікатор об'єкта (англ. object identifier (OID)). Грубо кажучи, кожен унікальний ідентифікатор об'єкта ідентифікує змінну, яка може бути прочитана чи встановлена через SNMP. MIBи використовують нотацію, визначену в ASN.1.
Ієрархія MIB може бути зображена як дерево з безіменним коренем, рівні якого приписані різними організаціями. На самому високому рівні MIB OIDи належать різним організаціям, що займаються стандартизацією, в той час як на нижчих рівнях OIDи виділяються асоційованими організаціями. Ця модель забезпечує управління на всіх шарах мережної моделі OSI, бо MIBи можуть бути визначені для будь-яких типів даних і операцій.
Керований об'єкт - це одна з будь-якого числа характеристик, специфічних для керованого пристрою. Керований об'єкт включає в себе один або більше екземплярів об'єкта (що ідентіфікуються за OID), які насправді є змінними.
Існує два типи керованих об'єктів:
- Скалярний об'єкти визначають єдиний екземпляр об'єкта.
- Табличні об'єкти визначають множинні, пов'язані екземпляри об'єктів які групуються в таблицях MIB.
Прикладом керованого об'єкта може бути atInput, який є скалярним об'єктом що містить єдиний екземпляр об'єкта, ціле число, яке показує загальну кількість вхідних пакетів AppleTalk на мережний інтерфейс маршрутизатора.
Ідентифікатор об'єкта (OID) унікально ідентифікує керований об'єкт в ієрархії MIB.
[ред.] Abstract Syntax Notation One (ASN.1)
В телекомунікаціях і комп'ютерних мережах, ASN.1 є стандартною гнучкою нотацією для опису структур даних, що служать для кодування, передачі і декодування даних. ASN.1 являє собою набір правил для опису структури об'єктів, незалежних від специфічних для обладнання методик кодування, і формальну нотацію, яка дозволяє уникнути неоднозначностей.
ASN.1 це єдиний ISO та ITU-T стандарт, спочатку визначений у 1984 році як частина стандарту CCITT X.409: 1984. Пізніше, в 1988 році, з-за його широкої застосовності, він був виділений в окремий стандарт X.208. Значно переглянута версія 1995 року описана в X.680.
Адаптована підмножина ASN.1 Структура Керуючої Інформації (SMI) спеціфікована в протоколі SNMP для визначення наборів пов'язаних MIB об'єктів, також званих MIB модулями.
[ред.] Історія виникнення протоколу
До початку 1988 року стало ясно, що необхідний деякий загальний набір засобів керування мережними пристроями різних виробників, які доти створювали власні продукти моніторингу та налаштувань, для своїх же мережних пристроїв, що підтримували унікальні механізми взаємодії з ними.
Після багатьох засідань IAB (англ. Internet Architecture Board) опублікував у квітні 1988 року RFC 1052: IAB Recommendations for the Development of Internet Network Management Standards, в якому закликав до якнайшвидшого створення елементів Простого Мережного Управління (Simple Network Management).
Робота зі створення SNMP закипіла. Багато ідей, що лежать в основі SNMP, були запозичені з попередніх досліджень з моніторингу інтернет-маршрутизаторів (історично званих шлюзів, англ. gateways), що дало світові Simple Gateway Monitoring Protocol (SMGP). І вже в серпні 1988 з'явилися три основні документа:
- RFC 1065: Structure and Identification of Management Information for TCP/IP-based internets.
- RFC 1066: Management Information Base for Network Management of TCP/IP-based internets.
- RFC 1067: A Simple Network Management Protocol.
Згодом ці документи було перевидано і доповнено до визначення наступного покоління SNMP: RFC 1155, RFC 1156 та RFC 1157, які у свою чергу, також піддалися переробці.
Зрештою, у травні 1991 року була завершена робота зі створення першої версії протоколу SNMP, яка знайшла своє відображення в таких документах:
- RFC 1155: Structure and Identification of Management Information for TCP / IP-based internets (Травень, 1990)
- Визначає структуру керуючої інформації у вигляді глобального дерева.
- Представляє синтаксис визначення імен змінних управління.
- RFC 1212: Concise MIB Definitions (Березень, 1991)
- Доповнює RFC 1155 в частині синтаксису визначення імен змінних.
- RFC 1213: Management Information Base for Network Management of TCP / IP-based internets: MIB-II (Березень, 1991)
- Містить список більше ста найбільш необхідних змінних, що відповідають за конфігурацію, статус і статистику систем, що входять в TCP / IP мережа.
- RFC 1157: A Simple Network Management Protocol (SNMP) (Травень, 1990)
- Визначає повідомлення, якими обмінюються керуюча станція і об'ект управління для отримання та оновлення значення змінних.
- Визначає trap (alarm)-повідомлення, посилають системою при значних змін в її конфігурації.
Публікація цих стандартів стала поштовхом для виробників мережного обладнання, які розгорнули широкі роботи із забезпечення керованості:
- всього спектру мережного обладнання — мостів, маршрутизаторів, модемів ...
- широкого кола інтерфейсів - Point-to-Point, DS1, DS3, X.25, Frame Relay, Ethernet, Token Ring, FDDI, тощо
[ред.] Зовнішні посилання
- Description of the SNMP packet breakdown
- SNMP FAQ part 1
- SNMP FAQ part 2
- SNMP products and technical articles
- Cisco's description of SNMP and how to use in their products
- Articles by SNMP Research
- SNMP: Simple? Network Management Protocol
- Emnico SNMP MIB Library: A comprehensive collection of SNMP MIBs
- SNMP v1, v2, and v3 Message Protocol Handy Reference (pdf)
- Иваненко С. Введение в SNMP
- SNMP протокол - принципы, безопасность, применение
- Семейство стандартов SNMP
[ред.] Реалізації
- Net-SNMP (Net-SNMP: Open source SNMP implementation)
- Netsnmpj: Open source SNMP for Java
- OpenSNMP: multi-threaded SNMPv3 engine
- PySNMP: pure-Python module, BSD license
- Ruby SNMP: Open source SNMPv1 and v2 for Ruby
- TinySNMP: an easy to configure minimal SNMPv1 agent
- SNMP.NET V3
- iReasoning MIB Browser / SNMP Manager (Free)
- Net::SNMP : a pure Perl module that implements SNMPv1, v2 and v3 on IPv4 and IPv6
- SNMP4J - Free SNMP API for Java Managers and Agents
- Synapse: Open source Synchronous TCP/IP Library for Pascal/Delphi
- Nstrument Snmp Library for .Net
- Open-source extensible SNMP Agent for Windows 2K/XP/Vista
- SNMP Manager LoriotPro free edition
- BSNMP - mini SNMP daemon
- AGNEKO SNMPc (AGNEKO SNMPC: Система управління і моніторингу)

