domingo, 29 de diciembre de 2013

El Protocolo Fantasma

La historia de los protocolos de Internet (Interconnected Network – Redes Interconectadas) es algo tediosa y compleja. Para simplificar, diremos que se inició en los años sesenta con NCP (Network Control Protocol – Protocolo de Control de Redes) un protocolo que utilizaba ARPANET para intercomunicar sus hosts. Algo más tarde, en los años setenta, comenzaron a diseñarse la familia de protocolos que dio en llamarse TCP (Transmission Control Protocol – Protocolo de Control de Transmisiones), el cual en los años ochenta reemplazaría a NCP en forma definitiva.

TCP desde la versión 1 evolucionó hasta la flamante versión 6. La versión 2 incluyó diversas mejoras, pero no dejó de ser experimental. La versión 3 fue algo desarrollista e introdujo la división IP (Internet Protocol – Protocolo de Internet) que haría famoso a este protocolo, de esta forma las transmisiones en Internet comenzaron a conocerse como el conjunto de protocolos TCP/IP. La versión 4 fue lo máximo, el estándar por excelencia que dominó la Red de Redes durante más de 30 años y, siendo que hay todavía muchos dispositivos que no migrarán a la versión 6, es de suponer que habrá IPv4 por al menos unos 15 años más.

 Los protocolos se definen en los RFC (Request For Comments) y en los IEN (Internet Experiment Note). IPv4 está definido en el RFC 791/81, fue elaborado por el IETF (Internet Engineering Task Force) y reemplazó totalmente al protocolo descrito en el RFC 760/80 del DoD SIP (Department of Defense Standard Internet Protocol [USA]).

Además de ser el protocolo más famoso del mundo, IPv4 es sumamente ágil y versátil. Sin embargo, el crecimiento impensado de Internet a partir del año 2000, puso las cosas realmente difíciles para este protocolo, llevándolo prácticamente al borde del colapso de las direcciones de red y dejando a IPv6 al acecho. Así, llegamos a nuestro tema principal.

Debido a las limitaciones técnicas de direccionamiento, se hizo necesario la revisión de IPv4. El resultado fue IPv6. Pero, ¿y por qué no IPv5?

Según se indica en los IEN y RFC, surge a fines de la década de los setenta un nuevo protocolo denominado ST (Internet Stream Protocol), que conformaría la familia: ST, ST2 y ST2+. (!)

Concretamente, el IEN 119/79, define al protocolo ST, creado por James Forgie del MIT (Massachusetts Institute of Technology), como una extensión del protocolo IP, que brindaría soporte de QoS (Quality of Service), especialmente para aplicaciones de comunicación punto a punto de voz y video conferencia.

 Posteriormente el RFC 1190/90, actualiza el IEN 119 y redefine al protocolo ST, considerándolo de uso experimental, y le asigna la versión 2. Si bien el mismo no es compatible con la versión 1, mantiene gran parte de su filosofía y arquitectura, a la vez que ofrece mayor facilidad de implementación.

Por último, el RFC 1819/95, vuelve a definir a ST como un protocolo experimental, dejando expresamente indicado que no se trata de un estándar. Además, aclara, simplifica y corrige errores de la versión anterior y le asigna a ST la versión 2+ (2 plus). Pero lo notable, es que indica también que el protocolo se encuentra aún en desarrollo y, que desde su aparición, no se han logrado avances significativos ni implementación real alguna. Esta última revisión del protocolo ST fue realizada por el IETF.

Ahora bien, ¿qué tiene que ver ST con IP?

Simplemente, nada. De hecho ST e IP pueden coexistir, no son excluyentes, y una misma aplicación multimedia estándar puede utilizar ambos protocolos. Para complicar aún más las cosas, los mensajes de ST pueden ser encapsulados en paquetes IP. (!)

Entonces, ¿dónde está el truco?

Ok, veamos. Los paquetes de ambos protocolos difieren en los primeros cuatro bits, los cuales identifican a la versión del protocolo que se está implementando. Como ST es un protocolo independiente y funciona de tal manera, para distinguirlo había que asignarle un número de versión. El estándar de la Red (IP), ya estaba utilizando el número de versión 4, motivo por el cual el IETF, en el mismo RFC, deja expresamente reservado el número de versión 5 para ST. De esta forma, cuando se realizó la revisión de IPv4, se le asignó a la nueva versión el número 6, puesto que ST había sido coronado con el número de versión 5 del protocolo IP. ¿Ha sido esto un error? Es muy probable, aunque también discutible.

Te preguntabas qué fue de IPv5 y no podías dormir pensando en ello. Bien, como lo prometido es deuda, te traje la respuesta. Aunque, para muchos, IPv5 continuará siendo el protocolo fantasma.

Eso es todo.


viernes, 5 de abril de 2013

¿Es posible el colapso de Internet?

Desde el surgimiento de ARPANET a mediados de los años 60 el crecimiento e interconexión de computadores ha ido creciendo en una forma nunca pensada.
ARPANET conectaba solamente cuatro nodos entre si, cifra increíblemente irrisoria si se piensa en los más de 3000 millones de hosts conectados hoy a Internet.

La llegada del sistema operativo Windows 95 de la empresa Microsoft y el protocolo HTML contribuyeron enormemente a esta expansión, haciendo las cosas realmente fáciles para los usuarios.

Actualmente no solamente encontramos millones de PC’s conectadas a Internet, sino también cualquier otro dispositivo con la capacidad de hacerlo como son notebooks, teléfonos celulares, tablets, smartphones, impresoras y cámaras de video, solo por mencionar algunos. Sin embargo este crecimiento incontenible de distintos dispositivos conectados ha llevado al agotamiento de las direcciones de red.

El protocolo que maneja Internet para la asignación de direcciones es IPv4. Un protocolo de 32 bits capaz de direccionar aproximadamente 4300 millones de hosts. Si a esto restamos las direcciones de rangos reservadas para redes privadas el panorama es aún menos alentador. El agotamiento de las direcciones IP es un hecho cierto y concreto que generará la detención del crecimiento de Internet, pérdidas millonarias y fallas generales en el intercomunicado mundo actual.

Una solución brindada provisoriamente fueron la creación de subredes, máscaras de subredes y la utilización de direcciones sin clase. Más tarde la aparición de NAT (la traducción de direcciones de red) y el solapamiento IP permitieron la conexión de millones de computadores a través de una única dirección IP. Sin embargo todas estas fueron medidas que no hicieron más que retrasar lo inevitable. Los días de IPv4 habían llegado a su fin.

La solución real y efectiva llega de la mano de IPv6 un nuevo protocolo capaz de direccionar 128 bits. Esto significa que IPv6 puede generar la friolera cantidad de  340 sextillones de direcciones IP. Además de mayor espacio de direccionamiento, este protocolo ofrece mayor seguridad, calidad de servicio (QoS), ampliabilidad y cabeceras simplificadas.

A diferencia de IPv4 que utiliza notación decimal y separación por puntos (.) por cada octeto,  IPv6 utiliza notación hexadecimal que permite representación de mayor cantidad de datos en menos espacio y separación de dos puntos (:) por cada dos octetos, es decir 16 bits.

Para realizar la implementación de IPv6 se necesita hardware y software compatibles con la nueva versión. En cuanto a sistemas operativos, Linux ofrece IPv6 nativo desde su kernel 2.1.7 (1996), Windows desde XP SP2 en adelante. El hardware de red prácticamente no necesitará actualizarse en cuanto a las controladoras de red, pero si deberán actualizarse los modems y ruteadores, como así también las impresoras de red y cámaras IP.

La transición a IPv6 es inevitable y no debe retrasarse. Grandes empresas como Yahoo!, Google, Youtube y MSN entre otras ya han implementado IPv6 en sus servidores. En Argentina, Telecom SA y Telecentro SA están en fase de implementación. Es de esperar que los ISP locales también comiencen a hacerlo para no generar ralentizaciones y cuellos de botella (realizando tunneling IPv4 over IPv6) en el tráfico a través de la Gran Red de Redes.

Hemos hablado mucho sobre IPv6, ¿Qué habrá sucedido con IPv5?