Resumen
La detección oportuna de fallas y el monitoreo de
los elementos que conforman una red de computadoras son
actividades de gran relevancia para brindar un buen servicio a
los usuarios. De esto se deriva la importancia de contar con un
esquema capaz de notificarnos las fallas en la red y de
mostrarnos su comportamiento mediante el análisis y
recolección de tráfico. En el presente trabajo se
aborda el monitoreo de redes, describiendo los diferentes
enfoques y técnicas que se deben tener en
consideración para implementar este servicio, los
elementos a tomar en cuenta en un esquema de monitoreo,
así como un resumen de algunas herramientas para su
implementación.
Introducción
La detección oportuna de fallas y el monitoreo de
los elementos que conforman una red de computadoras son
actividades de gran relevancia para brindar un buen servicio a
los usuarios. De esto se deriva la importancia de contar con un
esquema capaz de notificarnos las fallas en la red y de
mostrarnos su comportamiento mediante el análisis y
recolección de tráfico.
Hasta hace poco hablar de sistemas de monitoreo de
servicios de red en sistemas operativos de red o desktop
resultaba casi imposible, ya que no se contaba con las
herramientas necesarias para hacerlo. Bastaba con saber que el
servidor estaba operativo; y ¿cómo se
hacía?, solo con ejecutar el comando
ping[1]y la dirección
IP[2]del servidor.
Pero ¿cómo conocer que los servicios tales
como, proxy, correo, web y otras computadoras dentro de la
intranet están en operación o activos?
¿Cómo conocer que el usuario que usa un Sistema
Operativo Windows no está consumiendo un gran ancho de
banda?
Hoy día existen diversos mecanismos para poder
monitorear los diferentes servicios y servidores. Actualmente se
pueden monitorear mediante diferentes herramientas en una
página web, donde los elementos más usuales que se
monitorean son:
1. Apache
2. Squid
3. MySQL
4. Routers
5. Servidores / Estaciones de trabajo (CPU,
Espacio en disco, etc)6. Swicth (ancho de banda)
Desarrollo
A continuación se muestran los enfoques (activo y
pasivo) de monitoreo, sus técnicas, así cómo
la estrategia de monitoreo, incluyendo la definición de
métricas y la selección de las
herramientas.
MONITOREO ACTIVO:
Este tipo de monitoreo se realiza introduciendo paquetes
de pruebas en la red, o enviando paquetes a determinadas
aplicaciones y midiendo sus tiempos de respuesta. Este enfoque
tiene la característica de agregar tráfico en la
red y es empleado para medir el rendimiento de la
misma.
Técnicas de monitoreo activo:
Basado en ICMP[3]
1. Diagnosticar problemas en la red.
2. Detectar retardo, pérdida de
paquetes.3. RTT[4]
4. Disponibilidad de host y redes.
Basado en TCP[5]
1. Tasa de transferencia.
2. Diagnosticar problemas a nivel de
aplicación
Basado en UDP[6]
1. Pérdida de paquetes en un sentido
(one – way)2. RTT (tracerroute)
MONITOREO PASIVO:
Este enfoque se basa en la obtención de datos a
partir de recolectar y analizar el tráfico que circula por
la red. Se emplean diversos dispositivos como
sniffers[7]ruteadores, computadoras con
software de análisis de tráfico y en general
dispositivos con soporte para
SNMP[8]RMON[9]y
Netflow[10]Este enfoque no agrega tráfico a
la red como lo hace el activo y es utilizado para caracterizar el
tráfico en la red y para contabilizar su uso.
Técnicas de monitoreo pasivo:
1. Solicitudes remotas:
Mediante SNMP:
Esta técnica es utilizada para obtener
estadísticas sobre la utilización de ancho de banda
en los dispositivos de red, para ello se requiere tener acceso a
dichos dispositivos. Al mismo tiempo, este protocolo genera
paquetes llamados traps que indican que un evento
inusual se ha producido.
2. Otros métodos de
acceso:
Se pueden realizar scripts[11]que tengan
acceso a dispositivos remotos para obtener información
importante a monitorear.
Captura de tráfico:
Se puede llevar a cabo de dos formas:
1) Mediante la configuración de un
puerto espejo en un dispositivo de red, el cual hará
una copia del tráfico que se recibe en un puerto hacia
otro donde estará conectado el equipo que
realizará la captura.2) Mediante la instalación de un
dispositivo intermedio que capture el tráfico, el cual
puede ser una computadora con el software de captura o un
dispositivo extra. Esta técnica es utilizada para
contabilizar el tráfico que circula por la
red.
Análisis del tráfico:
Se utiliza para caracterizar el tráfico de red,
es decir, para identificar el tipo de aplicaciones que son
más utilizadas. Se puede implementar haciendo uso de
dispositivos probe que envíen información
mediante RMON o a través de un dispositivo intermedio con
una aplicación capaz de clasificar el tráfico por
aplicación, direcciones IP origen y destino, puertos
origen y destino, etc.
Flujos:
También utilizado para identificar el tipo de
tráfico utilizado en la red. Un flujo es un conjunto de
paquetes con:
La misma dirección
El mismo puerto TCP origen y destino
El mismo tipo de aplicación.
Los flujos pueden ser obtenidos de ruteadores o mediante
dispositivos que sean capaces de capturar tráfico y
transformarlo en flujos. También es usado para tareas de
facturación.
ESTRATEGIAS DE MONITOREO:
Antes de implementar un esquema de monitoreo se deben
tomar en cuenta los elementos que se van a monitorear, así
como las herramientas que se utilizarán para esta
tarea.
¿Qué monitorear?
Una consideración muy importante es delimitar el
espectro sobre el cual se va a trabajar. Existen muchos aspectos
que pueden ser monitoreados, los más comunes son los
siguientes:
1. Utilización de ancho de
banda2. Consumo de CPU.
3. Consumo de memoria.
4. Estado físico de las
conexiones.5. Tipo de tráfico.
6. Alarmas
7. Servicios (Web, correo, bases de datos,
proxy)
Es importante definir el alcance de los dispositivos que
van a ser monitoreados, el cual puede ser muy amplio y se puede
dividir de la siguiente forma:
MÉTRICAS:
Las alarmas son consideradas como eventos con
comportamiento inusual. Las alarmas más comunes son las
que reportan cuando el estado operacional de un dispositivo o
servicio cambia. Existen otros tipos de alarmas basado en
patrones previamente definidos en nuestras métricas, son
valores máximos conocidos como umbrales o
threshold. Cuando estos patrones son superados se
produce una alarma, ya que es considerado como un comportamiento
fuera del patrón. Algunos tipos de alarmas son:
1. Alarmas de procesamiento.
2. Alarmas de conectividad.
3. Alarmas ambientales.
4. Alarmas de utilización.
5. Alarmas de disponibilidad.
ELECCIÓN DE HERRAMIENTAS:
Existe un gran número de herramientas para
resolver el problema del monitoreo de una red. Las hay tanto
comerciales como basadas en software libre. La elección
depende de varios factores, tanto humanos, económicos,
como de infraestructura:
a) El perfil de los administradores, sus
conocimientos en determinados sistemas operativos.b) Los recursos económicos
disponibles.c) El equipo de cómputo
disponible.
En este trabajo se hará énfasis en dos
herramientas:
Cacti:
Es una completa solución para el monitoreo de
redes. Utiliza RRDTools para almacenar la información de
los dispositivos y aprovecha sus funcionalidades de
graficación. Proporciona un esquema rápido de
obtención de datos remotos, múltiples
métodos de obtención de datos (snmp, scripts), un
manejo avanzado de plantillas (templates) y
características de administración de usuarios.
Además ofrece un servicio de alarmas mediante el manejo de
umbrales. Todo ello en una sola consola de administración
de fácil manejo y configuración. Resulta
conveniente para instalaciones del tamaño de una
LAN[12]así como también para redes
complejas con cientos de dispositivos.
Net-SNMP:
Conjunto de aplicaciones para obtener información
vía SNMP de los equipos de interconexión. Soporta
la versión 3 del protocolo, la cual ofrece mecanismos de
seguridad tanto de confidencialidad como de autenticación.
Provee de manejo de traps para la notificación de
eventos.
Topología
del sistema de monitoreo
El sistema consiste en un servidor que hace las
solicitudes mediante el protocolo SNMP a los dispositivos de red,
el cual a través de un agente de SNMP envía la
información solicitada.
También puede ser que el dispositivo envíe
mensajes trap al servidor SNMP anunciando que un evento
inusual ha sucedido.
EJEMPLO DE MONITOREO BASADO EN EL PROTOCOLO SNMP CON
LA HERRAMIENTA CACTI.
Gráficos en modo árbol
(Router GW-UCPETP – RIMED)
Gráficos en modo preliminar
(Servidor DHCP)
Estado de los dispositivos
monitoreados
Conclusiones
La elección del enfoque de monitoreo a
emplear debe siempre partir del objetivo que se persigue con
el mismo (medir el rendimiento o caracterizar y/o
contabilizar el uso de la red), no olvidando que el enfoque
activo agrega tráfico a la red y en dependencia del
ancho de banda que se dispone, pudiera esto convertirse en
una desventaja.El monitoreo pasivo puede realizarse a través
de distintas técnicas, las cuales pueden
acompañarse de la definición de métricas
o alarmas garantizando así el buen funcionamiento de
los dispositivos de red.Es importante definir el alcance de los dispositivos
de monitoreo, así como el espectro a analizar en cada
uno de ellos logrando de esta forma una estrategia de
monitoreo eficiente.Es necesario una correcta selección de las
herramientas y dispositivos a emplear dentro de la red, en
función de optimizar los recursos y la propia
infraestructura.
Bibliografía
1.- Cacti – (Sept-2011) disponible en:
http://es.wikipedia.org/wiki/Cacti
2.- ________ disponible en:
http://www.cacti.net/
3.- Flow-tools – (Sept-2011) disponible en:
http://www.splintered.net/sw/flow-tools/
4.- Flowscan – (Sept-2011) disponible en:
http://www.caida.org/tools/utilities/flowscan/
5.- Net-SNMP – (02-Mar-2007) – disponible
en: http://net-snmp.sourceforge.net/
6.- RRDTool – (Oct-2011) disponible en:
http://oss.oetiker.ch/rrdtool/
7.- Simple Network Management Protocol –
(Oct-2011) disponible en:
http://es.wikipedia.org/wiki/Simple_Network_Management_Protocol
8.- SNMPv3 – (Oct-2011) disponible en:
http://www.ibr.cs.tu-bs.de/ietf/snmpv3/
9.- TMN – (Oct-2011) disponible en:
http://www.itu.int
Autor:
M.Sc. Gerardo Junco
Romero
Enviado por:
Gerardo Junco
[1] Comando para comprobar el estado de la
conexión por medio del envío de paquetes de
solicitud de eco y de respuesta de eco.
[2] Es un número que identifica de
manera lógica y jerárquica a una interfaz de un
dispositivo (habitualmente una computadora)
[3] Protocolo de Mensajes de Control de
Internet
[4] Round-Trip delay Time (o RTT). Se aplica
en el mundo de las telecomunicaciones y redes
informáticas al tiempo que tarda un paquete enviado
desde un emisor en volver a este mismo emisor habiendo pasado
por el receptor de destino.
[5] TCP (Transmission-Control-Protocol, en
español Protocolo de Control de Transmisión) es
uno de los protocolos fundamentales en Internet.
[6] Protocolo del nivel de transporte basado
en el intercambio de datagramas.
[7] Programa informático que registra
la información que envían los periféricos,
así como la actividad realizada en un determinado
ordenador.
[8] Protocolo de la capa de aplicación
que facilita el intercambio de información de
administración entre dispositivos de red. Es parte de la
familia de protocolos TCP/IP.
[9] Es un estándar que define objetos
actuales e históricos de control, permitiendo que usted
capture la información en tiempo real a través de
la red entera
[10] Herramienta de monitorización de
ancho de banda basado en tecnología web.
[11] En informática, un script es un
guión o conjunto de instrucciones que permiten la
automatización de tareas creando pequeñas
utilidades.
[12] Red de área local.