Simple Network Management Protocol
Author
Albert FloresSimple Network Management Protocol (SNMP) je součástí sady internetových protokolů. Standardně využívá UDP port 161. Slouží potřebám správy sítí. Umožňuje průběžný sběr nejrůznějších dat pro potřeby správy sítě, a jejich následné vyhodnocování. Na tomto protokolu je dnes založena většina prostředků a nástrojů pro správu sítě.
Charakteristika
Protokol SNMP se vyvíjel postupně ve třech verzích: první verze (SNMPv1) zajišťuje základní funkcionalitu SNMP, druhá (SNMPv2) obsahuje navíc autentizaci a třetí (SNMPv3) šifrování (zabezpečení). Nejvíce zařízení podporuje druhou verzi.
Protokol SNMP rozlišuje mezi stranou monitorovanou (hlídaný systém) a monitorovací (sběrna dat). Tyto strany mohou běžet buď odděleně na různých fyzických strojích, nebo v rámci jednoho stroje. +more Na monitorované straně je spuštěn agent a na straně monitorovací manager. Na straně monitorované jsou operativně shromažďovány informace o stavu systému (zařízení). Manager vznáší požadavky agentovi, zpravidla na zaslání požadovaných informací (zpráv). Agent zajišťuje realizaci reakcí na požadavky managera. Získaný obsah zpráv se na straně monitorovací může dále různým způsobem zpracovávat (tabulky, grafy, …). Komunikace mezi agentem a managerem se označuje jako SNMP operace.
Na straně monitorované může existovat možnost takové konfigurace, kdy agent zašle managerovi informace (SNMP MESSAGE) automaticky bez jeho požadavku. K tomu dojde zpravidla potom, kdy byla splněna předem definovaná podmínka (výpadek, kolize, dosažení hraniční hodnoty, …), agent nečeká na odpověď. +more Takové konfiguraci agenta se říká SNMP TRAP (tzv. past na události).
Nasazení
+more'>496x496px SNMP je typicky využíváno na jednom či více správcovských počítačích (manažeři), které mají za úkol sledovat nebo řídit skupinu počítačů či jiných zařízení v síti. Na straně sledovaných zařízení je spuštěn agent, který následně poskytuje pomocí SNMP informace manažerovi.
Spravovaná data agentů jsou evidována jako proměnné. Protokol umožňuje jejich aktivní správu, kdy lze vzdáleně modifikovat tyto proměnné a změnit tak konfiguraci. +more Proměnné přístupné přes SNMP jsou uspořádány hierarchicky. Tato hierarchie a další metadata (jako například typ a popis proměnné), jsou popsány pomocí MIBs (Management Information Bases).
Síť řízená pomocí SNMP se skládá ze tří hlavních částí: # Spravované zařízení # Agent - software, který běží na spravovaných zařízeních # NMS (Network management station) - software, který běží na správcovských počítačích
Spravované zařízení
Spravované zařízení je síťový uzel, který podporuje SNMP rozhraní a umožňuje jednosměrný (pouze čtení) nebo obousměrný (čtení i zápis) přístup k informacím, které jsou vyměňovány s NMS. Zařízení jsou také často pojmenována jako síťový prvek a můžeme mezi ně zařadit například routery, switche, VOIP telefony, IP kamery nebo tiskárny.
Agent
Agent je softwarový modul pro správu sítě, který je umístěn na spravovaném zařízení. Zajišťuje reakce na požadavky správcovského počítače nebo odesílá SNMP Trapy.
Správcovský počítač
Správcovský počítač (NMS) spravuje aplikace, které monitorují a kontrolují spravovaná zařízení. NMS zajišťuje většinu paměti a zdrojů pro správu sítě. +more V případě potřeby může existovat i více NMS v jedné spravované síti.
Management information base (MIB)
SNMP sám o sobě nedefinuje, které informace (proměnné) by měl systém používat. Je tedy vhodné využití rozšíření, které umožňuje jejich nadefinování. +more MIB popisuje strukturu spravovaných dat, kdy se využívá hierarchický jmenný prostor obsahující identifikátory objektů (OID). Každý z těchto identifikátorů označuje proměnnou, která lze číst nebo nastavit přes SNMP. MIB využívá notaci definovanou pomocí SMIv2 (RFC 2578), což je podmnožina ASN 1.
Detaily protokolu
SNMP pracuje v aplikační vrstvě Internet Protocol Suite (7. vrstva OSI modelu). +more V případě nezabezpečeného SNMP agent přijímá požadavky na UDP portu 161. Správce (manažer) vysílá požadavky k agentovi z jakéhokoliv dostupného portu. Odpověď agenta bude odeslána zpět do zdrojového portu správce. Správce přijímá asynchronní oznámení (Trapy) od agenta na portu 162. Agent může generovat oznámení z jakéhokoliv dostupného portu. Při použití zabezpečení (SNMPv3) agent přijímá požadavky na portu 10161. Správce přijímá asynchronní oznámení (Trapy) od agenta na portu 10162.
SNMPv1 definuje pět datových jednotek (PDU): GetRequest, SetRequest, GetNextRequest, Response a Trap. Další dvě jednotky GetBulkRequest a InformRequest byly přidány v SNMPv2 a ve verzi SNMPv3 byl přidán PDU Report.
Všechny SNMP PDU jsou konstruovány následujícím způsobem.
IP header | UDP header | version | community | PDU-type | request-id | error-status | error-index | variable bindings |
---|
GetRequest
Požadavek od manažera k agentovi pro načtení proměnné nebo seznamu proměnných. Požadované proměnné jsou specifikovány ve vazbách (hodnoty nejsou používány). +more Vrácena je odpověď s aktuálními hodnotami.
SetRequest
Požadavek od manažera k agentovi na změnu hodnoty proměnné nebo pro změnu více hodnot v seznamu proměnných. Vazby proměnných jsou uvedeny v těle požadavku. +more Změny jsou provedeny jako atomické operace agenta. Je vrácena odpověď s novými hodnotami proměnných.
GetNextRequest
Požadavek od manažera k agentovi pro zjištění dostupných proměnných a jejich hodnot. Vrací odpověď s hodnotou proměnné lexikograficky navazující na předchozí proměnnou v MIB. +more Celá MIB tabulka může být přečtena iterativní aplikací pomocí GetNextRequest od OID na pozici 0. Řádky tabulky lze číst zadáním OID sloupců ve vazbách proměnných na základě vytvořené žádosti.
GetBulkRequest
Optimalizovaná verze GetNextRequest. Požadavek od manažera k agentovi pro více iterací GetNextRequest. +more Vrací odpověď s více vazbami proměnných. PDU specifikuje velikost a opakování pole sloužícího k ovládání chování odezvy. GetBulkRequest byl představen v SNMPv2.
Response
Vrací vazby proměnných a potvrzení od agenta manažerovi, jako odpověď na příkazy GetRequest, SetRequest, GetNextRequest, GetBulkRequest a InformRequest. Zasílání zpráv o chybách je poskytováno pomocí polí error-status a error-index.
Trap
Asynchronní oznámení od agenta manažerovi. SNMP umožňuje agentovi oznámit významné události prostřednictvím nevyžádané SNMP zprávy. +more Obsahuje aktuální hodnotu sysUpTime, OID identifikaci typu problému a nepovinné vazby proměnných. Formát zprávy byl změněn v SNMPv2 a PDU byl přejmenován SNMPv2-Trap.
Externí odkazy
[url=http://www.samuraj-cz.com/clanek/snmp-simple-network-management-protocol/]SNMP - Simple Network Management Protocol[/url] - český popis SNMP