![これはP2P接続と呼べるのでしょうか?](https://rvso.com/image/1311793/%E3%81%93%E3%82%8C%E3%81%AFP2P%E6%8E%A5%E7%B6%9A%E3%81%A8%E5%91%BC%E3%81%B9%E3%82%8B%E3%81%AE%E3%81%A7%E3%81%97%E3%82%87%E3%81%86%E3%81%8B%EF%BC%9F.png)
2 つのクライアントがあり、サーバーと対話します。
ある時点で、サーバーは接続を確立するためにクライアントに互いの情報を送信します。
2 つのクライアントは相互にソケット接続を確立し、サーバーを経由せずに直接データを交換します。
これはP2P接続ですか?
答え1
はい、それは P2P 接続です。詳細については、以下を参照してください。http://en.wikipedia.org/wiki/BitTorrent_(プロトコル)
答え2
答え3
「クライアント」、「サーバー」、「ピアツーピア」という用語はいずれもやや曖昧であり、それらの境界はあいまいです。
サーバーである特定のエンティティ X は通常、接続を開始せず、クライアントが通信するのを待ちます。逆に、クライアントは接続をリッスンせず、指定されたサーバーまたは検出されたサーバーへの接続を開始します。
ピアツーピアでは、X が接続を開始したり受信したりできます。
ここでの X はプロセス、プロセスの一部、プロセスのスレッドなどですが、すべて同じサービスである必要があります。プロセスまたはプログラムは、あるタイプのサービスのクライアントであり、別のタイプのサービスのサーバーである場合があります。したがって、これは実際には「ピアツーピア」ではなく、クライアント (あるタイプ) とサーバー (別のタイプ) の両方であるプログラムです。
あなたが提供した例では、検出プロセスとデータ転送プロセスという 2 つの処理が行われています。つまり、2 つの異なるプロトコル、またはプロトコルの一部が実行されます。「ピアツーピア」のほとんどすべてがこのようなハイブリッドであり、ピアはサーバーの支援なしでデータを交換できますが、検出にはサーバーのようなものが必要です。