La Historia de la URL

Para conocer la historia de la URL debemos retroceder a el 11 de enero de 1982, cuando veintidós científicos informáticos se reunieron para discutir un problema con el “correo computarizado” (lo que hoy conocemos como correo electrónico). Entre los asistentes estaban personajes que más tarde crearían Sun Microsystems, el creador de Zork, el responsable del protocolo NTP y el que convenció al gobierno de financiar Unix. El problema era simple: había 455 hosts en ARPANET y la situación estaba saliéndose de control.

La transición de ARPANET y el nacimiento del dominio

Este problema surgió cuando ARPANET estaba a punto de cambiar de su protocolo original NCP al protocolo TCP/IP, que es la base de lo que hoy llamamos Internet. Con este cambio, aparecería una multitud de redes interconectadas, lo que requeriría un sistema de dominios más jerárquico. En ese sistema, ARPANET podía resolver sus propios dominios mientras que otras redes resolverían los suyos.

En ese momento, las redes tenían nombres creativos como “COMSAT”, “CHAOSNET”, “UCLNET” e “INTELPOSTNET”, y eran mantenidas por grupos de universidades y empresas alrededor de Estados Unidos. Estos grupos querían comunicarse entre sí, y podían permitirse alquilar líneas de 56k de las compañías telefónicas y comprar los equipos necesarios para manejar el enrutamiento.

Originalmente, el diseño de ARPANET dependía de un Centro de Información de Red (NIC) para mantener un archivo que listaba todos los hosts en la red, llamado HOSTS.TXT, algo similar al archivo /etc/hosts en sistemas Linux o OS X. Sin embargo, este sistema no podía escalar indefinidamente.

El nacimiento del dominio y la evolución de los correos electrónicos

La prioridad en ese momento era el correo electrónico, que presentaba un desafío en la dirección. La solución fue crear un sistema jerárquico en el que se pudiera consultar un sistema externo para obtener el dominio necesario. Así nació el concepto de dominio y las direcciones pasaron de “usuario@host” a “usuario@host.dominio“, un formato que aún usamos hoy.

Aunque esta decisión no fue tomada con una visión clara del futuro, se eligió porque causaba menos problemas en los sistemas existentes.

UUCP y las rutas Bang

El sistema de UUCP, creado en 1976, permitía que las computadoras comunicaran a través de rutas llamadas “Bang Paths”, en las que se podían enviar archivos o correos electrónicos. Este sistema era un predecesor del Internet público que conocemos hoy.

DNS y los primeros TLDs

En 1983 se propuso el sistema DNS que aún usamos hoy. DNS resuelve dominios en direcciones IP y permite que los usuarios encuentren sitios web de manera eficiente. Los primeros TLDs (dominios de nivel superior) incluyeron .com, .gov, .org, .edu y .mil, que aún hoy son ampliamente utilizados.

El sistema de DNS fue diseñado para ser jerárquico, con un conjunto de servidores raíz responsables de resolver los dominios. Hoy, el sistema de DNS raíz está compuesto por trece clústeres de servidores. Históricamente, las respuestas de DNS se manejaban mediante paquetes UDP, limitando la respuesta a 512 bytes.

Punycode y la internacionalización de los dominios

A medida que Internet creció y se expandió globalmente, surgió la necesidad de admitir caracteres no latinos en los nombres de dominio. Así nació Punycode, un sistema que permite convertir caracteres Unicode (como letras en chino o árabe) en ASCII, lo que hace que sean compatibles con la infraestructura existente.

Punycode no fue la primera propuesta para resolver este problema, pero se adoptó porque es eficiente en la codificación de caracteres y garantiza que los nombres de dominio sean comprensibles tanto para máquinas como para usuarios.

Protocolos, puertos y el componente “extra”

El protocolo más común que usamos para acceder a sitios web es HTTP, inventado por Tim Berners-Lee específicamente para la web. Sin embargo, otros protocolos como FTP y Gopher también fueron populares en los primeros días de la Internet.

El puerto predeterminado para HTTP es el puerto 80, asignado en los primeros días de la web. Esto permitió que los navegadores accedieran a las páginas web a través de HTTP sin necesidad de especificar el puerto en la URL.

El doble slash “//” que separa el protocolo del resto de la URL se tomó de un sistema anterior de computadoras llamado Apollo. Aunque Tim Berners-Lee ha expresado su arrepentimiento por esta decisión, hoy sigue siendo parte del estándar de las URLs.

El camino hacia el futuro: Fragmentos, URNs y autenticación

Las URLs también incluyen fragmentos, representados por el símbolo “#”, que permiten enlazar a una parte específica de una página. Además, se pueden agregar parámetros de consulta y credenciales de autenticación en la URL, aunque hoy en día estas prácticas han sido reemplazadas por métodos más seguros y eficientes.

Aunque las URLs han evolucionado desde sus inicios, siguen siendo una parte crucial del funcionamiento de la web. Si bien se propusieron sistemas más avanzados como los URNs (Nombres de Recursos Uniformes), las URLs continúan siendo la forma más eficiente de identificar y acceder a los recursos en línea.

Este artículo explora cómo la URL ha evolucionado desde sus humildes comienzos en ARPANET hasta convertirse en una de las piezas más esenciales de la infraestructura de Internet. A lo largo de los años, ha habido múltiples propuestas, errores y avances que nos han llevado al sistema de direcciones web que usamos hoy en día.

 

Artículo original por Zack Bloom | 05 Mayo