(57)【要約】【課題】  複数のアドホックネットワークが融合、分離するような場合において、各アド  ホックノードが重複することなく通信に用いるノードの識別子を自動設定可能とする。【解決手段】  アドホックノード１０は、他のアドホックノードとの間でリンクを確立し、クラスターＩＤとクラスターノード数を相互に交換する。そして、受信したクラスターＩＤとクラスターノード数、自身のクラスターＩＤとクラスターノード数のそれぞれを比較し、結果に応じて自ノードＩＤと同じＩＤを持つアドホックノードに対してノードＩＤの収集指示メッセージを発行し、その応答メッセージからアドレス重複の検出対象となるアドレスを抽出し、異なるクラスターノードＩＤを持つアドホックノードに添付してノードＩＤ検出要求メッセージを送信する。これを受信したアドホックノードがアドレス重複検出処理を実行する。【選択図】      図４
2005252900.tif 000002
【特許請求の範囲】
【請求項１】
１以上のアドホックノードを包含する複数のアドホックネッワークから構成される通信システムであって、
前記それぞれのアドホックノードは、
他のアドホックノードとの間でリンクを確立し、アドホックネットワークを識別するクラスタ識別子とクラスタノード数を相互に交換し、受信したクラスタ識別子と自身のクラスタ識別子とを比較し、その結果に応じてアドレス重複検出処理を開始し、受信したクラスタノード数と自身のクラスタノード数とを比較し、その結果に応じて自クラスタノードと同じ識別子を持つアドホックノードに対してノード識別子の収集指示メッセージを発行し、前記ノード識別子の収集指示メッセージに対する応答を受信したときに添付されるノード識別子を格納し、当該格納されたノード識別子を添付して異なるクラスタ識別子を持つアドホックノードに対してノード識別子検出要求を送信し、
前記ノード識別子検出要求を受信した場合には、前記ノード識別子検出要求に添付されたノード識別子リストと自身のノード識別子とを比較して、前記アドホックネットワーク内でのアドレス重複検出処理を実行すること
を特徴とする通信システム。
【請求項２】
１以上のアドホックノードを包含する複数のアドホックネッワークから構成される通信システムにおける前記アドホックノードであって、
他のアドホックノードとの間でリンクを確立してアドホックネットワークを識別するクラスタ識別子とクラスタノード数を相互に交換するルーチングプロトコル処理部と、
受信したクラスタ識別子と自身のクラスタ識別子とを比較し、その結果に応じてアドレス重複検出処理の開始を指示し、更に、前記受信したクラスタノード数と自身のクラスタノード数とを比較し、当該比較結果に応じて前記ルーチングプロトコル処理部に、自クラスタノードと同じ識別子を持つアドホックノードに対してノード識別子の収集指示メッセージの発行を指示する比較演算部と、
前記ノード識別子の収集指示メッセージに対する応答を受信したときに添付されるノード識別子を格納し、当該格納されたノード識別子を添付して前記ルーチングプロトコル処理部を介し異なるクラスタ識別子を持つアドホックノードに対してノード識別子検出要求を送信し、一方、前記ノード識別子検出要求を受信したときに、当該ノード識別子検出要求に添付されたノード識別子リストと自身のノード識別子とを比較して前記アドホックネットワーク内でのアドレス重複検出処理を実行するアドレス重複検出部と、
を備えたことを特徴とするアドホックノード。
【請求項３】
１以上のアドホックノードを包含する複数のアドホックネッワークから構成される通信システムにおけるアドレス重複検出方法であって、
他のアドホックノードとの間でリンクを確立してアドホックネットワークを識別するクラスタ識別子とクラスタノード数を相互に交換するステップと、
受信したクラスタ識別子と自身のクラスタ識別子とを比較し、その結果に応じてアドレス重複検出処理の開始を指示し、更に、前記受信したクラスタノード数と自身のクラスタノード数とを比較し、当該比較結果に応じて自クラスタノードと同じ識別子を持つアドホックノードに対してノード識別子の収集指示メッセージの発行するステップと、
前記ノード識別子の収集指示メッセージに対する応答を受信したときに添付されるノード識別子を格納し、当該格納されたノード識別子を添付して異なるクラスタ識別子を持つアドホックノードに対してノード識別子検出要求を送信するステップと、
前記ノード識別子検出要求を受信したときに、当該ノード識別子検出要求に添付されたノード識別子リストと自身のノード識別子とを比較して前記アドホックネットワーク内でのアドレス重複検出処理を実行するステップと、
を有することを特徴とする通信システムにおけるアドレス重複検出方法。
【請求項４】
１以上のアドホックノードを包含する複数のアドホックネッワークから構成される通信システムにおいて、前記アドホックノードに用いられるプログラムであって、
他のアドホックネットワークノードとの間でリンクを確立してアドホックノードを識別するクラスタ識別子とクラスタノード数を相互に交換する処理と、
受信したクラスタ識別子と自身のクラスタ識別子とを比較し、その結果に応じてアドレス重複検出処理の開始を指示し、更に、前記受信したクラスタノード数と自身のクラスタノード数とを比較し、当該比較結果に応じて自クラスタノードと同じ識別子を持つアドホックノードに対しノード識別子の収集指示メッセージを発行する処理と、
前記ノード識別子の収集指示メッセージに対する応答を受信したときに添付されるノード識別子を格納し、当該格納されたノード識別子を添付して異なるクラスタ識別子を持つアドホックノードに対してノード識別子検出要求を送信する処理と、
前記ノード識別子検出要求を受信したときに、当該ノード識別子検出要求に添付されたノード識別子リストと自身のノード識別子とを比較して前記アドホックネットワーク内でのアドレス重複検出処理を実行する処理と、
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１以上のアドホックノードを包含する複数のアドホックネットワークから構成される通信システム、同システムにおけるアドレス重複検出方法、アドホックノード、プログラムに関する。
【背景技術】
【０００２】
アドホックネットワークにおいて、ＩＰアドレスのようなノードの識別子を自動設定する場合、アドレス重複検出（ＤＡＤ：Ｄｕｐｌｉｃａｔｅ  Ａｄｄｒｅｓｓ  Ｄｅｔｅｃｔｉｏｎ）を行い、ネットワーク内においてノードが一意に識別できるようにアドレスの重複を検出する必要がある。なぜなら、ネットワーク内で同じ識別子を持った複数のノードが存在してしまうと、識別子を元にした経路制御が正常に働かず、ノード間の通信が実行できないためである。
【０００３】
一般的には、前記したＤＡＤを実現する方式としてＳｔｒｏｎｇ  ＤＡＤやＷｅａｋ  ＤＡＤなどがある。例えば、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）を用いたリアクティブ型ルーチングプロトコルであるＡＯＤＶ（Ａｄ  ｈｏｃ  Ｏｎ−Ｄｅｍａｎｄ  Ｄｉｓｔａｎｃｅ  Ｖｅｃｔｏｒ  Ｒｏｕｔｉｎｇ）によるアドホックネットワークでは、Ｓｔｒｏｎｇ  ＤＡＤが利用される（例えば、非特許文献１参照）。Ｓｔｒｏｎｇ  ＤＡＤは単独のアドホックノードがアドホックネットワークに接続した場合にＤＡＤを行うことができるが、複数のアドホックノードからなるアドホックネットワーク同士が融合した場合のＤＡＤ処理が解決できていない（例えば、非特許文献２参照）。これに対し、Ｗｅａｋ  ＤＡＤは複数の識別子をノードに与えることにより、一方の識別子が重複していたとしても他方の識別子によりネットワーク内の経路制御を実現する（例えば非特許文献３、４参照）。
【非特許文献１】C. Perkins、E. Belding-Royer、S. Das、“Ad hoc On-Demand Distance Vector(AODV) Routing”、RFC3561、[２００４年３月１日閲覧]、インターネット＜URL：http://www.ietf.org/rfc/rfc3561.txt?number=3561＞
【非特許文献２】Charles E. Perkins,、Jari T. Malinen、Ryuji Wakikawa、Elizabeth M. Belding-Royer and Yuan Sun、“IP Address Autoconfiguration for Ad Hoc Networks”、 draft-ietf-manet-autoconf-01.txt、November 2001、[２００４年３月１日閲覧]、インターネット＜URL：http://www.cs.ucsb.edu/~ebelding/txt/autoconf.txt＞
【非特許文献３】Nitin H. Vaidya、“Weak Duplicate Address Detection in Mobile Ad Hoc Networks”、MobiHoc2002 、June 2002、[２００４年３月１日閲覧]、インターネット＜URL：http://citeseer.nj.nec.com/vaidya02weak.html＞
【非特許文献４】Jae-Hoon Jeong、Hyun-Wook Cha、Jung-Soo Park、Hyoung-Jun Kim、“Ad Hoc IP Address Autoconfiguration”、draft-jeong-adhoc-ip-addr-autoconf-01.txt、[２００４年３月１日閲覧]、インターネット＜URL：http://www.ietf.org/internet-drafts/draft-jeong-adhoc-ip-addr-autoconf-01.txt＞
【発明の開示】
【発明が解決しようとする課題】
【０００４】
複数のアドホックノードからなるアドホックネットワークにおいて、アドホックノードの識別子を自動生成させる場合、生成したアドレスがアドホックネットワーク内で一意に識別できるか否かをアドホックネットワーク内で検出する必要がある。
単独のアドホックノードがアドホックネットワークを接続した場合には、アドホックノードが他のアドホックノードと新たにリンクを確立したことをもって、ＤＡＤの契機とすればよいが、複数のアドホックネットワークが融合した場合には、融合したアドホックネットワーク内の全てのアドホックノードについてＤＡＤを行う必要があり、新たにリンクを確立していないノードに対してもＤＡＤの契機を与える必要がある。また、融合したアドホックネットワーク内の全てのアドホックノードがそれぞれｓｔｒｏｎｇ  ＤＡＤを行うとアドホックネットワーク内で膨大な通信帯域を消費することになる。
【０００５】
本発明は前記した事情に鑑みてなされたものであり、アドホックネットワークを一意に識別できる識別子とアドホックネットワーク内のクラスタノード数の情報により、複数のアドホックネットワークが融合し、あるいは分離するような場合においても各アドホックノードが重複することなく通信に用いるノードの識別子を自動設定可能とし、ＤＡＤ実行時のアドホックネットワーク内の通信帯域を削減することのできる、通信システム、同システムにおけるアドレス重複検出方法、アドホックノード、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
前記した課題を解決するために本発明は、１以上のアドホックノードを包含する複数のアドホックネッワークから構成される通信システムであって、前記それぞれのアドホックノードは、他のアドホックノードとの間でリンクを確立し、アドホックネットワークを識別するクラスタ識別子とクラスタノード数を相互に交換し、受信したクラスタ識別子と自身のクラスタ識別子とを比較し、その結果に応じてアドレス重複検出処理を開始し、受信したクラスタノード数と自身のクラスタノード数とを比較し、その結果に応じて自クラスタノードと同じ識別子を持つアドホックノードに対してノード識別子の収集指示メッセージを発行し、前記ノード識別子の収集指示メッセージに対する応答を受信したときに添付されるノード識別子を格納し、当該格納されたノード識別子を添付して異なるクラスタ識別子を持つアドホックノードに対してノード識別子検出要求を送信するルーチングプロトコル処理部を備え、前記ノード識別子検出要求を受信したアドホックノードは、前記ノード識別子検出要求に添付されたノード識別子リストと自身のノード識別子とを比較して前記アドホックネットワーク内でのアドレス重複検出処理を実行することを特徴とする。
【０００７】
また、本発明は、１以上のアドホックノードを包含する複数のアドホックネッワークから構成される通信システムにおける前記アドホックノードであって、他のアドホックネットワークノードとの間でリンクを確立してアドホックネットワークを識別するクラスタ識別子とクラスタノード数を相互に交換するルーチングプロトコル処理部と、受信したクラスタ識別子と自身のクラスタ識別子とを比較し、その結果に応じてアドレス重複検出処理の開始を指示し、更に、前記受信したクラスタノード数と自身のクラスタノード数とを比較し、当該比較結果に応じて前記ルーチングプロトコル処理部に、自クラスタノードと同じ識別子を持つアドホックノードに対してノード識別子の収集指示メッセージの発行を指示する比較演算部と、前記ノード識別子の収集指示メッセージに対する応答を受信したときに添付されるノード識別子を格納し、当該格納されたノード識別子を添付して前記ルーチングプロトコル処理部を介し異なるクラスタ識別子を持つアドホックノードに対してノード識別子検出要求を送信し、一方、前記ノード識別子検出要求を受信したときに、当該ノード識別子検出要求に添付されたノード識別子リストと自身のノード識別子とを比較して前記アドホックネットワーク内でのアドレス重複検出処理を実行するアドレス重複検出部と、を備えたことを特徴とする。
【０００８】
前記した構成において、アドホックネットワークを構成するアドホックノードは、アドホックネットワークを識別するための識別子であるクラスタ識別子と、アドホックネットワーク内のアドホックノード数を保持している。
アドホックノードにおけるルーチングプロトコル処理部は、リンクを確立したのと同時、もしくはリンク確立を検出したことを契機に、ルーチングプロトコルに従い、クラスタ識別子とクラスタノード数を他のアドホックノードのルーチングプロトコル処理部とやり取りを行う。続いて各ノードのルーチングプロトコル処理部は、自身のアドホックノードのクラスタ識別子と他のアドホックノードから受信したクラスタ識別子とを比較し、比較の結果クラスタ識別子が同一であればルーチングプロトコル処理を継続し、クラスタ識別子が異なっていればアドレス重複処理を開始する。更に、アドレス重複処理の開始を契機に自身のアドホックノードのクラスタノード数と他のアドホックノードから受信したクラスタノード数を比較し、比較の結果自クラスタノード数が他クラスタノード数より小さいもしくは同一の場合には自身のノード識別子と同じノード識別子を持つアドホックノードに対してノード識別子収集指示メッセージを、ルーチングプロトコルを用いて送信する。
【０００９】
そして、ノード識別子収集指示メッセージを受信したアドホックノードは、自ノード識別子を添付したノード識別子応答メッセージを、ノード識別子収集指示メッセージを送信したアドホックノードに送信する。一方、ノード識別子応答メッセージを受信したアドホックノードは、ノード識別子応答メッセージに添付されたノード識別子をノード識別子リストに格納し、ノード識別子リストを格納したノード識別子検出要求メッセージを異なるクラスタ識別子を持つアドホックノードに対してルーチングプロトコルを用いて送信する。
ノード識別子検出要求メッセージを受信したアドホックノードは、自ノード識別子とノード識別子検出要求メッセージに添付されたノード識別子リストとを比較することによりアドホックネットワーク内でのアドレス重複を検出する。
このように、リアクティブ型のルーチングプロトコルにアドホックネットワークを識別するクラスタ識別子とアドホックネットワークのクラスタノード数を用いることで複数のアドホックネットワークが融合した場合のアドレス重複検出処理を実現することができ、また、アドレス重複の検出対象となるアドレスを添付してノード識別子検出要求メッセージを送信するため、各アドホックノードがそれぞれＤＡＤ検出メッセージを送出する場合と比較して、アドホックネットワーク内の通信帯域を削減することができる。
【００１０】
また、本発明は、１以上のアドホックノードを包含する複数のアドホックネッワークから構成される通信システムにおけるアドレス重複検出方法であって、他のアドホックネットワークネットワークとの間でリンクを確立してアドホックノードを識別するクラスタ識別子とクラスタノード数を相互に交換するステップと、受信したクラスタ識別子と自身のクラスタ識別子とを比較し、その結果に応じてアドレス重複検出処理の開始を指示し、更に、前記受信したクラスタノード数と自身のクラスタノード数とを比較し、当該比較結果に応じて自クラスタノードと同じ識別子を持つアドホックノードに対してノード識別子の収集指示メッセージを発行するステップと、前記ノード識別子の収集指示メッセージに対する応答を受信したときに添付されるノード識別子を格納し、当該格納されたノード識別子を添付して異なるクラスタ識別子を持つアドホックノードに対してノード識別子検出要求を送信するステップと、前記ノード識別子検出要求を受信したときに、当該ノード識別子検出要求に添付されたノード識別子リストと自身のノード識別子とを比較して前記アドホックネットワーク内でのアドレス重複検出処理を実行するステップと、を有することを特徴とする。
【００１１】
また、本発明は、１以上のアドホックノードを包含する複数のアドホックネッワークから構成される通信システムにおいて、前記アドホックノードに用いられプログラムであって、他のアドホックノードとの間でリンクを確立してアドホックネットワークを識別するクラスタ識別子とクラスタノード数を相互に交換する処理と、受信したクラスタ識別子と自身のクラスタ識別子とを比較し、その結果に応じてアドレス重複検出処理の開始を指示し、更に、前記受信したクラスタノード数と自身のクラスタノード数とを比較し、当該比較結果に応じて自クラスタノードと同じ識別子を持つアドホックノードに対しノード識別子の収集指示メッセージを発行する処理と、前記ノード識別子の収集指示メッセージに対する応答を受信したときに添付されるノード識別子を格納し、当該格納されたノード識別子を添付して異なるクラスタ識別子を持つアドホックノードに対してノード識別子検出要求を送信する処理と、前記ノード識別子検出要求を受信したときに、当該ノード識別子検出要求に添付されたノード識別子リストと自身のノード識別子とを比較して前記アドホックネットワーク内でのアドレス重複検出処理を実行する処理と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、単独または複数のアドホックノードからなるアドホックネットワークが融合した場合でも、クラスタ識別子とクラスタノード数を導入することによってＤＡＤを実現することができ、アドホックノードが自動生成した場合でも、アドレスが重複することなくアドホックネットワーク内での通信が可能となる。また、本発明によれば、アドレス重複の検出対象となるアドレスを添付してノード識別子検出要求メッセージを送信するため、各アドホックノードがそれぞれＤＡＤ検出メッセージを送出する場合と比較して、アドホックネットワーク内の通信帯域を削減することができる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照しながら本発明の実施形態例について詳細に説明する。図１に、本発明に実施形態における通信システムのシステム構成の一例を示す。
図１中、符号１、２はアドホックネットワークである。符号１０、１１、１２、２０、２１、２２はアドホックノードである。本発明の実施形態では、アドホックネットワーク１、２ともにＩＰを使用した通信ネットワークとし、このため、ノード識別子はＩＰアドレスとなる。また、ルーチングプロトコルにはＡＯＤＶを用いた例を説明する。また、本発明の実施形態は、アドホックネットワーク１、２内のアドホックノード１０、１１、１２、２０、２１、２２間のリンクトポロジーによらずに有効であるが、ここでは、アドホックノード１０とアドホックノード１１、アドホックノード１０とアドホックノード１２、アドホックノード２０とアドホックノード２１、アドホックノード２１とアドホックノード２２、および、アドホックノード１０とアドホックノード２０がリンク確立したネットワーク構成で説明する。
【００１４】
図２は、本発明の実施形態におけるアドホックノードの内部構成を機能展開して示したブロック図である。本発明のアドホックノードは、リンク確立検出部１１１と、ルーチングプロトコル処理部１１２と、比較演算部１１３と、アドレス重複検出部１１４と、自アドホックノードにおけるクラスタ識別子（ＩＤ）およびアドホックネットワークのクラスタ数を格納する記憶部１１５と、ノード識別子リスト（以下、ＩＰアドレスリストという）を格納する記憶部１１６で構成される。
リンク確立検出部１１１は、他のアドホックネットワークノードとの間でリンクが確立したことを検出する機能を持ち、ルーチングプロトコル処理部１１２は、ＡＯＤＶプロトコルメッセージを交換し、リンクが確立した相手アドホックノードとの間でアドホックノードを識別するクラスタノードＩＤとクラスタノード数を相互に交換する他、後記するノードＩＤ検出要求メッセージ、あるいはノードＩＤ検出要求メッセージを送信する機能を持つ。また、比較演算部１１３は、相手アドホックノードから受信したクラスタノードＩＤと自身のクラスタノードＩＤとを比較し、その結果に応じてアドレス重複検出処理の開始を指示し、更に、受信したクラスタノード数と自身のクラスタノード数とを比較し、当該比較結果に応じてルーチングプロトコル処理部１１２に、自クラスタノードと同じＩＤを持つアドホックノードに対してノード識別子の収集指示メッセージの発行を指示する機能を持つ。
【００１５】
一方、アドレス重複検出部１１４は、クラスタノードＩＤの収集指示メッセージに対する応答を受信したときに添付されるクラスタノードＩＤを格納し、当該格納されたクラスタノードＩＤを添付してルーチングプロトコル処理部１１２を介して異なるクラスタノードＩＤを持つアドホックノードに対してノードＩＤ検出要求を送信し、一方、ノードＩＤ検出要求を受信したときに、当該ノードＩＤ検出要求に添付されたクラスタノードＩＤリストと自身のクラスタノードＩＤとを比較してアドホックネットワーク内でのアドレス重複検出処理を実行する機能を持つ。
なお、記憶部１１５、１１６には、それぞれ、自アドホックノードにおけるクラスタノードＩＤおよびアドホックネットワークのクラスタノード数、ＩＰアドレスリストのそれぞれが格納される。図５に、記憶部１１５、１１６にマッピングされたそれぞれのデータの一例が示されている。
【００１６】
図３に本発明の実施形態の動作の流れがフローチャートで示され、図４に動作シーケンス図が示されている。なお、図３に示すフローチャートは、本発明の実施形態のプログラムの処理手順も併せて示しており、また、図３、図４において重複して記されたステップ番号は同じ処理内容を示す。
以下、図３〜図５を参照しながら、図１、図２に示す本発明の実施形態の動作について詳細に説明する。
【００１７】
ここでは、アドホックネットワーク１とアドホックネットワーク２のアドホックノード１０とアドホックノード２０がリンク確立することによりアドレス重複検出処理を実行する動作について説明する。
まず、アドホックノード１０とアドホックノード２０がリンクを確立し（Ｓ３１）、このことを検出したリンク確立検出部１１１は、ルーチングプロトコルのやり取りを行うそれぞれのアドホックノード１０、２０が持つルーチングプロトコル処理部１１２を起動する。ルーチングプロトコル処理部１１２は、それぞれのアドホックノードのクラスタノードＩＤとクラスタノード数を添付してＡＯＤＶメッセージを交換することにより、アドホックノード１０はアドホックノード２０が保持するクラスタノードＩＤ（２０１）とクラスタノード数（２０２）を取得し、一方、アドホックノード２０は、アドホックノード１０が保持するクラスタノードＩＤ（１０１）とクラスタノード数（１０２）を取得する（Ｓ３２）。続いて、クラスタノードＩＤ（２０１）とクラスタノード数（２０２）を取得したアドホックノード１０は、比較演算部１１３で自クラスタノードＩＤ（１０１）とクラスタノードＩＤ（２０１）を比較し（Ｓ３３）、当該比較の結果、クラスタノードＩＤが同一であれば（Ｓ３３の“＝”の場合）、ルーチングプロトコル処理部１１２によるルーチングプロトコル処理を継続し（Ｓ３２）、クラスタノードＩＤが異なっていれば（Ｓ３３の“≠”の場合）、後記するアドレス重複検出処理を開始する（Ｓ３４）。
【００１８】
次に、アドレス重複検出処理に関し、ノード識別子収集指示からノード識別子検出要求に至る処理について説明する。
まず、比較演算部１１３は、アドレス重複検出処理の開始を契機に（Ｓ３４）、アドホックノード１０内において自クラスタノード数１０２と受信したクラスタノード数２０２を比較し（Ｓ３５）、当該比較の結果、自クラスタノード数１０２がクラスタノード数２０２より小さい、もしくは同一の場合（Ｓ３５の“α≧β”の場合）には、自クラスタノードＩＤ（１０１）と同じクラスタノードＩＤを持つアドホックノード１１、１２に対してノードＩＤ収集指示メッセージをルーチングプロトコル処理部１１２による制御の下で送信する（Ｓ３６）。一方、当該比較の結果、自クラスタノード数１０２がクラスタノード数２０２より大きい場合（Ｓ３５の“α＜β”の場合）には、Ｓ３７へ進む。
ノードＩＤ収集指示を受信したアドホックノード１１、１２は、自ノードのＩＰアドレスを格納したノードＩＤ応答メッセージを、ノードＩＤ収集指示メッセージを送信したアドホックノード１０に送信する。ノード識別子応答メッセージを受信したアドホックノード１０は（Ｓ３７“ノードＩＤ応答受信”）、ノードＩＤ応答メッセージに添付されたクラスタノードＩＤを記憶部１１６にＩＰアドレスリスト１０３（図５）として格納し（Ｓ３８）、このＩＰアドレスリスト１０３を添付したノードＩＤ検出要求メッセージを、異なるクラスタノードＩＤ（２０１）を持つアドホックノード２０、２１、２２に対してルーチングブロトコル処理部１１２による制御の下、送信する（Ｓ３９）。
【００１９】
ノードＩＤ検出要求メッセージを受信したアドホックノード２０、２１、２２は、アドレス重複検出部１１４で、自ノードのクラスタノードＩＤとノードＩＤ検出要求メッセージに添付されたＩＰアドレスリスト１０３とを比較することによりアドホックネットワーク２０、２１、２２内でのアドレス重複検出処理を実行する。
なお、アドホックノード１０が他のアドホックノードからノードＩＤ検出要求を受信した場合は（Ｓ３７“ノードＩＤ検出要求”）、アドレス重複検出部１１４で、自ノードのクラスタノードＩＤとノードＩＤ検出要求メッセージに添付されたＩＰアドレスリストとを比較することによりアドホックネットワーク２０、２１、２２内でのノードＩＤ重複検出処理を実行することができる（Ｓ４０）。
【００２０】
以上説明のように、本発明の実施形態によれば、アドホックネットワーク１、２を構成するアドホックノード１０、１１、１２、２０、２１、２２のそれぞれは、アドホックノードを識別するための識別子であるクラスタノードＩＤと、アドホックネットワーク内のアドホックノード数を保持している。
例えば、アドホックノード１０におけるルーチングプロトコル処理部１１２は、リンク確立検出部１１１で他のアドホックノードとリンクを確立したのと同時、もしくはリンク確立を検出したことを契機に、ルーチングプロトコルに従い、クラスタノードＩＤとクラスタノード数を他のアドホックノードのルーチングプロトコル処理部とやり取りを行う。続いて各ノードのルーチングプロトコル処理部１１２は、自身のアドホックノードのクラスタノードＩＤと他のアドホックノードから受信したクラスタノードＩＤとを比較演算部１１３で比較し、比較結果、クラスタノードＩＤが同一であればルーチングプロトコル処理を継続し、クラスタノードＩＤが異なっていればアドレス重複処理を開始する。比較演算部１１３は、更に、アドレス重複処理の開始を契機に、自身のアドホックノードのクラスタノード数と他のアドホックノードから受信したクラスタノード数とを比較し、比較の結果、自クラスタノード数が他クラスタノード数より小さいもしくは同一の場合には、自身のクラスタノードＩＤと同じクラスタノードＩＤを持つアドホックノード２０、２１、２２に対してノードＩＤ収集指示メッセージを、ルーチングプロトコルを用いて送信する。
【００２１】
続いて、ノードＩＤ収集指示を受信したアドホックノード２０、２１、２２は、自クラスタノードＩＤを添付したノードＩＤ応答メッセージを、ノードＩＤ収集指示メッセージを送信したアドホックノード１０に送信する。一方、ノードＩＤ応答メッセージを受信したアドホックノード１０は、ノードＩＤ応答メッセージに添付されたクラスタノードＩＤをＩＰアドレスリスト１０３に格納し、このＩＰアドレスリストを添付したノードＩＤ検出要求メッセージを、異なるクラスタノードＩＤを持つアドホックノード２０、２１、２２に対してルーチングプロトコルを用いて送信する。
ノードＩＤ検出要求メッセージを受信したアドホックノード２０、２１、２２は、自ノードのクラスタノードＩＤとノードＩＤ検出要求メッセージに添付されたＩＰアドレスリスト１０３とを比較することにより、アドホックネットワーク２内でのアドレス重複を検出することができる。
このように、本発明によれば、リアクティブ型のルーチングプロトコルにアドホックネットワークを識別するクラスタノードＩＤとアドホックネットワークのクラスタノード数を用いることで複数のアドホックネットワークが融合した場合のアドレス重複検出処理を実現することができ、また、アドレス重複の検出対象となるアドレスを添付してノードＩＤ検出要求メッセージを送信するため、各アドホックノードがそれぞれアドレス重複検出メッセージを送出する場合と比較して、アドホックネットワーク内の通信帯域を削減することができる。
【００２２】
なお、図２に示す、リンク確立検出部１１１、ルーチングプロトコル処理部１１２、比較演算部１１３と、アドレス重複検出部１１４のそれぞれで実行される手順をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより本発明の通信システムおよびアドホックノードが実現されるものとする。ここでいうコンピュータシステムとは、ＯＳや周辺機器等のハードウェアを含むものである。
【図面の簡単な説明】
【００２３】
【図１】本発明の実施形態における通信システムの構成の一例を示す図である。
【図２】本発明の実施形態におけるアドホックノードの構成の一例を示す図である。
【図３】本発明の実施形態におけるアドホックノードの動作フローチャートである。
【図４】本発明の実施形態における通信システムの動作シーケンス図である。
【図５】図２に示す記憶部のデータ構造の一例を示す図である。
【符号の説明】
【００２４】
１、２                              アドホックネットワーク、
１０、１１、１２、２０、２１、２２  アドホックノード、
１１１                              リンク確立検出部
１１２                              ルーチングプロトコル処理部
１１３                              比較演算部
１１４                              アドレス重複検出部
１１５、１１６                      記憶部
【図１】
2005252900.tif 000003
【図２】
2005252900.tif 000004
【図３】
2005252900.tif 000005
【図４】
2005252900.tif 000006
【図５】
2005252900.tif 000007