0

LANP2Pネットワークに検出機能を実装する方法を知りたいのですが。.NET 3.5 P2Pライブラリを使用したくないので、自分で設計したい。ユーザーが[接続]ボタンを押すと、LANにブロードキャストメッセージが送信され、他のピアに利用可能であることが通知されます。受信スレッドの他のピアはそのメッセージを識別し、彼らの意志によって接続を確立できます。次に例を示します。IP192.168.0.101のマシン1は接続を押し、ブロードキャストの「255.255.255.255」にメッセージ「Command.Connect」を送信します。IP192.168.0.102のマシン2は、UDPメッセージのスレッドを待機し、IP192.168でそのピアを識別します。 .0.102ユーザーがDisconnectを押すと、同じ方法で「Command.Disconnect」が送信されます。

4

1 に答える 1

1

単純なLAN専用に設計している場合は、UDPブロードキャストの代わりにIPマルチキャストを使用することも検討できます。IPマルチキャストを使用すると、新しいピアは関心のあるピアにのみメッセージを送信しますが、ブロードキャストの場合、チャットプログラムを実行していない場合でも、メッセージはすべてのコンピューターに送信されます。ただし、両方のオプションには長所と短所があり、アプリケーションの要件と将来の計画によって異なります。

次に、システムにサーバーを配置できる場合は、サーバーをさらに微調整できます。チャットメッセージングは​​ピアツーピアモデルで維持できますが、一部のピアがオンラインになると、専用サーバーに登録し、サーバーに他の登録済みピアのリストを提供するように依頼して、他のピアと直接対話できます。これは、認証などの機能を追加する場合にも役立ちます。

于 2012-08-04T01:05:14.110 に答える