HTTP/3

Протоколы и стандарты
Версия HTTP, работающая поверх QUIC и уменьшающая задержки при установлении и поддержании соединения.
← Вернуться к глоссарию

Что такое HTTP/3?

HTTP/3 — третья основная версия HTTP, использующая QUIC вместо TCP в качестве транспортного протокола. Это устраняет блокировку потоков на уровне очереди, сокращает задержку установления соединения и повышает производительность в нестабильных сетях.

HTTP/3 и HTTP/2

ВозможностьHTTP/2HTTP/3
ТранспортTCPQUIC (поверх UDP)
TLSОтдельный уровеньВстроен в QUIC
РукопожатиеTCP + TLS (2–3 RTT)0–1 RTT
Блокировка потоков на уровне очередиНа уровне TCPУстранена
Перенос соединенияНе поддерживаетсяПоддерживается
Влияние потери пакетаБлокирует все потокиТолько соответствующий поток

Как работает HTTP/3

HTTP/2 over TCP:

Client Server

│─────────── SYN ────────────►│

│◄────────── SYN-ACK ─────────│

│─────────── ACK ────────────►│ TCP Handshake

│─────────── ClientHello ────►│

│◄────────── ServerHello ─────│ TLS Handshake

│─────────── Finished ───────►│

│◄────────── Finished ────────│

│─────────── HTTP Request ───►│ (3 RTT minimum)

HTTP/3 over QUIC:

Client Server

│─────── Initial + ClientHello ─►│

│◄────── Initial + ServerHello ──│

│─────── HTTP Request ──────────►│ (1 RTT)

With 0-RTT Resumption:

│─────── 0-RTT + HTTP Request ──►│ (0 RTT!)

Возможности протокола QUIC

ВозможностьПреимущество
На основе UDPИзбегает блокировки потоков на уровне TCP
Встроенный TLS 1.3Всегда шифруется, более быстрое рукопожатие
Идентификаторы соединенияСохраняются при смене IP-адреса
Мультиплексирование потоковНезависимая доставка потоков
Упреждающая коррекция ошибокСнижает потребность в повторной передаче

Перенос соединения

Mobile Network Switch (HTTP/2):

WiFi ──► Connection drops ──► New TCP connection ──► Start over

Mobile Network Switch (HTTP/3):

WiFi ──► Switch to cellular ──► Same QUIC connection continues

(Connection ID persists across IP changes)

Состояние внедрения

ПлатформаПоддержка HTTP/3
Chrome87+ (2020)
Firefox88+ (2021)
Safari14+ (2020)
Edge87+ (2020)
CloudflareПолная поддержка
AWS CloudFrontПолная поддержка
nginx1.25.0+ (экспериментальная)

Улучшения производительности

Лучшие практики

1. Разворачивайте параллельно с HTTP/2: браузеры корректно откатываются

2. Используйте заголовок Alt-Svc: объявляйте доступность HTTP/3

3. Правильно настройте UDP: убедитесь, что брандмауэры разрешают трафик QUIC

4. Контролируйте производительность: сравнивайте метрики разных версий протокола

5. Тестируйте мобильные сценарии: HTTP/3 особенно эффективен в сотовых сетях

Пример конфигурации сервера

# Alt-Svc header to advertise HTTP/3

Alt-Svc: h3=":443"; ma=86400

HTTP/3 — будущее веб-транспорта: он обеспечивает более быстрые и надёжные соединения, особенно для мобильных пользователей и пользователей сетей с высокой задержкой.

Применяйте эти знания на практике

Используйте API DomScan для проверки доступности доменов, их состояния и многого другого.