Sobes.tech
Middle

O que acontece quando você digita um endereço no navegador, por exemplo, google.com?

sobes.tech IA

Resposta da IA

  1. Análise da URL: O navegador divide a URL em partes componentes: o protocolo (HTTP/HTTPS), o nome de domínio (google.com) e o caminho (/).

  2. Procura do endereço IP:

    • O navegador verifica o seu cache DNS.
    • O sistema operativo verifica o seu cache DNS.
    • O sistema solicita ao servidor DNS (normalmente fornecido pelo provedor).
    • O servidor DNS faz consultas recursivas aos servidores DNS raiz, TLD e autoritativos até encontrar o endereço IP de google.com.
    • O endereço IP é devolvido ao navegador.
  3. Estabelecimento da conexão TCP:

    • O navegador estabelece uma conexão TCP com o servidor na IP encontrada, usando o aperto de mão de três vias (SYN, SYN-ACK, ACK).
  4. Aperto de mão SSL/TLS (para HTTPS):

    • O cliente e o servidor concordam os algoritmos de encriptação.
    • O servidor envia o seu certificado.
    • O navegador verifica o certificado.
    • As partes trocam chaves de encriptação para uma comunicação segura.
  5. Envio da requisição HTTP: O navegador envia uma requisição HTTP ao servidor, contendo o método (GET), o caminho, os cabeçalhos (Host, User-Agent, Accept, etc.) e, possivelmente, o corpo da requisição.

    GET / HTTP/1.1  
    Host: google.com  
    User-Agent: Mozilla/5.0 (...)  
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8  
    
  6. Processamento da requisição pelo servidor:

    • O servidor aceita a requisição.
    • O servidor processa a requisição (por exemplo, executa a lógica da aplicação).
    • O servidor gera a resposta HTTP.
  7. Receção da resposta HTTP: O navegador recebe a resposta HTTP do servidor, contendo o código de estado (por exemplo, 200 OK), os cabeçalhos (Content-Type, Content-Length, etc.) e o corpo da resposta (página HTML, imagens, CSS, JS, etc.).

    HTTP/1.1 200 OK  
    Content-Type: text/html; charset=UTF-8  
    Content-Length: XXXX  
    ...  
    
    <!doctype html>...  
    
  8. Renderização da página:

    • O navegador começa a analisar o código HTML.
    • Ao detectar links para CSS, JavaScript ou imagens, o navegador faz requisições adicionais para obtê-los (os passos 2-7 são repetidos para cada recurso).
    • O navegador constrói a árvore DOM (Document Object Model) a partir do HTML.
    • O navegador constrói a árvore CSSOM (CSS Object Model) a partir do CSS.
    • O navegador constrói a árvore de renderização, combinando DOM e CSSOM.
    • O navegador executa JavaScript (pode modificar DOM e CSSOM).
    • O navegador calcula o layout dos elementos na página (Layout).
    • O navegador pinta os elementos na tela (Painting).