SNMP MIB: Objects, The 'Codebook', And Telemetry

An SNMP MIB is a Management Information Base, a key component of SNMP (Simple Network Management Protocol). More specifically, a MIB is a group of managed objects within a network. This local database at is compiled to the SNMP manager, and contains knowledge relevant to network management. Both the SNMP manager and agent utilize this database. The manager uses the MIB as a "reference" to know traps, or messages, sent from agents within the network.

The SNMP MIB Utilizes Object Identifiers (OIDs) to Communicate With Individual Objects.

A MIB is organized into a tree. Individual objects in the MIB have an OID, which the manager uses to determine the values from those single devices. These objects can be specific alarm points, with one representing an alarm, and another representing a clear.


Sample Of a DPS Telecom SNMP MIB.
SNMP messages utilize these variables to convey information such as point status or alarm descriptions. When the SNMP manager requests the value of any object, it assembles a message using the OID, which is sent to the MIB for decoding. The MIB assigns readable labels to each object identifier, as well as other parameters relevant to the individual object. This allows the MIB to interpret and assemble SNMP messages.

The SNMP MIB is the "Codebook" for SNMP Managers.
The MIB is essentially a codebook that translates these numerical strings into human-readable text. Elements defined in the SNMP MIB can be very broad like all objects created by private businesses, or very specific, like a particular trap message generated by a certain alarm point on an RTU.

While each OID is unique, the first several pieces of each OID are almost always the same. These upper location levels are defined by a series of standard reference within the MIB. These series are called RFCs, or Requests for Comments. The RFCs that define SNMP OIDs are part of a larger group of RFC documents that define the Internet as a whole. Individual vendors create their own MIBs that only include the OIDs associated specifically with their device. This structure is what makes an SNMP MIB object-oriented, a maximally efficient way of storing information.

If an object does not have an identifier within an SNMP MIB, it does not exist to your SNMP manager. For example, if an SNMP RTU has a built-in component to monitor temperature, but the temp sensor is not listed in the MIB file, the RTU will be unable to send and receive traps with temperature data.

Manager Agent MIB Diagram
The manager uses MIB files from each agent to decode the OIDs sent to it.

What Every Telemetry Manager Needs To Know About the SNMP MIB.
MIB files are composed of ASCII text, and thus can be viewed using any word processor or text editor. When reading the MIB, it is not needed to read every single line of text. However, it is important for every telemetry manager to know some of the concepts embedded in the MIB. This includes:

  • What characteristics of the device can be controlled remotely using the SNMP manager.
  • What event reports the device can send to the SNMP manager.
  • What information the SNMP manager can request from the device, and what other RFC MIBs you need to support a device.

RFC MIBs are open-source, and can be found and downloaded with a simple web search for "RFC MIBs".