На замену TCP: обсуждение протокола QUIC

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


    / Unsplash / Sticker Mule

    Что такое QUIC


    Это — механизм передачи данных по сети, построенный на протоколе UDP. Позволяет сократить задержку соединения. В отличие от TCP, который использует принцип «тройного рукопожатия», в QUIC рукопожатие происходит в один этап со знакомым сервером и в два этапа с незнакомым.

    По сравнению с TCP QUIC также обладает большей пропускной способностью. Тесты показали 30-процентное снижение числа ребуферизаций при воспроизведении YouTube-видео.

    Какие документы обсуждают


    В 2018 году представители Инженерного совета интернета (IETF) отмечали, что QUIC готов для широкомасштабных тестов, но пока не может стать стандартом из-за ряда недостатков. За два года протокол доработали, и группа экспертов готовится оформить его в формате RFC.

    Дополнительное чтение из нашего блога на Хабре:


    В середине июня сопредседатель рабочей группы в IETF Лукас Пардью (Lucas Pardue) сообщил о начале последнего этапа обсуждения черновиков QUIC. Всего документов шесть, и они посвящены различным аспектам работы протокола:

    • QUIC Transport. Это — описание механизмов транспортного протокола QUIC: управление потоками передачи данных и обработки пакетов, согласование версий, открытие защищенного канала связи и обмен криптографическими ключами.
    • QUIC Loss Detection and Congestion Control. Содержит описание методов контроля целостности данных и перегрузки каналов связи.
    • Using TLS to Secure QUIC. Документ, посвященный использованию TLS для защиты QUIC. Есть информация об интерфейсах, работе с ключами и регистрах IANA.
    • Version-Independent Properties of QUIC. Здесь описаны свойства нового протокола, которые должны оставаться неизменными от версии к версии — например, заголовки.
    • HTTP/3. Документ, описывающий сопоставление семантики HTTP на QUIC.
    • QPACK Header Compression for HTTP/3. Документ посвящен формату сжатия заголовков QPACK — в частности, работе кодировщика и декодировщика.

    Обсуждение закончат на следующей неделе — 8 июля. Через какое-то время после этого спецификация QUIC получит одобрение IETF и будет опубликована. Принять участие в обсуждении могут все желающие — свои замечания и предложения можно оставить на GitHub.

    Сейчас ведется дискуссия, посвященная выбору между AAD или nonce. Но возвращаться к вопросам, по которым уже был достигнут консенсус, будут только по веским причинам.

    Кто уже внедряет протокол


    Несмотря на то что QUIC пока не является стандартом, его используют некоторые ИТ-компании. С ним начали работать CDN-сервисы, включая Cloudflare и Verizon Digital Media Services (VDMS).


    / Unsplash / Nathan Dumlao

    Экспериментальную поддержку HTTP/3 уже добавили в Chrome и Firefox. В последнем случае работа протокола строится на проекте Neqo (есть на GitHub). Это — реализация клиента и сервера для QUIC.

    Черновики IETF использовали и в NGINX — в середине июня компания представила превью-версию прокси-сервера с поддержкой QUIC и HTTP/3. В конце мая Microsoft также объявили, что открывают код библиотеки MsQuic с реализацией протокола. Библиотека кроссплатформенная — можно запустить на Windows и Linux, используя Schannel и OpenSSL соответственно (для TLS 1.3). Эксперты прогнозируют, что с принятием стандарта QUIC свои реализации выпустит еще больше компаний.

    О чем мы пишем в корпоративном блоге:

    VAS Experts
    Разработчик платформы глубокого анализа трафика

    Комментарии 1

      0

      QUIC конечно хорош, но вот оверхед в userspace будет очень ощутим на больших объемах — клиенты возможно этого не заметят, но вот нагрузка на CPU в серверах ощутимо возрастёт.


      Пока его не прикрутят в ядра, "замена TCP" будет дорого обходится, подозреваю что потери в производительности будут сравнимы с теми которые есть у OpenVPN.

      Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

      Самое читаемое