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

34 comentarios:

  1. Hola, hace un tiempo vengo leyendo este blog, lo encuentro muy interesante para quienes trabajamos con equipamiento cisco, desde aqui he aprendido algunas cosillas que no conocia, como es el caso de Netflow.

    Pero tengo una pregunta al respecoto, he corrido el comando para verificar si el IOS de mi Switch soporta Netflow pero al parecer no, y quisiera saber si puedo actualizar la version del IOS para que lo soporte ya que me interesa tener en la red un Netflow Collector.

    Espero que se haya entendido mi pregunta y tenga una respuesta positiva.

    Sin mas que decir, solo volver a agradecer al creador de este espacio.

    Cristian P.

    ResponderBorrar
  2. Cristian
    Si, podés actualizar el IOS de tu switch.
    En primer lugar, verificá cuanta memoria flash y RAM tiene tu switch. Luego utilizá el Cisco Feature Navigator y fijate de buscar una imagen de IOS cuyos requerimientos sean cubiertos por tu disponibilidad actual de memoria.
    Saludos.

    ResponderBorrar
  3. Saludos, estoy investigando sobre la utilización del protocolo netflow y la implementación de una arquitectura en una red, he leido la información de este blog y creo que como algo general esta muy bién , pero la verdad me gustaría ahondar más en el tema, me gustaría saber si tienen algun libro en español o un sitio web en español a demás de este para conocer más y así seguir con mi trabajo.

    Si tienes alguna información al respecto, comuniquense porfavor al e-mail: ejluzonguaman@hotmail.com

    espero alguién me ayude, de antemano les ofresco mis más sinceros agradecimientos
    Edison L.

    ResponderBorrar
  4. Edison
    No conozco bibliografía en castellano sobre NetFlow.
    Sugiero que revises los enlaces en el sitio de Cisco, en los que hay abundante información sobre el tema.
    Saludos.

    ResponderBorrar
  5. Hola!! Me gusta tu blog, es muy informativo y contiene algunos tips... queria saber sobre algunos tips de cisco ios en la CLI, la otra vez vi un comando que ayudaban a visualizar mejor los mensajes que salia cuando escribias "DEBUG".

    en si el comando no me acuerdo, pero lo que hacia era, que cuando salga un mensaje de DEBUG salia en orden, no salia todo junto, sino salia en lina ordenada, asi uno lo veia mejro.

    tipo asi:
    Se recibio de la ip 192.16.1.1
    Se envio a la ip 192.16.1.1

    pero cuando escribes DEBUG, sale asi:
    Se recibio e la ip 192.16.1.1 Se envio a la ip 192.16.1.1

    no se si sabrias este comando para que salga ordenado??

    ResponderBorrar
  6. Marko
    De suyo el comando debug publica en la consola los mensajes de modo ordenado, secuencialmente de acuerdo al suceso.
    No debiera "mezclar" los mensajes.
    Quizás debieras revisar la configuración de tu programa de emulación de terminal (¿Hyperterminal quizás?) para asegurarte de que reciba adecuadametne los códigos de cambio de línea.

    ResponderBorrar
  7. Edison, yo use un tiempo Netflow, y me ayudado mucho, a tal punto de identificar cuando un usuario intentaba pasarse musica o fotos copiando en un file server a traves de un enlace lento, porque con un software que te arma graficamente de que host a host estan pasando los paquetes y que cantidad de trafico paso, es muy facil poder identificar que genera los excesos de trafico, o tambien que protocolos.
    Te comento que sinceramente no hace falta un manual para comenzar a usaro, porque solo hace falta dos pasos, instalar un programa en una PC obviamente con ip fija, el cual yo recomiendo el netflow analyzer: http://manageengine.adventnet.com/products/netflow/index.html
    y luego configurar esto en el router:
    Modo configuracion global:
    - ip flow-cache timeout active 1
    - ip flow-export source FastEthernet0/1.13
    EL origen desde donde va a generar el trafico, se recomiendo una interface de lookup
    ip flow-export version 9
    (la version soportada segun el soft o el router las comunes son 5, 7 y 9, vas probando hasta que veas que el soft grafique algo)
    - ip flow-export destination 192.168.100.117 9996
    (la ip de la pc que tiene instalado el soft)
    Con esto el programa automaticamente te va a graficar todo lo que el router envíe.
    Cabe aclarar que esto funciona en los routers, en switch L3 como un 3550 te lo deja configurar pero no exporta correctamente y cisco aclara que no lo soporta.
    Espero q les sirvan mis datos,
    saludos,

    Andrés

    ResponderBorrar
  8. Buenas Tardes

    Yo tengo una pregunta respecto al netflow, que tantos recursos consume, ya sea anco de banda memoria o cpu ?

    Te agradezco de antemano ya que es algo que me estan preguntando, esto para ver si lo implementamos en toda la red ( 250 sitios remotos ) y ver que no nos vaya a afectar mucho en cuanto a los recursos

    Saludos
    Gonzalo

    ResponderBorrar
  9. bueno tengo un vacio mas o menos grande acerca de todo esto... soy alumno en practica y ayer me entere de Cisco Mars pero aka lo toman como un software
    por lo q ya habia investigado Cisco Mars es un conjunto de dispositivos q se dividen en local y global
    kisiera saber la diferencia q existe (si es q existe)

    porq por lo q lei para tener una herramenta de monitoreo de red y seguridad solo es necesario tener el protocolo Netflow y un servidor con el software

    y no todas las maquinas q ofrece cisco

    porfavor corrijanme si estoy mal porq estoy aprendiendo y toda la informacion q me entreguen me sera de mucha utilidad

    gracias de antemano

    adios

    ResponderBorrar
  10. Bueno quisiera agregar una consulta mas a mi post anterior
    Mi duda es que maquina de la gamma
    de Cisco Mars es la mas apropiada para un ancho de banda de alrededor de 10megas por segundo
    con la relacion de netflow por segundo a los q trabajan las maquinas las cuales tienen un rango bastante amplio como de 1.500
    a unos 300.000

    bueno esa es mi pregunta espero que alguien me pueda explicar y decir cual es la cantidad de netflows por segundo mas conveniente para el ancho de banda de la oficina.

    muchas gracias espero su respuesta.

    ResponderBorrar
  11. hola denuevo
    al resolver mi anterior duda me surgio otra al encontrar un programa q aparentemente realiza las mismas funciones que cisco mars. este programa se llama Nimbus
    al cual no he podido encontrarle la diferencia con el mars pero estoy seguro de que debe haber mas de alguna espero que alguien me pueda ayudar con mi duda de antemano gracias

    adios

    ResponderBorrar
  12. Hola, que tal, estoy tratanto de agregar un appliance(Expand Accelerator 4930) que soporta netflow. Lo agregue a netflow analyzer 7 , pero al agregarlo, el netflow me registra muy poco trafico, A que crees que se deba esto.Otra cosa el proveedor del appliance me comento que ellos ya han hecho este tipo de configuraciones y si les esta registrando bien los datos.

    ResponderBorrar
  13. Buenas tardes, yo tengo un problema al configurar la interfaz, no me deja ingresar el parametro ip flow ingress, me podrian decir a que se debe?

    ResponderBorrar
  14. Pues, lo que habría que revisar en primer lugar es si está soportado en tu imagen de IOS. Revisa la siguiente guía de referencia: http://www.cisco.com/en/US/docs/ios/12_3t/12_3t11/feature/guide/nflowegr.html

    ResponderBorrar
  15. tengo una duda, cual es la diferencia entre netflow analizer y el protocolo que configuras en el router?...

    ResponderBorrar
  16. Netflow es un feature de Cisco IOS, que puede monitorearse (si así se desea) desde la misma CLI de IOS o utilizando interfaces gráficas como CCP.
    Netflow analizer es una consola (un Netflow collector) que permite almacenar, graficar y analizar los resultados obtenidos por Netflow en el dispositivo.

    ResponderBorrar
  17. Dices que es un protocolo propietario de Cisco ¿sigue siendo así? Según parece hay otros fabricantes que lo están implementando. ¿Puede ser que ya sea un estandar? Gracias

    ResponderBorrar
  18. Efectivamente, es un protocolo desarrollado por Cisco, no es un estándar o un desarrollo abierto de la IETF vía RFC (como algunos protocolos de ruteo).
    Sin embargo, esto no es obstáculo para que otros fabricantes lo apliquen e incluso haya muchas empresas de desarrollo de software que han elaborado su propia consola para administración y monitoreo.

    ResponderBorrar
  19. Oscar, buen dia. Una consulta. Por u lado necesitaba saber si NetFlow es soportado por la l÷inea Small Business y por otro si es cierto que el producto paso a llamarse Flow Monitor.

    Muchas Gracias!

    ResponderBorrar
    Respuestas
    1. Hasta donde conozco, la línea Small Business no incluye entre sus prestaciones NetFlow.
      Por otra parte, NetFlow no es un producto en sí mismo, sino un feature de IOS. Flow Monitor en cambio, es una consola para monitoreo de NetFlow.

      Borrar
  20. Hola, Me gusta mucho su blog procuro leerlo lo más seguido que puedo. Tengo una duda con respecto a este articulo ya que ademas se me ha presentado una complicacion en el uso del netflow collector en la que me gustaría me apoyara.

    Resulta que cada vez que intento generar algun reporte en Netflow Collector siempre me aparece un mensaje donde se pone "Queued 3 de 3" y no comienza a crear mi reporte. Ya he intentado deteniendo el collector, reiniciando incluso el servidor de Netflow y el problema persiste.

    Alguna sugerencia de como pueda solucionar este inconveniente?

    De antemano muchas gracias y no solo por leer mi comentario sino tambien por la publicacion de estos contenidos.

    Saludos
    Emmanuel

    ResponderBorrar
    Respuestas
    1. Emmanuel.
      Por lo que entiendo estás teniendo problemas con el collector que estás utilizando, algún problema con la consola.
      Esto habría que revisarlo con la documentación de la aplicación o su soporte, pero en principio da la impresión (por el mensaje que recibes) que está incluyendo tu solicitud en una cola de memoria.
      Posiblemente tienes algún parámetro mal configurado. Revisá la documentación y en base a eso verificá tu documentación.

      Borrar
  21. Oscar buenos dias un gusto saludarte, referente al tema del NETFLOW tu sabes como activar el netflow en sobre una vlan para un core 4510r + E , y la otra pregunta suponiendo que la vlan que tiene un direccionamiento como tal por ejemplo: vlan 10 - ip address 172.16.0.1 255.255.0.0 , se puede activar el netflow directamente sobre la vlan y si esta asociado a un puerto fisico de red, el puerto como debe estar confgurado como un switch o que se comporte como capa 3 ?

    ResponderBorrar
    Respuestas
    1. Andrés.
      En el siguiente enlace tienes la guía de configuración de NetFlow para Cat 4500, creo que despeja los interrogantes que tienes.
      http://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst4500/12-2/25ew/configuration/guide/conf/nfswitch.html

      Borrar
  22. Oscar buenos dias, tengo tiempo siguiendo tu blog y grupos en facebook y me parecen de lo mas interesantes. En esta ocasion aprovechaba en activar el netflow en 2 equipos ASA 5520 el cual logre hacerlo por asdm sin problemas pero el inconveniente que tengo es encontrar una aplicacion free confiable que me permita la captura y manejo de la informacion.

    Te envio el log de los contadores de paquetes flow

    FWSCCP01/contexto2# sh flow-export counters

    destination: inside SCCPLOGG02 2055
    Statistics:
    packets sent 22579
    Errors:
    block allocation failure 0
    invalid interface 0
    template send failure 0
    no route to collector 0

    FWSCCP01/contexto2#

    Gracias y espero tus comentarios.

    ResponderBorrar
    Respuestas
    1. Omar
      Revisa este enlace: http://www.cisco.com/c/en/us/products/ios-nx-os-software/ios-netflow/networking_solutions_products_genericcontent0900aecd805ff72b.html
      Encontrarás una lista de Netflow Collector Freeware.

      Borrar
  23. Oscar gracias por tu respuesta, pero ya antes había revisado ese link y buscando en la web pude ver muchos (de verdad muchos) pero recurría a tu experiencia o tal vez alguna aplicación que desde tiempo vengas utilizando. Por ejemplo realice una prueba con las distribuciones de SolarWinds y no obtuve buenos resultados no investigue más afondo pero me gustaría me puedas dar tu apreciación frente a la gama de aplicaciones free y de pago que en tu caso recomendarías utilizar.

    ResponderBorrar
    Respuestas
    1. En general, el que he visto implementado con mayor frecuencia es el de Solar Winds.

      Borrar
  24. Oscar buenas noches recientemente me configuraron unos routers Cisco 800 para utilizar el NetflOw y lo exporto a.un sistema de monitoreo de solarwinds pero tengo la duda de pórque sólo me muestra el tráfico entrante y no el saliente??? porque el NetflOw lo configuraron directamente en el puerto que va directamente a la Lan.

    ResponderBorrar
  25. Andrés,
    para darte una respuesta precisa sería necesario ver la implementación que se ha hecho.
    Sin embargo, si lo único que estás monitoreando es el tráfico entrante, es muy posible que esto se deba a la configuración que se ha hecho en la interfaz.

    ResponderBorrar
  26. Hola, me gustaría saber como monitorear los puertos con netflow y saber cuales son más usados por un una determinada IP.

    ResponderBorrar
    Respuestas
    1. Carlos.
      Este es un post puramente introductorio.
      Hoy Netflow tiene múltiples fascetas y aplicaciones posibles, tanto en lo que se refiere a monitoreo como a seguridad y control de aplicaciones.
      Te sugiere comiences leyendo la guía de configuración para IOS 15: http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/netflow/configuration/15-mt/nf-15-mt-book.html
      Luego, en función de lo que desees hacer, elige la mejor herramienta de análisis, de las cuales hay muchas hoy en el mercado.

      Borrar
  27. Hola Oscar, tengo una inquietud respecto a snmp, netflow se apoya de snmp para recolectar información o netflow es totalmente independiente?

    Slds
    Edward Quitian

    ResponderBorrar
    Respuestas
    1. Edwar
      En primer lugar NetFlow es una herramienta independiente de SNMP y tiene su propio mecanismo de comunicación cuando deseas implementar un NetFlow Collector para analizar la información producida por la herramienta.
      Más allá de eso, dado que SNMP es un protocolo para transporte de información entre los agentes y una consola SNMP, es posible utilizar SNMP para recolectar la información que produce NetFlow (si tenés las MIBs necesarias) y consolidarla en la consola SNMP con otros datos sobre la operación de los equipos.

      Borrar

Gracias por tu comentario.
En este blog los comentarios están moderados, por lo que su publicación está pendiente hasta la revisión del mismo.