В ночных сборках Firefox появилась поддержка HTTP/3

Понедельник, 4 ноября 2019 г.

Следите за нами в ВКонтакте, Facebook'e и Twitter'e

В ночные сборки Firefox, которые лягут в основу выпуска Firefox 72, запланированного на 7 января, добавлена поддержка протокола HTTP/3. По умолчанию HTTP/3 отключён и требует активации опции «network.http.http3.enabled» в about: config.

Поддержка HTTP/3 в Firefox основана на развиваемом компанией Mozilla проекте neqo, предоставляющем реализацию клиента и сервера для протокола QUIC. Код компонентов для поддержки HTTP/3 и QUIC написан на языке Rust. Из клиентского ПО экспериментальная поддержка HTTP/3 также уже добавлена в Chrome и curl, а для серверов доступна в форме модуля для nginx и тестового сервера на базе библиотеки quiche (реализация QUIC и HTTP/3 на языке Rust от компании Cloudflare). Для проверки работы клиентов HTTP/3 запущено несколько тестовых сайтов, большая часть из которых пока корректно не открывается в Firefox (HTTP/3 находится на стадии черновой спецификации и окончательно не стандартизирован).

Напомним, что HTTP/3 стандартизирует использование протокола QUIC в качестве транспорта для HTTP/2. Протокол QUIC (Quick UDP Internet Connections) c 2013 года развивается компанией Google в качестве альтернативы связке TCP+TLS для Web, решающей проблемы с большим временем установки и согласования соединений в TCP и устраняющей задержки при потере пакетов в процессе передачи данных. QUIC представляет собой надстройку над протоколом UDP, поддерживающую мультиплексирование нескольких соединений и обеспечивающую методы шифрования, эквивалентные TLS/SSL.

Основные особенности QUIC:

Высокая безопасность, аналогичная TLS (по сути QUIC предоставляет возможность использования TLS поверх UDP);
Контроль за целостностью потока, предотвращающий потерю пакетов;
Возможность мгновенно установить соединение (0-RTT, примерно в 75% случаях данные можно передавать сразу после отправки пакета установки соединения) и обеспечить минимальные задержки между отправкой запроса и получением ответа (RTT, Round Trip Time);
Не использование при повторной передаче пакета того же номера последовательности, что позволяет избежать двусмысленности при определении полученных пакетов и избавиться от таймаутов;
Потеря пакета влияет на доставку только связанного с ним потока и не останавливает доставку данных в параллельно передаваемых через текущее соединение потоках;
Средства коррекции ошибок, минимизирующие задержки из-за повторной передачи потерянных пакетов. Использование специальных кодов коррекции ошибок на уровне пакета для сокращения ситуаций, требующих повторной передачи данных потерянного пакета.
Границы криптографических блоков выравнены с границами пакетов QUIC, что уменьшает влияние потерь пакетов на декодирование содержимого следующих пакетов;
Отсутствие проблем с блокировкой очереди TCP;
Поддержка идентификатора соединения, позволяющего сократить время на установку повторного соединения для мобильных клиентов;
Возможность подключения расширенных механизмов контроля перегрузки соединения;
Использование техники прогнозирования пропускной способности в каждом направлении для обеспечения оптимальной интенсивности отправки пакетов, предотвращая скатывание в состояние перегрузки, при которой наблюдается потеря пакетов;
Заметный прирост производительности и пропускной способности, по сравнению с TCP. Для видеосервисов, таких как YouTube, применение QUIC показало сокращение операций повторной буферизации при просмотре видео на 30%.

Источник: http://www.opennet.ru/opennews/art.shtml? num=51807

Следите за нами в ВКонтакте, Facebook'e и Twitter'e


Просмотров: 599
Рубрика: Hi-Tech


Архив новостей / Экспорт новостей

Ещё новости по теме:

RosInvest.Com не несет ответственности за опубликованные материалы и комментарии пользователей. Возрастной цензор 16+.

Ответственность за высказанные, размещённую информацию и оценки, в рамках проекта RosInvest.Com, лежит полностью на лицах опубликовавших эти материалы. Использование материалов, допускается со ссылкой на сайт RosInvest.Com.

Архивы новостей за: 2018, 2017, 2016, 2015, 2014, 2013, 2012, 2011, 2010, 2009, 2008, 2007, 2006, 2005, 2004, 2003