HTTP 1.0 と HTTP 1.1: 違いと比較

インターネットを使用している場合は、HTTP または HTTPS という用語に遭遇したことがあるでしょう。特に現在アクティブな数十億の Web サイトを考慮すると、これは最も閲覧された手紙でもあります。

HTTP または HyperText Transfer Protocol の頭字語です。 これはクライアント側とサーバーの両方のプロトコルとして機能し、インターネット上でメッセージがどのように送信され、構築されるかを定義します。

主なポイント

  1. HTTP 1.0 では接続ごとに 1.1 つの要求のみが許可されますが、HTTP XNUMX では複数の要求が許可されます。
  2. HTTP 1.1 は永続的な接続をサポートしているため、Web サイトの読み込みを高速化できますが、HTTP 1.0 はサポートしていません。
  3. HTTP 1.1 は HTTP 1.0 よりも効率的なヘッダー圧縮を備えているため、帯域幅の使用量が削減されます。

HTTP 1.0 と HTTP 1.1 の比較

HTTP 1.0 は、1996 年に導入された HTTP プロトコルの最初のバージョンです。これは、要求と応答のベースで動作するシンプルでステートレスなプロトコルです。 HTTP 1.1 は、1999 年に導入された HTTP プロトコルの最も広く使用されているバージョンです。これは、永続的な接続、キャッシュ、パイプライン処理、チャンク転送エンコーディングのサポートなど、いくつかの新機能を導入した HTTP 1.0 の改良バージョンです。

HTTP 1.0 と HTTP 1.1 の比較

1996 年、HTTP/1.0 が正式に導入され、承認されました。 それ以来、その人気は急上昇しています。

HTTPv1.0 では基本的な認証 (チャレンジ/レスポンス制御) のみが提供されます。 この手法の主な問題は、ユーザー名とパスワードが暗号化されていないため、時間の制約がなく、スパイされやすくなっているということです。

また読む:  Cloudflare と OpenDNS: 違いと比較

ステータス コードは 16 個しかありませんでした。

HTTP 1.1 は永続的な接続も提供します。これは、多くの応答と要求を同じ HTTP 接続で送信できることを意味します。

OPTIONS メソッドは HTTP/1.1 で新しく追加されました。 この手法は、HTTP クライアントが HTTP サーバーの機能を検出するために簡単に使用できます。 これは主に、クロスオリジン リソース共有のための Web アプリケーションで使用されます。

比較表

比較のパラメータHTTP 1.0HTTP 1.1
ステータスコード定義できるステータス コードは 16 あります。 ただし、エラー ポップアップは十分に正確ではありません。24 のステータス コードを指定できるため、エラー レポートがより高速かつ効率的になります。
認証メカニズムパスワードとユーザー名もクリア テキストまたは base64 エンコードで送信されるため、基本認証メカニズムは安全ではありません。ダイジェスト認証とNTLM認証を利用しているため、比較的安全です。
キャッシングIf-Modified-Since ヘッダーは、キャッシングを支援するために使用されます。キャッシュ制御のようないくつかの追加ヘッダーを使用します。
化する強力なツール群キャッシュをサポートして、より多くのページをより迅速に提供します。「ホストごとに XNUMX つの接続」という要件の回避策として、スプライト、連結、インライン化、ドメイン シャーディングなどの多くの最適化が利用されています。
主な機能TCP 接続ごとに XNUMX つの要求と応答しかありません。これにより、接続の再利用が可能になります。つまり、TCP 接続ごとに多くの要求と応答を送受信できます。
後で思い出せるように今すぐピン留めする
これを固定する

HTTP 1.0 とは何ですか?

HTTPv1.0 では基本的な認証 (チャレンジ/レスポンス制御) のみが提供されます。 この手法の主な問題は、ユーザー名とパスワードが暗号化されていないため、スパイ行為を受けやすく、時間の制約がないことです。

また読む:  Sophos と Fortigate: 違いと比較

スパイによって取得された情報は、取得後長期間使用される可能性があります。クライアントは、有効な応答を得るために、HTTP 要求タイプと要求された URI を含む、パスワード、ユーザー名、および 1 回限りの値のチェックサムを計算する必要があります。

HTTP1.0 は、リクエストごとに TCP の新しい接続を利用することを意図していたため、アピールごとに、TCP の新しい接続を確立する費用を支払う必要がありました。

ほとんどのインターネット トランザクションは短時間であり、スロー スタート段階を超えることはめったにないため、使用可能な帯域幅を最適に使用できません。

一部のバージョン 1.0 実装では、「キープアライブ」ヘッダーを利用してリンクを維持できるように要求していましたが、これはプロキシ間の場合にはうまく機能しませんでした。

サーバーは、特定の接続に対する一致する要求と同じ順序で応答を提供する必要があります。 クライアントは、同じ接続 (パイプライン) を介して別のリクエストを送信する前に、前のリクエストへの応答を待つ必要はありません。

また、TCP プロトコルの機能を最適化しながら、ネットワークの往復待ち時間を短縮します。

HTTP 1.1 とは何ですか?

永続的な接続とパイプラインを導入することで、この問題を解決します。 HTTP/1.1 は、永続的な接続を使用する場合、明示的に切断を要求されない限り、TCP の接続をアクティブに保つ必要があることを意味します。

これにより、クライアントはそれぞれの応答を待たずに同じ接続を介して多数のアピールを送信できるようになり、HTTP/1.1 よりも HTTP/1.0 のパフォーマンスが大幅に向上します。

残念ながら、この最適化手法には固有のボトルネックがあります。

いくつかのデータ パケットは途中で互いに通過できないためです。 キューの先頭にあるリクエストが必要なリソースを取得できず、その後ろにあるすべてのリクエストがブロックされる場合があります。

また読む:  主キーと外部キー: 違いと比較

これは HOL head-of-line ブロッキングとして知られており、HTTP/1.1 接続パフォーマンスの向上に関しては大きな問題です。

個別の並列 TCP 接続で問題が解決する場合がありますが、クライアントとサーバー間の同時 TCP 接続の数は制限されており、新しい接続ごとに多くのリソースが消費されます。

HTTP/1.1 のフロー制御は TCP に基づいています。 TCP が確立されると、サーバーとクライアントの両方がシステムのデフォルト設定を使用してバッファ サイズを決定します。

受信側のバッファが部分的にいっぱいである場合、受信側の受信ウィンドウまたはバッファ内の空きスペースの量を送信側に通知します。

HTTP 1.0 と HTTP 1.1 の主な違い

  1. ヘッダーでは HTTP1.0 が利用されますが、より洗練されたキャッシュ管理アプローチを導入するために HTTP1.1 が使用されます。
  2. HTTP1.0 では帯域幅の無駄が多少ありますが、HTTP 1.1 では帯域幅の無駄が少なくなります。
  3. Host ヘッダー フィールドは、HTTP1.1 要求および応答メッセージでサポートされていますが、HTTP1.0 では、各サーバーが個別の IP アドレスをバインドする必要があると考えられています。
  4. HTTP1.0 では、TCP 接続ごとに 1.1 つの要求と応答しかありませんが、HTTP XNUMX では接続の再利用が可能です。
  5. スプライト化、連結、インライン化、およびドメイン シャーディングは、HTTP 1.1 で利用される最適化の一部ですが、HTTP 1.0 は Web サイトをより迅速に提供するためのキャッシングをサポートしています。
参考情報
  1. https://ieeexplore.ieee.org/abstract/document/1243114/
  2. http://journals.uic.edu/ojs/index.php/fm/article/view/2125

XNUMXつのリクエスト?

私はあなたに価値を提供するために、このブログ記事を書くことに多大な努力を払ってきました. ソーシャルメディアや友人/家族と共有することを検討していただければ、私にとって非常に役立ちます. 共有は♥️

後で読むためにこの記事を保存しますか? 右下のハートをクリックして自分の記事ボックスに保存!

著者について

Chara Yadav は、金融の MBA を取得しています。 彼女の目標は、金融関連のトピックを単純化することです。 彼女は約 25 年間、金融業界で働いてきました。 彼女は、ビジネススクールやコミュニティ向けに複数の金融および銀行のクラスを開催してきました。 続きを読む バイオページ.