(57)【要約】  マルチキャストメッセージを処理しない複数の非マルチキャストノードが、選択式マルチキャストプロキシに登録する。マルチキャストによってリクエスタからサービスのためのリクエストを受信することに応じて、選択式マルチキャストプロキシは、複数の非マルチキャストノードの中でリクエストされているサービスの１つ以上のプロバイダを特定する。コンピュータネットワーク上の他の非マルチキャストノードにリクエストを送らずに、選択式マルチキャストプロキシは、１つ以上のプロバイダにリクエストを送信する。選択式マルチキャストプロキシ、サービスのリクエスタ、サービスのプロバイダ、及び非マルチキャストノードは、同じローカルエリアネットワーク内に全て位置することができる。
2008511187.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータネットワーク上のマルチキャストリクエスト処理のための方法であって、
マルチキャストメッセージを処理しない複数の非マルチキャストノードの登録を受信し、
マルチキャストによって、リクエスタからサービスのためのリクエストを受信し、
前記リクエストされているサービスの１つ以上のプロバイダを、前記複数の非マルチキャストノードの中から特定し、
前記コンピュータネットワーク上の他の非マルチキャストノードに前記リクエストを送らず、前記１つ以上のプロバイダに前記リクエストを送信すること
を含むことを特徴とする方法。
【請求項２】
前記１つ以上のプロバイダからの前記リクエストへの少なくとも１つの応答を受信し、
前記少なくとも１つの応答を前記リクエスタに送信すること
を更に含むことを特徴とする請求項１記載の方法。
【請求項３】
前記リクエストは、接続ベースのプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１記載の方法。
【請求項４】
前記リクエストは、コネクションレスプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１記載の方法。
【請求項５】
前記１つ以上のプロバイダを特定する処理は、
前記リクエストされているサービスを特定する前記リクエストの中からサービスＩＤを検出し、
登記済みのノードのデータベースの中から前記サービスＩＤを検索すること
を含むことを特徴とする請求項１記載の方法。
【請求項６】
請求項１記載の方法は、同じノードＩＤの複数の潜在的プロバイダを特定する処理を更に含み、
プロバイダを特定する処理は、前記同じノードＩＤの前記複数の潜在的プロバイダの中から前記プロバイダを選択することを含むこと
を特徴とする請求項１記載の方法。
【請求項７】
前記複数の非マルチキャストノードは、マルチキャストメッセージの処理ができるが、マルチキャストメッセージを処理しないように構成又は通知された、少なくとも１つのマルチキャストできるノードを備えること
を特徴とする請求項１記載の方法。
【請求項８】
少なくとも１つのマルチキャストできるノードの登録の受信処理は、マルチキャストをによってプロキシ公示メッセージを定期的に送信すること
を特徴とする請求項７記載の方法。
【請求項９】
前記方法は選択式マルチキャストプロキシによって実施され、
前記プロキシ公示メッセージを送信した前記選択式マルチキャストプロキシに接続されるマルチキャストできるノードによるプロキシ公示メッセージの受信処理は、前記選択式マルチキャストプロキシに接続される前記マルチキャストできるノードが残っている限り、マルチキャストリクエスト処理を中止する前記マルチキャストできるノードに帰着すること
を特徴とする請求項８記載の方法。
【請求項１０】
前記複数の非マルチキャストノードは、マルチキャストメッセージ処理ができない少なくとも１つの資源制約的なノードを具備すること
を特徴とする請求項１記載の方法。
【請求項１１】
前記選択式マルチキャストプロキシ、前記リクエスタ、及び前記複数の非マルチキャストノードが、同じローカルエリアネットワーク内に全て配置されていること
を特徴とする請求項１記載の方法。
【請求項１２】
コンピュータネットワーク上でマルチキャストリクエストを処理するための方法を実行するために構成されるコンピュータシステムであって、
プロセッサと、
前記プロセッサを有する電子通信におけるメモリと、
メモリに格納された指示とを備え、
方法を実行するために実行可能である前記指示は、
マルチキャストメッセージを処理しない複数の非マルチキャストノードの登録を受信し、
マルチキャストによってリクエスタからサービスのためのリクエストを受信し、
前記複数の非マルチキャストノードの中から前記リクエストされているサービスの１つ以上のプロバイダを特定し、
前記コンピュータネットワーク上で他の非マルチキャストノードに前記リクエストを送らず、前記１つ以上のプロバイダにリクエストを送信することを含むこと
を特徴とするコンピュータシステム。
【請求項１３】
前記方法は、
前記１つ以上のプロバイダから前記リクエストへの少なくとも１つの応答を受信し、
前記少なくとも１つの応答を前記リクエスタに送信すること
を特徴とする請求項１２記載のコンピュータシステム。
【請求項１４】
前記リクエストは、接続ベースのプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１２記載のコンピュータシステム。
【請求項１５】
前記リクエストは、コネクションレスプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１２記載のコンピュータシステム。
【請求項１６】
前記１つ以上のプロバイダの特定処理は、
前記リクエストされているサービスを特定する前記リクエストの中からサービスＩＤを検出し、
登記済みのノードのデータベースの中から前記サービスＩＤを検索すること
を特徴とする請求項１２記載のコンピュータシステム。
【請求項１７】
コンピュータネットワーク上で、マルチキャストリクエスト処理のための方法を実行するために実行可能な指示を具備するコンピュータ読み込み可能な媒体であって、前記方法は、
マルチキャストメッセージを処理しない複数の非マルチキャストノードの登録を受信し、
マルチキャストによって、リクエスタからサービスのためのリクエストを受信し、
前記複数の非マルチキャストノードの中から前記リクエストされているサービスの１つ以上のプロバイダを特定し、
前記コンピュータネットワーク上で、他の非マルチキャストノードに前記リクエストを送信せず、前記１つ以上のプロバイダに前記リクエストを送信すること
を特徴とするコンピュータ読み込み可能な媒体。
【請求項１８】
前記方法は、
前記１つ以上のプロバイダから前記リクエストへの少なくとも１つの応答を受信し、
前記少なくとも１つの応答を前記リクエスタに送信すること
を特徴とする請求項１７記載のコンピュータ読み込み可能な媒体。
【請求項１９】
前記リクエストは、接続ベースのプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１７記載のコンピュータ読み込み可能な媒体。
【請求項２０】
前記リクエストは、コネクションレスプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１７記載のコンピュータ読み込み可能な媒体。
【請求項２１】
前記１つ以上のプロバイダの特定は、
前記リクエストされているサービスを特定する前記リクエストの中からサービスＩＤを検出し、
登記済みのノードのデータベースの中から前記サービスＩＤを検索すること
を特徴とする請求項１７記載のコンピュータ読み込み可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的なコンピュータとコンピュータ関連技術に関する。より具体的には、本発明は、コンピュータネットワーク上の選択式マルチキャストプロキシを提供するためのシステム及び方法に関する。
【背景技術】
【０００２】
コンピュータや通信技術は、急速な歩みで進み続けている。事実、コンピュータや通信技術は、人間の日常の多くの側面に関わる。例えば、今日消費者によって使用される多くの装置は、その装置内部に小型コンピュータを有する。これらの小型コンピュータは、精密さに関して様々なサイズ及び程度のものが提供されている。これらの小型コンピュータは、１つのマイクロコントローラから、全ての機能を持つ完全なコンピュータシステムまで、全てを含んでいる。例えば、これらの小型コンピュータは、マイクロコントローラのようなワンチップコンピュータ、コントローラのような１ボードのタイプのコンピュータ、ＩＢＭ（登録商標）−ＰＣコンパチブルのような典型的なデスクトップコンピュータなどであっても良い。
【０００３】
コンピュータは、一般的に、そのコンピュータの心臓部に１つ以上のプロセッサを有する。プロセッサは、通常、異なる外部の入力と出力に相互接続されており、特定のコンピュータ又は装置を管理するために機能する。例えば、サーモスタットのプロセッサは、温度設定を選択するために使用されるボタン、温度を変えるための暖炉やエアコン、及び現在の温度をディスプレイ上から読んだり表示したりするための温度センサと接続できる。
【０００４】
多くの電気製品や装置などは、１つ以上の小型コンピュータを含んでいる。例えば、サーモスタット、暖炉、空調システム、冷蔵庫、電話機、タイプライタ、自動車、自動販売機、及び多くの異なるタイプの産業機器は、現在一般的に、小型コンピュータ又はプロセッサをそれらの内部に有する。コンピュータソフトウェアは、これらコンピュータのプロセッサを動かして、いかに所定のタスクを実行するかをプロセッサに指示する。例えば、サーモスタット上で動作するコンピュータソフトウェアは、特定の温度に達している場合エアコンの実行を止めたり、又は必要に応じて暖房機をオンにしたりすることができる。
【０００５】
装置、電気製品、ツールなどの一部であるこれらのタイプの小型コンピュータは、しばしば組込み機器又は組込みシステムと呼ばれる。（用語「組込み機器」と「組込みシステム」は本明細書において互換性を持って使用される）。組込みシステムは、通常、コンピュータハードウェアと、より大きいシステムの一部であるソフトウェアについて言及する。組込みシステムは、キーボード、マウス、及び／又はモニタなどの典型的な入出力装置を有することができない。通常、それぞれの心臓部で組み込まれているシステムは、１つ以上のプロセッサである。
【０００６】
照明システムは組込みシステムを組み込むことができる。照明システムの効力を監視し、制御するために組込みシステムを使用できる。例えば、組込みシステムは、照明システムの中で照明の明るさを薄暗くするための制御を与えることができる。あるいはまた、組込みシステムは、照明の明るさを強めるための制御を与えることができる。組込みシステムは、照明システム内の個々の照明内の特定の照明パターンを起動するための制御を与えることができる。組込みシステムは、照明システム内の個々のスイッチと結合できる。これらの組込みシステムは、個々の照明又は全体の照明システムにパワーアップ、パワーダウンするためのスイッチ対して指示できる。同様に、組込みシステムは、照明システム内の個々の照明と結合できる。それぞれの個々の照明の明るさ又は電源状態は、組込みシステムにより制御できる。
【０００７】
セキュリティシステムもまた、組込みシステムを組み込むことができる。組込みシステムは、セキュリティシステムを備える個人セキュリティセンサを制御するために使用できる。例えば、組込みシステムは、それぞれのセキュリティセンサを自動的に強化する制御を与えることができる。組込みシステムは、それぞれの個人セキュリティセンサと結合できる。例えば、組込みシステムは、動作センサと結合できる。動きが検出された場合、組込みシステムは、自動的に個々の動作センサをパワーアップして、動作センサを作動するための制御を与えることができる。動作センサの作動では、動作センサの中に配置されたＬＥＤパワーアップするための指示を与えたり、動作センサの出力部からアラームを出力したり、等を含むことができる。組込みシステムは、ドアを監視するセンサとも結合できる。組込みシステムは、ドアが開けられるか、又は閉じられるとき、作動するためにドアを監視するセンサに指示を与えることができる。同様に、組込みシステムは、窓を監視するセンサと結合できる。窓が開けられるか、閉じられた場合、組込みシステムは、窓のセンサモニタリングを作動するために指示を与えることができる。
【０００８】
ある組み込みシステムは、携帯電話などのワイヤレス製品を制御するのにも使用される。この組込みシステムは、携帯電話のＬＥＤディスプレイをパワーアップするための指示を与えることができる。組込みシステムは、携帯電話に関する音声通知をユーザに与えるために、携帯電話内のオーディオスピーカーもまた作動することができる。
【０００９】
家庭電化製品もまた、組込みシステムを組み込むことができる。家電は、従来の台所で通常使用される電気製品、例えば、ストーブ、冷蔵庫、電子レンジなどを含むことができる。家電はまた、ユーザの健康と快適な暮らしに関する電気製品を含むことができる。例えば、マッサージリクライニングシートは、組込みシステムを組み込むことができる。組込みシステムは、椅子の背もたれ部分を、ユーザの好みに従って自動的にもたれさせるための指示を与えることができる。組込みシステムはまた、リクライニングシート内の振動を、ユーザの好みに従って引き起こす椅子内の振動装置を始動するためにも指示を与えることができる。
【００１０】
家庭内で通常備えられる更なる製品もまた、組込みシステムを組み込むことができる。例えば、コンテナータンクを詰め替えるのに使用される水のレベルを制御するために、トイレ内で組込みシステムを使用できる。空気の流出を制御するためにジェットバス内で組込みシステムを使用できる。
【００１１】
上記のように、組込みシステムは、多くの異系統、資源、製品などを監視又は制御するために使用できる。インターネットとワールドワイドウェブの発展で、組込みシステムは、リモートで制御及び／又は監視されることができるように、ますますインターネットに接続されるようになる。ローカルエリアネットワークや広域ネットワークなどを含むコンピュータネットワークに、他の組込みシステムを接続できる。本明細書で用いられるように、用語「コンピュータネットワーク」（又は、単に「ネットワーク」）は、一連のノードが通信パスによって相互接続されるどのようなシステムをも示す。用語「ノード」は、コンピュータネットワークの一部として接続されるどのような装置をも示す。組込みシステムがネットワークノードであっても良い。ネットワークノードの他の実施例は、コンピュータ、携帯情報端末（ＰＤＡ：Personal Digital Assistants）、携帯電話などを含んでいる。
【００１２】
一部の組込みシステムは、コンピュータネットワークを用いて、他のコンピュータ機器に対してデータ及び／又はサービスを提供できる。多くの異種のサービスを提供できる。サービスのいくつかの実施例は、ある場所から温度データを提供したり、監視データを提供したり、気象情報を提供したり、オーディオストリームを供給したり、ビデオストリーム提供したりすることなどを含んでいる。本明細書で用いられるように、用語「リクエスタ」は、プロバイダからサービスをリクエストするノードを示す。用語「プロバイダ」は、リクエスタにサービスを提供するノードを示す。
【００１３】
コンピュータネットワーク内のノードのいくつかは、マルチキャスト技術を用いて、ネットワーク上の他のノードにメッセージを送信するように構成できる。コンピュータネットワークの文脈では、用語「マルチキャスティング」は、ネットワーク上の１つ以上のノードにメッセージを同時に送信する処理を示す。マルチキャスティングは、ネットワーク内のノードの特定のグループにメッセージを送信するマルチキャスティング手段であるところがブロードキャストとは異なっているが、ブロードキャストは、ネットワーク上の全てのノードにメッセージを送信することを意味する。
【発明の開示】
【発明が解決しようとする課題】
【００１４】
サービスをリクエストするノード（すなわち、リクエスタ）は、マルチキャストによって、ネットワーク内の他のノードにサービスリクエストを送信することができる。しかしながら、いくつかの問題が、サービスをリクエストするためのコンピュータネットワークに関するマルチキャスト技術を行使するための既知の手法で生じている。例えば、コンピュータネットワークは、マルチキャストメッセージを受信及び／又は処理することができない１つ以上の資源制約型ノードを含むかもしれない。リクエスタがマルチキャストによってネットワーク内の他のノードに対するサービスのためのリクエストを送信する場合、これらの資源制約型ノードはサービスリクエストを受信できない（したがって、応答する機会を有している）。
【００１５】
既知の手法を有する別の問題は、マルチキャストによってサービスリクエストを受信する各ノードが、通常、リクエストされたサービスを提供するか否かを判断して、もしそうする場合、サービスリクエストに応答するということである。そのような手法は、リクエストされたサービスを提供しないいくつかのノードが、まだ尚サービスのためのリクエストを処理できるため、一部の状況で非効率的であるかもしれない。
【００１６】
既知の手法を有する更に別の問題は、ネットワーク内の１つ以上のノードが何らかのやり方で不完全であるということが、見つかったかもしれないということである。このことが発生するなら、そのようなノードが直接マルチキャストメッセージを処理するのを阻止することは、望ましいかもしれない。ノード上の適切なマルチキャストプロトコルスタックを止めることによって、これを達成できる。しかしながら、そのようなノードがマルチキャストによってネットワーク上で送信されるサービスリクエストを受信し応答するのを阻止することができるため、そのような手法はいくつかの状況で望ましくないかもしれない。
【００１７】
上記を考慮すると、コンピュータネットワーク上のマルチキャスト技術の使用に関する改良でメリットを実現できる。従って、コンピュータネットワーク上のマルチキャストリクエストの、より多くの効率的処理を容易にするための、いくつかの例のシステム及び方法が、本明細書で開示される。
【課題を解決するための手段】
【００１８】
コンピュータネットワーク上で選択式マルチキャストプロキシを提供するためのシステム及び方法が開示される。例示された実施形態では、選択式マルチキャストプロキシは、マルチキャストメッセージを処理しない複数の非マルチキャストノードの登録を受信する。マルチキャストによってリクエスタからサービスのためのリクエストを受信することに応じて、選択式マルチキャストプロキシは、複数の非マルチキャストノードの中でリクエストされたサービスの１つ以上のプロバイダを特定する。コンピュータネットワーク上の他の非マルチキャストノードにリクエストを送らずに、選択式マルチキャストプロキシは、１つ以上のプロバイダにリクエストを送信する。選択式マルチキャストプロキシが１つ以上のプロバイダからリクエストに対する１つ以上の応答を受信する場合、選択式マルチキャストプロキシは、オリジナルのリクエスタに応答を送信する。選択式マルチキャストプロキシ、リクエスタ、及び複数の非マルチキャストノードは、同じローカルエリアネットワーク内に全て位置することができる。
【００１９】
接続ベースのプロトコルによって、１つ以上のプロバイダにリクエストを送信することができる。あるいはまた、コネクションレスプロトコルによって、１つ以上のプロバイダにリクエストを送信することができる。
【００２０】
リクエストされたサービスの１つ以上プロバイダを特定するために、登記済みノードのデータベースを保持できる。リクエストは、リクエストされたサービスを特定するサービスＩＤを含むことができる。選択式マルチキャストプロキシは、リクエスト内のサービスＩＤを検出し、その後、登記済みノードのデータベース内からサービスＩＤを検索することができる。
【００２１】
複数の非マルチキャストノードは、マルチキャストメッセージ処理ができない少なくとも１つの資源制約型ノードを含むことができる。代わりに又は更に、複数の非マルチキャストノードは、マルチキャストメッセージ処理ができる少なくとも１つのマルチキャスト可能なノードを含むことができる。選択式マルチキャストプロキシは、マルチキャストによってプロキシ公示メッセージを定期的に送信することで、マルチキャスト可能なノードの登録を容易にすることができる。
【発明を実施するための最良の形態】
【００２２】
本発明の例示された実施形態は、以下の説明と添付の特許請求の範囲から、添付図面と共により完全に明らかになる。これらの図面について理解することは、例示された実施形態についてのみ描いていることであり、従って、本発明の範囲の限定であることは考慮されない。本発明の例示された実施形態は、更なる特定性で説明され、添付図面を用いて詳しく述べる。
【００２３】
図面を参照しながら本発明の様々な実施例について説明する。同一参照番号は同一か機能上同様の要素を示す。本明細書において一様に説明し図面に示す本発明の実施例は、広く様々な異なる形態でアレンジし設計することができるであろう。それ故、図面で表される本発明の様々に例示された実施形態の以下のより詳細な説明は、本発明のクレームとしての範囲を限定する意図でなく、単に本発明の実施例を示す意図である。
【００２４】
「例」という言葉は、「実施例、実例、又は図示としての役目をすること」を意味するために本明細書において排他的に使用される。本明細書に「例」として記述されたどんな実施例も、他の実施例を越えて好ましい又は有利であると理解されるために必ずしも必要ではない。図面に実施例の種々の外観を提示するが、特別に示さなかったといって、比例するように必ずしも図面を作成するというわけではない。
【００２５】
本明細書に開示された実施例の多くの特徴を、コンピュータソフトウェア、電子ハードウェア、又は両方の組合せとして、実施することができることが開示されている。一般的に、明確にハードウェアとソフトウェアのこの互換性を示すために、それらの機能性において種々の装置について説明する。そのような機能性がハードウェア又はソフトウェアとして実施されるか否かは、システム全体に課された特殊なアプリケーションと設計制約条件に依存する。当業者は各特殊アプリケーションのために様々な方法で説明した機能性を実施することができるが、本発明の範囲から逸脱して、そのような実施決定を解釈するべきでない。
【００２６】
説明された機能性がコンピュータソフトウェアとして実施される場合、そのようなソフトウェアは、どのようなタイプのコンピュータ命令も含むことができるか、コンピュータ実行可能コードがメモリデバイスの中に位置し及び／又は電子信号としてシステムバス又はネットワーク上を伝送される。本明細書で説明される装置に関連する機能性を実施するソフトウェアは、ただ一つの指示、又は多くの指示からなることができ、異なるプログラムの中といくつかのメモリデバイスにまたがって、様々な異なるコードセグメントに分散できる。
【００２７】
図１は、一実施例によるコンピュータネットワーク上のマルチキャストリクエスト処理のためのシステム１００を示すブロック図である。図１に表現された実施例は、１つのＬＡＮ（Local Area Network）内で実行される。ＬＡＮは、ＬＡＮに関するノードが互いに交信するのを可能にする通信リンクによって接続される複数のノードを含んでいる。
【００２８】
ＬＡＮ内の一部のノードは、他のノードにサービスを提供する。上記のように、リクエスタは、プロバイダからサービスをリクエストするノードである。プロバイダは、リクエスタにサービスを提供するノードである。
【００２９】
図１に示すシステム１００では、リクエスタ１０２は、マルチキャストによって、ＬＡＮ内の他のノードに対するサービス１０６のためのリクエスト１０４を送信する。マルチキャストによってサービスリクエストを送信するトランスポートプロトコルとして、ＵＤＰ（User Datagram Protocol）などのコネクションレスプロトコルを使用できる。そのようなサービスリクエストは、ＵＤＰマルチキャストリクエストと呼ぶことができる。
【００３０】
ＬＡＮ内の一部のノードは、マルチキャストメッセージを処理できない。例えば、ＬＡＮは、マルチキャストメッセージを受信及び／又は処理することができない１つ以上の資源制約型ノードを含むことができる。（例えば、それは処理マルチキャストメッセージのための適切なマルチキャストプロトコルスタックを有しない）。別の例として、ＬＡＮは、マルチキャストメッセージを処理しないように構成されるか通知されているが、少なくとも一時的に、マルチキャストメッセージを処理できる１つ以上のノードを含むことができる。用語「非マルチキャストノード」は、マルチキャストメッセージを処理しないノードについて言及するために、本明細書において使用される。なぜなら、それがマルチキャストメッセージを処理ができないか、又はマルチキャストメッセージを処理しないように構成又は通知されているためである。
【００３１】
示された実施例では、選択式のマルチキャストプロキシ１０８がＬＡＮ上に配置されている。大まかに言えば、選択式マルチキャストプロキシ１０８は、リクエスタ１０２とリクエスト１０４を処理しないＬＡＮの非マルチキャストノードとの間のインタフェースの働きをする。選択式マルチキャストプロキシ１０８によって提供される機能性については、以下で更に詳細に説明する。
【００３２】
ＬＡＮ内の非マルチキャストノードは、選択式マルチキャストプロキシ１０８に登録する。非マルチキャストノードが選択式マルチキャストプロキシ１０８に登録できるいくつかの方法の例について、以下で説明する。選択式マルチキャストプロキシ１０８は、登録された非マルチキャストノードの情報１１０を保持する。
【００３３】
選択式マルチキャストプロキシ１０８が特定のサービス１０６のためのリクエスト１０４を受信するとき、登録した全ての非マルチキャストノードに、単にサービスリクエスト１０４を転送しない。むしろ、特定のサービス１０６のためのリクエスト１０４を受信するのに応答して、選択式マルチキャストプロキシ１０８は、リクエストされているサービス１０６を提供できる登記済みの非マルチキャストノードが（もしあれば）、どれなのかを判断する。言い換えれば、選択式マルチキャストプロキシ１０８は、登録した非マルチキャストノードの中からリクエストされているサービス１０６の１つ以上のプロバイダ１１２を特定する。選択式マルチキャストプロキシ１０８が、リクエストされているサービス１０６のプロバイダ１１２を特定することができるいくつかの方法の例について、以下で論じる。
【００３４】
サービスリクエスト１０４は、サービス１０６の特定のプロバイダＩＤ１１６を有するプロバイダ１１２だけが、リクエスト１０４を提供するべきであると指定できる。あるいはまた、サービスリクエスト１０４は、全てのサービス１０６のプロバイダ１１２がリクエスト１０４を提供するべきであると指定できる。他に採りうる実施例では、選択式マルチキャストプロキシ１０８は、同じプロバイダＩＤ１１６でリクエストされているサービス１０６の１つ以上のプロバイダ１１２を特定できる。これが生じる場合、選択式マルチキャストプロキシ１０８は、同じプロバイダＩＤ１１６のこれらのプロバイダの中から１つのプロバイダ１１２を選ぶことができる。この選択をするために、種々のアルゴリズムを使用できる。
【００３５】
表わされた実施例では、選択式マルチキャストプロキシ１０８は、リクエストされているサービス１０６の１つ以上のプロバイダ１１２を一旦特定すると、リクエスト１０４をそのプロバイダ１１２に転送する。接続（例えば、ＴＣＰ／ＩＰ接続、シリアル接続など）が、選択式マルチキャストプロキシ１０８と特定のプロバイダ１１２との間で確立されている場合、その後、選択式マルチキャストプロキシ１０８は、この接続を介してプロバイダ１１２にサービスリクエスト１０４を送信することができる。しかしながら、接続が選択式マルチキャストプロキシ１０８と特定されたプロバイダ１１２との間で確立されるのは、必ずしも必要でない。例えば、選択式マルチキャストプロキシ１０８は、ＵＤＰユニキャストなどのようなコネクションレスプロトコルによって、プロバイダ１１２にサービスリクエスト１０４を送信することができる。
【００３６】
有利なことには、選択式マルチキャストプロキシ１０８は、特定されたプロバイダ１１２にだけでなく、他の登記済みの非マルチキャストノードに（又はＬＡＮの中の他のノードに）にサービスリクエスト１０４を送信するように構成できる。従って、サービス１０６のためのリクエスト１０４を処理するために、リクエストされているサービス１０６を提供しないノードは必要でない。その結果、これらのノードでコンピュータの資源を節約する。
【００３７】
リクエストされているサービス１０６の特定されたプロバイダ１１２は、選択式マルチキャストプロキシ１０８からサービスリクエスト１０４を受信し、それに応答する。プロバイダ１１２は、選択式マルチキャストプロキシ１０８とプロバイダ１１２との間の接続によって、又はコネクションレスプロトコルによって、もとの選択式マルチキャストプロキシ１０８にサービスリクエスト１０４に応答１１４を返信することができる。選択式マルチキャストプロキシ１０８は、ＵＤＰユニキャストなどのようなコネクションレスプロトコルを使用して、プロバイダ１１２から、もとのオリジナルのリクエスタ１０２まで受信するどのような応答１１４も転送できる。
【００３８】
図２は、図１に表わされた実施例における、選択式マルチキャストプロキシ１０８の動作を示すフローチャートである。図示された方法２００のステップ２０２において、選択式マルチキャストプロキシ１０８は、ＬＡＮ内の１つ以上の非マルチキャストノードの登録を受信する。選択式マルチキャストプロキシ１０８に登録する非マルチキャストノードは、マルチキャストメッセージを受信及び／又は処理することができない１つ以上の資源制約型ノードを含むことができる。代わりに又は更に、登記済み非マルチキャストノードは、マルチキャストメッセージを処理しないように構成される又は通知されているが、少なくとも一時的にマルチキャストメッセージ処理ができる１つ以上のノードを含むことができる。
【００３９】
ステップ２０４において、選択式マルチキャストプロキシ１０８は、マルチキャストによって、ＬＡＮ内のリクエスタ１０２からサービス１０６のためのリクエスト１０４を受信する。選択式マルチキャストプロキシ１０８に登録した１つ以上の非マルチキャストノードは、リクエストされたサービス１０６を提供できるであろう。ステップ２０６において、選択式マルチキャストプロキシ１０８は、リクエストされたサービス１０６を提供できる登記済み非マルチキャストノードがどれなのかを判断する（もしあれば）。言い換えれば、選択式マルチキャストプロキシ１０８は、登録した非マルチキャストノード１１２の中からリクエストされたサービス１０６のプロバイダ１１２を特定する。選択式マルチキャストプロキシ１０８が、リクエストされたサービス１０６のプロバイダ１１２を特定する、いくつかの方法の例について以下で論じる。
【００４０】
ステップ２０６において、選択式マルチキャストプロキシ１０８が、リクエストされたサービス１０６を提供できる登記済み非マルチキャストノードがないと判断した場合、その後、方法２００は終了する。選択式マルチキャストプロキシ１０８が、リクエストされたサービス１０６の１つ以上プロバイダを特定した場合、その後、ステップ２１２において、選択式マルチキャストプロキシは、サービスリクエスト１０４をプロバイダ１１２に転送する。選択式マルチキャストプロキシ１０８は、選択式マルチキャストプロキシ１０８とプロバイダ１１２との間で確立された１つ以上の接続を介して、プロバイダ１１２にリクエスト１０４を送信することができる。あるいはまた、選択式マルチキャストプロキシ１０８は、ＵＤＰユニキャストなどのようなコネクションレスプロトコルによって、プロバイダ１１２にリクエスト１０４を送信することができる。
【００４１】
プロバイダ１１２は、サービスリクエスト１０４への応答１１４を、もとの選択式マルチキャストプロキシ１０８に送信することによって、サービスリクエスト１０４に応じることができる。ステップ２１４において、選択式マルチキャストプロキシ１０８は、プロバイダ１１２からサービスリクエスト１０４への１つ以上の応答１１４を受信する。ステップ２１６において、選択式マルチキャストプロキシ１０８は、オリジナルのリクエスタ１０２への応答１１４を転送する。これは、ＵＤＰユニキャストなどのコネクションレスプロトコルに従って実行できる。
【００４２】
図３は、一実施例に従って構成される選択式マルチキャストプロキシ３０８内の種々の装置を示すブロック図である。図示された装置は、ＬＡＮ内でリクエスタから受信されたサービスリクエスト３０４処理の機能を実施することができる。
【００４３】
図示されているように、選択式マルチキャストプロキシ３０８は、マルチキャストサーバ３１６とリクエストプロセッサ３１８を含むことができる。マルチキャストサーバ３１６は、マルチキャストパケットのための特定のマルチキャストアドレスとポートを聞き、リクエストプロセッサ３１８へのリクエスト３０４として受信されたパケットを渡すために構成できる。
【００４４】
表わされた実施例では、選択式マルチキャストプロキシ３０８内のリクエストプロセッサ３１８は、登記済みノードのデータベース３２０にアクセスする手段を持っている。データベース３２０は、選択式マルチキャストプロキシ３０８の不可欠の、又は、外部のモジュールであっても良い。データベース３２０は、選択式マルチキャストプロキシ３０８に登録したノードのためのノードＩＤ３２２を含んでいる。各ノードＩＤ３２２は、１つ以上のサービスＩＤ３２４に関連する。サービスＩＤ３２４は、ノードによって提供できる特定のサービスを特定する情報である。表わされた実施例では、サービスＩＤ３２４がノードＩＤ３２２と関連するとき、これは、ノードＩＤ３２２に対応するノードが、サービスＩＤ３２４に対応するサービスを提供できることを意味する。
【００４５】
図示されているように、特定のサービスのためのリクエスト３０４は、リクエストされたサービスを特定するサービスＩＤ３２４を含んでいる。表わされた実施例では、特定のサービスのためのリクエスト３０４が、リクエストプロセッサ３１８を渡されるとき、解析モジュール３２６は、リクエスト３０４内のサービスＩＤ３２４を検出する。サービスＩＤ３２４は、検索モジュール３２８に渡される。検索モジュール３２８は、登記済みノードのデータベース３２０内からサービスＩＤ３２４を検索する。検索モジュール３２８がサービスＩＤ３２４に関連するノードＩＤ３２２を検出する場合、その後、対応するノードは、リクエストされたサービスのプロバイダとして選択される。検索モジュール３２８が、サービスＩＤ３２４に対応する１つ以上の同じノードＩＤ３２２を判定した場合、これは、リクエストされたサービスの同じノードＩＤ３２２とともに１つ以上の潜在的プロバイダが存在することを意味する。これが生じた場合、選択モジュール３３０は、特定されているのと同じ潜在的プロバイダからリクエストされているサービスのプロバイダを選択する。
【００４６】
表わされた実施例では、リクエストプロセッサ３１８が、リクエストされているサービスのプロバイダを一旦特定すると、リクエスト３０４を通信モジュール３３２に渡す。リクエストプロセッサ３１８はまた、通信モジュール３３２への特定されたプロバイダのノードＩＤ３２２も渡すことができる。ＴＣＰ／ＩＰなどのコネクション型プロトコルに従って動作するために、通信モジュール３３２を構成できる。代わりに又は更に、ＵＤＰなどのようなコネクションレスプロトコルに従って動作するために、通信モジュール３３２は構成できる。通信モジュール３３２がリクエストプロセッサ３１８からサービスリクエスト３０４とプロバイダのノードＩＤ３２２をいったん受信すると、通信モジュール３３２は、リクエストされているサービスのプロバイダにリクエスト３０４を送信することができる。
【００４７】
選択式マルチキャストプロキシが、非マルチキャストノードのどれが、リクエストされているサービスを提供できるかをどのように判断できるかに関する付加情報は、発明者Bryant Easthamによる "Content-Based Routing of Data from a Provider to a Requestor" で権利を与えられた米国特許6,954,798号に記載されている。この米国特許全体は、ここに参考として援用する。
【００４８】
以上に簡潔に論じたように、選択式マルチキャストプロキシは、非マルチキャストノードの登録を受信するために構成できる。言い換えれば、選択式マルチキャストプロキシが、それらに代わってマルチキャストリクエストを受信するように、ＬＡＮ内の非マルチキャストノードは、選択式マルチキャストプロキシに登録することができる。選択式マルチキャストプロキシに登録する非マルチキャストノードは、マルチキャストメッセージ処理ができる１つ以上のノードを含むことができる。（マルチキャストメッセージ処理ができるノードを、本明細書では「マルチキャストできるノード」と呼ぶことができる。）マルチキャストできるノードのためのマルチキャストプロキシとして機能するように、選択式マルチキャストプロキシを構成できる様々な理由がある。例えば、ＬＡＮ内のマルチキャストできるノードが、何らかの方法で不完全である場合（例えば、それには「バグ」がある）、ＬＡＮ管理者は、欠陥が修復されるまで、マルチキャストメッセージ処理から直接ノードを防ぎたいと考えている。この場合、選択式マルチキャストプロキシ３０８は、欠陥のあるノードの問題のある状況に介入し無効にできる。
【００４９】
マルチキャストプロキシとしてマルチキャストできるノードを代表して機能することに加えて、選択式マルチキャストプロキシは、マルチキャストリクエスト処理ができない資源制約的なノードのための、マルチキャストプロキシとしてもまた機能できる。これは、それらのために代理された非マルチキャストリクエストを用いて、サービスリクエストに応答するために制約的なノード資源を容認する。さもなければ、それらはマルチキャストを処理できないために、それらのリクエストを受信できないであろう。
【００５０】
図４は、一実施例に従って構成される選択式マルチキャストプロキシ４０８内の種々の追加の装置を示すブロック図であり、図示された装置が、非マルチキャストノードの登録の受信の機能を実施することができる。表わされた実施例において、非マルチキャストノードは、マルチキャストリクエストを処理できない制約されたノードの資源である、及び／又はマルチキャストリクエストを処理しないように通知又は構成されたマルチキャストリクエストを処理できるノードであるかもしれない。
【００５１】
示されているように、選択式マルチキャストプロキシ４０８は、接続モジュール４３４を含むことができる。接続モジュール４３４は、ＬＡＮにおいて非マルチキャストノードに接続を確立するために構成できる。一部の実施例では、ＴＣＰ／ＩＰ接続を確立するために、接続モジュール４３４を構成できる。例えば、接続モジュール４３４の機能は、ＬＡＮにおいて他のノードとＴＣＰ／ＩＰ接続を確立するために構成されるＴＣＰ／ＩＰプロトコルスタックにより、実施することができる。代わりに又は更に、接続モジュール４３４は、ＬＡＮにおける非マルチキャストノードに対して、シリアル接続などのような他の種類の接続を確立するために構成できる。
【００５２】
選択式マルチキャストプロキシ４０８はまた、ユーザインタフェース４３６も含むことができる。選択式マルチキャストプロキシ４０８のユーザは、ユーザインタフェース４３６を介して、選択式マルチキャストプロキシ４０８と対話し、指示を与えることができる。例えば、ＬＡＮ管理者は、提供されるユーザインタフェース４３６を介して、選択式マルチキャストプロキシ４０８がＬＡＮにおける非マルチキャストノードに１つ以上の接続を開くように指示できる。
【００５３】
選択式マルチキャストプロキシ４０８はまた、プロキシ公示モジュール４３８も含むことができる。プロキシ公示モジュール４３８は、マルチキャストによって、ＬＡＮに関する１つ以上のマルチキャストグループに、定期的にプロキシ公示メッセージを送信するように構成できる。プロキシ公示メッセージは、選択式マルチキャストプロキシ４０８が存在するＬＡＮにおいてマルチキャストできるノードに通知するのに役立つことができる。例えば、以下で更に詳細に説明するように、プロキシ公示メッセージは、マルチキャストメッセージ処理を停止するための指示として、ＬＡＮにおけるマルチキャストできるノードによって解釈されることができる。
【００５４】
図５は、一実施例による接続モジュール４３４、ユーザインタフェース４３６、及びプロキシ公示モジュール４３８の動作を示すフローチャートである。図５に示されている方法５００は、選択式マルチキャストプロキシ４０８にマルチキャストできるノードの登録を容易にするために実行できる。
【００５５】
ステップ５０２において、選択式マルチキャストプロキシ４０８は、ユーザインタフェース４３６又は設定によって、マルチキャストできるノードの接続を開くために、指示（例えば、ＬＡＮ管理者からの）を受信する。ステップ５０４において、ステップ５０２で受信された指示に応答して、接続モジュール４３４は、特定のマルチキャストできるノードの接続を開く。他の実施例では、マルチキャストできるノードは、プログラムされるか、構成されるか、又は選択式マルチキャストプロキシ３０８の通信モジュール３３２に接続するように通知されることができる。
【００５６】
ステップ５０６において、プロキシ公示モジュール４３８は、マルチキャストによって、ステップ５０２で指定されたマルチキャストできるノードを含むマルチキャストグループに、プロキシ公示メッセージを送信する。プロキシ公示メッセージは、選択式マルチキャストプロキシ４０８のアドレスを含むことができる。プロキシ公示メッセージを受信することに応じて、マルチキャストできるノードは、選択式マルチキャストプロキシ４０８（すなわち、プロキシ公示メッセージで参照されるノード）に現在接続されるか否かを判断できる。現在選択式マルチキャストプロキシ４０８に接続される場合、マルチキャストできるノードは、応答において、マルチキャストメッセージの処理を停止すべきである。例えば、マルチキャストできるノードは、マルチキャストプロトコルスタックを終了することができる。あるいはまた、マルチキャストできるノードは、マルチキャストプロトコルスタックを終了しないで、単にマルチキャストメッセージを無視し始めることができる。マルチキャストできるノードが、現在選択式マルチキャストプロキシ４０８に接続されない場合、マルチキャストできるノードは、選択式マルチキャストプロキシ４０８に接続することとマルチキャストメッセージ処理を停止することを選択することができる。マルチキャストできるノードと選択式マルチキャストプロキシ４０８との間の接続が、あるポイントで終了された場合、その後、マルチキャストできるノードは、マルチキャストメッセージ処理を再開できる。
【００５７】
図５に表わされた方法５００では、プロキシ公示メッセージを送信するステップは、マルチキャストできるノードの接続を開くステップの後に生じることが示されている。しかしながら、一部の実施例では、これらのステップはこの順序で生じることはできないかも知れない。例えば、一部の実施例では、プロキシ公示モジュール４３８は、定期的にプロキシ公示メッセージをＬＡＮに送信するように構成できる。選択式マルチキャストプロキシ４０８がマルチキャストできるノードとの接続を開くとき、マルチキャストできるノードは、次にスケジュールされたプロキシ公示メッセージが送信されるまで、マルチキャストメッセージを受信し処理し続けることができる。
【００５８】
前述のとおり、ネットワーク内のノードは、１つ以上の組込みシステムを含むことができる。本システム及び方法は、組込みシステムが他のコンピュータ機器に対してデータを提供する及び／又はサービスをするコンピュータネットワークで実施することできる。図６は、一実施例に従って構成される組込みシステム６０２で用いることができる構成機器のブロック図である。ＣＰＵ（Central Processing Unit）６０８又はプロセッサは、その他の装置（装置はバス６１０を介してＣＰＵ６０８と結合される）を含んでいる組込みシステム６０２の動作を制御するために提供される。ＣＰＵ６０８は、マイクロプロセッサ、マイクロコントローラ、デジタルシグナルプロセッサ又は当技術分野で既知のその他の機器として供されることができる。ＣＰＵ６０８は、メモリ内に保存されたプログラムコードに基づいて、論理的及び算術演算を実行する。所定の実施例では、メモリ６１４は、ＣＰＵ６０８を含むオンボードでメモリであっても良い。例えば、マイクロコントローラは、しばしばオンボードメモリの所定の量を含む。
【００５９】
組込みシステム６０２はまた、ネットワークインタフェース６１２も含むことができる。ネットワークインタフェース６１２は、組込みシステム６０２を、ネットワークに接続させる。ネットワークは、ポケベルのネットワーク、セルラネットワーク、グローバルな通信ネットワーク、インターネット、コンピュータネットワーク、電話網であっても良い。ネットワークインタフェース６１２は、標準プロトコルに従って、適用すべきネットワークのために動作する。
【００６０】
組込みシステム６０２はまた、メモリ６１４も含むことができる。メモリ６１４は、一時的なデータを格納するためのＲＡＭ（Random Access Memory）を含むことができる。代わりに又は更に、メモリ６１４は、一定のコードやコンフィギュレーションデータのような、より恒久的なデータを格納するためのＲＯＭ（Read-Only Memory）を含むことができる。メモリ６１４は、ハードディスクドライブなどの磁気記憶装置としてもまた、供されることができる。メモリ６１４は、電子的情報を格納できるどのようなタイプの電子装置であっても良い。
【００６１】
組込みシステム６０２はまた、１つ以上の通信ポート６１６も含むことができる。通信ポートは他の装置との通信を容易にする。組込みシステム６０２はまた、キーボード、マウス、ジョイスティック、タッチスクリーン、モニタ、スピーカー、プリンタなどのような入出力装置６１８も含むことができる。
【００６２】
もちろん、図６はコンピュータシステム６０１の１つの可能な構造だけを示している。他の種々のアーキテクチャと装置を利用できる。
【００６３】
本システム及び方法は、様々な場面に使用することができる。図７は本システム及び方法を実施することができるシステムの１つの実施例を示している。図７は、照明コントローラシステム７０８を含む照明システム７００の１つの実施例を示すブロック図である。図７の照明システム７００は、家庭内の種々の部屋に組み込むことができる。図示したように、システム７００は、部屋（Ａ）７０２、部屋（Ｂ）７０４、及び部屋（Ｃ）７０６を含んでいる。図７では３つの部屋が示されているが、システム７００は、家庭、居住、又は他の環境の中で、どのような数及び種類の部屋でも導入できる。
【００６４】
照明コントローラシステム７０８は、システム７００内で、追加組込みシステム及び装置を監視し、制御できる。１つの実施例において、部屋（Ａ）７０２と部屋（Ｂ）７０４は、それぞれスイッチ装置７１４、７１８を含んでいる。スイッチ装置７１４、７１８は、セカンダリ組込みシステム７１６、７２０もまた含むことができる。セカンダリ組込みシステム７１６、７２０は、照明コントローラシステム７０８からの指示を受信できる。セカンダリ組込みシステム７１６、７２０は、その後これらの指示を実行できる。その指示は、種々の照明装置７１０、７１２、７２２、７２４の電源を入れたり、電源を切ったりすることを含むことができる。その指示は、種々の照明装置７１０、７１２、７２２、７２４の明るさを薄暗くしたり、明るさを増強したりすることを含むことができる。その指示は、種々のパターンの照明装置７１０、７１２、７２２、７２４の明るさをアレンジすることを更に含むことができる。セカンダリ組込みシステム７１６、７２０は、部屋（Ａ）７０２と部屋（Ｂ）７０４にある各照明装置７１０、７１２、７２２、７２４を監視して制御するために、照明コントローラシステム７０８を円滑にする。
【００６５】
照明コントローラシステム７０８はまた、描かれた部屋（Ｃ）７０６にセカンダリ組込みシステム７２８を含む照明装置７２６に直接指示を与えるかもしれない。照明コントローラシステム７０８は、個別の照明装置７２６をパワーアップ又はパワーダウンするために、セカンダリ組込みシステム７２８に指示することができる。同様に、照明コントローラシステム７０８から受信された指示は、個々の照明装置７２６の明るさを薄暗くしたり、明るさを増強したりすることを含むことができる。
【００６６】
照明コントローラシステム７０８はまた、システム７００内の個々の照明装置７３０及び７３２に対して、監視し、直接指示を与えることができる。これらの指示は、以前に説明したものと同様の指示を含むことができる。
【００６７】
図８は、本発明の本システム及び方法を実施することができるシステムの追加実施例である。図８は、セキュリティシステム８００を示すブロック図である。描かれた実施例におけるセキュリティシステム８００は、部屋（Ａ）８０２、部屋（Ｂ）８０４、部屋（Ｃ）８０６で実施される。これらの部屋は、家庭又は他の閉じられた環境の範囲にあってもよい。システム８００はまた、部屋（Ａ）８０２、部屋（Ｂ）８０４、及び部屋（Ｃ）８０６がそれぞれ領域又は境界を表す開かれた環境で実施することもできる。
【００６８】
システム８００は、セキュリティコントローラシステム８０８を含んでいる。セキュリティコントローラシステム８０８は、システム８００内の種々の装置を監視し、情報を受信する。例えば、動作センサ８１４、８１８は、セカンダリ組込みシステム８１６を含むことができる。動きがセカンダリ組込みシステム８１６、８２０を介して検出されるとき、動作センサ８１４、８１８は、動きのために即座に空間を監視し、セキュリティコントローラシステム８０８に警告することができる。セキュリティコントローラシステム８０８はまた、システム８００内の種々の装置にも指示を与えることができる。例えば、セキュリティコントローラシステム８０８は、窓センサ８１０、８２２とドアセンサ８１２、８２４を、パワーアップ又はパワーダウンするために、セカンダリ組込みシステム８１６、８２０へ指示を供給できる。１つの実施例において、セカンダリ組込みシステム８１６、８２０は、窓センサ８１０、８２２が窓の動きを検出した場合に、セキュリティコントローラシステム８０８に通知する。同様に、セカンダリ組込みシステム８１６、８２０は、ドアセンサ８１２、８２４がドアの動きを検出した場合に、セキュリティコントローラシステム８０８に通知する。セカンダリ組込みシステム８１６、８２０は、動作センサ８１４、８１８内に設置されたＬＥＤ（図示せず）を作動させるために、動作センサ８１４、８１８に対して指示できる。
【００６９】
セキュリティコントローラシステム８０８はまた、システム８００内の個々の装置を監視し、直接指示を与えることができる。例えば、セキュリティコントローラシステム８０８は、動作センサ８３０又は窓のセンサ８３２を監視し、パワーアップ又はパワーダウンするための指示を与えることができる。セキュリティコントローラシステム８０８はまた、センサ８３０及び８３２内でＬＥＤ（図示せず）又はオーディオの警告通知を作動させるために、動作センサ８３０と窓のセンサ８３２に対して指示もできる。
【００７０】
それぞれの個々の装置はまた、セカンダリ組込みシステムを含むことができるシステム８００を備える。例えば、図８はセカンダリ組込みシステム８２８を含むドアセンサ８２６を示している。セキュリティコントローラシステム８０８は、以前説明したのと同じような方法で、セカンダリ組込みシステム８２８を監視し、指示を与えることができる。
【００７１】
図９は、ホームコントロールシステム９００の１つの実施例を示すブロック図である。ホームコントロールシステム９００は、照明システム７００、セキュリティシステム８００などの種々のシステムのモニタリングを容易にするホームコントローラ９０８を含んでいる。ホームコントロールシステム９００は、ユーザに、１つ以上の組込みシステムを通して、種々の装置とシステムを制御することを可能にしている。１つの実施例では、ホームコントローラシステム９０８は、以前に図７及び図８に関連して説明したのと同じ方法で、情報を監視して提供する。描かれている実施例では、ホームコントローラ９０８は、セカンダリ組込みシステム９２０を介して暖房装置９２４に指示を与える。暖房装置９２４は、居住場所又はオフィスで通常備えられる暖炉又は他の加熱装置を含むことができる。ホームコントローラシステム９０８は、セカンダリ組込みシステム９２０を介して、暖房装置９２４をパワーアップ又はパワーダウンするための指示を与えることができる。
【００７２】
同様に、ホームコントローラ９０８は、ホームコントロールシステム９００内の冷房装置９３０などの装置を監視して、直接指示を与えることができる。冷房装置９３０は、居住場所又はオフィスで通常備えられるエアコン又は他の冷却装置を含むことができる。セントラルホームコントローラ９０８は、セントラル組込みシステム９０８によってコントロールされた計測温度に応じてパワーアップ又はパワーダウンするように、冷房装置９３０に指示できる。ホームコントローラシステム９０８は、以前に図７及び図８に関連して説明したのと同じ方法で機能する。
【００７３】
さまざまな異なった技術と手法のどれかを使用することで、情報と信号を表すことができる。データ、指示、コマンド、情報、信号、ビット、シンボル、及びチップは、例えば、電圧、電流、電磁波、磁場又は粒子、光波場又は粒子、又はそれのどのような組合せによって表すことができる上記の説明を通して参照できる。
【００７４】
本明細書に開示された実施例に関して説明した、種々の図示した論理ブロック、モジュール、回路、及びアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、又は両方の組合せとして実施することができる。明確にハードウェアとソフトウェアのこの互換性を図示するために、種々の図示された装置、ブロック、モジュール、回路、及びステップは、一般的に上記の機能性に関して説明されている。そのような機能性がハードウェア又はソフトウェアとして実施されるか否かは、システム全体に課された特殊用途と設計制約条件に依存する。当業者は、各特殊用途のための様々な方法における説明された機能性を実施することができるが、本発明の範囲からの逸脱しながら、そのような実施判断を解釈するべきでない。
【００７５】
本明細書に開示された実施例に関して説明された図示した論理ブロック、モジュール、及び回路は、汎用プロセッサ、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array signal）又は他のプログラマブル論理デバイス、離散的なゲート又はトランジスタロジック、離散的なハードウェア機器、又は本明細書に記載された機能を実行するように設計されたどのような組合せでも、実施又は実行できる。汎用プロセッサは、マイクロプロセッサであっても良いが、代替として、プロセッサは、どのような従来のプロセッサ、コントローラ、マイクロコントローラ、又は状態マシンであっても良い。プロセッサ又は、コンピュータ機器の組合せ、例えば、ＤＳＰとマイクロプロセッサ、複数のマイクロプロセッサ、ＤＳＰコアに関連した１つ以上のマイクロプロセッサ、又はいかなる他のそのような形態の組合せとしても実施することができる。
【００７６】
本明細書に開示された実施例に関して説明された方法又はアルゴリズムのステップは、直接的にハードウェアで、プロセッサにより実行されるソフトウェアモジュールで、又は２つの組合せで、具体化されることができる。ソフトウェアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ−ＲＯＭ、又は当技術分野で既知の記憶媒体のいかなる他の形式にも常駐できる。例示された記憶媒体は、プロセッサが記憶媒体から情報を読み込んで、情報を書書き込むことができるように、プロセッサと結合される。別の方法では、記憶媒体はプロセッサに不可欠であろう。プロセッサと記憶媒体は、ＡＳＩＣに常駐できる。ＡＳＩＣは、利用者端末に常駐できる。別の方法では、プロセッサと記憶媒体は、個別装置として利用者端末に常駐できる。
【００７７】
本明細書に開示された方法は、説明された方法を遂行するために、１つ以上のステップ又は動作を具備する。方法ステップ及び／又は動作は、本発明の範囲から逸脱しないで、互いに交換できる。言い換えれば、実施例の適切な動作のために、ステップ又は動作に特定の順序を要しない限り、特定のステップ及び／又は動作の順序及び／又は行使は、本発明の範囲を逸脱しないで変更できる。
【００７８】
本発明の特定の実施例とアプリケーションを図示して説明したが、本発明が本明細書に開示された正確な形態と装置に限定されないことを理解されるべきである。当分野の当業者にとって明白な種々の修正、変更、及びバリエーションは、本発明の趣旨と範囲から逸脱しないで、本明細書に開示した本発明のアレンジ、操作、及び方法やシステムの詳細を成しうることができるであろう。
【産業上の利用可能性】
【００７９】
本発明は組込みシステムに適用可能である。
【図面の簡単な説明】
【００８０】
【図１】一実施例によるコンピュータネットワーク上のマルチキャストリクエスト処理のためのシステムを示すブロック図である。
【図２】図１に示した実施例における選択式マルチキャストプロキシの動作を示すフローチャートである。
【図３】一実施例によって構成される選択式マルチキャストプロキシ内の種々の装置を示すブロック図である。
【図４】一実施例によって構成される選択式マルチキャストプロキシ内の種々の追加する装置を示すブロック図である。
【図５】一実施例によって図４に示された装置の動作を示すフローチャートである。
【図６】一実施例によって構成される組込みシステムで用いることができる構成機器のブロック図である。
【図７】本システム及び方法を実施することができる照明システムの一例を示す。
【図８】本システム及び方法を実施することができるセキュリティシステムの一例を示す。
【図９】本システム及び方法を実施することができるホームコントローラシステムの一例を示す。
【手続補正書】
【提出日】平成19年1月30日(2007.1.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１
【補正方法】変更
【補正の内容】
【請求項１】
リクエスタとプロバイダと選択式マルチキャストプロキシとを備えるコンピュータネットワーク上のマルチキャストリクエスト処理のための方法であって、
前記選択式マルチキャストプロキシが、マルチキャストメッセージを処理しない複数の非マルチキャストノードの登録を受信し、複数の非マルチキャストノードを登録し、
前記選択式マルチキャストプロキシが、マルチキャストによって、前記リクエスタからサービスのためのリクエストを受信し、
前記選択式マルチキャストプロキシが、前記リクエストされているサービスの１つ以上のプロバイダを、前記登録した前記複数の非マルチキャストノードの中から特定し、
前記コンピュータネットワーク上の他の非マルチキャストノードに前記リクエストを送らず、前記特定した１つ以上のプロバイダに前記リクエストを送信すること
を含むことを特徴とする方法。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項２
【補正方法】変更
【補正の内容】
【請求項２】
前記選択式マルチキャストプロキシが、前記１つ以上のプロバイダからの前記リクエストへの少なくとも１つの応答を受信し、
前記選択式マルチキャストプロキシが、前記少なくとも１つの応答を前記リクエスタに送信すること
を更に含むことを特徴とする請求項１記載の方法。
【手続補正３】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項３
【補正方法】変更
【補正の内容】
【請求項３】
前記選択式マルチキャストプロキシにより、前記リクエストは、接続ベースのプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１記載の方法。
【手続補正４】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項４
【補正方法】変更
【補正の内容】
【請求項４】
前記選択式マルチキャストプロキシにより、前記リクエストは、コネクションレスプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１記載の方法。
【手続補正５】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項５
【補正方法】変更
【補正の内容】
【請求項５】
前記選択式マルチキャストプロキシによる前記１つ以上のプロバイダを特定する処理は、
前記リクエストされているサービスを特定する前記リクエストの中からサービスＩＤを検出し、
前記選択式マルチキャストプロキシが、登記済みのノードのデータベースの中から前記サービスＩＤを検索すること
を含むことを特徴とする請求項１記載の方法。
【手続補正６】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項６
【補正方法】変更
【補正の内容】
【請求項６】
請求項１記載の方法は、前記選択式マルチキャストプロキシが、同じノードＩＤの複数の潜在的プロバイダを特定する処理を更に含み、
前記選択式マルチキャストプロキシが前記プロバイダを特定する処理は、前記同じノードＩＤの前記複数の潜在的プロバイダの中から前記プロバイダを選択することを含むこと
を特徴とする請求項１記載の方法。
【手続補正７】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項８
【補正方法】変更
【補正の内容】
【請求項８】
前記選択式マルチキャストプロキシによる、少なくとも１つのマルチキャストできるノードの登録の受信処理は、マルチキャストできるノードを含むマルチキャストグループにマルチキャストによってプロキシ公示メッセージを定期的に送信し、
マルチキャストできるノードが、前記選択式マルチキャストプロキシに接続し、且つマルチキャストメッセージ処理を停止することを選択すること
を特徴とする請求項７記載の方法。
【手続補正８】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１２
【補正方法】変更
【補正の内容】
【請求項１２】
リクエスタとプロバイダと選択式マルチキャストプロキシとを備えるコンピュータネットワーク上でマルチキャストリクエストを処理するための方法を実行するために構成されるコンピュータシステムであって、
プロセッサと、
前記プロセッサを有する電子通信におけるメモリと、
メモリに格納された指示とを備え、
方法を実行するために実行可能である前記指示は、
前記選択式マルチキャストプロキシがマルチキャストメッセージを処理しない複数の非マルチキャストノードの登録を受信し、
前記選択式マルチキャストプロキシがマルチキャストによってリクエスタからサービスのためのリクエストを受信し、
前記選択式マルチキャストプロキシが前記複数の非マルチキャストノードの中から前記リクエストされているサービスの１つ以上のプロバイダを特定し、
前記選択式マルチキャストプロキシが前記コンピュータネットワーク上で他の非マルチキャストノードに前記リクエストを送らず、前記１つ以上のプロバイダにリクエストを送信することを含むこと
を特徴とするコンピュータシステム。
【手続補正９】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１３
【補正方法】変更
【補正の内容】
【請求項１３】
前記方法は、
前記選択式マルチキャストプロキシが前記１つ以上のプロバイダから前記リクエストへの少なくとも１つの応答を受信し、
前記選択式マルチキャストプロキシが前記少なくとも１つの応答を前記リクエスタに送信すること
を特徴とする請求項１２記載のコンピュータシステム。
【手続補正１０】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１４
【補正方法】変更
【補正の内容】
【請求項１４】
前記選択式マルチキャストプロキシにより、前記リクエストは、接続ベースのプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１２記載のコンピュータシステム。
【手続補正１１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１５
【補正方法】変更
【補正の内容】
【請求項１５】
前記選択式マルチキャストプロキシにより、前記リクエストは、コネクションレスプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１２記載のコンピュータシステム。
【手続補正１２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１６
【補正方法】変更
【補正の内容】
【請求項１６】
前記１つ以上のプロバイダの特定処理は、
前記選択式マルチキャストプロキシが前記リクエストされているサービスを特定する前記リクエストの中からサービスＩＤを検出し、
前記選択式マルチキャストプロキシが登記済みのノードのデータベースの中から前記サービスＩＤを検索すること
を特徴とする請求項１２記載のコンピュータシステム。
【手続補正１３】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１７
【補正方法】変更
【補正の内容】
【請求項１７】
リクエスタとプロバイダと選択式マルチキャストプロキシとを備えるコンピュータネットワーク上で、マルチキャストリクエスト処理のための方法を実行するために実行可能な指示を具備するコンピュータ読み込み可能な媒体であって、前記方法は、
前記選択式マルチキャストプロキシが、マルチキャストメッセージを処理しない複数の非マルチキャストノードの登録を受信し、
前記選択式マルチキャストプロキシが、マルチキャストによって、リクエスタからサービスのためのリクエストを受信し、
前記選択式マルチキャストプロキシが、前記複数の非マルチキャストノードの中から前記リクエストされているサービスの１つ以上のプロバイダを特定し、
前記選択式マルチキャストプロキシが、前記コンピュータネットワーク上で、他の非マルチキャストノードに前記リクエストを送信せず、前記１つ以上のプロバイダに前記リクエストを送信すること
を特徴とするコンピュータ読み込み可能な媒体。
【手続補正１４】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１８
【補正方法】変更
【補正の内容】
【請求項１８】
前記方法は、
前記選択式マルチキャストプロキシが、前記１つ以上のプロバイダから前記リクエストへの少なくとも１つの応答を受信し、
前記選択式マルチキャストプロキシが、前記少なくとも１つの応答を前記リクエスタに送信すること
を特徴とする請求項１７記載のコンピュータ読み込み可能な媒体。
【手続補正１５】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１９
【補正方法】変更
【補正の内容】
【請求項１９】
前記選択式マルチキャストプロキシにより、前記リクエストは、接続ベースのプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１７記載のコンピュータ読み込み可能な媒体。
【手続補正１６】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項２０
【補正方法】変更
【補正の内容】
【請求項２０】
前記選択式マルチキャストプロキシにより、前記リクエストは、コネクションレスプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１７記載のコンピュータ読み込み可能な媒体。
【手続補正１７】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項２１
【補正方法】変更
【補正の内容】
【請求項２１】
前記１つ以上のプロバイダの特定は、
前記選択式マルチキャストプロキシが、前記リクエストされているサービスを特定する前記リクエストの中からサービスＩＤを検出し、
前記選択式マルチキャストプロキシが、登記済みのノードのデータベースの中から前記サービスＩＤを検索すること
を特徴とする請求項１７記載のコンピュータ読み込み可能な媒体。
【手続補正書】
【提出日】平成19年8月3日(2007.8.3)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
リクエスタとプロバイダと選択式マルチキャストプロキシとを備えるコンピュータネットワーク上のマルチキャストリクエスト処理のための方法であって、
前記選択式マルチキャストプロキシが、マルチキャストメッセージを処理しない複数の非マルチキャストノードの登録を受信し、複数の非マルチキャストノードを登録し、
前記選択式マルチキャストプロキシが、マルチキャストによって、前記リクエスタからサービスのためのリクエストを受信し、
前記選択式マルチキャストプロキシが、前記リクエストされているサービスの１つ以上のプロバイダを、前記登録した前記複数の非マルチキャストノードの中から特定し、
前記コンピュータネットワーク上の他の非マルチキャストノードに前記リクエストを送らず、前記特定した１つ以上のプロバイダに前記リクエストを送信すること
を含むことを特徴とする方法。
【請求項２】
前記選択式マルチキャストプロキシが、前記１つ以上のプロバイダからの前記リクエストへの少なくとも１つの応答を受信し、
前記選択式マルチキャストプロキシが、前記少なくとも１つの応答を前記リクエスタに送信すること
を更に含むことを特徴とする請求項１記載の方法。
【請求項３】
前記選択式マルチキャストプロキシにより、前記リクエストは、接続ベースのプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１記載の方法。
【請求項４】
前記選択式マルチキャストプロキシにより、前記リクエストは、コネクションレスプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１記載の方法。
【請求項５】
前記選択式マルチキャストプロキシによる前記１つ以上のプロバイダを特定する処理は、
前記リクエストされているサービスを特定する前記リクエストの中からサービスＩＤを検出し、
前記選択式マルチキャストプロキシが、登記済みのノードのデータベースの中から前記サービスＩＤを検索すること
を含むことを特徴とする請求項１記載の方法。
【請求項６】
請求項１記載の方法は、前記選択式マルチキャストプロキシが、同じノードＩＤの複数の潜在的プロバイダを特定する処理を更に含み、
前記選択式マルチキャストプロキシが前記プロバイダを特定する処理は、前記同じノードＩＤの前記複数の潜在的プロバイダの中から前記プロバイダを選択することを含むこと
を特徴とする請求項１記載の方法。
【請求項７】
前記複数の非マルチキャストノードは、マルチキャストメッセージの処理ができるが、マルチキャストメッセージを処理しないように構成又は通知された、少なくとも１つのマルチキャストできるノードを備えること
を特徴とする請求項１記載の方法。
【請求項８】
前記選択式マルチキャストプロキシによる、少なくとも１つのマルチキャストできるノードの登録の受信処理は、マルチキャストできるノードを含むマルチキャストグループにマルチキャストによってプロキシ公示メッセージを定期的に送信し、
マルチキャストできるノードが、前記選択式マルチキャストプロキシに接続し、且つマルチキャストメッセージ処理を停止することを選択すること
を特徴とする請求項７記載の方法。
【請求項９】
前記複数の非マルチキャストノードは、マルチキャストメッセージ処理ができない少なくとも１つの資源制約的なノードを具備すること
を特徴とする請求項１記載の方法。
【請求項１０】
前記選択式マルチキャストプロキシ、前記リクエスタ、及び前記複数の非マルチキャストノードが、同じローカルエリアネットワーク内に全て配置されていること
を特徴とする請求項１記載の方法。
【請求項１１】
リクエスタとプロバイダと選択式マルチキャストプロキシとを備えるコンピュータネットワーク上でマルチキャストリクエストを処理するコンピュータシステムであって、
前記選択式マルチキャストプロキシがマルチキャストメッセージを処理しない複数の非マルチキャストノードの登録を受信し、
前記選択式マルチキャストプロキシがマルチキャストによってリクエスタからサービスのためのリクエストを受信し、
前記選択式マルチキャストプロキシが前記複数の非マルチキャストノードの中から前記リクエストされているサービスの１つ以上のプロバイダを特定し、
前記選択式マルチキャストプロキシが前記コンピュータネットワーク上で他の非マルチキャストノードに前記リクエストを送らず、前記１つ以上のプロバイダにリクエストを送信すること
を特徴とするコンピュータシステム。
【請求項１２】
前記選択式マルチキャストプロキシが前記１つ以上のプロバイダから前記リクエストへの少なくとも１つの応答を受信し、
前記選択式マルチキャストプロキシが前記少なくとも１つの応答を前記リクエスタに送信すること
を特徴とする請求項１１記載のコンピュータシステム。
【請求項１３】
前記選択式マルチキャストプロキシにより、前記リクエストは、接続ベースのプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１１記載のコンピュータシステム。
【請求項１４】
前記選択式マルチキャストプロキシにより、前記リクエストは、コネクションレスプロトコルによって前記１つ以上のプロバイダに送信されること
を特徴とする請求項１１記載のコンピュータシステム。
【請求項１５】
前記１つ以上のプロバイダの特定処理は、
前記選択式マルチキャストプロキシが前記リクエストされているサービスを特定する前記リクエストの中からサービスＩＤを検出し、
前記選択式マルチキャストプロキシが登記済みのノードのデータベースの中から前記サービスＩＤを検索すること
を特徴とする請求項１１記載のコンピュータシステム。
【請求項１６】
リクエスタとプロバイダと選択式マルチキャストプロキシとを備えるコンピュータネットワーク上で、マルチキャストリクエストを処理するプログラムを記憶したコンピュータ読み込み可能な媒体であって、
前記選択式マルチキャストプロキシが、マルチキャストメッセージを処理しない複数の非マルチキャストノードの登録を受信し、
前記選択式マルチキャストプロキシが、マルチキャストによって、リクエスタからサービスのためのリクエストを受信し、
前記選択式マルチキャストプロキシが、前記複数の非マルチキャストノードの中から前記リクエストされているサービスの１つ以上のプロバイダを特定し、
前記選択式マルチキャストプロキシが、前記コンピュータネットワーク上で、他の非マルチキャストノードに前記リクエストを送信せず、前記１つ以上のプロバイダに前記リクエストを送信すること
を特徴とする処理を実行させるプログラムを記憶したコンピュータ読み込み可能な媒体。
【請求項１７】
前記選択式マルチキャストプロキシが、前記１つ以上のプロバイダから前記リクエストへの少なくとも１つの応答を受信し、
前記選択式マルチキャストプロキシが、前記少なくとも１つの応答を前記リクエスタに送信すること
を特徴とする請求項１６記載のコンピュータ読み込み可能な媒体。
【請求項１８】
前記選択式マルチキャストプロキシが、前記リクエストを、接続ベースのプロトコルによって前記１つ以上のプロバイダに送信すること
を特徴とする請求項１６記載のコンピュータ読み込み可能な媒体。
【請求項１９】
前記選択式マルチキャストプロキシが、前記リクエストを、コネクションレスプロトコルによって前記１つ以上のプロバイダに送信すること
を特徴とする請求項１６記載のコンピュータ読み込み可能な媒体。
【請求項２０】
前記１つ以上のプロバイダの特定は、
前記選択式マルチキャストプロキシが、前記リクエストされているサービスを特定する前記リクエストの中からサービスＩＤを検出し、
前記選択式マルチキャストプロキシが、登記済みのノードのデータベースの中から前記サービスＩＤを検索すること
を特徴とする請求項１６記載のコンピュータ読み込み可能な媒体。
【国際調査報告】
2008511187.tif 000003
2008511187.tif 000004