Comparația cu HTTP/2

HTTP/3 este proiectat pentru QUIC, care este un protocol de transport care manipulează fluxurile singur.

HTTP/2 este proiectat pentru TCP și, deci, manipulează fluxurile în layer-ul HTTP.

Similarități

Cele două protocoale oferă clienților seturi de funcționalități practic identice.

  • Ambele protocoale oferă fluxuri

  • Ambele protocoale oferă suport pentru trimiteri de către server

  • Ambele protocoale au compresia headere-lor, iar QPACK și HPACK sunt similare în proiectare.

  • Ambele protocoale oferă multiplexing peste o singură conexiune folosind fluxuri

  • Ambele protocoale oferă prioritizare pe fluxuri

Diferențe

Diferențele sunt în detalii și sunt acolo mulțumită folosirii de către HTTP/3 a QUIC:

  • HTTP/3 are un suport pentru date timpurii mai bun și mai probabil să meargă, mulțumită handshake-urilor 0-RTT ale QUIC, în timp ce TCP Fast Open și TLS trimit mai puține date și întâlnesc, deseori, probleme.

  • HTTP/3 are handshakes mult mai rapide datorită QUIC față de TCP + TLS.

  • HTTP/3 nu există într-o versiune nesigură și necriptată. HTTP/2 poate fi implementat și folosit fără HTTPS - chiar dacă asta este acum rar peste internet.

  • HTTP/2 poate fi negociat direct într-un handshake TLS cu extensia ALPN, în timp ce HTTP/3 există peste QUIC, deci are nevoie înainte de un header de răspuns Alt-Svc pentru a informa clientul de acest lucru.

Last updated