В чем разница между HTTP 1.1 и HTTP 2.0?

HTTP/1.1 хорошо служил Интернету более пятнадцати лет, но его возраст начинает сказываться.

Кто-нибудь может объяснить, в чем основное различие между HTTP 1.1 и 2.0?

Есть ли какие-либо изменения в транспортном протоколе?


person Community    schedule 18.02.2015    source источник
comment
http://daniel.haxx.se/http2/http2-v1.9.pdf Посмотрите сами, что нового в HTTP2   -  person TylerH    schedule 21.02.2015
comment
это видео хорошо подходит для обсуждения этих тем youtube.com/watch?v=0L5Q_897fwk   -  person Gujarat Santana    schedule 08.05.2017
comment
Раздел «Введение» на сайте tools.ietf.org/html/rfc7540 является самым чистым и лучшим источником для разницы между HTTP 1.1 и HTTP 2.0   -  person bayCoder    schedule 25.02.2018


Ответы (2)


HTTP/2 поддерживает мультиплексирование запросов, сжатие заголовков, приоритет и более интеллектуальное управление потоковой передачей пакетов. Это приводит к уменьшению задержки и ускорению загрузки контента на современных веб-страницах.

Подробнее здесь.

person 84RR1573R    schedule 18.02.2015
comment
Просто чтобы добавить еще один, http/2 также указывает на сервер. Подробнее об этом читайте здесь: en.wikipedia.org/wiki/HTTP/2_Server_Push - person Nitin Bansal; 22.11.2016

HTTP 2.0 – это бинарный протокол, который мультиплексирует многочисленные потоки, проходящие через одно TCP-соединение (обычно с шифрованием TLS).

Содержимое каждого потока — это запросы и ответы HTTP 1.1, просто закодированные и упакованные по-разному. HTTP2 добавляет ряд функций для управления потоками, но оставляет нетронутой старую семантику.

person phihag    schedule 18.02.2015
comment
TLS-шифрование не является обязательным. Это может быть необязательно по протоколу, но не в реальном мире. Chrome и другие браузеры не будут принимать http2 без https. Таким образом, в реальном мире, если вы включите http2 без установки сертификата на свой сервер, браузеры будут просто подключаться к http1. - person Patrick Collins; 02.03.2017
comment
@PatrickCollins На самом деле браузеры будут подключаться к HTTP2, но просто инициируют загрузку потока двоичных пакетов. Они просто не знают, как отображать содержимое HTTP2 без SSL. - person Avamander; 22.05.2017
comment
Этот ответ вводит в заблуждение утверждением, что http/2 просто упаковывает и кодирует запросы http/1.1. Есть конкретные отличия. Например, заголовки отправляются отдельно от тела/полезной нагрузки. Также немного изменился формат заголовка — там, где в http/1.x метод, uri, коды ответа и версии протокола передаются в первой строке, называемой строкой запроса. Http/2 вводит концепцию псевдозаголовков, которые помещаются перед всеми другими заголовками и имеют префикс : для обработки этих аспектов, за исключением версии протокола, которая не имеет эквивалента в http/2. - person Erikest; 23.06.2017
comment
Кроме того, хотя заголовки нечувствительны к регистру, протокол требует передачи в нижнем регистре. - person Erikest; 23.06.2017