ホームページ > ウェブフロントエンド > htmlチュートリアル > URLを入力してページの読み込みが完了するまでのプロセスはどのようなものですか?

URLを入力してページの読み込みが完了するまでのプロセスはどのようなものですか?

一个新手
リリース: 2017-10-06 10:40:27
オリジナル
1245 人が閲覧しました

URL の入力からページの読み込みが完了するまでの動作

プロセスの説明

  1. ブラウザはドメイン名に対応する IP アドレスを検索します。

  2. ブラウザは、ドメイン名に基づいてサーバーとのソケット接続を確立します。 IP アドレス;

  3. ブラウザとサーバーの通信: ブラウザがリクエストを行い、サーバーがリクエストを処理します。

  4. ブラウザはサーバーから切断します。

ドメイン名に基づいて IP アドレスを検索

概念分析
  1. IP アドレス: IP プロトコルによってインターネット上のすべてのネットワークとすべてのホストに割り当てられる論理アドレス。 IP アドレスは家の番号のようなもので、ホストの場所は IP アドレスによって判断できます。サーバーは基本的にホストです。サーバーにアクセスしたい場合は、まずその IP アドレスを知る必要があります。

  2. ドメイン名 (HOST): IP アドレスは、真ん中のドットで結ばれた 4 つの数字で構成されます。使用中に覚えるのが難しく、間違いやすいので、純粋な数値の IP アドレスではなく、よく知られた文字と数字の組み合わせを使用してください。たとえば、www.baidu.com (Baidu ドメイン名) だけを覚えておきます。 220.181.112.244 (Baidu の IP アドレスの 1 つ) の代わりに );

  3. DNS: 各ドメイン名は、同じサービスを提供する 1 つ以上のサーバーの IP アドレスに対応します。サーバーの IP アドレスを知っている場合にのみ、接続を確立できます。確立されているため、ドメイン名は DNS を通じて IP アドレスに解決される必要があります。

上記の概念を理解すると、サーバーの番地を取得したい場合は、最初にドメイン名を IP アドレスに変換する必要があることがわかるでしょう。変換プロセスは次のとおりです (例として www.baidu.com の IP アドレスをクエリすると、前のステップでクエリが正常に失敗した場合、ステップ 2、3、および 4 がすべて実行されます):

検索プロセス
  1. ブラウザは独自の DNS キャッシュを検索します (ドメイン名と IP アドレスの対応表を維持します)

  2. オペレーティング システム内の DNS キャッシュを検索します (ドメイン名と IP アドレスの対応表を維持します)。オペレーティング システムの hosts ファイルを検索します (Windows 環境では、ドメイン名と IP アドレスの対応表を維持します)。インターネットにアクセスすると、オペレーティング システムはドメイン名を LDNS (ローカル ゾーン ネーム サーバー) に送信します。学校では、LDNS サーバーは学校にあります。テレコムがインターネットに接続されている場合、LDNS サーバーはローカルのテレコムにあります。) LDNS は独自の DNS キャッシュにクエリを実行します (通常、検索成功率は約 80%)。検索が成功すると、結果が返されます。失敗すると、反復的な DNS 解決リクエストが開始されます。

  3. LDNS は、RootNameServer (ルート ドメイン ネーム サーバー) へのリクエストを開始します。各ドメイン名に関する情報。各ドメインの解決を担当するトップレベルのドメイン ネーム サーバーのアドレス (com、net、org など) が格納されます。ここで、ルート ネーム サーバーは、トップレベルのドメイン ネーム サーバーのアドレスを返します。 com ドメインのレベル ドメイン ネーム サーバー。

  4. LDNS は com ドメインのトップレベル ドメイン ネーム サーバーへのリクエストを開始し、baidu.com ドメイン ネーム サーバーのアドレスを返します。 baidu.com ドメイン ネーム サーバー リクエストを開始し、www.baidu.com の IP アドレスを取得します。

    1. LDNS は IP アドレスをオペレーティング システムに返し、IP アドレス自体をキャッシュします。ブラウザに IP アドレスが返されます。ブラウザは IP アドレスもキャッシュします

    2. この時点で、ブラウザはドメイン名に対応する IP アドレスを取得しています。

    3. 追加説明

    ドメイン名と URL は 2 つの概念です。ドメイン名はサーバーまたはサーバーのグループの名前であり、インターネット上のサーバーの場所を決定するために使用されます。URL はユニフォーム リソース ロケーターです。たとえば、zhihu.com は Zhihu のドメイン名であり、このドメイン名に基づいて Zhihu のサーバーを見つけることができます。この URL に基づいて私の Zhihu ホームページを見つけてください
  5. IP アドレスとドメイン名は 1 対 1 に対応していません。同じサービスを提供する複数のサーバー IP を同じドメイン名に設定できます。ドメイン名は同時に 1 つの IP アドレスしか解決できません。IP アドレスは複数のドメイン名にバインドできます。数に制限はありません。
  6. 接続を確立します。サーバーの IP アドレスを指定して、サーバーとの接続の確立を開始します。
  7. 平たく言えば、通信接続の確立には次の 3 つのプロセスが必要です。

ホストはサーバーへの接続を確立するリクエストを送信します (こんにちは、私はあなたのことを知りたいです
  1. )。サーバーはリクエストを受信した後にリクエストを送信します 接続に同意する信号 (はい、よろしくお願いします)

  2. 接続に同意する信号を受信した後、ホストは再度サーバーに確認信号を送信します (私も満足しています)それ以来、ホストとサーバーの接続が確立されました。

追加説明: TCP プロトコル: 3 ウェイ ハンドシェイク プロセスでは、情報送信の信頼性を確保できる TCP プロトコルが使用されます。3 ウェイ ハンドシェイク プロセス中に、一方の当事者が確認信号を受信できない場合、プロトコルは、信号を再送信する必要があります。

データ送信

サーバーがホストとの接続を確立した後、ホストはサーバーと通信します。 Web ページのリクエストは一方向のリクエスト プロセスです。つまり、ホストがサーバーにデータをリクエストし、サーバーは対応するデータを返します。

  1. ブラウザは、URL コンテンツに基づいて HTTP リクエストを生成します。リクエストには、リクエストされたファイルの場所、ファイルのリクエスト方法などが含まれます。

  2. サーバーがリクエストを受信した後、決定します。 HTML ファイルの内容に基づいて応答を取得する方法

  3. ブラウザが完全に受信する前に、サーバーは取得した HTML ファイルをブラウザに送信します。 HTML ファイル; HTML 内のコードを実行すると、ブラウザは必要に応じて画像、CSS、JavsScript、その他のファイルを要求し続けます。プロセスは HTML の要求と同じです。回

  4. ホストがサーバーに切断リクエストを送信します (まだ早いです、行きましょう)

  5. リクエストを受信した後、サーバーはリクエストの受信を確認するシグナルを送信します

    ;

サーバーはホストに切断通知を送信します(私も行く時間です)

  1. ホストは切断通知を受信した後に切断し、確認信号をフィードバックし(まあまあ)、サーバーは切断します確認信号を受信した後、

  2. 追加説明

  3. サーバーが切断要求を受信する理由 すぐに切断することに同意しない: サーバーが切断要求を受信したとき、まだ送信されていないデータが存在する可能性があるため、サーバーは最初に確認信号を送信し、すべてのデータが送信されるのを待ってから切断に同意します。
  4. 4 回目のハンドシェイクの後、ホストは確認信号を送信した直後に切断せず、2 メッセージ送信サイクルを待ちました。その理由は、4 回目のハンドシェイクの確認情報が失われた場合、サーバーは 3 回目のメッセージを再送信するためです。スリーウェイ ハンドシェイクの切断信号、およびサーバーがパケット損失を検出して切断信号を再送信してホストに到達するまでの時間は、ちょうど 2 メッセージ送信サイクルです。

  5. この記事では、URLの入力からページの読み込みが完了するまでの全体のプロセスを大まかに説明していますが、個人的には非常に優れた説明であると感じているので、私自身が共有し、皆さんから学ぶためにブログに載せたいと思います。
  6. 元のアドレス: URL入力からページ読み込み完了までの流れ

以上がURLを入力してページの読み込みが完了するまでのプロセスはどのようなものですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート