(57)【要約】【課題】マルチホップメッシュネットワークにおいて、通信帯域の消費を抑えつつ信頼性の高いマルチキャスト通信を実現する。【解決手段】実施形態にかかる通信装置は、マルチホップメッシュネットワークを介して他の通信装置と接続される通信装置であって、ユニキャスト通信およびマルチキャスト通信のうちのいずれかで前記他の通信装置へパケットを送信する送信部と、前記マルチホップメッシュネットワークの構成情報に基づいて、前記送信部によるマルチキャストパケットの送信方法を前記ユニキャスト通信と前記マルチキャスト通信とのうちのいずれかに決定する決定部と、を備える。【選択図】図２
2014207629.tif 000002
【特許請求の範囲】
【請求項１】
マルチホップメッシュネットワークを介して他の通信装置と接続される通信装置であって、
ユニキャスト通信およびマルチキャスト通信のうちのいずれかで前記他の通信装置へパケットを送信する送信部と、
前記マルチホップメッシュネットワークの構成情報に基づいて、前記送信部によるマルチキャストパケットの送信方法を前記ユニキャスト通信と前記マルチキャスト通信とのうちのいずれかに決定する決定部と、
を備える通信装置。
【請求項２】
ネットワークを介してパケットを受信する受信部と、
前記受信部が受信した前記パケットがユニキャストパケットであるかマルチキャストパケットであるかを判定する種別判定部と、
をさらに備え、
前記決定部は、前記受信部が受信した前記パケットが前記マルチキャストパケットである場合、前記構成情報に基づいて前記マルチキャストパケットの前記送信方法を前記ユニキャスト通信と前記マルチキャスト通信とのいずれかに決定する請求項１に記載の通信装置。
【請求項３】
前記構成情報は、前記マルチキャストパケットの転送先となる他の通信装置の合計数を含む請求項１に記載の通信装置。
【請求項４】
前記構成情報は、前記マルチキャストパケットの受信対象となる他の通信装置の合計数を含む請求項１に記載の通信装置。
【請求項５】
前記構成情報は、前記マルチキャストパケットの転送先となる他の通信装置の合計数、および、前記マルチキャストパケットの受信対象となる他の通信装置の合計数の両方を含む請求項１に記載の通信装置。
【請求項６】
前記マルチキャスト通信は、ブロードキャスト通信である請求項１に記載の通信装置。
【請求項７】
前記決定部は、前記構成情報に基づいて、前記マルチキャストパケットの重複送信回数を決定し、
前記送信部は、前記決定部によって決定された前記重複送信回数にしたがって、前記マルチキャストパケットを重複送信する請求項１に記載の通信装置。
【請求項８】
前記マルチホップメッシュネットワークの前記構成情報を取得する構成判定部をさらに備える請求項１に記載の通信装置。
【請求項９】
前記構成判定部は、前記マルチホップメッシュネットワークに接続された他の通信装置から受信したマルチキャスト通信への参加要請メッセージに基づいて導出する請求項８に記載の通信装置。
【請求項１０】
マルチホップメッシュネットワークを介して他の通信装置と接続される通信装置の通信制御方法であって、
前記マルチホップメッシュネットワークの構成情報に基づいて、マルチキャストパケットの送信方法をユニキャスト通信とマルチキャスト通信とのうちのいずれかに決定し、
決定された前記通信方法にしたがって前記マルチキャストパケットを前記他の通信装置へ送信する
ことを含む通信制御方法。
【請求項１１】
マルチホップメッシュネットワークを介して他の通信装置と接続される通信装置のコンピュータを機能させるためのプログラムであって、
前記マルチホップメッシュネットワークの構成情報に基づいて、マルチキャストパケットの送信方法をユニキャスト通信とマルチキャスト通信とのうちのいずれかに決定する処理と、
決定された前記通信方法にしたがって前記マルチキャストパケットを前記他の通信装置へ送信する処理と、
を前記コンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、通信装置、通信制御方法およびプログラムに関する。
【背景技術】
【０００２】
従来、マルチホップメッシュネットワークにおいてマルチキャスト通信を実現する技術がある（たとえば非特許文献１および非特許文献２参照）。非特許文献１は、国際標準機関ＩＥＴＦ（Internet Engineering Task Force）で策定したマルチホップメッシュネットワーク用経路制御プロトコル（ＲＰＬ）の技術仕様書であり、第１２章等においてＲＰＬ上でマルチキャスト通信を実現する技術仕様が開示されている。非特許文献２は、ＲＰＬ上のマルチキャスト通信を上記とは異なる方式で実現する技術仕様書である。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】IETF RFC6550., RPL: IPv6 Routing Protocol for Low-Power and Lossy Networks (Proposed standard, 2012).
【非特許文献２】IETF I.D., draft-ietf-trickle-mcast-03, “Multicast Protocol for Low power and Lossy Networks (MPL)”, January 24, 2013.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
非特許文献１では、ＩＰマルチキャストパケットを、ＭＡＣ層のユニキャスト通信を用いて転送する方式を開示している。本方式には、ＭＡＣ層のユニキャスト通信を採用していることで、ＭＡＣ層の再送機能が利用できるという特徴がある。従って、パケット損失に対する耐性が高いという利点がある。一方、通信量は、ＩＰマルチキャストパケットの転送先となる近隣ノード数に比例して増加する。そのため、通信帯域を多く消費する欠点がある。
【０００５】
非特許文献２では、ＩＰマルチキャストパケットを、ＭＡＣ層のブロードキャスト通信を用いて転送する方式を開示している。本方式では、ＭＡＣ層のブロードキャスト通信を採用しているため、ＭＡＣ層の再送機能は利用できない。従って、パケット損失に対する耐性が低いという欠点がある。一方、通信量は、ＩＰマルチキャストパケットの転送先となる近隣ノード数に依らず一定となる。そのため、通信帯域を低減できる利点がある。
【０００６】
そこで、以下の実施形態では、マルチホップメッシュネットワークにおいて、通信帯域の消費を抑えつつ信頼性の高いマルチキャスト通信を実現することが可能な通信装置、通信制御方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
実施形態にかかる通信装置は、マルチホップメッシュネットワークを介して他の通信装置と接続される通信装置であって、ユニキャスト通信およびマルチキャスト通信のうちのいずれかで前記他の通信装置へパケットを送信する送信部と、前記マルチホップメッシュネットワークの構成情報に基づいて、前記送信部によるマルチキャストパケットの送信方法を前記ユニキャスト通信と前記マルチキャスト通信とのうちのいずれかに決定する決定部と、を備える。
【０００８】
また、実施形態にかかる通信制御方法は、マルチホップメッシュネットワークを介して他の通信装置と接続される通信装置の通信制御方法であって、前記マルチホップメッシュネットワークの構成情報に基づいて、マルチキャストパケットの送信方法をユニキャスト通信とマルチキャスト通信とのうちのいずれかに決定し、決定された前記通信方法にしたがって前記マルチキャストパケットを前記他の通信装置へ送信することを含む。
【０００９】
また、実施形態にかかるプログラムは、マルチホップメッシュネットワークを介して他の通信装置と接続される通信装置のコンピュータを機能させるためのプログラムであって、前記マルチホップメッシュネットワークの構成情報に基づいて、マルチキャストパケットの送信方法をユニキャスト通信とマルチキャスト通信とのうちのいずれかに決定する処理と、決定された前記通信方法にしたがって前記マルチキャストパケットを前記他の通信装置へ送信する処理と、を前記コンピュータに実行させる。
【図面の簡単な説明】
【００１０】
【図１】図１は、一実施形態に係る通信システムの構成例を示す概念図である。
【図２】図２は、本実施形態に係るノードの構成例を示すブロック図である。
【図３】図３は、本実施形態において各ノードが実行する通信制御動作の一例を示すフローチャートである。
【図４】図４は、本実施形態の第１例にかかる通信システムの構成例を示す模式図である。
【図５】図５は、図４に示す各ノードが保有するＩＰユニキャスト用のルーティングテーブルの一例を示す図である。
【図６】図６は、図４に示す各ノードが保有するＩＰマルチキャスト用のルーティングテーブルの一例を示す図である。
【図７】図７は、本実施形態の第２例にかかる通信システムの構成例を示す模式図である。
【図８】図８は、図７に示す各ノードが保有するＩＰマルチキャスト用のルーティングテーブルの一例を示す図である。
【図９】図９は、本実施形態の第３例にかかる通信システムの構成例を示す模式図である。
【図１０】図１０は、図９に示す各ノードが保有するＩＰマルチキャスト用のルーティングテーブルの一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照しながら、例示する実施形態にかかる通信装置、通信制御方法およびプログラムを詳細に説明する。
【００１２】
以下の実施形態は、他の通信装置とマルチホップメッシュネットワークを介して接続し、ＩＰ層マルチキャスト通信を行う通信装置であって、前記マルチホップメッシュネットワークの構成情報に基づいて、ＭＡＣ層ブロードキャスト通信およびＭＡＣ層ユニキャスト通信の通信方法を動的に制御する機能を具備することを特徴としている。
【００１３】
図１は、一実施形態に係る通信システムの構成例を示す概念図である。図１には、複数の無線局（以下、単にノードという）Ａ〜Ｉがマルチホップメッシュネットワーク３を構成し、これにネットワーク２が接続された構成の通信システム１が例示されている。通信システム１は、電力線通信網やイーサネット（登録商標）など、種々の通信システムであってよい。
【００１４】
図１において、各ノードＡ〜Ｉを結ぶ破線は無線リンクであり、ノードＡ〜Ｉそれぞれの電波到達範囲を示している。したがって、破線で結ばれたノードＡ〜Ｉ間では、無線による通信チャネルが確立されている。ただし、これに限定されず、各ノードＡ〜Ｉ間が有線リンクによって接続されていてもよい。さらに、ネットワーク２とノードＡとを結ぶ実線は、無線リンクであっても有線リンクであってもよい。以下において、ノードＡ〜Ｉを区別しない場合、ノード１０として説明する。
【００１５】
例えば、ノードＡの電波到達範囲は、ノードＢ、Ｃ、ＤおよびＥである。したがって、ノードＡは、ノードＢ、Ｃ、ＤおよびＥとそれぞれ通信が可能である。なお、図１には、マルチホップメッシュネットワーク３を７台のノードで構成している例が示されているが、９台以上あるいはそれ以下のノードで構成することも可能である。
【００１６】
図２は、本実施形態に係るノードの構成例を示すブロック図である。図２に示されるように、本実施形態のノード１０は、無線リンクにパケットを送信するパケット送信部１１と、無線リンクからのパケットを受信するパケット受信部１２と、パケット受信部１２で受信したパケットをパケット送信部１１に転送するパケット転送部１３と、パケット転送部１３で処理するパケットが制御対象であるＩＰマルチキャストパケットかどうかを判定するパケット種別判定部１４と、マルチホップメッシュネットワーク３のネットワーク構成情報（以下、マルチホップメッシュネットワーク構成情報という）を判定するネットワーク構成判定部１５と、パケット種別判定部１４およびネットワーク構成判定部１５の判定結果に基づいてパケットの送信方法を決定するパケット送信方法決定部１６と、を備えている。
【００１７】
図２では、パケット送信部１１、パケット受信部１２、パケット転送部１３、パケット種別判定部１４、ネットワーク構成判定部１５およびパケット送信方法決定部１６が、ハードウェアとして構成される例を示したが、これに限定されることはなく、ノード１０上で実行されるソフトウェアによって実現されてもよい。また、本実施形態では、ＩＰ層の規格をＩＰｖ６（ＩＥＴＦ  ＲＦＣ２４６０）、ＭＡＣ層の規格をＩＥＥＥ８０２．１５．４とした例を示すが、これに限定されることなく、ＩＰｖ４（ＩＥＴＦ  ＲＦＣ７９１）やＩＥＥＥ８０２．１１等の他の規格で機能を提供するようにしてもよい。
【００１８】
つぎに、各ノード１０の動作を、図面を用いて詳細に説明する。図３は、本実施形態において各ノードが実行する通信制御動作の一例を示すフローチャートである。なお、以下の動作説明では、パケット転送部１３の動作に着目する。
【００１９】
図３に示すように、まず、パケット転送部１３は、ネットワーク２上のノードまたはマルチホップメッシュネットワーク３上の他のノードＡ〜Ｉのうち無線リンクが確立されたノードからパケット受信部１２がＩＰパケットを受信するまで待機する（ステップＳ１０１）。ＩＰパケットを受信した場合（ステップＳ１０１；ＹＥＳ）、パケット転送部１３は、パケット種別判定部１４において、受信したＩＰパケットが転送を実施すべきＩＰマルチキャストパケットであるか否かを判定する（ステップＳ１０２）。ＩＰマルチキャストパケットでない場合（ステップＳ１０２；ＮＯ）、パケット転送部１３は、受信したＩＰパケットをパケット送信部１１から転送先アドレスへユニキャストで転送し（ステップＳ１０３）、ステップＳ１０１へリターンする。一方、ＩＰマルチキャストパケットである場合（ステップＳ１０２；ＹＥＳ）、パケット転送部１３は、ステップＳ１０４へ移行する。
【００２０】
ここで、一般にＩＰマルチキャストでは、ＩＰマルチキャストアドレスによって転送可否を決定する。転送先候補のＩＰマルチキャストノードが、受信対象のＩＰマルチキャストアドレスを保有していればＩＰマルチキャストパケットが転送され、受信対象でないＩＰマルチキャストアドレスを保有していれば転送されない。この結果、不要なＩＰマルチキャストパケットの転送が抑制されるため、網全体の通信量を低減することができる。
【００２１】
ステップＳ１０４では、パケット転送部１３は、ネットワーク構成判定部１５において、マルチホップメッシュネットワーク構成情報に基づいて現在のネットワーク構成を判定する。つづいて、パケット転送部１３は、ネットワーク構成判定部１５において判定された現在のネットワーク構成にしたがって、パケット送信方法決定部１６において、ＩＰマルチキャストパケットの送信方法を決定する（ステップＳ１０５）。具体的には、たとえば現在のネットワーク構成からＩＰマルチキャストパケットの転送先ノード数が２以下であれば（ステップＳ１０５；ＮＯ）、ＭＡＣ層ユニキャスト通信としてステップＳ１０８へ移行し、転送先ノード数が３以上であれば（ステップＳ１０５；ＹＥＳ）、ＭＡＣ層ブロードキャスト通信としてステップＳ１０６へ移行する。
【００２２】
ステップＳ１０６では、パケット転送部１３は、転送先ノード数に基づいて、パケット送信方法決定部１６においてＩＰマルチキャストパケットの重複送信回数を決定する。重複送信回数は、たとえば転送先ノード数に１を加えた数として計算されてよい。ただし、この計算方法に限らず、マルチホップメッシュネットワーク３の網全体の通信量の過度な増加を抑制しつつ、パケット損失に対する高い耐性を実現できる重複送信回数を計算可能な方法であれば、如何様にも変更することができる。
【００２３】
つぎに、パケット転送部１３は、パケット送信方法決定部１６で決定された重複送信回数にしたがって、パケット送信部１１からＩＰマルチキャストパケットをＭＡＣ層ブロードキャスト通信で重複送信し（ステップＳ１０７）、その後、本動作を終了するか、ステップＳ１０１へリターンする。たとえば、ステップＳ１０６においてパケット送信方法決定部１６が重複送信回数を５回と決定した場合、パケット転送部１３は、ＩＰマルチキャストパケットをパケット送信部１１からＭＡＣ層ブロードキャスト通信で５回重複送信する。一方、ステップＳ１０８では、パケット転送部１３は、パケット送信部１１からＩＰマルチキャストパケットをＭＡＣ層ユニキャスト通信で送信し、その後、本動作を終了するか、ステップＳ１０１へリターンする。
【００２４】
以上のような動作により、本実施形態では、マルチホップメッシュネットワーク３において、通信帯域の消費を抑えつつ信頼性の高いマルチキャスト通信を実現することが可能となる。
【００２５】
（第１例）
ここで、第１例として、ノードＡがノードＢにＩＰマルチキャストパケットを転送する場合を、図３に示したフローチャートを参照しつつ説明する。図４は、第１例にかかる通信システムの構成例を示す模式図である。図５は、図４に示す各ノードが保有するＩＰユニキャスト用のルーティングテーブルの一例を示す図である。図６は、図４に示す各ノードが保有するＩＰマルチキャスト用のルーティングテーブルの一例を示す図である。
【００２６】
図４において、ノードＢは、ＩＰマルチキャストパケットを受信するＩＰマルチキャストノードである。他のノードＡ、Ｃ〜Ｉは、ＩＰマルチキャスト通信できないＩＰユニキャストノードである。したがって、図４では、ノードＡがＩＰユニキャスト通信可能なノードは、ノードＢ、Ｃ、Ｄ、Ｅ、Ｆ、Ｇ、ＨおよびＩである。ノードＢ、Ｃ、ＤおよびＥに対しては、ノードＡは、他のノードをホップせずに直接通信することができる。一方、ノードＦ、Ｇ、ＨおよびＩに対しては、ノードＡは、他のノードＢ〜Ｅのいずれかをホップして通信する必要がある。
【００２７】
また、ノードＡは、ノードＢがＩＰマルチキャストノードであることを、マルチホップメッシュネットワーク用経路制御プロトコルにより認識している。例えばＲＰＬでは、各ノードは、ＤＡＯ（Destination Advertisement Object）パケットを利用して、ＩＰマルチキャスト通信への参加要請を他のノードに周知している。各ノードＡ〜Ｉは、この仕組みを通してＩＰマルチキャストノードの有無を把握することができる。したがって、図３に示す例では、ノードＡは、ノードＢがＩＰマルチキャストノードであることを認識している。また、ノードＡは、ＤＡＯパケットおよびこれを利用したＩＰマルチキャスト通信への参加要請に基づいて、図５および図６に示す各ルーティングテーブルをそれぞれ作成し、所定の記憶部（不図示）に保持している。
【００２８】
図５に示すように、ノードＡは、宛先としてノードＢ、Ｃ、ＤまたはＥと通信する場合の転送先をそれぞれノードＢ、Ｃ、ＤまたはＥとするテーブルを保持し、宛先としてノードＦ、Ｇ、ＨまたはＩ（以下、宛先ノードという）と通信する場合の転送先をそれぞれノードＢ、Ｃ、ＤまたはＥ（以下、転送先ノードという）とするテーブルを保持する。なお、ノードＢ、Ｃ、ＤおよびＥはそれぞれ、宛先ノードＦ、Ｇ、ＨまたはＩへ転送するＩＰユニキャスト用のルーティングテーブルを保持する。一方、ノードＦ、Ｇ、ＨおよびＩは、転送先を持たないため、ＩＰユニキャスト用のルーティングテーブルを保持しない。
【００２９】
また、図６に示すように、ノードＡは、ノードＢがマルチキャストアドレスＭを受信するＩＰマルチキャストノードであることを管理する。ノードＢは、自身がマルチキャストノードであり、マルチキャストアドレスＭを受信することを管理する。その他のノードは、配下にマルチキャストノードが存在せず、また、自身もマルチキャストノードではないため、ＩＰマルチキャスト用のルーティングテーブルを保持しない。
【００３０】
図４に示す例において、ノードＡのパケット転送部１３は、ネットワーク２上の通信装置からパケット受信部１２がＩＰパケットを受信するまで待機し（ステップＳ１０１）、ＩＰパケットを受信すると（ステップＳ１０１；ＹＥＳ）、パケット種別判定部１４において、受信したＩＰパケットが転送を実施すべきＩＰマルチキャストパケットであるか否かを判定する（ステップＳ１０２）。ここでは、ＩＰマルチキャストパケットであると仮定するため、パケット種別判定部１４は、ＩＰマルチキャストパケットであると判定して（ステップＳ１０２；ＹＥＳ）、ステップＳ１０４へ移行する。
【００３１】
ステップＳ１０４では、ノードＡのパケット転送部１３は、ネットワーク構成判定部１５において、マルチホップメッシュネットワーク構成情報に基づいて現在のネットワーク構成を判定する。つづいて、ノードＡのパケット転送部１３は、パケット送信方法決定部１６において、ＩＰマルチキャストパケットの転送先ノード数に基づき送信方法を決定する（ステップＳ１０５）。第１例では、転送先ノード数がノードＢの１つであるため、パケット送信方法決定部１６は、ＭＡＣ層ユニキャスト通信であると決定し（ステップＳ１０５；ＮＯ）、ステップＳ１０８へ移行する。
【００３２】
ステップＳ１０８では、ノードＡのパケット転送部１３は、パケット送信部１１からＩＰマルチキャストパケットをＭＡＣ層ユニキャスト通信でノードＢへ送信し、その後、ステップＳ１０１へリターンする。
【００３３】
以上のように、ＩＰマルチキャストパケットの送信にＭＡＣ層のユニキャスト通信を適用することで、第１例では、ＭＡＣ層の再送機能を活用したパケット損失に対する耐性が高い通信を実現することができる。
【００３４】
（第２例）
つぎに、第２例として、ノードＡがノードＢ、ＣおよびＧにＩＰマルチキャストパケットを転送する場合を、図３に示したフローチャートを参照しつつ説明する。図７は、第２例を説明するための模式図であり、図８は、図７に示す各ノードが保有するＩＰマルチキャスト用のルーティングテーブルの一例を示す図である。このルーティングテーブルは、図６に示すＩＰマルチキャスト用のルーティングテーブルと同様、各ノードがＤＡＯパケットを利用したＩＰマルチキャスト通信への参加要請に基づいて作成し、所定の記憶部（不図示）に保持している。なお、図７に示す各ノードが保有するＩＰユニキャスト用のルーティングテーブルの一例は、図５に示すテーブルと同様であってよい。
【００３５】
図７において、ノードＡがＩＰユニキャスト通信可能なノードは、ノードＢ、Ｃ、Ｄ、Ｅ、Ｆ、Ｇ、ＨおよびＩである。ノードＡからは、ノードＢ、Ｃ、ＤおよびＥに対して他のノードをホップせずに直接通信可能である。一方、ノードＦ、Ｇ、ＨおよびＩに対しては、他のノードＢ、Ｃ、ＤまたはＥをホップして通信する必要がある。
【００３６】
また、ノードＢ、ＣおよびＧは、ＩＰマルチキャストパケットを受信するＩＰマルチキャストノードである。ノードＡは、ノードＢ、ＣおよびＧがＩＰマルチキャストノードであることを、ＤＡＯパケットを利用したＩＰマルチキャスト通信への参加要請に基づき把握している。
【００３７】
図８に示すように、ノードＡは、ノードＢ、ＣおよびＧがマルチキャストアドレスＭを受信するマルチキャストノードであることを管理する。ノードＢおよびＧは、自身がマルチキャストノードであり、マルチキャストアドレスＭを受信することをそれぞれ管理する。ノードＣは、自身がマルチキャストノードであり、マルチキャストアドレスＭを受信することを管理し、さらに、ノードＧがマルチキャストアドレスＭを受信するマルチキャストノードであることを管理する。その他のノードは、配下にマルチキャストノードが存在せず、また、自身もマルチキャストノードではないため、ＩＰマルチキャスト用のルーティングテーブルを保持しない。
【００３８】
図７に示す例において、ノードＡのパケット転送部１３は、ネットワーク２上の通信装置からパケット受信部１２がＩＰパケットを受信するまで待機し（ステップＳ１０１）、ＩＰパケットを受信すると（ステップＳ１０１；ＹＥＳ）、パケット種別判定部１４において、受信したＩＰパケットが転送を実施すべきＩＰマルチキャストパケットであるか否かを判定する（ステップＳ１０２）。ここでは、ＩＰマルチキャストパケットであると仮定するため、パケット種別判定部１４は、ＩＰマルチキャストパケットであると判定して（ステップＳ１０２；ＹＥＳ）、ステップＳ１０４へ移行する。
【００３９】
ステップＳ１０４では、ノードＡのパケット転送部１３は、ネットワーク構成判定部１５において、マルチホップメッシュネットワーク構成情報に基づいて現在のネットワーク構成を判定する。つづいて、ノードＡのパケット転送部１３は、パケット送信方法決定部１６において、ＩＰマルチキャストパケットの転送先ノード数に基づき送信方法を決定する（ステップＳ１０５）。第２例では、転送先ノード数がノードＢおよびＣの２つであるため、パケット送信方法決定部１６は、ＭＡＣ層ユニキャスト通信であると決定し（ステップＳ１０５；ＮＯ）、ステップＳ１０８へ移行する。
【００４０】
ステップＳ１０８では、ノードＡのパケット転送部１３は、パケット送信部１１からＩＰマルチキャストパケットをＭＡＣ層ユニキャスト通信でノードＢおよびＣへそれぞれ送信し、その後、ステップＳ１０１へリターンする。
【００４１】
以上のように、ＩＰマルチキャストパケットの送信にＭＡＣ層のユニキャスト通信を適用することで、第２例では、ＭＡＣ層の再送機能を活用したパケット損失に対する耐性が高い通信を実現することができる。
【００４２】
（第３例）
つぎに、第３例として、ノードＡがノードＢ、Ｃ、Ｅ、ＧおよびＨにＩＰマルチキャストパケットを転送する場合を、図３に示したフローチャートを参照しつつ説明する。図９は、第３実施例を説明するための模式図であり、図１０は、図９に示す各ノードが保有するＩＰマルチキャスト用のルーティングテーブルの一例を示す図である。このルーティングテーブルは、図６に示すＩＰマルチキャスト用のルーティングテーブルと同様、各ノードがＤＡＯパケットを利用したＩＰマルチキャスト通信への参加要請に基づいて作成し、所定の記憶部（不図示）に保持している。なお、図９に示す各ノードが保有するＩＰユニキャスト用のルーティングテーブルの一例は、図５に示すテーブルと同様であってよい。
【００４３】
図９において、ノードＡがＩＰユニキャスト通信可能なノードは、ノードＢ、Ｃ、Ｄ、Ｅ、Ｆ、Ｇ、ＨおよびＩである。ノードＡからは、ノードＢ、Ｃ、ＤおよびＥに対して他のノードをホップせずに直接通信可能である。一方、ノードＦ、Ｇ、ＨおよびＩに対しては、他のノードＢ、Ｃ、ＤまたはＥをホップして通信する必要がある。
【００４４】
また、ノードＢ、Ｃ、Ｅ、ＧおよびＨは、ＩＰマルチキャストパケットを受信するＩＰマルチキャストノードである。ノードＡは、ノードＢ、Ｃ、Ｅ、ＧおよびＨがＩＰマルチキャストノードであることを、ＤＡＯパケットを利用したＩＰマルチキャスト通信への参加要請に基づき把握している。
【００４５】
また、図１０に示すように、ノードＡは、ノードＢ、Ｃ、Ｅ、ＧおよびＨがマルチキャストアドレスＭを受信するマルチキャストノードであることを管理する。ノードＢ、Ｅ、ＧおよびＨは、自身がマルチキャストノードであり、マルチキャストアドレスＭを受信することを管理する。ノードＣは、自身がマルチキャストノードであり、マルチキャストアドレスＭを受信することを管理し、さらに、ノードＧがマルチキャストアドレスＭを受信するマルチキャストノードであることを管理する。ノードＤは、ノードＨがマルチキャストアドレスＭを受信するマルチキャストノードであることを管理する。その他のノードは、配下にマルチキャストノードが存在せず、また、自身もマルチキャストノードではないため、ＩＰマルチキャスト用のルーティングテーブルを保持しない。
【００４６】
図９に示す例において、ノードＡのパケット転送部１３は、ネットワーク２上の通信装置からパケット受信部１２がＩＰパケットを受信するまで待機し（ステップＳ１０１）、ＩＰパケットを受信すると（ステップＳ１０１；ＹＥＳ）、パケット種別判定部１４において、受信したＩＰパケットが転送を実施すべきＩＰマルチキャストパケットであるか否かを判定する（ステップＳ１０２）。ここでは、ＩＰマルチキャストパケットであると仮定するため、パケット種別判定部１４は、ＩＰマルチキャストパケットであると判定して（ステップＳ１０２；ＹＥＳ）、ステップＳ１０４へ移行する。
【００４７】
ステップＳ１０４では、ノードＡのパケット転送部１３は、ネットワーク構成判定部１５において、マルチホップメッシュネットワーク構成情報に基づいて現在のネットワーク構成を判定する。つづいて、ノードＡのパケット転送部１３は、パケット送信方法決定部１６において、ＩＰマルチキャストパケットの転送先ノード数に基づき送信方法を決定する（ステップＳ１０５）。第３例では、転送先ノード数がノードＢ、Ｃ、ＤおよびＥの４つであるため、パケット送信方法決定部１６は、ＭＡＣ層ブロードキャスト通信であると決定し（ステップＳ１０５；ＹＥＳ）、ステップＳ１０６へ移行する。
【００４８】
ステップＳ１０６では、ノードＡのパケット転送部１３は、パケット送信方法決定部１６において、転送先ノード数からＭＡＣ層ブロードキャストの重複送信回数を決定する。ここで決定される重複送信回数の計算方法は、転送先ノード数に１を加えた数を重複送信回数として計算するものとする。従って、パケット送信方法決定部１６は、重複送信回数を５回と計算する。
【００４９】
つぎに、ノードＡのパケット転送部１３は、パケット送信部１１からＩＰマルチキャストパケットをＭＡＣ層ブロードキャスト通信で５回重複送信し（ステップＳ１０７）、その後、ステップＳ１０１へリターンする。
【００５０】
以上のように、第３例では、ＩＰマルチキャストパケットの送信にＭＡＣ層のブロードキャスト通信を適用することで、ＩＰマルチキャストパケットの転送先が増加した場合でも通信帯域を低減することができる。さらに、ＭＡＣ層のブロードキャストの重複送信を制御することで、パケット損失に対する耐性の向上を同時に実現することができる。
【００５１】
なお、本実施形態では、転送先ノード数に１を加えた数を重複送信回数として計算する例を示したが、加算する値は、１に限らず、設定変更可能な値であってもよい。また、この計算方法に限らず、上述したように、マルチホップメッシュネットワーク３の網全体の通信量の過度な増加を抑制しつつ、パケット損失に対する高い耐性を実現できる重複送信回数を計算可能な方法であれば、如何様にも変更することができる。
【００５２】
なお、一般には、転送先ノード数が増加するに伴い未受信となる転送先が増加する確率が高まる。一方、無制限に重複送信回数を増加すれば通信帯域を多く消費する結果となる。そこで、通信帯域の消費を抑えるために、重複送信回数に上限を設定する等の制限を設けてもよい。また、未受信となる転送先の増加を防止するために、重複送信回数に下限を設定する等の制限を設けてもよい。
【００５３】
また、本実施形態では、転送先ノード数に基づいて送信方法を決定する例を示したが、例えば、マルチホップメッシュネットワーク３全体におけるＩＰマルチキャストノード数の合計に基づいて決定してもよい。例えばＲＰＬでは、各ノードは、自身よりも下流に配置されたノード（下流ノードともいう）が送信するＤＡＯパケットを受信することで、自身よりも下流に配置された全てのＩＰマルチキャストノードの数の合計を管理している。パケット送信方法決定部１６は、この仕組みを利用して、ＩＰマルチキャストノード数の合計を算出し、算出した合計数にしたがってＩＰマルチキャストパケットの送信方法を決定してもよい。この方法は、上流におけるパケット損失によって多数の未受信ノードが発生する状況を回避することが可能となるため、転送先ノード数が少ないが、ＩＰマルチキャストノード数の合計が多い場合に特に有効である。
【００５４】
同様に、本実施形態では、転送先ノード数に基づいて重複送信回数を計算する例を示したが、例えば、自身よりも下流に配置されたＩＰマルチキャストノードの合計数に基づいて重複送信回数を決定してもよい。この方法もまた、上流におけるパケット損失によって多数の未受信ノードが発生する状況を回避することが可能となるため、転送先ノード数が少ないが、ＩＰマルチキャストノード数の合計が多い場合に特に有効である。
【００５５】
以上のように、本実施形態によれば、マルチホップメッシュネットワークにおいて、通信帯域の消費を抑えつつ信頼性の高いＩＰマルチキャスト通信を実現できる。たとえば近隣ノード数の多い密な構成では、通信量を抑えたＭＡＣ層ブロードキャスト通信を利用し、かつ、一定の信頼性を確保することができる。また、近隣ノード数の少ない素な構成では、ＭＡＣ層ユニキャスト通信を利用し、転送先ごとに要求される信頼性を確保することが可能となる。
【００５６】
また、上記実施形態およびその変形例は本発明を実施するための例にすぎず、本発明はこれらに限定されるものではなく、仕様等に応じて種々変形することは本発明の範囲内であり、更に本発明の範囲内において、他の様々な実施形態が可能であることは上記記載から自明である。例えば実施形態に対して適宜例示した変形例は、他の実施形態と組み合わせることも可能であることは言うまでもない。
【符号の説明】
【００５７】
１…通信システム、２…ネットワーク、３…マルチホップメッシュネットワーク、１０，Ａ〜Ｉ…ノード、１１…パケット送信部、１２…パケット受信部、１３…パケット転送部、１４…パケット種別判定部、１５…ネットワーク構成判定部、１６…パケット送信方法決定部
【図１】
2014207629.tif 000003
【図２】
2014207629.tif 000004
【図３】
2014207629.tif 000005
【図４】
2014207629.tif 000006
【図５】
2014207629.tif 000007
【図６】
2014207629.tif 000008
【図７】
2014207629.tif 000009
【図８】
2014207629.tif 000010
【図９】
2014207629.tif 000011
【図１０】
2014207629.tif 000012