HTTP/2 передаёт кадры нескольких streams по одному соединению, поэтому ответы не обязаны идти целиком друг за другом, как при HTTP/1.1 pipelining. Это уменьшает блокировку на уровне HTTP.
Что такое мультиплексирование HTTP/2 (HTTP/2 multiplexing) и как оно решает проблему блокировки начала очереди (head-of-line blocking), присущую HTTP/1.1?
HTTP/2 передаёт кадры нескольких streams по одному соединению, поэтому ответы не обязаны идти целиком друг за другом, как при HTTP/1.1 pipelining. Это уменьшает блокировку на уровне HTTP.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
HTTP/2 передаёт кадры нескольких streams по одному соединению, поэтому ответы не обязаны идти целиком друг за другом, как при HTTP/1.1 pipelining. Это уменьшает блокировку на уровне HTTP.
У каждого stream свой идентификатор, данные могут перемежаться. Но TCP доставляет упорядоченный поток байтов: потеря пакета способна задержать все HTTP/2 streams на этом соединении. Поэтому транспортный head-of-line blocking остаётся; HTTP/3 решает этот аспект иначе с помощью QUIC.
Источник: www.rfc-editor.org.