SNMP, CMIS/CMIP, RMON Licencia SNMP - oposcaib

Transcripción

SNMP, CMIS/CMIP, RMON Licencia SNMP - oposcaib
SNMP, CMIS/CMIP, RMON
SNMP, CMIS/CMIP, RMON
Índice de contenido
SNMP, CMIS/CMIP, RMON........................................................................................................................1
Licencia......................................................................................................................................................1
SNMP.........................................................................................................................................................1
Introducción y evolución histórica.........................................................................................................1
Arquitectura SNMP................................................................................................................................2
MIB........................................................................................................................................................2
ASN.1.....................................................................................................................................................4
Funcionamiento y comandos..................................................................................................................4
Autenticación y privacidad.....................................................................................................................5
CMIS/CMIP...............................................................................................................................................5
Introducción...........................................................................................................................................5
Funcionamiento y diferencias respecto a SNMP....................................................................................5
RMON........................................................................................................................................................6
Introducción y evolución histórica.........................................................................................................6
Funcionamiento......................................................................................................................................7
Licencia
Este obra de Jesús Jiménez Herranz está bajo una licencia Creative Commons AtribuciónLicenciarIgual 3.0 España.
Basada en una obra en oposcaib.wikispaces.com.
SNMP
Introducción y evolución histórica
SNMP es un protocolo de gestión de red, que permite administrar los diferentes elementos
conectados a una red. Es uno de los protocolos de la pila TCP/IP, y uno de los protocolos incluidos
entre los estándares de Internet.
SNMP permite a los administradores de la red consultar la información de administración de
cada nodo. Esta información la almacena cada nodo en forma de variables, de forma que la única
tarea del nodo es responder a consultas de una variable por parte de un administradodr (Get) o, en
ocasiones, actuar frente a una indicación de cambio de valor de una variable (Set).
Esta simplicidad en cuanto a las operaciones a realizar tiene que ver con uno de los objetivos
principales de SNMP, que es minimizar la complejidad de las tareas de administración en cada
dispositivo. Esto tiene diferentes ventajas:
● Bajo coste de implementación en los dispositivos
● Hace más sencilla y flexible la administración remota
El protocolo SNMP ha pasado históricamente por diferentes versiones:
● SNMPv1: Versión original.
● SNMPv2: Añade mejoras en cuanto a rendimiento y seguridad, así como un nuevo comando
GETBULK para transferencias masivas de datos.
● SNMPv2c: Como SNMPv2, pero sin el módulo de seguridad, que nunca fue aceptado por la
industria. Aunque nunca ha sido estandarizada, la v2c es la versión v2 estándar de facto.
● SNMPv3: Añade autenticación, privacidad en las comunicaciones y control de accesos.
Jesús Jiménez Herranz, http://oposcaib.wikispaces.com
1
SNMP, CMIS/CMIP, RMON
SNMP, al realizar conexiones breves y de poca información, funciona generalmente sobre UDP,
en los puertos 161 (peticiones) y 162 (recepción de traps). También puede utilizarse sobre TCP,
pero no suele ser recomendable para evitar utilizar la red en exceso.
Arquitectura SNMP
SNMP divide los elementos de la red en dos tipos: administradores y administrados. En cada uno
de los elementos administrados se encuentra un componente software, llamado agente, encargado de
ofrecer una serie de información administrativa a través de un interfaz estándar. Esta información se
presenta en forma de variables, que representan diferentes parámetros de funcionamiento del
dispositivo y de la red (p. ej. “memoria libre” o “nombre de máquina”). Estas variables están
estructuradas según una jerarquía fija llamada MIB (Management Information Base), y son
consultadas o modificadas mediante diferentes comandos.
En concreto, el modelo de gestión de red definido en SNMP reconoce los siguientes elementos:
● Elementos de red: Llamados también dispositivos gestionados, son los dispositivos
hardware conectados a la red, como por ejemplo routers, máquinas, etc.
● Agentes: Son los módulos software que residen en cada uno de los elementos de red, y que
mantienen la información de cada elemento, así como permiten su acceso.
● Objeto gestionado: Es cada elemento de información de un nodo la red, y se refiere a algún
parámetro de funcionamiento.
● MIB: Management Information Base, son un conjunto de objetos gestionados representados
como una jerarquía.
MIB
El conjunto de objetos gestionados por un elemento de red se conoce como MIB (Management
Information Base), que es una base de datos jerárquica en la que los objetos se almacenan en forma
de árbol.
Cada objeto del MIB se define mediante cuatro elementos:
● Nombre y ubicación en el árbol
● Formato
● Regla de codificación
● Permisos de acceso al objeto (lectura, escritura).
El formato de cada objeto de un MIB está especificado mediante un subconjunto de la notación
ASN.1 (Abstract Syntax Notation 1), que es una notación estándar ISO que permite describir de
forma flexible diferentes estructuras de datos de forma independiente de la plataforma. El
subconjunto de ASN.1 utilizado en SNMP se conoce como SMI (Structure of Management
Information), e incluye los siguientes elementos:
● Tipos básicos de ASN.1: INTEGER, OCTET STRING, OBJECT IDENTIFIER y NULL
● Tipos estructurados: SEQUENCE
● Tipos personalizados predefinidos: Algunos conceptos comunes que ya se encuentran
predefinidos en la especificación. Se permiten, entre otros:
○ NetworkAddress, IpAddress
○ Counter: Contador entero incremental (p. ej. número de conexiones)
○ Gauge: Medida entera que fluctúa entre 0 y un valor máximo (p. ej. utilización de CPU)
Jesús Jiménez Herranz, http://oposcaib.wikispaces.com
2
SNMP, CMIS/CMIP, RMON
○
○
TimeTicks: Contador positivo de centésimas de segundo desde un tiempo de referencia
(epoch)
Opaque: Contenedor para un tipo ASN.1 no incluido en el estándar SMI
Además de su formato, cada objeto del MIB tendrá asociada una regla de codificación, que
especifica cómo transformar el tipo abstracto a flujo de bits para su transmisión por la red, de forma
que todos los elementos de la red codifiquen igual los diferentes objetos y no haya problemas en la
comunicación.
Un ejemplo de definición de un objeto mediante SMI sería el siguiente:
NumConexiones OBJECT-TYPE
SYNTAX
Counter
MAX-ACCESS read-only
STATUS
mandatory
DESCRIPTION
"Número de conexiones activas"
::= { network 18 }
En este caso se define el parámetro NumConexiones como un contador de sólo lectura,
obligatorio, con el identificador 18 y que cuelga del árbol network.
Un elemento de red puede implementar más de un MIB diferente con diferentes informaciones, y
de hecho algunos MIBs concretos son de implementación obligatoria según las especificaciones de
SNMP. Es el caso del MIB llamado MIB-II que incluye información genérica sobre un nodo SNMP
y contiene, entre otros, los siguientes subárboles de información:
● System: Información genérica del nodo (nombre de máquina, ubicación física, etc.)
● Interfaces: Número de interfaces de red en el nodo, y parámetros de cada una.
● TCP/IP: Parámetros de funcionamiento de los protocolos de la pila TCP/IP (TCP, UDP, IP,
ICMP, etc.)
● SNMP: Parámetros e información de estado del propio protocolo SNMP
● Transmission: Información sobre el medio físico de transmisión asociado a cada interfaz
Si bien MIB-II es el único MIB obligatorio en cualquier dispositivo SNMP, existen conjuntos
estándar adicionales para otras tecnologías. Algunos de los más utlizados son:
● MIB-ATM
● MIB-Frame Relay
● MIB-DNS
● Host Resources MIB: En el caso de que el elemento de red sea un PC, permite monitorizar
aspectos locales de la máquina (uso de CPU, espacio libre en disco, número de usuarios,
etc.).
● RMON: Conjunto de estadísticas que se van generando con el tráfico de paquetes, y que
permiten hacer un estudio global de la red.
Además de los MIBs estándar, es posible definir objetos adicionales, referentes a características
concretas de cada dispositivo.
Jesús Jiménez Herranz, http://oposcaib.wikispaces.com
3
SNMP, CMIS/CMIP, RMON
ASN.1
Abstract Syntax Notation 1 es un estándar ISO que permite describir estructuras de datos de
forma abstracta e independiente de la plataforma. ASN.1 es un estándar conjunto de la ISO y la
ITU-T.
Si bien el objetivo de ASN.1 es especificar estructuras de datos de forma abstracta, también
ofrece diferentes algoritmos para traducir la representación abstracta a una representación en forma
de bits. Concretamente, ASN.1 ofrece, entre otros, los siguientes algoritmos:
● Basic Encoding Rules (BER): Transformación a stream de bytes
● Packet Encoding Rules (PER): Transformación a un flujo de bits no necesariamente
alineado a bytes. Permite compactar al máximo la información.
● XML Encoding Rules (XER): Transforma la notación ASN.1 a una notación XML
ASN.1 se usa de forma extensiva en protocolos como SNMP, mientras que otros protocolos
como HTTP utilizan la notación ABNF (Augmented Backus-Naur form), que es completamente
textual y que, aunque es menos compacta que ASN.1, es más legible y fácil de implementar.
Funcionamiento y comandos
Resumiendo los apartados anteriores, SNMP plantea la red como un conjunto de elementos de
red que exponen una serie de informaciones en forma estructurada, de manera que los
administradores puedan recuperarla y modificarla. Así, en SNMP sólo hay tres tipos de
interacciones con los elementos de red:
● Leer una variable
● Alterar una variable: Para modificar algún parámetro de funcionamiento
● Gestión de traps: Un elemento de red notifica a un administrador ante un determinado
evento. Es el único tipo de interacción que no se inicia por parte del administrador, si bien
requiere una programación previa.
Los comandos SNMP son:
● GetRequest: Solicita el valor de una variable
● GetResponse: En un agente, devuelve el valor solicitado por una petición GetRequest
previa.
● GetNextRequest: Para aquellas variables grandes o compuestas que no se puedan transmitir
mediante un único comando GetRequest (p. ej. una tabla de enrutado), permite recuperar el
siguiente fragmento.
● GetBulk: Nuevo en SNMPv2, es como GetRequest pero permite recuperar datos grandes en
un solo comando, sin recurrir a GetNextRequest.
● SetRequest: Establece el valor de una variable
La gestión de traps no utiliza ningún comando, salvo Gets y Sets convencionales sobre objetos
de configuración para programar qué tipo de traps deben generarse, en qué condiciones, y a quién
deben enviarse.
Cada mensaje de trap es un conjunto de datos con un formato definido en el MIB
correspondiente que se esté usando. Estos datos incluyen:
● Tipo de trap: Puede ser personalizado, pero hay algunos tipos predefinidos:
○ Notificaciones de sistema: coldStart, warmStart
Jesús Jiménez Herranz, http://oposcaib.wikispaces.com
4
SNMP, CMIS/CMIP, RMON
Cambios en los interfaces: linkDown, linkUp
○ Intentos de conexión fallidos: authenticationFailure
○ Perdida conexión con un equipo adyacente: neighborLoss
Datos asociados
○
●
Autenticación y privacidad
Los mecanismos de autenticación en SNMPv1 y v2 son considerablemente simples. Así, se
clasifican los accesos en categorías llamadas communities, donde cada community tiene un nombre
y una contraseña (community string) asociada. Cuando se envía un comando SNMP a un
dispositivo, es necesario especificar la community a la que se quiere acceder y su respectiva
contraseña.
Por defecto, SNMP establece tres communities:
● Read-only: Permite leer objetos
● Read-write: Permite también escribir
● Traps: Permite recibir notificaciones
Las contraseñas se envían en texto plano, por lo que es posible averiguarlas simplemente
monitorizando el tráfico en la red, y hacen que el esquema de communities sea poco seguro.
En SNMPv3 se añaden mecanismos adicionales de autenticación que permiten realizar el proceso
de forma segura. Así, las contaseñas se codifican mediante hashes MD5/SHA, y la comunicación
puede hacerse, de ser necesario, de forma cifrada mediante el algoritmo de cifrado DES. El
protocolo está diseñado de forma que sea extensible y puedan añadirse nuevas formas de
autenticación/cifrado en el futuro.
CMIS/CMIP
Más info: Black, Uyless (1995). Aaron Bittner. ed. Network Management Standards: SNMP,
CMIP, TMN, MIBs, and Object Libraries. New York: McGraw-Hill, Inc.. ISBN 007005570X.
Introducción
CMIP es el protocolo de gestión de red correspondiente al modelo ISO/OSI. Se encarga de
implementar los servicios definidos por CMIS (Common Management Information Services).
Dada la poca implementación del modelo OSI, se ha intentado adaptar el protocolo CMIP para
su uso en redes TCP/IP, en lo que se conoce como CMOT (CMIP Over TCP/IP).
CMIP se planteó como un competidor de SNMP, y de hecho tiene muchas más funcionalidades.
De todas formas, precisamente su complejidad y el consumo de recursos que conlleva es lo que han
hecho que su uso se encuentre bastante limitado, mientras que SNMP se implementa de forma
masiva.
Funcionamiento y diferencias respecto a SNMP
La arquitectura de CMIS/CMIP es similar a la de SNMP, en el sentido de que cada nodo
almacena una base de datos jerárquica de variables que dan información sobre su funcionamiento.
Al igual que SNMP, CMIP también utiliza un subconjunto de ASN.1 para especificar las
informaciones que almacenan los nodos de la red, si bien el formato resultante es diferente del
usado en SNMP (SMI). En CMIS/CMIP, el formato para modelar objetos de información se
denomina GDMO (Guidelines for the Definition of Managed Objects).
Algunas características en las que CMIP se diferencia de SNMP son:
Jesús Jiménez Herranz, http://oposcaib.wikispaces.com
5
SNMP, CMIS/CMIP, RMON
●
●
●
●
Las variables en CMIP no sólo contienen información, sino que pueden utilizarse para
realizar tareas.
Operaciones más complejas: Permite operaciones avanzadas más allá de los Get y Set de
SNMP
Orientado a conexión (SNMP funciona sobre UDP)
Autenticación, cifrado y registros de seguridad.
CMIP funciona sobre ROSE, el protocolo OSI encargado del intercambio de comandos entre dos
extremos. Para el establecimiento de conexiones, utiliza el protocolo ACSE, el protocolo OSI
encargado del establecimiento de enlaces.
Algunos de los comandos definidos en CMIS son:
● M-GET, M-SET: Equivalentes a los Get y Set de SNMP, permiten recuperar información de
un nodo.
● M-ACTION: Indican a un nodo que debe realizar una acción.
● M-EVENT-REPORT: Notificaciones asíncronas de los nodos, similar al sistema de traps de
SNMP.
RMON
Introducción y evolución histórica
Si SNMP permite monitorizar parámetros completos de los elementos de una red, RMON es un
estándar pensado para monitorizar la red en su conjunto. Para ello establece una serie de sondas en
la red, combinando la información de todas ellas para analizar la red de forma global.
Objetivos de RMON:
● Operación off-line: El uso de sondas independientes permite seguir monitorizando la red
incluso cuando el administrador se encuentra desconectado.
● Monitorización proactiva: Las sondas funcionan continuamente, lo que hace posible vigilar
la red avanzándose a potenciales situaciones de fallo.
● Detección, análisis y diagnóstico de problemas: En caso de fallo, las sondas almacenan un
registro exacto del tráfico y los eventos en la red, lo que puede ser útil para diagnosticar el
problema y prevenirlo en el futuro.
● Valor añadido en la recolección de datos: Las sondas, al estar en contacto directo con la red,
pueden preprocesar la información recolectada haciéndola más fácil de interpretar.
Versiones:
● RMONv1: Estadísticas a nivel de paquete para una LAN/WAN
● RMONv2: Estadísticas a nivel de red y de aplicación.
● SMON: Versión de RMON para el análisis de redes conmutadas
Jesús Jiménez Herranz, http://oposcaib.wikispaces.com
6
SNMP, CMIS/CMIP, RMON
Funcionamiento
RMON es en realidad una extensión a SNMP, en el sentido de que únicamente define nuevos
grupos de información a los ya existentes en el MIB de SNMP. La consulta de las diferentes sondas
se hace utilizando mensajes SNMP, si bien el funcionamiento se diferencia de un sistema SNMP
convencional en diferentes aspectos:
● Las sondas almacenan volúmenes considerables de información, y realizan procesamientos
más complejos que los de un agente SNMP típico.
● No existe un polling continuo por parte del administrador, sino que la información se envía
bajo demanda
En resumen, RMON hace un análisis orientado al flujo de los datos, mientras que SNMP lo
orienta a los dispositivos puntuales. Por tanto, RMON permite analizar aspectos relacionados con
los patrones del tráfico de datos, mientras que SNMP se centra en el estado de cada dispositivo.
RMON se define como un MIB SNMP. Los grupos que contiene el MIB RMON son:
● Statistics: Estadísticas de la LAN Ethernet (utilización, colisiones, errores).
● History: Histórico de algunas estadísticas seleccionadas
● Alarm: Aquí se definen umbrales para las estadísticas, de manera que si se supera un umbral
se envíe un trap SNMP. Está asociado al grupo Event.
● Hosts: Estadísticas de tráfico (bytes recibidos, velocidad, etc.) a nivel de máquinas
individuales. También se guarda la lista de máquinas más activas en un intervalo de tiempo
dado.
● Matrix: Tabla matricial de tráfico enviado-recibido entre las diferentes máquinas de la red.
● Filter: Permite establecer filtros para determinar qué paquetes se analizarán, o capturar
determinados paquetes para su posterior análisis.
● Capture: Contiene los paquetes capturados mediante los filtros del grupo anterior.
● Event: Guarda un registro de las alarmas generadas.
● Token Ring: Datos de monitorización específicos de redes Token Ring.
RMONv2, además de añadir nuevas características, permite monitorizar no sólo a nivel de
enlace, sino también a niveles superiores de la pila OSI. Para ello, añade grupos adicionales, entre
otros:
● Estadísticas a nivel de red y a nivel de aplicación.
● Estadísticas agrupadas por protocolo.
● Mecanismos para la configuración remota de las sondas
SMON es una extensión de RMON para permitir el análisis de redes conmutadas. Una red
conmutada presenta una serie de diferencias respecto a una Ethernet convencional, que hacen difícil
la monitorización tal y como la plantea RMON. Entre otras:
● Los datos no se envían al medio en forma de broadcast, sino que se envían directamente
entre emisor y receptor. Esto hace más difícil la monitorización.
● Determinadas redes conmutadas funcionan a nivel de celda (p. ej. ATM), mientras que
RMON trabaja únicamente a nivel de paquetes.
● El enrutado en una red conmutada no es trivial, y debe tenerse en cuenta a la hora de
monitorizar.
● Las redes conmutadas generalmente se segmentan en LANs virtuales (VLANs).
Jesús Jiménez Herranz, http://oposcaib.wikispaces.com
7
SNMP, CMIS/CMIP, RMON
Para resolver estas dificultades, SMON soporta las siguientes características:
● Replicación de puertos: Determinados dispositivos permiten replicar un puerto, duplicando
su tráfico y utilizando el duplicado para la monitorización.
● SMON soporta utilizar una VLAN como entrada de datos, lo que le permite monitorizar el
tráfico de un sub-segmento de red.
Jesús Jiménez Herranz, http://oposcaib.wikispaces.com
8

Documentos relacionados