27 de julio de 2009

Los mejores inventos del Siglo XX. Uno que no he visto por ninguna parte.

Hace unos meses, aparecieron una serie de encuestas para identificar los inventos/descubrimientos más importantes del Siglo XX. Aparecieron muchos y de muy diverso pelaje (los antibióticos, la teoría de la relatividad y la física cuántica, el Chip de Silicio, los vuelos espaciales y la llegada a La Luna, la TV, Internet, ...) yo no pretendo opinar. Se me escapa el tema. Lo único que me llamó la atención fue el que en ningún sitio se nombrara al protocolo TCP/IP aunque sólo fuera de pasada. Voy a explicar el porqué creo que, al menos, debería haber aparecido por alguna parte. Prometo esforzarme en no hacerlo de forma técnica, pero creo que, si usas Internet con asiduidad, no está de más que sepas un poquito de sus tripas.

¿Por qué creo que es importante?

Es la principal base sobre la que funciona Internet

¿Como surgió?

Como muchos de los grandes avances tecnológicos: necesidades militares del DoD (Departamento de Defensa) de EEUU

¿Y que pretendían?

A finales de los 60, en plena guerra fría, buscaban un modelo de Comunicaciones que se protegiese ante un potencial sabotaje del enemigo

¿Y cómo lo hicieron?

Diseñando un modelo de comunicaciones sin puntos únicos de fallo. Similar a una red de pescador (aunque en varias dimensiones), en la que se puede ir desde un punto de la misma hasta otro por múltiples caminos. Este modelo debía servir para cualquier tipo de tecnología que se conectase a la red.

¿Y que pinta el protocolo TCP/IP en todo esto?

Un protocolo de comunicaciones es un lenguaje que se define para que 2 nodos que deben comunicarse sepan como hablar entre ellos.

TCP/IP fue el protocolo que se definió para que los nodos conectados al modelo de comunicaciones en red que se había diseñado pudieran hablarse. De esta forma, cualquier dispositivo que se conectase a la red, independiente de sus características, si sabía hablar TCP/IP, podría comunicarse con el resto.

¿Cómo funciona?

Para que la red no se pudiera sabotear, se diseñó de forma que el control de ésta residiese en los nodos finales (por ejemplo en nuestros PC´s). Son éstos los que tienen la inteligencia que gestiona las transmisiones de la información a lo largo y ancho de la red. Así, para hundirla, habría que hundir a todos sus nodos.

En concreto, ¿qué hace TCP/IP?

TCP/IP, en realidad son 2 protocolos, cada uno se encarga de una parte de la jugada:

  • IP (Internet Protocol): es algo así como el servicio de correos. Se hace cargo de los paquetes que hay que enviar desde un ordenador a otro. Para ello, tiene en cuenta la dirección de origen y la de destino, y se encarga de asegurarse de que todos los paqutes se entregan viajando, por donde sea, a traves de la red. Intenta que el paquete llegue y que lo haga en buen estado, pero no garantiza ninguna de ambas cosas. Incluso, si se encarga de un grupo de paquetes, no garantiza que el orden de llegada a destino sea el adecuado.
  • TCP (Transport Control Protocol): se encarga de asegurar que los paquetes que han llegado están en condiciones y de ponerlos en el orden correcto para construir el mensaje original. Para ello proporciona detección de errores, funciones de reenvío y secuenciación. Es decir, se encarga de trocear y numerar los paquetes en origen, entregárselos a "IP" y agrupar los paquetes, para formar el mensaje, en destino, reclamando de nuevo al origen los que se han perdido o no están correctos.

Resumiendo

TCP/IP es el lenguaje que permite que todos los ordenadores (y lo que no son ordenadores) que se conectan a Internet hablen entre ellos. Es un lenguaje democrático, de forma que todos pueden hablar con todos e intercambiarse así información. Sobre este lenguaje es sobre el que luego nació el Correo Electrónico, la WWW, ...

Para mí, Internet ha sido una gran revolución en el Siglo XX. Algo de lo que aún no vemos el impacto que va a alcanzar. Esto no hubiera sido posible sin ún único lenguaje de base con el que hablar. TCP/IP es similar en Internet, al habla en la evolución de los humanos.