(57)【要約】【課題】  利用先の組織の構成に準じて高いセキュリティで通信を行うことを可能とすることにある。【解決手段】  各移動ノードａ〜ｆは送信元ノードとなり、かつ宛先ノードが別のグループに属するときに、複数の近隣ノードが存在するならば、(1)グループが同じで、かつノード階級が上位または同位、(2)グループが違い、かつノード階級が上位または同位、(3)ノード階級値が下位、という優先順位で近隣ノードを送信先ノードとして選定する。そして各移動ノードａ〜ｆは、選定した送信先ノードへパケットを送信する。【選択図】      図１
2005142959.tif 000002
【特許請求の範囲】
【請求項１】
複数のグループのそれぞれに対して定められたグループ識別子のいずれかが付与されるとともに、複数の階級のそれぞれに対して定められたノード階級値のいずれかが付与される複数の移動ノードによりアドホックネットワークを形成するアドホック通信システムにおいて、
各移動ノードは、
他の移動ノードにパケットを転送可能な経路を判定する手段と、
他の移動ノードを宛先ノードとするパケットを取得して送信元ノードとなる場合に、前記宛先ノードおよび前記宛先ノードへの経路を持つ通信可能な移動ノードを含む近隣ノードのうちから前記パケットの送信先とする送信先ノードを決定する決定手段と、
前記送信先ノードへ前記パケットを送信する手段とを具備し、
かつ前記決定手段は、前記送信元ノードと前記宛先ノードとのグループ識別子が異なるときには、
前記送信元ノードとグループ識別子が同じで、かつ前記送信元ノードに対しノード階級値が上位または同位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、
上記の条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が違い、かつ前記宛先ノードに対しノード階級値が上位または同位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、
上記の各条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が違い、かつ前記宛先ノードに対しノード階級値が下位である近隣ノードまたは前記送信元ノードとグループ識別子が同じで、前記送信元ノードに対しノード階級値が下位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定することを特徴とするアドホック通信システム。
【請求項２】
複数のグループのそれぞれに対して定められたグループ識別子のいずれかが付与されるとともに、複数の階級のそれぞれに対して定められたノード階級値のいずれかが付与される複数の移動ノードによりアドホックネットワークにて、各移動ノードがパケットの送信先とする送信先ノードを前記宛先ノードおよび前記宛先ノードへの経路を持つ通信可能な移動ノードを含む近隣ノードのうちから決定する送信先決定方法において、
前記送信元ノードと前記宛先ノードとのグループ識別子が異なるときには、
前記送信元ノードとグループ識別子が同じで、かつ前記送信元ノードに対しノード階級値が上位または同位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、
上記の条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が違い、かつ前記宛先ノードに対しノード階級値が上位または同位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、
上記の各条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が違い、かつ前記宛先ノードに対しノード階級値が下位である近隣ノードまたは前記送信元ノードとグループ識別子が同じで、前記送信元ノードに対しノード階級値が下位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定することを特徴とする送信先決定方法。
【請求項３】
複数のグループのそれぞれに対して定められたグループ識別子のいずれかが付与されるとともに、複数のノード階級値のいずれかが付与される複数の移動ノードによりアドホックネットワークを形成するアドホック通信システムにて前記移動ノードとして使用される通信装置において、
他の移動ノードにパケットを転送可能な経路を判定する手段と、
他の移動ノードを宛先ノードとするパケットを取得して送信元ノードとなる場合に、前記宛先ノードおよび前記宛先ノードへの経路を持つ通信可能な移動ノードを含む近隣ノードのうちから前記パケットの送信先とする送信先ノードを決定する決定手段と、
前記送信先ノードへ前記パケットを送信する手段とを具備し、
かつ前記決定手段は、前記送信元ノードと前記宛先ノードとのグループ識別子が異なるときには、
前記送信元ノードとグループ識別子が同じで、かつ前記送信元ノードに対しノード階級値が上位または同位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、
上記の条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が違い、かつ前記宛先ノードに対しノード階級値が上位または同位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、
上記の各条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が違い、かつ前記宛先ノードに対しノード階級値が下位である近隣ノードまたは前記送信元ノードとグループ識別子が同じで、かつ前記送信元ノードに対しノード階級値が下位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定することを特徴とする通信装置。
【請求項４】
それぞれに複数のグループ階級値のいずれかが付与される複数のグループのそれぞれに対して定められたグループ識別子のいずれかが付与されるとともに、複数のノード階級値のいずれかが付与される複数の移動ノードによりアドホックネットワークを形成するアドホック通信システムにて前記移動ノードとして使用される通信装置において、
他の移動ノードにパケットを転送可能な経路を判定する手段と、
他の移動ノードを宛先ノードとするパケットを取得して送信元ノードとなる場合に、前記宛先ノードおよび前記宛先ノードへの経路を持つ通信可能な移動ノードを含む近隣ノードのうちから前記パケットの送信先とする送信先ノードを決定する決定手段と、
前記送信先ノードへ前記パケットを送信する手段とを具備し、
かつ前記決定手段は、前記送信元ノードと前記宛先ノードとのグループ識別子が異なるときには、
前記送信元ノードとグループ識別子が同じで、かつ前記送信元ノードに対しノード階級値が上位または同位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、
上記の条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が違い、前記送信元ノードに対してグループ階級値が上位で、かつ前記宛先ノードに対しノード階級値が上位または同位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、
上記の各条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が違い、前記送信元ノードに対してグループ階級値が上位で、かつ前記宛先ノードに対しノード階級値が下位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、
上記の各条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が違い、前記送信元ノードに対してグループ階級値が同位で、かつ前記宛先ノードに対しノード階級値が上位または同位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、
上記の各条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が違い、前記送信元ノードに対してグループ階級値が同位で、かつ前記宛先ノードに対しノード階級値が下位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、
上記の各条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が違い、かつ前記宛先ノードに対しノード階級値が下位である近隣ノードまたは前記送信元ノードとグループ識別子が同じで、かつ前記送信元ノードに対しノード階級値が下位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定することを特徴とする通信装置。
【請求項５】
前記決定手段は、予め指定された移動ノードが近隣ノードに含まれる場合、当該移動ノードを前記送信先ノードとして無条件に決定することを特徴とする請求項３または請求項４に記載の通信装置。
【請求項６】
前記決定手段は、予め指定された移動ノードが所定の条件に合致した近隣ノードに含まれる場合に、当該移動ノードを前記送信先ノードとして決定することを特徴とする請求項３または請求項４に記載の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の移動ノードがパケットの伝送経路を動的に確立するアドホックネットワークを構成するアドホック通信システムおよびその通信装置、ならびに送信先決定方法に関する。
【背景技術】
【０００２】
従来、アドホックネットワークにおいては、複数の移動ノードによりパケットを中継することで、直接に通信を行うことができない移動ノード間での通信を可能とする。
【０００３】
このような中継による通信を行う場合、一般的にはパケットを中継することが可能な経路が複数存在する。そして複数の伝送経路のいずれによりパケットの伝送を行うかは従来の経路制御では、宛先ノードへの到達性や経路のコストを考慮して決定されていた。
【０００４】
なお、関連する技術を開示する文献としては非特許文献１乃至４が知られている。
【非特許文献１】David B. Johnson、外２名、"The Dynamic Source Routing Protocol for Mobile Ad Hoc Networks (DSR)"、[online]、２００３年４月１５日、IETF MANET Working Group、［２００３年１０月２９日検索］、インターネット＜URL : http://www.ietf.org/internet-drafts/draft-ietf-manet-dsr-09.txt＞
【非特許文献２】Thomas Clausen、外１名、"Topology Dissemination Based on Reverse-Path Forwarding (TBRPF)"、[online]、２００３年１月３日、IETF MANET Working Group、［２００３年１０月２９日検索］、インターネット＜URL : http://www.ietf.org/internet-drafts/draft-ietf-manet-olsr-11.txt＞
【非特許文献３】R. Ogier、外２名、"Optimized Link State Routing Protocol"、[online]、２００３年１０月１４日、Mobile Ad-Hoc Networks Working Group、［２００３年１０月２９日検索］、インターネット＜URL : http://www.ietf.org/internet-drafts/draft-ietf-manet-tbrpf-11.txt＞
【非特許文献４】C. Perkins、外２名、"Ad hoc On-Demand Distance Vector (AODV) Routing"、[online]、２００３年７月、Network Working Group、［２００３年１０月２９日検索］、インターネット＜URL : http://www.ietf.org/rfc/rfc3561.txt＞
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来の経路制御によると、ネットワークに属している全ての移動ノードが中継ノードに成り得る。このため、データが盗み見されてしまうおそれがあるなどのセキュリティ面での不都合があった。
【０００６】
また、ネットワークを利用する企業などの組織の構成を経路制御に反映するようなことはできなかった。
【０００７】
本発明はこのような事情を考慮してなされたものであり、その目的とするところは、利用先の組織の構成に準じて高いセキュリティで通信を行うことを可能とすることにある。
【課題を解決するための手段】
【０００８】
以上の目的を達成するために本発明は、複数のグループのそれぞれに対して定められたグループ識別子のいずれかが付与されるとともに、複数の階級のそれぞれに対して定められたノード階級値のいずれかが付与される複数の移動ノードによりアドホックネットワークを形成するアドホック通信システムにおいて、各移動ノードは、他の移動ノードにパケットを転送可能な経路を判定する手段と、他の移動ノードを宛先ノードとするパケットを取得して送信元ノードとなる場合に、前記宛先ノードおよび前記宛先ノードへの経路を持つ通信可能な移動ノードを含む近隣ノードのうちから前記パケットの送信先とする送信先ノードを決定する決定手段と、前記送信先ノードへ前記パケットを送信する手段とを具備し、かつ前記決定手段は、前記送信元ノードと前記宛先ノードとのグループ識別子が異なるときには、前記送信元ノードとグループ識別子が同じで、かつ前記送信元ノードに対しノード階級値が上位または同位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、上記の条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が同じで、かつ前記送信元ノードに対しノード階級値が同位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、上記の各条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が違い、かつ前記宛先ノードに対しノード階級値が上位または同位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定し、上記の各条件に合致する近隣ノードが存在せず、前記送信元ノードとグループ識別子が違い、かつ前記宛先ノードに対しノード階級値が下位である近隣ノードまたは前記送信元ノードとグループ識別子が同じで、前記送信元ノードに対しノード階級値が下位である近隣ノードが存在するならば当該近隣ノードを前記送信先ノードに決定することとした。
【０００９】
このような手段を講じたことにより、各移動ノードは送信元ノードとなり、かつ宛先ノードが別のグループに属するときに、複数の近隣ノードが存在するならば、(1)グループが同じで、かつノード階級が上位または同位、(2)グループが違い、かつノード階級が上位または同位、(3)ノード階級値が下位、という優先順位で近隣ノードが送信先ノードとして選定される。そして各移動ノードでは、選定された送信先ノードへパケットの送信が行われる。従って、各移動ノードが属するグループおよび各移動ノードの階級を考慮してパケットの伝送経路が選定される。
【発明の効果】
【００１０】
本発明によれば、パケットの伝送経路の選定に各移動ノードが属するグループおよび各移動ノードの階級を考慮することができるために、利用先の組織の構成に準じて高いセキュリティで通信を行うことが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して本発明の実施形態につき説明する。
【００１２】
（第１の実施形態）
図１は本発明の第１の実施形態に係るアドホック通信システムの構成を示す図である。  
この図１に示すように第１の実施形態のアドホック通信システムは、それぞれが個別に移動可能な複数の移動ノードにより構成される。これらの移動ノードは、物理的には、近接する全ての移動ノードと通信が可能である。各移動ノードは、ネットワークアドレスで一意に識別可能である。各移動ノードは、複数のグループのいずれかにそれぞれ属する。グループは、グループ識別子で一意に識別可能である。また、各移動ノードは階級分けされていて、ノード階級値が付与される。ノード階級値は、正整数で表わされ、小さい値がより上位の階級に相当するものとする。ただし、ノード階級値は階級の上下関係が判別可能な体系であれば良く、大きい値がより上位の階級に相当するものとするなどのように適宜に変更が可能である。このノード階級値は、一意である必要はない。
【００１３】
図１においては、移動ノードａ〜ｆの６つの移動ノードを示している。そして移動ノードａ，ｂ，ｃは第１グループに属し、移動ノードｄ，ｅ，ｆは第２グループに属する。第１グループにはグループ識別子として「１」が、第２グループにはグループ識別子として「２」がそれぞれ付与されていることとする。移動ノードａ，ｄにはノード階級値として「１」が付与され、移動ノードｂ，ｃにはノード階級値として「２」が付与され、移動ノードｅ，ｆにはノード階級値として「３」が付与されていることとする。図１においては、各移動ノードに関するグループ識別子およびノード階級値を、「グループ識別子：ノード階級値」の形態にて図示している。また図１にて各移動ノード間を結んでいる直線は、直接に通信を行うことができる移動ノードの関係を示している。
【００１４】
移動ノードはルータとしても機能し、他の移動ノードを宛先とするパケットを受信した場合には、このパケットを他の移動ノードに転送する。この機能により、図１に示す直線を辿る任意の経路にて通信を可能とすることにより、アドホックネットワークが構成される。
【００１５】
このアドホック通信システムをどのような形態で使用するかは任意であるが、例えば企業内の通信システムとしての使用が想定される。この場合、例えば企業の部署毎に別々のグループとし、各部署に属する社員が使用する移動ノードを部署に対応するグループに属するものとして運用することが考えられる。さらにこのケースでは、より職位が高い社員が使用する移動ノードほど、ノード階級値を上位に設定しておくことが考えられる。具体的には、部長が使用する移動ノードのノード階級値を「１」に、課長が使用する移動ノードの階級値を「２」に、一般の部員が使用する移動ノードのノード階級値を「３」に設定するなどである。
【００１６】
図２は図１中の移動ノードとして利用される通信装置の構成を示す機能ブロック図である。  
この図２に示すように通信装置は、無線部１、経路探索部２、経路表記憶部３、グループ識別子記憶部４、ノード階級値記憶部５、送信先決定部６、通信制御部７、バッファ８およびインタフェース部９を含む。
【００１７】
無線部１は、他の移動ノードとの間での無線通信を行う。
【００１８】
経路探索部２は、物理的な通信可能経路の探索を無線部１を介して行う。経路探索部２は、上記の探索の結果を示す経路表を作成する。経路表記憶部３は、上記の経路表を記憶する。
【００１９】
グループ識別子記憶部４は、この通信装置が適用される移動ノードが属するグループのグループ識別子を記憶する。ノード階級値記憶部５は、この通信装置が適用される移動ノードに付与されたノード階級値を記憶する。
【００２０】
送信先決定部６は、経路表記憶部３、グループ識別子記憶部４およびノード階級値記憶部５に記憶された経路表、グループ識別子およびノード階級値を考慮してパケットの送信先を決定する。
【００２１】
通信制御部７は、この通信装置を送信先としたパケットが無線部１により受信されたならば、このパケットをバッファ８に格納する。また通信制御部７は、バッファ８に記憶された他の移動ノードを宛先とするパケットを、送信先決定部６で決定された送信先へ無線部１を介して送信する。
【００２２】
インタフェース部９は、他の移動ノードを宛先とするパケットを所定の情報処理部（図示せず）から取得してバッファ８に格納する。インタフェース部９は、この通信装置が適用される移動ノードを宛先とするパケットをバッファ８から取り出し、情報処理部へ送る。情報処理部は、この通信装置の内部に設けられても、この通信装置に接続される他の機器に設けられても良い。
【００２３】
なお、経路探索部２、送信先決定部６および通信制御部７は、例えば上記の各部としての処理を記述したプログラムをプロセッサに実行させることにより実現できる。経路表記憶部３、グループ識別子記憶部４、ノード階級値記憶部５およびバッファ８としては、例えば半導体メモリを用いることができる。
【００２４】
次に以上のように構成された第１の実施形態のアドホック通信システムの動作について説明する。  
各移動ノードは、以下に説明する動作をそれぞれ個別に行う。  
まず経路表は、例えば既存のアドホックネットワークにて行われているのと同様に経路探索部２が経路探索を行って作成される。そしてこの経路表が、経路表記憶部３に記憶される。
【００２５】
一方、データ処理部から他の移動ノードへ送信するべきパケットが出力されたならば、このパケットはインタフェース部９によりバッファ８に格納される。また、他の移動ノードを宛先として指定したパケットが無線伝送されてきたならば、このパケットが無線部１により受信された上で、通信制御部７によりバッファ８に格納される。
【００２６】
なお、以下において、パケットの宛先として指定された移動ノードを宛先ノードと、上述のようにバッファ８に格納されたパケットを他の移動ノードへ送信する移動ノードを送信元ノード、送信元ノードがパケットを送信する先の移動ノードを送信先ノード、さらには送信元ノードと通信可能な移動ノード（宛先ノードも含む）を近隣ノードとそれぞれ称する。
【００２７】
さて、各移動ノードは、上述のように他の移動ノードを宛先として指定したパケットがバッファ８に格納されているときに送信元ノードとなる。そして移動ノードはこのように送信ノードとなったことに応じて、図３に示すような処理を実行する。  
図３は送信ノードの送信先決定部６が送信先ノードを決定する処理手順を示したフローチャートである。送信先決定部６は、バッファ８に格納されるパケットのそれぞれに関してこの図３に示す処理を実行する。  
ステップＳａ１においては送信先決定部６が、宛先ノードとの直接通信が可能であるか否かを確認する。もし、直接通信が不可能であるならば、送信先決定部６はステップＳａ１からステップＳａ２へ進む。ステップＳａ２において送信先決定部６は、宛先ノードへの経路を持った近隣ノードがあるか否かを経路表を参照して確認する。そして、該当する近隣ノードも存在しないのならば、現状では宛先ノードへパケットを送ることができないので、送信先決定部６は送信先ノードの決定を断念して図３の処理を終了する。
【００２８】
ところで、宛先ノードとの直接通信が可能であるならば、送信先決定部６はステップＳａ１からステップＳａ３へ進む。ステップＳａ３において送信先決定部６は、宛先ノードのグループ識別子がグループ識別子記憶部４に記憶されたグループ識別子と同一であるか否かを確認する。もし、グループ識別子が異なるならば、さらにステップＳａ４において送信先決定部６は、宛先ノードへの経路を持った近隣ノードがあるか否かを経路表を参照して確認する。
【００２９】
グループ識別子が同一であった場合、またはグループ識別子は異なるものの宛先ノードへの経路を持った近隣ノードがない場合、送信先決定部６はステップＳａ３またはステップＳａ４からステップＳａ５へ進む。ステップＳａ５において送信先決定部６は、宛先ノードを送信先ノードとして選択し、これをもって処理を終了する。
【００３０】
これに対して、宛先ノードとの直接通信が不可能であるか、または宛先ノードとの直接通信が可能であるがグループ識別子が異なっており、かつ宛先ノードへの経路を持った近隣ノードがある場合、送信先決定部６はステップＳａ２またはステップＳａ４からステップＳａ６へ進む。ステップＳａ６において送信先決定部６は、第１条件に合致する近隣ノードがあるか否かを確認する。ここで第１条件は、「送信ノードとグループ識別子が同じで、かつ送信ノードに対しノード階級値が上位。」という条件である。第１条件に合致する近隣ノードがあるならば、送信先決定部６はステップＳａ６からステップＳａ７へ進む。ステップＳａ７において送信先決定部６は、第１条件に合致する近隣ノードの１つを送信先ノードとして選定し、これをもって処理を終了する。
【００３１】
第１の条件に合致する近隣ノードがなかった場合、送信先決定部６はステップＳａ６からステップＳａ８へ進む。ステップＳａ８において送信先決定部６は、第２条件に合致する近隣ノードがあるか否かを確認する。ここで第２条件は、「送信ノードとグループ識別子が同じで、かつ送信ノードに対しノード階級値が同位。」という条件である。第２条件に合致する近隣ノードがあるならば、送信先決定部６はステップＳａ８からステップＳａ９へ進む。ステップＳａ９において送信先決定部６は、第２条件に合致する近隣ノードの１つを送信先ノードとして選定し、これをもって処理を終了する。
【００３２】
第１または第２の条件に合致する近隣ノードがなかった場合、送信先決定部６はステップＳａ８からステップＳａ１０へ進む。ステップＳａ１０において送信先決定部６は、第３条件に合致する近隣ノードがあるか否かを確認する。ここで第３条件は、「送信ノードとグループ識別子が違い、かつ宛先ノードに対しノード階級値が上位または同位。」という条件である。第３条件に合致する近隣ノードがあるならば、送信先決定部６はステップＳａ１０からステップＳａ１１へ進む。ステップＳａ１１において送信先決定部６は、第３条件に合致する近隣ノードの１つを送信先ノードとして選定し、これをもって処理を終了する。
【００３３】
第１乃至第３の条件のいずれにも合致する近隣ノードがなかった場合、送信先決定部６はステップＳａ１０からステップＳａ１２へ進む。ステップＳａ１２において送信先決定部６は、第４条件に合致する近隣ノードがあるか否かを確認する。ここで第４条件は、「送信ノードとグループ識別子が違い、かつ宛先ノードに対しノード階級値が下位。」という条件である。第４条件に合致する近隣ノードがあるならば、送信先決定部６はステップＳａ１２からステップＳａ１３へ進む。ステップＳａ１３において送信先決定部６は、第４条件に合致する近隣ノードの１つを送信先ノードとして選定し、これをもって処理を終了する。
【００３４】
第１乃至第４の条件のいずれにも合致する近隣ノードがなかった場合、送信先決定部６はステップＳａ１０からステップＳａ１４へ進む。ステップＳａ１４において送信先決定部６は、第１乃至第４の条件のいずれにも合致しない近隣ノード、すなわち、「送信ノードとグループ識別子が同じで、かつ送信ノードに対しノード階級値が下位。」という条件に合致する近隣ノードの１つを送信先ノードとして選定し、これをもって処理を終了する。
【００３５】
なお、ステップＳａ７，９，１１，１３，１４において各条件に合致する近隣ノードが複数ある場合には、送信元ノードのノード階級値により近いノード階級値を持つ近隣ノードを送信先ノードとして選定する。また、他の移動ノードから送信されてきたパケットを別の移動ノードへ送信する場合には、当該パケットを送信してきた移動ノードは送信先ノードの選定対象から除外する。
【００３６】
上記のようにして送信先決定部６が決定した送信先ノードは、通信制御部７に通知される。そうすると通信制御部７は、バッファ８に格納されたパケットを上記の送信先ノードに対して無線部１から送信する。
【００３７】
各移動ノードが以上のような動作を行うことにより実現される通信の具体例を以下に説明する。なおここでは、アドホックネットワークが図１に示す状態にあるときに、移動ノードｃから移動ノードｅへパケットを送る場合を例示する。
【００３８】
まず図１に示す状態では、物理的には｛ａ，ｄ｝，｛ａ，ｅ｝，｛ｃ，ｄ｝，｛ｃ，ｅ｝の組合わせで通信可能である。従って、移動ノードｃと移動ノードｅとは直接通信が可能である。しかし、移動ノードｃは第１グループに属するのに対し、移動ノードｅは第２グループに属するのであり、それぞれの移動ノードが持つグループ識別子は互いに異なる。そして移動ノードｃは、通信可能な移動ノードａ，ｂ，ｄ，ｅが存在するから、これらの移動ノードの中から送信先ノードを選定することになる。
【００３９】
移動ノードａは、移動ノードｃと同じグループ識別子「１」を持ち、またノード階級値が「１」であって移動ノードｃのノード階級値「２」に対して上位であるから、第１条件に合致する。移動ノードｂは、移動ノードｃと同じグループ識別子「１」を持ち、またノード階級値が「２」であって移動ノードｃのノード階級値「２」に対して同位であるから、第２条件に合致する。移動ノードｄは、移動ノードｃと異なるグループ識別子「２」を持ち、またノード階級値が「１」であって移動ノードｅのノード階級値「３」に対して上位であるから、第３条件に合致する。移動ノードｅは、移動ノードｃと異なるグループ識別子「２」を持ち、また宛先ノード自体であるからノード階級値が同位であって、第４条件に合致する。
【００４０】
かくして、第１条件に合致する近隣ノードとして移動ノードａがあるので、移動ノードｃはこの移動ノードａを送信先ノードとして選定し、図１に矢印で示すようにパケットを送信する。
【００４１】
移動ノードａは、移動ノードｃから送信されたパケットを受信したならば、その宛先は別の移動ノードｅとなっているために、このパケットを近隣ノードへ転送する  。
【００４２】
移動ノードａと移動ノードｅとは直接通信が可能である。しかし、移動ノードａは第１グループに属するのに対し、移動ノードｅは第２グループに属するのであり、それぞれの移動ノードが持つグループ識別子は互いに異なる。そして移動ノードａは、移動ノードｃ以外に通信可能な移動ノードｂ，ｄ，ｅが存在するから、これらの移動ノードの中から送信先ノードを選定することになる。
【００４３】
移動ノードｂは、移動ノードａと同じグループ識別子「１」を持ち、またノード階級値が「２」であって移動ノードａのノード階級値「１」に対して下位であるから、第１条件乃至第４条件のいずれにも合致しない。移動ノードｄは、移動ノードｃと異なるグループ識別子「２」を持ち、またノード階級値が「１」であって宛先ノードｅのノード階級値「３」に対して上位であるから、第３条件に合致する。移動ノードｅは、移動ノードｃと異なるグループ識別子「２」を持ち、また宛先ノード自体であってノード階級値が同位であるから、第３条件に合致する。
【００４４】
かくして、第１条件または第２条件に合致する近隣ノードはなく、第３条件に合致する近隣ノードとして移動ノードｄおよび移動ノードｅがある。移動ノードｄのノード階級値「１」は、移動ノードｅのノード階級値「３」よりも移動ノードａの階級値「１」に近い。従って、移動ノードａは移動ノードｄを送信先ノードとして選定し、図１に矢印で示すようにパケットを送信する。
【００４５】
移動ノードｄは、移動ノードａから送信されたパケットを受信したならば、その宛先は別の移動ノードｅとなっているために、このパケットを近隣ノードへ転送する  。
【００４６】
移動ノードｄと移動ノードｅとは直接通信が可能であり、かつ、ともに第２グループに属する。従って、移動ノードｄはこの移動ノードｅを送信先ノードとして選定し、図１に矢印で示すようにパケットを送信する。
【００４７】
以上のようにして、移動ノードｃから送出されたパケットが、移動ノードａおよび移動ノードｄを経由して、宛先とされた移動ノードｅへと到達する。このとき、図１からも明らかなように、グループを越えるパケットの伝送は、より上位のノード階級値を持つ移動ノードの間で行われるように経路が選定される。この結果、ノード階級値が下位の移動ノードを経由する経路が選定される確率が低減される。前述のように、職位が高い社員が使用する移動ノードほどノード階級値を上位に設定しておくなどして、信頼性の高い移動ノードに上位のノード階級値を設定しておけば、信頼性の低い移動ノードでパケットが中継される確率を低減できるのであり、セキュリティの向上が図れる。
【００４８】
また、送信元ノードと宛先ノードとが直接通信が可能であっても、両ノードが異なるグループであって、かつ送信元ノードよりもノード階級値が上位の近隣ノードがあるのならば、この近隣ノードにて中継をするようにしている。これにより、パケットを中継可能なノード階級値が上位の移動ノードを強制的に介在させてパケットの伝送が行われることになる。これにより、グループを越えてのパケットの送受を、そのパケットを送受する移動ノードよりも上位の移動ノードにてチェックすることが可能となる。
【００４９】
（第２の実施形態）
図４は本発明の第２の実施形態に係るアドホック通信システムの構成を示す図である。  
この図４に示すように第２の実施形態のアドホック通信システムは、第１の実施形態と同様に、それぞれが複数のグループのいずれかに属する複数の移動ノードにより構成される。ただし第２の実施形態においては、グループについても上下関係を定義し、この上下関係を判別可能なグループ階級値が各グループに設定される。このグループ階級値は、一意である必要はない。
【００５０】
図４においては、移動ノードａ〜ｆの６つの移動ノードを示している。そして移動ノードａ，ｂは第１グループに属し、移動ノードｃ，ｄは第２のグループに属し、移動ノードｅ，ｆは第３グループに属する。第１グループにはグループ識別子として「１」が付与され、かつグループ階級値が「１」に設定されていることとする。第２グループおよび出し３グループにはグループ識別子として「２」および「３」がそれぞれ付与され、かつグループ階級値が「２」に設定されていることとする。移動ノードａ，ｃ，ｅにはノード階級値として「１」が付与され、移動ノードｂ，ｄ，ｆにはノード階級値として「２」が付与されていることとする。図４においては、各移動ノードに関するグループ識別子、ノード階級値およびグループ階級値を、「グループ識別子．グループ階級値：ノード階級値」の形態にて図示している。
【００５１】
図５は図４中の移動ノードとして利用される通信装置の構成を示す機能ブロック図である。なお、図５において図２と同一部分には同一符号を付し、その詳細な説明は省略する。  
この図５に示すように通信装置は、無線部１、経路探索部２、経路表記憶部３、グループ識別子記憶部４、ノード階級値記憶部５、通信制御部７、バッファ８、インタフェース部９、グループ階級値記憶部１０および送信先決定部１１を含む。すなわち第２の実施形態の通信装置は、第１の実施形態の通信装置における送信先決定部６に代えて送信先決定部１１を備えるとともに、グループ階級値記憶部１０を新たに追加したものである。
【００５２】
グループ階級値記憶部１０は、この通信装置が適用される移動ノードが属するグループのグループ階級値を記憶する。このグループ階級値記憶部１０としては、例えば半導体メモリを用いることができる。
【００５３】
送信先決定部１１は、経路表記憶部３、グループ識別子記憶部４およびノード階級値記憶部５に記憶された経路表、グループ識別子およびノード階級値の他、グループ階級値記憶部１０に記憶されたグループ階級値を考慮してパケットの送信先を決定する。この送信先決定部１１は、そのための処理を記述したプログラムをプロセッサに実行させることにより実現できる。
【００５４】
次に以上のように構成された第２の実施形態のアドホック通信システムの動作について説明する。  
第２の実施形態のアドホック通信システムは、概ね第１の実施形態のアドホック通信システムと同様に動作する。しかし第２の実施形態においては、各移動ノードでのパケットの送信先ノードの決定の処理が第１の実施形態とは異なっている。
【００５５】
図６は送信ノードの送信先決定部１１が送信先ノードを決定する処理手順を示したフローチャートである。なお、図６において図３と同一のステップは一部のみを図示しており、これらのステップには同一符号を付している。
【００５６】
図６に示すように送信先決定部１１は、ステップＳａ１乃至ステップＳａ９の処理は送信先決定部６と同様な処理を行う。そして、第１または第２の条件に合致する近隣ノードがなかった場合に送信先決定部１１は、以下に説明するような送信先決定部６とは異なる処理を行う。
【００５７】
第１または第２の条件に合致する近隣ノードがなかった場合、送信先決定部１１はステップＳａ８からステップＳｂ１へ進む。ステップＳｂ１において送信先決定部１１は、第５条件に合致する近隣ノードがあるか否かを確認する。ここで第５条件は、「送信ノードとグループ識別子が違い、送信ノードに対しグループ階級値が上位で、かつ宛先ノードに対しノード階級値が上位または同位。」という条件である。第５条件に合致する近隣ノードがあるならば、送信先決定部１１はステップＳｂ１からステップＳｂ２へ進む。ステップＳｂ２において送信先決定部１１は、第５条件に合致する近隣ノードの１つを送信先ノードとして選定し、これをもって処理を終了する。
【００５８】
第１、第２および第５の条件のいずれにも合致する近隣ノードがなかった場合、送信先決定部１１はステップＳｂ１からステップＳｂ３へ進む。ステップＳｂ３において送信先決定部１１は、第６条件に合致する近隣ノードがあるか否かを確認する。ここで第６条件は、「送信ノードとグループ識別子が違い、送信ノードに対しグループ階級値が上位で、かつ宛先ノードに対しノード階級値が下位。」という条件である。第６条件に合致する近隣ノードがあるならば、送信先決定部１１はステップＳｂ３からステップＳｂ４へ進む。ステップＳｂ４において送信先決定部１１は、第６条件に合致する近隣ノードの１つを送信先ノードとして選定し、これをもって処理を終了する。
【００５９】
第１、第２、第５および第６の条件のいずれにも合致する近隣ノードがなかった場合、送信先決定部１１はステップＳｂ３からステップＳｂ５へ進む。ステップＳｂ５において送信先決定部１１は、第７条件に合致する近隣ノードがあるか否かを確認する。ここで第７条件は、「送信ノードとグループ識別子が違い、送信ノードに対しグループ階級値が同位で、かつ宛先ノードに対しノード階級値が上位または同位。」という条件である。第７条件に合致する近隣ノードがあるならば、送信先決定部１１はステップＳｂ５からステップＳｂ６へ進む。ステップＳｂ６において送信先決定部１１は、第７条件に合致する近隣ノードの１つを送信先ノードとして選定し、これをもって処理を終了する。
【００６０】
第１、第２、第５乃至第７の条件のいずれにも合致する近隣ノードがなかった場合、送信先決定部１１はステップＳｂ５からステップＳｂ７へ進む。ステップＳｂ７において送信先決定部１１は、第８条件に合致する近隣ノードがあるか否かを確認する。ここで第８条件は、「送信ノードとグループ識別子が違い、送信ノードに対しグループ階級値が同位で、かつ宛先ノードに対しノード階級値が下位。」という条件である。第８条件に合致する近隣ノードがあるならば、送信先決定部１１はステップＳｂ７からステップＳｂ８へ進む。ステップＳｂ８において送信先決定部１１は、第８条件に合致する近隣ノードの１つを送信先ノードとして選定し、これをもって処理を終了する。
【００６１】
第１、第２、第５乃至第８の条件のいずれにも合致する近隣ノードがなかった場合、送信先決定部１１はステップＳｂ７からステップＳｂ９へ進む。ステップＳｂ９において送信先決定部１１は、第９条件に合致する近隣ノードがあるか否かを確認する。ここで第９条件は、「送信ノードとグループ識別子が同じで、かつ送信ノードに対しノード階級値が下位。」という条件である。第９条件に合致する近隣ノードがあるならば、送信先決定部１１はステップＳｂ９からステップＳｂ１０へ進む。ステップＳｂ１０において送信先決定部１１は、第９条件に合致する近隣ノードの１つを送信先ノードとして選定し、これをもって処理を終了する。
【００６２】
第１、第２、第５乃至第９の条件のいずれにも合致する近隣ノードがなかった場合、送信先決定部１１はステップＳｂ９からステップＳｂ１１へ進む。ステップＳｂ１１において送信先決定部１１は、第１、第２、第５乃至第９の条件のいずれにも合致しない近隣ノード、すなわち、「送信ノードとグループ識別子が違い、かつ送信ノードに対しグループ階級値が下位。」という条件に合致する近隣ノードの１つを送信先ノードとして選定し、これをもって処理を終了する。
【００６３】
なお、ステップＳａ７，９およびステップＳｂ４，６，８，１０，１１において各条件に合致する近隣ノードが複数ある場合には、それらの近隣ノードのグループ階級値が異なるならば、送信元ノードのグループ階級値により近いグループ階級値を持つ近隣ノードを送信先ノードとして選定する。また、各条件に合致する複数の近隣ノードのグループ階級値が同じならば、送信元ノードのノード階級値により近いノード階級値を持つ近隣ノードを送信先ノードとして選定する。また、他の移動ノードから送信されてきたパケットを別の移動ノードへ送信する場合には、当該パケットを送信してきた移動ノードは送信先ノードの選定対象から除外する。
【００６４】
各移動ノードが以上のような動作を行うことにより実現される通信の具体例を以下に説明する。なおここでは、アドホックネットワークが図４に示す状態にあるときに、移動ノードｆから移動ノードａへパケットを送る場合を例示する。
【００６５】
まず図４に示す状態では、物理的には｛ａ，ｂ｝，｛ａ，ｃ｝，｛ａ，ｅ｝，｛ｂ，ｃ｝，｛ｃ，ｄ｝，｛ｃ，ｅ｝，｛ｃ，ｆ｝，｛ｅ，ｆ｝の組合わせで通信可能である。従って、移動ノードｆと移動ノードａとは直接通信が不可能である。しかし移動ノードｆは、移動ノードａ以外に通信可能な移動ノードｂ，ｃ，ｅが存在するから、これらの移動ノードの中から送信先ノードを選定することになる。
【００６６】
移動ノードｂは、移動ノードｆと異なるグループ識別子「１」を持ち、またグループ階級値が「１」であって移動ノードｆのグループ階級値「３」に対して上位であり、さらにノード階級値が「２」であって移動ノードａのノード階級値「１」に対して下位であるから、第６条件に合致する。移動ノードｃは、移動ノードｆと異なるグループ識別子「２」を持ち、またグループ階級値が「２」であって移動ノードｆのグループ階級値「３」に対して上位であり、さらにノード階級値が「１」であって移動ノードａのノード階級値「１」に対して同位であるから、第５条件に合致する。移動ノードｅは、移動ノードｆと同じグループ識別子「３」を持ち、またノード階級値が「１」であって移動ノードｆのノード階級値「２」に対して上位であるから、第１条件に合致する。
【００６７】
かくして、第１条件に合致する近隣ノードとして移動ノードｅがあるので、移動ノードｆはこの移動ノードｅを送信先ノードとして選定し、図４に矢印で示すようにパケットを送信する。
【００６８】
移動ノードｅは、移動ノードｆから送信されたパケットを受信したならば、その宛先は別の移動ノードａとなっているために、このパケットを近隣ノードのいずれかへ転送する。  
移動ノードｅと移動ノードａとは直接通信が可能である。しかし、移動ノードｅは第３グループに属するのに対し、移動ノードａは第１グループに属するのであり、それぞれの移動ノードが持つグループ識別子は互いに異なる。そして移動ノードｅは、移動ノードｆ以外に通信可能な移動ノードａ，ｃが存在するから、これらの移動ノードの中から送信先ノードを選定することになる。
【００６９】
移動ノードａは、移動ノードｅと異なるグループ識別子「１」を持ち、またグループ階級値が「１」であって移動ノードｅのグループ階級値「３」に対して上位であり、さらに宛先ノード自体であってノード階級値が同位であるから、第５条件に合致する。移動ノードｃは、移動ノードｅと異なるグループ識別子「２」を持ち、またグループ階級値が「２」であって移動ノードｅのグループ階級値「３」に対して上位であり、さらにノード階級値が「１」であって移動ノードａのノード階級値「１」に対して同位であるから、第５条件に合致する。
【００７０】
かくして、第１条件または第２条件に合致する近隣ノードはなく、第５条件に合致する近隣ノードとして移動ノードａおよび移動ノードｃがある。移動ノードｃのグループ階級値「２」は、移動ノードａのノード階級値「１」よりも移動ノードｅの階級値「３」に近い。従って、移動ノードｅは移動ノードｃを送信先ノードとして選定し、図４に矢印で示すようにパケットを送信する。
【００７１】
移動ノードｃは、移動ノードｅから送信されたパケットを受信したならば、その宛先は別の移動ノードａとなっているために、このパケットを近隣ノードのいずれかへ転送する。  
移動ノードｃと移動ノードａとは直接通信が可能である。しかし、移動ノードｃは第２グループに属するのに対し、移動ノードａは第１グループに属するのであり、それぞれの移動ノードが持つグループ識別子は互いに異なる。そして移動ノードｃは、移動ノードｅ以外に通信可能な移動ノードａ，ｂ，ｄ，ｆが存在するから、これらの移動ノードの中から送信先ノードを選定することになる。
【００７２】
移動ノードａは、移動ノードｃと異なるグループ識別子「１」を持ち、またグループ階級値が「１」であって移動ノードｃのグループ階級値「２」に対して上位であり、さらに宛先ノード自体であってノード階級値が同位であるから、第５条件に合致する。移動ノードｂは、移動ノードｃと異なるグループ識別子「１」を持ち、またグループ階級値が「１」であって移動ノードｃのグループ階級値「２」に対して上位であり、さらにノード階級値が「２」であって移動ノードａのノード階級値「１」に対して下位であるから、第６条件に合致する。移動ノードｂは、移動ノードｃと同じグループ識別子「２」を持ち、またノード階級値が「２」であって移動ノードｃのノード階級値「１」に対して下位であるから、第９条件に合致する。移動ノードｆは、移動ノードｃと異なるグループ識別子「３」を持ち、またグループ階級値が「３」であって移動ノードｃのグループ階級値に対して下位であるから、第１、第２、第５乃至第９の条件のいずれにも合致しない。
【００７３】
かくして、第１条件または第２条件に合致する近隣ノードはなく、第５条件に合致する近隣ノードとして移動ノードａがあるので、移動ノードｃはこの移動ノードａを送信先ノードとして選定し、図４に矢印で示すようにパケットを送信する。
【００７４】
以上のようにして、移動ノードｆから送出されたパケットが、移動ノードｅおよび移動ノードｃを経由して、宛先とされた移動ノードａへと到達する。このとき、図４からも明らかなように、グループを越えるパケットの伝送は、より上位のノード階級値を持つ移動ノードの間で行われるように経路が選定される。この結果、ノード階級値が下位の移動ノードを経由する経路が選定される確率が低減される。前述のように、職位が高い社員が使用する移動ノードほどノード階級値を上位に設定しておくなどして、信頼性の高い移動ノードに上位のノード階級値を設定しておけば、信頼性の低い移動ノードでパケットが中継される確率を低減できるのであり、セキュリティの向上が図れる。
【００７５】
また、送信元ノードと宛先ノードとが直接通信が可能であっても、両ノードが異なるグループであって、かつ送信元ノードよりもノード階級値が上位の近隣ノードがあるのならば、この近隣ノードにて中継をするようにしている。これにより、パケットを中継可能なノード階級値が上位の移動ノードを強制的に介在させてパケットの伝送が行われることになる。これにより、グループを越えてのパケットの送受を、そのパケットを送受する移動ノードよりも上位の移動ノードにてチェックすることが可能となる。  
さらに、グループの上下関係をも考慮した経路が選択される。
【００７６】
（第３の実施形態）
本発明の第３の実施形態に係るアドホック通信システムの構成は図１に示す第１の実施形態の構成と同様である。第３の実施形態が第１の実施形態とことなるのは、移動ノードとして利用される通信装置の構成である。
【００７７】
図７は第３の実施形態に係る通信装置の構成を示す機能ブロック図である。なお、図７において図２と同一部分には同一符号を付し、その詳細な説明は省略する。  
この図７に示すように通信装置は、無線部１、経路探索部２、経路表記憶部３、グループ識別子記憶部４、ノード階級値記憶部５、通信制御部７、バッファ８、インタフェース部９、優先度リスト記憶部１２および送信先決定部１３を含む。すなわち第３の実施形態の通信装置は、第１の実施形態の通信装置における送信先決定部６に代えて送信先決定部１３を備えるとともに、優先度リスト記憶部１２を新たに追加したものである。
【００７８】
優先度リスト記憶部１２は、ノード階級値によらずに優先的に送信先ノードとして選択するべき移動ノードに関して記述した優先度リストを記憶する。この優先度リスト記憶部１２としては、例えば半導体メモリを用いることができる。
【００７９】
優先度リストには、１つの優先指定を「グループ識別子：ノード識別子／優先度」のような形態で記述する。グループ識別子またはノード識別子で特定されるグループまたは移動ノードを、優先度で指定される形態で優先選択することを指定する。ノード識別子としては移動ノードの特定のために物理接続で用いられる識別子や、ネットワーク層で用いられる識別子などを用いることができる。なお、グループ識別子およびノード識別子のいずれかを考慮する必要が無い場合には「０」を入れる。優先度も本来は正整数で表わされるが、「０」を入れることもできる。優先度「０」は、その優先選択の指定を無効とすることを示すこととする。これを利用することで、優先選択の指定を一時的に無効化することが可能となる。
【００８０】
優先選択の形態およびその数は任意であって良い。この実施形態においては、優先選択の形態は３種類とし、それぞれの優先度を「１」〜「３」とする。優先度「１」は、他の全てのグループまたは移動ノードに優先することとする。従って、優先度「１」とする優先選択の対象は、ノード識別子により指定する。例えば、移動ノードｄを優先選択の対象とするのであれば、「０：ｄ／１」との記述を優先度リストに含める。優先度「２」は、ある条件に合致した近隣ノードが複数ある場合にその中の他の移動ノードに優先することとする。従って、優先度「２」とする優先選択の対象は、ノード識別子により指定する。例えば、移動ノードｂを優先選択の対象とするのであれば、「０：ｂ／２」との記述を優先度リストに含める。優先度「３」は、ある条件に合致した近隣ノードが属するグループが複数である場合に、特定のグループを他のグループに優先させることとする。従って、優先度「３」とする優先選択の対象は、グループ識別子により指定する。例えば、グループ識別子が「３」であるグループを他のグループより優先するのであれば、「３：０／３」との記述を優先度リストに含める。
【００８１】
送信先決定部１３は、経路表記憶部３、グループ識別子記憶部４およびノード階級値記憶部５に記憶された経路表、グループ識別子およびノード階級値の他、優先度リスト記憶部１２に記憶された優先度リストを考慮してパケットの送信先を決定する。この送信先決定部１３は、そのための処理を記述したプログラムをプロセッサに実行させることにより実現できる。
【００８２】
次に以上のように構成された第３の実施形態のアドホック通信システムの動作について説明する。  
第３の実施形態のアドホック通信システムは、概ね第１の実施形態のアドホック通信システムと同様に動作する。しかし第３の実施形態においては、各移動ノードでのパケットの送信先ノードの決定の処理が第１の実施形態とは異なっている。
【００８３】
図８は送信ノードの送信先決定部１３が送信先ノードを決定する処理手順を示したフローチャートである。なお、図８において図３と同一のステップは一部のみを図示しており、これらのステップには同一符号を付している。
【００８４】
図８に示すように送信先決定部１３は、ステップＳａ１乃至ステップＳａ５の処理は送信先決定部６と同様に行う。そして送信先決定部１３は、ステップＳａ２またはステップＳａ４からステップＳａ６へ進まず、ステップＳｃ１へ進む。ステップＳｃ１において送信先決定部１３は、優先度リストに優先度「１」として指定された移動ノードが近隣ノードとして存在しているか否かを確認する。ここで、該当する近隣ノードがない場合や、優先度リストに優先度「１」の指定がなされていないのならば、送信先決定部１３はステップＳｃ１からステップＳａ６に進む。そしてこの後に送信先決定部１３は、ステップＳａ６以降の処理を送信先決定部６と同様に行う。しかし、該当する近隣ノードがあるならば、送信先決定部１３はステップＳｃ１からステップＳｃ２へ進む。ステップＳｃ２において送信先決定部１３は、優先度「１」として指定された近隣ノードを送信先ノードとして選定し、これをもって図８の処理を終了する。
【００８５】
さて、第１の実施形態においては、第１乃至第４の条件のいずれかに合致する近隣ノードや第１乃至第４の条件のいずれにも合致しない近隣ノードが複数ある場合には、送信元ノードのノード階級値により近いノード階級値を持つ近隣ノードを送信先ノードとして選定することとしている。しかし第３の実施形態において送信先決定部１３は、上記のステップＳａ７，９，１１，１３，１４の処理を図９に示すような処理手順により行う。
【００８６】
図９は各条件に合致する近隣ノードのうちの１つを選定するための送信先決定部１３の処理手順を示すフローチャートである。  
ステップＳｄ１において送信先決定部１３は、各条件に合致した近隣ノードが複数あるか否かを確認する。そして該当近隣ノードが複数あるのならば、送信先決定部１３はステップＳｄ１からステップＳｄ２へ進む。ステップＳｄ２において送信先決定部１３は、該当近隣ノードの中に優先度「３」が設定されたグループに属するものがあるか否かを確認する。
【００８７】
優先度「３」が設定されたグループに属する近隣ノードがあった場合、送信先決定部１３はステップＳｄ２からステップＳｄ３へ進む。ステップＳｄ３において送信先決定部１３は、優先度「３」が設定されたグループに属する近隣ノードを全て抽出する。そしてステップＳｄ４において送信先決定部１３は、上記の抽出した近隣ノードが複数であるか否かを確認する。
【００８８】
ステップＳｄ３にて複数の近隣ノードが抽出されたのであれば、送信先決定部１３はステップＳｄ４からステップＳｄ５へ進む。また、優先度「３」が設定されたグループに属する近隣ノードがなかったならば、送信先決定部１３はステップＳｄ２からステップＳｄ５へ進む。ステップＳｄ５において送信先決定部１３は、これまでの条件に該当している近隣ノードの中に優先度「２」が設定されたものがあるか否かを確認する。優先度「２」が設定された近隣ノードがあったならば、送信先決定部１３はステップＳｄ５からステップＳｄ６へ進む。ステップＳｄ６において送信先決定部１３は、優先度「２」が設定された近隣ノードを送信先ノードとして選定し、これをもってこの図９に示す処理を終了する。一方、優先度「２」が設定された近隣ノードがないならば、送信先決定部１３はステップＳｄ５からステップＳｄ７へ進む。ステップＳｄ７において送信先決定部１３は、これまでの条件に該当している近隣ノードの中で送信元ノードのノード階級値により近いノード階級値を持つものを送信先ノードとして選定し、これをもってこの図９に示す処理を終了する。
【００８９】
なお、第１乃至第４の条件のいずれかに合致する近隣ノードや第１乃至第４の条件のいずれにも合致しない近隣ノードが１つのみであった場合、あるいはステップＳｄ３にて抽出された近隣ノードが１つのみであった場合には、送信先決定部１３はステップＳｄ１またはステップＳｄ４からステップＳｄ８へ進む。ステップＳｄ８において送信先決定部１３は、上記の１つのみの近隣ノードを送信先ノードとして選定し、これをもって図９の処理を終了する。
【００９０】
各移動ノードが以上のような動作を行うことにより実現される通信の具体例を以下に説明する。  
例えばアドホックネットワークが図１と同様な図１０に示す状態にあるときに、移動ノードｃから移動ノードｅへパケットを送る場合を例示する。そしてここでは、移動ノードｃの優先度リスト記憶部１２に記憶された優先度リストには、「０：ｄ／１」なる記述がなされていることとする。
【００９１】
本来は、第１の実施形態において説明したように、移動ノードｃは移動ノードａを送信先ノードとして選定し、この移動ノードａへ破線矢印で示すようにパケットを送る。しかしながらここでは、「０：ｄ／１」なる優先度リストの記述により、移動ノードｄが全ての移動ノードに対して優先されることが指定されている。このために移動ノードｃは移動ノードｄを送信先ノードとして選定し、この移動ノードｄへ実線矢印で示すようにパケットを送る。
【００９２】
図１１は、送信元ノードとなっている移動ノードｃにとって、第１条件に合致する近隣ノードとして移動ノードａ，ｂの２つがあった場合を例示する。そしてここでは、移動ノードｃの優先度リスト記憶部１２に記憶された優先度リストには、「０：ｂ／２」なる記述がなされていることとする。「０：ｂ／２」なる優先度リストの記述により、移動ノードｂは同一条件に合致した他の移動ノードに対して優先されることが指定されている。このために移動ノードｃは移動ノードｂを送信先ノードとして選定し、この移動ノードｂへ矢印で示すようにパケットを送る。
【００９３】
図１２は、送信元ノードとなっている移動ノードａにとって、第３条件に合致する近隣ノードとして移動ノードｂ，ｃの２つがあった場合を例示する。そしてここでは、移動ノードａの優先度リスト記憶部１２に記憶された優先度リストには、「３：０／３」なる記述がなされていることとする。「３：０／３」なる優先度リストの記述により、グループ識別子「３」のグループに属する移動ノードは、同一条件に合致した他のグループの移動ノードに対して優先されることが指定されている。このために移動ノードａはグループ識別子「３」のグループに属する移動ノードｃを送信先ノードとして選定し、この移動ノードｃへ矢印で示すようにパケットを送る。
【００９４】
かくして、基本的には第１の実施形態と同様な動作により第１の実施形態にて述べたような適切な経路選択が可能でありながら、例外的な経路を適宜に選択することも可能である。従って、適用先の組織の事情などに即した柔軟な運用が可能となる。
【００９５】
以上の各実施形態は、次のような変形実施が可能である。  
前記各実施形態において、送信元ノードと宛先ノードとが同一のグループに属する場合の当該グループ内での経路決定のアルゴリズムについては、既存のアドホックネットワークにて利用されているアルゴリズムを利用するなど、任意に変更が可能である。  
第３の実施形態は、第２の実施形態を基本とし、第３の実施形態にて第１の実施形態に対する変更と同様な変更を加えることにより実現することもできる。この場合、同じグループ階級値を持つ異なるグループにそれぞれ属する移動ノードが送信先ノードの候補としてある場合に、特定のグループに属する移動ノードを優先選定するような優先度を適用することもできる。
【００９６】
前記各実施形態においては、グループ識別子を、例えば第一部を「１．０」、第二部を「２．０」、第一部第一課を「１．１」、第一部第二課を「１．２」、第二部第一課を「２．１」、第二部第二課を「２．２」といった具合に、組織の系統を判別可能な形態に定めておいて、可能な限り組織の系統に従ったルートでパケット転送が行われるよう、各移動ノードが送信先ノードを決定するようにしても良い。
【００９７】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
【図面の簡単な説明】
【００９８】
【図１】本発明の第１の実施形態に係るアドホック通信システムの構成を示す図。
【図２】図１中の移動ノードとして利用される通信装置の構成を示す機能ブロック図。
【図３】送信ノードの送信先決定部６が送信先ノードを決定する処理手順を示したフローチャート。
【図４】本発明の第２の実施形態に係るアドホック通信システムの構成を示す図。
【図５】図４中の移動ノードとして利用される通信装置の構成を示す機能ブロック図。
【図６】送信ノードの送信先決定部１１が送信先ノードを決定する処理手順を示したフローチャート。
【図７】第３の実施形態に係る通信装置の構成を示す機能ブロック図。
【図８】送信ノードの送信先決定部１３が送信先ノードを決定する処理手順を示したフローチャート。
【図９】各条件に合致する近隣ノードのうちの１つを選定するための送信先決定部１３の処理手順を示すフローチャート。
【図１０】第３の実施形態による通信の具体例を示す図。
【図１１】第３の実施形態による通信の具体例を示す図。
【図１２】第３の実施形態による通信の具体例を示す図。
【符号の説明】
【００９９】
ａ，ｂ，ｄ，ｅ，ｆ…移動ノード、１…無線部、２…経路探索部、３…経路表記憶部、４…グループ識別子記憶部、５…ノード階級値記憶部、６…送信先決定部、７…通信制御部、８…バッファ、９…インタフェース部、１０…グループ階級値記憶部、１１…送信先決定部、１２…優先度リスト記憶部、１３…送信先決定部。
【図１】
2005142959.tif 000003
【図２】
2005142959.tif 000004
【図３】
2005142959.tif 000005
【図４】
2005142959.tif 000006
【図５】
2005142959.tif 000007
【図６】
2005142959.tif 000008
【図７】
2005142959.tif 000009
【図８】
2005142959.tif 000010
【図９】
2005142959.tif 000011
【図１０】
2005142959.tif 000012
【図１１】
2005142959.tif 000013
【図１２】
2005142959.tif 000014