(57)【要約】  ネットワークにおける通信量を過大に増加させないことと、配信先としている目的のノードにデータが届かないことをできるだけ回避できることとの両方を達成できるネットワークノードを提供する。非構造型配信をすることが可能なネットワークの中で前記非構造型配信に従ってデータを配信するための非構造型配信手段と、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するための構造型配信手段と、所定の評価方法を用いて、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択する選択手段と、を備え、前記選択手段により前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記ネットワークの中でデータを配信する。
2014050386.tif 000002
【特許請求の範囲】
【請求項１】
非構造型配信をすることが可能なネットワークの中で前記非構造型配信に従ってデータを配信するための非構造型配信手段と、
前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するための構造型配信手段と、
所定の評価方法を用いて、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択する選択手段と、
を備え、
前記選択手段により前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記ネットワークの中でデータを配信することを特徴とするネットワークノード。
【請求項２】
請求項１に記載のネットワークノードであって、
前記構造型配信は、複数の階層を用いたツリー型配信であり、
前記選択手段は、当該ネットワークノードから見た上位ノードが属する階層と下位ノードが属する階層とのそれぞれに対して、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択し、
前記選択手段により前記上位ノードが属する階層と前記下位ノードが属する階層とのそれぞれに対して前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記上位ノードが属する階層と前記下位ノードが属する階層とのそれぞれに対してデータを配信することを特徴とするネットワークノード。
【請求項３】
請求項１に記載のネットワークノードであって、
前記構造型配信は、ツリー型配信、ループ型配信及びディストリビュート・ハッシュ・テーブルに従った同報配信からなる群から選択されたものであることを特徴とするネットワークノード。
【請求項４】
請求項１乃至３の何れか１項に記載のネットワークノードであって、
前記非構造型配信は、エピデミック配信及びフラッド型配信からなる群から選択されたものであることを特徴とするネットワークノード。
【請求項５】
請求項１乃至４の何れか１項に記載のネットワークノードであって、
前記所定の評価方法は、トラフィック量に関する評価基準に従った評価方法、ネットワーク状態に関する評価基準に従った評価方法及びコンテンツ内容に関する評価基準に従った評価方法のうちの何れか１つ又はこれらの２以上の組合せを含むことを特徴とするネットワークノード。
【請求項６】
請求項５に記載のネットワークノードであって、
前記トラフィック量に関する評価基準は、ファイルサイズに関する評価基準及び配信先ノード数に関する評価基準のうちの何れか又はこれらの組合せを含むことを特徴とするネットワークノード。
【請求項７】
請求項５又は６に記載のネットワークノードであって、
前記ネットワーク状態に関する評価基準に従った評価は、リンクの安定度に関する評価基準、配信可能な階層レベルに関する評価基準及びリンクの帯域に関する評価基準のうちの何れか又はこれらの２以上の組合せを含むことを特徴とするネットワークノード。
【請求項８】
請求項５乃至７の何れか１項に記載のネットワークノードであって、
前記コンテンツ内容に関する評価基準に従った評価は、コンテンツの重要度に関する評価基準、コンテンツの緊急性に関する評価基準及びコンテンツの優先度に関する評価基準のうちの何れか又はこれらの２以上の組合せを含むことを特徴とするネットワークノード。
【請求項９】
請求項１乃至８の何れか１項に記載のネットワークノードであって、
データを配信する範囲を表す情報に基づいて、当該ネットワークノードからの前記配信の実行を許可し又は禁止する手段を更に備えることを特徴とするネットワークノード。
【請求項１０】
請求項１乃至９の何れか１項に記載のネットワークノードにおいて、
前記構造型配信手段が、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するためのデータを保持する第１のデータ保持部を更に備えることを特徴とするネットワークノード。
【請求項１１】
請求項１乃至１０の何れか１項に記載のネットワークノードにおいて、
前記選択手段が、所定の評価方法を用いて、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択するためのデータを保持する第２のデータ保持部を更に備えることを特徴とするネットワークノード。
【請求項１２】
ネットワークノードで行われる配信方法であって、
所定の評価方法を用いて、非構造型配信をすることが可能なネットワークの中で前記非構造型配信に従ってデータを配信するための構造型配信手段、又は、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するための非構造型配信手段を同報配信手段として選択する選択ステップと、
前記選択ステップにより前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記ネットワークの中でデータを配信する配信ステップと、
を有することを特徴とする配信方法。
【請求項１３】
請求項１２に記載の配信方法であって、
前記構造型配信は、複数の階層を用いたツリー型配信であり、
前記選択ステップでは、当該ネットワークノードから見た上位ノードが属する階層と下位ノードが属する階層とのそれぞれに対して、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択し、
前記選択ステップにより前記上位ノードが属する階層と前記下位ノードが属する階層とのそれぞれに対して前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記上位ノードが属する階層と前記下位ノードが属する階層とのそれぞれに対してデータを配信することを特徴とする配信方法。
【請求項１４】
請求項１２に記載の配信方法であって、
前記構造型配信は、ツリー型配信、ループ型配信及びディストリビュート・ハッシュ・テーブルに従った同報配信からなる群から選択されたものであることを特徴とする配信方法。
【請求項１５】
請求項１２乃至１４の何れか１項に記載の配信方法であって、
前記非構造型配信は、エピデミック配信及びフラッド型配信からなる群から選択されたものであることを特徴とする配信方法。
【請求項１６】
請求項１２乃至１５の何れか１項に記載の配信方法であって、
前記所定の評価方法は、トラフィック量に関する評価基準に従った評価方法、ネットワーク状態に関する評価基準に従った評価方法及びコンテンツ内容に関する評価基準に従った評価方法のうちの何れか１つ又はこれらの２以上の組合せを含むことを特徴とする配信方法。
【請求項１７】
請求項１６に記載の配信方法であって、
前記トラフィック量に関する評価基準は、ファイルサイズに関する評価基準及び配信先ノード数に関する評価基準のうちの何れか又はこれらの組合せを含むことを特徴とする配信方法。
【請求項１８】
請求項１６又は１７に記載の配信方法であって、
前記ネットワーク状態に関する評価基準に従った評価は、リンクの安定度に関する評価基準、配信可能な階層レベルに関する評価基準及びリンクの帯域に関する評価基準のうちの何れか又はこれらの２以上の組合せを含むことを特徴とする配信方法。
【請求項１９】
請求項１６乃至１８の何れか１項に記載の配信方法であって、
前記コンテンツ内容に関する評価基準に従った評価は、コンテンツの重要度に関する評価基準、コンテンツの緊急性に関する評価基準及びコンテンツの優先度に関する評価基準のうちの何れか又はこれらの２以上の組合せを含むことを特徴とする配信方法。
【請求項２０】
請求項１２乃至１９の何れか１項に記載の配信方法であって、
データを配信する範囲を表す情報に基づいて、当該ネットワークノードからの前記配信の実行を許可し又は禁止するステップを更に有することを特徴とする配信方法。
【請求項２１】
請求項１２乃至２０の何れか１項に記載の配信方法において、
前記構造型配信手段が、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するためのデータを保持する第１のデータ保持ステップを更に有することを特徴とする配信方法。
【請求項２２】
請求項１２乃至２１の何れか１項に記載の配信方法において、
前記選択ステップで、所定の評価方法を用いて、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択するためのデータを保持する第２のデータ保持ステップを更に有することを特徴とする配信方法。
【請求項２３】
コンピュータをネットワークノードとして機能させるためのネットワークノード用プログラムであって、
前記コンピュータを、
非構造型配信をすることが可能なネットワークの中で前記非構造型配信に従ってデータを配信するための非構造型配信手段と、
前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するための構造型配信手段と、
所定の評価方法を用いて、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択する選択手段と、
として機能させ、
当該ネットワークノードは、前記選択手段により前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記ネットワークの中でデータを配信することを特徴とするネットワークノード用プログラム。
【請求項２４】
請求項２３に記載のネットワークノード用プログラムであって、
前記構造型配信は、複数の階層を用いたツリー型配信であり、
前記選択手段は、当該ネットワークノードから見た上位ノードが属する階層と下位ノードが属する階層とのそれぞれに対して、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択し、
前記選択手段により前記上位ノードが属する階層と前記下位ノードが属する階層とのそれぞれに対して前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記上位ノードが属する階層と前記下位ノードが属する階層とのそれぞれに対してデータを配信することを特徴とするネットワークノード用プログラム。
【請求項２５】
請求項２３に記載のネットワークノード用プログラムであって、
前記構造型配信は、ツリー型配信、ループ型配信及びディストリビュート・ハッシュ・テーブルに従った同報配信からなる群から選択されたものであることを特徴とするネットワークノード用プログラム。
【請求項２６】
請求項２３乃至２５の何れか１項に記載のネットワークノード用プログラムであって、前記非構造型配信は、エピデミック配信及びフラッド型配信からなる群から選択されたものであることを特徴とするネットワークノード用プログラム。
【請求項２７】
請求項２３乃至２６の何れか１項に記載のネットワークノード用プログラムであって、前記所定の評価方法は、トラフィック量に関する評価基準に従った評価方法、ネットワーク状態に関する評価基準に従った評価方法及びコンテンツ内容に関する評価基準に従った評価方法のうちの何れか１つ又はこれらの２以上の組合せを含むことを特徴とするネットワークノード用プログラム。
【請求項２８】
請求項２７に記載のネットワークノード用プログラムであって、
前記トラフィック量に関する評価基準は、ファイルサイズに関する評価基準及び配信先ノード数に関する評価基準のうちの何れか又はこれらの組合せを含むことを特徴とするネットワークノード用プログラム。
【請求項２９】
請求項２７又は２８に記載のネットワークノード用プログラムであって、
前記ネットワーク状態に関する評価基準に従った評価は、リンクの安定度に関する評価基準、配信可能な階層レベルに関する評価基準及びリンクの帯域に関する評価基準のうちの何れか又はこれらの２以上の組合せを含むことを特徴とするネットワークノード用プログラム。
【請求項３０】
請求項２７乃至２９の何れか１項に記載のネットワークノード用プログラムであって、前記コンテンツ内容に関する評価基準に従った評価は、コンテンツの重要度に関する評価基準、コンテンツの緊急性に関する評価基準及びコンテンツの優先度に関する評価基準のうちの何れか又はこれらの２以上の組合せを含むことを特徴とするネットワークノード用プログラム。
【請求項３１】
請求項２３乃至３０の何れか１項に記載のネットワークノード用プログラムであって、前記コンピュータを、更に、
データを配信する範囲を表す情報に基づいて、当該ネットワークノードからの前記配信の実行を許可し又は禁止する手段として機能させるためのネットワークノード用プログラム。
【請求項３２】
請求項２３乃至３１の何れか１項に記載のネットワークノード用プログラムにおいて、前記コンピュータを、更に、
前記構造型配信手段が、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するためのデータを保持する第１のデータ保持部として機能させるためのネットワークノード用プログラム。
【請求項３３】
請求項２３乃至３２の何れか１項に記載のネットワークノード用プログラムにおいて、前記コンピュータを、更に、
前記選択手段が、所定の評価方法を用いて、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択するためのデータを保持する第２のデータ保持部として機能させるためのネットワークノード用プログラム。
【請求項３４】
複数のネットワークノードを備えるネットワークであって、
少なくとも一部のネットワークノードの各々が、請求項１乃至１１の何れか１項に記載のネットワークノードであることを特徴とするネットワーク。 
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、非構造型配信をすることができるネットワーク、そのネットワークの構成要素であるネットワークノード、ネットワークノードで行われる配信方法及びネットワークノードで用いられるネットワークノード用プログラムに関する。
【背景技術】
【０００２】
通常、階層化されたアドホック・ネットワークにおいて、同報配信が行われ、特に、無線リンクによって接続されたノード間で構成される階層型のアドホック・ネットワーク上において、データの同報配信が行われる。【０００３】
無線リンクによって接続されたノード（端末）間でデータを同報配信し、共有するという仕組みは、従来より幅広いアプリケーションによって利用されている。例えば、各ノードがネットワーク内に存在する他のノードに対して自身の位置情報を同報配信することにより、ネットワーク内の各ノードは、互いの位置情報を共有することが可能となる。他にも、各ノードがもつセンサの情報（温度、消費電力、など）を同報配信し共有するなど、多くの利用形態が考えられる。【０００４】
無線リンクによるノード間の接続は、移動や外乱によって電波状況が変化するため、必ずしも安定であるとは限らない。そのため、ノード間の接続が不安定であっても高信頼な通信を可能とする、ＤＴＮ（Ｄｅｌａｙ／Ｄｉｓｒｕｐｔｉｏｎ−Ｔｏｌｅｒａｎｔ  Ｎｅｔｗｏｒｋ）と呼ばれる通信方法が提案されている。【０００５】
ＤＴＮにおける同報配信方法としては、非特許文献１で述べられているように、エピデミック（ｅｐｉｄｅｍｉｃ）配信による方法が開示されている。【０００６】
エピデミック配信では、各ノードの保持データ（共有すべきデータ）を要約した情報を通知するメッセージである、サマリベクタ（Ｓｕｍｍａｒｙ  Ｖｅｃｔｏｒ；以下ＳＶと省略）を用いて情報の同期を行うことを特徴とする。ネットワーク内の各ノードは他のノードの隣接を検知すると、互いにＳＶを交換し、隣接ノードのＳＶの内容を調べる。そして、自ノードが保持していないデータを検出すると、そのデータを隣接ノードへ要求して取得する。この動作を繰り返すことにより、ネットワークの隅々まで共有すべきデータを行き渡らせる。【０００７】
エピデミック配信の欠点としては、スケーラビリティに乏しいことが挙げられる。上述したように、共有すべきデータは、ネットワークの隅々まで行き渡ってしまうため、ネットワーク全体として共有すべきデータが多い場合や、ネットワーク内のノード数が多い場合は、共有のためのメッセージ・データ転送量が問題となる。【０００８】
また、ＳＶは隣接検出や保持データの違いを契機に送信されるため、多くのノードが互いに伝播距離内に局所的に集まる場合などは、フラッディング（ｆｌｏｏｄｉｎｇ）による同報配信と同様に、重複してメッセージ・データが送受信される。そのトラフィック量は、最大で局所的に集まったノード数の２乗に比例する。したがって、エピデミック配信はスケーラビリティに優れた同報配信とはいえない。【０００９】
そこで、同報配信をスケーラブルに行うための別の方法として、特許文献１に述べられている方法が挙げられる。【００１０】
特許文献１では、ＴＣＰ／ＩＰネットワーク上でマルチキャストを行う方法として、物理トポロジ上にツリー構造の論理ネットワークを構成し、ツリー上で同報配信（ツリー型配信）を行う方法が開示されている。【００１１】
ツリー型配信の利点として、フラッディングやエピデミック配信とは異なり、重複してメッセージ・データの送受信が行われないため、同報配信に必要なトラフィック量はノード数に比例する量で済み、効率的な同報配信が可能であるということが挙げられる。【００１２】
しかしながら、このようなツリー型配信はネットワークのトポロジにエンド−エンドの接続性があることが前提となるため、ＤＴＮが前提とするような、必ずしもエンド−エンドの接続性が保証されない状況において必ずしも適用できるとは限らない。【００１３】
また、特許文献２では、無線アドホック・ネットワークを複数のクラスタに区切り、データを送信する方法が開示されている。また、特許文献２の図３に示されているように、各クラスタに代表ノード（クラスタヘッド）を指定し、代表ノード間でさらにクラスタを構成することを再帰的に行うことによって、階層構造をつくることも可能である。【００１４】
特許文献２で開示されている方法も、特許文献１のツリー型配信と同様、エンド−エンドの接続性があることが前提となるため、ＤＴＮが前提とするような、必ずしもエンド−エンドの接続性が保証されない状況において必ずしも適用できるとは限らない。しかしながら、無線リンクの接続が安定した区間において、このようにクラスタを構成することの応用例として、同報配信の範囲をクラスタ内に制限して、同報配信に要するトラフィック量を削減するということが考えられる。また、階層構造を構成することの応用例としては、クラスタヘッド間で構成される階層ツリーに沿う形で同報配信を行うことが考えられる。
【先行技術文献】
【特許文献】
【００１５】
【特許文献１】特開２００６‐２２２９８７号公報
【特許文献２】特表２００５‐５２４３５７号公報
【特許文献３】特開２００３−０７８５３０号公報
【特許文献４】特開２００７−３６３９７号公報
【非特許文献】
【００１６】
【非特許文献１】Ａ．  Ｖａｈｄａｔ，  Ｄ．  Ｂｅｃｋｅｒ，  “Ｅｐｉｄｅｍｉｃ  Ｒｏｕｔｉｎｇ  ｆｏｒ  Ｐａｒｔｉａｌｌｙ−Ｃｏｎｎｅｃｔｅｄ  Ａｄ  Ｈｏｃ  Ｎｅｔｗｏｒｋｓ”  Ｔｅｃｈ．  Ｒｅｐｏｒｔ  ＣＳ−２００００６，  Ｄｕｋｅ  Ｕｎｉｖｅｒｓｉｔｙ，  Ａｐｒ．  ２０００．
【非特許文献２】Ｓｈｕ  Ｄｕ，  Ａｈａｍｅｄ  Ｋｈａｎ，  Ｓａｎｔａｓｈｉｌ  Ｐａｌｃｈａｕｄｈｕｒｉ，  Ａｎｓｌｅｙ  Ｐｏｓｔ，  Ａｍｉｔ  Ｋｕｍａｒ  Ｓａｈａ，  Ｐｅｔｅｒ  Ｄｒｕｓｃｈｅｌ，  Ｄａｖｉｄ  Ｂ．  Ｊｏｈｎｓｏｎ，  Ｒｕｄｏｌｆ  Ｒｉｅｄｉ，  “Ｓａｆａｒｉ：  Ｓｅｌｆ−Ｏｒｇａｎｉｚｉｎｇ  Ｈｉｅｒａｒｃｈｉｃａｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｓｃａｌａｂｌｅ  Ａｄ  Ｈｏｃ  Ｎｅｔｗｏｒｋｉｎｇ，”  Ｉｎ  ＡＣＭ  Ａｄ  Ｈｏｃ  Ｎｅｔｗｏｒｋｓ，  Ｖｏｌ．  ６，  Ｉｓｓ．  ４，  ｐｐ  ４
【発明の概要】
【発明が解決しようとする課題】
【００１７】
背景技術において述べたように、ＤＴＮにおいては、同報配信を行うための手段として、いくつかの候補が考えられる。【００１８】
具体的には、リンクの接続が不安定な状況においても確実性の高い同報配信を行うためには、トラフィック量が大きいという欠点があるものの、エピデミック配信が有効である。しかし、上述したように、エピデミック配信の通信量は、最大で、配信先のノード数の２乗に比例するため、離れているノードまでエピデミック配信をすることは効率的ではない。【００１９】
また、リンクの接続性が安定した区間においては、ツリー型配信によって同報配信を行うことが有効である。また、ツリー型配信のためのツリーをつくるための有望なアプローチの１つとして、階層構造を構成することが考えられる。しかし、上述したように、ツリー型配信は、ネットワークのトポロジにエンド−エンドの接続性があることが前提となるため、そのような接続性がない場合には、ツリー型配信を行っても、配信先としている目的のノードにデータが届かない場合が生じる。【００２０】
なお、特許文献３には、階層構造がなく無線通信装置が相互に平等な関係にあるフラット形の自律分散無線ネットワークにおいて、効率的な経路制御を実現することを目的とし、無線通信装置をクラスタ化し、各無線通信装置において、メッセージの宛先がクラスタ内の無線通信装置であれば、回線品質に基づいて経路検索をして、中継先を決定し、メッセージの宛先がクラスタ外の無線通信装置であれば、中継回数に基づき中継先を決定する技術が記載されている。メッセージの宛先の無線通信装置がクラスタ内にあるかクラスタ外にあるかによって、中継先の決定に用いるものは異なるが、何れの場合であっても、中継方法は自律分散型なものである。特に、特許文献３では、ネットワークへの階層構造の導入を回避している。従って、クラスタの階層構造も回避している。【００２１】
また、特許文献４には、アドホック・ネットワークにおいて、任意のノードから特定のノードに向けて緊急メッセージを送信するために各ノードに経路管理テーブルに設ける技術が記載されている。緊急メッセージは、その経路管理テーブルに従ってルーティングされ、他のメッセージは、アドホック・ネットワークにおける通常のプロトコルに従って配信される。従って、各ノードは、メッセージが緊急メッセージであるか、それ以外のメッセージであるかという区別のみに従って、送信方法を切り替えるのみである。【００２２】
本発明は上記の課題に鑑みてなされたものであり、ネットワークにおける通信量を過大に増加させないことと、配信先としている目的のノードにデータが届かないことをできるだけ回避できることとの両方を達成できるネットワーク、ネットワークノード、配信方法及びネットワークノード用プログラムを提供することを目的とする。
【課題を解決するための手段】
【００２３】
本発明の第１の観点によれば、非構造型配信をすることが可能なネットワークの中で前記非構造型配信に従ってデータを配信するための非構造型配信手段と、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するための構造型配信手段と、所定の評価方法を用いて、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択する選択手段と、を備え、前記選択手段により前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記ネットワークの中でデータを配信することを特徴とするネットワークノードが提供される。【００２４】
また、本発明の第２の観点によれば、ネットワークノードで行われる配信方法であって、所定の評価方法を用いて、非構造型配信をすることが可能なネットワークの中で前記非構造型配信に従ってデータを配信するための構造型配信手段、又は、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するための非構造型配信手段を同報配信手段として選択する選択ステップと、前記選択ステップにより前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記ネットワークの中でデータを配信する配信ステップと、を有することを特徴とする配信方法が提供される。【００２５】
更に、本発明の第３の観点によれば、コンピュータをネットワークノードとして機能させるためのネットワークノード用プログラムであって、前記コンピュータを、非構造型配信をすることが可能なネットワークの中で前記非構造型配信に従ってデータを配信するための非構造型配信手段と、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するための構造型配信手段と、所定の評価方法を用いて、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択する選択手段と、として機能させ、当該ネットワークノードは、前記選択手段により前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記ネットワークの中でデータを配信することを特徴とするネットワークノード用プログラムが提供される。【００２６】
更に、本発明の第４の観点によれば、複数のネットワークノードを備えるネットワークであって、少なくとも一部のネットワークノードの各々が、上記のネットワークノードであることを特徴とするネットワークが提供される。
【発明の効果】
【００２７】
本発明によれば、ネットワークにおける通信量を過大に増加させないことと、配信先としている目的のノードにデータが届かないことをできるだけ回避できることとの両方を達成できる。
【図面の簡単な説明】
【００２８】
【図１】本発明の第１の実施の形態の構成を示すブロック図である。
【図２】本発明の第１の実施の形態における階層構造を示す図である。
【図３】本発明の第１の実施の形態におけるツリー構造を示す図である。
【図４】本発明の第１の実施の形態における３種類の配信ポリシ設定テーブルの例である。
【図５】本発明の第１の実施の形態における階層構造テーブルの例である。
【図６】本発明の第１の実施の形態における流れ図である。
【図７】本発明の第２の実施の形態の構成を示すブロック図である。
【図８】本発明の第２の実施の形態における配信ポリシ設定テーブルの例である。
【図９】本発明の第２の実施の形態における流れ図である。
【発明を実施するための形態】
【００２９】
本実施形態では、ＤＴＮにおいて、各ネットワークノードは、２以上の同報配信手段を状況に応じて使い分ける。２以上の同報配信手段を使い分けるためには、例えば、エピデミック配信手段とツリー型配信手段のいずれかを選択する、という単純な解決ではなく、一貫した形で各同報配信手段における付帯的なパラメータをその都度解決する。
【００３０】
［第１の実施の形態］
次に、本発明の第１の実施の形態について図面を参照して詳細に説明する。
【００３１】
図１を参照すると、本発明の第１の実施の形態は、ノードＡ１を含む。ノードＡ１は、無線リンクによってネットワークに接続された通信機器であり、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）やスマートフォンなどの自ノード内でアプリケーションが実行される通信端末であってもよいし、アクセスポイントのような配下の端末で実行されるアプリケーションからの通信を中継する通信装置であってもよい。以下では、ノードＡ１が通信端末である場合について説明する。
【００３２】
ノードＡ１は、アプリケーションＡ１１と、同報配信制御部Ａ１２と、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）部Ａ１３を含む。
【００３３】
アプリケーションＡ１１は、同報配信を行うアプリケーションであり、例えば、自ノードの位置情報やセンサ情報など、他のノードと共有すべきデータを他のノードに対して同報配信するアプリケーションなどが考えられる。アプリケーションＡ１１は、同報配信を行うデータを同報配信制御部Ａ１２に対して渡し、また、他ノードから同報配信されたデータを同報配信制御部Ａ１２から受信する。
【００３４】
同報配信制御部Ａ１２は、同報配信データ送受信部Ａ１２１と、同報配信手段解決部Ａ１２２と、配信ポリシ設定テーブル（本発明の第２のデータ保持部が対応する）Ａ１２３と、階層構造テーブル（本発明の第１のデータ保持部が対応する）Ａ１２４と、階層構造構成部Ａ１２５と、ツリー型配信部Ａ１２６と、エピデミック配信部Ａ１２７を含む。
【００３５】
同報配信データ送受信部Ａ１２１は、アプリケーションＡ１１から渡されたデータを他の１以上のノードに同報配信する機能を備える。同報配信データ送受信部Ａ１２１は、データの同報配信を行う際は、同報配信手段解決部Ａ１２２に対して、そのデータのうちのその解決のために必要な部分を渡して、同報配信手段解決要求を行うことにより、ツリー型配信およびエピデミック配信のいずれを用いて同報配信を行うかを解決してもらい、ツリー型配信と解決された場合はツリー型配信部Ａ１２６へ、エピデミック配信と解決された場合はエピデミック配信部Ａ１２７へデータを渡す。つまり、同報配信データ送受信部Ａ１２１は、解決結果がツリー型配信である場合は、同報配信手段としてツリー型配信部Ａ１２６を選択し、解決結果がエピデミック配信である場合は、同報配信手段としてエピデミック配信部Ａ１２７を選択し、選択された方にデータを渡す。また、同報配信データ送受信部Ａ１２１は、ツリー型配信部Ａ１２６またはエピデミック配信部Ａ１２７を介して受信したデータについても、そのデータのうちのその解決のために必要な部分を渡して、同報配信手段解決要求を行うことにより、ツリー型配信およびエピデミック配信のいずれを用いて同報配信を行うかを解決してもらい、ツリー型配信と解決された場合はツリー型配信部Ａ１２６へ、エピデミック配信と解決された場合はエピデミック配信部Ａ１２７へデータを渡す。また、同報配信データ送受信部Ａ１２１は、ツリー型配信部Ａ１２６またはエピデミック配信部Ａ１２７を介して受信したデータを、アプリケーションＡ１１にも渡す。
【００３６】
同報配信手段解決部Ａ１２２は、同報配信データ送受信部Ａ１２１からの同報配信手段解決要求に対して、ツリー型配信およびエピデミック配信のうちのいずれを用いて同報配信を行うかを解決し、解決結果を同報配信データ送受信部Ａ１２１に対して知らせる。同報配信手段の解決においては、配信ポリシ設定テーブルＡ１２３および階層構造テーブルＡ１２４を参照し、適切な同報配信手段を選ぶ。
【００３７】
配信ポリシ設定テーブルＡ１２３は、同報配信手段解決部Ａ１２２が同報配信手段を選択する際に参照するテーブルであって、選択ポリシが設定されたテーブルである。配信ポリシ設定テーブルＡ１２３に設定されるテーブルの例を図４の配信ポリシ設定テーブル１０１〜１０３に示す。
【００３８】
配信ポリシ設定テーブル１０１を参照すると、データ種類に応じて異なる同報配信を選択するポリシが設定されている。配信ポリシ設定テーブル１０１では、ファイルの拡張子によってデータ種類を識別し、例えば、ｔｘｔを拡張子にもつファイルは、データ種類がテキストであると識別し、エピデミック配信を選択し、ｊｐｇ、ｇｉｆ、ｐｎｇ、ｂｍｐのいずれかを拡張子にもつファイルは、データ種類が画像であると識別し、ツリー型配信を選択するポリシが設定されている。
【００３９】
配信ポリシ設定テーブル１０１において、テキストに対しては、エピデミック配信を割り当て、画像とその他に対しては、ツリー型配信を割り当てているのは、テキストならば、データ量が少ないので、エピデミック配信を用いても輻輳が生じる可能性が少ないからである。
【００４０】
次に、配信ポリシ設定テーブル１０２を参照すると、同報配信を行うノードの階層構造のレベルに応じて異なる同報配信を選択するポリシが設定されている。配信ポリシ設定テーブル１０２では、同報配信を行うノードの階層構造のレベルが０の場合はエピデミック配信を選択し、１以上の場合はツリー型配信を行うポリシが設定されている。ここで、同報配信を行うノードの階層構造のレベルが０とは、図３に示す同報配信ツリーにおいて、レベル０のノードが送信または受信するノードである場合を示す。
【００４１】
配信ポリシ設定テーブル１０２において、レベル１以上に対してツリー型配信を割り当てているのは、レベル１以上のノードは自ノードから見て遠くにあり、そのノードまで仮にエピデミック配信をするとなると、そのノードまでの多数のホップ数のほぼ２乗に比例して、配信のためのトラフィック量が増えてしまい、従って、伝送の効率が悪くなってしまうが、これに対し、そのノードまで仮にツリー型配信をすれば、そのようなトラフィック量の増加がないからである。
【００４２】
更に、配信ポリシ設定テーブル１０３を参照すると、階層構造構成部Ａ１２５によって構成される同報配信ツリーの安定度に応じて異なる同報配信手段を選択するポリシが設定されている。同報配信ツリーの安定度は、階層構造テーブルＡ１２４を参照して得る。配信ポリシ設定テーブル１０３では、同報配信ツリーの安定度が０．８未満の場合はエピデミック配信を選択し、０．８以上の場合はツリー型配信を行うポリシが設定されている。
【００４３】
配信ポリシ設定テーブル１０３において、安定度０．８未満に対してエピデミック配信を割り当てているのは、安定度が低いリンクを利用して、ツリー型配信を行うと、メッセージ未達のノード数が増えてしまうからである。これに対し、安定度が低いリンクを利用しても、エピデミック配信を行えば、メッセージ未達のノード数を少なくすることができる。
【００４４】
また、コンテンツの先頭部（ヘッダ）などに、作成者、重要度、緊急度、優先度などの属性が記述されていれば、属性の各項目（作成者、重要度、緊急度、優先度など）の値やそれらの値の２以上の組合せに対して、エピデミック配信手段又はツリー型配信手段と対応させた配信ポリシ設定テーブルを追加してもよい。この場合、同報配信データ送受信部Ａ１２１と同報配信手段解決部Ａ１２２などは、コンテンツの先頭部を直接的に見てもよいし、他の手段がコンテンツの先頭部からこれらの属性を読出して、読出した属性をサマリベクタに含ませるようにしてもよいし、サマリベクタにコンテンツの先頭部を付加するようにしてもよい。
【００４５】
ここでは、配信ポリシ設定テーブルＡ１２３に設定されるポリシの例を幾つか示したが、これらのポリシのうち、１つだけが配信ポリシ設定テーブルＡ１２３に設定されていてもよいし、複数のポリシが設定され、それらを組み合わせて用いてもよい。複数のポリシを組み合わせる場合には、異なるポリシにより異なる同報配信手段が選択される場合が生じる。このような場合には、エピデミック配信（またはツリー型配信）を優先する、といった方法や、同じ同報配信手段を選ぶポリシの数がもっとも多くなる同報配信手段を優先する、などの方法が考えられる。また、複数のポリシの組合せのそれぞれに対して配信方法を選択するようにしてもよい。つまり、例えば、配信ポリシ設定テーブル１０１、１０２、１０３を使う代わりに、データ種類に関連したポリシ、階層レベルに関連したポリシ及びツリー安定度に関連したポリシの１２（＝３×２×２）通りの組合せのそれぞれ対して配信方法を選択するようにしてもよい。また、複数のポリシに基づく選択にそれぞれ対応する複数の配信方法をそれぞれ表す複数のパラメータを関数に通して、最終的に１つの配信方法を決定してもよい。
【００４６】
階層構造テーブルＡ１２４は、階層構造構成部Ａ１２５が構成した階層構造および同報配信ツリー構造を格納するテーブルである。
【００４７】
図２と図３に階層構造テーブルＡ１２４の一例を示す。レベル０には、クラスタＣＬ０−１、ＣＬ０−２、ＣＬ０−３、ＣＬ０−４が含まれ、レベル１には、クラスタＣＬ１−１、ＣＬ１−２が含まれ、レベル２には、クラスタＣＬ２−１が含まれ、レベル３には、クラスタＣＬ３−１が含まれる。
【００４８】
クラスタＣＬ０−１には、ノードＢ１、Ｂ２、Ｂ３が含まれ、クラスタＣＬ０−２には、ノードＢ４、Ｂ５、Ｂ６、Ｂ７が含まれ、クラスタＣＬ０−３には、ノードＢ８、Ｂ９、Ｂ１０が含まれ、クラスタＣＬ０−４には、ノードＢ１１、Ｂ１２が含まれ、クラスタＣＬ１−１には、ノードＢ２、Ｂ７が含まれ、クラスタＣＬ１−２には、ノードＢ９、Ｂ１１が含まれ、クラスタＣＬ２−１には、ノードＢ７、Ｂ１１が含まれ、クラスタＣＬ３−１には、ノードＢ７が含まれる。
【００４９】
個々のノードに着目した場合、ノードＢ１、Ｂ３、Ｂ４、Ｂ５、Ｂ６、Ｂ８、Ｂ１０、Ｂ１２は、レベル０のみに含まれ、ノードＢ２、Ｂ９は、レベル０及びレベル１に含まれ、Ｂ１１は、レベル０、レベル１及びレベル２に含まれ、Ｂ７は、レベル０、レベル１、レベル２及びレベル３に含まれる。
【００５０】
階層構造テーブルＡ１２４に格納されるテーブルの内容の例を図５の階層構造テーブル２０１に示す。階層構造テーブル２０１は、図２および図３のノードＢ２のものであることを想定している。階層構造テーブル２０１を参照すると、自ノードのノードＩＤはＢ２（ここではノードＡ１ではなくＢ２とする）であり、その階層レベルは１である。そして、上位ノードは階層レベルが３であるノードＢ７であり、ノードＢ２とノードＢ７の間のツリー安定度は０．９である。さらに、下位ノードは階層レベルが０であるノードＢ１およびノードＢ３であり、ノードＢ１との間のツリー安定度は０．６、ノードＢ３との間のツリー安定度は０．８５である。
【００５１】
階層構造構成部Ａ１２５は、例えば、モバイルアドホックネットワークにおいて自律分散的に階層構造を構成するプロトコルを用いる。このようなプロトコルの例として、非特許文献２に記載のようにＳａｆａｒｉというプロトコルが開示されている。
【００５２】
Ｓａｆａｒｉは、ＴＣＰ／ＩＰ部Ａ１３を介して他ノードと制御メッセージを交換することにより、図２に示すような階層構造を自律分散的に構成する。各ノードは、レベルに応じてクラスタをつくり、クラスタごとにｄｒｕｍと呼ばれる代表ノードが選出される。図２の例では、最下層のレベル０クラスタの１つであるノードＢ１・Ｂ２・Ｂ３から構成されるクラスタＣＬ０−１においては、ノードＢ２が代表ノードである。レベル０の代表ノードはレベル１ノードとなり、レベル１ノード同士で、レベル１のクラスタが構成される。そして、レベル１クラスタの１つであるノードＢ２・Ｂ７から構成されるクラスタＣＬ１−１においては、ノードＢ７が代表ノードに選ばれている。このような形で再帰的にレベルが上がる形で、最上位のレベルのクラスタで１つの代表ノードが選ばれるまで動作が繰り返される。図２の例では、最上位のレベルのクラスタはＣＬ３−１であり、ノードＢ７が代表ノードに選ばれている。
【００５３】
このように、階層構造を構成した結果として、最上位のレベルのクラスタの代表ノードを頂点とする形で各レベルの代表ノードをつなぐ形で、ツリー構造が構成される。図３は図２に示した階層構造をツリー構造で表したものである。図３に示すように、ノードＢ７を頂点とするツリー構造を構成することができる。このツリー構造を同報配信経路に用いて同報配信を行うことにより、モバイルアドホックネットワークにおけるツリー型同報配信を実現することができる。
【００５４】
階層構造構成部Ａ１２５は、構成した階層構造における情報を階層構造テーブルＡ１２４に登録する。ここで、自ノードのＩＤ・階層レベルおよび、上位・下位ノードのＩＤ・階層レベルだけではなく、各上位・下位ノードとの無線リンクを介した接続における安定度をツリー安定度という数値で登録する。ツリー安定度の計算方法の例として、各上位・下位ノードとの間で交換される制御メッセージ（例えば、Ｋｅｅｐ−ＡｌｉｖｅメッセージやＨｅｌｌｏメッセージ）の受信に成功した割合（すなわち、試行回数に対する成功回数の割合）を用いる。例えば、１０回の制御メッセージの交換タイミングのうち、１０回とも制御メッセージを受信している場合は１．０とし、６回だけ制御メッセージを受信している場合は０．６と計算する。このようにツリー安定度を計算することにより、ツリー構造における各上位・下位ノードがどの程度安定してネットワークに接続しているかを表すことができる。
【００５５】
ツリー型配信部Ａ１２６は、階層構造構成部Ａ１２５が構築した同報配信ツリーを用いてツリー型の同報配信を行う機能を備える。ツリー型の同報配信を行う際は、階層構造テーブルＡ１２４を参照し、転送するノードを決定する。例えば、ノードＡ１が、図３におけるツリー構造のノードＢ２の位置に存在し、階層構造テーブルＡ１２４の内容が図５に示す階層構造テーブル２０１（ノードＢ２をノードＡ１と読み替える）であったとする。このとき、自ノードが同報配信データの送信元ノードである場合、階層構造テーブルＡ１２４における１つの上位ノード及び全ての下位ノード（この場合はノードＢ１・Ｂ３・Ｂ７）へ該データＴＣＰ／ＩＰ部Ａ１３を介して転送する。また、同報配信ツリーにおける他のノードから同報配信データを受信した場合は、階層構造テーブルＡ１２４における、１つの上位ノード（但し、該データを送ってきたノードを除く）及び全ての下位ノード（但し、該データを送ってきたノードを除く）へ該データをＴＣＰ／ＩＰ部Ａ１３を介して転送する。例えば、同報配信データをノードＢ１から受信したとすると、該データをノードＢ３・Ｂ７へ転送する。このような形で同報配信ツリーを用いてデータの転送を行うことにより、重複配信を防ぎながら効率的にデータの同報配信を行うことができる。
【００５６】
エピデミック配信部Ａ１２７は、同報配信データをエピデミック配信により同報配信を行う機能を備える。エピデミック配信の詳細については背景技術で述べた通りであるので重複した説明を省略する。
【００５７】
ＴＣＰ／ＩＰ部Ａ１３は、ＯＳ（Ｏｐｅｒａｔｉｏｎ  Ｓｙｓｔｅｍ）に搭載される標準的な通信機能である。本実施の形態では、階層構造構成部Ａ１２５と、ツリー型配信部Ａ１２６と、エピデミック配信部Ａ１２７とに対してデータ・メッセージの送受信サービスを提供する。これらのデータ・メッセージはＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）またはＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）を用いて送受信される。
【００５８】
次に、図６を参照して、本実施の形態においてノードＡ１が同報配信手段を解決して、同報配信データを転送する動作について説明する。
【００５９】
まず、ノードＡ１において、アプリケーションＡ１１または他ノードから同報配信データを受信することにより、同報配信データ送受信部Ａ１２１において同報配信データが発生する（図６のステップＳ１０１）。
【００６０】
次に、ステップＳ１０３からステップＳ１１０又はステップＳ１０３からステップ１１２までの動作を、各階層レベルについて繰り返す（ステップＳ１０２Ｓ〜ステップＳ１０２Ｅ）ここで、繰り返しの対象となる階層レベルは、階層構造テーブル２０１において、自ノードから見た上位ノードが属する階層レベルと自ノードから見た下位ノードが属する階層レベルである。例えば、図５のように、自ノードがノードＢ２であれば、上位ノードＢ７が属する階層レベル（レベル２）と下位ノードＢ１、Ｂ３が共通に属する階層レベル（レベル０）が繰り返しの対象となる階層レベルである。
【００６１】
各繰返しにおいて、同報配信データ送受信部Ａ１２１は、該同報配信データの同報配信手段を解決するため、同報配信手段解決要求を同報配信手段解決部Ａ１２２に対して要求する（ステップＳ１０３）。すなわち、同報配信データ送受信部Ａ１２１は、同報配信手段解決部Ａ１２２に対して、同報配信手段として、ツリー型配信手段を選択するのか、又は、エピデミック配信手段を選択するのかについての判断を依頼する。
【００６２】
同報配信手段解決部Ａ１２２は、配信ポリシ設定テーブルＡ１２３を参照し、該同報配信データに対する同報配信手段の解決ポリシを参照する（ステップＳ１０４）。ここで、配信ポリシ設定テーブルＡ１２３には図４に示す配信ポリシ設定テーブル１０１〜１０３の３つのポリシが設定されているものとする。以下のステップＳ１０５、Ｓ１０６、Ｓ１０７は、３つのポリシをそれぞれ参照したきに、エピデミック配信を優先的に選ぶという設定に従ったものである。すなわち、少なくとも１つの配信ポリシ設定テーブルに対してエピデミック配信が選択されたならば、それを最終的に決定された配信方法とし、従って、同報配信手段としてエピデミック配信手段を選択するという設定に従ったものである。この設定に従うと、逆に、全ての配信ポリシ設定テーブルに対応してツリー型配信が選択された場合に限り、ツリー型配信を最終的に決定された配信方法とし、従って、同報配信手段としてツリー型配信手段を選択する。
【００６３】
ステップＳ１０５以降の個々のステップの説明をすると、ステップＳ１０５では、データ種類に関する配信ポリシである配信ポリシ設定テーブル１０１を参照し、同報配信手段を解決する。
【００６４】
ステップＳ１０６では、階層レベルに関する配信ポリシである配信ポリシ設定テーブル１０２を参照し、同報配信手段を解決する。つまり、図５に示す階層構造テーブル２０１に記述されている自ノードの階層レベルに対応する同報配信手段を配信ポリシ設定テーブル１０２から探し、それを配信ポリシ設定テーブル１０２を参照することにより求まった同報配信手段とする。なお、配信ポリシ設定テーブル１０２から探す同報配信手段は、前文で述べた通り、自ノードの階層レベルに対応したものであり、現在の繰り返しの対象となっている階層レベルに対応したものではない。
【００６５】
ステップＳ１０７では、ツリー安定度に関する配信ポリシである配信ポリシ設定テーブル１０３を参照し、同報配信手段を解決する。
【００６６】
つまり、現在の繰り返しが上位ノードについてのものである場合には、ステップＳ１０７では、図５に示す階層構造テーブル２０１から、自ノードから見て１つ存在する上位ノードに関するツリー安定度を検索し、検索されたツリー安定度と配信ポリシ設定テーブル１０３に基づいて、１つの上位ノードに対する同報配信手段としてエピデミック配信手段又はツリー型配信手段を選択する。
【００６７】
例えば、図３を参照すると、自ノードがＢ２であれば、自ノードから見て１つ存在する上位ノードはノードＢ７である。そこで、図５に示す階層構造テーブル２０１から上位ノードＢ７に対するツリー安定度０．９を検索する。検索されたツリー安定度０．９に対応する同報配信手段として、同報配信手段を配信ポリシ設定テーブル１０３から、ツリー型配信手段を検索し、それを、上位ノードＢ７に対する配信手段とする。ここで、図２を参照すると、上位ノードＢ７に対する配信は、階層でいうとレベル１での配信である。
【００６８】
また、現在の繰り返しが下位ノードについてのものである場合には、図５に示す階層構造テーブル２０１から、自ノードから見て１つ以上存在する下位ノードそれぞれに関するツリー安定度を検索し、検索されたツリー安定度と配信ポリシ設定テーブル１０３に基づいて、下位ノード全体に対する同報配信手段を選択する。
【００６９】
図３を参照すると、自ノードがＢ２であれば、自ノードから見て１つ以上存在する下位ノードはノードＢ１、Ｂ３である。そこで、図５に示す階層構造テーブル２０１から下位ノードＢ１に対するツリー安定度０．６と下位ノードＢ３に対するツリー安定度０．８５を検索する。そして、下位ノードＢ１に対するツリー安定度と下位ノードＢ３に対するツリー安定度とに基づいて、階層レベル０におけるツリー安定度を求める。例えば、最小のツリー安定度を階層レベル０におけるツリー安定度とするならば、それはｍｉｎ（０．６，０．８５）＝０．６となる。また、最大のツリー安定度を階層レベル０におけるツリー安定度とするならば、それはｍａｘ（０．６，０．８５）＝０．８５となる。更に、平均値を階層レベル０におけるツリー安定度とするならば、それは、ａｖｅ（０．６，０．８５）＝０．７２５となる。求めたツリー安定度に対応する同報配信手段として、同報配信手段を配信ポリシ設定テーブル１０３から、ツリー型配信手段又はエピデミック配信手段を検索し、それを、下位ノードＢ１、Ｂ３の両者に対する共通の配信手段とする。例えば、求めたツリー安定度として、ｍｉｎ（０．６，０．８５）＝０．６を利用すれば、同報配信手段として、配信ポリシ設定テーブル１０３から、０．６未満に対応するエピデミック配信手段を検索する。また、例えば、求めたツリー安定度としてｍａｘ（０．６，０．８５）＝０．８５を利用すれば、同報配信手段として、配信ポリシ設定テーブル１０３から、０．８以上に対応するツリー型配信手段を検索する。更に、例えば、求めたツリー安定度としてａｖｅ（０．６，０．８５）＝０．７２５を利用すれば、同報配信手段として、配信ポリシ設定テーブル１０３から、０．６未満に対応するエピデミック型配信手段を検索する。
【００７０】
現在の繰り返しの対象となっている階層レベルに対して、ステップＳ１０５〜Ｓ１０７の全てにおいて、ツリー型配信が選択された場合、ステップＳ１０８に進み、同報配信手段解決部Ａ１２２は、ステップＳ１０３における同報配信手段解決要求の応答として、同報配信データ送受信部Ａ１２１に対してツリー型同報配信を応答する（ステップＳ１０８）。
【００７１】
従って、ノードは、繰り返しの対象となっている全ての階層レベルにおいて、同報配信手段として、エピデミック配信手段又はツリー型配信手段を選択する。例えば、自ノードがＢ２であれば、自ノードＢ２は、階層レベル０と階層レベル１に属しているが、下位ノードＢ１、Ｂ３に対する配信は、階層レベル０における配信であり、上位ノードＢ２に対する配信は、階層レベル１における配信である。例えば、階層レベル０に属するノードＢ１、Ｂ３に対してエピデミック型配信をして、階層レベル１に属するレベルノードＢ７に対してツリー型配信をするような場合が生じ、また、ノードＢ１、Ｂ３、Ｂ７の全てに対してツリー型配信をするような場合も生じ、更に、また、ノードＢ１、Ｂ３、Ｂ７の全てに対してエピデミック型配信をするような場合も生じる。ここで、階層レベル０においても、それよりも上位の階層レベルにおいても、エピデミック型配信をすることもツリー型配信をすることも可能であることが前提となっている。但し、通常は、同一階層レベル内で、エピデミック型配信とツリー型配信を混在させず、選択した片方の配信のみを行う。階層レベル０におけるツリー型配信とは、他の階層レベルにおけるツリー型配信と同様に、決まったリンクに沿った配信のことである。
【００７２】
ツリー型配信は、決まったリンクに沿った配信であるという意味において、構造型配信に含まれる。ここで、決まったリンクとは、恒常的に定められているリンクも、配信の直前に定められたリンクも、配信の最中に変わらないリンクも含む。つまり、決まったリンクはそれらの集合体である決まった構造を形成しており、この中で行われる配信は構造型配信である。これに対し、エピデミック型配信は、決まっていないリンクに沿った配信であるという意味において、非構造型配信に含まれる。本実施形態では、構造型配信として、ツリー型配信しか示していないが、この他に、構造型配信として、ループ型配信及びディストリビュート・ハッシュ・テーブル（Ｄｉｓｔｒｉｂｕｔｅｄ  Ｈａｓｈ  Ｔａｂｌｅ）に従った同報配信を用いることができる。また、本実施形態では、非構造型配信として、エピデミック型配信しか示していないが、この他に、非構造型配信として、フラッド型配信を用いることができる。
【００７３】
ステップＳ１０８の後、同報配信データ送受信部はＡ１２１は、同報配信データをツリー型配信部Ａ１２６へ渡す。ツリー型配信部Ａ１２６は、階層構造テーブルＡ１２４を参照し、同報配信データの転送先を決定する（ステップＳ１０９）。そして決定された転送先に対して該同報配信データを転送する（ステップＳ１１０）。
【００７４】
ステップＳ１０５〜Ｓ１０７のうちの少なくとも１つのステップにおいて、エピデミック配信が選択された場合、同報配信手段解決部Ａ１２２は、ステップＳ１０３における同報配信手段解決要求の応答として、同報配信データ送受信部Ａ１２１に対してエピデミック同報配信を応答する（ステップＳ１１１）。
【００７５】
ステップＳ１１１の後、同報配信データ送受信部Ａ１２１は、同報配信データをエピデミック配信部Ａ１２７へ渡す。エピデミック配信部Ａ１２７は該同報配信データをエピデミック配信により同報配信する（ステップＳ１１２）。
【００７６】
上記の実施形態では、全ての基準の下で配信手段としてツリー型配信が選択された場合に限り、最終的に配信手段としてツリー型配信を選択している。ツリー型配信は、ネットワークのトポロジにエンド−エンドの接続性があるネットワークを前提としないと、もくろみ通りに目的としているノードに配信を行えるとは限らない。従って、最終的に配信手段をツリー型配信手段として選択するためには、ツリー安定度を基準とした場合に配信手段としてツリー型配信手段が選択されているという条件が少なくとも満たされている必要があるのが通常である。また、ツリー型配信を行うためには、ツリー安定度以外にも種々の条件が満たされている必要がある場合が多い。しかし、ツリー安定度以外の全ての基準の下でも配信手段としてツリー型配信が選択されていることは必ずしも必要ではない。ツリー型配信を行うための条件が満たされない場合に、エピデミック配信を行うというのではなく、逆に、積極的にエピデミック型配信を選択するべきである場合もある。以下に、何種類かの評価基準に従って、ツリー型配信が適している場合と、エピデミック型配信が適している場合を、それぞれ、示す。
【００７７】
［ツリー型配信が適している場合］
（ａ）トラフィック量に関する評価基準
・コンテンツのファイルサイズが大きい場合
・配信先ノード数が多い場合
ファイルサイズが大きい場合も、配信先ノード数が多い場合も、トラフィック量が多くなる。これらの場合には、ツリー型配信の方がエピデミック配信よりも適する。
（ｂ）ネットワーク状態に関する評価基準
・リンク安定度が高い場合
・リンク安定度が高いために、高い階層レベルで配信できる場合
・リンク帯域が狭い場合
（ｃ）コンテンツ内容に関する評価基準
・コンテンツの重要度、コンテンツの緊急度、コンテンツの優先度が相対的に低い場合
【００７８】
［エピデミック型配信が適している場合］
（ａ）トラフィック量に関する評価基準
・コンテンツのファイルサイズが小さい場合
・配信先ノード数が少ない場合
（ｂ）ネットワーク状態に関する評価基準
・リンク安定度が低い場合
・リンク安定度が低いために、高い階層レベルで配信できない場合
・リンク帯域が広い場合
（ｃ）コンテンツ内容に関する評価基準
・コンテンツの重要度、コンテンツの緊急度、コンテンツの優先度が相対的に高い場合
【００７９】
一般には、選択手段としての同報配信手段解決部Ａ１２２は、上記のような種々の評価基準に従った評価方法の各々の下で選択するべきであるとされた配信手段の組合せを総合的に見て、所定の全体としての評価方法により、最終的にエピデミック配信手段又はツリー型配信手段を配信手段として選択する。組合せを総合的に見ることには、１つのみの基準の下で選択するべきであるとされた配信手段を選択すること及び２以上の基準の各々の下で選択するべきであるとされた配信手段を総合的に見ることを含む。これらは、図６に示すようなフローチャートに沿った動作（特に、ステップＳ１０５からＳ１０７の部分）を、別のフローチャートに沿った動作に置き換えることにより実現することもできるし、それぞれの基準の下で選択された配信手段を表すデータを全て入力データとして入力して、入力データの組合せに応じて配信手段としてエピデミック配信手段又はツリー型配信手段を選択するための外部テーブルを参照することによっても実現することができる。
【００８０】
次に、本実施の形態の効果について説明する。
【００８１】
本実施の形態では、同報配信手段解決部Ａ１２２が、同報配信データ送受信部Ａ１２１からの同報配信手段解決要求に対して、配信ポリシ設定テーブルＡ１２３および階層構造テーブルＡ１２４を参照し、ツリー型配信およびエピデミック配信のいずれを用いて同報配信を行うかを解決する。そして、解決結果を同報配信データ送受信部Ａ１２１に対して応答し、同報配信データ送受信部Ａ１２１は、同報配信手段解決部Ａ１２２によって解決された同報配信手段によって、同報配信を行う。
【００８２】
このようにすることにより、同報配信のポリシに基づいて、同報配信データの種類、構成される階層構造、ネットワークの状況などに応じた同報配信手段の使い分けを行うことが可能となる。
【００８３】
同報配信のポリシを適切に設定することで、ネットワークトポロジが安定している場合はツリー型配信を積極的に利用するなど、同報配信のトラフィック量を効果的に削減することが可能となる。
【００８４】
以上説明したように、本実施形態では、所定の条件が満たされた場合には、効率は低いもののロバスト性の高い配信性能をもつエピデミック配信を適用し、別の所定の条件が満たされた場合には、ロバスト性は落ちるものの効率の高いツリー型配信を適用することができる。
【００８５】
［第２の実施の形態］
次に、本発明の第２の実施の形態について図面を参照して詳細に説明する。
【００８６】
図７を参照すると、本発明の第２の実施の形態は、ノードＡ２を含む。ノードＡ２は、第１の実施の形態におけるノードＡ１と同様、無線リンクによってネットワークに接続された通信機器である。
【００８７】
ノードＡ２は、アプリケーションＡ２１と、同報配信制御部Ａ２２と、ＴＣＰ／ＩＰ部Ａ２３を含む。
【００８８】
アプリケーションＡ２１と、ＴＣＰ／ＩＰ部Ａ２３は、それぞれ、第１の実施の形態におけるノードＡ１のアプリケーションＡ１１と、ＴＣＰ／ＩＰ部Ａ１３と同一の機能を備えるため、重複した説明は省略する。
【００８９】
同報配信制御部Ａ２２は、同報配信データ送受信部Ａ２２１と、同報配信手段・範囲解決部Ａ２２２と、配信ポリシ設定テーブルＡ２２３と、階層構造テーブルＡ２２４と、階層構造構成部Ａ２２５と、ツリー型配信部Ａ２２６と、エピデミック配信部Ａ２２７を含む。
【００９０】
このうち、階層構造テーブルＡ２２４と、階層構造構成部Ａ２２５は、それぞれ、第１の実施の形態におけるノードＡ１の階層構造テーブルＡ１２４と、階層構造構成部Ａ１２５と同一の機能を備えるため、重複する説明は省略する。
【００９１】
同報配信データ送受信部Ａ２２１は、第１の実施の形態におけるノードＡ１の同報配信データ送受信部Ａ１２１の機能に加えて、同報配信手段・範囲解決部Ａ２２２に対して同報配信手段解決要求を行う際に、ツリー型配信およびエピデミック配信のいずれを用いて同報配信を行うかだけではなく、同報配信の範囲を解決することを要求する機能を含む。そして、同報配信データをツリー型配信部Ａ２２６またはエピデミック配信部Ａ２２７へ渡す際に、解決した同報配信の範囲を付加情報として含む形で渡す。
【００９２】
同報配信手段・範囲解決部Ａ２２２は、第１の実施の形態におけるノードＡ１の同報配信手段解決部Ａ１２２の機能に加えて、同報配信データ送受信部Ａ２２１から同報配信手段解決要求を受けた際に、ツリー型配信およびエピデミック配信のいずれを用いて同報配信を行うかを解決するだけではなく、同報配信の範囲を解決して、それらの解決結果を応答に含める機能を備える。同報配信手段・範囲の解決においては、配信ポリシ設定テーブルＡ２２３および階層構造テーブルＡ２２４を参照し、適切な同報配信手段・範囲を選ぶ。同報配信範囲が制限される場合、同報配信範囲に相当するクラスタの代表ノードのノードＩＤを階層構造テーブルから解決し、そのノードＩＤも含めた形で同報配信データ送受信部Ａ２２１へ同報配信範囲を応答する。ここで、同報配信範囲に相当するクラスタの代表ノードのノードＩＤを解決するとは、図３を参照すると、例えば、自ノードがノードＢ１であり、同報配信範囲が階層レベル１であれば、ノードＢ２のＩＤを求めることであり、自ノードがノードＢ１であり、同報配信範囲が階層レベル３であれば、ノードＢ７のＩＤを求めることである。
【００９３】
配信ポリシ設定テーブルＡ２２３は、第１の実施の形態におけるノードＡ１の配信ポリシ設定テーブルＡ１２３において設定される内容に加えて、同報配信範囲がポリシとして設定される。配信ポリシ設定テーブルＡ２２３に設定されるテーブルの例を図８の配信ポリシ設定テーブル３０１に示す。
【００９４】
配信ポリシ設定テーブル３０１を参照すると、データ種類に応じて異なる同報配信を選択するポリシが設定されている。配信ポリシ設定テーブル３０１では、ファイルの拡張子によってデータ種類を識別し、例えば、ｔｘｔを拡張子にもつファイルは、データ種類がテキストであると識別し、同報配信範囲がレベル１クラス内、同報配信手段がエピデミック配信であるというポリシが設定されている。同様に、ｊｐｇ、ｇｉｆ、ｐｎｇ、ｂｍｐのいずれかを拡張子にもつファイルは、データ種類が画像であると識別し、同報配信範囲がレベル０クラス内、同報配信手段がエピデミック配信であるというポリシ、ｍｐｇを拡張子にもつファイルは、データ種類が動画であると識別し、同報配信範囲がレベル０クラス内、同報配信手段がツリー型配信であるというポリシ、その他のファイルは、同報配信範囲がネットワーク全体、同報配信手段がツリー型配信であるというポリシがそれぞれ設定されている。
【００９５】
ツリー型配信部Ａ２２６は、第１の実施の形態におけるノードＡ１のツリー型配信部Ａ１２６の機能に加えて、同報配信データ送受信部Ａ２２１から渡された同報配信データに付加情報として含まれる同報配信範囲に応じて、受信するノードの範囲を制限する形でツリー型配信を行う機能を備える。同報配信範囲は、階層構造構成部Ａ２２５によって構成される任意のレベルのクラスタの単位で設定される。そして、そのクラスタを識別する識別子として、当該クラスタの代表ノードのノードＩＤ（ノード名やＩＰアドレスなど）が用いられる。同報配信範囲が制限される場合、送信される同報配信データには同報配信範囲に相当するクラスタの代表ノードのノードＩＤが含められる。ツリー型配信部Ａ２２６が該同報配信データを受信した場合、そのノードＩＤにより同報配信範囲を判別する。そして、判別した同報配信範囲に含まれないノードへは該同報配信データは転送しない。すなわち、配信を禁止する。また、もし受信した同報配信データの同報配信範囲が自ノードが属するクラスタとは異なる場合、該同報配信データは破棄する。すなわち、配信を禁止する。それ以外の場合は、配信を許可して、行う。
【００９６】
エピデミック配信部Ａ２２７は、第１の実施の形態におけるノードＡ１のエピデミック配信部Ａ１２７の機能に加えて、同報配信データ送受信部Ａ２２１から渡された同報配信データに付加情報として含まれる同報配信範囲に応じて、受信するノードの範囲を制限する形でエピデミック配信を行う機能を備える。ツリー型配信部Ａ２２６と同様に、同報配信範囲はクラスタの単位で設定され、同報配信範囲を識別する識別子として、当該クラスタの代表ノードのノードＩＤが用いられ、送信される同報配信データに含められる。エピデミック配信部Ａ２２７が該同報配信データを受信した場合、そのノードＩＤにより同報配信範囲を判別し、受信した同報配信データの同報配信範囲が自ノードが属するクラスタとは異なる場合、該同報配信データは破棄する。すなわち、配信を禁止する。それ以外の場合は、配信を許可して、行う。このような形でエピデミック配信によるデータの拡散を同報配信範囲となるクラスタ内に留める。
【００９７】
従って、ツリー型配信部Ａ２２６が用いられる場合であっても、エピデミック配信部Ａ２２７が用いられる場合であっても、同報範囲は適用される。
【００９８】
次に、図９を参照して、本実施の形態においてノードＡ２が同報配信手段を解決して、同報配信データを転送する動作について説明する。
【００９９】
まず、ノードＡ２において、アプリケーションＡ２１または他ノードから同報配信データを受信することにより、同報配信データ送受信部Ａ２２１において同報配信データが発生する（図９のステップＳ２０１）。
【０１００】
次に、ステップＳ２０３からステップＳ２０９又はステップＳ２０３からステップ２１１までの動作を、各階層レベルについて繰り返す（ステップＳ２０２Ｓ〜ステップＳ２０２Ｅ）。ここで、繰り返しの対象となる階層レベルは、階層構造テーブル２０１において、自ノードから見た上位ノードが属する階層レベルと自ノードから見た下位ノードが属する階層レベルである。例えば、図５のように、自ノードがノードＢ２であれば、上位ノードＢ７が属する階層レベル（レベル２）と下位ノードＢ１、Ｂ３が共通に属する階層レベル（レベル０）が繰り返しの対象となる階層レベルである。
【０１０１】
各繰り返しにおいて、同報配信データ送受信部Ａ２２１が、同報配信手段・範囲解決部Ａ２２２に対して同報配信手段解決要求を要求し（ステップＳ２０３）、同報配信手段・範囲解決部Ａ２２２が、配信ポリシ設定テーブルＡ２２３を参照し、該同報配信データに対する同報配信手段の解決ポリシを参照する（ステップＳ２０４）という一連の動作は、第１の実施の形態におけるノードＡ１の動作におけるステップＳ１０３およびステップＳ１０４と同様である。
【０１０２】
そして、同報配信手段・範囲解決部Ａ２２２は、配信ポリシ設定テーブルＡ２２３を参照して同報配信手段を解決する（ステップＳ２０５）。本動作は、第１の実施の形態におけるノードＡ１の動作におけるステップＳ１０５〜Ｓ１０７の組と同様のため、詳細な説明は省略する。
【０１０３】
さらに、同報配信手段・範囲解決部Ａ２２２は、配信ポリシ設定テーブルＡ２２３を参照して、当該同報配信データの同報配信範囲を解決する（ステップＳ２０６）。ここで、同報配信範囲としては、図８に示すデータ種類に関する配信ポリシ設定テーブル３０１に記述されている同報配信範囲を用いることとするが、この他に、他の事項に関する配信ポリシ設定テーブルに記述されている同報配信範囲を用いたり、複数の事項のそれぞれに関する配信ポリシ設定テーブルに記述されている同報配信範囲の組合せに基づいて所定の方法によって決めた同報配信範囲を用いてもよい。
【０１０４】
同報配信範囲を決定する方法において、この他に考えられる例として、
・コンテンツの重要度、コンテンツの緊急度、及びコンテンツのうち少なくとも１つの優先度が高い場合は相対的に広い同報配信範囲を解決する、
・コンテンツサイズが小さい場合は相対的に広い同報配信範囲を解決する、
・ネットワークのサイズ（ノード数など）が小さい場合は相対的に広い同報配信範囲を解決する、
などの方法が考えられる。
【０１０５】
また、同報配信範囲を「解決する」とは、具体的には、階層構造構成機能によってネットワーク内のノードがクラスタ化される場合に、同報配信の対象となるノードを同一クラスタ内に存在するノードに限定するか、クラスタ外のノードも含めたネットワーク全体のノードにするか、を決定する、ということである。
【０１０６】
ステップＳ２０６において、同報配信範囲が特定クラスタ内と解決された場合、同報配信手段・範囲解決部Ａ２２２は、階層構造テーブルＡ２２４を参照して、同報配信範囲となるクラスタの代表ノードのノードＩＤを解決する（ステップＳ２０７）。
【０１０７】
ここで、ノードＩＤを解決するということについて説明をする。
【０１０８】
同報配信の起点となるノードは、ステップＳ２０５で同報配信範囲を何れかの階層レベルの同一クラスタ内に限定することとなった場合には、そのクラスタの代表ノードＩＤを調べる。ここで、代表ノードＩＤの情報は同一クラスタ内の各ノードで共有されている。他方、同報配信の起点以外のノード（すなわち、中継するノード又は受信するノード）は、ステップＳ２０６で同報配信範囲を何れかの階層レベルの同一クラスタ内に限定することとなった場合であっても、わざわざ、クラスタの代表ノードＩＤを調べるようなことをする必要はなく、その代わりに、同報配信の起点以外のノードは、受信した同報配信メッセージに含まれる代表ノードＩＤをそのまま用いる。ノードＩＤを解決するとは、このように、クラスタの代表ノードＩＤを調べたり、受信した代表ノードＩＤをそのまま用いて、代表ノードを出力することである。このステップＡ２０７で解決した代表ノードＩＤを、後述するように、ステップＳ２０８及びＳ２０９で利用する。
【０１０９】
ステップＳ２０７の後、同報配信手段・範囲解決部Ａ２２２は、同報配信データ送受信部Ａ２２１に対して、ステップＳ２０５で解決した同報配信手段および、ステップＳ２０５で解決した同報配信範囲を応答に含めて通知する（ステップＳ２０８）。このとき、同報配信範囲と併せて、ステップＳ２０７で解決した代表ノードのノードＩＤを応答に含めて通知する。
【０１１０】
ステップＳ２０８の後、同報配信データ送受信部Ａ２２１は、同報配信範囲である代表ノードのノードＩＤを含めて同報配信データをツリー型配信部Ａ２２６またはエピデミック配信部Ａ２２７へ渡す。ツリー型配信部Ａ２２６とエピデミック配信部Ａ２２７のどちらに同報配信データが渡されるかは、ステップＳ２０５で解決した同報配信手段による。ツリー型配信部Ａ２２６またはエピデミック配信部Ａ２２７は、該ノードＩＤを含めた形で該同報配信データを送信する（ステップＳ２０９）。
【０１１１】
一方、ステップＳ２０９で送信された同報配信データを受信したノードは、受信した同報配信データに代表ノードのノードＩＤが付加情報として含まれているかどうかを調べる。代表ノードのノードＩＤが含まれている場合は、該ノードＩＤが自ノードが属するクラスタの代表ノードのノードＩＤと一致するか異なるかを調べ、異なる場合、受信した同報配信データは破棄する。すなわち、配信を禁止する。それ以外の場合は、転送を許可する。例えば、図２のクラスタＣＬ０−１でレベル０クラスタ内の同報配信を行う場合を考える。クラスタＣＬ０−１の代表ノードのノードＩＤはＢ２であるため、同報配信範囲として“Ｂ２”という付加情報をもつ同報配信データが送信される。該同報配信データをノードＢ３が受信した場合は、ノードＢ３が属するクラスタの代表ノードのノードＩＤ（Ｂ２）と“Ｂ２”が一致するため、該同報配信データは受理し、さらに転送を行う。また、ノードＢ４が受信した場合、ノードＢ４が属するクラスタの代表ノードのノードＩＤ（Ｂ７）と“Ｂ２”は異なるため、受信した該同報配信データは破棄する。
【０１１２】
ステップＳ２０６において、同報配信範囲がネットワーク全体と解決された場合、同報配信手段・範囲解決部Ａ２２２は、同報配信データ送受信部Ａ２２１に対して、ステップＳ２０４で解決した同報配信手段および、ステップＳ２０５で解決した同報配信範囲（ネットワーク全体）を応答する（ステップＳ２１０）。
【０１１３】
ステップＳ２０９の後、同報配信データ送受信部Ａ２２１は、同報配信データをツリー型配信部Ａ２２６またはエピデミック配信部Ａ２２７へ渡す。ツリー型配信部Ａ２２６とエピデミック配信部Ａ２２７のどちらに同報配信データが渡されるかは、ステップＳ２０４で解決した同報配信手段による。ツリー型配信部Ａ２２６またはエピデミック配信部Ａ２２７は、該同報配信データを送信する（ステップＳ２１１）。
【０１１４】
次に本実施の形態の効果について説明する。
【０１１５】
本実施の形態では、同報配信手段・範囲解決部Ａ２２２が、同報配信データ送受信部Ａ２２１からの同報配信手段解決要求に対して、配信ポリシ設定テーブルＡ２２３および階層構造テーブルＡ２２４を参照して、同報配信手段の解決だけではなく、同報配信範囲の解決も併せて行う。そして、同報配信範囲を特定のクラスタ内に制限する場合、同報配信データ送受信部Ａ２２１は、同報配信手段・範囲解決部Ａ２２２によって解決された同報配信手段および同報配信範囲に基づいて、同報配信範囲を当該クラスタ内に制限した形で同報配信を行う。
【０１１６】
このようにすることにより、同報配信のポリシに基づいて、同報配信データの種類、構成される階層構造、ネットワークの状況などに応じた、同報配信手段を使い分け、および、同報配信範囲の制御を行うことが可能となる。
【０１１７】
同報配信のポリシを適切に設定することで、近隣のノードにだけ同報配信を行えばよいデータ種類とネットワーク全体に同報配信を行うべきデータ種類とで、異なる同報配信範囲とすることができ、同報配信のトラフィック量を効果的に削減することが可能となる。
【０１１８】
本実施形態の１つ目の効果は、同報配信のポリシに基づいて、同報配信データの種類、構成される階層構造、ネットワークの状況などに応じた同報配信手段の使い分けを行うことが可能となることである。
【０１１９】
その理由は、同報配信手段解決部が、同報配信データ送受信部からの同報配信手段解決要求に対して、配信ポリシ設定テーブルおよび階層構造テーブルを参照し、ツリー型配信およびエピデミック配信のいずれを用いて同報配信を行うかを解決する。そして、解決結果を同報配信データ送受信部に対して応答し、同報配信データ送受信部は、同報配信手段解決部によって解決された同報配信手段によって、同報配信を行うからである。
【０１２０】
本発明の２つ目の効果は、同報配信のポリシに基づいて、同報配信データの種類、構成される階層構造、ネットワークの状況などに応じた、同報配信手段を使い分け、および、同報配信範囲の制御を行うことが可能となることである。
【０１２１】
その理由は、本実施の形態では、同報配信手段解決部が、同報配信データ送受信部からの同報配信手段解決要求に対して、配信ポリシ設定テーブルおよび階層構造テーブルを参照して、同報配信手段の解決だけではなく、同報配信範囲の解決も併せて行う。そして、同報配信範囲を特定のクラスタ内に制限する場合、同報配信データ送受信部は、同報配信手段解決部によって解決された同報配信手段および同報配信範囲に基づいて、同報配信範囲を当該クラスタ内に制限した形で同報配信を行うからである。
【０１２２】
なお、上記のネットワークノードは、ハードウェア、ソフトウェア又はこれらの組合わせにより実現することができる。また、上記のネットワークノードにより行なわれる配信方法も、ハードウェア、ソフトウェア又はこれらに組合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
【０１２３】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（ｔａｎｇｉｂｌｅ  ｓｔｏｒａｇｅ  ｍｅｄｉｕｍ）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば、光磁気ディスク）、ＣＤ−ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  ＰＲＯＭ）、フラッシュＲＯＭ、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【０１２４】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【０１２５】
（付記１）
非構造型配信をすることが可能なネットワークの中で前記非構造型配信に従ってデータを配信するための非構造型配信手段と、
前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するための構造型配信手段と、
所定の評価方法を用いて、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択する選択手段と、
を備え、
前記選択手段により前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記ネットワークの中でデータを配信することを特徴とするネットワークノード。
【０１２６】
（付記２）
付記１に記載のネットワークノードであって、
前記構造型配信は、複数の階層を用いたツリー型配信であり、
前記選択手段は、当該ネットワークノードから見た上位ノードが属する階層と下位ノードが属する階層とのそれぞれに対して、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択し、
前記選択手段により前記上位ノードが属する階層と前記下位ノードが属する階層とのそれぞれに対して前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記上位ノードが属する階層と前記下位ノードが属する階層とのそれぞれに対してデータを配信することを特徴とするネットワークノード。
【０１２７】
（付記３）
付記１に記載のネットワークノードであって、
前記構造型配信は、ツリー型配信、ループ型配信及びディストリビュート・ハッシュ・テーブルに従った同報配信からなる群から選択されたものであることを特徴とするネットワークノード。
【０１２８】
（付記４）
付記１乃至３の何れか１に記載のネットワークノードであって、
前記非構造型配信は、エピデミック配信及びフラッド型配信からなる群から選択されたものであることを特徴とするネットワークノード。
【０１２９】
（付記５）
付記１乃至４の何れか１に記載のネットワークノードであって、
前記所定の評価方法は、トラフィック量に関する評価基準に従った評価方法、ネットワーク状態に関する評価基準に従った評価方法及びコンテンツ内容に関する評価基準に従った評価方法のうちの何れか１つ又はこれらの２以上の組合せを含むことを特徴とするネットワークノード。
【０１３０】
（付記６）
付記５に記載のネットワークノードであって、
前記トラフィック量に関する評価基準は、ファイルサイズに関する評価基準及び配信先ノード数に関する評価基準のうちの何れか又はこれらの組合せを含むことを特徴とするネットワークノード。
【０１３１】
（付記７）
付記５又は６に記載のネットワークノードであって、
前記ネットワーク状態に関する評価基準に従った評価は、リンクの安定度に関する評価基準、配信可能な階層レベルに関する評価基準及びリンクの帯域に関する評価基準のうちの何れか又はこれらの２以上の組合せを含むことを特徴とするネットワークノード。
【０１３２】
（付記８）
付記５乃至７の何れか１に記載のネットワークノードであって、
前記コンテンツ内容に関する評価基準に従った評価は、コンテンツの重要度に関する評価基準、コンテンツの緊急性に関する評価基準及びコンテンツの優先度に関する評価基準のうちの何れか又はこれらの２以上の組合せを含むことを特徴とするネットワークノード。
【０１３３】
（付記９）
付記１乃至８の何れか１に記載のネットワークノードであって、
データを配信する範囲を表す情報に基づいて、当該ネットワークノードからの前記配信の実行を許可し又は禁止する手段を更に備えることを特徴とするネットワークノード。
【０１３４】
（付記１０）
付記１乃至９の何れか１に記載のネットワークノードにおいて、
前記構造型配信手段が、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するためのデータを保持する第１のデータ保持部を更に備えることを特徴とするネットワークノード。
【０１３５】
（付記１１）
付記１乃至１０の何れか１に記載のネットワークノードにおいて、
前記選択手段が、所定の評価方法を用いて、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択するためのデータを保持する第２のデータ保持部を更に備えることを特徴とするネットワークノード。
【０１３６】
（付記１２）
ネットワークノードで行われる配信方法であって、
所定の評価方法を用いて、非構造型配信をすることが可能なネットワークの中で前記非構造型配信に従ってデータを配信するための構造型配信手段、又は、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するための非構造型配信手段を同報配信手段として選択する選択ステップと、
前記選択ステップにより前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記ネットワークの中でデータを配信する配信ステップと、
を有することを特徴とする配信方法。
【０１３７】
（付記１３）
付記１２に記載の配信方法であって、
前記構造型配信は、複数の階層を用いたツリー型配信であり、
前記選択ステップでは、当該ネットワークノードから見た上位ノードが属する階層と下位ノードが属する階層とのそれぞれに対して、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択し、
前記選択ステップにより前記上位ノードが属する階層と前記下位ノードが属する階層とのそれぞれに対して前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記上位ノードが属する階層と前記下位ノードが属する階層とのそれぞれに対してデータを配信することを特徴とする配信方法。
【０１３８】
（付記１４）
付記１２に記載の配信方法であって、
前記構造型配信は、ツリー型配信、ループ型配信及びディストリビュート・ハッシュ・テーブルに従った同報配信からなる群から選択されたものであることを特徴とする配信方法。
【０１３９】
（付記１５）
付記１２乃至１４の何れか１に記載の配信方法であって、
前記非構造型配信は、エピデミック配信及びフラッド型配信からなる群から選択されたものであることを特徴とする配信方法。
【０１４０】
（付記１６）
付記１２乃至１５の何れか１に記載の配信方法であって、
前記所定の評価方法は、トラフィック量に関する評価基準に従った評価方法、ネットワーク状態に関する評価基準に従った評価方法及びコンテンツ内容に関する評価基準に従った評価方法のうちの何れか１つ又はこれらの２以上の組合せを含むことを特徴とする配信方法。
【０１４１】
（付記１７）
付記１６に記載の配信方法であって、
前記トラフィック量に関する評価基準は、ファイルサイズに関する評価基準及び配信先ノード数に関する評価基準のうちの何れか又はこれらの組合せを含むことを特徴とする配信方法。
【０１４２】
（付記１８）
付記１６又は１７に記載の配信方法であって、
前記ネットワーク状態に関する評価基準に従った評価は、リンクの安定度に関する評価基準、配信可能な階層レベルに関する評価基準及びリンクの帯域に関する評価基準のうちの何れか又はこれらの２以上の組合せを含むことを特徴とする配信方法。
【０１４３】
（付記１９）
付記１６乃至１８の何れか１に記載の配信方法であって、
前記コンテンツ内容に関する評価基準に従った評価は、コンテンツの重要度に関する評価基準、コンテンツの緊急性に関する評価基準及びコンテンツの優先度に関する評価基準のうちの何れか又はこれらの２以上の組合せを含むことを特徴とする配信方法。
【０１４４】
（付記２０）
付記１２乃至１９の何れか１に記載の配信方法であって、
データを配信する範囲を表す情報に基づいて、当該ネットワークノードからの前記配信の実行を許可し又は禁止するステップを更に有することを特徴とする配信方法。
【０１４５】
（付記２１）
付記１２乃至２０の何れか１に記載の配信方法において、
前記構造型配信手段が、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するためのデータを保持する第１のデータ保持ステップを更に有することを特徴とする配信方法。
【０１４６】
（付記２２）
付記１２乃至２１の何れか１に記載の配信方法において、
前記選択ステップで、所定の評価方法を用いて、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択するためのデータを保持する第２のデータ保持ステップを更に有することを特徴とする配信方法。
【０１４７】
（付記２３）
コンピュータをネットワークノードとして機能させるためのネットワークノード用プログラムであって、
前記コンピュータを、
非構造型配信をすることが可能なネットワークの中で前記非構造型配信に従ってデータを配信するための非構造型配信手段と、
前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するための構造型配信手段と、
所定の評価方法を用いて、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択する選択手段と、
として機能させ、
当該ネットワークノードは、前記選択手段により前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記ネットワークの中でデータを配信することを特徴とするネットワークノード用プログラム。
【０１４８】
（付記２４）
付記２３に記載のネットワークノード用プログラムであって、
前記構造型配信は、複数の階層を用いたツリー型配信であり、
前記選択手段は、当該ネットワークノードから見た上位ノードが属する階層と下位ノードが属する階層とのそれぞれに対して、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択し、
前記選択手段により前記上位ノードが属する階層と前記下位ノードが属する階層とのそれぞれに対して前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記上位ノードが属する階層と前記下位ノードが属する階層とのそれぞれに対してデータを配信することを特徴とするネットワークノード用プログラム。
【０１４９】
（付記２５）
付記２３に記載のネットワークノード用プログラムであって、
前記構造型配信は、ツリー型配信、ループ型配信及びディストリビュート・ハッシュ・テーブルに従った同報配信からなる群から選択されたものであることを特徴とするネットワークノード用プログラム。
【０１５０】
（付記２６）
付記２３乃至２５の何れか１に記載のネットワークノード用プログラムであって、
前記非構造型配信は、エピデミック配信及びフラッド型配信からなる群から選択されたものであることを特徴とするネットワークノード用プログラム。
【０１５１】
（付記２７）
付記２３乃至２６の何れか１に記載のネットワークノード用プログラムであって、
前記所定の評価方法は、トラフィック量に関する評価基準に従った評価方法、ネットワーク状態に関する評価基準に従った評価方法及びコンテンツ内容に関する評価基準に従った評価方法のうちの何れか１つ又はこれらの２以上の組合せを含むことを特徴とするネットワークノード用プログラム。
【０１５２】
（付記２８）
付記２７に記載のネットワークノード用プログラムであって、
前記トラフィック量に関する評価基準は、ファイルサイズに関する評価基準及び配信先ノード数に関する評価基準のうちの何れか又はこれらの組合せを含むことを特徴とするネットワークノード用プログラム。
【０１５３】
（付記２９）
付記２７又は２８に記載のネットワークノード用プログラムであって、
前記ネットワーク状態に関する評価基準に従った評価は、リンクの安定度に関する評価基準、配信可能な階層レベルに関する評価基準及びリンクの帯域に関する評価基準のうちの何れか又はこれらの２以上の組合せを含むことを特徴とするネットワークノード用プログラム。
【０１５４】
（付記３０）
付記２７乃至２９の何れか１に記載のネットワークノード用プログラムであって、
前記コンテンツ内容に関する評価基準に従った評価は、コンテンツの重要度に関する評価基準、コンテンツの緊急性に関する評価基準及びコンテンツの優先度に関する評価基準のうちの何れか又はこれらの２以上の組合せを含むことを特徴とするネットワークノード用プログラム。
【０１５５】
（付記３１）
付記２３乃至３０の何れか１に記載のネットワークノード用プログラムであって、
前記コンピュータを、更に、
データを配信する範囲を表す情報に基づいて、当該ネットワークノードからの前記配信の実行を許可し又は禁止する手段として機能させるためのネットワークノード用プログラム。
【０１５６】
（付記３２）
付記２３乃至３１の何れか１に記載のネットワークノード用プログラムにおいて、
前記コンピュータを、更に、
前記構造型配信手段が、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するためのデータを保持する第１のデータ保持部として機能させるためのネットワークノード用プログラム。
【０１５７】
（付記３３）
付記２３乃至３２の何れか１に記載のネットワークノード用プログラムにおいて、
前記コンピュータを、更に、
前記選択手段が、所定の評価方法を用いて、前記構造型配信手段又は前記非構造型配信手段を同報配信手段として選択するためのデータを保持する第２のデータ保持部として機能させるためのネットワークノード用プログラム。
【０１５８】
（付記３４）
複数のネットワークノードを備えるネットワークであって、
少なくとも一部のネットワークノードの各々が、付記１乃至１１の何れか１に記載のネットワークノードであることを特徴とするネットワーク。
【０１５９】
この出願は、２０１２年９月２７日に出願された日本出願特願２０１２−２１４１７２を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０１６０】
本発明は、ネットワーク内でデータを配信するために利用することができる。
【符号の説明】
【０１６１】
Ａ１、Ａ２、Ｂ１〜Ｂ１２  ノード
Ａ１１、Ａ２１  アプリケーション
Ａ１２、Ａ２２  同報配信制御部
Ａ１２１、Ａ２２１  同報配信データ送受信部
Ａ１２２  同報配信手段解決部
Ａ１２３、Ａ２２３  配信ポリシ設定テーブル
Ａ１２４、Ａ２２４  階層構造テーブル
Ａ１２５、Ａ２２５  階層構造構成部
Ａ１２６、Ａ２２６  ツリー型配信部
Ａ１２７、Ａ２２７  エピデミック配信部
Ａ１３、Ａ２３  ＴＣＰ／ＩＰ部
Ａ２２２  同報配信手段・範囲解決部
ＣＬ０−１〜ＣＬ０−４  レベル０クラスタ
ＣＬ１−１〜ＣＬ１−２  レベル１クラスタ
ＣＬ２−１  レベル２クラスタ
１０１〜１０３，３０１  配信ポリシ設定テーブル
２０１  階層構造テーブル 
【図１】
2014050386.tif 000003
【図２】
2014050386.tif 000004
【図３】
2014050386.tif 000005
【図４】
2014050386.tif 000006
【図５】
2014050386.tif 000007
【図６】
2014050386.tif 000008
【図７】
2014050386.tif 000009
【図８】
2014050386.tif 000010
【図９】
2014050386.tif 000011
【手続補正書】
【提出日】平成27年3月18日(2015.3.18)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】変更
【補正の内容】
【００２４】
また、本発明の第２の観点によれば、ネットワークノードで行われる配信方法であって、所定の評価方法を用いて、非構造型配信をすることが可能なネットワークの中で前記非構造型配信に従ってデータを配信するための非構造型配信手段、又は、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するための構造型配信手段を同報配信手段として選択する選択ステップと、前記選択ステップにより前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記ネットワークの中でデータを配信する配信ステップと、を有することを特徴とする配信方法が提供される。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１２
【補正方法】変更
【補正の内容】
【請求項１２】
ネットワークノードで行われる配信方法であって、
所定の評価方法を用いて、非構造型配信をすることが可能なネットワークの中で前記非構造型配信に従ってデータを配信するための非構造型配信手段、又は、前記ネットワークの中に構築される構造型配信用のリンクを用いて構造型配信に従ってデータを配信するための構造型配信手段を同報配信手段として選択する選択ステップと、
前記選択ステップにより前記同報配信手段として選択された前記構造型配信手段又は前記非構造型配信手段を用いて、前記ネットワークの中でデータを配信する配信ステップと、
を有することを特徴とする配信方法。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】図６
【補正方法】変更
【補正の内容】
【図６】
2014050386.tif 000012
【手続補正４】
【補正対象書類名】図面
【補正対象項目名】図９
【補正方法】変更
【補正の内容】
【図９】
2014050386.tif 000013
【国際調査報告】
2014050386.tif 000014
2014050386.tif 000015
2014050386.tif 000016
2014050386.tif 000017