JP3688464B2 - 端末装置、サーバ装置、通信装置および制御方法 - Google Patents
端末装置、サーバ装置、通信装置および制御方法 Download PDFInfo
- Publication number
- JP3688464B2 JP3688464B2 JP12113998A JP12113998A JP3688464B2 JP 3688464 B2 JP3688464 B2 JP 3688464B2 JP 12113998 A JP12113998 A JP 12113998A JP 12113998 A JP12113998 A JP 12113998A JP 3688464 B2 JP3688464 B2 JP 3688464B2
- Authority
- JP
- Japan
- Prior art keywords
- command
- network
- service
- terminal
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Small-Scale Networks (AREA)
- Communication Control (AREA)
- Telephonic Communication Services (AREA)
- Electric Ovens (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
【発明の属する技術分野】
本発明は、ホームネットワーク環境におけるディレクトリサービス、機器の遠隔操作、あるいは周辺装置を制御する機能を備えたコンピュータ等の通信装置、特に汎用バスに接続された多種の装置を制御する可能性があるコンピュータ等の通信装置、及び該通信装置により行われる通信制御方法、サービス登録方法、サービス提供方法及び装置制御プログラム登録方法に関する。
【0002】
【従来の技術】
(1)近年、マルチメディア技術の発展に象徴されるように、電子機器のデジタル化が急速に進行している。この傾向は、まずオフィス環境で始まっている。ハードウエアの面では、パソコンの導入、OA機器のデジタル化、それらのネットワーク化という形で進行している。ソフトウエアの面では、ホストによる基幹業務(これはライトサイジングされてパソコン等に移行されつつある)や、ワープロ、表計算などのソフトウエア、あるいはWWW等のインターネットアプリケーション等が導入されている。そして、デジタル化の適用分野は益々広まり、その発展はとどまるところを知らない。
【0003】
上記の傾向は、家庭内で使用される機器やその関連分野等においても見られる。すなわち、AV機器のデジタル化(すなわちDVD、デジタルVTR、デジタルビデオカメラ等)、放送のデジタル化、OCN等のインターネットアクセス等の導入など、デジタル化は着実に進行している。
【0004】
オフィス環境を始めとして推し進められてきた上記のような技術革新の波は、今後、ネットワーク化の方向へと向かっていくことが考えられる。すなわち、情報・通信・放送といった種々の分野の技術がデジタル化によって束ねられ、ネットワーク化によって相互乗り入れを始めていくと言われている。
【0005】
これを実現するための基盤となるネットワーク技術としては、種々の候補が考えられる。例えば、イーサネットは、オフィス環境にて圧倒的な実績を持っており、家庭でのパソコンネットワークにおいても、その最有力候補であると言える。また、ATMも有力な候補である。これは、インフラの構築側(電話会社やCATV等)が、高速、リアルタイム、広帯域といったATMの特徴に注目し、この技術を使ってインフラを構築していこうというのが一般的な動きだからである。
【0006】
これらの候補に加えて、最近、IEEE1394なるネットワーク技術(バス技術)が注目を集めている。これは、高速、リアルタイム(QOS保証)、プラグアンドプレイ等の数々の注目すべき特徴を持っており、特にAV機器産業界においてデジタルAV機器同士の接続方式の最有力候補として大変な注目を集めている。また、パソコンなどのコンピュータ産業界においても、この技術への注目が集まりはじめている。
【0007】
さて、情報・通信・放送等のネットワーク化による相互乗り入れは、まず家庭向けのデジタル機器の普及に伴い、ユーザに所望されるネットワーク技術によりそれらデジタル機器を相互接続することで実現されていくであろう。そのようにして徐々に家庭内デジタルネットワークのプロトタイプが生み出されていくと考えられる。
【0008】
そして、その次の段階として、これらのデジタルネットワーク同士を相互に接続したいというニーズが顕在化してくると考えられる。例えば、ユーザ宅の1階の応接間の1394ネットワークに接続されたAV機器と、2階の部屋の1394ネットワークに接続されたAV機器とを、相互接続して、例えばダビング等、協調動作をさせようというようなニーズである。あるいは、ユーザA宅の1394ネットワークに接続された機器aと、ユーザB宅の1394ネットワークに接続された機器bとを協調動作させるような場合である。
【0009】
しかしながら、家庭内あるいは家庭間デジタルネットワーク同士の相互接続を実現するためには、以下のような問題がある。
【0010】
(i)家庭内あるいは家庭間でネットワークを介した機器の制御を行おうという場合に、「ネットワーク上のどの位置に何の機器があるか」あるいは「ネットワーク上でどのようなサービスが提供されているか」とった情報を知るための機構が存在しない。この機構がないと、ユーザは、特定の機器/サービスの存在をネットワーク上で認識することができず、対象機器の操作もしくは制御を行いあるいはサービスの提供を受けることができない。
【0011】
(ii)デジタルネットワーク同士の相互接続においては異なるプロトコルに従う部分が混在するものと想定されるが、異なるプロトコルを越えて操作コマンド等を伝える機構が存在しない。
【0012】
例えばIEEE1394を用いた場合に1394対応機器の他にインターネット対応機器等が混在することが可能であり、必ずしもその使用プロトコルは一致しない。そのような混在状況において遠隔操作を行なおうとした場合、すなわち異なる種別のネットワークを介して対象機器を制御しようとする場合、異なる種別のネットワークではIEEE1394プロトコルを稼動することができないため、操作コマンドの送付が不可能である。
【0013】
また、ゲートウエイを設けて遠隔操作等を実現する方法も考えられるが、この様な場合におけるゲートウエイの設計指針等は存在しない。
【0014】
(2)ところで、近年の急速なパーソナルコンピュータの普及とアプリケーションの多様化に伴い、その周辺機器は、例えばハードディスクのようなストレージ装置やスキャナ、カメラのような入力装置などに多様化しその種類は増え続けている。
【0015】
過去においてはアプリケーションソフトウェアと周辺機器ハードウェアの両方の汎用性がなく、周辺機器は特定のアプリケーションからのみ使用でき、他から利用できない不便さがあった。この障害は現在では主として次の3つの技術によりかなりの部分解消されている。その技術とはハードウェアの制御の違いを吸収するドライバと呼ばれるソフトウェアと、必要に応じてドライバを読み込みオペレーティングシステム(以下、OSと呼ぶ)に組み込むことのできるローダブルドライバの技術、そして接続された周辺機器をコンピュータ自身が検出して適切なドライバを組み込むプラグアンドプレイの技術である。
【0016】
これにより周辺機器とアプリケーションプログラムとがともに汎用性が高まり、利用者の利便性が向上するとともに、汎用性にともなう量産効果によって価格も低下する正のフィードバックを生む結果となった。もちろんパーソナルコンピュータにおいてはハードウェア自体、ISA、PCIなどのバス規格、IDEやSCSIといったストレージ装置の接続規格によって標準化されて来たこともこれを助けている。
【0017】
最近ではUSB(Universal serial Bus)やIEEE1394といった接続作業と配線の取り回しが容易な周辺装置の接続規格が採用されつつある。これらは数対のより対線の接続なので簡易なネットワークとしても利用が可能である。IEEE1394は過去のコンピュータのシステムバスに匹敵する高速な転送能力を備え、画像伝送が可能なことからTV、ビデオなどの家電機器の接続規格としても有力である。また、IEEE1394規格では制御は全てIEC1212(ANSI/IEEE Std 1212 Controland Status Register(CSR) Architecture for Microcomputer Buses[ISO/IEC13213])で規格化された64ビット形式のアドレス空間にマッピングされたレジスタに対する読み書きによって行われる。このため、ストレージデバイスで多く使われているSCSI規格と同様に制御するホストプロセッサのアーキテクチャに依存しないインターフェースを周辺機器が持つことができる。
【0018】
一方、上記した汎用化が利点となる前提条件は多種の周辺機器に対応したドライバがOSとともに提供されることである。これにはOSのベンダと周辺機器のベンダがともに大きな労力を割かねばならない。実際、Microsoft社のオペレーティングシステム、Windows95では40枚に及ぶフロッピーディスクに多種のドライバが収納されている。もちろんこの全てがドライバではないものの、全体に占める割合は少なくない。ドライバソフトのソフトウェアはOSに依存するため、ソフトベンダはOSごとにドライバを用意しなければならない。デバイスドライバは一般にOSのメモリ管理と密接に関連して動作しているためである。OS自体がホストプロセッサのアーキテクチャに依存する部分の大きいことはいうまでもない。
【0019】
デバイスドライバの汎用性を高める試みとして、SCSIやIEEE1394、USBで実現されているように、周辺機器との通信や制御に汎用のプロトコルを使う方法がある。OSがSCSIやIEEE1394のパケットを送信するドライバを提供し、そのドライバを利用して機器固有のデバイスドライバがそれぞれの周辺機器を制御する方式である。この方式をとれば同一のOSではSCSIやIEEE1394などの装置接続インタフェースが異ってもSCSI HDやプリンタなどの装置固有の制御を行う部分のドライバは共通に使うことができる。
【0020】
このような汎用の接続装置アーキテクチャにもいくつかの方法がある。SCSIでは通信に加えて制御コマンドのプロトコルも規定されている。IEEE1394では通信方法は規定されているが、制御のコマンドまでは規定せず、さまざまな制御プロトコルを持つ機器の余地を残している。
【0021】
また、IEEE1394には汎用入出力バスとしての側面の他にネットワークとして利用できる側面があり、IEEE1394バス上へのインターネットプロトコルのマッピングも提案されている(DAVIC IP over IEEE1394.1995 Specifications,1996)。しかしながら通信ネットワークの面と入出力バスとしての面を統合したインタフェースは未だ実現されていない。
【0022】
さて、OSがそれぞれの機器に対応するドライバを読み込むことでさまざまな周辺機器が利用可能になっている。しかし、デバイスドライバ自体はOSに依存しており、汎用性を持たないために種々のOS毎にそれぞれ対応のドライバの開発が必要であった。このため周辺機器ベンダによるデバイスドライバの開発が特定の良く普及したOSに限られてしまう問題があった。この結果として、デバイスドライバの開発がある特定のOSに集中し、他のOSで使えないデバイスが増加している。これはOSの用途に合わせた多様化を妨げることになり、利用者の利便性を損うものである。
【0023】
もう一つの問題は周辺装置が多様化することによって、利用しない装置のドライバや、上位プロトコルに対応するAPIにOSの資源が占有されてしまうことである。
【0024】
また、IEEE1394では周辺機器制御バスのみならず、ネットワーク的な利用形態も考えられる。ネットワーク的に利用される場合、制御する側のPCが予め接続される装置をすべて把握することは困難であり、接続されている装置に応じて利用法を決定できることと、同一のIEEE1394バスに複数のPCが接続されているとき、どちらのPCが制御権を持つかを決定することが要求される。しかし、これを解決しているシステムは従来は存在しなかった。
【0025】
また、電話網や広域ネットワークを通じて遠隔にあるIEEE1394装置を制御できるシステムも従来は存在しなかった。
【0026】
【発明が解決しようとする課題】
従来、家庭内あるいは家庭間デジタルネットワーク同士を相互接続し、ネットワークを介した機器の制御を行おうとしても、
(1)ネットワーク上に存在する各機器の位置あるいはネットワーク上で提供されているサービスに関する情報を知るための技術がなく、ユーザは、特定の機器/サービスの存在をネットワーク上で認識することができず、対象機器の操作もしくは制御を行いあるいはサービスの提供を受けることができなかった。また、デジタルネットワーク同士の相互接続において異なるプロトコルに従う部分が混在する場合、異なるプロトコルを越えて操作コマンド等を伝える技術がなく、ユーザは、異なるプロトコルを越えた対象機器の操作もしくは制御を行いあるいはサービスの提供を受けることができなかった。
【0027】
(2)さらに、近い将来、家庭内にも種々のインターネット処理機能を持った、いわゆる情報家電が入り込んでくると考えられているが、現在のインターネットは深刻なアドレス不足に悩んでいる。家庭内に入り込んでくる家電機器は、非常に多くの数になるものと考えられ、これら全てに新たにIPアドレスを考えるのは非現実的である。そこで、以下のような2つの方法が提案されている。
【0028】
・家庭内はプライベートIPアドレスを用いる。
【0029】
・家庭内は、IPv6(IPバージョン6)アドレスを用いる。
【0030】
しかしながら、実際のインターネット(公衆網)はIPv4(IPバージョン4)で運用されているのが現実であり、上記のような方法を取った場合、インターネット上から家庭内の機器へアクセスする方法が無い。この問題に対する対処方法としては、NAT(ネットワークアドレス変換)やIPマスカレードが知られているが、これらを用いたとしても、インターネット(公衆網)上のユーザは、家庭内の種々の機器のアドレスを、実際にそれらの操作を行おうとする以前に認識する必要があるが、これを実現するメカニズムは無い。
【0031】
(3)また、従来、デバイスドライバはOSに依存しており汎用性を持たないために、種々のOS毎にそれぞれ対応のドライバの開発が必要である問題点があった。また、周辺装置が多様化することによって、予めデバイスドライバを豊富に内蔵しておくことが良く行われるが、利用しない装置のデバイスドライバや、上位プロトコルに対応するAPIにOSの資源が無駄に占有されてしまう問題点があった。
【0032】
本発明は、上記事情を考慮してなされたもので、上記第1の問題点を解決するために、特定のネットワークに依存せず、統一的なサービス提供環境を実現することが可能な通信装置、サービス登録方法およびサービス提供方法を提供することを目的とする。
【0033】
また、上記第2の問題点を解決するために、本発明は、アドレス体系の異なるネットワーク(例えば、IPv4とIPv6、プライベートアドレスとIPv4、プライベートアドレスとIPv6等)を相互接続した場合でも、各ネットワークにおいて提供されているサービスを他のネットワークからでもアクセス可能にする通信装置を提供することを目的とする。
【0034】
また、上記第3の問題点を解決するために、本発明は、OSやハードウェアに依存せず、必要の生じた時点で装置制御プログラムを登録することの可能な通信装置および装置制御プログラム登録方法を提供することを目的とする。
【0035】
【課題を解決するための手段】
(1)本発明は、単一アドレス空間にマップされたレジスタの操作を行う通信手段と、自装置に関する構成情報を記憶する構成情報記憶手段(コンフィグレーションメモリ)とを備えた通信装置(例えば、パーソナル・コンピュータ等)であって、前記構成情報記憶手段には、自装置(当該通信装置)上で稼動するサービスに関する情報を動的に記述することを特徴とする。
【0036】
本発明によれば、通信装置を介して通信される他ノードは、この構成情報記憶手段をアクセスすることによって、その時点でその通信装置がサービスしているアプリケーションをタイムリに認識することができ、網構成のディレクトリサービスや、移動ノードのサービス検出が可能となり、網の運用の柔軟性が向上する。特に、動的に稼動サービスが変化する場合や、サービスがソフトウエアにより実現される場合には、ソフトウエアのインストールや、バージョンアップ等に伴い、そのサービスの稼動の動的変化はより激しいものとなるため、サービス構成情報を動的に変化させることの有効性は極めて大きなものとなる。
【0037】
(2)本発明は、単一アドレス空間にマップされたレジスタの操作を行う通信手段と、自装置に関する構成情報を記憶する構成情報記憶手段(コンフィグレーションメモリ)とを備えた通信装置(例えば、パーソナル・コンピュータ等)であって、前記構成情報記憶手段には、自装置(当該通信装置)上で稼動するサービスに関する情報と、自装置の属性に関する情報(例えば、ベンダID、ノードケーパビリティー等)とを併せて記述することを特徴とする。
【0038】
本発明によれば、通信装置を介して通信される他ノードに対して、サービスをベースとした構成情報と、装置をベースとした構成情報の両方を通知することができ、該他ノードがその通信装置が接続されるネットワークのディレクトリ情報を構成する際に、サービス別の構成情報とするか、装置別の構成情報とするかの選択をより簡略化するのに有効である。これは、サービス別の操作・検索になれているユーザと、装置別の操作・検索になれているユーザの両方が存在するため、その両方に対応するために、特に有益である。
【0039】
(3)本発明は、単一アドレス空間にマップされたレジスタの操作を行う第1の通信手段と、自装置に関する構成情報を記憶する構成情報記憶手段(コンフィグレーションメモリ)とを備えた通信装置(例えば、パーソナル・コンピュータ等)であって、前記構成情報記憶手段には、自装置(当該通信装置)に前記第1の通信手段とは異なる第2の通信手段を介して接続されたネットワークに関する構成情報(例えば、端末の情報、サービスの情報)の少なくとも一部を記述することを特徴とする。
【0040】
本発明によれば、第1の通信手段に接続された当該通信装置以外のノードは、当該通信装置に第2の通信手段に接続されたネットワーク構成情報を、この構成情報記憶手段を通して認識することが可能となり、この結果、相互接続されたネットワーク全体の構成情報を、第1の通信手段を介した構成情報記憶手段を通して認識することが可能となり、よって、網管理、網サービス登録などの仕組み、手間の簡略化を図ることが可能となる。
【0041】
(4)本発明は、接続されたネットワーク内に存在するディレクトリエージェントにサービスを登録する通信装置(例えば、パーソナル・コンピュータ等)であって、接続された前記ネットワークのデータリンクに依存するプロトコルで通信する、電子的装置(例えば、周辺機器、AV機器、家電機器等)のサービスを、該電子的装置に代わって前記ディレクトリエージェントに登録する手段を備えたことを特徴とする。
【0042】
本発明によれば、ディレクトリエージェントは、それが稼動するプロトコル(例えばIP等のネットワークレイヤプロトコル等)のディレクトリサービスに対して、データリンクレイヤプロトコル(例えばIEEE1394レイヤ等)で提供されるサービス(例えばIEEE1394のAV/Cプロトコル等)を登録することが可能となり、この結果、ディレクトリエージェントもしくはディレクトリサービスは、ネットワーク上で展開されているサービスを、その提供レイヤの区別なく、検索されることが可能となり、ネットワーク利用者の利便性の向上と、柔軟性の向上を同時に図ることが可能となる。
【0043】
(5)本発明は、接続されたネットワーク内のユーザエージェントからの問い合わせに応じてサービスに関する情報を通知する通信装置(例えば、パーソナル・コンピュータ等)であって、接続された前記ネットワークのデータリンクに依存するプロトコルで通信する、電子的装置(例えば、周辺機器、AV機器、家電機器等)のサービスを、該電子的装置に代わって前記ユーザエージェントに通知する手段を備えたことを特徴とする。
【0044】
本発明によれば、ユーザエージェントは、それが稼動するプロトコル(例えばIP等のネットワークレイヤプロトコル等)のサービスロケーションサービスに対して、データリンクレイヤプロトコル(例えばIEEE1394レイヤ等)で提供されるサービスに関する情報を得ることが可能となり、この結果、ユーザエージェントもしくはサービスロケーションサービスは、ネットワーク上で展開されているサービスを、その提供レイヤの区別なく検索することが可能となり、ネットワーク利用者の利便性の向上と柔軟性の向上を同時に図ることができる。
【0045】
(6)本発明は、上記(4)または(5)に記載の通信装置において、ディレクトリエージェントへの登録またはユーザエージェントへの通知の際に、登録または通知する前記サービスへのアクセスのためのポートとして、自装置(例えば、パーソナル・コンピュータ等)の論理多重識別子を登録または通知することを特徴とする。
【0046】
このようにすれば、前記通信装置は、その論理多重識別子へのアクセスがあった場合には、前記電子的装置のサービスへのアクセスであることを認識することが可能となり、そのサービスを実際に実現するための適切な処理を施すことが可能となる。
【0047】
一方、ディレクトリエージェントは、前記電子的装置のサービスへのアクセスポイントとして、この論理多重識別子を応答することが可能となり、もってサービスの提供レイヤを問わない統一的なディレクトリサービスを提供することが可能となる。
【0048】
また、ユーザエージェントは、前記電子的装置のサービスへのアクセスポイントとして、この論理多重識別子を通知された場合、レイヤを問わず、そのサービスがこの論理多重識別子を通じて提供されるものと認識することとなり、ネットワーク全体で、レイヤを問わない、統一的なサービス提供体制を提供することが可能となる。
【0049】
(7)本発明は、上記(6)に記載の通信装置において、前記論理多重識別子で指定されたポートにコマンドが到達した場合に、このコマンドを、それに対応する前記データリンクに依存するプロトコルのコマンドに変換して、前記電子的装置(例えば、周辺機器、AV機器、家電機器等)に送信することを特徴とする。
【0050】
このようにすれば、前記通信装置は、その論理多重識別子へのアクセスがあった場合には、前記電子的装置のサービスへのアクセスであることを認識し、実際にそのサービスを提供している実体に、その提供データリンクのプロトコルに合致したコマンド変換をした上で、そのコマンド送出を行うこと、すなわちサービス要求を行うことが可能となり、もって、全体の「サービス要求→サービス実現」の手順の実現を図ることが可能となる。
【0051】
また、ユーザエージェントは、前記電子的装置のサービスへのアクセスは、あくまで、そのコマンドを記述したレイヤで行われるものと認識していることとなるため、処理の単純化、すなわち該レイヤでのサービスアクセスの環境さえ整えておけば、該ネットワーク上の種々のサービスへのアクセスが可能となることを意味し、該ネットワークのサービス提供環境の単純化、効率化、統一化の各々に寄与することが可能となる。
【0052】
(8)本発明は、上記(6)に記載の通信装置において、前記論理多重識別子のポートに到達したコマンドを、該コマンドに対応する前記データリンクに依存するプロトコルのコマンドにマッピングするための対応テーブルを有することを特徴とする。
【0053】
このようにすれば、前記通信装置は、その論理多重識別子へのアクセスがあった場合のコマンド変換を、あらかじめ決められた手順で行うことが可能となり、これによって、前記電子的装置のサービスへのアクセスであることを認識し、実際にそのサービスを提供している実体に、その提供データリンクのプロトコルに合致したコマンド変換をした上で、そのコマンド送出を行うこと、すなわちサービス要求を行うことが可能となり、もって、全体の「サービス要求→サービス実現」の手順の実現を図ることが可能となる。
【0054】
また、ユーザエージェントは、前記電子的装置のサービスへのアクセスは、あくまで、そのコマンドを記述したレイヤで行われるものと認識していることとなるため、処理の単純化、すなわち該レイヤでのサービスアクセスの環境さえ整えておけば、該ネットワーク上の種々のサービスへのアクセスが可能となることを意味し、該ネットワークのサービス提供環境の単純化、効率化、統一化の各々に寄与することが可能となる。
【0055】
(9)本発明は、第1の通信手段に従えば通信できず、第2の通信手段に従えば通信可能な電子的装置と、第1の通信手段および第2の通信手段のいずれに従っても通信可能な電子的装置とが接続される可能性のあるネットワークに接続された通信装置におけるサービス登録方法であって、前記第1の通信手段を通じて前記電子的装置夫々から提供されるサービスに関する情報の登録を受け付け、前記第2の通信手段により存在が認識された電子的装置で、かつ、前記第1の通信手段を通じての前記通知がなかったものについて、登録すべき該電子的装置夫々により提供されるサービスに関する情報を前記第2の通信手段を用いて取得し、通知された前記サービスに関する情報および取得された前記サービスに関する情報をもとに、前記ネットワーク上のサービスディレクトリ情報を構成することを特徴とする。
【0056】
(10)本発明は、第1のプロトコルに従えば通信できず、第2のプロトコルに従えば通信可能な少なくとも1つの電子的装置が接続された通信装置におけるサービス提供方法であって、前記電子的装置により提供されるサービスへのアクセスのためのポートとして前記第1のプロトコルに従う自装置の論理多重識別子を割り当て、前記論理多重識別子で指定されたポートにコマンドが到達した場合に、このコマンドを、前記第2のプロトコルに従うコマンドに変換して、前記電子的装置に送信することを特徴とする。
【0057】
(11)本発明は、単一アドレス空間にマップされたレジスタの操作を行う通信手段と、前記通信手段によって認識された電子的装置(例えば、周辺機器、AV機器、家電機器等)の属性情報(例えば、uniqe ID、unit ID、capability等)を入手する入手手段と、前記通信手段に対して前記単一アドレス空間上のレジスタの操作を行う指示を発行することによって前記電子的装置を制御する装置制御プログラム(デバイスドライバソフト)の登録(OSへの組み込み)を、入手された前記電子的装置の属性情報に基づいて動作中に行う登録手段とを備えたことを特徴とする。
【0058】
本発明によれば、前記装置制御プログラムがいわゆるデバイスドライバの役割を果たすことになるが、本発明によれば、単一アドレス空間にマップされたレジスタの操作を行う通信手段によって入手された電子的装置の属性情報に基づいて、前記単一アドレス空間上のレジスタの操作を行う指示を発行することによって前記電子的装置を制御する装置制御プログラムを登録するので、動作中に必要に応じて、ドライブする対象の属性にあわせた装置制御プログラムをOSに組み込むことができる。
【0059】
また、装置制御プログラムがネットワークローダブルな形(例えばJAVA言語で記述された形)で提供されれば、OSの種別やハードウエアの種別を問わずに、装置制御プログラムの登録を行うことが可能となる。
【0060】
(12)本発明は、上記(11)に記載の通信装置において、前記登録手段は、前記入手手段により入手された前記電子的装置の属性情報に基づいて入手すべき装置制御プログラムの識別名を求める手段と、求められた前記識別名に基づいて、該当する装置制御プログラムを入手する手段とを有することを特徴とする。
【0061】
このようにすれば、前記電子的装置の属性に適合した装置制御プログラムを、必要に応じて入手し、デバイスドライバとして使用することができる。
【0062】
(13)本発明は、上記(11)または(12)に記載の通信装置において、前記電子的装置の属性情報は、前記電子的装置内の予め定められた構成情報記憶領域(例えば、コンフィグレーションROM、あるいはコンフィグレーション・メモリ)に記述されたものであり、前記入手手段は、前記構成情報記憶領域に記述された内容を読み取ることで前記属性情報を入手することを特徴とする。
【0063】
このように前記電子的装置の属性情報を当該電子的装置内の構成情報記憶領域を読み取ることで入手するようにすれば、構成情報記憶領域には通常そのデバイスの属性情報が記述されていることが期待され、適当な装置制御プログラムを入手するのための手がかりとなる適切な情報が得られることが期待される。
【0064】
(14)本発明は、上記(11)乃至(13)のいずれか1項に記載の通信装置において、前記単一アドレス空間は、IEEE1394バスの形で提供されることを特徴とする。
【0065】
IEEE1394バスは単一メモリ空間を実現するバスとして解釈することが可能であることから、上記機構をそのまま採用することが可能であり、本来困難であったネットワークのデバイスドライバのネットワークを介した動的ローディングが可能になり、ユーザの利便性を飛躍的に高めることができる。
【0066】
(15)本発明は、上記(12)乃至(14)のいずれか1項に記載の通信装置において、前記装置制御プログラムの識別名として、外部ネットワークの特定の資源を指示可能な識別名を用いることを特徴とする。
【0067】
このように、前記電子的装置の装置制御プログラムをネットワークローダブルとすれば、必要に応じて外部ネットワークから入手することが可能になり、前記通信装置は、あらかじめ想定される全ての装置制御プログラムを持たなければいけないという制約条件から開放され、ディスクやOSの容量の節約、ソフトウエアのバージョンアップ等、様々な利点を享受することが可能となる。
【0068】
好ましくは装置制御プログラムはJAVA言語等で記述されたものである。
【0069】
(16)本発明は、単一アドレス空間にマップされたレジスタの操作を行う手段により所定の電子的装置と通信可能な他の通信装置(第2の通信装置)との間での通信が、論理ネットワークを利用した通信手段によって可能である通信装置(第1の通信装置)であって、前記通信手段を通じて前記他の通信装置(第2の通信装置)に対して前記電子的装置(例えば、パーソナル・コンピュータ、周辺機器、AV機器、家電機器等)の属性情報(例えば、uniqe ID、unit ID、capability等)の取得を要求する手段と、前記電子的装置を制御する装置制御プログラム(デバイスドライバソフト)の登録(OSへの組み込み)を、前記要求により前記他の通信装置から入手した前記電子的装置の属性情報に基づいて動作中に行う手段と、前記他の通信装置(第2の通信装置)との間で前記通信手段を通じて前記単一アドレス空間上のレジスタの操作を行う指示に関する情報を送受信する手段とを備えたことを特徴とする。
【0070】
本発明によれば、制御主体である通信装置(第1の通信装置)は、論理ネットワークを通じて接続された他の通信装置(第2の通信装置)を仲介として前記電子的装置を利用するための機能を持つことができ、単一アドレス空間上のレジスタの操作を行う制御プログラムを変更することなく単一アドレス空間上にマップされたレジスタの操作を行う手段に限らず論理ネットワークを通じて遠隔の電子的装置を制御することが可能になる。
【0071】
好ましくは、前記要求により前記他の通信装置から入手した前記電子的装置の属性情報に基づいて動作中に行う手段は、入手された前記電子的装置の属性情報に基づいて入手すべき装置制御プログラムの識別名を求める手段と、求められた前記識別名に基づいて、該当する装置制御プログラムを入手する手段とを有するようにしても良い。
【0072】
また、好ましくは、前記電子的装置の属性情報は、前記電子的装置内の予め定められた構成情報記憶領域に記述されたものであり、前記属性情報は前記他の通信装置(第2の通信装置)により前記構成情報記憶領域に記述された内容を読み取られることで入手されたものであっても良い。
【0073】
また、好ましくは、前記単一アドレス空間は、IEEE1394バスの形で提供されても良い。
【0074】
また、好ましくは、前記装置制御プログラムの識別名として、外部ネットワークの特定の資源を指示可能な識別名を用いても良い。
【0075】
(17)本発明は、通信装置の動作中に装置制御プログラムを登録する装置制御プログラム登録方法であって、単一アドレス空間にマップされたレジスタの操作を行う所定の通信手段によって認識された電子的装置の属性情報を入手し、前記通信手段に対して前記単一アドレス空間上のレジスタの操作を行う指示を発行することによって前記電子的装置を制御する装置制御プログラムの登録を、入手された前記電子的装置の属性情報に基づいて動作中に行うことを特徴とする。
【0076】
なお、以上の各装置に係る発明は方法に係る発明としても成立する。
【0077】
また、上記の発明は、相当する手順、機能あるいは手段をコンピュータに実行させるためのプログラムを記録した機械読取り可能な媒体としても成立する。
【0078】
(18)本発明の通信装置は、第1のネットワークに接続して該第1のネットワークに依存するプロトコルで通信するサービス提供装置を第2のネットワークを介して制御するための通信装置において、前記サービス提供装置を制御するための前記第1のネットワークの通信プロトコルに依存する第1のコマンドに対応する前記第2のネットワークの通信プロトコルに依存する第2のコマンドに関する情報を少なくとも前記第2のネットワークを介して提供する提供手段と、この提供手段で提供された第2のコマンドを含むメッセージを前記第2のネットワークを介して受信する受信手段と、この受信手段で受信されたメッセージに含まれる第2のコマンドを前記第1のコマンドに変換し、該第1のコマンドで前記サービス提供装置を制御する制御手段と、を具備したことにより、特定のネットワークに依存せず、統一的なサービス提供環境を実現することが可能となる。
【0079】
(19)本発明の通信装置は、第1のネットワークに接続して該第1のネットワークに依存するプロトコルで通信するサービス提供装置を第2のネットワークを介して制御するための通信装置において、前記サービス提供装置の提供するサービスに関する情報を収集する収集手段と、この収集手段で収集されたサービスに関する情報に対応する前記サービス提供装置を制御するための前記第1のネットワークの通信プロトコルに依存する第1のコマンドに対応する前記第2のネットワークの通信プロトコルに依存する第2のコマンドに関する情報を少なくとも前記第2のネットワークを介して提供する提供手段と、この提供手段で提供された第2のコマンドを含むメッセージを前記第2のネットワークを介して受信する受信手段と、この受信手段で受信されたメッセージに含まれる第2のコマンドを前記第1のコマンドに変換し、該第1のコマンドで前記サービス提供装置を制御する制御手段と、を具備したことにより、特定のネットワークに依存せず、統一的なサービス提供環境を実現することが可能となる。
【0080】
(22)本発明の通信装置は、第1のネットワークに接続して該第1のネットワークに依存するプロトコルで通信するサービス提供装置を第2のネットワークを介して制御するための通信装置において、前記サービス提供装置を制御するための前記第1のネットワークの通信プロトコルに依存する第1のコマンドを発行するためのホームページを前記第2のネットワークを介して提供する提供手段と、この提供手段で提供された前記ホームページに基づくメッセージを前記第2のネットワークを介して受信する受信手段と、この受信手段で受信されたメッセージに基づき発行された前記第1のコマンドで前記サービス提供装置を制御する制御手段と、を具備したことにより、ホームページを受信し操作を行うユーザは、第1のネットワークに接続されたサービス提供装置のプロトコルが何であるかを問わず、具体的にはIEEE1394に接続されるAV機器のように、リンクレイヤ技術に依存するプロトコルしか解釈しない機器についても、遠隔制御を行うことが可能となる。
【0081】
(23)本発明の通信装置は、第1のネットワークに接続して該第1のネットワークに依存するプロトコルで通信するサービス提供装置を第2のネットワークを介して制御するための通信装置において、前記サービス提供装置の提供するサービスに関する情報を収集する収集手段と、この収集手段で収集されたサービスに関する情報に対応する前記サービス提供装置を制御するための前記第1のネットワークの通信プロトコルに依存する第1のコマンドを発行するためのホームページを前記第2のネットワークを介して提供する提供手段と、この提供手段で提供された前記ホームページに基づくメッセージを前記第2のネットワークを介して受信する受信手段と、この受信手段で受信されたメッセージに基づき発行された前記第1のコマンドで前記サービス提供装置を制御する制御手段と、を具備したことにより、ホームページを受信し操作を行うユーザは、第1のネットワークに接続されたサービス提供装置のプロトコルが何であるかを問わず、具体的にはIEEE1394に接続されるAV機器のように、リンクレイヤ技術に依存するプロトコルしか解釈しない機器についても、遠隔制御を行うことが可能となる。
【0082】
(24)本発明の通信装置は、第1のネットワークに接続して該第1のネットワークに依存するプロトコルで通信するサービス提供装置を第2のネットワークを介して制御するための通信装置において、前記サービス提供装置の提供するサービスに関する情報を収集する収集手段と、この収集手段で収集されたサービスに関する情報に基づき前記サービス提供装置を制御するための前記第1のネットワークの通信プロトコルに依存する第1のコマンドを発行するためのホームページを作成する作成手段と、この作成手段で作成されたホームページを前記第2のネットワークを介して提供する提供手段と、この提供手段で提供された前記ホームページに基づくメッセージを前記第2のネットワークを介して受信する受信手段と、この受信手段で受信されたメッセージに基づき発行された前記第1のコマンドで前記サービス提供装置を制御する制御手段と、を具備したことにより、ホームページを受信し操作を行うユーザは、第1のネットワークに接続されたサービス提供装置のプロトコルが何であるかを問わず、具体的にはIEEE1394に接続されるAV機器のように、リンクレイヤ技術に依存するプロトコルしか解釈しない機器についても、遠隔制御を行うことが可能となる。
【0083】
(25)なお、本発明の通信装置は、前記サービス提供装置の提供するサービス毎に予め定められた前記第1のコマンドに対応する該サービス提供装置を制御するための前記第2のネットワークの通信プロトコルに依存する第2のコマンドを登録したテーブルを具備し、前記収集手段で収集されたサービスに関する情報に対応する第2のコマンドに関する情報を該テーブルから取得して前記ホームページを作成することにより、ホームページには、第2のコマンド情報(遠隔制御コマンド)により実現できるサービス提供装置の遠隔制御の一覧を表示することが可能になり、もって運用可能な遠隔制御方法を列挙したホームページを作成することが可能になる。
【0084】
(26)また、本発明の通信装置は、前記メッセージは、前記サービス提供装置を制御するための前記第2のネットワークの通信プロトコルに依存する第2のコマンドを含み、前記制御手段は、前記第1のコマンドと前記第2のコマンドとの対応テーブルを参照して前記受信手段で受信されたメッセージに含まれる第2のコマンドを前記第1のコマンドに変換することにより、特定の第2のコマンド情報(遠隔制御コマンド)を前記受信手段を介して受信した場合に、それがどのような動作を第1のネットワークの所望の装置(この場合第1のネットワークに接続されたサービス提供装置)に行えばいいのかを、上記対応テーブルを参照すればわかるようになる。
【0085】
(27)また、本発明の通信装置は、前記メッセージは、前記サービス提供装置を制御するための前記第2のネットワークの通信プロトコルに依存する第2のコマンドと、前記第2のネットワークの通信プロトコルに依存するアドレスと、前記第1のネットワークに依存する前記サービス提供装置を特定するための多重識別子とを含み、前記制御手段は、前記第1のコマンドと前記第2のコマンドとの対応テーブルを参照して前記受信手段で受信されたメッセージに含まれる第2のコマンドを前記第1のコマンドに変換し、該第1のコマンドで前記多重識別子にて識別されるサービス提供装置を制御することにより、ホームページを受信したノードは、第2のコマンド情報(遠隔制御コマンド)として、ハイパーリンク参照された対象に働きかけることによって、制御対象である前記第1のネットワークに接続されたサービス提供装置を指定し、その所望の動作を指定することが可能となり、もって所望の前記第1のネットワークに接続されたサービス提供装置の遠隔操作を行うことが可能になる。
【0086】
(28)また、本発明の通信装置は、前記ホームページは、前記サービス提供装置を制御するための前記第2のネットワークの通信プロトコルに依存する第2のコマンドを含むメッセージを生成するためのプログラムを含み、前記制御手段は、前記第1のコマンドと前記第2のコマンドとの対応テーブルを参照して前記受信手段で受信されたメッセージに含まれる第2のコマンドを前記第1のコマンドに変換し、該第1のコマンドでサービス提供装置を制御することにより、ホームページを受信したノードは、それに対応付けられたプログラム(JAVAプログラム)を起動させ、制御対象である前記第1のネットワークに接続されたサービス提供装置を指定し、その所望の動作を指定するコマンドを発行させることが可能となり、もって所望の前記第1のネットワークに接続されたサービス提供装置の遠隔操作を行うことが可能になる。
【0087】
(29)また、本発明の通信装置は、前記制御手段は、前記受信手段で受信されたメッセージにて前記第1のコマンドを発行するためのプログラム(例えば、CGIスクリプト)を起動することにより、ホームページを受信したノードは、それに対応付けられたプログラム(CGIスクリプト)を起動させ、制御対象である前記第1のネットワークに接続されたサービス提供装置を指定し、その所望の動作を指定するコマンドを発行せせることが可能となり、もって所望の前記第1のネットワークに接続されたサービス提供装置の遠隔操作を行うことが可能になる。
【0088】
(30)また、本発明の通信装置は、前記メッセージには、情報を送信する際の通信プロトコルを指定する情報が含まれていることにより、前記ホームページを受信した相手ノードからの要求を受けて情報を送信する際に、その送出方法を特定することが出来るようになり、もって送信相手に確実に情報を送り届けることが出来るようになる。これは、送信すべき相手が、ネットワークレイヤパケットの受信能力の無い場合に特に有効である。また、送信情報を受信するノードが第2のコマンド情報(遠隔制御コマンド)と同一のネットワークレイヤプロトコルをサポートしていない場合や、送信情報のネットワークレイヤプロトコルへのカプセル化に多大なコストがかかる場合などにおいて、ネットワークレイヤプロトコル以外での情報送信を前記ホームページを受信した装置は促すことが可能になる。
【0089】
さらに、前記メッセージに、情報を送信する際の通信プロトコルを指定する情報の他に、情報を送信する際の該通信プロトコルに依存するヘッダ情報が含まれていてもよい。
【0090】
(35)本発明の通信装置(第5の実施形態)は、第1のネットワークと第2のネットワークに接続される通信装置であって、前記第1のネットワーク上の任意の装置の第1の論理多重識別子で提供されるサービスに第2の論理多重識別子を割り当て、前記第1の論理多重識別子とそのサービスを提供する前記第1のネットワーク上の装置の第1のアドレスと、前記第2のネットワークからアクセス可能な第2のアドレスと前記第2の論理多重識別子との対応関係を記憶する記憶手段と、前記第1の論理多重識別子の各サービスを前記第2のネットワークから前記第2のアドレスと前記第2の論理多重識別子とでアクセスできるサービスとして提示する提示手段と、前記記憶手段に記憶された対応関係に基づき、前記第1および第2のネットワーク間で前記提示手段で提示された前記第1のネットワーク上のサービスを提供するためのパケット転送を行うことにより、第1のネットワークが、第2のネットワークと異なるアドレス体系、例えば第2のネットワークがIPv4のアドレス体系で運用されている場合に、第1のネットワークがIPv6のアドレス体系で運用される場合や、第1のネットワークがプライベートIPアドレスの体系で運用されている場合などにおいて、第2のネットワークのユーザに対して、第1のネットワークで提供されているサービスへのアクセスを実現することができる。
【0091】
即ち、第2のネットワークのユーザに対しては、前記提示手段としての例えばホームページを用いて、前記第1のネットワークで提供されているサービスが本通信装置が提供しているものとして、第2のネットワークに対して提示する。前記第2のネットワークのユーザからのこのサービスへのアクセスがあった場合は、前記記憶手段に記憶された対応関係(アドレス・ポート番号変換テーブル)を用いて、前記第2のネットワークのユーザと本通信装置間のパケットを、本通信装置と前記第1のネットワークで提供されているサービス間のパケットに変換することで、前記第2のネットワークのユーザ、及び前記第1のネットワークで提供されているサービスからは透過的なパケットのやり取りを行っていると認識されることになる。
【0092】
(36)前記第1のネットワーク上の前記第1の論理多重識別子と各サービスを提供する装置の第1のアドレスを収集する収集手段をさらに具備したことにより、前記第1のネットワークのサービスについての収集情報をもとに、前記提示手段としての例えばホームページの自動更新を行うことが可能となる。
【0093】
(37)前記第2のネットワークから入力されるパケットのうち前記第1のネットワークへ転送可能なパケットの識別子を記憶する第2の記憶手段と、前記第2のネットワークから入力されるパケットのうち、前記記憶手段に記憶された識別子を有するパケットのみ前記第1のネットワークへ出力する出力手段と、を具備したことにより、予めユーザ認証を行うなどして、公衆網等の外部ネットワークから前記第1のネットワークへの不正パケットの侵入を防ぐことができる。
【0094】
【発明の実施の形態】
以下、図面を参照しながら発明の実施の形態を説明する。
【0095】
(第1の実施形態)
図1に本実施形態に係るシステムの構成例を示す。
【0096】
本実施例では図1に示すように公衆網2を介して2つの家庭内ネットワークが相互接続されているものとする。公衆網2は、電話網でもよいし、ISDN等の広い帯域の回線、あるいは専用線のようなものであってもよいし、インターネットであってもよい。ただし、好ましくは、サービスの利用・提供に必要な通信帯域を満足する網を利用する。
【0097】
第1の家庭内ネットワークは、第1のIEEE1394バス1から構成されている。また、このIEEE1394バス1には第1のAV接続装置4、パーソナル・コンピュータ(以下、PC)6、デジタルTV7が接続されているものとする。
【0098】
第2の家庭内ネットワークは、第2のIEEE1394バス3と、ホームオートメーション網12から構成されている。本実施形態では、このホームオートメーション網12には、エシェロン社のLON(ローカルオペレーティングネットワーク)を用いるものとする。エシェロン社のLONについては、例えばエシェロン社のホームページ(http://www.echelon.com)等から得られるの情報に詳しく記述されている。
【0099】
第2の家庭内ネットワークのIEEE1394バス3には、第2のAV接続装置5、DVDプレーヤ8、デジタルVTR9、PC10、プリンタ11が接続されているものとする。また、PC10はホームオートメーション網12にも接続されている。ホームオートメーション網12は、PC10のほかに、エアコン13と、電子レンジ14にも接続されている。
【0100】
これらのネットワークに接続されている端末群のうち、第1のAV接続装置4、PC6、第2のAV接続装置5、PC10、プリンタ11は、それぞれIPアドレス(ここではプライベートIPアドレスとする)を持っており、いわゆるIP端末である。第1のAV接続装置4のIPアドレスは192.168.2.254、PC6のIPアドレスは192.168.2.1、第2のAV接続装置5のIPアドレスは192.168.1.254、PC10のIPアドレスは192.168.1.1、プリンタ11のIPアドレスは192.168.1.2であるものとする。このように、本実施形態における端末のIPアドレスにはプライベートIPアドレス(公衆網2がインターネットではなくISDN等である場合)またはグローバルIPアドレス(公衆網2がインターネットである場合)を使用しており、各々の端末間のルーチングのためのルーチング機構の設定(IPルーチングテーブルの設定など)は適切に行われているものとする。なお、現在グローバルIPアドレスは32ビットであるが、近い将来に128ビットになる見込みであり、各端末にグローバルIPアドレスを割り当て可能な環境は現実のものとなりつつある。
【0101】
一方、デジタルTV7、DVDプレーヤ8、デジタルVTR9は、いわゆる1394端末であり、1394プロトコル群(IEEE1394−1995,IEC1883,IEEE1394AV/C,SBPなど)のみを解釈する端末である。
【0102】
また、エアコン13、電子レンジ14は、いわゆるLON端末であり、LONで定められたプロトコル群のみを解釈する端末である。
【0103】
第1のAV接続装置4および第2のAV接続装置5は、それぞれ、2つ以上のネットワーク(本実施形態の場合IEEE1394バスと公衆網)の間を相互接続する機能を基本的に有する。図2に、本AV接続装置4,5の内部構成を示す。
【0104】
図2に示されるように本実施例のAV接続装置は、1394インタフェース21、データリンクスイッチ22、公衆網インタフェース23、IP処理機能24、FANP処理機能25、1394/IPサービスロケーション処理機能26、サービスロケーション代理機能27、1394AVコマンド処理機能28、1394/IPコマンド変換機能29を有する。これらの各機能は、それぞれ、ハードウエアにより実現してもよいし、ソフトウエアにより実現してもよい。
【0105】
1394インタフェース21は、1394バスとのインタフェースとなる機能である。
【0106】
データリンクスイッチ22は、ネットワーク間をまたがるデータ転送を行うためのスイッチであり、より詳しくは、データリンクレイヤ識別子/情報のみの参照(例えば同期チャネル識別子や、ATM−VCI、伝送波長などの参照)によって、明示的にそのデータの転送先が予め判るように、例えばFANPなどのプロトコルによって設定をしておき、1394バスから入力されたデータを公衆網に転送しおよび公衆網から入力されたデータを1394バスに転送するためのスイッチである。
【0107】
公衆網インタフェース23は、公衆網とのインタフェースとなる機能である。例えば、公衆網のデータリンクレイヤがATMであれば、物理的にはATMのインタフェースを、論理的にはATMシグナリングの機能などを持つことになる。
【0108】
IP処理機能24は、TCP/UDP/IPなど、一連のインターネットプロトコル(TCP/IPプロトコルスーツ)の諸機能である。
【0109】
FANP処理機能25は、データの伝送経路のデータリンクレイヤでの帯域や仮想伝送路識別子の確保、整合を行う機能である。なお、FANP処理機能の詳細は例えば文献「『レジデンシャル環境におけるネットワーク相互接続方式』、電子情報通信学会、情報ネットワーク研究会研究報告IN97−19、pp.73−78、1997年」(あるいは特願平8−264496、特願平8−272672、特願平9−52125)等にて説明されている。
【0110】
FANP処理機能25は、映像データ等のようにある程度広い帯域を保証する必要のあるサービスを扱う場合には設けることが望ましいものであり、帯域保証を必要としない場合には省いても構わない。なお、FANP処理機能の代わりにRSVPプロトコル(Resource ReSerVation Protocol;インターネットドラフトのdraft−ietf−rsvp−spec−08.txt)に従った処理機能等を用いることも可能である。
【0111】
また、提供するサービスに応じてFANP処理機能25等の使用を制御するようにしてもよい。例えば、IPアドレスとポート番号の組毎にFANP処理機能25等を使用するか否かを決定するようにしてもよい。あるいは、ユーザからの明示的な要求により使用することを決定するようにしてもよい。
【0112】
1394/IPサービスロケーション処理機能26は、1394バスに接続された端末あるいはサービスを検索しあるいはその登録を受け、1394バス上にどのような端末/サービスが存在しているのかを認識し、要求された場合など必要に応じてその情報を外部に通知する機能を持つ。1394/IPサービスロケーション処理機能26は、少なくともサービスロケーションプロトコル(インターネットドラフトのdraft−ietf−svrloc−protocol−16.txt)の処理機能を持つ。
【0113】
サービスロケーション代理機能27は、公衆網側に対して、IPベースのサービスロケーションの形でサービスロケーションプロトコルを稼動する。また、1394バスに接続されたサービスあるいは端末、すなわちIPベースではなく、一連の1394プロトコルしか認識、処理できないIEEE1394専用プロトコル端末/サービス(第1の家庭内ネットワークではデジタルTV7、第2の家庭内ネットワークではDVDプレーヤ8とデジタルVTR9)についても、本AV接続装置がそれらサービスあるいは端末の代理サーバとなって、それら端末/サービスを広告する機能を持つとともに、これら広告されたサービスを公衆網側(一般的にはIP側)から受け取った場合に、それらをIEEE1394のコマンドあるいはサービスにマッピングすべく1394・IPコマンド変換機能29に通知する機能を持つ。
【0114】
1394AVコマンド処理機能28は、IEEE1394の端末制御プロトコル(たとえば1394AV/Cプロトコルや、SBPなど)の処理機能である。
【0115】
1394/IPコマンド変換機能29は、IPを使って送られてきたあるいは送る制御コマンド(例えばRTSP(Real Time Stream Protocol)など;なお、RTSPについては、例えばインターネットドラフトdraft−ietf−mmusic−rtsp−02.psにて詳しく説明されている)と、1394バス上を送られるIEEE1394の端末制御コマンド(例えば1394AV/CプロトコルやSBPのコマンド)を相互に変換して、相手側に通知する機能を持つ。
【0116】
次に、第2の家庭内ネットワークにおいて、第2のAV接続装置5が、第2の家庭内ネットワークに関する情報を取得する手順、すなわち第2の家庭内ネットワーク上に存在する端末およびサービスを認識する手順について説明する。
【0117】
図3にIEEE1394特有の機構を用いた端末/サービス収集手順のシーケンスの一例を示す。1394バスに接続される端末には、それぞれ、その端末についての所定の情報が書き込まれたコンフィグレーションROMが格納されている。図3では、第2のAV接続装置5は、1394バス3につながる各装置8〜11のコンフィグレーションROMの読み込み(リード)を行い、各装置8〜11の情報収集を行う。この情報収集は、1394バス3につながる端末すべてに対して行ってもよい。
【0118】
以下では、コンフィグレーションROMに記述する情報についていくつかの例を示す。ここでは、PC10のコンフィグレーションROMを例にとって説明する。なお、本実施例では、IEEE1394の仕様書にならい「ROM」という語句を用いているが、実際には「レジスタ」あるいは「メモリ空間の一部」と認識されればよく、ROMでない場合(RAM等の場合)も含むものとする。
【0119】
図4に、コンフィグレーションROMに記述する情報の第1の例を示す。この例では、コンフィグレーションROMには、その端末についての基本的情報であるノード情報(例えばベンダID、ノードケーパビリティなど)(図4中31)の他に、ユニット情報として、そのPC10が行うサービスを記述するものである。すなわち、このPC10は、WWWサーバ、デジタルアルバムサーバ機能を有しており、これらがコンフィグレーションROMの内容に反映されている(図4中32、33)。このようにコンフィグレーションROMに記述しておくことによって、1394バスにつながる他の端末に対して、自身がどのような端末であるのかを説明するだけではなく、自身がどのようなサービスを行っているかを知らしめることが可能となる。この機能は、特にPCのように、一つの端末に複数の機能が実現されているような場合にきわめて有益である。具体的にコンフィグレーションROMに記述される情報としては、サービス種別、そのサービスの属性(そのサービスを受けるために使用する種々のパラメータ等で、例えば最大データ転送速度、装置仕様、設定パラメータ等)などである。
【0120】
ところで、PC10は、ホームオートメーション網12にも接続されており、これらのホームオートメーションのサーバともなっている。つまり、ホームオートメーション網12につながる各種機器(ここではエアコン13と電子レンジ14)の制御はこのPC10が行う構成となっている。言い換えると、このPC10にアクセスすることにより、第2の1394バス3につながる端末は、ホームオートメーション12網につながる各種機器の制御を行うことができることを意味する。このことを、第2の1394バス3上の端末に知らしめるために、ホームオートメーション網12についての情報(サービス情報)もPC10のコンフィグレーションROMに格納している。
【0121】
まず、ホームオートメーションサービスを行っていることを示す情報がコンフィグレーションROMに格納されている(図4中34)。1394バス上では、これを一つのユニットであると認識させてもよい。次に、このユニット依存ディレクトリとして、エアコンサービス、電子レンジサービスが提供されていることを示す情報がそれぞれコンフィグレーションROMに記述されている(図4中35、36)。このようにすることにより、1394バスにつながる他の端末は、1394バスではない別のネットワークに接続されたサービスについても、どのようなサービスがどのように行われているのかを知ることができるようになり、サービスの認識やその操作性の大幅な向上が見込まれる。
【0122】
次に、図5に、コンフィグレーションROMに記述する情報の第2の例を示す。第1の例では、コンフィグレーションROMには、その端末についてのユニット情報として、その端末が行うサービスについての記述が行われていたのに対して、第2の例では、サービスについての記述(図5中45〜50)の他に、端末別の情報も記述してある(図5中42〜44)。これらは、それぞれユニット情報として格納されており、それぞれユニット依存ディレクトリとして格納されていてもよい。また、端末別の情報とサービス別の情報であることを区別するために、それらの区別(どちらのユニットか)を示す領域(それぞれ図5中42、45)が存在してもよい。
【0123】
ここでは、端末別情報として、PC10にホームオートメーション網12を介して接続されている端末(エアコン13と電子レンジ14)についての情報がそれぞれ格納されている(図5中43、44)。これらを参照することによって、他の1394ノードは、1394バスにつながるノードばかりでなく、その1394バスにつながるノードに接続された他のノード(本実施例ではエアコン13と電子レンジ14)についての情報も、1394レベルで得ることが可能となり、家庭内ネットワークの統合的な管理や制御にきわめて有効である。
【0124】
また、第1の例と同様に、このPC10は、WWWサーバ、デジタルアルバムサーバ機能等を有する場合、これらがコンフィグレーションROMに反映される(図5中45〜50)。その記述の具体的ルールは、基本的に第1の例と同様である。
【0125】
次に、図6に、コンフィグレーションROMに記述する情報の第3の例を示す。この例は、PC10自身についての情報のみを格納する場合である。この場合は、第1の例や第2の例と異なり、サービスをベースとした記述ではなく、ノードとしての情報すなわち自身についての装置としての情報のみを記載することになるので、ユニット情報としては、自身がPCあるいはPCボード(例えば1394PCIボード)である旨が記載される。
【0126】
さて、前述のようにして第2のAV接続装置5にて収集された第2の家庭内ネットワーク上の端末/サービス情報を、例えば当該第2のAV接続装置5のコンソール上に表示することにより、ユーザにその操作を促すことができる。その際の表示方法として、サービス別の表示を行うことも可能であるし、端末ベースの表示を行うことも可能である。
【0127】
図7にサービス別の表示を行う場合の画面例を示す。図7のように、第2の家庭ネットワーク上に展開されているサービス別に1つづつアイコン(i1〜i7)が用意され、ユーザは所定のユーザインタフェースにより使用したいサービスを指示することで(例えばマウス装置を用いてクリックしあるいはドラッグアンドドロップすることで)、そのサービスにアクセスすることが可能となる。
【0128】
ここで、図7のサービス別のアイコンの画面表示は、ネットワークの種別を問わず、第2のIEEE1394バス3に接続されたサービスも、ホームオートメーション網12に接続されたサービスも区別なく同様に表示されている。これは、一般にユーザにとってはそのサービスがどの物理ネットワークにつながっているかどうかは関心が無いため、上記のように区別なく表示するのが好ましいと考えられるからである。これによってユーザに物理ネットワークを意識させた場合に生じるであろう混乱を防止することができる。
【0129】
なお、画面には必ずしもコンフィグレーションROMに書き込んである情報そのものを表示させる必要は無く、対応する別の情報を表示するようにしてもよい。例えば、コンフィグレーションROMに書き込まれている情報は、一般的に専門家向けのコードであることが多いと考えられ、一般ユーザにはなじみの薄い用語であることが多いと考えられる。具体例を挙げると、コンフィグレーションROMに「デジタルVCR」を意味するコードが書かれていたとしても、日本人にはこの用語はなじみが薄い。そこでこのような場合、「デジタルVCR」の代わりに、一般ユーザによりなじみ深い「ビデオ」あるいは「ビデオデッキ」等と表示するようにしても良い。
【0130】
次に、図8に端末別の表示を行う場合の画面例を示す。サービス別の場合と同様に、第2の家庭ネットワーク上に展開されている端末別に1つづつアイコン(i11〜i15)が用意され、ユーザは所定のユーザインタフェースにより使用したいサービスを指示することで(例えばマウス装置を用いてクリックしあるいはドラッグアンドドロップすることで)、そのサービスにアクセスすることが可能となる。この場合も、画面表示ではネットワークの種別を問わず、第2のIEEE1394バス3に接続されたサービスも、ホームオートメーション網12に接続されたサービスも区別なく表示されている。
【0131】
以上、1394バスのコンフィグレーションROMの読み込みによって、端末あるいはサービスを認識する方法であった。
【0132】
次に、サービスロケーションプロトコルを利用したサービスの登録について説明する。
【0133】
インターネットの標準化機関であるIETFでは、サービスロケーションプロトコルを用いたサービスの登録、検索方式を検討している。これらでは、IP端末を対象に、サービスをあらかじめいくつかに分類し、
(1)それらのサービス別にディレクトリエージェント(本実施形態においてはディレクトリサーバともいう)に、そのサービスを行うサーバの位置情報を登録する。ユーザは、このディレクトリエージェントに問い合わせをすることで、サービスの位置を知ることができるようになる。
【0134】
(2)サービス別にIPマルチキャストアドレスを用意する。あるサービスを要求しているユーザは、そのIPマルチキャストアドレスに対して、「そのサービスはどこだ?」という意味のメッセージを飛ばす。そのサービスを提供しているサーバは、これに呼応することで、ユーザはそのサービスを提供しているサーバの位置を知ることができるようになる。
【0135】
という2つの方法でサービス登録、検索ができるようになっている。
【0136】
本実施形態では、第2のAV接続装置5が、上記(1)のサービスロケーションプロトコルのディレクトリエージェントとなっている。
【0137】
第2の家庭内ネットワーク上のIP端末(図1ではPC10とプリンタ11)は、その提供しているサービスをディレクトリエージェントである第2のAV接続装置5に登録する。まず、IP端末は、ネットワーク上のどこにディレクトリエージェントが存在しているかどうかを調査し、サービス情報を登録するための手順を踏む。これについて、PC10がサービスを登録する場合を例にして、図9を参照しながら説明する。
【0138】
PC10は、サービスリクエストメッセージを第2のIEEE1394バス3に対して、送出する。サービスリクエストメッセージは「このサービスを提供しているサーバは返事をしてください」という意味のメッセージであり、本例の場合より具体的には「ディレクトリサービスを提供してるサーバは返事をしてください」という意味のメッセージを送出する。
【0139】
サービスリクエストメッセージには対象とするサービス種別を特定するために「predicate」領域が設けられており、この領域に「ディレクトリサービス」と記述し、さらに宛先をディレクトリエージェント(DA)ディスカバリマルチキャストアドレス(IPアドレス)としてこのメッセージを送出する。
【0140】
本実施形態においては、第2の家庭内ネットワークにおいて、IPパケットが到達するネットワークを第2のIEEE1394バス3のみとするため、PC10から送出されたサービスリクエストメッセージは、ディレクトリエージェントである第2のAV接続装置5とプリンタ11に到達する。
【0141】
サービスリクエストメッセージを受け取ったディレクトリエージェントである第2のAV接続装置5は、自身がディレクトリエージェントであることを通知するために、「ディレクトリエージェント(DA)アドバタイズメント」をPC10に送り返す。なお、プリンタ11は、自身がディレクトリエージェントではないことから、サービスリクエストメッセージを無視する(通常はリンクレイヤが受け取らない)。
【0142】
次に、PC10は、ディレクトリエージェント(DA)アドバタイズメントを受け取ることで、ディレクトリエージェントが第2のAV接続装置5に存在することを認識する。
【0143】
次に、PC10は、自身が提供しているサービスのディレクトリエージェントへの登録を行う。本実施形態では、PC10は、自身がWWWサービス(具体的にhttpサーバ)とデジタルアルバムサービスを提供するとともに、さらにホームオートメーション網12につながるエアコン13と電子レンジ14のサービスについても代理サーバとして外部からのサービス要求を受けられるようになっている。
【0144】
サービス登録にあたってPC10は、PC10自身が提供しているWWWサービスとデジタルアルバムサービスのそれぞれについて、その位置情報や属性情報等を登録するとともに、ホームオートメーション網(LON)12上のサービスそれぞれについても、エアコン13と電子レンジ14に代わってその位置情報や属性情報等の登録を行う。
【0145】
図10の(a)、(b)にそれぞれWWWサービス、デジタルアルバムサービスの登録情報の内容の一例を示す。WWWサービス、デジタルアルバムサービスの位置情報としてPC10のIPアドレスと各サービス毎に定められたポート番号を含むURLが用いられている。
【0146】
また、図10の(c)、(d)にそれぞれPC10が代理するエアコンサービス、電子レンジサービスの登録情報の内容の一例を示す。この場合、各代理サービス用にPC10のポート番号を割当てる。図10の例ではLON上のエアコンサービスには15000を、LON上の電子レンジサービスには15001を割当てている。これによって、外部の端末は、PC10上にエアコンサービスと電子レンジサービスが存在すると解釈すとともに、しかも、それらサービスはIPレベルでのサービスであると解釈する。
【0147】
外部の端末が、ホームオートメーション網12のエアコンサービスにアクセスしたいときはPC10のポート番号15000にアクセスし、電子レンジサービスにアクセスしたいときはPC10のポート番号15001にアクセスする。一方、PC10は、ポート番号15000にアクセスされた場合にはエアコン向けのサービス要求であると解釈し、またポート番号15001にアクセスされた場合には電子レンジ向けのサービス要求であると解釈し、渡されたIPの制御コマンドをLONの制御コマンドに翻訳し、これをホームオートメーション網12上の実際の機器(エアコン13または電子レンジ14)に向けて送出する。この操作についてはエアコンサービスへのアクセスを例にとって後述する。
【0148】
このように図9のサービス登録によって、第2のAV接続装置5に、WWWサービス、デジタルアルバムサービス、LON上のエアコンサービス、LON上の電子レンジサービスが登録されることになる。サービス登録が成功すると、ディレクトリエージェントである第2のAV接続装置5はサービスアクノリッジ(ACK)をPC10に向けて返送する。
【0149】
なお、同様にしてプリンタ11から第2のAV接続装置5に対してプリンタサービスの登録が行われる。
【0150】
以上のように、サービスロケーションプロトコルの登録の手続きにより、WWW、デジタルアルバム、エアコン、電子レンジ、プリンタの各サービスがディレクトリエージェントである第2のAV接続装置5に登録されることになる。
【0151】
さて、この登録手順により得られる情報と、先説明したIEEE1394上のコンフィグレーションROMの読み込みにより得られる情報と合わせて、第2の家庭内ネットワーク上のサービス情報を構成することが可能である。
【0152】
その構成方法はさまざまな種類が考えられるが、本実施形態では、その一例として、(i)サービスロケーションプロトコルにて登録されたサービスについては、これを優先的に表示し、(ii)ここに現れないサービス、具体的には、サービスロケーションプロトコルでは認識されないノードであって、かつ、IEEE1394上のコンフィグレーションROMの読み込みでは認識されたノードについては、コンフィグレーションROMの情報に基づいてサービス情報を構成し、(i)と(ii)の両者の情報を併せて、一つの「第2の家庭内ネットワーク上のサービスディレクトリ情報」としてユーザおよび外部に紹介するという方法である。
【0153】
より具体的には、サービスロケーションプロトコルの登録の手続きにより認識された、WWWサービス、デジタルアルバムサービス、エアコンサービス、電子レンジサービス、プリンタサービスと、IEEE1394上のコンフィグレーションROMの読み込みにより認識されたDVDプレーヤサービスと、ビデオサービスを合わせて、全サービスが認識される。そして、例えば図7のように第2のAV接続装置5のコンソール上に、第2の家庭ネットワーク上に展開されているサービス別に1つづつアイコン(i21〜i27)が表示される。また、前述と同様にユーザは所定のユーザインタフェースにより使用したいサービスを指示することで(例えばマウス装置を用いてクリックしあるいはドラッグアンドドロップすることで)、そのサービスにアクセスすることが可能となる。
【0154】
ところで、サービスの提供を受けるユーザ端末であるユーザエージェントは、自身が接続されているIEEE1394バス上のサービスに関する情報をディレクトリエージェントに問い合わせて入手することもできるが、その代わりに前述したディレクトリエージェントへのサービスに関する情報の登録手順と同様の手順により、自身が各装置からの通知を受けることとで、サービスに関する情報を入手することもできる。
【0155】
次に、第1の家庭内ネットワークのユーザ(つまり1394バス1に接続された端末のユーザ)が、公衆網2を介して、第2の家庭内ネットワーク内の端末(つまり1394バス3またはホームオートメーション網12に接続された端末)を遠隔操作して所望の動作をさせる場合について説明する。
【0156】
図1に示されるように、第1の家庭内ネットワークと、第2の家庭内ネットワークとは、公衆網2で相互接続されている。前述したように公衆網2は、電話網でもよいし、広い帯域の回線、あるいは専用線のようなものであってもよいし、インターネットであってもよい。また、IPアドレスにはプライベートIPアドレス(公衆網2がインターネットではなくISDN等である場合)またはグローバルIPアドレス(公衆網2がインターネットである場合)を使用するものとする。
【0157】
ここで、第1のAV接続装置4は、第1の家庭内ネットワークのディレクトリエージェントであり、先に第2のAV接続装置5について説明したものと同様の手順によりネットワーク内のサービスを認識しているものとする。より具体的には、端末としてはPC6とデジタルTV7が認識され、サービスとしてはPC6により提供されるなんらかのサービスとデジタルTVサービスが認識される。
【0158】
さて、最初のフェイズとして、第1の家庭内ネットワークのユーザに対して、第2の家庭内ネットワーク内のサービスを提示するために、第1のAV接続装置4は、第2の家庭内ネットワークのサービス情報(ディレクトリ情報)を収集することを試みる。その際、第1の家庭内ネットワークと第2の家庭内ネットワークとは、インターネットプロトコルにて通信を行うものとする。なお、本実施形態の手法は別のプロトコル、例えばIPXやNetBEUI等を用いた場合も同様に適用可能である。
【0159】
図12に、サービス情報の収集のために第1のAV接続装置4と第2のAV接続装置5との間で行われる情報交換の手順の一例を示す。
【0160】
まず、第1のAV接続装置4は、第2の家庭内ネットワーク内のディレクトリエージェントを検索するため、第2の家庭内ネットワークに向けて、「predicate」をディレクトリエージェントとしたサービスリクエストを送出する。これを実現するためには、例えば、ホップ数を複数にして(スコープが他の家庭内ネットワークも含むようにして)IPマルチキャストを送付する方法や、第2の家庭内ネットワークに対してソースルーチングあるいはルーチングヘッダを付けた上で、上記IPマルチキャストアドレスに送付する方法などが考えられる。
【0161】
ここで、相手側の家のIPアドレス、特にIPサブネットアドレス(すなわちネットワークのアドレス)を知る方法としては、例えば、相手側の家に対して、ルーチングプロトコルによってルーチング情報を交換して、相手側のアドレスを知る方法などが考えられる。
【0162】
さて、このサービスリクエストを受信した第2の家庭内ネットワークのディレクトリエージェントである第2のAV接続装置5は、自身がディレクトリエージェントである旨を伝えるためにディレクトリエージェントアドバタイズメントを第1のAV接続装置4に伝える。
【0163】
次に、第1のAV接続装置4は、第2の家庭内ネットワークでどのようなサービスが提供されているかを知るために、サービスタイプリクエストを第2のAV接続装置5に送付する。
【0164】
第2のAV接続装置5は、サービスタイプリプライとして、WWW(URLで表記されたサービス名はhttp)、デジタルアルバム(同album)、プリンタ(同lpr)の他に、LONに接続されたエアコン(同aircon_lon)、LONに接続された電子レンジ(同microwave_lon)、1394端末であるDVDプレーヤ(同DVD1394)、1394端末であるデジタルVTR(同DVTR1394)が通知される。例えば図12に示すように、「Service:http://」、「Service:album://」、「Service:lpr://」、「Service:aircon_lon://」、「Service:microwave_lon://」、「Service:DVD1394://」、「Service:DVTR1394://」が通知される。
【0165】
LONに接続された機器については、PC10から通知されたサービス情報(サービスのロケーションを表すURL情報)を、そのまま第1のAV接続装置4に通知している。すなわち、IPのサービスロケーションプロトコルで登録されたサービスについては、そのまま第1のAV接続装置4に通知している。
【0166】
第2の家庭内ネットワークのディレクトリエージェントである第2のAV接続装置5が1394端末/サービスとしてしか認識できなかったサービスについては、ディレクトリエージェントである第2のAV接続装置5自身がそのサービスの代理サーバとしてサービスを提供することを試みるために、「1394上のDVD」、「1394上のDVTR」という意味で、「service:DVD1394」、「service:DVTR1394」という新しいサービスカテゴリを用いてIP上で第1のAV接続装置4に紹介している。
【0167】
次に、これら情報を受け取った第1のAV接続装置4は、受け取ったそれぞれのサービスについての詳細情報を収集するための手順に入る。
【0168】
その収集方法の一例を以下に示す。すなわち、上記サービスタイプリプライで受信した全サービスについて、あるいはそのうち第1のAV接続装置4側にとって興味のあるサービスについて、そのロケーションと属性情報を得るために、それぞれサービスリクエストおよび属性リクエストをディレクトリエージェントである第2のAV接続装置5に送付する。サービスリクエストに対しては、サービスリプライ(具体的には、そのサービスのロケーション情報であるURL;例えば、URL : Service:DVD1394://192.168.1.254:20000)が返答され、属性リクエストに対しては、属性リプライ(そのサービスの属性情報;例えば、1394上のDVDの属性情報)が返答される。なお、詳細についてはサービスロケーションプロトコルのドキュメント(例えばインターネットドラフトのdraft−ietf−svrloc−protocol−16.txtなど)に記述されている。
【0169】
図12にはDVD1394サービスについての上記手続きについて記述してあるが、その外の全てのサービスについても同様にして情報を収集すると、第1のAV接続装置4は、第2の家庭内ネットワークのサービス情報を図13のように収集できる。
【0170】
ここで、DVD1394、DVTR1394のそれぞれのサービスについては、先にも述べたように、第2のAV接続装置5がこれらのサービスの代理サーバとして、外部からのサービス要求を受けられるようになっている。すなわち、具体的なサービスの具現である、IPのプロトコルである遠隔コマンドプロトコル等を、1394ノードに代わって第2のAV接続装置5が受け、これを1394ノードと1394プロトコルに変換してやり取りする(なお、その詳細については後述する)。このようにすることにより、本来1394プロトコルでしかやり取りのできないサービス(ここではDVDサービスとDVTRサービス)について、ネットワークを問わないプロトコルであるIPのサービス紹介プロトコルを通して紹介することができるため、ネットワークを問わず、任意のIPノードから、上記1394ノードへのコマンドの送付、制御が可能となる(可制御となる)。
【0171】
各種リプライで収集された情報のうち第2のAV接続装置5が代理で受付るサービス(DVDサービスとDVTRサービス)については、そのサービス窓口となるポート番号、すなわち各代理サービス用のポート番号を割当てるようにする。このポート番号は、あらかじめ標準化機関などによって割当てがなされたものであってもよいし、ノード同士のネゴシエーションにより決められたものであってもよい。本実施形態の場合は、1394上のDVDサービスについては20000、1394上のDVTRサービスについては20001とする。これによって、外部の端末(例えば第1の家庭内ネットワーク上の端末)は、第2の家庭内ネットワーク上に上記サービスが存在すると解釈するとともに、しかも、それはIPレベルでのサービスであると解釈する。
【0172】
さて、第1の家庭内ネットワーク上の端末、例えば第1のAV接続装置4は、例えば図14のように、そのコンソール上に、自身が認識しているサービスの一覧表示という形で、第1の家庭内ネットワークについての情報に加えて、第2の家庭内ネットワーク(例えば○○さん宅の家庭内ネットワーク)上のサービスの情報についても、前記サービスロケーションで取得した情報に基づいて表示する。この表示の仕方は図11のものと同一の方針によるものであってもよい。
【0173】
次に、外部の端末が第2の家庭内LANの各種サービスにアクセスしたいときは、図13のURLで紹介されているアドレスとポート番号にそれぞれアクセスする。
【0174】
例えば、ユーザが第1のAV接続装置4を操作して、第2の家庭内LAN上の1394端末であるDVDプレーヤ8から映像を公衆網2を介して持ってきて、これをデジタルTV107に映し出す場合を考える。
【0175】
ユーザの実際の操作は例えば次のようになる。ユーザはまず図14のDVDプレーヤのアイコンをクリックする。すると例えば図15のようなDVDプレーヤ操作のための操作ボタン群が画面に表示される。次にユーザは所望の操作ボタンをクリックするなどしてDVDプレーヤ8の遠隔操作を行う。また、受信端末がデジタルTVであることをクリック等、なんらかの入力方法で指定する。
【0176】
図16に、このときに実際のネットワーク上を流れるコマンド群、プロトコル群についてのシーケンスの一例を示す。
【0177】
まず、第1のAV接続装置4は、デジタルTV7に映像を流し込んで、これを表示させるための設定を行うべく、以下のようなシーケンスの動作を行う。すなわち、IEC1883プロトコルにしたがって、第1のIEEE1394バス上の同期チャネルを確保する。このとき、取得した同期チャネルの同期チャネル番号は#yであるとする。
【0178】
次に、第1のAV接続装置4は、デジタルTV7の電源をオンにし、同期チャネル#yからの映像を画面に映し出すための、あらかじめ1394TA等の標準化団体で定められた制御コマンド(例えば1394AV/Cプロトコル)を使って、コマンドを送付する。コマンドが受け付けられたなら、ACKを第1のAV制御装置4に返すようにしてもよい。これにより、第1のAV接続装置4からデジタルTV7までの回線が確保されたことになる。
【0179】
これと相前後してまたは並行的に、第1のAV接続装置4は、第2のAV制御装置5に対して、DVDプレーヤ8に対するコマンドを発行する。ここで、第1のAV接続装置4は、DVDプレーヤ8はIPサービスであると解釈している。コマンドは、第2のAV接続装置5(IPアドレス=192.168.1.254)の代理サーバのポート、すなわち20000に対して発行される。
【0180】
ここで、遠隔操作のためのコマンドとしては、例えばRTSP(RealTime Streaming Protocol)を利用する。RTSPは、遠隔のリアルタイム信号の制御を行うためのプロトコルであり、インターネットの標準化機関であるIETFで議論が行われている。詳細については例えばインターネットドラフトdraft−ietf−mmmusic−rtsp−02.psに開示されている。
【0181】
第1のAV接続装置4は、DVDプレーヤ8を再生させるために必要なコマンド(例えばSETUPコマンドや、PLAYコマンド)をRTSP上で発行する。
【0182】
RTSPのSETUPコマンドを受信した第2のAV接続装置5は、今後DVDプレーヤ8に対する制御が開始されると解釈し、DVDプレーヤ8が接続されている第2のIEEE1394バス3上に映像伝送のための帯域、すなわち同期チャネルの確保を行う。これは、IEC1883により行われる。ここで、確保された同期チャネル番号を#yとする。帯域は、経験的な値(例えばMPEGなら6Mbps等)を用いることとしてもよいし、メッセージ中に要求値を含めてもよい。
【0183】
また、RTSPのPLAYコマンドを受信した第2のAV接続装置5は、これを1394コマンド、すなわち1394AV/Cプロトコル等、1394端末間のプロトコルとして規定された、対応するコマンド(例えばDVD−PLAYというコマンドが規定するものとする)により、コマンドをDVDプレーヤ8に発行する。
【0184】
このようなコマンドの変換は、1394/IPコマンド変換機能29にて行われる。その処理の流れを図17を参照しながら説明する。IP上のコマンドはサービスロケーション代理機能27により受信される。受信されたコマンドは1394/IPコマンド変換機能29によりコマンド変換される。具体的には、DVD用のコマンド対応テーブル61、DVTR用のコマンド対応テーブル62といったように、IP上のコマンド(あるいは操作)と1394上のコマンド(あるいは操作)との関係を記述したテーブルをサービス別に設け、これらサービス別テーブルをもとにIPで送付されてきたコマンドを1394のコマンドに変換し、これを1394AVコマンド処理機能28に渡し送出を指示する。そして、指示を受けた1394AVコマンド処理機能28により実際のコマンドの送出が行われる。
【0185】
なお、上記とは逆の方向にコマンドが流れる場合、すなわち1394コマンドが入力されこれをIPコマンドに変換して出力する場合も、手順は同じ様になる。すなわち、1394コマンドは1394AVコマンド処理機能28により受信され、これが1394/IPコマンド変換機能29においてサービス別テーブルをもとにIPコマンドに変換され、これがサービスロケーション代理機能27により送出される。
【0186】
さて、このようにしてコマンドがDVDプレーヤ8に到達すると、実際の映像データの送信が第2の1394バス3の同期チャネル#xを通して行われる。これは、ACK信号が返った後(なお、ACK信号は公衆網(ISDNあるいはインターネット等)上ではRTSPのOKに変換されてもよい)、実際のデータ転送が開始される。
【0187】
第2のAV接続装置5は、データリンクスイッチ22を介して、映像データを公衆網2に送出する。その際、MPEG多重の形でこれを送付してもよい。
【0188】
送出された映像データは公衆網2を介して第1のAV接続装置4に送付される。第1のAV接続装置4は、受信した映像データをデータリンクスイッチ22を介して、第1の1394バス1の同期チャネル#yに送付し、最終的に映像データはデジタルTV7にて再生される。この結果、第1の家庭内LANのユーザはデジタルTV7にて、第2の家庭内LAN上のDVDプレーヤ8からの映像を見ることができるようになる。
【0189】
なお、前述したように、映像データの伝送経路のデータリンクレイヤでの帯域や仮想伝送路識別子の確保、整合を、FANP処理機能25あるいはその他のRSVP処理機能等により実現するのが好ましい。FANP等を用いることにより、ネットワーク種別を問わない、通信資源の確保が可能となる。そのようにした場合のシーケンスの一例を図18に示す。図18では、実際の映像データの送付に先立ち、FANPにより、映像データの経路となるデータリンクの通信資源の確保と、識別子の整合、接続装置の設定等が行われている。
【0190】
次に、公衆網2を介した遠隔操作の他の例として、例えば第1の家庭内LANのユーザが、第1のAV接続装置4を操作して、第2の家庭内LAN上のエアコン13(LON端末である)を操作することを考える。
【0191】
ユーザの実際の操作は例えば次のようになる。ユーザはまず図14のエアコンのアイコンをクリックする。すると例えばエアコン操作のための操作ボタン群が画面に表示される。次にユーザは所望の操作ボタンをクリックするなどしてエアコン13の遠隔操作を行う。
【0192】
図19に、このときに実際のネットワーク上を流れるコマンド群、プロトコル群についてシーケンスの一例を示す。
【0193】
まず、第1のAV接続装置4は、サービスロケーションで示されている、代理サーバのPC10に対して、エアコン13に対するコマンドを発行する。ここで、第1のAV接続装置4は、エアコン13はPC10が提供しているIPサービスであると解釈している。コマンドは、代理サーバであるPC10のポート、すなわち15000に対して発行される。
【0194】
ここで、遠隔操作のためのコマンドとしては、CCCP(Cam CoderControl Protocol)を利用することができる。CCCPは、遠隔のカムコーダの制御をインターネットを介して行うためのプロトコルであるが、同様の考え方で様々な電気機器の制御が可能であり、特にエアコン向けのコマンド群がCCCPに存在するものとする。なお、CCCPの詳細は例えばインターネットドラフトdraft−ohta−ccc−video−00.txtに開示されている。
【0195】
第1のAV接続装置4は、エアコン13の電源をオンにするのに必要なコマンド(POEWR_ONコマンド)をCCCP上で発行する。
【0196】
CCCPのPOWER_ONコマンドを受信したPC10は、これをLONコマンド、LONノード間のプロトコルとして規定された、対応するコマンド(例えばLON_POWER_ONというコマンドが規定するものとする)により、コマンドをエアコン13に発行する。
【0197】
このようなコマンドの変換は、PC10内にて行われる。その処理の流れを図20を参照しながら説明する。IP上のコマンドは、サービス代理受信機能71が受信する。受信されたコマンドはCCCP/LONコマンド変換機能72によりコマンド変換される。具体的には、CCCP/LONコマンド変換機能72にLON用のコマンド対応テーブル、すなわちIP上のコマンド(あるいは操作)とLON上のコマンド(あるいは操作)との関係を記述したテーブルを設け、このテーブルをもとにCCCPで送付されてきたコマンドからLONを介してエアコン13に対して送付すべきコマンドに変換し、これをLONコマンド発行機能73に渡し送出を指示する。そして、指示を受けたONコマンド発行機能73により実際のコマンドの送出が行われる。
【0198】
上記とは逆の方向にコマンドが流れる場合、すなわちLONコマンドが入力されこれをCCCPコマンドに変換して出力する場合も、手順は同じ様になる。
【0199】
なお、ACK信号が返る場合は(なお、ACK信号は公衆網(ISDNあるいはインターネット等)上ではCCCPのOKに変換されてもよい;図19中ではOKとして示してある) 、これも第1のAV接続装置4に通知される。
【0200】
なお、本実施形態で説明したメカニズムは、家庭内ネットワークに限らず、一般の企業ネットワーク、特にいわゆる「モバイル環境」を実現するためのネットワーク技術に適用することが可能であることは、言うまでもない。
【0201】
また、本実施形態では、ネットワークレイヤのプロトコルとしてIP、データリンクレイヤのプロトコルとしてIEEE1394とLONを用いて説明したが、ネットワークレイヤのプロトコルとして、DAVICで標準化を進めているDSM−CCや、IPX等、データリンクレイヤのプロトコルとして、イーサネットやATM等の技術を用いることも可能である。
【0202】
ところで、上記した実施形態では、AV接続装置にサービスロケーションサービスの機能およびコマンド変換の機能を設け、AV接続装置がサービスを提供したが、これらの機能は、本実施形態のAV接続装置すなわちネットワークの相互接続を行っているノードが行う必要はなく、例えば図1におけるPC6あるいはPC10に設け、それらがサービスを提供するようにしても良い。
【0203】
この場合、図2のAV接続装置がサービスを実現していた場合と同様に、ネットワークI/F(図2の1394I/F21に相当)、IP処理機能24、1394/IPサービスロケーション処理機能26、サービスロケーション代理機能27、1394AVコマンド処理機能28、1394/IPコマンド変換機能29を、PC6あるいはPC10あるいはその他のノードに実装し、さらにネットワークの通信資源を確保させる制御や、ネットワーク間で用いる識別子を整合させる制御等のネットワーク制御が必要な場合は、FANP処理機能25あるいはRSVPによる制御処理機能等を実装すれば良い。
【0204】
また、サービスロケーションサービスの機能とコマンド変換の機能とを、互いに異なるに実装することも可能である。
【0205】
なお、以上の説明では、公衆網2がインターネットではなくISDN等である場合に端末のIPアドレスにはプライベートIPアドレスを用い、あるいは公衆網2がインターネットである場合に端末のIPアドレスにはグローバルIPアドレスを用いるものとしたが、例えばNAT(Network Address Translation)等のアドレス変換を用いて、公衆網2がインターネットである場合に少なくともネットワークの相互接続を行うノード(図1ではAV接続装置端末)にグローバルIPアドレスを用い、その他のノードにはプライベートIPアドレスを用いることができるようにしてもよい。この場合、例えば、外部のネットワークからは、ネットワークの相互接続を行うノードのグローバルIPアドレスと、宛先となるノードのプライベートIPアドレス(またはプライベートIPアドレスとポート番号の組)を指し示すためのポート番号との組を宛先として、IPパケットを転送し、ネットワークの相互接続を行うノードにて、テーブルを参照するなどして、当該グローバルIPアドレスとポート番号の組を、宛先となるノードのプライベートIPアドレス(またはプライベートIPアドレスとポート番号の組)に変換するようにしてよい。
【0206】
(第2の実施形態)
本実施形態ではIEEE1394インタフェースを持つPCが同一の1394バスに接続された1394装置を認識して利用する場合について説明する。
【0207】
一般に、1394バスには種々の装置が接続される可能性があり、PCは予め接続されるすべての装置に関する情報やそれを制御するためのドライバソフトウェアを持っているわけではない。
【0208】
そこで、本実施形態では、1394バスに接続された装置の情報の収集を行う。その手順の概略は次の通りである。
【0209】
i)まず、1394unitの認識を行う。具体的には1394ノードのunique IDとunit番号を取得する。
【0210】
ii)次に、各unitのカテゴリ判別を行う。そして、登録済みの論理デバイスに対応するカテゴリか否か判断する。
【0211】
iii )次に、登録済みデバイスについて、占有状態の取得を行う(なお、この場合には、標準ドライバを利用する)。
【0212】
iv)そして、登録済みでない1394unitの占有状態の判定を行う。
【0213】
また、本実施形態では、非同期的に発生してデバイスドライバの構成の変更を行う事象として次のものを扱う。
【0214】
i)アプリケーションによる装置の利用要求
ii)IEEE1394インタフェースのバスリセット(1394装置の追加、削除)
iii )装置の占有状態の変更
以下、本実施形態について詳しく説明する。
【0215】
まず、ハードウェア構成について説明する。
【0216】
図21に本実施形態に係るPCの構成例を示す。81はPCを、82はプロセッサを、83はプロセッサのローカルバスに接続されたメインメモリを、84はシステムバスを、85は2次記憶装置を、86,87はIEEE1394インタフェースを、88はハードディスクをそれぞれ表す。
【0217】
2次記憶装置85とIEEE1394インタフェース86とIEEE1394インタフェース87は、それぞれシステムバス84に接続されている。2次記憶装置85は、例えばフラッシュEEPROMによって構成される。
【0218】
ハードディスク88は、PC81の筐体内部にあるIEEE1394インタフェース87によって接続されている。
【0219】
IEEE1394インタフェース86は、PC81の筐体外に置かれているプリンタ90、FAX91、マッサージ装置(リクライニングシート型マッサージ装置とする;以下、単に、マッサージ装置と呼ぶ)92、トースタ93にそれぞれ接続している。なお、説明上、FAX91はFAX機能およびスキャナ機能に対応するユニットとプリンタ機能に対応するユニットを持ち、マッサージ装置92は背中、首等の上半身部分へのマッサージ機構に対応するユニットと足等の下半身部分へのマッサージ機構に対応するユニットを持つものとする。
【0220】
次に、オペレーティングシステム(以下、OS)のソフトウェア構造について説明する。
【0221】
図22に本実施形態のPC81におけるソフトウェア構造の一例を示す。
【0222】
図22のOS内部において、101はOSの論理デバイス管理機能、102は2次記憶装置管理機能、103は1394インタフェース管理機能をそれぞれ表す。
【0223】
2次記憶装置102,ハードディスク103はOSが直接管理する。一方、プリンタ90、FAX91、マッサージ装置92、トースタ93の各ハードウェアについては1394管理機能を通じてデバイスの認識や登録が行われる(この手順については後述する)。
【0224】
111,112は、2次記憶装置管理機能102の配下にあり、2次記憶装置85とハードディスク88をそれぞれ制御するデバイスドライバである。113,114はそれぞれ1394インタフェース管理機能103の配下にあり、IEEE1394インタフェース86,87をそれぞれ制御するデバイスドライバである。
【0225】
図22のOS API(Application Programing Interface)とJAVA APIの間において、121は1394管理オブジェクトを表す。
【0226】
図22のJAVA SPI(System Programing Interface)とJAVA APIの間において、122は論理デバイス管理オブジェクトを表し、131,132,133,134はそれぞれモデム、プリンタ、スキャナ,不明に対応する論理デバイスクラスオブジェクトを表し、131−1〜2,132−1,133−1,134−1〜3はそれぞれ131,132,133,134の論理デバイスクラスオブジェクトによって管理される論理デバイスオブジェクトを表す(不明のクラスの詳細については後述する)。
【0227】
図22のOS APIとJAVA SPIの間において、151はプリンタ90のunit1(図22中104)に、152はFAX91のunit1(図22中105)に、153はFAX91のunit2(図22中106)に、154はマッサージ装置92のunit1(図22中107)に、155はマッサージ装置92のunit2(図22中108)に、156はトースタ93のunit1(図22中109)にそれぞれ対応する物理デバイスオブジェクトを表す。また、161,162,163,164,165,166はそれぞれ151〜156の物理デバイスオブジェクトに対応するドライバオブジェクトを表す。
【0228】
図22中において、矢印は各々のオブジェクトの参照関係を表す。参照関係を持つことにより、参照先のオブジェクトのメソッドを起動して状態変数を読み出すことができる。例えば、物理デバイスオブジェクト151〜156は、1394管理オブジェクト121に始まる参照関係を持つことによって、1349管理オブジェクトの配下にある物理デバイスオブジェクトとして登録されていることを表している。151はプリンタクラスの論理デバイスオブジェクト131−2に登録されており、ドライバオブジェクト161は物理デバイスオブジェクト151に登録されており、他のものも同様である。
【0229】
次に、OSの初期化について説明する。
【0230】
PC81は、電源投入後、2次記憶装置85に格納されたプログラムを読み込みOSを起動する。OSの一般仕様については特に問わないが、OS上ではコンパイルされたJavaコードが実行できるものとする。なお、Javaについては種々の文献があるが例えばJava Language Specification http://java.sun.comにて詳しく説明されている。
【0231】
本実施形態では、IEEE1394インタフェース87に接続されるハードディスク88はOSで直接管理する1394装置として予め決められている。IEEE1394機器はレジスタへの値の書き込みや読み出しにによって操作するものであり、PC81はハードディスク87の予め定められたレジスタにPC81自身のIEEE1394インタフェースのunique IDを書き込むことにより、ハードディスク88をIEEE1394インタフェース87を持つPC81が排他的に使用することを示す。
【0232】
PC81のOSはJavaプログラムからIEEE1394インタフェースのトランザクション要求の発行および応答ができるAPI(Application Programing Interface)を持つ。PC81の初期化によるOSの起動後、上記APIを通じて各々の1394インタフェースに接続されているIEEE1394機器を管理するJavaコードが実行される。これを1394管理オブジェクトと呼ぶ。また、OSは、オブジェクトクラスの名前から対応するコードの識別子を得てオブジェクトを生成する動的オブジェクトローディング機構を備えているものとする。
【0233】
以下では、Javaコードの格納、伝送形態をxxコード、あるクラス全体に関わるオブジェクトをxxクラスオブジェクト、あるクラスの実体化されたオブジェクトをxxオブジェクトと呼ぶ。例えば、ある型の論理装置全てを管理するオブジェクトを論理デバイスクラスオブジェクト、各々の物理装置に対応する装置のJava APIを提供するオブジェクトを論理デバイスオブジェクトと呼ぶ。また、オブジェクトのコードにはある識別子が付与されていて、それを他のオブジェクトと識別することができるものとする。識別名はオブジェクトコードに埋め込まれていても良いし、それを格納するファイル名あるいはそれが格納されているISO1212形式のアドレスで表現されても良い。一方、オブジェクトには少なくとも当該PCで一意に他のオブジェクトと識別できる識別子が付与されているものとする。例えばオブジェクトが格納される仮想記憶空間のアドレスである。IEEE1394バスで使用する際には識別子はIEEE1394バス上で一意に識別されることが望ましい。
【0234】
次に、物理装置の認識について説明する。
【0235】
OSによる1394インタフェースの初期化が完了すると、1394管理オブジェクト121と論理デバイス管理オブジェクト122が生成される。1394管理オブジェクト121と論理デバイス管理オブジェクト122は互いの参照を保持し、相互に情報を交換しながらデバイスの認識と登録を行う。
【0236】
1394管理オブジェクト121はIEEE1394インタフェース86,87に接続されている装置の情報を収集して各1394ノードを認識する。ただし、1394管理オブジェクト121の初期化時に予めOSが排他的に利用するものと定義されたハードディスク87は認識から除外される。1394管理オブジェクト121は前述の1394制御APIを通じてPC81の各1394インタフェースの持つTOPOLOGY_MAPレジスタまたはSPEED_MAPレジスタにあるnode ID毎に各ノードにconfigROM領域の読み出し要求を発行して当該ノードのuniqe IDとunitが複数存在すればそれぞれのunit IDおよびcapabilityを得る。これらレジスタの形式はIEC 1212(ANSI/IEEE Std 1212 Control and Status Register(CSR) Architecture for Microcomputer Buses[ISO/IEC13213])で定められており、詳細についてはここでは省略する。
【0237】
最終的に1394管理オブジェクト121はunique IDとunit IDとcapabilityの組のリストを得てこれらデバイスの登録を行う。1394管理オブジェクト121はプリンタ90、FAX91,マッサージ装置92、トースタ93から上記レジスタの値を読み出してそれぞれのunitに対応する1394物理装置オブジェクト151〜156を生成する。FAX92、マッサージ装置93は2つのunitを持っており、それぞれ対応する物理デバイスオブジェクト152,153,154,155を生成する。オブジェクトの生成が完了すると1394管理オブジェクト121は論理デバイス管理オブジェクト122に物理デバイス登録の完了を通知する。
【0238】
認識の対象から外される装置は、予めOSによって占有されている装置の他に、装置自身のレジスタが占有を表していて、そこに占有を示す値が書き込まれている場合には認識の対象とはしないこととしても良い。
【0239】
ここで、登録について説明する前に、デバイスを制御するプログラム(ここではオブジェクトと呼ぶ)の構造と動作について説明する。
【0240】
各々の装置の機能に対応し、アプリケーションに入出力APIを提供するのが131−1,132−1,…の論理デバイスオブジェクトである。それぞれの論理デバイスオブジェクトは、ファイル、プリンタといった種別毎に設けられる論理デバイスクラスオブジェクトによって管理される。各々の論理デバイスオブジェクトはただ一つの論理デバイスクラスオブジェクトに帰属するが、一つの論理デバイスクラスオブジェクトは配下に複数の論理デバイスオブジェクトを持っても良い。例えば、プリンタの論理デバイスオブジェクト131−1は、ただ一つの論理デバイスクラスオブジェクト131に帰属するが、プリンタの論理デバイスクラスオブジェクト131の配下には、131−1,131−2の2つの論理デバイスオブジェクトがある。
【0241】
物理デバイスオブジェクトは、1394ユニットと1対1対応に存在する。1つの物理デバイスオブジェクトが複数の論理デバイスオブジェクトから参照されることもある。例えば、物理デバイスオブジェクト152は、プリンタ91のunit1に対応しているとともに、プリンタの論理デバイスオブジェクト131−1とFAXの論理デバイスオブジェクト133−1の2つの論理デバイスオブジェクトから参照されている。
【0242】
本実施形態では、PC81は、プリンタ、スキャナ、FAX、不明の各デバイスクラスに対応する論理デバイスクラスオブジェクト131〜134を持っているものとする。各々の論理デバイスクラスオブジェクトは、その配下に論理デバイスオブジェクト131−1…n,132−1…n,133−1…n,134−1…nを持っている。PC81で実行されるJavaアプリケーションはこれら論理デバイスオブジェクトを通じて物理装置の実装の差異に関らず同一のクラスに属する物理装置は同一の方法で利用することができる。これはそれぞれの論理デバイスクラスオブジェクト毎にJava SPIが共通化されているからである。
【0243】
例えば、プリンタ装置のアクセスを行う際のIEEE1394レジスタのアドレスと手順は、ANSI X3T10 Serial Bus Protocol(SBP)として定められている。IEEE1394インタフェースがどのような実装であっても上記SBPに則ったIEEE1394形式のメッセージをデバイスドライバが生成すればプリンタの制御を行うことができる。さらに、デバイスドライバがハードウェアやOSに依存しないJavaで記述されていれば、IEEE1394インタフェースのドライバへのシステムプログラムインタフェースが同一である限り、どのようなOSにおいても同一のプリンタデバイスドライバが使用可能である。
【0244】
アプリケーションは、論理デバイス管理オブジェクト122にデバイスクラス一覧を要求することによって、論理デバイスクラスオブジェクト131〜134の一覧を得ることができる。論理デバイスクラスオブジェクトからは、それぞれのプリンタ、スキャナといった同じタイプに属する論理デバイスオブジェクトの一覧を得ることができる。論理デバイス管理オブジェクト122は、論理デバイスクラスオブジェクトの登録/削除などの管理も行う。
【0245】
次に、論理デバイス管理オブジェクト122による論理デバイスクラスオブジェクトの初期化について説明する。図23に論理デバイス管理オブジェクト初期化手順の一例を示す。
【0246】
論理デバイス管理オブジェクト122は、予め定められたデバイスクラス、プリンタ、スキャナ、FAXに対応する論理デバイスクラスオブジェクト131,132,133を生成し、図2中にて矢印で示されるこれらオブジェクト間の参照を作る(ステップS11〜S14)。
【0247】
これら131,132,133の各論理デバイスクラスオブジェクトは、生成に続いて初期化を行う(その間、論理デバイス管理オブジェクト122は初期化完了を待つ;ステップS15)。初期化が完了すると論理デバイス管理オブジェクト122へ初期化が完了したことを通知する。
【0248】
完了通知を受けた論理デバイス管理オブジェクト122は、最後に131〜133の各論理デバイスクラスオブジェクトによって認識されなかった物理デバイスを管理する不明の論理デバイスクラスオブジェクト134を生成し、初期化する(ステップS16,S17)。論理デバイス管理オブジェクト122は、不明のクラスの初期化の完了通知を受けとると、初期化完了状態となる(ステップS18)。
【0249】
次に、論理デバイスクラスオブジェクトの初期化について論理デバイスクラスオブジェクト131を例に取りつつ説明する。図24に論理デバイスクラスオブジェクト初期化手順の一例を示す。
【0250】
論理デバイス管理オブジェクト122は、論理デバイスクラスオブジェクトの生成時に1394管理オブジェクト121への参照を渡す。論理デバイスクラスオブジェクト131は、1394管理オブジェクト121に物理デバイスオブジェクトへの参照を要求する(ステップS21)。
【0251】
1394管理オブジェクト121は、物理デバイスオブジェクトの参照が要求されると、自オブジェクトが保持している参照に従って物理デバイスオブジェクト151から順番に参照を返却する。
【0252】
論理デバイスクラスオブジェクト131は、物理デバイスオブジェクト151への参照を入手すると、オブジェクト151の属性値取得メソッドを起動してunique ID、unit ID、capabilityを取得する(ステップS22)。論理デバイスクラスオブジェクト131は、これらの値が自デバイスクラスに合致するかを判定するテーブルを予め持っており、取得した物理デバイスオブジェクト151が自クラスに合致するかを判定することができる。
【0253】
物理デバイス151のunique ID、unit IDはプリンタを示す値であったので、論理デバイスクラスオブジェクト131は、物理デバイスオブジェクト151に対応する論理デバイスオブジェクト131−1を生成し、初期化を開始させる。このときも論理デバイスクラスオブジェクトと論理デバイスオブジェクトは相互に参照関係を持ち、論理デバイスオブジェクト131−1は論理デバイスクラスオブジェクト131の配下として登録される(ステップS23〜S24)。
【0254】
この判定はuniqe ID、unit IDに限らず他の属性値の組合せによって行っても良い。また、論理デバイスクラスオブジェクトがテーブルを持つことなくunique IDやunit IDをキーとしてPC81の外にある検索サーバに問い合わせても良い。
【0255】
以下、引き続いて論理デバイスクラスオブジェクト131は、1394管理オブジェクト121に物理デバイスへの参照を要求し、152,153,…について同様の作業を最後の物理デバイス156まで行う。FAX152のunit2はプリンタのcapabilityを持っているのでこれも論理デバイスオブジェクト131−2としてプリンタクラスオブジェクトに登録される(ステップS21〜S24)。
【0256】
全ての物理デバイスオブジェクトについて作業が終了すると、登録した論理デバイスオブジェクト131−1,132−2からの初期化完了通知を待つ(ステップS25)。論理デバイスオブジェクト131−1,132−2からの初期化完了通知を受けとると、プリンタクラスの論理デバイスクラスオブジェクト131は、論理デバイス管理オブジェクト122に初期化の完了を通知する(ステップS26)。
【0257】
次に、論理デバイスオブジェクトの初期化について論理デバイスオブジェクト131−1を例に取りつつ説明する。図25に論理デバイスオブジェクト初期化手順の一例を示す。
【0258】
論理デバイスオブジェクト131−1は、自身の属性値を初期化した後、物理デバイス151に初期化要求を発行して151からの完了通知を待つ(ステップS31,S32)。完了通知を受信するとプリンタクラスの論理デバイスクラスオブジェクト131に完了通知を発行する(ステップS33)。初期化要求を受信した物理デバイスオブジェクト151は、物理装置90に対応するデバイス制御コードを決定し、それを読み込んでデバイス制御オブジェクト161を生成し、物理デバイスオブジェクトに登録する。
【0259】
次に、物理デバイスオブジェクトの初期化について物理デバイスオブジェクト151を例に取りつつ説明する。図26に物理デバイスオブジェクト初期化手順の一例を示す。
【0260】
なお、物理デバイスオブジェクトの生成は1394管理オブジェクト121によって論理デバイスオブジェクトの生成以前に行われており、ここでの初期化は生成とは異り、また1394管理オブジェクト121が物理デバイスオブジェクト151を生成した時点ではプリンタ制御固有のコードは読み込まれていない。
【0261】
ロードするデバイス制御コードは例えば次のようにして決定される。1394管理オブジェクト121は属性値unique ID、unit ID、capabilityと論理デバイスクラスオブジェクトからデバイス制御コードのクラス名を求めるテーブルを持っており、物理デバイスオブジェクト151は1394管理オブジェクト121に自身の持つ属性値unique ID、unitID、capabilityを含む問い合わせ要求を発行し、その返り値としてクラス名を得る(ステップS41)。デバイス制御コードの識別子は前述のように当該PCのファイルを示すパス名でよい。もちろん、PC81の外部に属性値に基づく問い合わせを発行して取得しても構わない。
【0262】
上記の方法で得たクラス名から動的オブジェクトローディング機能により、デバイス制御コードがロードされてデバイス制御オブジェクト161が生成され、物理デバイスオブジェクト151に登録される。物理デバイスオブジェクト151は、デバイス制御オブジェクト161の属性値の初期化を行った後、ハードウェアの初期化要求を発行する(ステップS42〜S44)。
【0263】
クラス名に対応するコードがローカルに存在すればそれを読み込む。クラス名がリモートのネットワーク上の資源を示していれば、ネットワーク上から取得する。クラス名が明示的にネットワーク上の資源を指していない場合でも、コードがローカルに存在しない場合はネットワーク上の検索サーバなどを利用してネットワーク上の位置を取得し、コードを読み込む。
【0264】
次に、デバイス制御オブジェクト161はハードウェアの初期化のためのレジスタ書き込みを行うパケットを準備し、1394トランザクションのシステムコールを呼び、物理装置90を初期化する。初期化が完了すると物理デバイスオブジェクト151は論理デバイスオブジェクト131−1に完了通知を発行する(ステップS45)。
【0265】
ところで、物理デバイスオブジェクトには物理デバイスオブジェクト152のように2つ以上の論理デバイスオブジェクト(131−1,133−1)に登録されているもの。このような物理デバイスオブジェクトは2回以上の初期化要求を受けることになる。2度目の初期化では、属性値から決定したデバイス制御オブジェクトが1度目に獲得したデバイス制御オブジェクトと同一であるかどうかを比較し(ステップS44)、同一であれば同一のものを使用し、違っていれば新たにデバイス制御オブジェクトを読み込み、生成する。物理デバイスオブジェクト152ではプリンタクラス、FAXクラスに同一のデバイス制御オブジェクト162を使用するが、これはデバイス制御オブジェクトがプリンタとFAXの両方のJava SPIをサポートするものだからである。もし最初にロードしたデバイス制御オブジェクトがプリンタクラスのJava SPIのみをサポートしてFAXクラスをサポートしていなければ、新たに両方をサポートするデバイス制御オブジェクトを検索して入手するか、FAXクラスのサポートをやめる。もし両立ができなければ最初にロードされたクラスが優先されることとする。
【0266】
さて、一般に論理デバイス種別が増えたときに、利用する可能性のある全ての論理デバイスクラスオブジェクトを予め用意しておくことはメモリなどの資源の利用の点で非効率的である。また、一つの物理装置が多数の論理デバイスクラスオブジェクトから利用される可能性があり、かつ下位デバイス制御プログラム(本実施形態のデバイス制御オブジェクト)が上位論理デバイスクラスオブジェクトに依存して変更される場合には物理デバイスに合わせて上位論理デバイスを決定する手順は繁雑になる。特に、IEEE 1394バスのように家庭に導入され、家庭内のネットワークとしても利用されるバスでは接続される機器を予め限定することは難しい。
【0267】
むしろ利用者の利用形態によって規定される上位論理デバイスを利用者が決定して、接続された装置をその方法によって利用することが上記ネットワークにおいては適切である。このため本実施形態では、不明のデバイスクラスを設けることによって使用法が未知の装置をとりあえず認識し、詳しくは後述するように装置に合わせた上位論理デバイスを新たに付け加える方法を取っている。
【0268】
1394管理オブジェクト121が複数の論理デバイスと属性値に対応するクラス名の表を持っており、物理デバイスオブジェクトが2度目の初期化を行う際には2つの論理デバイスクラスオブジェクトの名前と属性値を指定して1394管理オブジェクト121に問い合わせを行っても良い。
【0269】
次に、不明の論理デバイスクラスオブジェクト134の初期化について説明する。
【0270】
不明の論理デバイスクラスオブジェクト134は、131〜133までの論理デバイスクラスオブジェクト134と同様、生成時に1394管理オブジェクト121への参照を受け取る。そして、論理デバイスクラスオブジェクト131〜133の初期化と同様に151,…,156の各物理デバイスオブジェクトへの参照を得る。
【0271】
不明の論理デバイスクラスオブジェクト134は、最初に物理デバイスオブジェクト151への参照を得る。不明の論理デバイスクラスオブジェクト134は物理デバイスオブジェクト151へ論理デバイスオブジェクトへの参照を持っているかどうかの問い合わせを行い、持っていれば物理デバイスオブジェクト151の認識を中止して、次の物理デバイスオブジェクト152への参照を入手する。物理デバイスオブジェクト151,152,153はいずれも他の論理デバイスオブジェクトに登録されているので不明のデバイスとしての登録は行わない。
【0272】
一方、物理デバイスオブジェクト154は、論理デバイスオブジェクトからの参照を持っていない。ここで不明の論理デバイスクラスオブジェクト134は、物理デバイスオブジェクト154に対応する論理デバイスオブジェクト134−1を生成して自身に登録する。論理デバイスオブジェクト134−1は、物理デバイスオブジェクト154を自身に登録する。不明の論理デバイスオブジェクト134−1は、物理デバイスオブジェクト154へ初期化を要求しない。したがって、この時点では物理デバイスオブジェクト154にはデバイス制御オブジェクトは登録されない。
【0273】
以下、物理デバイスオブジェクト155,156についても同様の初期化を行い、不明の論理デバイスオブジェクト134−2,134−3が生成されて、完了の通知を発行し、不明のデバイスクラスの初期化が完了する。
【0274】
論理デバイス管理オブジェクト122は、予め定められた論理デバイスクラスオブジェクトの生成初期化と、それに続く不明の論理デバイスクラスオブジェクトの生成初期化が完了すると終了する。初期化が終ると論理デバイス管理オブジェクト122はアプリケーションからのデバイスクラス一覧要求に答えることができる。初期化が完了する前はアプリケーションからの問い合わせに対して、利用不能の答を返す。
【0275】
次に、アプリケーションからのデバイスの利用について説明する。ここでは、アプリケーションからプリンタ90を利用する場合を例にとって説明する。
【0276】
なお、物理デバイスと論理デバイスとの間のインタフェースをJava SPI、論理デバイスとアプリケーションとの間をJava APIと呼ぶ。これらはOSとJavaとの間のAPIとは異るものである。
【0277】
アプリケーションプログラムは、OSへの問い合わせなどの所定の方法によりプリンタ90に対応する論理デバイスオブジェクト131−1への参照を知っているものとする。
【0278】
例えば、アプリケーションは、論理デバイス管理オブジェクト122への参照を予め知っていて、論理デバイス管理オブジェクト122を通じてプリンタクラスへの参照を獲得し、プリンタクラスからプリンタ131−1への参照を入手する。または、装置構成に関するネーミングサービスが提供されていても良い。
【0279】
アプリケーションプログラムは、postscriptファイルへの参照を引数として、論理デバイスオブジェクト131−1に印刷要求を発行する。
【0280】
論理デバイスオブジェクト131−1は、ファイルのヘッダ情報からそれがpostscriptファイルであることを知り、postscriptファイルをビットマップイメージに展開する。そして、論理デバイスオブジェクト131−1は、ビットマップイメージとビットマップ以外の紙サイズ指定などの情報を含むオブジェクトへの参照を引数として、物理デバイスオブジェクト151に印刷要求を発行する。なお、論理デバイスオブジェクト131−1にて待ち行列処理を行うことが望ましい。
【0281】
物理デバイスオブジェクト151は、デバイス制御オブジェクト161を通じて印刷イメージに対応するビットマップ情報をプリンタ90に転送する。すなわち、プリンタ90の予め定められたCSRレジスタAにlockトランザクションによってPC81が利用するフラグを書き込む。lockに成功してプリンタの使用権を獲得すると、次はデータを転送するためのIEEE1394バス上のIsochrounsチャネルの設定と、紙サイズ、トレイ情報などのプリンタの設定を行うトランザクションを発行する。チャネルを獲得したらビットマップ情報を転送し、転送が完了すると転送完了のトランザクションを発行してプリンタへの印刷指示を完了する。プリンタでの印刷状況はあるCSRレジスタに表示されるので、物理デバイスオブジェクトがそれをポーリングすることによって印刷の完了を知る。
【0282】
次に、不明のタイプとして登録されている装置の利用についてマッサージ装置12を例にとって説明する。
【0283】
図27は論理デバイスクラスオブジェクトを追加したときのソフトウェア構造、図28はアプリケーションによる新規デバイスクラス追加要求手順の一例、図29は論理デバイス管理オブジェクト122による新規デバイスクラス追加手順の一例をそれぞれ示す。
【0284】
アプリケーションは、論理デバイス管理オブジェクト122に論理デバイスクラスの一覧取得要求を発行する(ステップS51)。不明の論理デバイスクラスオブジェクト134への参照を取得すると、不明のデバイスクラス134に論理デバイスの一覧取得を要求する(ステップS52,S53)。
【0285】
アプリケーションは、一覧からマッサージ装置92に対応する論理デバイスオブジェクト134−1への参照を選択して利用可能な論理デバイス情報を要求する(ステップS54)。
【0286】
論理デバイスオブジェクト134−1は、物理デバイスオブジェクト154からその属性値を取得し、論理デバイス管理オブジェクト122に物理デバイスオブジェクト154が利用可能な論理デバイスクラスの検索要求を発行する。既述のように論理デバイス管理オブジェクト122は属性値から論理デバイスクラス名とを対応させるテーブルを持っている。このテーブルから論理デバイスクラス名またはそのリストが論理デバイス134−1に返却され、論理デバイス134−1は要求に対して論理デバイスクラス名を獲得し、論理デバイス情報としてアプリケーションに通知する。もちろん、ここでもデバイスクラス名の検索をネットワーク上のサーバに問い合わせることによって行っても構わない。ドライバオブジェクトの格納場所には少なくともマッサージ装置のデフォルトのドライバのオブジェクトコードと利用法の自然言語による説明が格納されていることが望ましい。
【0287】
アプリケーションは、使用する論理デバイスクラス名「マッサージ装置」を選択して論理デバイスクラス登録要求を論理デバイス管理オブジェクト122に発行する(ステップS55,S56,S57)。
【0288】
論理デバイス管理オブジェクト122は,指定されたクラス名に対応する新しい論理デバイスクラスオブジェクト135を生成し(ステップS61)、不明の論理デバイスクラスオブジェクト134および不明のクラスとリンクされているFAXの論理デバイスクラスオブジェクト133との間に挿入する(ステップS62)。そして、今まで不明のデバイスクラスに登録されていた論理デバイスオブジェクト134−1,134−2を削除して(ステップS63)、論理デバイスクラスオブジェクト135に初期化要求を発行する(ステップS64)。この状態を図27に示す。以後のステップS65とステップS66の手順と新規論理デバイスクラスオブジェクト125の初期化手順は既に説明したものと同様である。なお、図27中、135−1は新たに生成された論理デバイスオブジェクトである。
【0289】
ここでは,不明のデバイスに対応する論理デバイスを検索する例について説明したが、既存の物理デバイスの組合せから、対応する新しい論理デバイスを検索しても良い。例えば、プリンタとスキャナとモデムの機能を持つ各物理デバイスの組合せによって利用可能な新しい論理デバイスFAXを検索するような場合である。
【0290】
上記の機能を備えることにより、普段使用しないデバイスを制御するための不要なプログラムはシステムの初期化時には読み込まず、必要になった時点で読み込むことにより、PCのメモリなどの資源を節約してコストを低下させることができる。
【0291】
次に、1394デバイスの構成変更イベントについて説明する。
【0292】
PCが利用できる1394装置の接続状況は変化し得る。しかも、IEEE1394バスでは動作中にコネクタの挿抜によって構成を変更することができる。この変更結果は、デバイスオブジェクトの追加や削除として論理デバイスに反映されなければならない。また、ある装置によるデバイスの占有が終了すれば、そのデバイスは他の装置で利用可能になる。以下では、このような構成の変化を認識する手順について説明する。
【0293】
バスリセットが発生すると、OSの1394インタフェースから1394管理オブジェクト121にバスリセットが通知される。1394管理オブジェクト121は、再度、TOPOLOGY_MAPおよびSPEED_MAPから1394物理装置の一覧を取得し、それらのunique IDを取得して既知のデバイスとの対応をとる。
【0294】
まず、バスリセット後に、1394管理オブジェクト121は、全ての物理デバイスオブジェクトのexist属性値を「不明」とする。
【0295】
装置から取得したunique IDが既存の物理デバイスオブジェクトの保持するunique IDに一致する場合、その装置は既に登録済みでありexistを「存在」とする。
【0296】
装置から取得したunique IDが既存の物理デバイスオブジェクトの保持するunique IDと一致しない場合、その装置は新しく追加された装置であり、物理デバイスオブジェクトを生成初期化し、existを「存在」とする。
【0297】
この操作を全てのNODE IDについて行った後、existが不明になっている物理デバイスオブジェクトは対応する装置が取り去られたものとして、それを削除する。物理デバイスオブジェクトを削除すると、対応する論理デバイスオブジェクトにそれが通知され、論理デバイスオブジェクトは終了処理を行い、対応するデバイスクラスに通知した後、自身を消去する。
【0298】
追加、削除による参照の修正作業が完了すると、1394管理オブジェクト121は、論理デバイス管理オブジェクト122に構成の変更を通知する。もし構成に全く変化がなければ、通知は行わない。
【0299】
通知を受信した論理デバイス管理オブジェクト122は、各デバイスクラスに構成変更要求を発行する。
【0300】
構成変更要求を受信したプリンタクラス131は、初期化と同様に、論理デバイスオブジェクト122に物理デバイスの参照を要求する。初期化と異るのは、初期化では全ての物理デバイスオブジェクトが対象だったのに対し、構成変更では新しく追加された物理デバイスオブジェクトだけが対象になることである。各論理デバイスクラスは、新しく追加された物理デバイスの属性を読み出し、自クラスに一致するかを判定して一致すれば、対応する論理デバイスオブジェクトを生成、登録する。
【0301】
全てのクラスの構成変更が完了すると、不明のクラスの初期化が行われ、追加されたデバイスでどの論理デバイスとして登録されなかった物理デバイスオブジェクトは不明のクラスに登録される。
【0302】
次に、占有状態の変更について説明する。
【0303】
初期化においてレジスタの読みとりによって他ノードによる占有状態にあると判断されて認識から除外された装置に対して、1394管理オブジェクト121は周期的なポーリングを行ってデバイス占有状態の変更を検出する。非占有状態になったデバイスは、バスリセットで記述したデバイス構成の変化と同様の手順で登録する。もし当該PCが前記装置を排他的に占有するのであれば、それを装置の占有状態を示すレジスタにそれを示す値を書き込む。
【0304】
次に、ローカルの論理デバイスオブジェクトが古い場合について説明する。
【0305】
このような場合、論理デバイスクラスオブジェクトはバージョン番号の属性を持っている。アプリケーションは、論理デバイス管理オブジェクト122に論理デバイスクラスオブジェクトの更新要求を発行することができる。論理デバイス管理オブジェクト122は、更新が要求された論理デバイスクラスオブジェクトのバージョン番号を取得する一方、予め指定された論理デバイスクラスオブジェクトのアーカイブサーバに最新のバージョン番号を要求する。もしローカルの論理デバイスクラスオブジェクトのバージョン番号が最新のものに一致すれば、もしローカルの論理デバイスクラスオブジェクトのバージョン番号が若ければ、アーカイブサーバから最新のデバイスクラスを読み込み、オブジェクトを生成する。この時点ではこの論理デバイスクラスオブジェクトは動作しない。
【0306】
オブジェクトの生成に成功すると、既存の論理デバイスに終了通知を発行し、動作を終了させる。プリンタならば、新たな印刷ジョブの受付を中止し、実行中の印刷ジョブの終了を待つ。実行中のジョブと終了処理が完了すると、論理デバイス管理オブジェクト122に完了を通知する。論理デバイス管理オブジェクト122は、古い論理デバイスの持つ参照関係を変更し、新しい論理デバイスオブジェクトが参照関係を引き継いだ後、論理デバイスの開始通知を論理デバイスクラスオブジェクトに送る。通知を受信した論理デバイスクラスオブジェクトは動作を開始する。
【0307】
(第3の実施形態)
本実施形態では、ネットワークに接続されたPC(第2の実施形態の機能を持つもの)がIEEE1394以外のネットワークを経由して接続された遠隔のIEEE1394装置を制御する場合について説明する。
【0308】
図30に、本実施形態に係るシステムの構成例を示す。401、411、434はそれぞれ第1の家庭451内にあるPC、ネットワーク接続装置、トースタを表す。402、412、431、432、433はそれぞれ第2の家庭452内にあるPC、ネットワーク接続装置、プリンタ、FAX、マッサージ装置を表す。なお、図30中のネットワーク接続装置以外の各構成要素は図1中の対応するものと同様のものである。
【0309】
家庭451内のLANと家庭452内のLANとの間はISDN通信回線413で結ばれているものとする。通信回線413はネットワーク接続装置411,412で終端されている。
【0310】
家庭451内のLANにおいて、接続装置411,PC401,トースタ434の間は1394バス421によって接続されている。
【0311】
家庭452内のLANにおいて、接続装置412,PC402,プリンタ431、スキャナ432、マッサージ装置433の間は、1394バス422によって接続されている。
【0312】
ネットワークはインターネットプロトコルを使うインターネットであり、PC401,402と接続装置411,412のみが予めIPアドレスを持っているものとする。IPアドレスは固定的に割り当てられたものでも、DHCP,PPPなどのプロトコルによって割り当てられたもののどちらでも良い。
【0313】
ここで、家庭451にあるPC401が家庭452の機器との接続を試みる。PC401はインターネットプロトコルによってネットワーク接続装置411に家庭452を示す文字列、例えばその氏名である「高畠由彰」を含む接続要求を送る。そして、ネットワーク接続装置411は例えば「高畠由彰」に対応する家庭452の電話番号を検索するデータベースを持っており、家庭452の接続装置412への接続を行う。
【0314】
接続装置412は、接続の前には接続元の認証を行う。認証ステップで許可されなければ接続は行わないものとする。認証は例えば発信電話番号表示を用い、予め第2の家庭452にて登録した電話番号以外の接続を認めないとすることができる。接続が完了すれば、家庭451,452の間でインターネットプロトコルによる通信を行うことができる。
【0315】
ただし、セキュリティ保護の観点から接続が完了しても接続装置がその家庭の方針によってパケットの通過の可/不可を判断するいわゆるファイアウォールとして動作することが望ましい。ここでは家庭451と家庭452の間は予め全てのパケットが通過し、全ての操作が行えるよう、設定されているものとする。
【0316】
なお、この接続は電話による接続ではなくIP接続であっても構わない。
【0317】
さて、家庭451にあるPC401はサービス管理サーバのアドレスを接続装置411のデータベースから取得する。アドレスは予め接続装置411に登録されているものとする。次に、PC401はサービス管理サーバに利用可能なサービスの問い合わせを行う。ここではネットワーク接続装置412がサービス管理サーバを兼ねているものとする。
【0318】
サービス管理サーバは、問い合わせに応答して当該ネットワーク中のサービスおよびそのサーバの情報を返す。ここでは次のサービスが登録されている。
【0319】
printer:pc2
Java ORB:pc2
左の列はサービスの種別、ここではサービスに割り当てられた多重化識別子(例えばポート番号)を表し、右の列はサービスの所在、ここではPC402のIPアドレスを表す。このようなサービス情報提供手段はインターネットにおいてはサービスロケーションプロトコルとして知られている(例えば文献「インターネットドラフトdraft−ietf−svrloc−protocol−16.txt」)。
【0320】
これらはサービスを提供するホスト、ここではPC402が起動時に予め定められたネットワーク接続装置412に登録する。
【0321】
printerはインターネット標準で定められた印刷サービスを表し、515のUDP/TCP番号が割り当てられている。ここで使用するプロトコルは予めインターネット標準によって規定されている。
【0322】
Java ORBは、Javaオブジェクトを外部から利用できるサービスを表している。このようなサービスは現在まだ標準としては規定されていないが、ここではJava ORBを表すポート番号について予め合意があるものとする。
【0323】
次に、リモートの1394装置を利用する2種類の方法、
方法1)インターネットで標準化されたネットワークサービスを介して利用する方法
方法2)1394プロキシオブジェクトを通じて利用する方法
について説明する。
【0324】
方法1では、PC402にIEEE1394インタフェースによって接続されたプリンタ431をインターネットプロトコルとして標準化されたprinterサービスによって利用する。PC401は、printerプロトコルのクライアントを持ち、プリンタ431を表す論理名称を指定してインターネット形式で標準化された形式の印刷要求をPC402に送り、プリンタを利用する。この方法では、ネットワークを伝送するメッセージには装置依存の要素は含まれない。PC401のアプリケーションは、プリンタサービスとプリンタ431に対応する装置の名前を指定して要求するだけで、装置の特性は意識しない。
【0325】
方法2は、概略的には、ネットワークを伝送するメッセージに、IEEE1394形式のパケットがIPパケットにカプセル化された形式を使うものである。PC401はあたかもプリンタ431がローカルの1394バスに接続されているかのように利用することができる。
【0326】
以下、上記の方法2についてさらに詳しく説明する。
【0327】
図31にクライアント側の接続前におけるネットワーク経由サービスのソフトウェア構造を示し、図32にクライアント側の接続後におけるネットワーク経由サービスのソフトウェア構造を示し、図33にプロキシ側の接続前におけるネットワーク経由サービスのソフトウェア構造を示し、図34にプロキシ側の接続後におけるネットワーク経由サービスのソフトウェア構造を示す。なお、図31〜図34中のIP機能以外の各構成要素は、図2中の対応するものと同様の機能を有するものである。IP機能504は、TCP/UDP/IPなど、一連のインターネットプロトコル(TCP/IPプロトコルシート)の諸機能である。
【0328】
図31は1394スタブオブジェクト生成前のクライアントPC401のソフトウェア構成であり、501は論理デバイス管理機能、502は2次記憶管理機能、511,512は502の配下にあるそれぞれのハードディスクの管理機能、503は1394インタフェース管理機能、513,514はそれぞれの1394インタフェース管理機能、504はIP機能、434はトースタ、509はトースタ機能を示すunit1,521は1394管理オブジェクト、522は論理デバイス管理オブジェクト、531,532,533,534はプリンタ、スキャナ、マッサージ装置、不明の各論理デバイスクラスオブジェクトに対応する。534−1は不明のクラスの論理デバイスオブジェクトである。551はトースタ434に対応する物理デバイスオブジェクトを表す。561は物理デバイスオブジェクト551に対応するドライバオブジェクト(制御プログラム)を表す。
【0329】
図32は1394スタブオブジェクト生成後のクライアントPC401のソフトウェア構成であり、図31の構成に1394スタブオブジェクト571、論理デバイスオブジェクト533−1,533−2、物理デバイスオブジェクト551、ドライバオブジェクト562,563が付加されている。
【0330】
図33は1394プロキシオブジェクト生成前のプロキシ側PC402のソフトウェア構成であり、601は論理デバイス管理機能、602は2次記憶管理機能、611,612は602の配下にあるそれぞれのハードディスクの管理機能、603は1394インタフェース管理機能、613,614はそれぞれの1394インタフェース管理機能、431はプリンタ、432はFAX、433はマッサージ装置をそれぞれ表す。621は1394管理オブジェクト、622は論理デバイス管理オブジェクト、631,632,633,634はプリンタ、スキャナ、FAX、不明の各デバイスクラスに対応する論理デバイスクラスオブジェクト、651,652,653,654,655はそれぞれプリンタのunit1(図中604)、FAXのunit1(図中605),unit2(図中606)、マッサージ装置のunit1(図中607),unit2(図中608)に対応する物理デバイスオブジェクト、631−1,631−2,632−1,633−1,634−1,634−2はそれぞれ論理デバイスクラスの配下にある論理デバイスである。661,662,663はそれぞれ物理デバイスオブジェクト651,652,653に対応するドライバオブジェクトを表す。
【0331】
図34は1394プロキシオブジェクト生成後のプロキシ側PC402のソフトウェア構成であり、図33の構成に1394プロキシオブジェクト681、論理デバイスクラスオブジェクト635、論理デバイスオブジェクト635−1,635−2が付加され、論理デバイスオブジェクト634−1,634−2が削除されている。
【0332】
PC401は、サービス情報に基づいてリモートのPC402のIPアドレスを指定して1394スタブオブジェクト571を生成する。1394スタブオブジェクトは、リモートのPC402のJava ORBポートに1394プロキシオブジェクトに割り当てられたクラス名を指定して、その生成を要求する。
【0333】
あるホストから別のホストのJava ORBを利用するときには、受信側のセキュリティマネージャがその接続を許すか否かを判断する。これは送信側のオブジェクトによるORBの利用要求によって自動的に行われるものとする。
【0334】
ここでは、PC401からのORB利用要求がPC402によって受け付けられたものとし、PC402では要求通り1394プロキシオブジェクト681が生成され、その参照がPC402の1394スタブオブジェクトに返却される。1394スタブオブジェクト571は、以後の要求を1394プロキシオブジェクト681を通じて行う。なお、PC402が要求前に予め1394プロキシオブジェクト571を生成しておき、当該オブジェクトから起動できるメソッドのみが利用できるORBを1394サービスとしてあるポートに割り当てても構わない。これは、1394に限定したサービスを提供したい場合に有効である。
【0335】
1394プロキシオブジェクト681は、参照を受けとると、不明クラスの論理デバイスに対応する物理デバイスへの参照を獲得し、1394スタブオブジェクト571に通知する。
【0336】
1394スタブオブジェクト571は、上記参照を獲得すると、1394管理オブジェクト522に1394管理オブジェクト自身を登録し、1394デバイスを再構成する要求を発行する。
【0337】
1394管理オブジェクト522は、この要求によって1394プロキシオブジェクト681によって再構成を開始し、物理デバイスオブジェクトへの参照を要求する。1394スタブオブジェクトは571、1394プロキシオブジェクト681から獲得した物理オブジェクトへの参照654,655を順番に1394管理オブジェクト521に渡す。ここから属性値を取りだし、1394管理オブジェクト521は第2の実施形態で説明した初期化の場合と同様の手順で物理デバイスオブジェクト552,553を作成する。ただし、ここで作成した物理デバイスオブジェクト(以下、スタブデバイスオブジェクトとよぶ)は、リモートにある物理デバイスオブジェクトへの参照を保持しており、ローカルの物理デバイスオブジェクトでは1394インタフェースへのトランザクション要求として処理される入出力が、スタブデバイスオブジェクトでは1394スタブオブジェクト571との間の入出力として処理される点が異る(なお、その詳細は後述する)。
【0338】
次に、論理デバイス管理オブジェクト522による論理デバイスクラスオブジェクト533の初期化、それに続く論理デバイスオブジェクトの初期化が行われる。スタブオブジェクト552,553は物理デバイスオブジェクト654,655に対応しマッサージ装置クラスに合致する。リモートのPC402ではマッサージ装置クラスは利用されていないため、これらの装置は不明の装置として認識されているが、ローカルのPC401ではマッサージ装置クラスが登録されているので、論理デバイスオブジェクト533−1,533−2として登録される。
【0339】
論理デバイスオブジェクト533−1からスタブオブジェクト552に初期化要求が行われると、リモートの1394プロキシオブジェクト681に対応する物理デバイスオブジェクト654の使用要求を発行する。
【0340】
リモートの1394プロキシオブジェクト681は、プロキシクラスの論理デバイスクラスオブジェクト635を生成し、登録する。物理デバイスオブジェクト654に対応する論理デバイスオブジェクト634−1を消去し、プロキシクラスのデバイスをつくってプロキシ論理デバイスオブジェクト635−1として登録する。
【0341】
プロキシ論理デバイスオブジェクト635−1が生成されると、スタブオブジェクト533−1との間とにポート番号を割り当てて論理コネクションを生成する。ここで使うポートはJava ORBとは別のポートを用いて1394パケットの伝送を行うためのものである。
【0342】
制御プログラムが読み込まれて動作するのはローカルのPC401のスタブオブジェクト552の側であり、リモートのPC401の物理デバイスオブジェクトはポートから入力したパケットを1394インタフェースに出力し、1394インタフェースから入力したパケットをポートに転送するだけであり、装置の状態制御はスタブオブジェクト552の制御プログラム562が行う。ただし、バスリセットなどのイベントは伝達する。
【0343】
論理デバイスオブジェクト533−2からスタブオブジェクト553に初期化要求が行われた場合についても同様である。
【0344】
以上の手順により、リモートの物理デバイスをローカルの論理デバイスから利用できるできる環境が整う。
【0345】
次に、動作について説明する。ここでは、スタブの物理デバイスオブジェクト552を例に取って説明する。
【0346】
物理デバイスオブジェクト552が論理デバイスドライバ531−1から処理要求を受けとり、それに対応する1394形式のパケットを生成する。1394形式のパケットはIPパケットにカプセル化されて前記確保した論理コネクションに出力される。
【0347】
ここで、物理デバイスオブジェクト552からの出力は、IEEE1394インタフェース503に直接出力されるのではなく、論理コネクションからIP機能504を通して処理される。
【0348】
ここでは、IP機能504の先はIEEE1394インタフェースによって処理されているが、これはイーサネットやATMであっても構わない。つまり、IEEE1394インタフェースを持っていないPCでもIEEE1394装置があたかもローカルに接続されているかのように制御を行うことができる。
【0349】
さて、IPパケットにカプセル化されたパケットはプロキシ論理デバイスオブジェク635−1に届き、1394形式のパケットが取り出され、物理デバイスオブジェクト654に渡される。物理デバイスオブジェク654はこれをそのまま1394インタフェースに出力し、装置433のレジスタに作用する。
【0350】
IEEE1394のアイソクロナスチャネルの入出力は前述の方法では中継できない。IEEE1394においてはIEC 1883で定められた方式でレジスタを操作することによってアイソクロナスチャネルが設定される。
【0351】
スタブオブジェクト552から自装置宛に発行されたIEC1883の設定要求は、1394スタブオブジェクト571転送され、1394スタブオブジェクト571はアイソクロナスチャネルに対応するインターネット上のコネクションを設定する。
【0352】
IEEE1394のアイソクロナスチャネルでは確保する帯域を指定することができる。上記設定要求にはその情報が含まれているので、インターネット上で帯域を確保する手段例えばRSVPなどの手段によってコネクションの帯域を指定することが望ましい。
【0353】
なお、本実施形態では、家庭451内のLANと家庭452内のLANとの間はISDN通信回線413で結ばれているものとしたが、第1の実施形態と同様に、家庭451内のLANと家庭452内のLANとの間の接続をインターネットとし、この場合に端末のIPアドレスにはグローバルIPアドレスを用いるようにしてもよいし、例えばNAT(Network Address Translation)等のアドレス変換を用いて、公衆網2がインターネットである場合に少なくともネットワークの相互接続を行うノード(図1ではAV接続装置端末)にグローバルIPアドレスを用い、その他のノードにはプライベートIPアドレスを用いることができるようにしてもよい。
【0354】
なお、以上の各機能は、ソフトウェアとしても実現可能である。また、上記した各手順あるいは手段をコンピュータに実行させるためのプログラムを記録した機械読取り可能な媒体として実施することもできる。
【0355】
本発明は、上述した実施の形態に限定されるものではなく、その技術的範囲において種々変形して実施することができる。
【0356】
(第4の実施形態)
第1の実施形態では、図12に示したように、第1のAV接続装置4に対して第2の家庭ネットワーク内の収容されたサービス提供装置(例えば、DVDプレーヤ8、デジタルVTR9、PC10に具備されたWWWサーバやデジタルアルバムサーバ機能等、プリンタ11)の提供するサービスに関する情報(以下、簡単にサービス情報と呼ぶ)を通知するのに、サービスロケーションプロトコルを用いる場合を示した。
【0357】
第4の実施形態では、WWW(World Wide Web)サーバと、ホームページを用いて、これを行う場合について説明する。
【0358】
第4の実施形態におけるシステム構成例は図1と同様である。ここでも、第1の実施形態と同様に、第1の家庭内ネットワークの第1のAV接続装置4から、第2の家庭内ネットワーク内の各種サービス提供装置(DVDプレーヤ8、デジタルVTR9、PC10に具備されたWWWサーバ、デジタルアルバムサーバ機能等、プリンタ11)の遠隔制御を行うことを考える。
【0359】
図35は、第4の実施形態における、第2のAV接続装置5の内部構成例を示したもので、1394I/F1401、データリンクスイッチ1402、公衆網I/F1403、IP処理機能1404、FANP処理機能1405、1394AVコマンド処理機能1408の各部の動作は、図2の同一機能部と同様で、異なる点について説明する。すなわち、図2のサービスロケーション処理機能27、1394/IPコマンド変換機能29が、図35では、それぞれホームページ処理機能1407、HTTP/RTSP処理機能1409に置き換えられている。
【0360】
1394/IPサービスロケーション処理機能1406は、第1の実施形態と同様に、IEEE1394バスに接続されているサービス提供装置の提供するサービスを検索し、あるいはその登録を受け、1394バス上にどのようなサービス提供装置が存在し、どのようなサービスを提供するのかを認識し、要求された場合など必要に応じて、サービス情報を外部に通知する機能を持つ。また、このようにして得られた各サービス提供装置毎のサービス情報を後述するホームページ処理機能1407に通知し、第2の家庭内ネットワークの状況を表示するホームページの作成を促す。
【0361】
ホームページ処理機能1407は、WWWサーバ機能を持つ。1394/IPサービスロケーション処理機能1406から、第2の家庭内ネットワークのサービス情報を受け取り、それをホームページとしてまとめる。例えば、各サービス提供装置を表すアイコン、文字列をホームページ上に配置する。そして、各サービス提供装置を遠隔制御するためのコマンドを、それぞれに対応するホームページ上の各々のサービス提供装置を表すアイコン、文字列にリンクさせる。このようにして作成されたホームページに例えば公衆網2を介してアクセスがあった場合には、必要に応じて要求されたホームページを送信したり、公衆網2を介して受信した遠隔制御のためのコマンドをHTTP/RTSP処理機能1409に転送するようになっている。詳細は後述する。
【0362】
ここで、サービス提供装置を遠隔制御するためのコマンドとは、HTTPあるいはRTSP(WWWサーバ中のリアルタイムメディアを遠隔操作するためのプロトコル)等に適したものである。HTTPに適した遠隔制御のためのコマンドをHTTPコマンド、RTSPに適した遠隔制御のためのコマンドをRTSPコマンドと呼ぶ。
【0363】
HTTP/RTSP処理機能1409は、内部にHTTPデーモンあるいはRTSPデーモンを有しており、ホームページ処理機能1407から転送されてきたHTTPコマンドあるいはRTSPコマンドに対する処理を行う機能と共に、そのコマンドの宛先が、第2のAV接続装置5が代理となって公開しているサービスに割当てられているものである場合には、それを必要に応じてIEEE1394コマンドに変換し、1394AVコマンド処理機能1408を介して、1394バス3上の機器の制御を行う機能(代理処理)も有する。
【0364】
次に、第2の家庭内ネットワークにおいて、第2のAV接続装置5が第2の家庭内ネットワークに接続された各サービス提供装置のサービス情報を取得する手順について説明する。これは、第1の実施形態と同様である。即ち、図3に示したように、第2のAV接続装置5は、接続された機器(DVDプレーヤ8、デジタルVTR9、PC10、プリンタ11)のコンフィグレーションメモリを読み取ることと、図9に示したように、サービスロケーションプロトコルを用いることとで、第2の家庭内ネットワークに接続されたサービス提供装置のサービス情報を取得する。
【0365】
なお、コンフィグレーションメモリに含まれる情報は、図4、図5、図6の様なものがあってもよい。また、図10に示した形式でサービス情報が登録されていてもよい。
【0366】
さて、この時点で、第2のAV接続装置5は、コンフィグレーションメモリの読み込みを通じて、1394ノードとしてDVDプレーヤ8、デジタルVTR9、PC10、プリンタ11を認識する。また、サービスロケーションプロトコルを通じて、さらに、WWWサービス、デジタルアルバムサービス、エアコンサービス、電子レンジサービスのそれぞれを認識する。ここで、第2のAV接続装置5は、エアコンサービスと電子レンジサービスはPC10にて提供されるサービスであると認識する。
【0367】
さて、第2のAV接続装置5は、この収集したサービス情報に基づき、「その家には何があるか(どんなサービス提供装置、どんなサービスが存在するか)」を紹介するホームページを作成する。
【0368】
作成されるホームページは、例えば、図36に示すように、ユーザに認識させたいサービス提供装置毎に、それらを表すアイコンや文字列などを列挙するものである。このホームページは、例えばその家のWWWサーバがデフォルトで紹介する最初のホームページの中の、例えば「わが家の電気機器」といった文字列なり、アイコンなりからのハイパーリンクで到達できるように、これを構築してもよい。ちなみに、この「わが家の電気機器」のホームページに移る際は、許可を得ていない他人に侵入されないように、何らかの認証手続きを経るのが望ましい。
【0369】
図36に示したようなホームページ中のアイコン、文字列をクリックすると、それに対応するサービス提供装置あるいはサービス毎のホームページが現れるようにする。例えば、図36のDVDプレーヤのアイコンをクリックすると、それにリンクされた図39に示すような「DVDプレーヤのホームページ」が表示されるようにしてもよい。
【0370】
このような構成の例えば図36に示すようなホームページを作成するために、ホームページ処理機能1407は、例えば図37のフローチャートに示すような手順を踏む。
【0371】
まず、1394/IPサービスロケーション処理機能1406に登録されているサービス情報を、例えばサービス提供装置毎に1つずつ読み出し、各サービス提供装置毎のホームページ(例えば、図39に示すような「DVDプレーヤのホームページ」)を作成する(ステップS101〜ステップS102)。
【0372】
図38に示すフローチャートは、ステップS102のサービス提供装置毎のホームページ作成処理手順を示したものである。
【0373】
1394/IPサービスロケーション処理機能1406に具備されている各サービス提供装置毎のRTSPコマンド対応テーブル1410(図50参照)を参照して各サービス提供装置の予め定められたコマンド群(ホームページを通して、ユーザに公開するサービス提供装置の制御のためのコマンド群)を取得し(ステップS111)、各コマンド毎にそれに対応するアイコンあるいは文字列を作成する(ステップS112)。例えば、サービス提供装置がDVDプレーヤの場合、図50のRTSPコマンド対応テーブルから「再生」を指示するための「PLAY」というRTSPコマンドを取得し、そのコマンドに対応するアイコン(図39のアイコンi206)を作成する。
【0374】
RTSPコマンド対応テーブル1410は、各サービス提供装置毎にRTSPコマンドが記述してある。例えば、DVDプレーヤ8の場合、コマンド群としては、電源オン、電源オフ、再生、巻き戻し、前の曲、早送り、次の曲、停止、一時停止の各RTSPコマンドが挙げられる。また、図50に示すように、第2のAV接続装置5にて代理処理を行っているDVDプレーヤ8、デジタルVTR9の場合は、各RTSPコマンドに対応する1394コマンドをともに記憶されている。
【0375】
なお、RTSPコマンド対応テーブル1410は、後述する図42の1394/IPコマンド変換機能1423に具備されるテーブルと同一のものであってもよい。
【0376】
さて、ステップS112で作成されたアイコンあるいは文字列に、そのサービス提供装置のRTSPコマンドを対応付ける(ステップS113)。例えば、図39の「再生」のアイコンi206には、「PLAY」というRTSPコマンドを対応させる。例えば、アイコンあるいは文字列と、それに対応するRTSPコマンドとをテーブルに登録しておいてもよい。
【0377】
なお、第2のAV接続装置5にて代理処理を行っているDVDプレーヤ8、デジタルVTR9の場合は、第2のAV接続装置5のアドレスとDVDプレーヤ8、デジタルVTR9それぞれのIEEE1394ノードに割り当てたポート番号をRTSPコマンドに含める。
【0378】
以上をそのサービス提供装置の提供する全てのコマンドに対し行い、作成されたアイコンあるいは文字列を適当に配置して、例えば図39に示すようなサービス提供装置のホームページを作成する(ステップS114〜ステップS115)。
【0379】
次に、図37の説明に戻り、図38のフローチャートに従って作成された各サービス提供装置毎のホームページへのハイパーリンクを持った、そのサービス提供装置のアイコンあるいは文字列を作成あるいは取得する(ステップS103)。すなわち、サービス提供装置毎のアイコン等は、そのサービス提供装置のコンフィグレーションメモリから取り出してもよいし、サービスロケーションプロトコルにより、このアイコンの位置を一意に指定できるURLが提供され、そこに取りに行く形で入手してもよい。
【0380】
ステップS103で得たアイコンを、「わが家の電気機器」のホームページに貼り付ける。以上の手順を第2の家庭内ネットワークに収容されれている全てのサービス提供装置について行い、図36のようなホームページが作成できる(ステップS104)。
【0381】
さて、図36に示したホームページ上のサービス提供装置を表すアイコンあるいは文字列のうち、DVDプレーヤを表すアイコンi101をクリックすると、このアイコンに対応付けられたサービス提供装置のホームページ、すなわち、図39に示したようなDVDプレーヤのホームページが現れる。
【0382】
図39に示したようなサービス提供装置のホームページ、すなわち、この場合、DVDプレーヤのホームページは、DVDプレーヤの操作盤として用いて、ユーザはDVDプレーヤ8を遠隔制御することができる。例えば、「電源ON」ボタンをクリックすると、DVDプレーヤ8の電源がオンになる、といった具合である。
【0383】
次に、例えば、第1の家庭内ネットワークのPC6から第1のAV接続装置4、公衆網2を介して、第2の家庭内ネットワーク内の各種サービス提供装置(DVDプレーヤ8、デジタルVTR9、PC10に具備されたWWWサーバ、デジタルアルバムサーバ機能等、プリンタ11)を遠隔制御する場合の処理動作を図40に示すシーケンス図を参照して説明する。
【0384】
第1の家庭内ネットワークに収容されているPC6にて所定のWWWブラウザを用いることにより、図36に示したようなホームページが提示されたとする。ユーザが、例えばDVDプレーヤi101のアイコンをクリックすると、それに対応つけされたDVDプレーヤのホームページを要求するHTTPメッセージがPC6から出力される。
【0385】
このメッセージを受けて、第1のAV接続装置4では第2のAV接続装置5に対して、DVDのホームページの送出要求を行う(ステップS4501)。例えば、「GET/appliances/dvd.html HTTP/1.1」というメッセージが第1のAV接続装置4から第2のAV接続装置5に送信される。
【0386】
これを受けて、第2のAV接続装置5は、例えば図39で示したようなDVDプレーヤのホームページのテキスト(図41参照)を第1のAV接続装置4に対して送付する(ステップS4502)。
【0387】
図41に示すように、例えば「再生」のアイコンi206に付与されるハイパーリンクは、再生を指示するためのRTSPの「PLAY」コマンドであり、その接続先となるノード(本実施形態の場合、第2のAV接続装置5のIPアドレス、即ち「192.168.1.254」)と、そのポート番号(本実施形態の場合「2000」)とが付加されている。このようにすることにより、「再生」のアイコンi206をクリックすれば、ユーザは、RTSPの「PLAY」コマンドを送信先のアドレスを気にすることなく所望のノードの所望のポートに送出することができるようになる。もって、RTSPを使った遠隔制御をハイパーリンクの関連付けを通して行うことができるようになる。
【0388】
さて、第1のAV接続装置のユーザは、DVDのホームページを受け取ると、DVDプレーヤの遠隔操作を開始できる。例えば、図39のホームページの「電源ON」のアイコンi201をクリックしたとする(ステップS4503)。「電源ON」のアイコンi201には、例えば、RTSPの「SETUP」コマンドがハイパーリンクにより対応づけられている。よって、「SETUP rtsp://192.168.1.254:2000 RTSP/1.0 1 Transport: rtp/udp;port=5500」といコマンドデータが第1のAV接続装置4から第2の接続装置5に送信される(ステップS4504)。このコマンドデータによって、第1のAV制御装置4は、RTP/UDPの各プロトコルを使用してデータを送信し、受信側のポート番号は「5500」を用いることを要求している。
【0389】
これを受け取った第2のAV接続装置5の動作を以下に説明する。第2のAV接続装置のHTTP/RTSP処理機能1409の内部構成例を図42に示す。上記RTSPの「SETUP」コマンドデータは、HTTP/RTSP主処理機能1421に到達する。ここでは、まず、「SETUP」コマンドデータ中、ポート番号「2000」は、1394ノードであるDVDプレーヤ8に割り当てられているポート番号である事を認識し、RTSP代理機能1422に制御が渡される。
【0390】
RTSP代理機能1422は、1394/IPコマンド変換機能1423内のテーブルを参照して、対応する1394AV/Cコマンド(本実施形態の場合、電源オンを意味するAV/Cコマンド)を見つけ、該当する1394ノード(本実施形態の場合、DVDプレーヤ8)に対して、1394AVコマンド処理機能1408を通して、上記AV/Cコマンドを発行する(ステップS4505)。
【0391】
これに成功すると、第2のAV接続装置5は、第1のAV接続装置4に対して、制御完了を意味するRTSPの「OK」コマンドデータ(例えば、「RTSP/1.0 200 1 OK Session: 1234」)を送出する(ステップS4506)。その際に、RTSPコマンドには、このセッションを通して一意の番号として、セッション番号(本実施形態の場合、「1234」)を付加している。第1のAV接続装置4のブラウザは、このセッション番号を保持し、以下同一の装置に対してRTSPコマンドを発行する場合、セッション番号「1234」をコマンドに付加する。
【0392】
次に、ユーザは、図39のホームページの「再生」のアイコンi206をクリックしたとする(ステップS4507)。「再生」のアイコンi206には、例えば、RTSPの「PLAY」コマンドがハイパーリンクにより対応づけられている。よって、このハイパーリンクによって対応づけられた第2のAV接続装置5(IPアドレス「192.168.1.254」、ポート番号「2000」、セッション番号「1234」)に対して、「PLAY rtsp://192.168.1.254:2000 RTSP/1.0 2 Session: 1234」というコマンドデータが第1のAV接続装置4から送信される(ステップS4508)。
【0393】
これを受信した第2のAV接続装置5は、DVDプレーヤ8の再生を促すべく、
IEC1883による同期チャネルの確保(ステップS4509)、1394AV/CプロトコルのDVDプレーヤ8に対する「PLAY」コマンドの実行(ステップS4510)を行い、映像データの上記確保した同期チャネルに対する送出を促す。そして、DVDプレーヤ8から映像データの送信準備が完了した旨の「ACK」信号を受け取ったとき、第2のAV接続装置5は、RTSPの「OK」コマンドデータ(「RTSP/1.0 200 2 OK Session:1234」)を第1のAV接続装置4に送信する(ステップS4511〜ステップS4512)。
【0394】
その後、第2のAV接続装置5は、この同期チャネルを通して送られてきた映像データをIPカプセル化し、IPパケットとして第1のAV接続装置4に対して送出する(ステップS4513〜4515)。
【0395】
第1のAV接続装置4は、IPパケットとして上記映像データを受信し、映像の表示など必要な処理を行う。映像の送出先をデジタルTV7とする場合は、第1の実施形態と同様に、第1の家庭内ネットワークであるIEEE1394上における必要な同期チャネルの確保や、第1のAV接続装置4がデジタルTV7に対して、該同期チャネルからのデータ受信及びそのデータの画面への表示を指示した後、上記映像データを受信IPパケットから取り出し、IEEE1394向けのフォーマットに変換した後、第1の家庭内ネットワークに送出すればよい。
【0396】
なお、ユーザが、図39のホームページの「電源ON」のアイコンi201をクリックする前に「再生」のアイコンi206をクリックした場合でも、そのユーザはDVDプレーヤ8の操作の意志があると判断して、「再生」のアイコンi206のクリックに呼応して、「SETUP」コマンドと、「PLAY」コマンドの両方を送出するようになっていても良い。
【0397】
また、DVDプレーヤのホームページを開く時点で、RTSPコマンドとして、
DVDプレーヤの「SETUP」コマンドを送出するようになっていても良い。
【0398】
以上説明したように、第2の家庭内ネットワークに収容される遠隔制御可能な全てのサービス提供装置から収集されたサービス情報に基づき第2のAV接続装置5は、RTSPコマンド対応テーブル1410を参照して各サービス提供装置のRTSPコマンドとリンクされたアイコンを掲載するホームページを作成し、このホームページにアクセスした第1のAV接続装置4側で所望のアイコンがクリックされたとき、そのアイコンにハイパーリンクによって対応付けられた(HTTP/RTSP処理機能1409の1394/IPコマンド変換機能1423のテーブルに登録されている)RTSPコマンドが、1394AV/Cコマンドに変換されて所望のサービス提供装置に対し所望の制御を実行することにより、第2の物理ネットワーク(例えばIEEE1394バス3)に接続されたサービス提供装置(例えばDVDプレーヤ8)がデータリンクレイヤに依存するプロトコルしか解釈できない場合でも(本発明のAV接続装置を用いれば)遠隔制御が可能となる。
【0399】
さて、以上は第2のAV接続装置5が映像データをIPパケットにカプセル化して送出する場合について説明した。これに対して、第2のAV接続装置5が、IPカプセル化を行わず、非IPデータのまま第1のAV接続装置4に対して映像データを送出する方法も考えられる。この場合について図43に示すシーケンスを参照して説明する。
【0400】
ステップS4801〜ステップS4802の第1のAV接続装置4のユーザは、DVDプレーヤのホームページを受け取り、DVDプレーヤの遠隔操作を始めるまでは、図40の説明と同様である。
【0401】
例えば、図39のホームページの「電源ON」のアイコンi201をクリックしたとする(ステップS4803)。「電源ON」のアイコンi201には、例えば、RTSPの「SETUP」コマンドがハイパーリンクにより対応づけられている。よって、「SETUP rtsp://192.168.1.254:2000 RTSP/1.0 1 Transport: iec1883/nonip;port=FANP」というRTSPの「SETUP」コマンドデータが第1のAV接続装置4から第2の接続装置5に送信される(ステップS4804)。このコマンドデータにより、第1のAV制御装置4は、データをIEC1883でカプセル化し、IPパケットではない形で送信することを要求している(すなわち、RTSPの[SETUP」コマンドには非IPパケット化を指示するための「iec1883/nonip」という情報を含んでいる)。また、送信されるデータのリンクレイヤ情報と、属性情報を知るために、第2のAV接続装置5に対して、FANPを用いて、上記情報を第1のAV接続装置4に通知することを要求している。
【0402】
RTSPの「SETUP」コマンドデータは、第2のAV接続装置5のHTTP/RTSP処理機能1409で受け取られ、HTTP/RTSP主処理機能1421に到達する。
【0403】
HTTP/RTSP主処理機能1421では、ポート番号「2000」は、1394ノードであるDVDプレーヤ8に割り当てられている番号である事を認識し、RTSP代理機能1422に制御が渡される。
【0404】
RTSP代理機能1422は、1394/IPコマンド変換機能1423内のテーブルを参照して、対応する1394AV/Cコマンド(本実施形態の場合、電源オンを意味するAV/Cコマンド)を見つけ、該当する1394ノード(本実施形態の場合、DVDプレーヤ8)に対して、1394AVコマンド処理機能1408を通して、上記AV/Cコマンドを発行する(ステップS4805)。
【0405】
これに成功すると、第2のAV接続装置5は、第1のAV接続装置4に対して、制御完了を意味するRTSPの「OK」コマンドデータ(例えば、「RTSP/1.0 200 1 OK Session: 1234」)を送出する(ステップS4806)。その際に、RTSPコマンドには、このセッションを通して一意の番号として、セッション番号(本実施形態の場合、「1234」)を付加している。第1のAV接続装置4のブラウザは、このセッション番号を保持し、以下同一の装置に対してRTSPコマンドを発行する場合、セッション番号「1234」をコマンドに付加する。ブラウザが保持するセッション番号は、ユーザによる明示的なセッションの終了、例えばセッション終了に対応するハイパーリンクの参照、または対向側の第2のAV接続装置5によるセッションの終了、もしくはページのリロードによっても更新される。
【0406】
次に、ユーザは、図39のホームページの「再生」のアイコンi206をクリックしたとする(ステップS4807)。「再生」のアイコンi206には、例えば、RTSPの「PLAY」コマンドがハイパーリンクにより対応づけられている。よって、このハイパーリンクによって対応づけられた第2のAV接続装置5(IPアドレス「192.168.1.254」、ポート番号「2000」、セッション番号「1234」)に対して、「PLAY rtsp://192.168.1.254:2000 RTSP/1.0 2 Session: 1234」というコマンドデータが第1のAV接続装置4から送信される(ステップS4808)。
【0407】
これを受信した第2のAV接続装置5は、DVDプレーヤ8の再生を促すべく、
IEC1883による同期チャネルの確保(#X)、1394AV/CプロトコルのDVDプレーヤに対する「PLAY」コマンドの実行を行い、映像データの上記確保した同期チャネルに対する送出を促す(ステップS4809〜S4811)。そして、DVDプレーヤ8から映像データの送信準備が完了した旨の「ACK」信号を受け取ったとき、第2のAV接続装置5は、RTSPの「OK」コマンドデータ(「RTSP/1.0 200 2 OK Session: 1234」)を第1のAV接続装置4に送信する(ステップS4811〜ステップS4812)。
【0408】
その後、第2のAV接続装置5は、この同期チャネル(#X)を通して送られてきた映像データを、IPカプセル化は行わず、そのまま公衆網のカプセル化をして、第1のAV接続装置4に対して送出する。例えば、公衆網がATM網であれば、第2のAV接続装置5に伝送されてきたIEC1883パケットをそのままATM網にマッピングして送出してもよいし、IEC1883パケットを一度外し、映像データそのものをATM網にマッピングして送出してもよい。いずれにしろ、第2のAV接続装置5が送出するリンクレイヤのヘッダ情報を第1のAV接続装置4に対して通知するため、FANPメッセージ「FANP message (ch: #y、 Session:1234)」を送出する(ステップS4813)。
【0409】
FANPメッセージの使い方は、基本的に第1の実施形態と同様であるが、ステップS4812において通知されたセッション番号に対応するFANPであることを明確にするために、このFANPメッセージにはステップS4812にて通知された値と同一の値のセッション番号(本実施形態の場合「1234」)が含まれても良い。この様にすることにより、受信側ノードすなわち第1のAV接続装置4は、FANPメッセージが前記RTSPの「PLAY」コマンドに対応するものであることを認識する事ができる。
【0410】
さて、第2のAV接続装置5では、DVDプレーヤ8から同期チャンネル(#X)で送られてきた映像データをIPカプセル化せずに公衆網2に出力すると、それを受信した第1のAV接続装置4では、映像の表示など必要な処理を行う(ステップS4814〜S4816)。その際、ステップS4815にあるように、例えば、MPEGover1394からMPEGoverATM等、伝送されるネットワークに依存するデータ伝送方法が規定されている場合は、必要なフォーマット変換を行っても良い。また、映像の送出先をデジタルTV7とする場合も前述の場合と同様である。
【0411】
以上の第4の実施形態では、ホームページ中のアイコンあるいは文字列にサービス提供装置を遠隔制御するためのRTSPコマンドをハイパーリンクにて対応させる場合について説明してきたが、ハイパーリンクにて対応させる代わりに各RTSPコマンドに対応するホームページ中のアイコンあるいは文字列のそれぞれに、対応するRTSPコマンドデータを作成するためのプログラム(例えばJAVA(登録商標)プログラム)を張り付け、そのアイコンあるいは文字列がクリックされた場合は、該プログラムを第1のAV接続装置4(例えば、第1のAV接続装置4上のJAVA仮想マシン)にて起動して、図40や図43で説明したようなRTSPコマンドが送出されるようになっていてもよい。
【0412】
この場合の処理動作は、図40、図43と同様であり、異なるのは、例えば図40のステップS4504、図43のステップS4802で第2のAV接続装置5から送信されるサービス提供装置のホームページのテキスト記述である。
【0413】
サービス提供装置のホームページのテキストの一例を図44に示す。図44には、DVDプレーヤのホームページのテキストで、例えば、図39の「再生」のアイコンi206にRTSPコマンドを生成するプログラムが付加されている。
【0414】
やはり、この場合も、「再生」のアイコンi206をクリックすれば、RTSPの「PLAY」コマンドを生成するプログラムを起動することにより、そのコマンドを所望のノードの所望のポートに送出することができるようになり、もってRTSPを使ったサービス提供装置を遠隔制御することができる。
【0415】
次に、図39のホームページの「詳細設定」のアイコン(ボタン)i210について説明する。このボタンは、RTSPコマンドにて予め定められた遠隔制御よりも細かな操作を対象のサービス提供装置(例えば、DVDプレーヤ8)に対して行いたい場合に用いるものである。即ち、IEEE1394のAV/Cプロトコルにて規定されるDVDプレーヤ8の制御コマンドは、RTSPで規定されるコマンドよりも多岐にわたる可能性がある。このように、RTSPコマンドにて、1394AV/Cのすべてのコマンドに対応できない場合の対策として、これを行うホームページを別途設け、図39の「詳細設定」のボタンを押すと、それに対応付けられた、例えば「GET /appliances/dvd_detail.html HTTP/1.1」というコマンドが送出されて、図47に示すようなDVDプレーヤの詳細設定のためのホームページが送付される。
【0416】
図45は、サービス提供装置の詳細設定のためのホームページの作成処理手順を示したものである。すなわち、前述の各サービス提供装置毎のコマンドテーブル1410にて対応がなされていない、そのサービス提供装置のリンクレイヤ方式(本実施形態の場合、IEEE1394のAV/Cプロトコル)に依存したコマンド(ネイティブコマンド)を登録したネイティブコマンド対応テーブルを別途1394/IPサービスロケーション処理機能1406に具備している。各サービス提供装置毎にネイティブコマンドテーブルを参照してネイティブコマンドを取得し(ステップS121)、各コマンド毎にそれに対応するアイコンあるいは文字列を作成する(ステップS122)。生成されたアイコンあるいは文字列にはCGI(Common Gateway Interface)スクリプトを対応付ける(ステップS123)。以上をそのサービス提供装置のネイティブコマンドの全てに対し行い、作成されたアイコンあるいは文字列を適当に配置して、例えば図47に示すようなサービス提供装置の詳細設定のためのホームページを作成する(ステップS124〜ステップS125)。
【0417】
なお、ネイティブコマンド対応テーブルは、図42に示したHTTP/RTSP処理機能に具備されているCGI処理機能1424内のテーブルと同様のものであっても良い。
【0418】
図47のDVDプレーヤの詳細設定のためのホームページに配置されたボタン(アイコンあるいは文字列)の一部は、第2のAV接続装置5内のCGI(Common Gateway Interface)処理機能により処理されるCGIスクリプトに対応付けされている。そして、おのおののCGIスクリプトが、対応するIEEE1394のAV/Cコマンドを、第2の家庭内ネットワークのIEEE1394バスに対して送出するようなスクリプトとなっており、もって、上記アイコンあるいは文字列をクリックすればAV/Cプロトコルで定められた粒度の制御が行えるようになる。
【0419】
このようにして、詳細設定のためのホームページを作成し、そのホームページ内のアイコンあるいは文字列がクリックされると、それい対応付けられた第2のAV接続装置5内のCGIスクリプトを起動するための要求メッセージがHTTPにて送信され、それを受けて第2のAV接続装置5では、該CGIスクリプトを起動し、対応するAV/Cコマンドが発行される。
【0420】
図46は、第2のAV接続装置5から送信される例えばDVDプレーヤの詳細設定のためのホームページのテキスト記述の一例を示したもので、図47の「スロー再生」の文字列にCGIスクリプトを対応つけている場合を示している。
【0421】
図47のDVDプレーヤの詳細設定のためのホームページで「通常再生」を選択すると、前述の図40のステップS4508同様にRTSPコマンドが発行されるが、「言語選択」や「スロー再生」などのRTSPでサポートされていないコマンドについては、第2のAV接続装置5のHTTP/RSTP処理機能に具備されたCGI処理機能1424において、該当するCGIスクリプトを起動し、対応するAV/Cコマンドを1394AVコマンド処理機能1408を通して発行する。
【0422】
例えば、図47に示すホームページで「スロー再生」を選択した場合、これに対応するCGIスクリプトを起動するためのメッセージ「GET http://192.168.1.254/dvd/slowplay.cgi HTTP/1.1」を第2のAV接続装置5に向けて送出する。これを受信した第2のAV接続装置5では、「スロー再生」のコマンドはRTSPでサポートされていないので、HTTP/RSTP処理機能に具備されたCGI処理機能1424において、該当するCGIスクリプトを起動し、対応するAV/Cコマンドを1394AVコマンド処理機能1408を通して発行する。
【0423】
サービス提供装置の詳細設定のためのホームページには、RTSPコマンドに対応するアイコンあるいは文字列と、CGIスクリプトに対応するアイコンあるいは文字列とが混在していてもよいし、また、そのホームページがCGIスクリプトに対応するアイコンあるいは文字列とでのみ構成されていてももちろん良い。例えば、図47の「再生」ボタンや「電源ON」、「電源OFF」のボタンなど、RTSPコマンド対応テーブルにあるコマンドについては、ハイパーリンクなり、JAVAプログラム等により実現されていてもよく、「選択言語」、「字幕」といった、その他の詳細コマンドについてはCGIにて実現されていてもよい。
【0424】
また、図47の詳細設定のためのホームページに配置されている全てのボタンは、ネイティブコマンド対応テーブルに登録されていて、CGIスクリプトに対応つけられていてもよい。
【0425】
以上、第4の実施形態では、IEEE1394バス上のAV/Cコマンドに従うAV機器の遠隔制御について述べてきたが、同様の制御はその他の任意のリンクレイヤに依存するプロトコル群を有する機器についても同様に行うことができる。その一例として、ホームオートメーション網の一種であるLONを適用する場合について説明する。
【0426】
図48、図49は、それぞれLONを接続するAV接続装置の内部構成例、HTTP/RTSP処理機能の構成例を示したものである。
【0427】
IEEE1394のAV/Cコマンドの代わりに、LONで定められたコマンド群、例えばLONTalk等のコマンド群を送出できるようになっている点が、
差分点であり、その他の各構成部は、前述同様である。
【0428】
なお、以上第4の実施形態で説明した各機能は、ソフトウェアとしても実現可能である。また、上記した各手順あるいは手段をコンピュータに実行させるためのプログラムを記録した機械読取り可能な媒体として実施することもできる。
【0429】
本発明は、上述した実施の形態に限定されるものではなく、その技術的範囲において種々変形して実施することができる。
【0430】
(第5の実施形態)
図51は、本発明の第5の実施形態に係る通信システムの構成例を示したもので、第1のネットワーク(例えばIEEE1394バスで構成されるホームネットワーク)2010および第2のネットワーク(例えば公衆網2101上のインターネット)が、AV接続装置2201を介して相互接続されている。以下、第1のネットワーク2010をホームネットワーク2010、第2のネットワーク2101をインターネット2101と呼ぶ。また、ホームネットワーク2010に接続されている各端末装置はインターネット処理機能をもつ情報家電であるとする。
【0431】
AV接続装置2201は、ホームネットワーク2010とインターネット2101とを接続するゲートウエイの役割を持ち、後述するように、ホームネットワークやインターネットの終端機能、ルータ機能、プロトコル変換機能、代理サーバ機能などを持つ。
【0432】
ホームネットワーク2010を構成するIEEE1394バスには、パーソナルコンピュータ(PC)2001、プリンタ2002、DVDプレーヤ2003が接続されている。インターネット2101には、IP通信を行うことのできるIP端末2102が接続されている。もちろん、上記以外の端末装置がホームネットワーク2010、インターネット2101に接続されていてもよい。
【0433】
図51において、全ての端末装置はインターネット端末、即ちIPアドレスを持ち、IP通信を行うことができる端末装置である。ただし、ホームネットワーク2010を構成するIEEE1394バスは、プライベートIPアドレス空間のアドレスで運用されており、インターネット2102はグローバルIPアドレス(例えばIPv4)空間で運用されている。IP端末2101のIPアドレスは「G.2」であるとする。一方、ホームネットワーク2010上の各装置のアドレスとしては、プライベートサブネットアドレス「P.0」を持ち、PC2001が「P.1」、プリンタ2002が「P.2」、DVDプレーヤ2003が「P.3」であるとする。
【0434】
AV接続装置2201は、アドレス体系の異なるこれら2つのネットワークに接続されているので、2つの異なるアドレス体系のアドレスを有する。すなわち、ホームネットワーク2010側のIPアドレスが「P.254」で、インターネット2101側のIPアドレスが「G.1」であるとする。
【0435】
図52は、AV接続装置2201の構成例を示したものである。AV接続装置2201は、ホームネットワーク2010を構成するIEEE1394バスと接続するためのインタフェースを司る1394インタフェース(I/F)2202、インターネット2101と接続するためのインタフェースを司るインターネットインタフェース(I/F)2205、インターネットパケットのルーチング処理や、グローバルIPアドレスとプライベートIPアドレスとの間のアドレス変換等を行うIP処理部2202、ホームネットワーク2010内のサービスを検出、収集し、これらサービスをインターネット2101側に対してホームページ処理部2204を通じて提示(広告)するサービスロケーション代理処理部2203、ホームネットワーク2010上の装置、サービスについて、インターネット2101側からの遠隔制御を行うことができるようなホームページを生成し、これを要求に応じて配送するホームページ処理部2204から構成される。
【0436】
IP処理部2202は、アドレス変換処理を行うNAT処理部2206を具備する。NATとはネットワークアドレス変換(トランスレーション)の略であり、一般にグローバルIPアドレスとプライベートIPアドレスとの間の変換処理、あるいはIPv4アドレスとIPv6アドレスとの変換処理等を行う。詳細は、RFC1631を参照されたい。
【0437】
NAT処理部2206は、IPマスカレードと呼ぶポート単位のアドレス変換機能もある。即ち、ホームネットワーク2010側にいくつもの端末装置があったとしても、インターネット2101側に必要なグローバルIPアドレスが1つ(本実施形態の場合「G.1」)あれば十分とする技術であり、具体的には、ホームネットワーク2101に接続されている各々の端末装置、各々のサービス(例えばRFC1340で規定されているポート番号にて識別されるサービス)の論理多重識別子(RFC1340で規定されているポート番号にて識別されるサービスの論理多重識別子はポート番号である)に対して、同一のグローバルIPアドレス「G.1」と、各サービス毎に別々の他の論理多重識別子(例えばRFC1340で規定されているポート番号)を割当て、これらの対応関係を図55に示すようなテーブル(アドレス・ポート番号変換テーブル2207)として記憶する。そして、インターネット2101およびホームネットワーク2010のいずれか一方から他方へ転送されるパケットの宛先アドレスは、このテーブル2207を用いて、互いのアドレス空間のアドレス及びポート番号に変換されて転送されることにより、インターネット2101上の端末装置とホームネットワーク2010上の装置とが互いに通信可能となる。
【0438】
IP処理部2202は、さらに、パケットフィルタ2208を具備する。パケットフィルタ2208は、いわゆるファイアウオールとしての機能を有する。即ち、AV接続装置2201を通過すべきでないパケット(あるいは通過してもよいパケット)を判別し、通過すべきでないパケットについてはこれをIP処理部2202以外の他の部位に渡さないようにして(例えば廃棄する)、外部からホームネットワーク2010へのアクセスを制限する。これにより、悪意のユーザによるホームネットワーク2010上のサービスへのアクセスを未然に防止するようになっている。この判断処理のために、パケットフィルタ2208は、例えば、AV接続装置2201を通過してホームネットワーク2010へ送出可能なパケットのソースアドレスを登録したテーブル(パケットフィルタテーブル2209)を持ち、インターネット2101から入力されるパケットのソースアドレスが、このテーブルに登録されている時にその通過を許可する。なお、パケットフィルタテーブル2209にはAV接続装置2201を通過させないソースアドレスが登録されていてもよい。この場合、インターネット2101から入力されるパケットのソースアドレスが、このテーブルに登録されていなければ、そのパケットの通過を許可する。
【0439】
次に、図53に示すシーケンスを参照して、インターネット2101上のIP端末2102から、ホームネットワーク2010にアクセスし、例えばDVDプレーヤ2003の遠隔操作を行う場合を例にとり、AV接続装置2201の処理動作について説明する。
【0440】
まず、AV接続装置2201のサービスロケーション代理処理部2203は、ホームネットワーク2010上のサービスロケーション情報を収集する(ステップS5001〜ステップS5003)。サービスロケーション情報とは、ホームネットワーク2010上にどのようなサービスあるいは端末装置が存在しているかを示す情報である。サービスロケーション情報の収集を行う方法としては、いくつかの方法が考えられる。例えば、サービスロケーションプロトコルを用いる方法、LDAP(ライトウエイトディレクトリアクセスプロトコル)を用いる方法、DHCP(ダイナミックホストコンフィグレーションプロトコル)を用いる方法、SNMP(シンプル網管理プロトコル)のMIB(マネージメントインフォメーションベース)を用いる方法など、種々の方法が考えられるが、これらのいずれの方法を用いても良い。
【0441】
ここでは、例えば、図12に示したようなサービスロケーションプロトコルを用いて、ホームネットワーク2010上のサービスロケーション情報を収集するものとする。なお、サービスロケーションプロトコルの詳細はRFC2165を参照されたい。実際のサービスロケーション情報の収集は、図53のように、AV接続装置2201がホームネットワーク2010のディレクトリエージェントとなっており、各サービスエージェント(即ちPC2001、プリンタ2002、DVDプレーヤ2003)からAV接続装置2201へ、それぞれのサービスの登録を行うものであってもよい。
【0442】
なお、このような方法以外にも、AV接続装置2201がサポート可能なサービスについて、それぞれのサービスにあらかじめ割当てられたIPマルチキャストアドレスに対して、AV接続装置2201がサービス要求を送出し、この要求に対し、当該サービスを提供する端末装置自身が答えるようにしてもよい。また、AV接続装置2210がホームネットワーク2010上に別個存在するディレクトリエージェントに、ホームネットワーク2010上のサービスの詳細を問い合わせるようにしてもよい。
【0443】
ここで収集されたホームネットワーク2010上で提供されているサービスに関する情報(より具体的には、ホームネットワーク2010上の端末装置のアドレスと当該装置により提供されるサービスのポート番号(RFC1340で規定))を基に、図54のフローチャートに示すような処理動作を行う。
【0444】
AV接続装置2201は、ホームネットワーク2010の所有者(例えばAさんとする)宅にどのようなサービスや端末装置が存在するのかを説明するホームページをホームページ処理部2204にて作成する(ステップS5101〜ステップS5102)。
【0445】
このホームページは、例えば、図59に示すようなもので、インターネット2101上の任意の端末装置から、Aさん宅のURL(Uniform Resource Locator)、すなわち、例えば「http://G.1」にアクセスすると表示されるホームページである。このホームページから、例えば、CGI(Common Gate Way)プログラムにより、Aさん宅に存在している各サービスや端末装置を操作することができるようなユーザインタフェースである。実際には、このホームページから、ホームネットワーク2010上の各端末装置に対してリンクが張られており、そのオブジェクトをクリックすると、次には各端末装置のホームページに接続され、各端末装置が提供する、その端末装置の操作スイッチ等を遠隔操作することが可能となるホームページが表示される仕組みになっている。
【0446】
次に、サービスロケーション代理処理部2203は、先に収集されたサービス、あるいは端末装置のそれぞれについて、独自の論理多重識別子、すなわち、例えば、RFC1340で規定されているポート番号(ウエルノウンポート番号ではなく、動的に設定可能なポート番号)を割り当てていく(ステップS5104)。以下、ホームネットワーク2010上でもともと定めれれているポート番号を第1のポート番号と呼び、ホームネットワーク2010上のサービスに対しサービスロケーション代理処理部2203で独自に割り当てられるポート番号を、ホームネットワーク2010上でもともと定めれれているポート番号とは区別するために第2のポート番号と呼ぶ。
【0447】
例えば、第2のポート番号「2000」はDVDプレーヤ2003に、第2のポート番号「2002」はプリンタ2002、第2のポート番号「2004」はPC2001と言うように割当てていく。この第2のポート番号は、AV接続装置2201のグローバルIPアドレスと組になり、運用される。即ち、インターネット2101側より、例えば第2のポート番号「2000」がアクセスされた場合、AV接続装置2201は、これはDVDプレーヤ2003に対するアクセスであると解釈していくこととなる。なお、論理多重識別子は、RFC1340で規定されているポート番号に限らず、ホームネットワーク2010上で提供される各サービスをインターネット上で識別できる識別子であれば何でもよい。
【0448】
AV接続装置2201のグローバルユニークIPアドレスと、ホームネットワーク2010上で提供される各サービスに割り当てられた第2のポート番号と、ホームネットワーク2010上の当該サービスに対する論理多重識別子としての第1のポート番号と、当該サービスを提供する装置のプライベートIPアドレスとの対応関係は、アドレス・ポート番号対応テーブル2207に登録される(ステップS5105)。
【0449】
アドレス・ポート番号対応テーブル2207の具体例を図55に示す。アドレス・ポート番号対応テーブル2207には、ホームネットワーク2010上で提供される各サービス毎に、インターネット2101側のIPアドレス(グローバルユニークIPアドレス)と第2のポート番号、ホームネットワーク2010側のIPアドレス(プライベートIPアドレス)と第1のポート番号の対が登録されている。このテーブル2207に、ホームネットワーク2010上で提供される全てのサービスについての対応関係が順次登録されていく。
【0450】
例えば、DVDプレーヤ2003の場合、ホームネットワーク2010内でのDVDプレーヤのサービス(IPアドレス(プライベートIPアドレス)=P.3、第1のポート番号=80でDVDプレーヤにより提供されるhttpサービスであると、サービスロケーションプロトコルにより解釈される)には、インターネット2101側に対しては、AV接続装置2201のグローバルIPアドレス「G.1」で第2のポート番号「2000」が割当てられている。
【0451】
このようなアドレス・ポート番号変換テーブル2207の作成が、Aさん宅のサービスの各々について行われる。この各々について、Aさん宅のホームページへの記述が行われる。
【0452】
Aさん宅の全てのサービスについて、テーブル2207への登録が終わった時点で、アドレス・ポート番号変換テーブル2207の作成、及びAさん宅のホームページの作成が終了する(ステップS5106)。
【0453】
さて、作成されたアドレス・ポート番号変換テーブル2207は、AV接続装置2201内をIPパケットが通過する際、IPアドレスとポート番号の変換処理を行う際に用いられる。図58を参照して、アドレス・ポート番号変換テーブル2207を用いた、IPアドレスとポート番号の変換処理について具体的に説明する。例えばインターネット2101側から宛先IPアドレスが「G.1」、宛先ポート番号が「2000」であるようなIPパケットは、テーブル2207を参照することにより、宛先IPアドレスが「P.3」、宛先ポート番号が「80」であるようなIPパケットに変換されて、ホームネットワーク2010側に送出される。逆に、ホームネットワーク110側から送信元IPアドレスが「P.3」、送信元ポート番号が「80」であるようなIPパケットは、送信元IPアドレスが「G.1」、送信元ポート番号が「2000」であるようなIPパケットに変換されて、インターネット2101に送出される。
【0454】
さて、この様なアドレス・ポート番号変換テーブル2207、及びAさん宅のホームページの作成を終了したAV接続装置2201は、このホームページをAさん宅のホームページとしてインターネット2101上に公開する(図59参照)。
【0455】
次に、インターネット2101上のIP端末2102のユーザが、Aさん宅のDVDプレーヤ2003の遠隔操作を行う場合について説明する。
【0456】
インターネット2101側からIPパケットを受信した場合のAV接続装置2210の処理動作を図56に、ホームネットワーク2010側からIPパケットを受信した場合のAV接続装置2201の処理動作を図57に示す。以下、図53と図56〜図57に示すフローチャートを参照して説明する。
【0457】
まず、IP端末2102はAV接続装置2201に対して、Aさん宅のホームページの送付を要求するため、認証手続きを行う(図53のステップS5004)。例えばIP端末2102のユーザに対して、パスワード入力等を要求し、これにより認証されたユーザについてのみ、そのIP端末2102のIPアドレスを前述のパケットフィルタテーブル2209に登録する。
【0458】
パケットフィルタテーブル2209は、単にIPアドレスが羅列してあるのみのテーブルで、このテーブルに登録されているIPアドレスのみがホームネットワーク2010、およびホームネットワーク2010上で提供されるサービスへのアクセスが可能となる。
【0459】
次に、IP端末2102は、AV接続装置104に対して、Aさん宅のホームページの送付を要求する(ステップS5005)。パケットフィルタ2208で当該ホームページの送付要求のパケットのソースアドレスがパケットフィルタテーブル2209に登録されているか否かをチェックし(ステップS5006)、当該ソースアドレスがパケットフィルタテーブル2209に登録されている場合に限り、当該パケットはホームページ処理部2204に渡され、当該要求に応じて、ホームページ処理部2204は、IP端末2102に対して、Aさん宅のホームページの送付を行う(ステップS5007)。
【0460】
ここで送付されるホームページには、図59に示したように、ホームネットワーク2010上のDVDプレーヤ2003、プリンタ2002、PC2001のそれぞれのホームページへのリンクが付いている。例えば、図59のホームページ上の「DVDプレーヤ」という文字あるいは絵にはDVDプレーヤ2003へリンクされている。実際のリンク先のアドレスはAV接続装置2201のグローバルIPアドレス「G.1」の第2のポート番号「2000」となっており、形式上は、AV接続装置2201がホームネットワーク2010上の装置へアクセスするための代理サーバとなっている。これは、もちろん、IP端末2102からは認識されていない。しかしながら、代理サーバ処理とは違い、実際にAV接続装置2201が行う処理は、後述のようにIPマスカレード処理、即ちIPアドレスとポート番号の変換処理である。
【0461】
さて、IP端末2102のユーザは、DVDプレーヤ2003の遠隔操作をするべく、DVDプレーヤのホームページの送出要求を送出する。例えば、図59に示したホームページ上の「DVDプレーヤ」という文字あるいは絵をクリックすることにより、DVDプレーヤのホームページの送出要求のIPパケットが送出される。このパケットの宛先は、宛先IPアドレスが「G.1」、宛先ポート番号が「2000」である(ステップS5008)。
【0462】
このIPパケットをAV接続装置2201が受信したときの処理動作、すなわち、図53のステップS5009〜ステップS5010までのパケットフィルタリング及びアドレス・ポート番号変換処理について図56に示すフローチャートを参照して説明する。
【0463】
AV接続装置2201は、受信したIPパケットの宛先アドレスを参照して自分宛てであることを確認すると(ステップS5201)、まず、パケットフィルタテーブル2209を参照してパケットフィルタリング処理を行う(ステップS5202)。当該パケットのソースアドレスがパケットフィルタテーブル2209に登録されていれば、次に、当該パケットの宛先IPアドレスと宛先ポート番号との組がアドレス・ポート番号変換テーブル2207に登録されているか否かをチェックする(ステップS5203)。登録されていれば、アドレス・ポート番号変換テーブル2207に従って、当該宛先IPアドレス及び宛先ポート番号を、対応するホームネットワーク側のIPアドレス(プライベートIPアドレス)及び第1のポート番号に差し替え(ステップS5204)、ホームネットワーク2010へ当該IPパケットを送出する(ステップS5205)。この様にして、グローバルIPアドレスおよび第2のポート番号から、プライベートアドレスおよび第1のポート番号へのアドレス変換が行われる。
【0464】
なお、アドレス・ポート番号変換テーブル2207に登録されておらず、かつAV接続装置2201自身宛てのパケットでない場合は、そのパケットは廃棄する(ステップS5206)。
【0465】
図53の説明に戻り、アドレス・ポート番号変換処理(IPマスカレード処理)が施されて、ホームネットワーク2010側へ送出されたIPパケットは、DVDプレーヤ2003に到達し(ステップS5011)、DVDプレーヤ2003はIP端末2102のグローバルIPアドレスを宛先アドレスとしてDVDプレーヤ2003のホームページを送付する。その際のIPパケットの送信元IPアドレスはプライベートIPアドレス「P.3」、送信元ポート番号は第1のポート番号「80」である(ステップS5012)。
【0466】
DVDプレーヤ2003のホームページを含むIPパケットをホームネットワーク2010側から受信したときのAV接続装置2201の処理動作、すなわち、図53のステップS5013のアドレス・ポート番号変換処理動作について図57に示すフローチャートを参照して説明する。
【0467】
AV接続装置2201は、受信したIPパケットの送信元アドレスとポート番号との組がアドレス・ポート番号変換テーブル2207に登録されているか否かをチェックする(ステップS5301〜ステップS5302)。登録されていれば、アドレス・ポート番号変換テーブル2207に従って、当該宛先IPアドレス及び宛先ポート番号を、対応するインターネット側のIPアドレス(グローバルユニークIPアドレス)及び第2のポート番号に差し替えてから(ステップS5303)、当該IPパケットをインターネット2101へ送出する(ステップS5304)。なお、ステップS5303において、アドレス・ポート番号変換テーブル2207に登録されていなかったときは、通常のIPマスカレード処理を行う(ステップS5305)。すなわち、ソースアドレスとポート番号との組を新たにアドレス・ポート番号変換テーブルに登録し、以降のIPマスカレード通信に備える。
【0468】
図53の説明に戻り、アドレス・ポート番号変換処理(IPマスカレード処理)が施されて、インターネット2101側へ送出されたIPパケットは、IP端末2102に到達し(ステップS5014)、IP端末2102にDVDプレーヤ2003のホームページが表示され、この画面を使って、IP端末2102のユーザはDVDプレーヤ2003の遠隔操作を行うことになる。
【0469】
この遠隔操作は、たとえば、DVDプレーヤ2003の再生動作の開始等をIP端末2105とDVDプレーヤ2003との間でCGIプログラムによる要求とその処理結果をIPパケットでやり取りして行われるが、その際、当然ながら図53のステップS5010、ステップS5013の様なIPマスカレード処理が行われる。
【0470】
この間、IP端末2102は、自分がプライベートアドレス空間のノード(具体的にはプライベートIPアドレスを持ったDVDプレーヤ2003)と通信をしているという認識はない。このように、サービスの紹介とアドレス変換処理(IPマスカレード処理)とを一体として扱うことにより、グローバルユニークIPアドレス空間からプライベートIPアドレス空間中で提供されるサービスへのアクセスを可能としている。
【0471】
なお、本実施形態においては、第2のネットワークとしてグローバルIPアドレス空間を持つインターネット2101、第1のネットワークとしてプライベートIPアドレス空間を持つホームネットワーク2010との間におけるAV接続装置2201によるアドレス・ポート番号変換処理を説明してきたが、当然ながら、第1および第2のネットワークは、以下のような組み合わせのいずれも可能である。
【0472】
(1)グローバルIPアドレスと、プライベートIPアドレスとの組み合わせ
(2)IPv4アドレスと、IPv6アドレスとの組み合わせ
(3)IPv6アドレスと、リンクローカルIPv6アドレスとの組み合わせ
例えば、第2のネットワークとしてIPv4アドレスにて運用されるインターネット、第1のネットワークとしてIPv6アドレスにて運用されるインターネットとしても、本発明は適用が可能である。
【0473】
また、第2のネットワークをIPv6アドレスにて運用されるインターネット、第1のネットワークとしてリンクローカルIPv6アドレスにて運用されるインターネットとしても、本発明は、そのまま適用が可能である。
【0474】
また、上記実施形態においては、インターネット2102に対する、ホームネットワーク2010上のサービスの広告の方法として、AV接続装置2201上のホームページを使う方法について説明してきたが、このサービス広告の方法としては、上記方法以外に、LDAP(ライトウエイトディレクトリアクセスプロトコル)を用いる方法、DHCP(ダイナミックホストコンフィグレーションプロトコル)のコンフィグレーションオプションを用いる方法、SNMP(シンプル網管理プロトコル)のMIB(マネージメントインフォベース)のリモートアクセスを用いる方法など、種々の方法が考えられる。このサービス広告の方法として、これらのいずれの方法を用いてももちろん良い。
【0475】
【発明の効果】
本発明によれば、特定のネットワークに依存せず、統一的なサービス提供環境を実現することが可能となる。
【0476】
また、本発明によれば、OSやハードウェアに依存せず、必要の生じた時点で装置制御プログラムを登録することが可能となる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係るネットワーク・システムの一構成例を示す図
【図2】同実施形態に係るAV接続装置の内部構成例を示す図
【図3】端末/サービス収集のシーケンスの一例を示す図
【図4】コンフィグレーションROMに記述される内容の一例を示す図
【図5】コンフィグレーションROMに記述される内容の他の例を示す図
【図6】コンフィグレーションROMに記述される内容のさらに他の例を示す図
【図7】サービス別の表示を行う場合の画面例を示す図
【図8】端末別の表示を行う場合の画面例を示す図
【図9】ディレクトリエージェントにサービス情報を登録する手順の一例を示す図
【図10】ディレクトリエージェントに登録する情報の一例を示す図
【図11】サービス別の表示を行う場合の画面例を示す図
【図12】ディレクトリエージェントからサービス情報を入手する手順の一例を示す図
【図13】ディレクトリエージェントから入手された情報の一例を示す図
【図14】サービス別の表示を行う場合の画面例を示す図
【図15】DVDプレーヤ操作のための画面例を示す図
【図16】第2の家庭内LAN上から第1の家庭内LAN上のサービスを利用する場合におけるネットワーク上を流れるコマンド群、プロトコル群についてのシーケンスの一例を示す図
【図17】コマンド変換について説明するための図
【図18】第2の家庭内LAN上から第1の家庭内LAN上のサービスを利用する場合におけるネットワーク上を流れるコマンド群、プロトコル群についてのシーケンスの他の例を示す図
【図19】第2の家庭内LAN上から第1の家庭内LANに接続された装置を制御する場合におけるネットワーク上を流れるコマンド群、プロトコル群についてのシーケンスの他の例を示す図
【図20】コマンド変換について説明するための図
【図21】本発明の第2の実施形態に係るPCの一構成例を示す図
【図22】同実施形態に係るデバイスドライバのソフトウェア構成の一例を示す図
【図23】論理デバイス管理オブジェクト初期化手順を示すフローチャート
【図24】論理デバイスクラスオブジェクト初期化手順を示すフローチャート
【図25】論理デバイスオブジェクト初期化手順を示すフローチャート
【図26】物理デバイスオブジェクト初期化手順を示すフローチャート
【図27】不明のタイプを利用した場合におけるソフトウェア構造を説明するための図
【図28】アプリケーションによる新規デバイスクラス追加要求手順を示すフローチャート
【図29】論理デバイス管理オブジェクトによる新規デバイスクラス追加手順を示すフローチャート
【図30】本発明の第3の実施形態に係る家庭内LAN間を接続したネットワーク・システムの構成例を示す図
【図31】クライアント側の接続前におけるネットワーク経由サービスのソフトウェア構造を示す図
【図32】クライアント側の接続後におけるネットワーク経由サービスのソフトウェア構造を示す図
【図33】プロキシ側の接続前におけるネットワーク経由サービスのソフトウェア構造を示す図
【図34】プロキシ側の接続後におけるネットワーク経由サービスのソフトウェア構造を示す図
【図35】本発明の第4の実施形態に係るAV接続装置の構成例を示した図
【図36】第2の家庭内ネットワークに収容される全ての遠隔制御可能なサービス提供装置を提示したホームページの具体例を示した図
【図37】図36に示したようなホームページの作成手順を説明するためのフローチャート
【図38】サービス提供装置のホームページの作成手順を説明するためのフローチャート
【図39】サービス提供装置(DVDプレーヤ)のホームページの具体例を示した図
【図40】第2の家庭内ネットワークに収容されるサービス提供装置を遠隔制御する場合の処理動作を説明するためのシーケンス図(ホームページのアイコンとRTSPコマンドが対応付けられ、さらに、送信データをIPカプセル化する場合)。
【図41】送信されるホームページのテキストの一具体例を示した図。
【図42】AV接続装置のHTTP/RTSP処理機能の構成例を示した図
【図43】第2の家庭内ネットワークに収容されるサービス提供装置を遠隔制御する場合の処理動作を説明するためのシーケンス図(ホームページのアイコンとRTSPコマンドが対応付けられ、さらに、送信データをIPカプセル化しない場合)。
【図44】サービス提供装置(DVDプレーヤ)のホームページのテキストの他の例を示した図(図39の「再生」のアイコンにRTSPコマンドを生成するプログラムが付加されている場合)
【図45】サービス提供装置の詳細設定のためのホームページの作成処理手順を示したフローチャート
【図46】サービス提供装置(DVDプレーヤ)の詳細設定のためのホームページのテキスト記述の一例を示した図(図47の「スロー再生」の文字列にCGIスクリプトを対応つけている場合)
【図47】サービス提供装置(DVDプレーヤ)の詳細設定のためのホームページの具体例を示した図
【図48】LONを接続するAV接続装置の内部構成例を示した図
【図49】図48のHTTP/RTSP処理機能の構成例を示した図
【図50】RTSPコマンド対応テーブルの一具体例を示した図
【図51】本発明の第5の実施形態に係る通信システムの構成例を示した図。
【図52】図51のAV接続装置の構成例を示した図。
【図53】インターネット上のIP端末からホームネットワークにアクセスして、DVDプレーヤの遠隔操作を行う場合の図51に示した通信システム全体のシーケンス図。
【図54】ホームネットワーク上で提供されているサービスに関する情報(ホームネットワーク上の端末装置のアドレスと当該装置により提供されるサービスのポート番号)を基にした、AV接続装置の処理動作を説明するためのフローチャート。
【図55】アドレス・ポート番号対応テーブルの具体例を示した図。
【図56】インターネット側からIPパケットを受信した場合のAV接続装置の処理動作を説明するためのフローチャート。
【図57】ホームネットワーク側からIPパケットを受信した場合のAV接続装置の処理動作を説明するためのフローチャート。
【図58】アドレス・ポート番号変換テーブルを用いた、IPアドレスとポート番号の変換処理を具体的に説明するための図。
【図59】AV接続装置にて作成される宅内ホームページの一例を示した図。
【符号の説明】
1、3…IEEE1394バス
2…公衆網
4、5…AV接続装置
6、10…PC
7…デジタルTV
8…DVDプレーヤ
9…デジタルVTR
11…プリンタ
12…ホームオートメーション網
13…エアコン
14…電子レンジ
21…1394インタフェース
22…データリンクスイッチ
23…公衆網インタフェース
24…IP処理機能
25…FANP処理機能
26…1394/IPサービスロケーション処理機能
27…サービスロケーション代理機能
28…1394AVコマンド処理機能
29…1394/IPコマンド変換機能
61、62…コマンド対応テーブル
71…サービス代理受信機能
72…CCCP/LONコマンド変換機能
73…LONコマンド発行機能
81、401、402…PC
82…プロセッサ
83…メインメモリ
84…システムバス
85…2次記憶装置
86、87…IEEE1394インタフェース
88…ハードディスク
90、431…プリンタ
91、432…FAX
92、433…マッサージ装置
93、434…トースタ
101、501、601…論理デバイス管理機能
102、502、602…2次記憶管装置理機能
103、503、603…1394インタフェース管理機能
104、604…プリンタのunit1
105、605…FAXのunit1
106、606…FAXのunit2
107、607…マッサージ装置のunit1
108、608…マッサージ装置のunit2
109、508…トースタのunit1
111、112、511、512、611、612…ハードディスク管理機能113、114、513、514、613、614…IEEE1394インタフェースのデバイスドライバ
121、521、621…1394管理オブジェクト
122、522、622…論理デバイス管理オブジェクト
131〜135、531〜534、631〜635…論理デバイスクラスオブジェクト
131−1、131−2、132−1、133−1、134−1〜134−3、135−1、533−1、533−2、534−1、631−1、631−2、632−1、633−1、634−1、634−2、635−1、635−2…論理デバイスオブジェクト
151〜156、551〜153、651〜155…物理デバイスオブジェクト
161〜166、561〜563、661〜665…ドライバオブジェクト
411、412…ネットワーク接続装置
413…ISDN通信回線
421、422…1394バス
504…IP機能
571…1394スタブオブジェクト
681…1394プロキシオブジェクト
1401…1394I/F
1402…データリンクスイッチ
1403…公衆網I/F
1404…IP処理機能
1405…FANP処理機能
1406…1394/IPサービスロケーション処理機能
1407…ホームページ処理機能
1408…1394AVコマンド処理機能
1409…HTTP/RTSP処理機能
1410…RTSP対応テーブル
2001…パーソナルコンピュータ
2002…プリンタ
2003…DVDプレーヤ
2010…第1のネットワーク(ホームネットワーク)
2101…第2のネットワーク(インターネット)
2102…IP端末装置
2201…AV接続装置
Claims (27)
- 複数の端末装置とサーバ装置とを接続してなるシステムにおける前記複数の端末装置のうちの1つであって、
当該端末装置には、所定のネットワークを介して複数の機器が接続し、
当該端末装置は、
少なくとも当該端末装置から提供される第1のサービスに関する情報と、前記複数の機器のそれぞれから提供される第2のサービスに関する情報を記憶する記憶手段と、
少なくとも、前記サーバ装置に、前記第1のサービスと前記第2のサービスを当該端末装置から提供されるサービスとして認識させるために、前記記憶手段に記憶された情報を前記サーバ装置に登録するために送信する手段と、
を具備し、
前記記憶手段に記憶される情報は、前記第1のサービスおよび前記第2のサービスが変更される度に更新されることを特徴とする端末装置。 - 前記記憶手段には、さらに前記サーバ装置に前記端末装置の属性を認識させるための当該端末装置自身の属性情報を記憶し、この属性情報も前記サーバ装置に登録するために送信することを特徴とする請求項1記載の端末装置。
- 複数の端末装置とサーバ装置とを第1のネットワークを介して接続してなるシステムにおける前記サーバ装置であって、
前記複数の端末装置のそれぞれから、各端末装置から提供されるサービスに関する情報を収集する収集手段と、
当該サーバ装置と第2のネットワークを介して通信可能に接続されているユーザ端末からの要求に応じて、前記収集手段で収集された情報を基に、当該ユーザ端末から前記複数の端末装置を制御可能なように、少なくとも、前記複数の端末装置のそれぞれから提供されるサービスに関する情報を当該ユーザ端末へ送信する第1の送信手段と、
前記ユーザ端末から、少なくとも前記複数の端末装置のうちのいずれか1つを制御対象として制御するための第1のコマンドを受信する受信手段と、
前記第1のコマンドに従って、前記制御対象を制御するための第2のコマンドを当該制御対象の端末装置へ送信する第2の送信手段と、
を具備したことを特徴とするサーバ装置。 - 前記第1の送信手段は、少なくとも前記複数のサービスのそれぞれに対応する論理多重識別子を送信し、
前記受信手段は、前記第1のコマンドを含む、前記制御対象の前記論理多重識別子に対応するサービス宛てのパケットを受信し、
前記第2の送信手段は、前記受信手段で受信した前記パケットの宛先として記述された前記論理多重識別子に対応するサービスを提供する前記制御対象に対し、前記第2のコマンドを送信することを特徴とする請求項3記載のサーバ装置。 - 前記サーバ装置と前記ユーザ端末との間の通信プロトコルとしての第1の通信プロトコルに依存する前記第1のコマンドを、前記サーバ装置と前記複数の端末装置との間の前記第1の通信プロトコルとは異なる第2の通信プロトコルに依存する前記第2のコマンドに変換する変換手段をさらに具備し、
前記受信手段は、前記ユーザ端末から、前記第1の通信プロトコルに依存する前記第1のコマンドを受信し、
前記第2の送信手段は、前記変換手段で得られた前記第2のコマンドを前記制御対象の端末装置へ送信することを特徴とする請求項3記載のサーバ装置。 - 前記第1のコマンドと前記第2のコマンドとの対応関係を表したテーブルを記憶する記憶手段をさらに具備し、
前記変換手段は、前記テーブルを参照して、前記第1のコマンドを前記第2のコマンドに変換することを特徴とする請求項5記載のサーバ装置。 - 第1のネットワーク上の複数の端末装置を当該第1のネットワークとは別の第2のネットワークに接続されたユーザ端末から制御するための制御方法であって、
前記第1のネットワークと前記ユーザ端末とのそれぞれに接続するサーバ装置を設け、このサーバ装置において、
前記複数の端末装置のそれぞれから、各端末装置から提供されるサービスに関する情報を収集する収集し、
当該ユーザ端末からの要求に応じて、前記収集された情報を基に、当該ユーザ端末から前記複数の端末装置を制御可能なように、少なくとも、前記複数の端末装置のそれぞれから提供されるサービスに関する情報を当該ユーザ端末へ送信し、
前記ユーザ端末から、少なくとも前記複数の端末装置のうちのいずれか1つを制御対象として制御するための第1のコマンドを受信すると、前記第1のコマンドに従って、前記制御対象を制御するための第2のコマンドを前記制御対象の端末装置へ送信することを特徴とする制御方法。 - 前記サーバ装置は、
前記サーバ装置と前記ユーザ端末との間の通信プロトコルとしての第1の通信プロトコルに依存する前記第1のコマンドを受信すると、前記第1のコマンドを前記サーバ装置と前記複数の端末装置との間の前記第1の通信プロトコルとは異なる第2の通信プロトコルに依存する前記第2のコマンドに変換し、前記第2のコマンドを前記制御対象の端末装置へ送信することを特徴とする請求項7記載の制御方法。 - 複数の機器と端末装置とを接続してなるシステムにおける前記端末装置であって、
前記複数の機器のそれぞれが記憶する少なくとも当該機器の識別子を含む属性情報を収集する手段と、
前記収集された属性情報を基に、当該属性情報に対応する前記機器を制御するための制御プログラムの識別情報を求めて、この識別情報を基に前記制御プログラムをロードする手段と、
を具備したことを特徴とする端末装置。 - 前記複数の機器のそれぞれは、当該機器の前記属性情報を記憶する記憶手段を有し、前記端末装置は、前記機器の前記記憶手段から前記属性情報を読みとることで、前記複数の機器のそれぞれの前記属性情報を収集することを特徴とする請求項9に記載の端末装置。
- 前記複数の機器と前記端末装置は、IEEE1394バスで接続されていることを特徴とする請求項9記載の端末装置。
- 前記識別情報により、前記制御プログラムが外部ネットワーク上に存在すると判断したときは、当該外部ネットワークを介して当該制御プログラムをロードすることを特徴とする請求項9記載の端末装置。
- 複数の端末装置とサーバ装置とを接続してなるシステムにおける前記サーバ装置であって、
当該サーバ装置と通信可能に接続されているユーザ端末からの要求に応じて、前記複数の端末装置のそれぞれから提供されるサービスに関する情報を提供するとともに、前記複数の端末装置のそれぞれを制御可能に構成されたホームページを提供する手段と、
前記ユーザ端末において、前記ホームページに基づき所望のサービスが選択され、当該ユーザ端末から送信された、当該選択されたサービスを提供する前記複数の端末装置のうちのいずれか1つを制御対象として制御するための第1のコマンドを含むパケットを受信する受信手段と、
この受信手段で受信されたパケットに含まれる前記第1のコマンドに従って、を前記制御対象を制御するための第2のコマンドを当該制御対象の端末装置へ送信する送信手段と、
を具備したことを特徴とするサーバ装置。 - 前記複数の端末装置のそれぞれから、各端末装置から提供されるサービスに関する情報を収集する収集手段と、
この収集手段で収集された情報を基に前記ホームページを作成する作成手段と、
をさらに具備したことを特徴とする請求項13記載のサーバ装置。 - 前記サーバ装置は、
前記サーバ装置と前記ユーザ端末との間の通信プロトコルとしての第1の通信プロトコルに依存する前記第1のコマンドを、前記サーバ装置と前記複数の端末装置との間の前記第1の通信プロトコルとは異なる第2の通信プロトコルに依存する前記第2のコマンドに変換する変換手段をさらに具備し、
前記受信手段は、前記ユーザ端末から、前記第1の通信プロトコルに依存する第1のコマンドを含むパケットを受信し、
前記送信手段は、前記変換手段で得られた前記第2のコマンドを前記制御対象の端末装置へ送信することを特徴とする請求項13記載のサーバ装置。 - 前記複数の端末装置のそれぞれから、各端末装置から提供されるサービスに関する情報を収集する収集手段と、
前記第1のコマンドと前記第2のコマンドとの対応関係が予め登録されたテーブルを記憶する記憶手段と、
をさらに具備し、
このテーブルを基に前記ホームページを作成することを特徴とする請求項15記載のサーバ装置。 - 前記送信手段は、前記受信手段で受信した前記パケットの宛先として記述された前記論理多重識別子に対応するサービスを提供する前記制御対象に対し、前記第2のコマンドを送信することを特徴とする請求項13記載のサーバ装置。
- 前記ホームページには、少なくとも前記第1のコマンドを含むパケットを生成するための第1のプログラムを含み、
前記受信手段は、前記ユーザ端末から送信されてきた前記パケットを受信することにより、前記第1のコマンドを受信することを特徴とする請求項15記載のサーバ装置。 - 前記受信手段は、前記ユーザ端末から送信されてきた前記パケットを受信して、このパケットにて前記第2のコマンドに変換するための第2のプログラムを起動し、
前記変換手段は、この第2のプログラムに従って前記第1のコマンドを前記第2のコマンドに変換することを特徴とする請求項15記載のサーバ装置。 - 前記受信手段は、前記第1のコマンドと前記ユーザ端末へ情報を送信する際の通信プロトコルを指定する情報を含むパケットを受信することを特徴とする請求項15記載の通信装置。
- 前記複数の端末装置と前記サーバ装置とは、IEEE1394ネットワークにて互いに接続されていることを特徴とする請求項13記載のサーバ装置。
- 前記複数の端末装置と前記サーバ装置とは、LON(Local Operating Network)にて互いに接続されていることを特徴とする請求項13記載のサーバ装置。
- 第1のネットワーク上の複数の端末装置を当該第1のネットワークとは別の第2のネットワークに接続されたユーザ端末から制御するための制御方法であって、
前記第1のネットワークと前記第2のネットワークとに接続するサーバ装置を設け、前記サーバ装置と前記ユーザ端末との間の通信プロトコルとしての第1の通信プロトコルと、前記サーバ装置と前記複数の端末装置との間の通信プロトコルとしての第2の通信プロトコルとは互いに異なるとき、
前記サーバ装置において、
前記ユーザ端末から送信された、前記複数の端末装置のうちの1つを制御対象として制御するための前記第1の通信プロトコルに依存する第1のコマンドを受信すると、これを前記第2の通信プロトコルに依存する第2のコマンドに変換し、当該第2のコマンドを前記制御対象に送信することにより、当該制御対象を制御することを特徴とする制御方法。 - 第1のネットワーク上の複数の端末装置を当該第1のネットワークとは別の第2のネットワークに接続されたユーザ端末から制御するための制御方法であって、
前記第1のネットワークと前記第2のネットワークとに接続するサーバ装置を設け、このサーバ装置において、
前記複数の端末装置のそれぞれから、各端末装置から提供されるサービスに関する情報を収集して、前記複数の端末装置のそれぞれから提供されるサービスに関する情報を提供するとともに、前記複数の端末装置のそれぞれを制御可能に構成されたホームページを作成し、
前記ユーザ端末からの要求に応じて、当該ユーザ端末にホームページを提供し、
前記ユーザ端末において、前記ホームページに基づき所望のサービスが選択されて、当該ユーザ端末から送信された、当該選択されたサービスを提供する前記複数の端末装置のうちのいずれか1つを制御対象として制御するための第1のコマンドを含むパケットを受信すると、当該パケットに含まれる前記第1のコマンドに従って、前記制御対象を制御するための第2のコマンドを当該制御対象の端末装置へ送信することを特徴とする制御方法。 - 第1のネットワークと第2のネットワークとに接続される通信装置であって、
前記第1のネットワーク上の複数の第1の端末装置のそれぞれから提供される複数のサービスのそれぞれを識別するための当該第1のネットワークに依存する複数の第1の論理多重識別子に、前記第2のネットワークに依存する第2の論理多重識別子を割り当て、
前記複数のサービスのそれぞれについて、当該サービスを提供する前記第1の端末装置の前記第1のネットワークに依存する第1のアドレスと当該サービスの前記第1の論理多重識別子と、当該サービスを提供する前記第1の端末装置の前記第2のネットワークに依存する前記第2の論理多重識別子との対応関係を記憶する記憶手段と、
前記第2のネットワーク上の第2の端末装置に対し、前記複数のサービスを提示する提示手段と、
前記第2の端末装置において、前記提示手段で提示された複数のサービスの中から選択されて、当該第2の端末装置から送信された前記第2の論理多重識別子で特定される第1のサービス宛てのパケットを受信する受信手段と、
前記記憶手段に記憶された対応関係に基づき、前記受信手段で受信したパケットの宛先を、前記第1のサービスに対応する前記第1のアドレスおよび前記第1の論理多重識別子に書き換える書換手段と、
この書換手段で宛先の書き換えられたパケットを前記第1のネットワークに出力する出力手段と、
を具備したことを特徴とする通信装置。 - 前記複数の第1の端末装置のそれぞれから、前記複数のサービスのそれぞれに対応する前記第1の論理多重識別子と、当該サービスを提供する前記第1の端末装置の前記第1のアドレスを収集する収集手段をさらに具備したことを特徴とする請求項25記載の通信装置。
- 前記第2のネットワークから入力するパケットのうち前記第1のネットワークへ転送可能なパケットの識別子を記憶する第2の記憶手段をさらに具備し、
前記第2のネットワークから入力されるパケットのうち、前記第2の記憶手段に記憶された識別子を有するパケットのみ前記第1のネットワークへ出力することを特徴とする請求項25記載の通信装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP12113998A JP3688464B2 (ja) | 1997-05-06 | 1998-04-30 | 端末装置、サーバ装置、通信装置および制御方法 |
Applications Claiming Priority (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11568597 | 1997-05-06 | ||
| JP9-115685 | 1997-05-06 | ||
| JP27915997 | 1997-10-13 | ||
| JP9-279159 | 1997-10-13 | ||
| JP12113998A JP3688464B2 (ja) | 1997-05-06 | 1998-04-30 | 端末装置、サーバ装置、通信装置および制御方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH11187061A JPH11187061A (ja) | 1999-07-09 |
| JP3688464B2 true JP3688464B2 (ja) | 2005-08-31 |
Family
ID=27313010
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP12113998A Expired - Lifetime JP3688464B2 (ja) | 1997-05-06 | 1998-04-30 | 端末装置、サーバ装置、通信装置および制御方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3688464B2 (ja) |
Families Citing this family (68)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3136140B2 (ja) | 1999-06-03 | 2001-02-19 | 松下電送システム株式会社 | インターネット接続型sohoゲートウェイ装置 |
| KR100644561B1 (ko) | 1999-07-26 | 2006-11-13 | 삼성전자주식회사 | 디지털 인터페이스의 연결 관리방법 |
| US8032833B1 (en) | 1999-07-27 | 2011-10-04 | Samsung Electronics Co., Ltd. | Home network device information architecture |
| US7610559B1 (en) | 1999-07-27 | 2009-10-27 | Samsung Electronics Co., Ltd. | Device customized home network top-level information architecture |
| JP3318289B2 (ja) | 1999-08-10 | 2002-08-26 | 松下電送システム株式会社 | ホームネットワークゲートウエイ装置 |
| US6877036B1 (en) | 1999-09-24 | 2005-04-05 | Akamba Corporation | System and method for managing connections between a client and a server |
| FI110975B (fi) * | 1999-12-22 | 2003-04-30 | Nokia Corp | Huijaamisen estäminen tietoliikennejärjestelmissä |
| JP4846890B2 (ja) * | 2000-01-20 | 2011-12-28 | ソニー株式会社 | 端末制御装置 |
| JP3975045B2 (ja) | 2000-01-24 | 2007-09-12 | パナソニック コミュニケーションズ株式会社 | ネットワーク制御装置及びリモート表示装置 |
| JP2001211195A (ja) * | 2000-01-25 | 2001-08-03 | Fujitsu Ltd | データ通信システム |
| KR20010092525A (ko) * | 2000-03-22 | 2001-10-26 | 윤종용 | 인터넷 프로토콜 근간 네트워크 기기로서 비 인터넷프로토콜 근간 네트워크 기기의 제어를 이루는 인터넷프로토콜 인터페이스 장치 및 그 방법 |
| JP4788016B2 (ja) * | 2000-05-08 | 2011-10-05 | 有限会社ネットモーションズ | カメラで撮影した画像をサーバで表示するシステム、そのサーバ及びそのサーバ用制御プログラムを記録した記録媒体 |
| US7337217B2 (en) * | 2000-07-21 | 2008-02-26 | Samsung Electronics Co., Ltd. | Architecture for home network on world wide web |
| KR100667742B1 (ko) | 2000-08-23 | 2007-01-11 | 삼성전자주식회사 | 제어기기의 적어도 하나 이상의 피제어기기 제어 방법 |
| KR20020022317A (ko) * | 2000-09-19 | 2002-03-27 | 윤종용 | 홈 게이트웨이 및 그 운용방법 |
| JP2002149512A (ja) * | 2000-11-07 | 2002-05-24 | Sony Corp | 情報処理装置および方法、情報処理システムおよび方法、並びに記録媒体 |
| DK1360796T3 (da) * | 2001-01-26 | 2010-05-10 | American Power Conv Corp | Fremgangsmåde og system til at indstille et sæt netværksapparater som kan forbindes for at tilvejebringe forbedret samarbejde, skalerbarhed og pålidelighed |
| KR100750735B1 (ko) | 2001-02-03 | 2007-08-22 | 삼성전자주식회사 | 홈네트워크내의 기기 제어장치 및 방법 및 이를 적용한홈네트워크 시스템 |
| JP3676783B2 (ja) * | 2001-03-29 | 2005-07-27 | 三菱電機株式会社 | システム間接続アダプタと端末機器 |
| JP4571332B2 (ja) * | 2001-04-17 | 2010-10-27 | 株式会社エネゲート | 電子機器統合装置及びコンピュータ端末並びに家庭内情報システム |
| JP4607369B2 (ja) * | 2001-04-20 | 2011-01-05 | テンパール工業株式会社 | Lanに接続されたサーバーにインターネットを経由して外部からアクセスする方法 |
| JP3661936B2 (ja) * | 2001-05-24 | 2005-06-22 | ソニー株式会社 | 情報処理装置および方法、記録媒体、並びにプログラム |
| JP4929551B2 (ja) * | 2001-09-11 | 2012-05-09 | ソニー株式会社 | 情報提供システム、情報処理装置および方法、並びにプログラム |
| JP2003087293A (ja) * | 2001-09-11 | 2003-03-20 | Hitachi Ltd | ネットワーク装置、ネットワーク制御装置およびネットワーク装置の制御方法 |
| JP2003099341A (ja) * | 2001-09-20 | 2003-04-04 | Canon Inc | ネットワークデバイス管理装置、管理システム及び管理方法、並びにネットワークデバイス |
| JP3864743B2 (ja) | 2001-10-04 | 2007-01-10 | 株式会社日立製作所 | ファイアウォール装置、情報機器および情報機器の通信方法 |
| JP4118566B2 (ja) * | 2002-01-17 | 2008-07-16 | 学校法人早稲田大学 | 機器統合のためのネットワーク構築装置 |
| EP1337080A3 (en) | 2002-02-15 | 2005-06-08 | Hitachi, Ltd. | Method of controlling the network devices |
| KR100442256B1 (ko) | 2002-02-28 | 2004-07-30 | 엘지전자 주식회사 | 홈 네트워크 시스템의 규격 호환장치 및 방법 |
| KR100461593B1 (ko) | 2002-03-08 | 2004-12-14 | 삼성전자주식회사 | 통신망을 통한 원격제어서비스 제공장치, 시스템 및 방법 |
| KR100474483B1 (ko) | 2002-03-12 | 2005-03-09 | 삼성전자주식회사 | 네트워크를 통한 기기정보 제공장치 및 방법 |
| JP3864824B2 (ja) * | 2002-03-29 | 2007-01-10 | 松下電工株式会社 | ホームサーバシステムへのアクセス先通知方式 |
| JP2004135040A (ja) * | 2002-10-10 | 2004-04-30 | Matsushita Electric Ind Co Ltd | 遠隔制御システム |
| CN1260642C (zh) * | 2002-11-18 | 2006-06-21 | 深圳市朗科科技有限公司 | 一种向移动存储装置发送命令和数据的方法 |
| CN102611596B (zh) | 2002-11-29 | 2015-02-11 | 飞比特网络股份有限公司 | 网络对应家电 |
| WO2004105333A1 (ja) | 2003-05-22 | 2004-12-02 | Fujitsu Limited | 安全な仮想プライベート・ネットワーク |
| US7633948B2 (en) | 2003-07-07 | 2009-12-15 | Panasonic Corporation | Relay device and server, and port forward setting method |
| JP2005031725A (ja) * | 2003-07-07 | 2005-02-03 | Matsushita Electric Ind Co Ltd | サーバ及び中継装置 |
| KR100786424B1 (ko) * | 2003-09-26 | 2007-12-17 | 가부시끼가이샤 도시바 | 가전 원격 제어 조작 시스템, 서비스 제공 서버, 홈 서버, 서비스 제공 서버의 가전 원격 제어 조작 지원 방법 및 서비스 제공 서버의 가전 서비스 제공 지원 방법 |
| DE112005000173B4 (de) | 2004-01-09 | 2010-07-22 | Panasonic Corp., Kadoma | IP-Vorrichtung und Management-Server |
| JP2005198145A (ja) * | 2004-01-09 | 2005-07-21 | Matsushita Electric Ind Co Ltd | サーバとアクセス先データベースサーバ、及びネットワークシステム |
| JP4154364B2 (ja) | 2004-04-22 | 2008-09-24 | キヤノン株式会社 | 通知方法 |
| JP2006039685A (ja) * | 2004-07-22 | 2006-02-09 | Advanced Institute Of Information Technology Inc | 情報管理システム |
| JP4355639B2 (ja) | 2004-09-15 | 2009-11-04 | キヤノン株式会社 | 画像処理装置およびその制御方法 |
| JP2006311407A (ja) * | 2005-05-02 | 2006-11-09 | Mitsubishi Electric Corp | 系統保護リレー装置用のデータ通信システム |
| CN101218790A (zh) * | 2005-07-04 | 2008-07-09 | Sk电信股份有限公司 | 家庭网络系统及其控制方法、设置家庭网络系统的住宅网关的方法以及处理家庭网络系统的事件协议的方法 |
| WO2007037117A1 (ja) * | 2005-09-29 | 2007-04-05 | Pioneer Corporation | 中継装置及び中継方法、変換装置及び変換方法、中継処理用プログラム及び変換処理用プログラム並びに情報記録媒体 |
| KR100694155B1 (ko) * | 2005-10-12 | 2007-03-12 | 삼성전자주식회사 | 웹서비스를 통해 홈 네트워크 기기의 서비스를 홈 네트워크외부에 제공하는 방법 및 장치 |
| JP2007316863A (ja) * | 2006-05-24 | 2007-12-06 | Matsushita Electric Works Ltd | 設備監視システム及び監視装置 |
| JP4817997B2 (ja) * | 2006-07-05 | 2011-11-16 | 株式会社東芝 | ゲートウェイ装置、通信方法および通信プログラム |
| US9742851B2 (en) * | 2007-03-05 | 2017-08-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and arrangement for remotely controlling multimedia communication across local networks |
| JP2008234118A (ja) * | 2007-03-19 | 2008-10-02 | Seiko Epson Corp | ユーザインタフェース提供装置、ユーザインタフェース生成方法、およびプログラム。 |
| JP5058023B2 (ja) * | 2007-04-20 | 2012-10-24 | 株式会社リコー | 画像処理装置、画像処理システム及び画像処理方法 |
| JP5559040B2 (ja) | 2007-05-15 | 2014-07-23 | シュナイダー エレクトリック アイティー コーポレーション | 設備の電力及び冷却を管理するための方法及びシステム |
| JP2009043000A (ja) * | 2007-08-08 | 2009-02-26 | Sharp Corp | コンテンツ受信端末装置、コンテンツ受信端末装置のコンテンツ受信方法、コンテンツ受信端末装置のコンテンツ受信プログラム、コンテンツ再生端末装置、コンテンツ受信端末装置のコンテンツ再生方法、コンテンツ受信端末装置のコンテンツ再生プログラムおよびコンテンツ受信再生端末システム |
| JP4858524B2 (ja) * | 2008-10-06 | 2012-01-18 | パナソニック電工株式会社 | 遠隔制御監視システム |
| JP4858523B2 (ja) * | 2008-10-06 | 2012-01-18 | パナソニック電工株式会社 | 遠隔制御監視システム及びそれに用いる情報通信方法 |
| JP4947118B2 (ja) * | 2009-10-07 | 2012-06-06 | パナソニック株式会社 | 中継装置及び中継方法 |
| GB2489852A (en) * | 2009-12-18 | 2012-10-10 | Ibm | Method, program, and system for forming configuration information of configuring element of system containing configuring element wherein acquisition |
| JP4944940B2 (ja) * | 2009-12-18 | 2012-06-06 | 日本電信電話株式会社 | メディア情報共有システムおよびメディア情報共有方法 |
| US8996692B2 (en) | 2009-12-18 | 2015-03-31 | International Business Machines Corporation | Forming configuration information about components of systems which include components for which acquisition of configuration information is restricted |
| JP5370702B2 (ja) | 2009-12-18 | 2013-12-18 | 株式会社村田製作所 | 薄膜形成方法 |
| JP5459133B2 (ja) * | 2010-07-30 | 2014-04-02 | 株式会社富士通ゼネラル | プロトコル変換器 |
| US9014075B2 (en) * | 2011-10-13 | 2015-04-21 | Alcatel Lucent | Wide area mirroring router |
| WO2015063902A1 (ja) * | 2013-10-30 | 2015-05-07 | 株式会社アイ・エル・シー | 機器間制御方法、機器間制御プログラムおよび機器間制御システム |
| JP2016181845A (ja) * | 2015-03-25 | 2016-10-13 | 東日本電信電話株式会社 | 通信装置 |
| JP6141916B2 (ja) * | 2015-07-23 | 2017-06-07 | スミス アンド ネフュー インコーポレイテッド | 医療装置間での確実な相互運用のための方法およびシステム |
| CN111448784B (zh) * | 2017-12-14 | 2022-09-06 | 索尼公司 | 信息处理设备、信息处理方法和信息处理系统 |
-
1998
- 1998-04-30 JP JP12113998A patent/JP3688464B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH11187061A (ja) | 1999-07-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3688464B2 (ja) | 端末装置、サーバ装置、通信装置および制御方法 | |
| KR100457543B1 (ko) | 월드 와이드 웹상의 홈 네트워크를 위한 아키텍처 | |
| JP4058845B2 (ja) | ゲートウェイ装置 | |
| JP4447686B2 (ja) | 遠隔装置の接続確立方法、遠隔装置及び制御装置 | |
| CN1957566B (zh) | 为与客户机的连接选择路由的服务器 | |
| CN100359882C (zh) | 网络互连设备和方法 | |
| US6813715B2 (en) | Method for accessing home-network using home-gateway and home-portal server and apparatus thereof | |
| US6523696B1 (en) | Communication control device for realizing uniform service providing environment | |
| US7489924B2 (en) | Apparatus and system for providing remote control service through communication network, and method thereof | |
| AU2001276754A1 (en) | Architecture for home network on world wide web with private-public ip address/url mapping | |
| EP1193912A2 (en) | Method for providing services in IP-based network system | |
| JPWO2004075479A1 (ja) | 制御情報の伝送方法、中継サーバ、及び被制御装置 | |
| KR100379597B1 (ko) | 지역적 지원을 가지는 외부 네트워크에 접속된 홈네트워크에서의 장치 통신 및 제어 | |
| JP4404483B2 (ja) | 家庭内ネットワークにおける通信方法、かかる方法を実施するためのネットワーク及び機器 | |
| JP3649438B2 (ja) | インターネット接続システム | |
| AU2001272817A1 (en) | Architecture for home network on world wide web |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050204 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050215 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050418 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050531 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050608 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090617 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090617 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100617 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100617 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110617 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120617 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120617 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130617 Year of fee payment: 8 |
|
| EXPY | Cancellation because of completion of term |