(57)【特許請求の範囲】
【請求項１】
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードとして用いられる無線通信装置であって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築部と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御部と、
を備え、
前記経路構築部は、
前記転送経路における下位の隣接ノードから受信される経路制御用パケットに基づいて、前記転送経路に関する情報を生成し、
前記経路制御用パケットとして、ＩＧＭＰ−Ｒｅｐｏｒｔ又は無線マルチホップネットワークにおける、データリンク層の再送制御を取り入れたマルチキャスト通信方式であるＷＲＭ方式において、ＩＧＭＰ−Ｒｅｐｏｒｔを受信した際に転送されるメッセージであるＷＲＭ−Ｒｅｐｏｒｔを受信し、
前記経路制御用パケットとして、前記ＩＧＭＰ−Ｒｅｐｏｒｔを受信した場合、前記転送経路における前記無線マルチホップネットワーク内の上位の隣接ノードに対しては、前記経路制御用パケットとして、ＷＲＭ−Ｒｅｐｏｒｔを送信し、直接接続された外部ネットワークのノードに対しては、前記経路制御用パケットとして、ＩＧＭＰ−Ｒｅｐｏｒｔを送信する、
ことを特徴とする無線通信装置。
【請求項２】
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードとして用いられる無線通信装置であって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築部と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御部と、
を備え、
前記経路構築部は、
前記基幹ネットワークのノードと接続される最上流のノードを指定するためのノード指定パケットを受信すると、自らが最上流ノードであることを記憶するとともに、そのノード指定パケットを、前記無線マルチホップネットワーク全体にフラッディングする一方、
前記フラッディングされたノード指定パケットを受信すると、前記フラッディングを行ったノードを、最上流ノードとして登録する、
ことを特徴とする無線通信装置。
【請求項３】
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードとして用いられる無線通信装置であって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築部と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御部と、
を備え、
前記無線マルチホップネットワークが仮想プライベートネットワークを形成する場合、
前記経路構築部は、
前記転送経路を追加する場合に、前記基幹ネットワークのノードと接続される最上流ノードのＭＡＣアドレスの問い合わせパケットを、前記仮想プライベートネットワーク内にフラッディングする一方、
フラッディングされた問い合わせパケットを受信すると、隣接するノードに、前記問い合わせパケットを転送し、その応答パケットに含まれるアドレスが、前記基幹ネットワークのノードのものである場合には、自身が最上流ノードである旨の応答パケットを、フラッディングを行ったノードに返信する、
ことを特徴とする無線通信装置。
【請求項４】
前記転送制御部は、
前記マルチキャストデータパケットを、データリンク層の送信方式として、到達確認及び再送制御のないブロードキャスト送信を用いて、直接接続された転送先に転送可能であり、
前記マルチキャストデータパケットを送信するノードの数と、前記マルチキャストデータパケットを送信する際の無線帯域の占有時間との少なくとも一方に基づいて、前記マルチキャストデータパケットを、前記ユニキャスト送信を用いて送信するか、ブロードキャスト送信を用いて送信するかを決定する、
ことを特徴とする請求項１乃至３のいずれか１項に記載の無線通信装置。
【請求項５】
前記転送制御部は、
前記マルチキャストデータパケットを、データリンク層の送信方式として到達確認及び再送制御のないブロードキャスト送信を用いて、直接接続された転送先に転送可能であり、
前記マルチキャストデータパケットを送信するノード各々に対して、そのノードへ送信されるパケットのパケットロス率及び送信の遅延時間との少なくとも一方に基づいて、前記マルチキャストデータパケットをユニキャスト送信するか、ブロードキャスト送信するかを決定する、
ことを特徴とする請求項１乃至３のいずれか１項に記載の無線通信装置。
【請求項６】
前記経路構築部は、
任意のタイミングで、前記転送経路を維持するための経路維持用パケットを、前記無線マルチホップネットワーク全体にフラッディングする一方、
前記フラッディングされた経路維持用パケットを受信すると、その経路維持用パケットに基づいて、前記転送経路に関する情報を更新し、
所定期間更新が行われなかった前記転送経路に関する情報を消去する、
ことを特徴とする請求項１乃至５のいずれか一項に記載の無線通信装置。
【請求項７】
請求項１乃至６のいずれか一項に記載の無線通信装置を、無線中継ノードとする、無線ネットワークシステム。
【請求項８】
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードにおけるデータ転送方法であって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築工程と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御工程と、
を含み、
前記経路構築工程では、
前記転送経路における下位の隣接ノードから受信される経路制御用パケットに基づいて、前記転送経路に関する情報を生成し、
前記経路制御用パケットとして、ＩＧＭＰ−Ｒｅｐｏｒｔ又は無線マルチホップネットワークにおける、データリンク層の再送制御を取り入れたマルチキャスト通信方式であるＷＲＭ方式において、ＩＧＭＰ−Ｒｅｐｏｒｔを受信した際に転送されるメッセージであるＷＲＭ−Ｒｅｐｏｒｔを受信し、
前記経路制御用パケットとして、前記ＩＧＭＰ−Ｒｅｐｏｒｔを受信した場合、前記転送経路における前記無線マルチホップネットワーク内の上位の隣接ノードに対しては、前記経路制御用パケットとして、ＷＲＭ−Ｒｅｐｏｒｔを送信し、直接接続された外部ネットワークのノードに対しては、前記経路制御用パケットとして、ＩＧＭＰ−Ｒｅｐｏｒｔを送信するデータ転送方法。
【請求項９】
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードにおけるデータ転送方法であって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築工程と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御工程と、
を含み、
前記経路構築工程では、
前記基幹ネットワークのノードと接続される最上流のノードを指定するためのノード指定パケットを受信すると、自らが最上流ノードであることを記憶するとともに、そのノード指定パケットを、前記無線マルチホップネットワーク全体にフラッディングする一方、
前記フラッディングされたノード指定パケットを受信すると、前記フラッディングを行ったノードを、最上流ノードとして登録するデータ転送方法。
【請求項１０】
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードにおけるデータ転送方法であって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築工程と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御工程と、
を含み、
前記無線マルチホップネットワークが仮想プライベートネットワークを形成する場合、
前記経路構築工程では、
前記転送経路を追加する場合に、前記基幹ネットワークのノードと接続される最上流ノードのＭＡＣアドレスの問い合わせパケットを、前記仮想プライベートネットワーク内にフラッディングする一方、
フラッディングされた問い合わせパケットを受信すると、隣接するノードに、前記問い合わせパケットを転送し、その応答パケットに含まれるアドレスが、前記基幹ネットワークのノードのものである場合には、自身が最上流ノードである旨の応答パケットを、フラッディングを行ったノードに返信するデータ転送方法。
【請求項１１】
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードの制御に用いられるプログラムであって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築手順と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御手順と、
をコンピュータに実行させ、
前記経路構築手順では、
前記転送経路における下位の隣接ノードから受信される経路制御用パケットに基づいて、前記転送経路に関する情報を生成し、
前記経路制御用パケットとして、ＩＧＭＰ−Ｒｅｐｏｒｔ又は無線マルチホップネットワークにおける、データリンク層の再送制御を取り入れたマルチキャスト通信方式であるＷＲＭ方式において、ＩＧＭＰ−Ｒｅｐｏｒｔを受信した際に転送されるメッセージであるＷＲＭ−Ｒｅｐｏｒｔを受信し、
前記経路制御用パケットとして、前記ＩＧＭＰ−Ｒｅｐｏｒｔを受信した場合、前記転送経路における前記無線マルチホップネットワーク内の上位の隣接ノードに対しては、前記経路制御用パケットとして、ＷＲＭ−Ｒｅｐｏｒｔを送信し、直接接続された外部ネットワークのノードに対しては、前記経路制御用パケットとして、ＩＧＭＰ−Ｒｅｐｏｒｔを送信するプログラム。
【請求項１２】
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードの制御に用いられるプログラムであって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築手順と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御手順と、
をコンピュータに実行させ、
前記経路構築手順では、
前記基幹ネットワークのノードと接続される最上流のノードを指定するためのノード指定パケットを受信すると、自らが最上流ノードであることを記憶するとともに、そのノード指定パケットを、前記無線マルチホップネットワーク全体にフラッディングする一方、
前記フラッディングされたノード指定パケットを受信すると、前記フラッディングを行ったノードを、最上流ノードとして登録するプログラム。
【請求項１３】
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードの制御に用いられるプログラムであって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築手順と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御手順と、
をコンピュータに実行させ、
前記無線マルチホップネットワークが仮想プライベートネットワークを形成する場合、
前記経路構築手順では、
前記転送経路を追加する場合に、前記基幹ネットワークのノードと接続される最上流ノードのＭＡＣアドレスの問い合わせパケットを、前記仮想プライベートネットワーク内にフラッディングする一方、
フラッディングされた問い合わせパケットを受信すると、隣接するノードに、前記問い合わせパケットを転送し、その応答パケットに含まれるアドレスが、前記基幹ネットワークのノードのものである場合には、自身が最上流ノードである旨の応答パケットを、フラッディングを行ったノードに返信するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチキャストデータパケットの転送を行う無線通信装置、無線ネットワークシステム、データ転送方法、及び、プログラムに関する。
【背景技術】
【０００２】
デジタル化された音声や動画を、有線又は無線のＩＰ（Internet protocol）ネットワーク上で配信する技術が注目されている（例えば、特許文献１〜４参照）。ＩＰネットワーク上の配信は、ＩＰマルチキャストによる１対多型の通信が有効である。昨今のコアネットワークの広帯域化、高品質化により、このような配信技術も現実のものとなりつつある。【０００３】
ＩＰマルチキャスト送信では、データリンク層においてブロードキャスト通信が行われ、トランスポート層においてＵＤＰ（User Datagram Protocol）プロトコルが用いられるのが一般的である。ブロードキャスト送信は、データリンク層において、到達確認がないため、パケットロスがアプリケーションレベルのデータ欠落につながる。これは、無線ネットワーク、例えば無線マルチホップネットワークでも同様である。【０００４】
近年、無線ネットワークの中でも、例えば無線リンクを、多段に接続した形態をとる無線メッシュネットワークの利用が広まりつつある。このような無線ネットワークでは、有線ネットワークと比較して、電波伝搬のゆらぎ、フェージング、および、電波の干渉によるビットエラーが多く発生する傾向がある。このため、物理層で発生するパケットロスが、そのままアプリケーションレベルのデータ欠落に直結する。【０００５】
さらに、ＩＰマルチキャストによる放送や広告配信などを実現する上では、外部ネットワークから送られるデータのマルチキャスト通信を行えるようにする必要がある。基幹ネットワークと無線マルチホップネットワークを接続し、基幹ネットワークにマルチキャスト送信元が存在し、無線マルチホップネットワークに受信端末が存在する場合、受信端末は、ＬＨＲ（Last Hop Router）に直接接続しない。このような場合では、既存のＩＧＭＰ（Internet Group Management Protocol）−Ｐｒｏｘｙｉｎｇ技術（非特許文献１参照）を用いることにより、ＩＧＭＰパケットをＬＨＲに送信し、マルチキャストデータパケットの転送経路を構築し、マルチキャストデータパケットを受信することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−１２９７７９号公報
【特許文献２】特開２００７−４９３８２号公報
【特許文献３】特開２００７−５３４８６号公報
【特許文献４】特開２００２−２８１０３０号公報
【非特許文献】
【０００７】
【非特許文献１】IGMP-Proxying: Internet Group Management Protocol (IGMP) / Multicast Listener Discovery (MLD)-Based Multicast Forwarding ("IGMP/MLD Proxying"), RFC 4605
【発明の概要】
【発明が解決しようとする課題】
【０００８】
関連する無線ネットワークにおけるマルチキャスト送信には、以下に示す問題点がある。【０００９】
（１）無線ネットワーク、例えば、無線メッシュネットワークでは、電波伝搬のゆらぎ、フェージング、電波の干渉によるビットエラーが多く発生し、パケットロスが多い傾向にある。現状のマルチキャスト送信では、データリンク層のブロードキャスト送信を行い、トランスポート層ではＵＤＰプロトコルを行うので、データパケットの到達確認が行われないため、データパケットの配信率を高めることができない。【００１０】
しかも、無線メッシュネットワークでは、隠れ端末問題によるパケットロスやさらし端末問題によるスループット低下が問題視されている。上述の特許文献１に記載のシステムでは、それらの問題に対する対処が行われていないため、パケットロスやスループット低下が生ずる可能性がある。【００１１】
（２）データリンク層のブロードキャスト送信では、不特定の複数のノードが通信相手となるため、最も低い伝送レートでデータが送信される。これにより、ブロードキャスト送信によって通信帯域が占有される時間が長くなるので、高速なマルチキャスト通信を行うことができない。この結果、同時に同一チャネルを使用する他のユニキャスト通信の帯域が圧迫され、スループットが低下する。【００１２】
（３）ＩＧＭＰ−Ｐｒｏｘｙｉｎｇ技術は、無線マルチホップネットワークを考慮して考案されたものではなく、マルチキャストフローの上流（送信者側）および下流（受信者側）に接続する物理ポートの設定を固定する必要がある。そのため、あらゆるインターフェイスからのマルチキャストデータパケットを受信し、適切なインターフェイスに、動的に転送するのが困難となる。【００１３】
本発明は、上記事情に鑑みてなされたものであり、マルチキャストデータパケットの配信率を高めることができる無線通信装置、無線ネットワークシステム、データ転送方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記目的を達成するため、本発明の第１の観点に係る無線通信装置は、
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードとして用いられる無線通信装置であって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築部と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御部と、
を備え、
前記経路構築部は、
前記転送経路における下位の隣接ノードから受信される経路制御用パケットに基づいて、前記転送経路に関する情報を生成し、
前記経路制御用パケットとして、ＩＧＭＰ−Ｒｅｐｏｒｔ又は無線マルチホップネットワークにおける、データリンク層の再送制御を取り入れたマルチキャスト通信方式であるＷＲＭ方式において、ＩＧＭＰ−Ｒｅｐｏｒｔを受信した際に転送されるメッセージであるＷＲＭ−Ｒｅｐｏｒｔを受信し、
前記経路制御用パケットとして、前記ＩＧＭＰ−Ｒｅｐｏｒｔを受信した場合、前記転送経路における前記無線マルチホップネットワーク内の上位の隣接ノードに対しては、前記経路制御用パケットとして、ＷＲＭ−Ｒｅｐｏｒｔを送信し、直接接続された外部ネットワークのノードに対しては、前記経路制御用パケットとして、ＩＧＭＰ−Ｒｅｐｏｒｔを送信する。
本発明の第２の観点に係る無線通信装置は、
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードとして用いられる無線通信装置であって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築部と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御部と、
を備え、
前記経路構築部は、
前記基幹ネットワークのノードと接続される最上流のノードを指定するためのノード指定パケットを受信すると、自らが最上流ノードであることを記憶するとともに、そのノード指定パケットを、前記無線マルチホップネットワーク全体にフラッディングする一方、
前記フラッディングされたノード指定パケットを受信すると、前記フラッディングを行ったノードを、最上流ノードとして登録する。
本発明の第３の観点に係る無線通信装置は、
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードとして用いられる無線通信装置であって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築部と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御部と、
を備え、
前記無線マルチホップネットワークが仮想プライベートネットワークを形成する場合、
前記経路構築部は、
前記転送経路を追加する場合に、前記基幹ネットワークのノードと接続される最上流ノードのＭＡＣアドレスの問い合わせパケットを、前記仮想プライベートネットワーク内にフラッディングする一方、
フラッディングされた問い合わせパケットを受信すると、隣接するノードに、前記問い合わせパケットを転送し、その応答パケットに含まれるアドレスが、前記基幹ネットワークのノードのものである場合には、自身が最上流ノードである旨の応答パケットを、フラッディングを行ったノードに返信する。
【００１５】
本発明の第４の観点に係る無線ネットワークシステムは、本発明の無線通信装置を、無線中継ノードとする。
【００１６】
本発明の第５の観点に係るデータ転送方法は、
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードにおけるデータ転送方法であって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築工程と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御工程と、
を含み、
前記経路構築工程では、
前記転送経路における下位の隣接ノードから受信される経路制御用パケットに基づいて、前記転送経路に関する情報を生成し、
前記経路制御用パケットとして、ＩＧＭＰ−Ｒｅｐｏｒｔ又は無線マルチホップネットワークにおける、データリンク層の再送制御を取り入れたマルチキャスト通信方式であるＷＲＭ方式において、ＩＧＭＰ−Ｒｅｐｏｒｔを受信した際に転送されるメッセージであるＷＲＭ−Ｒｅｐｏｒｔを受信し、
前記経路制御用パケットとして、前記ＩＧＭＰ−Ｒｅｐｏｒｔを受信した場合、前記転送経路における前記無線マルチホップネットワーク内の上位の隣接ノードに対しては、前記経路制御用パケットとして、ＷＲＭ−Ｒｅｐｏｒｔを送信し、直接接続された外部ネットワークのノードに対しては、前記経路制御用パケットとして、ＩＧＭＰ−Ｒｅｐｏｒｔを送信する。
本発明の第６の観点に係るデータ転送方法は、
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードにおけるデータ転送方法であって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築工程と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御工程と、
を含み、
前記経路構築工程では、
前記基幹ネットワークのノードと接続される最上流のノードを指定するためのノード指定パケットを受信すると、自らが最上流ノードであることを記憶するとともに、そのノード指定パケットを、前記無線マルチホップネットワーク全体にフラッディングする一方、
前記フラッディングされたノード指定パケットを受信すると、前記フラッディングを行ったノードを、最上流ノードとして登録する。
本発明の第７の観点に係るデータ転送方法は、
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードにおけるデータ転送方法であって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築工程と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御工程と、
を含み、
前記無線マルチホップネットワークが仮想プライベートネットワークを形成する場合、
前記経路構築工程では、
前記転送経路を追加する場合に、前記基幹ネットワークのノードと接続される最上流ノードのＭＡＣアドレスの問い合わせパケットを、前記仮想プライベートネットワーク内にフラッディングする一方、
フラッディングされた問い合わせパケットを受信すると、隣接するノードに、前記問い合わせパケットを転送し、その応答パケットに含まれるアドレスが、前記基幹ネットワークのノードのものである場合には、自身が最上流ノードである旨の応答パケットを、フラッディングを行ったノードに返信する。
【００１７】
本発明の第８の観点に係るプログラムは、
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードの制御に用いられるプログラムであって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築手順と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御手順と、
をコンピュータに実行させ、
前記経路構築手順では、
前記転送経路における下位の隣接ノードから受信される経路制御用パケットに基づいて、前記転送経路に関する情報を生成し、
前記経路制御用パケットとして、ＩＧＭＰ−Ｒｅｐｏｒｔ又は無線マルチホップネットワークにおける、データリンク層の再送制御を取り入れたマルチキャスト通信方式であるＷＲＭ方式において、ＩＧＭＰ−Ｒｅｐｏｒｔを受信した際に転送されるメッセージであるＷＲＭ−Ｒｅｐｏｒｔを受信し、
前記経路制御用パケットとして、前記ＩＧＭＰ−Ｒｅｐｏｒｔを受信した場合、前記転送経路における前記無線マルチホップネットワーク内の上位の隣接ノードに対しては、前記経路制御用パケットとして、ＷＲＭ−Ｒｅｐｏｒｔを送信し、直接接続された外部ネットワークのノードに対しては、前記経路制御用パケットとして、ＩＧＭＰ−Ｒｅｐｏｒｔを送信する。
本発明の第９の観点に係るプログラムは、
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードの制御に用いられるプログラムであって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築手順と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御手順と、
をコンピュータに実行させ、
前記経路構築手順では、
前記基幹ネットワークのノードと接続される最上流のノードを指定するためのノード指定パケットを受信すると、自らが最上流ノードであることを記憶するとともに、そのノード指定パケットを、前記無線マルチホップネットワーク全体にフラッディングする一方、
前記フラッディングされたノード指定パケットを受信すると、前記フラッディングを行ったノードを、最上流ノードとして登録する。
本発明の第１０の観点に係るプログラムは、
マルチキャストデータパケットの配信元を含む基幹ネットワークに接続された無線マルチホップネットワークの無線中継ノードの制御に用いられるプログラムであって、
前記配信元と受信端末との間を結ぶ、マルチキャストデータパケットの転送経路を、ユニキャスト経路に基づいて構築する経路構築手順と、
前記無線マルチホップネットワークで、マルチキャストデータパケットを送信する際に、到達確認及び再送制御のあるユニキャスト送信を用いて、直接接続された転送先に転送する転送制御手順と、
をコンピュータに実行させ、
前記無線マルチホップネットワークが仮想プライベートネットワークを形成する場合、
前記経路構築手順では、
前記転送経路を追加する場合に、前記基幹ネットワークのノードと接続される最上流ノードのＭＡＣアドレスの問い合わせパケットを、前記仮想プライベートネットワーク内にフラッディングする一方、
フラッディングされた問い合わせパケットを受信すると、隣接するノードに、前記問い合わせパケットを転送し、その応答パケットに含まれるアドレスが、前記基幹ネットワークのノードのものである場合には、自身が最上流ノードである旨の応答パケットを、フラッディングを行ったノードに返信する。
【発明の効果】
【００１８】
本発明によれば、マルチキャストデータパケットは、到達確認及び再送制御のあるユニキャスト送信により送信される。この結果、マルチキャストデータパケットの配信率を高めることができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の第１の実施形態に係る無線ネットワークシステムのノード配置図である。
【図２】無線マルチホップマルチキャストルータの構成を示すブロック図である。
【図３】マルチキャストルーティングテーブルの管理情報（エントリ）を示す図である。
【図４】ソースゲートウエイテーブルの管理情報（エントリ）を示す図である。
【図５】マルチキャストデータ転送経路を構築、削除する際の経路制御用パケットの転送シーケンスを示す図である。
【図６】ＩＧＭＰ−Ｒｅｐｏｒｔを受信した時のＷＭＭＲの処理フローである。
【図７】ＷＲＭ−Ｒｅｐｏｒｔのデータフォーマットを示す図である。
【図８】ＷＲＭ−Ｒｅｐｏｒｔを受信した時のＷＭＭＲの処理フローである。
【図９】登録された各ＷＭＭＲのマルチキャストルーティングテーブルのエントリを示す図である。
【図１０】受信端末の追加登録、削除する際の経路制御用パケットの転送シーケンスを示す図である。
【図１１】追加登録後の各ＷＭＭＲのマルチキャストルーティングテーブルのエントリを示す図である。
【図１２】エントリ削除のＷＲＭ−Ｒｅｐｏｒｔのパケットフィールドを示す図である。
【図１３】エントリ維持のＷＲＭ−Ｒｅｐｏｒｔのパケットフィールドを示す図である。
【図１４】マルチキャストデータパケットの転送動作の処理フローである。
【図１５】本発明の第２の実施形態に係るネットワークシステムの構成を示すノード配置図である。
【図１６】ＷＲＭ−ＳＧＷＡＤパケットのパケットフィールドを示す図である。
【図１７】本発明の第４の実施形態に係るネットワークシステムの構成を示すノード配置図である。
【図１８】図１７のネットワークシステムにおける、登録後の各ＷＭＭＲのマルチキャストルーティングテーブルのエントリを示す図である。
【図１９】図１７のネットワークシステムにおける、マルチキャストデータパケットの転送動作の処理フローである。
【図２０】ブロードキャスト送信済みリストである。
【図２１】ＶＰＮネットワークが形成されている場合の経路制御用パケットの転送シーケンスを示す図である。
【図２２】ＶＰＮネットワークが形成されている場合のＷＲＭ−Ｒｅｐｏｒｔを受信した時のＷＭＭＲの処理フローである。
【発明を実施するための形態】
【００２０】
以下、本発明の実施形態について図面を参照して詳細に説明する。
【００２１】
（第１の実施形態）
まず、本発明の第１の実施形態について説明する。図１は、第１の実施形態に係る無線ネットワークシステムのノード配置図である。図１に示すように、本発明の第１の実施形態における無線ネットワークシステムとしての無線マルチホップネットワーク３０９は、基幹マルチキャストネットワーク２０９と、接続されている。
【００２２】
ここで、「基幹マルチキャストネットワーク」とは、公知のマルチキャスト経路構築方法により構築されたマルチキャストネットワークである。このようなマルチキャスト経路構築方法としては、例えば、以下の文献に記載されたマルチキャストルーティングプロトコルであるＰＩＭ−ＳＭやＤＶＭＲＰを用いる方法がある。
（１）PIM-SM: Protocol Independent Multicast - Sparse Mode (PIM-SM): Protocol Specification (Revised), RFC4601
（２）DVMRP: Distance Vector Multicast Routing Protocol RFC1075
【００２３】
基幹マルチキャストネットワーク２０９は、マルチキャストルータ（Multicast Router、以下「ＭＲ」と略述する）２０１〜２０４を接続することにより構築されている。この基幹マルチキャストネットワーク２０９に、サーバ１０１が接続されている。サーバ１０１に接続するＭＲをＦＨＲ（First Hop Router）と呼ぶ。本実施形態では、このサーバ１０１が、マルチキャストデータパケットの配信元である。
【００２４】
無線マルチホップネットワーク３０９は、無線マルチホップマルチキャストルータ（Wireless Multihop Multicast Router、以下、「ＷＭＭＲ」と呼ぶ）３０１〜３０４で構築されている。ＷＭＭＲ３０３には、マルチキャストデータパケットを最終的に受信する受信端末４０１が接続され、ＷＭＭＲ３０２には、マルチキャストデータパケットを最終的に受信する受信端末４０２が接続されている。
【００２５】
受信端末４０１、４０２は、マルチキャストコンテンツの配信元であるサーバ１０１のＩＰアドレス、マルチキャストグループのＩＤを、取得済みである。取得方法として、以下の文献に示されるように、ＳＤＰによるセッション記述と、ＳＡＰやその他のプロトコルにより通知する方法や、マルチキャストアプリケーション固有の方法を用いることができる。
（３）SDP: Session Description Protocol, RFC 4566
（４）SAP: Session Announcement Protocol, RFC 2974
【００２６】
ＷＭＭＲ３０１〜３０４の中で、外部ネットワーク又はマルチキャストを配信する配信元と接続し、受信したデータパケットを、他の無線マルチホップネットワークに転送するものを、ＳＧＷ（Source GateWay）と呼ぶ。ＳＧＷのうち、外部ネットワークに接続するＳＧＷを、Ｌ−ＳＧＷ（LHR-connected SGW）と呼び、データパケットの配信元と直接接続するＳＧＷをＳ−ＳＧＷ（Source-connected SGW）と呼ぶ。また、ＷＭＭＲの中で、受信端末と接続するものを、ＲＧＷ（Receiver GateWay）と呼ぶ。本実施形態では、ＷＭＭＲ３０１が、Ｌ−ＳＧＷである。逆に、ＷＭＭＲ３０１と接続するＭＲを、ＬＨＲ（Last Hop Router）と呼ぶ。また、ＷＭＭＲ３０２、３０３は、ＲＧＷである。
【００２７】
無線メッシュネットワーク内では、ユニキャストルーティングテーブル（不図示）が構築されている。ユニキャストルーティングテーブルの構築には、例えば、以下の文献に示すＯＬＳＲやＡＯＤＶによる方法が用いられる。これらのプロトコルには、リンク品質やトラフィック制御を考慮した拡張を施したものがある。そのような拡張の効果は、本実施形態に示すマルチキャスト経路構築方法においても有効である。
（５）OLSR: Optimized Link State Routing Protocol (OLSR), RFC 3626
（６）AODV: Ad hoc On-Demand Distance Vector (AODV) Routing, RFC3561
【００２８】
次に、図２は、無線マルチホップマルチキャストルータの構成を示すブロック図である。図２に示すように、ＷＭＭＲ３０１は、物理インターフェイスＮ０１−１、Ｎ０１−２、・・・、通信制御部Ｎ０２−１、Ｎ０２−２、経路制御部Ｎ０３、受信者管理部Ｎ０４、転送制御部Ｎ０５、データキャッシュＮ０６、経路管理部Ｎ０７を備える。
【００２９】
物理インターフェイスＮ０１−１、Ｎ０１−２、・・・は、通信に使用する通信媒体との間で信号を送受信する。通信制御部Ｎ０２−１、Ｎ０２−２、・・・は、経路制御用データパケット及びデータパケット（マルチキャストデータパケットを含む）の送受信制御を行う。
【００３０】
物理インターフェイスや通信制御部は、少なくとも１つ設けられていれば良い。ＭＩＭＯ（Multiple Input Multiple Output）技術を搭載するような場合には、１つの物理インターフェイスに対して複数の無線制御部が存在してもよい。また、物理インターフェイスは、通信媒体の種類により適切な機能を有する。例えば、無線ＬＡＮなどの無線通信媒体であればアンテナを含む。有線ＬＡＮなどの有線通信媒体であれば電圧を変化させる接点を含む。
【００３１】
この物理インターフェイスＮ０１−１、…や、通信制御部Ｎ０２に−１、…により、ＷＭＭＲのインターフェイスｉ０、ｉ２、…が形成される。図１では、各ＷＭＭＲ３０１〜３０４のインターフェイスｉ０、ｉ１、ｉ２が示されている。例えば、ＷＭＭＲ３０１のインターフェイスｉ０、ｉ１、ｉ２は、ＭＲ２０３のインターフェイスｉ０、ＷＭＭＲ３０２のインターフェイスｉ１、ＷＭＭＲ３０４のインターフェイスｉ１と接続している。ＷＭＭＲ３０２の物理インターフェイスｉ０、ｉ２は、受信端末４０２のインターフェイスｉ０、ＷＭＭＲ３０３のインターフェイスｉ１と接続している。ＷＭＭＲ３０３のインターフェイスｉ０、ｉ２は、受信端末４０１のインターフェイスｉ０、ＷＭＭＲ３０４のインターフェイスｉ２と接続している。
【００３２】
経路制御部Ｎ０３は、経路制御用パケットの内容に基づいて、マルチキャストデータパケットの転送経路を構築する。受信者管理部Ｎ０４は、受信端末４０１、４０２から送信される経路制御用パケットを受信する。転送制御部Ｎ０５は、マルチキャストデータパケットを転送する。データキャッシュＮ０６は、マルチキャストデータパケットを一時的に保存する。経路管理部Ｎ０７は、マルチキャストルーティングテーブル１０及びソースゲートウエイテーブル２０などの管理テーブルを有し、これらの管理テーブルに基づいて、マルチキャストデータパケットの転送経路を管理する。
【００３３】
なお、以下の説明において、「ノードＩＤ」または「ＩＤ」は、無線中継ノードを、無線マルチホップネットワーク内で一意に識別できる識別子のことである。ＩＤとしては、例えばＩＰアドレスを用いることができる。
【００３４】
ＷＭＭＲ３０１〜３０４の経路管理部Ｎ０７は、以下の情報を管理する。
（Ａ）マルチキャストルーティングテーブル（Multicast Routing Table、以下、「ＭＲＴ」と略述する)１０
（Ｂ）ソースゲートウエイテーブル(Source GateWay Table、以下、「ＳＧＷＴ」と略述する)２０
【００３５】
図３は、マルチキャストルーティングテーブルの管理情報（エントリ）を示す図である。図３に示すように、ＭＲＴ１０のエントリは、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ、ＤＳ−ＭＡＣ、ＤＳ−ＩＦ）の形式をとる。
【００３６】
ここで、ＳＩＤは、データパケットの配信元のＩＤである。図１のネットワーク構成では、サーバ１０１のＩＰアドレスが登録される。ＳＩＤには、データパケットの配信元を登録することもできるが、すべてのＩＤを意味する「全ＩＤ」を登録することもできる。
【００３７】
ＧＩＤは、マルチキャストグループのＩＤである。ＳＩＤ及びＧＩＤにより、ＳＩＤを配信元とする１つのマルチキャストグループが定義される。
【００３８】
Ｐｏｌｉｃｙは、転送可否を示す値である。Ｐｏｌｉｃｙには、転送可の場合「ＡＣＣＥＰＴ」が登録され、転送不可の場合「ＤＲＯＰ」が登録される。
【００３９】
ＤＳ−ＭＡＣは、転送先ノードのＭＡＣアドレスである。ＷＭＭＲ３０１は、マルチキャストデータパケットを、このＭＡＣアドレスに対して転送する。ＤＳ−ＩＦは、その転送先ノードが接続しているインターフェイスである。ＷＭＭＲ３０１は、マルチキャストデータパケットを、このインターフェイスを介して転送する。
【００４０】
例えば、ＷＭＭＲ３０１のＭＲＴ１０が、図３に示すように、ＳＩＤが”192.168.0.1”であり、ＧＩＤが”239.192.0.1”であり、Ｐｏｌｉｃｙが”ACCEPT”であり、ＤＳ−ＭＡＣが”00:0d:02:be:4a:92”であり、ＤＳ-ＩＦが”ｉ０”であるエントリを有するものとする。これは、「配信元が”192.168.0.1”であり、かつ、マルチキャストグループＩＤが”239.192.0.1”であるマルチキャストデータパケットを受信すると、ＷＭＭＲ３０１は、そのパケットの送信先ＭＡＣアドレスを”00:0d:02:be:4a:92”に書き換えて、そのパケットをインターフェイスｉ０から送信する」ことを意味している。
【００４１】
図４は、ソースゲートウエイテーブルの管理情報（エントリ）を示す図である。図４に示すように、ＳＧＷＴ２０のエントリは、（ＳＧＷＩＤ、ＳＩＤ、ＧＩＤ、ＬＨＲ−Ｃｏｎｎ）の形式をとる。ここで、ＳＧＷＩＤは、ＳＧＷのＩＤである。ＳＩＤは、マルチキャストデータパケットの配信元のＩＤである。ＧＩＤは、マルチキャストグループのＩＤである。
【００４２】
ＬＨＲ−Ｃｏｎｎは、該当するＳＧＷが、ＬＨＲ（Last Hop Router）に接続している（すなわちＬ−ＳＧＷである）か、そうでない（すなわちＳ−ＳＧＷである）か、を示す値である。ＬＨＲ−Ｃｏｎｎは、接続している場合は”Connected”となり、そうでない場合は”NOT-Connected”となる。
【００４３】
ＳＩＤには、マルチキャストデータパケットの配信元のＩＤの代わりに、すべてのＩＤを意味する「全ＩＤ」を登録することもできる。また、ＧＩＤには、マルチキャストデータパケットが配信されるグループのＩＤの代わりに、すべてのＩＤを意味する「全ＩＤ」を登録することもできる。
【００４４】
例えば、ＳＧＷＩＤが”192.168.101.101”であり、ＳＩＤが、”192.168.0.1”であり、ＧＩＤが”239.192.0.1”であり、ＬＨＲ−Ｃｏｎｎが”Connected”であるエントリを有するものとする。これは、「マルチキャストデータパケットの配信元が、”192.168.0.1”であり、かつ、マルチキャストグループＩＤが”239.192.0.1”であるマルチキャストデータパケットを担当するＳＧＷは、”192.168.101.101”であり、そのＳＧＷは、ＬＨＲに接続している、すなわちＬ−ＳＧＷである。」ということを意味している。
【００４５】
なお、ＷＭＭＲ３０２、３０３、３０４の構成も、図２と同じである。
【００４６】
次に、本実施形態に係る通信システムの動作について説明する。
【００４７】
（マルチキャストデータパケットの転送経路の新規構築）
マルチキャストデータパケットの転送経路を新規に構築するための動作について説明する。本実施形態では、受信端末が、マルチキャストグループに参加および離脱をする際には、以下の文献に示すＩＧＭＰのバージョン３による一般的な方法を用いる。
（７）Internet Group Management Protocol, Version 3, RFC 3376
ＩＧＭＰバージョン３は、バージョン１及び２と互換性があるため、バージョン１又は２を実装する受信端末に対しても、本実施形態に係るマルチキャストデータパケットの転送経路の構築方法を適用できる。
【００４８】
この方法では、全ＷＭＭＲ３０１〜３０４のＳＧＷＴ２０に、Ｌ−ＳＧＷとしてのＷＭＭＲ３０１を登録する。具体的には、全ＷＭＭＲ３０１〜３０４のＳＧＷＴ２０に、（ＷＭＭＲ３０１、全ＩＤ、全ＩＤ、Ｃｏｎｎｅｃｔｅｄ）のエントリを登録する。
【００４９】
最初に、図１に示す無線マルチホップネットワーク３０９に接続し、マルチキャストに参加する受信端末が、まだ、１つもない状態で、受信端末４０１が、マルチキャストデータパケットの配信元がサーバ１０１であるマルチキャストグループＧＩＤのグループに参加するときの処理（新規登録処理）について説明する。
【００５０】
図５は、マルチキャストデータ転送経路を構築、削除する際の経路制御用パケットの転送シーケンスを示す図である。図５に示すように、受信端末４０１は、配信元のＳＩＤ（サーバ１０１のＩＰアドレス）と、マルチキャストグループのＧＩＤとが情報として含まれるＩＧＭＰ−Ｒｅｐｏｒｔ５０１を、ＲＧＷであるＷＭＭＲ３０３に送信する。
【００５１】
図６は、ＩＧＭＰ−Ｒｅｐｏｒｔを受信した時のＷＭＭＲの処理フローである。以下、本図を参照して説明する。
【００５２】
まず、ＩＧＭＰ−Ｒｅｐｏｒｔ５０１を受信した時のＷＭＭＲ３０３の処理について説明する。図６に示すように、ＲＧＷであるＷＭＭＲ３０３では、インターフェイスｉ０、すなわち物理インターフェイスＮ０１−１と通信制御部Ｎ０２−１を介して、受信者管理部Ｎ０４が、そのＩＧＭＰ−Ｒｅｐｏｒｔ５０１を受信する（ステップＳ６０１）。
【００５３】
続いて、ＷＭＭＲ３０３の経路制御部Ｎ０３は、受信したＩＧＭＰ−Ｒｅｐｏｒｔ５０１に含まれる配信元のＳＩＤ及びマルチキャストグループのＧＩＤ等の情報を取得する（ステップＳ６０２）。ここで取得された情報を用いて、経路制御部Ｎ０３は、ＭＲＴ１０に、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ＝”ACCEPT”、ＧＩＤに対応するＭＡＣアドレス、ｉ０）のエントリを登録することにより、ＭＲＴ１０を更新する（ステップＳ６０３）。
【００５４】
ここで、「ＧＩＤに対応するＭＡＣアドレス」について説明を補足する。ＧＩＤとしてＩＰアドレスを用いる場合、「ＧＩＤに対応するＭＡＣアドレス」の上位２５ビットは、１６進表記”01005E”に続けて１ビットの”0”を足したものである。下位２３ビットは、ＧＩＤの下位２３ビットである。例えば、ＧＩＤが”239.192.0.1”であれば、このＧＩＤに対応するＭＡＣアドレスは、”01:00:5E:40:00:01”となる。
【００５５】
次に、経路制御部Ｎ０３は、この更新登録前後で、ＭＲＴ１０のエントリ（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ）に変更があるか否かを判定する（ステップＳ６０４）。ここでは、ＭＲＴ１０内に、新規にエントリが作成されるため、変更ありと判定され（ステップＳ６０４；Ｙｅｓ）、ステップＳ６０５に進む。
【００５６】
次に、経路制御部Ｎ０３は、ＳＧＷＴ２０を参照して、変更があった（ＳＩＤ、ＧＩＤ）を担当するＳＧＷを検索する（ステップＳ６０５）。ここでは、ＳＧＷとして、ＷＭＭＲ３０１が取得される。
【００５７】
続いて、経路制御部Ｎ０３は、検索結果のＳＧＷが、自身であるか否かを判定する（ステップＳ６０６）。ＳＧＷが自分でないので（ステップＳ６０６；Ｎｏ）、経路制御部Ｎ０３は、自ノードのユニキャストルーティングテーブル（不図示）を参照し、ＳＧＷへの経路の次ホップを検索する（ステップＳ６０７）。ここでは、次ホップとして、ＷＭＭＲ３０２が取得される。ＷＭＭＲ３０２が取得された後、経路制御部Ｎ０３は、ＷＭＭＲ３０２宛に、ＭＲＴ１０の差分情報（更新前後の差分情報）が含まれるＷＲＭ−Ｒｅｐｏｒｔ５０２（図５参照）を、インターフェイスｉ１からユニキャスト送信する（ステップＳ６０８）。
【００５８】
図７は、ＷＲＭ−Ｒｅｐｏｒｔのデータフォーマットを示す図である。エントリ追加のＷＲＭ−Ｒｅｐｏｒｔ５０２では、図７に示すように、パケットフィールドのうち、ＷＲＭ−Ｔｙｐｅフィールドに、Ｒｅｐｏｒｔであることを示す”０ｘ１２”が記述されている。また、Ｕｐｄａｔｅ−Ｔｙｐｅフィールドには、差分であることを示す”０ｘ０２”が記述されている。また、ｎｕｍｏｆ（Ｓ，Ｇ）フィールドには、このパケットの中に記述する（ＳＩＤ、ＧＩＤ）の数”１”が記述されている。また、Ｍｏｄｉｆｉｙフィールドには、追加であることを示す”０ｘ０２”が記述されている。また、ＤＳ−ＭＡＣ［１］フィールドには、ＷＲＭ−Ｒｅｐｏｒｔを送信するインターフェイスのＭＡＣアドレスが記述されている。また、ＳＩＤフィールドには、受信したいマルチキャストデータパケットの配信元のＩＤが記述されている。ＧＩＤフィールドには、受信したいマルチキャストグループのＩＤが記述されている。
【００５９】
ＷＲＭ−Ｒｅｐｏｒｔ５０２を受信すると、ＷＭＭＲ３０２は、ＷＲＭ−Ｒｅｐｏｒｔ５０２の内容に基づくエントリを追加するとともに、ＷＲＭ−Ｒｅｐｏｒｔ５０３を、ＷＭＭＲ３０１に送信する。
【００６０】
図８は、ＷＲＭ−Ｒｅｐｏｒｔを受信した時のＷＭＭＲの処理フローである。ＷＲＭ−Ｒｅｐｏｒｔ５０２を受信した時のＷＭＭＲ３０２の処理について、本図を参照して説明する。図８に示すように、ＷＭＭＲ３０２の受信者管理部Ｎ０４は、インターフェイスｉ２を介して、ＷＲＭ−Ｒｅｐｏｒｔを受信する（ステップＳ７０１）。続いて、ＷＭＭＲ３０２の経路制御部Ｎ０３は、受信されたＷＲＭ−Ｒｅｐｏｒｔ５０２に含まれるマルチキャストデータパケットの配信元のＳＩＤ、マルチキャストグループのＧＩＤ、ＷＲＭ−Ｒｅｐｏｒｔを送信するインターフェイスのＭＡＣアドレスを取得する（ステップＳ７０２）。
【００６１】
ここで取得された情報を用いて、経路制御部Ｎ０３は、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ＝”ACCEPT”、ＷＲＭ−Ｒｅｐｏｒｔを送信したインターフェイスのＭＡＣアドレス、ＷＲＭ−Ｒｅｐｏｒｔを送信したインターフェイス）というエントリを、ＭＲＴ１０に登録することにより、ＭＲＴ１０を更新する（ステップＳ７０３）。
【００６２】
続いて、経路制御部Ｎ０３は、この更新登録前後で、ＭＲＴ１０のエントリ（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ）に変更があるか否かを判定する（ステップＳ７０４)。ここでは、ＭＲＴ１０内に、新規にエントリが作成されるため、変更ありと判定される（ステップＳ７０４；Ｙｅｓ）。
【００６３】
続いて、経路制御部Ｎ０３は、ＳＧＷＴ２０を参照し、その差分の（ＳＩＤ、ＧＩＤ）を担当するＳＧＷを検索する（ステップＳ７０５）。ここでは、そのＳＧＷとして、ＷＭＭＲ３０１が取得される。
【００６４】
続いて、経路制御部Ｎ０３は、検索結果のＳＧＷが自身でないか否かを判定する（ステップＳ７０６）。ＳＧＷが自身でないので（ステップＳ７０６；Ｎｏ）、経路制御部Ｎ０３は、自ノードのユニキャストルーティングテーブル（不図示）を参照し、ＳＧＷへの経路の次ホップを検索する（ステップＳ７０７）。ここでは、次ホップとして、ＷＭＭＲ３０１が取得される。続いて、経路制御部Ｎ０３は、取得されたＷＭＭＲ３０１宛に、ＭＲＴ１０の差分情報（更新前後の差分情報）が含まれるＷＲＭ−Ｒｅｐｏｒｔ５０３（図５参照）を、ユニキャスト送信する（ステップＳ７０８）。
【００６５】
ＷＲＭ−Ｒｅｐｏｒｔ５０３を受信すると、ＷＭＭＲ３０１は、受信したパケットの内容に基づくエントリを追加するとともに、ＩＧＭＰ−Ｒｅｐｏｒｔ５０４をＭＲ２０３に送信する。
【００６６】
ＷＲＭ−Ｒｅｐｏｒｔ５０３を受信した時のＷＭＭＲ３０１の処理は、図８に示す処理と同じである。すなわち、受信者管理部Ｎ０４による、インターフェイスｉ１を介したＷＲＭ−Ｒｅｐｏｒｔの受信（ステップＳ７０１）、経路制御部Ｎ０３による、受信したＷＲＭ−Ｒｅｐｏｒｔに含まれるマルチキャスト送信者のＳＩＤ、マルチキャストグループのＧＩＤ、ＤＳ−ＭＡＣの取得（ステップＳ７０２）、取得された情報に基づくＭＲＴ１０へのエントリの登録（ステップＳ７０３）が行われる。
【００６７】
続いて、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ）の変更判定では、変更ありと判定され（ステップＳ７０４；Ｙｅｓ）、経路制御部Ｎ０３は、ＳＧＷＴ２０を参照し、変更のあった（ＳＩＤ、ＧＩＤ）を担当するＳＧＷを検索する（ステップＳ７０５）。ここでは、そのＳＧＷとして、ＷＭＭＲ３０１が取得される。
【００６８】
続いて、検索されたＳＧＷが自身であるか否かの検索が行われる（ステップＳ７０６）。ここでの判定は肯定されるので（ステップＳ７０６；Ｙｅｓ）、経路制御部Ｎ０３は、自身が、ＬＨＲに接続している（すなわちＬ−ＳＧＷである)か、否か（すなわちＳ−ＳＧＷである）か、を判定する（ステップＳ７１１）。ＷＭＭＲ３０１は、ＬＨＲに接続している（すなわちＬ−ＳＧＷである）ため、判定が肯定され（ステップＳ７１１；Ｙｅｓ）、ステップＳ７１２に進む。
【００６９】
経路制御部Ｎ０３は、最新のＭＲＴ１０に基づいて、ＭＲ２０３（ＬＨＲ）に接続しているインターフェイスｉ０より、マルチキャスト送信者ＳＩＤ及びマルチキャストＧＩＤに参加する旨のＩＧＭＰ−Ｒｅｐｏｒｔ５０４（図５参照）を送信する（ステップＳ７１２）。
【００７０】
ＭＲ（ＬＨＲ）２０３は、このＩＧＭＰ−Ｒｅｐｏｒｔ５０４を受信すると、以後、該当ＳＩＤ、ＧＩＤのマルチキャストデータパケットをＷＭＭＲ３０１に転送する。
【００７１】
以上の処理により、無線マルチホップネットワーク３０９内において、マルチキャストデータパケットの転送経路が構築される。図９は、登録された各ＷＭＭＲのマルチキャストルーティングテーブルのエントリを示す図である。具体的には、図９に示すような、ＭＲＴ１０のエントリが、各ＷＭＭＲ３０１、３０２、３０３に登録される。ここで、「ＭＡＣ（Ｎ）」という表記は、ノードＮのＭＡＣアドレスのことを意味する。以降、同様の表記を同じ意味で用いる。
【００７２】
（受信端末の追加登録）
次に、受信端末が追加登録される場合について説明する。図１０は、受信端末の追加登録、削除する際の経路制御用パケットの転送シーケンスを示す図である。
【００７３】
図１において、上述した新規登録処理により、受信端末４０１だけが、配信元がＳＩＤであり、ＧＩＤのマルチキャストグループに参加している状態で、新たに、受信端末４０２が配信元をサーバ１０１とするマルチキャストグループに参加するときの処理（追加登録処理）について、図１０を参照して説明する。
【００７４】
受信端末４０２は、受信したい配信元のＳＩＤ及びマルチキャストグループのＧＩＤが含まれるＩＧＭＰ−Ｒｅｐｏｒｔ９０１を送信する。
【００７５】
図６に示すように、ＲＧＷであるＷＭＭＲ３０２の受信者管理部Ｎ０４は、物理インターフェイスｉ０から、ＩＧＭＰ−Ｒｅｐｏｒｔを受信する（ステップＳ６０１）。続いて、ＷＭＭＲ３０２の経路制御部Ｎ０３は、受信されたＩＧＭＰ−Ｒｅｐｏｒｔに含まれるマルチキャスト送信者のＳＩＤおよびマルチキャストグループのＧＩＤを取得する（ステップＳ６０２）。続いて、経路制御部Ｎ０３は、取得された情報に基づいて、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ＝”ACCEPT”、ＧＩＤに対応するＭＡＣアドレス、インターフェイス）のエントリを、ＭＲＴ１０に登録することにより、ＭＲＴ１０を更新する（ステップＳ６０３）。次に、経路制御部Ｎ０３は、この更新登録前後において、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ）に変更があるか否かを判定する（ステップＳ６０４）。ここでは、登録前に、すでに、該当するエントリが登録されているため、変更なしであるため、判定が否定され（ステップＳ６０４；Ｎｏ）、処理を完了する。
【００７６】
以上の処理により、追加登録された受信端末４０２に対するマルチキャストデータパケットの転送経路が構築される。図１１は、追加登録後の各ＷＭＭＲのマルチキャストルーティングテーブルのエントリを示す図である。具体的には、図１１に示すＭＲＴ１０のエントリが、各ＷＭＭＲ３０２に追加登録される。図１１に示すように、受信端末４０２に対応する、ＷＭＭＲ３０２のＭＲＴ１０のエントリのＤＳ−ＭＡＣには、”multicast”が登録されている。これは、ＷＭＭＲ３０２は、受信端末４０２に対して、ブロードキャスト送信を行うことを意味している。
【００７７】
（受信端末の離脱）
次に、受信端末が離脱する場合について説明する。
【００７８】
図１において、上記の新規登録処理により、受信端末４０１、４０２が、配信元のＳＩＤ及びマルチキャストグループＧＩＤに参加している状態で、最初に、受信端末４０２が離脱し、続いて、受信端末４０１が離脱するときの処理（削除処理）について説明する。
【００７９】
受信端末４０２は、離脱したいマルチキャスト送信者のＳＩＤおよびマルチキャストグループのＧＩＤが含まれるＩＧＭＰ−Ｒｅｐｏｒｔ９０１を送信する（図１０参照）。図６に示すように、ＲＧＷであるＷＭＭＲ３０２の受信者管理部Ｎ０４は、インターフェイスｉ０を介してＩＧＭＰ−Ｒｅｐｏｒｔ９０１を受信する（ステップＳ６０１）。続いて、ＷＭＭＲ３０２は、受信されたＩＧＭＰ−Ｒｅｐｏｒｔ９０１に含まれる配信元のＳＩＤ及びマルチキャストグループのＧＩＤを取得する（ステップＳ６０２）。
【００８０】
続いて、経路制御部Ｎ０３は、取得された情報を用いて、削除対象となるＭＲＴ１０のエントリを検索し、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ＝”ACCEPT”、ＧＩＤに対応するＭＡＣアドレス、ｉ０）のエントリをＭＲＴ１０から削除することにより、ＭＲＴ１０を更新する（ステップＳ６０３）。
【００８１】
続いて、経路制御部Ｎ０３は、この更新登録前後で、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ）に変更があるか否かを判定する（ステップＳ６０４）。ここで、経路制御部Ｎ０３は、図１１に示すように、依然として、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ）のエントリが保持されているため、登録前後の差分がないものと判定し（ステップＳ６０５；Ｎｏ）、処理を完了する。
【００８２】
以上の処理により、受信端末４０２が離脱する。
【００８３】
次に、受信端末４０１は、離脱したいマルチキャスト送信者のＳＩＤ及びマルチキャストグループのＧＩＤが含まれるＩＧＭＰ−Ｒｅｐｏｒｔ５０１を送信する（図５参照）。
【００８４】
ＲＧＷであるＷＭＭＲ３０３の受信者管理部Ｎ０４は、インターフェイスｉ０を介して、ＩＧＭＰ−Ｒｅｐｏｒｔ５０１を受信する（ステップＳ６０１）。続いて、経路制御部Ｎ０３は、受信したＩＧＭＰ−Ｒｅｐｏｒｔ５０１に含まれる配信元のＳＩＤ及びマルチキャストグループのＧＩＤを取得する（ステップＳ６０２）。
【００８５】
続いて、経路制御部Ｎ０３は、ここで取得された情報を用いて、削除対象となるＭＲＴ１０のエントリを検索し、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ＝”ACCEPT”、ＧＩＤに対応するＭＡＣアドレス、ｉ０）のエントリをＭＲＴ１０から削除することにより、ＭＲＴ１０を更新する（ステップＳ６０３）。
【００８６】
次に、受信者管理部Ｎ０４は、この更新登録前後で、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ）に変更があるか否かを判定する（ステップＳ６０４）。ここで、ＷＭＭＲ３０３のＭＲＴ１０からは、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ）のエントリが削除されるので、登録前後に変更があると判定される（ステップＳ６０４；Ｙｅｓ）。
【００８７】
続いて、経路制御部Ｎ０３は、ＳＧＷＴ２０を参照し、変更のあった（ＳＩＤ、ＧＩＤ）を担当するＳＧＷを検索する（ステップＳ６０５）。取得されるＳＧＷは、ＷＭＭＲ３０１である。検索結果のＳＧＷは、自身でないので（ステップＳ６０６；Ｎｏ）、経路制御部Ｎ０３は、自ノードのユニキャストルーティングテーブルを参照し、ＳＧＷへの経路の次ホップを、検索する（ステップＳ６０７）。ここでは、ＷＭＭＲ３０２が取得される。続いて、経路制御部Ｎ０３は、ＷＭＭＲ３０２宛に、ＭＲＴ１０の差分情報を含むＷＲＭ−Ｒｅｐｏｒｔ５０２（図５参照）を、ユニキャスト送信する（ステップＳ６０８）。
【００８８】
図１２は、エントリ削除のＷＲＭ−Ｒｅｐｏｒｔのパケットフィールドを示す図である。図１２に示すように、ＷＲＭ−Ｔｙｐｅフィールドには、Ｒｅｐｏｒｔであることを示す”０ｘ１２”が記述されている。また、Ｕｐｄａｔｅ−Ｔｙｐｅフィールドには、差分であることを示す”０ｘ０２”が記述されている。また、ｎｕｍｏｆ（Ｓ，Ｇ）フィールドには、このパケットに含まれる（Ｓ、Ｇ）の数”１”が記述されている。また、Ｍｏｄｉｆｙフィールドには、削除であることを示す”０ｘ０３”が記述されている。また、ＤＳ−ＭＡＣ［１］フィールドには、ＷＲＭ−Ｒｅｐｏｒｔを送信するインターフェイスのＭＡＣアドレス（ＭＡＣ（ＷＭＭＲ３０３））が記述されている。また、ＳＩＤフィールドには、削除したい配信元のＩＤが記述されている。また、ＧＩＤフィールドには、削除したいマルチキャスグループのＩＤが記述されている。
【００８９】
図８に示すように、ＷＭＭＲ３０２の受信者管理部Ｎ０４は、インターフェイスｉ２においてＷＲＭ−Ｒｅｐｏｒｔ５０２を受信する（ステップＳ７０１）。続いて、ＷＭＭＲ３０２の経路制御部Ｎ０３は、受信したＷＲＭ−Ｒｅｐｏｒｔ５０２に含まれる配信元のＳＩＤ、マルチキャストグループのＧＩＤ、ＤＳ−ＭＡＣを取得する（ステップＳ７０２）。続いて、経路制御部Ｎ０３は、ここで取得された情報を用いて、削除対象となるＭＲＴ１０のエントリを検索し、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ＝”ACCEPT”、ＤＳ−ＭＡＣ、Ｉ２）のエントリを、ＭＲＴ１０から削除することにより、ＭＲＴ１０を更新する（ステップＳ７０３）。
【００９０】
次に、経路制御部Ｎ０３は、この更新登録前後で、エントリ（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ）に変更があるか否かを判定する（ステップＳ７０４）。ここでは、ＷＭＭＲ３０２のＭＲＴ１０から（ＳＩＤ、ＧＩＤ）のエントリが削除されているため、登録前後で変更があると判定される（ステップＳ７０４；Ｙｅｓ）。
【００９１】
次に、経路制御部Ｎ０３は、ＳＧＷＴ２０を参照して、その差分の（ＳＩＤ、ＧＩＤ）を担当するＳＧＷを検索する（ステップＳ７０５）。ここでは、そのＳＧＷとして、ＷＭＭＲ３０１が取得される。
【００９２】
続いて、経路制御部Ｎ０３は、検索結果のＳＧＷが自身でない場合（ステップＳ７０６；Ｎｏ）、自ノードのユニキャストルーティングテーブルを参照し、ＳＧＷへの経路の次ホップを検索し、ＷＭＭＲ３０１を取得する（ステップＳ７０７）。そして、経路制御部Ｎ０３は、ＷＭＭＲ３０１宛にＭＲＴ１０の差分情報を含むＷＲＭ−Ｒｅｐｏｒｔ５０３（図５参照）を、ユニキャスト送信する（ステップＳ７０８）。
【００９３】
図１のネットワーク構成であれば、以上の処理により、ＷＲＭ−Ｒｅｐｏｒｔ５０３がＳＧＷ（ＷＭＭＲ３０１）に到達するが、ホップ数がこれよりも多い場合、ＳＧＷ方向の隣接ノードで、順次、ステップＳ７０１〜Ｓ７０８が繰り返され、最終的に、ＷＲＭ−ＲｅｐｏｒｔがＳＧＷに到達する。
【００９４】
図８に示すように、ＷＭＭＲ３０１の受信者管理部Ｎ０４は、インターフェイスｉ１を介してＷＲＭ−Ｒｅｐｏｒｔ５０３を受信する（ステップＳ７０１）。続いて、ＷＭＭＲ３０１の経路制御部Ｎ０３は、受信されたＷＲＭ−Ｒｅｐｏｒｔ５０３に含まれる配信元のＳＩＤ、マルチキャストグループのＧＩＤ、ＤＳ−ＭＡＣを取得する（ステップＳ７０２）。
【００９５】
続いて、経路制御部Ｎ０３は、ここで取得された情報を用いて、削除対象となるＭＲＴ１０のエントリを検索し、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ＝”ACCEPT”、ＤＳ−ＭＡＣ、ｉ１）のエントリを、ＭＲＴ１０から削除することにより、ＭＲＴ１０を更新する（ステップＳ７０３）。
【００９６】
続いて、経路制御部Ｎ０３は、この更新登録前後で、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ）に変更があるか否かを判定する（ステップＳ７０４）。ここでは、ＷＭＭＲ３０１のＭＲＴ１０から、該当するエントリが削除されているので、登録前後で、変更があると判定される（ステップＳ７０４；Ｙｅｓ）。そこで、経路制御部Ｎ０３は、ＳＧＷＴ２０を参照し、その差分の（ＳＩＤ、ＧＩＤ）を担当するＳＧＷを検索する（ステップＳ７０５）。ここでは、ＳＧＷとして、ＷＭＭＲ３０１が取得される。
【００９７】
続いて、経路制御部Ｎ０３は、検索結果のＳＧＷが自身であるので（ステップＳ７０６；Ｙｅｓ）、自身がＬＨＲに接続している（すなわちＬ−ＳＧＷである）か、否か（すなわちＳ−ＳＧＷである）か、を判定する（ステップＳ７１１）。ＷＭＭＲ３０１は、ＭＲ（ＬＨＲ）２０２に接続しており、Ｌ−ＳＧＷであるので、判定は肯定され（ステップＳ７１１；Ｙｅｓ）、経路制御部Ｎ０３は、最新のＭＲＴ１０に基づいて、ＬＨＲに接続しているインターフェイスより、配信元のＳＩＤおよびマルチキャストＧＩＤに、離脱する旨のＩＧＭＰ−Ｒｅｐｏｒｔ５０４（図５参照）を送信する（ステップＳ７１２）。ＭＲ（ＬＨＲ）２０３は、このＩＧＭＰ−Ｒｅｐｏｒｔを受信すると、以後、該当ＳＩＤ、ＧＩＤのマルチキャストデータパケットを、ＷＭＭＲ３０１に転送しないようになる。
【００９８】
以上の処理により、マルチキャストデータパケットの転送経路が削除される。
【００９９】
なお、ＩＧＭＰ  ｖｅｒｓｉｏｎ３では Ｓｏｕｒｃｅ−ｆｉｌｔｅｒｉｎｇ機能により、「マルチキャストグループＧＩＤの、配信元のＳＩＤ以外の送信者からのマルチキャストに参加する」というようなきめ細かい受信制御が可能である。本実施形態においても、Ｐｏｌｉｃｙの設定（ACCEPT/DROP）やＳＩＤの「全ID」指定などを組み合わせることにより、ＩＧＭＰ  ｖｅｒｓｉｏｎ３と同等の制御を実現可能である。
【０１００】
（マルチキャストデータパケットの転送経路の維持）
次に、マルチキャストデータパケットの転送経路を維持する方法について詳細に説明する。
【０１０１】
すべてのＷＭＭＲ３０１〜３０４は、一定周期で、すべてのＭＲＴ１０のエントリを含むＷＲＭ−Ｒｅｐｏｒｔを、各エントリに対応するＳＧＷ方向の隣接ノードに送信する。それを受信したＷＭＭＲ３０１〜３０４は、受信したＷＲＭ−Ｒｅｐｏｒｔに含まれるエントリを、自身のＭＲＴと比較し、新たなエントリを発見した場合には、そのエントリだけを含むＷＲＭ−Ｒｅｐｏｒｔを、対応するＳＧＷ方向の隣接ノードに送信する。このＷＲＭ−Ｒｅｐｏｒｔを受信したノードは、受信したＷＲＭ−Ｒｅｐｏｒｔに基づいて自身のＭＲＴ１０を更新し、ＭＲＴ１０に変更（差分）があれば、そのＷＲＭ−Ｒｅｐｏｒｔを、さらにＳＧＷ方向の隣接ノードに送信する。
【０１０２】
このような処理を繰り返すことにより、最終的にＷＲＭ−ＲｅｐｏｒｔがＳＧＷに到達する。このようにしてマルチキャストデータパケットの転送経路が維持される。
【０１０３】
なお、マルチキャストデータパケットの配信元やＷＭＭＲが、離脱メッセージを送信せずに消滅した場合は、そのノード宛の維持処理は行われなくなり、一定時間後に対応するＭＲＴ１０のエントリが消去される。
【０１０４】
図１３は、エントリ維持のＷＲＭ−Ｒｅｐｏｒｔのパケットフィールドを示す図である。図１３に示すように、ＷＲＭ−Ｔｙｐｅフィールドには、Ｒｅｐｏｒｔであることを示す”０ｘ１２”が記述されている。また、Ｕｐｄａｔｅ−Ｔｙｐｅフィールドには、エントリ全体であることを示す”０ｘ０１”が記述されている。また、ｎｕｍｏｆ（Ｓ，Ｇ）フィールドには、このパケットに含まれる（Ｓ、Ｇ）の数”１”が記述されている。また、Ｍｏｄｉｆｙフィールドには、「変更なし」であることを示す”０ｘ０１”が記述されている。また、ＤＳ−ＭＡＣフィールド［１］には、ＷＲＭ−Ｒｅｐｏｒｔを送信するインターフェイスのＭＡＣアドレスが記述されている。また、ＳＩＤフィールドには、維持されるエントリのマルチキャストデータパケットの配信元のＩＤが記述されている。また、ＧＩＤフィールドには、維持されるエントリのマルチキャスグループＩＤが記述されている。
【０１０５】
（マルチキャストデータパケットの転送動作）
次に、マルチキャストデータパケットの転送動作について説明する。ここでは、図１において、受信端末４０１、４０２が参加しているマルチキャストデータパケットの転送処理について詳細に説明する。
【０１０６】
上述のようにして、無線メッシュネットワーク３０９における一連のマルチキャストデータパケットの転送経路の構築処理が完了し、ＷＭＭＲ３０１がＬＨＲにＩＧＭＰ−Ｒｅｐｏｒｔ５０４（図５参照）を送信すると、基幹マルチキャストネットワーク２０９において、サーバ１０１からＬＨＲに至るマルチキャスト経路が構築される。その後、サーバ１０１が、マルチキャストグループＧＩＤ宛のマルチキャストデータパケットを送信すると、そのマルチキャストデータパケットは、基幹マルチキャストネットワーク２０９内を転送され、ＭＲ（ＬＨＲ）を経由して、ＷＭＭＲ３０１に送信される。
【０１０７】
図１４は、マルチキャストデータパケットの転送動作の処理フローである。図１４に示すように、ＷＭＭＲ３０１では、インターフェイスｉ０、すなわち、物理インターフェイス部Ｎ０１及び通信制御部Ｎ０２を介して、転送制御部Ｎ０５が、そのマルチキャストデータパケットを受信する（ステップＳ１４０１）。
【０１０８】
続いて、転送制御部Ｎ０５は、データキャッシュＮ０６を参照し（ステップＳ１４０２）、受信されたパケットが、既に受信されたものと同一であるか否かを判定する（ステップＳ１４０３）。ここで、パケットが、初めて受信したパケットであると判定された場合（ステップＳ１４０３；Ｎｏ）、転送制御部Ｎ０５は、そのパケットの情報をデータキャッシュに登録した後（ステップＳ１４０４）、ＭＲＴ１０における（ＳＩＤ、ＧＩＤ）のエントリを検索し、転送先のエントリを取得する（ステップＳ１４０５）。ここでは、エントリ（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ＝”ACCEPT”、ＤＳ−ＭＡＣ＝”MAC(302)”、ｉ１）が取得される。
【０１０９】
続いて、転送制御部Ｎ０５は、転送先が複数ある場合、マルチキャストデータパケットを複製し（ステップＳ１４０６）、マルチキャストデータパケットの送信元ＭＡＣアドレスを、自身のＭＡＣアドレスに変更し、宛先ＭＡＣアドレスを、ＭＡＣ（３０２）に変更し（ステップＳ１４０７）、インターフェイスｉ１から送信する（ステップＳ１４０８）。
【０１１０】
一方、転送制御部Ｎ０５は、受信されたマルチキャストデータパケットが、既に受信したパケットと同一と判定される場合（ステップＳ１４０３；Ｙｅｓ）、そのパケットを廃棄し（ステップＳ１４１０）、処理を完了とする。
【０１１１】
本実施形態では、同様の処理がＷＭＭＲ３０２、３０３においても行われる。
【０１１２】
以上の処理により、サーバ１０１から配信され、基幹マルチキャストネットワーク２０９、ＭＲ２０３（ＬＨＲ）を経由して流入したマルチキャストデータパケットが、受信端末４０１、４０２に届けられる。
【０１１３】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。
【０１１４】
図１５は、本発明の第２の実施形態に係るネットワークシステムの構成を示すノード配置図である。図１５に示すように、ＷＭＭＲ３０１〜３０４で構成される無線マルチホップネットワーク３０９は、マルチキャストデータパケットを配信するサーバ１０２と、受信端末４０１、４０２と接続されている。すなわち、無線マルチホップネットワーク３０９に、マルチキャストデータパケットの配信元のサーバ１０２が直接接続されている。また、ＷＭＭＲ３０２およびＷＭＭＲ３０３が、ＲＧＷである。
【０１１５】
本実施形態では、ＷＭＭＲ３０１が、Ｓ−ＳＧＷとなる。それ以外は、上記第１の実施形態と同じである。本実施形態では、ＳＧＷでないＷＭＭＲ３０２、３０３、３０４の動作は、上記第１の実施形態と同じである。本実施形態では、すべてのＷＭＭＲ３０１〜３０４のＳＧＷＴ２０に、Ｓ−ＳＧＷとして、ＷＭＭＲ３０１が登録されている。より具体的には、全ＷＭＭＲのＳＧＷＴ２０に、（WMMR301, 全ID, 全ID, NOT-Connected）のエントリが存在している。
【０１１６】
ＳＧＷであるＷＭＭＲ３０１は、隣接するノードからＩＧＭＰ−Ｒｅｐｏｒｔ又はＷＲＭ−Ｒｅｐｏｒｔを受信すると（図６のステップＳ６０１、図８のステップＳ７０１）、そのパケットから情報を取得し、ＭＲＴ１０のエントリを登録または削除することにより、ＭＲＴ１０を更新する（図６のステップＳ６０２、Ｓ６０３又は図８のステップＳ７０２、Ｓ７０３）。
【０１１７】
ＭＲＴ１０に変更があり（図６のステップＳ６０４又は図８のステップＳ７０４；Ｙｅｓ）、自身がＭＲＴの差分の（ＳＩＤ、ＧＩＤ）を担当するＳＧＷである場合（図６のステップＳ６０６又は図８のステップＳ７０６；Ｙｅｓ）、経路制御部Ｎ０３は、自身がＬ−ＳＧＷであるか否かを判定する（図６のステップＳ６１１又は図８のステップＳ７１１）。ＷＭＭＲ３０１はＳ−ＳＧＷであるので、判定は否定され（図６のステップＳ６１１又は図８のステップＳ７１１；Ｎｏ）、処理を終了する。
【０１１８】
すなわち、ＳＧＷが、配信元に直接接続されている場合には、ＳＧＷからは、ＩＧＭＰ−Ｒｅｐｏｒｔは送信されない。
【０１１９】
（第３の実施形態）
次に、本発明の第３の実施形態について説明する。本実施形態に係るネットワーク構成は、上記第１の実施形態（図１参照）と同じである。本実施形態では、全ＷＭＭＲ３０１〜３０４におけるＳＧＷＴ２０の登録が自動的に行われる。
【０１２０】
（Ｌ−ＳＧＷの設定と通知）
まず、Ｌ−ＳＧＷの設定方法と、その内容を、全ＷＭＭＲに通知する方法について図１を参照して説明する。図１において、基幹マルチキャストネットワークのＬＨＲであるＭＲ２０３は、インターフェイスｉ０より、定期的にＩＧＭＰ−Ｑｕｅｒｙパケットを送信する。
【０１２１】
ＷＭＭＲ３０１は、そのＩＧＭＰ−Ｑｕｅｒｙパケットを受信した場合、自身のＳＧＷＴ２０に、自身がＬ−ＳＧＷであることを登録する。より具体的には、ＷＭＭＲ３０１の経路制御部Ｎ０３は、ＳＧＷＴ２０に、（WMMR301, 全ID, 全ID, Connected）のエントリを登録する。
【０１２２】
このエントリをもつ間、ＷＭＭＲ３０１の経路制御部Ｎ０３は、ＷＲＭ−ＳＧＷＡＤパケットを、無線マルチホップネットワーク３０９全体にフラッディングする。
【０１２３】
図１６は、ＷＲＭ−ＳＧＷＡＤパケットのパケットフィールドを示す図である。図１６に示すように、ＷＲＭ−ＴｙｐｅフィールドにはＳＧ−ＷＡＤであることを示す”０ｘ１１”が記述されている。また、ｎｕｍｏｆ（Ｓ，Ｇ）フィールドには、このパケットに含まれる（ＳＩＤ、ＧＩＤ）の数”１”が記述されている。また、ＳＧＷＩＤフィールドには、ＳＧＷのＩＤが記述されている。また、ＳＩＤフィールドには、ＳＧＷが担当する配信元のＩＤが記述されている。また、ＧＩＤフィールドには、ＳＧＷが担当するマルチキャストグループＩＤが記述されている。ＳＩＤフィールド及びＧＩＤフィールドには、すべてのＩＤを意味する「全ID」と記述されている。また、ＬＨＲ−Ｃｏｎｎフィールドには、Ｌ−ＳＧＷであることを示す”Connected”が記述されている。
【０１２４】
なお、フラッディングする方法としては、例えば、一般的に用いられているＳＭＦプロトコルによる方法を用いることができる。ＳＭＦプロトコルの詳細については、以下の文献に明らかにされている。
SMF: Simplified Multicast Forwarding for MANET, draft-ietf-manet-smf-08
【０１２５】
全てのＷＭＭＲ３０１〜３０４は、ＷＭＭＲ３０１によって送信されたＷＲＭ−ＳＧＷＡＤパケットを受信すると、そのＷＲＭ−ＳＧＷＡＤパケットに含まれる情報に基づいて、自ノードのＳＧＷＴ２０に、エントリを追加する。
【０１２６】
（Ｓ−ＳＧＷの設定と通知）
まず、Ｓ−ＳＧＷの設定方法と、その内容を、全ＷＭＭＲに通知する方法について、図１５を参照して説明する。
【０１２７】
図１５に示すように、サーバ１０２は、マルチキャストデータパケットの配信元特有のパケットをＷＭＭＲ３０１に送信する。「配信元特有のパケット」としては、マルチキャストデータパケットの発信元だけが送信するパケットや、他ノードが送信するパケットで配信元のＩＤが含まれているものなどが該当する。「配信元特有のパケット」として、例えば、ＲＴＣＰのＳｅｎｄｅｒ  Ｒｅｐｏｒｔや、マルチキャストデータパケットや、マルチキャストアプリケーション固有のパケットを用いることができる。
【０１２８】
ＷＭＭＲ３０１は、配信元特有のパケットを受信すると、自身のＳＧＷＴ２０に、自身がＳ−ＳＧＷであることを登録する。より具体的には、ＷＭＭＲ３０１の経路管理部Ｎ０７は、ＳＧＷＴ２０に、（WMMR301, 全ID, 全ID, NOT-Connected）のエントリを登録する。
【０１２９】
このエントリをもつ間、ＷＭＭＲ３０１は、ＷＲＭ−ＳＧＷＡＤパケットを、無線マルチホップネットワーク３０９全体にフラッディングする。
【０１３０】
ここで、ＷＲＭ−ＳＧＷＡＤパケットのＬＨＲ−Ｃｏｎｎフィールドには、Ｓ−ＳＧＷであることを示す「NOT-Connected」が記述される。その他のフィールドは、上記Ｌ−ＳＧＷの場合と同様である。
【０１３１】
（ＳＧＷの維持）
ＭＲ２０３と、ＷＭＭＲ３０１が接続されている間、ＭＲ２０３は、インターフェイスｉ０より定期的にＩＧＭＰ−Ｑｕｅｒｙパケットを送信し、ＷＭＭＲ３０１は、そのＩＧＭＰ−Ｑｕｅｒｙパケットを受信する。この状態では、ＳＧＷであるＷＭＭＲ３０１は、定期的にＷＲＭ−ＳＧＷＡＤパケットをフラッディング送信する。
【０１３２】
ＷＲＭ−ＳＧＷＡＤパケットを受信したＷＭＭＲは、そのＷＲＭ−ＳＧＷＡＤパケットに含まれる情報に基づいて、自ノードのＳＧＷＴ２０にエントリを追加する。ただし、ＳＧＷＴ２０に同一のエントリがすでに存在する場合、ＷＭＭＲは、何もしない。ＷＲＭ−ＳＧＷＡＤパケットを定期的に受信している期間、全ＷＭＭＲのＳＧＷＴ２０のエントリは維持される。
【０１３３】
ＭＲ（ＬＨＲ）２０３と、ＷＭＭＲ３０１との接続が切断され、一定時間経過すると、ＷＭＭＲ３０１は、ＳＧＷＴ２０のエントリを削除し、ＷＲＭ−ＳＧＷＡＤパケットの送信を停止する。他のＷＭＭＲは、一定時間、ＷＲＭ−ＳＧＷＡＤパケットを受信しない場合には、自身のＳＧＷＴ２０のエントリを削除する。
【０１３４】
以上の処理により、全てのＷＭＭＲにＳＧＷＴ２０のエントリが登録され、維持される。全ＷＭＭＲにＳＧＷＴ２０のエントリが登録されている間、上記第１の実施形態に係るマルチキャストデータ転送経路の構築処理とマルチキャストデータパケット転送処理を行うことが可能である。
【０１３５】
（第４の実施形態）
次に、本発明の第４の実施形態について説明する。
【０１３６】
本実施形態では、ＲＧＷと受信端末との間のデータ通信のデータリンク層において、ユニキャスト送信とブロードキャスト送信を併用する。
【０１３７】
上記各実施形態では、ＲＧＷから受信端末へ送信されるマルチキャストパケットは、データリンク層のブロードキャスト通信を用いて送信される。このようにすれば、受信端末において、特別な機能を付加する必要がないからである。しかしながら、この場合、ＲＧＷと、受信端末との間で、パケットロスが発生する可能性がある。
【０１３８】
そこで、本実施形態では、ＲＧＷから受信端末への送信についても、データリンク層のユニキャスト送信とブロードキャスト送信を併用する。このデータリンク層のユニキャスト通信を実現するためには、宛先ＩＰアドレスがマルチキャストであり、かつ、宛先ＭＡＣアドレスが、ユニキャストであるようなパケットを、自身宛であると判別できる機能が受信端末側に必要である。
【０１３９】
（マルチキャストデータパケットの転送経路を構築する方法）
マルチキャストデータパケットの転送経路を構築する方法については、受信端末からのＩＧＭＰ−Ｒｅｐｏｒｔを、ＲＧＷが受信した時の処理だけが、上記第各実施形態と異なる。
【０１４０】
図１７は、本発明の第４の実施形態に係るネットワークシステムの構成を示すノード配置図である。図１７に示すように、マルチキャストネットワーク１４０１は、１個以上のマルチキャストデータパケットの配信元を含んでいる。無線マルチホップネットワーク３０９は、ＷＭＭＲ３０１〜３０６を備えている。ここで、マルチキャストネットワーク１４０１は、図１の基幹マルチキャストネットワーク２０９のようなネットワークを含んでも良いし、図１５に示すように、配信元のサーバだけで構成されてもよい。
【０１４１】
上記第１の実施形態と同じ手順により、受信端末４０１は、受信したいマルチキャスト送信者のＳＩＤ及びマルチキャストグループのＧＩＤを含むＩＧＭＰ−Ｒｅｐｏｒｔを送信する。ＲＧＷであるＷＭＭＲ３０３は、インターフェイスｉ０において、そのＩＧＭＰ−Ｒｅｐｏｒｔを受信する。
【０１４２】
図６に示すように、ＷＭＭＲ３０１の受信者管理部Ｎ０４は、インターフェイスｉ０においてＩＧＭＰ−Ｒｅｐｏｒｔを受信する（ステップＳ６０１）。続いて、経路制御部Ｎ０３は、受信されたＩＧＭＰ−Ｒｅｐｏｒｔに含まれるマルチキャストデータパケットの配信元のＳＩＤ及びマルチキャストグループのＧＩＤを取得する（ステップＳ６０２）。
【０１４３】
ここで、経路制御部Ｎ０３は、ＩＧＭＰ−Ｒｅｐｏｒｔの送信元ＭＡＣアドレスを取得する。このＭＡＣアドレスは、受信端末４０１のＭＡＣアドレスに等しい。ここで取得された情報を用いて、経路制御部Ｎ０３は、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ＝”ACCEPT”、ＭＡＣ（４０１）、ｉ０）のエントリを、ＭＲＴ１０に登録することにより、ＭＲＴ１０を更新する（ステップＳ６０３）。以降の処理は、第１の実施形態と同様に、ＭＲＴ１０の登録または削除処理、ＷＲＭ−Ｒｅｐｏｒｔの送信処理を行う。
【０１４４】
同様に、図１７の受信端末４０２、４０３、４０４、４０５についても、ＲＧＷであるＷＭＭＲ３０５、３０６において、上述した処理が実施される。図１８は、図１７のネットワークシステムにおける、登録後の各ＷＭＭＲのマルチキャストルーティングテーブルのエントリを示す図である。これにより、ＷＭＭＲ３０３、３０５，３０６のＭＲＴ１０のエントリは、図１８に示すようになる。
【０１４５】
上記以外のＷＭＭＲのＭＲＴ１０のエントリは、上記第１の実施形態と同様の方法で登録される。
【０１４６】
（マルチキャストデータパケットの転送動作）
マルチキャストネットワーク１４０１内のマルチキャストデータパケットの配信元が、マルチキャストデータパケットを送信すると、そのパケットはマルチキャストネットワーク１４０１を介してＷＭＭＲ３０１によって受信される。ＷＭＭＲ３０１は、第１の実施形態と同様の方法で、マルチキャストデータパケットをＷＭＭＲ３０２に送信する。ＷＭＭＲ３０２は、マルチキャストデータパケットを、ＷＭＭＲ３０３、３０５、３０６にそれぞれユニキャスト送信する。
【０１４７】
図１９は、図１７のネットワークシステムにおける、マルチキャストデータパケットの転送動作の処理フローである。図１９に示すように、ＷＭＭＲ３０３の転送制御部Ｎ０５は、インターフェイスｉ１において、マルチキャストデータパケットの配信元のＳＩＤ及びおよびマルチキャストグループＧＩＤのマルチキャストデータパケットを受信すると（ステップＳ１９０１）、データキャッシュＮ０６を参照し（ステップＳ１９０２）、受信したパケットが、既に受信したものと同一であるか否かを判定する（ステップＳ１９０３）。
【０１４８】
ここで、マルチキャストデータパケットが、初めて受信されたパケットであると判定された場合（ステップＳ１９０３；Ｎｏ）、転送制御部Ｎ０５は、そのパケットの情報を、データキャッシュに登録した後（ステップＳ１９０４）、（ＳＩＤ、ＧＩＤ）を有するＭＲＴ１０を検索し、転送先のＭＡＣアドレス、転送するインターフェイスを（ＤＳ−ＭＡＣ＝ＭＡＣ（４０１）、ｉ０）を取得する（ステップＳ１９０５）。
【０１４９】
次に、転送制御部Ｎ０５は、データリンク層の送信方法を決定する（ステップＳ１９０６）。ここでは、データリンク層の送信方法の決定方法として、例えば以下の方法を用いることができる。
【０１５０】
（方法１）：予め設定された下流の隣接ノード数の閾値より、送信先のノード数が多い場合、ブロードキャスト送信を行う。それ以外の場合にはユニキャスト送信を行う。
（方法２）：ユニキャスト送信する場合の無線帯域占有時間と、マルチキャスト送信する場合の無線帯域占有時間とを算出し、その値が小さくなる方の送信方法を用いる。
【０１５１】
さらに、ユニキャスト送信とブロードキャスト送信とを、受信端末毎に選択することも可能である。その方法には、例えば以下の方法がある。
【０１５２】
（方法３）： 予め設定されたパケットロス率の閾値よりも、パケットロス率が高いリンクで接続する受信端末に対してはユニキャスト送信を用い、それ以外の受信端末に対してはブロードキャスト送信を用いる。
（方法４）：予め設定された遅延閾値よりも遅延の大きいリンクで接続する受信端末に対してはブロードキャスト送信を用い、それ以外の受信端末に対しては、ユニキャスト送信を用いる。
【０１５３】
ただし、データリンク層の送信方法の決定の仕方は、上述した方法に限定されるものではない。また、以下の方法を適切に組み合わせることも可能である。具体的には、例えば（方法１）を採用し、「予め設定された下流隣接ノード数の閾値」を２とする場合、ＷＭＭＲ３０３は、下流隣接ノード数が１であるので、マルチキャストデータパケットをユニキャスト送信する。ＷＭＭＲ３０５も、同様の処理を行い、ユニキャスト送信を行う。ＷＭＭＲ３０６においては、下流隣接ノード数＝３であるのでブロードキャスト送信を行う。
【０１５４】
その後、転送制御部Ｎ０５は、マルチキャストデータパケットを転送先数の分だけ複製し（ステップＳ１９０７）、転送先ごとに、以下の処理を行なう（ステップＳ１９０８〜Ｓ１９１３）。
【０１５５】
転送制御部Ｎ０５は、転送先へのデータリンク層の送信方法がユニキャストである場合（ステップＳ１９０９；Ｙｅｓ）、マルチキャストデータパケットの送信元ＭＡＣアドレスを自身のＭＡＣアドレスに更新し、宛先ＭＡＣアドレスをＭＡＣ（４０１）に更新し、インターフェイスｉ０より送信する（ステップＳ１９１５）。
【０１５６】
図２０は、ブロードキャスト送信済みリストである。転送先へのデータリンク層の送信方法がユニキャスト送信でなく、ブロードキャスト送信である場合（ステップＳ１９０９；Ｎｏ）、図２０に示すブロードキャスト送信済みリスト３０を参照し、送信しようとするインターフェイスに、既にブロードキャスト送信済みであるか否かを判定する（ステップＳ１９１０）。転送制御部Ｎ０５は、送信済みでなければ（ステップＳ１９１０；Ｎｏ）、マルチキャストデータパケットの送信元ＭＡＣアドレスを自身のＭＡＣアドレスに更新し、宛先ＭＡＣアドレスをＧＩＤに対応するＭＡＣアドレスに更新して、インターフェイスｉ０より送信する（ステップＳ１９１１）。続いて、転送制御部Ｎ０５は、図２０のブロードキャスト送信済リスト３０に登録する（ステップＳ１９１２）。
【０１５７】
転送制御部Ｎ０５は、送信しようとするインターフェイスに、既にブロードキャスト送信済みである場合には（ステップＳ１９１０；Ｙｅｓ）、パケットを廃棄する（ステップＳ１９１４）。
【０１５８】
一方、既に受信したパケットと同一であった場合（ステップＳ１９０３）、転送制御部Ｎ０５は、受信パケットを破棄する（ステップＳ１９１６）のは、上記各実施形態と同じである。
【０１５９】
（第５の実施形態）
次に、本発明の第５の実施形態について説明する。本実施形態では、ＷＭＭＲ間のデータ通信を行うデータリンク層において、ユニキャスト送信とブロードキャスト送信を併用する。
【０１６０】
あるＷＭＭＲについて、隣接する送信先のノードが多く、それらとの通信品質が良好であると、場合によっては、ブロードキャスト送信のほうが高配信率かつ低遅延な通信ができる場合がある。本実施形態では、ＷＭＭＲ間の通信についても、データリンク層のユニキャスト送信とブロードキャスト送信とを併用する。
【０１６１】
本実施形態では、マルチキャストデータパケットの転送経路の構築方法については、上記第１の実施形態に係る方法と同じである。
【０１６２】
マルチキャストデータパケット転送処理では、上記第４の実施形態で示した（方法１）〜（方法４）の「データリンク層のユニキャスト送信を使うかブロードキャスト送信を使うかを選択する方法」を用いて、ユニキャスト送信かマルチキャスト送信を選択し、その送信方法により送信する。例えば、上記方法として、（方法１）を採用し、予め設定された下流隣接ノード数の閾値を２とする。この場合、図１７に示すネットワーク構成であれば、ＷＭＭＲ３０１からＷＭＭＲ３０２の送信には、ユニキャスト送信が用いられ、ＷＭＭＲ３０２からＷＭＭＲ３０３、３０５、３０６への送信には、ブロードキャスト送信が用いられる。
【０１６３】
（第６の実施形態）
次に、本発明の第６の実施形態について説明する。本実施形態では、無線メッシュネットワーク３０９により、ＶＰＮ（Virtual Private Network）が形成されている。
【０１６４】
無線メッシュネットワークには、接続する端末と基地局とが同一のサブネットワークアドレスを有するフラット型と、端末と基地局が異なるサブネットワークアドレスを有するＶＰＮ型との２種類がある。
【０１６５】
フラット型無線メッシュネットワークでは、一般的なＩＰパケット転送で実現することができるというメリットがあるが、端末を使用するユーザが、無線メッシュネットワークのＩＰアドレス体系を意識する必要があるというデメリットがある。一方、ＶＰＮ型無線メッシュネットワークでは、ネットワークの出入り口で端末のパケットをカプセル化およびデカプセルする機能が必要であるため、一般的なＩＰ転送だけでは実現できないというデメリットがあるが、端末にとっては、無線メッシュネットワークの内部構造を意識せずに使うことができるというメリットがある。
【０１６６】
上記各実施形態に係るネットワークは、フラット型無線メッシュネットワークとＶＰＮ型無線メッシュネットワークの両方に適用できるものであった。本実施形態では、ＶＰＮ型無線メッシュネットワークの場合に、第１及び第２の実施形態のＳＧＷの固定設定や、第２の実施形態のＷＲＭ−ＳＧＷＡＤを用いずに、ＳＧＷの設定を行う方法について説明する。
【０１６７】
本実施形態に係るマルチキャストデータパケットの転送は、以下の前提条件下で実施される。
【０１６８】
（１）全ＷＭＭＲは、自身に接続する端末のＭＡＣアドレスを常に管理するとともに、その情報を全ＷＭＭＲに通知する。これにより、全ＷＭＭＲには無線メッシュネットワークに接続する端末と、その端末が接続しているＷＭＭＲの対応関係が構築される。この機能を帰属管理機能とよび、ここで管理される対応関係を帰属管理情報と呼ぶ。
（２）ＬＨＲには、無線メッシュ外のネットワークの端末宛のＡＲＰ−Ｒｅｑｕｅｓｔに対して自身のＭＡＣアドレスを応答するＰｒｏｘｙ−ＡＲＰ機能が搭載されている。
【０１６９】
（マルチキャストデータパケットの転送経路を構築する段階）
本実施形態では、各ＷＭＭＲには、ＬＨＲのＩＤが設定されている。ＬＨＲは基幹ネットワークに位置しているため、変更はごく稀である。しかも、受信端末がユニキャスト通信で用いるデフォルトゲートウエイがＬＨＲに一致する場合がほとんどであるため、ＬＨＲのインターフェイスのＩＤは、受信端末のデフォルトゲートウエイの設定と同じものを設定すればよい。各ＷＭＭＲにおけるＬＨＲ設定方法には、例えば、静的設定による方法や、受信端末がＤＨＣＰによる動的ＩＰアドレス設定をする場合には、そのパケット内部に記述されるデフォルトゲートウエイのＩＰアドレスを取得して設定する方法などがある。
【０１７０】
まず、受信端末４０１は、受信したいマルチキャスト送信者のＳＩＤおよびマルチキャストグループのＧＩＤを含むＩＧＭＰ−Ｒｅｐｏｒｔ２１０１を送信する。ＲＧＷであるＷＭＭＲ３０３は、インターフェイスｉ０において、そのＩＧＭＰ−Ｒｅｐｏｒｔを受信する。図２２は、ＶＰＮネットワークが形成されている場合のＷＲＭ−Ｒｅｐｏｒｔを受信した時のＷＭＭＲの処理フローである。ＷＭＭＲ３０３の処理の流れを図２２に示す。
【０１７１】
図２２に示すように、ステップＳ２２０１〜Ｓ２２０５と、Ｓ２２０６〜Ｓ２２１２は、第１の実施形態の構築処理（図６参照）におけるステップＳ６０１〜Ｓ６０５と、Ｓ６０６〜Ｓ６１２と同じである。
【０１７２】
図２２において、ＷＭＭＲ３０３の経路制御部Ｎ０３は、ＩＧＭＰ−Ｒｅｐｏｒｔが受信されたら（ステップＳ２２０１）、第１の実施形態と同様の手順で、ＩＧＭＰ−Ｒｅｐｏｒｔ内の（参加離脱種別、ＳＩＤ、ＧＩＤ）を取得する（ステップＳ２２０２）。
【０１７３】
経路制御部Ｎ０３は、ＳＩＤとＧＩＤを用いてＭＲＴ１０を更新し（ステップＳ２２０３）、ＭＲＴ１０の更新前後で、（ＳＩＤ、ＧＩＤ、Ｐｏｌｉｃｙ）に変更があるか否かを判定する（ステップＳ２２０４）。変更がある場合（ステップＳ２２０４；Ｎｏ）、経路制御部Ｎ０３は、変更があった（ＳＩＤ、ＧＩＤ）を担当するＳＧＷを、ＳＧＷＴ２０から検索する（ステップＳ２２０５）。ここで、担当するＳＧＷが発見された場合（ステップＳ２２０６；Ｙｅｓ）、上記第１の実施形態と同様の処理（Ｓ２２０６〜Ｓ２２１２）が実施される。
【０１７４】
図２１は、ＶＰＮネットワークが形成されている場合の経路制御用パケットの転送シーケンスを示す図である。ＳＧＷＴに担当するＳＧＷが発見されなかった場合（ステップＳ２２０６；Ｎｏ）、経路制御部Ｎ０３は、ＳＩＤのＭＡＣアドレスを問い合わせるためのＡＲＰ−Ｒｅｑｕｅｓｔ２１０２（図２１参照）を作成し（ステップ２２２２）、ＶＰＮ内にフラッディング送信（ステップＳ２２２３）を行った後、その応答としてのＡＲＰ−Ｒｅｐｌｙの受信待ち状態になる。
【０１７５】
このＶＰＮ内のＡＲＰ−Ｒｅｑｕｅｓｔは、無線メッシュネットワーク及び一般のＩＰ機能により処理される。具体的には以下のようになる。
【０１７６】
このＶＰＮ内ＡＲＰ−Ｒｅｑｕｅｓｔはフラッディング機能により、すべてのＷＭＭＲに届く。具体的には、図２１に示すように、ＷＭＭＲ３０３が送信したＶＰＮ内ＡＲＰ−Ｒｅｑｕｅｓｔ２１０２を、ＷＭＭＲ３０２が受信する。その後、ＷＭＭＲ３０２が、ＶＰＮ内ＡＲＰ−Ｒｅｑｕｅｓｔ２１０３を送信し、ＷＭＭＲ３０１が受信する。ＷＭＭＲ３０１は、自身に帰属する端末に対し、ＡＲＰ−Ｒｅｑｕｅｓｔ２１０４を送信する。ＡＲＰ−Ｒｅｑｕｅｓｔ２１０４の問い合わせ先であるＭＲ２０３は、自身のＭＡＣアドレスが記述されたＡＲＰ−Ｒｅｐｌｙ２１０５を、ユニキャスト送信によりＷＭＭＲ３０１に返送する。ＷＭＭＲ３０１は、ＡＲＰ−Ｒｅｐｌｙ２１０６を、ＶＰＮ内にユニキャスト送信する。ＷＭＭＲ３０２を経由して、ＷＭＭＲ３０３が、ＡＲＰ−Ｒｅｐｌｙ２１０７を受信する。
【０１７７】
以上、一連の処理により、ＷＭＭＲ３０３が、ＶＰＮ内ＡＲＰ−Ｒｅｐｌｙ２１０７を受信したら、経路制御部Ｎ０３は、その送信元ＩＤ（送信元のＩＰアドレス）を、ＳＧＷとしてＳＧＷＴに登録する（ステップＳ２２２４）。以降、第１の実施形態と同様の処理（ステップＳ２２０７〜Ｓ２２１２）を実施する。これにより、図２１に示すように、ＷＲＭ−Ｒｅｐｏｒｔ２１０８、２１０９、ＩＧＭＰ−Ｒｅｐｏｒｔ２１１０が転送され、マルチキャストデータパケットの転送経路が構築される。
【０１７８】
以上詳細に説明したように、上記各実施形態に係る無線マルチホップネットワーク３０９によれば、以下に示す効果を有する。
【０１７９】
（１）無線ネットワークにおいて、データリンク層で到達確認と未到達パケットの再送制御のあるユニキャスト送信を行うため、パケットロスが発生してもデータリンク層でのパケットロス回復が可能である。これにより、データリンク層にマルチキャスト送信を用いる場合と比較してアプリケーションレベルのデータ欠落を少なくすることができる。
【０１８０】
例えば、パケットロス率０．１のリンクにおいて、マルチキャストデータパケットを送信する場合のパケット到達率は０．９（＝１−０．１）であるが、再送最大回数３回のユニキャスト送信を用いれば、０．９９９９＝（１−０．１）4という高いパケット到達率が得られる。
【０１８１】
このように、上記各実施形態によれば、ユニキャスト送信を用いることで、信頼性の高い、高スループットな通信が可能である。この方法は、特に、音声や動画の配信に最適である。
【０１８２】
（２）高速なユニキャスト送信を用いることにより、帯域占有時間を小さくすることができる。たとえば、無線規格ＩＥＥＥ８０２．１１ａにおいて、データリンク層で、１０００Ｂｙｔｅのパケットを送信する場合、マルチキャスト送信では、伝送レート６Ｍｂｐｓで、帯域占有時間が１５０９．５μｓｅｃとなる。一方、ユニキャスト送信では、伝送レート５４Ｍｂｐｓの場合、帯域占有時間は、３２１．５μｓｅｃとなる。すなわち、ユニキャスト送信は、マルチキャスト送信の場合に比べ、通信帯域占有時間が、およそ３分の１となる。
【０１８３】
（３）マルチキャスト受信端末によって送信されるＩＧＭＰ−Ｒｅｐｏｒｔを、無線メッシュネットワークのＷＲＭの情報に変換し、無線メッシュネットワークのＳＧＷにおいてＩＧＭＰに再変換することにより、ＬＨＲに、ＩＧＭＰ−Ｒｅｐｏｒｔを送信することができる。これにより、受信端末に特別な機能を追加することなく、マルチキャストデータパケットの転送経路を構築することができる。
【０１８４】
また、本実施形態に係るＷＭＭＲは、送信先ごとに、データリンク層の品質を考慮してユニキャスト送信とブロードキャスト送信とを選択することができるため、パケットロスの発生率が低く、スループットの高い通信を行うことができる。
【０１８５】
なお、上記各実施形態では、ＩＧＭＰ−Ｒｅｐｏｒｔ及びＷＲＭ−Ｒｅｐｏｒｔにより、マルチキャストデータパケットの転送経路が構築されたが、マルチキャストデータパケットの転送経路をあらかじめＷＭＭＲに設定しておくことにより、ＷＲＭ−Ｒｅｐｏｒｔを用いずに経路構築を行うようにしてもよい。
【０１８６】
なお、上記各実施形態では、ＩＰｖ４におけるＩＧＭＰプロトコルを用いたが、この代わりに、ネットワーク層のプロトコルとしてＩｐｖ６が用いられる場合には、ＭＬＤプロトコルを用いてもよい。ＭＬＤプロトコルは、例えば、以下の文献に詳細に記述されている。
Multicast Listener Discovery Version 2 (MLDv2) for IPv6, RFC 3810
【０１８７】
なお、本願については、日本国特許出願２００９−０７１０４８号を基礎とする優先権を主張し、本明細書中に日本国特許出願２００９−０７１０４８号の明細書、特許請求の範囲、図面全体を参照として取り込むものとする。
【符号の説明】
【０１８８】
１０  マルチキャストルーティングテーブル（ＭＲＴ）
２０  ソースゲートウエイテーブル（ＳＧＷＴ）
３０  ブロードキャスト送信済みリスト
１０１、１０２  サーバ
２０１、２０２、２０３、２０４  マルチキャストルータ（ＭＲ）
２０９  基幹マルチキャストネットワーク
３０１、３０２、３０３、３０４、３０５、３０６  無線マルチホップマルチキャストルータ（ＷＭＭＲ）
３０９  無線マルチホップネットワーク
４０１、４０２、４０３、４０４、４０５  受信端末
５０１、５０４、９０１、２１０１、２１１０  ＩＧＭＰ−Ｒｅｐｏｒｔ
５０２、５０３、２１０８、２１０９  ＷＲＭ−Ｒｅｐｏｒｔ
１４０１  マルチキャストネットワーク
２１０２、２１０３  ＶＰＮ内ＡＲＰ−Ｒｅｑｕｅｓｔ
２１０４  ＡＲＰ−Ｒｅｑｕｅｓｔ
２１０５  ＡＲＰ−Ｒｅｐｌｙ
２１０６、２１０７  ＶＰＮ内ＡＲＰ−Ｒｅｐｌｙ
Ｎ０１−１、Ｎ０１−２、…  物理インターフェイス
Ｎ０２−１、Ｎ０２−２、…  通信制御部
Ｎ０３  経路制御部
Ｎ０４  受信者管理部
Ｎ０５  転送制御部
Ｎ０６  データキャッシュ
Ｎ０７  経路管理部
【図１】
0005448211.tif 000002
【図２】
0005448211.tif 000003
【図３】
0005448211.tif 000004
【図４】
0005448211.tif 000005
【図５】
0005448211.tif 000006
【図６】
0005448211.tif 000007
【図７】
0005448211.tif 000008
【図８】
0005448211.tif 000009
【図９】
0005448211.tif 000010
【図１０】
0005448211.tif 000011
【図１１】
0005448211.tif 000012
【図１２】
0005448211.tif 000013
【図１３】
0005448211.tif 000014
【図１４】
0005448211.tif 000015
【図１５】
0005448211.tif 000016
【図１６】
0005448211.tif 000017
【図１７】
0005448211.tif 000018
【図１８】
0005448211.tif 000019
【図１９】
0005448211.tif 000020
【図２０】
0005448211.tif 000021
【図２１】
0005448211.tif 000022
【図２２】
0005448211.tif 000023