Software de Gestión de Redes
Protocolo SNMP
El Protocolo simple de administración de red o SNMP (del inglés Simple Network Management
Protocol) es un protocolo de la capa de aplicación que facilita el intercambio de información de
administración entre dispositivos de red. Los dispositivos que normalmente soportan SNMP
incluyen routers, switches, servidores, estaciones de trabajo, impresoras, bastidores de
módem y muchos más. Permite a los administradores supervisar el funcionamiento de la red,
buscar y resolver sus problemas, y planear su crecimiento.
SNMP es un componente de la suite de protocolo de Internet como se define por el IETF. Se
compone de un conjunto de normas para la gestión de la red, incluyendo una capa de
aplicación del protocolo, una base de datos de esquema, y un conjunto de objetos de datos.
Las versiones de SNMP más utilizadas son SNMP versión 1 (SNMPv1) y SNMP versión 2
(SNMPv2).
SNMP en su última versión (SNMPv3) posee cambios significativos con relación a sus
predecesores, sobre todo en aspectos de seguridad. sin embargo no ha sido mayoritariamente
aceptado en la industria.
Componentes básicos
Una red administrada a través de SNMP consta de tres componentes clave:
Sistemas administradores de red (Network Management Systems, NMS);
Dispositivos administrados;
Agentes.
Estos componentes tienen las siguientes funciones:
Un sistema administrador de red (NMS) ejecuta aplicaciones que supervisan y controlan a los
dispositivos administrados. Los NMS’s proporcionan el volumen de recursos de procesamiento
y memoria requeridos para la administración de la red. Uno o más NMS’s deben existir en
cualquier red administrada.
Un dispositivo administrado es un dispositivo que contiene un agente SNMP y reside en una
red administrada. Estos recogen y almacenan información de administración, la cual es puesta
a disposición de los NMS’s usando SNMP. Los dispositivos administrados, a veces llamados
elementos de red, pueden ser routers, servidores de acceso, switches, bridges, hubs,
computadores o impresoras.
Un agente es un módulo de software de administración de red que reside en un dispositivo
administrado. Un agente posee un conocimiento local de información de administración
(memoria libre, número de paquetes IP recibidos, rutas, etcétera), la cual es traducida a un
formato compatible con SNMP y organizada en jerarquías.
Comandos básicos
Los dispositivos administrados son supervisados y controlados usando cuatro comandos SNMP
básicos: lectura, escritura, notificación y operaciones transversales.[cita requerida]
El comando de lectura es usado por un NMS para supervisar elementos de red. El NMS
examina diferentes variables que son mantenidas por los dispositivos administrados.
El comando de escritura es usado por un NMS para controlar elementos de red. El NMS cambia
los valores de las variables almacenadas dentro de los dispositivos administrados.
El comando de notificación es usado por los dispositivos administrados para reportar eventos
en forma asíncrona a un NMS. Cuando cierto tipo de evento ocurre, un dispositivo
administrado envía una notificación al NMS.
Las operaciones transversales son usadas por el NMS para determinar qué variables soporta
un dispositivo administrado y para recoger secuencialmente información en tablas de
variables, como por ejemplo, una tabla de rutas.
Detalles del Protocolo
SNMP opera en la capa de aplicación del conjunto de protocolos de Internet (capa 7
del modelo OSI). El agente SNMP recibe solicitudes en el puerto UDP 161. El administrador
puede enviar solicitudes de cualquier puerto de origen disponible para el puerto 161 en el
agente. La respuesta del agente será enviado de vuelta al puerto de origen en el gestor. El
administrador recibe notificaciones (Trampas e InformRequests) en el puerto 162. El agente
puede generar notificaciones desde cualquier puerto disponible. Cuando se utiliza
con Transport Layer Security las solicitudes se reciben en el puerto 10161 y trampas se envían
al puerto 10162. SNMPv1 especifica cinco unidades de datos de protocolo (PDU) centrales.
Otros dos PDU, GetBulkRequest e InformRequest se añadieron en SNMPv2 y prorrogados a
SNMPv3.[cita requerida]
Todas las PDU SNMP se construyen de la siguiente manera:
Cabecera IP
Encabezado UDP versión comunidad
Tipo de PDU
Petición-ID
Error de estado
Índice de errores
Enlaces de variables
Mensajes SNMP
Para realizar las operaciones básicas de administración anteriormente nombradas, el protocolo
SNMP utiliza un servicio no orientado a la conexión (UDP) para enviar un pequeño grupo de
mensajes (PDUs) entre los administradores y agentes. La utilización de un mecanismo de este
tipo asegura que las tareas de administración de red no afectarán al rendimiento global de la
misma, ya que se evita la utilización de mecanismos de control y recuperación como los de un
servicio orientado a la conexión, por ejemplo TCP.
Los puertos comúnmente utilizados para SNMP son los siguientes:
Número Descripción
161 SNMP
162 SNMP-trap
Los paquetes utilizados para enviar consultas y respuestas SNMP poseen el siguiente formato:
Versió
Comunidad SNMP PDU
n
Versión: Número de versión de protocolo que se está utilizando (por ejemplo 0 para
SNMPv1, 1 para SNMPv2c, 2 para SNMPv2p y SNMPv2u, 3 para SNMPv3, ...);
Comunidad: Nombre o palabra clave que se usa para la autenticación. Generalmente
existe una comunidad de lectura llamada "public" y una comunidad de escritura llamada
"private";
SNMP PDU: Contenido de la Unidad de Datos de Protocolo, el que depende de la
operación que se ejecute.
Los mensajes GetRequest, GetNextRequest, SetRequest y GetResponse utilizan la siguiente
estructura en el campo SNMP PDU:
Tip
Identificador Estado de error Índice de error Enlazado de variables
o
Identificador: Es un número utilizado por el NMS y el agente para enviar solicitudes y
respuesta diferentes en forma simultánea;
Estado e índice de error: Sólo se usan en los mensajes GetResponse´(en las consultas
siempre se utiliza cero). El campo "índice de error" sólo se usa cuando "estado de error" es
distinto de 0 y posee el objetivo de proporcionar información adicional sobre la causa del
problema. El campo "estado de error" puede tener los siguientes valores:
o 0: No hay error;
o 1: Demasiado grande;
o 2: No existe esa variable;
o 3: Valor incorrecto;
o 4: El valor es de solo lectura;
o 5: Error genérico.
Enlazado de variables: Es una serie de nombres de variables con sus valores
correspondientes (codificados en ASN.1).
ELEMENTOS DE SNMP (SIMPLE NETWORK MANAGEMENT PROTOCOL)
Para que el software que se encarga de la gestión de la red en las estaciones de gestión pueda
obtener información de los elementos de la red, es necesario que dichos elementos cuenten
con un software que permita su comunicación con la estación de gestión. Este software se
denomina agente [2]. Por último hay otra pieza importante en este entorno, y es la base de
datos donde se encuentra toda la información que se gestiona. Esta base de datos se
denomina MIB (Management Information Base). Por lo tanto, se pueden distinguir los
siguientes elementos [2]:
Agente de gestión.
Gestor
Objeto gestionado
Protocolo de gestión.
El agente de gestión, se encarga de supervisar un elemento de la red. Se comunica con el
gestor para atender sus peticiones y para informarle de eventos acaecidos en el objeto
gestionado. El agente de gestión suele residir físicamente en el elemento gestionado.
El gestor, es un software residente en una estación de gestión que se comunica con los agentes
y que ofrece al usuario una interfaz a través de la cual comunicarse con los agentes de gestión
para obtener información de los recursos gestionados. Además recibirá las notificaciones
enviadas por los agentes.
Los objetos gestionados, son las abstracciones de los elementos físicos de la red que se
gestionan (tarjeta de red, concentrador, módem, router, etc.). Se pueden manejar los atributos
y las operaciones que se pueden realizar sobre el objeto. De la misma forma, las notificaciones
que dicho objeto puede generar así como las relaciones con otros objetos también son
susceptibles de ser controladas. La base de datos de gestión (MIB) previamente mencionada
está formada por todos los objetos gestionados.
Protocolo de gestión, es el protocolo que especifica cómo se realizará la comunicación entre
los agentes de gestión y el gestor. En nuestro caso este protocolo es el SNMP. La comunicación
se realiza en base a requerimientos, respuestas y notificaciones:
Cómo Usar SNMP Para Monitorear Dispositivos De Red
El Protocolo simple de administración de red (SNMP) es un conjunto estándar de reglas de
comunicación, es decir, un protocolo. Este protocolo gobierna la forma principal de consultar y
monitorear el hardware y el software en una red de computadoras.
No importa si el hardware es de Juniper o Cisco, o si el software es UNIX o Windows, SNMP
utiliza un método estandarizado para consultar información y encontrar rutas a la información
necesaria. Sin la supervisión de SNMP, no habría manera de ver qué había en una red, saber
cómo se desempeñaban los dispositivos y detectar problemas.
SNMP ha existido desde 1989 en varias formas, y si bien han surgido alternativas, aún se
encuentra entre las soluciones más utilizadas para monitorear y administrar dispositivos
conectados a la red. Es una de las herramientas clave de monitoreo que le permite a un
administrador de red o administrador de red entender el estado de la infraestructura de red.
Los Fundamentos del Monitoreo de SNMP
En concepto, SNMP es bastante simple. Cada dispositivo en una red tiene un programa
llamado agente SNMP, que recopila información sobre un dispositivo, lo organiza en entradas
en un formato coherente y puede responder a las consultas de SNMP. Estos dispositivos
pueden incluir teléfonos, impresoras, conmutadores y otro hardware, además de servidores y
estaciones de trabajo. Estas consultas SNMP provendrán del administrador SNMP, que sondea,
recopila y procesa información sobre todos los dispositivos habilitados para SNMP en la red.
Esto es realmente todo lo que se necesita para el monitoreo de la red.
El Agente de SNMP
El agente es en realidad donde ocurre la mayor parte del trabajo. Su trabajo consiste en
recopilar información sobre su dispositivo, organizar esa información y responder a las
consultas del administrador con la información adecuada. También configura qué
administradores pueden tener acceso a su información y pueden convertirse en intermediarios
para informar sobre los dispositivos a los que pueden conectarse, pero que no están
configurados para el tráfico SNMP.
El hardware y el software de la red generalmente tienen el agente ya incorporado. Solo
necesita habilitarse y configurarse.
El Administrador de SNMP
Una estación de administración SNMP puede variar de simple a compleja. Por lo general,
supervisa la actividad de SNMP, mantiene un registro de todos los datos del dispositivo y tiene
la capacidad de crear informes útiles.
Estructura de Mensajes SNMP
Si bien esta arquitectura de administrador / agente es simple y directa, la jerarquía de datos de
SNMP es algo menos. Como puede esperarse de un protocolo que ha sobrevivido desde 1989 y
todavía se usa ampliamente, SNMP fue diseñado para ser flexible y extensible. Por eso no
tiene un formato fijo. En su lugar, utiliza una estructura de árbol jerárquica denominada Base
de información de administración (MIB). Esto es más complejo en terminología que en
concepto.
Cada rama está etiquetada con un número de identificación y con una cadena de texto. Estos
se pueden usar indistintamente, de la misma manera que las direcciones IP son números y los
nombres de host son cadenas, pero se pueden usar para referirse al mismo dispositivo. Para
referirse a un nodo específico, debe trazar la ruta desde la raíz hasta él, agregando cada rama
a medida que avanza. Cada unión está representada por un punto. La dirección completa con
todas las sucursales se denomina identificador de objeto (OID). El objeto que se identifica es
un hecho identificable sobre un dispositivo de red, como la utilización de la CPU o el estado de
la interfaz. La mayoría de estos objetos son estándar, pero los fabricantes con requisitos
especiales también tienen su propio diseño.
Es un poco como si en lugar de usar una dirección numérica y luego buscar la ubicación en un
mapa, encontraras una casa por una lista de los giros que tomas para llegar allí, con un punto
por cada intersección. Al usar los archivos MIB, la mayoría del software de administración de
red puede mostrar un árbol OID, a menudo en una lista de carpetas como un sistema de
archivos en una computadora. Este método tiene varias ventajas, a pesar de la dificultad para
describirlo. Los agentes se configuran con todos los OID, es decir, todos los estados de todos
los elementos relevantes de su dispositivo, por lo que se pueden proporcionar al
administrador en respuesta a una simple solicitud.
También hace que la organización de dispositivos a través de una red sea simple y flexible.
Tipos de mensajes SNMP
El gran uso de SNMP, y su popularidad a largo plazo se derivan del hecho de que sus mensajes
son simples. Existen siete tipos de datos. Como gerente puede hacer:
Solicitar a un agente que proporcione el valor actual de un OID (Obtener)
Solicitar el siguiente objeto en la MIB. Esto significa que puede atravesar un árbol sin
necesidad de especificar OID. (GetNext)
Hacer múltiples solicitudes GetNext (GetBulk).
Dígale a un agente que cambie un valor en un host remoto, la única operación de
escritura en todo el protocolo SNMP (conjunto)
Un agente puede devolver:
Una respuesta, con la información solicitada (Respuesta).
Un mensaje de "trampa", no solicitado por el administrador, que proporciona
información sobre los eventos del dispositivo. Las capturas SNMP fueron renombradas
como "notificaciones" en versiones SNMP posteriores (Trap)
Finalmente, el administrador puede confirmar la recepción de un mensaje de captura
(Informar). Este pequeño conjunto de mensajes le permite obtener información sobre su red,
que incluye:
Uso de Ancho de Banda
Uso del disco
CPU y uso de memoria
Fallas de dispositivos
Con implementaciones más complejas, puede generar informes, enviar alertas por SMS o
mensajes de texto y mantener el inventario.