インターネットのネットワークプロトコルを標準化する業界団体のInternet Engineering Task Force(IETF)が、これまで「HTTP-over-QUIC(hq)」と呼ばれていたプロトコルを「HTTP/3」という名称に変更すると発表しました。

HTTP/3 | daniel.haxx.se

https://daniel.haxx.se/blog/2018/11/11/http-3/

HTTP/1.1やHTTP/2などの現在、インターネットで利用されているプロトコルはTCP(Transmission Control Protocol)をベースにしています。TCPではデータは送信された順序での受信が確約され、転送中に一部のデータが失われた場合に受信側で検出できるエラーチェック機能を備えているため高い信頼性を持ちます。しかし、TCPでは接続を確立するためにサーバーとクライアントの間で多数の通信の往復が必要なため、通信の高速性という点では欠点がありました。

これに対してUDP(User Datagram Protocol)では、データのエラーや順序をチェックする機能がない代わりに通信コストが小さいというメリットを持ちます。UDPは信頼性よりも応答性を優先したプロトコルで、ストリーミングサービスのようなリアルタイム性が求められる場面で用いられています。

HTTP/1.1やHTTP/2がすべてTCPの上に重ねられていたのに対して、HTTP-over-QUICではその名の通りUDPをベースにしているのが大きな特徴です



HTTP-over-QUICは、Googleが実験的に開発したプロトコル「QUIC(Quick UDP Internet Connections)」の技術思想をHTTPに持ち込むもので、厳密には互換性がない別物ですがエッセンスは同じです。



Googleの開発するQUICとIETFが開発するQUICは異なるため、HTTPコミュニティでは前者を「gQUIC」、後者を「iQUIC」として区別していたとのこと。また、IETFが開発するQUICはトランスポートプロトコルの総称であり、HTTP用には「HTTP-over-QUIC」(hq)という名称が与えられて区別されていましたが、コミュニティメンバーに混乱が生じていたようです。

そこで、HTTP-over-QUICはTCPをベースにするHTTP/2とは異なることから、それともはっきり区別する意味でも、最終的にIETFはHTTP-over-QUICを「HTTP/3」という名称に変更することになったようです。