(57)【要約】  マルチキャストリピータは、ネットワーク上のホストコンピュータシステム上に配置されている。他のネットワーク上の１つ以上の他のマルチキャストリピータが見つかる。これら他のマルチキャストリピータは、ＵＤＰマルチキャストアドレッシングをルーティングするために構成されない少なくとも１台のネットワーク装置によってホストを具備し、ネットワークから分離されるネットワークに配置されている。マルチキャストを介してＵＤＰマルチキャストリクエストパケットを受信する各回において、マルチキャストリピータは、マルチキャストリピータが以前にＵＤＰマルチキャストリクエストパケットを転送したか否かを判断する。マルチキャストリピータが以前にＵＤＰマルチキャストリクエストパケットを転送していた場合、ＵＤＰマルチキャストリクエストパケットを無視する。しかしながら、マルチキャストリピータが以前にＵＤＰマルチキャストリクエストパケットを転送していない場合、マルチキャストリピータは、ＴＣＰ／ＩＰを介して、見つかった１つ以上の他のマルチキャストリピータにＵＤＰマルチキャストリクエストパケットを送信する。
2008511188.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上のホストコンピュータシステム上でマルチキャストリピータによって実行される、ＵＤＰマルチキャストトラフィックにネットワークブリッジを備えるための方法であって、
見つかった１つ以上の他のマルチキャストリピータの情報を保持し、各マルチキャストリピータは、ＵＤＰマルチキャストアドレッシングをルーティングするために構成されない少なくとも１つのネットワーク装置によって、ホストを備えるネットワークから分離される別々のネットワークに配置され、
マルチキャストを介して、ＵＤＰマルチキャストリクエストパケットを受信する各回において、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送したか否かを判断し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していた場合、前記ＵＤＰマルチキャストリクエストパケットを無視し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していない場合、見つかった前記１つ以上の他のマルチキャストリピータに前記ＵＤＰマルチキャストリクエストパケットを送信する
ことを含むことを特徴とする方法。
【請求項２】
前記ＵＤＰマルチキャストリクエストパケットは、見つかった前記１つ以上他のマルチキャストリピータに、ＴＣＰ／ＩＰを介して送信されることを特徴とする請求項１記載の方法。
【請求項３】
前記ＵＤＰマルチキャストリクエストパケットを前記１つ以上の他のマルチキャストリピータに送信する前に、ラッパプロトコルに従って、前記ＵＤＰマルチキャストリクエストパケットのデータをカプセル化することを、更に含むことを特徴とする請求項１記載の方法。
【請求項４】
異なるネットワーク上の別のマルチキャストリピータから転送されたＵＤＰマルチキャストリクエストパケットを受信するときはいつも、前記マルチキャストリピータのネットワーク上のマルチキャストを介して、前記転送されたＵＤＰマルチキャストリクエストパケットを送信することを、更に含むことを特徴とする請求項１記載の方法。
【請求項５】
前記転送されたＵＤＰマルチキャストリクエストパケットが受信されたとき、前記転送されたＵＤＰマルチキャストリクエストパケットのデータは、ラッパプロトコルに従ってカプセル化されており、
前記カプセル化されたデータを得るために、前記転送されたＵＤＰマルチキャストリクエストパケットを開封することを、更に含むことを特徴とする請求項４記載の方法。
【請求項６】
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送したか否かを判断するにおいて、更に、
前記ＵＤＰマルチキャストリクエストパケットからグローバルにユニークなパケットＩＤを抽出し、
ＩＤキャッシュの中からパケットＩＤを検索する
ことを特徴とする請求項１記載の方法。
【請求項７】
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していない場合、前記パケットＩＤを前記ＩＤキャッシュに記録することを、更に含むことを特徴とする請求項６記載の方法。
【請求項８】
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していない場合、前記ＵＤＰマルチキャストリクエストパケットが前記ＩＤキャッシュに起因するネットワークアドレスとポートを記録することを、更に含むことを特徴とする請求項７記載の方法。
【請求項９】
ＵＤＰサーバが受信するどのようなＵＤＰマルチキャストパケットも受信するために、前記ホストコンピュータシステムに前記ＵＤＰサーバを登録することを、更に含むことを特徴とする請求項１記載の方法。
【請求項１０】
ＵＤＰマルチキャスト応答パケットが受信されるときはいつも、対応するＵＤＰマルチキャストリクエストパケットが前記ネットワークで発生したか否かを判断することを、更に含むことを特徴とする請求項１記載の方法。
【請求項１１】
前記対応するＵＤＰマルチキャストリクエストパケットが前記ネットワークで発生した場合、
前記対応するＵＤＰマルチキャストリクエストパケットのために送信側アプリケーションを特定し、
前記ＵＤＰマルチキャスト応答パケットを前記送信側アプリケーションに送信する
ことを更に含むことを特徴とする請求項１０記載の方法。
【請求項１２】
前記ＵＤＰマルチキャスト応答パケットは、ＵＤＰユニキャストアドレッシングを用いて前記送信側アプリケーションに送信されることを特徴とする請求項１１記載の方法。
【請求項１３】
前記送信側アプリケーションを特定するにおいて、
前記ＵＤＰマルチキャスト応答パケットからグローバルにユニークなパケットＩＤを抽出し、
ＩＤキャッシュ内の送信元ホストのネットワークアドレスと送信側アプリケーションのポートを調べるために前記パケットＩＤを使用する
ことを更に含むことを特徴とする請求項１１記載の方法。
【請求項１４】
前記マルチキャストリピータが以前に転送したどのようなＵＤＰマルチキャストリクエストパケットにも対応しないどのような受信されたＵＤＰマルチキャスト応答パケットも無視することを、更に含むことを特徴とする請求項１記載の方法。
【請求項１５】
前記ネットワーク装置は、ルーターとファイアウォールから成るグループから選ばれることを特徴とする請求項１記載の方法。
【請求項１６】
ネットワークブリッジをＵＤＰマルチキャストトラフィックに備えるための方法を実行するために構成されるホストコンピュータシステムであって、
プロセッサと、
前記プロセッサを有する電子通信におけるメモリと、
前記メモリに格納されたマルチキャストリピータとを備え、方法を実行するために実行可能である前記マルチキャストリピータは、
見つかった１つ以上の他のマルチキャストリピータの情報を保持し、各マルチキャストリピータは、ＵＤＰマルチキャストアドレッシングをルーティングするために構成されない少なくとも１つのネットワーク装置によって、ホストを備えるネットワークから分離される別々のネットワークに配置され、
マルチキャストを介して、ＵＤＰマルチキャストリクエストパケットを受信する各回において、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送したか否かを判断し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していた場合、前記ＵＤＰマルチキャストリクエストパケットを無視し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していない場合、見つかった前記１つ以上の他のマルチキャストリピータに前記ＵＤＰマルチキャストリクエストパケットを送信すること
を含むことを特徴とするホストコンピュータシステム。
【請求項１７】
メモリに格納され、前記マルチキャストリピータを備えるサーバアプリケーションと、
前記ホストコンピュータシステム上でマルチキャストアドレスとポートをリッスンするために構成される、前記サーバアプリケーション内のＵＤＰサーバと、
１つ以上の他のマルチキャストリピータにＴＣＰ／ＩＰ接続を確立するために構成される、サーバアプリケーション内のＴＣＰ／ＩＰ接続モジュールと
を更に備えることを特徴とする請求項１６記載のホストコンピュータシステム。
【請求項１８】
ネットワークブリッジをＵＤＰマルチキャストトラフィックに備えるために方法を実行するために実行可能な指示を備えるコンピュータ読み込み可能な媒体であって、前記方法は、
見つかった１つ以上の他のマルチキャストリピータの情報を保持し、各マルチキャストリピータは、ＵＤＰマルチキャストアドレッシングをルーティングするために構成されない少なくとも１つのネットワーク装置によって、ホストを備えるネットワークから分離される別々のネットワークに配置され、
マルチキャストを介して、ＵＤＰマルチキャストリクエストパケットを受信する各回において、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送したか否かを判断し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していた場合、前記ＵＤＰマルチキャストリクエストパケットを無視し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していない場合、見つかった前記１つ以上の他のマルチキャストリピータに前記ＵＤＰマルチキャストリクエストパケットを送信する
ことを含むことを特徴とするコンピュータ読み込み可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的なコンピュータとコンピュータ関連技術に関する。より具体的には、本発明はネットワークブリッジをＵＤＰマルチキャストトラフィックに備えるためのシステム及び方法に関する。
【背景技術】
【０００２】
コンピュータや通信技術は、急速な歩みで進み続けている。事実、コンピュータや通信技術は、人間の日常の多くの側面に関わる。例えば、今日消費者によって使用される多くの装置は、その装置内部に小型コンピュータを有する。これらの小型コンピュータは、精密さに関して様々なサイズ及び程度のものが提供されている。これらの小型コンピュータは、１つのマイクロコントローラから、全ての機能を持つ完全なコンピュータシステムまで、全てを含んでいる。例えば、これらの小型コンピュータは、マイクロコントローラのようなワンチップコンピュータ、コントローラのような１ボードのタイプのコンピュータ、ＩＢＭTM−ＰＣコンパチブルのような典型的なデスクトップコンピュータなどであっても良い。
【０００３】
コンピュータは、一般的に、そのコンピュータの心臓部に１つ以上のプロセッサを有する。プロセッサは、通常、異なる外部の入力と出力に相互接続されており、特定のコンピュータ又は装置を管理するために機能する。例えば、サーモスタットのプロセッサは、温度設定を選択するために使用されるボタン、温度を変えるための暖炉やエアコン、及び現在の温度をディスプレイ上から読んだり表示したりするための温度センサと接続できる。
【０００４】
多くの電気製品や装置などは、１つ以上の小型コンピュータを含んでいる。例えば、サーモスタット、暖炉、空調システム、冷蔵庫、電話機、タイプライタ、自動車、自動販売機、及び多くの異なるタイプの産業機器は、現在一般的に、小型コンピュータ又はプロセッサをそれらの内部に有する。コンピュータソフトウェアは、これらコンピュータのプロセッサを動かして、いかに所定のタスクを実行するかをプロセッサに指示する。例えば、サーモスタット上で動作するコンピュータソフトウェアは、特定の温度に達している場合エアコンの実行を止めたり、又は必要に応じて暖房機をオンにしたりすることができる。
【０００５】
装置、電気製品、ツールなどの一部であるこれらのタイプの小型コンピュータは、しばしば組込み機器又は組込みシステムと呼ばれる。（用語「組込み機器」と「組込みシステム」は本明細書において互換性を持って使用される）。組込みシステムは、通常、コンピュータハードウェアと、より大きいシステムの一部であるソフトウェアについて言及する。組込みシステムは、キーボード、マウス、及び／又はモニタなどの典型的な入出力装置を有することができない。通常、それぞれの心臓部で組み込まれているシステムは、１つ以上のプロセッサである。
【０００６】
照明システムは、組込みシステムを組み込むことができる。照明システムの効力を監視し、制御するために組込みシステムを使用できる。例えば、組込みシステムは、照明システムの中で照明の明るさを薄暗くするための制御を与えることができる。あるいはまた、組込みシステムは、照明の明るさを強めるための制御を与えることができる。組込みシステムは、照明システム内の個々の照明内の特定の照明パターンを起動するための制御を与えることができる。組込みシステムは、照明システム内の個々のスイッチと結合できる。これらの組込みシステムは、個々の照明又は全体の照明システムにパワーアップ、パワーダウンするためのスイッチ対して指示できる。同様に、組込みシステムは、照明システム内の個々の照明と結合できる。それぞれの個々の照明の明るさ又は電源状態は、組込みシステムにより制御できる。
【０００７】
セキュリティシステムもまた、組込みシステムを組み込むことができる。組込みシステムは、セキュリティシステムを備える個人セキュリティセンサを制御するために使用できる。例えば、組込みシステムは、それぞれのセキュリティセンサを自動的に強化する制御を与えることができる。組込みシステムは、それぞれの個人セキュリティセンサと結合できる。例えば、組込みシステムは、動作センサと結合できる。動きが検出された場合、組込みシステムは、自動的に個々の動作センサをパワーアップして、動作センサを作動するための制御を与えることができる。動作センサの作動では、動作センサの中に配置されたＬＥＤパワーアップするための指示を与えたり、動作センサの出力部からアラームを出力したり、等を含むことができる。組込みシステムは、ドアを監視するセンサとも結合できる。組込みシステムは、ドアが開けられるか、又は閉じられるとき、作動するためにドアを監視するセンサに指示を与えることができる。同様に、組込みシステムは、窓を監視するセンサと結合できる。窓が開けられるか、閉じられた場合、組込みシステムは、窓のセンサモニタリングを作動するために指示を与えることができる。
【０００８】
携帯電話などのワイヤレス製品を制御するのにもまた、いくつかの組込みシステムを使用できる。組込みシステムは、携帯電話のＬＥＤディスプレイをパワーアップするための指示を与えることができる。組込みシステムは、携帯電話に関する音声通知をユーザに与えるために、携帯電話内のオーディオスピーカーもまた作動することができる。
【０００９】
家庭電化製品もまた、組込みシステムを組み込むことができる。家電は、従来の台所で通常使用される電気製品、例えば、ストーブ、冷蔵庫、電子レンジなどを含むことができる。家電はまた、ユーザの健康と快適な暮らしに関する電気製品を含むことができる。例えば、マッサージリクライニングシートは、組込みシステムを組み込むことができる。組込みシステムは、椅子の背もたれ部分を、ユーザの好みに従って自動的にもたれさせるための指示を与えることができる。組込みシステムはまた、リクライニングシート内の振動を、ユーザの好みに従って引き起こす椅子内の振動装置を始動するためにも指示を与えることができる。
【００１０】
家庭内で通常備えられる更なる製品もまた、組込みシステムを組み込むことができる。例えば、コンテナータンクを詰め替えるのに使用される水のレベルを制御するために、トイレ内で組込みシステムを使用できる。空気の流出を制御するためにジェットバス内で組込みシステムを使用できる。
【００１１】
組込みシステムは、様々な理由のため他の電子装置への接続を確立できる。例えば、組織が、所定のリモートクライアントに利用可能な組込みシステムに関するデータを作成したいということも可能である。組込みシステムは、組込みシステムの動作を制御するためのこれらのリモートクライアントもまた可能にすることができる。例えば、キャリブレーションで見つかる問題を、組込みシステムの位置に人を送る代わりに、リモートで調整可能にすることができる。代わりに、又は更に、組込みシステムは、ローカルで変更されることができる動作と大体同じようなやり方を、リモートで変更されることを可能にすることができる。１つの例が、リモートでドアをロックすることであろう。この種のリモートコントロールは、ローカルに利用可能な機能に制限されず、多くの場合、ローカルな機能を超えることができる。１つの例が、ローカルインタフェースを全く持っていないが、その動作のリモートコントロールを可能にするセンサである。
【００１２】
他の電子装置と通信するために、組込みシステムはコンピュータネットワークに接続できる。時々、１つ以上のコンピュータネットワークに位置する電子装置グループへメッセージを送信する組込みシステムが望ましい。受信グループがサイズでは数の上で大きいが、ネットワークにおける装置の全体的な数と比べて小さいところでは、マルチキャストルーティングがしばしば使用される。マルチキャスティングとは、ネットワーク上の１つ以上の宛て先に、メッセージを同時に送信する処理をいう。マルチキャスティングは、ネットワーク内の特定のグループへのマルチキャスティング送信手段であるところがブロードキャスティングと異なっており、ブロードキャスティングはネットワーク上の全員に送信することを意味する。マルチキャスト技術では、データの大部分は、通常、一旦送信元からネットワークのメジャーなバックボーンまで伝送され、そして宛て先のより近くのスイッチングポイントで増殖又は分散される。
【００１３】
マルチキャストルーティングへの接続において、ユーザーデータグラムプロトコル（ＵＤＰ：User Datagram Protocol）を使用できる。これはしばしばＵＤＰマルチキャスティングと呼ばれる。ＵＤＰは、カプセル封入ＩＰデータグラムを送信し、接続を確立する必要なく、それらを送信するアプリケーションのための方法を与えることがする。
【発明の開示】
【発明が解決しようとする課題】
【００１４】
組込みシステムが異なるネットワークに位置する電子装置へのＵＤＰマルチキャスティングを介してメッセージ送信を試みるとき、問題は生じるかも知れない。コンピュータネットワークは、特定のネットワークトラフィックを隔離して、制限されたコンピュータのセットが通信するのを容認するのを抑制されるかも知れない。ルーターやファイアウォールなどのネットワーク装置によって課されたこれらの制約条件は、意図的にＵＤＰマルチキャストアドレッシングの行使を制限する。２つのネットワークが、マルチキャストアドレッシングをルーティングするために構成されないネットワーク装置によって分離されるならば、１つの孤立しているネットワーク上で起こるマルチキャストリクエストに、別の孤立しているネットワーク上でコンピュータに配送するのは、難しいかもしれない。従って、必要なのは、ネットワークブリッジをＵＤＰマルチキャストトラフィックに備えるための機構、すなわち、マルチキャストアドレッシングをルーティングさせるように構成されていないネットワーク装置を越えて、１つのネットワークから別のネットワークまでマルチキャストパケットを得るための機構である。
【課題を解決するための手段】
【００１５】
ネットワークブリッジをＵＤＰマルチキャストトラフィックに備えるためのシステムと方法が開示される。例示される実施形態では、ネットワーク上のホストコンピュータシステムのマルチキャストリピータは、見つかった他のネットワークで他の１つ以上のマルチキャストリピータに関する情報を保持する。これらの各マルチキャストリピータは、ＵＤＰマルチキャストアドレッシングをルーティングするように構成されていない少なくとも１台のネットワーク装置によって、ホストを備えるネットワークから分離されるネットワーク内に位置することができる。マルチキャストを介してＵＤＰマルチキャストリクエストパケットを受信する各回において、マルチキャストリピータは、マルチキャストリピータが以前にＵＤＰマルチキャストリクエストパケットを転送したか否かを判断する。もしマルチキャストリピータが以前にＵＤＰマルチキャストリクエストパケットを転送していた場合、ＵＤＰマルチキャストリクエストパケットは無視される。もしマルチキャストリピータが以前にＵＤＰを転送していなかった場合、マルチキャストリピータは、見つかった１つ以上の他のマルチキャストリピータへＵＤＰマルチキャストリクエストパケットを送信する。
【００１６】
ＵＤＰマルチキャストリクエストパケットは、見つかった他のリピータに、接続（例えば、ＴＣＰ／ＩＰ接続）を介して送信されても良い。ＵＤＰマルチキャストリクエストパケットが他のマルチキャストリピータに送信される前に、マルチキャストリピータは、ラッパプロトコルに従って、ＵＤＰマルチキャストリクエストパケットのデータをカプセル化することができる。
【００１７】
一部の実施例において、マルチキャストリピータが以前にＵＤＰマルチキャストリクエストパケットを転送したかどうか判断するステップは、ＵＤＰマルチキャストリクエストパケットからグローバルにユニークなパケットＩＤを抽出して、ＩＤキャッシュの中でパケットＩＤを検索することを伴うことができる。マルチキャストリピータが以前にＵＤＰマルチキャストリクエストパケットを転送していない場合、マルチキャストリピータはパケットＩＤをＩＤキャッシュに記録できる。マルチキャストリピータはまた、ＵＤＰマルチキャストリクエストパケットがＩＤキャッシュで起こったネットワークアドレスとポートも記録できる。
【００１８】
マルチキャストリピータは、異なるネットワーク上の別のマルチキャストリピータから転送されたＵＤＰマルチキャストリクエストパケットを受信できる。ラッパプロトコルに従って転送されたＵＤＰマルチキャストリクエストパケットのデータがカプセル化された場合、マルチキャストリピータは、カプセル化されたデータを得るために転送されたＵＤＰマルチキャストリクエストパケットを開封することができる。マルチキャストリピータは、マルチキャストリピータのネットワーク上のマルチキャストを介して転送されたＵＤＰマルチキャストリクエストパケットを送信することができる。
【００１９】
マルチキャストリピータは、ＵＤＰマルチキャスト応答パケットを受信できる。応答においては、マルチキャストリピータは、対応するＵＤＰマルチキャストリクエストパケットがネットワーク上で発生したかどうか判断できる。対応するＵＤＰマルチキャストリクエストパケットがネットワーク上で発生した場合、マルチキャストリピータは、対応するＵＤＰマルチキャストリクエストパケットのために送信側のアプリケーションを特定し、送信側のアプリケーションへＵＤＰマルチキャスト応答パケットを送信することができる。
【発明を実施するための最良の形態】
【００２０】
本発明の例示された実施形態は、以下の説明と添付の特許請求の範囲から、添付図面と共により完全に明らかになる。これらの図面について理解することは、例示された実施形態についてのみ描いていることであり、従って、本発明の範囲の限定であることは考慮されない。本発明の例示された実施形態は、更なる特定性で説明され、添付図面を用いて詳しく述べる。
【００２１】
図面を参照しながら本発明の様々な実施例について説明する。同一参照番号は同一か機能上同様の要素を示す。本明細書において一様に説明し図面に示す本発明の実施例は、広く様々な異なる形態でアレンジし設計することができるであろう。それ故、図面で表される本発明の様々に例示された実施形態の以下のより詳細な説明は、本発明のクレームとしての範囲を限定する意図でなく、単に本発明の実施例を示す意図である。
【００２２】
「例」という言葉は、「実施例、実例、又は図示としての役目をすること」を意味するために本明細書において排他的に使用される。本明細書に「例」として記述されたどんな実施例も、他の実施例を越えて好ましい又は有利であると理解されるために必ずしも必要ではない。図面に実施例の種々の外観を提示するが、特別に示さなかったといって、比例するように必ずしも図面を作成するというわけではない。
【００２３】
本明細書に開示された実施例の多くの特徴を、コンピュータソフトウェア、電子ハードウェア、又は両方の組合せとして、実施することができる。一般的に、明確にハードウェアとソフトウェアのこの互換性を示すために、それらの機能性において種々の装置について説明する。そのような機能性がハードウェア又はソフトウェアとして実施されるか否かは、システム全体に課された特殊なアプリケーションと設計制約条件に依存する。当業者は各特殊アプリケーションのために様々な方法で説明した機能性を実施することができるが、本発明の範囲から逸脱して、そのような実施決定を解釈するべきでない。
【００２４】
説明された機能性がコンピュータソフトウェアとして実施される場合、そのようなソフトウェアは、どのようなタイプの機械命令も含むことができるか、コンピュータ実行可能コードがメモリデバイスの中に位置し及び／又は電子信号としてシステムバス又はネットワーク上を伝送される。本明細書で説明される装置に関連する機能性を実施するソフトウェアは、ただ一つの指示、又は多くの指示を具備することができ、異なるプログラムの中といくつかのメモリデバイスにまたがって、様々な異なるコードセグメントに分散できる。
【００２５】
図１は、一実施例によるＵＤＰマルチキャストトラフィックにネットワークブリッジを備えるためのシステム１００を示している。システム１００は複数のコンピュータネットワーク１０２を含んでいる。図示された実施例では、２つのネットワーク１０２が配置されている。すなわち、ネットワーク（Ａ）１０２ａとネットワーク（Ｂ）１０２ｂである。各ネットワーク１０２は複数の相互接続形コンピュータシステムを含んでいる。コンピュータシステムはホスト１０４と呼ばれる。
【００２６】
ネットワーク１０２は、マルチキャストアドレッシングをルーティングするために構成されない少なくとも１台のネットワーク装置１０６によって分離される。例えば、ルーターやファイアウォールなどはネットワーク１０２を分離できる。
【００２７】
各ネットワーク１０２は、マルチキャストリピータ１０８を含む少なくとも１台のホスト１０４を含んでいる。大まかに言えば、マルチキャストリピータ１０８は、別の孤立されたネットワーク（例えば、ネットワーク（Ｂ）１０２ｂ）上のホスト１０４によって繰り返され、応答されるための１つの孤立されたネットワーク（例えば、ネットワーク（Ａ）１０２ａ）上で発生するマルチキャストリクエストであることを可能にするネットワークブリッジである。これを達成するために、それぞれのマルチキャストリピータ１０８は、他のすべての既知のリピータ１０８に受信する各マルチキャストリクエストを転送するために構成される。（リピータ１０８がマルチキャストリクエストを既に処理していなければ、以下で更に詳細にこれについて議論する）。各リピータ１０８は、それ自身のグローバルにユニークなＩＤを持つ。このＩＤは、マルチキャストリクエストをリピータ１０８に転送するために使用できる。マルチキャストリピータ１０８はＵＤＰマルチキャストデータ配布のアプリケーションレベルコントロールを容易にする。その結果、規制されて保護されたネットワーク１０２の制約条件の中で、ネットワークトラフィックを所望のアプリケーションニーズに制限する。
【００２８】
図１には２つのネットワーク１０２が示されているが、２つ以上のネットワーク１０２がマルチキャストアドレッシングをルーティングするために構成されないネットワーク装置１０６によって接続されるシステムの実施例も実施できる。そのような実施例では、各ネットワーク１０２における少なくとも１台のホスト１０４が、マルチキャストリピータ１０８を含むことができる。更にまた、図１に示される両方のネットワーク１０２は、単一のリピータ１０８を含んでいるのみであるが、別の実施例では、多重のリピータ１０８を単一ネットワーク１０２の中に配置できる。
【００２９】
図２は、マルチキャストリピータ１０８を具備するホスト１０４に配置できるソフトウェアコンポーネントと他のデータを示している。図示されているように、マルチキャストリピータ１０８は、ホスト１０４で動作しているサーバアプリケーション２１０の一部であっても良い。サーバアプリケーション２１０は、ＵＤＰサーバモジュール２１２を含むことができる。ＵＤＰサーバモジュール２１２は、ＵＤＰマルチキャストパケットのための特定のマルチキャストアドレスとポートをリッスンするよう構成できる。一部の実施例では、マルチキャストリピータ１０８は、ＵＤＰサーバモジュール２１２とともに登録し、ＵＤＰサーバモジュール２１２は、処理のためにマルチキャストリピータ１０８に受信するどのようなＵＤＰマルチキャストパケットも転送する。
【００３０】
サーバアプリケーション２１０は、他のネットワーク１０２上のマルチキャストリピータ１０８にＴＣＰ／ＩＰ接続をセットアップするために構成されるＴＣＰ／ＩＰ接続モジュール２１４もまた含むことができる。ＴＣＰ／ＩＰ接続が別のネットワーク１０２に確立される場合、いくつかのマルチキャストリピータ１０８は、自動的に見つかったリピータのリスト２１６に追加されるネットワーク１０２上にある。
【００３１】
マルチキャストリピータはＩＤキャッシュ２１８を保持する。ＩＤキャッシュ２１８は、マルチキャストリピータ１０８が以前に他のリピータ１０８に転送したリクエストパケットに関する情報を保存するために使用される。
【００３２】
図３は、一実施例によるＵＤＰマルチキャストリクエストパケット３２０を示している。図示された実施例では、それぞれのマルチキャストリクエストパケット３２０は、送信されたグローバルにユニークなパケットＩＤ３２２を含んでいる。グローバルにユニークなパケットＩＤ３２２に加えて、送信される各リクエストパケット３２０はまた、送信元ホスト１０４のネットワークアドレス３２４、及び送信側のアプリケーションが送信元ホスト１０４に割り当てられるポート３２６を示す。（送信側のアプリケーションは、本来はリクエストパケット３２０を送信したアプリケーションである。送信元ホスト１０４は送信側のアプリケーションが実行されているホスト１０４である。）リクエストパケット３２０はまた、他の情報３２８を通常含んでいる。
【００３３】
図４は、マルチキャストを介して別のホスト１０４のネットワーク１０２から、ＵＤＰマルチキャストリクエストパケット３２０を受信する際（ステップ４０２）の、マルチキャストリピータ１０８の動作を示している。ステップ４０４において、マルチキャストリピータ１０８は、ステップ４０２で受信されたリクエストパケット３２０からパケットＩＤ３２２を抽出する。
【００３４】
ステップ４０６において、マルチキャストリピータ１０８は、パケットＩＤ３２２をそのＩＤキャッシュ２１８の中から検索する。パケットＩＤ３２２がＩＤキャッシュ２１８内に既に格納されている場合、これはマルチキャストリピータ１０８が既にリクエストパケット３２０を処理したことを意味し、そして、ステップ４０８において、ループを防ぐためにリクエストパケット３２０は無視される。しかしながら、ＩＤキャッシュ２１８内のエントリがリクエストパケット３２０のために既に存在していない場合、ステップ４１０において、マルチキャストリピータ１０８は、ＩＤキャッシュ２１８のリクエストパケット３２０のためにパケットＩＤ３２２を記録する。一部の実施例では、ＩＤ３２２は限定的な時間だけ有効である。（望ましくは、その時間は、ループを検出するためにＩＤキャッシュ２１８を使用するのに十分長く）。
【００３５】
ステップ４１２において、マルチキャストリピータ１０８は、ステップ４０２において受信したリクエストパケット３２０から、送信元ホスト１０４のネットワークアドレス３２４と送信側のアプリケーションが割り当てられる送信元ホスト１０４の上のポート３２６を抽出する。ステップ４１４において、マルチキャストリピータ１０８は、この情報をＩＤキャッシュ２１８に記録する。それに続いてマルチキャストリクエスト３２０への何らかの応答を受信した場合、送信側のアプリケーションへの応答を返すために、ネットワークアドレス３２４とポート３２６を使用できる。これについて以下で更に詳細に説明する。
【００３６】
ステップ４１６において、マルチキャストリピータ１０８は、ラッパプロトコルに従って、パケットＩＤ３２２を含むリクエストパケット３２０のデータをカプセル化する。ステップ４１８において、マルチキャストリピータ１０８は、ＴＣＰ／ＩＰを用いて、カプセル化されたリクエストパケット３２０を、見つかった各リピータ１０８（例えば、見つかったリピータのリスト２１６で特定される各リピータ１０８に）に転送する。
【００３７】
図５は、別のネットワーク１０２で発生し、ＴＣＰ／ＩＰを介してマルチキャストリピータ１０８に転送されたＵＤＰマルチキャストリクエストパケット３２０を受信する際（ステップ５０２）の、マルチキャストリピータ１０８の動作を示している。前述のとおり、マルチキャストリピータ１０８がＴＣＰ／ＩＰを介して他のマルチキャストリピータ１０８にリクエストパケット３２０を転送するとき、リクエストパケット３２０は、ラッパプロトコルに従って伝送の前にカプセル化される。従って、ステップ５０４において、マルチキャストリピータ１０８は、カプセル化されたデータを得るためにカプセル化されたリクエストパケット３２０を開ける。ステップ５０６において、マルチキャストリピータ１０８は、マルチキャストを介してネットワーク１０２にリクエストパケット３２０を送信する。
【００３８】
図６は、別のマルチキャストリピータ１０８からＵＤＰマルチキャスト応答パケットを受信する際（ステップ６０２）の、マルチキャストリピータ１０８の動作を示している。ステップ６０４において、マルチキャストリピータ１０８は、応答パケットからパケットＩＤ３２２を抽出する。（図示した実施例では、応答パケットの中に収納されるパケットＩＤ３２２は、対応する応答パケット３２０のためのパケットＩＤ３２２と同じである）。ステップ６０６において、マルチキャストリピータ１０８は、ステップ６０４で抽出されたパケットＩＤ３２２をそのＩＤキャッシュ２１８の中から検索する。パケットＩＤ３２２がＩＤキャッシュ２１８の中に格納されていない場合、これはマルチキャストリピータ１０８が応答パケットに対応するリクエストパケット３２０を転送しなかったことを意味する。従って、ステップ６０８において、マルチキャストリピータ１０８は、応答パケットを無視する。
【００３９】
ＩＤキャッシュ２１８の中にパケットＩＤ３２２がある場合、ステップ６１２において、マルチキャストリピータ１０８は、送信元ホスト１０４のネットワークアドレス３２４と送信側のアプリケーションに関連するポート３２６を特定する。これは、パケットＩＤ３２２を用いて、リピータ１０８のＩＤキャッシュ２１８の中からネットワークアドレス３２４とポート３２６を調べることを伴うことができる。ステップ６１４において、リピータ１０８は、ＵＤＰユニキャストアドレッシングを用いて送信側のアプリケーションに応答を送信する。
【００４０】
リピータ１０８は、マルチキャストリクエストを転送するだけにするように構成できる。一部の実施例では、マルチキャストリクエストを転送するだけであるリピータ１０８は、リピータとして自らを公表しない。したがって、他のリピータによって見つかることはできない。これは、ブリッジがネットワーク１０２の間の一方向だけにセットアップされるのを可能にする。
【００４１】
図７及び図８は、一実施例による異なるネットワーク７０２における様々のマルチキャストリピータ７０８の動作を示す一例を示している。図示した例では、２つのネットワーク７０２、すなわち、ネットワーク（Ａ）７０２ａとネットワーク（Ｂ）７０２ｂが配置されている。異なるネットワーク７０２は、マルチキャストアドレッシングをルーティングするために構成されていないネットワーク装置（図示せず）によって、互いに接続される。従って、従来の手法を使用して、ネットワーク７０２の１つで発生するマルチキャストリクエストを、他のネットワーク７０２のいずれかのホストに配送するのは、難しいかもしれない。
【００４２】
この問題を解決するために、各ネットワーク７０２は、マルチキャストリピータ７０８を含む少なくとも１台のホスト７０４を含んでいる。ネットワーク（Ａ）７０２ａは、ホスト（Ａ）７０４ａとホスト（Ｄ）７０４ｄを含んでいる。ホスト（Ａ）７０４ａは、マルチキャストリピータ（Ａ）７０８ａを含んでいる。ホスト（Ｄ）７０４ｄは、マルチキャストリピータ（Ｄ）７０８ｄを含んでいる。ネットワーク（Ｂ）７０２ｂは、ホスト（Ｂ）７０４ｂとホスト（Ｃ）７０４ｃを含んでいる。ホスト（Ｂ）７０４ｂは、マルチキャストリピータ（Ｂ）７０８ｂを含んでいる。ホスト（Ｃ）７０４ｃは、マルチキャストリピータ（Ｃ）７０８ｃを含んでいる。ＴＣＰ／ＩＰ接続は、ネットワーク（Ａ）７０２ａ上のホスト（Ａ）７０４ａとネットワーク（Ｂ）７０２ｂ上のホスト（Ｂ）７０４ｂとの間と、及びネットワーク（Ｂ）７０２ｂ上のホスト（Ｃ）７０４ｃとネットワーク（Ａ）７０２ａ上のホスト（Ｄ）７０４ｄとの間で確立される。
【００４３】
図７に示されているように、送信元ホスト７３８上の送信側アプリケーション７３０は、ネットワーク（Ａ）７０２ａ上のマルチキャストを介してＵＤＰマルチキャストリクエストパケット７２０を送信する。マルチキャストリピータ（Ａ）７０８ａは、リクエストパケット７２０を受信する。リクエストパケット７２０を転送する前に、マルチキャストリピータ７０８ａは、ＴＣＰ／ＩＰを介して伝送するためにリクエストパケット７２０の準備をする。特に、マルチキャストリピータ（Ａ）７０８ａは、リクエストパケット７２０のデータをカプセル化する。その結果、カプセル化されたリクエストパケット７３２を生成する。
【００４４】
マルチキャストリピータ（Ａ）７０８ａは、その後、ＴＣＰ／ＩＰを介して、見つかった他のマルチキャストリピータ７０８にリクエストパケット７２０を転送する。図示した例では、マルチキャストリピータ（Ａ）７０８ａがマルチキャストリピータ（Ｂ）７０８ｂを見つけたものとする。従って、マルチキャストリピータ（Ａ）７０８ａは、ＴＣＰ／ＩＰを介して、マルチキャストリピータ（Ｂ）７０８ｂにカプセル化されたリクエストパケット７３２を転送する。
【００４５】
マルチキャストリピータ（Ｂ）７０８ｂがカプセル化されたリクエストパケット７３２を受信するとき、カプセル化されたデータ、すなわち、リクエストパケット７２０自体を得るために、カプセル化されたリクエストパケット７３２を開ける。マルチキャストリピータ（Ｂ）７０８ｂは、その後、マルチキャストを介してネットワーク（Ｂ）７０２ｂにリクエストパケット７２０を送信する。
【００４６】
マルチキャストリピータ（Ｃ）７０８ｃがリクエストパケット７２０を受信するとき、見つかった他のマルチキャストリピータ７０８にリクエストパケット７２０を転送する。図示した例では、マルチキャストリピータ（Ｃ）７０８ｃがマルチキャストリピータ（Ｄ）７０８ｄを見つけたものとする。従って、マルチキャストリピータ（Ｃ）７０８ｃは、ＴＣＰ／ＩＰを介して、マルチキャストリピータ（Ｄ）７０８ｄにカプセル化されたリクエストパケット７３２を転送する。
【００４７】
マルチキャストリピータ（Ｄ）７０８ｄがカプセル化されたリクエストパケット７３２を受信するとき、カプセル化されたデータ、すなわち、リクエストパケット７２０自体を得るために、カプセル化されたリクエストパケット７３２を開ける。マルチキャストリピータ（Ｄ）７０８ｄは、その後、マルチキャストを介して、ネットワーク（Ａ）７０２ａにリクエストパケット７２０を送信する。マルチキャストリピータ（Ａ）７０８ａが再びリクエストパケット７２０を受信するとき、マルチキャストリピータ（Ａ）７０８ａは、既にそのリクエストパケット７２０を受信しているか否かを判断する。以上説明したとおり、リクエストパケット７２０からパケットＩＤ（図７では図示せず）を抽出し、パケットＩＤを保持するＩＤキャッシュ（図７では図示せず）からパケットＩＤを検索することで、これを成すことができる。マルチキャストリピータ（Ａ）７０８ａが既にリクエストパケット７２０を受信して転送したと判断した場合、マルチキャストリピータ（Ａ）７０８ａは単にリクエストパケット７２０を無視する。この方法では、ループは、非分解法で検出され、防がれる。すなわち、たとえループが検出されても、ネットワークブリッジをＵＤＰマルチキャストトラフィックに備えるための機構を続行することができる。
【００４８】
図８は、ホスト（Ｃ）７０４ｃ上のアプリケーション８３４がマルチキャストリクエスト７２０に応答するときの、異なるネットワークでのマルチキャストリピータ７０８の動作を示している。アプリケーション８３４は、ユニキャストを介してネットワーク（Ｃ）７０２ｃに応答パケット８３６を送信し、そして、マルチキャストリピータ（Ｃ）７０８ｃは、応答パケット８３６を受信する。マルチキャストリピータ（Ｃ）７０８ｃは、応答パケット８３６をラップして、カプセル化された応答パケット８３７を、ＴＣＰ／ＩＰを介して、ネットワーク（Ａ）７０２ａ上のマルチキャストリピータ（Ａ）７０８ａに送信する。もしマルチキャストリピータ（Ｃ）７０８ｃへＴＣＰ／ＩＰを介して接続された複数のマルチキャストリピータ７０８があれば、マルチキャストリピータ（Ｃ）７０８ｃは、どのマルチキャストリピータ７０８がリクエスト７２０を転送したかを判断できない場合に全てのマルチキャストリピータ７０８に応答８３６を返送することができる。もしマルチキャストリピータ７０８が、リクエスト７２０に対して転送されなかった応答８３６を受信したなら、その後、マルチキャストリピータ７０８は、応答８３６を無視して良い。
【００４９】
マルチキャストリピータ（Ａ）７０８ａがカプセル化された応答パケット８３７を受信した場合、マルチキャストリピータ（Ａ）７０８ａは、カプセル化されたデータ（すなわち、応答パケット８３６自体）を得るためにカプセル化された応答パケット８３７を開封し、パケットＩＤをチェックする。もしパケットＩＤがマルチキャストリピータ（Ａ）７０８ａのキャッシュの中にない場合、応答パケット８３６は無視される。マルチキャストリピータ（Ａ）７０８ａは、送信元ホスト７３８のネットワークアドレスと送信側アプリケーション７３０に関連するポートを識別するために、キャッシュを有するパケットＩＤを用いる。マルチキャストリピータ（Ａ）７０８ａは、その後、ＵＤＰユニキャストアドレッシングを用いて応答パケット８３６を送信側アプリケーション７３０に送信する。
【００５０】
本システム及び方法は、様々な場面に使用することができる。
【００５１】
図９は本システム及び方法を実施することができるシステムの１つの実施例を示している。図９は、照明コントローラシステム９０８を含む照明システム９００の１つの実施例を示すブロック図である。図９の照明システム９００は、家庭内の種々の部屋に組み込むことができる。図示したように、システム９００は、部屋（Ａ）９０２、部屋（Ｂ）９０４、及び部屋（Ｃ）９０６を含んでいる。図９では３つの部屋が示されているが、システム９００は、家庭、居住、又は他の環境の中で、どのような数及び種類の部屋でも導入できる。
【００５２】
照明コントローラシステム９０８は、システム９００内で、追加組込みシステム及び装置を監視し、制御できる。１つの実施例において、部屋（Ａ）９０２と部屋（Ｂ）９０４は、それぞれスイッチ装置９１４、９１８を含んでいる。スイッチ装置９１４、９１８は、セカンダリ組込みシステム９１６、９２０もまた含むことができる。セカンダリ組込みシステム９１６、９２０は、照明コントローラシステム９０８からの指示を受信できる。セカンダリ組込みシステム９１６、９２０は、その後これらの指示を実行できる。その指示は、種々の照明装置９１０、９１２、９２２、９２４の電源を入れたり、電源を切ったりすることを含むことができる。その指示は、種々の照明装置９１０、９１２、９２２、９２４の明るさを薄暗くしたり、明るさを増強したりすることを含むことができる。その指示は、種々のパターンの照明装置９１０、９１２、９２２、９２４の明るさをアレンジすることを更に含むことができる。セカンダリ組込みシステム９１６、９２０は、部屋（Ａ）９０２と部屋（Ｂ）９０４にある各照明装置９１０、９１２、９２２、９２４を監視して制御するために、照明コントローラシステム９０８を円滑にする。
【００５３】
照明コントローラシステム９０８はまた、表現された部屋（Ｃ）９０６にセカンダリ組込みシステム９２８を含む照明装置９２６に直接指示を与えるかもしれない。照明コントローラシステム９０８は、個別の照明装置９２６をパワーアップ又はパワーダウンするために、セカンダリ組込みシステム９２８に指示することができる。同様に、照明コントローラシステム９０８から受信された指示は、個々の照明装置９２６の明るさを薄暗くしたり、明るさを増強したりすることを含むことができる。
【００５４】
照明コントローラシステム９０８はまた、システム９００内の個々の照明装置９３０及び９３２に対して、監視し、直接指示を与えることができる。これらの指示は、以前に説明したものと同様の指示を含むことができる。
【００５５】
図１０は、本発明の本システム及び方法を実施することができるシステムの追加実施例である。図１０は、セキュリティシステム１０００を示すブロック図である。描かれた実施例におけるセキュリティシステム１０００は、部屋（Ａ）１００２、部屋（Ｂ）１００４、部屋（Ｃ）１００６で実施される。これらの部屋は、家庭又は他の閉じられた環境の範囲にあってもよい。システム１０００はまた、部屋（Ａ）１００２、部屋（Ｂ）１００４、及び部屋（Ｃ）１００６がそれぞれ領域又は境界を表す、開かれた環境で実施することもできる。
【００５６】
システム１０００は、セキュリティコントローラシステム１００８を含んでいる。セキュリティコントローラシステム１００８は、システム１０００内の種々の装置を監視し、情報を受信する。例えば、動作センサ１０１４、１０１８は、セカンダリ組込みシステム１０１６を含むことができる。動きがセカンダリ組込みシステム１０１６、１０２０を介して検出されるとき、動作センサ１０１４、１０１８は、動きのために即座に空間を監視し、セキュリティコントローラシステム１００８に警告することができる。セキュリティコントローラシステム１００８はまた、システム１０００内の種々の装置にも指示を与えることができる。例えば、セキュリティコントローラシステム１００８は、窓センサ１０１０、１０２２とドアセンサ１０１２、１０２４を、パワーアップ又はパワーダウンするために、セカンダリ組込みシステム１０１６、１０２０へ指示を供給できる。１つの実施例において、セカンダリ組込みシステム１０１６、１０２０は、窓センサ１０１０、１０２２が窓の動きを検出した場合に、セキュリティコントローラシステム１００８に通知する。同様に、セカンダリ組込みシステム１０１６、１０２０は、ドアセンサ１０１２、１０２４がドアの動きを検出した場合に、セキュリティコントローラシステム１００８に通知する。セカンダリ組込みシステム１０１６、１０２０は、動作センサ１０１４、１０１８内に設置されたＬＥＤ（図示せず）を作動させるために、動作センサ１０１４、１０１８に対して指示できる。
【００５７】
セキュリティコントローラシステム１００８はまた、システム１０００内の個々の装置を監視し、直接指示を与えることができる。例えば、セキュリティコントローラシステム１００８は、動作センサ１０３０又は窓のセンサ１０３２を監視し、パワーアップ又はパワーダウンするための指示を与えることができる。セキュリティコントローラシステム１００８はまた、センサ１０３０及び１０３２内でＬＥＤ（図示せず）又はオーディオの警告通知を作動させるために、動作センサ１０３０と窓のセンサ１０３２に対して指示もできる
それぞれの個々の装置はまた、セカンダリ組込みシステムを含むことができるシステム１０００を備える。例えば、図１０はセカンダリ組込みシステム１０２８を含むドアセンサ１０２６を示している。セキュリティコントローラシステム１００８は、以前説明したのと同じような方法で、セカンダリ組込みシステム１０２８を監視し、指示を与えることができる。
【００５８】
図１１は、ホームコントロールシステム１１００の１つの実施例を示すブロック図である。ホームコントロールシステム１１００は、照明システム９００、セキュリティシステム１０００などの種々のシステムのモニタリングを容易にするホームコントローラ１１０８を含んでいる。ホームコントロールシステム１１００は、ユーザに、１つ以上の組込みシステムを通して、種々の装置とシステムを制御することを可能にしている。１つの実施例では、ホームコントローラシステム１１０８は、以前に図９及び図１０に関連して説明したのと同じ方法で、情報を監視して提供する。描かれている実施例では、ホームコントローラ１１０８は、セカンダリ組込みシステム１１２０を介して暖房装置１１２４に指示を与える。暖房装置１１２４は、居住場所又はオフィスで通常備えられる暖炉又は他の加熱装置を含むことができる。ホームコントローラシステム１１０８は、セカンダリ組込みシステム１１２０を介して、暖房装置１１２４をパワーアップ又はパワーダウンするための指示を与えることができる。
【００５９】
同様に、ホームコントローラ１１０８は、ホームコントロールシステム１１００内の冷房装置１１３０などの装置を監視して、直接指示を与えることができる。冷房装置１１３０は、居住場所又はオフィスで通常備えられるエアコン又は他の冷却装置を含むことができる。セントラルホームコントローラ１１０８は、セントラル組込みシステム１１０８によってコントロールされた計測温度に応じてパワーアップ又はパワーダウンするように、冷房装置１１３０に指示できる。ホームコントローラシステム１１００は、以前に図９及び図１０に関連して説明したのと同じ方法で機能する。
【００６０】
図１２は、コンピュータシステム１２０１で通常使用される主要なハードウェア機器を示すブロック図である。図示された装置は、同じ物理構造又は別々の住居又は構築物内に配置することができる。
【００６１】
コンピュータシステム１２０１は、プロセッサ１２０３とメモリ１２０５を含んでいる。プロセッサ１２０３は、コンピュータシステム１２０１の動作を制御して、当技術分野で既知のマイクロプロセッサ、マイクロコントローラ、デジタルシグナルプロセッサ（ＤＳＰ：Digital Signal Processor）又はその他の機器として具体化されることができる。プロセッサ１２０３は、通常、メモリ１２０５内に格納されたプログラム命令に基づいて、論理及び算術演算を実行する。
【００６２】
本明細書で用いられるように、タームメモリ１２０５は、電子的情報を格納できるどんな電子部品としても広く定義され、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、磁気ディスク記憶媒体、光記憶メディア、ＲＡＭのフラッシュメモリデバイス、プロセッサ１２０３に含まれるオンボードメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタなどとして、具体化されることができる、メモリ１２０５は、プログラム命令と他のタイプに関するデータを通常格納する。プログラム命令は、本明細書に開示された方法のいくつか又は全てを実施するために、プロセッサ１２０３によって実行されることができる。
【００６３】
コンピュータシステム１２０１はまた、他の電子装置と通信するための１つ以上通信インターフェース１２０７も通常含んでいる。通信インターフェース１２０７は、ワイヤードな通信技術、無線通信技術、又は両方に基づくことができる。通信インターフェース１２０７の異種の実施例は、シリアルポート、パラレルポート、ＵＳＢ（Universal Serial Bus）、イーサネットアダプタ、ＩＥＥＥ１３９４バスインタフェイス、ＳＣＳＩ（Small Computer System Interface）バスインタフェイス、赤外線（ＩＲ：Infrared）のＣＯＭポート、ブルートゥースのワイヤレスの通信アダプタなどを含んでいる。
【００６４】
コンピュータシステム１２０１はまた、１つ以上入力装置１２０９と１つ以上出力装置１２１１も通常含んでいる。異種の入力装置１２０９の実施例は、キーボード、マウス、マイクロホン、リモートコントロール装置、ボタン、ジョイスティック、トラックボール、タッチパッド、ライトペンなどを含んでいる。異種の出力装置１２１１の実施例は、スピーカー、プリンタなどを含んでいる。コンピュータシステムに通常含まれている１つの特定のタイプの出力装置は、ディスプレイ装置１２１３である。本明細書に開示される実施例と共に使用されるディスプレイ装置１２１３は、ＣＲＴ（Cathode Ray Tube）、ＬＣＤ（Liquid Crystal Display）、ＬＥＤ（Light-Emitting Diode）、ガスプラズマ、エレクトロルミネセンスなどのように、どのような適合するイメージプロジェクション技術も利用できる。ディスプレイ制御装置１２１５はまた、メモリ１２０５に格納されたデータを、ディスプレイ装置１２１３の上に（適宜）表示されるテキスト、図形、及び／又は動画像に変換するために、配置できる。
【００６５】
もちろん、図１２はコンピュータシステム１２０１の１つの可能な構造だけを示している。他の種々のアーキテクチャと装置を利用できる。
【００６６】
さまざまな異なった技術と手法のどれかを使用することで、情報と信号を表すことができる。データ、指示、コマンド、情報、信号、ビット、シンボル、及びチップは、例えば、電圧、電流、電磁波、磁場又は粒子、光波場又は粒子、又はそれのどのような組合せによって表すことができる上記の説明を通して参照できる。
【００６７】
本明細書に開示された実施例に関して説明した、種々の図示した論理ブロック、モジュール、回路、及びアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、又は両方の組合せとして実施することができる。明確にハードウェアとソフトウェアのこの互換性を図示するために、種々の図示された装置、ブロック、モジュール、回路、及びステップは、一般的に上記の機能性に関して説明されている。そのような機能性がハードウェア又はソフトウェアとして実施されるか否かは、システム全体に課された特殊用途と設計制約条件に依存する。当業者は、各特殊用途のための様々な方法における説明された機能性を実施することができるが、本発明の範囲からの逸脱しながら、そのような実施判断を解釈するべきでない。
【００６８】
本明細書に開示された実施例に関して説明された図示した論理ブロック、モジュール、及び回路は、汎用プロセッサ、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array signal）又は他のプログラマブル論理デバイス、離散的なゲート又はトランジスタロジック、離散的なハードウェア機器、又は本明細書に記載された機能を実行するように設計されたどのような組合せでも、実施又は実行できる。汎用プロセッサは、マイクロプロセッサであっても良いが、代替として、プロセッサは、どのような従来のプロセッサ、コントローラ、マイクロコントローラ、又はステートマシンであっても良い。プロセッサ又は、コンピュータ機器の組合せ、例えば、ＤＳＰとマイクロプロセッサ、複数のマイクロプロセッサ、ＤＳＰコアに関連した１つ以上マイクロプロセッサ、又はいかなる他のそのような形態の組合せとしても実施することができる。
【００６９】
本明細書に開示された実施例に関して説明された方法又はアルゴリズムのステップは、直接的にハードウェアで、プロセッサにより実行されるソフトウェアモジュールで、又は２つの組合せで、具体化されることができる。ソフトウェアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ−ＲＯＭ、又は当技術分野で既知の記憶媒体のいかなる他の形式にも常駐できる。例示された記憶媒体は、プロセッサが記憶媒体から情報を読み込んで、情報を書き込むことができるように、プロセッサと結合される。別の方法では、記憶媒体はプロセッサに不可欠であろう。プロセッサと記憶媒体は、ＡＳＩＣに常駐できる。ＡＳＩＣは、利用者端末に常駐できる。別の方法では、プロセッサと記憶媒体は、個別装置として利用者端末に常駐できる。
【００７０】
本明細書に開示された方法は、説明された方法を遂行するために、１つ以上のステップ又は動作を具備する。方法ステップ及び／又は動作は、本発明の範囲から逸脱しないで、互いに交換できる。言い換えれば、実施例の適切な動作のために、ステップ又は動作に特定の順序を要しない限り、特定のステップ及び／又は動作の順序及び／又は行使は、本発明の範囲を逸脱しないで変更できる。
【００７１】
本発明の特定の実施例とアプリケーションを図示して説明したが、本発明が本明細書に開示された正確な形態と装置に限定されないことを理解されるべきである。当分野の当業者にとって明白な種々の修正、変更、及びバリエーションは、本発明の趣旨と範囲から逸脱しないで、本明細書に開示した本発明のアレンジ、操作、及び方法やシステムの詳細を成しうることができるであろう。
【図面の簡単な説明】
【００７２】
【図１】一実施例によるＵＤＰマルチキャストトラフィックにネットワークブリッジを備えるためのシステムを示す。
【図２】一実施例によるマルチキャストリピータを具備するホストで提供できるソフトウェアコンポーネントと他のデータを示す。
【図３】一実施例によるＵＤＰマルチキャストリクエストパケットを示す。
【図４】マルチキャストを介して別のホストからそのネットワークでＵＤＰマルチキャストリクエストパケットを受信するときの、一実施例によるマルチキャストリピータの動作を示す。
【図５】別のネットワークで発生したＵＤＰマルチキャストリクエストパケットを受信して、ＴＣＰ／ＩＰを介してマルチキャストリピータに転送された、一実施例によるマルチキャストリピータの動作を示す。
【図６】ＵＤＰマルチキャスト応答パケットを受信するときの、一実施例によるマルチキャストリピータの動作を示す。
【図７】一実施例による異なるネットワークの様々なマルチキャストリピータの動作例を示す。
【図８】一実施例による異なるネットワークの様々なマルチキャストリピータの動作例を示す。
【図９】本システム及び方法を実施することができる照明システムの一例を示す。
【図１０】本システム及び方法を実施することができるセキュリティシステムの一例を示す。
【図１１】本システム及び方法を実施することができるホームコントローラシステムの一例を示す。
【図１２】コンピュータシステムで通常利用される主要なハードウェア機器を示すブロック図である。
【手続補正書】
【提出日】平成19年1月31日(2007.1.31)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ネットワーク上のホストコンピュータシステム上でマルチキャストリピータによって実行される、ＵＤＰマルチキャストトラフィックにネットワークブリッジを備えるための方法であって、
見つかった１つ以上の他のマルチキャストリピータの情報を保持し、各マルチキャストリピータは、ＵＤＰマルチキャストアドレッシングをルーティングするために構成されない少なくとも１つのネットワーク装置によって、ホストを備えるネットワークから分離される別々のネットワークに配置され、
マルチキャストを介して、ＵＤＰマルチキャストリクエストパケットを受信する各回において、
前記ＵＤＰマルチキャストリクエストパケットからグローバルにユニークなパケットＩＤを抽出し、
ＩＤキャッシュの中からパケットＩＤを検索することで、前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送したか否かを判断し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していた場合、前記ＵＤＰマルチキャストリクエストパケットを無視し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していない場合、見つかった前記１つ以上の他のマルチキャストリピータに前記ＵＤＰマルチキャストリクエストパケットを送信し、前記パケットＩＤを前記ＩＤキャッシュに記録する
ことを含むことを特徴とする方法。
【請求項２】
前記ＵＤＰマルチキャストリクエストパケットは、見つかった前記１つ以上他のマルチキャストリピータに、ＴＣＰ／ＩＰを介して送信されることを特徴とする請求項１記載の方法。
【請求項３】
前記ＵＤＰマルチキャストリクエストパケットを前記１つ以上の他のマルチキャストリピータに送信する前に、ラッパプロトコルに従って、前記ＵＤＰマルチキャストリクエストパケットのデータをカプセル化することを、更に含むことを特徴とする請求項１記載の方法。
【請求項４】
異なるネットワーク上の別のマルチキャストリピータから転送されたＵＤＰマルチキャストリクエストパケットを受信するときはいつも、前記マルチキャストリピータのネットワーク上のマルチキャストを介して、前記転送されたＵＤＰマルチキャストリクエストパケットを送信することを、更に含むことを特徴とする請求項１記載の方法。
【請求項５】
前記転送されたＵＤＰマルチキャストリクエストパケットが受信されたとき、前記転送されたＵＤＰマルチキャストリクエストパケットのデータは、ラッパプロトコルに従ってカプセル化されており、
前記カプセル化されたデータを得るために、前記転送されたＵＤＰマルチキャストリクエストパケットを開封することを、更に含むことを特徴とする請求項４記載の方法。
【請求項６】
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していない場合、前記ＵＤＰマルチキャストリクエストパケットが前記ＩＤキャッシュに起因するネットワークアドレスとポートを記録することを、更に含むことを特徴とする請求項１記載の方法。
【請求項７】
ＵＤＰサーバが受信するどのようなＵＤＰマルチキャストパケットも受信するために、前記ホストコンピュータシステムに前記ＵＤＰサーバを登録することを、更に含むことを特徴とする請求項１記載の方法。
【請求項８】
ＵＤＰマルチキャスト応答パケットが受信されるときはいつも、対応するＵＤＰマルチキャストリクエストパケットが前記ネットワークで発生したか否かを判断することを、更に含むことを特徴とする請求項１記載の方法。
【請求項９】
前記対応するＵＤＰマルチキャストリクエストパケットが前記ネットワークで発生した場合、
前記対応するＵＤＰマルチキャストリクエストパケットのために送信側アプリケーションを特定し、
前記ＵＤＰマルチキャスト応答パケットを前記送信側アプリケーションに送信する
ことを更に含むことを特徴とする請求項８記載の方法。
【請求項１０】
前記ＵＤＰマルチキャスト応答パケットは、ＵＤＰユニキャストアドレッシングを用いて前記送信側アプリケーションに送信されることを特徴とする請求項９記載の方法。
【請求項１１】
前記送信側アプリケーションを特定するにおいて、
前記ＵＤＰマルチキャスト応答パケットからグローバルにユニークなパケットＩＤを抽出し、
ＩＤキャッシュ内の送信元ホストのネットワークアドレスと送信側アプリケーションのポートを調べるために前記パケットＩＤを使用する
ことを更に含むことを特徴とする請求項９記載の方法。
【請求項１２】
前記マルチキャストリピータが以前に転送したどのようなＵＤＰマルチキャストリクエストパケットにも対応しないどのような受信されたＵＤＰマルチキャスト応答パケットも無視することを、更に含むことを特徴とする請求項１記載の方法。
【請求項１３】
前記ネットワーク装置は、ルーターとファイアウォールから成るグループから選ばれることを特徴とする請求項１記載の方法。
【請求項１４】
ネットワークブリッジをＵＤＰマルチキャストトラフィックに備えるための方法を実行するために構成されるホストコンピュータシステムであって、
プロセッサと、
前記プロセッサを有する電子通信におけるメモリと、
前記メモリに格納されたマルチキャストリピータとを備え、方法を実行するために実行可能である前記マルチキャストリピータは、
見つかった１つ以上の他のマルチキャストリピータの情報を保持し、各マルチキャストリピータは、ＵＤＰマルチキャストアドレッシングをルーティングするために構成されない少なくとも１つのネットワーク装置によって、ホストを備えるネットワークから分離される別々のネットワークに配置され、
マルチキャストを介して、ＵＤＰマルチキャストリクエストパケットを受信する各回において、
前記ＵＤＰマルチキャストリクエストパケットからグローバルにユニークなパケットＩＤを抽出し、
ＩＤキャッシュの中からパケットＩＤを検索することで、前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送したか否かを判断し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していた場合、前記ＵＤＰマルチキャストリクエストパケットを無視し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していない場合、見つかった前記１つ以上の他のマルチキャストリピータに前記ＵＤＰマルチキャストリクエストパケットを送信し、前記パケットＩＤを前記ＩＤキャッシュに記録する
ことを含むことを特徴とするホストコンピュータシステム。
【請求項１５】
メモリに格納され、前記マルチキャストリピータを備えるサーバアプリケーションと、
前記ホストコンピュータシステム上でマルチキャストアドレスとポートをリッスンするために構成される、前記サーバアプリケーション内のＵＤＰサーバと、
１つ以上の他のマルチキャストリピータにＴＣＰ／ＩＰ接続を確立するために構成される、サーバアプリケーション内のＴＣＰ／ＩＰ接続モジュールと
を更に備えることを特徴とする請求項１４記載のホストコンピュータシステム。
【請求項１６】
ネットワークブリッジをＵＤＰマルチキャストトラフィックに備えるために方法を実行するために実行可能な指示を備えるコンピュータ読み込み可能な媒体であって、前記方法は、
見つかった１つ以上の他のマルチキャストリピータの情報を保持し、各マルチキャストリピータは、ＵＤＰマルチキャストアドレッシングをルーティングするために構成されない少なくとも１つのネットワーク装置によって、ホストを備えるネットワークから分離される別々のネットワークに配置され、
マルチキャストを介して、ＵＤＰマルチキャストリクエストパケットを受信する各回において、
前記ＵＤＰマルチキャストリクエストパケットからグローバルにユニークなパケットＩＤを抽出し、
ＩＤキャッシュの中からパケットＩＤを検索することで、前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送したか否かを判断し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していた場合、前記ＵＤＰマルチキャストリクエストパケットを無視し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していない場合、見つかった前記１つ以上の他のマルチキャストリピータに前記ＵＤＰマルチキャストリクエストパケットを送信し、前記パケットＩＤを前記ＩＤキャッシュに記録する
ことを含むことを特徴とするコンピュータ読み込み可能な媒体。
【請求項１７】
前記ＩＤキャッシュに記録されるパケットＩＤを限定的な時間だけ有効とすることを特徴とする請求項１記載の方法。
【手続補正書】
【提出日】平成19年8月3日(2007.8.3)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ネットワーク上のホストコンピュータシステム上でマルチキャストリピータによって実行される、ＵＤＰマルチキャストトラフィックにネットワークブリッジを備えるための方法であって、
見つかった１つ以上の他のマルチキャストリピータの情報を保持し、各マルチキャストリピータは、ＵＤＰマルチキャストアドレッシングをルーティングするために構成されない少なくとも１つのネットワーク装置によって、ホストを備えるネットワークから分離される別々のネットワークに配置され、
マルチキャストを介して、ＵＤＰマルチキャストリクエストパケットを受信する各回において、
前記ＵＤＰマルチキャストリクエストパケットからグローバルにユニークなパケットＩＤを抽出し、
ＩＤキャッシュの中からパケットＩＤを検索することで、前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送したか否かを判断し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していた場合、前記ＵＤＰマルチキャストリクエストパケットを無視し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していない場合、見つかった前記１つ以上の他のマルチキャストリピータに前記ＵＤＰマルチキャストリクエストパケットを送信し、前記パケットＩＤを前記ＩＤキャッシュに記録することを含み、
ＵＤＰマルチキャスト応答パケットが受信されるときはいつも、対応するＵＤＰマルチキャストリクエストパケットが前記ネットワークで発生したか否かを判断することを、更に含むことを特徴とする方法。
【請求項２】
前記対応するＵＤＰマルチキャストリクエストパケットが前記ネットワークで発生した場合、
前記対応するＵＤＰマルチキャストリクエストパケットのために送信側アプリケーションを特定し、
前記ＵＤＰマルチキャスト応答パケットを前記送信側アプリケーションに送信する
ことを更に含むことを特徴とする請求項１記載の方法。
【請求項３】
前記ＵＤＰマルチキャスト応答パケットは、ＵＤＰユニキャストアドレッシングを用いて前記送信側アプリケーションに送信されることを特徴とする請求項２記載の方法。
【請求項４】
前記送信側アプリケーションを特定するにおいて、
前記ＵＤＰマルチキャスト応答パケットからグローバルにユニークなパケットＩＤを抽出し、
ＩＤキャッシュ内の送信元ホストのネットワークアドレスと送信側アプリケーションのポートを調べるために前記パケットＩＤを使用する
ことを更に含むことを特徴とする請求項２記載の方法。
【請求項５】
ネットワーク上のホストコンピュータシステム上でマルチキャストリピータによって実行される、ＵＤＰマルチキャストトラフィックにネットワークブリッジを備えるための方法であって、
見つかった１つ以上の他のマルチキャストリピータの情報を保持し、各マルチキャストリピータは、ＵＤＰマルチキャストアドレッシングをルーティングするために構成されない少なくとも１つのネットワーク装置によって、ホストを備えるネットワークから分離される別々のネットワークに配置され、
マルチキャストを介して、ＵＤＰマルチキャストリクエストパケットを受信する各回において、
前記ＵＤＰマルチキャストリクエストパケットからグローバルにユニークなパケットＩＤを抽出し、
ＩＤキャッシュの中からパケットＩＤを検索することで、前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送したか否かを判断し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していた場合、前記ＵＤＰマルチキャストリクエストパケットを無視し、
前記マルチキャストリピータが以前に前記ＵＤＰマルチキャストリクエストパケットを転送していない場合、見つかった前記１つ以上の他のマルチキャストリピータに前記ＵＤＰマルチキャストリクエストパケットを送信し、前記パケットＩＤを前記ＩＤキャッシュに記録することを含み、
前記マルチキャストリピータが以前に転送したどのようなＵＤＰマルチキャストリクエストパケットにも対応しないどのような受信されたＵＤＰマルチキャスト応答パケットも無視することを、更に含むことを特徴とする方法。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、一般的なコンピュータとコンピュータ関連技術に関する。より具体的には、本発明はネットワークブリッジをＵＤＰマルチキャストトラフィックに備えるための方法に関する。
【国際調査報告】
2008511188.tif 000003
2008511188.tif 000004