「コンピュータ ネットワーク - トップダウン アプローチ」の改良 - 2.5-2.6.1

「あなたが望む世界の変化になりましょう。」- マハトマ・ガンジー

DNS

ホストを識別するために「www.baidu.com」などのホスト名を使用することがよくありますが、ネットワークでは実際にホストを識別するためにIP アドレスが使用されます。したがって、DNS の機能である、ホスト名から IP アドレスにマップできるインデックスが必要です。

DNS の概要

DNSの構成

DNS は次の 2 つの部分で構成されます。

  1. 多数のインデックスを格納する分散データベース
  2. ホスト ルックアップ インデックスの DNS プロトコル

DNS サービス

  1. ホスト名から IP アドレスへの変換を提供します。
  2. ホスト エイリアス: 一部のホストには、ホスト エイリアスと呼ばれる覚えやすいホスト名を付けます。元の覚えにくい名前は、ホスト正規名と呼ばれます。
  3. メール サーバー エイリアス
  4. 負荷分散: 一部のビジーなサイトでは、複数のサーバーが実行されている場合があります. これらのサーバーには異なる IP アドレスがありますが、同じホスト名にマップできます. この時点で、DNS はホスト名から一連の IP アドレスへのマッピングを提供します.
    ホストは常に IP セットの最初の IP アドレスにメッセージを送信し、このホスト名が受ける負荷を分散できるため、マッピングを提供するとき、DNS は IP セットの順序を循環させます。

DNS 実行中のプロセス

DNSの分散データベース

DNS インデックスは、大規模な分散データベースに格納されます。
ここに画像の説明を挿入

  1. ルート DNS サーバー: トップレベル ドメイン DNS サーバーの IP アドレスを格納するトップレベル DNS サーバー。
  2. トップレベル ドメイン (TLD) DNS サーバー: com、edu などのトップレベル ドメイン名を担当し、権限のある DNS サーバーの IP アドレスを保存します。
  3. 権限のある DNS サーバー: 検索する必要があるホストの IP アドレスを格納します。

ローカル DNS サーバー

ホストが DNS クエリを実行すると、まず要求がローカル DNS サーバーに送信され、ローカル DNS サーバーが必要な IP アドレスを受信すると、それが要求元のホストに送信されます。

DNSの運用の流れ

ここに画像の説明を挿入

  1. 要求ホストは、ローカル DNS サーバーから宛先ホストの IP アドレスを要求します。
  2. ローカル DNS サーバーは、ルート DNS サーバーに要求を送信します. ルート DNS サーバーは、ホスト名にサフィックス edu があることを検出し、ローカル DNS サーバーに、edu トップレベル ドメインの TLD DNS サーバーを担当していることを通知します.
  3. ローカル DNS サーバーは TLD DNS サーバーに要求を送信し、TLD DNS サーバーはホスト名に umass.edu サフィックスがあることを検出し、ローカル DNS サーバーに、このサフィックスの権限のある DNS サーバーを担当していることを通知します。
  4. このプロセスを繰り返すことで、ローカル DNS サーバーは宛先ホストの IP アドレスを取得し、この IP アドレスを要求ホストに返します。

再帰クエリ、反復クエリ

上記のプロセスで、要求側ホストがローカル DNS サーバーを要求し、次にローカル DNS サーバーが他のサーバーを要求すること理解するのは難しくありません

DNS キャッシュ

ローカル DNS サーバーがホストの IP アドレスを要求した後、宛先ホスト名とその IP アドレスの間のマッピングを一時的に保存します。これはDNS キャッシュと呼ばれます。このように、短時間に同じホスト名のリクエストがあった場合、必要な IP アドレスを直接返すことができます。ホスト名または IP アドレスは変更される可能性があるため、このキャッシュは通常 2 日間しか存在しません。

DNS レコード

DNS マッピングはリソース レコードとして DNS サーバーに保存され、リソース レコードには 4 つの要素 (名前、値、タイプ、TTL) が含まれます。ここで、TTL はレコードの有効期間、つまりレコードが存在する時間を示します。他の 3 つの要素のうち、Name と Value の関係は Type によって決まります。
ここに画像の説明を挿入

DNS メッセージ

DNS パケットの形式は次のとおりです。
ここに画像の説明を挿入

ヘッダ領域

12 バイトの領域。

  1. 識別子: クエリを識別する一意の識別子で、要求メッセージと応答メッセージを照合するために使用されます。
  2. フラグ フィールド: いくつかのフラグを持つフィールド。これらのフラグには、相​​手に伝えたい情報が含まれています。たとえば、これはクエリ/応答メッセージであるか、メッセージを送信するサーバーが権限のある DNS サーバーであるかどうかなどです。
  3. その他のフィールド: ヘッダーの後の 4 種類のデータ領域の出現回数を示します。

問題領域

照会されたホスト名とタイプ情報、つまりリソー​​ス レコードの Name と Type を含む、照会されている質問情報を送信し、これらの情報に従って Value を取得できます。

解答欄

照会するリソース レコードが含まれます。ホスト名が複数の IP アドレスに対応する場合があるため、複数のレコードが存在する場合があります。

権限のある領域

他の権限のあるサーバーからのレコード。

追加エリア

その他の役立つメモ。

DNS レコードを挿入する

DNS リソース レコードを挿入する必要がある場合は、ドメイン名 (ドメインとは、1 つ以上の正式な DNS サーバーの管轄下にあるサイトです) を登録機関に登録する必要があります. 登録の際には、ドメイン名と、
ドメイン内の権威 DNSサーバー ホスト名とその IP アドレス。レジストリは、情報が一意であることを確認し、データベースに入力します。

P2P

P2P アーキテクチャとは、ネットワーク内のすべてのホストがファイルのアップロードとダウンロードの両方を行い、それらが等しいことを意味します。

P2Pファイル配信

P2P スケーラビリティ

新しく参加したホストも送信用のデータと帯域幅を提供するため、P2P ネットワークのスケーラビリティは、クライアント サーバー アーキテクチャのスケーラビリティよりもはるかに強力です。
元の本では、この点についてより厳密な数学的証明が行われましたが、ここでは省略します。

BitTorrent

BitTorrent は、ファイル配布用の P2P プロトコルです。

用語

  1. ファイル ブロック: 特定のファイルの等長部分で、通常は 256KB です。
  2. トレント: 同じファイルの配布に参加しているネットワーク内のすべてのピアのコレクション。
  3. トラッカー: 各 torrent にはトラッカーが含まれています. ピアが torrent に参加すると、ピアはトラッカーに登録し、ピアを追跡するためにまだ torrent にあることをトラッカーに定期的に通知します.

作業工程

  1. ピア A は torrent に参加し、トラッカーはランダムに A への他のピアをランダムに選択し、A はこれらのピアとの TCP 接続を作成します。TCP 接続を確立するピアを隣接ピアと呼びます。
  2. は定期的にすべてのネイバーに、ファイル用に持っているブロックのリストを要求し、それに応じてどのブロックを要求するかを決定します。

重要なメカニズム

  • どのチャンクが要求されますか?
    A は、希少性優先の手法を採用しています。つまり、所有していないブロックの中で、隣接するブロックの数が最も少ないブロックを要求します。たとえば、所有していないブロックが見つかったが、隣接するブロックの 1 つだけが所有している場合、そのブロックを最初に要求することは間違いありません。このメカニズムにより、最も希少なブロックが迅速に拡散することが保証されます。
  • それはどの隣人に要求しますか? A は、 tit for tat
    として知られる方法を使用しますこの方法により、ホストは同様に高速でデータを相互に転送できます。
  1. 他のユーザーがデータを送信する速度を定期的に検出し、最高速度でデータを提供できる最初の 4 つのネイバーにデータを提供します。これらの 4 つの近隣は浚渫と呼ばれます
  2. 同時に、30 秒ごとに、別の隣人 B にデータを送信しようとします。B は、A がより速くデータを提供することを発見した場合、A を独自の浚渫リストに含め、A にデータを提供します。
  3. B のデータを受信する A が、B によって提供されるデータ速度も非常に高速であることを発見した場合、A と B がより高速な速度で相互にデータを送信できるように、B を浚渫リストに含めます。
    写真の説明を追加してください
    私はShuang_Aiです。アルゴリズムの道に熱心に取り組んでいる新人のShuang_Aiです。読んでくれてありがとう!いいと思ったら注意してください。ネットワーク計画の知識については、今後ますます包括的に説明していきます。

おすすめ

転載: blog.csdn.net/m0_72987309/article/details/130349325