HTTP/2とHTTP/3の違い:トランスポートで何が変わるか
HTTP/2は1本のTCPコネクション上でHTTPのストリームを多重化し、HTTP/3はHTTPのセマンティクスをUDP上のQUICに載せます。QUICは独立したストリームを提供し、TLS 1.3を統合しているため、HTTPのメソッドやステータスコードはそのままに、ロスからの回復と接続の確立方法が変わります。
HTTP/2からHTTP/3で変わること
HTTP/2はTCP上で動作し、HTTP/3はUDPを使うQUICの上でHTTPのセマンティクスを運びます。HTTP/2では、1本のコネクションを共有する複数のストリームが、失われたTCPパケット1つのせいでまとめて遅れることがあります。QUICでは、あるストリームでパケットロスが起きても、ほかのストリームのデータが同じように止まるとは限りません。
使われているプロトコルを確認する方法
ブラウザーの開発者ツールを開き、リクエストに使われたプロトコルを確認します。h2ならHTTP/2、h3ならHTTP/3です。h3が見当たらない場合は、ブラウザーとサーバーの対応状況、UDPの443番、Alt-Svcを確認してください。HTTP/3が使えないとき、サイトは通常HTTP/2にフォールバックするはずです。サイトを外部から確認するなら、ブラウザーでの診断に加えて2IPのWebサイト情報ツールも役立ちます。
HTTP/3が使えない場合
技術資料:RFC 9113、RFC 9114