Management information base
A management information base is a database used for managing the entities in a communication network. Most often associated with the Simple Network Management Protocol, the term is also used more generically in contexts such as in OSI/ISO Network management model. While intended to refer to the complete collection of management information available on an entity, it is often used to refer to a particular subset, more correctly referred to as MIB-module.
Objects in the MIB are defined using a subset of Abstract Syntax Notation One called "Structure of Management Information Version 2 ". The software that performs the parsing is a MIB compiler.
The database is hierarchical and each entry is addressed through an object identifier. Internet documentation RFCs discuss MIBs, notably, "Structure and Identification of Management Information for TCP/IP based internets", and its two companions,, "Management Information Base for Network Management of TCP/IP-based internets", and, "A Simple Network Management Protocol".
Abstract Syntax Notation One (ASN.1)
is a standard and flexible notation that describes data structures for representing, encoding, transmitting, and decoding data. It provides a set of formal rules for describing the structure of objects that are independent of machine-specific encoding techniques and is a precise, formal notation that removes ambiguities.ASN.1 is a joint ISO and ITU-T standard, originally defined in 1984 as part of CCITT X.409:1984. ASN.1 moved to its own standard, X.208, in 1988 due to its broader applicability. The substantially revised 1995 version is covered by the X.680 standards series.
An adapted subset of ASN.1, Structure of Management Information, is specified for use in SNMP to define sets of related MIB objects; these sets are termed MIB modules.
MIB hierarchy
The MIB hierarchy can be depicted as a tree with a nameless root, the levels of which are assigned by different organizations. The top-level MIB OIDs belong to different standards organizations, while lower-level object IDs are allocated by associated organizations. This model permits management across all layers of the OSI reference model, extending into applications such as databases, email, and the Java reference model, as MIBs can be defined for all such area-specific information and operations.A managed object is one of any number of specific characteristics of a managed device. Managed objects are made up of one or more object instances, which are essentially variables. An OID uniquely identifies a managed object in the MIB hierarchy.
Two types of managed objects exist:
- Scalar objects define a single object instance.
- Tabular objects define multiple related object instances that are grouped in MIB tables.
atInput
, which is a scalar object that contains a single object instance, the integer value that indicates the total number of input AppleTalk packets on a router interface.SNMPv1 and SMI-specific data types
The first version of the Structure of Management Information specifies the use of a number of SMI-specific data types, which are divided into two categories: simple data types and application-wide data types.Simple data types
Three simple data types are defined in the SNMPv1 SMI:- The integer data type is a signed integer in the range of −231 to 231−1.
- Octet strings are ordered sequences of 0 to 65,535 octets.
- Object IDs representation of object identifiers allocated according to the rules specified in ASN.1.
Application-wide data types
- Network addresses represent addresses from a particular protocol family. SMIv1 supports only 32-bit addresses
- Counters are non-negative integers that increase until they reach a maximum value and then roll over to zero. SNMPv1 specifies a counter size of 32 bits.
- Gauges are non-negative integers that can increase or decrease between specified minimum and maximum values. Whenever the system property represented by the gauge is outside of that range, the value of the gauge itself will vary no further than the respective maximum or minimum, as specified in.
- Time ticks represent time since some event, measured in hundredths of a second.
- Opaques represent an arbitrary encoding that is used to pass arbitrary information strings that do not conform to the strict data typing used by the SMI.
- Integers represent signed integer-valued information. This data type redefines the integer data type, which has arbitrary precision in ASN.1 but bounded precision in the SMI.
- Unsigned integers represent unsigned integer-valued information, which is useful when values are always non-negative. This data type redefines the integer data type, which has arbitrary precision in ASN.1 but bounded precision in the SMI.
SNMPv1 MIB tables
Get
, GetNext
, or Set
command.SMIv2 and structure of management information
The second version of the SMI is described in and. It enhances and adds to the SMIv1-specific data types, such as including bit strings, network addresses, and counters. Bit strings are defined only in SMIv2 and comprise zero or more named bits that specify a value. Network addresses represent an address from a particular protocol family. Counters are non-negative integers that increase until they reach a maximum value and then return to zero. In SMIv1, a 32-bit counter size is specified. In SMIv2, 32-bit and 64-bit counters are defined.SMIv2 also specifies information modules, which specify a group of related definitions. Three types of SMI information modules exist: MIB modules, compliance statements, and capability statements.
- MIB modules contain definitions of interrelated managed objects.
- Compliance statements provide a systematic way to describe a group of managed objects that must be implemented for conformance to a standard.
- Capability statements are used to indicate the precise level of support that an agent claims with respect to a MIB group. An NMS can adjust its behavior toward agents according to the capabilities statements associated with each agent.
Updating MIB modules
MIBs index
There are a large number of MIBs defined by standards organizations like the IETF, private enterprises and other entities.IETF maintained
There are 318 RFCs in the first 5000 RFCs from the IETF that contain MIBs. This list is a mere fraction of the MIBs that have been written:- SNMP - SMI: — Defines the Structure of Management Information
- MIB-I: — Historically used with CMOT, not to be used with SNMP
- SNMPv2-SMI: — Structure of Management Information Version 2
- MIB-II: — Management Information Base for Network Management of TCP/IP-based internets
- SNMPv2-MIB: — Management Information Base for the Simple Network Management Protocol
- TCP-MIB: — Management Information Base for the Transmission Control Protocol
- UDP-MIB: — Management Information Base for the User Datagram Protocol
- IP-MIB: — Management Information Base for the Internet Protocol
- IF-MIB: — The Interfaces Group MIB
- ENTITY-MIB: — Entity MIB
- ENTITY-STATE-MIB: — Entity State MIB
- ALARM-MIB: — Alarm Management Information Base
- Fibre Channel
- *FC-MGMT-MIB: Fibre Channel Management MIB
- *FIBRE-CHANNEL-FE-MIB: Definitions of Managed Objects for the Fabric Element in Fibre Channel Standard
- HPR-IP-MIB: — Definitions of Managed Objects for APPN/HPR in IP Networks
IEEE maintained
- Network bridge
- * IEEE 802.1ap-2008 consolidated the IEEE and IETF RFCs related to bridging networks into eight related MIBs.
MIB browsers
- for Windows, OSX and Linux.
- , based upon GTK+ and Net-SNMP.
- which can extract MIBs from RFCs and display graphs.
- .
- . It can send SNMP requests and dynamically load MIB data.
- . Capable of importing MIBs, support for IPv6.
- written in C++. It is built as a front-end for Net-SNMP.
- . It can send SNMP requests and dynamically load MIB files.
- . Load MIB files and issue SNMP requests, available on Windows, OS X and Linux.
- . Include MIB Browser, MIB Compiler, Mib Tree, MIB walk, MIB GET and SET requester