What is SNMP? | Simple Network Management Protocol


What is SNMP?

SNMP, which stands for Simple Network Management Protocol, is a widely used protocol for managing and monitoring network devices and systems. It allows network administrators to manage and monitor the performance, availability, and security of network devices such as routers, switches, servers, and printers.

When SNMP was first developed in the 1980s, large and complicated business networks were only beginning to emerge. It has become one of the most used protocols used to keep tabs on a network. What is SNMP and why is it important to network administrators is discussed below.

SNMP Components

SNMP consists of three main components:

  • Managed Devices: These are the network devices that are being monitored and managed using SNMP. They can include routers, switches, servers, printers, and other network equipment.
  • Agents: Agents are software modules that run on managed devices and collect information about the device’s performance and status. They store this information in a Management Information Base (MIB) and make it available to the SNMP manager.
  • SNMP Manager: The SNMP manager is the central system or software application that collects and analyzes data from the managed devices. It sends SNMP commands to the agents on the managed devices to retrieve information, set configuration parameters, and receive trap notifications.

How does SNMP work?

SNMP works on a client-server model, where the SNMP manager acts as the client and the managed devices act as the servers. The SNMP manager communicates with the agents on the managed devices using SNMP commands and receives responses from the agents.

SNMP Framework

Exploring the SNMP Framework To understand how SNMP works, it’s essential to delve into the SNMP framework. SNMP operates based on a client-server model, where the SNMP manager acts as the client, and SNMP agents within managed devices serve as servers. This framework defines the structure and rules for communication and data exchange in SNMP.

SNMP Protocol Stack The SNMP protocol stack comprises several layers, each with its specific functions. These layers work together to ensure reliable communication between SNMP managers and agents.

  1. Application Layer: At the top of the stack is the Application Layer, which interfaces with the SNMP manager. It handles the translation of SNMP commands and responses into a format that can be transmitted over the network.
  2. Presentation Layer: The Presentation Layer is responsible for data encoding and decoding, ensuring that information is transferred in a format that both the manager and agent can understand.
  3. Session Layer: This layer establishes and manages communication sessions between the SNMP manager and agents. It ensures that messages are properly delivered and acknowledged.
  4. Transport Layer: The Transport Layer handles the actual transmission of SNMP messages over the network. It relies on standard transport protocols like UDP (User Datagram Protocol).
  5. Network Layer: The Network Layer deals with addressing and routing, ensuring that SNMP messages reach their intended destinations.
  6. Data Link Layer: At the lowest level is the Data Link Layer, which governs the physical transmission of data within a local network segment.

SNMP Architecture

SNMP’s architecture is designed to facilitate the management of network devices and the collection of data for analysis and monitoring. Understanding this architecture is essential for effectively implementing SNMP in network management.

The SNMP architecture consists of the following elements:

  • SNMP Manager: The SNMP manager is responsible for collecting and processing data from the managed devices. It sends SNMP commands to the agents and receives responses.
  • Managed Devices: These are the network devices that are being monitored and managed using SNMP. They contain agents that collect and store information about the device’s performance and status.
  • Management Information Base (MIB): The MIB is a database that stores information about the managed devices. It defines the structure and content of the data that can be accessed using SNMP.
  • SNMP Protocol: SNMP uses a set of protocols to communicate between the SNMP manager and the managed devices. These protocols include SNMPv1, SNMPv2c, and SNMPv3.

SNMP Commands



The SNMP GET command is a fundamental operation used by SNMP managers to retrieve specific information from SNMP agents. When a manager sends a GET request to an agent, it specifies the OID of the data it wants to retrieve. The agent responds with the requested data, allowing the manager to monitor device parameters, such as CPU utilization or interface status.


The SNMP SET command enables SNMP managers to configure parameters on SNMP agents. Managers can modify settings, thresholds, or other configurations on managed devices using SET operations. This capability is vital for remote device management, as it allows administrators to make changes without physical access to the devices.



The SNMP GET-NEXT command is used to retrieve the next set of information in the MIB after a GET request. This command is especially useful when managers want to retrieve data sequentially from the MIB, ensuring that no information is missed.


GET-BULK requests are designed to efficiently retrieve large sets of data from the MIB. Instead of making multiple GET requests for individual data points, SNMP managers can use GET-BULK to gather extensive information in a single operation. This reduces network traffic and improves performance during data collection.


Syntax and Usage

Understanding SNMP Command Syntax

SNMP commands follow a specific syntax to communicate effectively between SNMP managers and agents. The syntax includes the command type (GET, SET, GET-NEXT, or GET-BULK) and the OID (Object Identifier) specifying the data to be retrieved or configured.


Real-World Application of SNMP Commands

In real-world scenarios, SNMP commands are used extensively for network management tasks:

  • A network administrator might use a GET command to retrieve the bandwidth utilization of a router’s interfaces.
  • A SET command could be employed to adjust the SNMP agent’s polling frequency to reduce network overhead during peak hours.
  • GET-NEXT commands are valuable for systematically exploring the MIB to discover available data points.
  • GET-BULK commands are beneficial when collecting a large volume of data, such as performance metrics from multiple switches in a data center.

SNMP Command Examples

Let’s explore some SNMP command examples to illustrate their usage:

  • GET Command Example: An SNMP manager sends a GET request with the OID “” to retrieve the ifOutOctets value for the second network interface of a device.
  • SET Command Example: An SNMP manager sends a SET request to change the SNMP agent’s community string from “public” to “private” for increased security.
  • GET-NEXT Command Example: An SNMP manager uses GET-NEXT to retrieve the next available OID in the MIB, allowing for systematic data exploration.
  • GET-BULK Command Example: When monitoring a large network with numerous devices, an SNMP manager employs GET-BULK to efficiently retrieve performance metrics from all devices in a single operation.

These examples demonstrate how SNMP commands are utilized to manage and monitor network devices effectively.


What is SNMP Port?

SNMP uses specific default port numbers for communication:

  • SNMPv1 and SNMPv2c Port Number (161): SNMPv1 and SNMPv2c use UDP port 161 for sending and receiving SNMP messages. This port is commonly associated with read-only community string-based communication.
  • SNMPv3 Port Number (162): SNMPv3 employs UDP port 162 for SNMP messages. It is often used for secure SNMP communication, as SNMPv3 offers advanced security features.

Network administrators can configure SNMP port numbers to suit their specific requirements. While the default port numbers are well-known, custom port configurations can add an extra layer of security by making it more challenging for unauthorized parties to access SNMP services.

SNMP Versions

  1. SNMPv1 (Simple Network Management Protocol version 1):
    • Introduced in 1988.
    • The first official version of SNMP.
    • Limited security features, as it uses community strings for authentication, which are sent in plaintext.
    • Basic functionality for collecting and managing information from network devices.
  2. SNMPv2 (Simple Network Management Protocol version 2):
    • Released in two iterations: SNMPv2c (SNMP version 2c) and SNMPv2u (SNMP version 2u).
    • Improved upon SNMPv1 by adding more features and better error handling.
    • Still uses community strings for authentication.
    • SNMPv2c is the most commonly used version of SNMPv2.
  3. SNMPv3 (Simple Network Management Protocol version 3):
    • Introduced in 1998.
    • Enhanced security with the introduction of authentication and encryption mechanisms.
    • Supports user-based security models (USM) for authentication and access control.
    • Provides message integrity and privacy through the use of cryptographic algorithms.
    • Offers finer-grained control over access to managed devices.

Each SNMP version has its own strengths and weaknesses, and the choice of which version to use depends on the specific security and functionality requirements of the network and the devices being managed. SNMPv3 is generally recommended for security-conscious environments due to its robust security features, while SNMPv2c is still used in less security-sensitive scenarios where simplicity is more important.


Popular SNMP Monitoring Tools

  • SolarWinds Network Performance Monitor: SolarWinds Network Performance Monitor (NPM) is a comprehensive network monitoring solution that leverages SNMP to provide real-time insights into network performance. NPM offers features such as automated discovery, customizable dashboards, and intelligent alerting.
  • PRTG Network Monitor: PRTG Network Monitor is a versatile SNMP-based monitoring tool that offers a wide range of sensors for collecting data from network devices. It provides detailed reports, mapping features, and customizable notifications.
  • Nagios Core: Nagios Core is an open-source network monitoring tool that supports SNMP integration. It allows users to monitor network devices, services, and hosts, making it suitable for both small and large-scale networks.
  • Zabbix: Zabbix is another open-source network monitoring solution that supports SNMP for data collection. It offers a user-friendly interface, automated discovery, and extensive reporting capabilities.
  • SNMP with Open-Source Tools: For organizations seeking cost-effective solutions, open-source SNMP monitoring tools are also available. These tools can be customized to meet specific monitoring requirements and integrate seamlessly with SNMP-enabled devices.

Advantages and Disadvantages of SNMP


Advantages of SNMP

  • Real-time monitoring
  • Centralized management
  • Scalability
  • Cross-vendor compatibility
  • Historical data analysis

Disadvantages of SNMP

  • Limited security in SNMPv1 and SNMPv2
  • Complex configuration in SNMPv3
  • Bandwidth consumption during polling

SNMP plays a pivotal role in network management, offering real-time monitoring, centralized control, and scalability. However, its security limitations must be addressed, especially in earlier versions. As networks continue to evolve, SNMP remains a fundamental tool for network administrators.

Leave a Reply

Your email address will not be published. Required fields are marked *