
P2P プロトコルがネットワーク上でどのようにルーティングされるかを知りたいです。(たとえば、torrent の場合) クライアント サーバー アーキテクチャでは、サーバーに有効な IP アドレスがありますが、P2P ではそれがありません。ローカル IP アドレスがある場合、パケットはインターネット上でどのようにルーティングされるのでしょうか。どうもありがとうございます。
答え1
「ピアツーピア」とは、実際には、任意のノードまたはピアが、何らかの形でクライアントまたはサーバーとして機能できることを意味します。したがって、このような方法で動作するものは、単一の中央ノードを必要としません。
ピアツーピア プロトコルが達成しようとしていることを正常に実行するには、ピアは他のピアの IP アドレスを知っている必要があります。そのため、何らかの検出メカニズムまたはプロトコルが必要であり、たとえ導入的な役割しか果たさないとしても、何らかの集中的に利用できるポイントが本当に必要です。
Bittorrent は、そのような中心点としてトラッカーに依存しています。トラッカーとは、ピアがその情報を要求したときに、スウォーム上の他の IP で応答する HTTP サーバーにすぎません。分散ハッシュ テーブルなどの他のものも使用できます。これらはすべてのピア間で交換されますが、「ブートストラップ」されるためにいくつかのよく知られた IP アドレスに依存します。
答え2
最も単純な p2p 接続の場合、p2p 接続を確立するには、接続の両側のいずれかにポート転送 (uPnP または手動設定) が必要です。
その後は、ポート転送が設定されているルーターの IP と通信するだけで、それらのパケットが P2P 接続の「サーバー」として機能するコンピューターに転送されます (ポート転送が設定されていない「クライアント」側が接続を開始します)。
サードパーティを利用して次のようなことを実行できる回避策がいくつかあります。NATホールパンチングP2P 通信のセットアップにのみ関与します。
P2P 通信接続のセットアップの時点では、着信接続を受け入れることができるコンピューターが少なくとも 1 台は必ず必要です。
答え3
ピアツーピアネットワークは、物理的なネットワーク構成の一部として、またはインターネットを介して行われる場合でも、メッシュネットワークWikipedia の記事より:
ルーティング技術を使用すると、メッセージは宛先に到達するまでノードからノードへとホップすることでパスに沿って伝播されます。すべてのパスの可用性を確保するには、ルーティング ネットワークで自己修復アルゴリズムを使用して、切断されたパスやブロックされたパスを回避しながら継続的な接続と再構成を可能にする必要があります。
BitTorrentプロトコル(一般的なP2Pよりも少し特殊なプロトコル)に興味がある場合は、仕様書を読む、 またはBitTorrentのサイトを閲覧する詳細についてはフォーラムをご覧ください。