Clasificación del tráfico e Deep Packet Inspection

October 4, 2016
DPI
Clasificación del tráfico e Deep Packet Inspection
El tráfico de red es complejo y está compuesto por una gran variedad de aplicaciones, protocolos y servicios. Muchas de estas aplicaciones tienen requisitos únicos en cuanto a las características de la red, como la velocidad, la latencia y la fluctuación. Cumplir con estos requisitos es esencial para que las aplicaciones funcionen de forma rápida y fiable, y para que los usuarios estén satisfechos con la calidad del servicio.

Si bien no hay problemas con las redes de área local (LAN) debido a su alto ancho de banda, el ancho de banda limitado de los canales de acceso a Internet (WAN) requiere un ajuste fino.

Clasificación y marcado

La prestación de servicios de acceso a Internet está orientada al usuario, y lo más importante es la percepción que este tiene de la calidad del servicio: Internet no debe «ralentizarse», las aplicaciones deben responder rápidamente a los comandos, los archivos deben descargarse rápidamente y las llamadas de voz no deben entrecortarse, de lo contrario el usuario empezará a buscar otro proveedor de servicios. La gestión del tráfico del canal de acceso a Internet, la configuración de las restricciones y las prioridades deben satisfacer los requisitos de los usuarios. La información sobre los protocolos y las aplicaciones también permite al administrador implementar políticas de seguridad para proteger a los usuarios de la red.

La clasificación del tráfico es el primer paso para identificar las diversas aplicaciones y protocolos que se transmiten a través de la red. El segundo paso es gestionar, optimizar y priorizar este tráfico. Después de la clasificación, todos los paquetes se marcan según su pertenencia a un protocolo o aplicación específicos, lo que permite a los dispositivos de red aplicar políticas de servicio (QoS) basadas en estas etiquetas e indicadores.

Conceptos clave: clasificación: identificación de aplicaciones o protocolos; marcado: proceso de etiquetado de paquetes para la aplicación de políticas de servicio en los equipos.

métodos de clasificación

Existen dos métodos principales de clasificación del tráfico:

  • Clasificación basada en la carga útil. Se basa en campos de bloques de datos, como los puertos de la capa 4 de OSI (remitente y destinatario, o ambos). Este método es el más común, pero no funciona con tráfico cifrado y tunelizado.
  • Clasificación basada en estadísticas. Se basa en el análisis del comportamiento del tráfico (tiempo entre paquetes, tiempo de sesión, etc.).

Un enfoque universal para la clasificación del tráfico se basa en la información del encabezado del paquete IP, normalmente la dirección IP (capa 3), la dirección MAC (capa 2) y el protocolo utilizado. Este enfoque tiene capacidades limitadas, ya que la información se toma únicamente del encabezado IP, al igual que los métodos de capa 4 son limitados; al fin y al cabo, no todas las aplicaciones utilizan puertos estándar.

Se puede lograr una clasificación más sofisticada mediante la inspección profunda de paquetes (DPI). Este método es el más preciso y confiable, así que vamos a examinarlo más de cerca.

Deep Packet Inspection

Los sistemas de inspección profunda de paquetes permiten clasificar aplicaciones y protocolos que no se pueden identificar en las capas 3 y 4, como las URL dentro de los paquetes, el contenido de los mensajes de mensajería instantánea, el tráfico de voz de Skype y los paquetes p2p de BitTorrent.

El mecanismo principal para identificar aplicaciones en DPI es el análisis de firmas. Cada aplicación tiene sus propias características únicas, que se introducen en una base de datos de firmas. La comparación de una muestra de la base de datos con el tráfico analizado permite identificar con precisión la aplicación o el protocolo. Sin embargo, dado que periódicamente aparecen nuevas aplicaciones, la base de datos de firmas también debe actualizarse para garantizar una alta precisión en la identificación.

signatures

Existen varios métodos de análisis de firmas:

  • Análisis de patrones (Pattern analysis)
  • Análisis numérico (Numerical analysis)
  • Análisis de comportamiento (Behavioral analysis)
  • Análisis heurístico (Heuristic analysis)
  • Análisis de protocolo/estado (Protocol/state analysis).

Análisis de patrones

Algunas aplicaciones contienen muestras específicas (bytes/caracteres/cadenas) en el bloque de datos del paquete que pueden utilizarse para la identificación y clasificación. Estas muestras pueden estar ubicadas en cualquier parte del bloque de datos; esto no afecta al proceso de identificación. Sin embargo, dado que no todos los paquetes contienen una muestra de la aplicación, este método no siempre funciona.

Análisis numérico

El análisis numérico estudia las características cuantitativas de los paquetes, como el tamaño del bloque de datos, el tiempo de respuesta del paquete y el intervalo entre paquetes. Por ejemplo, la versión antigua de Skype (anterior a la versión 2.0) era muy adecuada para este tipo de análisis, ya que la solicitud del cliente tenía un tamaño de 18 bytes y la respuesta que recibía era de 11 bytes. Dado que el análisis se puede distribuir entre los paquetes de una cadena de tiendas, la decisión de clasificación podría llevar más tiempo. El análisis simultáneo de varios paquetes lleva bastante tiempo, lo que hace que este método no sea el ideal.

Análisis conductual y heurístico

Este método se basa en el comportamiento del tráfico generado por una aplicación en ejecución. Mientras la aplicación está en ejecución, genera tráfico dinámico que también se puede identificar y marcar. Por ejemplo, BitTorrent genera tráfico con una secuencia específica de paquetes que tienen las mismas características (puerto de entrada y salida, tamaño del paquete, número de sesiones abiertas por unidad de tiempo), que se pueden clasificar según un modelo conductual (heurístico).

El análisis conductual y el análisis heurístico suelen utilizarse conjuntamente, y muchos programas antivirus emplean estos métodos para identificar virus y gusanos.

Análisis de protocolos/estado

Los protocolos de algunas aplicaciones son una secuencia de acciones específicas. El análisis de dichas secuencias permite identificar la aplicación con suficiente precisión. Por ejemplo, una solicitud GET de un cliente FTP debe ir seguida de una respuesta correspondiente del servidor.

Cada vez más aplicaciones en Internet están empezando a utilizar mecanismos de cifrado del tráfico, lo que crea grandes problemas para cualquier método de clasificación. El sistema DPI no puede examinar el interior de un paquete cifrado para analizar su contenido, por lo que los principales métodos para identificar dicho tráfico son el análisis del comportamiento y el análisis heurístico, pero ni siquiera estos pueden identificar todas las aplicaciones. El mecanismo más reciente, que utiliza ambos métodos simultáneamente, se denomina agrupación, y es el único que permite identificar el tráfico cifrado.

Dado que ninguno de los métodos descritos anteriormente proporciona por sí solo una clasificación del tráfico al 100 %, la mejor práctica es utilizarlos todos simultáneamente.

La clasificación del tráfico con la posterior aplicación de políticas de calidad de servicio es una de las tareas más importantes para cualquier operador de telecomunicaciones. El uso de modernos sistemas DPI permite realizar esta tarea con la máxima eficiencia y productividad.