Ответ
Процесс загрузки страницы — это последовательность сетевых и вычислительных операций:
- DNS-запрос (DNS Lookup): Браузер преобразует доменное имя (например,
example.com) в IP-адрес сервера. - Установка TCP-соединения (TCP Handshake): Происходит «рукопожатие» по протоколу TCP (
SYN→SYN-ACK→ACK) для установки надежного канала связи. - Установка безопасного соединения (TLS Handshake): Для HTTPS клиент и сервер договариваются о ключах шифрования.
- Отправка HTTP-запроса: Браузер отправляет HTTP-запрос (например,
GET) на сервер.GET /index.html HTTP/1.1 Host: example.com User-Agent: Mozilla/5.0 - Обработка запроса сервером: Сервер (бэкенд, база данных) формирует ответ.
-
Получение HTTP-ответа: Сервер возвращает данные (HTML, статус-код, заголовки).
HTTP/1.1 200 OK Content-Type: text/html <!DOCTYPE html><html>...</html> - Парсинг и рендеринг в браузере:
- Построение DOM-дерева из HTML.
- Построение CSSOM-дерева из CSS.
- Объединение DOM и CSSOM в дерево рендеринга (Render Tree).
- Расчет макета (Layout) и отрисовка пикселей (Paint).
Ключевой момент: Браузер может параллельно загружать ресурсы (CSS, JS, изображения), но выполнение JavaScript часто блокирует парсинг HTML.