Todo el proceso desde que escribes una URL hasta que se muestra la página
Escribes una URL en la barra de direcciones del navegador y pulsas Enter. En una conexión rápida, la página se muestra en menos de 1 segundo. Sin embargo, durante ese breve instante, tu navegador ejecuta una cantidad sorprendente de procesos.
En este artículo, explicamos todo el proceso desde que escribes https://example.com hasta que la página se muestra, recorriendo cada capa de la red. Cuando accedes a IP Check-san, exactamente el mismo proceso se ejecuta en segundo plano.
Paso 1: análisis de la URL
El navegador primero analiza la cadena de texto introducida:
- Protocolo:
https://→ se usará HTTPS (puerto 443) - Nombre de dominio:
example.com→ necesita convertirse a dirección IP mediante DNS - Ruta:
/(raíz si se omite) → el recurso solicitado al servidor
Si se determina que la entrada es una consulta de búsqueda en lugar de una URL, se redirige al motor de búsqueda predeterminado.
Paso 2: resolución DNS - convertir el nombre de dominio en dirección IP
El navegador necesita conocer la dirección IP de example.com. La resolución DNS se intenta en el siguiente orden:
- Caché del navegador: el navegador recuerda las direcciones IP de dominios visitados recientemente
- Caché del SO: si no está en el navegador, se consulta la caché DNS del sistema operativo
- Archivo hosts: se consulta
/etc/hosts(Unix) oC:\Windows\System32\drivers\etc\hosts(Windows) - Resolver DNS: si no se encuentra en ninguno de los anteriores, se consulta al servidor DNS configurado (el predeterminado del ISP, o Cloudflare 1.1.1.1, etc.)
El resolver DNS realiza consultas jerárquicas: servidor raíz → servidor TLD de .com → servidor autoritativo de example.com, obteniendo finalmente la dirección IP (por ejemplo: 93.184.216.34). Este proceso suele tardar entre 10 y 100 ms. Si comprendes la fragilidad del DNS, también entenderás los riesgos en esta etapa.
Paso 3: establecimiento de la conexión TCP - handshake de tres vías
Una vez conocida la dirección IP, el navegador establece una conexión TCP al puerto 443 del servidor. Se realiza el handshake de tres vías (3-way handshake) de TCP:
- SYN: cliente → servidor "quiero conectarme"
- SYN-ACK: servidor → cliente "entendido, yo también estoy listo"
- ACK: cliente → servidor "confirmado, iniciamos la comunicación"
Estos 3 intercambios consumen 1 RTT (Round Trip Time). Desde Tokio a un servidor en Los Ángeles, son aproximadamente 100 ms. La latencia que puedes verificar con traceroute tiene un impacto directo aquí.
Paso 4: handshake TLS - establecimiento de la comunicación cifrada
En el caso de HTTPS, se construye una capa de cifrado TLS sobre la conexión TCP. En TLS 1.3 se realizan los siguientes procesos:
- ClientHello: el cliente envía las suites de cifrado compatibles, la versión TLS y un valor aleatorio
- ServerHello: el servidor selecciona la suite de cifrado y envía el certificado TLS
- Verificación del certificado: el navegador verifica la validez del certificado (confiabilidad de la CA emisora, fecha de expiración, coincidencia del nombre de dominio)
- Intercambio de claves: se genera una clave de cifrado compartida mediante el intercambio de claves Diffie-Hellman
En TLS 1.3, el handshake se ha optimizado para completarse en 1 RTT (en TLS 1.2 se necesitaban 2 RTT). Además, para reconexiones a servidores previamente visitados, es posible el 0-RTT (zero round trip).
Paso 5: envío de la solicitud HTTP
Una vez establecida la conexión cifrada, el navegador envía la solicitud HTTP:
GET / HTTP/2Host: example.comUser-Agent: Mozilla/5.0 ...Accept: text/htmlAccept-Language: ja,enAccept-Encoding: gzip, br
Esta solicitud incluye información como el tipo de navegador, los formatos de contenido aceptados, la configuración de idioma y las cookies.
Paso 6: procesamiento del servidor y respuesta
El servidor recibe la solicitud, genera el HTML y lo devuelve. Un sitio estático devuelve el archivo directamente, mientras que un sitio dinámico consulta la base de datos a través del servidor de aplicaciones para generar el HTML.
La respuesta incluye un código de estado HTTP (200 OK, 301 redirección, 404 Not Found, etc.) y encabezados de seguridad.
Paso 7: renderizado - de HTML a píxeles
Desde que el navegador recibe el HTML hasta que la página se muestra, se realizan múltiples procesos:
- Análisis HTML: convierte el HTML en un árbol DOM (Document Object Model)
- Análisis CSS: convierte el CSS en CSSOM (CSS Object Model)
- Construcción del árbol de renderizado: combina DOM y CSSOM para construir el árbol de elementos a mostrar en pantalla
- Layout: calcula la posición y el tamaño de cada elemento
- Pintado: convierte cada elemento en píxeles y los dibuja en pantalla
Durante este proceso, si se necesitan recursos adicionales (CSS, JavaScript, imágenes, fuentes), se repite el ciclo de resolución DNS → conexión TCP → handshake TLS → solicitud HTTP para cada uno (en HTTP/2, las conexiones al mismo dominio se pueden multiplexar, mejorando la eficiencia).
Resumen - la culminación tecnológica comprimida en menos de 1 segundo
El proceso desde que escribes una URL hasta que la página se muestra atraviesa prácticamente todas las tecnologías principales de internet: DNS, TCP, TLS, HTTP y el renderizado HTML/CSS. Cada paso presentado en este artículo es un campo tecnológico independiente, cada uno con una profunda historia y filosofía de diseño.
Cuando accedas a IP Check-san, abre la pestaña "Red" de las herramientas de desarrollo del navegador (F12). Podrás visualizar el tiempo empleado en cada etapa: resolución DNS, conexión TCP, handshake TLS y solicitud HTTP.