次の表は、HTTP/0.9、HTTP/1.0、HTTP/1.1、HTTP/2.0、および HTTP/3.0 の詳細をまとめた表です。
バージョン | 発売年 | 主な特徴 |
---|---|---|
HTTP/0.9 | 1991年 | HTTP の最も初期のバージョンでは、GET メソッドのみがサポートされており、ヘッダー情報やステータス コードはサポートされていません。 |
HTTP/1.0 | 1996年 | リクエストメソッド、レスポンスステータスコード、ヘッダーフィールド、および複数のタイプのデータ送信メソッドを紹介します。 |
HTTP/1.1 | 1997年 | 永続的接続、パイプライン、仮想ホスティング、キャッシュ、プロキシ サーバー、認証などの機能を導入します。 |
HTTP/2.0 | 2015年 | バイナリ転送、多重化、ヘッダー圧縮、サーバープッシュなどのパフォーマンスの最適化を導入 |
HTTP/3.0 | 2022年に予想 | UDP プロトコルに基づく新世代の HTTP プロトコル。QUIC プロトコルとトランスポート層暗号化が導入されています。 |
補足:
- HTTP/0.9 は最も古いバージョンで、非常にシンプルで、GET メソッドのみをサポートし、ヘッダー情報やステータス コードはありません。
- HTTP/1.0 では、複数のリクエスト メソッド (GET、POST など)、応答ステータス コード (200、404 など)、ヘッダー フィールド、および複数のデータ送信メソッド (Content-Type) が導入されています。
- HTTP/1.1 では永続的な接続が導入され、複数の要求と応答を同じ TCP 接続上で多重化できるようになり、パフォーマンスが向上します。パイプライン、仮想ホスティング、キャッシュ、プロキシ サーバー、認証などの機能も導入されています。
- SPDY プロトコルに基づいて、HTTP/2.0 ではバイナリ伝送が導入されています。これにより、HTTP/1.x のテキスト形式が置き換えられ、伝送効率が向上します。多重化も導入され、複数の要求と応答を同時に処理できるようになり、待ち時間が短縮されました。ヘッダー圧縮やサーバープッシュなどの機能も改善されました。
- HTTP/3.0 は QUIC プロトコルに基づいており、データの送信に TCP の代わりに UDP を使用し、すべての通信が暗号化されます。より高速な接続確立と伝送速度を提供するように設計されており、特にモバイル デバイスや遅延の長いネットワーク環境に適しています。
上記の情報は参考用であり、具体的な機能や詳細はバージョンの実装や特定の使用環境によって異なる場合があることに注意してください。