Comparación con HTTP/2
HTTP/3 está diseñado para QUIC, que es un protocolo de transporte que maneja flujos por sí mismo.
HTTP/2 está diseñado para TCP, y por lo tanto maneja flujos en la capa HTTP.
Similitudes
Los dos protocolos ofrecen a los clientes conjuntos de características prácticamente idénticos.
Ambos protocolos ofrecen soporte para el push del servidor
Ambos protocolos tienen compresión de cabecera, y QPACK y HPACK tienen un diseño similar.
Ambos protocolos ofrecen multiplexación a través de una única conexión utilizando streams
Diferencias
Las diferencias están en los detalles y principalmente están ahí gracias al uso de QUIC por parte de HTTP/3:
HTTP/3 tiene un mejor y más probable soporte de datos tempranos gracias a los handshakes 0-RTT de QUIC, mientras que TCP Fast Open y TLS suelen enviar menos datos y a menudo tienen problemas.
HTTP/3 tiene handshakes mucho más rápidos gracias a QUIC frente a TCP + TLS.
HTTP/3 no existe en una versión insegura o sin cifrar. HTTP/2 puede ser implementado y utilizado sin HTTPS - aunque esto es raro en Internet.
HTTP/2 puede ser negociado directamente en un handshake TLS con la extensión ALPN, mientras que HTTP/3 es sobre QUIC por lo que necesita una respuesta de cabecera
Alt-Svc:
primero para informar al cliente sobre este hecho.HTTP/3 no tiene priorización. El enfoque de HTTP/2 para la priorización se ha considerado demasiado complicado, o incluso un fracaso, y se está trabajando en la creación de una toma más simple. Este esquema más simple planeado también está planeado para poder ser retroportado para correr sobre HTTP/2 usando el mecanismo de extensión de HTTP/2.
Last updated