(57)【要約】【課題】  特定の被制御デバイスに代わって制御ポイントに応答メッセージを伝送できる被制御デバイスのリストを提供するためのネットワーク装置、システム及び方法を提供する。【解決手段】  ネットワーク上に接続された各被制御デバイスから伝送された通知メッセージを受信する通知/検索メッセージ受信モジュール１０２３と、ネットワーク上に接続された各被制御デバイスの情報を取得して、ネットワーク上に接続された全ての被制御デバイスのサービス情報のリストを生成し、管理するデバイスリスト管理モジュール１０２１と、制御ポイントから要求された特定の被制御デバイスのサービス情報を前記デバイスリスト管理モジュール１０２１から検索して伝送する制御モジュール１０２６とを備える。【選択図】  図６
2004318852.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上に接続された各被制御デバイスから伝送された通知メッセージを受信する通知/検索メッセージ受信モジュールと、
前記ネットワーク上に接続された各被制御デバイスの情報を取得し、前記ネットワーク上に接続された全ての被制御デバイスのサービス情報のリストを生成及び管理するデバイスリスト管理モジュールと、
制御ポイントから要求された特定の被制御デバイスのサービス情報を前記デバイスリスト管理モジュールから検索して伝送する制御モジュールとを備えることを特徴とするネットワーク装置。
【請求項２】
前記通知/検索メッセージ受信モジュールは、制御ポイントから伝送される検索メッセージを受信することを特徴とする請求項１に記載のネットワーク装置。
【請求項３】
トークンを生成し、前記生成されたトークンを他の被制御デバイスに伝達/管理するトークン管理モジュールをさらに備えることを特徴とする請求項１に記載のネットワーク装置。
【請求項４】
前記制御モジュールは、前記被制御デバイスに前記トークンが存在するか否かを確認して制御ポイントの情報要求メッセージに応答することを特徴とする請求項３に記載のネットワーク装置。
【請求項５】
前記トークンが存在するか否かの確認は、状態情報に基づいて行われることを特徴とする請求項４に記載のネットワーク装置。
【請求項６】
前記状態情報は、初期状態、進行状態、または停止状態の何れか一つであることを特徴とする請求項５に記載のネットワーク装置。
【請求項７】
セルフタイマーを作成するタイマー管理モジュールをさらに備え、前記セルフタイマーは、前記トークン管理モジュールで管理されるトークンが他の被制御デバイスに伝達される場合、前記トークンの伝達された他の被制御デバイスの応答時間をチェックすることを特徴とする請求項１に記載のネットワーク装置。
【請求項８】
前記タイマー管理モジュールは、ウェーティングタイマーを生成するが、前記ウェーティングタイマーは、前記ネットワーク上に存在する被制御デバイスに対する前記トークンの全体循環時間をチェックすることを特徴とする請求項７に記載のネットワーク装置。
【請求項９】
前記ネットワーク上の各被制御デバイスに多数のトークンが存在する場合、前記トークンの有効性を調整するネゴシエーションモジュールをさらに備えることを特徴とする請求項３に記載のネットワーク装置。
【請求項１０】
前記ネゴシエーションモジュールは、各被制御デバイスの状態情報に基づいて多数のトークンが存在するか否かを判断することを特徴とする請求項９に記載のネットワーク装置。
【請求項１１】
前記ネゴシエーションモジュールは、前記トークンを持つ各被制御デバイスに格納されている被制御デバイスのリスト内の被制御デバイスの数をそれぞれ比較してトークンの有効性を調整することを特徴とする請求項９に記載のネットワーク装置。
【請求項１２】
前記ネゴシエーションモジュールは、前記比較の結果、被制御デバイスのリスト内の被制御デバイスの数が同じである場合、前記リストに登録された各被制御デバイスのネットワーク残り時間の和を比較してトークンの有効性を調整することを特徴とする請求項１１に記載のネットワーク装置。
【請求項１３】
ネットワーク上に存在するデバイスを探し出すために、ディスカバリパケットを伝送し、それに対する応答メッセージを受信して前記ネットワーク上に存在する各デバイスを制御する制御ポイントと、
前記ネットワーク上に接続された他の被制御デバイスから伝送された通知メッセージを受信して、前記ネットワークに接続された全ての被制御デバイスの情報リストを生成及び管理し、前記制御ポイントから要求された被制御デバイスの情報を検索して伝送する被制御デバイスとを備えることを特徴とするネットワークシステム。
【請求項１４】
前記被制御デバイスは、ネットワーク上に接続された各被制御デバイスから伝送された通知メッセージを受信する通知/検索メッセージ受信モジュールと、
前記ネットワーク上に接続された各被制御デバイスの情報を取得して前記ネットワーク上に接続された全ての被制御デバイスのサービス情報のリストを生成及び管理するデバイスリスト管理モジュールと、
制御ポイントから要求された特定の被制御デバイスのサービス情報を前記デバイスリスト管理モジュールから検索して伝送する制御モジュールとを備えることを特徴とする請求項１３に記載のネットワークシステム。
【請求項１５】
前記通知/検索メッセージ受信モジュールは、制御ポイントから伝送される検索メッセージを受信することを特徴とする請求項１４に記載のネットワークシステム。
【請求項１６】
前記被制御デバイスは、トークンを生成し、前記生成されたトークンを他の被制御デバイスに伝達/管理するトークン管理モジュールをさらに備えることを特徴とする請求項１３に記載のネットワークシステム。
【請求項１７】
前記制御モジュールは、前記被制御デバイスに前記トークンが存在するか否かを確認して制御ポイントの情報要求メッセージに応答することを特徴とする請求項１６に記載のネットワークシステム。
【請求項１８】
前記トークンが存在するか否かの確認は、状態情報に基づいて行われることを特徴とする請求項１７に記載のネットワークシステム。
【請求項１９】
前記状態情報は、初期状態、進行状態、または停止状態の何れか一つであることを特徴とする請求項１８に記載のネットワークシステム。
【請求項２０】
前記被制御デバイスは、セルフタイマーを生成するタイマー管理モジュールをさらに備え、前記セルフタイマーは、前記トークン管理モジュールで管理されるトークンが他の被制御デバイスに伝達される場合、前記トークンの伝達された他の被制御デバイスの応答時間をチェックすることを特徴とする請求項１６に記載のネットワークシステム。
【請求項２１】
前記タイマー管理モジュールは、ウェーティングタイマーを生成し、前記ウェーティングタイマーは、前記ネットワーク上に存在する被制御デバイスに対する前記トークンの全体循環時間をチェックすることを特徴とする請求項２０に記載のネットワークシステム。
【請求項２２】
前記被制御デバイスは、前記ネットワーク上に存在する被制御デバイス内に多数のトークンが存在する場合、前記トークンの有効性を調整するネゴシエーションモジュールをさらに備えることを特徴とする請求項１６に記載のネットワークシステム。
【請求項２３】
前記ネゴシエーションモジュールは、各被制御デバイスの状態情報に基づいて、多数のトークンが存在するか否かを判断することを特徴とする請求項２２に記載のネットワークシステム。
【請求項２４】
前記ネゴシエーションモジュールは、前記トークンを持つ被制御デバイスに格納された被制御デバイスのリスト内の被制御デバイスの数を比較してトークンの有効性を調整することを特徴とする請求項２２に記載のネットワークシステム。
【請求項２５】
前記ネゴシエーションモジュールは、前記比較の結果、被制御デバイスのリスト内の被制御デバイスの数が同じである場合、前記リストに登録された各被制御デバイスのネットワーク残り時間の和を比較してトークンの有効性を調整することを特徴とする請求項２４に記載のネットワークシステム。
【請求項２６】
ネットワーク上に接続された各被制御デバイスの通知メッセージを受信するステップと、
前記受信された通知メッセージからネットワーク上に接続された各被制御デバイスの情報を取得し、リストを作成するステップと、
特定の被制御デバイスの情報要求メッセージを受信するステップと、
前記情報要求メッセージが受信された特定の被制御デバイスの情報を前記作成されたリストから検索するステップと、
前記検索された特定の被制御デバイスの情報を伝送するステップとを含むことを特徴とする被制御デバイスのリストを提供する方法。
【請求項２７】
被制御デバイスがトークンを生成するステップを含むことを特徴とする請求項２６に記載の被制御デバイスのリストを提供する方法。
【請求項２８】
前記情報要求メッセージが受信された特定の被制御デバイスの情報を前記作成されたリストから検索するステップは、
前記被制御デバイスにトークンが存在するか否かを確認してトークンが存在する場合に行われることを特徴とする請求項２７に記載の被制御デバイスのリストを提供する方法。
【請求項２９】
前記トークンを他の被制御デバイスに伝達するステップをさらに含むことを特徴とする請求項２７に記載の被制御デバイスのリストを提供する方法。
【請求項３０】
前記トークンを他の被制御デバイスに伝達するステップは、前記被制御デバイスがデバイスリスト管理モジュールに格納された各被制御デバイスのリスト内の被制御デバイスの数を確認するステップと、
前記確認の結果、被制御デバイスのリスト内の被制御デバイスの数が二つ以上である場合、他の被制御デバイスにトークン及び格納された被制御デバイスリストを伝達するステップと、
前記他の被制御デバイスから応答メッセージが受信されたか否かをチェックし、セルフタイマーを作動させるステップと、
前記他の被制御デバイスから応答メッセージが伝送されると、前記セルフタイマーを停止し、ウェーティングタイマーを作動させるステップとをさらに含むことを特徴とする請求項２９に記載の被制御デバイスのリストを提供する方法。
【請求項３１】
前記格納された被制御デバイスのリストを伝達するステップは、前記リストを伝達した被制御デバイスを前記被制御デバイスのリストの最後に修正し、前記修正されたリストの一番目に記録された被制御デバイスを前記リストを伝達する被制御デバイスに決定するステップを含むことを特徴とする請求項３０に記載の被制御デバイスのリストを提供する方法。
【請求項３２】
前記セルフタイマーは、前記トークンが伝達された他の被制御デバイスの応答時間をチェックすることを特徴とする請求項３０に記載の被制御デバイスのリストを提供する方法。
【請求項３３】
前記ウェーティングタイマーは、前記ネットワーク上に存在する被制御デバイスに対する前記トークンの全体循環時間をチェックすることを特徴とする請求項３０に記載の被制御デバイスのリストを提供する方法。
【請求項３４】
前記ウェーティングタイマーの作動が終了した後にも、他の被制御デバイスからトークンが受信されないと、自動的にトークンを生成するステップをさらに含むことを特徴とする請求項３０に記載の被制御デバイスのリストを提供する方法。
【請求項３５】
前記他の被制御デバイスから応答メッセージが伝送されない場合は、
前記被制御デバイスがデバイスリスト管理モジュールに格納された被制御デバイスのリストのうち、前記応答メッセージを伝送していない被制御デバイスを削除するステップと、
前記応答メッセージの伝送されていない被制御デバイスがネットワーク上に存在しないことを制御ポイントに知らせるステップとをさらに含むことを特徴とする請求項３０に記載の被制御デバイスのリストを提供する方法。
【請求項３６】
前記他の被制御デバイスから応答メッセージが伝送されない場合は、前記被制御デバイスがさらに他の被制御デバイスにトークン及び格納された被制御デバイスのリストを伝達するステップをさらに含むことを特徴とする請求項３５に記載の被制御デバイスのリストを提供する方法。
【請求項３７】
前記ネットワーク上に存在する被制御デバイス内に多数のトークンが存在する場合、前記トークンの有効性を調整するネゴシエーションステップをさらに含むことを特徴とする請求項３０に記載の被制御デバイスのリストを提供する方法。
【請求項３８】
前記ネゴシエーションステップは、前記トークンを持つ各被制御デバイスに格納された被制御デバイスのリスト内の被制御デバイスの数を比較してトークンの有効性を調整するステップを含むことを特徴とする請求項３７に記載の被制御デバイスのリストを提供する方法。
【請求項３９】
前記ネゴシエーションステップは、前記比較の結果、被制御デバイスのリスト内の被制御デバイスの数が同じである場合、前記リストに登録された各被制御デバイスのネットワーク残り時間の和を比較してトークンの有効性を調整するステップをさらに含むことを特徴とする請求項３８に記載の被制御デバイスのリストを提供する方法。
【請求項４０】
被制御デバイスがネットワーク上に接続された各被制御デバイスからの通知メッセージを受信するステップと、
前記受信された通知メッセージからネットワーク上に接続された各被制御デバイスの情報を取得し、リストを作成するステップと、
制御ポイントが特定の被制御デバイスの情報を要求するステップと、
前記被制御デバイスが前記要求された特定の被制御デバイスの情報を前記作成されたリストから検索するステップと、
前記検索された特定の被制御デバイスの情報を伝送するステップとを含むことを特徴とする被制御デバイスのリストを提供する方法。
【請求項４１】
前記被制御デバイスがトークンを生成するステップをさらに含むことを特徴とする請求項４０に記載の被制御デバイスのリストを提供する方法。
【請求項４２】
前記被制御デバイスが前記要求された特定の被制御デバイスの情報を前記作成されたリストから検索するステップは、前記被制御デバイスにトークンが存在するか否かを確認してトークンが存在する場合に行われることを特徴とする請求項４１に記載の被制御デバイスのリストを提供する方法。
【請求項４３】
前記トークンを他の被制御デバイスに伝達するステップをさらに含むことを特徴とする請求項４１に記載の被制御デバイスのリストを提供する方法。
【請求項４４】
前記トークンを他の被制御デバイスに伝達するステップは、
被制御デバイスがデバイスリスト管理モジュールに格納された被制御デバイスのリスト内の被制御デバイスの数を確認するステップと、
前記確認の結果、被制御デバイスのリスト内の被制御デバイスの数が二つ以上である場合、他の被制御デバイスにトークン及び格納された被制御デバイスのリストを伝達するステップと、
前記他の被制御デバイスから応答メッセージが伝送されたか否かをチェックし、セルフタイマーを作動させるステップと、
前記他の被制御デバイスから応答メッセージが伝送されると、前記セルフタイマーを停止し、ウェーティングタイマーを作動させるステップとをさらに含むことを特徴とする請求項４３に記載の被制御デバイスのリストを提供する方法。
【請求項４５】
前記格納された被制御デバイスのリストを伝達するステップは、前記リストを伝達した被制御デバイスを前記被制御デバイスのリストの最後に修正し、前記修正されたリストの一番目に記録された被制御デバイスを、前記リストを伝達する被制御デバイスに決定するステップを含むことを特徴とする請求項４４に記載の被制御デバイスのリストを提供する方法。
【請求項４６】
前記セルフタイマーは、前記トークンが伝達された他の被制御デバイスの応答時間をチェックすることを特徴とする請求項４４に記載の被制御デバイスのリストを提供する方法。
【請求項４７】
前記ウェーティングタイマーは、前記ネットワーク上に存在する被制御デバイスに対する前記トークンの全体循環時間をチェックすることを特徴とする請求項４４に記載の被制御デバイスのリストを提供する方法。
【請求項４８】
前記ウェーティングタイマーの作動が終了した後にも他の被制御デバイスからトークンが伝送されないと、自動的にトークンを生成するステップをさらに含むことを特徴とする請求項４４に記載の被制御デバイスのリストを提供する方法。
【請求項４９】
前記他の被制御デバイスから応答メッセージが伝送されない場合は、
前記被制御デバイスがデバイスリスト管理モジュールに格納された被制御デバイスのリストのうち、前記応答メッセージを伝送していない被制御デバイスを削除するステップと、
前記応答メッセージの伝送されていない被制御デバイスがネットワーク上に存在しないことを前記制御ポイントに知らせるステップとをさらに含むことを特徴とする請求項４４に記載の被制御デバイスのリストを提供する方法。
【請求項５０】
前記他の被制御デバイスから応答メッセージが伝送されない場合は、前記被制御デバイスがさらに他の被制御デバイスにトークン及び格納された被制御デバイスのリストを伝達するステップをさらに含むことを特徴とする請求項４９に記載の被制御デバイスのリストを提供する方法。
【請求項５１】
前記ネットワーク上に存在する被制御デバイス内に多数のトークンが存在する場合、前記トークンの有効性を調整するネゴシエーションステップをさらに含むことを特徴とする請求項４６に記載の被制御デバイスのリストを提供する方法。
【請求項５２】
前記ネゴシエーションステップは、前記トークンを持つ各被制御デバイスに格納された被制御デバイスのリスト内の被制御デバイスの数を比較してトークンの有効性を調整するステップを含むことを特徴とする請求項５１に記載の被制御デバイスのリストを提供する方法。
【請求項５３】
前記ネゴシエーションステップは、前記比較の結果、被制御デバイスのリスト内の被制御デバイスの数が同じである場合、前記リストに登録された各被制御デバイスのネットワーク残り時間の和を比較してトークンの有効性を調整するステップをさらに含むことを特徴とする請求項５２に記載の被制御デバイスのリストを提供する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被制御デバイスのリストを提供するネットワーク装置、システム及び方法に関し、より詳しくは、ネットワーク上に接続された被制御デバイスが他の各被制御デバイスのリストを持っており、制御ポイントから特定の被制御デバイスを検索するメッセージを受信した場合、特定の被制御デバイスに代わって、制御ポイントに応答メッセージを伝送できる被制御デバイスのリストを提供するネットワーク装置、システム及び方法に関する。
【背景技術】
【０００２】
一般に、ホームネットワークは、インターネットプロトコル(Internet  Protocol：ＩＰ)に基づく私設網(Private  network)からなるものであり、家庭で使用されるあらゆる形態のパーソナルコンピュータ(ＰＣ)や知能型製品、無線装置などの様々な機器を一つのネットワークでつなげてコントロールしている。
ホームネットワーク方法は、私設網に存在する機器間にミドルウェア(middleware)という共通の仮想コンピューティング環境を構築し、その上でアプリケーションを提供する方式として提案されているが、前記ミドルウェアとは、ホームネットワークにおいて種々の機器間の通信が可能となるようにするもので、ＨＡＶＩ(Home  AV  Interoperability)、ＵＰｎＰ(Universal  Plug  and  Play)、Ｊｉｎｉ、ＨＷＷ(Home  Wide  Web)などが提案されている。
【０００３】
このようなホームネットワークミドルウェアを介して、ホームネットワーク上に存在する各機器は、ピアーツーピア(Peer-to-Peer)方式のネットワークに接続されるが、各装置は、動的ホスト構成プロトコル(Dynamic  Host  Configuration  Protocol：以下、ＤＨＣＰと称する)サーバにより割り当てられるか、ＩＰアドレス自動設定(Auto-IP)機能により選択されるＩＰアドレスを使用する。
【０００４】
即ち、それぞれの装置は、ホームネットワークに最初に接続されたとき、ＤＨＣＰサーバを検索し、ＤＨＣＰサーバの応答によって割り当てられるアドレスを確保するか、ＤＨＣＰサーバの運営されないネットワークの場合には、ＩＰアドレス自動設定（Auto-IP）機能を使用して一定の範囲内でＩＰアドレスを自動的に選択する。
【０００５】
このように、ＤＨＣＰサーバにより割り当てられるか、ＩＰアドレス自動設定（Auto-IP）により選択されたＩＰアドレスを使用する各機器は、ＴＣＰ/ＩＰ(Transmission  Control  Protocol/Internet  Protocol)を使用してネットワーク上の他の各機器と通信を行い、ＩＰアドレスを使用してネットワーク上での検索及び照会を行うことが可能となる。
【０００６】
また、ＵＰｎＰのようなホームネットワークミドルウェアは、ホームネットワーク上に存在する機器を検索するための方法として、ＳＳＤＰ(Sampling  Stochastic  Dynamic  Programming)のようなプロトコルが使用される。ここで、前記ＳＳＤＰは、大別して二つに分けられるが、制御ポイント(Controll  Point：以下、ＣＰと称する)が自分の所望するタイプ(Type)の被制御デバイス(Controlled  Device：以下、ＣＤと称する)を検索するために使用されるマルチキャスト検索(M-Search)メッセージと、ＣＤが自分の状態について知らせるために使用される通知(Notify)メッセージとがある。さらに、前記通知メッセージには、ＣＤがネットワークに接続され、自分のＩＰアドレスの割り当てを受けてから伝送する接続通知(Notify Alive)メッセージと、ＣＤがネットワークから正常に除去されるときに伝送する解除通知(Notify  Byebye)メッセージとがある。即ち、ＣＤがネットワークに接続されると、ＤＨＣＰサーバを介してまたはＩＰアドレス自動設定（Auto-IP）方式によりＩＰアドレスの割り当てを受け、自分がネットワークに追加されたことを知らせるために、ＵＤＰ(user  datagram  protocol)マルチキャスト方式で連結通知メッセージを伝送する。しかし、前記ＵＤＰパケットが正常に伝達されたかを確認することができず、前記ＣＤは、同一の連結通知メッセージを同一のマルチキャストアドレスに数回繰り返して伝送する。
【０００７】
さらに、前記ＣＰが使用者またはアプリケーションから特定のサービスを行うような命令を受けると、該当のサービスを行うときに必要なタイプのＣＤを検索するために、マルチキャスト検索メッセージを作成し、ＵＤＰマルチキャスト方式で伝送する。この場合にも、ＵＤＰマルチキャスト方式では、ＣＰから伝送されたマルチキャスト検索メッセージの伝達状況を正確に把握できないため、同一のマルチキャスト検索メッセージを同一のマルチキャストアドレスに１回以上繰り返して伝送することになる。
【０００８】
そして、前記ＣＰから伝送されたマルチキャスト検索メッセージを受信したＣＤは、自分のタイプが前記ＣＰから要求されたタイプと同じである場合、前記ＣＰにマルチキャスト検索メッセージに対する検索応答メッセージを作成して伝送する。これに応じて、前記ＣＰは、自分が伝送したマルチキャスト検索メッセージに対する応答メッセージを取得して特定のＣＤを選択し、必要な場合には、ＣＰ自分のキャッシュに、ＣＤについての情報を格納して置く。その後、前記ＣＰは、収集されたＣＤ情報や自分のキャッシュに格納されたＣＤ情報に基づいて、サービスの遂行に必要なＣＤの制御を行うことが可能となる。
【０００９】
一方、前記ＣＤが正常な方法でネットワークから除去されると、先ず、自分の解除通知メッセージを作成し、ＵＤＰマルチキャスト方式で伝送する。これに応じて、前記メッセージを受信したＣＰは、自分のキャッシュに格納された該当のＣＤを削除する。
【００１０】
図１は、従来のホームネットワーク上に存在するＵＰｎＰ被制御デバイスを制御するための動作過程を示す図であり、制御ポイントは、所望のサービスを利用するために、ネットワークに接続されたデバイスを探し出すディスカバリ(Discovery)過程を行い、前記ディスカバリは、ネットワークに接続された全ての装置にマルチキャストパケットを伝達するためのマルチキャスト検索方法及びパケットを受信したか否かが確認できないＵＤＰ(user  datagram  protocol)方法を用いる。
【００１１】
先ず、ＣＰ２０００,...,２２００が所望のデバイスを探し出すためのディスカバリ過程を行うと、ネットワークに接続されたＣＤ１０００,...,１５００は、前記デバイスパケットに応答メッセージを伝送する。しかし、ＣＤ１０００,...,１５００を見つけ出すためにＣＰ２（２１００）から伝送されたマルチキャスト検索メッセージがＣＤ２（１１００）に伝達されないか、マルチキャスト検索メッセージを受信したＣＤ３（１２００）がマルチキャスト検索応答メッセージをＣＰ２（２１００）に伝送できず、パケットが損失されることもあり、これにより、ＣＰ２（２１００）は、該当のＣＤの見つけ出しに失敗することになる。
【００１２】
図２は、従来のホームネットワークにおいて、制御ポイントから伝送されたデバイスパケットに対して被制御デバイスが伝送した応答メッセージを、制御ポイントで受信できなかった場合を示す図であり、図３は、従来のホームネットワークにおいて、制御ポイントから伝送されたデバイスパケットを、被制御デバイスで受信できなかった場合を示す図である。
【００１３】
図４は、従来のホームネットワークにおいて、不正常に除去された被制御デバイスの状態を制御ポイントが認知していない場合を示す図である。ＣＤ１０００,...,１２００が正常な方法でネットワークから除去されると、先ず、自分の解除通知メッセージを作成し、ＵＤＰマルチキャスト方式で伝送する。これに応じて、前記解除通知メッセージを受信したＣＰ２０００は、自分のキャッシュ２０１０から該当のＣＤについての情報を削除することにより、前記ＣＤがネットワーク上に存在しないことが分かる。
【００１４】
しかし、ネットワークに接続されて動作していたＣＤ１０００,...,１２００が不正常に動作を停止した場合、前記ＣＤは、解除通知メッセージを伝送することができなくなり、ＣＰ２０００のキャッシュ２０１０には、未だ、該当のＣＤが有効であることと認識される。このような誤ったキャッシュ情報は、ＣＰ２０００のキャッシュ２０１０に共に記録されたＣＤの有効時間が過ぎるまで残り続けることになり、即ち、ＵＰｎＰディスカバリメカニズムは、キャッシュに残っているＣＤについての情報を該当のＣＤから伝送された接続通知メッセージまたは解除通知メッセージによってのみ認知されるため、該当のＣＤが不正常に動作を停止した場合、これを認知させる方法がないという問題点があった。
【００１５】
従って、ＵＰｎＰネットワークに接続された各ＣＤが自分の状態をお互いに知らせるために、通知メッセージをマルチキャストするか、前記ＣＤが不正常に動作を停止した場合にも、ＣＰ２０００のキャッシュに残っている有効時間(Duration)のために、該当のＣＤが動作することと認識されるキャッシュコヒーレンス(Cache  Coherence)の問題を解決するための方法及び装置が求められる。
【００１６】
特許文献１の「異なりあうミッドウェアを持ったデバイス間通信を出来るようにするゲートウェイ、ホームネットワークシステム及びデータ中継方法」は各々のミドルウェアごとに周期的にネットワークを検索して同一のミドルウェアを使うデバイスのリストを作成して貯えるテーブル及び送信するメッセージを該当ミドルウェアフォーマットになったパケットで生成するテンプレート機能を持つ総括ミドルウエ-ジェント(agent)を利用するホームネットワークシステムを開始している。
これは特定被制御デバイスが制御ポイントのメッセージが受信できなかったり、特定被制御デバイスが片輪的に終了される場合、被制御デバイスを制御しないという問題点がある。
【特許文献１】韓国公開特許2003-004540号公報
【発明の開示】
【発明が解決しようとする課題】
【００１７】
本発明は、上記問題点に鑑みなされたものであり、ネットワーク上に接続された被制御デバイスが他の被制御デバイスのリストを持っており、制御ポイントから特定の被制御デバイスを検索するメッセージを受信した場合、制御ポイントに応答メッセージを他の被制御デバイスに代わって伝送できる被制御デバイスのリストを提供するネットワーク装置、システム及び方法を提供することを目的とする。
【００１８】
また、本発明は、各被制御デバイスが被制御デバイスのリストをアップデートする途中で特定の被制御デバイスがネットワーク上に存在しない状態であることを見つかると、制御ポイントに知らせ、制御ポイントがネットワーク上に存在しない被制御デバイスのリストをキャッシュから削除することにより、現在動作している各被制御デバイスの正確な状態を把握できるようにする被制御デバイスのリストを提供するためのネットワーク装置、システム及び方法を提供することを他の目的とする。
【課題を解決するための手段】
【００１９】
上記の目的を達成するために、本発明に係る被制御デバイスのリストを提供するネットワーク装置は、ネットワーク上に接続された各被制御デバイスから伝送される通知メッセージを受信する通知/検索メッセージ受信モジュールと、前記ネットワーク上に接続された各被制御デバイスの情報を取得して前記ネットワーク上に接続された全ての被制御デバイスのサービス情報のリストを生成し、管理するデバイスリスト管理モジュールと、制御ポイントから要求された特定の被制御デバイスのサービス情報を前記デバイスリスト管理モジュールから検索して伝送する制御モジュールとを備えることを特徴とする。
【００２０】
また、本発明に係る被制御デバイスのリストを提供する方法は、ネットワーク上に接続された各被制御デバイスの通知メッセージを受信するステップと、前記受信された通知メッセージからネットワーク上に接続された各被制御デバイスの情報を取得し、リストを作成するステップと、特定の被制御デバイスの情報要求メッセージを受信するステップと、前記情報要求メッセージが受信された特定の被制御デバイスの情報を前記作成されたリストから検索するステップと、前記検索された特定の被制御デバイスの情報を伝送するステップとを含むことを特徴とする。
【発明の効果】
【００２１】
本発明によると、ネットワーク上に接続された被制御デバイスが他の各被制御デバイスのリストを持つことになり、制御ポイントから特定の被制御デバイスを検索するメッセージを受信した場合、特定の被制御デバイスが前記制御ポイントのメッセージを受信できなかったときにも、該当の被制御デバイスに代わって、他の被制御デバイスが制御ポイントに応答メッセージを伝送することが可能であるため、ネットワークが不安定な状態であっても、制御ポイントにより被制御デバイスを効率的に制御することができるという効果がある。
【００２２】
また、各被制御デバイスが被制御デバイスのリストをアップデートする過程で特定の被制御デバイスがネットワークに存在していない状態であることを見つけると、それを制御ポイントに知らせることにより、前記制御ポイントがネットワーク上に存在しない被制御デバイスの情報も正確に把握することが可能となり、被制御デバイスを効率的に制御できるという効果がある。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の好ましい実施の形態を、添付図面に基づいて詳しく説明する。
図５は、本発明による被制御デバイスのリストを提供するネットワークシステムの全体構成を示す概略図であり、図示のように、アクセスポイント３０００、制御ポイントＣＰ(control  point；２０００,...,２２００)及び被制御デバイスＣＤ(controlled  device；１０００,...,１５００)から構成される。
【００２４】
アクセスポイント３０００は、無線で接続された制御ポイント２０００,...,２２００と被制御デバイス１０００とを連結する装置である。
制御ポイント２０００は、ネットワーク上に存在する各被制御デバイス１０００,１１００,...,１５００を検索するために、ディスカバリパケットを伝送し、それに対する応答メッセージを受信して前記ネットワーク上に存在する被制御デバイス１０００,１１００,...,１５００を制御する。
【００２５】
被制御デバイス１０００は、前記ネットワーク上に接続された他の被制御デバイス１１００,...,１５００から伝送された通知メッセージを受信し、前記ネットワークに接続された全ての被制御デバイス１０００,１１００,...,１５００の情報リストを生成及び管理し、前記制御ポイント２０００から要求された特定の被制御デバイスの情報を検索して伝送する。以下、図６を参照しながら被制御デバイスの構成及び動作についてより詳しく説明する。
【００２６】
図６は、本発明による被制御デバイスのリストを提供するネットワークシステムの被制御デバイスの内部構成を示す図であり、図６を参照して、被制御デバイス１０００は、デバイスリスト管理モジュール１０２１、ネゴシエーションモジュール１０２２、通知/検索メッセージ受信モジュール１０２３、トークン(token)管理モジュール１０２４、タイマー管理モジュール１０２５及び制御モジュール１０２６から構成される。
【００２７】
通知/検索メッセージ受信モジュール１０２３は、ネットワーク上に接続された被制御デバイス１０００,１１００,...,１５００から伝送される通知メッセージ及び制御ポイント２０００から伝送される検索(M-Search)メッセージを受信する。
【００２８】
デバイスリスト管理モジュール１０２１は、前記ネットワーク上に接続された被制御デバイス１０００,１１００,...,１５００の情報を取得し、前記ネットワーク上に接続された全ての被制御デバイス１０００,１１００,...,１５００のサービス情報のリストを生成及び管理する。
【００２９】
制御モジュール１０２６は、制御ポイント２０００から要求された特定の被制御デバイスのサービス情報を前記デバイスリスト管理モジュール１０２１から検索して伝送する。かつ、制御モジュール１０２６は、前記被制御デバイスに前記トークンが存在するか否かを確認して、制御ポイント２０００の情報要求メッセージに応答し、前記トークンが存在するか否かを確認した後、被制御デバイスの状態情報を確認する。ここで、前記状態情報は、初期(init)状態、進行(active)状態及び停止(stop)状態として理解できるし、前記初期状態とは、現在、自分が持っている被制御デバイスのリスト内の被制御デバイスの数が一つの場合(即ち、リストに自分のみ存在する場合)で、被制御デバイスの初期状態でのみ存在する。このような初期状態で自分のリストがアップデート(update)され、リスト内の被制御デバイスの数が二つ以上となる瞬間、前記被制御デバイス１０００は、自分の状態を進行状態に変更する。前記進行状態とは、現在、被制御デバイス１０００自分がトークンを持ったままサービスを行っている状態である。前記停止状態とは、進行状態のサービスを終了し、現在は、どのような動作も行っていない状態である。また、前記トークンが存在するか否かの確認は、前記状態情報を用いて行われる。
【００３０】
トークン管理モジュール１０２４は、トークンを生成し、前記生成されたトークンを他の被制御デバイスに伝達し管理する。
【００３１】
タイマー管理モュール１０２５は、セルフタイマー(Self  Timer)やウェーティングタイマー(Waiting  Timer)を作成するが、前記セルフタイマーは、前記トークン管理モジュール１０２４で管理するトークンが他の被制御デバイスに伝達される場合、前記トークンが伝達された他の被制御デバイスの応答時間をチェックする。即ち、各被制御デバイスは、他の被制御デバイスにトークンを伝達するか、応答(ACK)を待つとき、自分のセルフタイマーを作動させ、前記他の被制御デバイスから応答が受信されると、セルフタイマーを終了する。かつ、セルフタイマーが動作する間、前記他の被制御デバイスから応答が受信されないと、セルフタイマーを再び作動させる(例えば、３回作動させる)。前記セルフタイマーが３回動作する間にも応答が受信されないと、前記他の被制御デバイスに対して解除通知メッセージを送信し、自分のリストから前記他の被制御デバイスのリストを削除した後、次の過程を行う。
【００３２】
また、前記ウェーティングタイマーは、前記ネットワーク上に存在する被制御デバイスに対する前記トークンの全体循環時間をチェックする。即ち、ウェーティングタイマーは、特定の被制御デバイスが自分のサービス動作を正常に行った後、自分が持つリストに残っている被制御デバイスの数に比例して動作が終了する時点を予測し、それ程の時間を待機するために動作するタイマーであって、前記ウェーティングタイマーにより設定された時間が経過すると、新しいトークンを生成し、次の被制御デバイスにトークンやリストを伝送する。かつ、停止状態の各被制御デバイスは、それぞれウェーティングタイマーを駆動している必要があり、前記ウェーティングタイマーを駆動する時点で該当の被制御デバイスが持つリストの数が一つの場合、他の各被制御デバイスに自分の接続通知メッセージを伝送し、自分の状態を停止状態に変更した後、ウェーティングタイマーを駆動し、他の各被制御デバイスに自分が活性状態にあることを知らせる。  一方、前記セルフタイマーとウェーティングタイマーとは同時に動作せず、前記被制御デバイス１０００の状態条件に適したタイマーが動作するようになっている。
【００３３】
ネゴシエーションモジュール１０２２は、前記ネットワーク上に存在する各被制御デバイスに多数のトークンが存在する場合、前記トークンの有効性を調整する。ここで、前記ネゴシエーションモジュール１０２２は、各被制御デバイスの状態情報に基づいて、多数のトークンが存在するか否かを判断する。かつ、前記ネゴシエーションモジュール１０２２は、前記トークンを持つ各被制御デバイスに格納されている被制御デバイスのリスト内の被制御デバイスの数を比較して、トークンの有効性を調整し、もし、前記比較の結果、被制御デバイスのリスト内の被制御デバイスの数が同一である場合、前記リストに登録された各被制御デバイスのネットワーク残り時間(Remain  Duration  Time)の和を比較して、トークンの有効性を調整する。ここで、前記各被制御デバイスのネットワーク残り時間は、各被制御デバイスが接続通知メッセージを伝送するときに共に伝送され、前記伝送された各被制御デバイスの有効時間(Duration  Time)に基づいて計算される。
【００３４】
図７は、本発明による被制御デバイスのリストを提供する方法の全体フローチャートである。先ず、被制御デバイス１０００は、ネットワーク上に接続された他の被制御デバイス１１００,...,１５００から通知メッセージを受信して、前記他の各被制御デバイスのリストを作成する初期化過程を行う(Ｓ１００)。
【００３５】
次に、被制御デバイス１０００でトークンを生成し、前記生成されたトークンを他の被制御デバイスに伝送し、被制御デバイス１０００自分は、他の被制御デバイスから伝送されたトークンを受信するので、トークンを受信するトークンが生成されたか否かを判断する過程、トークンを伝達する過程及びトークンを受信する過程を行い(Ｓ２００、Ｓ３００、Ｓ４００)、前記ネットワーク上に存在する被制御デバイス１０００,...,１５００内に多数のトークンが存在する場合、前記トークンの有効性を調整するネゴシエーション過程を行い(Ｓ５００)、前記他の被制御デバイスから応答メッセージが伝送されない場合、制御ポイント２０００に特定の被制御デバイス１０００がネットワークから解除されたことを知らせる解除通知メッセージの伝達過程(Ｓ６００)、及び前記制御ポイント２０００から特定のデバイスの情報を検索する検索メッセージを受信する制御ポイントの検索メッセージ受信過程を行う(Ｓ１５０)。ここで、前記各過程は、状況によって並列的に行うことができる。以下、図８〜図１５を参照しながら被制御デバイスのリストを提供する方法についてより詳しく説明する。
【００３６】
図８は、本発明による被制御デバイスのリストを提供する方法において、初期化過程を示すフローチャートである。図示のように、先ず、被制御デバイス１０００がネットワークに接続されると、前記被制御デバイス１０００は、自分がネットワークに接続されたことを知らせるメッセージをマルチキャストする(Ｓ１１０)。これに対し、既にネットワークに接続されていた他の被制御デバイス１１００,...,１５００は、前記被制御デバイス１０００から伝送されたメッセージに対して、自分の情報を知らせる接続通知(notify alive)メッセージを伝送する(Ｓ１２０)。
【００３７】
その後、前記被制御デバイス１０００は、伝送された接続通知メッセージからネットワーク上に接続された他の被制御デバイス１１００,...,１５００の情報を取得し、リストを作成する(Ｓ１３０)。
【００３８】
ここで、被制御デバイス１０００,１１００,...,１５００から接続通知メッセージを受信するＡ過程と、制御ポイント２０００の検索メッセージを受信するＢ過程とは、前記初期化過程と並列的に行うことができる。
【００３９】
図９は、本発明による被制御デバイスのリストを提供する方法において、被制御デバイスが他の被制御デバイスから伝送された接続通知メッセージを受信する過程を説明するためのフローチャートであり、前記図８のステップＳ１２０(または、図８のＡ過程)に該当する。
【００４０】
前記他の被制御デバイス１１００,...,１５００が前記被制御デバイス１０００に接続通知メッセージを伝送し(Ｓ１２１)、これに対し、前記被制御デバイス１０００は、他の被制御デバイス１１００,...,１５００から接続通知メッセージが受信されたかをチェックする(Ｓ１２２)。もし、他の被制御デバイス１１００,...,１５００から接続通知メッセージが受信された場合は、前記被制御デバイス１０００は、自分のデバイス管理モジュール１０２１に前記接続通知メッセージを伝送したデバイスのリストを追加する(Ｓ１２３)。
【００４１】
図１０は、本発明による被制御デバイスのリストを提供する方法において、被制御デバイスが制御ポイントから伝送された検索メッセージを受信する過程を示すフローチャートであり、前記図８のＢ過程に該当する。
【００４２】
先ず、制御ポイント２０００が被制御デバイス１０００に検索メッセージをマルチキャストすると(Ｓ１５１)、前記被制御デバイス１０００は、制御ポイント２０００から検索メッセージが受信されたかをチェックする(Ｓ１５２)。もし、前記制御ポイント２０００から検索メッセージが受信された場合は（Ｓ１５２で「はい」）、前記被制御デバイス１０００は、受信された検索メッセージが自分のデバイスリスト管理モジュール１０２１に存在するかを検索する(Ｓ１５３)。
【００４３】
次に、前記被制御デバイス１０００は、自分の状態が進行(active)状態であるかを判断する(Ｓ１５４)。ここで、自分の状態が進行状態であるというのは、トークンを持っている状態をいう。
【００４４】
前記判断の結果、自分の状態が進行状態である場合（Ｓ１５４で「はい」）、被制御デバイス１０００は、前記制御ポイント２０００に該当の被制御デバイスの情報メッセージを伝送する(Ｓ１５５)。
【００４５】
一方、前記被制御デバイス１０００のデバイスリスト管理モジュール１０２１に前記制御ポイント２０００が検索している被制御デバイスが存在しないか、または現在、前記被制御デバイス１０００の状態が進行状態でない場合、前記被制御デバイス１０００は、制御ポイント２０００に応答メッセージを伝送することができない。
【００４６】
図１１は、本発明による被制御デバイスのリストを提供する方法において、トークンが生成されたか否かを判断する過程を示すフローチャートである。
まず、前記初期化過程で作成された被制御デバイスのリスト内の被制御デバイスの数を確認し(Ｓ２０１)、前記被制御デバイスのリスト内の被制御デバイスの数が二つ以上である場合、前記被制御デバイス１０００は、自分の状態情報をチェックする(Ｓ２０２で「いいえ」、Ｓ２０３)。ここで、前記状態情報とは、初期(init)状態、進行(active)状態、及び停止(stop)状態として理解できる。
【００４７】
このとき、前記被制御デバイスのリスト内の被制御デバイスの数が二つ以上でない場合には（Ｓ２０２で「はい」）、被制御デバイスのリスト内の被制御デバイスの数が二つ以上になるまでステップＳ２０１及びステップＳ２０２を継続して行う。
【００４８】
次に、前記自分の状態情報をチェックした結果、前記被制御デバイス１０００が初期状態である場合（Ｓ２０４で「いいえ」）、前記被制御デバイス１０００は、自分の状態を進行状態に変更し、トークンを生成し伝達する過程を行う(即ち、Ｌ過程)(Ｓ２０４)。
【００４９】
もし、前記自分の状態情報をチェックした結果、前記被制御デバイス１０００の状態が停止状態である場合（Ｓ２０４で「はい」）、前記被制御デバイス１０００は、ウェーティングタイマーを作動させ、前記ウェーティングタイマーが作動を再び行うか否か(例えば、３回)を判断する(Ｓ２０５)。即ち、前記被制御デバイス１０００のウェーティングタイマーを作動させ(Ｓ２０６)、前の被制御デバイスからトークンや被制御デバイスのリストが伝送されたか否かを判断する(Ｓ２０７)。ここで、前記前の被制御デバイスからトークンや被制御デバイスのリストが伝送された場合は（Ｓ２０７で「はい」）、トークン伝送過程(即ち、Ｃ過程)に移行する。
【００５０】
一方、前記前の被制御デバイスからトークンや被制御デバイスのリストが伝送されていない場合は（Ｓ２０７で「いいえ」）、前記設定された被制御デバイス１０００のウェーティングタイマー時間が終了したかを判断する(Ｓ２０８)。ここで、前記設定されたウェーティングタイマーの時間が終了していない場合には（Ｓ２０８で「いいえ」）、ウェーティングタイマーを継続して作動させ、前記設定されたウェーティングタイマーの時間が終了した場合には（Ｓ２０８で「はい」）、前記ウェーティングタイマーの作動が行われた回数をチェックした後、再びウェーティングタイマーを作動させる(Ｓ２０９)。ここで、前記ウェーティングタイマーは、複数回(例えば、３回)繰り返して行われ、前記設定された回数だけウェーティングタイマーが繰り返して行われると、被制御デバイス１０００は、自動的にトークンを生成する(即ち、Ｌ過程)。
【００５１】
図１２は、本発明による被制御デバイスのリストを提供する方法において、トークンの生成及び伝達過程を示すフローチャートである。図示のように、先ず、被制御デバイス１０００がトークンを生成し(Ｓ３０１)、次の被制御デバイスと接続可能であるかを判断し、前記次の被制御デバイスの状態を調べる(Ｓ３０２、Ｓ３０３)。ここで、前記次の被制御デバイスと接続できない状態である場合（Ｓ３０２で「いいえ」）、解除通知メッセージの伝送過程(即ち、Ｄ過程)を行い、前記解除通知メッセージの伝送過程は、下記の図１５で詳しく説明する。
【００５２】
次に、前記調査の結果、前記次の被制御デバイスの状態が停止状態でない場合には（Ｓ３０４で「いいえ」）、ネゴシエーション過程(即ち、Ｆ過程)を行う。前記ネゴシエーション過程は、下記図１４で詳しく説明する。
【００５３】
一方、前記調査の結果、次の被制御デバイスの状態が停止状態である場合(Ｓ３０４で「はい」)、前記被制御デバイス１０００は、トークンや被制御デバイスのリストを次の被制御デバイスに伝達する(Ｓ３０５)。ここで、前記リストを伝達した被制御デバイス１０００を前記被制御デバイスのリストの最後に修正し、前記修正されたリストの一番目に記録された被制御デバイスを、前記リストの伝達後、次の被制御デバイスに決定する。
【００５４】
次に、前記トークンや被制御デバイスのリストを伝送した被制御デバイス１０００は、セルフタイマーを作動させ、前記次の被制御デバイスから応答(ＡＣＫ)メッセージが受信されるか否かを判断する(Ｓ３０７、Ｓ３０８)。
前記判断の結果、前記次の被制御デバイスから応答メッセージを受信した場合（Ｓ３０７で「はい」）、前記被制御デバイス１０００は、次の被制御デバイスに自分の状態を停止状態に変更したことを知らせる応答メッセージを伝送し、自分の状態を停止状態に変更する(Ｓ３１１、Ｓ３１２)(即ち、Ｗ状態)。
【００５５】
一方、前記次の被制御デバイスから応答メッセージが伝送されていない場合（Ｓ３０７で「いいえ」）、前記被制御デバイス１０００は、セルフタイマーの時間が終了したかを判断する(Ｓ３０９)。ここで、前記セルフタイマーの時間が終了していない場合（Ｓ３０９で「いいえ」）、継続してセルフタイマーを作動させ、もし、セルフタイマーの時間が終了した場合には、セルフタイマーの再作動回数をチェックした後、さらにセルフタイマーを作動させる(Ｓ３１０)。ここで、前記セルフタイマーの再作動回数は、３回に設定されているが、前記設定回数は、使用者によって任意に変更することが可能である。
【００５６】
次に、前記セルフタイマーの再作動回数をチェックし、その回数が３回以上である場合(Ｓ３０６)、前記被制御デバイス１０００は、次の被制御デバイスに対して解除通知メッセージの伝送過程(即ち、Ｄ過程)を行う。前記解除通知メッセージの伝送過程は、下記の図１５で詳しく説明する。
【００５７】
図１３は、本発明による被制御デバイスのリストを提供する方法において、前の被制御デバイスが被制御デバイスにトークンを伝達する過程を示すフローチャートである。図示のように、先ず、被制御デバイス１０００は、前の被制御デバイスから伝送されたトークンや被制御デバイスのリストを受信する(Ｓ４０１)。
その後、前記被制御デバイス１０００は、前の被制御デバイスに応答メッセージを伝送し、セルフタイマーを作動させる(Ｓ４０２、Ｓ４０４)。
【００５８】
次に、前記被制御デバイス１０００は、前の被制御デバイスから停止状態に変更されたことを知らせる応答メッセージが受信されたかを確認する(Ｓ４０５)。
前記確認の結果、前の被制御デバイスから応答メッセージが受信された場合、前記被制御デバイス１０００は、次の被制御デバイスにトークンやリストを伝送する準備を行い(即ち、Ｑ過程)、もし、前記確認の結果、前の被制御デバイスから応答メッセージが受信されていない場合（Ｓ４０５で「いいえ」）、前記被制御デバイス１０００は、セルフタイマーの時間が終了したかを判断する(Ｓ４０６)。ここで、前記セルフタイマーの時間が終了していない場合（Ｓ４０６で「いいえ」）、前記被制御デバイス１０００は、継続してセルフタイマーを作動させ、もし、前記セルフタイマーの時間が終了した場合には（Ｓ４０６で「はい」）、セルフタイマーの再作動回数をチェックした後、再びセルフタイマーを作動させる(Ｓ４０７)。ここで、前記セルフタイマーを再作動回数は、３回に設定されているが、この設定回数は、使用者によって任意に変更することが可能である。
【００５９】
次に、前記セルフタイマーの再作動回数をチェックして、その回数が３回以上繰り返された場合(Ｓ４０３)、前記被制御デバイス１０００は、解除通知メッセージの伝送過程(即ち、Ｄ過程)を行う。前記解除通知メッセージの伝送過程は、下記の図１５で詳しく説明する。
【００６０】
図１４は、本発明による被制御デバイスのリストを提供する方法におけるネゴシエーション過程を示すフローチャートであり、前記図１２で説明したステップＳ３０４のように説明する。
前記被制御デバイス１０００は、次の被制御デバイスにトークンや被制御デバイスのリストを伝送するために、前記次の被制御デバイスの状態を調べるが、このとき、前記次の被制御デバイスの状態が停止状態でない場合、即ち、次の被制御デバイスがトークンを持つ状態である場合、ネゴシエーション過程を行う。
【００６１】
先ず、前記被制御デバイス１０００と次の被制御デバイスのデバイスリスト管理モジュール１０２１に格納された被制御デバイスのリスト内の被制御デバイスの数を比較するが（Ｓ５０１）、前記比較の結果、もし、次の被制御デバイスに格納された被制御デバイスのリスト内の被制御デバイスの数が大きい場合（Ｓ５０１で「はい」）、前記被制御デバイス１０００は、自分の状態を停止状態に変更する(Ｓ５０２)。
【００６２】
一方、前記被制御デバイスのリスト内の被制御デバイスの数を比較した結果、リストに同一数の被制御デバイスを持っている場合（Ｓ５０１で「いいえ」）、格納された各被制御デバイスのネットワーク残り時間の和を比較する(Ｓ５０３)。ここで、次の被制御デバイスに格納された被制御デバイスの各リストの残り時間の和が、被制御デバイス１０００に格納された被制御デバイスの各リストの残り時間の和より大きい場合（Ｓ５０３で「はい」）、前記被制御デバイス１０００は、自分の状態を停止状態に変更し(Ｓ５０２)、もし、前記次の被制御デバイスに格納された被制御デバイスの各リストの残り時間の和が前記被制御デバイス１０００に格納された被制御デバイスの各リストの残り時間の和よりも小さい場合（Ｓ５０３で「いいえ」）、次の被制御デバイスの状態を停止状態に変更する(Ｓ５０４)。従って、ネットワーク上にトークンを持つ被制御デバイスが一つのみ存在するようにしている。
【００６３】
図１５は、本発明による被制御デバイスのリストを提供する方法において、特定の被制御デバイスに代わって解除通知メッセージを伝送する過程を示すフローチャートである。前記被制御デバイス１０００が次の被制御デバイスに代わって、解除通知メッセージを制御ポイント２０００に伝送する場合は、前記被制御デバイス１０００が次の被制御デバイスにトークンやリストを伝送するために、次の被制御デバイスの状態を確認した結果、前記次の被制御デバイスの状態を確認できない場合、即ち、次の被制御デバイスと接続できない場合と、前記被制御デバイスが前記次の被制御デバイスから応答メッセージを受信できない場合と、即ち、被制御デバイス１０００のセルフタイマーが終了した後にも、次の被制御デバイスから応答メッセージが受信されない場合とに行われる。
【００６４】
前記被制御デバイス１０００は、前記次の被制御デバイスと接続されないか、応答メッセージが受信されない場合、前記次の被制御デバイスに代わって、解除通知メッセージをマルチキャスティングし(Ｓ６０１)、自分のデバイスリスト管理モジュール１０２１に格納されたリストから前記次の被制御デバイスを削除する(Ｓ６０２)。ここで、前記被制御デバイス１０００が前記次の被制御デバイスに代わって解除通知メッセージをマルチキャスティングすることにより、制御ポイント２０００では、不正常に解除された特定の被制御デバイスについての情報も取得することになり、ネットワークに接続された各被制御デバイスの情報を正確に把握することができ、これにより、各被制御デバイスを効率的に制御することが可能となる。
【００６５】
次に、前記被制御デバイス１０００は、自分のデバイスリスト管理モジュール１０２１に格納されたリスト内の被制御デバイスの数を確認して、前記格納されたリスト内の被制御デバイスの数が一つであると（Ｓ６０３で「はい」）、前記被制御デバイス１０００は、自分の接続通知メッセージをマルチキャストし、自分の状態を停止状態に変更する(即ち、Ｅ状態)(Ｓ６０３,Ｓ６０７,Ｓ６０８)。もし、前記格納されたリスト内の被制御デバイスの数が一つ以上であると（Ｓ６０３で「いいえ」）、次の被制御デバイスにトークンやリストを伝送する準備をする(即ち、Ｑ過程)。
【００６６】
一方、前記被制御デバイス１０００は、自分のデバイスリスト管理モジュール１０２１に格納されたリスト内の被制御デバイスの数が一つ以上である場合において、もし、ネットワーク上に被制御デバイスがただ二つ存在する場合、即ち、被制御デバイス１０００や次の被制御デバイスのみが存在する場合、前記被制御デバイス１０００と次の被制御デバイスとがお互いにトークンや同一のリストを継続して伝送する不要な過程が繰り返される。
【００６７】
従って、このような場合、前記被制御デバイス１０００は、前記次の被制御デバイスを停止状態に変更することを知らせるメッセージを伝送し、これに応じて、前記次の被制御デバイスは、自分の状態を停止状態に変更する(Ｓ６０４〜Ｓ６０６)。
その後、被制御デバイス１０００は、自分のデバイスリスト管理モジュール１０２１に格納されたリスト内の被制御デバイスの数が一つに変更されるため、自分の接続通知メッセージをマルチキャストし、自分の状態を停止状態に変更する(即ち、Ｅ状態)(Ｓ６０７,Ｓ６０８)。
【００６８】
図１６は、本発明による被制御デバイスのリストを提供するネットワークシステムの動作過程における被制御デバイスと他の被制御デバイスとの接続動作を示す図であり、前記図８及び図９で説明した初期化過程及び接続通知メッセージの受信過程を参照して説明する。
【００６９】
先ず、被制御デバイス(以下、第１の被制御デバイスと称する)がネットワークに接続されると、自分を知らせるメッセージを他の被制御デバイス(以下、第２の被制御デバイスと称する)に伝送する。
次に、自分の情報をデバイスリスト管理モジュール１０２１に格納し、前記伝送されたメッセージに応答して接続通知メッセージを伝送した第２の被制御デバイス情報を前記デバイスリスト管理モジュール１０２１に格納することにより、前記第１の被制御デバイスは、ネットワーク上に存在する第２の被制御デバイスの情報を制御ポイント２０００に知らせることができる。
【００７０】
図１７は、本発明による被制御デバイスのリストを提供するネットワークシステムの動作過程において、被制御デバイスが制御ポイントから伝送された検索メッセージに応答する動作を示す図で、前記図１０で説明した被制御デバイスが制御ポイントから伝送された検索メッセージを受信する過程を参照して説明する。
制御ポイント２０００が第２の被制御デバイスを検索する検索メッセージをマルチキャストすると、ネットワーク上に存在する全ての被制御デバイス(例えば、第１、第２、第３の被制御デバイス)が前記制御ポイント２０００のマルチキャストメッセージに応答する。
【００７１】
しかし、ネットワークが不安定で、前記制御ポイント２０００によりマルチキャストされたメッセージを第３の被制御デバイス１２００のみが受信する場合、前記第３の被制御デバイス１２００は、前記制御ポイント２０００が検索している第２の被制御デバイス１１００をデバイスリスト管理モジュール１２２１から検索して、応答メッセージを第２の被制御デバイス１１００に代わって前記制御ポイント２０００に伝送する。
【００７２】
図１８は、本発明による被制御デバイスのリストを提供するネットワークシステムの動作過程において、トークンやリストを伝送する動作を示す図であり、前記図１２で説明したトークンの生成及び伝達過程を参照して説明する。
先ず、第１の被制御デバイス１０００がトークンを生成した後、第２の被制御デバイスの状態を調べ、その結果、前記第２の被制御デバイスの状態が停止状態である場合、自分のデバイスリスト管理モジュール１０２１の順序を変更して、前記第２の被制御デバイスにトークンやリストを伝送する。その後、前記第１の被制御デバイス１０００は、セルフタイマーを作動させ、前記第２の被制御デバイスから応答を待つ。
【００７３】
前記第２の被制御デバイスは、前記第１の被制御デバイス１０００から伝送されたトークンやリストにより自分のデバイスリスト管理モジュール１１２１をアップデートした後、前記第１の被制御デバイス１０００に応答メッセージを伝送し、セルフタイマーを作動させる。
【００７４】
その後、前記第１の被制御デバイス１０００は、前記第２の被制御デバイスから応答メッセージを受信し、セルフタイマーを終了した後、ウェーティングタイマーを作動させる。
次に、前記第１の被制御デバイス１０００は、前記第２の被制御デバイスに自分がウェーティングタイマーによるウェイティング状態に変更されたことを伝送すると、これに対し、前記第２の被制御デバイスは、前記第１の被制御デバイス１０００から応答メッセージを受信し、自分のセルフタイマーを終了する。
【００７５】
図１９は、本発明による被制御デバイスのリストを提供するネットワークシステムの動作過程において被制御デバイス間のネゴシエーション動作を示す図であり、前記図１４で説明したネゴシエーション過程を参照して説明する。
図示のように、第３の被制御デバイス１２００が第４の被制御デバイス１３００にトークン及びリストを伝送する前に、前記第４の被制御デバイス１３００の状態を調べるが、前記調査の結果、前記第４の被制御デバイス１３００の状態が進行状態である場合、ネゴシエーションを行う。
【００７６】
先ず、前記第３の被制御デバイス１２００のデバイスリスト管理モジュール１２２１に格納された各被制御デバイスのリスト内の被制御デバイスの数と前記第４の被制御デバイス１３００のデバイスリスト管理モジュール１２３１に格納された各被制御デバイスのリスト内の被制御デバイスの数とを比較して、リスト内の被制御デバイスの数の多い被制御デバイスが活性化される（進行状態）。即ち、前記第３の被制御デバイス１２００が持つリスト内の被制御デバイスの数よりも前記第４の被制御デバイス１３００が持つリスト内の被制御デバイスの数がよりも多いため、前記第３の被制御デバイス１２００の状態は、停止状態に変更される。
【００７７】
もし、前記第４の被制御デバイス１３００と第５の被制御デバイス１４００とに格納されたリスト内の被制御デバイスの数が同じである場合、前記第４の被制御デバイス１３００に格納された各被制御デバイスのネットワーク残り時間の和と前記第５の被制御デバイス１４００に格納された各被制御デバイスのネットワーク残り時間の和とを比較して、残り時間の和の大きい被制御デバイスの方が活性化される（進行状態）。即ち、前記第４の被制御デバイス１３００に格納されたリストの残り時間の和が前記第５の被制御デバイス１４００に格納されたリスト残り時間の和より大きいため、前記第５の被制御デバイス１４００の状態が停止状態に変更される。
【００７８】
図２０は、本発明による被制御デバイスのリストを提供するネットワークシステムの動作過程において、特定の被制御デバイスに代わって被制御デバイスの解除通知メッセージを伝送する動作を示す図であり、前記図１５で説明した通知解除メッセージを特定の被制御デバイスに代わって伝送する過程を参照して説明する。
【００７９】
図２０Ａは、第１の被制御デバイスが第２の被制御デバイスを検索できない場合、第２の被制御デバイスに代わって第１の被制御デバイスの解除通知メッセージをマルチキャスティングする動作を示す図である。
先ず、前記第１の被制御デバイス１０００が前記第２の被制御デバイス１１００にトークンやリストを伝送するために、前記第２の被制御デバイス１１００の状態を確認する。ここで、前記第２の被制御デバイス１１００の状態が確認されない場合、即ち、前記第２の被制御デバイス１１００と前記第１の被制御デバイス１０００とが接続されていない場合、前記第１の被制御デバイス１０００は、自分のデバイスリスト管理モジュール１０２１に格納されたリストから第２の被制御デバイスを削除する。
【００８０】
次に、前記第１の被制御デバイス１０００は、前記第２の被制御デバイス１１００の解除通知メッセージをマルチキャスティングする。
一方、前記第１の被制御デバイス１０００のデバイスリスト管理モジュール１０２１に格納されている前記第２の被制御デバイスが削除されると、前記第１の被制御デバイス１０００のデバイスリスト管理モジュール１０２１のリストには、自分のみが残ることになり、前記第１の被制御デバイス１０００は、自分の接続通知メッセージをマルチキャストした後、自分の状態を停止状態に変更する。
【００８１】
図２０Ｂは、第１の被制御デバイスが第２の被制御デバイスから応答メッセージを受信できなかった場合、第２の被制御デバイスに代わって第１の被制御デバイスの解除通知メッセージをマルチキャスティングする動作を示す図である。
先ず、前記第１の被制御デバイス１０００がトークンを生成して、前記第２の被制御デバイス１１００にトークンやリストを伝送した後、セルフタイマーを作動させ、前記第２の被制御デバイス１１００の応答を待つ。これに対し、前記第２の被制御デバイス１１００は、前記第１の被制御デバイス１０００に応答メッセージを伝送し、セルフタイマーを作動させる。
【００８２】
その後、前記第１の被制御デバイス１０００は、前記第２の被制御デバイス１１００の応答を受信してセルフタイマーを終了する。
次に、前記第２の被制御デバイス１１００は、セルフタイマーを作動させながら前記第１の被制御デバイス１０００からセルフタイマーを終了したという応答を待つが、前記第２の被制御デバイス１１００のセルフタイマーが終了するまで前記第１の被制御デバイス１０００から応答が受信されないと、前記第２の被制御デバイス１１００は、前記第１の被制御デバイス１０００の解除通知メッセージをマルチキャスティングする。
かつ、前記第２の被制御デバイス１１００のデバイスリスト管理モジュール１１２１に格納されたリストから前記第１の被制御デバイスを削除する。
【００８３】
これにより、前記第２の被制御デバイス１１００のデバイスリスト管理モジュール１１２１に格納されたリストには、自分のリストのみが残ることになり、前記第２の被制御デバイス１１００は、自分の接続通知メッセージをマルチキャストした後、自分の状態を停止状態に変更する。
【００８４】
以上のように、上記実施の形態を参照して詳細に説明され図示されたが、本発明は、これに限定されるものでなく、このような本発明の基本的な技術的思想を逸脱しない範囲内で、当業界の通常の知識を有する者にとっては、他の多くの変更が可能であろう。また、本発明は、添付の特許請求の範囲により解釈されるべきであることは言うまでもない。
【図面の簡単な説明】
【００８５】
【図１】従来のホームネットワークに存在するＵＰｎＰ被制御デバイスを制御するための動作過程を示す図である。
【図２】従来のホームネットワークにおいて、制御ポイントから伝送されたデバイスパケットに対して被制御デバイスが伝送した応答メッセージを制御ポイントが受信できなかった場合を示す図である。
【図３】従来のホームネットワークにおいて、制御ポイントから伝送されたデバイスパケットを被制御デバイスが受信できなかった場合を示す図である。
【図４】従来のホームネットワークにおいて、不正常に終了した被制御デバイスの状態を制御ポイントが認知できない場合を示す図である。
【図５】本発明による被制御デバイスのリストを提供するネットワークシステムの全体構成を示す概略図である。
【図６】本発明による被制御デバイスのリストを提供するネットワークシステムの被制御デバイスの内部構成図である。
【図７】本発明による被制御デバイスのリストを提供する方法を示す全体フローチャートである。
【図８】本発明による被制御デバイスのリストを提供する方法における初期化過程を示すフローチャートである。
【図９】本発明による被制御デバイスのリストを提供する方法において、被制御デバイスが他の被制御デバイスから伝送された接続通知メッセージを受信する過程を説明するフローチャートである。
【図１０】本発明による被制御デバイスのリストを提供する方法において、被制御デバイスが制御ポイントから伝送された検索メッセージを受信する過程を示すフローチャートである。
【図１１】本発明による被制御デバイスのリストを提供する方法において、トークンが生成されたか否かを判断する過程を示すフローチャートである。
【図１２】本発明による被制御デバイスのリストを提供する方法におけるトークンの生成及び伝達過程を示すフローチャートである。
【図１３】本発明による被制御デバイスのリストを提供する方法において、前の被制御デバイスが被制御デバイスにトークンを伝達する過程を示すフローチャートである。
【図１４】本発明による被制御デバイスのリストを提供する方法におけるネゴシエーション過程を示すフローチャートである。
【図１５】本発明による被制御デバイスのリストを提供する方法において、解除通知メッセージを他の被制御デバイスに代わって伝送する過程を示す図である。
【図１６】本発明による被制御デバイスのリストを提供するネットワークシステムの動作過程における被制御デバイスと他の被制御デバイスとの接続動作を示す図である。
【図１７】本発明による被制御デバイスのリストを提供するネットワークシステムの動作過程において、被制御デバイスが制御ポイントから伝送された検索メッセージに応答する動作を示す図である。
【図１８】本発明による被制御デバイスのリストを提供するネットワークシステムの動作過程において、トークンやリストを伝送する動作を示す図である。
【図１９】本発明による被制御デバイスのリストを提供するネットワークシステムの動作過程における被制御デバイス間のネゴシエーション動作を示す図である。
【図２０Ａ】本発明による被制御デバイスのリストを提供するネットワークシステムの動作過程において、解除通知メッセージを伝送する他の被制御デバイスに代わって動作を示す図である。
【図２０Ｂ】本発明による被制御デバイスのリストを提供するネットワークシステムの動作過程において、解除通知メッセージを伝送する他の被制御デバイスに代わって動作を示す図である。
【符号の説明】
【００８６】
１０００    被制御デバイス(ＣＤ)
２０００    制御ポイント(ＣＰ)
１０２１    デバイスリスト管理モジュール
１０２２    ネゴシエーションモジュール
１０２３    通知/検索メッセージ受信モジュール
１０２４    トークン管理モジュール
１０２５    タイマー管理モジュール
１０２６    制御モジュール
【図１】
2004318852.tif 000003
【図２】
2004318852.tif 000004
【図３】
2004318852.tif 000005
【図４】
2004318852.tif 000006
【図５】
2004318852.tif 000007
【図６】
2004318852.tif 000008
【図７】
2004318852.tif 000009
【図８】
2004318852.tif 000010
【図９】
2004318852.tif 000011
【図１０】
2004318852.tif 000012
【図１１】
2004318852.tif 000013
【図１２】
2004318852.tif 000014
【図１３】
2004318852.tif 000015
【図１４】
2004318852.tif 000016
【図１５】
2004318852.tif 000017
【図１６】
2004318852.tif 000018
【図１７】
2004318852.tif 000019
【図１８】
2004318852.tif 000020
【図１９】
2004318852.tif 000021
【図２０Ａ】
2004318852.tif 000022
【図２０Ｂ】
2004318852.tif 000023