リモートインターフェイス装置であって、リモートホストと通信するように構成されるネットワークインターフェイスと、周辺デバイスと接続するように構成されるハードウェア周辺デバイスインターフェイスと、前記ネットワークインターフェイスと連携して前記ハードウェア周辺デバイスインターフェイスを前記ホストのリモート周辺デバイスの接続ポートに転送するインターフェイス提供メカニズムであって、当該インターフェイス提供メカニズムが、前記ハードウェア周辺デバイスインターフェイス用のドライバを仮想インターフェイスに物理的に転送するように構成されているものと、ネットワークへの接続時にネットワークアドレスを自動的に取得し、前記ハードウェア周辺デバイスインターフェイスの情報をブロードキャストするように構成されるネットワークアドレス構成メカニズムと、前記周辺デバイスのドライバ命令をネットワークプロトコルにて前記ハードウェア周辺デバイスインターフェイスの前記ドライバに転送するためのメカニズムと、前記周辺デバイスの実行結果をネットワークプロトコルにて前記ホストに転送するためのメカニズムと、前記ハードウェア周辺デバイスインターフェイス及び/又は前記周辺デバイスのステータス情報について、前記ホストに返信するための呼出しメカニズムと、前記ハードウェア周辺デバイスインターフェイス及び/又は前記周辺デバイスのステータス情報を前記ホストに自発的に転送するためのイベントメカニズムとを有することを特徴とするリモートインターフェイス装置。デバイスタイプ及び/又はデバイス識別子をブロードキャストするように構成されるアドバタイジングメカニズムと、前記ネットワーク内の他のデバイスからの問合せを受信したときにデバイスタイプ及び/又はデバイス識別子で応答するように構成されるディスカバリメカニズムとを更に有することを特徴とする請求項1に記載のリモートインターフェイス装置。リモートインターフェイス装置であって、リモートホストと通信するように構成されるネットワークインターフェイスと、周辺デバイスと接続するように構成される周辺デバイスインターフェイスと、前記ネットワークインターフェイスと連携して前記周辺デバイスインターフェイスを前記ホストのリモート周辺デバイスの接続ポートに転送するインターフェイス提供メカニズムであって、当該インターフェイス提供メカニズムが、前記周辺デバイスインターフェイス用のドライバを仮想インターフェイスに物理的に転送するように構成されているものと、アドバタイジング又はディスカバリによってネットワークアドレスを受信したときに、前記デバイスインターフェイスの情報を提供するように構成される情報提供メカニズムとを有することを特徴とするリモートインターフェイス装置。DynamicHostConfigurationProtocolDHCPによる前記ネットワークアドレスを取得するネットワークアドレス構成メカニズムを更に有することを特徴とする請求項3に記載のリモートインターフェイス装置。前記情報提供メカニズムが、デバイスタイプ及び/又はデバイス識別子をブロードキャストするように構成されるアドバタイジングメカニズムと、前記ネットワーク内の他のデバイスからの問合せを受信したときにデバイスタイプ及び/又はデバイス識別子で応答するように構成されるディスカバリメカニズムとを有することを特徴とする請求項3に記載のリモートインターフェイス装置。リモートインターフェイスシステムであって、リモートホストと通信するように構成されるネットワークインターフェイスと、周辺デバイスと接続するように構成される周辺デバイスインターフェイスと、前記ネットワークインターフェイスと連携して前記周辺デバイスインターフェイスを前記ホストのリモート周辺デバイスの接続ポートに転送するインターフェイス提供メカニズムであって、当該インターフェイス提供メカニズムが、前記ハードウェア周辺デバイスインターフェイス用のドライバを仮想インターフェイスに物理的に転送するように構成されているものと、前記ネットワークへの接続時にネットワークアドレスを自動的に取得し、前記周辺デバイスインターフェイスの情報をブロードキャストするように構成されるネットワークアドレス設定メカニズムとを備えるリモートインターフェイス装置と、仮想周辺デバイスインターフェイスオブジェクトを備えるホストと、を有し、前記仮想周辺デバイスインターフェイスオブジェクトが前記周辺デバイスのドライバ命令をネットワークプロトコルにて前記リモートインターフェイス装置に転送し、その後、前記リモートインターフェイス装置の実行結果を受信することを特徴とするリモートインターフェイスシステム。前記リモートインターフェイス装置が、前記周辺デバイスのドライバ命令をネットワークプロトコルにて前記周辺デバイスインターフェイスの前記ドライバに転送するためのメカニズムと、前記周辺デバイスの実行結果をネットワークプロトコルにて前記ホストに転送するためのメカニズムとを備えることを特徴とする請求項6に記載のリモートインターフェイスシステム。前記リモートインターフェイス装置が、前記周辺デバイスインターフェイス及び/又は前記周辺デバイスのステータス情報について、前記ホストに返信するための呼出しメカニズムと前記周辺デバイスインターフェイス及び/又は前記周辺デバイスのステータス情報を前記ホストに自発的に転送するためのイベントメカニズムとを備えることを特徴とする請求項7に記載のリモートインターフェイスシステム。前記周辺デバイスインターフェイスが、有線ネットワークインターフェイス又は短距離無線インターフェイスであることを特徴とする請求項1又は3に記載のリモートインターフェイス装置。前記周辺デバイスインターフェイスが、有線ネットワークインターフェイス又は短距離無線インターフェイスであることを特徴とする請求項6に記載のリモートインターフェイスシステム。リモートインターフェイスシステムを使用するための方法であって、リモートインターフェイス装置によってネットワークアドレスを自動的に取得するステップと、前記リモートインターフェイス装置で提供されるデバイスインターフェイスサービスをブロードキャストするステップと、前記リモートインターフェイス装置とホストとの接続を設定するステップと、前記リモートインターフェイス装置に接続された周辺デバイス用のドライバを自動的にインストールするステップと、前記周辺デバイスに対応する仮想周辺デバイスインターフェイスオブジェクトを前記ホストによって設定するステップと、前記周辺デバイス用の前記ドライバを仮想インターフェイスに転送するステップとを含むことを特徴とする方法。前記周辺デバイスインターフェイス及び/又は前記周辺デバイスの情報について、前記ホストに返信するステップと、前記ホストによって要求されたイベント通知のサブスクリプションを受け入れるステップと、ステータスイベント又はステータス変動イベントを送信するステップとを更に含むことを特徴とする請求項11に記載の方法。前記周辺デバイスインターフェイスが、有線ネットワークインターフェイス又は短距離無線インターフェイスであることを特徴とする請求項11に記載の方法。本発明では、ネットワークインターフェイスと、周辺デバイスインターフェイスと、インターフェイス提供メカニズムと、ネットワークアドレス設定メカニズムとを備えるリモートインターフェイス装置を提案する。ネットワークのインターフェイスは、リモートホストと通信するように構成される。周辺デバイスのインターフェイスは、周辺デバイスに接続するように構成される。インターフェイスを提供しているメカニズムは、ネットワークインターフェイスと連携して、周辺デバイスのインターフェイスをホストのリモート周辺デバイスの接続ポートに転送する。ネットワークアドレス設定のメカニズムは、ネットワークへの接続時にネットワークアドレスを自動的に取得し、周辺デバイスのインターフェイスの情報をブロードキャストするように構成される。本発明では、ホストとリモートインターフェイス装置とを備えるリモートインターフェイスシステムを提案する。ホストは、仮想周辺デバイスのインターフェイスオブジェクトを備える。該仮想周辺デバイスのオブジェクトは周辺デバイスのドライバの命令を受信し、その周辺デバイスのドライバの命令をネットワークプロトコルでリモートインターフェイス装置に転送する。その後、仮想周辺デバイスのインターフェイスオブジェクトは、リモートインターフェイス装置の実行結果を受信し、その結果をアプリケーションに転送する。リモートインターフェイスシステムを使用するための方法は、リモートインターフェイス装置によってネットワークアドレスを自動的に取得するステップと、リモートインターフェイス装置で提供されるデバイスインターフェイスサービスをブロードキャストするステップと、リモートインターフェイス装置とホストとの接続を設定するステップと、リモートインターフェイス装置に接続された周辺デバイス用のドライバを自動的にインストールするステップと、周辺デバイスに対応する仮想周辺デバイスのインターフェイスオブジェクトをホストによって設定するステップと、を含む。添付の図面に従って本発明を以下に説明する。図1は、本発明の一実施形態に係るリモートインターフェイスデバイスを示す。RS232デバイス101、USBデバイス102、及び短距離無線デバイス103Bluetooth登録商標、Zigbee登録商標、IrDAなどは、リモートインターフェイスデバイス104に接続される。リモートインターフェイスデバイス104は、周辺デバイスのインターフェイスを、ネットワークを介してネットワークのホストに提供する。リモートインターフェイスデバイス104はネットワークに接続すると、DHCPからネットワークアドレスを取得するか、ネットワークアドレス設定メカニズムを介して自動IPアルゴリズムによりネットワークアドレスを自動的に設定及びテストすることでネットワークアドレスを取得し、次いで、ブロードキャストメカニズムを介してネットワーク内にブロードキャストし、リモートインターフェイスデバイス104が所有する周辺デバイスのインターフェイスのタイプを示す。これにより、ネットワーク内のホストは、どのような種類の周辺デバイスのインターフェイスを使用すれば、リモート周辺デバイスに接続できるかを認識することができる。ホストは、周辺デバイスのインターフェイスサービスに関する通知を受信、又はインターフェイス提供メカニズムを介して周辺デバイスのインターフェイスの位置を特定すると、次に、周辺デバイスのインターフェイスがホストの仮想周辺デバイスの接続ポートとなるように、リモート周辺デバイスを設定する。ホストのアプリケーションプログラムに対して、仮想周辺デバイスの接続ポートがホストの他の接続ポートと同様に機能する。ホストは、このようなサービスを通して、どのようなタイプの接続ポートがリモート側で使用可能であるか、又は使用する適切な接続ポートが十分に存在するかどうかを把握する。ホスト側の使用者が適切な仮想周辺デバイスの接続ポートの位置を特定すると、周辺デバイスはその仮想周辺デバイスの接続ポートに接続するように設定される。リモートインターフェイスデバイス104は、UPnP通信プロトコルの通信フォーマット等の特定のプロトコルをサポートする。例えば、ディスカバリのプロトコルを利用することで、リモートインターフェイスデバイス104により提供されるサービスを検索する場合、ホスト105は、HTTPのGET命令を使用してリモートインターフェイスデバイス104から周辺デバイスのインターフェイス又はそれに関するデバイスの記述ドキュメントを取得することができる。周辺デバイスにリモートインターフェイスデバイス104がインストールされると、ホスト105は、周辺デバイスに対応する仮想周辺デバイスインターフェイスオブジェクト109をその仮想リモートインターフェイスドライバ108内に順次設定する。ホスト105のアプリケーションプログラム110は、仮想周辺デバイスインターフェイスオブジェクト109を用いて周辺デバイスへの接続を制御する。例えば、RS232デバイス101のアプリケーションプログラムがそのRS232デバイスに命令を与える場合、命令はRS232デバイスの仮想周辺デバイスインターフェイスオブジェクト109を介してネットワークドライバ107に送信され、次いでネットワークインターフェイス106によって、RS232デバイスに付加されたリモートインターフェイスデバイス104に送信される。リモートインターフェイスデバイス104は命令を受信すると、RS232デバイス101のドライバにネットワークプロトコルで命令を転送するためのメカニズムを動かす。RS232デバイス101が必要な実行を終了すると、リモートインターフェイスデバイス104は、別のメカニズムを動かす。このメカニズムでは、実行結果が、リモートインターフェイスデバイス104のネットワーク機能を介したネットワークプロトコルでホストのネットワークインターフェイス106に送信され、更にネットワークドライバ107と仮想周辺デバイスインターフェイスオブジェクト109を経てアプリケーションプログラム110に達する。図2は、本発明の一実施形態に係るリモートインターフェイスデバイスのソフトウェア構造を示す。主に図2を参照し、更に図1も参照するに、リモートインターフェイスデバイス104の主な目的は、リモート周辺デバイスを制御するために、ネットワークのホスト105への周辺デバイスインターフェイスを提供することにある。したがって、リモートインターフェイスデバイス104の主要部分は、該デバイスとホストとの通信及び該デバイスと周辺デバイスとの通信のためのハードウェアとソフトウェアである。リモートインターフェイスデバイス104は更に、プロセッサやメモリ等、演算に必要なハードウェアも備えている。プロセッサとしては、Intel、AMD、IBM、Motorola、ARM、VIA等のマイクロプロセッサやマイクロコントローラが挙げられる。メモリとしては、例えば、実行プログラムやデータを格納するための揮発性メモリや非揮発性メモリDRAM、Flash、EPROM、又はROM等がある。ネットワークインターフェイス201及びネットワークインターフェイスドライバ202は、リモートインターフェイスデバイス104とホスト105との間の通信の基礎を形成する。ネットワークインターフェイス201としては、有線ネットワークインターフェイスや無線ネットワークインターフェイスが挙げられる。周辺デバイスのインターフェイス203は、周辺デバイス204の接続ポートを提供する。このような接続ポートとしては、有線ネットワークインターフェイスRS232、RS485、RS422、USB、IEEE1394、Firewire等や無線インターフェイスBluetooth登録商標、Zigbee登録商標、IrDA等が挙げられる。リモートインターフェイスデバイス104は、周辺デバイス204に対応するハードウェアに依存したドライバ205を備え、該ハードウェアに依存したドライバ205を使用して対応する周辺デバイス204を駆動する。周辺デバイスインターフェイス203は、ブリッジ206を介して周辺デバイス207に接続され得る。ハードウェアに依存したドライバ205より上位の層には、ホスト105側に置くことも可能なハードウェアに依存しないドライバハードウェア非依存ドライバ208を含むことができる。ハードウェアに依存しないドライバ208がホスト105側に置かれると、ホスト105のアプリケーションプログラムはハードウェアに依存しないドライバ208と直接やり取りして、ネットワーク通信によってデバイスに命令を送信する。ハードウェアに依存しないドライバ208がデバイス内にインストールされると、ホストのアプリケーションプログラムは、まず、ネットワーク通信によりデバイスに命令を転送する。この命令はハードウェアに依存しないドライバ208を経由して、ハードウェアに依存するドライバ205に達する。リモートインターフェイスエージェント209は、アドレス指定及びブロードキャストを自動的に行う機能を提供している。これにより、周辺デバイスのインターフェイス203の位置がホスト105によって特定され、その後、周辺デバイス204とホスト105との通信接続が確立される。ネットワークにデバイスが接続された後に、リモートインターフェイスエージェント209は、どのようなタイプの周辺デバイスのインターフェイスのメッセージがデバイスによってネットワークのホスト105に提供されるかを示す情報を、ネットワーク内にブロードキャストする。デバイスがUPnP通信を行う機能を備えている場合、リモートインターフェイスエージェント209は、ネットワークアドレスの取得や自己コンフィギュレーション等の自動セットアップだけでなく、UPnPの機能のディスカバリ、ディスクリプション、及びコントロールを行うこともできる。通信機能の他に、リモートインターフェイスエージェント209は、周辺デバイスを駆動する命令をネットワークプロトコルで周辺デバイスのドライバに転送する役割も果たす。続いて、周辺デバイスの実行結果がネットワークプロトコルで変換され、ホスト105に返送される。図3は、本発明の一実施形態に係るリモートインターフェイスデバイスを示す。RS232デバイス301は、RS232インターフェイスを有する周辺デバイスに接続される。この実施形態では例として2つの接続ポートを使用しているが、同じ通信プロトコルによるかどうかに関係なく、複数の接続ポートを搭載するように本デバイスを設計することができる。RS232リモートデバイスは、RS232ドライバ302を備え、これを使用して全てのRS232の周辺デバイス301を制御する。各RS232デバイス301は、対応するRS232ドライバインスタンス303を所有し、該RS232ドライバインスタンス303は、UPnPスタックと一緒にリモートインターフェイスエージェント305を構成する。RS232リモートデバイスは、Ethernet登録商標ネットワークデバイス306を介して、Ethernetネットワークドライバ、ホスト、又は他のリモートインターフェイスデバイスに接続される。図4は、リモートインターフェイスシステムのホストを示したヒント図である。主に図4を参照し、更に図1も参照するに、ホスト105は、ネットワークインターフェイス401及びネットワークインターフェイスドライバ402を介して複数の周辺デバイスを制御する。ネットワーク内にあるサービス可能な周辺デバイスとそのインターフェイスが検出されると、ホスト105は、システム内で該当する周辺デバイスの仮想周辺デバイスインターフェイスオブジェクト109とハードウェアに依存しないホストドライバハードウェア非依存ホストドライバ403を設定する。ホスト105は、仮想周辺デバイスインターフェイスオブジェクト109及びハードウェアに依存しないホストドライバ403を使用して周辺デバイスを制御する。更に、ハードウェアに依存しないホストドライバ403は、設計上の要求及び使用者の要求に従って、リモートインターフェイスデバイス104内に設計することが可能である。使用者は、アプリケーションプログラム404を介してネットワーク内にあるサービス可能な周辺デバイスを検索することができる。更に、使用者はアプリケーションプログラム404を介してリモートインターフェイスデバイス104を使用することで、周辺デバイスに関連する説明情報を提供し、周辺デバイスが提供可能なサービスの種類を認識する。更に、仮想周辺デバイスインターフェイスオブジェクト109及びハードウェアに依存しないホストドライバ403によって、リモートインターフェイスデバイス104を介して周辺デバイスの制御が可能である。図5に、本発明の一実施形態に係るリモートインターフェイスシステムを示す。この実施形態は、OSGiOpenServiceGatewayInitiativesServicePlatform/X86ホスト501、Linux登録商標/ARM9RS232リモートインターフェイスデバイス502、RS232インターフェイスを搭載した血圧モニター503、及びRS232インターフェイスを搭載した血糖値メーター504を含んでいる。ホスト501は、UPnP通信プロトコルを使用して、リモート血圧モニター503及び血糖値メーター504によって観測される生理学的なデータをUPnPベースのRS232リモートインターフェイスデバイス502を介して収集及び管理する。RS232リモートインターフェイスデバイス502は、Linux登録商標オペレーティングシステム505を使用しており、該Linux登録商標オペレーティングシステムは、ドライバとして、Ethernetハードウェア507を駆動するためのEthernetドライバ506とRS232ハードウェア508を駆動するためのRS232ドライバ509とを有する。リモートインターフェイスエージェント305は、UPnPスタック304と2つのRS232ドライバインスタンス303を含む。リモートインターフェイスエージェント305は、UPnP関連のメカニズム、例えば、アドレス指定メカニズム、ネーミングメカニズム、アドバタイジングメカニズム、ディスクリプションメカニズム、呼出しメカニズム、イベントメカニズム等を実装する。リモートインターフェイスエージェント305は呼出しメカニズムを実装することで、ステータス情報サービスに対する要求を実行することができ、RS232リモートインターフェイスデバイス502において変化があるとイベントメカニズムによってイベントが作成される。リモートインターフェイスエージェント305は、UPnPスタック304を使用して、ネットワークアドレス指定及びOSGiホスト501との接続に関する自動設定を完了させる。該メカニズムは、RS232リモートインターフェイスデバイス502のUPnP関連のアドバタイズメカニズム、ディスカバリメカニズム、デバイス識別又はデバイス分類メカニズムを含んでいる。リモートインターフェイスエージェント305は、2つのRS232ドライバをネットワーク内の仮想インターフェイスに物理的に転送する。各RS232ドライバにはそれぞれ連番が割り当てられる。この2つのRS232ドライバがネットワーク内の2つのUPnPデバイスに物理的に転送される前に、RS232ドライバで提供される機能とUPnPSOAPメッセージとの関係がまず定義される。リモートインターフェイスエージェント305がOSGiホスト501からUPnPメッセージを受信すると、RS232の仮想周辺デバイスのインターフェイスオブジェクトとメッセージに対応する関数とがまず検索され、次いで命令を実行するための関数が要求される。命令が実行されると、その実行結果がOSGiホスト501のアプリケーションプログラムへ反対に送信される。OSGiホスト501とリモートRS232デバイスとの間で接続が確立すると、リモートRS232デバイスのイベント通知が登録され得る。リモートRS232デバイスは、サブスクリプションのステータスに従ってイベント通知を発行し、そのステータスをOSGiホスト501にレポートする。この実施形態では、OSGiホスト501のオペレーティングシステム510はLinux登録商標であり、ソフトウェアとしてJava登録商標仮想マシン511とOSGiサービスプラットフォーム512を含んでいる。アプリケーションソフトウェア層は、血糖値メーターサービスバンドル513と、血圧モニターサービスバンドル514と、UPnPベースのドライバ515とを含む。ここで、UPnPベースのドライバ515には、UPnPコントロールポイントスタックが組み込まれている。血圧モニター及び/又は血糖値メーターサービスバンドルは、OSGiサービス登録517の助けを借りて、仮想RS232インターフェイスオブジェクト516を検索する。対応する仮想RS232インターフェイスオブジェクト516が見つかった後、アプリケーションプログラムはAssign関数を呼び出して使用者権限を取得する必要がある。使用者権限が取得されると、収集されるデータの正確さを確認するために、sendGET_DEVICE_ID_COMMAND関数が呼び出されてRS232リモートインターフェイスデバイス502の健康管理用デバイス識別子が取得される。その正確さが確認されると、血圧モニター及び/又は血糖値メーターのデータを収集するコマンドが発行され、データがOSGiホスト501に収集される。アプリケーションプログラムが所定のジョブを終了したら、解除関数を呼び出して仮想RS232インターフェイスオブジェクト516の使用者権限を解除する必要がある。仮想RS232インターフェイスオブジェクト516は、アプリケーションプログラムからコマンドを受信すると、UPnPベースのドライバのUPnPスタックを使用して、コマンドを、対応するSOAPメッセージ内に転送し、このメッセージをRS232リモートインターフェイスデバイス502に配信する。RS232リモートインターフェイスデバイス502は、RS232ドライバを呼び出してコマンドを実行する。コマンドが実行されると、その結果が反対にOSGiホスト501のアプリケーションプログラムへ送信される。図6に、本発明の一実施形態に係るリモートインターフェイスシステムについてのホストによる制御を示す。UPnPベースのドライバ515は、ネットワーク内にある全てのUPnPデバイス601を収集する。次いで、仮想周辺デバイスオブジェクト602を生成するように、明確なドライバ関数とUPnPSOAPとの関係が求められる。最後に、見つかったUPnPデバイスがOSGiサービスレジストリ517に登録され、アプリケーションプログラムがUPnPデバイスを使用する場合の基礎が提供される。リモートデバイスがネットワークから外されようとしているのをUPnPベースのドライバ515が検出した場合、そのリモートデバイスに対応する仮想インターフェイスオブジェクト603は削除される。また、OSGiサービスレジストリ517からUPnPデバイスが削除される。UPnPデバイスがイベント通知を発行した場合は、ベースのドライバ515が、その通知の内容に従って、UPnP対応する仮想周辺デバイスインターフェイスオブジェクト603を変更又は削除して、更にOSGiサービスレジストリ517からも削除する。図7は、本発明の一実施形態に係るインターフェイス提供メカニズムに対応するフローチャートを示す。ステップS701で、リモートインターフェイスデバイスは、そのI/Oポートの情報を取得し、どのポートが誰によって使用されているかも明らかにする。情報には、ポートタイプやマルチポート識別子などが含まれる。ステップS702では、ステップS701で収集された情報が、通信システムの設計方法に応じて、インターネット標準形式又はテキスト形式のいずれかにパックされる。インターネット標準形式は、任意のインターネットプロトコルとすることも、SSDPSimpleServiceDiscoveryProtocolやSLPServiceLocationProtocol等のように、インターネット上で利用可能なサービスを検出するのに使用される任意のプロトコルとすることもできる。ステップS703で、デバイスはインターネット接続により情報を送出する。ホストは、情報を受信すると、リモートインターフェイスデバイスに対応する仮想周辺デバイスインターフェイスオブジェクトを仮想リモートインターフェイスドライバ内で順次設定し、これらのポートをインターフェイスオブジェクトを介して使用者に提供する。図8は、本発明の一実施形態に係るネットワークアドレス設定メカニズムに対応するフローチャートを示す。ステップS801で、リモートインターフェイスデバイスは、ネットワークに接続されるとDHCPDISCOVERYメッセージを送信する。ステップS802で、DHCPサーバが存在する場合、デバイスはDHCPOFFERSを取得する。ステップS803で、デバイスはDHCPOFFERSを受信すると、IPアドレスをどのDHCPサーバから取得するかを決定し、この決定に従ってDHCPREQUESTメッセージを該当するサーバに送信する。ステップS804で、サーバがデバイスにDHCPPACKを返信すると、デバイスはIPアドレスを使用開始できる。ステップS805では、ネットワーク上に利用できるDHCPが存在しない場合、デバイスは特定のアドレス範囲例えば、169.254/16の範囲内のIPアドレスを選択する。ステップS806で、選択されたアドレスは、すでに使用されているかどうかを判定するためのテストにかけられる。アドレスが別のデバイスで使用されている場合、別のアドレスが選択されテストにかけられるといった処理が、実装されている回数まで繰り返される。ネットワークアドレス設定メカニズムは、上述した2つのアプローチのうちの一方だけを備えることも両方備えることも可能である。図9は、本発明の一実施形態に係るディスカバリメカニズムに対応するフローチャートを示す。ステップS901で、ホストは、ネットワーク上で利用できるサービスを認識する必要がある場合、マルチキャストアドレスにディスカバリ発見メッセージを送出し、全てのデバイスがこれを受信するようにする。例えば、UPnPのもとでは、UDPプロトコルによりポート上のマルチキャストアドレス239.255.255.250にディスカバリ発見メッセージが送信される。このメッセージには、HTTPリクエストに類似したヘッダーが付いている。ステップS902で、ホストは、ネットワーク上のリモートインターフェイスデバイスからの応答を受信する。応答メッセージの送信は、UDPユニキャストを使用して行うことができ、応答メッセージによりデバイスで実装するプロファイルがアナウンスされる。ステップS903で、ホストは応答メッセージを受信すると、メッセージの解析を行う。ステップS904で、ホストは応答メッセージに従って、新規に追加されたデバイスに対して仮想周辺デバイスインターフェイスオブジェクトを設定し、接続解除されたデバイスに対する仮想周辺デバイスインターフェイスオブジェクトを削除する。アドバタイズメカニズムの場合は、まず、デバイスがメッセージをマルチキャストアドレスに送信し、次に、ホストがそのメッセージに応答する点を除けば、ディスカバリメカニズムによく似ている。図10は、本発明の一実施形態に係るリモート制御を示すフローチャートである。この実施形態は、ドライバ命令を転送するためのメカニズム、及び実行結果を転送するためのメカニズムに対応する。ステップS1001で、リモートインターフェイスデバイスはサービスに関するリクエスト又は命令を受信する。リクエスト/命令は、SOAPプロトコルを使用して送信可能である。ステップS1002で、デバイスはリクエスト/命令を逆コンパイルして、サービスとそのパラメータを明らかにする。ステップS1003で、デバイスはサービスに対応するデバイスドライバを呼び出して、パラメータをそのデバイスドライバに渡す。ステップS1004で、サービスが終了して結果を作成した後で、デバイスはリクエストの場合と同じフォーマットに、作成された結果をパックする。ステップS1005で、デバイスは、リクエスト/命令に結果をもって応答する。上述した本発明の各実施形態は、単なる説明のためのものである。当業者であれば、添付したクレームの範囲を逸脱することなく、実施形態を他に多数考案することが可能である。