3 de agosto de 2007

Algo sobre NetFlow

En el ámbito de las redes de datos hay una herramienta de trabajo que ha tomado relevancia de modo creciente: NetFlow. Esta herramienta ha comenzado a crecer para, en algunos casos, convertirse en una especie de "estándar" para el análisis de tráfico de la red y del nivel de utilización de los dispositivos. ¿Qué es NetFlow?

Si lo que se requiere es recolectar información histórica referida al flujo de tráfico de la red, generar gráficos o tablas de información en función de tiempo, relevar nivel de utilización de enlaces en función de subredes o monitorear el nivel de utilización de un enlace, es conveniente familiarizarse con la tecnología NetFlow de Cisco. Es una herramienta adecuada para el desarrollo de tareas de "accounting" en nuestra red.

¿Qué es NetFlow?
Se trata de un protocolo propietario de Cisco soportado en la actualidad por todas las líneas de switches y routers Cisco. Este protocolo permite a los dispositivos colectar información referida a todo tráfico que atraviesa los enlaces y enviar la información referida a ese tráfico utilizando UDP a un dispositivo que recibe la denominación de NetFlow Collector.

La ventaja de NetFlow respecto de SNMP es que este protocolo brinda, fundamentalmente, información y funcionalidades de management, mientras que a esa información NetFlow le agrega la referida al tráfico que profoca el estado de utilización de cada dispositivo.

Entre las aplicaciones posibles de NetFlow se pueden contar el monitoreo de la red, el monitoreo de aplicaciones específicas, el monitoreo de usuarios, el planeamiento de actualizaciones o modificaciones de la red, el análisis de seguridad, la implementación de sistemas de accounting y facturación, data warehousing y minig del tráfico de red, etc.

¿Qué es exactamente un flujo (flow)?
Cisco define un flujo de datos como una secuencia unidireccional de paquetes que comparten 5 elementos en común:

  • Dirección IP de origen.
  • Dirección IP destino.
  • Número de puerto de origen.
  • Número de puerto de destino.
  • Protocolo.

Cisco llama a esta una "definición quíntuple de tráfico" en alusión a que se utilizan 5 elementos para la misma.

¿Qué es un NetFlow Collector?
Es de suponer que no sencillamente se desea coleccionar información, sino también (y por sobre todo) analizar los estadísticas y características de esta información de tráfico.

Para esto es que requerimos de un NetFlow Collector. Se trata de un dispositivo (PC o servidor) ubicado en la red para recoger toda la información de NetFlow que es enviada desde los dispositivos de infraestructura (routers y switches).

NetFlow es un protocolo que genera y recoge esta información, pero también se necesita software que permita realizar la clasificación, almacenamiento y análisis de toda esta información de tráfico. Para esto hay en el mercado una amplia diversidad (por prestaciones y precio) de aplicaciones en el mercado que permiten trabajar sobre la información de NetFlow:

¿Cómo sé si mis dispositivos soportan NetFlow?
NetFlow está incorporado en Cisco IOS, por lo que ante todo es preciso verificar si la versión de IOS que estamos utilizando incluye NetFlow. Para esto podemos utilizar una herramienta específica del sitio web de Cisco que es el Cisco Feature Navigator.

Un modo más sencillo y directo, puede ser ingresar a la línea de comando de nuestro dispositivo y aprovechar las facilidades que da el sistema de ayuda de Cisco IOS. Si obtenemos una respuesta como la que sigue, nuestra versión de IOS incluye las funcionalidades NetFlow:

Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#ip flow?
flow-aggregation flow-cache flow-export

Router(config)#ip flow

Atención: el comando debe ser ejecutado en modo configuración global.

Para mayor información:

¿Tenés alguna información u opinión para aportar en este tema....?
Perfecto!!!! agregá un comentario con el detalle.
Muchas gracias.
Oscar Gerometta