SNMP Overview
Simple Network Management Protocol (SNMP) is a standard protocol that is used to manage and monitor network devices, such as routers, switches, and firewalls from a central location. It accomplishes this by using a standardized set of messages and commands to communicate with network devices, which makes it easier to identify and troubleshoot issues and optimize network performance.
The SNMP protocol consists of three components:
- SNMP agent: Agents are software modules that reside on network devices and provide information to SNMP managers.
- SNMP manager: The manager also known as a Network Management Station (NMS) is a software application that is used to monitor and manage network devices (SNMP agents). It periodically or on-demand queries the agents on managed devices in the network for specific data. Then, the collected information can be displayed by any software that supports the SNMP format.
- Management Information Base (MIB): SNMP uses a hierarchical structure to organize the information it manages. The structure is called MIB, which is a database of objects that correspond to the properties and settings of network devices. Each object in the MIB has a unique identifier called an Object Identifier (OID), which is used to reference the object in SNMP messages, such as CPU usage and interface status.
As you can see in the image above, the NMS sends SNMP messages and queries the agents, asking for information such as the device's status, CPU usage, interface status, and configuration. Agents respond to these requests with reply SNMP messages that contain the requested information.
When configured, agents can also send trigger messages (trap and inform messages) when an explicitly defined threshold or event on the device is reached or happens, such as CPU overload or a hardware failure. There are several different types of SNMP actions involved in the SNMP exchange process: get, get-next, get-bulk, set, trap, and inform.
Important: The trap message does not require acknowledgment from the NMS, while the inform message does.
The SNMP protocol is supported in three different versions, and each one has different characteristics. Versions SNMPv1 and SNMPv2 are not recommended because they lack support for a secure exchange of data. SNMPv3, on the other hand, supports strong authentication, encryption, and integrity and is the recommended version.