Quando você entra em um endereço da web (URL) no seu navegador e pressiona a Enter, uma série complexa de eventos se desenrola:
1.
Pesquisa de DNS: O navegador primeiro verifica seu cache para o endereço IP associado ao nome do domínio (por exemplo, `www.example.com`). Se não for encontrado, ele consulta um servidor DNS (Sistema de Nome de Domínio). Este servidor procura recursivamente o servidor DNS autoritário que conhece o endereço IP para esse domínio. O processo continua até que o endereço IP seja encontrado.
2.
conexão tcp: O navegador estabelece uma conexão TCP (Protocolo de Controle de Transmissão) com o servidor da Web no endereço IP descoberto. Isso envolve um aperto de mão de três vias para garantir uma conexão confiável.
3.
solicitação http: Depois que a conexão é estabelecida, o navegador envia uma solicitação HTTP (Hypertext Transfer Protocol) para o servidor. Esta solicitação inclui o URL, o método HTTP (normalmente GET), a versão HTTP e outros cabeçalhos que fornecem informações sobre o navegador e o recurso solicitado.
4.
Processamento do servidor: O servidor da Web recebe a solicitação, o processa e recupera o recurso solicitado (por exemplo, um arquivo HTML, imagem ou script). Isso pode envolver a consulta de um banco de dados, executando o código do servidor ou simplesmente servir um arquivo estático.
5.
Resposta HTTP: O servidor envia de volta uma resposta HTTP ao navegador. Esta resposta inclui:
*
Código de status: Um código de três dígitos indicando o sucesso ou falha da solicitação (por exemplo, 200 OK, 404 não encontrado).
*
cabeçalhos: Metadados sobre a resposta, como o tipo de conteúdo (por exemplo, texto/html, imagem/jpeg), o comprimento do conteúdo e as instruções de armazenamento em cache.
*
corpo: O conteúdo solicitado real (por exemplo, o código -fonte HTML de uma página da Web).
6.
Renderização do navegador: O navegador recebe a resposta e analisa o HTML. Em seguida, ele renderiza o conteúdo na tela, buscando e exibindo quaisquer recursos vinculados (imagens, CSS, JavaScript) ao longo do caminho. Isso envolve layout, pintura e potencialmente executando o código JavaScript.
7.
Fechamento de conexão: Depois que o navegador recebe e renderizou a página, a conexão TCP está fechada. No entanto, o navegador pode manter a conexão aberta por um curto período de tempo para melhorar a eficiência para solicitações subsequentes no mesmo site.
Essas etapas acontecem muito rapidamente, geralmente dentro de um segundo ou dois, dando a impressão de acesso instantâneo à página da web. No entanto, as condições da rede, a carga do servidor e a complexidade da página da web podem afetar significativamente o tempo necessário.