HTTP/2
Международный стандарт | RFC 9113 |
---|---|
Разработано | IETF |
Представлено | 14 мая 2015 г |
Заменено | HTTP/3 |
Веб-сайт | https://http2.github.io/ |
HTTP/2 (первоначально называвшийся HTTP/2.0 ) — это основная версия сетевого протокола HTTP, используемого во Всемирной паутине . Он был создан на основе более раннего экспериментального протокола SPDY , первоначально разработанного Google . [ 1 ] [ 2 ] HTTP/2 был разработан рабочей группой HTTP (также называемой httpbis, где « bis » означает «дважды») Инженерной рабочей группы Интернета (IETF). [ 3 ] [ 4 ] [ 5 ] HTTP/2 — это первая новая версия HTTP со времен HTTP/1.1, которая была стандартизирована в RFC 2068 в 1997 году. Рабочая группа представила HTTP/2 Руководящей группе по разработке Интернета (IESG) для рассмотрения в качестве предлагаемого стандарта в декабре 2014 года. [ 6 ] [ 7 ] и IESG одобрил его публикацию в качестве предлагаемого стандарта 17 февраля 2015 г. (и был обновлен в феврале 2020 г. в отношении TLS 1.3 и снова в июне 2022 г.). [ 8 ] [ 9 ] Первоначальная спецификация HTTP/2 была опубликована как RFC 7540 от 14 мая 2015 г. [ 10 ]
Усилия по стандартизации были поддержаны Chrome , Opera , Firefox , [ 11 ] Internet Explorer 11 , Safari , Amazon Silk и Edge . Браузеры [ 12 ] большинство основных браузеров добавили поддержку HTTP/2 . К концу 2015 года [ 13 ] Около 97% используемых веб-браузеров имеют такую возможность (и 100% веб-браузеров «отслеживаемых настольных компьютеров»). [ 13 ] По состоянию на июль 2023 г. [update]36% (после достижения чуть более 50%) из 10 миллионов лучших веб-сайтов поддерживают HTTP/2. [ 14 ]
Его преемником является HTTP/3 , основная версия, основанная на концепциях, установленных HTTP/2. [ 2 ] [ 15 ] [ 13 ] [ 16 ]
Цели
[ редактировать ]В уставе рабочей группы упоминается несколько целей и проблем, вызывающих обеспокоенность: [ 4 ]
- Создайте механизм согласования, который позволит клиентам и серверам выбирать использование HTTP/1.1, 2.0 или, возможно, других протоколов, отличных от HTTP.
- Поддерживайте высокий уровень совместимости с HTTP/1.1 (например, с методами , кодами состояния , URI и большинством полей заголовков ).
- Уменьшите задержку , чтобы улучшить скорость загрузки страниц в веб-браузерах, учитывая следующее:
- сжатие данных заголовков HTTP-
- HTTP/2-серверная рассылка
- приоритезация запросов
- мультиплексирование нескольких запросов через одно TCP- уровне HTTP-транзакции соединение (исправление проблемы блокировки начала строки на в HTTP 1.x)
- Поддержка распространенных существующих вариантов использования HTTP, таких как настольные веб-браузеры, мобильные веб-браузеры, веб-API, веб-серверы различных масштабов, прокси-серверы , обратные прокси- серверы, брандмауэры и сети доставки контента .
Отличия от HTTP/1.1
[ редактировать ]Предлагаемые изменения не требуют каких-либо изменений в работе существующих веб-приложений, но новые приложения могут использовать преимущества новых функций для повышения скорости. [ 17 ] HTTP/2 оставляет всю высокоуровневую семантику HTTP/1.1, такую как методы , коды состояния , поля заголовков и URI , одинаковыми. Новым является то, как данные формируются и передаются между клиентом и сервером. [ 17 ]
Эффективные веб-сайты сводят к минимуму количество запросов, необходимых для отображения всей страницы, путем минимизации (уменьшения объема кода и упаковки более мелких фрагментов кода в пакеты без снижения его работоспособности) таких ресурсов, как изображения и скрипты. Однако минификация не обязательно удобна и эффективна и может потребовать отдельных HTTP-соединений для получения страницы и минифицированных ресурсов. HTTP/2 позволяет серверу «пересылать» контент, то есть отвечать данными для большего количества запросов, чем запросил клиент. Это позволяет серверу предоставлять данные, которые, как он знает, потребуются веб-браузеру для отображения веб-страницы, не дожидаясь, пока браузер проверит первый ответ, и без затрат на дополнительный цикл запроса. [ 18 ]
Дополнительные улучшения производительности в первом проекте HTTP/2 (который был копией SPDY) связаны с мультиплексированием запросов и ответов, чтобы избежать некоторых проблем блокировки начала строки в HTTP 1 (даже при конвейерной обработки HTTP использовании заголовков ). сжатие и приоритезация запросов. [ 19 ] Однако, поскольку HTTP/2 работает поверх одного TCP-соединения, все еще существует вероятность возникновения блокировки начала линии, если TCP-пакеты потеряны или задерживаются в передаче. [ 20 ] HTTP/1.1 HTTP/2 больше не поддерживает механизм кодирования фрагментированной передачи , поскольку он предоставляет свои собственные, более эффективные механизмы потоковой передачи данных. [ 21 ]
История
[ редактировать ]Бытие и более поздние отличия от SPDY
[ редактировать ]SPDY (произносится как «скоростной») — предыдущий протокол замены HTTP, разработанный исследовательским проектом, возглавляемым Google . [ 22 ] В первую очередь ориентированный на уменьшение задержки, SPDY использует тот же TCP-канал, но разные протоколы для достижения этого сокращения. Основные изменения, внесенные в HTTP/1.1 для создания SPDY, включали «истинную конвейерную обработку запросов без ограничений FIFO, механизм формирования кадров сообщений для упрощения разработки клиента и сервера, обязательное сжатие (включая заголовки), планирование приоритетов и даже двустороннюю связь». [ 23 ]
Рабочая группа HTTP рассмотрела протокол Google SPDY, Microsoft предложение HTTP Speed+Mobility (на основе SPDY), [ 22 ] и сетевое обновление HTTP. [ 24 ] В июле 2012 года Facebook предоставил отзыв по каждому из предложений и рекомендовал использовать HTTP/2 на основе SPDY. [ 25 ] Первоначальный проект HTTP/2 был опубликован в ноябре 2012 года и был основан на прямой копии SPDY. [ 26 ]
Самая большая разница между HTTP/1.1 и SPDY заключалась в том, что каждому действию пользователя в SPDY присваивается «идентификатор потока», что означает, что существует один канал TCP, соединяющий пользователя с сервером. SPDY разделяет запросы на управление или данные, используя «простой для анализа двоичный протокол с двумя типами кадров». [ 23 ] [ 27 ] SPDY продемонстрировал очевидное улучшение по сравнению с HTTP: ускорение загрузки новой страницы составило от 11% до 47%. [ 28 ]
При разработке HTTP/2 SPDY использовался в качестве отправной точки. Среди множества детальных различий между протоколами наиболее примечательным является то, что HTTP/2 использует фиксированный алгоритм сжатия заголовков на основе кода Хаффмана вместо динамического сжатия на основе потоков SPDY. Это помогает снизить вероятность атак оракула на протокол со сжатием, таких как атака CRIME . [ 27 ]
9 февраля 2015 г. Google объявила о планах отказаться от поддержки SPDY в Chrome в пользу поддержки HTTP/2. [ 29 ] Это вступило в силу, начиная с Chrome 51. [ 30 ] [ 31 ]
Основные этапы развития
[ редактировать ]Дата | Веха [ 4 ] |
---|---|
20 декабря 2007 г. [ 32 ] [ 33 ] | Первая интернет-версия HTTP/1.1 |
23 января 2008 г. [ 34 ] | Первый Интернет-проект свойств безопасности HTTP |
Начало 2012 г. [ 35 ] | Прием предложений по HTTP 2.0 |
14 октября – 25 ноября 2012 г. [ 36 ] [ 37 ] | Последний звонок рабочей группы по пересмотру HTTP/1.1 |
28 ноября 2012 г. [ 38 ] [ 39 ] | Первый черновик HTTP 2.0, созданный рабочей группой, на основе Draft-mbelshe-httpbis-spdy-00. |
Удержано/Исключено | Последний звонок рабочей группы по свойствам безопасности HTTP |
Сентябрь 2013 г. [ 40 ] [ 41 ] | Отправьте версию HTTP/1.1 в IESG для рассмотрения в качестве предлагаемого стандарта. |
12 февраля 2014 г. [ 42 ] | IESG одобрил редакцию HTTP/1.1 для публикации в качестве предлагаемого стандарта |
6 июня 2014 г. [ 32 ] [ 43 ] | Опубликовать версию HTTP/1.1 как RFC 7230 , 7231 , 7232 , 7233 , 7234 , 7235 |
1 августа 2014 г. - 1 сентября 2014 г. [ 7 ] [ 44 ] | Рабочая группа «Последний звонок» для HTTP/2 |
16 декабря 2014 г. [ 6 ] | Отправьте HTTP/2 в IESG для рассмотрения в качестве предлагаемого стандарта. |
31 декабря 2014 г. – 14 января 2015 г. [ 45 ] | Последний звонок IETF для HTTP/2 |
22 января 2015 г. [ 46 ] | Телечат IESG рассмотрит HTTP/2 как предлагаемый стандарт |
17 февраля 2015 г. [ 8 ] | IESG одобрил публикацию HTTP/2 в качестве предлагаемого стандарта |
14 мая 2015 г. [ 47 ] | Опубликовать HTTP/2 как RFC 7540 |
февраль 2020 г. | RFC 8740 : HTTP/2 с TLS 1.3. |
июнь 2022 г. | RFC 9113 : Дальнейшие усовершенствования. |
апрель 2024 г. | Проблемы DOS с кадрами ПРОДОЛЖЕНИЯ https://kb.cert.org/vuls/id/421644 |
Шифрование
[ редактировать ]HTTP/2 определен как для URI HTTP (т. е. без шифрования TLS , конфигурация которого обозначается сокращенно h2c ), так и для URI HTTPS (через TLS с использованием ALPN) . расширения [ 48 ] где требуется TLS 1.2 или новее, конфигурация, которая обозначается сокращенно h2 ).
Хотя сам стандарт не требует использования шифрования, [ 49 ] все основные клиентские реализации (Firefox, [ 50 ] Chrome, Safari, Opera, IE, Edge) заявили, что они будут поддерживать только HTTP/2 через TLS, что делает шифрование де-факто обязательным. [ 51 ]
Критика
[ редактировать ]Процесс разработки
[ редактировать ]FreeBSD . и Varnish Разработчик Пол-Хеннинг Камп утверждает, что стандарт был подготовлен в нереально короткие сроки, что исключает любую основу для нового HTTP/2, кроме протокола SPDY, и приводит к упущению других возможностей для улучшения Камп критикует сам протокол за непоследовательность и ненужную, подавляющую сложность. Он также заявляет, что протокол нарушает принцип многоуровневого протоколирования , например, дублируя управление потоком, принадлежащее транспортному уровню (TCP). Он также предположил, что новый протокол должен удалить файлы cookie HTTP , что внесет кардинальное изменение. [ 52 ]
Шифрование
[ редактировать ]Первоначально некоторые члены [ ВОЗ? ] Члены Рабочей группы попытались ввести в протокол требование шифрования. Это вызвало критику.
Критики заявили, что шифрование требует значительных вычислительных затрат и что многие HTTP-приложения фактически не нуждаются в шифровании, а их провайдеры не желают тратить на него дополнительные ресурсы. Сторонники шифрования заявляют, что на практике эти накладные расходы на шифрование незначительны. [ 53 ] Пол-Хеннинг Камп раскритиковал IETF за поспешность стандартизации прототипа Google SPDY как HTTP/2 по политическим соображениям. [ 52 ] [ 54 ] [ 55 ] Критика программы обязательного шифрования в рамках существующей системы сертификатов не нова и не уникальна для членов сообщества открытого исходного кода: в 2013 году сотрудник Cisco заявил, что нынешняя модель сертификатов несовместима с небольшими устройствами, такими как маршрутизаторы, потому что нынешняя модель требует не только ежегодной регистрации и снятия нетривиальных сборов за каждый сертификат, но и должна постоянно повторяться на ежегодной основе. [ 56 ] В конце концов Рабочая группа не достигла консенсуса по поводу обязательного шифрования. [ 49 ] хотя большинство клиентских реализаций требуют этого, что делает шифрование фактическим требованием.
Протокол HTTP/2 также подвергся критике за отсутствие поддержки оппортунистического шифрования — меры против пассивного мониторинга, аналогичной механизму STARTTLS, который уже давно доступен в других интернет-протоколах, таких как SMTP . Критики заявили, что предложение HTTP/2 нарушает собственные правила IETF. RFC 7258 «Повсеместный мониторинг — это атака», который также имеет статус Best Current Practice 188. [ 57 ] RFC7258/BCP188 требует, чтобы пассивный мониторинг рассматривался как атака, а протоколы, разработанные IETF, должны принимать меры для защиты от пассивного мониторинга (например, посредством использования оппортунистического шифрования). Был предоставлен ряд спецификаций оппортунистического шифрования HTTP/2: [ 58 ] [ 59 ] [ 60 ] из которых проект nottingham-http2-encryption был принят в качестве официального рабочего объекта рабочей группы, что привело к публикации RFC 8164 в мае 2017 г.
Блокировка начала строки TCP
[ редактировать ]Хотя конструкция HTTP/2 эффективно решает проблему блокировки заголовка на уровне HTTP-транзакции , позволяя выполнять несколько одновременных HTTP-транзакций, все эти транзакции мультиплексируются по одному TCP-соединению, а это означает, что любой заголовок на уровне пакета блокировка линии потока TCP одновременно блокирует все транзакции, к которым осуществляется доступ через это соединение. Эта блокировка начала строки в HTTP/2 сейчас широко рассматривается как недостаток дизайна, и большая часть усилий, приложенных к QUIC и HTTP/3, была направлена на уменьшение проблем с блокировкой начала строки. [ 61 ] [ 62 ]
Серверная поддержка
[ редактировать ]Серверное программное обеспечение
[ редактировать ]Следующие веб-серверы поддерживают HTTP/2:
- Apache httpd 2.4.12 поддерживает HTTP/2 через модуль mod_h2, [ 63 ] хотя к исходному коду сервера необходимо применить соответствующие исправления, чтобы он поддерживал этот модуль. Начиная с Apache 2.4.17 все патчи включены в основное дерево исходного кода Apache, хотя сам модуль был переименован в mod_http2. [ 64 ] Старые версии SPDY поддерживались через модуль mod_spdy, [ 65 ] однако разработка модуля mod_spdy остановлена. [ 66 ]
- Apache Tomcat 8.5 (требуется изменение конфигурации) [ 67 ]
- Сервер трафика Apache [ 68 ]
- Кэдди [ 69 ]
- Charles Proxy начиная с версии Charles 4. [ 70 ]
- Citrix NetScaler 11.x [ 71 ]
- Соки [ 72 ]
- F5 Диспетчер локального трафика BIG-IP 11.6 [ 73 ]
- Barracuda Networks WAF (брандмауэр веб-приложений) [ 74 ]
- h2o (создан с нуля для поддержки HTTP/2) [ 75 ]
- HAProxy 1.8 [ 76 ]
- Пристань 9.3 [ 77 ]
- лайтпд 1.4.56 [ 78 ]
- Веб-сервер LiteSpeed 5.0 [ 79 ]
- Microsoft IIS (в Windows 10, [ 80 ] Windows Server 2016 и Windows Server 2019 )
- Нетти 4.1 [ 81 ]
- nghttpd (исключительно реализует HTTP/2)
- нгинкс 1.9.5 [ 82 ] выпущен 22 сентября 2015 г. с использованием модуля ngx_http_v2_module и HTTP/2 Server Push, начиная с версии 1.13.9 от 20 февраля 2018 г. [ 83 ]
- Node.js 8.13.0 [ 84 ] (Для Node.js 5.0 доступен отдельный модуль. [ 85 ] и Node 8.4 представил экспериментальную встроенную поддержку HTTP/2. [ 86 ] )
- Веб-сервер Kestrel для ASP.NET Core поддерживает HTTP/2, начиная с .NET Core 2.2.0 (предварительная версия 1). [ 87 ]
- OpenLiteSpeed 1.3.11 и 1.4.8 [ 88 ]
- Проксиген
- Диспетчер виртуального трафика Pulse Secure 10.2 [ 89 ]
- Радварное ПО Alteon NG [ 90 ]
- Мерцающий Кот [ 91 ]
- Верт.х 3.3
- Warp ( веб-сервер Haskell , используемый по умолчанию в Yesod )
- Уайлдфлай 9
- Прокси посланника
Сети доставки контента
[ редактировать ]- Akamai была первой крупной CDN, поддерживающей HTTP/2 и HTTP/2 Server Push .
- Microsoft Azure поддерживает HTTP/2.
- PageCDN поддерживает HTTP/2 «из коробки» и предоставляет пользовательский интерфейс для настройки HTTP/2 Server Push на панели управления CDN. [ 92 ]
- CDN77 поддерживает HTTP/2 с использованием nginx (20 августа 2015 г.) .
- Cloudflare поддерживает HTTP/2, используя nginx с SPDY в качестве запасного варианта для браузеров без поддержки, сохраняя при этом все службы безопасности и производительности. [ 93 ] Cloudflare была первой крупной CDN, поддерживающей HTTP/2 Server Push . [ 94 ]
- AWS CloudFront поддерживает HTTP/2 [ 95 ] с 7 сентября 2016 г.
- Быстро поддерживает HTTP/2, включая Server Push. [ 96 ]
- CDN Imperva Encapsula поддерживает HTTP/2. [ 97 ] Реализация также включает поддержку функций WAF и предотвращения DDoS.
- KeyCDN поддерживает HTTP/2 с использованием nginx (6 октября 2015 г.). HTTP/2 Test — это тестовая страница, позволяющая проверить, поддерживает ли ваш сервер HTTP/2.
- Voxility поддерживает HTTP/2 с использованием nginx с июля 2016 года. Реализация включает поддержку облачных служб предотвращения DDoS-атак. [ 98 ]
- StackPath поддерживает HTTP/2.
Реализации
[ редактировать ]- Другие реализации собраны на вики GitHub HTTP/2 .
См. также
[ редактировать ]- gRPC
- HTTP-конвейерная обработка
- HTTP- запрос и ответные сообщения
- HTTP/3
- ВОЗ
- СПДИ
- Вебсокет
- Веб-сервер
- Веб-браузер
- Сравнение веб-браузеров § Поддержка протокола
Ссылки
[ редактировать ]- ^ Брайт, Питер (18 февраля 2015 г.). «HTTP/2 завершен и появится в браузерах через несколько недель» . Арс Техника . Архивировано из оригинала 30 марта 2019 года.
- ^ Перейти обратно: а б Чимпану, Каталин (12 ноября 2018 г.). «HTTP-over-QUIC будет переименован в HTTP/3» . ЗДНет . Проверено 19 ноября 2018 г.
- ^ Томсон, М.; Бельше, М.; Пеон, Р. (29 ноября 2014 г.). «Протокол передачи гипертекста версии 2: черновик-ietf-httpbis-http2-16» . Ietf Datatracker . Рабочая группа HTTPbis . Проверено 11 февраля 2015 г.
- ^ Перейти обратно: а б с «HTTP (httpbis)» . Datatracker рабочей группы по интернет-инжинирингу . Архивировано из оригинала 6 января 2024 года.
- ^ «Рабочая группа IETF HTTP» . httpwg.org . Проверено 15 декабря 2019 г.
- ^ Перейти обратно: а б «История проекта-ietf-httpbis-http2-16» . IETF . Проверено 3 января 2015 г.
16 декабря 2014 г. Состояние IESG изменено на «Запрошена публикация».
- ^ Перейти обратно: а б Рэймор, Брайан (6 августа 2014 г.). «Подождите – HTTP/2 начинает последний звонок рабочей группы!» . Открытые технологии Microsoft. Архивировано из оригинала 6 октября 2014 года . Проверено 17 октября 2018 г.
- ^ Перейти обратно: а б IESG (17 февраля 2015 г.). «Действие протокола: «Протокол передачи гипертекста версии 2» в соответствии с предлагаемым стандартом (draft-ietf-httpbis-http2-17.txt)» . httpbis (список рассылки) . Проверено 18 февраля 2015 г.
- ^ Марк Ноттингем (18 февраля 2015 г.). «HTTP/2 одобрен» . ietf.org . Рабочая группа по интернет-инжинирингу . Проверено 8 марта 2015 г.
- ^ Бельше, М.; Пеон, Р.; Томсон, М. (май 2015 г.). Томсон, М. (ред.). «RFC 7540 — протокол передачи гипертекста версии 2 (HTTP/2)» . IETF. дои : 10.17487/RFC7540 . Проверено 14 мая 2015 г.
{{cite journal}}
: Для цитирования журнала требуется|journal=
( помощь ) - ^ «Посмотрите, что нового в Firefox!» . www.mozilla.org . Фонд Мозилла. Февраль 2015.
- ^ «Может ли рост SPDY угрожать HTTP?» . blog.restlet.com . Restlet, Inc. Октябрь 2011 г. Архивировано из оригинала 6 января 2014 г. Проверено 23 июля 2012 г.
- ^ Перейти обратно: а б с " "HTTP/2" | Могу ли я использовать... Таблицы поддержки HTML5, CSS3 и т. д." . canIuse.com . Проверено 3 апреля 2023 г.
- ^ «Использование HTTP/2 для веб-сайтов» . Обзоры технологий Всемирной паутины . W3Techs . Проверено 10 июля 2023 г.
- ^ Бишоп, Майк (9 июля 2019 г.). «Протокол передачи гипертекста версии 3 (HTTP/3)» . Ietf Datatracker . Проверено 31 июля 2019 г.
- ^ Чимпану, Каталин (26 сентября 2019 г.). «Cloudflare, Google Chrome и Firefox добавляют поддержку HTTP/3» . ЗДНет . Проверено 27 сентября 2019 г.
- ^ Перейти обратно: а б Илья Григорик. «Глава 12: HTTP 2.0» . Высокопроизводительная сеть браузеров . O'Reilly Media, Inc.
HTTP/2 никоим образом не изменяет семантику приложения HTTP.
- ^ Пратт, Майкл. «Апиукс» . apiux.com . Проверено 19 марта 2014 г.
- ^ Дио Синодинос (ноябрь 2012 г.). «Опубликован первый черновой вариант HTTP 2.0» . InfoQ.com . C4Media Inc.
- ^ Хавьер Гарса (октябрь 2017 г.). «Как HTTP/2 решает проблему блокировки начала линии (HOL)» .
- ^ Бельше, Майк; Томсон, Мартин; Пеон, Роберто (май 2015 г.). Томсон, М. (ред.). «Протокол передачи гипертекста версии 2 (HTTP/2)» . www.tools.ietf.org . дои : 10.17487/RFC7540 . Проверено 17 ноября 2017 г.
HTTP/2 использует кадры DATA для передачи полезных данных сообщений. «Частное» кодирование передачи, определенное в разделе 4.1 [RFC7230], НЕ ДОЛЖНО использоваться в HTTP/2.
- ^ Перейти обратно: а б Себастьян Энтони (28 марта 2012 г.). «S&M против SPDY: Microsoft и Google сражаются за будущее HTTP 2.0» . ЭкстримТех.
- ^ Перейти обратно: а б Григорик, Илья. «Жизнь за пределами HTTP 1.1: SPDY от Google» .
- ^ Вилли Тарро; Амос Джеффрис; Адриан де Крой; Пол-Хеннинг Камп (29 марта 2012 г.). «Предложение по сетевому обновлению HTTP» . Сетевая рабочая группа . Рабочая группа по интернет-инжинирингу .
- ^ Дуг Бивер (15 июля 2012 г.). «HTTP2 Выражение интереса» (список рассылки). W3C.
- ^ Дио Синодинос (30 ноября 2012 г.). «Опубликован первый черновик HTTP/2» . ИнфоВ.
- ^ Перейти обратно: а б Илья, Григорик (2015). HTTP/2: новый отрывок из высокопроизводительной сети браузеров (май 2015 г., первое издание). Севастополь, Калифорния: О'Рейли Медиа. стр. 211–224. ISBN 9781491932483 . OCLC 1039459460 .
- ^ «SPDY: экспериментальный протокол для более быстрого Интернета» . Проекты Хрома .
- ^ Крис Бентцель; Бенце Беки (9 февраля 2015 г.). «Привет, HTTP/2, прощай, SPDY» . Блог Хрома .
Обновление: чтобы лучше соответствовать циклу выпуска Chrome, поддержка SPDY и NPN будет удалена с выпуском Chrome 51.
- ^ «Устаревшие и удаленные API в Chrome 51» .
TL;DR: Поддержка HTTP/2 настолько широко распространена, что от поддержки SPDY/3.1 можно отказаться.
- ^ Шадрин Ник (7 июня 2016 г.). «Поддержка HTTP/2 для пользователей Google Chrome | NGINX» . НГИНКС . Проверено 10 июля 2017 г.
- ^ Перейти обратно: а б Ноттингем, Марк (7 июня 2014 г.). «RFC2616 мертв» . Проверено 20 сентября 2014 г.
- ^ «HTTP/1.1, часть 1: URI, соединения и анализ сообщений: черновик-ietf-httpbis-p1-messaging-00» . 20 декабря 2007 года . Проверено 20 сентября 2014 г.
- ^ «Требования безопасности для HTTP: черновик-ietf-httpbis-security-properties-00.txt» . 23 января 2008 года . Проверено 20 сентября 2014 г.
- ^ Ноттингем, Марк (24 января 2012 г.). «Перезагрузка HTTPbis» . Проверено 20 сентября 2014 г.
- ^ Ноттингем, Марк (14 октября 2012 г.). «Последний звонок рабочей группы для HTTP/1.1 p1 и p2» . Проверено 20 сентября 2014 г.
- ^ Ноттингем, Марк (23 октября 2012 г.). «Последний звонок второй рабочей группы по HTTP/1.1 от p4 до p7» . Проверено 20 сентября 2014 г.
- ^ «Протокол SPDY: черновик-ietf-httpbis-http2-00» . Рабочая группа HTTPbis. 28 ноября 2012 года . Проверено 20 сентября 2014 г.
- ^ Ноттингем, Марк (30 ноября 2012 г.). «Первый проект HTTP/2» . Проверено 20 сентября 2014 г.
- ^ Филдинг, Рой Т.; Решке, Джулиан (6 июня 2014 г.). «Протокол передачи гипертекста (HTTP/1.1): синтаксис сообщений и маршрутизация» . Архивировано из оригинала 13 августа 2014 года . Проверено 20 сентября 2014 г.
- ^ «Последний звонок: <draft-ietf-httpbis-p1-messaging-24.txt> (Протокол передачи гипертекста (HTTP/1.1): синтаксис и маршрутизация сообщений) в предлагаемый стандарт» . IESG. 21 октября 2013 года . Проверено 20 сентября 2014 г.
- ^ «Действие протокола: «Протокол передачи гипертекста (HTTP/1.1): синтаксис и маршрутизация сообщений» в соответствии с предлагаемым стандартом (draft-ietf-httpbis-p1-messaging-26.txt)» . ietf-announce (список рассылки). IESG. 12 февраля 2014 года . Проверено 18 января 2015 г.
- ^ Коллектив редакторов RFC (6 июня 2014 г.). «RFC 7230 о протоколе передачи гипертекста (HTTP/1.1): синтаксис сообщений и маршрутизация» . ietf-announce (список рассылки) . Проверено 18 января 2015 г.
{{cite mailing list}}
:|last=
имеет общее имя ( справка ) - ^ Ноттингем, Марк (1 августа 2014 г.). «Последний звонок рабочей группы: черновик-ietf-httpbis-http2-14 и черновик-ietf-httpbis-header-compression-09» . Рабочая группа HTTP . Проверено 7 сентября 2014 г.
- ^ «Последний звонок: <draft-ietf-httpbis-http2-16.txt> (протокол передачи гипертекста версии 2) к предложенному стандарту от IESG 31 декабря 2014 г.» . Рабочая группа по интернет-инжинирингу. 2014 . Проверено 1 января 2015 г.
- ^ «Повестка дня IESG: 22 января 2015 г.» . IETF. Архивировано из оригинала 15 января 2015 года . Проверено 15 января 2015 г.
- ^ Коллектив редакторов RFC (14 мая 2015 г.). «RFC 7540 о протоколе передачи гипертекста версии 2 (HTTP/2)» . ietf-announce (список рассылки).
{{cite mailing list}}
:|author=
имеет общее имя ( справка ) - ^ Фридл, С.; Попов А.; Лэнгли, А.; Стефан, Э. (июль 2014 г.). «RFC 7301 — Расширение согласования протокола прикладного уровня безопасности транспортного уровня (TLS)» . IETF. дои : 10.17487/RFC7301 .
{{cite journal}}
: Для цитирования журнала требуется|journal=
( помощь ) - ^ Перейти обратно: а б «Часто задаваемые вопросы по HTTP/2» . Рабочая группа IETF HTTP . Проверено 8 сентября 2014 г.
- ^ «Сеть/http2» . МозиллаВики . Проверено 7 сентября 2014 г.
- ^ «Состояние реализации HTTP/2» . блог mnot .
- ^ Перейти обратно: а б Камп, Пол-Хеннинг (6 января 2015 г.). «HTTP/2.0 – IETF звонит (плохой протокол, плохая политика)» . Очередь АКМ .
{{cite journal}}
: Для цитирования журнала требуется|journal=
( помощь ) - ^ Григорик, Илья. «Быстр ли TLS?» . Проверено 30 декабря 2015 г.
- ^ Камп, штат Пенсильвания (2015). «Http/2.0». Коммуникации АКМ . 58 (3): 40. дои : 10.1145/2717515 . S2CID 20337779 .
- ^ Камп, Пол-Хеннинг (7 января 2015 г.). «Re: Последний звонок: <draft-ietf-httpbis-http2-16.txt> (протокол передачи гипертекста версии 2) в предлагаемый стандарт» . [электронная почта защищена] (список рассылки) . Проверено 12 января 2015 г.
- ^ Лир, Элиот (25 августа 2013 г.). «Обязательное шифрование *это* театр» . [электронная почта защищена] (список рассылки) . Проверено 26 января 2015 г.
- ^ Муренин Константин А. (9 января 2015 г.). «Re: Последний звонок: <draft-ietf-httpbis-http2-16.txt> (протокол передачи гипертекста версии 2) в предлагаемый стандарт» . [электронная почта защищена] (список рассылки) . Проверено 12 января 2015 г.
- ^ Пол Хоффман. «Минимальное шифрование без аутентификации (MUE) для HTTP-2: черновик-хоффман-httpbis-minimal-unauth-enc-01» . Рабочая группа по интернет-инжинирингу .
- ^ Марк Ноттингем; Мартин Томсон. «Уступчивое шифрование для HTTP URI: черновик-ноттингем-http2-encryption-03» . Рабочая группа по интернет-инжинирингу .
- ^ Марк Ноттингем; Мартин Томсон. «Оппортунистическая безопасность для HTTP: черновик-ietf-httpbis-http2-encryption-01» . Ietf Datatracker . Рабочая группа по интернет-инжинирингу .
- ^ Хьюстон, Джефф (4 марта 2019 г.). «Краткий обзор QUIC» . www.circleid.com . Проверено 2 августа 2019 г.
- ^ Гал, Шаули (22 июня 2017 г.). «Полная картина блокировки HTTP/2 и HOL» . Середина . Проверено 3 августа 2019 г.
- ^ «Модуль http/2 для Apache httpd» . Проверено 28 июля 2015 г.
- ^ «Журнал изменений выпуска Apache 2.4.17» . Проверено 22 августа 2017 г.
- ^ Мэтью Стил (19 июня 2014 г.). «mod_spdy теперь является проектом Apache» . Блог разработчиков Google .
- ^ «Журнал /httpd/mod_spdy» . svn.apache.org . Проверено 3 февраля 2017 г.
- ^ «Миграция Apache Tomcat» . Проверено 29 июля 2016 г.
- ^ «Загрузки сервера трафика Apache» . Trafficserver.apache.org . 21 сентября 2015 г.
- ^ Сервер, Caddy Web (23 марта 2016 г.). «Caddy 2 — лучший сервер с автоматическим HTTPS» . caddyserver.com . Проверено 8 августа 2020 г.
- ^ «У Чарльза 4 есть HTTP/2» . Общественный объект . 2 августа 2016 г. Проверено 12 октября 2020 г.
- ^ «3 простых шага для повышения производительности HTTP/2 в устаревших веб-приложениях» . 22 сентября 2015 г.
- ^ «Sucuri += HTTP/2 — анонс поддержки HTTP/2» . Сукури . 27 ноября 2015 года . Проверено 5 декабря 2015 г.
- ^ Роберт Хейнс. «Прощай, SPDY, здравствуй, HTTP/2» . Сети F5 . Проверено 18 сентября 2015 г.
- ^ Рисов Чакраборти (5 июля 2016 г.). «Новые функции и возможности добавлены в брандмауэр веб-приложений Barracuda» . Барракуда Сети.
- ^ «H2O — оптимизированный HTTP/2-сервер» . h2o.examp1e.net .
- ^ «Что нового в HAProxy 1.8» . haproxy.com . Ноябрь 2017 года . Проверено 9 февраля 2018 г.
- ^ «Журнал изменений причала» . Фонд Эклипс. 28 мая 2015 года . Проверено 28 мая 2015 г.
- ^ «Функция № 2813: Поддержка протокола HTTP/2» , Lighttpd
- ^ «LSWS 5.0 вышел — поддержка HTTP/2, ESI, LiteMage Cache» . 17 апреля 2015 г.
- ^ Роб Трейс; Дэвид Уолп (8 октября 2014 г.). «HTTP/2: Долгожданное продолжение» . MSDN IEBlog . Корпорация Майкрософт.
- ^ «Netty.news: Выпущена Netty 4.1.0.Final» . netty.io . Проверено 1 июня 2016 г.
- ^ «Журнал изменений nginx» . www.nginx.com . 22 сентября 2015 г.
- ^ «Изменения в nginx 1.14.2» . nginx.org . 4 декабря 2018 года . Проверено 27 сентября 2019 г.
- ^ Foundation, Node js (20 ноября 2018 г.). «Узел v8.13.0 (LTS)» . Нод.js. Проверено 5 июня 2019 г.
- ^ «Узел http2» . www.github.com . 26 июля 2016 г.
- ^ «Узел v8.4.0 (Текущий)» . nodejs.org . 15 августа 2017 г.
- ^ «ASP.NET Core 2.2.0-preview1: HTTP/2 в Kestrel» . Проверено 6 апреля 2021 г.
- ^ «Журнал изменений OpenLiteSpeed 1.4.5» . LiteSpeed Technologies, Inc., 26 февраля 2015 г. Проверено 26 февраля 2015 г.
- ^ «Диспетчер виртуального трафика Pulse» . 22 августа 2017 г.
- ^ «Radware сочетает в себе интегрированный шлюз HTTP/2 с передовой технологией Fastview для обеспечения повышенного ускорения платформ веб-серверов» . 20 июля 2015 г.
- ^ «www.shimmercat.com» . 23 марта 2016 года. Архивировано из оригинала 31 марта 2022 года . Проверено 23 марта 2016 г.
- ^ «Почему PageCDN и какую проблему он решает?» . ПейджКДН . Проверено 11 января 2020 г.
- ^ «HTTP/2 уже здесь! Прощай, SPDY? Еще нет» . CloudFlare . Проверено 5 декабря 2015 г.
- ^ Краснов Влад (28 апреля 2016 г.). «Объявление о поддержке HTTP/2 Server Push» . CloudFlare . Проверено 18 мая 2016 г.
- ^ «Amazon CloudFront теперь поддерживает HTTP/2» . Amazon Веб-сервисы, Inc. Проверено 8 сентября 2016 г.
- ^ «Объявление об ограниченной доступности HTTP/2» . 30 июня 2016 года . Проверено 22 августа 2017 г.
- ^ «HTTP/2 уже здесь: что вам нужно знать» . Проверено 1 ноября 2015 г.
- ^ «HTTP/2 больше подвержен риску кибератак?» . Информационный век . 3 августа 2016 г. Проверено 4 февраля 2019 г.
Внешние ссылки
[ редактировать ]- Официальный сайт
- HTTP/2 на GitHub
- RFC 7540 — протокол передачи гипертекста версии 2 (HTTP/2).
- RFC 7541 – HPACK: сжатие заголовка для HTTP/2
- Объяснение HTTP/2 ( Дэниел Стенберг )
- Протокол SPDY (draft-mbelshe-httpbis-spdy-00)
- Скорость HTTP+мобильность (проект-Черногория-httpbis-speed-mobility-01)
- Предложение по сетевому обновлению HTTP (draft-tarreau-httpbis-network-Friendly-00)