:UPnP:Universal Plug and Play :SSDP:Simple Service Discovery Protocol !UPnP *http://www.upnp.org/ *UPnP 標準規格書 !IT media / UPnPとは? その仕組みの原点に立ち返る *http://plusd.itmedia.co.jp/broadband/0210/18/honda4.html *ネットワークに参加する機器同士はHTTPを使って情報を交換する。 *やりとりする情報はXMLによって定義される。 *UPnPでは名前参照と解決をIPブロードキャストによって行う。 *ネットワーク上に接続されたデバイスの発見と機能の把握は、SSDP(Simple Service Discover Protocol)を用いる。 *ネットワーク上にディレクトリサーバが存在する場合は、ネットワークに新たに接続された機器が自ら参加したことをIPブロードキャストでアナウンスし、そのメッセージを受け取ったディレクトリサーバが新しい機器の参加の検知。するとディレクトリサーバは、新加入の機器に対して、どのような機器なのか、どのような機能を持っているかなどの情報を聞き取り調査してディレクトリデータベースに登録する。あとはLDAPを用いてディレクトリサーバに問い合わせを行えば、その機器の情報をいつでも参照できるようになる。 !Microsoft / Windows XP のユニバーサル プラグ アンド プレイ機能について *http://support.microsoft.com/kb/323713/ja *ドライバを必要としない標準規格に沿ったプロトコル メカニズムを介して、デバイスとサービスの検出と制御が可能になります。 *UPnP デバイスはネットワーク アドレスを自動的に構成し、ネットワーク サブネット上での自分の存在をアナウンスし、デバイスとサービスに関する情報を交換することが可能です。 *ユニバーサル プラグ アンド プレイ機能には、以下の 5 つのプロセスが含まれます。 **検出 : ユニバーサル プラグ アンド プレイ デバイスは、SSDP (Simple Service Discovery Protocol) を使用してネットワーク上での自分の存在を他のデバイスおよびコントロール ポイントにアドバタイズします。新しいコントロール ポイントは、SSDP を使用してネットワーク上のユニバーサル プラグ アンド プレイ デバイスを検出します。デバイスとコントロール ポイントの間で交換される情報は、検出メッセージおよびディスクリプション URL に限定されます。検出メッセージはデバイスとそのサービスに関する基本的な情報を提供し、ディスクリプション URL はデバイスに関する追加情報を収集するために使用できます。 **ディスクリプション : 検出プロセスで提供された URL を使用して、コントロール ポイントがデバイスに関する XML 情報 (製造番号、モデル番号、シリアル番号など) を受け取ります。このディスクリプション プロセスには、組み込みデバイス、組み込みサービス、およびデバイスの機能にアクセスするための URL の一覧が含まれる場合もあります。 **コントロール : コントロール ポイントは、ディスクリプション プロセスで提供された URL を使用して追加の XML 情報にアクセスします。この情報にはユニバーサル プラグ アンド プレイ デバイスのサービスが応答するアクションと各アクションのパラメータについての説明が含まれます。コントロール メッセージは XML 形式で、SOAP を使用します。 **イベント生成 : コントロール ポイントがサービスに加入すると、そのサービスはデバイス ステータスの変更をアナウンスするために、コントロール ポイントに対してイベント メッセージを送信します。イベント メッセージは XML 形式で、General Event Notification Architecture (GENA) に従います。 **プレゼンテーション : ユニバーサル プラグ アンド プレイ デバイスがプレゼンテーション URL を提供する場合、ブラウザを使用してインターフェイス制御機能、デバイスまたはサービスの情報、あるいは、製造元により実装されたデバイス固有の機能にアクセスすることができます。 !Microsoft / SSDP Discover Service および Universal Plug and Play Device Host を無効にしても SSDP トラフィックが送信される *http://support.microsoft.com/kb/317843/ja *この問題は、Windows Messenger によって、アップストリームのインターネット ゲートウェイ デバイスがあるかどうかの確認に SSDP 検出プロセスが使用されているために発生します。 *UPnPMode を 2 に設定すると、ユニバーサル プラグ アンド プレイの NAT (Network Address Translation) トラバース検出は実行されないようになります。 !Academic Ubiquitous InfoDB / SSDP *http://ubi.cogma.org/read.php?n=72 *SSDP(Simple Service Discover Protocol)とはネットワーク上に接続されたデバイスとサービスを発見するためのプロトコルであり,UPnP(Universal Plug & Play)におけるサービス検索を行うDiscoveryステップにおいて利用されています. *SSDPはIETFにより標準仕様が発行されています. *サービス探索には「SSDP:コネクト」や「SSDP:サーチ&ディスカバー」といったフェーズがあります. * 「SSDP:コネクト」はネットワークに対して機器自身が参加したことを告知するフェーズです. * 「SSDP:サーチ&ディスカバー」は端末がサービスを検索するフェーズです. !wikipedia / SSDP *http://en.wikipedia.org/wiki/Simple_Service_Discovery_Protocol *SSDP uses XML UDP unicast and multicast packets to advertise their services. *The multicast address is 239.255.255.250. *SSDP uses port 1900. !geekpage / UPnPデバイス一覧を取得 *http://www.geekpage.jp/programming/perl-network/get-upnp-device.php *perl Net::UPnP::ControlPoint