Site icon Eogogics

Tutorial: Simple Network Management Protocol (SNMP)

Tutorial

What is SNMP?

Simple Network Management Protocol (SNMP) is a widely used protocol designed to facilitate the management of networked devices from a central location.  Designed originally for the management of devices such as routers and switches, its usage has grown rapidly to encompass the monitoring of nearly any electronic device one can think of.  SNMP is now  used to monitor and manage television broadcast studios, automated fare collection systems, airborne military platforms, energy distribution systems, emergency radio networks, and much more.

SNMP Architecture

The SNMP architecture is composed of three major elements:

Before we go any further, we need to introduce the concept of Object Identifiers or OID’s. Each MIB object definition has a unique OID, which is a dotted listed of integers. For example, within the Host Resource MIB, the OID for data object “hrDiskStorageCapacity” is “.1.3.6.1.2.1.25.3.6.1.4”.

When Managers and Agents communicate, they refer to MIB data objects using OID’s.

An OID sent with a corresponding value {OID,Value} is referred to as “binding”.

Managers can be viewed as Clients; and Agents, as Servers. The operations between Managers and Agents are quite simple:

The basic operations of SNMP are quite “simple”, but the totality of SNMP is far from that.  The typical ramp-up time for an individual learning to use SNMP effectively on his or her own can easily stretch to six months or longer.

SNMP Standards and Versions

SNMP Standards are described in Request for Comments (RFC) documents published by the Internet Engineering Task Force (IETF).  Standards Topics can generally be categorized into:

Messaging Protocols

Three messaging protocols exist:

MIB Syntax Standards  

MIBs are written in either of the following two syntax standards:

SMIv1 is the earliest version and was introduced along with SNMPv1. SMIv1 MIBs are very functional and very common.

Data defined by SMIv1 MIB Objects can be transmitted between Managers and Agents by any of the three messaging protocols, viz., SNMPv1, SNMPv2c, or SNMPv3.

SMIv2 was introduced along with SNMPv2c.  Major enhancements include:

Introduction of new data base types, including the “Counter64” data type.

Although derived data types could be defined in SMIv1, SMIv2 formalizes this syntax and also defines some “Standard Textual Conventions” such as “Display String”.

Improvements that enhance the documentation of MIB files and objects, such as:

An SMIv2 MIB can usually be translated into an SMIv1 MIB.  The primary exceptions are: a) A Counter64 type object cannot be translated. b) An improperly coded NOTIFICATION-TYPE cannot be translated to an SMIv1 TRAP-TYPE with the same OID.

Data defined by SMIv2 MIB Objects can be transmitted between Managers and Agents by any of the three messaging protocols, viz., SNMPv1, SNMPv2c, or SNMPv3.  The only exception to this is that Counter64 Object data cannot be transported by SNMPv1 messages.

“Standard MIB” Definitions

Depending on the origin (author) of a MIB, we can categorize MIBs into either:

Enterprise MIBs are authored by non-standards-committee organizations, e.g., Cisco or HP. All such organizations must apply for a unique “Enterprise ID” issued by the Internet Assigned Number Authority (IANA).  Enterprise MIBs are then organized under these unique ID’s.

Standard MIBs are authored by persons associated with the IETF.  For example, a standard Printer MIB exists, and printer manufacturers commonly implement an Agent to support this MIB in addition to their own Enterprise MIBs.

Other Standard MIB examples include:

Strengths and Weaknesses

Strengths

Weaknesses

Applications

Here are some typical uses of SNMP:

How to Learn More

Courses

Books

Web Sites

Exit mobile version