Una base de información de gestión ( MIB ) es una base de datos utilizada para gestionar las entidades de una red de comunicaciones . Generalmente asociada con el Protocolo simple de administración de redes (SNMP), el término también se utiliza de forma más genérica en contextos como el modelo de gestión de redes OSI / ISO . Aunque se pretende hacer referencia a la recopilación completa de información de gestión disponible sobre una entidad, a menudo se utiliza para referirse a un subconjunto particular, más correctamente denominado módulo MIB.
Los objetos en la MIB se definen utilizando un subconjunto de la Notación de Sintaxis Abstracta Uno ( ASN.1 ) llamado "Estructura de Información de Gestión Versión 2 (SMIv2)" RFC 2578. El software que realiza el análisis es un compilador MIB.
La base de datos es jerárquica (estructurada en árbol) y cada entrada se direcciona a través de un identificador de objeto (OID). Los RFC de la documentación de Internet tratan sobre las MIB, en particular el RFC 1155, "Estructura e identificación de la información de gestión para las redes basadas en TCP/IP ", y sus dos compañeros, el RFC 1213, "Base de información de gestión para la gestión de redes de redes basadas en TCP/IP", y el RFC 1157, "Un protocolo simple de gestión de redes".
La notación de sintaxis abstracta uno (ASN.1) es una notación estándar y flexible que describe las estructuras de datos para representar, codificar, transmitir y decodificar datos. Proporciona un conjunto de reglas formales para describir la estructura de objetos que son independientes de las técnicas de codificación específicas de la máquina y es una notación precisa y formal que elimina las ambigüedades.
ASN.1 es una norma conjunta de la ISO y la UIT-T , definida originalmente en 1984 como parte de CCITT X.409:1984. ASN.1 pasó a tener su propia norma, X.208, en 1988 debido a su aplicabilidad más amplia. La versión de 1995, sustancialmente revisada, está cubierta por la serie de normas X.680. [1]
Se especifica un subconjunto adaptado de ASN.1, Estructura de información de administración (SMI), para su uso en SNMP para definir conjuntos de objetos MIB relacionados; estos conjuntos se denominan módulos MIB.
La jerarquía de MIB se puede representar como un árbol con una raíz sin nombre, cuyos niveles son asignados por diferentes organizaciones. Los OID de MIB de nivel superior pertenecen a diferentes organizaciones de normalización, mientras que los identificadores de objeto de nivel inferior son asignados por organizaciones asociadas. Este modelo permite la gestión en todas las capas del modelo de referencia OSI , extendiéndose a aplicaciones como bases de datos , correo electrónico y el modelo de referencia Java, ya que las MIB se pueden definir para toda esa información y operaciones específicas del área.
Un objeto administrado (a veces llamado objeto MIB u objeto) es una de las características específicas de un dispositivo administrado. Los objetos administrados están compuestos por una o más instancias de objeto, que son esencialmente variables. Un OID identifica de forma única un objeto administrado en la jerarquía MIB.
Existen dos tipos de objetos gestionados:
Un ejemplo de un objeto administrado es atInput
, que es un objeto escalar que contiene una única instancia de objeto, el valor entero que indica la cantidad total de paquetes AppleTalk de entrada en una interfaz de enrutador .
La primera versión de la Estructura de Información de Gestión (SMIv1) especifica el uso de varios tipos de datos específicos de SMI, que se dividen en dos categorías: tipos de datos simples y tipos de datos de toda la aplicación.
En el SMI SNMPv1 se definen tres tipos de datos simples:
Los siguientes tipos de datos de toda la aplicación existen en el SMI SNMPv1:
La SMI SNMPv1 define tablas altamente estructuradas que se utilizan para agrupar las instancias de un objeto tabular (es decir, un objeto que contiene múltiples variables). Las tablas se componen de cero o más filas, que se indexan de una manera que permite que un administrador de SNMP recupere o altere una fila completa con un solo comando Get
, GetNext
o .Set
La segunda versión de SMI (SMIv2) se describe en RFC 2578 y RFC 2579. Mejora y amplía los tipos de datos específicos de SMIv1, como cadenas de bits, direcciones de red y contadores. Las cadenas de bits se definen solo en SMIv2 y comprenden cero o más bits con nombre que especifican un valor. Las direcciones de red representan una dirección de una familia de protocolos en particular. Los contadores son números enteros no negativos que aumentan hasta alcanzar un valor máximo y luego vuelven a cero. En SMIv1, se especifica un tamaño de contador de 32 bits. En SMIv2, se definen contadores de 32 y 64 bits.
SMIv2 también especifica módulos de información, que especifican un grupo de definiciones relacionadas. Existen tres tipos de módulos de información SMI: módulos MIB, declaraciones de cumplimiento y declaraciones de capacidad.
Los módulos MIB se actualizan ocasionalmente para agregar nuevas funciones, eliminar ambigüedades y corregir defectos. Estos cambios se realizan de conformidad con la sección 10 de RFC 2578 y la sección 5 de RFC 2579. Un ejemplo de un módulo MIB que se ha actualizado muchas veces es el importante conjunto de objetos que se definió originalmente en RFC 1213, también conocido como "MIB-II". Este módulo MIB se ha dividido desde entonces y se puede encontrar en módulos MIB como RFC 4293 "Management Information Base for the Internet Protocol (IP)", RFC 4022 "Management Information Base for the Transmission Control Protocol (TCP)", RFC 4113 "Management Information Base for the User Datagram Protocol (UDP)", RFC 2863 "The Interfaces Group MIB" y RFC 3418 "Management Information Base (MIB) for the Simple Network Management Protocol (SNMP)".
Ejemplo de MIB para SNMP RFC 3418
└── SNMPv2-MIB(.1.3.6.1.2.1) └── sistema(.1) ├── descripción del sistema (.1) ├── ID de objeto del sistema (.2) ├── tiempo de actividad del sistema (.3) ├── nombre_sistema (.5) ├── sysContacto (.4) ├── ubicación del sistema (.6) ├── servicios del sistema (.7) ├── sysORÚltimoCambio (.8) └── tabla sysOR (.9) └── entrada del sistema (.1) ├── índice sysOR (.1) ├── sysORID (.2) ├── sysORDescr (.3) └── tiempo de actividad del sistema (.4)
Para llamar al valor de sysName se utilizaría:
# snmpwalk 10 .32.13.36 -v2c -c public sysName SNMPv2-MIB::sysName.0 = CADENA: ALGÚN_NOMBRE_DE_HOST
# snmpwalk 10 .32.13.36 -v2c -c public .1.3.6.1.2.1.1.5 SNMPv2-MIB::sysName.0 = CADENA: ALGÚN_NOMBRE_DE_HOST
# snmpwalk 10 .32.13.36 -v2c -c public .1.3.6.1.2.1.1.5.0 SNMPv2-MIB::sysName.0 = CADENA: ALGÚN_NOMBRE_DE_HOST
Hay una gran cantidad de MIB definidos por organizaciones de normalización como la IETF , empresas privadas y otras entidades.
Hay 318 RFC en las primeras 5000 RFC del IETF que contienen MIB. Esta lista es apenas una fracción de las MIB que se han escrito:
La IETF y el IEEE han acordado trasladar las MIB relacionadas con el trabajo del IEEE (por ejemplo, Ethernet y puentes) a sus respectivos grupos de trabajo del IEEE. Esto está en proceso y algunos elementos ya están completos.