"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Qué sucede cuando ingresas &#google.com&#?

¿Qué sucede cuando ingresas &#google.com&#?

Publicado el 2024-11-04
Navegar:957

What Happens When You Enter

¿Alguna vez te has preguntado acerca de la compleja serie de eventos que ocurren en la fracción de segundo entre escribir "google.com" en tu navegador y ver aparecer la conocida página de búsqueda? En esta exploración detallada, descubriremos el fascinante mundo de las tecnologías web, los protocolos de red y la intrincada danza de datos que hace posible nuestras experiencias en línea.

1. El viaje comienza: su navegador y sistema operativo

1.1 Primeros pasos del navegador

Cuando escribes "google.com" y presionas Enter, tu navegador entra en acción:

  1. Análisis de URL: el navegador primero analiza la URL que ingresó. Identifica el protocolo (en este caso, implícito "http://" o "https://"), el nombre de dominio ("google.com") y cualquier ruta adicional o parámetro de consulta (ninguno en este ejemplo simple). .

  2. Comprobación HSTS: para sitios web preocupados por la seguridad como Google, el navegador comprueba su lista HTTP Strict Transport Security (HSTS). Si google.com está en esta lista (que lo está), el navegador actualiza automáticamente la solicitud a HTTPS.

  3. Verificación de caché: antes de conectarse a la red, el navegador verifica su caché local. Este caché almacena información de visitas anteriores, que incluyen:

    • Caché DNS: la dirección IP asociada con google.com
    • Caché de recursos: HTML, CSS, archivos JavaScript e imágenes de la página de inicio de Google

Si se encuentra alguno de estos y aún es válido (no ha caducado), el navegador puede omitir algunos de los siguientes pasos.

1.2 Función del sistema operativo

Si el navegador no puede encontrar la información necesaria en su caché, recurre al sistema operativo (OS) en busca de ayuda:

  1. Verificación del archivo de hosts: el sistema operativo primero busca en el archivo "hosts" local. Este archivo puede asignar nombres de dominio a direcciones IP, evitando potencialmente la búsqueda de DNS. Sin embargo, para la mayoría de los usuarios, google.com no estará en este archivo.

  2. Caché del cliente DNS: el sistema operativo mantiene su propio caché DNS, separado del del navegador. Se comprueba aquí a continuación.

  3. Configuración del solucionador: Si la IP no está en el caché local, el sistema operativo se prepara para solicitar un servidor DNS. Lee su configuración de red para saber qué servidor DNS consultar (normalmente proporcionado por su proveedor de servicios de Internet o configurado manualmente).

2. Resolución DNS: encontrar la dirección de Google

Si la dirección IP de google.com no está almacenada en caché, debemos solicitarle al Sistema de nombres de dominio (DNS) que traduzca el "google.com" legible por humanos a una dirección IP utilizable por máquina.

2.1 La jerarquía DNS

DNS está organizado en una estructura jerárquica:

  1. Servidores raíz: en la parte superior de la jerarquía. Saben dónde encontrar servidores autorizados para dominios de nivel superior (TLD) como .com, .org, .net, etc.

  2. Servidores TLD: Estos servidores conocen todos los dominios registrados bajo su TLD. El servidor de TLD .com conoce google.com.

  3. Servidores de nombres autorizados: Estos son responsables de saber todo sobre un dominio específico, incluidas sus direcciones IP.

2.2 El proceso de consulta de DNS

  1. Resolvedor recursivo: el servidor DNS de su ISP (u otro solucionador configurado) recibe la consulta para google.com. Si no tiene la respuesta en caché, inicia un proceso recursivo:
  • Pregunta a un servidor raíz sobre .com
  • El servidor raíz lo refiere a un servidor TLD .com
  • Pregunta al servidor TLD .com sobre google.com
  • El servidor .com lo remite a los servidores de nombres autorizados de Google
  • Pide al servidor de nombres de Google la IP de google.com
  • El servidor de nombres de Google responde con la dirección IP
  1. Almacenamiento en caché: cada paso de este proceso puede implicar el almacenamiento en caché, por lo que no siempre es necesario el recorrido completo. El solucionador almacena en caché el resultado final, normalmente durante un tiempo especificado por Google (el tiempo de vida o TTL).

  2. Equilibrio de carga: Los grandes servicios como Google suelen devolver varias direcciones IP. Esto permite el equilibrio de carga y una mayor confiabilidad.

2.3 Ejemplo de búsqueda de DNS

Digamos que la búsqueda de DNS devuelve el siguiente resultado (simplificado):

google.com.     300    IN    A     172.217.167.78

Esto significa:

  • El dominio es google.com
  • El registro tiene un TTL de 300 segundos (5 minutos)
  • Es un registro de Internet (IN)
  • Es un tipo de registro de Dirección (A)
  • La dirección IP es 172.217.167.78

3. Estableciendo una conexión: TCP/IP

Ahora que tenemos la dirección IP de Google, es momento de establecer una conexión.

3.1 La pila TCP/IP

  1. Capa de aplicación: Su navegador opera aquí, usando HTTP(S) para comunicarse.

  2. Capa de transporte: TCP se utiliza aquí para garantizar la entrega confiable y ordenada de datos.

  3. Capa de Internet: IP se utiliza para enrutar paquetes entre redes.

  4. Capa de enlace: Maneja la transmisión física de datos, ya sea a través de Ethernet, Wi-Fi, redes celulares, etc.

3.2 El protocolo de enlace TCP

Para establecer una conexión, se produce un protocolo de enlace de tres vías:

  1. SYN: Su computadora envía un paquete SYN (sincronización) al servidor de Google.
  2. SYN-ACK: el servidor de Google responde con un paquete SYN-ACK.
  3. ACK: Su computadora envía un paquete ACK (confirmación).

Este proceso establece números de secuencia para la conversación, lo que garantiza que los paquetes se puedan ordenar correctamente y que cualquier paquete perdido se pueda detectar y retransmitir.

3.3 Apretón de manos TLS

Para las conexiones HTTPS (que utiliza Google), se produce un protocolo de enlace TLS (Seguridad de la capa de transporte) adicional:

  1. Hola del cliente: Su navegador envía versiones SSL/TLS compatibles, conjuntos de cifrado y un número aleatorio.
  2. Hola del servidor: El servidor elige la versión SSL/TLS y el conjunto de cifrado, envía su certificado y otro número aleatorio.
  3. Autenticación: Su navegador verifica el certificado del servidor con una autoridad certificadora confiable.
  4. Intercambio de claves: Se establece una clave simétrica segura para cifrar la sesión.

4. Solicitud HTTP: solicitar la página

Con una conexión segura establecida, su navegador envía una solicitud HTTP GET para la página de inicio de Google.

4.1 Ejemplo de solicitud HTTP

GET / HTTP/2
Host: www.google.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.0
Accept: text/html,application/xhtml xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Upgrade-Insecure-Requests: 1

Esta solicitud incluye:

  • El método (GET) y la ruta (/) que estamos solicitando
  • La versión HTTP (HTTP/2)*
  • Varios encabezados que brindan información sobre el navegador y sus capacidades. *Nota: HTTP/2 se refiere únicamente a HTTPS, no a la conexión http. Esta solicitud se envía a través de una conexión HTTPS ya establecida, aunque los encabezados no mencionen explícitamente HTTPS.

5. Procesamiento del servidor: Google responde

Los servidores de Google reciben esta solicitud y la procesan. Esto podría implicar:

  1. Equilibrio de carga: Distribuir la solicitud entre muchos servidores.
  2. Servidores de aplicaciones: ejecutando código para generar una respuesta.
  3. Consultas de bases de datos: Obteniendo datos personalizados o sugerencias de búsqueda.
  4. Almacenamiento en caché: Recuperar contenido generado previamente cuando sea posible.

6. Respuesta HTTP: envío de la página

El servidor de Google devuelve una respuesta HTTP, que podría verse así:

HTTP/2 200 OK
Content-Type: text/html; charset=UTF-8
Date: Sat, 21 Sep 2024 12:00:00 GMT
Expires: Sat, 21 Sep 2024 12:00:00 GMT
Cache-Control: private, max-age=0
Server: gws
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN
[... other headers ...]



  
    
    Google
    [... rest of the HTML ...]
  
  
    [... body content ...]
  

Esta respuesta incluye:

  • Código de estado (200 OK)
  • Varios encabezados que proporcionan metadatos sobre la respuesta
  • El contenido HTML de la página

7. Renderizado: Dar vida a la página

Su navegador ahora tiene el contenido HTML y comienza a mostrar la página:

  1. Análisis de HTML: el navegador analiza el HTML y crea el modelo de objetos de documento (DOM).

  2. Solicitud de recursos adicionales: a medida que encuentra enlaces a CSS, JavaScript, imágenes, etc., envía solicitudes HTTP adicionales para estos recursos.

  3. Análisis de CSS: el navegador analiza CSS y aplica estilos a los elementos DOM, creando el modelo de objetos CSS (CSSOM).

  4. Ejecutando JavaScript: El navegador ejecuta JavaScript, que puede modificar el DOM y CSSOM.

  5. Representación: el navegador utiliza el DOM y CSSOM final para representar la página en su pantalla.

Conclusión

Lo que parece una acción simple (escribir "google.com" y presionar Enter) en realidad implica una serie compleja de pasos, desde búsquedas de DNS y protocolos de red hasta procesamiento del lado del servidor y representación del lado del cliente. Este complejo baile ocurre en apenas milisegundos y muestra la increíble ingeniería que impulsa nuestras experiencias en línea.

Comprender estos procesos no solo satisface nuestra curiosidad, sino que también ayuda a los desarrolladores web y profesionales de TI a optimizar sitios web, solucionar problemas y crear aplicaciones web más eficientes y seguras. La próxima vez que navegues por un sitio web, tómate un momento para apreciar las maravillas tecnológicas que funcionan detrás de escena para llevar la Web a tu pantalla.


Las imágenes de este blog son generadas por IA.

Lea también HTTP vs HTTPS, cuál es la diferencia entre ellos

Declaración de liberación Este artículo se reproduce en: https://dev.to/yashrajxdev/what-happens-when-you-enter-googlecom-a-deep-dive-into-the-internets-inner-workings-1aoi?1Si hay alguno infracción, comuníquese con [email protected] para eliminar
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3