HTTP/2とは、Webブラウザ等のクライアントとWebサーバとの間で、HTML等のコンテンツの送受信に使用される、HTTPのバージョンの1つです。HTTPは、1991年にHTTP/0.9、1996年5月にHTTP/1.0、1997年1月にHTTP/1.1が公開されました。
TTP/2はWebが画像やビデオなど多様なコンテンツで構成されるようになったことに対応して2015年5月に公開されました。
最初のバージョンであるHTTP/0.9は極めて単純なものであり、レスポンスに関する規定がなく、メソッドもGETしかありませんでした。HTTP/1.0になるとレスポンス ヘッダが規定され、メソッドもPOSTやPUT、DELETE等が追加されました。HTTP/1.1ではメソッドがさらに拡充され、名前ベースのバーチャル ホストや「KeepAlive」、「パイプライン処理」もサポートされました。これによってTCP接続リソースを節約でき、パフォーマンスも改善されたのです。Web高速化への取り組みはその後もさらに進み、2009年にはGoogleによってSPDYが公開されています。
このSPDYをベースに、インターネット技術の標準化推進団体であるIETFが仕様を策定したのが、HTTP/2です。HTTP/2は従来バージョンのHTTPとの互換性を保ちながら、セッション層における通信を効率化しています。
HTTP/2では、1つのTCP接続で複数のリクエストとレスポンスをやりとり可能、クライアントからのリクエストを待たずにサーバ側からレスポンスをプッシュ可能、バイナリ化とヘッダ圧縮によってデータ サイズを縮小、といったSDPYの特徴が継承されています。その一方で、SPDYでは必須だったTLS(HTTPS)の利用は、必須ではなくなりました。ただし2015年末の段階では、HTTP/2をサポートするWebブラウザのほとんどが、HTTPSの利用を前提としています。
すでに多くのWebブラウザがHTTP/2をサポートしています。またSPDYを開発したGoogleも、2016年2月11日に「ChromeにおけるSPDYサポートを2016年5月15日に終了する」と発表しています。SPDYはこれまで数多くのWebブラウザでのサポートが進み、Googleをはじめとする複数の大規模サイトでの対応も行われていましたが、今後はHTTP/2への移行が進んでいくと予測されます。