(57)【要約】【課題】デバイスディスクリプションを再構築することを可能にし、また、デバイスディスクリプションを再構築したことを他のネットワーク機器に通知することを可能とする。【解決手段】接続する拡張周辺機器が他のネットワーク機器に提供可能か等を判定するデバイス情報テーブルを備え、デバイス情報テーブルの接続フラグからディスクリプションに反映していない拡張周辺機器を検索する（ステップ101、102）。現在のデバイスディスクリプションを取得し、デバイス情報テーブルから反映すべき情報を取得する（ステップ103、104）。取得した情報をデバイスディスクリプションの所定位置に追加し、再構成したデバイスディスクリプションを一旦格納後、接続フラグにデバイスディスクリプションに反映（追加）した旨を記載する（ステップ105〜107）。最後に更新したデバイスディスクリプションを格納するＵＲＬを記述した新しい広告メッセージ作成して送信する（ステップ108）。【選択図】      図６
2005182481.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続する機器同士が相互に所定の情報を交換し合うことにより、相互に機能共有することが可能なプラグアンドプレイに対応し、自身が所有する機能を他の機器からも利用可能とするために自身の機器構成を記述する前記所定の情報であるデバイスディスクリプションを具備するネットワーク機器であって、前記デバイスディスクリプションを自身の機器構成の変化を検出して動的に更新するディスクリプション再構築手段を備えたことを特徴とするネットワーク機器。
【請求項２】
請求項１記載のネットワーク機器であって、前記ディスクリプション再構築手段によって更新されたデバイスディスクリプションを他のネットワーク機器に通知するディスクリプション通知手段を備えたことを特徴とするネットワーク機器。
【請求項３】
請求項２記載のネットワーク機器であって、少なくとも他のネットワーク機器に対して提供可能な拡張周辺機器を示したデバイス名と、拡張周辺機器の接続状態及びデバイスディスクリプションへの反映状況を示す接続フラグと、前記デバイス名に記述する拡張周辺機器が備えるサービス名と、前記サービス名に対応するサービスディスクリプションを予め所有している場所を示すサービスディスクリプションの所在とを格納するデバイス情報テーブルを備え、前記ディスクリプション再構築手段は、拡張周辺機器が接続された際に、前記テーブルを参照して、接続された拡張周辺機器を他のネットワーク機器に対して公開し提供することが可能か否か、他のネットワーク機器に対して提供可能な拡張周辺機器が接続されているか否かを判断することを特徴とするネットワーク機器。
【請求項４】
請求項３記載のネットワーク機器であって、前記接続フラグは、ユーザにより編集可能であることを特徴とするネットワーク機器。
【請求項５】
請求項２記載のネットワーク機器であって、ネットワーク機器に対して提供可能な拡張周辺機器及び内蔵する組込み機器を示すデバイス名と、少なくとも拡張周辺機器の接続状態及びデバイスディスクリプションへの反映状況を示す接続フラグと、組込み機器の稼動状況及びデバイスディスクリプションへの反映状況を示す稼動フラグと、前記デバイス名に記述する拡張周辺機器及び組込み機器が備えるサービス名と、前記サービス名に対応するサービスディスクリプションを予め所有している場所を示すサービスディスクリプションの所在とを格納するデバイス情報テーブルを備え、前記ディスクリプション再構築手段は、拡張周辺機器を接続した際に、前記テーブルを参照し、前記拡張周辺機器を他のネットワーク機器に対して公開し提供することが可能か否か、また他のネットワーク機器に対して提供可能な拡張周辺機器が接続しているか否か、また、内蔵する組込み機器が稼動しているか否かを判断することを特徴とするネットワーク機器。
【請求項６】
請求項５記載のネットワーク機器であって、前記接続フラグ、稼働フラグの少なくとも一方は、ユーザにより編集可能であることを特徴とするネットワーク機器。
【請求項７】
請求項３または５記載のネットワーク機器であって、ネットワーク接続手段であるネットワーク接続Ｉ／Ｆ部と、ユーザによる機能拡張手段である拡張周辺機器を接続するための周辺機器接続Ｉ／Ｆ部と、ユーザからの指示を受付けるコマンド受付部と、前記ネットワーク機器の状態などを表示するための表示制御部と、複数の組込み機器と、前記組込み機器を制御する組込み機器制御部とを備え、前記周辺機器接続Ｉ／Ｆ部が拡張周辺機器の接続状態や固有情報を格納するレジスタを備えることを特徴とするネットワーク機器。
【請求項８】
請求項３または５記載のネットワーク機器であって、ネットワーク接続手段であるネットワーク接続Ｉ／Ｆ部と、ユーザによる機能拡張手段である拡張周辺機器を接続するための周辺機器接続Ｉ／Ｆ部と、ユーザからの指示を受付けるコマンド受付部と、前記ネットワーク機器の状態などを表示するための表示制御部と、複数の組込み機器と、前記組込み機器を制御する組込み機器制御部とを備え、前記組込み機器制御部が各組込み機器の稼動状態を格納するレジスタを備えることを特徴とするネットワーク機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して機能の共有が可能なプラグアンドプレイ対応のネットワーク機器に係り、特に、自身が具備する機能を他の機器に対しても提供することが可能なネットワーク機器に関する。
【背景技術】
【０００２】
近年、ネットワークに接続された機器同士が自動で所定の情報を交換し合うことにより、相互に機能を共有することが可能なプラグアンドプレイ手段を具備するネットワーク情報家電が使用されるようになってきている。このようなプラグアンドプレイ手段を実現する従来技術として、ユニバーサルプラグアンドプレイ（以下、ＵＰｎＰという）と呼ばれる技術が知られている。
【０００３】
他方、宅内ネットワークに設置するネットワーク機器の周辺機器接続手段として、特に、前述のネットワーク機器がＡＶ機器の場合、ＩＥＥＥ１３９４が普及している。そこで、ＵＰｎＰ規格に準拠するネットワーク機器からＩＥＥＥ１３９４規格に準拠するネットワーク機器を制御したり、逆に、ＩＥＥＥ１３９４規格に準拠するネットワーク機器からＵＰｎＰ規格に準拠するネットワーク機器を制御したりするためのブリッジを提供する情報処理装置が、例えば、特許文献１等に記載されて知られている。また、プラグアンドプレイ手段を実現するユニバーサルプラグアンドプレイに関する技術として、例えば、非特許文献１等に記載されて知られている。
【特許文献１】特開２００３−８６１０号公報
【非特許文献１】Universal Plug and Play Device Architecture Version 1.0 （www.upnp.org）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
前述した従来技術によるＵＰｎＰ仕様のネットワーク機器は、自機器が持つデバイスディスクリプションを動的に再構築する機能を備えていないため、ネットワーク機器に拡張周辺機器を接続したとしても、その追加機器に関する情報がデバイスディスクリプションに追加されない。このため、遠隔のユーザは、自分が使用するネットワーク機器から前述した拡張周辺機器の接続を知ることができないため、結果的に利用することができないことになる。
【０００５】
また、例えば、ネットワーク機器の組込み機器が故障して使用できなくなった場合、遠隔のユーザは、それを知らずに前述の組込み機器の機能を利用する可能性があり、実際に利用を試みた場合に不都合が生じることになる。
【０００６】
さらに、特許文献１に開示された情報処理装置は、あくまでプロキシとして機能し、ＵＰｎＰ規格のコマンドをＩＥＥＥ１３９４規格のＡＶ／Ｃコマンドに変換したり、逆に、ＡＶ／ＣコマンドをＵＰｎＰ規格のコマンドに変換したりする機能を提供するものである。このため、前述した情報処理装置は、自身が所有するデバイスディスクプションを再構築することはない。
【０００７】
前述したように、従来技術によるネットワーク機器は、ネットワーク機器が所有するデバイスディスクリプションをネットワーク機器の機器構成の変化に対応して動的に再構築することができず、また、再構築が完了した新たなデバイスディスクリプションを自ら他のネットワーク機器に対して通知することができないという問題点を有している。この結果、従来技術によるネットワーク機器は、ネットワーク機器相互間での機能共有が不完全になってしまうという問題点を生じさせる。
【０００８】
本発明の目的は、前述した従来技術の問題点を解決し、デバイスディスクリプションを再構築することを可能にし、また、デバイスディスクリプションを再構築したことを他のネットワーク機器に通知することができるネットワーク機器を提供することにある。
【課題を解決するための手段】
【０００９】
本発明によれば前記目的は、ネットワークに接続する機器同士が相互に所定の情報を交換し合うことにより、相互に機能共有することが可能なプラグアンドプレイに対応し、自身が所有する機能を他の機器からも利用可能とするために自身の機器構成を記述する前記所定の情報であるデバイスディスクリプションを具備するネットワーク機器であって、前記デバイスディスクリプションを自身の機器構成の変化を検出して動的に更新するディスクリプション再構築手段を備え、また、前記ディスクリプション再構築手段によって更新されたデバイスディスクリプションを他のネットワーク機器に通知するディスクリプション通知手段を備えたことにより達成される。
【００１０】
前述において、前記ディスクリプション再構築手段は、ネットワーク機器に接続された拡張周辺機器を他のネットワーク機器に対して公開し提供することが可能か否か、他のネットワーク機器に対して提供可能な拡張周辺機器が接続されているか否かを判断し、さらに、前述のネットワーク機器に内蔵する組込み機器が正常に稼動しているか否かを判断するためのデバイス情報テーブルを参照してデバイスディスクリプションを再構築する。
【発明の効果】
【００１１】
本発明によれば、ＵＰｎＰ規格に準拠するデバイスであるネットワーク機器の稼動状況により、あるいは、ユーザからの指示により、動的にデバイスディスクリプションを再構築することができ、再構築が完了したデバイスディスクリプションをコントロールポイントであるネットワーク機器に通知することが可能となる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明によるネットワーク機器の実施形態を図面により詳細に説明する。以下に説明する本発明の実施形態は、ネットワーク機器に接続する拡張周辺機器や内蔵する組込み機器に関する情報を格納するテーブルをソフトウェアで生成、管理することによって、特別なハードウェア機構を設けることなく自動的にデバイスディスクリプションを再構築することを可能にしたものである。
【００１３】
図１は本発明が適用される宅内ネットワークの構成例を示すブロック図であり、まず、
宅内ネットワークの構成例と宅内ネットワークに接続するＵＰｎＰ仕様に準拠したネットワーク情報家電について説明する。なお、ＵＰｎＰ仕様では、ネットワーク情報家電をデバイスとコントロールポイントとの２つに大別し、自身が具備する機能を他の機器に対しても提供することが可能なネットワーク情報家電をデバイス、デバイスを制御したり利用したりするネットワーク情報家電をコントロールポイントと定義している。但し、デバイスとコントロールポイントとの両方に対応するネットワーク情報家電も存在する。以下の説明において、ＵＰｎＰ仕様準拠のネットワーク情報家電のデバイスをネットワーク機器（デバイス）、コントロールポイントをネットワーク機器（ＣＰ）という。図１において、１は住宅、２はリビング、３はゲートウェイ装置、４は有線ケーブル、５はネットワーク接続部、６、１６はデバイスディスクリプション、７、１７はサービスディスクリプション、８、９は組込み機器Ａ、Ｂ、１０は周辺機器接続部、１１、１５はネットワーク機器（デバイス）、１２は拡張周辺機器、１３、２０はユーザＡ、Ｂ、１４は寝室、１８はアクセスポイント、１９はネットワーク機器（ＣＰ）である。
【００１４】
いま、図１に示すように、住宅１内に居室としてリビング２と寝室１４とがあり、リビング２にネットワーク機器（デバイス）１１と、拡張周辺機器１２とが設置されており、寝室１４にネットワーク機器（デバイス）１５と、アクセスポイント１８とが設置されているものとする。そして、住宅１の宅内ネットワークは、ゲートウェイ装置３を介してインターネットを含む公衆通信網に接続され、リビング２に設置されたネットワーク機器（デバイス）１１、寝室１４に設置されたネットワーク機器（デバイス）１５やアクセスポイント１８のようにゲートウェイ装置３と有線ケーブル４で直接接続された形態の有線ネットワーク部と、寝室１４にあるネットワーク機器（ＣＰ）１９のように、無線によりアクセスポイント１８に接続する形態の無線ネットワーク部とから構成されている。
【００１５】
前述において、ネットワーク機器（デバイス）１１に注目すると、ネットワーク機器（デバイス）１１は、宅内ネットワークに接続するためのネットワーク接続部５と、ユーザＡ１３やユーザＢ２０による機能拡張を可能とするために拡張周辺機器１２を接続する周辺機器接続部１０と、ユーザＡ１３やユーザＢ２０に提供する様々な物理的、論理的機能を実現する組込み機器Ａ８、組込み機器Ｂ９（例として２つのみを示しているがさらに多数設けられてよい）と、ネットワーク機器（デバイス）１１において、組込み機器Ａ８や組込み機器Ｂ９を含む機器の全体構成を記述したデバイスディスクリプション６と、実際にネットワーク機器（デバイス）１１が実行可能な詳細機能について記述したサービスディスクリプション７とを備えて構成されている。また、図１に示す例では、ネットワーク機器（デバイス）１５は、デバイスディスクリプション１６、サービスディスクリプション１７だけを備えと構成されているものとしている。ネットワーク機器（デバイス）１１やネットワーク機器（デバイス）１５において、デバイスディスクリプション６、１６は、１つだけ存在すればよいか、サービスディスクリプション７、１７は、組込み機器の構成や機能の数に依存するため複数存在する場合がある。
【００１６】
前述したようなネットワーク機器（デバイス）１１やネットワーク機器（デバイス）１５、ネットワーク機器（ＣＰ）１９の具体的な例としては、映像や音楽コンテンツを蓄積するハードディスクレコーダ、ＤＶＤプレーヤ、ビデオカメラ、テレビ、リモコン等があり、ネットワーク接続手段としてはイーサネット（登録商標）に代表される有線ＬＡＮやＩＥＥＥ（Institute of Electrical and Electronics Engineers）８０２．１１ｂ、ＩＥＥＥ８０２．１１ａ、ＩＥＥＥ８０２．１１ｇに規定されて代表される無線ＬＡＮ等がある。また、前述のネットワーク機器（デバイス）１１がハードディスクレコーダの場合、組込み機器Ａ８や組込み機器Ｂ９の例としては、タイマ機能や放送受信チューナ機能、コンテンツを蓄えるハードディスク管理機能等がある。さらに、周辺拡張機器１２の例としては、ハードディスクドライブやデジタルビデオカメラ、携帯電話等があり、周辺機器接続手段としてはＩＤＥ、ＰＣＩ、ＵＳＢ、ＩＥＥＥ１３９４等がある。
【００１７】
ところで、ＵＰｎＰ仕様は、コントロールポイントが所望のデバイスを発見すると共にそのデバイスの機器構成や詳細機能に関する情報を取得し、さらに、制御を行うための通信プロトコルと動作シーケンスとを規定している。すなわち、ネットワーク機器（ＣＰ）１９は、デバイスディスクリプション６やサービスディスクリプション７、及び、デバイスディスクリプション１６やサービスディスクリプション１７を取得することによってネットワーク機器（デバイス）１１やネットワーク機器（デバイス）１５の構成や機能を把握し、寝室１４のユーザＢ２０からでも宅内ネットワークを介してリビング２にあるネットワーク機器（デバイス）１１を制御、利用することができる。
【００１８】
そこで、次に、ネットワーク機器（ＣＰ）１９が、ネットワーク機器（デバイス）１１のデバイスディスクリプション６やサービスディスクリプション７を得るためのディスクリプション取得プロセスについて説明する。なお、ディスクリプション取得プロセスは、ネットワーク機器（デバイス）１５に対しても同様である。
【００１９】
ＵＰｎＰ仕様において、ディスクリプション取得プロセスには、以下に説明する２種類がある。第１の方法は、初めにネットワーク機器（デバイス）１１がトリガとなる場合であり、まず、前述のネットワーク機器（デバイス）１１が、デバイスディスクリプション６の格納先ＵＲＬを含み、自身がＵＰｎＰ仕様に準拠するデバイスであることを示す広告メッセージを宅内ネットワークにマルチキャストにより送信し、ネットワーク機器（ＣＰ）１９が、前述の広告メッセージを受信して、そのメッセージに記述された格納先ＵＲＬにアクセスすることによってデバイスディスクリプション６を取得するという方法である。
【００２０】
また、第２の方法は、ネットワーク機器（ＣＰ）１９がトリガとなる場合であり、まず、前述のネットワーク機器（ＣＰ）１９が、宅内ネットワーク上にデバイス探索メッセージをマルチキャストにより送信し、前述のデバイス探索メッセージを受信したネットワーク機器（デバイス）１１が、デバイスディスクリプション６の格納先ＵＲＬを含む探索応答メッセージを返信し、ネットワーク機器（ＣＰ）１９が、前述の探索応答メッセージを受信し、そのメッセージに記述されたＵＲＬにアクセスすることによってデバイスディスクリプション６を取得するという方法である。
【００２１】
一方、サービスディスクリプション７の格納先ＵＲＬは、後述するように前述したデバイスディスクリプション６内に記述されている。このため、ネットワーク機器（ＣＰ）１９は、前述で取得したデバイスディスクリプション６から引き続いてサービスディスクリプション７を取得することができる。
【００２２】
図２はネットワーク機器（デバイス）が所有するデバイスディスクリプション（部分抜粋）の構成例について説明する図、図３はネットワーク機器（デバイス）が所有するサービスディスクリプション（部分抜粋）の構成例について説明する図であり、次に、これらについて説明する。
【００２３】
図２に示すように、デバイスディスクリプションは、ネットワーク機器（デバイス）の機器構成をＸＭＬ言語で記述したものである。具体的には、図１に示すネットワーク機器（デバイス）１１の組込み機器Ａ８や組込み機器Ｂ９は、図２に細線で囲んで示しように、<deviceList>タグから始まる箇所に<device>タグを用いて列挙される。また、各組込み機器が提供する機能については、<service> タグを用いて記述され、これらの詳細機能をＸＭＬ言語で記述するサービスディスクリプションの格納先ＵＲＬを<SCPDURL> タグを用いて記述している。
【００２４】
そして、図３に示すサービスディスクリプションは、組込み機器Ａ８に対応するサービスディスクリプション（部分抜粋）についてだけを示しており、ネットワーク機器（ＣＰ）からの要求に答えるコマンドまたはアクションを<action>タグを用いて記述し（図３に細線で囲んで示している）、コマンドまたはアクションに対するパラメータや状態変数を、それぞれ<argument>タグと<serviceStateTable> タグとを用いてそれぞれに記述している。
【００２５】
前述した宅内ネットワーク入力接続されるネットワーク機器（デバイス）１１は、デバイスディスクリプション６を動的に再構築する機能を備えていないため、ネットワーク機器（デバイス）１１の周辺機器接続部１０に拡張周辺機器１２を接続したり、あるいは、組込み機器に障害が生じたとしても、それらの情報がデバイスディスクリプション６に追加されず、遠隔のユーザＢ２０が拡張周辺機器１２の接続を知ることができないため、結果的に利用することができず、また、障害となった組込み機器の機能を利用仕様とした場合に、不都合が生じさせるものである。
【００２６】
一方、宅内ネットワーク入力接続されるネットワーク機器（ＣＰ）１９は、ネットワーク機器（デバイス）１１やネットワーク機器（デバイス）１５がそれぞれのタイミングで定期的に発行する広告メッセージにより、また、自身が発行するデバイス探索メッセージによりデバイスディスクリプション６を取得しているが、デバイスディスクリプション６がたとえ再構築作業によって更新されたとしても、その作業と前述したディスクリプション取得プロセスとが連携していないため、即座にネットワーク機器（デバイス）１１やネットワーク機器（デバイス）１５の新しいデバイスディスクリプションを取得し、最新の機器構成や利用可能な機能を把握することが困難である。
【００２７】
以下に説明する本発明の実施形態は、前述したようなネットワーク機器において、デバイスディスクリプションを動的に再構築し、デバイスディスクリプションを再構築したことを他のネットワーク機器に通知することができるようにしたものである。
【００２８】
図４は本発明の第１の実施形態によるネットワーク機器の構成を示すブロック図である。図４において、４０はネットワーク機器、４１はＣＰＵ、４２はＲＡＭ、４３はＲＯＭ、４４はコマンド受付部、４５はネットワーク接続Ｉ／Ｆ部、４６は表示制御部、４７は組込み機器制御部、４８は組込み機器Ａ、４９は組込み機器Ｂ、５０は周辺機器接続Ｉ／Ｆ部、５１は接続状態レジスタ、５２は周辺機器記述レジスタである。
【００２９】
図４示すネットワーク機器４０は、ＵＰｎＰ規格に準拠するデバイスであり、図１により説明したネットワーク機器（デバイス）１１、１５に相当するネットワーク機器である。このネットワーク機器４０は、ＣＰＵ４１と、ＲＡＭ４２と、ＲＯＭ４３と、コマンド受付部４４と、ネットワーク接続Ｉ／Ｆ部４５と、表示制御部４６と、組込み機器制御部４７と、この組込み機器制御部４７に接続された組込機器Ａ４８、Ｂ４９（図１に示す組込機器Ａ８、Ｂ９に相当）と、周辺機器接続Ｉ／Ｆ部５０と、この周辺機器接続Ｉ／Ｆ部５０内に構成される接続状態レジスタ５１及び周辺機器記述レジスタ５２と、後述で説明するディスクリプション再構築手段とにより構成されている。
【００３０】
前述において、ネットワーク接続Ｉ／Ｆ部４５は、宅内ネットワーク接続手段であって、有線ネットワークに接続する際に、例えば、イーサネット（登録商標）のような有線系通信プロトコルを提供したり、無線ネットワークに接続する際に、例えば、ＩＥＥＥ８０２．１１ｂやＩＥＥＥ８０２．１１ａ、ＩＥＥＥ８０２．１１ｇプロトコルのような無線系通信プロトコルを提供したり、さらに、有線ネットワークと無線ネットワークとのいずれにでも接続できるように有線系及び無線系の両通信プロトコルを提供することが可能に構成されている。
【００３１】
周辺機器接続Ｉ／Ｆ部５０は、ユーザがハードディスクドライブや小型半導体メモリ、ＤＶＤドライブ、デジタルカメラ、デジタルビデオカメラ、携帯電話等の拡張周辺機器を接続したり、拡張周辺機器のサポート機能やベンダコード、シリアル番号等の機器固有情報や接続状況を管理する機能拡張手段であって、拡張周辺機器の物理的な接続状態を示し、かつ、拡張周辺機器と１対１に対応付けられている接続状態レジスタ５１や拡張周辺機器から取得した機器固有情報を格納する周辺機器記述レジスタ５２を備え、ＵＳＢやＩＥＥＥ１３９４、ＰＣカードＩ／Ｆ等、拡張周辺機器の接続に適合したインターフェイスのいずれか１つ、あるいは、これらを組み合わせた複数を提供することが可能に構成されている。
【００３２】
コマンド受付部４４は、ユーザからの様々な指示を受付けるコマンド受付け手段であって、マウス、キーボード等の指示入力デバイスを直接接続したり、リモコンからの赤外線を受信するための受光部を備えて構成される。
【００３３】
表示制御部４６は、ユーザへの表示手段であって、ネットワーク機器４０の様々な内部状態や機器構成、拡張周辺機器の接続状況や組込み機器の稼動状況、また、前述したコマンド受付部４４で受信したユーザからの指示等を表示部に適合するデータフォーマットで表示部に提供することが可能に構成されている。
【００３４】
組込み機器制御部４７は、図４では組込み機器Ａ４８、組込み機器Ｂ４９の２つのみが接続された場合を示しているが、各組込み機器の動作を調停する制御手段である。具体的には、例えば、ネットワーク機器４０がハードディスクレコーダである場合、組込み機器Ａ４８や組込み機器Ｂ４９が提供する機能として、タイマ機能や放送受信チューナ機能、受信コンテンツを圧縮して格納したりユーザの要求によって圧縮されたコンテンツを伸張して表示制御部４６から表示部へ送り出す映像圧縮伸張機能等があるが、組込み機器制御部４７は、受信コンテンツの格納と格納済みコンテンツの取得が競合した際の内部バス５３の使用権を調停する等の制御を行う。
【００３５】
ディスクリプション再構築手段は、詳細を後述するが、ＲＯＭ４３内に構成され、ＣＰＵの処理により実現されるものであり、ネットワーク機器４０の周辺機器接続Ｉ／Ｆ部５０に拡張周辺機器を接続した際に、その拡張周辺機器を他のネットワーク機器に対して公開し提供することが可能か否か、また、他のネットワーク機器に対して提供可能な拡張周辺機器が接続しているか否かを判断するための判定手段であって、拡張周辺機器の一覧を記述し、また、ユーザも表示部に出力される機器構成を参照しながらリモコン等のユーザインターフェイスを提供する機器を用いて編集することが可能なデバイス情報テーブルを格納したり、ネットワーク機器４０が現在他のネットワーク機器に提供しているデバイスディスクリプションやサービスディスクリプション、更に、前述のデバイス情報テーブルに記述する提供可能な拡張周辺機器に対応するために予め用意しているサービスディスクリプションを格納したり、機能拡張手段である周辺機器接続Ｉ／Ｆ部５０や、組込み機器管理手段である組込み機器制御部４７や、ユーザからのコマンド入力手段であるコマンド受付部４４からの指示を受け、前述のデバイスディスクリプションやサービスディスクリプションを再構築する機能を有する。
【００３６】
ＲＯＭ４３は、ディスクリプションの再構築手段によりデバイスディスクリプションの再構築を完了し、更新したことを通知する一連のシーケンスを提供するディスクリプション通知手段を提供するソフトウェアプログラムであるディスクリプション再構築及び通知プログラムを格納したり、さらに、ＯＳ（オペレーティングソフトウェア）やウェブサーバソフトウェアを格納したりする。
【００３７】
ＣＰＵ４１とＲＡＭ４２とは、前述したディスクリプション再構築手段及び通知プログラムやＯＳ、ウェブサーバソフトウェアを実行する。
【００３８】
なお、ネットワーク機器４０は、電源がオンとされた後、前述のＲＯＭ４３に格納されているデバイス情報テーブルを初期化プログラムによってＲＡＭ４２にロードして編集作業を行い、電源がオフにされる等の終了時や動作期間中であっても一定時間毎にデバイス情報テーブルをＲＯＭ４３に格納する仕組みを備えている。
【００３９】
また、ネットワーク機器４０は、ハードディスク等の大容量記憶手段を備える場合、前述のＲＯＭ４３に格納する内容物をハードディスク等の大容量記憶手段に格納することも可能である。そして、ＣＰＵ４１、ＲＡＭ４２、ＲＯＭ４３、コマンド受付部４４、ネットワーク接続Ｉ／Ｆ部４５、表示制御部４６、組込み機器制部４７、周辺機器接続Ｉ／Ｆ部５０は、内部バス５３で相互に接続されており、データやコマンドが必要に応じて相互間で授受することができる。
【００４０】
図５は本発明の第１の実施形態によるネットワーク機器が所有するデバイス情報テーブルの構成例を示す図であり、次に、これについて説明する。
【００４１】
図５に示すように、デバイス情報テーブル６０は、図４に示すネットワーク機器４０が他のネットワーク機器に対して提供可能な拡張周辺機器を示したデバイス名６１と、少なくとも拡張周辺機器の接続状態とデバイスディスクリプションへの反映状況を示しユーザによる編集も可能な接続フラグ６２と、前述のデバイス名６１に記述する拡張周辺機器が備えるサービス名（機能名）６３と、前述のサービス名（機能名）６３に対応し、前述したネットワーク機器４０が予め所有しておくサービスディスクリプション及びその所在を示すサービスディスクリプションの所在６４とを格納している。
【００４２】
前述の接続フラグ６２には、図４に示すネットワーク機器４０の周辺機器接続Ｉ／Ｆ部５０にデバイス名６１と一致する拡張周辺機器が接続された直後に、接続状態のみを示す０１ｂ（ｂは２進数を表す）が記載され、次に、前述の拡張周辺機器がデバイスディスクリプションに追加された段階で、接続かつデバイスディスクリプションへの反映状態（追加）を表す１１ｂが記載される。また、接続フラグ６２には、前述の拡張周辺機器を取り外した直後に、非接続状態のみを示す１０ｂが記載され、デバイスディスクリプションから削除された段階で、非接続かつデバイスディスクリプションへの反映状態（削除）を表す００ｂが記載される。さらに、ユーザは、前述の接続フラグ６２のディスクリプションへの反映状況を示すビット部分のみを編集することが可能であり、１１ｂから０１ｂ、０１ｂから１１ｂへの変更を行うことができる。なお、接続フラグ６２の初期状態は００ｂである。
【００４３】
次に、図４を参照して、ユーザが周辺機器接続Ｉ／Ｆ部５０に拡張周辺機器を追加した際のネットワーク機器４０の動作について説明する。
【００４４】
周辺機器接続Ｉ／Ｆ部５０に拡張周辺機器が接続されると、前述の周辺機器接続Ｉ／Ｆ部５０は、ＣＰＵ４１に対して拡張周辺機器が接続されたことを示す周辺機器接続通知を発行する。この周辺機器接続通知を伝達する具体的な方法は、図４には省略して示していないが、ＣＰＵ４１と周辺機器接続Ｉ／Ｆ部５０とをポイントツーポイントで結線する割り込み信号を用いて行うことができる。
【００４５】
ＣＰＵ４１は、前述の周辺機器接続通知を受信すると、接続された拡張周辺機器を特定するため、周辺機器接続Ｉ／Ｆ部５０の接続状態レジスタ５１や周辺機器記述レジスタ５２を参照する。そして、ＣＰＵ４１は、前述の周辺機器記述レジスタ５２から適当な情報を取得し、さらに、デバイス情報テーブルを参照して、接続された拡張周辺機器が図５に示すデバイス情報テーブル６０に記載されている場合、ネットワーク機器（ＣＰ）に提供することが可能であると判断し、前述のデバイス情報テーブル６０の接続フラグ６２に０１ｂを記載し、図６に示すフローにより後述する追加処理におけるディスクリプション再構築及び通知プログラムを起動する。
【００４６】
一方、ＣＰＵ４１は、接続された拡張周辺機器がデバイス情報テーブル６０に記載されていない場合、表示制御部４６を経由して表示部にデバイスディスクリプションには反映できない拡張周辺機器が接続された旨を出力してユーザに通知する。この場合、前述のディスクリプション再構築及び通知プログラムは起動されないことになる。
【００４７】
次に、拡張周辺機器が取り外された場合の動作について説明する。
【００４８】
周辺機器接続Ｉ／Ｆ部５０から拡張周辺機器が取り外されると、周辺機器接続Ｉ／Ｆ部５０は、ＣＰＵ４１に対して拡張周辺機器が取り外されたことを示す周辺機器離脱通知を発行する。この周辺機器離脱通知を伝達する具体的な方法は、図４には省略して示していないが、ＣＰＵ４１と周辺機器接続Ｉ／Ｆ部５０とをポイントツーポイントで結線する割り込み信号を用いて行うことができる。
【００４９】
ＣＰＵ４１は、前述の周辺機器離脱通知を受信すると、離脱した拡張周辺機器を特定するために周辺機器接続Ｉ／Ｆ部５０の接続状態レジスタ５１や周辺機器記述レジスタ５２を参照する。そして、ＣＰＵ４１は、前述の周辺機器記述レジスタ５２から適当な情報を取得し、さらに、デバイス情報テーブルを参照して、離脱した拡張周辺機器が図５に示すデバイス情報テーブル６０に記載されている場合、ネットワーク機器（ＣＰ）に提供することが不可能であると判断し、前述のデバイス情報テーブル６０の接続フラグ６２に１０ｂを記載し、図６に示すフローにより後述する削除処理におけるディスクリプション再構築及び通知プログラムを起動する。
【００５０】
一方、ＣＰＵ４１は、離脱した拡張周辺機器が前述のデバイス情報テーブル６０に記載されていない場合、前述したディスクリプション再構築及び通知プログラムを起動しない。
【００５１】
ところで、ディスクリプション再構築及び通知プログラムは、ユーザが図５に示すデバイス情報テーブル６０の接続フラグ６２を変更した場合にも起動される。このような接続フラグ６２の変更は、例えば、接続されている拡張周辺機器を他のネットワーク機器に提供しないように隠蔽するためにデバイスディスクリプションから前述の拡張周辺機器を削除する場合等にユーザにより行われる。この場合、具体的には、ユーザにより、１１ｂの状態にある前述の接続フラグ６２が０１ｂと更新される。このような接続フラグ６２の変更が行われた場合、図６に示すフローにおける隠蔽処理に示すディスクリプション再構築及び通知プログラムが起動される。また、前述したような隠蔽の処理の後、接続されている拡張周辺機器の隠蔽を解除するためにデバイスディスクリプションに前述の拡張周辺機器を追加する場合、ユーザは、０１ｂの状態にある前述の接続フラグ６２を１１ｂと更新する。この場合、図６に示すフローにおける隠蔽解除に示すディスクリプション再構築及び通知プログラムが起動される。
【００５２】
前述したような隠蔽の必要性は、例えば、接続された拡張周辺機器がハードディスクドライブであり、その空き容量にもはや余裕がないとき、遠隔のユーザにはこれ以上の使用を禁じるような場合に生じる。また、接続した拡張周辺機器がＤＶＤドライブであり、コンテンツの性質上ネットワーク上を流すことが認められていないようなときに、遠隔のユーザからはアクセスできないようにする場合に生じる。
【００５３】
図６は本発明の第１の実施形態によるネットワーク機器のディスクリプション再構築及び通知プログラムの処理動作を説明するフローチャートであり、次に、これについて説明する。ここで説明するディスクリプション再構築及び通知プログラムの処理は、デバイス情報テーブルに記載の拡張周辺機器が接続された際や、離脱した際、また、ユーザによって明示的にデバイス情報テーブルの接続フラグのディスクリプションへの反映に関係するビットが変更された場合に実行される。
【００５４】
まず、図６（Ａ）に示すフローを参照して、接続された拡張周辺機器の情報をデバイスディスクリプションに対して追加する場合の処理について説明する。
【００５５】
（１）拡張周辺機器が接続されると、デバイス情報テーブル６０の接続フラグ６２を参照し、接続フラグに０１ｂと記載されている行、すなわち、その拡張周辺機器が接続されているだけの状態であることを示している行を検索し、検索の結果、該当する行が存在するか否かを判定する（ステップ１０１、１０２）。
【００５６】
（２）ステップ１０２の判定で、接続フラグに０１ｂと記載されている行が存在した場合、現在のデバイスディスクリプションをメモリから取得すると共に、デバイス情報テーブル６０からデバイス名、サービス名、サービスディスクリプションの所在を取得する（ステップ１０３、１０４）。
【００５７】
（３）ステップ１０３で取得したデバイスディスクリプションの<deviceList>タグ部に<device>タグを追加し、ステップ１０４で取得した情報を追加し、これにより再構成したデバイスディスクリプションを一旦メモリに格納する（ステップ１０５、１０６）。
【００５８】
（４）その後、デバイス情報テーブルの接続フラグに、接続された拡張周辺機器がデバイスディスクリプションに登録されたことを示す１１ｂを記載し、ステップ１０１からの処理に戻って、次に検索する行の処理に移行する（ステップ１０７）。
【００５９】
（５）そして、ステップ１０２の判定で、接続フラグに０１ｂと記載されている行がデバイス情報テーブルにこれ以上存在しなくなった場合、最終的なデバイスディスクリプションを格納するＵＲＬを記述した新たな広告メッセージ作成してマルチキャスト送信する（ステップ１０８）。
【００６０】
次に、図６（Ｂ）に示すフローを参照して、接続されていた拡張周辺機器が離脱した場合に、デバイスディスクリプションから離脱した拡張周辺機器の情報を削除する場合の処理について説明する。
【００６１】
（１）拡張周辺機器が外されると、デバイス情報テーブル６０の接続フラグ６２を参照し、接続フラグに１０ｂと記載されている行、すなわち、その拡張周辺機器の接続が外された状態であることを示している行を検索し、検索の結果、該当する行が存在するか否かを判定する（ステップ１１１、１１２）。
【００６２】
（２）ステップ１１２の判定で、接続フラグに１０ｂと記載されている行が存在した場合、現在のデバイスディスクリプションをメモリから取得すると共に、デバイス情報テーブル６０からデバイス名を取得する（ステップ１１３、１１４）。
【００６３】
（３）ステップ１１３で取得したデバイスディスクリプションの<deviceList>タグ部から、ステップ１１４で取得した拡張周辺機器を記述している<device>タグから</device> タグまでの部分を削除し、これにより再構成したデバイスディスクリプションを一旦メモリに格納する（ステップ１１５、１１６）。
【００６４】
（４）その後、デバイス情報テーブルの接続フラグに、接続が外された拡張周辺機器がデバイスディスクリプションから削除されたことを示す００ｂを記載し、ステップ１１１からの処理に戻って、次に検索する行の処理に移行する（ステップ１１７）。
【００６５】
（５）そして、ステップ１１２の判定で、接続フラグに１０ｂと記載されている行がデバイス情報テーブルにこれ以上存在しなくなった場合、最終的なデバイスディスクリプションを格納するＵＲＬを記述した新たな広告メッセージ作成してマルチキャスト送信する（ステップ１１８）。
【００６６】
次に、図６（Ｃ）に示すフローを参照して、接続されている拡張周辺機器を隠蔽するために、デバイスディスクリプションからその拡張周辺機器の情報を削除する場合の処理について説明する。
【００６７】
（１）拡張周辺機器を隠蔽する処理が開始されると、デバイス情報テーブル６０の接続フラグ６２を参照し、接続フラグに１１ｂと記載されている行、すなわち、その拡張周辺機器が外部に提供可能な状態であることを示している行を検索し、検索の結果、該当する行が存在するか否かを判定する（ステップ１２１、１２２）。
【００６８】
（２）ステップ１２２の判定で、接続フラグに１１ｂと記載されている行が存在した場合、現在のデバイスディスクリプションをメモリから取得すると共に、デバイス情報テーブル６０からデバイス名を取得する（ステップ１２３、１２４）。
【００６９】
（３）ステップ１２３で取得したデバイスディスクリプションの<deviceList>タグ部から、ステップ１２４で取得した拡張周辺機器を記述している<device>タグから</device> タグまでの部分を削除し、これにより再構成したデバイスディスクリプションを一旦メモリに格納する（ステップ１２５、１２６）。
【００７０】
（４）その後、デバイス情報テーブルの接続フラグに、隠蔽を行う拡張周辺機器をデバイスディスクリプションから削除したことを示す０１ｂを記載し、ステップ１１１からの処理に戻って、次に検索する行の処理に移行する（ステップ１１７）。
【００７１】
（５）そして、ステップ１２２の判定で、接続フラグに１１ｂと記載されていて、隠蔽が指示されているデバイスの行がデバイス情報テーブルにこれ以上存在しなくなった場合、最終的なデバイスディスクリプションを格納するＵＲＬを記述した新たな広告メッセージ作成してマルチキャスト送信する（ステップ１２８）。
【００７２】
次に、図６（Ｄ）に示すフローを参照して、接続されていて隠蔽されていた拡張周辺機器の隠蔽を解除するために、デバイスディスクリプションにその拡張周辺機器の情報を追加する場合の処理について説明する。
【００７３】
（１）隠蔽の解除の処理が開始されると、デバイス情報テーブル６０の接続フラグ６２を参照し、接続フラグに０１ｂと記載されている行、すなわち、その拡張周辺機器が外部に提供不可能な状態であることを示している行を検索し、検索の結果、該当する行が存在するか否かを判定する（ステップ１３１、１３２）。
【００７４】
（２）ステップ１３２の判定で、接続フラグに０１ｂと記載されている行が存在した場合、現在のデバイスディスクリプションをメモリから取得すると共に、デバイス情報テーブル６０からデバイス名、サービス名、サービスディスクリプションの所在を取得する（ステップ１３３、１３４）。
【００７５】
（３）ステップ１３３で取得したデバイスディスクリプションに、ステップ１３４で取得したデバイス名が既に記述されているか否かを判定し、デバイス名が既に記述されていた場合、ステップ１３１に移行して次に検索する行に対する処理を行う（ステップ１３５）。
【００７６】
（４）ステップ１３５の判定で、ステップ１３４で取得したデバイス名が取得したデバイスディスクリプションに記述されていなかった場合、ステップ１３３で取得したデバイスディスクリプションの<deviceList>タグ部に<device>タグを追加し、ステップ１３４で取得した情報を追加し、これにより再構成したデバイスディスクリプションを一旦メモリに格納する（ステップ１３６、１３７）。
【００７７】
（５）その後、デバイス情報テーブルの接続フラグに、隠蔽の解除を行う拡張周辺機器をデバイスディスクリプションに追加したことを示す１１ｂを記載し、ステップ１３１からの処理に戻って、次に検索する行の処理に移行する（ステップ１３８）。
【００７８】
（６）そして、ステップ１３２の判定で、接続フラグに０１ｂと記載されていて、隠蔽の解除が指示されているデバイスの行がデバイス情報テーブルにこれ以上存在しなくなった場合、最終的なデバイスディスクリプションを格納するＵＲＬを記述した新たな広告メッセージ作成してマルチキャスト送信する（ステップ１３９）。
【００７９】
前述まででディスクリプション再構築及び通知プログラムの処理動作について説明したが、ネットワーク機器（ＣＰ）は、前述した新たな広告メッセージを受信し、格納先ＵＲＬにアクセスすることによって再構築されたデバイスディスクリプションを取得することができる。
【００８０】
図７はネットワーク機器（デバイス）が具備するデバイスディスクリプションの例を示す図、図８はディスクリプション再構築及び通知プログラムによって再構築されたデバイスディスクリプションの例を示す図であり、次に、図７、図８を参照して、図４に示すネットワーク機器（デバイス）４０に拡張周辺機器を接続した際に、図６（Ａ）に示すフローによりディスクリプション再構築及び通知プログラムによる処理を行った場合のデバイスディスクリプションの変化を説明する。
【００８１】
図７に示すデバイスディスクリプション（DevDesc.xml） は、部分抜粋を示しており、図２により説明したものと同様のものである。そして、ネットワーク機器４０の周辺機器接続Ｉ／Ｆ部５０に、図５に示したようにハードディスクドライブが接続され、これに伴って、図６（Ａ）に示すフローによるディスクリプション再構築及び通知プログラムの処理が実行されると、図７に示すデバイスディスクリプションが図８に示すように再構築される。この再構築された図８に示す、デバイスディスクリプション（DevDesc_Add.xml） の部分抜粋には、細線で囲んで示すように、接続された拡張周辺機器（ハードディスクドライブ）が<device>タグ部に追加されたものとなる。
【００８２】
図９は本発明の第１の実施形態におけるネットワーク機器の宅内ネットワークにおける位置付けを説明する宅内ネットワーク構成を示すブロック図である。図９において、２０４は新ネットワーク機器、２０５はハードディスクドライブであり、他の符号は図１、図４の場合と同一である。なお、図９におけるネットワーク機器４０の内部構成は、図４に示すものと同様であり、内部構成を省略している。また、宅内ネットワークも、図１の場合と同様である。
【００８３】
図９に示すように、住宅１の宅内ネットワークは、ゲートウェイ装置３を介してインターネットを含む公衆通信網に接続され、リビング２に設置される本発明の第１の実施形態によるネットワーク機器（デバイス）４０、寝室１４に設置されるネットワーク機器（デバイス）１５、アクセスポイント１８のようにゲートウェイ装置３と直接接続する形態の有線ネットワーク部と、寝室１４にあるネットワーク機器（ＣＰ）１９のようにアクセスポイント１８を介して無線で間接接続する形態の無線ネットワーク部から構成されている。
【００８４】
そして、前述したネットワーク機器（デバイス）４０には、拡張周辺機器としてハードディスクドラブ２０５が接続されており、図８に示して説明したデバイスディスクリプションがネットワーク機器（ＣＰ）１９に提供される。すなわち、前述のネットワーク機器４０は、ネットワーク機器（ＣＰ）１９からは、図９に点線で囲んで示した図４に示して説明したネットワーク機器（デバイス）４０とハードディスクドライブ２０５を含んだ新ネットワーク機器（デバイス）２０４として見えるため、遠隔にいる寝室１４のユーザＢ２０からもハードディスクドライブ２０５が利用できるようになる。前述したようなネットワーク機器（デバイス）４０の具体的な例としては、例えば、映像や音楽コンテンツを蓄積するハードディスクレコーダやＤＶＤプレーヤ、ビデオカメラ、テレビ、リモコン等がある。
【００８５】
前述で説明した本発明の第１の実施形態によれば、ネットワーク機器に接続された拡張周辺機器がネットワークを介して遠隔のユーザからでも利用できるようになり、また、前述の拡張周辺機器が取り外された場合には、前述のユーザからも正しくその状態を認識することができると共に、遠隔のユーザへの利用可否も自由に選択することができる。
【００８６】
図１０は本発明の第２の実施形態によるネットワーク機器の構成を示すブロック図であり、次に、本発明の第２の実施形態によるネットワーク機器について説明する。図１０において、８０はネットワーク機器、８１は組込機器制御部、８２は機器状態レジスタであり、他の符号は図４の場合と同一である。
【００８７】
本発明の第２の実施形態によネットワーク機器８０は、図４に示して説明した本発明の第１の実施形態によるネットワーク機器４０の組込み機器制御部４７を、その内部に機器状態レジスタ８２を設けて組込み機器制御部８１として構成した点のみが第１の実施形態と異なっている。このため、以下の説明では、本発明の第２の実施形態によるネットワーク機器８０における組込み機器制御部８１以外の説明を省略する。
【００８８】
ネットワーク機器８０における組込み機器制御部８１に設けられる機器状態レジスタ８２は、各組込み機器の稼動状況を監視し、特に、各組込み機器の消費電流や動作温度等に異常が生じた場合に、その状態を各組込み機器と１対１に対応させて保持するものであり、ＣＰＵ４１に対して警告を通知することができる。
【００８９】
図１１は図１０に示すネットワーク機器が備えるデバイス情報テーブル９０の構成例を示す図であり、次に、これについて説明する。
【００９０】
図１１に示すように、デバイス情報テーブル９０は、少なくとも、図１０に示すネットワーク機器８０が具備している各組込み機器、及び、他のネットワーク機器に対して提供可能な拡張周辺機器とを示したデバイス名９１と、少なくとも、拡張周辺機器の接続状態、及び、デバイスディスクリプションへの反映状況を示しユーザによる編集も可能な図５により説明した接続フラグ６２と同一の接続フラグ９２と、少なくとも、組込み機器の稼動状況やデバイスディスクリプションへの反映状況を示しユーザによる編集も可能な稼動フラグ９３と、前述のデバイス名９１に記述する組込み機器や拡張周辺機器が提供するサービス名（機能名）９４と、前述のサービス名（機能名）９４に対応し、ネットワーク機器８０が予め所有しているサービスディスクリプション、及び、その所在を示すサービスディスクリプションの所在９５とを記述したテーブルである。
【００９１】
前述において、稼動フラグ９３には、デバイス名９１と一致する組込み機器が正常に稼動している場合に、稼動状態かつデバイスディスクリプションへ反映された状態を表す１１ｂ（ｂは２進数を表す）が記載される。また、組込み機器が稼動していない非稼動状態であり、ディスクリプションにも反映していない状態の場合００ｂが記載される。さらに、組込み機器が稼動状態であり、かつ、デバイスディスクリプションへ反映していない状態の場合０１ｂが記載され、非稼動状態であり、かつ、デバイスディスクリプションへ反映している状態の場合１０ｂが記載される。また、図１０に示すネットワーク機器８０は、前述したデバイス情報テーブル９０を、図５に示すデバイス情報テーブル６０のように拡張周辺機器部分のみを記述するテーブルと、組込み機器部分のみを記述するテーブルとして別々に所有することも可能である。
【００９２】
ユーザは、前述した稼動フラグ９３のディスクリプションへの反映状況を示すビット部分のみを編集することが可能であり、１１ｂから０１ｂ、０１ｂから１１ｂへの変更を行うことができる。なお、接続フラグの初期値は、ネットワーク機器８０の電源が入っている状態においては１１ｂ、そうでない場合には組込み機器が非稼動状態にあり、また、ディスクリプションに反映している状態を表す１０ｂとなる。
【００９３】
次に、図１０を参照して組込み機器が故障した際のネットワーク機器８０の動作について説明する。
【００９４】
組込み機器制御部８１が管理する組込み機器Ａ４８や組込み機器Ｂ４９の異常を検出すると、この組込み機器制御部８１は、ＣＰＵ４１に対して組込み機器に異常が生じたことを示す組込み機器異常検出通知を発行する。この組込み機器異常検出通知を伝達する具体的な方法は、図１０には省略して示していないが、ＣＰＵ４１と周辺機器接続Ｉ／Ｆ部５０とをポイントツーポイントで結線する割り込み信号を用いて行うことができる。
【００９５】
ＣＰＵ４１は、前述した組込み機器異常検出通知を受信すると、異常を検出した組込み機器を特定するために組込み機器制御部８１が備える機器状態レジスタ８２を参照する。そして、ＣＰＵ４１は、図１１に示すデバイス情報テーブル９０の稼動フラグ９３に１０ｂを記載し、組込み機器に関するディスクリプション再構築及び通知プログラムを起動する。
【００９６】
ところで、ディスクリプション再構築及び通知プログラムは、ユーザが図１１に示すデバイス情報テーブル９０の稼働フラグ９３を変更した場合にも起動される。このような稼働フラグ９３の変更は、例えば、内臓されている組込み機器を他のネットワーク機器に提供しないように隠蔽するためにデバイスディスクリプションから前述の組込み機器を削除する場合等にユーザにより行われる。この場合、具体的には、ユーザは、対応する組込み機器の、１１ｂの状態にある稼動フラグ９３を０１ｂに更新する。このような場合、後述する図１２（Ｂ）の隠蔽処理のフローに示すディスクリプション再構築及び通知プログラムが起動される。また、隠蔽されていた組込み機器の隠蔽を解除する場合、ユーザは、対応する組込み機器の、０１ｂの状態にある稼動フラグ９３を１１ｂに更新する。このような場合、後述する図１２（Ｃ）の隠蔽解除処理のフローに示すディスクリプション再構築及び通知プログラムが起動される。
【００９７】
図１２は本発明の第２の実施形態によるネットワーク機器のディスクリプション再構築及び通知プログラムの処理動作を説明するフローチャートであり、次に、これについて説明する。ここで説明するディスクリプション再構築及び通知プログラムの処理は、デバイス情報テーブルに記載の組込み機器が故障した際や、また、ユーザによって明示的に稼動フラグのディスクリプションへの反映に関係するビットが変更された場合に実行される。
【００９８】
まず、図１２（Ａ）に示すフローを参照して、デバイスディスクリプションから故障した組込み機器の情報を削除する場合の処理動作について説明する。
【００９９】
（１）組込み機器の故障が通知されると、デバイス情報テーブルの稼動フラグを参照し、稼働フラグに１０ｂと記載されている行、すなわち、その組込み機器が外部に提供不可能な状態であることを示している行を検索し、検索の結果、該当する行が存在するか否かを判定する（ステップ１４１、１４２）。
【０１００】
（２）ステップ１４２の判定で、稼働フラグに１０ｂと記載されている行が存在した場合、現在のデバイスディスクリプションをメモリから取得すると共に、デバイス情報テーブル９０からデバイス名等を取得する（ステップ１４３、１４４）。
【０１０１】
（３）ステップ１４３で取得したデバイスディスクリプションの<deviceList>タグ部から、ステップ１４４で取得した組込み機器を記述している<device>タグから</device> タグまでの部分を削除し、これにより再構成したデバイスディスクリプションを一旦メモリに格納する（ステップ１４５、１４６）。
【０１０２】
（４）その後、デバイス情報テーブルの稼働フラグに、障害となった組込み機器がデバイスディスクリプションから削除されたことを示す００ｂを記載し、ステップ１４１からの処理に戻って、次に検索する行の処理に移行する（ステップ１４７）。
【０１０３】
（５）そして、ステップ１４２の判定で、稼働フラグに１０ｂと記載されている行がデバイス情報テーブルにこれ以上存在しなくなった場合、最終的なデバイスディスクリプションを格納するＵＲＬを記述した新たな広告メッセージ作成してマルチキャスト送信する（ステップ１１８）。
【０１０４】
次に、図１２（Ｂ）に示すフローを参照して、内臓されている組込み機器を隠蔽するために、デバイスディスクリプションからその拡張周辺機器の情報を削除する場合の処理について説明する。
【０１０５】
（１）組込み機器を隠蔽する処理が開始されると、デバイス情報テーブル９０の稼働フラグ９３を参照し、稼働フラグに１１ｂと記載されている行、すなわち、その組込み機器が外部に提供可能な状態であることを示している行を検索し、検索の結果、該当する行が存在するか否かを判定する（ステップ１５１、１５２）。
【０１０６】
（２）ステップ１５２の判定で、稼働フラグに１１ｂと記載されている行が存在した場合、現在のデバイスディスクリプションをメモリから取得すると共に、デバイス情報テーブル９０からデバイス名を取得する（ステップ１５３、１５４）。
【０１０７】
（３）ステップ１５３で取得したデバイスディスクリプションの<deviceList>タグ部から、ステップ１５４で取得した組込み機器を記述している<device>タグから</device> タグまでの部分を削除し、これにより再構成したデバイスディスクリプションを一旦メモリに格納する（ステップ１５５、１５６）。
【０１０８】
（４）その後、デバイス情報テーブルの接続フラグに、隠蔽を行う拡張周辺機器をデバイスディスクリプションから削除したことを示す０１ｂを記載し、ステップ１５１からの処理に戻って、次に検索する行の処理に移行する（ステップ１５７）。
【０１０９】
（５）そして、ステップ１５２の判定で、稼働フラグに１１ｂと記載されていて、隠蔽が指示されているデバイスの行がデバイス情報テーブルにこれ以上存在しなくなった場合、最終的なデバイスディスクリプションを格納するＵＲＬを記述した新たな広告メッセージ作成してマルチキャスト送信する（ステップ１５８）。
【０１１０】
次に、図１２（Ｃ）に示すフローを参照して、隠蔽されていた組込ｎ機器の隠蔽を解除するために、デバイスディスクリプションにその拡張周辺機器の情報を追加する場合の処理について説明する。
【０１１１】
（１）隠蔽の解除の処理が開始されると、デバイス情報テーブル９０の稼働フラグ９３を参照し、稼働フラグに０１ｂと記載されている行、すなわち、その組込み機器が外部に提供不可能な状態であることを示している行を検索し、検索の結果、該当する行が存在するか否かを判定する（ステップ１６１、１６２）。
【０１１２】
（２）ステップ１６２の判定で、稼働フラグに０１ｂと記載されている行が存在した場合、現在のデバイスディスクリプションをメモリから取得すると共に、デバイス情報テーブル９０からデバイス名、サービス名、サービスディスクリプションの所在を取得する（ステップ１６３、１６４）。
【０１１３】
（３）ステップ１６３で取得したデバイスディスクリプションに、ステップ１６４で取得したデバイス名が既に記述されているか否かを判定し、デバイス名が既に記述されていた場合、ステップ１６１に移行して次に検索する行に対する処理を行う（ステップ１６５）。
【０１１４】
（４）ステップ１６５の判定で、ステップ１６４で取得したデバイス名が取得したデバイスディスクリプションに記述されていなかった場合、ステップ１６３で取得したデバイスディスクリプションの<deviceList>タグ部に<device>タグを追加し、ステップ１６４で取得した情報を追加し、これにより再構成したデバイスディスクリプションを一旦メモリに格納する（ステップ１６６、１６７）。
【０１１５】
（５）その後、デバイス情報テーブルの稼働フラグに、隠蔽の解除を行う組込み機器をデバイスディスクリプションに追加したことを示す１１ｂを記載し、ステップ１６１からの処理に戻って、次に検索する行の処理に移行する（ステップ１６８）。
【０１１６】
（６）そして、ステップ１６２の判定で、接続フラグに０１ｂと記載されていて、隠蔽の解除が指示されているデバイスの行がデバイス情報テーブルにこれ以上存在しなくなった場合、最終的なデバイスディスクリプションを格納するＵＲＬを記述した新たな広告メッセージ作成してマルチキャスト送信する（ステップ１６９）。
【０１１７】
前述までで本発明の第２の実施形態でのディスクリプション再構築及び通知プログラムの処理動作について説明したが、ネットワーク機器（ＣＰ）は、前述した新たな広告メッセージを受信し、格納先ＵＲＬにアクセスすることによって再構築されたデバイスディスクリプションを取得することができる。
【０１１８】
図１３は図１２により説明した処理により、再構築されたデバイスディスクリプションの例を示す図であり、次に、図１３を参照して、ネットワーク機器８０の組込み機器Ａ４８が故障した際の、図１２（Ａ）に示すディスクリプション再構築及び通知プログラムによるデバイスディスクリプションの変化を説明する。
【０１１９】
図１３に示す再構築されたデバイスディスクリプション（DevDesc_Delete.xml）の部分抜粋の例は、図７に示して説明したデバイスディスクリプションからの変化を示しており、図７の組込み機器Ａを記述する<device>タグ部が、図１２（Ａ）により説明した処理により削除されている。
【０１２０】
図１４は本発明の第２の実施形態におけるネットワーク機器の宅内ネットワークにおける位置付けを説明する宅内ネットワーク構成を示すブロック図である。図１４において、２１２は新ネットワーク機器であり、他の符号は図１、図１０の場合と同一である。なお、図１４におけるネットワーク機器４０の内部構成は、図１０に示すものと同様であり、内部構成のうち、組込み機器Ａ４８及び組込み機器Ｂ４９以外を省略している。また、宅内ネットワークも、図１の場合と同様である。
【０１２１】
図１４に示すように、住宅１の宅内ネットワークは、ゲートウェイ装置３を介してインターネットを含む公衆通信網に接続され、リビング２に設置される本発明の第２の実施形態によるネットワーク機器（デバイス）８０、寝室１４に設置されるネットワーク機器（デバイス）１５、アクセスポイント１８のようにゲートウェイ装置３と直接接続する形態の有線ネットワーク部と、寝室１４にあるネットワーク機器（ＣＰ）１９のようにアクセスポイント１８を介して無線で間接接続する形態の無線ネットワーク部から構成されている。
【０１２２】
そして、ここで説明している例では、ネットワーク機器（デバイス）８０の組込み機器Ａが現在故障してとしているため、図１３に示して説明したようなデバイスディスクリプションがネットワーク機器（ＣＰ）１９に提供される。すなわち、前述のネットワーク機器８０は、ネットワーク機器（ＣＰ）１９からは、図１４に点線で囲んで示しているように、図１０に示して説明したネットワーク機器（デバイス）８０において組込み機器Ａ４８を除く新ネットワーク機器（デバイス）２１２として見え、遠隔の寝室１４にいるユーザＢ２０からは故障した組込み機器Ａ４８が見えないため、ユーザＢ２０から誤って使用される危険性を排除することができる。
【０１２３】
前述した本発明の第２の実施形態によれば、ネットワーク機器に内蔵する組込み機器が故障した際に、遠隔のユーザからも正しくその状態を認識することができる。
【０１２４】
前述した本発明の各実施形態における各処理は、処理プログラムとして構成することができ、この処理プログラムは、ＨＤ、ＤＡＴ、ＦＤ、ＭＯ、ＤＶＤ−ＲＯＭ、ＣＤ−ＲＯＭ等の記録媒体に格納して、あるいは、ネットワークを介して提供することができる。
【０１２５】
前述で説明した本発明の各実施形態によれば、ＵＰｎＰ規格に準拠するデバイスであるネットワーク機器が、拡張周辺機器の接続状況や内蔵する組込み機器の稼動状況を認識して自動で機器構成を把握することによって、あるいは、ユーザからの指示をトリガとすることも可能とすることによって、動的にデバイスディスクリプションを再構築することができると共に、再構築が完了したデバイスディスクリプションをコントロールポイントであるネットワーク機器に通知することが可能である。
【０１２６】
前述により、本発明の実施形態によれば、常に最新の機器構成をコントロールポイントであるネットワーク機器に提供することが可能となり、ネットワークを介して確実に機能の共有を行うことができる。
【０１２７】
また、本発明の実施形態によれば、ユーザ自身が前述のネットワーク機器に提供する機能を選択することも可能であるため、自由度の高い機能共有を行うことができ、さらに、前述のネットワーク機器相互間で時間差無く同じ機器構成に関する情報を共有することができるため、何れのネットワーク機器からでも確実に、また自由度の高い機能の共有を行うことができる。
【図面の簡単な説明】
【０１２８】
【図１】本発明が適用される宅内ネットワークの構成例を示すブロック図である。
【図２】ネットワーク機器（デバイス）が所有するデバイスディスクリプション（部分抜粋）の構成例について説明する図である。
【図３】ネットワーク機器（デバイス）が所有するサービスディスクリプション（部分抜粋）の構成例について説明する図である。
【図４】本発明の第１の実施形態によるネットワーク機器の構成を示すブロック図である。
【図５】本発明の第１の実施形態によるネットワーク機器が所有するデバイス情報テーブルの構成例を示す図である。
【図６】本発明の第１の実施形態によるネットワーク機器のディスクリプション再構築及び通知プログラムの処理動作を説明するフローチャートである。
【図７】ネットワーク機器（デバイス）が具備するデバイスディスクリプションの例を示す図である。
【図８】ディスクリプション再構築及び通知プログラムによって再構築されたデバイスディスクリプションの例を示す図である。
【図９】本発明の第１の実施形態におけるネットワーク機器の宅内ネットワークにおける位置付けを説明する宅内ネットワーク構成を示すブロック図である。
【図１０】本発明の第２の実施形態によるネットワーク機器の構成を示すブロック図である。
【図１１】図１０に示すネットワーク機器が備えるデバイス情報テーブル９０の構成例を示す図である。
【図１２】本発明の第２の実施形態によるネットワーク機器のディスクリプション再構築及び通知プログラムの処理動作を説明するフローチャートである。
【図１３】図１２により説明した処理により、再構築されたデバイスディスクリプションの例を示す図である。
【図１４】本発明の第２の実施形態におけるネットワーク機器の宅内ネットワークにおける位置付けを説明する宅内ネットワーク構成を示すブロック図である。
【符号の説明】
【０１２９】
１  住宅
２  リビング
３  ゲートウェイ装置
４  有線ケーブル
５  ネットワーク接続部
６、１６  デバイスディスクリプション
７、１７  サービスディスクリプション
８、９、４８、５０  組込み機器Ａ、Ｂ
１０  周辺機器接続部
１１、１５  ネットワーク機器（デバイス）
１２  拡張周辺機器
１３、２０  ユーザＡ、Ｂ
１４  寝室
１８  アクセスポイント
１９  ネットワーク機器（ＣＰ）
４０  ネットワーク機器
４１  ＣＰＵ
４２  ＲＡＭ
４３  ＲＯＭ
４４  コマンド受付部
４５  ネットワーク接続Ｉ／Ｆ部
４６  表示制御部
４７  組込み機器制御部
５０  周辺機器接続Ｉ／Ｆ部
５１  接続状態レジスタ
５２  周辺機器記述レジスタ
８０  ネットワーク機器
８１  組込機器制御部
８２  機器状態レジスタ
２０４、２１２  新ネットワーク機器
２０５  ハードディスクドライブ
【図１】
2005182481.tif 000003
【図２】
2005182481.tif 000004
【図３】
2005182481.tif 000005
【図４】
2005182481.tif 000006
【図５】
2005182481.tif 000007
【図６】
2005182481.tif 000008
【図７】
2005182481.tif 000009
【図８】
2005182481.tif 000010
【図９】
2005182481.tif 000011
【図１０】
2005182481.tif 000012
【図１１】
2005182481.tif 000013
【図１２】
2005182481.tif 000014
【図１３】
2005182481.tif 000015
【図１４】
2005182481.tif 000016