(57)【特許請求の範囲】
【請求項１】
複数の端末装置とサーバ装置とを接続してなるシステムにおける前記複数の端末装置のうちの１つであって、
当該端末装置には、所定のネットワークを介して複数の機器が接続し、
当該端末装置は、
少なくとも当該端末装置から提供される第１のサービスに関する情報と、前記複数の機器のそれぞれから提供される第２のサービスに関する情報を記憶する記憶手段と、
少なくとも、前記サーバ装置に、前記第１のサービスと前記第２のサービスを当該端末装置から提供されるサービスとして認識させるために、前記記憶手段に記憶された情報を前記サーバ装置に登録するために送信する手段と、
を具備し、
前記記憶手段に記憶される情報は、前記第１のサービスおよび前記第２のサービスが変更される度に更新されることを特徴とする端末装置。
【請求項２】
前記記憶手段には、さらに前記サーバ装置に前記端末装置の属性を認識させるための当該端末装置自身の属性情報を記憶し、この属性情報も前記サーバ装置に登録するために送信することを特徴とする請求項１記載の端末装置。
【請求項３】
複数の端末装置とサーバ装置とを第１のネットワークを介して接続してなるシステムにおける前記サーバ装置であって、
前記複数の端末装置のそれぞれから、各端末装置から提供されるサービスに関する情報を収集する収集手段と、
当該サーバ装置と第２のネットワークを介して通信可能に接続されているユーザ端末からの要求に応じて、前記収集手段で収集された情報を基に、当該ユーザ端末から前記複数の端末装置を制御可能なように、少なくとも、前記複数の端末装置のそれぞれから提供されるサービスに関する情報を当該ユーザ端末へ送信する第１の送信手段と、
前記ユーザ端末から、少なくとも前記複数の端末装置のうちのいずれか１つを制御対象として制御するための第１のコマンドを受信する受信手段と、
前記第１のコマンドに従って、前記制御対象を制御するための第２のコマンドを当該制御対象の端末装置へ送信する第２の送信手段と、
を具備したことを特徴とするサーバ装置。
【請求項４】
前記第１の送信手段は、少なくとも前記複数のサービスのそれぞれに対応する論理多重識別子を送信し、
前記受信手段は、前記第１のコマンドを含む、前記制御対象の前記論理多重識別子に対応するサービス宛てのパケットを受信し、
前記第２の送信手段は、前記受信手段で受信した前記パケットの宛先として記述された前記論理多重識別子に対応するサービスを提供する前記制御対象に対し、前記第２のコマンドを送信することを特徴とする請求項３記載のサーバ装置。
【請求項５】
前記サーバ装置と前記ユーザ端末との間の通信プロトコルとしての第１の通信プロトコルに依存する前記第１のコマンドを、前記サーバ装置と前記複数の端末装置との間の前記第１の通信プロトコルとは異なる第２の通信プロトコルに依存する前記第２のコマンドに変換する変換手段をさらに具備し、
前記受信手段は、前記ユーザ端末から、前記第１の通信プロトコルに依存する前記第１のコマンドを受信し、
前記第２の送信手段は、前記変換手段で得られた前記第２のコマンドを前記制御対象の端末装置へ送信することを特徴とする請求項３記載のサーバ装置。
【請求項６】
前記第１のコマンドと前記第２のコマンドとの対応関係を表したテーブルを記憶する記憶手段をさらに具備し、
前記変換手段は、前記テーブルを参照して、前記第１のコマンドを前記第２のコマンドに変換することを特徴とする請求項５記載のサーバ装置。
【請求項７】
第１のネットワーク上の複数の端末装置を当該第１のネットワークとは別の第２のネットワークに接続されたユーザ端末から制御するための制御方法であって、
前記第１のネットワークと前記ユーザ端末とのそれぞれに接続するサーバ装置を設け、このサーバ装置において、
前記複数の端末装置のそれぞれから、各端末装置から提供されるサービスに関する情報を収集する収集し、
当該ユーザ端末からの要求に応じて、前記収集された情報を基に、当該ユーザ端末から前記複数の端末装置を制御可能なように、少なくとも、前記複数の端末装置のそれぞれから提供されるサービスに関する情報を当該ユーザ端末へ送信し、
前記ユーザ端末から、少なくとも前記複数の端末装置のうちのいずれか１つを制御対象として制御するための第１のコマンドを受信すると、前記第１のコマンドに従って、前記制御対象を制御するための第２のコマンドを前記制御対象の端末装置へ送信することを特徴とする制御方法。
【請求項８】
前記サーバ装置は、
前記サーバ装置と前記ユーザ端末との間の通信プロトコルとしての第１の通信プロトコルに依存する前記第１のコマンドを受信すると、前記第１のコマンドを前記サーバ装置と前記複数の端末装置との間の前記第１の通信プロトコルとは異なる第２の通信プロトコルに依存する前記第２のコマンドに変換し、前記第２のコマンドを前記制御対象の端末装置へ送信することを特徴とする請求項７記載の制御方法。
【請求項９】
複数の機器と端末装置とを接続してなるシステムにおける前記端末装置であって、
前記複数の機器のそれぞれが記憶する少なくとも当該機器の識別子を含む属性情報を収集する手段と、
前記収集された属性情報を基に、当該属性情報に対応する前記機器を制御するための制御プログラムの識別情報を求めて、この識別情報を基に前記制御プログラムをロードする手段と、
を具備したことを特徴とする端末装置。
【請求項１０】
前記複数の機器のそれぞれは、当該機器の前記属性情報を記憶する記憶手段を有し、前記端末装置は、前記機器の前記記憶手段から前記属性情報を読みとることで、前記複数の機器のそれぞれの前記属性情報を収集することを特徴とする請求項９に記載の端末装置。
【請求項１１】
前記複数の機器と前記端末装置は、ＩＥＥＥ１３９４バスで接続されていることを特徴とする請求項９記載の端末装置。
【請求項１２】
前記識別情報により、前記制御プログラムが外部ネットワーク上に存在すると判断したときは、当該外部ネットワークを介して当該制御プログラムをロードすることを特徴とする請求項９記載の端末装置。
【請求項１３】
複数の端末装置とサーバ装置とを接続してなるシステムにおける前記サーバ装置であって、
当該サーバ装置と通信可能に接続されているユーザ端末からの要求に応じて、前記複数の端末装置のそれぞれから提供されるサービスに関する情報を提供するとともに、前記複数の端末装置のそれぞれを制御可能に構成されたホームページを提供する手段と、
前記ユーザ端末において、前記ホームページに基づき所望のサービスが選択され、当該ユーザ端末から送信された、当該選択されたサービスを提供する前記複数の端末装置のうちのいずれか１つを制御対象として制御するための第１のコマンドを含むパケットを受信する受信手段と、
この受信手段で受信されたパケットに含まれる前記第１のコマンドに従って、を前記制御対象を制御するための第２のコマンドを当該制御対象の端末装置へ送信する送信手段と、
を具備したことを特徴とするサーバ装置。
【請求項１４】
前記複数の端末装置のそれぞれから、各端末装置から提供されるサービスに関する情報を収集する収集手段と、
この収集手段で収集された情報を基に前記ホームページを作成する作成手段と、
をさらに具備したことを特徴とする請求項１３記載のサーバ装置。
【請求項１５】
前記サーバ装置は、
前記サーバ装置と前記ユーザ端末との間の通信プロトコルとしての第１の通信プロトコルに依存する前記第１のコマンドを、前記サーバ装置と前記複数の端末装置との間の前記第１の通信プロトコルとは異なる第２の通信プロトコルに依存する前記第２のコマンドに変換する変換手段をさらに具備し、
前記受信手段は、前記ユーザ端末から、前記第１の通信プロトコルに依存する第１のコマンドを含むパケットを受信し、
前記送信手段は、前記変換手段で得られた前記第２のコマンドを前記制御対象の端末装置へ送信することを特徴とする請求項１３記載のサーバ装置。
【請求項１６】
前記複数の端末装置のそれぞれから、各端末装置から提供されるサービスに関する情報を収集する収集手段と、
前記第１のコマンドと前記第２のコマンドとの対応関係が予め登録されたテーブルを記憶する記憶手段と、
をさらに具備し、
このテーブルを基に前記ホームページを作成することを特徴とする請求項１５記載のサーバ装置。
【請求項１７】
前記送信手段は、前記受信手段で受信した前記パケットの宛先として記述された前記論理多重識別子に対応するサービスを提供する前記制御対象に対し、前記第２のコマンドを送信することを特徴とする請求項１３記載のサーバ装置。
【請求項１８】
前記ホームページには、少なくとも前記第１のコマンドを含むパケットを生成するための第１のプログラムを含み、
前記受信手段は、前記ユーザ端末から送信されてきた前記パケットを受信することにより、前記第１のコマンドを受信することを特徴とする請求項１５記載のサーバ装置。
【請求項１９】
前記受信手段は、前記ユーザ端末から送信されてきた前記パケットを受信して、このパケットにて前記第２のコマンドに変換するための第２のプログラムを起動し、
前記変換手段は、この第２のプログラムに従って前記第１のコマンドを前記第２のコマンドに変換することを特徴とする請求項１５記載のサーバ装置。
【請求項２０】
前記受信手段は、前記第１のコマンドと前記ユーザ端末へ情報を送信する際の通信プロトコルを指定する情報を含むパケットを受信することを特徴とする請求項１５記載の通信装置。
【請求項２１】
前記複数の端末装置と前記サーバ装置とは、ＩＥＥＥ１３９４ネットワークにて互いに接続されていることを特徴とする請求項１３記載のサーバ装置。
【請求項２２】
前記複数の端末装置と前記サーバ装置とは、ＬＯＮ（Ｌｏｃａｌ  Ｏｐｅｒａｔｉｎｇ  Ｎｅｔｗｏｒｋ）にて互いに接続されていることを特徴とする請求項１３記載のサーバ装置。
【請求項２３】
第１のネットワーク上の複数の端末装置を当該第１のネットワークとは別の第２のネットワークに接続されたユーザ端末から制御するための制御方法であって、
前記第１のネットワークと前記第２のネットワークとに接続するサーバ装置を設け、前記サーバ装置と前記ユーザ端末との間の通信プロトコルとしての第１の通信プロトコルと、前記サーバ装置と前記複数の端末装置との間の通信プロトコルとしての第２の通信プロトコルとは互いに異なるとき、
前記サーバ装置において、
前記ユーザ端末から送信された、前記複数の端末装置のうちの１つを制御対象として制御するための前記第１の通信プロトコルに依存する第１のコマンドを受信すると、これを前記第２の通信プロトコルに依存する第２のコマンドに変換し、当該第２のコマンドを前記制御対象に送信することにより、当該制御対象を制御することを特徴とする制御方法。
【請求項２４】
第１のネットワーク上の複数の端末装置を当該第１のネットワークとは別の第２のネットワークに接続されたユーザ端末から制御するための制御方法であって、
前記第１のネットワークと前記第２のネットワークとに接続するサーバ装置を設け、このサーバ装置において、
前記複数の端末装置のそれぞれから、各端末装置から提供されるサービスに関する情報を収集して、前記複数の端末装置のそれぞれから提供されるサービスに関する情報を提供するとともに、前記複数の端末装置のそれぞれを制御可能に構成されたホームページを作成し、
前記ユーザ端末からの要求に応じて、当該ユーザ端末にホームページを提供し、
前記ユーザ端末において、前記ホームページに基づき所望のサービスが選択されて、当該ユーザ端末から送信された、当該選択されたサービスを提供する前記複数の端末装置のうちのいずれか１つを制御対象として制御するための第１のコマンドを含むパケットを受信すると、当該パケットに含まれる前記第１のコマンドに従って、前記制御対象を制御するための第２のコマンドを当該制御対象の端末装置へ送信することを特徴とする制御方法。
【請求項２５】
第１のネットワークと第２のネットワークとに接続される通信装置であって、
前記第１のネットワーク上の複数の第１の端末装置のそれぞれから提供される複数のサービスのそれぞれを識別するための当該第１のネットワークに依存する複数の第１の論理多重識別子に、前記第２のネットワークに依存する第２の論理多重識別子を割り当て、
前記複数のサービスのそれぞれについて、当該サービスを提供する前記第１の端末装置の前記第１のネットワークに依存する第１のアドレスと当該サービスの前記第１の論理多重識別子と、当該サービスを提供する前記第１の端末装置の前記第２のネットワークに依存する前記第２の論理多重識別子との対応関係を記憶する記憶手段と、
前記第２のネットワーク上の第２の端末装置に対し、前記複数のサービスを提示する提示手段と、
前記第２の端末装置において、前記提示手段で提示された複数のサービスの中から選択されて、当該第２の端末装置から送信された前記第２の論理多重識別子で特定される第１のサービス宛てのパケットを受信する受信手段と、
前記記憶手段に記憶された対応関係に基づき、前記受信手段で受信したパケットの宛先を、前記第１のサービスに対応する前記第１のアドレスおよび前記第１の論理多重識別子に書き換える書換手段と、
この書換手段で宛先の書き換えられたパケットを前記第１のネットワークに出力する出力手段と、
を具備したことを特徴とする通信装置。
【請求項２６】
前記複数の第１の端末装置のそれぞれから、前記複数のサービスのそれぞれに対応する前記第１の論理多重識別子と、当該サービスを提供する前記第１の端末装置の前記第１のアドレスを収集する収集手段をさらに具備したことを特徴とする請求項２５記載の通信装置。
【請求項２７】
前記第２のネットワークから入力するパケットのうち前記第１のネットワークへ転送可能なパケットの識別子を記憶する第２の記憶手段をさらに具備し、
前記第２のネットワークから入力されるパケットのうち、前記第２の記憶手段に記憶された識別子を有するパケットのみ前記第１のネットワークへ出力することを特徴とする請求項２５記載の通信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ホームネットワーク環境におけるディレクトリサービス、機器の遠隔操作、あるいは周辺装置を制御する機能を備えたコンピュータ等の通信装置、特に汎用バスに接続された多種の装置を制御する可能性があるコンピュータ等の通信装置、及び該通信装置により行われる通信制御方法、サービス登録方法、サービス提供方法及び装置制御プログラム登録方法に関する。
【０００２】
【従来の技術】
（１）近年、マルチメディア技術の発展に象徴されるように、電子機器のデジタル化が急速に進行している。この傾向は、まずオフィス環境で始まっている。ハードウエアの面では、パソコンの導入、ＯＡ機器のデジタル化、それらのネットワーク化という形で進行している。ソフトウエアの面では、ホストによる基幹業務（これはライトサイジングされてパソコン等に移行されつつある）や、ワープロ、表計算などのソフトウエア、あるいはＷＷＷ等のインターネットアプリケーション等が導入されている。そして、デジタル化の適用分野は益々広まり、その発展はとどまるところを知らない。
【０００３】
上記の傾向は、家庭内で使用される機器やその関連分野等においても見られる。すなわち、ＡＶ機器のデジタル化（すなわちＤＶＤ、デジタルＶＴＲ、デジタルビデオカメラ等）、放送のデジタル化、ＯＣＮ等のインターネットアクセス等の導入など、デジタル化は着実に進行している。
【０００４】
オフィス環境を始めとして推し進められてきた上記のような技術革新の波は、今後、ネットワーク化の方向へと向かっていくことが考えられる。すなわち、情報・通信・放送といった種々の分野の技術がデジタル化によって束ねられ、ネットワーク化によって相互乗り入れを始めていくと言われている。
【０００５】
これを実現するための基盤となるネットワーク技術としては、種々の候補が考えられる。例えば、イーサネットは、オフィス環境にて圧倒的な実績を持っており、家庭でのパソコンネットワークにおいても、その最有力候補であると言える。また、ＡＴＭも有力な候補である。これは、インフラの構築側（電話会社やＣＡＴＶ等）が、高速、リアルタイム、広帯域といったＡＴＭの特徴に注目し、この技術を使ってインフラを構築していこうというのが一般的な動きだからである。
【０００６】
これらの候補に加えて、最近、ＩＥＥＥ１３９４なるネットワーク技術（バス技術）が注目を集めている。これは、高速、リアルタイム（ＱＯＳ保証）、プラグアンドプレイ等の数々の注目すべき特徴を持っており、特にＡＶ機器産業界においてデジタルＡＶ機器同士の接続方式の最有力候補として大変な注目を集めている。また、パソコンなどのコンピュータ産業界においても、この技術への注目が集まりはじめている。
【０００７】
さて、情報・通信・放送等のネットワーク化による相互乗り入れは、まず家庭向けのデジタル機器の普及に伴い、ユーザに所望されるネットワーク技術によりそれらデジタル機器を相互接続することで実現されていくであろう。そのようにして徐々に家庭内デジタルネットワークのプロトタイプが生み出されていくと考えられる。
【０００８】
そして、その次の段階として、これらのデジタルネットワーク同士を相互に接続したいというニーズが顕在化してくると考えられる。例えば、ユーザ宅の１階の応接間の１３９４ネットワークに接続されたＡＶ機器と、２階の部屋の１３９４ネットワークに接続されたＡＶ機器とを、相互接続して、例えばダビング等、協調動作をさせようというようなニーズである。あるいは、ユーザＡ宅の１３９４ネットワークに接続された機器ａと、ユーザＢ宅の１３９４ネットワークに接続された機器ｂとを協調動作させるような場合である。
【０００９】
しかしながら、家庭内あるいは家庭間デジタルネットワーク同士の相互接続を実現するためには、以下のような問題がある。
【００１０】
（ｉ）家庭内あるいは家庭間でネットワークを介した機器の制御を行おうという場合に、「ネットワーク上のどの位置に何の機器があるか」あるいは「ネットワーク上でどのようなサービスが提供されているか」とった情報を知るための機構が存在しない。この機構がないと、ユーザは、特定の機器／サービスの存在をネットワーク上で認識することができず、対象機器の操作もしくは制御を行いあるいはサービスの提供を受けることができない。
【００１１】
（ii）デジタルネットワーク同士の相互接続においては異なるプロトコルに従う部分が混在するものと想定されるが、異なるプロトコルを越えて操作コマンド等を伝える機構が存在しない。
【００１２】
例えばＩＥＥＥ１３９４を用いた場合に１３９４対応機器の他にインターネット対応機器等が混在することが可能であり、必ずしもその使用プロトコルは一致しない。そのような混在状況において遠隔操作を行なおうとした場合、すなわち異なる種別のネットワークを介して対象機器を制御しようとする場合、異なる種別のネットワークではＩＥＥＥ１３９４プロトコルを稼動することができないため、操作コマンドの送付が不可能である。
【００１３】
また、ゲートウエイを設けて遠隔操作等を実現する方法も考えられるが、この様な場合におけるゲートウエイの設計指針等は存在しない。
【００１４】
（２）ところで、近年の急速なパーソナルコンピュータの普及とアプリケーションの多様化に伴い、その周辺機器は、例えばハードディスクのようなストレージ装置やスキャナ、カメラのような入力装置などに多様化しその種類は増え続けている。
【００１５】
過去においてはアプリケーションソフトウェアと周辺機器ハードウェアの両方の汎用性がなく、周辺機器は特定のアプリケーションからのみ使用でき、他から利用できない不便さがあった。この障害は現在では主として次の３つの技術によりかなりの部分解消されている。その技術とはハードウェアの制御の違いを吸収するドライバと呼ばれるソフトウェアと、必要に応じてドライバを読み込みオペレーティングシステム（以下、ＯＳと呼ぶ）に組み込むことのできるローダブルドライバの技術、そして接続された周辺機器をコンピュータ自身が検出して適切なドライバを組み込むプラグアンドプレイの技術である。
【００１６】
これにより周辺機器とアプリケーションプログラムとがともに汎用性が高まり、利用者の利便性が向上するとともに、汎用性にともなう量産効果によって価格も低下する正のフィードバックを生む結果となった。もちろんパーソナルコンピュータにおいてはハードウェア自体、ＩＳＡ、ＰＣＩなどのバス規格、ＩＤＥやＳＣＳＩといったストレージ装置の接続規格によって標準化されて来たこともこれを助けている。
【００１７】
最近ではＵＳＢ（Ｕｎｉｖｅｒｓａｌ  ｓｅｒｉａｌ  Ｂｕｓ）やＩＥＥＥ１３９４といった接続作業と配線の取り回しが容易な周辺装置の接続規格が採用されつつある。これらは数対のより対線の接続なので簡易なネットワークとしても利用が可能である。ＩＥＥＥ１３９４は過去のコンピュータのシステムバスに匹敵する高速な転送能力を備え、画像伝送が可能なことからＴＶ、ビデオなどの家電機器の接続規格としても有力である。また、ＩＥＥＥ１３９４規格では制御は全てＩＥＣ１２１２（ＡＮＳＩ／ＩＥＥＥ  Ｓｔｄ  １２１２  Ｃｏｎｔｒｏｌａｎｄ  Ｓｔａｔｕｓ  Ｒｅｇｉｓｔｅｒ（ＣＳＲ）  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｍｉｃｒｏｃｏｍｐｕｔｅｒ  Ｂｕｓｅｓ［ＩＳＯ／ＩＥＣ１３２１３］）で規格化された６４ビット形式のアドレス空間にマッピングされたレジスタに対する読み書きによって行われる。このため、ストレージデバイスで多く使われているＳＣＳＩ規格と同様に制御するホストプロセッサのアーキテクチャに依存しないインターフェースを周辺機器が持つことができる。
【００１８】
一方、上記した汎用化が利点となる前提条件は多種の周辺機器に対応したドライバがＯＳとともに提供されることである。これにはＯＳのベンダと周辺機器のベンダがともに大きな労力を割かねばならない。実際、Ｍｉｃｒｏｓｏｆｔ社のオペレーティングシステム、Ｗｉｎｄｏｗｓ９５では４０枚に及ぶフロッピーディスクに多種のドライバが収納されている。もちろんこの全てがドライバではないものの、全体に占める割合は少なくない。ドライバソフトのソフトウェアはＯＳに依存するため、ソフトベンダはＯＳごとにドライバを用意しなければならない。デバイスドライバは一般にＯＳのメモリ管理と密接に関連して動作しているためである。ＯＳ自体がホストプロセッサのアーキテクチャに依存する部分の大きいことはいうまでもない。
【００１９】
デバイスドライバの汎用性を高める試みとして、ＳＣＳＩやＩＥＥＥ１３９４、ＵＳＢで実現されているように、周辺機器との通信や制御に汎用のプロトコルを使う方法がある。ＯＳがＳＣＳＩやＩＥＥＥ１３９４のパケットを送信するドライバを提供し、そのドライバを利用して機器固有のデバイスドライバがそれぞれの周辺機器を制御する方式である。この方式をとれば同一のＯＳではＳＣＳＩやＩＥＥＥ１３９４などの装置接続インタフェースが異ってもＳＣＳＩ  ＨＤやプリンタなどの装置固有の制御を行う部分のドライバは共通に使うことができる。
【００２０】
このような汎用の接続装置アーキテクチャにもいくつかの方法がある。ＳＣＳＩでは通信に加えて制御コマンドのプロトコルも規定されている。ＩＥＥＥ１３９４では通信方法は規定されているが、制御のコマンドまでは規定せず、さまざまな制御プロトコルを持つ機器の余地を残している。
【００２１】
また、ＩＥＥＥ１３９４には汎用入出力バスとしての側面の他にネットワークとして利用できる側面があり、ＩＥＥＥ１３９４バス上へのインターネットプロトコルのマッピングも提案されている（ＤＡＶＩＣ  ＩＰ  ｏｖｅｒ  ＩＥＥＥ１３９４．１９９５  Ｓｐｅｃｉｆｉｃａｔｉｏｎｓ，１９９６）。しかしながら通信ネットワークの面と入出力バスとしての面を統合したインタフェースは未だ実現されていない。
【００２２】
さて、ＯＳがそれぞれの機器に対応するドライバを読み込むことでさまざまな周辺機器が利用可能になっている。しかし、デバイスドライバ自体はＯＳに依存しており、汎用性を持たないために種々のＯＳ毎にそれぞれ対応のドライバの開発が必要であった。このため周辺機器ベンダによるデバイスドライバの開発が特定の良く普及したＯＳに限られてしまう問題があった。この結果として、デバイスドライバの開発がある特定のＯＳに集中し、他のＯＳで使えないデバイスが増加している。これはＯＳの用途に合わせた多様化を妨げることになり、利用者の利便性を損うものである。
【００２３】
もう一つの問題は周辺装置が多様化することによって、利用しない装置のドライバや、上位プロトコルに対応するＡＰＩにＯＳの資源が占有されてしまうことである。
【００２４】
また、ＩＥＥＥ１３９４では周辺機器制御バスのみならず、ネットワーク的な利用形態も考えられる。ネットワーク的に利用される場合、制御する側のＰＣが予め接続される装置をすべて把握することは困難であり、接続されている装置に応じて利用法を決定できることと、同一のＩＥＥＥ１３９４バスに複数のＰＣが接続されているとき、どちらのＰＣが制御権を持つかを決定することが要求される。しかし、これを解決しているシステムは従来は存在しなかった。
【００２５】
また、電話網や広域ネットワークを通じて遠隔にあるＩＥＥＥ１３９４装置を制御できるシステムも従来は存在しなかった。
【００２６】
【発明が解決しようとする課題】
従来、家庭内あるいは家庭間デジタルネットワーク同士を相互接続し、ネットワークを介した機器の制御を行おうとしても、
（１）ネットワーク上に存在する各機器の位置あるいはネットワーク上で提供されているサービスに関する情報を知るための技術がなく、ユーザは、特定の機器／サービスの存在をネットワーク上で認識することができず、対象機器の操作もしくは制御を行いあるいはサービスの提供を受けることができなかった。また、デジタルネットワーク同士の相互接続において異なるプロトコルに従う部分が混在する場合、異なるプロトコルを越えて操作コマンド等を伝える技術がなく、ユーザは、異なるプロトコルを越えた対象機器の操作もしくは制御を行いあるいはサービスの提供を受けることができなかった。
【００２７】
（２）さらに、近い将来、家庭内にも種々のインターネット処理機能を持った、いわゆる情報家電が入り込んでくると考えられているが、現在のインターネットは深刻なアドレス不足に悩んでいる。家庭内に入り込んでくる家電機器は、非常に多くの数になるものと考えられ、これら全てに新たにＩＰアドレスを考えるのは非現実的である。そこで、以下のような２つの方法が提案されている。
【００２８】
・家庭内はプライベートＩＰアドレスを用いる。
【００２９】
・家庭内は、ＩＰｖ６（ＩＰバージョン６）アドレスを用いる。
【００３０】
しかしながら、実際のインターネット（公衆網）はＩＰｖ４（ＩＰバージョン４）で運用されているのが現実であり、上記のような方法を取った場合、インターネット上から家庭内の機器へアクセスする方法が無い。この問題に対する対処方法としては、ＮＡＴ（ネットワークアドレス変換）やＩＰマスカレードが知られているが、これらを用いたとしても、インターネット（公衆網）上のユーザは、家庭内の種々の機器のアドレスを、実際にそれらの操作を行おうとする以前に認識する必要があるが、これを実現するメカニズムは無い。
【００３１】
（３）また、従来、デバイスドライバはＯＳに依存しており汎用性を持たないために、種々のＯＳ毎にそれぞれ対応のドライバの開発が必要である問題点があった。また、周辺装置が多様化することによって、予めデバイスドライバを豊富に内蔵しておくことが良く行われるが、利用しない装置のデバイスドライバや、上位プロトコルに対応するＡＰＩにＯＳの資源が無駄に占有されてしまう問題点があった。
【００３２】
本発明は、上記事情を考慮してなされたもので、上記第１の問題点を解決するために、特定のネットワークに依存せず、統一的なサービス提供環境を実現することが可能な通信装置、サービス登録方法およびサービス提供方法を提供することを目的とする。
【００３３】
また、上記第２の問題点を解決するために、本発明は、アドレス体系の異なるネットワーク（例えば、ＩＰｖ４とＩＰｖ６、プライベートアドレスとＩＰｖ４、プライベートアドレスとＩＰｖ６等）を相互接続した場合でも、各ネットワークにおいて提供されているサービスを他のネットワークからでもアクセス可能にする通信装置を提供することを目的とする。
【００３４】
また、上記第３の問題点を解決するために、本発明は、ＯＳやハードウェアに依存せず、必要の生じた時点で装置制御プログラムを登録することの可能な通信装置および装置制御プログラム登録方法を提供することを目的とする。
【００３５】
【課題を解決するための手段】
（１）本発明は、単一アドレス空間にマップされたレジスタの操作を行う通信手段と、自装置に関する構成情報を記憶する構成情報記憶手段（コンフィグレーションメモリ）とを備えた通信装置（例えば、パーソナル・コンピュータ等）であって、前記構成情報記憶手段には、自装置（当該通信装置）上で稼動するサービスに関する情報を動的に記述することを特徴とする。
【００３６】
本発明によれば、通信装置を介して通信される他ノードは、この構成情報記憶手段をアクセスすることによって、その時点でその通信装置がサービスしているアプリケーションをタイムリに認識することができ、網構成のディレクトリサービスや、移動ノードのサービス検出が可能となり、網の運用の柔軟性が向上する。特に、動的に稼動サービスが変化する場合や、サービスがソフトウエアにより実現される場合には、ソフトウエアのインストールや、バージョンアップ等に伴い、そのサービスの稼動の動的変化はより激しいものとなるため、サービス構成情報を動的に変化させることの有効性は極めて大きなものとなる。
【００３７】
（２）本発明は、単一アドレス空間にマップされたレジスタの操作を行う通信手段と、自装置に関する構成情報を記憶する構成情報記憶手段（コンフィグレーションメモリ）とを備えた通信装置（例えば、パーソナル・コンピュータ等）であって、前記構成情報記憶手段には、自装置（当該通信装置）上で稼動するサービスに関する情報と、自装置の属性に関する情報（例えば、ベンダＩＤ、ノードケーパビリティー等）とを併せて記述することを特徴とする。
【００３８】
本発明によれば、通信装置を介して通信される他ノードに対して、サービスをベースとした構成情報と、装置をベースとした構成情報の両方を通知することができ、該他ノードがその通信装置が接続されるネットワークのディレクトリ情報を構成する際に、サービス別の構成情報とするか、装置別の構成情報とするかの選択をより簡略化するのに有効である。これは、サービス別の操作・検索になれているユーザと、装置別の操作・検索になれているユーザの両方が存在するため、その両方に対応するために、特に有益である。
【００３９】
（３）本発明は、単一アドレス空間にマップされたレジスタの操作を行う第１の通信手段と、自装置に関する構成情報を記憶する構成情報記憶手段（コンフィグレーションメモリ）とを備えた通信装置（例えば、パーソナル・コンピュータ等）であって、前記構成情報記憶手段には、自装置（当該通信装置）に前記第１の通信手段とは異なる第２の通信手段を介して接続されたネットワークに関する構成情報（例えば、端末の情報、サービスの情報）の少なくとも一部を記述することを特徴とする。
【００４０】
本発明によれば、第１の通信手段に接続された当該通信装置以外のノードは、当該通信装置に第２の通信手段に接続されたネットワーク構成情報を、この構成情報記憶手段を通して認識することが可能となり、この結果、相互接続されたネットワーク全体の構成情報を、第１の通信手段を介した構成情報記憶手段を通して認識することが可能となり、よって、網管理、網サービス登録などの仕組み、手間の簡略化を図ることが可能となる。
【００４１】
（４）本発明は、接続されたネットワーク内に存在するディレクトリエージェントにサービスを登録する通信装置（例えば、パーソナル・コンピュータ等）であって、接続された前記ネットワークのデータリンクに依存するプロトコルで通信する、電子的装置（例えば、周辺機器、ＡＶ機器、家電機器等）のサービスを、該電子的装置に代わって前記ディレクトリエージェントに登録する手段を備えたことを特徴とする。
【００４２】
本発明によれば、ディレクトリエージェントは、それが稼動するプロトコル（例えばＩＰ等のネットワークレイヤプロトコル等）のディレクトリサービスに対して、データリンクレイヤプロトコル（例えばＩＥＥＥ１３９４レイヤ等）で提供されるサービス（例えばＩＥＥＥ１３９４のＡＶ／Ｃプロトコル等）を登録することが可能となり、この結果、ディレクトリエージェントもしくはディレクトリサービスは、ネットワーク上で展開されているサービスを、その提供レイヤの区別なく、検索されることが可能となり、ネットワーク利用者の利便性の向上と、柔軟性の向上を同時に図ることが可能となる。
【００４３】
（５）本発明は、接続されたネットワーク内のユーザエージェントからの問い合わせに応じてサービスに関する情報を通知する通信装置（例えば、パーソナル・コンピュータ等）であって、接続された前記ネットワークのデータリンクに依存するプロトコルで通信する、電子的装置（例えば、周辺機器、ＡＶ機器、家電機器等）のサービスを、該電子的装置に代わって前記ユーザエージェントに通知する手段を備えたことを特徴とする。
【００４４】
本発明によれば、ユーザエージェントは、それが稼動するプロトコル（例えばＩＰ等のネットワークレイヤプロトコル等）のサービスロケーションサービスに対して、データリンクレイヤプロトコル（例えばＩＥＥＥ１３９４レイヤ等）で提供されるサービスに関する情報を得ることが可能となり、この結果、ユーザエージェントもしくはサービスロケーションサービスは、ネットワーク上で展開されているサービスを、その提供レイヤの区別なく検索することが可能となり、ネットワーク利用者の利便性の向上と柔軟性の向上を同時に図ることができる。
【００４５】
（６）本発明は、上記（４）または（５）に記載の通信装置において、ディレクトリエージェントへの登録またはユーザエージェントへの通知の際に、登録または通知する前記サービスへのアクセスのためのポートとして、自装置（例えば、パーソナル・コンピュータ等）の論理多重識別子を登録または通知することを特徴とする。
【００４６】
このようにすれば、前記通信装置は、その論理多重識別子へのアクセスがあった場合には、前記電子的装置のサービスへのアクセスであることを認識することが可能となり、そのサービスを実際に実現するための適切な処理を施すことが可能となる。
【００４７】
一方、ディレクトリエージェントは、前記電子的装置のサービスへのアクセスポイントとして、この論理多重識別子を応答することが可能となり、もってサービスの提供レイヤを問わない統一的なディレクトリサービスを提供することが可能となる。
【００４８】
また、ユーザエージェントは、前記電子的装置のサービスへのアクセスポイントとして、この論理多重識別子を通知された場合、レイヤを問わず、そのサービスがこの論理多重識別子を通じて提供されるものと認識することとなり、ネットワーク全体で、レイヤを問わない、統一的なサービス提供体制を提供することが可能となる。
【００４９】
（７）本発明は、上記（６）に記載の通信装置において、前記論理多重識別子で指定されたポートにコマンドが到達した場合に、このコマンドを、それに対応する前記データリンクに依存するプロトコルのコマンドに変換して、前記電子的装置（例えば、周辺機器、ＡＶ機器、家電機器等）に送信することを特徴とする。
【００５０】
このようにすれば、前記通信装置は、その論理多重識別子へのアクセスがあった場合には、前記電子的装置のサービスへのアクセスであることを認識し、実際にそのサービスを提供している実体に、その提供データリンクのプロトコルに合致したコマンド変換をした上で、そのコマンド送出を行うこと、すなわちサービス要求を行うことが可能となり、もって、全体の「サービス要求→サービス実現」の手順の実現を図ることが可能となる。
【００５１】
また、ユーザエージェントは、前記電子的装置のサービスへのアクセスは、あくまで、そのコマンドを記述したレイヤで行われるものと認識していることとなるため、処理の単純化、すなわち該レイヤでのサービスアクセスの環境さえ整えておけば、該ネットワーク上の種々のサービスへのアクセスが可能となることを意味し、該ネットワークのサービス提供環境の単純化、効率化、統一化の各々に寄与することが可能となる。
【００５２】
（８）本発明は、上記（６）に記載の通信装置において、前記論理多重識別子のポートに到達したコマンドを、該コマンドに対応する前記データリンクに依存するプロトコルのコマンドにマッピングするための対応テーブルを有することを特徴とする。
【００５３】
このようにすれば、前記通信装置は、その論理多重識別子へのアクセスがあった場合のコマンド変換を、あらかじめ決められた手順で行うことが可能となり、これによって、前記電子的装置のサービスへのアクセスであることを認識し、実際にそのサービスを提供している実体に、その提供データリンクのプロトコルに合致したコマンド変換をした上で、そのコマンド送出を行うこと、すなわちサービス要求を行うことが可能となり、もって、全体の「サービス要求→サービス実現」の手順の実現を図ることが可能となる。
【００５４】
また、ユーザエージェントは、前記電子的装置のサービスへのアクセスは、あくまで、そのコマンドを記述したレイヤで行われるものと認識していることとなるため、処理の単純化、すなわち該レイヤでのサービスアクセスの環境さえ整えておけば、該ネットワーク上の種々のサービスへのアクセスが可能となることを意味し、該ネットワークのサービス提供環境の単純化、効率化、統一化の各々に寄与することが可能となる。
【００５５】
（９）本発明は、第１の通信手段に従えば通信できず、第２の通信手段に従えば通信可能な電子的装置と、第１の通信手段および第２の通信手段のいずれに従っても通信可能な電子的装置とが接続される可能性のあるネットワークに接続された通信装置におけるサービス登録方法であって、前記第１の通信手段を通じて前記電子的装置夫々から提供されるサービスに関する情報の登録を受け付け、前記第２の通信手段により存在が認識された電子的装置で、かつ、前記第１の通信手段を通じての前記通知がなかったものについて、登録すべき該電子的装置夫々により提供されるサービスに関する情報を前記第２の通信手段を用いて取得し、通知された前記サービスに関する情報および取得された前記サービスに関する情報をもとに、前記ネットワーク上のサービスディレクトリ情報を構成することを特徴とする。
【００５６】
（１０）本発明は、第１のプロトコルに従えば通信できず、第２のプロトコルに従えば通信可能な少なくとも１つの電子的装置が接続された通信装置におけるサービス提供方法であって、前記電子的装置により提供されるサービスへのアクセスのためのポートとして前記第１のプロトコルに従う自装置の論理多重識別子を割り当て、前記論理多重識別子で指定されたポートにコマンドが到達した場合に、このコマンドを、前記第２のプロトコルに従うコマンドに変換して、前記電子的装置に送信することを特徴とする。
【００５７】
（１１）本発明は、単一アドレス空間にマップされたレジスタの操作を行う通信手段と、前記通信手段によって認識された電子的装置（例えば、周辺機器、ＡＶ機器、家電機器等）の属性情報（例えば、ｕｎｉｑｅ ＩＤ、ｕｎｉｔ ＩＤ、ｃａｐａｂｉｌｉｔｙ等）を入手する入手手段と、前記通信手段に対して前記単一アドレス空間上のレジスタの操作を行う指示を発行することによって前記電子的装置を制御する装置制御プログラム（デバイスドライバソフト）の登録（ＯＳへの組み込み）を、入手された前記電子的装置の属性情報に基づいて動作中に行う登録手段とを備えたことを特徴とする。
【００５８】
本発明によれば、前記装置制御プログラムがいわゆるデバイスドライバの役割を果たすことになるが、本発明によれば、単一アドレス空間にマップされたレジスタの操作を行う通信手段によって入手された電子的装置の属性情報に基づいて、前記単一アドレス空間上のレジスタの操作を行う指示を発行することによって前記電子的装置を制御する装置制御プログラムを登録するので、動作中に必要に応じて、ドライブする対象の属性にあわせた装置制御プログラムをＯＳに組み込むことができる。
【００５９】
また、装置制御プログラムがネットワークローダブルな形（例えばＪＡＶＡ言語で記述された形）で提供されれば、ＯＳの種別やハードウエアの種別を問わずに、装置制御プログラムの登録を行うことが可能となる。
【００６０】
（１２）本発明は、上記（１１）に記載の通信装置において、前記登録手段は、前記入手手段により入手された前記電子的装置の属性情報に基づいて入手すべき装置制御プログラムの識別名を求める手段と、求められた前記識別名に基づいて、該当する装置制御プログラムを入手する手段とを有することを特徴とする。
【００６１】
このようにすれば、前記電子的装置の属性に適合した装置制御プログラムを、必要に応じて入手し、デバイスドライバとして使用することができる。
【００６２】
（１３）本発明は、上記（１１）または（１２）に記載の通信装置において、前記電子的装置の属性情報は、前記電子的装置内の予め定められた構成情報記憶領域（例えば、コンフィグレーションＲＯＭ、あるいはコンフィグレーション・メモリ）に記述されたものであり、前記入手手段は、前記構成情報記憶領域に記述された内容を読み取ることで前記属性情報を入手することを特徴とする。
【００６３】
このように前記電子的装置の属性情報を当該電子的装置内の構成情報記憶領域を読み取ることで入手するようにすれば、構成情報記憶領域には通常そのデバイスの属性情報が記述されていることが期待され、適当な装置制御プログラムを入手するのための手がかりとなる適切な情報が得られることが期待される。
【００６４】
（１４）本発明は、上記（１１）乃至（１３）のいずれか１項に記載の通信装置において、前記単一アドレス空間は、ＩＥＥＥ１３９４バスの形で提供されることを特徴とする。
【００６５】
ＩＥＥＥ１３９４バスは単一メモリ空間を実現するバスとして解釈することが可能であることから、上記機構をそのまま採用することが可能であり、本来困難であったネットワークのデバイスドライバのネットワークを介した動的ローディングが可能になり、ユーザの利便性を飛躍的に高めることができる。
【００６６】
（１５）本発明は、上記（１２）乃至（１４）のいずれか１項に記載の通信装置において、前記装置制御プログラムの識別名として、外部ネットワークの特定の資源を指示可能な識別名を用いることを特徴とする。
【００６７】
このように、前記電子的装置の装置制御プログラムをネットワークローダブルとすれば、必要に応じて外部ネットワークから入手することが可能になり、前記通信装置は、あらかじめ想定される全ての装置制御プログラムを持たなければいけないという制約条件から開放され、ディスクやＯＳの容量の節約、ソフトウエアのバージョンアップ等、様々な利点を享受することが可能となる。
【００６８】
好ましくは装置制御プログラムはＪＡＶＡ言語等で記述されたものである。
【００６９】
（１６）本発明は、単一アドレス空間にマップされたレジスタの操作を行う手段により所定の電子的装置と通信可能な他の通信装置（第２の通信装置）との間での通信が、論理ネットワークを利用した通信手段によって可能である通信装置（第１の通信装置）であって、前記通信手段を通じて前記他の通信装置（第２の通信装置）に対して前記電子的装置（例えば、パーソナル・コンピュータ、周辺機器、ＡＶ機器、家電機器等）の属性情報（例えば、ｕｎｉｑｅ ＩＤ、ｕｎｉｔ ＩＤ、ｃａｐａｂｉｌｉｔｙ等）の取得を要求する手段と、前記電子的装置を制御する装置制御プログラム（デバイスドライバソフト）の登録（ＯＳへの組み込み）を、前記要求により前記他の通信装置から入手した前記電子的装置の属性情報に基づいて動作中に行う手段と、前記他の通信装置（第２の通信装置）との間で前記通信手段を通じて前記単一アドレス空間上のレジスタの操作を行う指示に関する情報を送受信する手段とを備えたことを特徴とする。
【００７０】
本発明によれば、制御主体である通信装置（第１の通信装置）は、論理ネットワークを通じて接続された他の通信装置（第２の通信装置）を仲介として前記電子的装置を利用するための機能を持つことができ、単一アドレス空間上のレジスタの操作を行う制御プログラムを変更することなく単一アドレス空間上にマップされたレジスタの操作を行う手段に限らず論理ネットワークを通じて遠隔の電子的装置を制御することが可能になる。
【００７１】
好ましくは、前記要求により前記他の通信装置から入手した前記電子的装置の属性情報に基づいて動作中に行う手段は、入手された前記電子的装置の属性情報に基づいて入手すべき装置制御プログラムの識別名を求める手段と、求められた前記識別名に基づいて、該当する装置制御プログラムを入手する手段とを有するようにしても良い。
【００７２】
また、好ましくは、前記電子的装置の属性情報は、前記電子的装置内の予め定められた構成情報記憶領域に記述されたものであり、前記属性情報は前記他の通信装置（第２の通信装置）により前記構成情報記憶領域に記述された内容を読み取られることで入手されたものであっても良い。
【００７３】
また、好ましくは、前記単一アドレス空間は、ＩＥＥＥ１３９４バスの形で提供されても良い。
【００７４】
また、好ましくは、前記装置制御プログラムの識別名として、外部ネットワークの特定の資源を指示可能な識別名を用いても良い。
【００７５】
（１７）本発明は、通信装置の動作中に装置制御プログラムを登録する装置制御プログラム登録方法であって、単一アドレス空間にマップされたレジスタの操作を行う所定の通信手段によって認識された電子的装置の属性情報を入手し、前記通信手段に対して前記単一アドレス空間上のレジスタの操作を行う指示を発行することによって前記電子的装置を制御する装置制御プログラムの登録を、入手された前記電子的装置の属性情報に基づいて動作中に行うことを特徴とする。
【００７６】
なお、以上の各装置に係る発明は方法に係る発明としても成立する。
【００７７】
また、上記の発明は、相当する手順、機能あるいは手段をコンピュータに実行させるためのプログラムを記録した機械読取り可能な媒体としても成立する。
【００７８】
（１８）本発明の通信装置は、第１のネットワークに接続して該第１のネットワークに依存するプロトコルで通信するサービス提供装置を第２のネットワークを介して制御するための通信装置において、前記サービス提供装置を制御するための前記第１のネットワークの通信プロトコルに依存する第１のコマンドに対応する前記第２のネットワークの通信プロトコルに依存する第２のコマンドに関する情報を少なくとも前記第２のネットワークを介して提供する提供手段と、この提供手段で提供された第２のコマンドを含むメッセージを前記第２のネットワークを介して受信する受信手段と、この受信手段で受信されたメッセージに含まれる第２のコマンドを前記第１のコマンドに変換し、該第１のコマンドで前記サービス提供装置を制御する制御手段と、を具備したことにより、特定のネットワークに依存せず、統一的なサービス提供環境を実現することが可能となる。
【００７９】
（１９）本発明の通信装置は、第１のネットワークに接続して該第１のネットワークに依存するプロトコルで通信するサービス提供装置を第２のネットワークを介して制御するための通信装置において、前記サービス提供装置の提供するサービスに関する情報を収集する収集手段と、この収集手段で収集されたサービスに関する情報に対応する前記サービス提供装置を制御するための前記第１のネットワークの通信プロトコルに依存する第１のコマンドに対応する前記第２のネットワークの通信プロトコルに依存する第２のコマンドに関する情報を少なくとも前記第２のネットワークを介して提供する提供手段と、この提供手段で提供された第２のコマンドを含むメッセージを前記第２のネットワークを介して受信する受信手段と、この受信手段で受信されたメッセージに含まれる第２のコマンドを前記第１のコマンドに変換し、該第１のコマンドで前記サービス提供装置を制御する制御手段と、を具備したことにより、特定のネットワークに依存せず、統一的なサービス提供環境を実現することが可能となる。
【００８０】
（２２）本発明の通信装置は、第１のネットワークに接続して該第１のネットワークに依存するプロトコルで通信するサービス提供装置を第２のネットワークを介して制御するための通信装置において、前記サービス提供装置を制御するための前記第１のネットワークの通信プロトコルに依存する第１のコマンドを発行するためのホームページを前記第２のネットワークを介して提供する提供手段と、この提供手段で提供された前記ホームページに基づくメッセージを前記第２のネットワークを介して受信する受信手段と、この受信手段で受信されたメッセージに基づき発行された前記第１のコマンドで前記サービス提供装置を制御する制御手段と、を具備したことにより、ホームページを受信し操作を行うユーザは、第１のネットワークに接続されたサービス提供装置のプロトコルが何であるかを問わず、具体的にはＩＥＥＥ１３９４に接続されるＡＶ機器のように、リンクレイヤ技術に依存するプロトコルしか解釈しない機器についても、遠隔制御を行うことが可能となる。
【００８１】
（２３）本発明の通信装置は、第１のネットワークに接続して該第１のネットワークに依存するプロトコルで通信するサービス提供装置を第２のネットワークを介して制御するための通信装置において、前記サービス提供装置の提供するサービスに関する情報を収集する収集手段と、この収集手段で収集されたサービスに関する情報に対応する前記サービス提供装置を制御するための前記第１のネットワークの通信プロトコルに依存する第１のコマンドを発行するためのホームページを前記第２のネットワークを介して提供する提供手段と、この提供手段で提供された前記ホームページに基づくメッセージを前記第２のネットワークを介して受信する受信手段と、この受信手段で受信されたメッセージに基づき発行された前記第１のコマンドで前記サービス提供装置を制御する制御手段と、を具備したことにより、ホームページを受信し操作を行うユーザは、第１のネットワークに接続されたサービス提供装置のプロトコルが何であるかを問わず、具体的にはＩＥＥＥ１３９４に接続されるＡＶ機器のように、リンクレイヤ技術に依存するプロトコルしか解釈しない機器についても、遠隔制御を行うことが可能となる。
【００８２】
（２４）本発明の通信装置は、第１のネットワークに接続して該第１のネットワークに依存するプロトコルで通信するサービス提供装置を第２のネットワークを介して制御するための通信装置において、前記サービス提供装置の提供するサービスに関する情報を収集する収集手段と、この収集手段で収集されたサービスに関する情報に基づき前記サービス提供装置を制御するための前記第１のネットワークの通信プロトコルに依存する第１のコマンドを発行するためのホームページを作成する作成手段と、この作成手段で作成されたホームページを前記第２のネットワークを介して提供する提供手段と、この提供手段で提供された前記ホームページに基づくメッセージを前記第２のネットワークを介して受信する受信手段と、この受信手段で受信されたメッセージに基づき発行された前記第１のコマンドで前記サービス提供装置を制御する制御手段と、を具備したことにより、ホームページを受信し操作を行うユーザは、第１のネットワークに接続されたサービス提供装置のプロトコルが何であるかを問わず、具体的にはＩＥＥＥ１３９４に接続されるＡＶ機器のように、リンクレイヤ技術に依存するプロトコルしか解釈しない機器についても、遠隔制御を行うことが可能となる。
【００８３】
（２５）なお、本発明の通信装置は、前記サービス提供装置の提供するサービス毎に予め定められた前記第１のコマンドに対応する該サービス提供装置を制御するための前記第２のネットワークの通信プロトコルに依存する第２のコマンドを登録したテーブルを具備し、前記収集手段で収集されたサービスに関する情報に対応する第２のコマンドに関する情報を該テーブルから取得して前記ホームページを作成することにより、ホームページには、第２のコマンド情報（遠隔制御コマンド）により実現できるサービス提供装置の遠隔制御の一覧を表示することが可能になり、もって運用可能な遠隔制御方法を列挙したホームページを作成することが可能になる。
【００８４】
（２６）また、本発明の通信装置は、前記メッセージは、前記サービス提供装置を制御するための前記第２のネットワークの通信プロトコルに依存する第２のコマンドを含み、前記制御手段は、前記第１のコマンドと前記第２のコマンドとの対応テーブルを参照して前記受信手段で受信されたメッセージに含まれる第２のコマンドを前記第１のコマンドに変換することにより、特定の第２のコマンド情報（遠隔制御コマンド）を前記受信手段を介して受信した場合に、それがどのような動作を第１のネットワークの所望の装置(この場合第１のネットワークに接続されたサービス提供装置)に行えばいいのかを、上記対応テーブルを参照すればわかるようになる。
【００８５】
（２７）また、本発明の通信装置は、前記メッセージは、前記サービス提供装置を制御するための前記第２のネットワークの通信プロトコルに依存する第２のコマンドと、前記第２のネットワークの通信プロトコルに依存するアドレスと、前記第１のネットワークに依存する前記サービス提供装置を特定するための多重識別子とを含み、前記制御手段は、前記第１のコマンドと前記第２のコマンドとの対応テーブルを参照して前記受信手段で受信されたメッセージに含まれる第２のコマンドを前記第１のコマンドに変換し、該第１のコマンドで前記多重識別子にて識別されるサービス提供装置を制御することにより、ホームページを受信したノードは、第２のコマンド情報（遠隔制御コマンド）として、ハイパーリンク参照された対象に働きかけることによって、制御対象である前記第１のネットワークに接続されたサービス提供装置を指定し、その所望の動作を指定することが可能となり、もって所望の前記第１のネットワークに接続されたサービス提供装置の遠隔操作を行うことが可能になる。
【００８６】
（２８）また、本発明の通信装置は、前記ホームページは、前記サービス提供装置を制御するための前記第２のネットワークの通信プロトコルに依存する第２のコマンドを含むメッセージを生成するためのプログラムを含み、前記制御手段は、前記第１のコマンドと前記第２のコマンドとの対応テーブルを参照して前記受信手段で受信されたメッセージに含まれる第２のコマンドを前記第１のコマンドに変換し、該第１のコマンドでサービス提供装置を制御することにより、ホームページを受信したノードは、それに対応付けられたプログラム（ＪＡＶＡプログラム）を起動させ、制御対象である前記第１のネットワークに接続されたサービス提供装置を指定し、その所望の動作を指定するコマンドを発行させることが可能となり、もって所望の前記第１のネットワークに接続されたサービス提供装置の遠隔操作を行うことが可能になる。
【００８７】
（２９）また、本発明の通信装置は、前記制御手段は、前記受信手段で受信されたメッセージにて前記第１のコマンドを発行するためのプログラム（例えば、ＣＧＩスクリプト）を起動することにより、ホームページを受信したノードは、それに対応付けられたプログラム（ＣＧＩスクリプト）を起動させ、制御対象である前記第１のネットワークに接続されたサービス提供装置を指定し、その所望の動作を指定するコマンドを発行せせることが可能となり、もって所望の前記第１のネットワークに接続されたサービス提供装置の遠隔操作を行うことが可能になる。
【００８８】
（３０）また、本発明の通信装置は、前記メッセージには、情報を送信する際の通信プロトコルを指定する情報が含まれていることにより、前記ホームページを受信した相手ノードからの要求を受けて情報を送信する際に、その送出方法を特定することが出来るようになり、もって送信相手に確実に情報を送り届けることが出来るようになる。これは、送信すべき相手が、ネットワークレイヤパケットの受信能力の無い場合に特に有効である。また、送信情報を受信するノードが第２のコマンド情報（遠隔制御コマンド）と同一のネットワークレイヤプロトコルをサポートしていない場合や、送信情報のネットワークレイヤプロトコルへのカプセル化に多大なコストがかかる場合などにおいて、ネットワークレイヤプロトコル以外での情報送信を前記ホームページを受信した装置は促すことが可能になる。
【００８９】
さらに、前記メッセージに、情報を送信する際の通信プロトコルを指定する情報の他に、情報を送信する際の該通信プロトコルに依存するヘッダ情報が含まれていてもよい。
【００９０】
（３５）本発明の通信装置（第５の実施形態）は、第１のネットワークと第２のネットワークに接続される通信装置であって、前記第１のネットワーク上の任意の装置の第１の論理多重識別子で提供されるサービスに第２の論理多重識別子を割り当て、前記第１の論理多重識別子とそのサービスを提供する前記第１のネットワーク上の装置の第１のアドレスと、前記第２のネットワークからアクセス可能な第２のアドレスと前記第２の論理多重識別子との対応関係を記憶する記憶手段と、前記第１の論理多重識別子の各サービスを前記第２のネットワークから前記第２のアドレスと前記第２の論理多重識別子とでアクセスできるサービスとして提示する提示手段と、前記記憶手段に記憶された対応関係に基づき、前記第１および第２のネットワーク間で前記提示手段で提示された前記第１のネットワーク上のサービスを提供するためのパケット転送を行うことにより、第１のネットワークが、第２のネットワークと異なるアドレス体系、例えば第２のネットワークがＩＰｖ４のアドレス体系で運用されている場合に、第１のネットワークがＩＰｖ６のアドレス体系で運用される場合や、第１のネットワークがプライベートＩＰアドレスの体系で運用されている場合などにおいて、第２のネットワークのユーザに対して、第１のネットワークで提供されているサービスへのアクセスを実現することができる。
【００９１】
即ち、第２のネットワークのユーザに対しては、前記提示手段としての例えばホームページを用いて、前記第１のネットワークで提供されているサービスが本通信装置が提供しているものとして、第２のネットワークに対して提示する。前記第２のネットワークのユーザからのこのサービスへのアクセスがあった場合は、前記記憶手段に記憶された対応関係（アドレス・ポート番号変換テーブル）を用いて、前記第２のネットワークのユーザと本通信装置間のパケットを、本通信装置と前記第１のネットワークで提供されているサービス間のパケットに変換することで、前記第２のネットワークのユーザ、及び前記第１のネットワークで提供されているサービスからは透過的なパケットのやり取りを行っていると認識されることになる。
【００９２】
（３６）前記第１のネットワーク上の前記第１の論理多重識別子と各サービスを提供する装置の第１のアドレスを収集する収集手段をさらに具備したことにより、前記第１のネットワークのサービスについての収集情報をもとに、前記提示手段としての例えばホームページの自動更新を行うことが可能となる。
【００９３】
（３７）前記第２のネットワークから入力されるパケットのうち前記第１のネットワークへ転送可能なパケットの識別子を記憶する第２の記憶手段と、前記第２のネットワークから入力されるパケットのうち、前記記憶手段に記憶された識別子を有するパケットのみ前記第１のネットワークへ出力する出力手段と、を具備したことにより、予めユーザ認証を行うなどして、公衆網等の外部ネットワークから前記第１のネットワークへの不正パケットの侵入を防ぐことができる。
【００９４】
【発明の実施の形態】
以下、図面を参照しながら発明の実施の形態を説明する。
【００９５】
（第１の実施形態）
図１に本実施形態に係るシステムの構成例を示す。
【００９６】
本実施例では図１に示すように公衆網２を介して２つの家庭内ネットワークが相互接続されているものとする。公衆網２は、電話網でもよいし、ＩＳＤＮ等の広い帯域の回線、あるいは専用線のようなものであってもよいし、インターネットであってもよい。ただし、好ましくは、サービスの利用・提供に必要な通信帯域を満足する網を利用する。
【００９７】
第１の家庭内ネットワークは、第１のＩＥＥＥ１３９４バス１から構成されている。また、このＩＥＥＥ１３９４バス１には第１のＡＶ接続装置４、パーソナル・コンピュータ（以下、ＰＣ）６、デジタルＴＶ７が接続されているものとする。
【００９８】
第２の家庭内ネットワークは、第２のＩＥＥＥ１３９４バス３と、ホームオートメーション網１２から構成されている。本実施形態では、このホームオートメーション網１２には、エシェロン社のＬＯＮ（ローカルオペレーティングネットワーク）を用いるものとする。エシェロン社のＬＯＮについては、例えばエシェロン社のホームページ（ｈｔｔｐ：／／ｗｗｗ．ｅｃｈｅｌｏｎ．ｃｏｍ）等から得られるの情報に詳しく記述されている。
【００９９】
第２の家庭内ネットワークのＩＥＥＥ１３９４バス３には、第２のＡＶ接続装置５、ＤＶＤプレーヤ８、デジタルＶＴＲ９、ＰＣ１０、プリンタ１１が接続されているものとする。また、ＰＣ１０はホームオートメーション網１２にも接続されている。ホームオートメーション網１２は、ＰＣ１０のほかに、エアコン１３と、電子レンジ１４にも接続されている。
【０１００】
これらのネットワークに接続されている端末群のうち、第１のＡＶ接続装置４、ＰＣ６、第２のＡＶ接続装置５、ＰＣ１０、プリンタ１１は、それぞれＩＰアドレス（ここではプライベートＩＰアドレスとする）を持っており、いわゆるＩＰ端末である。第１のＡＶ接続装置４のＩＰアドレスは１９２．１６８．２．２５４、ＰＣ６のＩＰアドレスは１９２．１６８．２．１、第２のＡＶ接続装置５のＩＰアドレスは１９２．１６８．１．２５４、ＰＣ１０のＩＰアドレスは１９２．１６８．１．１、プリンタ１１のＩＰアドレスは１９２．１６８．１．２であるものとする。このように、本実施形態における端末のＩＰアドレスにはプライベートＩＰアドレス（公衆網２がインターネットではなくＩＳＤＮ等である場合）またはグローバルＩＰアドレス（公衆網２がインターネットである場合）を使用しており、各々の端末間のルーチングのためのルーチング機構の設定（ＩＰルーチングテーブルの設定など）は適切に行われているものとする。なお、現在グローバルＩＰアドレスは３２ビットであるが、近い将来に１２８ビットになる見込みであり、各端末にグローバルＩＰアドレスを割り当て可能な環境は現実のものとなりつつある。
【０１０１】
一方、デジタルＴＶ７、ＤＶＤプレーヤ８、デジタルＶＴＲ９は、いわゆる１３９４端末であり、１３９４プロトコル群（ＩＥＥＥ１３９４−１９９５，ＩＥＣ１８８３，ＩＥＥＥ１３９４ＡＶ／Ｃ，ＳＢＰなど）のみを解釈する端末である。
【０１０２】
また、エアコン１３、電子レンジ１４は、いわゆるＬＯＮ端末であり、ＬＯＮで定められたプロトコル群のみを解釈する端末である。
【０１０３】
第１のＡＶ接続装置４および第２のＡＶ接続装置５は、それぞれ、２つ以上のネットワーク（本実施形態の場合ＩＥＥＥ１３９４バスと公衆網）の間を相互接続する機能を基本的に有する。図２に、本ＡＶ接続装置４，５の内部構成を示す。
【０１０４】
図２に示されるように本実施例のＡＶ接続装置は、１３９４インタフェース２１、データリンクスイッチ２２、公衆網インタフェース２３、ＩＰ処理機能２４、ＦＡＮＰ処理機能２５、１３９４／ＩＰサービスロケーション処理機能２６、サービスロケーション代理機能２７、１３９４ＡＶコマンド処理機能２８、１３９４／ＩＰコマンド変換機能２９を有する。これらの各機能は、それぞれ、ハードウエアにより実現してもよいし、ソフトウエアにより実現してもよい。
【０１０５】
１３９４インタフェース２１は、１３９４バスとのインタフェースとなる機能である。
【０１０６】
データリンクスイッチ２２は、ネットワーク間をまたがるデータ転送を行うためのスイッチであり、より詳しくは、データリンクレイヤ識別子／情報のみの参照（例えば同期チャネル識別子や、ＡＴＭ−ＶＣＩ、伝送波長などの参照）によって、明示的にそのデータの転送先が予め判るように、例えばＦＡＮＰなどのプロトコルによって設定をしておき、１３９４バスから入力されたデータを公衆網に転送しおよび公衆網から入力されたデータを１３９４バスに転送するためのスイッチである。
【０１０７】
公衆網インタフェース２３は、公衆網とのインタフェースとなる機能である。例えば、公衆網のデータリンクレイヤがＡＴＭであれば、物理的にはＡＴＭのインタフェースを、論理的にはＡＴＭシグナリングの機能などを持つことになる。
【０１０８】
ＩＰ処理機能２４は、ＴＣＰ／ＵＤＰ／ＩＰなど、一連のインターネットプロトコル（ＴＣＰ／ＩＰプロトコルスーツ）の諸機能である。
【０１０９】
ＦＡＮＰ処理機能２５は、データの伝送経路のデータリンクレイヤでの帯域や仮想伝送路識別子の確保、整合を行う機能である。なお、ＦＡＮＰ処理機能の詳細は例えば文献「『レジデンシャル環境におけるネットワーク相互接続方式』、電子情報通信学会、情報ネットワーク研究会研究報告ＩＮ９７−１９、ｐｐ．７３−７８、１９９７年」（あるいは特願平８−２６４４９６、特願平８−２７２６７２、特願平９−５２１２５）等にて説明されている。
【０１１０】
ＦＡＮＰ処理機能２５は、映像データ等のようにある程度広い帯域を保証する必要のあるサービスを扱う場合には設けることが望ましいものであり、帯域保証を必要としない場合には省いても構わない。なお、ＦＡＮＰ処理機能の代わりにＲＳＶＰプロトコル（Ｒｅｓｏｕｒｃｅ  ＲｅＳｅｒＶａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ；インターネットドラフトのｄｒａｆｔ−ｉｅｔｆ−ｒｓｖｐ−ｓｐｅｃ−０８．ｔｘｔ）に従った処理機能等を用いることも可能である。
【０１１１】
また、提供するサービスに応じてＦＡＮＰ処理機能２５等の使用を制御するようにしてもよい。例えば、ＩＰアドレスとポート番号の組毎にＦＡＮＰ処理機能２５等を使用するか否かを決定するようにしてもよい。あるいは、ユーザからの明示的な要求により使用することを決定するようにしてもよい。
【０１１２】
１３９４／ＩＰサービスロケーション処理機能２６は、１３９４バスに接続された端末あるいはサービスを検索しあるいはその登録を受け、１３９４バス上にどのような端末／サービスが存在しているのかを認識し、要求された場合など必要に応じてその情報を外部に通知する機能を持つ。１３９４／ＩＰサービスロケーション処理機能２６は、少なくともサービスロケーションプロトコル（インターネットドラフトのｄｒａｆｔ−ｉｅｔｆ−ｓｖｒｌｏｃ−ｐｒｏｔｏｃｏｌ−１６．ｔｘｔ）の処理機能を持つ。
【０１１３】
サービスロケーション代理機能２７は、公衆網側に対して、ＩＰベースのサービスロケーションの形でサービスロケーションプロトコルを稼動する。また、１３９４バスに接続されたサービスあるいは端末、すなわちＩＰベースではなく、一連の１３９４プロトコルしか認識、処理できないＩＥＥＥ１３９４専用プロトコル端末／サービス（第１の家庭内ネットワークではデジタルＴＶ７、第２の家庭内ネットワークではＤＶＤプレーヤ８とデジタルＶＴＲ９）についても、本ＡＶ接続装置がそれらサービスあるいは端末の代理サーバとなって、それら端末／サービスを広告する機能を持つとともに、これら広告されたサービスを公衆網側（一般的にはＩＰ側）から受け取った場合に、それらをＩＥＥＥ１３９４のコマンドあるいはサービスにマッピングすべく１３９４・ＩＰコマンド変換機能２９に通知する機能を持つ。
【０１１４】
１３９４ＡＶコマンド処理機能２８は、ＩＥＥＥ１３９４の端末制御プロトコル（たとえば１３９４ＡＶ／Ｃプロトコルや、ＳＢＰなど）の処理機能である。
【０１１５】
１３９４／ＩＰコマンド変換機能２９は、ＩＰを使って送られてきたあるいは送る制御コマンド（例えばＲＴＳＰ（Ｒｅａｌ  Ｔｉｍｅ  Ｓｔｒｅａｍ  Ｐｒｏｔｏｃｏｌ）など；なお、ＲＴＳＰについては、例えばインターネットドラフトｄｒａｆｔ−ｉｅｔｆ−ｍｍｕｓｉｃ−ｒｔｓｐ−０２．ｐｓにて詳しく説明されている）と、１３９４バス上を送られるＩＥＥＥ１３９４の端末制御コマンド（例えば１３９４ＡＶ／ＣプロトコルやＳＢＰのコマンド）を相互に変換して、相手側に通知する機能を持つ。
【０１１６】
次に、第２の家庭内ネットワークにおいて、第２のＡＶ接続装置５が、第２の家庭内ネットワークに関する情報を取得する手順、すなわち第２の家庭内ネットワーク上に存在する端末およびサービスを認識する手順について説明する。
【０１１７】
図３にＩＥＥＥ１３９４特有の機構を用いた端末／サービス収集手順のシーケンスの一例を示す。１３９４バスに接続される端末には、それぞれ、その端末についての所定の情報が書き込まれたコンフィグレーションＲＯＭが格納されている。図３では、第２のＡＶ接続装置５は、１３９４バス３につながる各装置８〜１１のコンフィグレーションＲＯＭの読み込み（リード）を行い、各装置８〜１１の情報収集を行う。この情報収集は、１３９４バス３につながる端末すべてに対して行ってもよい。
【０１１８】
以下では、コンフィグレーションＲＯＭに記述する情報についていくつかの例を示す。ここでは、ＰＣ１０のコンフィグレーションＲＯＭを例にとって説明する。なお、本実施例では、ＩＥＥＥ１３９４の仕様書にならい「ＲＯＭ」という語句を用いているが、実際には「レジスタ」あるいは「メモリ空間の一部」と認識されればよく、ＲＯＭでない場合（ＲＡＭ等の場合）も含むものとする。
【０１１９】
図４に、コンフィグレーションＲＯＭに記述する情報の第１の例を示す。この例では、コンフィグレーションＲＯＭには、その端末についての基本的情報であるノード情報（例えばベンダＩＤ、ノードケーパビリティなど）（図４中３１）の他に、ユニット情報として、そのＰＣ１０が行うサービスを記述するものである。すなわち、このＰＣ１０は、ＷＷＷサーバ、デジタルアルバムサーバ機能を有しており、これらがコンフィグレーションＲＯＭの内容に反映されている（図４中３２、３３）。このようにコンフィグレーションＲＯＭに記述しておくことによって、１３９４バスにつながる他の端末に対して、自身がどのような端末であるのかを説明するだけではなく、自身がどのようなサービスを行っているかを知らしめることが可能となる。この機能は、特にＰＣのように、一つの端末に複数の機能が実現されているような場合にきわめて有益である。具体的にコンフィグレーションＲＯＭに記述される情報としては、サービス種別、そのサービスの属性（そのサービスを受けるために使用する種々のパラメータ等で、例えば最大データ転送速度、装置仕様、設定パラメータ等）などである。
【０１２０】
ところで、ＰＣ１０は、ホームオートメーション網１２にも接続されており、これらのホームオートメーションのサーバともなっている。つまり、ホームオートメーション網１２につながる各種機器（ここではエアコン１３と電子レンジ１４）の制御はこのＰＣ１０が行う構成となっている。言い換えると、このＰＣ１０にアクセスすることにより、第２の１３９４バス３につながる端末は、ホームオートメーション１２網につながる各種機器の制御を行うことができることを意味する。このことを、第２の１３９４バス３上の端末に知らしめるために、ホームオートメーション網１２についての情報（サービス情報）もＰＣ１０のコンフィグレーションＲＯＭに格納している。
【０１２１】
まず、ホームオートメーションサービスを行っていることを示す情報がコンフィグレーションＲＯＭに格納されている（図４中３４）。１３９４バス上では、これを一つのユニットであると認識させてもよい。次に、このユニット依存ディレクトリとして、エアコンサービス、電子レンジサービスが提供されていることを示す情報がそれぞれコンフィグレーションＲＯＭに記述されている（図４中３５、３６）。このようにすることにより、１３９４バスにつながる他の端末は、１３９４バスではない別のネットワークに接続されたサービスについても、どのようなサービスがどのように行われているのかを知ることができるようになり、サービスの認識やその操作性の大幅な向上が見込まれる。
【０１２２】
次に、図５に、コンフィグレーションＲＯＭに記述する情報の第２の例を示す。第１の例では、コンフィグレーションＲＯＭには、その端末についてのユニット情報として、その端末が行うサービスについての記述が行われていたのに対して、第２の例では、サービスについての記述（図５中４５〜５０）の他に、端末別の情報も記述してある（図５中４２〜４４）。これらは、それぞれユニット情報として格納されており、それぞれユニット依存ディレクトリとして格納されていてもよい。また、端末別の情報とサービス別の情報であることを区別するために、それらの区別（どちらのユニットか）を示す領域（それぞれ図５中４２、４５）が存在してもよい。
【０１２３】
ここでは、端末別情報として、ＰＣ１０にホームオートメーション網１２を介して接続されている端末（エアコン１３と電子レンジ１４）についての情報がそれぞれ格納されている（図５中４３、４４）。これらを参照することによって、他の１３９４ノードは、１３９４バスにつながるノードばかりでなく、その１３９４バスにつながるノードに接続された他のノード（本実施例ではエアコン１３と電子レンジ１４）についての情報も、１３９４レベルで得ることが可能となり、家庭内ネットワークの統合的な管理や制御にきわめて有効である。
【０１２４】
また、第１の例と同様に、このＰＣ１０は、ＷＷＷサーバ、デジタルアルバムサーバ機能等を有する場合、これらがコンフィグレーションＲＯＭに反映される（図５中４５〜５０）。その記述の具体的ルールは、基本的に第１の例と同様である。
【０１２５】
次に、図６に、コンフィグレーションＲＯＭに記述する情報の第３の例を示す。この例は、ＰＣ１０自身についての情報のみを格納する場合である。この場合は、第１の例や第２の例と異なり、サービスをベースとした記述ではなく、ノードとしての情報すなわち自身についての装置としての情報のみを記載することになるので、ユニット情報としては、自身がＰＣあるいはＰＣボード（例えば１３９４ＰＣＩボード）である旨が記載される。
【０１２６】
さて、前述のようにして第２のＡＶ接続装置５にて収集された第２の家庭内ネットワーク上の端末／サービス情報を、例えば当該第２のＡＶ接続装置５のコンソール上に表示することにより、ユーザにその操作を促すことができる。その際の表示方法として、サービス別の表示を行うことも可能であるし、端末ベースの表示を行うことも可能である。
【０１２７】
図７にサービス別の表示を行う場合の画面例を示す。図７のように、第２の家庭ネットワーク上に展開されているサービス別に１つづつアイコン（ｉ１〜ｉ７）が用意され、ユーザは所定のユーザインタフェースにより使用したいサービスを指示することで（例えばマウス装置を用いてクリックしあるいはドラッグアンドドロップすることで）、そのサービスにアクセスすることが可能となる。
【０１２８】
ここで、図７のサービス別のアイコンの画面表示は、ネットワークの種別を問わず、第２のＩＥＥＥ１３９４バス３に接続されたサービスも、ホームオートメーション網１２に接続されたサービスも区別なく同様に表示されている。これは、一般にユーザにとってはそのサービスがどの物理ネットワークにつながっているかどうかは関心が無いため、上記のように区別なく表示するのが好ましいと考えられるからである。これによってユーザに物理ネットワークを意識させた場合に生じるであろう混乱を防止することができる。
【０１２９】
なお、画面には必ずしもコンフィグレーションＲＯＭに書き込んである情報そのものを表示させる必要は無く、対応する別の情報を表示するようにしてもよい。例えば、コンフィグレーションＲＯＭに書き込まれている情報は、一般的に専門家向けのコードであることが多いと考えられ、一般ユーザにはなじみの薄い用語であることが多いと考えられる。具体例を挙げると、コンフィグレーションＲＯＭに「デジタルＶＣＲ」を意味するコードが書かれていたとしても、日本人にはこの用語はなじみが薄い。そこでこのような場合、「デジタルＶＣＲ」の代わりに、一般ユーザによりなじみ深い「ビデオ」あるいは「ビデオデッキ」等と表示するようにしても良い。
【０１３０】
次に、図８に端末別の表示を行う場合の画面例を示す。サービス別の場合と同様に、第２の家庭ネットワーク上に展開されている端末別に１つづつアイコン（ｉ１１〜ｉ１５）が用意され、ユーザは所定のユーザインタフェースにより使用したいサービスを指示することで（例えばマウス装置を用いてクリックしあるいはドラッグアンドドロップすることで）、そのサービスにアクセスすることが可能となる。この場合も、画面表示ではネットワークの種別を問わず、第２のＩＥＥＥ１３９４バス３に接続されたサービスも、ホームオートメーション網１２に接続されたサービスも区別なく表示されている。
【０１３１】
以上、１３９４バスのコンフィグレーションＲＯＭの読み込みによって、端末あるいはサービスを認識する方法であった。
【０１３２】
次に、サービスロケーションプロトコルを利用したサービスの登録について説明する。
【０１３３】
インターネットの標準化機関であるＩＥＴＦでは、サービスロケーションプロトコルを用いたサービスの登録、検索方式を検討している。これらでは、ＩＰ端末を対象に、サービスをあらかじめいくつかに分類し、
（１）それらのサービス別にディレクトリエージェント（本実施形態においてはディレクトリサーバともいう）に、そのサービスを行うサーバの位置情報を登録する。ユーザは、このディレクトリエージェントに問い合わせをすることで、サービスの位置を知ることができるようになる。
【０１３４】
（２）サービス別にＩＰマルチキャストアドレスを用意する。あるサービスを要求しているユーザは、そのＩＰマルチキャストアドレスに対して、「そのサービスはどこだ？」という意味のメッセージを飛ばす。そのサービスを提供しているサーバは、これに呼応することで、ユーザはそのサービスを提供しているサーバの位置を知ることができるようになる。
【０１３５】
という２つの方法でサービス登録、検索ができるようになっている。
【０１３６】
本実施形態では、第２のＡＶ接続装置５が、上記（１）のサービスロケーションプロトコルのディレクトリエージェントとなっている。
【０１３７】
第２の家庭内ネットワーク上のＩＰ端末（図１ではＰＣ１０とプリンタ１１）は、その提供しているサービスをディレクトリエージェントである第２のＡＶ接続装置５に登録する。まず、ＩＰ端末は、ネットワーク上のどこにディレクトリエージェントが存在しているかどうかを調査し、サービス情報を登録するための手順を踏む。これについて、ＰＣ１０がサービスを登録する場合を例にして、図９を参照しながら説明する。
【０１３８】
ＰＣ１０は、サービスリクエストメッセージを第２のＩＥＥＥ１３９４バス３に対して、送出する。サービスリクエストメッセージは「このサービスを提供しているサーバは返事をしてください」という意味のメッセージであり、本例の場合より具体的には「ディレクトリサービスを提供してるサーバは返事をしてください」という意味のメッセージを送出する。
【０１３９】
サービスリクエストメッセージには対象とするサービス種別を特定するために「ｐｒｅｄｉｃａｔｅ」領域が設けられており、この領域に「ディレクトリサービス」と記述し、さらに宛先をディレクトリエージェント（ＤＡ）ディスカバリマルチキャストアドレス（ＩＰアドレス）としてこのメッセージを送出する。
【０１４０】
本実施形態においては、第２の家庭内ネットワークにおいて、ＩＰパケットが到達するネットワークを第２のＩＥＥＥ１３９４バス３のみとするため、ＰＣ１０から送出されたサービスリクエストメッセージは、ディレクトリエージェントである第２のＡＶ接続装置５とプリンタ１１に到達する。
【０１４１】
サービスリクエストメッセージを受け取ったディレクトリエージェントである第２のＡＶ接続装置５は、自身がディレクトリエージェントであることを通知するために、「ディレクトリエージェント（ＤＡ）アドバタイズメント」をＰＣ１０に送り返す。なお、プリンタ１１は、自身がディレクトリエージェントではないことから、サービスリクエストメッセージを無視する（通常はリンクレイヤが受け取らない）。
【０１４２】
次に、ＰＣ１０は、ディレクトリエージェント（ＤＡ）アドバタイズメントを受け取ることで、ディレクトリエージェントが第２のＡＶ接続装置５に存在することを認識する。
【０１４３】
次に、ＰＣ１０は、自身が提供しているサービスのディレクトリエージェントへの登録を行う。本実施形態では、ＰＣ１０は、自身がＷＷＷサービス（具体的にｈｔｔｐサーバ）とデジタルアルバムサービスを提供するとともに、さらにホームオートメーション網１２につながるエアコン１３と電子レンジ１４のサービスについても代理サーバとして外部からのサービス要求を受けられるようになっている。
【０１４４】
サービス登録にあたってＰＣ１０は、ＰＣ１０自身が提供しているＷＷＷサービスとデジタルアルバムサービスのそれぞれについて、その位置情報や属性情報等を登録するとともに、ホームオートメーション網（ＬＯＮ）１２上のサービスそれぞれについても、エアコン１３と電子レンジ１４に代わってその位置情報や属性情報等の登録を行う。
【０１４５】
図１０の（ａ）、（ｂ）にそれぞれＷＷＷサービス、デジタルアルバムサービスの登録情報の内容の一例を示す。ＷＷＷサービス、デジタルアルバムサービスの位置情報としてＰＣ１０のＩＰアドレスと各サービス毎に定められたポート番号を含むＵＲＬが用いられている。
【０１４６】
また、図１０の（ｃ）、（ｄ）にそれぞれＰＣ１０が代理するエアコンサービス、電子レンジサービスの登録情報の内容の一例を示す。この場合、各代理サービス用にＰＣ１０のポート番号を割当てる。図１０の例ではＬＯＮ上のエアコンサービスには１５０００を、ＬＯＮ上の電子レンジサービスには１５００１を割当てている。これによって、外部の端末は、ＰＣ１０上にエアコンサービスと電子レンジサービスが存在すると解釈すとともに、しかも、それらサービスはＩＰレベルでのサービスであると解釈する。
【０１４７】
外部の端末が、ホームオートメーション網１２のエアコンサービスにアクセスしたいときはＰＣ１０のポート番号１５０００にアクセスし、電子レンジサービスにアクセスしたいときはＰＣ１０のポート番号１５００１にアクセスする。一方、ＰＣ１０は、ポート番号１５０００にアクセスされた場合にはエアコン向けのサービス要求であると解釈し、またポート番号１５００１にアクセスされた場合には電子レンジ向けのサービス要求であると解釈し、渡されたＩＰの制御コマンドをＬＯＮの制御コマンドに翻訳し、これをホームオートメーション網１２上の実際の機器（エアコン１３または電子レンジ１４）に向けて送出する。この操作についてはエアコンサービスへのアクセスを例にとって後述する。
【０１４８】
このように図９のサービス登録によって、第２のＡＶ接続装置５に、ＷＷＷサービス、デジタルアルバムサービス、ＬＯＮ上のエアコンサービス、ＬＯＮ上の電子レンジサービスが登録されることになる。サービス登録が成功すると、ディレクトリエージェントである第２のＡＶ接続装置５はサービスアクノリッジ（ＡＣＫ）をＰＣ１０に向けて返送する。
【０１４９】
なお、同様にしてプリンタ１１から第２のＡＶ接続装置５に対してプリンタサービスの登録が行われる。
【０１５０】
以上のように、サービスロケーションプロトコルの登録の手続きにより、ＷＷＷ、デジタルアルバム、エアコン、電子レンジ、プリンタの各サービスがディレクトリエージェントである第２のＡＶ接続装置５に登録されることになる。
【０１５１】
さて、この登録手順により得られる情報と、先説明したＩＥＥＥ１３９４上のコンフィグレーションＲＯＭの読み込みにより得られる情報と合わせて、第２の家庭内ネットワーク上のサービス情報を構成することが可能である。
【０１５２】
その構成方法はさまざまな種類が考えられるが、本実施形態では、その一例として、（ｉ）サービスロケーションプロトコルにて登録されたサービスについては、これを優先的に表示し、（ii）ここに現れないサービス、具体的には、サービスロケーションプロトコルでは認識されないノードであって、かつ、ＩＥＥＥ１３９４上のコンフィグレーションＲＯＭの読み込みでは認識されたノードについては、コンフィグレーションＲＯＭの情報に基づいてサービス情報を構成し、（ｉ）と（ii）の両者の情報を併せて、一つの「第２の家庭内ネットワーク上のサービスディレクトリ情報」としてユーザおよび外部に紹介するという方法である。
【０１５３】
より具体的には、サービスロケーションプロトコルの登録の手続きにより認識された、ＷＷＷサービス、デジタルアルバムサービス、エアコンサービス、電子レンジサービス、プリンタサービスと、ＩＥＥＥ１３９４上のコンフィグレーションＲＯＭの読み込みにより認識されたＤＶＤプレーヤサービスと、ビデオサービスを合わせて、全サービスが認識される。そして、例えば図７のように第２のＡＶ接続装置５のコンソール上に、第２の家庭ネットワーク上に展開されているサービス別に１つづつアイコン（ｉ２１〜ｉ２７）が表示される。また、前述と同様にユーザは所定のユーザインタフェースにより使用したいサービスを指示することで（例えばマウス装置を用いてクリックしあるいはドラッグアンドドロップすることで）、そのサービスにアクセスすることが可能となる。
【０１５４】
ところで、サービスの提供を受けるユーザ端末であるユーザエージェントは、自身が接続されているＩＥＥＥ１３９４バス上のサービスに関する情報をディレクトリエージェントに問い合わせて入手することもできるが、その代わりに前述したディレクトリエージェントへのサービスに関する情報の登録手順と同様の手順により、自身が各装置からの通知を受けることとで、サービスに関する情報を入手することもできる。
【０１５５】
次に、第１の家庭内ネットワークのユーザ（つまり１３９４バス１に接続された端末のユーザ）が、公衆網２を介して、第２の家庭内ネットワーク内の端末（つまり１３９４バス３またはホームオートメーション網１２に接続された端末）を遠隔操作して所望の動作をさせる場合について説明する。
【０１５６】
図１に示されるように、第１の家庭内ネットワークと、第２の家庭内ネットワークとは、公衆網２で相互接続されている。前述したように公衆網２は、電話網でもよいし、広い帯域の回線、あるいは専用線のようなものであってもよいし、インターネットであってもよい。また、ＩＰアドレスにはプライベートＩＰアドレス（公衆網２がインターネットではなくＩＳＤＮ等である場合）またはグローバルＩＰアドレス（公衆網２がインターネットである場合）を使用するものとする。
【０１５７】
ここで、第１のＡＶ接続装置４は、第１の家庭内ネットワークのディレクトリエージェントであり、先に第２のＡＶ接続装置５について説明したものと同様の手順によりネットワーク内のサービスを認識しているものとする。より具体的には、端末としてはＰＣ６とデジタルＴＶ７が認識され、サービスとしてはＰＣ６により提供されるなんらかのサービスとデジタルＴＶサービスが認識される。
【０１５８】
さて、最初のフェイズとして、第１の家庭内ネットワークのユーザに対して、第２の家庭内ネットワーク内のサービスを提示するために、第１のＡＶ接続装置４は、第２の家庭内ネットワークのサービス情報（ディレクトリ情報）を収集することを試みる。その際、第１の家庭内ネットワークと第２の家庭内ネットワークとは、インターネットプロトコルにて通信を行うものとする。なお、本実施形態の手法は別のプロトコル、例えばＩＰＸやＮｅｔＢＥＵＩ等を用いた場合も同様に適用可能である。
【０１５９】
図１２に、サービス情報の収集のために第１のＡＶ接続装置４と第２のＡＶ接続装置５との間で行われる情報交換の手順の一例を示す。
【０１６０】
まず、第１のＡＶ接続装置４は、第２の家庭内ネットワーク内のディレクトリエージェントを検索するため、第２の家庭内ネットワークに向けて、「ｐｒｅｄｉｃａｔｅ」をディレクトリエージェントとしたサービスリクエストを送出する。これを実現するためには、例えば、ホップ数を複数にして（スコープが他の家庭内ネットワークも含むようにして）ＩＰマルチキャストを送付する方法や、第２の家庭内ネットワークに対してソースルーチングあるいはルーチングヘッダを付けた上で、上記ＩＰマルチキャストアドレスに送付する方法などが考えられる。
【０１６１】
ここで、相手側の家のＩＰアドレス、特にＩＰサブネットアドレス（すなわちネットワークのアドレス）を知る方法としては、例えば、相手側の家に対して、ルーチングプロトコルによってルーチング情報を交換して、相手側のアドレスを知る方法などが考えられる。
【０１６２】
さて、このサービスリクエストを受信した第２の家庭内ネットワークのディレクトリエージェントである第２のＡＶ接続装置５は、自身がディレクトリエージェントである旨を伝えるためにディレクトリエージェントアドバタイズメントを第１のＡＶ接続装置４に伝える。
【０１６３】
次に、第１のＡＶ接続装置４は、第２の家庭内ネットワークでどのようなサービスが提供されているかを知るために、サービスタイプリクエストを第２のＡＶ接続装置５に送付する。
【０１６４】
第２のＡＶ接続装置５は、サービスタイプリプライとして、ＷＷＷ（ＵＲＬで表記されたサービス名はｈｔｔｐ）、デジタルアルバム（同ａｌｂｕｍ）、プリンタ（同ｌｐｒ）の他に、ＬＯＮに接続されたエアコン（同ａｉｒｃｏｎ＿ｌｏｎ）、ＬＯＮに接続された電子レンジ（同ｍｉｃｒｏｗａｖｅ＿ｌｏｎ）、１３９４端末であるＤＶＤプレーヤ（同ＤＶＤ１３９４）、１３９４端末であるデジタルＶＴＲ（同ＤＶＴＲ１３９４）が通知される。例えば図１２に示すように、「Ｓｅｒｖｉｃｅ：ｈｔｔｐ：／／」、「Ｓｅｒｖｉｃｅ：ａｌｂｕｍ：／／」、「Ｓｅｒｖｉｃｅ：ｌｐｒ：／／」、「Ｓｅｒｖｉｃｅ：ａｉｒｃｏｎ＿ｌｏｎ：／／」、「Ｓｅｒｖｉｃｅ：ｍｉｃｒｏｗａｖｅ＿ｌｏｎ：／／」、「Ｓｅｒｖｉｃｅ：ＤＶＤ１３９４：／／」、「Ｓｅｒｖｉｃｅ：ＤＶＴＲ１３９４：／／」が通知される。
【０１６５】
ＬＯＮに接続された機器については、ＰＣ１０から通知されたサービス情報（サービスのロケーションを表すＵＲＬ情報）を、そのまま第１のＡＶ接続装置４に通知している。すなわち、ＩＰのサービスロケーションプロトコルで登録されたサービスについては、そのまま第１のＡＶ接続装置４に通知している。
【０１６６】
第２の家庭内ネットワークのディレクトリエージェントである第２のＡＶ接続装置５が１３９４端末／サービスとしてしか認識できなかったサービスについては、ディレクトリエージェントである第２のＡＶ接続装置５自身がそのサービスの代理サーバとしてサービスを提供することを試みるために、「１３９４上のＤＶＤ」、「１３９４上のＤＶＴＲ」という意味で、「ｓｅｒｖｉｃｅ：ＤＶＤ１３９４」、「ｓｅｒｖｉｃｅ：ＤＶＴＲ１３９４」という新しいサービスカテゴリを用いてＩＰ上で第１のＡＶ接続装置４に紹介している。
【０１６７】
次に、これら情報を受け取った第１のＡＶ接続装置４は、受け取ったそれぞれのサービスについての詳細情報を収集するための手順に入る。
【０１６８】
その収集方法の一例を以下に示す。すなわち、上記サービスタイプリプライで受信した全サービスについて、あるいはそのうち第１のＡＶ接続装置４側にとって興味のあるサービスについて、そのロケーションと属性情報を得るために、それぞれサービスリクエストおよび属性リクエストをディレクトリエージェントである第２のＡＶ接続装置５に送付する。サービスリクエストに対しては、サービスリプライ（具体的には、そのサービスのロケーション情報であるＵＲＬ；例えば、ＵＲＬ  ：  Ｓｅｒｖｉｃｅ：ＤＶＤ１３９４：／／１９２．１６８．１．２５４：２００００）が返答され、属性リクエストに対しては、属性リプライ（そのサービスの属性情報；例えば、１３９４上のＤＶＤの属性情報）が返答される。なお、詳細についてはサービスロケーションプロトコルのドキュメント（例えばインターネットドラフトのｄｒａｆｔ−ｉｅｔｆ−ｓｖｒｌｏｃ−ｐｒｏｔｏｃｏｌ−１６．ｔｘｔなど）に記述されている。
【０１６９】
図１２にはＤＶＤ１３９４サービスについての上記手続きについて記述してあるが、その外の全てのサービスについても同様にして情報を収集すると、第１のＡＶ接続装置４は、第２の家庭内ネットワークのサービス情報を図１３のように収集できる。
【０１７０】
ここで、ＤＶＤ１３９４、ＤＶＴＲ１３９４のそれぞれのサービスについては、先にも述べたように、第２のＡＶ接続装置５がこれらのサービスの代理サーバとして、外部からのサービス要求を受けられるようになっている。すなわち、具体的なサービスの具現である、ＩＰのプロトコルである遠隔コマンドプロトコル等を、１３９４ノードに代わって第２のＡＶ接続装置５が受け、これを１３９４ノードと１３９４プロトコルに変換してやり取りする（なお、その詳細については後述する）。このようにすることにより、本来１３９４プロトコルでしかやり取りのできないサービス（ここではＤＶＤサービスとＤＶＴＲサービス）について、ネットワークを問わないプロトコルであるＩＰのサービス紹介プロトコルを通して紹介することができるため、ネットワークを問わず、任意のＩＰノードから、上記１３９４ノードへのコマンドの送付、制御が可能となる（可制御となる）。
【０１７１】
各種リプライで収集された情報のうち第２のＡＶ接続装置５が代理で受付るサービス（ＤＶＤサービスとＤＶＴＲサービス）については、そのサービス窓口となるポート番号、すなわち各代理サービス用のポート番号を割当てるようにする。このポート番号は、あらかじめ標準化機関などによって割当てがなされたものであってもよいし、ノード同士のネゴシエーションにより決められたものであってもよい。本実施形態の場合は、１３９４上のＤＶＤサービスについては２００００、１３９４上のＤＶＴＲサービスについては２０００１とする。これによって、外部の端末（例えば第１の家庭内ネットワーク上の端末）は、第２の家庭内ネットワーク上に上記サービスが存在すると解釈するとともに、しかも、それはＩＰレベルでのサービスであると解釈する。
【０１７２】
さて、第１の家庭内ネットワーク上の端末、例えば第１のＡＶ接続装置４は、例えば図１４のように、そのコンソール上に、自身が認識しているサービスの一覧表示という形で、第１の家庭内ネットワークについての情報に加えて、第２の家庭内ネットワーク（例えば○○さん宅の家庭内ネットワーク）上のサービスの情報についても、前記サービスロケーションで取得した情報に基づいて表示する。この表示の仕方は図１１のものと同一の方針によるものであってもよい。
【０１７３】
次に、外部の端末が第２の家庭内ＬＡＮの各種サービスにアクセスしたいときは、図１３のＵＲＬで紹介されているアドレスとポート番号にそれぞれアクセスする。
【０１７４】
例えば、ユーザが第１のＡＶ接続装置４を操作して、第２の家庭内ＬＡＮ上の１３９４端末であるＤＶＤプレーヤ８から映像を公衆網２を介して持ってきて、これをデジタルＴＶ１０７に映し出す場合を考える。
【０１７５】
ユーザの実際の操作は例えば次のようになる。ユーザはまず図１４のＤＶＤプレーヤのアイコンをクリックする。すると例えば図１５のようなＤＶＤプレーヤ操作のための操作ボタン群が画面に表示される。次にユーザは所望の操作ボタンをクリックするなどしてＤＶＤプレーヤ８の遠隔操作を行う。また、受信端末がデジタルＴＶであることをクリック等、なんらかの入力方法で指定する。
【０１７６】
図１６に、このときに実際のネットワーク上を流れるコマンド群、プロトコル群についてのシーケンスの一例を示す。
【０１７７】
まず、第１のＡＶ接続装置４は、デジタルＴＶ７に映像を流し込んで、これを表示させるための設定を行うべく、以下のようなシーケンスの動作を行う。すなわち、ＩＥＣ１８８３プロトコルにしたがって、第１のＩＥＥＥ１３９４バス上の同期チャネルを確保する。このとき、取得した同期チャネルの同期チャネル番号は＃ｙであるとする。
【０１７８】
次に、第１のＡＶ接続装置４は、デジタルＴＶ７の電源をオンにし、同期チャネル＃ｙからの映像を画面に映し出すための、あらかじめ１３９４ＴＡ等の標準化団体で定められた制御コマンド（例えば１３９４ＡＶ／Ｃプロトコル）を使って、コマンドを送付する。コマンドが受け付けられたなら、ＡＣＫを第１のＡＶ制御装置４に返すようにしてもよい。これにより、第１のＡＶ接続装置４からデジタルＴＶ７までの回線が確保されたことになる。
【０１７９】
これと相前後してまたは並行的に、第１のＡＶ接続装置４は、第２のＡＶ制御装置５に対して、ＤＶＤプレーヤ８に対するコマンドを発行する。ここで、第１のＡＶ接続装置４は、ＤＶＤプレーヤ８はＩＰサービスであると解釈している。コマンドは、第２のＡＶ接続装置５（ＩＰアドレス＝１９２．１６８．１．２５４）の代理サーバのポート、すなわち２００００に対して発行される。
【０１８０】
ここで、遠隔操作のためのコマンドとしては、例えばＲＴＳＰ（ＲｅａｌＴｉｍｅ  Ｓｔｒｅａｍｉｎｇ  Ｐｒｏｔｏｃｏｌ）を利用する。ＲＴＳＰは、遠隔のリアルタイム信号の制御を行うためのプロトコルであり、インターネットの標準化機関であるＩＥＴＦで議論が行われている。詳細については例えばインターネットドラフトｄｒａｆｔ−ｉｅｔｆ−ｍｍｍｕｓｉｃ−ｒｔｓｐ−０２．ｐｓに開示されている。
【０１８１】
第１のＡＶ接続装置４は、ＤＶＤプレーヤ８を再生させるために必要なコマンド（例えばＳＥＴＵＰコマンドや、ＰＬＡＹコマンド）をＲＴＳＰ上で発行する。
【０１８２】
ＲＴＳＰのＳＥＴＵＰコマンドを受信した第２のＡＶ接続装置５は、今後ＤＶＤプレーヤ８に対する制御が開始されると解釈し、ＤＶＤプレーヤ８が接続されている第２のＩＥＥＥ１３９４バス３上に映像伝送のための帯域、すなわち同期チャネルの確保を行う。これは、ＩＥＣ１８８３により行われる。ここで、確保された同期チャネル番号を＃ｙとする。帯域は、経験的な値（例えばＭＰＥＧなら６Ｍｂｐｓ等）を用いることとしてもよいし、メッセージ中に要求値を含めてもよい。
【０１８３】
また、ＲＴＳＰのＰＬＡＹコマンドを受信した第２のＡＶ接続装置５は、これを１３９４コマンド、すなわち１３９４ＡＶ／Ｃプロトコル等、１３９４端末間のプロトコルとして規定された、対応するコマンド（例えばＤＶＤ−ＰＬＡＹというコマンドが規定するものとする）により、コマンドをＤＶＤプレーヤ８に発行する。
【０１８４】
このようなコマンドの変換は、１３９４／ＩＰコマンド変換機能２９にて行われる。その処理の流れを図１７を参照しながら説明する。ＩＰ上のコマンドはサービスロケーション代理機能２７により受信される。受信されたコマンドは１３９４／ＩＰコマンド変換機能２９によりコマンド変換される。具体的には、ＤＶＤ用のコマンド対応テーブル６１、ＤＶＴＲ用のコマンド対応テーブル６２といったように、ＩＰ上のコマンド（あるいは操作）と１３９４上のコマンド（あるいは操作）との関係を記述したテーブルをサービス別に設け、これらサービス別テーブルをもとにＩＰで送付されてきたコマンドを１３９４のコマンドに変換し、これを１３９４ＡＶコマンド処理機能２８に渡し送出を指示する。そして、指示を受けた１３９４ＡＶコマンド処理機能２８により実際のコマンドの送出が行われる。
【０１８５】
なお、上記とは逆の方向にコマンドが流れる場合、すなわち１３９４コマンドが入力されこれをＩＰコマンドに変換して出力する場合も、手順は同じ様になる。すなわち、１３９４コマンドは１３９４ＡＶコマンド処理機能２８により受信され、これが１３９４／ＩＰコマンド変換機能２９においてサービス別テーブルをもとにＩＰコマンドに変換され、これがサービスロケーション代理機能２７により送出される。
【０１８６】
さて、このようにしてコマンドがＤＶＤプレーヤ８に到達すると、実際の映像データの送信が第２の１３９４バス３の同期チャネル＃ｘを通して行われる。これは、ＡＣＫ信号が返った後（なお、ＡＣＫ信号は公衆網（ＩＳＤＮあるいはインターネット等）上ではＲＴＳＰのＯＫに変換されてもよい）、実際のデータ転送が開始される。
【０１８７】
第２のＡＶ接続装置５は、データリンクスイッチ２２を介して、映像データを公衆網２に送出する。その際、ＭＰＥＧ多重の形でこれを送付してもよい。
【０１８８】
送出された映像データは公衆網２を介して第１のＡＶ接続装置４に送付される。第１のＡＶ接続装置４は、受信した映像データをデータリンクスイッチ２２を介して、第１の１３９４バス１の同期チャネル＃ｙに送付し、最終的に映像データはデジタルＴＶ７にて再生される。この結果、第１の家庭内ＬＡＮのユーザはデジタルＴＶ７にて、第２の家庭内ＬＡＮ上のＤＶＤプレーヤ８からの映像を見ることができるようになる。
【０１８９】
なお、前述したように、映像データの伝送経路のデータリンクレイヤでの帯域や仮想伝送路識別子の確保、整合を、ＦＡＮＰ処理機能２５あるいはその他のＲＳＶＰ処理機能等により実現するのが好ましい。ＦＡＮＰ等を用いることにより、ネットワーク種別を問わない、通信資源の確保が可能となる。そのようにした場合のシーケンスの一例を図１８に示す。図１８では、実際の映像データの送付に先立ち、ＦＡＮＰにより、映像データの経路となるデータリンクの通信資源の確保と、識別子の整合、接続装置の設定等が行われている。
【０１９０】
次に、公衆網２を介した遠隔操作の他の例として、例えば第１の家庭内ＬＡＮのユーザが、第１のＡＶ接続装置４を操作して、第２の家庭内ＬＡＮ上のエアコン１３（ＬＯＮ端末である）を操作することを考える。
【０１９１】
ユーザの実際の操作は例えば次のようになる。ユーザはまず図１４のエアコンのアイコンをクリックする。すると例えばエアコン操作のための操作ボタン群が画面に表示される。次にユーザは所望の操作ボタンをクリックするなどしてエアコン１３の遠隔操作を行う。
【０１９２】
図１９に、このときに実際のネットワーク上を流れるコマンド群、プロトコル群についてシーケンスの一例を示す。
【０１９３】
まず、第１のＡＶ接続装置４は、サービスロケーションで示されている、代理サーバのＰＣ１０に対して、エアコン１３に対するコマンドを発行する。ここで、第１のＡＶ接続装置４は、エアコン１３はＰＣ１０が提供しているＩＰサービスであると解釈している。コマンドは、代理サーバであるＰＣ１０のポート、すなわち１５０００に対して発行される。
【０１９４】
ここで、遠隔操作のためのコマンドとしては、ＣＣＣＰ（Ｃａｍ  ＣｏｄｅｒＣｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）を利用することができる。ＣＣＣＰは、遠隔のカムコーダの制御をインターネットを介して行うためのプロトコルであるが、同様の考え方で様々な電気機器の制御が可能であり、特にエアコン向けのコマンド群がＣＣＣＰに存在するものとする。なお、ＣＣＣＰの詳細は例えばインターネットドラフトｄｒａｆｔ−ｏｈｔａ−ｃｃｃ−ｖｉｄｅｏ−００．ｔｘｔに開示されている。
【０１９５】
第１のＡＶ接続装置４は、エアコン１３の電源をオンにするのに必要なコマンド（ＰＯＥＷＲ＿ＯＮコマンド）をＣＣＣＰ上で発行する。
【０１９６】
ＣＣＣＰのＰＯＷＥＲ＿ＯＮコマンドを受信したＰＣ１０は、これをＬＯＮコマンド、ＬＯＮノード間のプロトコルとして規定された、対応するコマンド（例えばＬＯＮ＿ＰＯＷＥＲ＿ＯＮというコマンドが規定するものとする）により、コマンドをエアコン１３に発行する。
【０１９７】
このようなコマンドの変換は、ＰＣ１０内にて行われる。その処理の流れを図２０を参照しながら説明する。ＩＰ上のコマンドは、サービス代理受信機能７１が受信する。受信されたコマンドはＣＣＣＰ／ＬＯＮコマンド変換機能７２によりコマンド変換される。具体的には、ＣＣＣＰ／ＬＯＮコマンド変換機能７２にＬＯＮ用のコマンド対応テーブル、すなわちＩＰ上のコマンド（あるいは操作）とＬＯＮ上のコマンド（あるいは操作）との関係を記述したテーブルを設け、このテーブルをもとにＣＣＣＰで送付されてきたコマンドからＬＯＮを介してエアコン１３に対して送付すべきコマンドに変換し、これをＬＯＮコマンド発行機能７３に渡し送出を指示する。そして、指示を受けたＯＮコマンド発行機能７３により実際のコマンドの送出が行われる。
【０１９８】
上記とは逆の方向にコマンドが流れる場合、すなわちＬＯＮコマンドが入力されこれをＣＣＣＰコマンドに変換して出力する場合も、手順は同じ様になる。
【０１９９】
なお、ＡＣＫ信号が返る場合は（なお、ＡＣＫ信号は公衆網（ＩＳＤＮあるいはインターネット等）上ではＣＣＣＰのＯＫに変換されてもよい；図１９中ではＯＫとして示してある) 、これも第１のＡＶ接続装置４に通知される。
【０２００】
なお、本実施形態で説明したメカニズムは、家庭内ネットワークに限らず、一般の企業ネットワーク、特にいわゆる「モバイル環境」を実現するためのネットワーク技術に適用することが可能であることは、言うまでもない。
【０２０１】
また、本実施形態では、ネットワークレイヤのプロトコルとしてＩＰ、データリンクレイヤのプロトコルとしてＩＥＥＥ１３９４とＬＯＮを用いて説明したが、ネットワークレイヤのプロトコルとして、ＤＡＶＩＣで標準化を進めているＤＳＭ−ＣＣや、ＩＰＸ等、データリンクレイヤのプロトコルとして、イーサネットやＡＴＭ等の技術を用いることも可能である。
【０２０２】
ところで、上記した実施形態では、ＡＶ接続装置にサービスロケーションサービスの機能およびコマンド変換の機能を設け、ＡＶ接続装置がサービスを提供したが、これらの機能は、本実施形態のＡＶ接続装置すなわちネットワークの相互接続を行っているノードが行う必要はなく、例えば図１におけるＰＣ６あるいはＰＣ１０に設け、それらがサービスを提供するようにしても良い。
【０２０３】
この場合、図２のＡＶ接続装置がサービスを実現していた場合と同様に、ネットワークＩ／Ｆ（図２の１３９４Ｉ／Ｆ２１に相当）、ＩＰ処理機能２４、１３９４／ＩＰサービスロケーション処理機能２６、サービスロケーション代理機能２７、１３９４ＡＶコマンド処理機能２８、１３９４／ＩＰコマンド変換機能２９を、ＰＣ６あるいはＰＣ１０あるいはその他のノードに実装し、さらにネットワークの通信資源を確保させる制御や、ネットワーク間で用いる識別子を整合させる制御等のネットワーク制御が必要な場合は、ＦＡＮＰ処理機能２５あるいはＲＳＶＰによる制御処理機能等を実装すれば良い。
【０２０４】
また、サービスロケーションサービスの機能とコマンド変換の機能とを、互いに異なるに実装することも可能である。
【０２０５】
なお、以上の説明では、公衆網２がインターネットではなくＩＳＤＮ等である場合に端末のＩＰアドレスにはプライベートＩＰアドレスを用い、あるいは公衆網２がインターネットである場合に端末のＩＰアドレスにはグローバルＩＰアドレスを用いるものとしたが、例えばＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ）等のアドレス変換を用いて、公衆網２がインターネットである場合に少なくともネットワークの相互接続を行うノード（図１ではＡＶ接続装置端末）にグローバルＩＰアドレスを用い、その他のノードにはプライベートＩＰアドレスを用いることができるようにしてもよい。この場合、例えば、外部のネットワークからは、ネットワークの相互接続を行うノードのグローバルＩＰアドレスと、宛先となるノードのプライベートＩＰアドレス（またはプライベートＩＰアドレスとポート番号の組）を指し示すためのポート番号との組を宛先として、ＩＰパケットを転送し、ネットワークの相互接続を行うノードにて、テーブルを参照するなどして、当該グローバルＩＰアドレスとポート番号の組を、宛先となるノードのプライベートＩＰアドレス（またはプライベートＩＰアドレスとポート番号の組）に変換するようにしてよい。
【０２０６】
（第２の実施形態）
本実施形態ではＩＥＥＥ１３９４インタフェースを持つＰＣが同一の１３９４バスに接続された１３９４装置を認識して利用する場合について説明する。
【０２０７】
一般に、１３９４バスには種々の装置が接続される可能性があり、ＰＣは予め接続されるすべての装置に関する情報やそれを制御するためのドライバソフトウェアを持っているわけではない。
【０２０８】
そこで、本実施形態では、１３９４バスに接続された装置の情報の収集を行う。その手順の概略は次の通りである。
【０２０９】
ｉ）まず、１３９４ｕｎｉｔの認識を行う。具体的には１３９４ノードのｕｎｉｑｕｅ  ＩＤとｕｎｉｔ番号を取得する。
【０２１０】
ii）次に、各ｕｎｉｔのカテゴリ判別を行う。そして、登録済みの論理デバイスに対応するカテゴリか否か判断する。
【０２１１】
iii ）次に、登録済みデバイスについて、占有状態の取得を行う（なお、この場合には、標準ドライバを利用する）。
【０２１２】
iv）そして、登録済みでない１３９４ｕｎｉｔの占有状態の判定を行う。
【０２１３】
また、本実施形態では、非同期的に発生してデバイスドライバの構成の変更を行う事象として次のものを扱う。
【０２１４】
ｉ）アプリケーションによる装置の利用要求
ii）ＩＥＥＥ１３９４インタフェースのバスリセット（１３９４装置の追加、削除）
iii ）装置の占有状態の変更
以下、本実施形態について詳しく説明する。
【０２１５】
まず、ハードウェア構成について説明する。
【０２１６】
図２１に本実施形態に係るＰＣの構成例を示す。８１はＰＣを、８２はプロセッサを、８３はプロセッサのローカルバスに接続されたメインメモリを、８４はシステムバスを、８５は２次記憶装置を、８６，８７はＩＥＥＥ１３９４インタフェースを、８８はハードディスクをそれぞれ表す。
【０２１７】
２次記憶装置８５とＩＥＥＥ１３９４インタフェース８６とＩＥＥＥ１３９４インタフェース８７は、それぞれシステムバス８４に接続されている。２次記憶装置８５は、例えばフラッシュＥＥＰＲＯＭによって構成される。
【０２１８】
ハードディスク８８は、ＰＣ８１の筐体内部にあるＩＥＥＥ１３９４インタフェース８７によって接続されている。
【０２１９】
ＩＥＥＥ１３９４インタフェース８６は、ＰＣ８１の筐体外に置かれているプリンタ９０、ＦＡＸ９１、マッサージ装置（リクライニングシート型マッサージ装置とする；以下、単に、マッサージ装置と呼ぶ）９２、トースタ９３にそれぞれ接続している。なお、説明上、ＦＡＸ９１はＦＡＸ機能およびスキャナ機能に対応するユニットとプリンタ機能に対応するユニットを持ち、マッサージ装置９２は背中、首等の上半身部分へのマッサージ機構に対応するユニットと足等の下半身部分へのマッサージ機構に対応するユニットを持つものとする。
【０２２０】
次に、オペレーティングシステム（以下、ＯＳ）のソフトウェア構造について説明する。
【０２２１】
図２２に本実施形態のＰＣ８１におけるソフトウェア構造の一例を示す。
【０２２２】
図２２のＯＳ内部において、１０１はＯＳの論理デバイス管理機能、１０２は２次記憶装置管理機能、１０３は１３９４インタフェース管理機能をそれぞれ表す。
【０２２３】
２次記憶装置１０２，ハードディスク１０３はＯＳが直接管理する。一方、プリンタ９０、ＦＡＸ９１、マッサージ装置９２、トースタ９３の各ハードウェアについては１３９４管理機能を通じてデバイスの認識や登録が行われる（この手順については後述する）。
【０２２４】
１１１，１１２は、２次記憶装置管理機能１０２の配下にあり、２次記憶装置８５とハードディスク８８をそれぞれ制御するデバイスドライバである。１１３，１１４はそれぞれ１３９４インタフェース管理機能１０３の配下にあり、ＩＥＥＥ１３９４インタフェース８６，８７をそれぞれ制御するデバイスドライバである。
【０２２５】
図２２のＯＳ  ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）とＪＡＶＡ  ＡＰＩの間において、１２１は１３９４管理オブジェクトを表す。
【０２２６】
図２２のＪＡＶＡ  ＳＰＩ（Ｓｙｓｔｅｍ  Ｐｒｏｇｒａｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）とＪＡＶＡ  ＡＰＩの間において、１２２は論理デバイス管理オブジェクトを表し、１３１，１３２，１３３，１３４はそれぞれモデム、プリンタ、スキャナ，不明に対応する論理デバイスクラスオブジェクトを表し、１３１−１〜２，１３２−１，１３３−１，１３４−１〜３はそれぞれ１３１，１３２，１３３，１３４の論理デバイスクラスオブジェクトによって管理される論理デバイスオブジェクトを表す（不明のクラスの詳細については後述する）。
【０２２７】
図２２のＯＳ  ＡＰＩとＪＡＶＡ  ＳＰＩの間において、１５１はプリンタ９０のｕｎｉｔ１（図２２中１０４）に、１５２はＦＡＸ９１のｕｎｉｔ１（図２２中１０５）に、１５３はＦＡＸ９１のｕｎｉｔ２（図２２中１０６）に、１５４はマッサージ装置９２のｕｎｉｔ１（図２２中１０７）に、１５５はマッサージ装置９２のｕｎｉｔ２（図２２中１０８）に、１５６はトースタ９３のｕｎｉｔ１（図２２中１０９）にそれぞれ対応する物理デバイスオブジェクトを表す。また、１６１，１６２，１６３，１６４，１６５，１６６はそれぞれ１５１〜１５６の物理デバイスオブジェクトに対応するドライバオブジェクトを表す。
【０２２８】
図２２中において、矢印は各々のオブジェクトの参照関係を表す。参照関係を持つことにより、参照先のオブジェクトのメソッドを起動して状態変数を読み出すことができる。例えば、物理デバイスオブジェクト１５１〜１５６は、１３９４管理オブジェクト１２１に始まる参照関係を持つことによって、１３４９管理オブジェクトの配下にある物理デバイスオブジェクトとして登録されていることを表している。１５１はプリンタクラスの論理デバイスオブジェクト１３１−２に登録されており、ドライバオブジェクト１６１は物理デバイスオブジェクト１５１に登録されており、他のものも同様である。
【０２２９】
次に、ＯＳの初期化について説明する。
【０２３０】
ＰＣ８１は、電源投入後、２次記憶装置８５に格納されたプログラムを読み込みＯＳを起動する。ＯＳの一般仕様については特に問わないが、ＯＳ上ではコンパイルされたＪａｖａコードが実行できるものとする。なお、Ｊａｖａについては種々の文献があるが例えばＪａｖａ  Ｌａｎｇｕａｇｅ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｈｔｔｐ：／／ｊａｖａ．ｓｕｎ．ｃｏｍにて詳しく説明されている。
【０２３１】
本実施形態では、ＩＥＥＥ１３９４インタフェース８７に接続されるハードディスク８８はＯＳで直接管理する１３９４装置として予め決められている。ＩＥＥＥ１３９４機器はレジスタへの値の書き込みや読み出しにによって操作するものであり、ＰＣ８１はハードディスク８７の予め定められたレジスタにＰＣ８１自身のＩＥＥＥ１３９４インタフェースのｕｎｉｑｕｅ  ＩＤを書き込むことにより、ハードディスク８８をＩＥＥＥ１３９４インタフェース８７を持つＰＣ８１が排他的に使用することを示す。
【０２３２】
ＰＣ８１のＯＳはＪａｖａプログラムからＩＥＥＥ１３９４インタフェースのトランザクション要求の発行および応答ができるＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を持つ。ＰＣ８１の初期化によるＯＳの起動後、上記ＡＰＩを通じて各々の１３９４インタフェースに接続されているＩＥＥＥ１３９４機器を管理するＪａｖａコードが実行される。これを１３９４管理オブジェクトと呼ぶ。また、ＯＳは、オブジェクトクラスの名前から対応するコードの識別子を得てオブジェクトを生成する動的オブジェクトローディング機構を備えているものとする。
【０２３３】
以下では、Ｊａｖａコードの格納、伝送形態をｘｘコード、あるクラス全体に関わるオブジェクトをｘｘクラスオブジェクト、あるクラスの実体化されたオブジェクトをｘｘオブジェクトと呼ぶ。例えば、ある型の論理装置全てを管理するオブジェクトを論理デバイスクラスオブジェクト、各々の物理装置に対応する装置のＪａｖａ  ＡＰＩを提供するオブジェクトを論理デバイスオブジェクトと呼ぶ。また、オブジェクトのコードにはある識別子が付与されていて、それを他のオブジェクトと識別することができるものとする。識別名はオブジェクトコードに埋め込まれていても良いし、それを格納するファイル名あるいはそれが格納されているＩＳＯ１２１２形式のアドレスで表現されても良い。一方、オブジェクトには少なくとも当該ＰＣで一意に他のオブジェクトと識別できる識別子が付与されているものとする。例えばオブジェクトが格納される仮想記憶空間のアドレスである。ＩＥＥＥ１３９４バスで使用する際には識別子はＩＥＥＥ１３９４バス上で一意に識別されることが望ましい。
【０２３４】
次に、物理装置の認識について説明する。
【０２３５】
ＯＳによる１３９４インタフェースの初期化が完了すると、１３９４管理オブジェクト１２１と論理デバイス管理オブジェクト１２２が生成される。１３９４管理オブジェクト１２１と論理デバイス管理オブジェクト１２２は互いの参照を保持し、相互に情報を交換しながらデバイスの認識と登録を行う。
【０２３６】
１３９４管理オブジェクト１２１はＩＥＥＥ１３９４インタフェース８６，８７に接続されている装置の情報を収集して各１３９４ノードを認識する。ただし、１３９４管理オブジェクト１２１の初期化時に予めＯＳが排他的に利用するものと定義されたハードディスク８７は認識から除外される。１３９４管理オブジェクト１２１は前述の１３９４制御ＡＰＩを通じてＰＣ８１の各１３９４インタフェースの持つＴＯＰＯＬＯＧＹ＿ＭＡＰレジスタまたはＳＰＥＥＤ＿ＭＡＰレジスタにあるｎｏｄｅ  ＩＤ毎に各ノードにｃｏｎｆｉｇＲＯＭ領域の読み出し要求を発行して当該ノードのｕｎｉｑｅ  ＩＤとｕｎｉｔが複数存在すればそれぞれのｕｎｉｔ  ＩＤおよびｃａｐａｂｉｌｉｔｙを得る。これらレジスタの形式はＩＥＣ  １２１２（ＡＮＳＩ／ＩＥＥＥ  Ｓｔｄ  １２１２  Ｃｏｎｔｒｏｌ  ａｎｄ  Ｓｔａｔｕｓ  Ｒｅｇｉｓｔｅｒ（ＣＳＲ）  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｍｉｃｒｏｃｏｍｐｕｔｅｒ  Ｂｕｓｅｓ［ＩＳＯ／ＩＥＣ１３２１３］）で定められており、詳細についてはここでは省略する。
【０２３７】
最終的に１３９４管理オブジェクト１２１はｕｎｉｑｕｅ  ＩＤとｕｎｉｔ  ＩＤとｃａｐａｂｉｌｉｔｙの組のリストを得てこれらデバイスの登録を行う。１３９４管理オブジェクト１２１はプリンタ９０、ＦＡＸ９１，マッサージ装置９２、トースタ９３から上記レジスタの値を読み出してそれぞれのｕｎｉｔに対応する１３９４物理装置オブジェクト１５１〜１５６を生成する。ＦＡＸ９２、マッサージ装置９３は２つのｕｎｉｔを持っており、それぞれ対応する物理デバイスオブジェクト１５２，１５３，１５４，１５５を生成する。オブジェクトの生成が完了すると１３９４管理オブジェクト１２１は論理デバイス管理オブジェクト１２２に物理デバイス登録の完了を通知する。
【０２３８】
認識の対象から外される装置は、予めＯＳによって占有されている装置の他に、装置自身のレジスタが占有を表していて、そこに占有を示す値が書き込まれている場合には認識の対象とはしないこととしても良い。
【０２３９】
ここで、登録について説明する前に、デバイスを制御するプログラム（ここではオブジェクトと呼ぶ）の構造と動作について説明する。
【０２４０】
各々の装置の機能に対応し、アプリケーションに入出力ＡＰＩを提供するのが１３１−１，１３２−１，…の論理デバイスオブジェクトである。それぞれの論理デバイスオブジェクトは、ファイル、プリンタといった種別毎に設けられる論理デバイスクラスオブジェクトによって管理される。各々の論理デバイスオブジェクトはただ一つの論理デバイスクラスオブジェクトに帰属するが、一つの論理デバイスクラスオブジェクトは配下に複数の論理デバイスオブジェクトを持っても良い。例えば、プリンタの論理デバイスオブジェクト１３１−１は、ただ一つの論理デバイスクラスオブジェクト１３１に帰属するが、プリンタの論理デバイスクラスオブジェクト１３１の配下には、１３１−１，１３１−２の２つの論理デバイスオブジェクトがある。
【０２４１】
物理デバイスオブジェクトは、１３９４ユニットと１対１対応に存在する。１つの物理デバイスオブジェクトが複数の論理デバイスオブジェクトから参照されることもある。例えば、物理デバイスオブジェクト１５２は、プリンタ９１のｕｎｉｔ１に対応しているとともに、プリンタの論理デバイスオブジェクト１３１−１とＦＡＸの論理デバイスオブジェクト１３３−１の２つの論理デバイスオブジェクトから参照されている。
【０２４２】
本実施形態では、ＰＣ８１は、プリンタ、スキャナ、ＦＡＸ、不明の各デバイスクラスに対応する論理デバイスクラスオブジェクト１３１〜１３４を持っているものとする。各々の論理デバイスクラスオブジェクトは、その配下に論理デバイスオブジェクト１３１−１…ｎ，１３２−１…ｎ，１３３−１…ｎ，１３４−１…ｎを持っている。ＰＣ８１で実行されるＪａｖａアプリケーションはこれら論理デバイスオブジェクトを通じて物理装置の実装の差異に関らず同一のクラスに属する物理装置は同一の方法で利用することができる。これはそれぞれの論理デバイスクラスオブジェクト毎にＪａｖａ  ＳＰＩが共通化されているからである。
【０２４３】
例えば、プリンタ装置のアクセスを行う際のＩＥＥＥ１３９４レジスタのアドレスと手順は、ＡＮＳＩ  Ｘ３Ｔ１０  Ｓｅｒｉａｌ  Ｂｕｓ  Ｐｒｏｔｏｃｏｌ（ＳＢＰ）として定められている。ＩＥＥＥ１３９４インタフェースがどのような実装であっても上記ＳＢＰに則ったＩＥＥＥ１３９４形式のメッセージをデバイスドライバが生成すればプリンタの制御を行うことができる。さらに、デバイスドライバがハードウェアやＯＳに依存しないＪａｖａで記述されていれば、ＩＥＥＥ１３９４インタフェースのドライバへのシステムプログラムインタフェースが同一である限り、どのようなＯＳにおいても同一のプリンタデバイスドライバが使用可能である。
【０２４４】
アプリケーションは、論理デバイス管理オブジェクト１２２にデバイスクラス一覧を要求することによって、論理デバイスクラスオブジェクト１３１〜１３４の一覧を得ることができる。論理デバイスクラスオブジェクトからは、それぞれのプリンタ、スキャナといった同じタイプに属する論理デバイスオブジェクトの一覧を得ることができる。論理デバイス管理オブジェクト１２２は、論理デバイスクラスオブジェクトの登録／削除などの管理も行う。
【０２４５】
次に、論理デバイス管理オブジェクト１２２による論理デバイスクラスオブジェクトの初期化について説明する。図２３に論理デバイス管理オブジェクト初期化手順の一例を示す。
【０２４６】
論理デバイス管理オブジェクト１２２は、予め定められたデバイスクラス、プリンタ、スキャナ、ＦＡＸに対応する論理デバイスクラスオブジェクト１３１，１３２，１３３を生成し、図２中にて矢印で示されるこれらオブジェクト間の参照を作る（ステップＳ１１〜Ｓ１４）。
【０２４７】
これら１３１，１３２，１３３の各論理デバイスクラスオブジェクトは、生成に続いて初期化を行う（その間、論理デバイス管理オブジェクト１２２は初期化完了を待つ；ステップＳ１５）。初期化が完了すると論理デバイス管理オブジェクト１２２へ初期化が完了したことを通知する。
【０２４８】
完了通知を受けた論理デバイス管理オブジェクト１２２は、最後に１３１〜１３３の各論理デバイスクラスオブジェクトによって認識されなかった物理デバイスを管理する不明の論理デバイスクラスオブジェクト１３４を生成し、初期化する（ステップＳ１６，Ｓ１７）。論理デバイス管理オブジェクト１２２は、不明のクラスの初期化の完了通知を受けとると、初期化完了状態となる（ステップＳ１８）。
【０２４９】
次に、論理デバイスクラスオブジェクトの初期化について論理デバイスクラスオブジェクト１３１を例に取りつつ説明する。図２４に論理デバイスクラスオブジェクト初期化手順の一例を示す。
【０２５０】
論理デバイス管理オブジェクト１２２は、論理デバイスクラスオブジェクトの生成時に１３９４管理オブジェクト１２１への参照を渡す。論理デバイスクラスオブジェクト１３１は、１３９４管理オブジェクト１２１に物理デバイスオブジェクトへの参照を要求する（ステップＳ２１）。
【０２５１】
１３９４管理オブジェクト１２１は、物理デバイスオブジェクトの参照が要求されると、自オブジェクトが保持している参照に従って物理デバイスオブジェクト１５１から順番に参照を返却する。
【０２５２】
論理デバイスクラスオブジェクト１３１は、物理デバイスオブジェクト１５１への参照を入手すると、オブジェクト１５１の属性値取得メソッドを起動してｕｎｉｑｕｅ  ＩＤ、ｕｎｉｔ  ＩＤ、ｃａｐａｂｉｌｉｔｙを取得する（ステップＳ２２）。論理デバイスクラスオブジェクト１３１は、これらの値が自デバイスクラスに合致するかを判定するテーブルを予め持っており、取得した物理デバイスオブジェクト１５１が自クラスに合致するかを判定することができる。
【０２５３】
物理デバイス１５１のｕｎｉｑｕｅ  ＩＤ、ｕｎｉｔ  ＩＤはプリンタを示す値であったので、論理デバイスクラスオブジェクト１３１は、物理デバイスオブジェクト１５１に対応する論理デバイスオブジェクト１３１−１を生成し、初期化を開始させる。このときも論理デバイスクラスオブジェクトと論理デバイスオブジェクトは相互に参照関係を持ち、論理デバイスオブジェクト１３１−１は論理デバイスクラスオブジェクト１３１の配下として登録される（ステップＳ２３〜Ｓ２４）。
【０２５４】
この判定はｕｎｉｑｅ  ＩＤ、ｕｎｉｔ  ＩＤに限らず他の属性値の組合せによって行っても良い。また、論理デバイスクラスオブジェクトがテーブルを持つことなくｕｎｉｑｕｅ  ＩＤやｕｎｉｔ  ＩＤをキーとしてＰＣ８１の外にある検索サーバに問い合わせても良い。
【０２５５】
以下、引き続いて論理デバイスクラスオブジェクト１３１は、１３９４管理オブジェクト１２１に物理デバイスへの参照を要求し、１５２，１５３，…について同様の作業を最後の物理デバイス１５６まで行う。ＦＡＸ１５２のｕｎｉｔ２はプリンタのｃａｐａｂｉｌｉｔｙを持っているのでこれも論理デバイスオブジェクト１３１−２としてプリンタクラスオブジェクトに登録される（ステップＳ２１〜Ｓ２４）。
【０２５６】
全ての物理デバイスオブジェクトについて作業が終了すると、登録した論理デバイスオブジェクト１３１−１，１３２−２からの初期化完了通知を待つ（ステップＳ２５）。論理デバイスオブジェクト１３１−１，１３２−２からの初期化完了通知を受けとると、プリンタクラスの論理デバイスクラスオブジェクト１３１は、論理デバイス管理オブジェクト１２２に初期化の完了を通知する（ステップＳ２６）。
【０２５７】
次に、論理デバイスオブジェクトの初期化について論理デバイスオブジェクト１３１−１を例に取りつつ説明する。図２５に論理デバイスオブジェクト初期化手順の一例を示す。
【０２５８】
論理デバイスオブジェクト１３１−１は、自身の属性値を初期化した後、物理デバイス１５１に初期化要求を発行して１５１からの完了通知を待つ（ステップＳ３１，Ｓ３２）。完了通知を受信するとプリンタクラスの論理デバイスクラスオブジェクト１３１に完了通知を発行する（ステップＳ３３）。初期化要求を受信した物理デバイスオブジェクト１５１は、物理装置９０に対応するデバイス制御コードを決定し、それを読み込んでデバイス制御オブジェクト１６１を生成し、物理デバイスオブジェクトに登録する。
【０２５９】
次に、物理デバイスオブジェクトの初期化について物理デバイスオブジェクト１５１を例に取りつつ説明する。図２６に物理デバイスオブジェクト初期化手順の一例を示す。
【０２６０】
なお、物理デバイスオブジェクトの生成は１３９４管理オブジェクト１２１によって論理デバイスオブジェクトの生成以前に行われており、ここでの初期化は生成とは異り、また１３９４管理オブジェクト１２１が物理デバイスオブジェクト１５１を生成した時点ではプリンタ制御固有のコードは読み込まれていない。
【０２６１】
ロードするデバイス制御コードは例えば次のようにして決定される。１３９４管理オブジェクト１２１は属性値ｕｎｉｑｕｅ  ＩＤ、ｕｎｉｔ  ＩＤ、ｃａｐａｂｉｌｉｔｙと論理デバイスクラスオブジェクトからデバイス制御コードのクラス名を求めるテーブルを持っており、物理デバイスオブジェクト１５１は１３９４管理オブジェクト１２１に自身の持つ属性値ｕｎｉｑｕｅ  ＩＤ、ｕｎｉｔＩＤ、ｃａｐａｂｉｌｉｔｙを含む問い合わせ要求を発行し、その返り値としてクラス名を得る（ステップＳ４１）。デバイス制御コードの識別子は前述のように当該ＰＣのファイルを示すパス名でよい。もちろん、ＰＣ８１の外部に属性値に基づく問い合わせを発行して取得しても構わない。
【０２６２】
上記の方法で得たクラス名から動的オブジェクトローディング機能により、デバイス制御コードがロードされてデバイス制御オブジェクト１６１が生成され、物理デバイスオブジェクト１５１に登録される。物理デバイスオブジェクト１５１は、デバイス制御オブジェクト１６１の属性値の初期化を行った後、ハードウェアの初期化要求を発行する（ステップＳ４２〜Ｓ４４）。
【０２６３】
クラス名に対応するコードがローカルに存在すればそれを読み込む。クラス名がリモートのネットワーク上の資源を示していれば、ネットワーク上から取得する。クラス名が明示的にネットワーク上の資源を指していない場合でも、コードがローカルに存在しない場合はネットワーク上の検索サーバなどを利用してネットワーク上の位置を取得し、コードを読み込む。
【０２６４】
次に、デバイス制御オブジェクト１６１はハードウェアの初期化のためのレジスタ書き込みを行うパケットを準備し、１３９４トランザクションのシステムコールを呼び、物理装置９０を初期化する。初期化が完了すると物理デバイスオブジェクト１５１は論理デバイスオブジェクト１３１−１に完了通知を発行する（ステップＳ４５）。
【０２６５】
ところで、物理デバイスオブジェクトには物理デバイスオブジェクト１５２のように２つ以上の論理デバイスオブジェクト（１３１−１，１３３−１）に登録されているもの。このような物理デバイスオブジェクトは２回以上の初期化要求を受けることになる。２度目の初期化では、属性値から決定したデバイス制御オブジェクトが１度目に獲得したデバイス制御オブジェクトと同一であるかどうかを比較し（ステップＳ４４）、同一であれば同一のものを使用し、違っていれば新たにデバイス制御オブジェクトを読み込み、生成する。物理デバイスオブジェクト１５２ではプリンタクラス、ＦＡＸクラスに同一のデバイス制御オブジェクト１６２を使用するが、これはデバイス制御オブジェクトがプリンタとＦＡＸの両方のＪａｖａ  ＳＰＩをサポートするものだからである。もし最初にロードしたデバイス制御オブジェクトがプリンタクラスのＪａｖａ  ＳＰＩのみをサポートしてＦＡＸクラスをサポートしていなければ、新たに両方をサポートするデバイス制御オブジェクトを検索して入手するか、ＦＡＸクラスのサポートをやめる。もし両立ができなければ最初にロードされたクラスが優先されることとする。
【０２６６】
さて、一般に論理デバイス種別が増えたときに、利用する可能性のある全ての論理デバイスクラスオブジェクトを予め用意しておくことはメモリなどの資源の利用の点で非効率的である。また、一つの物理装置が多数の論理デバイスクラスオブジェクトから利用される可能性があり、かつ下位デバイス制御プログラム（本実施形態のデバイス制御オブジェクト）が上位論理デバイスクラスオブジェクトに依存して変更される場合には物理デバイスに合わせて上位論理デバイスを決定する手順は繁雑になる。特に、ＩＥＥＥ  １３９４バスのように家庭に導入され、家庭内のネットワークとしても利用されるバスでは接続される機器を予め限定することは難しい。
【０２６７】
むしろ利用者の利用形態によって規定される上位論理デバイスを利用者が決定して、接続された装置をその方法によって利用することが上記ネットワークにおいては適切である。このため本実施形態では、不明のデバイスクラスを設けることによって使用法が未知の装置をとりあえず認識し、詳しくは後述するように装置に合わせた上位論理デバイスを新たに付け加える方法を取っている。
【０２６８】
１３９４管理オブジェクト１２１が複数の論理デバイスと属性値に対応するクラス名の表を持っており、物理デバイスオブジェクトが２度目の初期化を行う際には２つの論理デバイスクラスオブジェクトの名前と属性値を指定して１３９４管理オブジェクト１２１に問い合わせを行っても良い。
【０２６９】
次に、不明の論理デバイスクラスオブジェクト１３４の初期化について説明する。
【０２７０】
不明の論理デバイスクラスオブジェクト１３４は、１３１〜１３３までの論理デバイスクラスオブジェクト１３４と同様、生成時に１３９４管理オブジェクト１２１への参照を受け取る。そして、論理デバイスクラスオブジェクト１３１〜１３３の初期化と同様に１５１，…，１５６の各物理デバイスオブジェクトへの参照を得る。
【０２７１】
不明の論理デバイスクラスオブジェクト１３４は、最初に物理デバイスオブジェクト１５１への参照を得る。不明の論理デバイスクラスオブジェクト１３４は物理デバイスオブジェクト１５１へ論理デバイスオブジェクトへの参照を持っているかどうかの問い合わせを行い、持っていれば物理デバイスオブジェクト１５１の認識を中止して、次の物理デバイスオブジェクト１５２への参照を入手する。物理デバイスオブジェクト１５１，１５２，１５３はいずれも他の論理デバイスオブジェクトに登録されているので不明のデバイスとしての登録は行わない。
【０２７２】
一方、物理デバイスオブジェクト１５４は、論理デバイスオブジェクトからの参照を持っていない。ここで不明の論理デバイスクラスオブジェクト１３４は、物理デバイスオブジェクト１５４に対応する論理デバイスオブジェクト１３４−１を生成して自身に登録する。論理デバイスオブジェクト１３４−１は、物理デバイスオブジェクト１５４を自身に登録する。不明の論理デバイスオブジェクト１３４−１は、物理デバイスオブジェクト１５４へ初期化を要求しない。したがって、この時点では物理デバイスオブジェクト１５４にはデバイス制御オブジェクトは登録されない。
【０２７３】
以下、物理デバイスオブジェクト１５５，１５６についても同様の初期化を行い、不明の論理デバイスオブジェクト１３４−２，１３４−３が生成されて、完了の通知を発行し、不明のデバイスクラスの初期化が完了する。
【０２７４】
論理デバイス管理オブジェクト１２２は、予め定められた論理デバイスクラスオブジェクトの生成初期化と、それに続く不明の論理デバイスクラスオブジェクトの生成初期化が完了すると終了する。初期化が終ると論理デバイス管理オブジェクト１２２はアプリケーションからのデバイスクラス一覧要求に答えることができる。初期化が完了する前はアプリケーションからの問い合わせに対して、利用不能の答を返す。
【０２７５】
次に、アプリケーションからのデバイスの利用について説明する。ここでは、アプリケーションからプリンタ９０を利用する場合を例にとって説明する。
【０２７６】
なお、物理デバイスと論理デバイスとの間のインタフェースをＪａｖａ  ＳＰＩ、論理デバイスとアプリケーションとの間をＪａｖａ  ＡＰＩと呼ぶ。これらはＯＳとＪａｖａとの間のＡＰＩとは異るものである。
【０２７７】
アプリケーションプログラムは、ＯＳへの問い合わせなどの所定の方法によりプリンタ９０に対応する論理デバイスオブジェクト１３１−１への参照を知っているものとする。
【０２７８】
例えば、アプリケーションは、論理デバイス管理オブジェクト１２２への参照を予め知っていて、論理デバイス管理オブジェクト１２２を通じてプリンタクラスへの参照を獲得し、プリンタクラスからプリンタ１３１−１への参照を入手する。または、装置構成に関するネーミングサービスが提供されていても良い。
【０２７９】
アプリケーションプログラムは、ｐｏｓｔｓｃｒｉｐｔファイルへの参照を引数として、論理デバイスオブジェクト１３１−１に印刷要求を発行する。
【０２８０】
論理デバイスオブジェクト１３１−１は、ファイルのヘッダ情報からそれがｐｏｓｔｓｃｒｉｐｔファイルであることを知り、ｐｏｓｔｓｃｒｉｐｔファイルをビットマップイメージに展開する。そして、論理デバイスオブジェクト１３１−１は、ビットマップイメージとビットマップ以外の紙サイズ指定などの情報を含むオブジェクトへの参照を引数として、物理デバイスオブジェクト１５１に印刷要求を発行する。なお、論理デバイスオブジェクト１３１−１にて待ち行列処理を行うことが望ましい。
【０２８１】
物理デバイスオブジェクト１５１は、デバイス制御オブジェクト１６１を通じて印刷イメージに対応するビットマップ情報をプリンタ９０に転送する。すなわち、プリンタ９０の予め定められたＣＳＲレジスタＡにｌｏｃｋトランザクションによってＰＣ８１が利用するフラグを書き込む。ｌｏｃｋに成功してプリンタの使用権を獲得すると、次はデータを転送するためのＩＥＥＥ１３９４バス上のＩｓｏｃｈｒｏｕｎｓチャネルの設定と、紙サイズ、トレイ情報などのプリンタの設定を行うトランザクションを発行する。チャネルを獲得したらビットマップ情報を転送し、転送が完了すると転送完了のトランザクションを発行してプリンタへの印刷指示を完了する。プリンタでの印刷状況はあるＣＳＲレジスタに表示されるので、物理デバイスオブジェクトがそれをポーリングすることによって印刷の完了を知る。
【０２８２】
次に、不明のタイプとして登録されている装置の利用についてマッサージ装置１２を例にとって説明する。
【０２８３】
図２７は論理デバイスクラスオブジェクトを追加したときのソフトウェア構造、図２８はアプリケーションによる新規デバイスクラス追加要求手順の一例、図２９は論理デバイス管理オブジェクト１２２による新規デバイスクラス追加手順の一例をそれぞれ示す。
【０２８４】
アプリケーションは、論理デバイス管理オブジェクト１２２に論理デバイスクラスの一覧取得要求を発行する（ステップＳ５１）。不明の論理デバイスクラスオブジェクト１３４への参照を取得すると、不明のデバイスクラス１３４に論理デバイスの一覧取得を要求する（ステップＳ５２，Ｓ５３）。
【０２８５】
アプリケーションは、一覧からマッサージ装置９２に対応する論理デバイスオブジェクト１３４−１への参照を選択して利用可能な論理デバイス情報を要求する（ステップＳ５４）。
【０２８６】
論理デバイスオブジェクト１３４−１は、物理デバイスオブジェクト１５４からその属性値を取得し、論理デバイス管理オブジェクト１２２に物理デバイスオブジェクト１５４が利用可能な論理デバイスクラスの検索要求を発行する。既述のように論理デバイス管理オブジェクト１２２は属性値から論理デバイスクラス名とを対応させるテーブルを持っている。このテーブルから論理デバイスクラス名またはそのリストが論理デバイス１３４−１に返却され、論理デバイス１３４−１は要求に対して論理デバイスクラス名を獲得し、論理デバイス情報としてアプリケーションに通知する。もちろん、ここでもデバイスクラス名の検索をネットワーク上のサーバに問い合わせることによって行っても構わない。ドライバオブジェクトの格納場所には少なくともマッサージ装置のデフォルトのドライバのオブジェクトコードと利用法の自然言語による説明が格納されていることが望ましい。
【０２８７】
アプリケーションは、使用する論理デバイスクラス名「マッサージ装置」を選択して論理デバイスクラス登録要求を論理デバイス管理オブジェクト１２２に発行する（ステップＳ５５，Ｓ５６，Ｓ５７）。
【０２８８】
論理デバイス管理オブジェクト１２２は，指定されたクラス名に対応する新しい論理デバイスクラスオブジェクト１３５を生成し（ステップＳ６１）、不明の論理デバイスクラスオブジェクト１３４および不明のクラスとリンクされているＦＡＸの論理デバイスクラスオブジェクト１３３との間に挿入する（ステップＳ６２）。そして、今まで不明のデバイスクラスに登録されていた論理デバイスオブジェクト１３４−１，１３４−２を削除して（ステップＳ６３）、論理デバイスクラスオブジェクト１３５に初期化要求を発行する（ステップＳ６４）。この状態を図２７に示す。以後のステップＳ６５とステップＳ６６の手順と新規論理デバイスクラスオブジェクト１２５の初期化手順は既に説明したものと同様である。なお、図２７中、１３５−１は新たに生成された論理デバイスオブジェクトである。
【０２８９】
ここでは，不明のデバイスに対応する論理デバイスを検索する例について説明したが、既存の物理デバイスの組合せから、対応する新しい論理デバイスを検索しても良い。例えば、プリンタとスキャナとモデムの機能を持つ各物理デバイスの組合せによって利用可能な新しい論理デバイスＦＡＸを検索するような場合である。
【０２９０】
上記の機能を備えることにより、普段使用しないデバイスを制御するための不要なプログラムはシステムの初期化時には読み込まず、必要になった時点で読み込むことにより、ＰＣのメモリなどの資源を節約してコストを低下させることができる。
【０２９１】
次に、１３９４デバイスの構成変更イベントについて説明する。
【０２９２】
ＰＣが利用できる１３９４装置の接続状況は変化し得る。しかも、ＩＥＥＥ１３９４バスでは動作中にコネクタの挿抜によって構成を変更することができる。この変更結果は、デバイスオブジェクトの追加や削除として論理デバイスに反映されなければならない。また、ある装置によるデバイスの占有が終了すれば、そのデバイスは他の装置で利用可能になる。以下では、このような構成の変化を認識する手順について説明する。
【０２９３】
バスリセットが発生すると、ＯＳの１３９４インタフェースから１３９４管理オブジェクト１２１にバスリセットが通知される。１３９４管理オブジェクト１２１は、再度、ＴＯＰＯＬＯＧＹ＿ＭＡＰおよびＳＰＥＥＤ＿ＭＡＰから１３９４物理装置の一覧を取得し、それらのｕｎｉｑｕｅ  ＩＤを取得して既知のデバイスとの対応をとる。
【０２９４】
まず、バスリセット後に、１３９４管理オブジェクト１２１は、全ての物理デバイスオブジェクトのｅｘｉｓｔ属性値を「不明」とする。
【０２９５】
装置から取得したｕｎｉｑｕｅ  ＩＤが既存の物理デバイスオブジェクトの保持するｕｎｉｑｕｅ  ＩＤに一致する場合、その装置は既に登録済みでありｅｘｉｓｔを「存在」とする。
【０２９６】
装置から取得したｕｎｉｑｕｅ  ＩＤが既存の物理デバイスオブジェクトの保持するｕｎｉｑｕｅ  ＩＤと一致しない場合、その装置は新しく追加された装置であり、物理デバイスオブジェクトを生成初期化し、ｅｘｉｓｔを「存在」とする。
【０２９７】
この操作を全てのＮＯＤＥ  ＩＤについて行った後、ｅｘｉｓｔが不明になっている物理デバイスオブジェクトは対応する装置が取り去られたものとして、それを削除する。物理デバイスオブジェクトを削除すると、対応する論理デバイスオブジェクトにそれが通知され、論理デバイスオブジェクトは終了処理を行い、対応するデバイスクラスに通知した後、自身を消去する。
【０２９８】
追加、削除による参照の修正作業が完了すると、１３９４管理オブジェクト１２１は、論理デバイス管理オブジェクト１２２に構成の変更を通知する。もし構成に全く変化がなければ、通知は行わない。
【０２９９】
通知を受信した論理デバイス管理オブジェクト１２２は、各デバイスクラスに構成変更要求を発行する。
【０３００】
構成変更要求を受信したプリンタクラス１３１は、初期化と同様に、論理デバイスオブジェクト１２２に物理デバイスの参照を要求する。初期化と異るのは、初期化では全ての物理デバイスオブジェクトが対象だったのに対し、構成変更では新しく追加された物理デバイスオブジェクトだけが対象になることである。各論理デバイスクラスは、新しく追加された物理デバイスの属性を読み出し、自クラスに一致するかを判定して一致すれば、対応する論理デバイスオブジェクトを生成、登録する。
【０３０１】
全てのクラスの構成変更が完了すると、不明のクラスの初期化が行われ、追加されたデバイスでどの論理デバイスとして登録されなかった物理デバイスオブジェクトは不明のクラスに登録される。
【０３０２】
次に、占有状態の変更について説明する。
【０３０３】
初期化においてレジスタの読みとりによって他ノードによる占有状態にあると判断されて認識から除外された装置に対して、１３９４管理オブジェクト１２１は周期的なポーリングを行ってデバイス占有状態の変更を検出する。非占有状態になったデバイスは、バスリセットで記述したデバイス構成の変化と同様の手順で登録する。もし当該ＰＣが前記装置を排他的に占有するのであれば、それを装置の占有状態を示すレジスタにそれを示す値を書き込む。
【０３０４】
次に、ローカルの論理デバイスオブジェクトが古い場合について説明する。
【０３０５】
このような場合、論理デバイスクラスオブジェクトはバージョン番号の属性を持っている。アプリケーションは、論理デバイス管理オブジェクト１２２に論理デバイスクラスオブジェクトの更新要求を発行することができる。論理デバイス管理オブジェクト１２２は、更新が要求された論理デバイスクラスオブジェクトのバージョン番号を取得する一方、予め指定された論理デバイスクラスオブジェクトのアーカイブサーバに最新のバージョン番号を要求する。もしローカルの論理デバイスクラスオブジェクトのバージョン番号が最新のものに一致すれば、もしローカルの論理デバイスクラスオブジェクトのバージョン番号が若ければ、アーカイブサーバから最新のデバイスクラスを読み込み、オブジェクトを生成する。この時点ではこの論理デバイスクラスオブジェクトは動作しない。
【０３０６】
オブジェクトの生成に成功すると、既存の論理デバイスに終了通知を発行し、動作を終了させる。プリンタならば、新たな印刷ジョブの受付を中止し、実行中の印刷ジョブの終了を待つ。実行中のジョブと終了処理が完了すると、論理デバイス管理オブジェクト１２２に完了を通知する。論理デバイス管理オブジェクト１２２は、古い論理デバイスの持つ参照関係を変更し、新しい論理デバイスオブジェクトが参照関係を引き継いだ後、論理デバイスの開始通知を論理デバイスクラスオブジェクトに送る。通知を受信した論理デバイスクラスオブジェクトは動作を開始する。
【０３０７】
（第３の実施形態）
本実施形態では、ネットワークに接続されたＰＣ（第２の実施形態の機能を持つもの）がＩＥＥＥ１３９４以外のネットワークを経由して接続された遠隔のＩＥＥＥ１３９４装置を制御する場合について説明する。
【０３０８】
図３０に、本実施形態に係るシステムの構成例を示す。４０１、４１１、４３４はそれぞれ第１の家庭４５１内にあるＰＣ、ネットワーク接続装置、トースタを表す。４０２、４１２、４３１、４３２、４３３はそれぞれ第２の家庭４５２内にあるＰＣ、ネットワーク接続装置、プリンタ、ＦＡＸ、マッサージ装置を表す。なお、図３０中のネットワーク接続装置以外の各構成要素は図１中の対応するものと同様のものである。
【０３０９】
家庭４５１内のＬＡＮと家庭４５２内のＬＡＮとの間はＩＳＤＮ通信回線４１３で結ばれているものとする。通信回線４１３はネットワーク接続装置４１１，４１２で終端されている。
【０３１０】
家庭４５１内のＬＡＮにおいて、接続装置４１１，ＰＣ４０１，トースタ４３４の間は１３９４バス４２１によって接続されている。
【０３１１】
家庭４５２内のＬＡＮにおいて、接続装置４１２，ＰＣ４０２，プリンタ４３１、スキャナ４３２、マッサージ装置４３３の間は、１３９４バス４２２によって接続されている。
【０３１２】
ネットワークはインターネットプロトコルを使うインターネットであり、ＰＣ４０１，４０２と接続装置４１１，４１２のみが予めＩＰアドレスを持っているものとする。ＩＰアドレスは固定的に割り当てられたものでも、ＤＨＣＰ，ＰＰＰなどのプロトコルによって割り当てられたもののどちらでも良い。
【０３１３】
ここで、家庭４５１にあるＰＣ４０１が家庭４５２の機器との接続を試みる。ＰＣ４０１はインターネットプロトコルによってネットワーク接続装置４１１に家庭４５２を示す文字列、例えばその氏名である「高畠由彰」を含む接続要求を送る。そして、ネットワーク接続装置４１１は例えば「高畠由彰」に対応する家庭４５２の電話番号を検索するデータベースを持っており、家庭４５２の接続装置４１２への接続を行う。
【０３１４】
接続装置４１２は、接続の前には接続元の認証を行う。認証ステップで許可されなければ接続は行わないものとする。認証は例えば発信電話番号表示を用い、予め第２の家庭４５２にて登録した電話番号以外の接続を認めないとすることができる。接続が完了すれば、家庭４５１，４５２の間でインターネットプロトコルによる通信を行うことができる。
【０３１５】
ただし、セキュリティ保護の観点から接続が完了しても接続装置がその家庭の方針によってパケットの通過の可／不可を判断するいわゆるファイアウォールとして動作することが望ましい。ここでは家庭４５１と家庭４５２の間は予め全てのパケットが通過し、全ての操作が行えるよう、設定されているものとする。
【０３１６】
なお、この接続は電話による接続ではなくＩＰ接続であっても構わない。
【０３１７】
さて、家庭４５１にあるＰＣ４０１はサービス管理サーバのアドレスを接続装置４１１のデータベースから取得する。アドレスは予め接続装置４１１に登録されているものとする。次に、ＰＣ４０１はサービス管理サーバに利用可能なサービスの問い合わせを行う。ここではネットワーク接続装置４１２がサービス管理サーバを兼ねているものとする。
【０３１８】
サービス管理サーバは、問い合わせに応答して当該ネットワーク中のサービスおよびそのサーバの情報を返す。ここでは次のサービスが登録されている。
【０３１９】
ｐｒｉｎｔｅｒ：ｐｃ２
Ｊａｖａ  ＯＲＢ：ｐｃ２
左の列はサービスの種別、ここではサービスに割り当てられた多重化識別子（例えばポート番号）を表し、右の列はサービスの所在、ここではＰＣ４０２のＩＰアドレスを表す。このようなサービス情報提供手段はインターネットにおいてはサービスロケーションプロトコルとして知られている（例えば文献「インターネットドラフトｄｒａｆｔ−ｉｅｔｆ−ｓｖｒｌｏｃ−ｐｒｏｔｏｃｏｌ−１６．ｔｘｔ」）。
【０３２０】
これらはサービスを提供するホスト、ここではＰＣ４０２が起動時に予め定められたネットワーク接続装置４１２に登録する。
【０３２１】
ｐｒｉｎｔｅｒはインターネット標準で定められた印刷サービスを表し、５１５のＵＤＰ／ＴＣＰ番号が割り当てられている。ここで使用するプロトコルは予めインターネット標準によって規定されている。
【０３２２】
Ｊａｖａ  ＯＲＢは、Ｊａｖａオブジェクトを外部から利用できるサービスを表している。このようなサービスは現在まだ標準としては規定されていないが、ここではＪａｖａ  ＯＲＢを表すポート番号について予め合意があるものとする。
【０３２３】
次に、リモートの１３９４装置を利用する２種類の方法、
方法１）インターネットで標準化されたネットワークサービスを介して利用する方法
方法２）１３９４プロキシオブジェクトを通じて利用する方法
について説明する。
【０３２４】
方法１では、ＰＣ４０２にＩＥＥＥ１３９４インタフェースによって接続されたプリンタ４３１をインターネットプロトコルとして標準化されたｐｒｉｎｔｅｒサービスによって利用する。ＰＣ４０１は、ｐｒｉｎｔｅｒプロトコルのクライアントを持ち、プリンタ４３１を表す論理名称を指定してインターネット形式で標準化された形式の印刷要求をＰＣ４０２に送り、プリンタを利用する。この方法では、ネットワークを伝送するメッセージには装置依存の要素は含まれない。ＰＣ４０１のアプリケーションは、プリンタサービスとプリンタ４３１に対応する装置の名前を指定して要求するだけで、装置の特性は意識しない。
【０３２５】
方法２は、概略的には、ネットワークを伝送するメッセージに、ＩＥＥＥ１３９４形式のパケットがＩＰパケットにカプセル化された形式を使うものである。ＰＣ４０１はあたかもプリンタ４３１がローカルの１３９４バスに接続されているかのように利用することができる。
【０３２６】
以下、上記の方法２についてさらに詳しく説明する。
【０３２７】
図３１にクライアント側の接続前におけるネットワーク経由サービスのソフトウェア構造を示し、図３２にクライアント側の接続後におけるネットワーク経由サービスのソフトウェア構造を示し、図３３にプロキシ側の接続前におけるネットワーク経由サービスのソフトウェア構造を示し、図３４にプロキシ側の接続後におけるネットワーク経由サービスのソフトウェア構造を示す。なお、図３１〜図３４中のＩＰ機能以外の各構成要素は、図２中の対応するものと同様の機能を有するものである。ＩＰ機能５０４は、ＴＣＰ／ＵＤＰ／ＩＰなど、一連のインターネットプロトコル（ＴＣＰ／ＩＰプロトコルシート）の諸機能である。
【０３２８】
図３１は１３９４スタブオブジェクト生成前のクライアントＰＣ４０１のソフトウェア構成であり、５０１は論理デバイス管理機能、５０２は２次記憶管理機能、５１１，５１２は５０２の配下にあるそれぞれのハードディスクの管理機能、５０３は１３９４インタフェース管理機能、５１３，５１４はそれぞれの１３９４インタフェース管理機能、５０４はＩＰ機能、４３４はトースタ、５０９はトースタ機能を示すｕｎｉｔ１，５２１は１３９４管理オブジェクト、５２２は論理デバイス管理オブジェクト、５３１，５３２，５３３，５３４はプリンタ、スキャナ、マッサージ装置、不明の各論理デバイスクラスオブジェクトに対応する。５３４−１は不明のクラスの論理デバイスオブジェクトである。５５１はトースタ４３４に対応する物理デバイスオブジェクトを表す。５６１は物理デバイスオブジェクト５５１に対応するドライバオブジェクト（制御プログラム）を表す。
【０３２９】
図３２は１３９４スタブオブジェクト生成後のクライアントＰＣ４０１のソフトウェア構成であり、図３１の構成に１３９４スタブオブジェクト５７１、論理デバイスオブジェクト５３３−１，５３３−２、物理デバイスオブジェクト５５１、ドライバオブジェクト５６２，５６３が付加されている。
【０３３０】
図３３は１３９４プロキシオブジェクト生成前のプロキシ側ＰＣ４０２のソフトウェア構成であり、６０１は論理デバイス管理機能、６０２は２次記憶管理機能、６１１，６１２は６０２の配下にあるそれぞれのハードディスクの管理機能、６０３は１３９４インタフェース管理機能、６１３，６１４はそれぞれの１３９４インタフェース管理機能、４３１はプリンタ、４３２はＦＡＸ、４３３はマッサージ装置をそれぞれ表す。６２１は１３９４管理オブジェクト、６２２は論理デバイス管理オブジェクト、６３１，６３２，６３３，６３４はプリンタ、スキャナ、ＦＡＸ、不明の各デバイスクラスに対応する論理デバイスクラスオブジェクト、６５１，６５２，６５３，６５４，６５５はそれぞれプリンタのｕｎｉｔ１（図中６０４）、ＦＡＸのｕｎｉｔ１（図中６０５），ｕｎｉｔ２（図中６０６）、マッサージ装置のｕｎｉｔ１（図中６０７），ｕｎｉｔ２（図中６０８）に対応する物理デバイスオブジェクト、６３１−１，６３１−２，６３２−１，６３３−１，６３４−１，６３４−２はそれぞれ論理デバイスクラスの配下にある論理デバイスである。６６１，６６２，６６３はそれぞれ物理デバイスオブジェクト６５１，６５２，６５３に対応するドライバオブジェクトを表す。
【０３３１】
図３４は１３９４プロキシオブジェクト生成後のプロキシ側ＰＣ４０２のソフトウェア構成であり、図３３の構成に１３９４プロキシオブジェクト６８１、論理デバイスクラスオブジェクト６３５、論理デバイスオブジェクト６３５−１，６３５−２が付加され、論理デバイスオブジェクト６３４−１，６３４−２が削除されている。
【０３３２】
ＰＣ４０１は、サービス情報に基づいてリモートのＰＣ４０２のＩＰアドレスを指定して１３９４スタブオブジェクト５７１を生成する。１３９４スタブオブジェクトは、リモートのＰＣ４０２のＪａｖａ  ＯＲＢポートに１３９４プロキシオブジェクトに割り当てられたクラス名を指定して、その生成を要求する。
【０３３３】
あるホストから別のホストのＪａｖａ  ＯＲＢを利用するときには、受信側のセキュリティマネージャがその接続を許すか否かを判断する。これは送信側のオブジェクトによるＯＲＢの利用要求によって自動的に行われるものとする。
【０３３４】
ここでは、ＰＣ４０１からのＯＲＢ利用要求がＰＣ４０２によって受け付けられたものとし、ＰＣ４０２では要求通り１３９４プロキシオブジェクト６８１が生成され、その参照がＰＣ４０２の１３９４スタブオブジェクトに返却される。１３９４スタブオブジェクト５７１は、以後の要求を１３９４プロキシオブジェクト６８１を通じて行う。なお、ＰＣ４０２が要求前に予め１３９４プロキシオブジェクト５７１を生成しておき、当該オブジェクトから起動できるメソッドのみが利用できるＯＲＢを１３９４サービスとしてあるポートに割り当てても構わない。これは、１３９４に限定したサービスを提供したい場合に有効である。
【０３３５】
１３９４プロキシオブジェクト６８１は、参照を受けとると、不明クラスの論理デバイスに対応する物理デバイスへの参照を獲得し、１３９４スタブオブジェクト５７１に通知する。
【０３３６】
１３９４スタブオブジェクト５７１は、上記参照を獲得すると、１３９４管理オブジェクト５２２に１３９４管理オブジェクト自身を登録し、１３９４デバイスを再構成する要求を発行する。
【０３３７】
１３９４管理オブジェクト５２２は、この要求によって１３９４プロキシオブジェクト６８１によって再構成を開始し、物理デバイスオブジェクトへの参照を要求する。１３９４スタブオブジェクトは５７１、１３９４プロキシオブジェクト６８１から獲得した物理オブジェクトへの参照６５４，６５５を順番に１３９４管理オブジェクト５２１に渡す。ここから属性値を取りだし、１３９４管理オブジェクト５２１は第２の実施形態で説明した初期化の場合と同様の手順で物理デバイスオブジェクト５５２，５５３を作成する。ただし、ここで作成した物理デバイスオブジェクト（以下、スタブデバイスオブジェクトとよぶ）は、リモートにある物理デバイスオブジェクトへの参照を保持しており、ローカルの物理デバイスオブジェクトでは１３９４インタフェースへのトランザクション要求として処理される入出力が、スタブデバイスオブジェクトでは１３９４スタブオブジェクト５７１との間の入出力として処理される点が異る（なお、その詳細は後述する）。
【０３３８】
次に、論理デバイス管理オブジェクト５２２による論理デバイスクラスオブジェクト５３３の初期化、それに続く論理デバイスオブジェクトの初期化が行われる。スタブオブジェクト５５２，５５３は物理デバイスオブジェクト６５４，６５５に対応しマッサージ装置クラスに合致する。リモートのＰＣ４０２ではマッサージ装置クラスは利用されていないため、これらの装置は不明の装置として認識されているが、ローカルのＰＣ４０１ではマッサージ装置クラスが登録されているので、論理デバイスオブジェクト５３３−１，５３３−２として登録される。
【０３３９】
論理デバイスオブジェクト５３３−１からスタブオブジェクト５５２に初期化要求が行われると、リモートの１３９４プロキシオブジェクト６８１に対応する物理デバイスオブジェクト６５４の使用要求を発行する。
【０３４０】
リモートの１３９４プロキシオブジェクト６８１は、プロキシクラスの論理デバイスクラスオブジェクト６３５を生成し、登録する。物理デバイスオブジェクト６５４に対応する論理デバイスオブジェクト６３４−１を消去し、プロキシクラスのデバイスをつくってプロキシ論理デバイスオブジェクト６３５−１として登録する。
【０３４１】
プロキシ論理デバイスオブジェクト６３５−１が生成されると、スタブオブジェクト５３３−１との間とにポート番号を割り当てて論理コネクションを生成する。ここで使うポートはＪａｖａ  ＯＲＢとは別のポートを用いて１３９４パケットの伝送を行うためのものである。
【０３４２】
制御プログラムが読み込まれて動作するのはローカルのＰＣ４０１のスタブオブジェクト５５２の側であり、リモートのＰＣ４０１の物理デバイスオブジェクトはポートから入力したパケットを１３９４インタフェースに出力し、１３９４インタフェースから入力したパケットをポートに転送するだけであり、装置の状態制御はスタブオブジェクト５５２の制御プログラム５６２が行う。ただし、バスリセットなどのイベントは伝達する。
【０３４３】
論理デバイスオブジェクト５３３−２からスタブオブジェクト５５３に初期化要求が行われた場合についても同様である。
【０３４４】
以上の手順により、リモートの物理デバイスをローカルの論理デバイスから利用できるできる環境が整う。
【０３４５】
次に、動作について説明する。ここでは、スタブの物理デバイスオブジェクト５５２を例に取って説明する。
【０３４６】
物理デバイスオブジェクト５５２が論理デバイスドライバ５３１−１から処理要求を受けとり、それに対応する１３９４形式のパケットを生成する。１３９４形式のパケットはＩＰパケットにカプセル化されて前記確保した論理コネクションに出力される。
【０３４７】
ここで、物理デバイスオブジェクト５５２からの出力は、ＩＥＥＥ１３９４インタフェース５０３に直接出力されるのではなく、論理コネクションからＩＰ機能５０４を通して処理される。
【０３４８】
ここでは、ＩＰ機能５０４の先はＩＥＥＥ１３９４インタフェースによって処理されているが、これはイーサネットやＡＴＭであっても構わない。つまり、ＩＥＥＥ１３９４インタフェースを持っていないＰＣでもＩＥＥＥ１３９４装置があたかもローカルに接続されているかのように制御を行うことができる。
【０３４９】
さて、ＩＰパケットにカプセル化されたパケットはプロキシ論理デバイスオブジェク６３５−１に届き、１３９４形式のパケットが取り出され、物理デバイスオブジェクト６５４に渡される。物理デバイスオブジェク６５４はこれをそのまま１３９４インタフェースに出力し、装置４３３のレジスタに作用する。
【０３５０】
ＩＥＥＥ１３９４のアイソクロナスチャネルの入出力は前述の方法では中継できない。ＩＥＥＥ１３９４においてはＩＥＣ  １８８３で定められた方式でレジスタを操作することによってアイソクロナスチャネルが設定される。
【０３５１】
スタブオブジェクト５５２から自装置宛に発行されたＩＥＣ１８８３の設定要求は、１３９４スタブオブジェクト５７１転送され、１３９４スタブオブジェクト５７１はアイソクロナスチャネルに対応するインターネット上のコネクションを設定する。
【０３５２】
ＩＥＥＥ１３９４のアイソクロナスチャネルでは確保する帯域を指定することができる。上記設定要求にはその情報が含まれているので、インターネット上で帯域を確保する手段例えばＲＳＶＰなどの手段によってコネクションの帯域を指定することが望ましい。
【０３５３】
なお、本実施形態では、家庭４５１内のＬＡＮと家庭４５２内のＬＡＮとの間はＩＳＤＮ通信回線４１３で結ばれているものとしたが、第１の実施形態と同様に、家庭４５１内のＬＡＮと家庭４５２内のＬＡＮとの間の接続をインターネットとし、この場合に端末のＩＰアドレスにはグローバルＩＰアドレスを用いるようにしてもよいし、例えばＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ）等のアドレス変換を用いて、公衆網２がインターネットである場合に少なくともネットワークの相互接続を行うノード（図１ではＡＶ接続装置端末）にグローバルＩＰアドレスを用い、その他のノードにはプライベートＩＰアドレスを用いることができるようにしてもよい。
【０３５４】
なお、以上の各機能は、ソフトウェアとしても実現可能である。また、上記した各手順あるいは手段をコンピュータに実行させるためのプログラムを記録した機械読取り可能な媒体として実施することもできる。
【０３５５】
本発明は、上述した実施の形態に限定されるものではなく、その技術的範囲において種々変形して実施することができる。
【０３５６】
（第４の実施形態）
第１の実施形態では、図１２に示したように、第１のＡＶ接続装置４に対して第２の家庭ネットワーク内の収容されたサービス提供装置（例えば、ＤＶＤプレーヤ８、デジタルＶＴＲ９、ＰＣ１０に具備されたＷＷＷサーバやデジタルアルバムサーバ機能等、プリンタ１１）の提供するサービスに関する情報（以下、簡単にサービス情報と呼ぶ）を通知するのに、サービスロケーションプロトコルを用いる場合を示した。
【０３５７】
第４の実施形態では、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）サーバと、ホームページを用いて、これを行う場合について説明する。
【０３５８】
第４の実施形態におけるシステム構成例は図１と同様である。ここでも、第１の実施形態と同様に、第１の家庭内ネットワークの第１のＡＶ接続装置４から、第２の家庭内ネットワーク内の各種サービス提供装置（ＤＶＤプレーヤ８、デジタルＶＴＲ９、ＰＣ１０に具備されたＷＷＷサーバ、デジタルアルバムサーバ機能等、プリンタ１１）の遠隔制御を行うことを考える。
【０３５９】
図３５は、第４の実施形態における、第２のＡＶ接続装置５の内部構成例を示したもので、１３９４Ｉ／Ｆ１４０１、データリンクスイッチ１４０２、公衆網Ｉ／Ｆ１４０３、ＩＰ処理機能１４０４、ＦＡＮＰ処理機能１４０５、１３９４ＡＶコマンド処理機能１４０８の各部の動作は、図２の同一機能部と同様で、異なる点について説明する。すなわち、図２のサービスロケーション処理機能２７、１３９４／ＩＰコマンド変換機能２９が、図３５では、それぞれホームページ処理機能１４０７、ＨＴＴＰ／ＲＴＳＰ処理機能１４０９に置き換えられている。
【０３６０】
１３９４／ＩＰサービスロケーション処理機能１４０６は、第１の実施形態と同様に、ＩＥＥＥ１３９４バスに接続されているサービス提供装置の提供するサービスを検索し、あるいはその登録を受け、１３９４バス上にどのようなサービス提供装置が存在し、どのようなサービスを提供するのかを認識し、要求された場合など必要に応じて、サービス情報を外部に通知する機能を持つ。また、このようにして得られた各サービス提供装置毎のサービス情報を後述するホームページ処理機能１４０７に通知し、第２の家庭内ネットワークの状況を表示するホームページの作成を促す。
【０３６１】
ホームページ処理機能１４０７は、ＷＷＷサーバ機能を持つ。１３９４／ＩＰサービスロケーション処理機能１４０６から、第２の家庭内ネットワークのサービス情報を受け取り、それをホームページとしてまとめる。例えば、各サービス提供装置を表すアイコン、文字列をホームページ上に配置する。そして、各サービス提供装置を遠隔制御するためのコマンドを、それぞれに対応するホームページ上の各々のサービス提供装置を表すアイコン、文字列にリンクさせる。このようにして作成されたホームページに例えば公衆網２を介してアクセスがあった場合には、必要に応じて要求されたホームページを送信したり、公衆網２を介して受信した遠隔制御のためのコマンドをＨＴＴＰ／ＲＴＳＰ処理機能１４０９に転送するようになっている。詳細は後述する。
【０３６２】
ここで、サービス提供装置を遠隔制御するためのコマンドとは、ＨＴＴＰあるいはＲＴＳＰ（ＷＷＷサーバ中のリアルタイムメディアを遠隔操作するためのプロトコル）等に適したものである。ＨＴＴＰに適した遠隔制御のためのコマンドをＨＴＴＰコマンド、ＲＴＳＰに適した遠隔制御のためのコマンドをＲＴＳＰコマンドと呼ぶ。
【０３６３】
ＨＴＴＰ／ＲＴＳＰ処理機能１４０９は、内部にＨＴＴＰデーモンあるいはＲＴＳＰデーモンを有しており、ホームページ処理機能１４０７から転送されてきたＨＴＴＰコマンドあるいはＲＴＳＰコマンドに対する処理を行う機能と共に、そのコマンドの宛先が、第２のＡＶ接続装置５が代理となって公開しているサービスに割当てられているものである場合には、それを必要に応じてＩＥＥＥ１３９４コマンドに変換し、１３９４ＡＶコマンド処理機能１４０８を介して、１３９４バス３上の機器の制御を行う機能（代理処理）も有する。
【０３６４】
次に、第２の家庭内ネットワークにおいて、第２のＡＶ接続装置５が第２の家庭内ネットワークに接続された各サービス提供装置のサービス情報を取得する手順について説明する。これは、第１の実施形態と同様である。即ち、図３に示したように、第２のＡＶ接続装置５は、接続された機器（ＤＶＤプレーヤ８、デジタルＶＴＲ９、ＰＣ１０、プリンタ１１）のコンフィグレーションメモリを読み取ることと、図９に示したように、サービスロケーションプロトコルを用いることとで、第２の家庭内ネットワークに接続されたサービス提供装置のサービス情報を取得する。
【０３６５】
なお、コンフィグレーションメモリに含まれる情報は、図４、図５、図６の様なものがあってもよい。また、図１０に示した形式でサービス情報が登録されていてもよい。
【０３６６】
さて、この時点で、第２のＡＶ接続装置５は、コンフィグレーションメモリの読み込みを通じて、１３９４ノードとしてＤＶＤプレーヤ８、デジタルＶＴＲ９、ＰＣ１０、プリンタ１１を認識する。また、サービスロケーションプロトコルを通じて、さらに、ＷＷＷサービス、デジタルアルバムサービス、エアコンサービス、電子レンジサービスのそれぞれを認識する。ここで、第２のＡＶ接続装置５は、エアコンサービスと電子レンジサービスはＰＣ１０にて提供されるサービスであると認識する。
【０３６７】
さて、第２のＡＶ接続装置５は、この収集したサービス情報に基づき、「その家には何があるか（どんなサービス提供装置、どんなサービスが存在するか）」を紹介するホームページを作成する。
【０３６８】
作成されるホームページは、例えば、図３６に示すように、ユーザに認識させたいサービス提供装置毎に、それらを表すアイコンや文字列などを列挙するものである。このホームページは、例えばその家のＷＷＷサーバがデフォルトで紹介する最初のホームページの中の、例えば「わが家の電気機器」といった文字列なり、アイコンなりからのハイパーリンクで到達できるように、これを構築してもよい。ちなみに、この「わが家の電気機器」のホームページに移る際は、許可を得ていない他人に侵入されないように、何らかの認証手続きを経るのが望ましい。
【０３６９】
図３６に示したようなホームページ中のアイコン、文字列をクリックすると、それに対応するサービス提供装置あるいはサービス毎のホームページが現れるようにする。例えば、図３６のＤＶＤプレーヤのアイコンをクリックすると、それにリンクされた図３９に示すような「ＤＶＤプレーヤのホームページ」が表示されるようにしてもよい。
【０３７０】
このような構成の例えば図３６に示すようなホームページを作成するために、ホームページ処理機能１４０７は、例えば図３７のフローチャートに示すような手順を踏む。
【０３７１】
まず、１３９４／ＩＰサービスロケーション処理機能１４０６に登録されているサービス情報を、例えばサービス提供装置毎に１つずつ読み出し、各サービス提供装置毎のホームページ（例えば、図３９に示すような「ＤＶＤプレーヤのホームページ」）を作成する（ステップＳ１０１〜ステップＳ１０２）。
【０３７２】
図３８に示すフローチャートは、ステップＳ１０２のサービス提供装置毎のホームページ作成処理手順を示したものである。
【０３７３】
１３９４／ＩＰサービスロケーション処理機能１４０６に具備されている各サービス提供装置毎のＲＴＳＰコマンド対応テーブル１４１０（図５０参照）を参照して各サービス提供装置の予め定められたコマンド群（ホームページを通して、ユーザに公開するサービス提供装置の制御のためのコマンド群）を取得し（ステップＳ１１１）、各コマンド毎にそれに対応するアイコンあるいは文字列を作成する（ステップＳ１１２）。例えば、サービス提供装置がＤＶＤプレーヤの場合、図５０のＲＴＳＰコマンド対応テーブルから「再生」を指示するための「ＰＬＡＹ」というＲＴＳＰコマンドを取得し、そのコマンドに対応するアイコン（図３９のアイコンｉ２０６）を作成する。
【０３７４】
ＲＴＳＰコマンド対応テーブル１４１０は、各サービス提供装置毎にＲＴＳＰコマンドが記述してある。例えば、ＤＶＤプレーヤ８の場合、コマンド群としては、電源オン、電源オフ、再生、巻き戻し、前の曲、早送り、次の曲、停止、一時停止の各ＲＴＳＰコマンドが挙げられる。また、図５０に示すように、第２のＡＶ接続装置５にて代理処理を行っているＤＶＤプレーヤ８、デジタルＶＴＲ９の場合は、各ＲＴＳＰコマンドに対応する１３９４コマンドをともに記憶されている。
【０３７５】
なお、ＲＴＳＰコマンド対応テーブル１４１０は、後述する図４２の１３９４／ＩＰコマンド変換機能１４２３に具備されるテーブルと同一のものであってもよい。
【０３７６】
さて、ステップＳ１１２で作成されたアイコンあるいは文字列に、そのサービス提供装置のＲＴＳＰコマンドを対応付ける（ステップＳ１１３）。例えば、図３９の「再生」のアイコンｉ２０６には、「ＰＬＡＹ」というＲＴＳＰコマンドを対応させる。例えば、アイコンあるいは文字列と、それに対応するＲＴＳＰコマンドとをテーブルに登録しておいてもよい。
【０３７７】
なお、第２のＡＶ接続装置５にて代理処理を行っているＤＶＤプレーヤ８、デジタルＶＴＲ９の場合は、第２のＡＶ接続装置５のアドレスとＤＶＤプレーヤ８、デジタルＶＴＲ９それぞれのＩＥＥＥ１３９４ノードに割り当てたポート番号をＲＴＳＰコマンドに含める。
【０３７８】
以上をそのサービス提供装置の提供する全てのコマンドに対し行い、作成されたアイコンあるいは文字列を適当に配置して、例えば図３９に示すようなサービス提供装置のホームページを作成する（ステップＳ１１４〜ステップＳ１１５）。
【０３７９】
次に、図３７の説明に戻り、図３８のフローチャートに従って作成された各サービス提供装置毎のホームページへのハイパーリンクを持った、そのサービス提供装置のアイコンあるいは文字列を作成あるいは取得する（ステップＳ１０３）。すなわち、サービス提供装置毎のアイコン等は、そのサービス提供装置のコンフィグレーションメモリから取り出してもよいし、サービスロケーションプロトコルにより、このアイコンの位置を一意に指定できるＵＲＬが提供され、そこに取りに行く形で入手してもよい。
【０３８０】
ステップＳ１０３で得たアイコンを、「わが家の電気機器」のホームページに貼り付ける。以上の手順を第２の家庭内ネットワークに収容されれている全てのサービス提供装置について行い、図３６のようなホームページが作成できる（ステップＳ１０４）。
【０３８１】
さて、図３６に示したホームページ上のサービス提供装置を表すアイコンあるいは文字列のうち、ＤＶＤプレーヤを表すアイコンｉ１０１をクリックすると、このアイコンに対応付けられたサービス提供装置のホームページ、すなわち、図３９に示したようなＤＶＤプレーヤのホームページが現れる。
【０３８２】
図３９に示したようなサービス提供装置のホームページ、すなわち、この場合、ＤＶＤプレーヤのホームページは、ＤＶＤプレーヤの操作盤として用いて、ユーザはＤＶＤプレーヤ８を遠隔制御することができる。例えば、「電源ＯＮ」ボタンをクリックすると、ＤＶＤプレーヤ８の電源がオンになる、といった具合である。
【０３８３】
次に、例えば、第１の家庭内ネットワークのＰＣ６から第１のＡＶ接続装置４、公衆網２を介して、第２の家庭内ネットワーク内の各種サービス提供装置（ＤＶＤプレーヤ８、デジタルＶＴＲ９、ＰＣ１０に具備されたＷＷＷサーバ、デジタルアルバムサーバ機能等、プリンタ１１）を遠隔制御する場合の処理動作を図４０に示すシーケンス図を参照して説明する。
【０３８４】
第１の家庭内ネットワークに収容されているＰＣ６にて所定のＷＷＷブラウザを用いることにより、図３６に示したようなホームページが提示されたとする。ユーザが、例えばＤＶＤプレーヤｉ１０１のアイコンをクリックすると、それに対応つけされたＤＶＤプレーヤのホームページを要求するＨＴＴＰメッセージがＰＣ６から出力される。
【０３８５】
このメッセージを受けて、第１のＡＶ接続装置４では第２のＡＶ接続装置５に対して、ＤＶＤのホームページの送出要求を行う（ステップＳ４５０１）。例えば、「ＧＥＴ／ａｐｐｌｉａｎｃｅｓ／ｄｖｄ．ｈｔｍｌ  ＨＴＴＰ／１．１」というメッセージが第１のＡＶ接続装置４から第２のＡＶ接続装置５に送信される。
【０３８６】
これを受けて、第２のＡＶ接続装置５は、例えば図３９で示したようなＤＶＤプレーヤのホームページのテキスト（図４１参照）を第１のＡＶ接続装置４に対して送付する（ステップＳ４５０２）。
【０３８７】
図４１に示すように、例えば「再生」のアイコンｉ２０６に付与されるハイパーリンクは、再生を指示するためのＲＴＳＰの「ＰＬＡＹ」コマンドであり、その接続先となるノード（本実施形態の場合、第２のＡＶ接続装置５のＩＰアドレス、即ち「１９２．１６８．１．２５４」）と、そのポート番号（本実施形態の場合「２０００」）とが付加されている。このようにすることにより、「再生」のアイコンｉ２０６をクリックすれば、ユーザは、ＲＴＳＰの「ＰＬＡＹ」コマンドを送信先のアドレスを気にすることなく所望のノードの所望のポートに送出することができるようになる。もって、ＲＴＳＰを使った遠隔制御をハイパーリンクの関連付けを通して行うことができるようになる。
【０３８８】
さて、第１のＡＶ接続装置のユーザは、ＤＶＤのホームページを受け取ると、ＤＶＤプレーヤの遠隔操作を開始できる。例えば、図３９のホームページの「電源ＯＮ」のアイコンｉ２０１をクリックしたとする（ステップＳ４５０３）。「電源ＯＮ」のアイコンｉ２０１には、例えば、ＲＴＳＰの「ＳＥＴＵＰ」コマンドがハイパーリンクにより対応づけられている。よって、「ＳＥＴＵＰ  ｒｔｓｐ：／／１９２．１６８．１．２５４：２０００  ＲＴＳＰ／１．０  １    Ｔｒａｎｓｐｏｒｔ：  ｒｔｐ／ｕｄｐ；ｐｏｒｔ＝５５００」といコマンドデータが第１のＡＶ接続装置４から第２の接続装置５に送信される（ステップＳ４５０４）。このコマンドデータによって、第１のＡＶ制御装置４は、ＲＴＰ／ＵＤＰの各プロトコルを使用してデータを送信し、受信側のポート番号は「５５００」を用いることを要求している。
【０３８９】
これを受け取った第２のＡＶ接続装置５の動作を以下に説明する。第２のＡＶ接続装置のＨＴＴＰ／ＲＴＳＰ処理機能１４０９の内部構成例を図４２に示す。上記ＲＴＳＰの「ＳＥＴＵＰ」コマンドデータは、ＨＴＴＰ／ＲＴＳＰ主処理機能１４２１に到達する。ここでは、まず、「ＳＥＴＵＰ」コマンドデータ中、ポート番号「２０００」は、１３９４ノードであるＤＶＤプレーヤ８に割り当てられているポート番号である事を認識し、ＲＴＳＰ代理機能１４２２に制御が渡される。
【０３９０】
ＲＴＳＰ代理機能１４２２は、１３９４／ＩＰコマンド変換機能１４２３内のテーブルを参照して、対応する１３９４ＡＶ／Ｃコマンド（本実施形態の場合、電源オンを意味するＡＶ／Ｃコマンド）を見つけ、該当する１３９４ノード（本実施形態の場合、ＤＶＤプレーヤ８）に対して、１３９４ＡＶコマンド処理機能１４０８を通して、上記ＡＶ／Ｃコマンドを発行する（ステップＳ４５０５）。
【０３９１】
これに成功すると、第２のＡＶ接続装置５は、第１のＡＶ接続装置４に対して、制御完了を意味するＲＴＳＰの「ＯＫ」コマンドデータ（例えば、「ＲＴＳＰ／１．０  ２００  １  ＯＫ    Ｓｅｓｓｉｏｎ：  １２３４」）を送出する（ステップＳ４５０６）。その際に、ＲＴＳＰコマンドには、このセッションを通して一意の番号として、セッション番号（本実施形態の場合、「１２３４」）を付加している。第１のＡＶ接続装置４のブラウザは、このセッション番号を保持し、以下同一の装置に対してＲＴＳＰコマンドを発行する場合、セッション番号「１２３４」をコマンドに付加する。
【０３９２】
次に、ユーザは、図３９のホームページの「再生」のアイコンｉ２０６をクリックしたとする（ステップＳ４５０７）。「再生」のアイコンｉ２０６には、例えば、ＲＴＳＰの「ＰＬＡＹ」コマンドがハイパーリンクにより対応づけられている。よって、このハイパーリンクによって対応づけられた第２のＡＶ接続装置５（ＩＰアドレス「１９２．１６８．１．２５４」、ポート番号「２０００」、セッション番号「１２３４」）に対して、「ＰＬＡＹ  ｒｔｓｐ：／／１９２．１６８．１．２５４：２０００  ＲＴＳＰ／１．０  ２    Ｓｅｓｓｉｏｎ：  １２３４」というコマンドデータが第１のＡＶ接続装置４から送信される（ステップＳ４５０８）。
【０３９３】
これを受信した第２のＡＶ接続装置５は、ＤＶＤプレーヤ８の再生を促すべく、
ＩＥＣ１８８３による同期チャネルの確保（ステップＳ４５０９）、１３９４ＡＶ／ＣプロトコルのＤＶＤプレーヤ８に対する「ＰＬＡＹ」コマンドの実行（ステップＳ４５１０）を行い、映像データの上記確保した同期チャネルに対する送出を促す。そして、ＤＶＤプレーヤ８から映像データの送信準備が完了した旨の「ＡＣＫ」信号を受け取ったとき、第２のＡＶ接続装置５は、ＲＴＳＰの「ＯＫ」コマンドデータ（「ＲＴＳＰ／１．０  ２００  ２  ＯＫ  Ｓｅｓｓｉｏｎ：１２３４」）を第１のＡＶ接続装置４に送信する（ステップＳ４５１１〜ステップＳ４５１２）。
【０３９４】
その後、第２のＡＶ接続装置５は、この同期チャネルを通して送られてきた映像データをＩＰカプセル化し、ＩＰパケットとして第１のＡＶ接続装置４に対して送出する（ステップＳ４５１３〜４５１５）。
【０３９５】
第１のＡＶ接続装置４は、ＩＰパケットとして上記映像データを受信し、映像の表示など必要な処理を行う。映像の送出先をデジタルＴＶ７とする場合は、第１の実施形態と同様に、第１の家庭内ネットワークであるＩＥＥＥ１３９４上における必要な同期チャネルの確保や、第１のＡＶ接続装置４がデジタルＴＶ７に対して、該同期チャネルからのデータ受信及びそのデータの画面への表示を指示した後、上記映像データを受信ＩＰパケットから取り出し、ＩＥＥＥ１３９４向けのフォーマットに変換した後、第１の家庭内ネットワークに送出すればよい。
【０３９６】
なお、ユーザが、図３９のホームページの「電源ＯＮ」のアイコンｉ２０１をクリックする前に「再生」のアイコンｉ２０６をクリックした場合でも、そのユーザはＤＶＤプレーヤ８の操作の意志があると判断して、「再生」のアイコンｉ２０６のクリックに呼応して、「ＳＥＴＵＰ」コマンドと、「ＰＬＡＹ」コマンドの両方を送出するようになっていても良い。
【０３９７】
また、ＤＶＤプレーヤのホームページを開く時点で、ＲＴＳＰコマンドとして、
ＤＶＤプレーヤの「ＳＥＴＵＰ」コマンドを送出するようになっていても良い。
【０３９８】
以上説明したように、第２の家庭内ネットワークに収容される遠隔制御可能な全てのサービス提供装置から収集されたサービス情報に基づき第２のＡＶ接続装置５は、ＲＴＳＰコマンド対応テーブル１４１０を参照して各サービス提供装置のＲＴＳＰコマンドとリンクされたアイコンを掲載するホームページを作成し、このホームページにアクセスした第１のＡＶ接続装置４側で所望のアイコンがクリックされたとき、そのアイコンにハイパーリンクによって対応付けられた（ＨＴＴＰ／ＲＴＳＰ処理機能１４０９の１３９４／ＩＰコマンド変換機能１４２３のテーブルに登録されている）ＲＴＳＰコマンドが、１３９４ＡＶ／Ｃコマンドに変換されて所望のサービス提供装置に対し所望の制御を実行することにより、第２の物理ネットワーク（例えばＩＥＥＥ１３９４バス３）に接続されたサービス提供装置（例えばＤＶＤプレーヤ８）がデータリンクレイヤに依存するプロトコルしか解釈できない場合でも（本発明のＡＶ接続装置を用いれば）遠隔制御が可能となる。
【０３９９】
さて、以上は第２のＡＶ接続装置５が映像データをＩＰパケットにカプセル化して送出する場合について説明した。これに対して、第２のＡＶ接続装置５が、ＩＰカプセル化を行わず、非ＩＰデータのまま第１のＡＶ接続装置４に対して映像データを送出する方法も考えられる。この場合について図４３に示すシーケンスを参照して説明する。
【０４００】
ステップＳ４８０１〜ステップＳ４８０２の第１のＡＶ接続装置４のユーザは、ＤＶＤプレーヤのホームページを受け取り、ＤＶＤプレーヤの遠隔操作を始めるまでは、図４０の説明と同様である。
【０４０１】
例えば、図３９のホームページの「電源ＯＮ」のアイコンｉ２０１をクリックしたとする（ステップＳ４８０３）。「電源ＯＮ」のアイコンｉ２０１には、例えば、ＲＴＳＰの「ＳＥＴＵＰ」コマンドがハイパーリンクにより対応づけられている。よって、「ＳＥＴＵＰ  ｒｔｓｐ：／／１９２．１６８．１．２５４：２０００  ＲＴＳＰ／１．０  １    Ｔｒａｎｓｐｏｒｔ：  ｉｅｃ１８８３／ｎｏｎｉｐ；ｐｏｒｔ＝ＦＡＮＰ」というＲＴＳＰの「ＳＥＴＵＰ」コマンドデータが第１のＡＶ接続装置４から第２の接続装置５に送信される（ステップＳ４８０４）。このコマンドデータにより、第１のＡＶ制御装置４は、データをＩＥＣ１８８３でカプセル化し、ＩＰパケットではない形で送信することを要求している（すなわち、ＲＴＳＰの［ＳＥＴＵＰ」コマンドには非ＩＰパケット化を指示するための「ｉｅｃ１８８３／ｎｏｎｉｐ」という情報を含んでいる）。また、送信されるデータのリンクレイヤ情報と、属性情報を知るために、第２のＡＶ接続装置５に対して、ＦＡＮＰを用いて、上記情報を第１のＡＶ接続装置４に通知することを要求している。
【０４０２】
ＲＴＳＰの「ＳＥＴＵＰ」コマンドデータは、第２のＡＶ接続装置５のＨＴＴＰ／ＲＴＳＰ処理機能１４０９で受け取られ、ＨＴＴＰ／ＲＴＳＰ主処理機能１４２１に到達する。
【０４０３】
ＨＴＴＰ／ＲＴＳＰ主処理機能１４２１では、ポート番号「２０００」は、１３９４ノードであるＤＶＤプレーヤ８に割り当てられている番号である事を認識し、ＲＴＳＰ代理機能１４２２に制御が渡される。
【０４０４】
ＲＴＳＰ代理機能１４２２は、１３９４／ＩＰコマンド変換機能１４２３内のテーブルを参照して、対応する１３９４ＡＶ／Ｃコマンド（本実施形態の場合、電源オンを意味するＡＶ／Ｃコマンド）を見つけ、該当する１３９４ノード（本実施形態の場合、ＤＶＤプレーヤ８）に対して、１３９４ＡＶコマンド処理機能１４０８を通して、上記ＡＶ／Ｃコマンドを発行する（ステップＳ４８０５）。
【０４０５】
これに成功すると、第２のＡＶ接続装置５は、第１のＡＶ接続装置４に対して、制御完了を意味するＲＴＳＰの「ＯＫ」コマンドデータ（例えば、「ＲＴＳＰ／１．０  ２００  １  ＯＫ    Ｓｅｓｓｉｏｎ：  １２３４」）を送出する（ステップＳ４８０６）。その際に、ＲＴＳＰコマンドには、このセッションを通して一意の番号として、セッション番号（本実施形態の場合、「１２３４」）を付加している。第１のＡＶ接続装置４のブラウザは、このセッション番号を保持し、以下同一の装置に対してＲＴＳＰコマンドを発行する場合、セッション番号「１２３４」をコマンドに付加する。ブラウザが保持するセッション番号は、ユーザによる明示的なセッションの終了、例えばセッション終了に対応するハイパーリンクの参照、または対向側の第２のＡＶ接続装置５によるセッションの終了、もしくはページのリロードによっても更新される。
【０４０６】
次に、ユーザは、図３９のホームページの「再生」のアイコンｉ２０６をクリックしたとする（ステップＳ４８０７）。「再生」のアイコンｉ２０６には、例えば、ＲＴＳＰの「ＰＬＡＹ」コマンドがハイパーリンクにより対応づけられている。よって、このハイパーリンクによって対応づけられた第２のＡＶ接続装置５（ＩＰアドレス「１９２．１６８．１．２５４」、ポート番号「２０００」、セッション番号「１２３４」）に対して、「ＰＬＡＹ  ｒｔｓｐ：／／１９２．１６８．１．２５４：２０００  ＲＴＳＰ／１．０  ２    Ｓｅｓｓｉｏｎ：  １２３４」というコマンドデータが第１のＡＶ接続装置４から送信される（ステップＳ４８０８）。
【０４０７】
これを受信した第２のＡＶ接続装置５は、ＤＶＤプレーヤ８の再生を促すべく、
ＩＥＣ１８８３による同期チャネルの確保（＃Ｘ）、１３９４ＡＶ／ＣプロトコルのＤＶＤプレーヤに対する「ＰＬＡＹ」コマンドの実行を行い、映像データの上記確保した同期チャネルに対する送出を促す（ステップＳ４８０９〜Ｓ４８１１）。そして、ＤＶＤプレーヤ８から映像データの送信準備が完了した旨の「ＡＣＫ」信号を受け取ったとき、第２のＡＶ接続装置５は、ＲＴＳＰの「ＯＫ」コマンドデータ（「ＲＴＳＰ／１．０  ２００  ２  ＯＫ  Ｓｅｓｓｉｏｎ：  １２３４」）を第１のＡＶ接続装置４に送信する（ステップＳ４８１１〜ステップＳ４８１２）。
【０４０８】
その後、第２のＡＶ接続装置５は、この同期チャネル（＃Ｘ）を通して送られてきた映像データを、ＩＰカプセル化は行わず、そのまま公衆網のカプセル化をして、第１のＡＶ接続装置４に対して送出する。例えば、公衆網がＡＴＭ網であれば、第２のＡＶ接続装置５に伝送されてきたＩＥＣ１８８３パケットをそのままＡＴＭ網にマッピングして送出してもよいし、ＩＥＣ１８８３パケットを一度外し、映像データそのものをＡＴＭ網にマッピングして送出してもよい。いずれにしろ、第２のＡＶ接続装置５が送出するリンクレイヤのヘッダ情報を第１のＡＶ接続装置４に対して通知するため、ＦＡＮＰメッセージ「ＦＡＮＰ  ｍｅｓｓａｇｅ  （ｃｈ：  ＃ｙ、  Ｓｅｓｓｉｏｎ：１２３４）」を送出する（ステップＳ４８１３）。
【０４０９】
ＦＡＮＰメッセージの使い方は、基本的に第１の実施形態と同様であるが、ステップＳ４８１２において通知されたセッション番号に対応するＦＡＮＰであることを明確にするために、このＦＡＮＰメッセージにはステップＳ４８１２にて通知された値と同一の値のセッション番号（本実施形態の場合「１２３４」）が含まれても良い。この様にすることにより、受信側ノードすなわち第１のＡＶ接続装置４は、ＦＡＮＰメッセージが前記ＲＴＳＰの「ＰＬＡＹ」コマンドに対応するものであることを認識する事ができる。
【０４１０】
さて、第２のＡＶ接続装置５では、ＤＶＤプレーヤ８から同期チャンネル（＃Ｘ）で送られてきた映像データをＩＰカプセル化せずに公衆網２に出力すると、それを受信した第１のＡＶ接続装置４では、映像の表示など必要な処理を行う（ステップＳ４８１４〜Ｓ４８１６）。その際、ステップＳ４８１５にあるように、例えば、ＭＰＥＧｏｖｅｒ１３９４からＭＰＥＧｏｖｅｒＡＴＭ等、伝送されるネットワークに依存するデータ伝送方法が規定されている場合は、必要なフォーマット変換を行っても良い。また、映像の送出先をデジタルＴＶ７とする場合も前述の場合と同様である。
【０４１１】
以上の第４の実施形態では、ホームページ中のアイコンあるいは文字列にサービス提供装置を遠隔制御するためのＲＴＳＰコマンドをハイパーリンクにて対応させる場合について説明してきたが、ハイパーリンクにて対応させる代わりに各ＲＴＳＰコマンドに対応するホームページ中のアイコンあるいは文字列のそれぞれに、対応するＲＴＳＰコマンドデータを作成するためのプログラム（例えばＪＡＶＡ（登録商標）プログラム）を張り付け、そのアイコンあるいは文字列がクリックされた場合は、該プログラムを第１のＡＶ接続装置４（例えば、第１のＡＶ接続装置４上のＪＡＶＡ仮想マシン）にて起動して、図４０や図４３で説明したようなＲＴＳＰコマンドが送出されるようになっていてもよい。
【０４１２】
この場合の処理動作は、図４０、図４３と同様であり、異なるのは、例えば図４０のステップＳ４５０４、図４３のステップＳ４８０２で第２のＡＶ接続装置５から送信されるサービス提供装置のホームページのテキスト記述である。
【０４１３】
サービス提供装置のホームページのテキストの一例を図４４に示す。図４４には、ＤＶＤプレーヤのホームページのテキストで、例えば、図３９の「再生」のアイコンｉ２０６にＲＴＳＰコマンドを生成するプログラムが付加されている。
【０４１４】
やはり、この場合も、「再生」のアイコンｉ２０６をクリックすれば、ＲＴＳＰの「ＰＬＡＹ」コマンドを生成するプログラムを起動することにより、そのコマンドを所望のノードの所望のポートに送出することができるようになり、もってＲＴＳＰを使ったサービス提供装置を遠隔制御することができる。
【０４１５】
次に、図３９のホームページの「詳細設定」のアイコン（ボタン）ｉ２１０について説明する。このボタンは、ＲＴＳＰコマンドにて予め定められた遠隔制御よりも細かな操作を対象のサービス提供装置（例えば、ＤＶＤプレーヤ８）に対して行いたい場合に用いるものである。即ち、ＩＥＥＥ１３９４のＡＶ／Ｃプロトコルにて規定されるＤＶＤプレーヤ８の制御コマンドは、ＲＴＳＰで規定されるコマンドよりも多岐にわたる可能性がある。このように、ＲＴＳＰコマンドにて、１３９４ＡＶ／Ｃのすべてのコマンドに対応できない場合の対策として、これを行うホームページを別途設け、図３９の「詳細設定」のボタンを押すと、それに対応付けられた、例えば「ＧＥＴ  ／ａｐｐｌｉａｎｃｅｓ／ｄｖｄ＿ｄｅｔａｉｌ．ｈｔｍｌ  ＨＴＴＰ／１．１」というコマンドが送出されて、図４７に示すようなＤＶＤプレーヤの詳細設定のためのホームページが送付される。
【０４１６】
図４５は、サービス提供装置の詳細設定のためのホームページの作成処理手順を示したものである。すなわち、前述の各サービス提供装置毎のコマンドテーブル１４１０にて対応がなされていない、そのサービス提供装置のリンクレイヤ方式（本実施形態の場合、ＩＥＥＥ１３９４のＡＶ／Ｃプロトコル）に依存したコマンド（ネイティブコマンド）を登録したネイティブコマンド対応テーブルを別途１３９４／ＩＰサービスロケーション処理機能１４０６に具備している。各サービス提供装置毎にネイティブコマンドテーブルを参照してネイティブコマンドを取得し（ステップＳ１２１）、各コマンド毎にそれに対応するアイコンあるいは文字列を作成する（ステップＳ１２２）。生成されたアイコンあるいは文字列にはＣＧＩ（Ｃｏｍｍｏｎ  Ｇａｔｅｗａｙ  Ｉｎｔｅｒｆａｃｅ）スクリプトを対応付ける（ステップＳ１２３）。以上をそのサービス提供装置のネイティブコマンドの全てに対し行い、作成されたアイコンあるいは文字列を適当に配置して、例えば図４７に示すようなサービス提供装置の詳細設定のためのホームページを作成する（ステップＳ１２４〜ステップＳ１２５）。
【０４１７】
なお、ネイティブコマンド対応テーブルは、図４２に示したＨＴＴＰ／ＲＴＳＰ処理機能に具備されているＣＧＩ処理機能１４２４内のテーブルと同様のものであっても良い。
【０４１８】
図４７のＤＶＤプレーヤの詳細設定のためのホームページに配置されたボタン（アイコンあるいは文字列）の一部は、第２のＡＶ接続装置５内のＣＧＩ（Ｃｏｍｍｏｎ  Ｇａｔｅｗａｙ  Ｉｎｔｅｒｆａｃｅ）処理機能により処理されるＣＧＩスクリプトに対応付けされている。そして、おのおののＣＧＩスクリプトが、対応するＩＥＥＥ１３９４のＡＶ／Ｃコマンドを、第２の家庭内ネットワークのＩＥＥＥ１３９４バスに対して送出するようなスクリプトとなっており、もって、上記アイコンあるいは文字列をクリックすればＡＶ／Ｃプロトコルで定められた粒度の制御が行えるようになる。
【０４１９】
このようにして、詳細設定のためのホームページを作成し、そのホームページ内のアイコンあるいは文字列がクリックされると、それい対応付けられた第２のＡＶ接続装置５内のＣＧＩスクリプトを起動するための要求メッセージがＨＴＴＰにて送信され、それを受けて第２のＡＶ接続装置５では、該ＣＧＩスクリプトを起動し、対応するＡＶ／Ｃコマンドが発行される。
【０４２０】
図４６は、第２のＡＶ接続装置５から送信される例えばＤＶＤプレーヤの詳細設定のためのホームページのテキスト記述の一例を示したもので、図４７の「スロー再生」の文字列にＣＧＩスクリプトを対応つけている場合を示している。
【０４２１】
図４７のＤＶＤプレーヤの詳細設定のためのホームページで「通常再生」を選択すると、前述の図４０のステップＳ４５０８同様にＲＴＳＰコマンドが発行されるが、「言語選択」や「スロー再生」などのＲＴＳＰでサポートされていないコマンドについては、第２のＡＶ接続装置５のＨＴＴＰ／ＲＳＴＰ処理機能に具備されたＣＧＩ処理機能１４２４において、該当するＣＧＩスクリプトを起動し、対応するＡＶ／Ｃコマンドを１３９４ＡＶコマンド処理機能１４０８を通して発行する。
【０４２２】
例えば、図４７に示すホームページで「スロー再生」を選択した場合、これに対応するＣＧＩスクリプトを起動するためのメッセージ「ＧＥＴ  ｈｔｔｐ：／／１９２．１６８．１．２５４／ｄｖｄ／ｓｌｏｗｐｌａｙ．ｃｇｉ  ＨＴＴＰ／１．１」を第２のＡＶ接続装置５に向けて送出する。これを受信した第２のＡＶ接続装置５では、「スロー再生」のコマンドはＲＴＳＰでサポートされていないので、ＨＴＴＰ／ＲＳＴＰ処理機能に具備されたＣＧＩ処理機能１４２４において、該当するＣＧＩスクリプトを起動し、対応するＡＶ／Ｃコマンドを１３９４ＡＶコマンド処理機能１４０８を通して発行する。
【０４２３】
サービス提供装置の詳細設定のためのホームページには、ＲＴＳＰコマンドに対応するアイコンあるいは文字列と、ＣＧＩスクリプトに対応するアイコンあるいは文字列とが混在していてもよいし、また、そのホームページがＣＧＩスクリプトに対応するアイコンあるいは文字列とでのみ構成されていてももちろん良い。例えば、図４７の「再生」ボタンや「電源ＯＮ」、「電源ＯＦＦ」のボタンなど、ＲＴＳＰコマンド対応テーブルにあるコマンドについては、ハイパーリンクなり、ＪＡＶＡプログラム等により実現されていてもよく、「選択言語」、「字幕」といった、その他の詳細コマンドについてはＣＧＩにて実現されていてもよい。
【０４２４】
また、図４７の詳細設定のためのホームページに配置されている全てのボタンは、ネイティブコマンド対応テーブルに登録されていて、ＣＧＩスクリプトに対応つけられていてもよい。
【０４２５】
以上、第４の実施形態では、ＩＥＥＥ１３９４バス上のＡＶ／Ｃコマンドに従うＡＶ機器の遠隔制御について述べてきたが、同様の制御はその他の任意のリンクレイヤに依存するプロトコル群を有する機器についても同様に行うことができる。その一例として、ホームオートメーション網の一種であるＬＯＮを適用する場合について説明する。
【０４２６】
図４８、図４９は、それぞれＬＯＮを接続するＡＶ接続装置の内部構成例、ＨＴＴＰ／ＲＴＳＰ処理機能の構成例を示したものである。
【０４２７】
ＩＥＥＥ１３９４のＡＶ／Ｃコマンドの代わりに、ＬＯＮで定められたコマンド群、例えばＬＯＮＴａｌｋ等のコマンド群を送出できるようになっている点が、
差分点であり、その他の各構成部は、前述同様である。
【０４２８】
なお、以上第４の実施形態で説明した各機能は、ソフトウェアとしても実現可能である。また、上記した各手順あるいは手段をコンピュータに実行させるためのプログラムを記録した機械読取り可能な媒体として実施することもできる。
【０４２９】
本発明は、上述した実施の形態に限定されるものではなく、その技術的範囲において種々変形して実施することができる。
【０４３０】
（第５の実施形態）
図５１は、本発明の第５の実施形態に係る通信システムの構成例を示したもので、第１のネットワーク（例えばＩＥＥＥ１３９４バスで構成されるホームネットワーク）２０１０および第２のネットワーク（例えば公衆網２１０１上のインターネット）が、ＡＶ接続装置２２０１を介して相互接続されている。以下、第１のネットワーク２０１０をホームネットワーク２０１０、第２のネットワーク２１０１をインターネット２１０１と呼ぶ。また、ホームネットワーク２０１０に接続されている各端末装置はインターネット処理機能をもつ情報家電であるとする。
【０４３１】
ＡＶ接続装置２２０１は、ホームネットワーク２０１０とインターネット２１０１とを接続するゲートウエイの役割を持ち、後述するように、ホームネットワークやインターネットの終端機能、ルータ機能、プロトコル変換機能、代理サーバ機能などを持つ。
【０４３２】
ホームネットワーク２０１０を構成するＩＥＥＥ１３９４バスには、パーソナルコンピュータ（ＰＣ）２００１、プリンタ２００２、ＤＶＤプレーヤ２００３が接続されている。インターネット２１０１には、ＩＰ通信を行うことのできるＩＰ端末２１０２が接続されている。もちろん、上記以外の端末装置がホームネットワーク２０１０、インターネット２１０１に接続されていてもよい。
【０４３３】
図５１において、全ての端末装置はインターネット端末、即ちＩＰアドレスを持ち、ＩＰ通信を行うことができる端末装置である。ただし、ホームネットワーク２０１０を構成するＩＥＥＥ１３９４バスは、プライベートＩＰアドレス空間のアドレスで運用されており、インターネット２１０２はグローバルＩＰアドレス（例えばＩＰｖ４）空間で運用されている。ＩＰ端末２１０１のＩＰアドレスは「Ｇ．２」であるとする。一方、ホームネットワーク２０１０上の各装置のアドレスとしては、プライベートサブネットアドレス「Ｐ．０」を持ち、ＰＣ２００１が「Ｐ．１」、プリンタ２００２が「Ｐ．２」、ＤＶＤプレーヤ２００３が「Ｐ．３」であるとする。
【０４３４】
ＡＶ接続装置２２０１は、アドレス体系の異なるこれら２つのネットワークに接続されているので、２つの異なるアドレス体系のアドレスを有する。すなわち、ホームネットワーク２０１０側のＩＰアドレスが「Ｐ．２５４」で、インターネット２１０１側のＩＰアドレスが「Ｇ．１」であるとする。
【０４３５】
図５２は、ＡＶ接続装置２２０１の構成例を示したものである。ＡＶ接続装置２２０１は、ホームネットワーク２０１０を構成するＩＥＥＥ１３９４バスと接続するためのインタフェースを司る１３９４インタフェース（Ｉ／Ｆ）２２０２、インターネット２１０１と接続するためのインタフェースを司るインターネットインタフェース（Ｉ／Ｆ）２２０５、インターネットパケットのルーチング処理や、グローバルＩＰアドレスとプライベートＩＰアドレスとの間のアドレス変換等を行うＩＰ処理部２２０２、ホームネットワーク２０１０内のサービスを検出、収集し、これらサービスをインターネット２１０１側に対してホームページ処理部２２０４を通じて提示（広告）するサービスロケーション代理処理部２２０３、ホームネットワーク２０１０上の装置、サービスについて、インターネット２１０１側からの遠隔制御を行うことができるようなホームページを生成し、これを要求に応じて配送するホームページ処理部２２０４から構成される。
【０４３６】
ＩＰ処理部２２０２は、アドレス変換処理を行うＮＡＴ処理部２２０６を具備する。ＮＡＴとはネットワークアドレス変換（トランスレーション）の略であり、一般にグローバルＩＰアドレスとプライベートＩＰアドレスとの間の変換処理、あるいはＩＰｖ４アドレスとＩＰｖ６アドレスとの変換処理等を行う。詳細は、ＲＦＣ１６３１を参照されたい。
【０４３７】
ＮＡＴ処理部２２０６は、ＩＰマスカレードと呼ぶポート単位のアドレス変換機能もある。即ち、ホームネットワーク２０１０側にいくつもの端末装置があったとしても、インターネット２１０１側に必要なグローバルＩＰアドレスが１つ（本実施形態の場合「Ｇ．１」）あれば十分とする技術であり、具体的には、ホームネットワーク２１０１に接続されている各々の端末装置、各々のサービス（例えばＲＦＣ１３４０で規定されているポート番号にて識別されるサービス）の論理多重識別子（ＲＦＣ１３４０で規定されているポート番号にて識別されるサービスの論理多重識別子はポート番号である）に対して、同一のグローバルＩＰアドレス「Ｇ．１」と、各サービス毎に別々の他の論理多重識別子（例えばＲＦＣ１３４０で規定されているポート番号）を割当て、これらの対応関係を図５５に示すようなテーブル（アドレス・ポート番号変換テーブル２２０７）として記憶する。そして、インターネット２１０１およびホームネットワーク２０１０のいずれか一方から他方へ転送されるパケットの宛先アドレスは、このテーブル２２０７を用いて、互いのアドレス空間のアドレス及びポート番号に変換されて転送されることにより、インターネット２１０１上の端末装置とホームネットワーク２０１０上の装置とが互いに通信可能となる。
【０４３８】
ＩＰ処理部２２０２は、さらに、パケットフィルタ２２０８を具備する。パケットフィルタ２２０８は、いわゆるファイアウオールとしての機能を有する。即ち、ＡＶ接続装置２２０１を通過すべきでないパケット（あるいは通過してもよいパケット）を判別し、通過すべきでないパケットについてはこれをＩＰ処理部２２０２以外の他の部位に渡さないようにして（例えば廃棄する）、外部からホームネットワーク２０１０へのアクセスを制限する。これにより、悪意のユーザによるホームネットワーク２０１０上のサービスへのアクセスを未然に防止するようになっている。この判断処理のために、パケットフィルタ２２０８は、例えば、ＡＶ接続装置２２０１を通過してホームネットワーク２０１０へ送出可能なパケットのソースアドレスを登録したテーブル（パケットフィルタテーブル２２０９）を持ち、インターネット２１０１から入力されるパケットのソースアドレスが、このテーブルに登録されている時にその通過を許可する。なお、パケットフィルタテーブル２２０９にはＡＶ接続装置２２０１を通過させないソースアドレスが登録されていてもよい。この場合、インターネット２１０１から入力されるパケットのソースアドレスが、このテーブルに登録されていなければ、そのパケットの通過を許可する。
【０４３９】
次に、図５３に示すシーケンスを参照して、インターネット２１０１上のＩＰ端末２１０２から、ホームネットワーク２０１０にアクセスし、例えばＤＶＤプレーヤ２００３の遠隔操作を行う場合を例にとり、ＡＶ接続装置２２０１の処理動作について説明する。
【０４４０】
まず、ＡＶ接続装置２２０１のサービスロケーション代理処理部２２０３は、ホームネットワーク２０１０上のサービスロケーション情報を収集する（ステップＳ５００１〜ステップＳ５００３）。サービスロケーション情報とは、ホームネットワーク２０１０上にどのようなサービスあるいは端末装置が存在しているかを示す情報である。サービスロケーション情報の収集を行う方法としては、いくつかの方法が考えられる。例えば、サービスロケーションプロトコルを用いる方法、ＬＤＡＰ（ライトウエイトディレクトリアクセスプロトコル）を用いる方法、ＤＨＣＰ（ダイナミックホストコンフィグレーションプロトコル）を用いる方法、ＳＮＭＰ（シンプル網管理プロトコル）のＭＩＢ（マネージメントインフォメーションベース）を用いる方法など、種々の方法が考えられるが、これらのいずれの方法を用いても良い。
【０４４１】
ここでは、例えば、図１２に示したようなサービスロケーションプロトコルを用いて、ホームネットワーク２０１０上のサービスロケーション情報を収集するものとする。なお、サービスロケーションプロトコルの詳細はＲＦＣ２１６５を参照されたい。実際のサービスロケーション情報の収集は、図５３のように、ＡＶ接続装置２２０１がホームネットワーク２０１０のディレクトリエージェントとなっており、各サービスエージェント（即ちＰＣ２００１、プリンタ２００２、ＤＶＤプレーヤ２００３）からＡＶ接続装置２２０１へ、それぞれのサービスの登録を行うものであってもよい。
【０４４２】
なお、このような方法以外にも、ＡＶ接続装置２２０１がサポート可能なサービスについて、それぞれのサービスにあらかじめ割当てられたＩＰマルチキャストアドレスに対して、ＡＶ接続装置２２０１がサービス要求を送出し、この要求に対し、当該サービスを提供する端末装置自身が答えるようにしてもよい。また、ＡＶ接続装置２２１０がホームネットワーク２０１０上に別個存在するディレクトリエージェントに、ホームネットワーク２０１０上のサービスの詳細を問い合わせるようにしてもよい。
【０４４３】
ここで収集されたホームネットワーク２０１０上で提供されているサービスに関する情報（より具体的には、ホームネットワーク２０１０上の端末装置のアドレスと当該装置により提供されるサービスのポート番号（ＲＦＣ１３４０で規定））を基に、図５４のフローチャートに示すような処理動作を行う。
【０４４４】
ＡＶ接続装置２２０１は、ホームネットワーク２０１０の所有者（例えばＡさんとする）宅にどのようなサービスや端末装置が存在するのかを説明するホームページをホームページ処理部２２０４にて作成する（ステップＳ５１０１〜ステップＳ５１０２）。
【０４４５】
このホームページは、例えば、図５９に示すようなもので、インターネット２１０１上の任意の端末装置から、Ａさん宅のＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）、すなわち、例えば「ｈｔｔｐ：／／Ｇ．１」にアクセスすると表示されるホームページである。このホームページから、例えば、ＣＧＩ（Ｃｏｍｍｏｎ  Ｇａｔｅ  Ｗａｙ）プログラムにより、Ａさん宅に存在している各サービスや端末装置を操作することができるようなユーザインタフェースである。実際には、このホームページから、ホームネットワーク２０１０上の各端末装置に対してリンクが張られており、そのオブジェクトをクリックすると、次には各端末装置のホームページに接続され、各端末装置が提供する、その端末装置の操作スイッチ等を遠隔操作することが可能となるホームページが表示される仕組みになっている。
【０４４６】
次に、サービスロケーション代理処理部２２０３は、先に収集されたサービス、あるいは端末装置のそれぞれについて、独自の論理多重識別子、すなわち、例えば、ＲＦＣ１３４０で規定されているポート番号（ウエルノウンポート番号ではなく、動的に設定可能なポート番号）を割り当てていく（ステップＳ５１０４）。以下、ホームネットワーク２０１０上でもともと定めれれているポート番号を第１のポート番号と呼び、ホームネットワーク２０１０上のサービスに対しサービスロケーション代理処理部２２０３で独自に割り当てられるポート番号を、ホームネットワーク２０１０上でもともと定めれれているポート番号とは区別するために第２のポート番号と呼ぶ。
【０４４７】
例えば、第２のポート番号「２０００」はＤＶＤプレーヤ２００３に、第２のポート番号「２００２」はプリンタ２００２、第２のポート番号「２００４」はＰＣ２００１と言うように割当てていく。この第２のポート番号は、ＡＶ接続装置２２０１のグローバルＩＰアドレスと組になり、運用される。即ち、インターネット２１０１側より、例えば第２のポート番号「２０００」がアクセスされた場合、ＡＶ接続装置２２０１は、これはＤＶＤプレーヤ２００３に対するアクセスであると解釈していくこととなる。なお、論理多重識別子は、ＲＦＣ１３４０で規定されているポート番号に限らず、ホームネットワーク２０１０上で提供される各サービスをインターネット上で識別できる識別子であれば何でもよい。
【０４４８】
ＡＶ接続装置２２０１のグローバルユニークＩＰアドレスと、ホームネットワーク２０１０上で提供される各サービスに割り当てられた第２のポート番号と、ホームネットワーク２０１０上の当該サービスに対する論理多重識別子としての第１のポート番号と、当該サービスを提供する装置のプライベートＩＰアドレスとの対応関係は、アドレス・ポート番号対応テーブル２２０７に登録される（ステップＳ５１０５）。
【０４４９】
アドレス・ポート番号対応テーブル２２０７の具体例を図５５に示す。アドレス・ポート番号対応テーブル２２０７には、ホームネットワーク２０１０上で提供される各サービス毎に、インターネット２１０１側のＩＰアドレス（グローバルユニークＩＰアドレス）と第２のポート番号、ホームネットワーク２０１０側のＩＰアドレス（プライベートＩＰアドレス）と第１のポート番号の対が登録されている。このテーブル２２０７に、ホームネットワーク２０１０上で提供される全てのサービスについての対応関係が順次登録されていく。
【０４５０】
例えば、ＤＶＤプレーヤ２００３の場合、ホームネットワーク２０１０内でのＤＶＤプレーヤのサービス（ＩＰアドレス（プライベートＩＰアドレス）＝Ｐ．３、第１のポート番号＝８０でＤＶＤプレーヤにより提供されるｈｔｔｐサービスであると、サービスロケーションプロトコルにより解釈される）には、インターネット２１０１側に対しては、ＡＶ接続装置２２０１のグローバルＩＰアドレス「Ｇ．１」で第２のポート番号「２０００」が割当てられている。
【０４５１】
このようなアドレス・ポート番号変換テーブル２２０７の作成が、Ａさん宅のサービスの各々について行われる。この各々について、Ａさん宅のホームページへの記述が行われる。
【０４５２】
Ａさん宅の全てのサービスについて、テーブル２２０７への登録が終わった時点で、アドレス・ポート番号変換テーブル２２０７の作成、及びＡさん宅のホームページの作成が終了する（ステップＳ５１０６）。
【０４５３】
さて、作成されたアドレス・ポート番号変換テーブル２２０７は、ＡＶ接続装置２２０１内をＩＰパケットが通過する際、ＩＰアドレスとポート番号の変換処理を行う際に用いられる。図５８を参照して、アドレス・ポート番号変換テーブル２２０７を用いた、ＩＰアドレスとポート番号の変換処理について具体的に説明する。例えばインターネット２１０１側から宛先ＩＰアドレスが「Ｇ．１」、宛先ポート番号が「２０００」であるようなＩＰパケットは、テーブル２２０７を参照することにより、宛先ＩＰアドレスが「Ｐ．３」、宛先ポート番号が「８０」であるようなＩＰパケットに変換されて、ホームネットワーク２０１０側に送出される。逆に、ホームネットワーク１１０側から送信元ＩＰアドレスが「Ｐ．３」、送信元ポート番号が「８０」であるようなＩＰパケットは、送信元ＩＰアドレスが「Ｇ．１」、送信元ポート番号が「２０００」であるようなＩＰパケットに変換されて、インターネット２１０１に送出される。
【０４５４】
さて、この様なアドレス・ポート番号変換テーブル２２０７、及びＡさん宅のホームページの作成を終了したＡＶ接続装置２２０１は、このホームページをＡさん宅のホームページとしてインターネット２１０１上に公開する（図５９参照）。
【０４５５】
次に、インターネット２１０１上のＩＰ端末２１０２のユーザが、Ａさん宅のＤＶＤプレーヤ２００３の遠隔操作を行う場合について説明する。
【０４５６】
インターネット２１０１側からＩＰパケットを受信した場合のＡＶ接続装置２２１０の処理動作を図５６に、ホームネットワーク２０１０側からＩＰパケットを受信した場合のＡＶ接続装置２２０１の処理動作を図５７に示す。以下、図５３と図５６〜図５７に示すフローチャートを参照して説明する。
【０４５７】
まず、ＩＰ端末２１０２はＡＶ接続装置２２０１に対して、Ａさん宅のホームページの送付を要求するため、認証手続きを行う（図５３のステップＳ５００４）。例えばＩＰ端末２１０２のユーザに対して、パスワード入力等を要求し、これにより認証されたユーザについてのみ、そのＩＰ端末２１０２のＩＰアドレスを前述のパケットフィルタテーブル２２０９に登録する。
【０４５８】
パケットフィルタテーブル２２０９は、単にＩＰアドレスが羅列してあるのみのテーブルで、このテーブルに登録されているＩＰアドレスのみがホームネットワーク２０１０、およびホームネットワーク２０１０上で提供されるサービスへのアクセスが可能となる。
【０４５９】
次に、ＩＰ端末２１０２は、ＡＶ接続装置１０４に対して、Ａさん宅のホームページの送付を要求する（ステップＳ５００５）。パケットフィルタ２２０８で当該ホームページの送付要求のパケットのソースアドレスがパケットフィルタテーブル２２０９に登録されているか否かをチェックし（ステップＳ５００６）、当該ソースアドレスがパケットフィルタテーブル２２０９に登録されている場合に限り、当該パケットはホームページ処理部２２０４に渡され、当該要求に応じて、ホームページ処理部２２０４は、ＩＰ端末２１０２に対して、Ａさん宅のホームページの送付を行う（ステップＳ５００７）。
【０４６０】
ここで送付されるホームページには、図５９に示したように、ホームネットワーク２０１０上のＤＶＤプレーヤ２００３、プリンタ２００２、ＰＣ２００１のそれぞれのホームページへのリンクが付いている。例えば、図５９のホームページ上の「ＤＶＤプレーヤ」という文字あるいは絵にはＤＶＤプレーヤ２００３へリンクされている。実際のリンク先のアドレスはＡＶ接続装置２２０１のグローバルＩＰアドレス「Ｇ．１」の第２のポート番号「２０００」となっており、形式上は、ＡＶ接続装置２２０１がホームネットワーク２０１０上の装置へアクセスするための代理サーバとなっている。これは、もちろん、ＩＰ端末２１０２からは認識されていない。しかしながら、代理サーバ処理とは違い、実際にＡＶ接続装置２２０１が行う処理は、後述のようにＩＰマスカレード処理、即ちＩＰアドレスとポート番号の変換処理である。
【０４６１】
さて、ＩＰ端末２１０２のユーザは、ＤＶＤプレーヤ２００３の遠隔操作をするべく、ＤＶＤプレーヤのホームページの送出要求を送出する。例えば、図５９に示したホームページ上の「ＤＶＤプレーヤ」という文字あるいは絵をクリックすることにより、ＤＶＤプレーヤのホームページの送出要求のＩＰパケットが送出される。このパケットの宛先は、宛先ＩＰアドレスが「Ｇ．１」、宛先ポート番号が「２０００」である（ステップＳ５００８）。
【０４６２】
このＩＰパケットをＡＶ接続装置２２０１が受信したときの処理動作、すなわち、図５３のステップＳ５００９〜ステップＳ５０１０までのパケットフィルタリング及びアドレス・ポート番号変換処理について図５６に示すフローチャートを参照して説明する。
【０４６３】
ＡＶ接続装置２２０１は、受信したＩＰパケットの宛先アドレスを参照して自分宛てであることを確認すると（ステップＳ５２０１）、まず、パケットフィルタテーブル２２０９を参照してパケットフィルタリング処理を行う（ステップＳ５２０２）。当該パケットのソースアドレスがパケットフィルタテーブル２２０９に登録されていれば、次に、当該パケットの宛先ＩＰアドレスと宛先ポート番号との組がアドレス・ポート番号変換テーブル２２０７に登録されているか否かをチェックする（ステップＳ５２０３）。登録されていれば、アドレス・ポート番号変換テーブル２２０７に従って、当該宛先ＩＰアドレス及び宛先ポート番号を、対応するホームネットワーク側のＩＰアドレス（プライベートＩＰアドレス）及び第１のポート番号に差し替え（ステップＳ５２０４）、ホームネットワーク２０１０へ当該ＩＰパケットを送出する（ステップＳ５２０５）。この様にして、グローバルＩＰアドレスおよび第２のポート番号から、プライベートアドレスおよび第１のポート番号へのアドレス変換が行われる。
【０４６４】
なお、アドレス・ポート番号変換テーブル２２０７に登録されておらず、かつＡＶ接続装置２２０１自身宛てのパケットでない場合は、そのパケットは廃棄する（ステップＳ５２０６）。
【０４６５】
図５３の説明に戻り、アドレス・ポート番号変換処理（ＩＰマスカレード処理）が施されて、ホームネットワーク２０１０側へ送出されたＩＰパケットは、ＤＶＤプレーヤ２００３に到達し（ステップＳ５０１１）、ＤＶＤプレーヤ２００３はＩＰ端末２１０２のグローバルＩＰアドレスを宛先アドレスとしてＤＶＤプレーヤ２００３のホームページを送付する。その際のＩＰパケットの送信元ＩＰアドレスはプライベートＩＰアドレス「Ｐ．３」、送信元ポート番号は第１のポート番号「８０」である（ステップＳ５０１２）。
【０４６６】
ＤＶＤプレーヤ２００３のホームページを含むＩＰパケットをホームネットワーク２０１０側から受信したときのＡＶ接続装置２２０１の処理動作、すなわち、図５３のステップＳ５０１３のアドレス・ポート番号変換処理動作について図５７に示すフローチャートを参照して説明する。
【０４６７】
ＡＶ接続装置２２０１は、受信したＩＰパケットの送信元アドレスとポート番号との組がアドレス・ポート番号変換テーブル２２０７に登録されているか否かをチェックする（ステップＳ５３０１〜ステップＳ５３０２）。登録されていれば、アドレス・ポート番号変換テーブル２２０７に従って、当該宛先ＩＰアドレス及び宛先ポート番号を、対応するインターネット側のＩＰアドレス（グローバルユニークＩＰアドレス）及び第２のポート番号に差し替えてから（ステップＳ５３０３）、当該ＩＰパケットをインターネット２１０１へ送出する（ステップＳ５３０４）。なお、ステップＳ５３０３において、アドレス・ポート番号変換テーブル２２０７に登録されていなかったときは、通常のＩＰマスカレード処理を行う（ステップＳ５３０５）。すなわち、ソースアドレスとポート番号との組を新たにアドレス・ポート番号変換テーブルに登録し、以降のＩＰマスカレード通信に備える。
【０４６８】
図５３の説明に戻り、アドレス・ポート番号変換処理（ＩＰマスカレード処理）が施されて、インターネット２１０１側へ送出されたＩＰパケットは、ＩＰ端末２１０２に到達し（ステップＳ５０１４）、ＩＰ端末２１０２にＤＶＤプレーヤ２００３のホームページが表示され、この画面を使って、ＩＰ端末２１０２のユーザはＤＶＤプレーヤ２００３の遠隔操作を行うことになる。
【０４６９】
この遠隔操作は、たとえば、ＤＶＤプレーヤ２００３の再生動作の開始等をＩＰ端末２１０５とＤＶＤプレーヤ２００３との間でＣＧＩプログラムによる要求とその処理結果をＩＰパケットでやり取りして行われるが、その際、当然ながら図５３のステップＳ５０１０、ステップＳ５０１３の様なＩＰマスカレード処理が行われる。
【０４７０】
この間、ＩＰ端末２１０２は、自分がプライベートアドレス空間のノード（具体的にはプライベートＩＰアドレスを持ったＤＶＤプレーヤ２００３）と通信をしているという認識はない。このように、サービスの紹介とアドレス変換処理（ＩＰマスカレード処理）とを一体として扱うことにより、グローバルユニークＩＰアドレス空間からプライベートＩＰアドレス空間中で提供されるサービスへのアクセスを可能としている。
【０４７１】
なお、本実施形態においては、第２のネットワークとしてグローバルＩＰアドレス空間を持つインターネット２１０１、第１のネットワークとしてプライベートＩＰアドレス空間を持つホームネットワーク２０１０との間におけるＡＶ接続装置２２０１によるアドレス・ポート番号変換処理を説明してきたが、当然ながら、第１および第２のネットワークは、以下のような組み合わせのいずれも可能である。
【０４７２】
（１）グローバルＩＰアドレスと、プライベートＩＰアドレスとの組み合わせ
（２）ＩＰｖ４アドレスと、ＩＰｖ６アドレスとの組み合わせ
（３）ＩＰｖ６アドレスと、リンクローカルＩＰｖ６アドレスとの組み合わせ
例えば、第２のネットワークとしてＩＰｖ４アドレスにて運用されるインターネット、第１のネットワークとしてＩＰｖ６アドレスにて運用されるインターネットとしても、本発明は適用が可能である。
【０４７３】
また、第２のネットワークをＩＰｖ６アドレスにて運用されるインターネット、第１のネットワークとしてリンクローカルＩＰｖ６アドレスにて運用されるインターネットとしても、本発明は、そのまま適用が可能である。
【０４７４】
また、上記実施形態においては、インターネット２１０２に対する、ホームネットワーク２０１０上のサービスの広告の方法として、ＡＶ接続装置２２０１上のホームページを使う方法について説明してきたが、このサービス広告の方法としては、上記方法以外に、ＬＤＡＰ（ライトウエイトディレクトリアクセスプロトコル）を用いる方法、ＤＨＣＰ（ダイナミックホストコンフィグレーションプロトコル）のコンフィグレーションオプションを用いる方法、ＳＮＭＰ（シンプル網管理プロトコル）のＭＩＢ（マネージメントインフォベース）のリモートアクセスを用いる方法など、種々の方法が考えられる。このサービス広告の方法として、これらのいずれの方法を用いてももちろん良い。
【０４７５】
【発明の効果】
本発明によれば、特定のネットワークに依存せず、統一的なサービス提供環境を実現することが可能となる。
【０４７６】
また、本発明によれば、ＯＳやハードウェアに依存せず、必要の生じた時点で装置制御プログラムを登録することが可能となる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係るネットワーク・システムの一構成例を示す図
【図２】同実施形態に係るＡＶ接続装置の内部構成例を示す図
【図３】端末／サービス収集のシーケンスの一例を示す図
【図４】コンフィグレーションＲＯＭに記述される内容の一例を示す図
【図５】コンフィグレーションＲＯＭに記述される内容の他の例を示す図
【図６】コンフィグレーションＲＯＭに記述される内容のさらに他の例を示す図
【図７】サービス別の表示を行う場合の画面例を示す図
【図８】端末別の表示を行う場合の画面例を示す図
【図９】ディレクトリエージェントにサービス情報を登録する手順の一例を示す図
【図１０】ディレクトリエージェントに登録する情報の一例を示す図
【図１１】サービス別の表示を行う場合の画面例を示す図
【図１２】ディレクトリエージェントからサービス情報を入手する手順の一例を示す図
【図１３】ディレクトリエージェントから入手された情報の一例を示す図
【図１４】サービス別の表示を行う場合の画面例を示す図
【図１５】ＤＶＤプレーヤ操作のための画面例を示す図
【図１６】第２の家庭内ＬＡＮ上から第１の家庭内ＬＡＮ上のサービスを利用する場合におけるネットワーク上を流れるコマンド群、プロトコル群についてのシーケンスの一例を示す図
【図１７】コマンド変換について説明するための図
【図１８】第２の家庭内ＬＡＮ上から第１の家庭内ＬＡＮ上のサービスを利用する場合におけるネットワーク上を流れるコマンド群、プロトコル群についてのシーケンスの他の例を示す図
【図１９】第２の家庭内ＬＡＮ上から第１の家庭内ＬＡＮに接続された装置を制御する場合におけるネットワーク上を流れるコマンド群、プロトコル群についてのシーケンスの他の例を示す図
【図２０】コマンド変換について説明するための図
【図２１】本発明の第２の実施形態に係るＰＣの一構成例を示す図
【図２２】同実施形態に係るデバイスドライバのソフトウェア構成の一例を示す図
【図２３】論理デバイス管理オブジェクト初期化手順を示すフローチャート
【図２４】論理デバイスクラスオブジェクト初期化手順を示すフローチャート
【図２５】論理デバイスオブジェクト初期化手順を示すフローチャート
【図２６】物理デバイスオブジェクト初期化手順を示すフローチャート
【図２７】不明のタイプを利用した場合におけるソフトウェア構造を説明するための図
【図２８】アプリケーションによる新規デバイスクラス追加要求手順を示すフローチャート
【図２９】論理デバイス管理オブジェクトによる新規デバイスクラス追加手順を示すフローチャート
【図３０】本発明の第３の実施形態に係る家庭内ＬＡＮ間を接続したネットワーク・システムの構成例を示す図
【図３１】クライアント側の接続前におけるネットワーク経由サービスのソフトウェア構造を示す図
【図３２】クライアント側の接続後におけるネットワーク経由サービスのソフトウェア構造を示す図
【図３３】プロキシ側の接続前におけるネットワーク経由サービスのソフトウェア構造を示す図
【図３４】プロキシ側の接続後におけるネットワーク経由サービスのソフトウェア構造を示す図
【図３５】本発明の第４の実施形態に係るＡＶ接続装置の構成例を示した図
【図３６】第２の家庭内ネットワークに収容される全ての遠隔制御可能なサービス提供装置を提示したホームページの具体例を示した図
【図３７】図３６に示したようなホームページの作成手順を説明するためのフローチャート
【図３８】サービス提供装置のホームページの作成手順を説明するためのフローチャート
【図３９】サービス提供装置（ＤＶＤプレーヤ）のホームページの具体例を示した図
【図４０】第２の家庭内ネットワークに収容されるサービス提供装置を遠隔制御する場合の処理動作を説明するためのシーケンス図（ホームページのアイコンとＲＴＳＰコマンドが対応付けられ、さらに、送信データをＩＰカプセル化する場合）。
【図４１】送信されるホームページのテキストの一具体例を示した図。
【図４２】ＡＶ接続装置のＨＴＴＰ／ＲＴＳＰ処理機能の構成例を示した図
【図４３】第２の家庭内ネットワークに収容されるサービス提供装置を遠隔制御する場合の処理動作を説明するためのシーケンス図（ホームページのアイコンとＲＴＳＰコマンドが対応付けられ、さらに、送信データをＩＰカプセル化しない場合）。
【図４４】サービス提供装置（ＤＶＤプレーヤ）のホームページのテキストの他の例を示した図（図３９の「再生」のアイコンにＲＴＳＰコマンドを生成するプログラムが付加されている場合）
【図４５】サービス提供装置の詳細設定のためのホームページの作成処理手順を示したフローチャート
【図４６】サービス提供装置（ＤＶＤプレーヤ）の詳細設定のためのホームページのテキスト記述の一例を示した図（図４７の「スロー再生」の文字列にＣＧＩスクリプトを対応つけている場合）
【図４７】サービス提供装置（ＤＶＤプレーヤ）の詳細設定のためのホームページの具体例を示した図
【図４８】ＬＯＮを接続するＡＶ接続装置の内部構成例を示した図
【図４９】図４８のＨＴＴＰ／ＲＴＳＰ処理機能の構成例を示した図
【図５０】ＲＴＳＰコマンド対応テーブルの一具体例を示した図
【図５１】本発明の第５の実施形態に係る通信システムの構成例を示した図。
【図５２】図５１のＡＶ接続装置の構成例を示した図。
【図５３】インターネット上のＩＰ端末からホームネットワークにアクセスして、ＤＶＤプレーヤの遠隔操作を行う場合の図５１に示した通信システム全体のシーケンス図。
【図５４】ホームネットワーク上で提供されているサービスに関する情報（ホームネットワーク上の端末装置のアドレスと当該装置により提供されるサービスのポート番号）を基にした、ＡＶ接続装置の処理動作を説明するためのフローチャート。
【図５５】アドレス・ポート番号対応テーブルの具体例を示した図。
【図５６】インターネット側からＩＰパケットを受信した場合のＡＶ接続装置の処理動作を説明するためのフローチャート。
【図５７】ホームネットワーク側からＩＰパケットを受信した場合のＡＶ接続装置の処理動作を説明するためのフローチャート。
【図５８】アドレス・ポート番号変換テーブルを用いた、ＩＰアドレスとポート番号の変換処理を具体的に説明するための図。
【図５９】ＡＶ接続装置にて作成される宅内ホームページの一例を示した図。
【符号の説明】
１、３…ＩＥＥＥ１３９４バス
２…公衆網
４、５…ＡＶ接続装置
６、１０…ＰＣ
７…デジタルＴＶ
８…ＤＶＤプレーヤ
９…デジタルＶＴＲ
１１…プリンタ
１２…ホームオートメーション網
１３…エアコン
１４…電子レンジ
２１…１３９４インタフェース
２２…データリンクスイッチ
２３…公衆網インタフェース
２４…ＩＰ処理機能
２５…ＦＡＮＰ処理機能
２６…１３９４／ＩＰサービスロケーション処理機能
２７…サービスロケーション代理機能
２８…１３９４ＡＶコマンド処理機能
２９…１３９４／ＩＰコマンド変換機能
６１、６２…コマンド対応テーブル
７１…サービス代理受信機能
７２…ＣＣＣＰ／ＬＯＮコマンド変換機能
７３…ＬＯＮコマンド発行機能
８１、４０１、４０２…ＰＣ
８２…プロセッサ
８３…メインメモリ
８４…システムバス
８５…２次記憶装置
８６、８７…ＩＥＥＥ１３９４インタフェース
８８…ハードディスク
９０、４３１…プリンタ
９１、４３２…ＦＡＸ
９２、４３３…マッサージ装置
９３、４３４…トースタ
１０１、５０１、６０１…論理デバイス管理機能
１０２、５０２、６０２…２次記憶管装置理機能
１０３、５０３、６０３…１３９４インタフェース管理機能
１０４、６０４…プリンタのｕｎｉｔ１
１０５、６０５…ＦＡＸのｕｎｉｔ１
１０６、６０６…ＦＡＸのｕｎｉｔ２
１０７、６０７…マッサージ装置のｕｎｉｔ１
１０８、６０８…マッサージ装置のｕｎｉｔ２
１０９、５０８…トースタのｕｎｉｔ１
１１１、１１２、５１１、５１２、６１１、６１２…ハードディスク管理機能１１３、１１４、５１３、５１４、６１３、６１４…ＩＥＥＥ１３９４インタフェースのデバイスドライバ
１２１、５２１、６２１…１３９４管理オブジェクト
１２２、５２２、６２２…論理デバイス管理オブジェクト
１３１〜１３５、５３１〜５３４、６３１〜６３５…論理デバイスクラスオブジェクト
１３１−１、１３１−２、１３２−１、１３３−１、１３４−１〜１３４−３、１３５−１、５３３−１、５３３−２、５３４−１、６３１−１、６３１−２、６３２−１、６３３−１、６３４−１、６３４−２、６３５−１、６３５−２…論理デバイスオブジェクト
１５１〜１５６、５５１〜１５３、６５１〜１５５…物理デバイスオブジェクト
１６１〜１６６、５６１〜５６３、６６１〜６６５…ドライバオブジェクト
４１１、４１２…ネットワーク接続装置
４１３…ＩＳＤＮ通信回線
４２１、４２２…１３９４バス
５０４…ＩＰ機能
５７１…１３９４スタブオブジェクト
６８１…１３９４プロキシオブジェクト
１４０１…１３９４Ｉ／Ｆ
１４０２…データリンクスイッチ
１４０３…公衆網Ｉ／Ｆ
１４０４…ＩＰ処理機能
１４０５…ＦＡＮＰ処理機能
１４０６…１３９４／ＩＰサービスロケーション処理機能
１４０７…ホームページ処理機能
１４０８…１３９４ＡＶコマンド処理機能
１４０９…ＨＴＴＰ／ＲＴＳＰ処理機能
１４１０…ＲＴＳＰ対応テーブル
２００１…パーソナルコンピュータ
２００２…プリンタ
２００３…ＤＶＤプレーヤ
２０１０…第１のネットワーク（ホームネットワーク）
２１０１…第２のネットワーク（インターネット）
２１０２…ＩＰ端末装置
２２０１…ＡＶ接続装置
【図１】
0003688464.tif 000002
【図２】
0003688464.tif 000003
【図３】
0003688464.tif 000004
【図４】
0003688464.tif 000005
【図５】
0003688464.tif 000006
【図６】
0003688464.tif 000007
【図７】
0003688464.tif 000008
【図８】
0003688464.tif 000009
【図９】
0003688464.tif 000010
【図１０】
0003688464.tif 000011
【図１１】
0003688464.tif 000012
【図１２】
0003688464.tif 000013
【図１３】
0003688464.tif 000014
【図１４】
0003688464.tif 000015
【図１５】
0003688464.tif 000016
【図１６】
0003688464.tif 000017
【図１７】
0003688464.tif 000018
【図１８】
0003688464.tif 000019
【図１９】
0003688464.tif 000020
【図２０】
0003688464.tif 000021
【図２１】
0003688464.tif 000022
【図２２】
0003688464.tif 000023
【図２３】
0003688464.tif 000024
【図２４】
0003688464.tif 000025
【図２５】
0003688464.tif 000026
【図２６】
0003688464.tif 000027
【図２７】
0003688464.tif 000028
【図２８】
0003688464.tif 000029
【図２９】
0003688464.tif 000030
【図３０】
0003688464.tif 000031
【図３１】
0003688464.tif 000032
【図３２】
0003688464.tif 000033
【図３３】
0003688464.tif 000034
【図３４】
0003688464.tif 000035
【図３５】
0003688464.tif 000036
【図３６】
0003688464.tif 000037
【図３７】
0003688464.tif 000038
【図３８】
0003688464.tif 000039
【図３９】
0003688464.tif 000040
【図４０】
0003688464.tif 000041
【図４１】
0003688464.tif 000042
【図４２】
0003688464.tif 000043
【図４３】
0003688464.tif 000044
【図４４】
0003688464.tif 000045
【図４５】
0003688464.tif 000046
【図４６】
0003688464.tif 000047
【図４７】
0003688464.tif 000048
【図４８】
0003688464.tif 000049
【図４９】
0003688464.tif 000050
【図５０】
0003688464.tif 000051
【図５１】
0003688464.tif 000052
【図５２】
0003688464.tif 000053
【図５３】
0003688464.tif 000054
【図５４】
0003688464.tif 000055
【図５５】
0003688464.tif 000056
【図５６】
0003688464.tif 000057
【図５７】
0003688464.tif 000058
【図５８】
0003688464.tif 000059
【図５９】
0003688464.tif 000060