(57)【要約】【課題】デバイスのリモートグループの相互運用を可能にするブリッジングシステムを提供すること。【解決手段】互いに通信するように構成されている第一ゲートウェイ（１０７）と第二ゲートウェイ（１０８）を有する通信システムのブリッジングシステムである。各ゲートウェイ（１０７、１０８）は、通信システムの異なるバスに接続可能である。第一ゲートウェイ（１０７）は、その各バス（１００）上の使用可能なデバイス（１０２、１０３）の詳細を第二ゲートウェイ（１０８）に伝達するように作動する。第二ゲートウェイ（１０８）は、この使用可能なデバイス（１０２、１０３）それぞれに対応する少なくとも１つのプロキシ要素を生成するように作動する。各プロキシ要素は、第二ゲートウェイ（１０８）のバス（１０５）上のデバイス（１３０）と、プロキシ要素に対応する第一ゲートウェイ（１００）上のデバイスの間でデータとメッセージを伝達するように作動する。【選択図】図１
2004513562.tif 000002
【特許請求の範囲】
【請求項１】
互いに通信するように構成されている第一ゲートウェイと第二ゲートウェイを有する通信システムのブリッジングシステムであって、各ゲートウェイが、前記通信システムの異なるバスに接続可能であり、前記第一ゲートウェイが、その各バス上の使用可能なデバイスの詳細を前記第二ゲートウェイに伝達するように作動し、前記第二ゲートウェイが、当該使用可能なデバイスそれぞれに対応する少なくとも１つのプロキシ要素を生成するように作動し、各プロキシ要素が、前記第二ゲートウェイの前記バス上のデバイスと、前記プロキシ要素に対応する前記第一ゲートウェイ上の前記デバイスの間でデータとメッセージを伝達するように作動する、ブリッジングシステム。
【請求項２】
前記第二ゲートウェイが、その各バス上の使用可能なデバイスの詳細を前記第一ゲートウェイに伝達するように作動し、前記第一ゲートウェイが、当該使用可能なデバイスそれぞれに対応する少なくとも１つのプロキシ要素を生成するように作動し、各プロキシ要素が、前記第一ゲートウェイの前記バス上のデバイスと、前記プロキシ要素に対応する前記第二ゲートウェイ上の前記デバイスの間でデータとメッセージを伝達するように作動する、請求項１に記載のブリッジングシステム。
【請求項３】
各ゲートウェイが、使用可能なデバイスの選択された詳細のみが前記他方のゲートウェイに伝達されるように制御することが可能である、請求項１または２に記載のブリッジングシステム。
【請求項４】
各ゲートウェイが、選択された使用可能デバイスの詳細のみが前記他方のゲートウェイに伝達されるように制御することが可能である、請求項３に記載のブリッジングシステム。
【請求項５】
各バスが、そのバス上の使用可能なデバイスの詳細が登録されるレジストリを維持し、各ゲートウェイが、前記バス上で使用可能になるデバイスの新しい詳細を受信するために前記レジストリに登録するように作動する、請求項１〜４のいずれかに記載のブリッジングシステム。
【請求項６】
使用可能なデバイスの詳細が、プロキシ機能要素モジュールを有する前記生成されたプロキシ要素である、機能要素モジュールを含む、請求項１〜５のいずれかに記載のブリッジングシステム。
【請求項７】
使用可能なデバイスの詳細が、プロキシケーブルプラグを有する前記生成されたプロキシ要素である、ケーブルプラグを含む、請求項１〜６のいずれかに記載のブリッジングシステム。
【請求項８】
使用可能なデバイスの詳細が、前記デバイス制御モジュールの前記ユーザーインタフェースを有する前記プロキシ要素である、デバイス制御モジュールを含む、請求項１〜７のいずれかに記載のブリッジングシステム。
【請求項９】
使用可能なデバイスの詳細が、プロキシ・アイソクロナス接続を有する前記プロキシ要素である、アイソクロナスデータ伝送を含む、請求項１〜８のいずれかに記載のブリッジングシステム。
【請求項１０】
前記プロキシアイソクロナス接続が、受信されたアイソクロナスデータ伝送を復号化し、かつリモートバス上の伝送のために前記アイソクロナスデータを再符号化するように作動する、請求項９に記載のブリッジングシステム。
【請求項１１】
アイソクロナスデータ接続が、すべてのバス上および関与するゲートウェイ接続で十分なリソースが使用可能である場合にのみ確立される、請求項９または１０に記載のブリッジングシステム。
【請求項１２】
アイソクロナスデータ接続が、自身のバスの各アイソクロナスリソースマネージャーに接続要求を発行する各プロキシ要素またはプロキシ化要素によって確立される、請求項１１に記載のブリッジングシステム。
【請求項１３】
プロキシ要素が、コードと、ゲートウェイによって保持されるデータテーブルの少なくとも一部とを有する、請求項１〜１２のいずれかに記載のブリッジングシステム。
【請求項１４】
各バス上の各プロキシ要素に新しいＩＤが割り当てられる、請求項１３に記載のブリッジングシステム。
【請求項１５】
前記データテーブルが、前記プロキシ要素のＩＤを、前記他のバス上の前記プロキシ化要素のＩＤに対応付けするルーティングテーブルである、請求項１４に記載のブリッジングシステム。
【請求項１６】
前記第一および第二ゲートウェイが、単一のデバイス内に実施される、請求項１〜１５のいずれかに記載のブリッジングシステム。
【請求項１７】
リモートバス上のデバイス間の接続が、ゲートウェイによる内部接続として表される、請求項１〜１６のいずれかに記載のブリッジングシステム。
【請求項１８】
前記通信システムがＨＡＶｉ準拠である、請求項１〜１７のいずれかに記載のブリッジングシステム。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は、デバイスのリモートグループ、特にオーディオビジュアル（ＡＶ）デバイスの相互運用を可能にするブリッジングシステムに関する。
【０００２】
【従来の技術】
一般的な家庭用オーディオビジアルシステムは、例えば、ラジオ受信機、チューナー／デコーダー、ＣＤプレーヤー、スピーカーセット、テレビ、ビデオカセットレコーダー、テープデッキなど、多数のデバイスを含む。近年、このようなデバイスをグループに相互接続し、１つのデバイス（例：テレビ）が別のデバイス（例：ビデオカセットレコーダー）を制御できるようにすることが一般的になりつつある。この場合の１つのデバイス（例：テレビ）は、ユーザーが主に操作するデバイスであることが多い。このデバイスは、中心的なアクセス手段となり、場合によってはグループ内の他のデバイスを制御できることが多い。制御ボタンとスイッチは、通常、中心的なデバイスの前面と、携帯式のリモートコントロール装置上にある。ユーザーは、中心的なデバイスまたはリモートコントロール装置によって、すべてのデバイスを制御できる。しかし、デバイスが多目的化して複雑になると、単純な手動制御では不十分である。
【０００３】
さらに、使用可能なデバイスの数が増すに従って、相互運用性の問題が生じる。多くのベンダーは、独自の通信プロトコルを使用して自社のデバイスが相互作用できるようにしているが、異なるベンダーのデバイスは相互作用できない。この問題を克服するため、相互にデバイスを制御することを可能にするためのいくつかの相互運用性規格が開発されている。１つの公知の規格は、ＨＡＶｉ （Ｈｏｍｅ Ａｕｄｉｏ−Ｖｉｄｅｏ Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ）であり、そのバージョン１．０は２０００年１月に公開された。この規格には、インターネット上（ｈｔｔｐ：／／ｗｗｗ．ｈａｖｉ．ｏｒｇ）でアクセスできる。もう１つの公知の規格は、ＩＥＣ １０３０に記載されている通信プロトコルである、Ｄ２Ｂ （ｄｏｍｅｓｔｉｃ ｄｉｇｉｔａｌ ｂｕｓ）規格である。このような規格に準拠するシステムでは、デバイスは、例えば、ＩＥＥＥ １３９４（１３９４と呼ばれる）シリアル通信バスなどの標準バスを使用してネットワークに相互接続され、このネットワークを通じて、メッセージ、データ、コマンドなどの情報を規格に従って交換する。ＨＡＶｉなどの規格は、このような交換のためのプロトコルを定義し、異なるベンダーのデバイスが相互作用することを可能にしている。ユーザーはネットワークに新しいデバイスを追加することができ、新しいデバイスはただちに他のデバイスから使用可能になる。このような新しいデバイスを「検出する」ためのプロトコルも標準化されている。１つのデバイスが制御デバイスとして、被制御デバイスと呼ばれる別のデバイスを制御するように機能することができる。例えば、チューナー／デコーダーが、アンプやスピーカーを制御することができる。このタイプの制御は、被制御デバイスの内部のハードウェアにアクセスする必要があるため、一般にはベンダー固有の方式で行われる。任意のデバイスが別のデバイスと相互作用することを可能にするため、ＨＡＶｉやＤ２Ｂなどの規格は、抽象表現（ａｂｓｔｒａｃｔ ｒｅｐｒｅｓｅｎｔａｔｉｏｎ：ＡＲ）という概念を定義し、この抽象表現（ＡＲ）は、被制御デバイスの機能とのインタフェースを提供する。被制御デバイスと相互作用する必要のあるアプリケーションデバイスは、被制御デバイス自体と直接的に相互作用するのではなく、制御デバイス上にインストールされたＡＲと相互作用できる。制御デバイスは、このアプリケーションデバイスから受信される情報を（場合によっては独自の方式で）命令に変換し、この命令が被制御デバイスに送信される。被制御デバイスからのフィードバックは、元の形式に変換されてアプリケーションデバイスに送信される。
【０００４】
この種類の通信システムは、一般には単一のバスで使用するように設計される。しかしながら、２系統のこのようなシステム（クラスタと呼ばれることが多い）を相互接続する必要が生じることがある。この相互接続を行うために、各クラスタにゲートウェイデバイスを加えることができ、ゲートウェイデバイスは、一方のクラスタから他方のクラスタにメッセージを転送できるように相互接続される。ゲートウェイデバイスは、例えば、無線リンクを通じて通信することができ、これによりユーザーは新しい配線を追加する必要がない。また、メッセージ、データ、およびコマンドを交換するために使用される規格が２つのクラスタで異なる場合にも、ゲートウェイデバイスを使用できる。この場合、ゲートウェイデバイスは、最初の通信プロトコルセットから他方の通信プロトコルセットへの情報の変換と、この逆方向の変換を行う。このような構成は、２つのクラスタの間にゲートウェイデバイスによって形成されるブリッジと呼ばれることがある。しかしながら、この方式で２つのクラスタを相互接続する場合、ほとんどの規格は単一のクラスタのみが使用されることを前提としていて、２番目のクラスタ内のデバイスが最初のクラスタ内のＡＲと相互作用するための方策が存在しないという問題がある。過去において、この問題は、２番目のクラスタ内の別のデバイスにＡＲをインストールすることによって、相互作用を望むデバイスが専用のハードウェアまたはソフトウェアを必要としないで相互作用できるようにすることによって、克服された。この場合、ＡＲを保持する別のデバイスは、最初のクラスタ内の被制御デバイスと通信し、これにより、相互作用を望むデバイスと被制御デバイスの間のシームレスな相互作用が実現する。ＡＲを保持するデバイスは、相互作用を望むデバイスと被制御デバイスの間のプロキシとして機能すると言える。この手法の欠点は、２番目のクラスタ内のデバイスがＡＲを使用するためには、２番目のクラスタ内の１つのデバイスにＡＲをインストールする必要がある点である。関連付けられたＡＲを有する多数のクラスタまたは多数のデバイスがある場合、すべてのクラスタ内のいずれかの１つのデバイスにそれぞれＡＲをインストールすることは実用的ではない。実際に、たとえクラスタ数が少ない場合でも、各クラスタ内の各デバイスの大きなプロキシをインストールすることは冗長で時間のかかる作業である。また、デバイスが定期的にクラスタに追加されたりクラスタから取り除かれることも、この問題をさらに大きくする。さらに、制御デバイスが被制御デバイスを制御できるようにするために、被制御デバイスを有するクラスタと、その被制御デバイスを使用することを望むデバイスを有するクラスタの間に直接的なリンクが必要である。本発明は、１つのクラスタ内のデバイスが、別のクラスタ内のデバイスの機能に柔軟かつ効率的な方法でアクセスできる通信システムを提供する。
【０００５】
【課題を解決するための手段】
本発明の１つの観点によると、互いに通信するように構成されている第一ゲートウェイと第二ゲートウェイを有する通信システムのブリッジングシステムであって、各ゲートウェイが、前記通信システムの異なるバスに接続可能であり、前記第一ゲートウェイが、その各バス上の使用可能なデバイスの詳細を前記第二ゲートウェイに伝達するように作動し、前記第二ゲートウェイが、当該使用可能なデバイスそれぞれに対応する少なくとも１つのプロキシ要素を生成するように作動し、各プロキシ要素が、前記第二ゲートウェイの前記バス上のデバイスと、前記プロキシ要素に対応する前記第一ゲートウェイ上の前記デバイスの間でデータとメッセージを伝達するように作動する、ブリッジングシステムが提供される。
【０００６】
前記第二ゲートウェイが、その各バス上の使用可能なデバイスの詳細を前記第一ゲートウェイに伝達するように作動し、前記第一ゲートウェイが、当該使用可能なデバイスそれぞれに対応する少なくとも１つのプロキシ要素を生成するように作動し、各プロキシ要素が、前記第一ゲートウェイの前記バス上のデバイスと、前記プロキシ要素に対応する前記第二ゲートウェイ上の前記デバイスの間でデータとメッセージを伝達するように作動するようにすることもできる。
【０００７】
各ゲートウェイは、使用可能なデバイスの選択された詳細のみが前記他方のゲートウェイに伝達されるように制御可能とすることができる。各ゲートウェイは、選択された使用可能デバイスの詳細のみが前記他方のゲートウェイに伝達されるように制御可能とすることができる。
【０００８】
各バスは、そのバス上の使用可能なデバイスの詳細が登録されるレジストリ（ｒｅｇｉｓｔｒｙ）を維持する。各ゲートウェイは、前記バス上で使用可能になるデバイスの新しい詳細を受信するために、前記レジストリに登録するように作動することが望ましい。
【０００９】
使用可能なデバイスの詳細は、プロキシ機能要素モジュールを有する前記生成されたプロキシ要素である、機能要素モジュールを含むことができる。
【００１０】
使用可能なデバイスの詳細は、プロキシケーブルプラグを有する前記生成されたプロキシ要素である、ケーブルプラグを含むことができる。
【００１１】
使用可能なデバイスの詳細は、前記デバイス制御モジュールの前記ユーザーインタフェースを有する前記プロキシ要素である、デバイス制御モジュールを含むこともできる。
【００１２】
使用可能なデバイスの詳細は、プロキシ・アイソクロナス（ｉｓｏｃｈｒｏｎｏｕｓ）接続を有する前記プロキシ要素である、アイソクロナスデータ伝送を含むことができる。前記プロキシアイソクロナス接続は、受信されたアイソクロナスデータ伝送を復号化し、かつリモートバス上の伝送のために前記アイソクロナスデータを再符号化するように作動させることができる。アイソクロナスデータ接続は、すべてのバス上および関与するゲートウェイ接続で十分なリソースが使用可能である場合にのみ確立できる。アイソクロナスデータ接続は、自身のバスの各アイソクロナスリソースマネージャーに接続要求を発行する各プロキシ要素またはプロキシ化要素によって確立することができる。
【００１３】
プロキシ要素は、コードと、ゲートウェイによって保持されるデータテーブルの少なくとも一部とを有することができる。各バス上の各プロキシ要素に、新しいＩＤを割り当てることができる。前記データテーブルは、前記プロキシ要素のＩＤを前記他のバス上の前記プロキシ化要素のＩＤに対応付けするルーティングテーブルとすることができる。
【００１４】
前記第一および第二ゲートウェイは、単一のデバイス内に実施できる。
【００１５】
リモートバス上のデバイス間の接続は、ゲートウェイによる内部接続として表すことができる。
【００１６】
前記通信システムは、ＨＡＶｉ準拠であることが望ましい。
【００１７】
本発明の例を、添付の図面を参照しながら以下に詳細に説明する。
【００１８】
【発明を実施するための形態】
図１は、本発明によるブリッジングシステムを組み込んでいる通信システムのブロック線図である。この通信システムは、デバイスの第一クラスタと第二クラスタを有する。第一クラスタ内のデバイスは、例えばＩＥＥＥ１３９４に基づく通信ネットワーク１００を介して、同じ上位レベルの通信プロトコルを使用して相互接続されている。第二クラスタ内のデバイスは、その通信ネットワーク１０５を介して同様に接続されている。第一および第二通信ネットワーク１００、１０５は、それ自体は２つのゲートウェイデバイス１０７、１０８を有するブリッジングシステムを介して相互接続され、ゲートウェイデバイス１０７は第一ネットワーク１００に属し、ゲートウェイデバイス１０８は第二ネットワーク１０５に属す。ゲートウェイデバイス１０７と１０８の間には、一方のクラスタから他方にメッセージ、データ、コマンドなどの情報を送信することができる、何らかの種類の通信ネットワークが存在する。このネットワークは、任意のタイプのネットワーク（例：無線リンク）でよい。場合によっては、クラスタが、それぞれの通信ネットワークにおいて異なる通信プロトコルを使用することがある。このような場合、ゲートウェイデバイスは、送信側のクラスタから受信されたメッセージを、受信側のクラスタで使用されるプロトコルに変換する（およびこの逆）ように構成されている必要がある。第一クラスタは、複数のデバイスのうち、制御デバイス１０２と被制御デバイス１０３を有する。被制御デバイス１０３の機能は、抽象表現（ＡＲ）と呼ばれるインタフェースを通じて使用可能になる。このインタフェースは、制御デバイス１０２上にインストールされる。このインタフェースは、そのＡＲのＡＰＩ （Ａｐｐｌｉｃａｔｉｏｎ Ｐｒｏｇｒａｍ Ｉｎｔｅｒｆａｃｅ）を通じて使用可能になる。このＡＰＩは、アプリケーションが被制御デバイスを制御するためのアクセスポイントである。例えば、居間の中のインテリジェントテレビ１２０が、多数の被制御デバイスの制御デバイスである場合がある。被制御デバイスは、その被制御デバイスのユーザーインタフェースを構築し、かつ被制御デバイスの外部制御を可能にするコードを含むことができる。このようなデバイスが最初に接続されると、制御デバイス（例えば、前述のインテリジェントテレビ）は、制御することができる使用可能なデバイスのユーザーインタフェースと制御コードとを取得する。次いで、被制御デバイスを表すアイコンをテレビの画面に表示させることができ、そのアイコンを操作すると、制御コードの要素によって、アイコンによって表された１つ以上のデバイスが、あらかじめ定義された方法で作動するようにできる。ここで留意すべき点として、被制御デバイス１０３と制御デバイス１０２は、物理的に１つのデバイスの中に実現することが可能である。実際には、以下に示すよりもデバイス能力に関して細かい分類が存在するが、以下の分類は、このシステムのモデルを理解するのに役立つ。この包括的な例において、デバイスの通信能力は、その精巧度のレベルが異なる。
【００１９】
図２は、本発明による多数のブリッジングシステムを組み込んでいる通信システムのブロック線図であり、この通信システムは、デバイスの第一クラスタ、第二クラスタ、および第三クラスタを有する。第一クラスタ内のデバイスは、例えばＩＥＥＥ １３９４に基づく通信ネットワーク１００を介して、同じ上位レベルの通信プロトコルを使用して相互接続されている。第二および第三クラスタ内のデバイスは、それぞれの通信ネットワーク１０５、１１０を介して同様に接続されている。第一クラスタと第二クラスタ、および第二クラスタと第三クラスタは、それぞれのゲートウェイデバイス１０７、１０８、１１２、１１３を有するそれぞれのブリッジングシステムを介して相互接続されていて、ゲートウェイデバイス１０７は第一ネットワーク１００に属し、ゲートウェイデバイス１０８と１１２は第二ネットワーク１０５に属し、ゲートウェイデバイス１１３は第三ネットワークに属す。ゲートウェイデバイス１０７、１０８、１１２、１１３の間には、１つのクラスタから他のクラスタにメッセージ、データ、コマンドなどの情報を送信することができる、何らかの種類の通信ネットワークが存在する。図１の場合と同様に、第一ネットワーク１００は、複数のデバイスのうち、制御デバイス１０２と被制御デバイス１０３を有する。被制御デバイス１０３の機能は、抽象表現（Ｒ）と呼ばれるインタフェースを通じて使用可能になる。
【００２０】
デバイスは、その通信能力に応じて、以下のクラスのいずれかに分類される。
【００２１】
制御デバイス：　以下の２種類の制御デバイスに区別できる。
フルＡＶデバイス（ＦＡＶ） − フルＡＶデバイスは、一般に、豊富なリソースセットを有し、複雑なソフトウェア環境をサポートすることができる。ＦＡＶデバイスが他と異なる第一の特徴は、被制御デバイス用の抽象表現（ＡＲ）を実行するための実行時環境が存在することである。これによって、ＦＡＶデバイスは、他のデバイスから、または他のローカルエリアネットワークまたはワイドエリア通信ネットワークを介してＡＲをアップロードして、制御用の拡張能力を提供することができる。また、ＦＡＶデバイスは、アプリケーション／機能をダウンロードできるようにしてもよい。ダウンロードされるコードは、仮想マシンの実行可能コードの形式であることが望ましい（例：Ｊａｖａ（登録商標）または類似するバイトコード）。ＦＡＶデバイスの候補としては、セットトップボックス（ＳＴＢ）、デジタルテレビ受像機（ＤＴＶ）、汎用の家庭用制御デバイス、さらには家庭用ＰＣがあげられる。
中間ＡＶデバイス （Ｉｎｔｅｒｍｅｄｉａｔｅ ＡＶ Ｄｅｖｉｃｅ） （ＩＡＶ） − 中間ＡＶデバイスは、一般に、ＦＡＶデバイスより低コストであり、リソースに関してより制限されている。中間ＡＶデバイスは、ダウンロード可能なＡＲ用の実行時環境を提供しないので、システム内の任意のデバイスの制御デバイスとして機能することはできない。しかしながら、ＩＡＶデバイスは、システム内の特定の１つ以上の被制御デバイスを制御するためのネイティブサポートを提供することができる。
【００２２】
被制御デバイス：　以下の２種類の被制御デバイスに区別できる。
ベースＡＶデバイス（Ｂａｓｅ ＡＶ Ｄｅｖｉｃｅ） （ＢＡＶ） − ベースＡＶデバイスは、ビジネス上またはリソース上の理由から、デバイス自体はＡＲを実行せずに、アップロード可能なＡＲを提供する。ＢＡＶデバイスは、制御デバイスによって制御できる（アップロード可能なバイトコードを介してのＦＡＶデバイスによる制御、またはネイティブコードを介してのＩＡＶデバイスによる制御）。ＢＡＶデバイスとその制御デバイスの間のプロトコルは、一般には所有権登録されたプロトコルである。制御デバイスとＢＡＶデバイスの間での通信のためには、ＡＲ用のコマンドと、ＢＡＶデバイスによって使用されるコマンドプロトコルとの間で両方向の変換が必要である。この変換は、ＡＲを実行する制御デバイスによって実行される。
レガシＡＶデバイス（Ｌｅｇａｃｙ ＡＶ Ｄｅｖｉｃｅ） （ＬＡＶ） − ＬＡＶデバイスは、上述のシステムアーキテクチャと通信プロトコルとに従わないデバイスである。一般に、このようなデバイスは、規格が合意される以前に構築されたデバイスである。ＬＡＶデバイスは、その制御用に、所有権登録されたプロトコルを使用し、通常は、単純な制御専用プロトコルを有する。このようなデバイスは、家庭用ネットワークで動作できるが、ＦＡＶまたはＩＡＶデバイスがゲートウェイとして機能することを必要とする。ＦＡＶデバイスまたはＩＡＶデバイスとＬＡＶデバイスの間での通信のためは、前者のデバイスのコマンドとレガシコマンドプロトコルとの間で両方向の変換が必要である。
【００２３】
図３は、図２の通信システムのブロック線図であり、特定の要素をより詳細に示している。相互作用の過程において、デバイスは、メッセージ、コマンド、およびデータをピアツーピア方式で交換する。これにより、通信レベルにおいて、システムのマスターまたはコントローラとして機能するデバイスが必要ない。しかしながら、論理上のマスターまたはコントローラが、基本のピアツーピア通信モデルの上の制御構造を強制するようにもできる。ＡＲは、デバイスを制御するために使用されるソフトウェア要素である。ＡＲは、ＡＲ自体のコードを有することができる。また、被制御デバイスの中の各機能要素のための機能要素モジュール（ＦＣＭ：Ｆｕｎｃｔｉｏｎａｌ Ｃｏｍｐｏｎｅｎｔ Ｍｏｄｕｌｅｓ）のコードを有することもできる。ＦＣＭは、デバイスの機能を表す。デバイスによっては、いくつかのＦＣＭを有するデバイスがあり、例えば、カムコーダー１５０は、カメラの機能を表すカメラＦＣＭ １５１と、情報を記録するためのデバイスの能力を表すＶＣＲ ＦＣＭ １５２とを有することができる。ＦＣＭは、１つの機能要素のソフトウェア抽象表現であり、その機能要素の機能を提供する。他のデバイスは、ＡＲと直接通信するのではなく、必ずＦＣＭを通じて通信する。ＦＣＭは、要求を受信することができ、メッセージングシステムを介して他のオブジェクトと通信することができる。例えば、ビデオカセットレコーダー１３０のＡＲは、テープデッキ用とチューナー用の個別のＦＣＭ １３１と１３２を有することができ、ＴＶ １２０のＡＲは、モニタ用、ＰＩＰ （”ｐｉｃｔｕｒｅ ｉｎ ｐｉｃｔｕｒｅ”ディスプレイ）用、チューナー用の個別のＦＣＭ １２１、１２２、１２３を有することができる。また、ＡＲは、デバイス制御モジュール（ＤＣＭ）と呼ばれるデバイス制御アプリケーション１２４、１３３、１５３を含むこともでき、これはデバイスとその機能要素のユーザー制御を可能にするソフトウェア要素である。クラスタ内の他のデバイスがＡＲに含まれる機能の場所を見つけてアクセスできるようにするため、各クラスタは、そのクラスタ内のすべてのデバイスの場所を見つけるのに使用できる識別子を含むレジストリ１０１、１０６、１１１を維持する。デバイスは、レジストリを照会することで、デバイスおよび使用可能な機能要素を見つけて、ＤＣＭとＦＣＭを介してそのデバイスと相互作用することを可能にするソフトウェア要素識別子を取得できる。レジストリは、クラスタ内の各ＦＡＶとＩＡＶに配布することができる。
【００２４】
ＨＡＶｉにおけるデバイスの間の接続は、「プラグ」を介して確立される。プラグとは、接続データを確立して保持するためにデバイスによって維持されるソフトウェアデータ構造である。プラグには、ＦＣＭプラグ、ケーブルプラグ、Ｉｅｃプラグの３種類がある。
【００２５】
ＦＣＭは、データのストリームを入力および出力する能力を有することが多い。前述の、カメラＦＣＭとビデオカセットレコーダーＦＣＭを有するカムコーダーの例においては、カメラＦＣＭはビデオストリームを出力することができ、ビデオカセットレコーダーは、ビデオストリームを入力し、かつ後からそれを再出力することができる。ＦＣＭプラグは、データストリームをソースまたはシンクする能力（ａｂｉｌｉｔｙ ｔｏ ｓｏｕｒｃｅ ｏｒ ｓｉｎｋ ａ ｄａｔａ ｓｔｒｅａｍ）を表し、カメラＦＣＭは１つの出力ＦＣＭプラグを有することができ、ＶＣＲ ＦＣＭは１つの入力ＦＣＭプラグと１つの出力ＦＣＭプラグを有することができる。
【００２６】
ＳＣＡＲＴ（音とビデオのリード線）など、１３９４タイプの接続でない外部接続は、ケーブルプラグによって表される。カムコーダーが１つのコンポジットビデオ出力を有してかつ入力がない場合、そのカムコーダーは、１つの出力ケーブルプラグを有し、入力ケーブルプラグは有さない。後から、カムコーダー１５０のカメラの出力プラグを（該当するバス上のＨＡＶｉを介して）出力ケーブルプラグに接続するように要求することができ、その時点で、コンポジットビデオ出力回線に接続されたテレビに画像が現れる。
【００２７】
１３９４プロトコルスタックの一番上は、１８８３（ＩＥＣ ６１８８３の略称）として公知の層である。この層は、メッセージを包んで（ｗｒａｐ ｕｐ）低レベルの１３９４パケットに入れる方法を含み、プラグ制御レジスターも定義する。プラグ制御レジスター（ＰＣＲ）は、ｉＰＣＲ（入力）またはｏＰＣＲ（出力）であり、本例のカムコーダーは、おそらく１つのｏＰＣＲを有し、ｉＰＣＲは有さない。このカムコーダーが１０個のｉＰＣＲを有していても、デバイスの外見は同じであるが、その場合、１３９４バス上の他のデバイスからは、このデバイスは１０本の個別のストリームをシンクできるデバイスに見える。ＰＣＲには、そのＰＣＲを介して接続されるストリーム数のカウンターと、ブロードキャストビットと、その他各種の速度制御要素（例：フラグ）が含まれる。何も接続されていないことがレジスターによって示される場合には、ＰＣＲハードウェアはストリームをオフにする。接続の数が増加する、またはブロードキャストビットが設定されると、デバイスはアイソクロナスデータストリームを伝送する。ｉＰＣＲは、データストリームを伝送せず、代わりに、対象のチャネル上にデータストリームが存在するものと想定してこのデータストリームの読み取りを開始する。ｉＰＣＲとｏＰＣＲは、ケーブルプラグと同じ方法でＦＣＭプラグに接続することができ、この接続の要求はＨＡＶｉを介して行われる。Ｉｅｃプラグは、デバイス上のＰＣＲを表す。
【００２８】
別のリモートのクラスタ内のデバイスを制御する、１つのクラスタ内のデバイスを透過的に保持するために、本発明におけるゲートウェイデバイスは、プロキシＦＣＭを生成して、そのゲートウェイデバイスが属すクラスタ内のデバイスに提供するように実施される。プロキシＦＣＭは、ゲートウェイが通信するクラスタ内の使用可能なデバイスのＦＣＭに対応する。例えば、インテリジェントテレビ１２０には、別の部屋の中のビデオカセットレコーダー１３０およびカムコーダー１５０と、家の集中暖房システム１４０の制御を可能にするプロキシＦＣＭ １０７ａ−１０７ｅが提供される。これらのプロキシＦＣＭは、それぞれ、真のＦＣＭ １５１、１５２、１３１、１３２、１４１に対応する。プロキシＦＣＭは、主としてメッセージフォワーダー（ｆｏｒｗａｒｄｅｒ）として動作し、そのプロキシが代理を務めるデバイス宛に送信されたメッセージを受信し、反対側のバスに、対応するゲートウェイデバイスを介して同じメッセージをそのまま送信する。前の例では、ビデオカセットレコーダー１３０とカムコーダー１５０は、ゲートウェイデバイス１０７と１１３の中にプロキシＦＣＭを有し、セントラルヒーティングシステム１４０は、ゲートウェイデバイス１１２と１０７の中にプロキシＦＣＭを有する。ビデオカセットレコーダー１３０、カムコーダー１５０、および暖房システム１４０は、テレビ１２０、またはテレビ１２０を制御するユーザーからは、ゲートウェイ１０７の一部であるように見える。実際に、テレビ１２０からビデオカセットレコーダー１３０のチューナーＦＣＭ １３２へのメッセージは、ゲートウェイ１０７においてプロキシＦＣＭ １０７ｂによって受信され、ゲートウェイ１０８に伝送され、ビデオカセットレコーダー１３０のＦＣＭ １３２によって受信されるようにバス１０５上にブロードキャストされる。同様に、テレビ１２０から暖房システムのＦＣＭ １４１へのメッセージは、ゲートウェイ１０７のＦＣＭ １０７ｅにおいて受信され、ゲートウェイ１０８に伝送され、このゲートウェイ１０８がこのメッセージをゲートウェイ１１２のプロキシＦＣＭ １１２ａに伝送する。ゲートウェイ１１２は、このメッセージをゲートウェイ１１３に伝送し、ゲートウェイ１１３はこのメッセージを暖房システムのＦＣＭ １４１に渡す。
【００２９】
プロキシＦＣＭなどのプロキシ要素は、ゲートウェイのネイティブ環境の中に、一般にはコードおよびデータテーブルとして実施される。
【００３０】
各ゲートウェイは、ＩＡＶまたはＦＡＶとして実施されることが望ましい。各プロキシ要素はゲートウェイによって同じに扱われるため、プロキシ要素は、例えばｊａｖａバイトコードとして生成することができ、その場合にゲートウェイデバイスは複雑な実行時環境と処理能力とを保持する必要がない。各ゲートウェイは、それぞれの付加されたバス上で実行されるＤＣＭ １０７ｚ、１０８ｚ、１１２ｚ、１１３ｚを有する。これらのＤＣＭは、ゲートウェイの制御、特に、どのＦＣＭと他の要素を反対側のバスに提示するかの制御を可能にする。使用可能なオプションは、例えば、以下のとおりである。
すべて（Ａｌｌ）
一部（Ｓｏｍｅ）（混雑を回避するため）
なし（Ｎｏｎｅ）（例えば、秘匿性を目的として）
一部（Ｓｏｍｅ）、パスワード保護付き
【００３１】
ゲートウェイデバイスは、それが接続されているバスのレジストリから、使用可能になる新しいＦＣＭとＤＣＭの通知を受信するために、登録することによって動作する。このような新しいＦＣＭが使用可能になると、ゲートウェイデバイスはこのことを反対側のゲートウェイデバイスに伝送する。反対側のゲートウェイデバイスは、各ＦＣＭに対して、新しい識別子を有するプロキシＦＣＭを生成し、自身が付加されているバスのレジストリに、その新しい識別子を使用してそのプロキシＦＣＭを登録する。新しい識別子は、プロキシＦＣＭをゲートウェイデバイスに関連付ける。新しい識別子の付いた、ゲートウェイデバイスによって受信されたメッセージは、新しい識別子が元の識別子に置き換えられる。次いで、メッセージは前方への伝送のために反対側のゲートウェイに伝送される。プロキシＦＣＭの識別子とその対応する元の識別子は、ゲートウェイにおける参照用テーブルに保持される。
【００３２】
新しいＤＣＭが使用可能になると、そのＤＣＭの識別子は、ゲートウェイによって格納され、反対側のゲートウェイに送信される。ゲートウェイにおいて受信されたＤＣＭは、そのゲートウェイのＤＣＭのサブメニューとしてそのバス上に提示される。
【００３３】
メッセージは複数のバスと複数のゲートウェイを介して渡すことができ、このとき各ＦＣＭは各リモートバス上にプロキシＦＣＭを有し、プロキシＦＣＭは各バスごとに異なる識別子を有することが理解されるであろう。円形のバス接続が回避される限り、ルーティングは自動的であり、完全にスケーラブルである。
【００３４】
上述のシステムは非同期通信の場合にはうまく作動するが、オーディオビジュアル・メディアストリーム伝送などのアイソクロナスチャネルをサポートするためには、さらなる機能が必要である。専用の構成がない場合、ソースはそのローカルバス上に伝送されるのみである。
【００３５】
アイソクロナスストリームのデータは、１３９４形式のパケットとして１３９４バスを通じて伝送される。このパケットは、非同期パケットと非常に似ている。バス上のサービスの品質を保証するため、伝送は帯域幅の事前の予約によって制御される。各バス上の１つのデバイスは、アイソクロナス・リソース・マネージャー（ＩＲＭ）として設定される。アイソクロナスストリームは、予約されたチャネルで、かつ予約された帯域幅の中で送信する必要がある。チャネルと帯域幅は、それぞれのＩＲＭとの通信を介して予約される。チャネルと十分な帯域幅が予約されると、デバイスはそのバス上にアイソクロナスデータを伝送できる。この場合、デバイスは、自身の順番が回ってきたときに伝送することができ、かつ、他のすべてのＨＡＶｉメッセージと同様に、バス上のすべてのデバイスに伝えられる標準の１３９４パケットを伝送することができる。
【００３６】
デバイスは、そのデバイスがパケットヘッダ内で宛先として指定されているか、またはパケットがブロードキャストである場合にのみ、非同期パケットを読み取る。デバイスは、アイソクロナスパケットヘッダ内で指定されるチャネル番号から読み取るように設定されている入力プラグ制御レジスター（ｉＰＣＲ）を有する場合にのみ、アイソクロナスパケットを読み取る。
【００３７】
アイソクロナスストリームは、一般にはオーディオまたはビデオ（例：ＭＰＥＧ２またはＤＶＣ）であるが、任意の形式でよい。ゲートウェイデバイスにその各バスからのすべてのアイソクロナスストリームを読み取らせて、それらすべてを反対側に再伝送させることは可能であるが、数多くの原因によって、これは非実用的である。特に、ゲートウェイ間の接続は、一般には帯域幅が限定されていて、多くの場合にデータが必要とされていないときに接続を介してすべてのデータを送信することは望ましくない。従って、ゲートウェイを通じて送信するストリームを制御するために、選択プロセスが使用される。
【００３８】
本発明の通信システムにおいては、アイソクロナス通信を受信するゲートウェイは、ソースバスからストリームを読み取り、それをリモートバス上に新しいストリームとして転送する。
【００３９】
アイソクロナスストリームはタイミングが重要であるため、独立して動作する２本のバスが異なるスピードで動作する可能性について対処する必要がある。ゲートウェイデバイスが、その反対側のバス上での伝送を目的として選択、構築されたアイソクロナスストリームパケットを受信すると、そのゲートウェイデバイスは、このパケットをＭＰＥＧまたはＤＶＣなどの生データストリームに復号化する。この生データは、反対側のゲートウェイに伝送され、そのゲートウェイは、ＭＰＥＧ２／ＤＶＣストリームを１３９４アイソクロナスパケットに再び符号化し、新しいヘッダーと場合によっては新しいタイムスタンプを付けてこれらをリモートバス上に伝送する。このことは、データが適切な形式で送られる限りは、再伝送されるパケットは、最初のバス上のパケットとタイプまたは伝送速度が同じである必要がないことを意味する。
【００４０】
ストリームを提案するデバイスは、ローカルのストリームマネージャーを介して最初のバス上に接続を確立する。さらなるバス上では、対応する接続をローカルのストリームマネージャーに提案するために、プロキシを構築する必要がある。それにより、そのプロキシと、デバイスまたはさらなるゲートウェイとの間に接続を確立することができる。
【００４１】
接続要求がゲートウェイのＤＣＭによって受信されると、そのゲートウェイはストリーム接続要求を反対側のゲートウェイに送信する。反対側のゲートウェイは、そのローカルバス上のＩＲＭから必要なチャネルと帯域幅を予約することを試みる。さらに、これら２つのゲートウェイは、ストリーム伝送をサポートするためにそれらのブリッジ接続に適切なリソースを割り当てることも試みる。また、リモートゲートウェイは、そのターゲットＤＣＭに接続要求を送る。チャネルまたは帯域幅の予約、または割り当てに失敗した場合、その失敗を認識したゲートウェイは、そのことを反対側のゲートウェイに伝達し、反対側のゲートウェイは、接続の成功している部分を切断する。
【００４２】
本発明によるブリッジングシステムは、バス上で使用可能なケーブルプラグをエクスポートするように構成することができる。エクスポートされたケーブルプラグは、プロキシＦＣＭの場合に類似した方法で、反対側のゲートウェイにおけるプロキシケーブルプラグによって表される。リモートバス上のデバイスが、リモートバス上のデバイスとの接続を確立するためにゲートウェイと通信するとき、最初は１８８３接続が試みられる。これが失敗した場合には、ケーブル接続を試みることができる。ソースデバイス上のケーブルプラグとターゲットデバイス上のケーブルプラグの、互換性のある組合せが見つかると、接続を確立できる。バス上において、接続は、ソースケーブルプラグとシンクケーブルプラグの間のケーブル接続（ｃａｂｌｅｄ ｃｏｎｎｅｃｔｉｏｎ）によって表され、ソースケーブルプラグとシンクケーブルプラグの一方または両方はプロキシであることができる。ローカルバス上において、開始側デバイスは接続を要求し、反対側のゲートウェイには、反対側のバス上に接続を確立するように、ローカルのゲートウェイを介して自動的に要求される。各バス上の通信は、ローカルのゲートウェイにおけるプロキシから発行されたように見えるように、新しいタイムスタンプが付けられる。
【００４３】
上述されているブリッジングシステムは、他のデバイスから透過的であるように実施される。ゲートウェイによって維持管理（ｈｏｓｔ）されるプロキシ要素は、そのゲートウェイのローカルなバス上のデバイスから見ると、実際の要素がそのローカルバス上に存在している場合と同じように機能する。各場合において、プロキシ要素は、ローカルバスからの通信がアドレッシングされる先の、代わりの識別子を保持する。プロキシ要素にアドレッシングされた、ゲートウェイにおいて受信される通信は、反対側のゲートウェイに伝送され、実際の要素識別子の新しいスタンプが付けられて、その要素によって受信されるようにバス上に伝送される。各バスによって複数のゲートウェイを維持管理することができ、また１つの要素を、複数のバスのリモートデバイスから見えるようにできる。
【００４４】
上記は、ＤＣＭインタフェースのエクスポートとアイソクロナスストリーム伝送をサポートするのに適した、ＦＣＭ、ケーブルプラグ、および要素のプロキシ要素について説明されているが、本発明の原理は、他の要素にも適用可能である。例えば、ソフトウェアアルゴリズムまたは類似する要素を実施するアプリケーションモジュール（ＡＭ）をプロキシ化することができる。要素が別のバス上にプロキシ化されると、そのバス上のデバイスは、その要素を認識することができ、その要素にメッセージを送ることができる。プロキシデバイスによって受信されたメッセージは、真のデバイスに転送される。逆方向の通信は、真のデバイスから、真のデバイスのローカルバス上の、通信先デバイスのプロキシに送られ、このプロキシが、これを通信先デバイスに転送する。
【００４５】
上述されているように、ＨＡＶｉなどの通信システムにおいては、通信は、すべての使用可能なデバイスと、その通信がアドレッシングされているかまたはその通信を読み取ることが認められるように設定されているデバイスへのブロードキャストである。明らかに、バスの間に複数のブリッジがいったん実施されると、このトラフィックは、リンクされているすべてのバスに広がる。上記では、ストリームの選択的なルーティングと、ＦＣＭなどの要素の選択的なブリッジングの概念について説明されている。この概念は、リモートバス上のデバイスの間の接続が、ゲートウェイ自体の中の２つのＦＣＭの間の接続としてゲートウェイ内で表されるように拡張することができる。このことは、トラフィックがローカルバス上に現れことを防ぐ。
【図面の簡単な説明】
【図１】本発明によるブリッジングシステムを組み込んでいる通信システムのブロック線図である。
【図２】本発明による多数のブリッジングシステムを組み込んでいる通信システムのブロック線図である。
【図３】図２の通信システムのブロック線図であり、特定の要素をより詳細に示している。
【符号の説明】
１００、１０５、１１０　通信ネットワーク
１０２　制御デバイス
１０３　被制御デバイス
１０５　通信ネットワーク
１０１、１０６、１１１　レジストリ
１０７、１０８、１１２、１１３　ゲートウェイデバイス
１０７ａ−１０７ｅ、１１２ａ　プロキシＦＣＭ
１０７ｚ、１０８ｚ、１１２ｚ、１１３ｚ　ＤＣＭ
１２０　インテリジェントテレビ
１２１、１２２、１２３、１３１、１３２、１４１、１５１、１５２　ＦＣＭ
１２４、１３３、１５３　デバイス制御モジュール（ＤＣＭ）
１３０　ビデオカセットレコーダー
１４０　集中暖房システム
１５０　カムコーダー
【図１】
2004513562.tif 000003
【図２】
2004513562.tif 000004
【図３】
2004513562.tif 000005
【国際公開パンフレット】
2004513562.tif 000006
2004513562.tif 000007
2004513562.tif 000008
2004513562.tif 000009
2004513562.tif 000010
2004513562.tif 000011
2004513562.tif 000012
2004513562.tif 000013
2004513562.tif 000014
2004513562.tif 000015
2004513562.tif 000016
2004513562.tif 000017
2004513562.tif 000018
2004513562.tif 000019
2004513562.tif 000020
2004513562.tif 000021
2004513562.tif 000022
2004513562.tif 000023
2004513562.tif 000024
2004513562.tif 000025
2004513562.tif 000026
2004513562.tif 000027
【国際公開パンフレット（コレクトバージョン）】
2004513562.tif 000028
【国際公開パンフレット（コレクトバージョン）】
2004513562.tif 000029
【国際調査報告】
2004513562.tif 000030
2004513562.tif 000031
2004513562.tif 000032
2004513562.tif 000033
2004513562.tif 000034
2004513562.tif 000035