JP3882636B2 - 他ノードを管理する通信装置及び他ノードに管理される通信装置 - Google Patents
他ノードを管理する通信装置及び他ノードに管理される通信装置 Download PDFInfo
- Publication number
- JP3882636B2 JP3882636B2 JP2002043588A JP2002043588A JP3882636B2 JP 3882636 B2 JP3882636 B2 JP 3882636B2 JP 2002043588 A JP2002043588 A JP 2002043588A JP 2002043588 A JP2002043588 A JP 2002043588A JP 3882636 B2 JP3882636 B2 JP 3882636B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- management
- network
- supervising
- management 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 - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40078—Bus configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40117—Interconnection of audio or video/imaging devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/403—Bus networks with centralised control, e.g. polling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
【発明の属する技術分野】
本発明は、統括ノードと末端ノードを持つ通信装置に関し、より詳しくは、他のノードを管理することが出来る統括ノードと、該統括ノードによって管理される末端ノードに関する。
【0002】
【従来の技術】
大容量高速転送が可能なシリアルインターフェイスの規格として、IEEE1394が知られている。このIEEE1394規格に準拠したインターフェイス又は該インターフェイスを有する機器(以下、まとめてIEEE1394デバイスと呼ぶ)は、それぞれが1つのノードとしてハードウェアからなるIEEE1394バスプロトコル(下位層)と、その上にデバイスのコントロールやアイソクロナス転送のコントロールなどのプロトコル(上位層)をソフトウェアで実装している。
【0003】
図12は、mLAN(商標)上位層を実装した一般的なAV(オーディオ・ビジュアル)装置のプロトコルスタックの一例を表す概念図である。mLANとは、IEEE1394規格に準拠し、その上位に位置するアプリケーションで、音楽のためのデジタルネットワークシステムである。
【0004】
下位層は、例えば、物理層(Physical Layer)、リンク層(Link Layer)、トランザクション層(Transaction Layer)及びバス管理(Serial Bus Management)の各層を含んで構成される。
【0005】
物理層では、物理的・電気的なインターフェイスが規定されている。物理層は、一般的にハードウェアで構成されている。
リンク層では、サブアクションと呼ばれる一方向の転送サービス、及びパケットの送受信に関するサービス(Packet Handler)が提供される。リンク層も、物理層と同様、一般的にはハードウェアで構成される。リンク層では、例えば、アシンクロナス(非同期)転送(Asyncronous Transmission)、及びアイソクロナス転送(Isochronous Transmission)に関するサービスが提供される。
【0006】
また、特に、アイソクロナス転送については、オーディオ信号やビデオ信号等の高速な処理を必要とする信号を扱うので、ハードウェアであるリンク層で、全てのサービスを提供している。
【0007】
トランザクション層では、アシンクロナス転送に関する処理が行われる。トランザクションとは、要求−応答型のデータ転送であり、読み込み(Read)トランザクション、書き込み(Write)トランザクション、ロック(Lock)トランザクションの三種類がある。
【0008】
読み込みトランザクションは、ターゲットの特定アドレス空間からデータの読み出しを行うためのトランザクションであり、書き込みトランザクションは、ターゲットの特定アドレス空間へのデータの書き込みを行うためのトランザクションである。ロックトランザクションは、参照データに基づき、ターゲット上の特定アドレス空間のデータを更新するためのトランザクションである。
【0009】
バス管理は、バス上の資源を集中的に管理するためのモジュールである。バス管理では、電源供給の管理、トポロジーマップとスピードマップの管理、アイソクロナス・リソースの管理等が行われる。
【0010】
上位層は、下位層及びノード全体を管理するためのソフトウェアであり、例えば、1394AVプロトコル(IEC−61883)、及びmLAN上位層により構成されている。
【0011】
1394AVプロトコルでは、アイソクロナス・パケットのデータ内容を表現するためのCIP(Common Isochronous Packet)フォーマット、仮想的な「プラグ」を定義してコネクションの管理を行うためのCMP(Connection Management Protocol)、IEEE1394バスに接続される他の機器を管理するためのFCP(Function Control Protocol)等が定義されている。
【0012】
mLAN上位層は、IEEE1394規格上でオーディオ/音楽情報の転送を行うためのプロトコル階層である。mLAN上位層は、オーディオ/音楽情報転送プロトコルとコネクション管理プロトコルから構成されており、どちらのプロトコルも1394AVプロトコルに準拠している。
【0013】
オーディオ/音楽情報転送プロトコルは、CIPの定義にオーディオ/音楽情報の転送のためのフォーマットを追加するものである。コネクション管理プロトコルは、CMPをインテリジェント化し、各ノード上での自律的なコネクション管理を行うためのプロトコルである。
【0014】
【発明が解決しようとする課題】
これら上位層及び下位層は、その機能に多少の差はあっても、IEEE1394バスに接続される全てのIEEE1394デバイスに実装されている。
【0015】
上位層は、下位層に比べて複雑であるため、上位層を実装するために必要なハードウェア資源が下位層に比べて多くなってしまう。このため、全てのIEEE1394デバイスに、上位層を実装すると製造コストが上がってしまう。
【0016】
また、上位層は、下位層に比べてユーザインターフェイスに関係する場合が多いため、ユーザからの改善要求をフィードバックする機会が多くなり、新しい仕様に容易に変更できる構造が望ましいが、全てのIEEE1394デバイスの上位層を、容易にアップグレードできる構造にすると製造コストを上げる要因になってしまう。
【0017】
本出願と同一出願人による特許出願2001−220895号の実施例の欄では、上位層を持たない末端ノードを他の統括ノードが代理することが提案されている。特許出願2001−220895号の発明では、末端ノードの記憶領域に上位層を代理すべき統括ノードのGUIDが書き込まれる。これにより他の一般ノードから統括ノードを通した末端ノードの機能が使えるようになる。
【0018】
ところが、上記発明によれば、記憶領域に書き込まれたGUIDを持つ統括ノードが何らかの理由で応対しなくなってしまうと、他の一般ノードは末端ノードの機能を使用することができなくなってしまう。
【0019】
また、より新しいバージョンを持つ統括ノードがネットワークに参加したときや、別の統括ノードが代理したほうが末端ノードの機能をより有効に活用できる場合などに、現在他の統括ノードが代理している末端ノードを別の統括ノードが使用することが出来なかった。
【0020】
本発明の目的は、製造コストをおさえたIEEE1394規格に準拠した機器を提供することである。
また、本発明の他の目的は、他のノードを管理することができるIEEE1394規格に準拠した機器を提供することである。
【0021】
また、本発明のさらに他の目的は、他のノードが管理しているノードを一時的に管理することが出来るIEEE1394規格に準拠した機器を提供することである。
【0022】
本発明の一観点によれば、少なくとも、第1のレジスタを有するネットワークプロトコルスタックの第1の下位層、該第1の下位層を制御する前記ネットワークのプロトコルスタックの第1の上位層、およびネットワークを介して接続された特定の末端ノードが備える前記ネットワークのプロトコルスタックの第1の下位層を制御する前記ネットワークのプロトコルスタックの第2の上位層を含む階層構造を有したノードを構成し、前記第1の下位層は前記第1のレジスタにストアされたデータに基づいて制御される通信装置は、前記第1の下位層が、ネットワークを介して他のノードと信号の授受を行い第1の命令と第2の命令とを受信する通信手段を含み、前記第1の上位層は、前記第1の下位層が他のノードからネットワークを介して前記第1の命令を受け取ったことに応じて第1の制御信号を生成して該第1の制御信号を前記第1のレジスタに書き込む第1の下位層制御手段を含み、ネットワークを介して接続された末端ノードにおいて保持されている該末端ノードの管理状態を表す管理情報を前記ネットワーク経由にて読み取る管理情報読取手段と、前記読み取った管理情報に他のノードの識別情報が含まれていない時、自機の識別情報を前記末端ノードの管理情報保持領域に前記ネットワーク経由にて書き込む管理情報書込手段とを有し、前記管理情報書込手段により自機の識別情報が管理情報の一部として末端ノードに書き込まれたとき、前記通信装置は該末端ノードの上位層の機能を代行するものとして動作し、前記第2の上位層は、他のノードからネットワークを介して前記第2の命令を受け取ったことに応じて第2の制御信号を生成し、該第2の制御信号を前記末端ノードの第2の下位層が有する第2のレジスタにネットワークを介して書き込む末端ノード制御手段を備え、前記末端ノードの上位層の機能を代行し、ネットワークを介して前記末端ノードの前記ネットワークプロトコルスタックの第2の下位層の実行制御を行う統括ノードとして機能することを特徴とする。
【0023】
本発明の他の観点によれば、ネットワークに接続された末端ノードと統括ノードとを含んで構成されるネットワークシステムは、前記末端ノード及び前記統括ノードが、前記ネットワークのプロトコルスタックの下位層であって、指示を生成する他のノードとネットワークを介して信号の授受を行う通信手段と、前記下位層の動作を制御するデータを記憶するレジスタとをそれぞれ有し、前記末端ノードは、当該末端ノードの管理状態を表す管理情報を保持し、前記統括ノードがネットワークを介して管理情報の読み取り及び書込みが可能な管理情報保持手段を有し、前記統括ノードは、前記ネットワークのプロトコルスタックの第1の上位層であって、当該統括ノードの下位層が他のノードから受け取った第1の命令に応じて第1の制御データを生成し、当該統括ノードの下位層の前記レジスタに書き込む統括ノード下位層制御手段とを含む第1の上位層と、前記ネットワークを介して前記末端ノードの管理情報保持手段から管理情報を読み取る管理情報読取手段と、前記ネットワークを介して前記末端ノードの管理情報保持手段へ当該統括ノードの識別情報を管理情報の一部として書き込む書込手段と、前記ネットワークのプロトコルスタックの第2の上位層であって、当該統括ノードの下位層が他のノードから受け取った第2の命令に応じて第2の制御データを生成し、当該末端ノードの下位層の前記レジスタに書き込む末端ノード下位層制御手段とを含む第2の上位層とを有し、前記統括ノードは、前記管理情報書込手段が前記末端ノードの前記管理情報保持手段へ当該統括ノードの識別情報を管理情報の一部として書き込んだ場合に、前記の第2の上位層により前記末端ノードの前記ネットワークのプロトコルスタックの上位層を代行するノードとして作動することを特徴とする。
【0026】
【発明の実施の形態】
図1は、本発明の実施例によるIEEE1394バス1の一例を表すブロック図である。
【0027】
本発明の実施例によるIEEE1394バス1は、例えば、上位層及び下位層を実装する一般ノード2a及び一般ノード2b、上位層を持たない末端ノード3a、上位層及び下位層及び他のノード(末端ノード3a、3b)の上位層を実装する統括ノード4(4a及び4b)をIEEE1394ケーブルで接続することにより構成される。
【0028】
一般ノード2a及び2bは、IEEE1394インターフェイスを有する電子楽器、音響機器、AV機器、パーソナルコンピュータ、又は各種外部記憶装置等のいずれか1つである。一般ノード2a及び2bは、それぞれ上位層A、下位層A、上位層E、下位層Eを実装している。
【0029】
末端ノード3aは、IEEE1394インターフェイスを有する電子楽器、音響機器、AV機器、パーソナルコンピュータ、又は各種外部記憶装置等のいずれか1つであり、例えば、パワードスピーカ等である。末端ノード3aは、上位層を実装しておらず、下位層Bのみを実装している。末端ノード3aは、上位層を実装していないので、単体では、一般ノード2a又は2bと上位層で定義されるプロトコルによる正常な通信を行うことが出来ない。
【0030】
このように、末端ノード3aは、上位層を実装していないので、通常上位層で処理される1394AVプロトコルに基づくコマンドやmLAN規格に基づくコマンドを単体で処理することは出来ないが、各種トランザクションやアイソクロナス転送などは下位層に実装されているので、単体で処理することが出来る。
【0031】
例えば、末端ノード3aが、パワードスピーカである場合は、発音するための音声信号等は、通常アイソクロナス転送により送信されるので、下位層だけで処理することが出来る。一方、受信チャンネル等のコネクションの設定、ボリュームコントロールなどは、通常、上位層によりコマンドが受け付けられ、該コマンドに対応する機能レジスタ(下位層のハードウェアレジスタ)に書き込みが行われるので、下位層しか持たない末端ノード3a単体では処理することが出来ない。
【0032】
末端ノード3aは、自ノードが末端ノードであって、それを統括するノードに必要な上位層の種類を特定するIDを、後述のCSR(Control andStatus Registers)メモリに記録している。また、現在、自ノードを統括している統括ノードのGUID(Grobal Unique Identifier)をCSRメモリに記録する。
【0033】
末端ノード3bは、末端ノード3aとほぼ同様の構成であるが、上位層D’及び下位層Dを実装している。末端ノード3bは、実装している上位層D’の機能を停止して、統括ノード4の上位層Dにより管理することができる。なお、末端ノード3bの上位層D’を、一部の機能しか管理しないものにして、不足する機能を統括ノード4の上位層Dにより管理してもよい。実装している上位層D’の機能は、外部からのコマンドにより実行又は停止することが出来る。
【0034】
末端ノード3bも、末端ノード3aと同様に、自ノードが末端ノードであって、それを統括するノードに必要な上位層の種類を特定するIDを、CSRメモリに記録している。また、実装している上位層D’の機能を停止する場合には、現在、自ノードを統括している統括ノードのGUIDをCSRメモリに記録する。
【0035】
統括ノード4a及び4b(以下、統括ノード4a及び4bの双方又はいずれか1つを指して統括ノード4と呼ぶ)は、IEEE1394インターフェイスを有する電子楽器、音響機器、AV機器、パーソナルコンピュータ、又は各種外部記憶装置等のいずれか一つであり、例えば外部記憶装置を有するパーソナルコンピュータにより構成される。統括ノード4は、下位層C(統括ノード4bの場合は下位層F)と、自身の上位層C(統括ノード4bの場合は上位層F)に加えて、末端ノード3a及び3bの下位層を管理するための上位層B及びDを実装している。これらの上位層B及びDが、末端ノード3a及び3bの上位層の代理をして、一般ノード2a又は2b等と、上位層で定義されるプロトコルによる通信を行うことが出来る。
【0036】
統括ノード4は、自己が統括することが出来る末端ノードのGUIDを、該末端ノードを管理するためのソフトウェア(上位層)と関連付けて記録している。
図2は、本実施例による末端ノード3a(又は3b)のCSRメモリの一例を表す概念図である。
【0037】
末端ノード3a(又は3b)のCSRメモリは、例えば、CSRコアレジスタ、シリアルバスレジスタ、Yアドレス情報を有するコンフィグROM、及びAV/C領域とY領域を有する機器固有レジスタを含んで構成される。
【0038】
CSRコアレジスタ及びシリアルバスレジスタは周知のIEEE1394デバイスのものと同様の構成である。
Yアドレス情報は、他のノード(特に統括ノード)に対して、Y領域に含まれるリードオンリ領域、リードライト領域、及びリードライト領域内の統括ノードID記憶領域、下位層機能レジスタ領域、その他領域のアドレスを公開している。
【0039】
統括ノードID記憶領域は、記憶エリアM1〜M4に分けられる。
記憶領域M1には、自機(末端ノード)を管理している統括ノードのGUIDが記憶される。自機(末端ノード)を管理している統括ノードがない場合には値「0」が記憶される。初期値は「0」である。また、電源オフ時にも、記憶エリアM1の内容を保持するようにしておくことが好ましい。
【0040】
記憶エリアM2は、記憶領域M1にGUIDが記憶された統括ノード以外の統括ノードによる一時的な管理が可能か否かを示すフラグである。一時的な管理が可能な場合は、値「1」を書き込み、不可能な場合には値「0」を書き込む。記憶領域M1にGUIDが記憶された統括ノード以外の統括ノードによる一時的な管理は、例えば、記憶領域M1にGUIDが記憶された統括ノードが、電源オフ状態又は非アクティブ状態であるときや、同一バス上に存在しないときなどに、可能となる。
【0041】
記憶エリアM3は、現在、自機(末端ノード)が、記憶領域M1にGUIDが記憶された統括ノード以外の統括ノードにより一時的な管理を受けているか否かを示すフラグである。一時的な管理を受けている時は、値「1」が書き込まれる。受けていない場合は、値「0」が書き込まれる。
【0042】
記憶エリアM4には、自機(末端ノード)を一時的に管理している統括ノード(以下、一時統括ノードと呼ぶ)のGUIDを記憶する。一時統括ノードがない場合は、値「0」が記憶される。初期値は「0」である。また、電源オフ時には、クリアされることが好ましい。
【0043】
記憶エリアM1又はM4にGUIDを記録されたノード(統括ノード)は、このYアドレス情報を読み込むことにより、末端ノードを管理するために必要なレジスタのアドレスを検出することが出来る。
【0044】
このように、記憶エリアM1又はM4に自機を管理している統括ノードのGUIDを記憶して、それを公開することにより、現在管理している統括ノードを知ることが出来、統括ノードの競合を避けることが出来る。
【0045】
また、記憶エリアM2又はM3に、現在の末端ノードの状態(管理を受けているか否か)を、記録して公開することにより、他のノードから簡単に現在の状態を知ることが出来る。
【0046】
また、記憶エリアM1又はM4にGUIDを記録されたノードのみが機器固有レジスタに対する書き込みを出来るように設定してもよい。このようにすると、記憶エリアM1又はM4にGUIDを記録されていない統括ノードが同一バス上に存在する場合にも、統括ノード同士が競合する事を防止できる。
【0047】
また、統括ノードID記憶領域は、Y領域内に用意されているが、統括ノードから読み書き可能な領域中に用意されていればよい。
図3は、本実施例による統括ノード4のCSRメモリの一例を表す概念図である。
【0048】
統括ノード4のCSRメモリは、例えば、CSRコアレジスタ、シリアルバスレジスタ、コンフィグROM、及びAV/C領域を有する機器固有レジスタを含んで構成される。
【0049】
CSRコアレジスタ及びシリアルバスレジスタは周知のIEEE1394デバイスのものと同様の構成であり、その他の構成についても図2の末端ノード3a(又は3b)のCSRメモリとほぼ同様である。
【0050】
この統括ノード4のCSRメモリの特徴は、コンフィグROM内に自身の情報以外に、管理下にある末端ノードの機能に関する情報を記録していることである。これらの管理下にある末端ノードの機能をコンフィグROMに追加することにより、他のノードからは、統括ノードが末端ノードの機能を有しているように見える。
【0051】
図4は、一般ノード2aと一般ノード2b間の通信を表すブロック図である。
まず、一般ノード2bが一般ノード2a(送信側)から、上位層Eの機能に対応するアドレスに対するコマンド書き込み命令(パケット1)を受信する。次に、一般ノード2b(受信側)の下位層Eは、上記書き込み命令に基づき、上位層Eの機能に対するアドレスへのコマンド書き込みを実行する。
【0052】
その後、一般ノード2bの上位層Eは、書き込み命令(パケット1)を受付け、上記コマンドに対応するレジスタ(機能レジスタ)への書き込み命令を下位層Eに対して行う。すなわち、上位層Eは、受信したコマンドを解釈し、当該コマンドが管理しようとする機能に対応する下位層Eのレジスタ(機能レジスタ)に、当該コマンドの内容に応じた制御データを書き込む。以上により、下位層Eは、レジスタに書き込まれた制御データに基づいて一般ノード2aの送信したコマンドに対応した動作を行うことが出来る。
【0053】
正常に書き込みが行われたら、一般ノード2bの下位層Eは、一般ノード2aに対して、上記書き込み命令が正常に行われたことを示すパケット2を送信する。
【0054】
このように、上位層を持つノード同士では、上位層を介すことにより、機能レジスタへの書き込みを行い、お互いに他の機器を管理することが出来る。
図5は、本実施例による一般ノード2aと末端ノード3a間の通信を表すブロック図である。なお、この例では統括ノード4がIEEE1394バス1上に存在しないものとする。
【0055】
末端ノード3aは、まず、一般ノード2a(送信側)から、上位層の機能に対応するアドレスに対するコマンド書き込み命令(パケット1)を受信する。次に、末端ノード3a(受信側)の下位層Bは、上記書き込み命令に応じて、書き込みを実行しようとする。しかし、末端ノード3aには、上位層が実装されていないため、該上位層の機能に対応するアドレスが存在せず、下位層Bは、エラー(パケット2)を一般ノード2aに対して送信する。すなわち、末端ノード3aには上位層がないので、受信したパケット1に応じたコマンドの書き込みは失敗し、したがって、そのコマンドに応じた下位層Bに対する制御が行われることはない。
【0056】
このように、末端ノード3aは、上位層の機能に対応するコマンドに対してエラーを帰すので、末端ノード3aが上位層を実装してないことがわかる。
そこで、本実施例では、図6に示すように統括ノード4が、末端ノード3aの上位層を実装して、一般ノード2aとの通信を代理して行う。
【0057】
図6は、本実施例による統括ノード4を介した一般ノード2aと末端ノード3a間の通信を表すブロック図である。なお、統括ノード4は、後述の末端ノード管理設定処理により、末端ノード3aを管理するように設定されている。
【0058】
まず、統括ノード4の下位層Cは、一般ノード2a(要求元)から、末端ノード3aの上位層Bの機能に対応するアドレスに対するコマンド書き込み命令(パケット1)を受信する。
【0059】
次に、統括ノード4の下位層Cは、該受信した書き込み命令に基づき、上位層Bの機能に対応するアドレスに対してコマンドを書き込む。その後、上位層Bは、該コマンドで指示された機能に対応する末端ノード3a内の下位層Bの機能レジスタのアドレスを検出し、該検出したアドレスに対する該コマンドに応じた制御データの書き込み命令(パケット2)を末端ノード3aに対して送信する。
【0060】
その後、末端ノード3aの下位層Bは、受け取った書き込み命令(パケット2)を実行し、すなわち、下位層Bの該機能レジスタに相当するアドレスへ該制御データを書き込み、その結果(パケット3)を、統括ノード4に対して送信する。下位層Bは、書き込まれた制御データに基づいて、一般ノード2aが統括ノード4の上位層Bに対して送信したコマンドに対応した動作を行う。
【0061】
末端ノード3aからの処理結果(パケット3)を受信した統括ノードは、要求の発行元である(コマンドを送ってきた)一般ノード2aに対して、当初のコマンドに対する応答(パケット4)を送信する。
【0062】
一般ノード2aは、統括ノード4からの応答(パケット4)を受信して、処理が正常に行われたことを認識する。
このように、統括ノード4が、本来末端ノードの上位層が果たすべき役割を代理して行い、上位層で処理すべき信号を下位層で処理できるフォーマットで末端ノードに送信してやることにより、上位層を持たない末端ノードに対するコマンドの書き込み等を行うことが出来る。
【0063】
図7は、本実施例の統括ノード4における末端ノードの管理設定処理を表すフローチャートである。この末端ノード管理設定処理は、バスリセット(新たなノードがバスに接続されたり、これまで接続されていたノードがバスから外される等のトポロジー変化が起きた時に発生する)が実行されるごとに起動される。
【0064】
ステップSA1では、末端ノード管理設定処理を開始して次のステップSA2に進む。
ステップSA2では、末端ノード管理処理を初期化する。その後、次のステップSA3に進む。
【0065】
ステップSA3では、管理すべき末端ノードのGUIDを書き換え可能な記憶装置から読み出す。本実施例の統括ノードには、以下の説明の便宜上、予め管理すべき末端ノードのGUIDが1つ記録されているものとする。なお、実際には、1つとは限らず、複数である場合もあるし、1つもない場合もある。また、管理すべき末端ノードのGUIDは、ユーザが入力するようにしてもよい。また、図5に示したように末端ノードに上位層の機能に対応するアドレスに対する書き込み命令を送信し、エラーが帰された末端ノードのGUIDを末端ノードのコンフィグROMから読み出すようにしてもよい。管理すべき末端ノードのGUIDを読み出したら、次のステップSA4に進む。
【0066】
ステップSA4では、IEEE1394バス1に接続されたノードのGUIDを読み出す。なお、ここでは1つのノードのGUIDを読み出すが、このステップSA4を繰り返すことにより全てのノードのGUIDを読み出す。その後、次のステップSA5に進む。
【0067】
ステップSA5では、ステップSA4で読み込んだGUIDが、ステップSA3で読み込んだ管理すべき末端ノードのGUIDと等しいか否かを判断する。ステップSA4で読み込んだGUIDが、ステップSA3で読み込んだ管理すべき末端ノードのGUIDと等しい場合は、YESの矢印で示すステップSA6に進み、等しくない場合は、NOの矢印で示すステップSA10に進む。
【0068】
ステップSA6では、後述する競合整理処理を行う。競合整理処理は、末端ノードの管理について、他の統括ノードとの競合を避けるための処理である。その後、次のステップSA7に進む。
【0069】
ステップSA7では、ステップSA5で管理すべき末端ノードのGUIDとGUIDが一致した末端ノードのコンフィグROMから、該末端ノードの管理に必要な情報を読み込む。その後、次のステップSA8に進む。
【0070】
ステップSA8では、ステップSA7で読み込んだ情報に基づき、自機(統括ノード)の上位層内に管理すべき末端ノードに対応するソフトウェアインスタンス(管理する末端ノードのための上位層)を作成する。その後、次のステップSA9に進む。
【0071】
ここで、末端ノードに対応するソフトウェアインスタンスを作成するというのは、本来末端ノードの上位層が受付けるべきコマンド(例えば、AV/Cコマンド等)を、末端ノードに代わって統括ノードの上位層が受付けることである。すなわち、このステップSA8の処理以降は、統括ノードが、自身の管理する末端ノードに対する他のノードからのコマンドを受付ける状態にする。
【0072】
ステップSA9では、自身のコンフィグROMに、末端ノードの機能の情報を追記することで、末端ノードが持つ機能の追記が行われる。このようにすることで、他のノードからは、統括ノードが管理する末端ノードの機能を持っているかのように見せかけることが出来る。その後、次のステップSA10に進む。
【0073】
統括ノードのコンフィグROMには、統括ノードが予め備えている上位層の内、管理する末端ノードのある上位層に対応する機能が記載され、管理する末端ノードの無い上位層に対応する機能は記載されない。
【0074】
ステップSA10では、IEEE1394バス1に接続されている全てのノードのGUIDを読み込んだか否かが判断される。全てのノードのGUIDを読み込んだらYESの矢印で示すステップSA11に進む。全てのノードのGUIDを読み込んでいなければNOの矢印で示すステップSA4に戻り、その後の処理を繰り返す。
【0075】
ステップSA11では、他のノードに末端ノードを管理していることを認識させるために末端ノード管理設定完了通知を発行する。その後、次のステップSA12に進み末端ノード管理設定処理を終了する。
【0076】
なお、このステップSA11で、バスリセットを発行して、統括ノードと同一のIEEE1394バス1に接続された他のノードに、統括ノードの上位層に作成されたソフトウェアインスタンスを認識させることにより、あたかも上位層を備えた末端ノード3aが存在するように認識させるようにしてもよい。
【0077】
若しくは、統括ノードが末端ノードの機能を持っているように認識させることも出来る。いずれにしても、管理される末端ノードの上位層の機能に対応するコマンドは、統括ノードに対して送信されるようになる。
【0078】
なお、アイソクロナス転送による通信は、下位層が直接処理することが出来るので、統括ノードを介さずに直接末端ノードに送信する。
以上の末端ノード管理設定処理を行うことにより、統括ノードは、自身が管理している末端ノードの上位層に対するアクセスを全て処理し、必要に応じて対応する末端ノードに対して定められたトランザクションを発行し、末端ノード動作状況を確認又は変更することが出来る。
【0079】
また、新たな末端ノードがバスに参加した場合、及び、いずれかの末端ノードがバスから外れた場合にも、発生したバスリセットに応じて統括ノードが図7の処理を実行する。そして、新たに参加した末端ノードの機能の記述が該統括ノードのコンフィグROMに現れ、あるいは、外れた末端ノードの機能の記述が同コンフィグROMから消える。
【0080】
図8は、図6に示す通信を行うための各ノードにおける処理の概念の理解を助けるためのフローチャートである。なお、統括ノードにおいて、図7に示す末端ノード管理設定処理が既に行われているものとする。また、図中点線の矢印はパケットの送信を表す。
【0081】
ステップSB1〜SB4は要求発行元(図6の一般ノード2a)での処理である。
ステップSB1では、要求発行元処理を開始して、次のステップSB2に進む。
【0082】
ステップSB2では、末端ノードの機能に相当するソフトウェアインスタンス(図6の統括ノード4の上位層B)に対する要求を送信する。その後、次のステップSB3に進む。なお、ここで送信される要求は、後述するステップSB6で統括ノードにより受信される。
【0083】
ステップSB3では、後述するステップSB9で統括ノードから送信される末端ノードの処理結果を受信する。その後、次のステップSB4に進み、要求発行元処理を終了する。
【0084】
ステップSB5〜SB10は統括ノード(図6の統括ノード4)での処理である。
ステップSB5では、統括ノード処理を開始して、次のステップSB6に進む。
【0085】
ステップSB6では、統括ノード上位層内に作成した末端ノードの機能に相当するソフトウェアインスタンス(図6の統括ノード4の上位層B)に対する要求を受信する。その後、次のステップSB7に進む。
【0086】
ステップSB7では、末端ノードの機能レジスタに対して書き込み命令を送信する。その後、次のステップSB8に進む。なお、統括ノードは、前述したように、自己の管理下にある末端ノードの機能をコンフィグROM内に記憶している。また、統括ノードは、末端ノードを制御するための各種情報(末端ノードの機能に関する情報、その機能に対応した末端ノードの機能レジスタのアドレス等)を統括ノード内のワークメモリに記録している。ここで送信される書き込み命令は後述するステップSB12で末端ノードによって受信される。
【0087】
ステップSB8では、後述するステップSB14で送信される末端ノードにおける処理結果を受信する。その後、次のステップSB9に進む。
ステップSB9では、ステップSB8で受信した末端ノードでの処理結果に基づき、末端ノードでの処理結果を元の要求発行元に送信する。その後、次のステップSB10に進み統括ノード処理を終了する。
【0088】
ステップSB11〜SB15の処理は末端ノード(図6の末端ノード3a)での処理である。
ステップSB11では、末端ノード処理を開始して次のステップSB12に進む。
【0089】
ステップSB12では、ステップSB7で統括ノードから送信された機能レジスタに対する書き込み命令を受信し、機能レジスタに書き込む。書き込み命令の送受信及び、書き込み命令に基づく処理は、下位層であるトランザクション層により行われるので、上位層を持たない末端ノードにおいても正常に行うことが出来る。その後、次のステップSB13に進む。
【0090】
ステップSB13では、該機能レジスタに対応する機能を実行する。例えば、機能レジスタに対して一定の値等を書き込む。その後、次のステップSB14に進む。
【0091】
ステップSB14では、統括ノードに対して、該書き込み命令の処理結果を送信する。その後、次のステップSB15に進み、末端ノード処理を終了する。
図9は、図7のステップSA6で行う競合整理処理を表すフローチャートである。競合整理処理は、例えば、図1に示すように同一バス上に2つ以上の統括ノード(統括ノード4a及び4b)が存在し、該2つ以上の統括ノードが1つの末端ノード(末端ノード3a)を管理しようとした場合に起こりうる競合を整理するためのものである。
【0092】
例えば、既にバス上に統括ノード(例えばミキサーなど)が存在する場合に、より高機能のコンピュータ等で構成される別の統括ノードを接続して、既にある統括ノードの変わりに末端ノードを管理する場合である。
【0093】
また、例えば、末端ノードを管理していた統括ノードが、バスから切断されたり電源オフにされたりした場合に、そのときに発行されるバスリセットにより、他の統括ノードが末端ノードを管理するために行われる。
【0094】
ステップSC1では、競合整理処理をスタートして、次のステップSC2に進む。
ステップSC2では、管理すべき又は管理を希望する末端ノードの記憶エリアM1(図2)を読み込む。その後、次のステップSC3に進む。
【0095】
ステップSC3では、ステップSC2で読み込んだ記憶エリアM1の値が「0」か否かを判断する。記憶エリアM1の値が「0」であれば、YESの矢印で示すステップSC4に進む。記憶エリアM1の値が「0」でなければ、すなわち他の統括ノードのGUIDが記録されていれば、NOの矢印で示すステップSC5に進む。
【0096】
ステップSC4では、管理すべき又は管理を希望する末端ノードの記憶エリアM1に、自身のGUIDを書き込む。これにより、他の統括ノードに末端ノードの管理をはじめたことを知らせることが出来る。その後、ステップSC14に進む。
【0097】
ステップSC5では、ステップSC2で読み込んだ末端ノードの記憶エリアM1のGUIDをレジスタに書き込む。ここでレジスタに書き込まれたGUIDは、後述する確認処理において利用される。その後、次のステップSC6に進む。
【0098】
ステップSC6では、管理すべき又は管理を希望する末端ノードの記憶エリアM3(図2)を読み込み、その値が「0」か否かを判断する。記憶エリアM3の値が「0」であれば、YESの矢印で示すステップSC7に進む。記憶エリアM3の値が「0」でなければ、すなわち記憶エリアM3の値が「1」であり、他の一時統括ノードに一時的管理を受けている場合は、NOの矢印で示すステップSC15に進んで、末端ノードの管理をあきらめる。
【0099】
ステップSC7では、末端ノードの記憶エリアM1に記憶されたGUIDを持つ統括ノードがバス上に存在するか否かを検出する。統括ノードがバス上に存在する場合は、YESの矢印で示すステップSC10に進む。存在しない場合は、NOの矢印で示すステップSC8に進む。
【0100】
ステップSC8では、末端ノードの記憶エリアM2(図2)の値を読み込み、その値が「1」か否かを判断する。記憶エリアM2の値が「1」、すなわち末端ノードが一時的な管理の可能な状態にあるときは、YESの矢印で示すステップSC9に進む。記憶エリアM2の値が「0」、すなわち末端ノードが一時的な管理の不可能な状態にあるときは、NOの矢印で示すステップSC15に進んで、末端ノードの管理をあきらめる。
【0101】
ステップSC9では、末端ノードの記憶エリアM3に値「1」を記録するとともに、記憶エリアM4(図2)に、自身のGUIDを書き込み、現在末端ノードが一時統括ノードに管理されていることを他のノードに知らせる。その後、ステップSC14に進む。
【0102】
ステップSC10では、末端ノードの記憶エリアM1に記憶されているGUIDを持つ統括ノードに対して、末端ノード管理の許可を求める。末端ノードの記憶エリアM1に記憶されているGUIDを持つ統括ノードから、応答があったら、次のステップSC11に進む。
【0103】
この時、末端ノード管理の許可を求められた統括ノードは、要求元の統括ノードに対して末端ノードの管理の許可(一時的な許可又は完全な許可)又は不許可の応答をする。末端ノードの管理を許可する場合には、末端ノード管理の許可を求められる統括ノードは、末端ノードの管理を一時的に停止又は完全に中止する。
【0104】
ここで、一時的な許可とは、末端ノードの管理権を完全には放棄せずに、後ほど後述する管理権返還要求処理により末端ノードの管理権の返還を要求する場合に与える許可である。完全な許可とは、許可を求められた統括ノードを装置の入替えで新しいものにする時(新しい装置が要求元の統括ノードとなる場合)等に、要求元の統括ノードに対して、完全に管理権を与え、以降、該末端ノードの管理を行わない場合に与える許可である。
【0105】
ステップSC11では、末端ノードの記憶エリアM1に記憶されているGUIDを持つ統括ノードから、末端ノードの管理許可をもらえたか否かを判断する。管理許可を得られた場合は、YESの矢印で示すステップSC12に進む。管理許可を得られなかった場合は、NOの矢印で示すステップSC15に進んで、末端ノードの管理をあきらめる。
【0106】
ステップSC12では、末端ノードの記憶エリアM1に記憶されているGUIDを持つ統括ノードから得た末端ノードの管理許可が一時的なものか否かを判断する。管理許可が一時的なものであるなら、YESの矢印で示すステップSC9に進み、一時統括ノードとして末端ノードを管理する。管理許可が一時的なものでない場合、すなわち完全な管理権を得た場合には、NOの矢印で示すステップSC13に進む。
【0107】
ステップSC13では、末端ノードの記憶エリアM1に自身のGUIDを書き込みむとともに、記憶エリアM3及びM4をクリアする(値「0」を書き込む)。こうすることにより、以降、該末端ノードを管理する統括ノードであることを他のノードに知らせる。その後、次のステップSC14に進む。
【0108】
ステップSC14では、競合整理処理を終了して図7のステップSA7に戻り、末端ノード管理を行う。なお、このときステップSC5で記憶した末端ノードの記憶エリアM1のGUIDをレジスタから消去するようにするとよい。
【0109】
ステップSC15では、末端ノード管理をあきらめ、次のステップSC16に進み、競合整理処理を終了して図7のステップSA11に戻る。
図10は、統括ノードによる他の統括ノードに対する末端ノードの管理返還要求処理を表すフローチャートである。
【0110】
この管理返還要求処理は、例えば、本来、図1の統括ノード4aが、末端ノード3aの管理権を持っている場合に、上述の競合整理処理又は後述の確認処理により該管理権を統括ノード4bに一時的に与えた場合に、本来の管理権を持つ統括ノード4aが、統括ノード4bに対して、末端ノード3aの管理権の返還を要求するための処理である。
【0111】
ステップSD1では、管理権返還要求処理をスタートして、次のステップSD2に進む。
ステップSD2では、管理権の返還を望む末端ノードの記憶エリアM3の値を読み込み、その値が「1」であるか否かを判断する。記憶エリアM3の値が「1」である場合、すなわち該末端ノードが一時統括ノードによって管理されている場合には、YESの矢印で示すステップSD3に進む。記憶エリアM3の値が「0」である場合は、NOの矢印で示すステップSD9に進む。
【0112】
ステップSD3では、管理権の返還を望む末端ノードの記憶エリアM4のGUIDを読み込み、そのGUIDを持つ一時統括ノードに対して、該末端ノードの管理権の返還を要求する。その後、次のステップSD4に進む。
【0113】
ステップSD4では、末端ノードの記憶エリアM4のGUIDを持つ一時統括ノードからの応答を受信し、管理権の返還に応じるか否かを判断する。また、応答のない場合は、バス上に統括ノード4bがいないものと判断し強制的に返還に応じたものとして処理を行う。管理権の返還に応じる場合は、YESの矢印で示すステップSD6に進む。返還のための末端ノード管理の開放処理に時間がかかる等の理由で、管理権の返還に応じない場合には、NOのステップで示すステップSD5に進む。
【0114】
ステップSD5では、末端ノードの記憶エリアM4のGUIDを持つ一時統括ノードが、現在末端ノードの管理の開放処理中であるか否かを判断する。処理中であれば、処理の終了する予定時刻、或いは処理終了までの時間を統括ノード4bから知らせてもらい、当該時刻まで或いは当該時間待機し、再度一時統括ノードに対して問い合わせを行う。しかし、処理中であっても、その処理が長くかかることが明らかな場合や、提示された時間或いは時刻を過ぎても以前処理中である場合は、YESの矢印で示すステップSD10に進み管理権返還要求処理を一時的に終了する。処理中でない場合や、処理中を指示する応答がない場合は、強制的に管理権を返還させる為にNOの矢印で示すステップSD6に進む。
【0115】
ステップSD6では、末端ノードの記憶エリアM2に値「0」を書き込み、一時管理不可の状態にする。その後、次のステップSD6に進む。
ステップSD7では、末端ノードの記憶エリアM3及びM4に値「0」を書き込む。その後、次のステップSD8に進む。
【0116】
ステップSD8では、末端ノードの記憶エリアM2に値「1」を書き込み、再び一時管理可の状態にする。その後、次のステップSD9に進む。
ステップSD9では、前記ステップSA7乃至SA9の処理を行い、以降末端ノードの管理を行う。その後、次のステップSD10に進み、管理権返還要求処理を終了する。但し、ステップSD6及びステップSD8の処理は、再び一時管理を他ノードに行わせる事を許可する時以外は省略してもよい。
【0117】
図11は、本実施例の図1に示す統括ノード4aにおける末端ノード管理中である他の統括ノード4bに対する確認処理を表すフローチャートである。この確認処理は、末端ノードを現在管理している統括ノード(末端ノードの記憶エリアM1にGUIDが書き込まれている統括ノード)が、バス上に存在し正常に末端ノードを管理しているか否かを確認するための処理である。なお、各末端ノード毎に同様にこの処理を行う。
【0118】
この確認処理を一定間隔で起動することにより、現在末端ノードを管理している統括ノード4bが例えばソフトウェアの暴走など、何らかの事情で正常に末端ノードの管理を行えなくなった場合に、現在の統括ノード4bに変わり末端ノードを一時的に管理することが出来る。よって、現在末端ノードを管理している統括ノード4bに不具合があっても、統括ノード4aを含めた第3のノードによって、末端ノードの機能を使用することが出来る。
【0119】
ステップSE1では、確認処理をスタートして、次のステップSE2に進む。なお、この確認処理は、レジスタに他の統括ノードのGUIDが記憶されている場合に例えば、1秒間隔等の一定間隔で起動される割り込み処理である。
【0120】
ステップSE2では、図9のステップSC5でレジスタに記憶したGUIDを持つ統括ノードがバス上にいるか否か、すなわち正常に応答するか否かを確認する。バス上に存在する場合は、YESの矢印で示すステップSE12に進み、確認処理を終了する。
ステップSE3からステップSE5までの処理は、それぞれ図9のステップSC2からステップSC4までの処理と同様である。
【0121】
ステップSE6の処理は、図9のステップSC6の処理と同様であり、ステップSE7及びステップSE8の処理は、それぞれ図9のステップSC8及びステップSC9の処理と同様である。
【0122】
ステップSE9からステップSE11までの処理は、それぞれ図7のステップSA7からステップSA9までの処理と同様である。その後、ステップSE12に進み確認処理を終了する。
【0123】
なお、ステップSE11の後に、レジスタに記憶されたGUIDを消去するようにしてもよい。
以上、本実施例によれば、統括ノードとなるIEEE1394デバイスにより、IEEE1394規格を使った上位層を実装しない機器(末端ノード)を管理することが出来る。
【0124】
また、1つの統括ノードにより複数の末端ノードを管理することが出来る。これにより、ユーザインターフェイス等のIEEE1394規格を使った上位層の更新(「上位プロトコルの更新」だけでなく「バグの修正」や「性能の向上」のために行われる場合も含む)を各機器ごとに行う必要がなく、簡単に行うことが出来る。
【0125】
また、本実施例によれば、上位層を統括ノードに実装することにより、IEEE1394規格を使った上位層と交換性を保ったまま、上位層のないノードを提供することが出来る。
【0126】
また、統括ノードを介することにより、一般ノードに相当するIEEE1394デバイスからも上位層を持たない末端ノードを制御することが出来る。
さらに、末端ノードから上位層を省くことにより、上位層を実装するためのハードウェア及びソフトウェア資源を節約することが出来、末端ノードを低価格で提供することが出来る。
【0127】
また、本実施例によれば、一部又は全部の上位層を実装した末端ノードの上位層の機能を停止して、統括ノードにより管理することが出来る。この場合、統括ノードの上位層を更新することにより、末端ノードに実装されている上位層を更新したのと同様の効果を得ることが出来る。
【0128】
また、本実施例によれば、新しいIEEE1394規格を使った上位層が規定された場合などに、統括ノードの上位層のみを更新することにより、末端ノードを新しい規格に対応させることが出来る。
【0129】
なお、統括ノードがパーソナルコンピュータ等であり、末端ノードを管理するためのソフトウェア(上位層)を複数同時に実行する能力がある場合には、各実行中のソフトウェアがそれぞれ管理している末端ノードのGUIDを管理、記録して、複数のソフトウェアで1つの末端ノードを管理するような競合状態を避けるようにする。
【0130】
また、本実施例によれば、同一バス上に複数の統括ノードがある場合にも、末端ノードに対して管理可能か否かを問い合わせることにより、統括ノード同士の競合をなくすことが出来る。
【0131】
また、現在管理中の統括ノードが、非アクティブであるか、又はバス上に存在しない場合には、末端ノードに問い合わせることにより、他の統括ノードは、一時的に末端ノードを管理することが出来る。
【0132】
また、本実施例によれば、末端ノード中に現在管理している統括ノードのGUIDを記録するので、該末端ノードの管理を望む統括ノードは、末端ノードに記録されているGUIDを持つ統括ノードに直接該末端ノードの管理を要求することにより競合を回避することが出来る。
【0133】
また、本実施例によれば、現在管理中の統括ノードが、何らかの事情で正常に末端ノードを管理できなくなった場合にも、例えば、上述の確認処理により他の統括ノードにより末端ノードを一時的に管理することが出来る。
【0134】
なお、本実施例では、統括ノードのみが、末端ノードの記憶エリアをクリアする(値「0」を書き込む)ことが出来たが、末端ノード自身が記憶エリアをクリアできるようにしておくことが望ましい。記憶エリアにGUIDが記憶された統括ノードが、該末端ノードの管理権を保持したまま、同一バス上に接続されなくなってしまっても、末端ノード自身が記憶エリアをクリアすることで、他の統括ノードが管理権を取得することが出来る。
【0135】
なお、本実施例は、本実施例に対応するコンピュータプログラム等をインストールした市販のコンピュータ等によって、実施させるようにしてもよい。
その場合には、本実施例に対応するコンピュータプログラム等を、CD−ROMやフロッピー(登録商標)ディスク等の、コンピュータが読み込むことが出来る記憶媒体に記憶させた状態で、ユーザに提供してもよい。
【0136】
そのコンピュータ等が、LAN、インターネット、電話回線等の通信ネットワークに接続されている場合には、通信ネットワークを介して、コンピュータプログラムや各種データ等をコンピュータ等に提供してもよい。
【0137】
以上実施例に沿って本発明を説明したが、本発明はこれらに制限されるものではない。例えば、種々の変更、改良、組合せ等が可能なことは当業者に自明であろう。
【0138】
【発明の効果】
以上、本発明によれば、製造コストをおさえたIEEE1394規格に準拠した機器を提供することができる。
【0139】
また、本発明によれば、他のノードを管理することができるIEEE1394規格に準拠した機器を提供することができる。
また、本発明によれば、他のノードが管理しているノードを一時的に管理することが出来るIEEE1394規格に準拠した機器を提供することができる。
【図面の簡単な説明】
【図1】 本発明の実施例によるIEEE1394バス1の一例を表すブロック図である。
【図2】 本実施例による末端ノード3a(又は3b)のCSRメモリの一例を表す概念図である。
【図3】 本実施例による統括ノード4のCSRメモリの一例を表す概念図である。
【図4】 一般ノード2aと一般ノード2b間の通信を表すブロック図である。
【図5】 本実施例による一般ノード2aと末端ノード3a間の通信を表すブロック図である。
【図6】 本実施例による統括ノード4を介した一般ノード2aと末端ノード3a間の通信を表すブロック図である。
【図7】 本実施例の統括ノード4における末端ノードの管理設定処理を表すフローチャートである。
【図8】 図6に示す通信を行うための各ノードにおける処理を表すフローチャートである。
【図9】 本実施例による競合整理処理を表すフローチャートである。
【図10】 本実施例による管理権返還要求処理を表すフローチャートである。
【図11】 本実施例の統括ノード4における他の統括ノードに対する確認処理を表すフローチャートである。
【図12】 mLAN上位層を実装した一般的なAV(オーディオ・ビジュアル)装置のプロトコルスタックの一例を表す概念図である。
【符号の説明】
1…IEEE1394バス、2…一般ノード、3…末端ノード、4…統括ノード
Claims (16)
- 少なくとも、第1のレジスタを有するネットワークプロトコルスタックの第1の下位層、該第1の下位層を制御する前記ネットワークのプロトコルスタックの第1の上位層、およびネットワークを介して接続された特定の末端ノードが備える前記ネットワークのプロトコルスタックの第1の下位層を制御する前記ネットワークのプロトコルスタックの第2の上位層を含む階層構造を有したノードを構成し、前記第1の下位層は前記第1のレジスタにストアされたデータに基づいて制御される通信装置であって、
前記第1の下位層は、ネットワークを介して他のノードと信号の授受を行い第1の命令と第2の命令とを受信する通信手段を含み、
前記第1の上位層は、前記第1の下位層が他のノードからネットワークを介して前記第1の命令を受け取ったことに応じて第1の制御信号を生成して該第1の制御信号を前記第1のレジスタに書き込む第1の下位層制御手段を含み、
ネットワークを介して接続された末端ノードにおいて保持されている該末端ノードの管理状態を表す管理情報を前記ネットワーク経由にて読み取る管理情報読取手段と、
前記読み取った管理情報に他のノードの識別情報が含まれていない時、自機の識別情報を前記末端ノードの管理情報保持領域に前記ネットワーク経由にて書き込む管理情報書込手段とを有し、
前記管理情報書込手段により自機の識別情報が管理情報の一部として末端ノードに書き込まれたとき、前記通信装置は該末端ノードの上位層の機能を代行するものとして動作し、
前記第2の上位層は、他のノードからネットワークを介して前記第2の命令を受け取ったことに応じて第2の制御信号を生成し、該第2の制御信号を前記末端ノードの第2の下位層が有する第2のレジスタにネットワークを介して書き込む末端ノード制御手段を備え、前記末端ノードの上位層の機能を代行し、ネットワークを介して前記末端ノードの前記ネットワークプロトコルスタックの第2の下位層の実行制御を行う統括ノードとして機能することを特徴とする通信装置。 - さらに、ネットワークを介して他の統括ノードから前記末端ノードに関する管理許可要求を受信する要求受信手段と、
前記受信した要求に応答して、管理許可又は拒絶レスポンスを前記他の統括ノードにネットワーク経由で返答する返答手段と、
前記他の統括ノードに管理許可を返答した時は、前記末端ノードの機能の代行を一時的に停止する停止手段とを有する請求項1記載の通信装置。 - さらに、前記返答手段が前記他の統括ノードに管理許可を返答した後に、当該他の統括ノードに対して前記特定の末端ノードの管理権の返還要求を行う返還要求手段を有する請求項2記載の通信装置。
- 前記返答する管理許可は、一時的な許可又は完全な許可のいずれか1つである請求項2又は3記載の通信装置。
- さらに、前記読み取った管理情報が他の統括ノードの識別情報を含む時、該他の統括ノードに対して前記特定の末端ノードに関する管理許可の要求を行う要求手段を有し、
前記管理情報書込手段は、前記他の統括ノードから管理許可を受信した時、自機の識別情報を末端ノードに書き込む請求項1〜4のいずれか1項に記載の通信装置。 - 前記受信した管理許可が一時的なものであった場合、前記管理情報書込み手段は、前記末端ノードの管理情報保持領域内の前記他の統括ノードの識別情報が書き込まれていた領域とは異なる領域に自機の識別情報を書き込む請求項5記載の通信装置。
- 前記受信した管理許可が完全なものであった場合、前記管理情報書込手段は、前記末端ノードの管理情報保持領域内の前記他の統括ノードの識別情報が書き込まれていた領域に自機の識別情報を上書きする請求項5又は6記載の通信装置。
- さらに、前記読み取った管理情報が他の統括ノードの識別情報を含む場合、当該他の統括ノードが前記末端ノードを管理中であるか否かを確認する確認手段を有し、
前記管理情報書込手段は、前記他の統括ノードが前記末端ノードを管理中でない場合に、前記末端ノードに自機の管理情報を書き込む請求項1〜7のいずれか1項に記載の通信装置。 - 前記確認手段は、前記管理情報が他の統括ノードの識別情報を含む場合、所定の時間間隔で繰り返し問い合わせを行う請求項8記載の通信装置。
- さらに、前記管理情報に基づいて前記特定の末端ノードに関する一時的な管理が可能か否かを判定する判定手段を有し、
前記管理情報書込手段は、一時的な管理が可能とされた場合に、前記末端ノードの管理情報保持領域内の前記他の統括ノードの識別情報が書き込まれていた領域とは異なる領域に自機の識別情報を書き込み、一時的な管理が不可能であるとされた場合は、識別情報の書き込みを行わない請求項8又は9記載の通信装置。 - さらに、前記特定の末端ノードの代理として機能する時、当該特定の末端ノードの機能に関する情報を保存する保存手段を有する請求項1〜10のいずれか1項に記載の通信装置。
- ネットワークに接続された末端ノードと統括ノードとを含んで構成されるネットワークシステムであって、
前記末端ノード及び前記統括ノードは、前記ネットワークのプロトコルスタックの下位層であって、指示を生成する他のノードとネットワークを介して信号の授受を行う通信手段と、前記下位層の動作を制御するデータを記憶するレジスタとをそれぞれ有し、
前記末端ノードは、当該末端ノードの管理状態を表す管理情報を保持し、前記統括ノードがネットワークを介して管理情報の読み取り及び書込みが可能な管理情報保持手段を有し、
前記統括ノードは、前記ネットワークのプロトコルスタックの第1の上位層であって、当該統括ノードの下位層が他のノードから受け取った第1の命令に応じて第1の制御データを生成し、当該統括ノードの下位層の前記レジスタに書き込む統括ノード下位層制御手段とを含む第1の上位層と、前記ネットワークを介して前記末端ノードの管理情報保持手段から管理情報を読み取る管理情報読取手段と、前記ネットワークを介して前記末端ノードの管理情報保持手段へ当該統括ノードの識別情報を管理情報の一部として書き込む書込手段と、前記ネットワークのプロトコルスタックの第2の上位層であって、当該統括ノードの下位層が他のノードから受け取った第2の命令に応じて第2の制御データを生成し、当該末端ノードの下位層の前記レジスタに書き込む末端ノード下位層制御手段とを含む第2の上位層とを有し、
前記統括ノードは、前記管理情報書込手段が前記末端ノードの前記管理情報保持手段へ当該統括ノードの識別情報を管理情報の一部として書き込んだ場合に、前記の第2の上位層により前記末端ノードの前記ネットワークのプロトコルスタックの上位層を代行するノードとして作動することを特徴とするネットワークシステム。 - 前記ネットワークは、さらに他の統括ノードを含んで構成され、
前記管理情報は、前記末端ノードの上位層を代行している統括ノードを表す第1の情報と一時的管理に関する第2の情報とを含み、
前記第2の情報が当該末端ノードが他の統括ノードによって一時的に管理されていることを示す時は、前記他の統括ノードが前記統括ノードによる当該末端ノードの上位層の機能の代行をさらに代替しており、
前記他の統括ノードは、前記ネットワークのプロトコルスタックの第3の上位層であって、当該他の統括ノードの下位層が、他のノードから受け取った第3の命令に応じて第3の制御データを生成し、当該他の統括ノードの下位層のレジスタに書き込む統括ノード下位層制御手段とを含む第3の上位層と、前記ネットワークを介して前記末端ノードの管理情報保持手段から管理情報を読み取る管理情報読取手段と、前記ネットワークを介して前記末端ノードの管理情報保持手段へ当該他の統括ノードの識別情報を管理情報の一部として書き込む書込手段と、前記ネットワークのプロトコルスタックの第4の上位層であって、当該他の統括ノードの下位層が他のノードから受け取った第4の命令に応じて第4の制御データを生成し、当該末端ノードの下位層の前記レジスタに書き込む末端ノード下位層制御手段とを含む第4の上位層とを有することを特徴とする請求項12記載のネットワークシステム。 - 前記管理情報は、他の統括ノードによる一時的な管理が可能であるか否かを示すフラグを含む請求項12又は13記載のネットワークシステム。
- 前記管理情報は、当該末端ノードが前記他の統括ノードにより一時的に管理されているか否かを示すフラグを含む請求項12〜14のいずれか1項に記載のネットワークシステム。
- 前記管理情報は、当該末端ノードの上位層の機能代行している統括ノードをさらに代替する前記他の統括ノードの識別情報を含む請求項12〜15のいずれか1項に記載のネットワークシステム。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002043588A JP3882636B2 (ja) | 2002-02-20 | 2002-02-20 | 他ノードを管理する通信装置及び他ノードに管理される通信装置 |
EP03003132A EP1341352A1 (en) | 2002-02-20 | 2003-02-13 | Communication apparatus managing other node and communication apparatus managed by other node |
US10/370,167 US7330442B2 (en) | 2002-02-20 | 2003-02-18 | Communication apparatus managing other node and communication apparatus managed by other node |
CA002419166A CA2419166C (en) | 2002-02-20 | 2003-02-18 | Communication apparatus managing other node and communication apparatus managed by other node |
US11/881,985 US7542434B2 (en) | 2002-02-20 | 2007-07-27 | Communication apparatus managing other node and communication apparatus managed by other node |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002043588A JP3882636B2 (ja) | 2002-02-20 | 2002-02-20 | 他ノードを管理する通信装置及び他ノードに管理される通信装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003244171A JP2003244171A (ja) | 2003-08-29 |
JP3882636B2 true JP3882636B2 (ja) | 2007-02-21 |
Family
ID=27678421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002043588A Expired - Fee Related JP3882636B2 (ja) | 2002-02-20 | 2002-02-20 | 他ノードを管理する通信装置及び他ノードに管理される通信装置 |
Country Status (4)
Country | Link |
---|---|
US (2) | US7330442B2 (ja) |
EP (1) | EP1341352A1 (ja) |
JP (1) | JP3882636B2 (ja) |
CA (1) | CA2419166C (ja) |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06104979A (ja) | 1992-09-21 | 1994-04-15 | Matsushita Electric Ind Co Ltd | 中継局管理システム |
JPH06197112A (ja) | 1992-12-25 | 1994-07-15 | Fuji Xerox Co Ltd | 管理システム |
JP3348526B2 (ja) | 1994-06-14 | 2002-11-20 | ソニー株式会社 | オーディオビデオマネージャ機器及びオーディオビデオ機器並びに通信方法 |
US6219697B1 (en) * | 1997-05-02 | 2001-04-17 | 3Com Corporation | Method and apparatus for operating the internet protocol over a high-speed serial bus |
US5933656A (en) * | 1997-06-18 | 1999-08-03 | Raytheon Company | System for interfacing host computer to multiple peripheral devices using daisy-chainable bus and federated computational input/output circuit card assemblies |
US6237049B1 (en) * | 1998-01-06 | 2001-05-22 | Sony Corporation Of Japan | Method and system for defining and discovering proxy functionality on a distributed audio video network |
US6226762B1 (en) * | 1998-04-20 | 2001-05-01 | National Instruments Corporation | System and method for providing delayed start-up of an activity monitor in a distributed I/O system |
JP3779477B2 (ja) | 1998-11-10 | 2006-05-31 | 株式会社東芝 | ネットワーク管理システムおよび遠隔監視制御装置 |
EP1058422A1 (en) * | 1999-06-02 | 2000-12-06 | THOMSON multimedia | Methods for bridging a HAVi sub-network and a UPnP sub-network and device for implementing said methods |
JP2001053767A (ja) | 1999-08-05 | 2001-02-23 | Kenwood Corp | ネットワークシステム及びネットワーク機器 |
JP2001290751A (ja) * | 2000-04-04 | 2001-10-19 | Sony Corp | 情報処理装置、制御装置及び情報処理システム並びにそれらの方法 |
JP3890927B2 (ja) * | 2001-07-23 | 2007-03-07 | ヤマハ株式会社 | 他ノードを管理する通信装置及び他ノードに管理される通信装置 |
JP3882618B2 (ja) * | 2002-01-18 | 2007-02-21 | ヤマハ株式会社 | 通信装置およびネットワークシステム |
-
2002
- 2002-02-20 JP JP2002043588A patent/JP3882636B2/ja not_active Expired - Fee Related
-
2003
- 2003-02-13 EP EP03003132A patent/EP1341352A1/en not_active Withdrawn
- 2003-02-18 US US10/370,167 patent/US7330442B2/en active Active
- 2003-02-18 CA CA002419166A patent/CA2419166C/en not_active Expired - Fee Related
-
2007
- 2007-07-27 US US11/881,985 patent/US7542434B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US7330442B2 (en) | 2008-02-12 |
US20070274319A1 (en) | 2007-11-29 |
CA2419166A1 (en) | 2003-08-20 |
JP2003244171A (ja) | 2003-08-29 |
EP1341352A1 (en) | 2003-09-03 |
US7542434B2 (en) | 2009-06-02 |
US20030156587A1 (en) | 2003-08-21 |
CA2419166C (en) | 2007-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0899655B1 (en) | Information communicating apparatus and method | |
JP3783282B2 (ja) | 通信制御方法、通信システムおよびそれに用いる電子機器 | |
TW436746B (en) | Management of functionality in a consumer electronics system | |
KR100746900B1 (ko) | 전자장치, 및 전자장치의 물리층 회로의 상태를 제어하는방법 | |
JP3630971B2 (ja) | データ通信方法、装置、システム、及び記憶媒体 | |
JPH10341247A (ja) | データ送信装置、データ受信装置、データ伝送システム及びデータ伝送方法 | |
JP3882636B2 (ja) | 他ノードを管理する通信装置及び他ノードに管理される通信装置 | |
JP3348526B2 (ja) | オーディオビデオマネージャ機器及びオーディオビデオ機器並びに通信方法 | |
EP1130851A2 (en) | A method for controlling a communication of stream data | |
JP3890927B2 (ja) | 他ノードを管理する通信装置及び他ノードに管理される通信装置 | |
JP2001274813A (ja) | 情報信号処理装置及び情報信号処理方法並びに記憶媒体 | |
JP4764876B2 (ja) | 分散ステーションのネットワークにおけるステーション固有情報のテーブルを提供する方法及び当該方法を実行するネットワークステーション | |
JPH1155297A (ja) | 伝送媒体接続装置および記憶媒体 | |
JP4259547B2 (ja) | 通信装置 | |
JP2002057683A (ja) | 制御機器および制御方法 | |
JP4349189B2 (ja) | ネットワークシステム、番組録画予約方法および情報処理装置 | |
JP4102344B2 (ja) | 通信制御装置、方法及びプログラム | |
JPH10164113A (ja) | データ通信システム、装置及び方法 | |
JP3704773B2 (ja) | 電子機器及びその制御方法 | |
KR100763716B1 (ko) | 정보 제어 방법, 정보 처리 장치, 및 정보 제어 시스템 | |
JP2005339401A (ja) | 情報処理装置及びその制御方法、情報処理コントローラ、情報処理ユニット及びその制御方法、並びにコンピュータプログラム | |
JP2003218887A (ja) | 通信装置およびネットワークシステム | |
JP2001168863A (ja) | 通信方法及び通信装置 | |
JPH10243022A (ja) | パケット変換装置および媒体 | |
JP2006324869A (ja) | ネットワークシステムにおける通信処理方法および通信機器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040521 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060724 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060801 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060927 |
|
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: 20061024 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061106 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 3882636 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101124 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101124 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111124 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111124 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121124 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121124 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131124 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |