2012-03-02 50 views
2

客戶端發現服務的一些策略是什麼?Windows中的IP發現

例如,我們有一個客戶端想要連接到一個服務(假設他們在同一個網絡上的同一個子網上),發現一個服務正在運行的好方法是什麼,然後客戶端會嘗試連接到它?

我們希望客戶端經常廣播並等待服務響應嗎?或者我們會經常播出服務並讓客戶聽嗎?

我想我們會希望我們的服務能夠自己播放並讓客戶端收聽。

這是什麼標準做法?

服務例如將會像客戶端通過WiFi /網絡遠程控制它時播放音樂的音樂播放器。想想iPhone的iTunes Remote控制PC/MAC上的iTunes播放器。

+0

您是否更清楚您想要發現的服務類型? – 2012-03-04 09:20:53

+0

這個服務例如是一個音樂播放器,當客戶端通過WiFi /網絡遠程控制它時播放音樂。 – 2012-03-05 00:58:58

+0

爲什麼客戶不知道服務在哪裏? – 2012-03-05 00:59:45

回答

1

有兩個部分你的問題:

  • 如何找到服務?
  • 如何發現服務是否正在運行?

判斷服務是否正在運行的正常方法是嘗試連接到它。

那麼如何找到它?通常你想避免廣播。典型的方法是:

  • 配置客戶端上的服務器名稱。
  • 添加自定義DHCP選項;客戶端可以從DHCP服務器查詢服務器的地址。

如果您進行廣播,客戶端發送查詢是正常的。每次新客戶端加入網絡時,這會爲您提供一次廣播,而不是在服務器正在廣告其位置時連續廣播(並在客戶端延遲)。