Buscar en este blog

jueves, 12 de enero de 2012

PFC - La Neutralidad de Red: Gestión de tráfico mediante DPI/DFI

En los siguientes enlaces se puede acceder a la culminación de mi Proyecto Final de Carrera, en el que se abarcan varios aspectos sobre la Neutralidad de Red.

Memoria final: https://www.dropbox.com/s/acl09cgzi0qx9s0/pfc_memoria.pdf

Diapositivas lectura: https://www.dropbox.com/s/t5g44n3pqt8gdl6/pfc_presentacion.pdf


Índice



Capítulo I – Introducción ............................................................................................................. 15


Capítulo II – Conceptos básicos sobre Internet ........................................................................... 17
1 Estructura de Internet ..................................................................................................... 18
1.1 Núcleo de Internet .................................................................................................. 18
1.1.1 Modelo inicial de Internet ............................................................................... 19
1.1.2 Modelo actual de Internet .............................................................................. 19
1.2 Red de acceso .......................................................................................................... 21
2 El modelo OSI & TCP/IP ................................................................................................... 23
3 El principio ‘end-to-end’ .................................................................................................. 25
4 Factores económicos ....................................................................................................... 26
4.1 Cadena de valor ....................................................................................................... 26
4.2 El mercado bilateral ................................................................................................ 29
4.3 El mercado de acceso e interconexión IP ................................................................ 30


Capítulo III – Neutralidad de Red ................................................................................................ 34
1 Origen del debate ............................................................................................................ 35
2 Casos destacados ............................................................................................................ 36
3 Aspectos de la Neutralidad de Red ................................................................................. 39
4 Contexto internacional .................................................................................................... 42


Capítulo IV - Gestión de tráfico ................................................................................................... 44
1 Antecedentes de la gestión de tráfico ............................................................................ 46
2 Prácticas de gestión de tráfico ........................................................................................ 48
3 Tipos de tráfico y QoS ..................................................................................................... 50
4 Gestión de tráfico basada en QoS y ‘policing’ ................................................................. 52
4.1 Gestión de tráfico en redes móviles ........................................................................ 54
4.1.1 GSM/GPRS/EDGE, UMTS/HSPA - GPRS Core Network .................................... 56
4.1.1.1 Arquitectura de red ..................................................................................... 56
4.1.1.2 Niveles de QoS ............................................................................................. 57
4.1.1.3 Políticas de control ...................................................................................... 57
4.1.1.4 Análisis de tráfico en 2G/3G ........................................................................ 57
4.1.2 LTE/SAE – Evolved Packet Core ....................................................................... 58
4.1.2.1 Arquitectura de red ..................................................................................... 59
4.1.2.2 Niveles de QoS ............................................................................................. 61
4.1.2.3 Políticas de control ...................................................................................... 64
4.1.2.4 Análisis de tráfico en SAE/LTE ..................................................................... 65
4.2 Gestión de tráfico en redes fijas.............................................................................. 66
4.2.1 Cable - DOCSIS ................................................................................................. 66
4.2.1.1 Arquitectura de red ..................................................................................... 67
4.2.1.2 Niveles de QoS ............................................................................................. 68
4.2.1.3 Políticas de control ...................................................................................... 69
4.2.1.3.1 IPDR ....................................................................................................... 69
4.2.1.3.2 PCMM .................................................................................................... 70
4.2.1.4 Análisis de tráfico en Cable ......................................................................... 71
4.2.2 Acceso fijo - TISPAN ......................................................................................... 72
4.2.2.1 Arquitectura de red ..................................................................................... 72
4.2.2.2 Niveles de QoS ............................................................................................. 73
4.2.2.3 Políticas de control ...................................................................................... 74
4.2.2.4 Análisis de tráfico en accesos fijos .............................................................. 76
4.3 Comparativa de arquitecturas de gestión QoS y Policy .......................................... 76


Capítulo V - Análisis del tráfico.................................................................................................... 79
1 Técnicas de análisis: SPI, DPI y DFI .................................................................................. 80
1.1 Aplicaciones de DPI/DFI .......................................................................................... 83
2 Implantación de sistemas DPI/DFI para la gestión de tráfico ......................................... 85
2.1 Ubicación de sistemas DPI/DFI ................................................................................ 85
2.2 Integración de sistemas DPI/DFI ............................................................................. 87
2.2.1 DPI/DFI dedicado ............................................................................................. 87
2.2.2 DPI/DFI integrado ............................................................................................ 87
2.2.3 Comparativa entre soluciones dedicadas e integradas................................... 89
3 Mercado DPI/DFI ............................................................................................................. 90
3.1 Fabricantes y soluciones relevantes ........................................................................ 90
3.1.1 Fabricantes puros ............................................................................................ 91
3.1.1.1 Sandvine ...................................................................................................... 91
3.1.1.2 Allot ............................................................................................................. 91
3.1.1.3 Procera ........................................................................................................ 92
3.1.1.4 Ipoque ......................................................................................................... 93
3.1.2 Fabricantes clásicos ......................................................................................... 93
3.1.2.1 Cisco ............................................................................................................ 93
3.1.2.2 Ericsson ........................................................................................................ 94
3.2 Valor de mercado .................................................................................................... 95
4 Aspectos técnicos de DPI/DFI .......................................................................................... 97
4.1 Arquitectura de sistemas DPI/DFI ........................................................................... 97
4.1.1 Interconexión: ATCA ........................................................................................ 97
4.1.2 Procesado de datos ......................................................................................... 98
4.1.2.1 Plano de datos y plano de control ............................................................... 99
4.1.2.2 Tipos de procesadores para comunicaciones ............................................. 99
4.1.2.2.1 ASIC & NPU .......................................................................................... 100
4.1.2.2.2 Communication Processor .................................................................. 100
4.1.2.2.3 CPU multi-núcleo ................................................................................ 101
4.1.2.2.4 Procesador de flujo ............................................................................. 103
4.2 Clasificación de paquetes en flujos ....................................................................... 107
4.3 Análisis DPI ............................................................................................................ 111
4.3.1 Algoritmos de búsqueda DPI ......................................................................... 113
4.3.1.1 ‘String Matching’ ....................................................................................... 114
4.3.1.2 Regular Expression (RegEx) ....................................................................... 115
4.3.1.2.1 Teoría de autómatas ........................................................................... 116
4.3.1.2.1.1 NFA: Non-deterministic Finite Automata ..................................... 117
4.3.1.2.1.2 DFA: Deterministic Finite Automata ............................................ 118
4.4 Análisis DFI ............................................................................................................ 119
5 Análisis de tráfico real: Ejercicio práctico ..................................................................... 123
5.1 P2P (Peer-To-Peer) ................................................................................................ 123
5.1.1 BitTorrent ...................................................................................................... 123
5.1.2 eDonkey ......................................................................................................... 125
5.2 VoIP (SIP + RTP) ..................................................................................................... 125
5.3 Email (SMTP + IMAP) ............................................................................................. 127
5.4 Conclusiones del ejercicio ..................................................................................... 130


Capítulo VI – Implicaciones, conclusiones y recomendaciones ................................................ 131
1 Implicaciones ................................................................................................................. 132
1.1 Modelo ‘best effort’ .............................................................................................. 132
1.2 Modelo de tráfico gestionado ............................................................................... 133
1.3 Ventajas e inconvenientes .................................................................................... 135
2 Conclusiones.................................................................................................................. 137
3 Recomendaciones ......................................................................................................... 144


Anexo A – Contexto regulatorio internacional .......................................................................... 146
1 Unión Europea ............................................................................................................... 146
1.1 Marco Legislativo .................................................................................................. 146
1.2 Declaración de la Comisión Europea sobre la Neutralidad de Red ....................... 148
1.3 Consulta pública .................................................................................................... 148
1.4 Comunicado de la Comisión sobre la Neutralidad de Red .................................... 151
1.5 Recomendaciones del Parlamento Europeo ......................................................... 151
2 EEUU .............................................................................................................................. 153
2.1 Internet Policy Statements .................................................................................... 153
2.2 Report&Order : Preserving the Open Internet ..................................................... 154
3 Chile ............................................................................................................................... 156
3.1 Proyecto de Ley ..................................................................................................... 156
3.2 Requisitos de transparencia .................................................................................. 157
4 Holanda ......................................................................................................................... 160
4.1 Enmienda de Ley ................................................................................................... 160
5 Francia ........................................................................................................................... 162
5.1 Consulta pública sobre propuesta de directrices .................................................. 162
5.2 Propuestas y recomendaciones ............................................................................ 162
6 Reino Unido ................................................................................................................... 165
7 Suecia ............................................................................................................................ 166
8 Canadá ........................................................................................................................... 167
8.1 Telecom Decision 2008-108 .................................................................................. 167
8.2 Telecom Regulatory Policy CRTC 2009-657 ........................................................... 167
9 Noruega ......................................................................................................................... 169
10 Japón ......................................................................................................................... 170


Anexo B – Análisis de tráfico real .............................................................................................. 171
1 OpenDPI ........................................................................................................................ 171
2 Capturas de tráfico ........................................................................................................ 172
2.1 P2P (Peer-To-Peer) ................................................................................................ 172
2.1.1 BitTorrent ...................................................................................................... 172
2.1.2 eDonkey ......................................................................................................... 174
2.2 VoIP (SIP + RTP) ..................................................................................................... 176
2.3 Email (SMTP + IMAP) ............................................................................................. 177
Referéncias ............................................................................................................................... 179

sábado, 29 de octubre de 2011

Entendiendo DPI: Wireshark & OpenDPI

En posteriores posts se irá analizando como trabaja "Deep Packet Inspection (DPI)" en aspectos tanto software como hardware. Antes de ello es interesante ver, aunque sea de modo simplificado, un ejemplo del análisis que ofrece esta tecnología. Para ello se emplean dos versiones 'open source' de las varias que hay disponibles, una es la herramienta de captura de tráfico Wireshark, y la otra el codigo OpenDPI de Ipoque. Con ellas se puede ver como distinguen entre diferentes tipos de tráficos y de flujos.

Se ha hecho una captura del tráfico generado en una sesión estándar de usuario, tráfico web, tráfico P2P, cliente de mensajería, etc mediante el propio Wireshark. El tráfico capturado corresponde al uso de estas aplicaciones durante unos 5 minutos. Veamos como muestran los protocolos las dos herramientas empleadas.

Wireshark es una herramienta de análisis y captura de tráfico que emplea DPI, aunque a un nivel superficial (podríamos hablar más bien de SPI). Se suele emplear en entornos educativos y a nivel de usuario ya que no soportaría un análisis masivo de tráfico. Ofrece un entorno gráfico con algunas opciones interesantes que facilitan la visualización de las particularidades de cada protocolo. En la siguiente imagen se muestra una de las visualizaciones que permite esta herramienta.



Por otro lado, OpenDPI es una versión limitda de la que el proveedor de soluciones de gestión de ancho de banda Ipoque ofrece en sus productos, el motor PACE (Protocol and Applicaton Classification Engine). Por ello, el número de protocolos que es capaz de detectar es considerablemente inferior al de la versión comercial, así como la velocidad y rendimiento del análisis. No emplea análisis heurístico o de comportamiento, por lo que no es capaz de detectar conexiones cifradas o enmascaradas. La misma captura realizada con esta herramienta da el siguiente resultado que se muestra a continuación.



Como se puede observar el número de paquetes que considera la herramienta OpenDPI son los paquetes IP, que suman 31.468. A diferencia de la visualización que ofrece Wireshark, OpenDPI solo muestra la capa L7, que es la que contiene la información sobre el tipo de aplicación. Se puede observar que existe una mayor precisión en el análisis realizado por OpenDPI, aunque como ya se preveía por ser una versión reducida no ha logrado identificar alrededor de un 15% de los paquetes (esta cifra en el análisis de Wireshark es notablemente superior). 

Este mismo ejercicio se realizará cuando se hable de "Deep Flow Inspection (DFI)", pero habilitando la opción de cifrar el tráfico que poseen la mayoría de clientes P2P. Así se mostrará como responde la herramienta OpenDPI ante este tráfico cifrado, que en principio no puede ser detectado solo con DPI.

domingo, 9 de octubre de 2011

Deep Packet Inspection (DPI)

Como se ha venido diciendo en el blog, la capacidad de acceder a Internet se está viendo desbordada. El crecimiento del consumo de datos es mayor que el de la tecnología que se empela para su tratamiento, dando lugar la necesidad de "La Gestión de Tráfico". Esta gestión se lleva a cabo para solventar o prevenir problemas de congestión mediante el análisis y posterior clasificación del tráfico que atraviesa las redes. En principio, si no se hiciese una "Violación de recomendaciones y normas en Internet", bastaría con analizar a que puerto se dirige un paquete o flujo de paquetes para saber de que tipo de tráfico se trata, ya que existen una serie de asignaciones sobre que protocolo o aplicación debería emplear dicho puerto. 

Pero la realidad es bien distinta, muchas aplicaciones pretenden no ser descubiertas para que así su tráfico no se vea afectado por las medidas de gestión de la congestión. Para ello hacen uso de puertos indebidos, abren varias conexiones en paralelo (ver "Cómo funciona Internet? (II)"), o en el caso más extremo encriptan u ofuscan su tráfico para dificultar la identificación. Por este motivo, empresas como Sandvine, Ipoque, Allot o Procera e incluso grandes fabricantes de equipos de red como Cisco o Ericsson, han desarrollado en los últimos años elementos capaces de identificar de forma muy precisa el tráfico que atraviesa la red. Estos equipos se basan en DPI (Deep Packet Inspection) y en DFI (Deep Flow Inspection) o análisis heurístico.

La tecnología DPI es capaz de analizar los datos que contiene un paquete más allá de las cabeceras del L3 (que es la única necesaria para transmitir los paquetes) y la del L4 (que aunque no es necesaria, es dónde se encuentra información sobre el flujo de datos y el puerto conexión). Para comprender algo mejor el tema de las cabeceras ver "Cómo funciona Internet?". Esto supone que la información de la capa de aplicación (L7) e incluso el contenido del usuario puede ser analizado para buscar ciertos patrones característicos de la aplicación o protocolo en uso, o también para prevenir ataques o malware.


El hecho de que se pueda analizar la información de usuario es uno de los aspectos más críticos en el debate de "La Neturalidad de Red" debido a que según los detractores de DPI, este viola la privacidad de los usuarios. En su defensa, fabricantes e ISPs alegan que para nada se lee o comprende la información del usuario ya que tan solo se buscan palabras en concreto. Como todo, la peligrosidad depende del uso que se le dé.

lunes, 26 de septiembre de 2011

Cómo funciona Internet? (II)

En el post "Cómo funciona Internet?" se explica a grandes rasgos el proceso que siguen los datos para ser enviados y recibidos. En esta ocasión veremos algunos matices más sobre el complejo funcionamiento de Internet. Los sistemas OSI y TCP/IP (que se explicaron en "Cómo funciona Internet?") definen los procesos y características que siguen los datos en su transmisión, aunque como bien se dijo son tan sólo modelos teóricos y la realidad es algo mas compleja. Los protocolos para comunicaciones existentes se pueden contar por miles y las funciones y responsabilidades de cada protocolo varían según las características para las que se ha desarrollado, entremezclándose a menudo. En este post se citan tres puntos que pretenden dar una muestra de la complejidad de los datos que viajan por Internet.

En primer lugar hablaremos del protocolo GTP (GPRS Tunneling Protocol) y las VPNs (Virtual Private Network), que ya vimos en el post "N00ter: una aplicación que detecta si hay Gestión de Tráfico" que interconectan a través de Internet dos redes LAN, se llevan a cabo mediante mecanismos de 'tunneling'. Esta técnica es un claro ejemplo de cómo se entremezclan los protocolos. El GTP se emplea en el transporte de las redes 3G móviles y se lleva a cabo encapsulando el paquete IP original en los protocolos UDP e IP . El resultado es bastante diferente de lo que el modelo OSI o TCP/IP, ya que en la pila de protocolos aparecen dos veces la capa IP y también dos veces la capa de L4 (TCP y UDP). El funcionamiento de VPN es algo mas complejo aunque el principio es similar.


Por otro lado, resulta interesante ver cómo las aplicaciones emplean los protocolos y como generan conexiones. Como conexión se debe entender el flujo de paquetes que van desde una dirección IP y puerto origen a una dirección IP y puerto destino, y según un protocolo de transporte (TCP o UDP). Esto, como ya se ha dicho en anteriores ocasiones, se conoce cómo 5-tuple y es empleado en varios dispositivos de red. El caso es que no existen limitaciones para el número de conexiones que se pueden dar sobre una máquina, y este es uno de los puntos donde se hace fuerte el P2P (ver "El tráfico P2P"), junto con la "Violación de recomendaciones y normas en Internet". Lo que se hace es simple, imaginemos dos clientes que abren varias conexiones en paralelo entre ellos para lograr mayores tasas de transferencia. La matemática es simple: la apertura de diez conexiones en paralelo ofrece una conexión global con una velocidad de transferencia de diez veces mayor que su cuota justa. Si se abren cien...

Por último, es de destacar también la complejidad que se añade al usar infinidad de protocolos entremezclados. Una aplicación no tiene porqué emplear tan sólo un protocolo en concreto, y el número de protocolos existentes es muy elevado (los equipos de análisis actuales reconocen del orden de 1000). Los motivos son varios, aunque generalmente suele deberse a que muchas aplicaciones empelan código de terceros o varios servicios que requieren varios protocolos. Un ejemplo claro de este hecho es Skype, por ejemplo, que emplea protocolos de VoIP, de mensajería instantánea, de video, etc.



martes, 30 de agosto de 2011

LTE, 4G y tratamiento de QoS

Muchas veces se habla sobre si tenemos o no cobertura 3G o 2G y sobre si el Iphone4 es 4G o no (la respuesta es que NO). Estos términos hacen referencia a la generación de la red móvil sobre la que nos estamos conectando. Como ya se ha dicho en este blog, el acceso móvil es uno de los mas críticos debido a que existen unas limitaciones físicas que son difíciles de combatir, además de tratarse de un medio compartido por varios usuarios. Por ello exige un trabajo de diseño e ingeniería muy complejo ofrecer mejoras en la velocidad de transferencia. En gran medida el debate de la Net Neutrality esta latente debido a la revolución que ha supuesto el creciente éxito de los dispositivos móviles y del consumo de datos que generan y generarán.

Estos factores han llevado al diseño de la red 4G que utiliza la tecnología LTE (Long Term Evolution) desarrollada por la 3GPP y que es interesante desde el punto de vista de "La Gestión de Tráfico" ya que este nuevo paradigma de red incluye mecanismos de gestión de QoS (Quality of Service) de modo intrínseco, además de por mejorar la capacidad en el acceso mediante el uso de OFDMA (Orthogonal Frecuency Divison Multiple Acces) en el uplink y técnicas MIMO (Multiple Input Multiple Output).


En las versiones anteriores de 3G (UMTS) y 2G (GPRS) ya se incluían algunas formas de gestión, aunque no de forma tan desarrollada y con una visión extremo a extremo (los datos atraviesan varias redes diferentes para alcanzar su destino) cómo lo hace LTE. En primer lugar hay que saber que en LTE todos los datos que atravesaran la red del operador serán IP, lo cual quiere decir que el servicio de voz tradicional ahora se hará sobre VoIP. Esto tiene de positivo que se converge hacia el modelo IP de Internet haciendo todo mas compatible y reduciendo costes. Todo este proceso forma parte de lo que se conoce como FMC (Fixed Mobile Convergence), que tiende a aproximar las diferentes arquitecturas de red hacia el modelo IMS (IP Multimedia Subsystem) derivado también de la 3GPP.

La voz tradicional se ha venido ofreciendo mediante conexión de circuitos y garantizando una cierta QoS. Esto quiere decir que cuando efectuamos una llamada primero de todo se reserva un enlace entre el emisor y el receptor que solo será empleado para la llamada, y si no hay enlaces disponibles no será posible llamar. Esta forma de proceder tiene de positivo que la QoS es garantizada, no obstante resulta muy poco óptima ya que dicho enlace no aprovecha su capacidad total. Con VoIP lo que se hace con nuestra llamada es enviarla en paquetes a través de una red IP (ver "Cómo funciona Internet?"), y así todos los paquetes viajan por el mismo canal, de forma que se aprovecha mejor el medio. Por contra, en este caso hay que garantizar algunos parámetros de calidad (sobre un tipo de red que no esta diseñada para ello) ya que la voz es sensible a algunos factores como la latencia (ver "Ancho de banda, latencia y jitter").

En cuanto a la Gestión de Tráfico, LTE incorpora un mecanismo conocido como PCC (Policy and Charging Control) que se ha posicionado como referente en las diferentes especificaciones en desarrollo (redes de cable y fijas) conocidas como NGN (New Generation Networks). Esta arquitectura se encarga de proporcionar de forma dinámica hasta 9 QCI (QoS Class Indentifier) con diferentes parámetros de ancho de banda, latencia, jitter y tasa de error PER (Packet Error Rate). Además de para la voz, esta asignación de QCIs aplica también para otros servicios (VoD, IPTV, streaming, P2P). El control y administración de la asignación se hace desde el núcleo de la red y se separa el plano de datos del plano de control (viajando en diferentes caminos). Para ello emplea dos elementos fundamentales:

  • PCRF (Policy and Charging Rules Function): Se trata de un elemento que se encarga de proporcionar las reglas especificas del operador. Su función se sitúa en el plano de control y aprovisiona la información necesaria a aplicar en función de unas ciertas reglas y previa identificación del tipo de tráfico o previa petición de QoS de una aplicación concreta.
  • PCEF (Policy and Charging Enforcement Function): Es la entidad situada en el plano de datos y lleva a cabo la aplicación de las políticas definidas en el PCRF. Al situarse en el plano de datos es el punto idóneo para llevar a cabo "Deep Packet Inspection (DPI)" para así identificar el tipo de tráfico en el caso de que no sea posible de otro modo (ver "Violación de recomendaciones y normas en Internet"). Para mas detalle comentar que se suele ubicar junto con el P-GW (Packet Data Network Gateway) que es el punto donde la red móvil se conecta con otras redes IP (como Internet) o no (como la RTC - Red Telefónica Conmutada- ).


Además de estos dos elementos básicos existen otros de facturación que en tiempo real pueden controlar los créditos y tarifas del suscriptor y aplicar los cargos correspondientes, todo de forma muy integrada. Toda esta arquitectura dota a los operadores de un poder de control exhaustivo sobre el consumo de los clientes, lo cual esta muy en contraposición con "La Neutralidad de Red" aunque bien aplicado puede repercutir en una gran QoE (Quality of Experience).