4296

Get a Live Demo

You need to see DPS gear in action. Get a live demo with our engineers.

White Paper Series

Check out our White Paper Series!

A complete library of helpful advice and survival guides for every aspect of system monitoring and control.

DPS is here to help.

1-800-693-0351

Have a specific question? Ask our team of expert engineers and get a specific answer!

Learn the Easy Way

Sign up for the next DPS Factory Training!

DPS Factory Training

Whether you're new to our equipment or you've used it for years, DPS factory training is the best way to get more from your monitoring.

Reserve Your Seat Today

SNMP Technical Reference and History Information

By Andrew Erickson

June 24, 2023

Share: 

Simple Network Management Protocol, or SNMP, is a widely adopted protocol for managing and monitoring network devices like routers, switches, servers, printers, and more. It provides a convenient way for network administrators to:

  • Manage network performance
  • Find and solve network issues
  • Plan for network growth

SNMP's primary purpose is to provide network administrators with a tool for managing, monitoring, and controlling various pieces of equipment on their networks. It does this by providing the means to configure settings, poll performance data from managed devices, and receive alerts (traps) from those devices when certain conditions are met.

Technical Details of SNMP

TCP vs. UDP

SNMP primarily uses the User Datagram Protocol (UDP) as its transport protocol. Unlike Transmission Control Protocol (TCP), UDP is connectionless. That means that UDP doesn't need to establish a connection with the receiver before transmitting data like TCP does.

That makes UDP faster and more efficient for network management purposes. Although this isn't an absolute rule, speed and simplicity are often more important than 100.0000% reliability.

Do remember that SNMP can also operate over TCP. This is mostly true in network environments where UDP is not reliable or permitted.

In the limited cases where it is used for SNMP, TCP provides a connection-oriented service. It ensures data delivery via acknowledgments and retransmissions if packets are lost.

Port Numbers Used For SNMP

By default, SNMP uses UDP ports 161 and 162, as follows:

  • SNMP agents listen on UDP port 161 for SNMP requests sent by managers.
  • SNMP managers to listen for SNMP trap/inform messages from agents on UDP port 162.

For example, a NetGuardian RTU (an SNMP agent), might send a trap message to an SNMP manager on port 161. Later, the SNMP manager might send a SET command to toggle one of the NetGuardian's 8 control relay outputs

SNMP Message Types

SNMP defines several types of protocol operations, including:

  • Trap: An asynchronous notification from agent to manager. Trap messages are the lifeblood of a typical SNMP implementation.
  • InformRequest: Similar to Trap, but expects a confirmation response from the manager. This message type was added in SNMPv2.
  • GetRequest: Retrieves the value of one or more OIDs of an SNMP device. Your SNMP manager might ask to get the reading from a temperature sensor, for example.
  • GetNextRequest: Used in iterative queries to retrieve the next object in the Management Information Base (MIB). When "walking" through all of a device's monitored values (alarm inputs, sensor readings, etc.), this message allows easy "give me the next one, give me the next one..." walking.
  • GetBulkRequest: Allows multiple iterative queries to be sent in a single request. Instead of walking multiple GetNextRequests, this message format instead requests a single message response containing many pieces of information in one bundle.
  • SetRequest: Changes the value of one or more instances of a managed object.
  • Response: This is sent in reply to a Get/Set to provide delivery confirmation (and a payload message in the case of a Get) to the manager.

SNMPv3 Compared with Earlier Versions

SNMP has gone through several iterations over multiple decades. Each version added new features and capabilities.

SNMPv1, the first version, introduced basic network-management capabilities but had significant security deficiencies like sending data, including community strings, in plaintext.

SNMPv2 improved performance and management capabilities and introduced the InformRequest but had complicated security models that were difficult to implement.

SNMPv3, the current version, enhances SNMP by adding cryptographic security in terms of authentication and privacy (encryption). It has a user-based security model (USM) for message integrity and privacy, and a view-based access control model (VACM) for restricting access to MIB objects.

The History of SNMP

SNMP was introduced in 1988 to meet the growing need for a standard for managing Internet Protocol (IP) networks. SNMPv1 was quickly adopted due to its simplicity, but it soon became evident that it lacked sufficient security measures.

In response, SNMPv2 was developed in the mid-90s, providing enhancements in operational efficiency and security. However, its adoption was slowed by the complexity of its new party-based security model.

SNMPv3, standardized in 1998, addressed the deficiencies of its predecessors by introducing a user-based security model and has become the de facto standard for network management.

SNMP Usage Today

As of my knowledge cut-off in September 2021, specific data regarding the exact number of devices worldwide using SNMP is not available. However, considering SNMP's ubiquity in network management, it's safe to say that millions, if not billions, of devices globally use SNMP.

This includes an array of devices from enterprise-level network equipment like routers and switches, to consumer devices such as home routers and internet-connected appliances. Its use is expected to continue growing with the expansion of the Internet of Things (IoT).

The Role of SNMP in IoT

The Internet of Things (IoT) represents the next frontier of SNMP's applicability. With the number of IoT devices projected to reach tens of billions in the next few years, SNMP will play an integral role in managing these devices.

SNMP is crucial in the IoT landscape for two main reasons. First, it helps maintain an efficient and reliable network infrastructure, allowing a holistic view of all devices connected to the network. Secondly, it can help reduce downtime and save money by quickly detecting potential problems with devices before they result in outages.

As IoT devices are typically networked, SNMP presents a scalable and effective solution for managing and monitoring these devices' performance and reliability. Its simplicity, open standard status, and wide adoption make it a viable choice for device management in the vast landscape of IoT.

Call DPS to Discuss SNMP

We can help you with any SNMP-related question, whether you're dealing with dedicated remote monitoring hardware or simply gear that uses it.

Speak with an engineer today about your project. Just tell us what you're trying to accomplish.

Call 1-800-693-0351 or email sales@dpstele.com

Share: 
Andrew Erickson

Andrew Erickson

Andrew Erickson is an Application Engineer at DPS Telecom, a manufacturer of semi-custom remote alarm monitoring systems based in Fresno, California. Andrew brings more than 17 years of experience building site monitoring solutions, developing intuitive user interfaces and documentation, and opt...