UPnP アーキテクチャの概要

UPnP アーキテクチャでは、インテリジェント アプライアンス、デバイス、 および制御ポイントのピアツーピア ネットワーク接続を定義します。 これらのネットワークが家庭、小規模企業、またはインターネットに直接接続されているかどうかに関係なく、アドホック、マネージド、またはアンマネージド のネットワークに対して、使いやすく、柔軟で標準ベースの接続を実現するように設計されています。 UPnP アーキテクチャは、既存の TCP/IP および Web テクノロジを使用して、ネットワーク化されたデバイス間の制御とデータ転送に加えて、シームレスな近接ネットワークを可能にする、分散型のオープン ネットワーク アーキテクチャです。

UPnP は、XML や Simple Object Access Protocol (SOAP) などの Web サービス プロトコルの予備バージョンに基づく IP ベースのプロトコル スイートです。 UPnP を使用すると、デバイスはネットワークに動的に参加し、IP アドレスを取得し、その機能を伝え、ネットワーク上の他のデバイスの存在と機能を検出できます。

UPnP デバイスは、サービスと入れ子になったデバイスのコンテナーです。 たとえば、VCR はテープ トランスポート サービス、チューナー サービス、クロック サービスで構成される場合があります。 UPnP デバイスのさまざまなカテゴリは、さまざまなサービス セットと組み込みデバイスに関連付けられます。 たとえば、VCR 内のサービスはプリンター内のサービスとは異なります。 特定のデバイスの種類で提供できる一連のサービスに関する情報は、デバイスがホストする XML デバイス記述ドキュメントにキャプチャされます。 デバイスの説明には、デバイス名やデバイスに関連付けられているアイコンなどのプロパティも一覧表示されます。 Microsoft は、 PnP-X および 関数検出との統合を含むように UPnP サポートを強化しました。

UPnP アーキテクチャは、プラグ アンド プレイ周辺機器モデルの単純な拡張だけではありません。 これは、幅広いベンダーのデバイス カテゴリに対して、ゼロ構成、非表示のネットワーク、自動検出をサポートします。 これにより、デバイスはネットワークに動的に参加し、IP アドレスを取得し、要求に応じてその機能を伝達できます。 その後、他のコントロール ポイントでは、UPnP テクノロジを使用してコントロール ポイント API を使用して、他のデバイスの存在と機能について学習できます。 デバイスは、使用されなくなったときに、ネットワークをスムーズかつ自動的に残すことができます。

UPnP テクノロジに関するユニバーサルとは

  • メディアとデバイスの独立。 UPnP テクノロジは、電話回線、電源ライン、イーサネット、RF、1394 を含む任意のメディアで実行できます。
  • プラットフォームの独立。 ベンダーは、任意のオペレーティング システムと任意のプログラミング言語を使用して、UPnP ベースの製品を構築します。
  • インターネットベースのテクノロジ。 UPnP テクノロジは、特に IP、TCP、UDP、HTTP、XML に基づいて構築されています。
  • UI コントロール。 UPnP アーキテクチャを使用すると、ベンダーは、ブラウザーを使用してデバイスのユーザー インターフェイスと対話を制御できます。
  • プログラムによる制御。 UPnP アーキテクチャでは、従来のアプリケーションプログラムによる制御も可能です。
  • 一般的な基本プロトコル。 ベンダーは、デバイスごとに基本プロトコル セットに同意します。
  • 拡張。 各 UPnP ベースの製品は、個々の製造元によって、基本的なデバイス アーキテクチャの上に階層化された付加価値サービスを持つことができます。

UPnP テクノロジは、小規模企業や商業ビルのホーム ネットワーク、近接ネットワーク、ネットワークを対象とするという点で、幅広い範囲にあります。 これにより、ネットワーク上の任意の制御デバイスのコマンドで、任意の 2 つのデバイス間のデータ通信が可能になります。 UPnP テクノロジは、特定のオペレーティング システム、プログラミング言語、または物理メディアに依存しません。

Microsoft には、UPnP ベースのデバイスを操作するための 2 つの API が用意されています。

  • コントロール ポイント API - アプリケーションが UPnP ベースのデバイスを検索および制御できるようにする一連の COM インターフェイスを提供します。
  • デバイス ホスト API - 開発者がコア デバイス機能を記述し、デバイスホストにデバイスを登録できるようにする一連の COM インターフェイスを提供します。 デバイス ホストは、UPnP ベースのデバイス機能の検出、説明、制御、およびイベント部分を処理します。