'
Смирнов И.А., Михайлов М.Ю., Лаптева М.Г.
HTTP/3 И ПРОТОКОЛ QUIC: БУДУЩЕЕ ВЫСОКОПРОИЗВОДИТЕЛЬНЫХ ВЕБ-СЕРВИСОВ *
Аннотация:
в статье рассматриваются новые протоколы HTTP/3 и его транспорт QUIC, призванные повысить скорость и надёжность веб-сервисов. Проводится сравнительный анализ HTTP/3 и HTTP/2, а также QUIC и TCP. Также обсуждаются сложности развёртывания и перспективы дальнейшего развития протоколов.
Ключевые слова:
веб сервисы, транспортный протокол, мультиплексирование, мобильные сети, интернет-протоколы, сетевые технологии, сетевые задержки, устойчивость соединений
P/3 И ПРОТОКОЛ QUIC: БУДУЩЕЕ ВЫСОКОПРОИЗВОДИТЕЛЬНЫХ ВЕБ-СЕРВИСОВ WWАннотация: в статье рассматриваются новые протоколы HTTP/3 и его транспорт QUIC, призванные повысить скорость и надёжность веб-сервисов. Проводится сравнительный анализ HTTP/3 и HTTP/2, а также QUIC и TCP. Также обсуждаются сложности развёртывания и перспективы дальнейшего развития протоколов.Ключевые слова: веб сервисы, транспортный протокол, мультиплексирование, мобильные сети, интернет-протоколы, сетевые технологии, сетевые задержки, устойчивость соединений.TTПротокол HTTP лежит в основе передачи данных в сети Интернет и применяется во множестве веб-сервисов. Развитие требований к быстродействию привело к эволюции HTTP: после HTTP/1.1 был предложен HTTP/2 с поддержкой мультиплексирования нескольких запросов в одном соединении, что значительно сократило необходимость устанавливать множество отдельных TCP-сессий. Однако HTTP/2 сохраняет базовый транспорт TCP, а значит подвержен его ограничениям. В частности, при потере пакета TCP-базовое мультиплексирование вызывает задержку всего потока данных («head-of-line blocking»). Кроме того, традиционное соединение требовало многократных рукопожатий (TCP + [отдельный TLS) при установлении новых сессий, что добавляло задержку при каждом подключении [1, 4].HTTP/3 – это третья версия протокола HTTP, стандартизируемая IETF с 2018 года. По замыслу авторов, HTTP/3 обеспечивает улучшения в производительности и безопасности по сравнению с HTTP/2. Ключевое отличие HTTP/3 – замена транспортного протокола TCP на новый транспорт QUIC поверх UDP. Кроме того, HTTP/3 внедряет более эффективное сжатие заголовков и изначально предусматривает TLS 1.3 для шифрования данных. Протокол QUIC, изначально разработанный Google, сочетает в себе функции транспорта и криптографии: он обеспечивает надёжную доставку, управление потоком и congestion control (управление перегрузкой канала), а также встроенное шифрование на основе TLS 1.3. Таким образом, HTTP/3 по QUIC призван ликвидировать основные узкие места предыдущих версий – длительные настройки соединения и блокировку потоков при потере пакетов – и тем самым повысить скорость и надёжность веб-сервисов [2, 3].HTTP/2 значительно ускорил загрузку страниц за счет мультиплексирования нескольких запросов в одном TCP-соединении. Однако при этом все HTTP-потоки по-прежнему передаются по одному TCP-туннелю: если в результате сетевой потери один из пакетов теряется, то и все остальные потоки «замораживаются» до повторной передачи этого пакета. Это явление, называемое head-of-line blocking, ограничивает эффективность HTTP/2 на нестабильных сетях и сетях с высокой задержкой [5]. Кроме того, трехстороннее рукопожатие у TCP и дополнительное рукопожатие у TLS добавляют несколько RTT (round-trip time) при каждом новом соединении.В HTTP/3 транспортная логика выведена на новый уровень. HTTP/3 сохраняет семантику HTTP поверх QUIC, вместо TCP. QUIC строится поверх UDP и предоставляет независимое мультиплексирование потоков данных: каждый HTTP-поток сопоставляется отдельному QUIC-потоку. В результате потеря пакетов в одном потоке не задерживает другие потоки, устраняя проблему блокировки «первого в очереди».Таблица 1. Сравнение характеристик HTTP/2 и HTTP/3.QUIC по сути является эволюцией TCP, реализованной на базе UDP в пространстве пользовательского процесса. Во-первых, QUIC объединяет рукопожатие транспорта и криптографии в один протокол (через TLS 1.3), что позволяет устанавливать безопасное соединение за 1–2 RTT (при повторном соединении возможно уложиться в 0 RTT). Для сравнения, TCP с TLS 1.2 обычно требуют не менее 2 RTT (трехстороннее рукопожатие TCP и рукопожатие TLS). Это сокращает задержку на установку соединения, особенно в ситуациях с доступом к серверу за океаном.Во-вторых, QUIC устраняет одну из ключевых проблем TCP: за счет управляемых в пользовательском пространстве буферов и отдельной обработки потоков QUIC не страдает от глобальной последовательной доставки. QUIC разрешает проблему блокировки в начале линии (head-of-line blocking) благодаря тому, что потоки данных передаются независимо друг от друга и не мешают друг другу. Кроме того, QUIC предоставляет улучшенные механизмы восстановления ошибок и контроля перегрузки, что повышает устойчивость передачи при потере пакетов.В-третьих, QUIC обеспечивает расширенные возможности безопасности и конфиденциальности. По сравнению с TCP+TLS, где некоторые метаданные остаются доступными для сетевых устройств, в QUIC шифруются практически все поля пакета за исключением самой базовой обёртки UDP. Как отмечает Internet Society, благодаря более широкому шифрованию QUIC становится менее подвержен атакам за счет уязвимости метаданных и «устаревает» медленнее – изменение протокола не зависит от обновления сотен тысяч роутеров и брандмауэров, которые уже не могут читать и перенастраивать QUIC-заголовки.Наконец, QUIC вводит поддержку миграции соединений при смене сети, например переход между сотовой сетью и Wi-Fi, за счет использования идентификатора соединения. При смене IP-адреса клиент может продолжить передачу по тому же логическому соединению, сохранив контекст и состояние, тогда как TCP-соединение было бы разорвано.Протоколы HTTP/3 и QUIC дают комплекс технических преимуществ:Ускорение установления соединения. Благодаря встроенному TLS 1.3 в QUIC и сокращению числа RTT, HTTP/3 соединение запускается быстрее [6]. По оценке CloudPanel, соединение через QUIC может устанавливаться до 33% быстрее по сравнению с HTTP/2 по TCP. Это особенно важно для мобильных приложений и часто подключающихся клиентов [9].Эффективное мультиплексирование и отсутствие блокировки. В HTTP/3 каждый HTTP-запрос идёт в свой поток QUIC. Это означает, что один «зависший» пакет на одном потоке не останавливает другие. Как правило, при потере пакета QUIC сразу ретранслирует его только в рамке своего потока, а остальные продолжают поступать клиенту. Такая изоляция потоков существенно повышает производительность в ненадёжных сетях с потерями пакетов или высокой задержкой.Приоритизация потоков. HTTP/3 сохраняет механизм приоритизации, но делает его более гибким. Например, Cloudflare совместно с IETF разработала расширяемую систему приоритетов HTTP/3, позволяющую оптимально распределять пропускную способность между критичными ресурсами страницы. По оценке Cloudflare, корректная расстановка приоритетов по HTTP/3 может ускорить загрузку страниц до 37%.Отказоустойчивость и миграция соединения. QUIC поддерживает переключение сети в процессе сеанса (концепция connection migration). Мобильный клиент может без разрыва соединения переходить из сотовой сети на Wi-Fi, продолжая ту же QUIC-сессию. Это важно для стабильности приложений при использовании на мобильных устройствах.Повышенная безопасность и приватность. Как уже отмечалось, QUIC по умолчанию шифрует больше полей, чем классический TCP+TLS, что усложняет прослушивание и вмешательство третьих лиц. Используется только актуальный протокол шифрования (TLS 1.3 и выше), что исключает проблемы с недостаточной криптографической безопасностью. Также встроены анти-D_DoS механизмы (например, защита от перезапущенных пакетов) и ускоренный обмен ключами.Ранние эксперименты и измерения показывают, что преимущества HTTP/3 и QUIC заметнее всего в неблагоприятных условиях сети. Исследование Trevisan et al. (2021) показало, что сайты с HTTP/3 демонстрируют значительный прирост производительности только при высоких задержках или низкой полосе пропускания сети. При хорошей сети выигрыш менее ощутим. Исследователи отметили, что многие сайты, объявившие поддержку HTTP/3, всё ещё загружают большую часть контента по предыдущим стандартам HTTP, что нивелирует потенциал ускорения.В реальных условиях крупнейшие провайдеры уже фиксируют улучшения. Например, по анализу Cloudflare, при включённом HTTP/3 по QUIC 95-ый перцентиль установления соединения примерно на 116 мс ниже, чем при HTTP/2 по TCP.В целом, хотя конкретные цифры зависят от сценариев, можно констатировать, что HTTP/3 и QUIC дают ощутимую выгоду для производительности, особенно для распределённых сервисов с глобальным покрытием (межконтинентальные подключения, мобильные пользователи и т.д.).Например, в сервисах «ВКонтакте» активно используется HTTP/3 по QUIC. Платформа VK Видео (включая короткие ролики VK Клипсы) перешла на передачу видео через HTTP/3 – по данным компании, это ускорило запуск видео на 20–25% в мобильных сетях [7, 8].Несмотря на преимущества, при внедрении HTTP/3 и QUIC могут возникать трудности. Во-первых, сетевое оборудование традиционно ориентированно на TCP. Многие корпоративные и мобильные сети блокируют или ограничивают UDP-трафик, что может препятствовать работе QUIC. При взаимодействии с такими сетями может потребоваться настройка или переход на резервные протоколы.Во-вторых, требования к инфраструктуре: UDP-соединения хуже поддерживаются маршрутизаторами, поэтому системы балансировки нагрузки и anycast-маршрутизация должны быть адаптированы. Для решения такой проблемы операторы внедряют более продвинутые балансировщики, например, проект Katran.Также требуется обновление клиентского и серверного ПО: если браузер уже поддерживает HTTP/3, то у сервера должна быть подходящая версия SSL-модуля или прокси. Например, к середине 2025 г. даже cURL и некоторые библиотеки HTTP все ещё считают поддержку HTTP/3 экспериментальной, из-за чего разработчикам приходится следить за совместимостью.Наконец, большие выигрыши от HTTP/3 получают те приложения, у которых весь стек уже переведён на QUIC. Если же страница обращается к контенту на серверах, не поддерживающих HTTP/3, выигрыш уменьшается. Тем не менее стандартизация протокола завершена (опубликованы RFC 8999-9002 для QUIC в мае 2021 года и RFC 9114 для HTTP/3 в июне 2022 года), и экосистема продолжает развиваться.Появляются расширения – например, новая спецификация приоритетов HTTP/3 позволяет ещё более эффективно загружать ресурсы, а в работе находятся “QUIC multipath” и другие улучшения для мобильных сетей [9]. Всё это указывает на то, что в дальнейшем HTTP/3 и протоколы на его основе будут становиться «по умолчанию» для высокопроизводительных сервисов, решая всё новые задачи веб-оптимизации и безопасности.Протоколы HTTP/3 и QUIC представляют собой следующую ступень эволюции веб-технологий. По сравнению с HTTP/2 по TCP они обеспечивают более быстрое установление соединений, истинное параллельное мультиплексирование потоков без эффекта «первой потерянной» задержки и встроенную современную криптографию. Это позволяет веб-сервисам улучшать скорость отклика и надежность, особенно в сложных сетевых условиях. Крупные компании на практике подтверждают значительный эффект от перехода на HTTP/3 по QUIC.С другой стороны, внедрение новой архитектуры требует модернизации инфраструктуры и учёта ограничений UDP-сетей. Тем не менее успехи в стандартизации и первые примеры применения говорят о том, что HTTP/3 по QUIC готов стать базовым протоколом Интернета будущего. В будущем можно ожидать дальнейших оптимизаций – расширения приоритизации, поддержку многопутевого обмена, улучшения алгоритмов управления перегрузкой и безопасности. Таким образом, внедрение HTTP/3 и QUIC закладывает фундамент для более быстрого и надежного Интернета и будет играть ключевую роль в развитии высокопроизводительных веб-сервисов.
Номер журнала Вестник науки №6 (87) том 2
Ссылка для цитирования:
Смирнов И.А., Михайлов М.Ю., Лаптева М.Г. HTTP/3 И ПРОТОКОЛ QUIC: БУДУЩЕЕ ВЫСОКОПРОИЗВОДИТЕЛЬНЫХ ВЕБ-СЕРВИСОВ // Вестник науки №6 (87) том 2. С. 1780 - 1788. 2025 г. ISSN 2712-8849 // Электронный ресурс: https://www.вестник-науки.рф/article/24103 (дата обращения: 15.07.2025 г.)
Вестник науки © 2025. 16+
*