Simple Network Management Protocol (SNMP) |
Simple Network Management Protocol (SNMP) is a protocol used in TCP/IP networks to facilitate the exchange of management information between network devices. SNMP enables network administrators to manage network performance, find and solve network problems, and plan for network growth.
Network devices are interrogated by an Network Management System (NMS) for statistics on usage and errors. The SNMP compliant devices store this data about themselves in a so-called Management Information Base (MIB).
Managed devices are monitored and controlled using four basic SNMP commands: read, write, trap and traversal operations.
The read command is used by a NMS to monitor managed devices. The NMS examines different variables that are maintained by managed devices. The basic read commands are:
The write command is used by a NMS to control managed devices. The NMS changes the values of variables stored within managed devices. The basic write command is:
The trap command is used by managed devices to asynchronously report an alert or other events to the NMS. When certain types of events occur, a managed device sends a trap to the NMS. The trap command is:
Traversal operations, GETNEXT and GETBULK (SNMPv2c and further) are used by the NMS to determine which variables a managed device supports and to sequentially gather information in variable tables, such as a routing table.
SNMPv1, SNMPv2 and SNMPv3
There are two different versions of SNMP. SNMP version 1 (SNMPv1) is the initial implementation of the SNMP protocol. It is described in Request For Comments (RFC) 1157. SNMP version 2 (SNMPv2) is an evolution of the initial version, SNMPv1. Originally, SNMPv2 was published as a set of proposed Internet standards in 1993. This version was not very successfull because it was regarded as being overly complex. Another version of SNMP2, Community-Based Simple Network Management Protocol version 2, or SNMP v2c, is more often used. SNMP2c is defined in RFC 1901 – RFC 1907. RFC 1908 describes the coexistence between Version 1 and Version 2.
SNMPv3 is a further development of SNMP. SNMPv3 addresses the deficiencies in SNMPv2 relating to security and administration. SNMPv3 is described in RFC 3410 - RFC 3415. Coexistence issues relating to SNMPv1, SNMPv2c, and SNMPv3 can be found in RFC 3416.