2012-03-02 7 views
2

クライアントがサービスを検出するための戦略は何ですか?WindowsでのIP探索

たとえば、サービスに接続するクライアント(同じネットワーク上の同じサブネット上にあるものと仮定します)がある場合、サービスが実行されていることを検出する良い方法はクライアントがそれに接続しますか?

クライアントが頻繁にブロードキャストし、サービスが応答するのを待ちますか?あるいは、サービスを頻繁に放送して、クライアントに聞かせてもらえますか?

サービスをブロードキャストしてクライアントに聞き取りたいと思うでしょう。

これのための標準的なプラクティスは何ですか?

例えば、サービスは、クライアントがWi-Fi /ネットワーク経由でリモートコントロールしているときに音楽を再生する音楽プレーヤーのようなものです。 PC/MAC上のiTunesプレーヤーを制御するiPhone用のiTunes Remoteを考えてみましょう。

+0

発見したいサービスの種類をより明確にすることはできますか? –

+0

例えば、クライアントのリモコンがwifi /ネットワーク経由で音楽をコントロールするときに音楽を奏でる音楽プレーヤーのようなサービスです。 –

+0

クライアントがサービスの場所を知っているのはなぜですか? –

答えて

1

あなたの質問には2つの部分があります

  • サービスを検索する方法は?
  • サービスが実行されているかどうかを確認する方法

サービスが実行中かどうかを確認する通常の方法は、サービスへの接続を試みることです。

どのように検索するのですか?通常、放送は避けたいと思うでしょう。一般的なアプローチは次のとおりです。

  • クライアント上のサーバーの名前を構成します。
  • カスタムDHCPオプションを追加します。クライアントはDHCPサーバーからサーバーのアドレスを照会できます。

ブロードキャストする場合は、クライアントがクエリを送信するのが普通です。これは、サーバーがその場所を宣伝している場合、継続的なブロードキャスト(およびクライアントでの遅延)ではなく、新しいクライアントがネットワークに参加するたびに単一のブロードキャストを提供します。