‎In order delivery

QUIC guarantees in-order delivery of streams, but not between streams. Thismeans that each stream will send data and maintain data order, but each streammay reach the destination in a different order than the application sent it!

For example: stream A and B are transferred from a server to a client. StreamA is started first and then stream B. In QUIC, a lost packet only affectsthe stream to which the lost packet belongs. If stream A loses a packet butstream B does not, stream B may continue its transfers and completewhile stream A’s lost packet is re-transmitted. This was not possiblewith HTTP/2.

Illustrated here with one yellow and one blue stream sent between two QUICend-points over a single connection. They are independent and may arrive in adifferent order, but each stream is reliably delivered to the application in order.

two QUIC streams between two computers