(57)【要約】無線ネットワークに含まれる他の通信端末について、その通信端末との通信に要する転送回数を示す制御情報を送受信し、受信した制御情報をもとに、他の通信端末のそれぞれについて、当該通信端末を宛先とする場合に最初にデータを送信する第１転送先となる通信端末を示すルーティング情報を作成し、そのルーティング情報に基づいてデータ送信をおこない、制御情報は、当該制御情報を自通信端末に送信した通信端末を示す送信元端末識別情報と、データ送信の宛先となる通信端末を示す端末識別情報と、宛先となる通信端末から自通信端末まで制御情報を送信するのに要した転送回数と、を含み、データ送信の宛先を自通信端末とする制御情報を所定の時間間隔で発信するとともに、他の通信端末から受信した制御情報の送信元端末識別情報を自通信端末の識別情報に書き換え、転送回数に１を加算して転送する。
2004086698.tif 000002
【特許請求の範囲】
【請求項１】
無線ネットワークを構築する通信端末であって、
前記無線ネットワークに接続された他の通信端末について、該通信端末との通信に要する転送回数を示す制御情報を送受信する制御情報送受信手段と、
受信した前記制御情報をもとに、他の通信端末のそれぞれについて、当該通信端末を宛先とする場合に最初にデータを送信する第１転送先となる通信端末を示すルーティング情報を作成するルーティング情報作成手段と、
前記ルーティング情報に基づいてデータ送信をおこなうデータ送信手段と、
を備え、
前記制御情報は、当該制御情報を自通信端末に送信した通信端末を示す送信元端末識別情報と、データ送信の宛先となる通信端末を示す端末識別情報と、該宛先となる通信端末から自通信端末まで制御情報を送信するのに要した転送回数と、を含み、
前記制御情報送受信手段は、データ送信の宛先を自通信端末とする制御情報を所定の時間間隔で発信するとともに、他の通信端末から受信した制御情報の送信元端末識別情報を自通信端末の識別情報に書き換え、前記転送回数に１を加算して転送することを特徴とする通信端末。
【請求項２】
前記ルーティング情報は、データ送信の宛先となる通信端末を示す端末識別情報と、当該通信端末を宛先とする場合に最初にデータを送信する第１転送先となる通信端末を示す第１転送先端末識別情報と、前記データ送信の宛先となる通信端末との通信に要する転送回数の情報とを登録したことを特徴とする請求の範囲第１項に記載の通信端末。
【請求項３】
前記ルーティング情報作成手段は、受信した制御情報に含まれる端末識別情報がルーティグ情報に登録されていない場合に、該制御情報に含まれる端末識別情報、送信元端末識別情報および転送回数を、ルーティング情報に端末識別情報、第１転送先端末識別情報および転送回数としてそれぞれ登録することを特徴とする請求の範囲第２項に記載の通信端末。
【請求項４】
前記ルーティング情報作成手段は、受信した制御情報に含まれる端末識別情報がルーティング情報にすでに登録されている場合に、該制御情報に含まれる転送回数とルーティング情報に登録されている端末識別情報に対応する転送回数とを比較して、該制御情報に含まれる転送回数が小さい場合に、該ルーティング情報に登録されている第１転送先端末識別情報および転送回数を該制御情報に含まれる送信元端末識別情報および転送回数により更新することを特徴とする請求の範囲第３項に記載の通信端末。
【請求項５】
前記制御情報送受信手段は、前記ルーティング情報に登録された端末識別情報、第１転送先端末識別情報および転送回数の情報を取得し、該転送回数に１を加算して転送することを特徴とする請求の範囲第４項に記載の通信端末。
【請求項６】
前記制御情報送受信手段は、前記制御情報に含まれる転送回数に１を加算した値が所定の値を越えた場合に、該制御情報を破棄することを特徴とする請求の範囲第５項に記載の通信端末。
【請求項７】
無線ネットワークを構築する通信端末が通信をおこなう通信方法であって、
前記無線ネットワークに接続された他の通信端末について、該通信端末との通信に要する転送回数を示す制御情報を送受信する制御情報送受信工程と、
受信した前記制御情報をもとに、他の通信端末のそれぞれについて、当該通信端末を宛先とする場合に最初にデータを送信する第１転送先となる通信端末を示すルーティング情報を作成するルーティング情報作成工程と、
前記ルーティング情報に基づいてデータ送信をおこなうデータ送信工程と、
を含み、
前記制御情報は、当該制御情報を自通信端末に送信した通信端末を示す送信元端末識別情報と、データ送信の宛先となる通信端末を示す端末識別情報と、該宛先となる通信端末から自通信端末まで制御情報を送信するのに要した転送回数と、を含み、
前記制御情報送受信工程は、データ送信の宛先を自通信端末とする制御情報を所定の時間間隔で発信するとともに、他の通信端末から受信した制御情報の送信元端末識別情報を自通信端末の識別情報に書き換え、前記転送回数に１を加算して転送することを特徴とする通信方法。
【請求項８】
前記ルーティング情報は、データ送信の宛先となる通信端末を示す端末識別情報と、当該通信端末を宛先とする場合に最初にデータを送信する第１転送先となる通信端末を示す第１転送先端末識別情報と、前記データ送信の宛先となる通信端末との通信に要する転送回数の情報とを登録したことを特徴とする請求の範囲第７項に記載の通信方法。
【請求項９】
前記ルーティング情報作成工程は、受信した制御情報に含まれる端末識別情報がルーティング情報に登録されていない場合に、該制御情報に含まれる端末識別情報、送信元端末識別情報および転送回数を、ルーティング情報に端末識別情報、第１転送先端末識別情報および転送回数としてそれぞれ登録することを特徴とする請求の範囲第８項に記載の通信方法。
【請求項１０】
前記ルーティング情報作成工程は、受信した制御情報に含まれる端末識別情報がルーティング情報にすでに登録されている場合に、該制御情報に含まれる転送回数とルーティング情報に登録されている端末識別情報に対応する転送回数とを比較して、該制御情報に含まれる転送回数が小さい場合に、該ルーティング情報に登録されている第１転送先端末識別情報および転送回数を該制御情報に含まれる送信元端末識別情報および転送回数により更新することを特徴とする請求の範囲第９項に記載の通信方法。
【請求項１１】
前記制御情報送受信工程は、前記ルーティング情報に登録された端末識別情報、第１転送先端末識別情報および転送回数の情報を取得し、該転送回数に１を加算して転送することを特徴とする請求の範囲第１０項に記載の通信方法。
【請求項１２】
前記制御情報送受信工程は、前記制御情報に含まれる転送回数に１を加算した値が所定の値を越えた場合に、該制御情報を破棄することを特徴とする請求の範囲第１１項に記載の通信方法。
【発明の詳細な説明】
【技術分野】  この発明は、無線ネットワークを構築する通信端末および無線ネットワークを構築する通信端末が通信をおこなう通信方法に関し、特に、無線ネットワークを構成する通信端末の移動や通信端末のネットワークへの新たな接続などがあった場合でも、データの送信ルートの最適化を効率的におこなうことのできる通信端末および通信方法に関するものである。
【背景技術】  従来、無線ネットワークの一種であり、基地局などのインフラストラクチャに依存せずに、無線で相互接続できる通信端末により構成されたアドホックネットワークを介して、データの送受信をおこなう技術が広く知られている。
アドホックネットワークに接続される各通信端末は、他の通信端末宛のデータを中継する機能を備えている。そのため、たとえデータの宛先である通信端末までの距離が、無線電波の届かない距離であって、直接データを送信することが不可能であったとしても、いくつかの通信端末によりデータが中継されることで、宛先である通信端末までデータを送信することができる。
この技術では、通信端末がデータを送信する場合に、宛先となる通信端末までの通信ルートを確保する必要がある。そのため、データを送信する通信端末は、他の不特定の通信端末に対して制御情報を送信する。そして、その制御情報を受信した通信端末は、送信元の通信端末と自通信端末との間のデータの送信ルートの情報を制御情報に登録した後、他の不特定の通信端末に対して制御情報を送信する。
このようにして、通信端末間で制御情報が次々に送信され、宛先の通信端末にまで制御情報が達すると、送信元の通信端末から宛先の通信端末までのデータの送信ルートが確立され、制御情報に登録された送信ルート情報に基づいて、データの送信がおこなわれる。
ところが、アドホックネットワークにおいては、データの送信ルートに含まれる通信端末が、無線通信が可能な範囲から逸脱したり、電源が遮断されたなどの原因により、アドホックネットワークから接続解除となり、データ送信ができなくなるような状況が生じる。その場合、特許文献１に代表される従来技術では、データを送信できなくなったことを検知して、再度制御情報を送信することにより新しい送信ルートを確保する。
ただし、この従来技術では、宛先の通信端末が移動して、より少ない中継回数でデータの送信がおこなえる状況になった場合でも、以前確保した送信ルートが利用できる限り、データの送信ルートの更新をおこなうことができないという問題があった。そこで、特許文献２には、中継をおこなう中継通信端末と宛先の通信端末との間で制御情報を周期的に送信し、宛先の通信端末が移動した場合に、移動先の近傍にある中継通信端末との間の接続を確立する無線アドホック端末が開示されている。
【特許文献１】  特開２０００−２５２９９２号公報
【特許文献２】  特開２０００−３４１３２３号公報
しかしながら、上述した特許文献２の従来技術では、周期的に送信される制御情報に基づいて通信ルートが更新されるのは、宛先の通信端末とその宛先の通信端末に最後にデータを中継する中継通信端末との間のみであり、その他の送信ルートの最適化をおこなうことができないという問題があった。
すなわち、アドホックネットワークにおいては、宛先の通信端末だけでなく、中継通信端末も自由に移動するが、中継通信端末の移動の結果、より中継回数の少ない効率的な送信ルートが生じた場合でも、それを利用できないという問題があった。
また、アドホックネットワークに通信端末が新たに接続された場合にも、中継回数のより少ないデータの送信ルートが生じ得るが、そのような送信ルートの探索を効率的におこなうことができないという問題があった。
この発明は、上述した従来技術による問題点を解消するためになされたものであり、無線ネットワークを構成する通信端末の移動や無線ネットワークへの通信端末の新たな接続があった場合でも、データの送信ルートの最適化を効率的におこなうことのできる通信端末および通信方法を提供することを目的とする。
【発明の開示】
上述した課題を解決し、目的を達成するため、本発明は、無線ネットワークを構築する通信端末であって、前記無線ネットワークに接続された他の通信端末について、該通信端末との通信に要する転送回数を示す制御情報を送受信する制御情報送受信手段と、受信した前記制御情報をもとに、他の通信端末のそれぞれについて、当該通信端末を宛先とする場合に最初にデータを送信する第１転送先となる通信端末を示すルーティング情報を作成するルーティング情報作成手段と、前記ルーティング情報に基づいてデータ送信をおこなうデータ送信手段と、を備え、前記制御情報は、当該制御情報を自通信端末に送信した通信端末を示す送信元端末識別情報と、データ送信の宛先となる通信端末を示す端末識別情報と、該宛先となる通信端末から自通信端末まで制御情報を送信するのに要した転送回数と、を含み、前記制御情報送受信手段は、データ送信の宛先を自通信端末とする制御情報を所定の時間間隔で発信するとともに、他の通信端末から受信した制御情報の送信元端末識別情報を自通信端末の識別情報に書き換え、前記転送回数に１を加算して転送することを特徴とする。
また、本発明は、無線ネットワークを構築する通信端末が通信をおこなう通信方法であって、前記無線ネットワークに接続された他の通信端末について、該通信端末との通信に要する転送回数を示す制御情報を送受信する制御情報送受信工程と、受信した前記制御情報をもとに、他の通信端末のそれぞれについて、当該通信端末を宛先とする場合に最初にデータを送信する第１転送先となる通信端末を示すルーティング情報を作成するルーティング情報作成工程と、前記ルーティング情報に基づいてデータ送信をおこなうデータ送信工程と、を含み、前記制御情報は、当該制御情報を自通信端末に送信した通信端末を示す送信元端末識別情報と、データ送信の宛先となる通信端末を示す端末識別情報と、該宛先となる通信端末から自通信端末まで制御情報を送信するのに要した転送回数と、を含み、前記制御情報送受信工程は、データ送信の宛先を自通信端末とする制御情報を所定の時間間隔で発信するとともに、他の通信端末から受信した制御情報の送信元端末識別情報を自通信端末の識別情報に書き換え、前記転送回数に１を加算して転送することを特徴とする。
かかる発明によれば、無線ネットワークに含まれる他の通信端末について、その通信端末との通信に要する転送回数を示す制御情報を送受信し、受信した制御情報をもとに、他の通信端末のそれぞれについて、当該通信端末を宛先とする場合に最初にデータを送信する第１転送先となる通信端末を示すルーティング情報を作成し、そのルーティング情報に基づいてデータ送信をおこない、制御情報は、当該制御情報を自通信端末に送信した通信端末を示す送信元端末識別情報と、データ送信の宛先となる通信端末を示す端末識別情報と、宛先となる通信端末から自通信端末まで制御情報を送信するのに要した転送回数と、を含み、データ送信の宛先を自通信端末とする制御情報を、その制御情報に含まれる転送回数に１を加算した後に、所定の時間間隔で発信するとともに、他の通信端末から受信した制御情報の送信元端末識別情報を自通信端末の識別情報に書き換え、転送回数に１を加算して転送することとしたので、無線ネットワークを構成する通信端末の移動や通信端末のネットワークへの新たな接続などがあった場合でも、効率的にデータの送信ルートの最適化をおこなうことができる。
【図面の簡単な説明】  第１図は、本実施の形態に係る通信端末の機能的構成を示すブロック図であり、第２図は、ルーティングテーブル、制御情報、送信データの各データ構造を説明するための設定を示す図であり、第３図は、通信端末のルーティングテーブルのデータ構造を示す図であり、第４図は、制御情報および送信データのデータ構造を示す図であり、第５図は、制御情報を通信端末の周辺にある他の通信端末に送信する処理の処理手順を示すフローチャートであり、第６図は、制御情報に基づいてルーティングテーブルを作成／更新する作成／更新処理の処理手順を示すフローチャートであり、第７図は、データを宛先通信端末に送信する送信処理の処理手順を示すフローチャートであり、第８図は、他の通信端末からデータを受信する受信処理の処理手順を示すフローチャートであり、第９図は、送信されたデータを他の通信端末に転送するデータの転送処理の処理手順を示すフローチャートであり、第１０図は、データの送信ルートを構成していた通信端末が移動した場合の一例を示す図であり、第１１図は、データの送信ルートを構成していた通信端末が移動した場合に新たなデータの送信ルートを確立する処理の処理手順を示すフローチャートであり、第１２図は、データの送信ルートが確立された場合のルーティングテーブルの変化を示す図である。
【発明を実施するための最良の形態】  以下、添付図面を参照して、この発明に係る通信端末の好適な実施の形態を詳細に説明する。本実施の形態では、無線ネットワークの一種であるアドホックネットワークに対して本発明を適用した場合を示すこととする。
まず最初に、本実施の形態に係る通信端末の機能的構成について説明する。第１図は、本実施の形態に係る通信端末の機能的構成を示すブロック図である。この通信端末は、例えば、無線で相互に接続することのできるパーソナルコンピュータ、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）、携帯電話などの端末である。
同図に示すように、この通信端末は、無線送受信処理部２０、データ送受信部２１、制御情報送受信部２２、ルーティングテーブル作成／更新処理部２３、記憶部２４、表示部２６、入力部２７および制御部２８を有する。
無線送受信処理部２０は、複数の通信端末から構成されるアドホックネットワークに自端末を接続させ、データや制御情報などを他の通信端末との間で無線で送受信させる処理をおこなう処理部である。
データ送受信部２１は、他の通信端末へのデータの送受信を無線送受信部２０を介しておこなう送受信部である。制御情報送受信部２２は、データの送信ルートを確立するための制御情報の送受信を無線送受信部２０を介しておこなう送受信部である。
ルーティングテーブル作成／更新処理部２３は、記憶部２４に記憶されたルーティングテーブル２５を作成し、受信した制御情報を基にしてルーティングテーブル２５を更新する処理部である。記憶部２４は、ハードディスク装置やフラッシュメモリなどの記憶デバイスであり、データを送信する送信ルートに係るルーティング情報が登録されたルーティングテーブル２５を記憶している。ルーティングテーブル２５については、後に詳しく説明する。
表示部２６は、液晶ディスプレイなどの表示デバイスであり、入力部２７は、キーボードやペン型入力装置などの入力デバイスである。制御部２８は、この通信端末を全体制御する制御部である。
次に、ルーティングテーブル２５、制御情報、送信データの各データ構造について説明する。第２図は、ルーティングテーブル２５、制御情報、送信データの各データ構造を説明するための設定を示す図であり、第３図は、通信端末のルーティングテーブル２５のデータ構造を示す図であり、第４図は、制御情報および送信データのデータ構造を示す図である。
第２図に示すように、無線通信機能を有する通信端末（端末Ａ〜端末Ｅ）は、アドホックネットワークを構成している。同図において、端末Ａと端末Ｂとは、電波の到達範囲内にあり、無線によるデータの送受信が直接可能である。また、端末Ｂと端末Ｃ、端末Ｃと端末Ｄ、および端末Ｃと端末Ｅとが同様にデータの送受信が直接可能な範囲にあることを示している。
ここで、端末Ａと端末Ｃとは、電波の到達範囲外にあり、直接データの送受信をおこなうことはできない。しかし、端末Ｂがデータの中継をおこなうことにより、端末Ａと端末Ｃとがデータを送受信することができるようになる。端末Ａと端末Ｃとがデータの送受信をおこなう場合には、データの送信ルートを決定するためにルーティングテーブル２５が参照される。
第３図に示すように、ルーティングテーブル２５には、宛先端末を識別する識別情報、宛先端末にデータを送信する際に、各通信端末が始めにデータを送信する第１転送先端末を識別する識別情報、および、宛先端末までデータが送信される過程で各通信端末によりデータが転送される転送回数からなるルーティング情報が登録されている。ルーティング情報の保持の形態は、第３図に示したものに限られず、その他のさまざまな形態で保持することとしてもよい。
第３図では、宛先端末を識別する識別情報として、宛先端末の端末名（Ａ〜Ｅ）が、また、第１転送先端末を識別する識別情報として、第１転送先端末の端末名（Ａ〜Ｅ）が用いられている。識別情報は、通信端末を識別できる情報であれば、端末名に限定されない。
たとえば、端末Ａのルーティングテーブル２５では、宛先端末が端末Ａである場合は、端末Ａは自端末であるので、第１転送先端末は空欄であり、転送回数は０に設定される。また、宛先端末が端末Ｂである場合は、第１転送先端末は端末Ｂで、宛先端末そのものであり、転送回数は１となる。
さらに、宛先端末が端末Ｃである場合は、第１転送先端末は端末Ｂであり、転送回数は２となる。以下同様に、端末Ｄおよび端末Ｅが宛先端末の場合には、第１転送先端末はＢであり、転送回数は３となる。他の通信端末のルーティングテーブル２５の場合も同様である。
端末Ａから端末Ｄにデータを送信する場合には、宛先端末は端末Ｄとなり、データを送信する端末Ａは、自端末のルーティングテーブル２５から宛先端末が端末Ｄである行を検索する。宛先端末が端末Ｄである行には、第１転送先端末として端末Ｂが登録されているので、端末Ａは、端末Ｂにデータを送信する。
そのデータを受信した端末Ｂは、端末Ａと同様にして、自端末のルーティングテーブル２５から宛先端末が端末Ｄである行を検索する。宛先端末が端末Ｄである行には、第１転送先端末として端末Ｃが登録されているので、端末Ｂは、端末Ｃにデータを送信する。
データを受信した端末Ｃは、自端末のルーティングテーブル２５から宛先端末が端末Ｄである行を検索する。宛先端末が端末Ｄである行には、第１転送先端末として端末Ｄが登録されており、かつ、端末Ｄは宛先端末であるので、端末Ｃは、端末Ｄにデータを送信し、端末Ａから端末Ｄへのデータの送信が完了する。その後、端末Ｄは、受信完了メッセージを送信元端末に返信する。
このようにして、各通信端末は所望の通信端末にデータを送信することができる。ここで、ルーティングテーブル２５は経由した通信端末すべての情報を登録するのではなく、各宛先端末に対する第１転送先端末および転送回数の情報のみを登録するので、記憶デバイスの容量を圧迫することないという利点がある。
ここに示したルーティングテーブル２５は、固定的なものではなく、定期的に更新されるものである。たとえば、端末Ｃの電源が遮断されたり、端末Ｃが電波が到達する通信可能な範囲から逸脱した場合などは、端末Ｃを経由してのデータの送信は不可能になる。
そこで、本実施の形態では、ルーティングテーブル２５を更新するための制御情報を各通信端末が所定の時間毎に送信し、ルーティングテーブル２５の状態を新しいものに保つことにより、各通信端末の状態の変化に対応できるようにしている。
第４図（ａ）に示すように、制御情報は、制御情報を通信端末に送信し、かつ、データ送信の際にはデータを送信する通信端末の第１転送先となりうる送信元端末を識別する送信元端末識別情報と、データ送信の際に宛先端末となりうる通信端末を識別する端末識別情報と、制御情報が各通信端末により転送された転送回数と、を有する。これらの識別情報は通信端末の端末名であるが、各通信端末を識別できる情報であれば、端末名に限定されない。
第４図（ａ）の例では、制御情報が始めに端末Ｄにより送信され、端末Ｃ、端末Ｂにより転送されて端末Ａにより受信された場合を示している。この場合の端末Ｂから送信された制御情報は、宛先端末が端末Ｄのときは、転送回数は３であり、送信元端末は端末Ｂであることを示す。
端末Ａは、この制御情報の宛先端末の端末名から自端末のルーティングテーブル２５内の宛先端末の端末名を検索し、該当する転送回数を取得する。そして、制御情報に含まれる転送回数と、ルーティングテーブル２５の転送回数とを比較して、制御情報に含まれる転送回数がより小さい場合には、ルーティングテーブル２５の第１転送先端末の端末名を制御情報の送信元端末の端末名に変更する。
これにより、ルーティングテーブル２５には、宛先端末までデータを送信する場合に、転送回数がより少ない、効率的なデータの送信ルートが記憶されることになる。
第４図（ｂ）には、このようにして確立されたデータの送信ルートにしたがい、送信されるデータのデータ構造が示されている。同図に示すように、送信データは、データのＩＤ、宛先端末を識別する識別情報、データの送信元端末を識別する識別情報、ホップ数および送信するデータを有する。この例では、識別情報は通信端末の端末名であるが、通信端末を識別できる情報であれば、端末名に限定されない。
データのＩＤは、同一端末に同じデータが複数回送信された場合に、それを検知してデータを破棄するために用いられる識別情報である。ここでは、ＩＤとして１０２８という番号が設定されている。ただし、番号に限らず、データを識別できる情報であればＩＤとして用いることができる。
ホップ数は、各通信端末によりデータが転送されるごとに１ずつ加算されるものである。このホップ数があらかじめ設定された最大ホップ数を越えた場合は、そのデータは破棄される。
同図の例では、送信元端末である端末Ａから宛先端末である端末Ｄにデータが送信され、端末Ｄによりそのデータが受信された場合の送信データのデータ構造を示している。端末Ａから端末Ｄにデータが送信される間に、ホップ数は３まで増加する。
次に、制御情報を通信端末の周辺にある他の通信端末に送信する処理の処理手順について説明する。第５図は、制御情報を通信端末の周辺にある他の通信端末に送信する処理の処理手順を示すフローチャートである。
同図に示すように、まず、制御情報を送信する通信端末は、ルーティングテーブル２５から宛先端末名と転送回数の情報を読み出して（ステップＳ５０１）、読み出した転送回数に１を加算する（ステップＳ５０２）。ここで読み出される宛先端末名および転送回数は、自端末名および転送回数を含むものである。
そして、加算の結果、転送回数があらかじめ定められた最大転送回数よりも大きくなった宛先端末の情報があるかどうかを調べる（ステップＳ５０３）。転送回数が最大転送回数よりも小さな場合には（ステップＳ５０３，Ｎｏ）、読み出した宛先端末名と、１が加算された転送回数、および送信元端末名に自端末名を設定した情報を、ルーティングテーブル２５に反映するとともに（ステップＳ５０４）、その情報を制御情報として周辺にある通信端末に送信する（ステップＳ５０５）。ここで送信される制御情報は、自端末から始めて発信され、宛先端末名が自端末名である制御情報を含むものである。
転送回数が最大転送回数よりも大きい宛先端末があった場合には（ステップＳ５０３，Ｙｅｓ）、該当する宛先端末の情報、すなわち、宛先端末名、第１転送先端末名および転送回数の情報をルーティングテーブル２５から削除するとともに、送信する制御情報からもそれらの情報を削除する（ステップＳ５０８）。これにより、通信端末が無線通信が可能な範囲から逸脱した場合や、電源が遮断された場合などに、当該通信端末の情報を削除する。
削除後は、ステップＳ５０４に移行して、転送回数が最大転送回数よりも小さかった宛先端末の情報、すなわち、宛先端末名と、１が加算された転送回数、および送信元端末名に自端末名を設定した情報をルーティングテーブルに反映するとともに、その情報を制御情報としてずべての隣接端末へ送信する。制御情報を送信後、自端末の転送回数を「０」に設定し（ステップＳ５０６）、次回の制御情報の送信処理を開始するまで、所定の時間待機する（ステップＳ５０７）。
次に、制御情報に基づいてルーティングテーブル２５を作成／更新する作成／更新処理の処理手順について説明する。第６図は、制御情報に基づいてルーティングテーブル２５を作成／更新する作成／更新処理の処理手順を示すフローチャートである。
同図に示すように、まず、他の通信端末から送信された制御情報を受信するのを待ち受ける（ステップＳ６０１）。そして、制御情報を受信したかどうかを調べ（ステップＳ６０２）、受信しなかった場合には（ステップＳ６０２，Ｎｏ）、ステップＳ６０１に戻って、制御情報の受信を待ち受ける。
制御情報を受信した場合には（ステップＳ６０２，Ｙｅｓ）、制御情報に含まれる転送回数が、あらかじめ設定された最大転送回数よりも大きいかどうかを調べ（ステップＳ６０３）、最大転送回数よりも大きい場合には（ステップＳ６０３，Ｙｅｓ）、受信した制御情報を破棄して（ステップＳ６１０）、ステップＳ６０１に移行する。
制御情報に含まれる転送回数が、最大転送回数よりも大きくない場合には（ステップＳ６０３，Ｎｏ）、受信した制御情報からその制御情報を始めに送信した通信端末の識別情報である宛先端末名を取得する（ステップＳ６０４）。そして、その宛先端末名がルーティングテーブル２５の宛先端末としてすでに登録されているかどうかを調べ（ステップＳ６０５）、登録されている場合には（ステップＳ６０５，Ｙｅｓ）、ルーティングテーブル２５から宛先端末名に対応する転送回数の情報を取得する（ステップＳ６０６）。
続いて、制御情報に含まれる転送回数が、ルーティングテーブル２５から取得した転送回数よりも小さいかどうかを調べ（ステップＳ６０７）、小さくない場合には（ステップＳ６０７，Ｎｏ）、その制御情報を破棄して（ステップＳ６１４）、ステップＳ６０１に移行する。
制御情報に含まれる転送回数が、ルーティングテーブル２５から取得した転送回数よりも小さい場合には（ステップＳ６０７，Ｙｅｓ）、ルーティングテーブル２５の第１転送先端末名を制御情報に含まれる送信元端末名に更新し（ステップＳ６０８）、その後、第１転送先端末名に対応するルーティングテーブル２５の転送回数を、制御情報に含まれる転送回数に更新する（ステップＳ６０９）。
ステップＳ６０５において、制御情報に含まれる宛先端末名がルーティングテーブル２５の宛先端末としてまだ登録されていない場合には（ステップＳ６０５，Ｎｏ）、その宛先端末名を新たにルーティングテーブル２５に追加する（ステップＳ６１１）。
そして、制御情報に含まれる送信元端末名をルーティングテーブル２５に第１転送先端末名として追加し（ステップＳ６１２）、その後、制御情報に含まれる転送回数をルーティングテーブル２５に追加する（ステップＳ６１３）。追加後は、ステップＳ６０１に移行して、再び制御情報が送られてくるのを待ち受ける。
次に、データを宛先端末に送信する送信処理の処理手順について説明する。第７図は、データを宛先端末に送信する送信処理の処理手順を示すフローチャートである。
同図に示すように、データを送信する宛先端末が指定された後、ルーティングテーブル２５を検索して（ステップＳ７０１）、該当する宛先端末がルーティングテーブル２５に登録されているかどうかを調べる（ステップＳ７０２）。宛先端末が登録されていない場合には（ステップＳ７０２，Ｎｏ）、データ送信失敗通知をデータ送信をおこなったアプリケーションソフトウェアなどに出力し（ステップＳ７０８）、データの送信処理を終了する。
宛先端末が登録されている場合には（ステップＳ７０２，Ｙｅｓ）、データを送信する宛先端末に対応する第１転送先端末にデータを送信する（ステップＳ７０３）。その後、データを転送する通信端末あるいは宛先端末からのメッセージを待ち受け（ステップＳ７０４）、受信完了メッセージを受信したかどうかを調べる（ステップＳ７０５）。受信完了メッセージを受信した場合には（ステップＳ７０５，Ｙｅｓ）、データ送信をおこなったアプリケーションソフトウェアなどに送信成功通知を出力する（ステップＳ７０６）。
受信完了メッセージを受信しなかった場合には（ステップＳ７０５，Ｎｏ）、送信失敗メッセージを受信したかどうかを調べる（ステップＳ７０７）。そして、送信失敗メッセージを受信した場合には（ステップＳ７０７，Ｙｅｓ）、ステップＳ７０８に移行して、データ送信失敗通知をデータ送信をおこなったアプリケーションソフトウェアなどに出力して、データの送信処理を終了する。
送信失敗メッセージを受信しなかった場合には（ステップＳ７０７，Ｎｏ）、メッセージ待ち受けがタイムアウトになったかどうかを調べる（ステップＳ７０９）。そして、タイムアウトである場合には（ステップＳ７０９，Ｙｅｓ）、ステップＳ７０８に移行して、データ送信失敗通知をデータ送信をおこなったアプリケーションソフトウェアなどに出力して、データの送信処理を終了する。タイムアウトになっていない場合には（ステップＳ７０９，Ｎｏ）、ステップＳ７０４に移行して、引き続きメッセージを待ち受ける。
次に、他の通信端末からデータを受信する受信処理の処理手順について説明する。第８図は、他の通信端末からデータを受信する受信処理の処理手順を示すフローチャートである。
同図に示すように、まず、送信されたデータを受け付け（ステップＳ８０１）、送信されたデータ内に含まれているホップ数が最大ホップ数より大きいかどうかを調べる（ステップＳ８０２）。最大ホップ数より大きい場合には（ステップＳ８０２，Ｙｅｓ）、受け付けたデータを破棄して（ステップＳ８０８）、そのままこの受信処理を終了する。
最大ホップ数より大きくない場合には（ステップＳ８０２，Ｎｏ）、そのデータがすでに受信したデータであるかどうかをデータのＩＤをもとに調べる（ステップＳ８０３）。すでに受信していた場合には（ステップＳ８０３，Ｙｅｓ）、ステップＳ８０８に移行して、データを破棄し、そのままこの受信処理を終了する。
まだ受信していなかった場合には（ステップＳ８０３，Ｎｏ）、そのデータの宛先が自端末であるかどうかを調べる（ステップＳ８０４）。データの宛先が自端末である場合には（ステップＳ８０４，Ｙｅｓ）、送信されたデータを取り込み（ステップＳ８０５）、受信完了メッセージを送信元の通信端末に送信し（ステップＳ８０６）、受信処理を終了する。
データの宛先が自端末ではない場合には（ステップＳ８０４，Ｎｏ）、データの転送処理をおこない（ステップＳ８０７）、データの受信処理を終了する。このデータの転送処理は、このあとに第９図で説明される。
次に、送信されたデータを他の通信端末に転送するデータの転送処理について説明する。第９図は、送信されたデータを他の通信端末に転送するデータの転送処理の処理手順を示すフローチャートである。
同図に示すように、まず、データを受信した後、ルーティングテーブル２５を検索して（ステップＳ９０１）、データの宛先端末に対応する第１転送先端末がルーティングテーブル２５に登録されているかどうかを調べる（ステップＳ９０２）。
宛先端末に対応する第１転送端末が登録されていない場合には（ステップＳ９０２，Ｎｏ）、ステップＳ９０５に移行して、ルーティングテーブル２５が更新されるのを待機し（ステップＳ９０５，Ｎｏ）、データの宛先端末に対応する第１転送先端末がルーティングテーブル２５に登録されているかどうかを再度調べる。
ルーティングテーブル２５が更新された場合には（ステップＳ９０５，Ｙｅｓ）、データの送信回数に１を追加し（ステップＳ９０６）、その送信回数があらかじめ設定された最大送信回数より大きくなったかどうかを調べる（ステップＳ９０７）。
送信回数が最大送信回数より大きくない場合には（ステップＳ９０７，Ｎｏ）、ステップＳ９０１に移行して、再度ルーティングテーブル２５の検索をおこなう。送信回数が最大送信回数よりも大きい場合には（ステップＳ９０７，Ｙｅｓ）、転送失敗メッセージを送信元に送信し（ステップＳ９０８）、データの転送処理を終了する。
ステップＳ９０２において、データの宛先端末に対応する第１転送先端末がルーティングテーブル２５に登録されている場合には（ステップＳ９０２，Ｙｅｓ）、データをその第１転送端末に送信し（ステップＳ９０３）、通信が成功したかどうかを調べる（ステップＳ９０４）。
通信が成功した場合には（ステップＳ９０４，Ｙｅｓ）、データの転送処理を終了する。通信が成功しなかった場合には（ステップＳ９０４，Ｎｏ）、ステップＳ９０２において宛先端末に対応する第１転送端末がない場合と同様に、ルーティングテーブル２５が更新されるのを待機する（ステップＳ９０５，Ｎｏ）。
ルーティングテーブル２５が更新された場合には（ステップＳ９０５，Ｙｅｓ）、送信回数に１を追加する（ステップＳ９０６）。そして、その送信回数があらかじめ設定された最大送信回数より大きくなったかどうかを調べる（ステップＳ９０７）。
送信回数が最大送信回数より大きくない場合には（ステップＳ９０７，Ｎｏ）、ステップＳ９０１に移行して、再度ルーティングテーブル２５の検索をおこなう。送信回数が最大送信回数よりも大きい場合には（ステップＳ９０７，Ｙｅｓ）、転送失敗メッセージを送信元に送信し（ステップＳ９０８）、データの転送処理を終了する。
次に、データの送信ルートを構成していた通信端末が移動した場合に、新たなデータの送信ルートを確立する処理について説明する。第１０図は、データの送信ルートを構成していた通信端末が移動した場合の一例を示す図である。
第１０図（ａ）に示すように、端末Ａと端末Ｂとは電波の到達範囲内にあり、データの送受信が直接可能である。また、端末Ｂと端末Ｃおよび端末Ｃと端末Ｄとが同様にデータの送受信が直接可能な範囲にあることを示している。ここで、端末Ｃが第１０図（ｂ）に示す位置に移動して、端末Ａおよび端末Ｄと直接データの送受信をおこなうことが可能になったものとする。
端末Ａから端末Ｄにデータを送信する場合を考えると、端末Ａ、端末Ｂ、端末Ｃおよび端末Ｄというデータの送信ルートよりも、端末Ａ、端末Ｃおよび端末Ｄというデータの送信ルートはより少ないデータの転送回数でデータを送信でき、効率的である。
本実施の形態で説明される通信端末では、このような送信ルートが生じた場合でも、各通信端末が定期的に制御情報を送信することにより、その変化に柔軟に対応することができるという利点がある。
次に、データの送信ルートを構成していた通信端末が移動した場合に新たなデータの送信ルートを確立する処理の処理手順について説明する。第１１図は、データの送信ルートを構成していた通信端末が移動した場合に新たなデータの送信ルートを確立する処理の処理手順を示すフローチャートである。
同図に示すように、端末Ｃが第１０図（ｂ）に示された位置に移動すると、端末Ｃは定期的に制御情報を送信しているため、所定の時間待機した後に（ステップＳ１１０１）、制御情報を周辺の通信端末に送信する（ステップＳ１１０２）。そして、端末Ａは、端末Ｃと通信可能な範囲内にいるので、端末Ｃが送信した制御情報を受信する（ステップＳ１１０３）。
続いて、端末Ａは、受信した制御情報に基づいて自端末のルーティングテーブル２５を更新する（ステップＳ１１０４）。この更新処理は、第６図で示したものと同様である。その後、端末Ａも定期的に制御情報を送信しているため、所定の時間待機した後に（ステップＳ１１０５）、更新したルーティングテーブル２５に基づいて、制御情報を周辺の通信端末に送信する（ステップＳ１１０６）。端末Ｃはその制御情報を受信し（ステップＳ１１０７）、自端末のルーティングテーブル２５を更新する（ステップＳ１１０８）。
第１２図は、データの送信ルートが確立された場合のルーティングテーブル２５の変化を示す図である。同図に示すように、第１２図（ｂ）および第１２図（ｄ）にそれぞれ示した端末Ｂのルーティングテーブル２５は変化しない。
端末Ａのルーティングテーブル２５では、更新の結果、宛先端末が端末Ｃおよび端末Ｄである場合に、第１転送先端末は端末Ｃとなり、転送回数が減少する。端末Ｃのルーティングテーブル２５では、更新の結果、宛先端末が端末Ａである場合に、第１転送先端末が端末Ａとなり、転送回数が減少する。
また、端末Ｄのルーティングテーブル２５では、更新の結果、宛先端末が端末Ａである場合に、第１転送先端末である端末Ａの転送回数が減少する。このように、より転送回数の少ないデータの送信ルートを効率的に探し出し、データの送信に反映させることができる。
このように、本実施の形態では、定期的に制御情報を各通信端末が送信することにより、各通信端末が有するルーティングテーブル２５の情報を新しいものに保つことができ、通信端末の移動や通信端末のネットワークへの新たな接続などがあった場合でも、データの送信ルートを効率的に確保することができる。また、制御情報に転送回数の情報を含むことにより、データの転送回数が少ないルートを探索することができ、データの送信ルートの最適化を図ることができる。
なお、本実施の形態では、本発明を無線ネットワークの一種であるアドホックネットワークに対して適用した場合を示したが、本発明はこれに限定されるものではなく、他の無線ネットワークにも適用することができる。
以上説明したように、本発明によれば、無線ネットワークに含まれる他の通信端末について、その通信端末との通信に要する転送回数を示す制御情報を送受信し、受信した制御情報をもとに、他の通信端末のそれぞれについて、当該通信端末を宛先とする場合に最初にデータを送信する第１転送先となる通信端末を示すルーティング情報を作成し、そのルーティング情報に基づいてデータ送信をおこない、制御情報は、当該制御情報を自通信端末に送信した通信端末を示す送信元端末識別情報と、データ送信の宛先となる通信端末を示す端末識別情報と、宛先となる通信端末から自通信端末まで制御情報を送信するのに要した転送回数と、を含み、データ送信の宛先を自通信端末とする制御情報を、その制御情報に含まれる転送回数に１を加算した後に、所定の時間間隔で発信するとともに、他の通信端末から受信した制御情報の送信元端末識別情報を自通信端末の識別情報に書き換え、転送回数に１を加算して転送することとしたので、無線ネットワークを構成する通信端末の移動や無線ネットワークへの通信端末の新たな接続があった場合でも、データの送信ルートの最適化を効率的におこなうことができるという効果を奏する。
【産業上の利用可能性】  以上のように、本発明に係る通信端末および通信方法は、パーソナルコンピュータ、ＰＤＡあるいは携帯電話などの、移動可能な通信端末により構成される無線ネットワークを介してデータの送受信をおこなう無線ネットワークシステムに適している。
【図１】
2004086698.tif 000003
【図２】
2004086698.tif 000004
【図３】
2004086698.tif 000005
【図４】
2004086698.tif 000006
【図５】
2004086698.tif 000007
【図６】
2004086698.tif 000008
【図７】
2004086698.tif 000009
【図８】
2004086698.tif 000010
【図９】
2004086698.tif 000011
【図１０】
2004086698.tif 000012
【図１１】
2004086698.tif 000013
【図１２】
2004086698.tif 000014
【国際調査報告】
2004086698.tif 000015
2004086698.tif 000016