(57)【要約】【課題】通信品質を劣化させることなく、余分なトラフィックを抑制すること。【解決手段】通信端末の記憶部２１が、宛先端末に対してデータを送信する場合の通信経路に係る情報をルーティングテーブル２１ａとして記憶し、ユーザデータ送受信部２２が、記憶部２１に情報が記憶された通信経路が他の通信経路に切り替えられた場合に、同一の宛先端末に対する複数の通信経路を介したデータ送信の実行制御をおこない、当該通信に係る状況に応じてデータ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替える。【選択図】        図３
2008060696.tif 000002
【特許請求の範囲】
【請求項１】
データの通信経路に係る情報に基づいてデータ通信をおこなう通信端末装置であって、
通信宛先となる装置に対してデータを送信する場合の通信経路に係る情報を記憶する記憶手段と、
前記記憶手段により情報が記憶された通信経路が他の通信経路に切り替えられた場合に、同一の通信宛先となる装置に対する複数の通信経路を介したデータ送信の実行制御をおこない、当該通信に係る状況に応じて前記データ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替える制御手段と、
を備えたことを特徴とする通信端末装置。
【請求項２】
データを送信する通信経路の接続安定度に係る情報を記憶する接続安定度記憶手段をさらに備え、前記制御手段は、前記接続安定度記憶手段に記憶された情報に基づいて前記通信経路の接続安定度が所定の水準よりも低いか否かを判定し、当該接続安定度が所定の水準よりも低い場合に、同一の通信宛先となる装置に対する複数の通信経路を介したデータ送信の実行制御をおこなうことを特徴とする請求項１に記載の通信端末装置。
【請求項３】
前記記憶手段は、前記通信経路が他の通信経路に切り替えられた場合に切り替え前後の通信経路に係る情報を記憶し、前記制御手段は、前記記憶手段に記憶された情報に基づいて切り替え前後の両方の通信経路を介したデータ送信の実行制御をおこなうことを特徴とする請求項１または２に記載の通信端末装置。
【請求項４】
前記通信に係る状況は、現在の通信径路と一定期間内の過去の通信径路とが異なっているか否かであって、前記制御手段は、現在の通信径路と一定期間内の過去の通信径路とが同一となった場合に、前記複数の通信径路を介したデータ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替えることを特徴とする請求項１、２または３に記載の通信端末装置。
【請求項５】
データの通信経路に係る情報に基づいてデータ通信をおこなう通信プログラムであって、
通信宛先となる装置に対してデータを送信する場合の通信経路に係る情報を記憶する記憶手順と、
前記記憶手順により情報が記憶された通信経路が他の通信経路に切り替えられた場合に、同一の通信宛先となる装置に対する複数の通信経路を介したデータ送信の実行制御をおこない、当該通信に係る状況に応じて前記データ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替える制御手順と、
をコンピュータに実行させることを特徴とする通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データの通信経路に係る情報に基づいてデータ通信をおこなう通信端末装置および通信プログラムに関し、特に、通信品質を劣化させることなく、余分なトラフィックを抑制することができる通信端末装置および通信プログラムに関する。
【背景技術】
【０００２】
従来、基地局などのインフラストラクチャに依存せずに、無線で相互接続できる通信端末により構成されたアドホックネットワークを介して、データの送受信をおこなう技術が広く知られている。
【０００３】
アドホックネットワークに接続される各通信端末は、他の通信端末宛のデータを中継する機能を備えている。そのため、たとえデータの送信宛先となる通信端末までの距離が無線電波の届かない距離であって、直接データを送信することが不可能であったとしても、いくつかの通信端末がデータを中継することで、宛先である通信端末までデータを送信することができる。
【０００４】
この技術では、宛先となる通信端末までの通信経路を確保するため、通信端末は、他の通信端末に対して制御情報を送信する。そして、その制御情報を受信した通信端末は、送信元の通信端末と自通信端末との間のデータの通信経路の情報を制御情報に登録した後、他の通信端末に対して制御情報を送信する。
【０００５】
このようにして、通信端末間で制御情報が次々に送信され、宛先の通信端末にまで制御情報が達すると、送信元の通信端末から宛先の通信端末までのデータの通信経路が確立され、制御情報に登録された通信経路の情報に基づいてデータ通信がおこなわれる。
【０００６】
ところが、通信端末の移動等により、新たな通信経路が確立された直後は通信状態が必ずしも安定しておらず、データの通信品質が劣化する可能性があるため、データを複数の経路を介して送信することにより通信品質を高める技術が考案されている。
【０００７】
たとえば、特許文献１には、データを送信する場合に通信経路を複数探索し、探索された通信経路の中から電波干渉度およびホップ数が比較的少ない通信経路を複数選択し、選択した通信経路を介してデータを送信する技術が開示されている。
【０００８】
【特許文献１】特開２００５−２３６６３２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、上述した従来技術では、宛先である通信端末までデータを送信するために確立された通信経路の状態が安定した後も、複数の通信経路を介してデータを送信するので余分なトラフィックが発生するという問題があった。
【００１０】
余分なトラフィックが発生すると、通信帯域を圧迫する上に、データを中継する通信端末に負荷がかかり、消費電力も増大してしまう。そのため、通信品質を劣化させることなく、余分なトラフィックをいかにして抑制することができるかが重要な問題となっている。
【００１１】
本発明は、上述した従来技術による問題点を解消するためになされたものであり、通信品質を劣化させることなく、余分なトラフィックを抑制することができる通信端末装置および通信プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述した課題を解決し、目的を達成するため、本発明は、データの通信経路に係る情報に基づいてデータ通信をおこなう通信端末装置であって、通信宛先となる装置に対してデータを送信する場合の通信経路に係る情報を記憶する記憶手段と、前記記憶手段により情報が記憶された通信経路が他の通信経路に切り替えられた場合に、同一の通信宛先となる装置に対する複数の通信経路を介したデータ送信の実行制御をおこない、当該通信に係る状況に応じて前記データ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替える制御手段と、を備えたことを特徴とする。
【００１３】
また、本発明は、上記発明において、前記通信に係る状況は、現在の通信径路と一定期間内の過去の通信径路とが異なっているか否かであって、前記制御手段は、現在の通信径路と一定期間内の過去の通信径路とが同一となった場合に、前記複数の通信径路を介したデータ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替えることを特徴とする。
【００１４】
また、本発明は、上記発明において、データを送信する通信経路の接続安定度に係る情報を記憶する接続安定度記憶手段をさらに備え、前記制御手段は、前記接続安定度記憶手段に記憶された情報に基づいて前記通信経路の接続安定度が所定の水準よりも低いか否かを判定し、当該接続安定度が所定の水準よりも低い場合に、同一の通信宛先となる装置に対する複数の通信経路を介したデータ送信の実行制御をおこなうことを特徴とする。
【００１５】
また、本発明は、上記発明において、前記接続安定度は、無線通信に係る電界強度であることを特徴とする。
【００１６】
また、本発明は、上記発明において、前記接続安定度は、データの通信速度であることを特徴とする。
【００１７】
また、本発明は、上記発明において、前記接続安定度は、データ通信をおこなう装置間の距離であることを特徴とする。
【００１８】
また、本発明は、上記発明において、前記記憶手段は、前記通信経路が他の通信経路に切り替えられた場合に切り替え前後の通信経路に係る情報を記憶し、前記制御手段は、前記記憶手段に記憶された情報に基づいて切り替え前後の両方の通信経路を介したデータ送信の実行制御をおこなうことを特徴とする。
【００１９】
また、本発明は、上記発明において、前記制御手段は、データの重要度に基づいて前記複数の通信経路を介したデータ送信の実行制御をおこなうか否かを判定し、前記複数の通信経路を介したデータ送信の実行制御をおこなうと判定した場合には複数の通信経路を介したデータ送信の実行制御をおこない、当該通信に係る状況に応じて前記データ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替え、前記複数の通信経路を介したデータ送信の実行制御をおこなわないと判定した場合には単一の通信経路を介したデータ通信の実行制御をおこなうことを特徴とする。
【００２０】
また、本発明は、データの通信経路に係る情報に基づいてデータ通信をおこなう通信プログラムであって、通信宛先となる装置に対してデータを送信する場合の通信経路に係る情報を記憶する記憶手順と、前記記憶手順により情報が記憶された通信経路が他の通信経路に切り替えられた場合に、同一の通信宛先となる装置に対する複数の通信経路を介したデータ送信の実行制御をおこない、当該通信に係る状況に応じて前記データ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替える制御手順と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００２１】
本発明によれば、通信宛先となる装置に対してデータを送信する場合の通信経路に係る情報を記憶し、情報を記憶した通信経路が他の通信経路に切り替えられた場合に、同一の通信宛先となる装置に対する複数の通信経路を介したデータ送信の実行制御をおこない、当該通信に係る状況に応じてデータ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替えることとしたので、通信品質を劣化させることなく、余分なトラフィックを抑制することができるという効果を奏する。
【００２２】
また、本発明によれば、上記通信に係る状況は、現在の通信径路と一定期間内の過去の通信径路とが異なっているか否かであって、現在の通信径路と一定期間内の過去の通信径路とが同一となった場合に、複数の通信径路を介したデータ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替えることとしたので、通信品質を劣化させることなく、余分なトラフィックを効果的に抑制することができるという効果を奏する。
【００２３】
また、本発明によれば、データを送信する通信経路の接続安定度に係る情報を記憶し、記憶した情報に基づいて通信経路の接続安定度が所定の水準よりも低いか否かを判定し、当該接続安定度が所定の水準よりも低い場合に、同一の通信宛先となる装置に対する複数の通信経路を介したデータ送信の実行制御をおこなうこととしたので、通信経路の状態が安定しているか否かを精度よく判定することができるという効果を奏する。
【００２４】
また、本発明によれば、上記接続安定度は、無線通信に係る電界強度であることとしたので、電界強度に基づいて通信経路の状態が安定しているか否かを効率よく判定することができるという効果を奏する。
【００２５】
また、本発明によれば、上記接続安定度は、データの通信速度であることとしたので、通信速度に基づいて通信経路の状態が安定しているか否かを効率よく判定することができるという効果を奏する。
【００２６】
また、本発明によれば、上記接続安定度は、データ通信をおこなう装置間の距離であることとしたので、通信端末間の距離に基づいて通信経路の状態が安定しているか否かを効率よく判定することができるという効果を奏する。
【００２７】
また、本発明によれば、通信経路が他の通信経路に切り替えられた場合に切り替え前後の通信経路に係る情報を記憶し、記憶した情報に基づいて切り替え前後の両方の通信経路を介したデータ送信の実行制御をおこなうこととしたので、通信品質の劣化を効果的に防止することができるという効果を奏する。
【００２８】
また、本発明によれば、データの重要度に基づいて前記複数の通信経路を介したデータ送信の実行制御をおこなうか否かを判定し、複数の通信経路を介したデータ送信の実行制御をおこなうと判定した場合には複数の通信経路を介したデータ送信の実行制御をおこない、当該通信に係る状況に応じてデータ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替え、複数の通信経路を介したデータ送信の実行制御をおこなわないと判定した場合には単一の通信経路を介したデータ通信の実行制御をおこなうこととしたので、重要なデータの通信品質を向上させるとともに、トラフィックを効果的に抑制することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２９】
以下に添付図面を参照して、本発明に係る通信端末装置および通信プログラムの好適な実施例を詳細に説明する。
【実施例１】
【００３０】
まず、本発明に係る通信処理の概念について説明する。図１は、本発明に係る通信処理の概念を示す図であり、図２は、図１に示した通信システムにおいて実施例１に係る各端末Ａ〜Ｅが記憶するルーティングテーブル１０ａ〜１０ｅの一例を示す図である。
【００３１】
図１に示すように、この通信処理においては、無線通信機能を有する通信端末（端末Ａ〜端末Ｅ）が、アドホックネットワークを構成している。ここで、端末Ａと端末Ｃとは、電波の到達範囲内にあり、無線によるデータの送受信が直接可能である。また、端末Ｃと端末Ｅとが同様にデータの送受信が直接可能な範囲にある。
【００３２】
端末Ａと端末Ｅとは、電波の到達範囲外にあり、直接データの送受信をおこなうことはできない。しかし、端末Ｃがデータの中継をおこなうことにより、端末Ａと端末Ｅとがデータを送受信することができるようになる。
【００３３】
端末Ａが端末Ｅにデータを送信するために始めにデータを送信すべき通信端末の情報は、端末Ａのルーティングテーブルに記憶されている。各通信端末は、他の通信端末が送信した制御情報を受信してルーティングテーブルを更新し、ある通信端末にデータを送信するために最適な通信経路を選択する。このルーティングテーブルの更新処理については後に詳しく説明する。
【００３４】
その後、端末Ａが端末Ｂの方向に移動し、端末Ａが端末Ｅにデータを送信する場合の通信経路が端末Ｂを経由する通信経路に切り替えられた場合を考える。通信経路が新たな通信経路に切り替えられた直後は通信状態が必ずしも安定しておらず、データの通信品質が劣化する可能性がある。
【００３５】
このような場合、端末Ａは、データを確実に宛先の端末Ｅに届けるため、新たな通信経路とそれ以前の通信経路との両方の通信経路を介してデータを送信する。
【００３６】
図２には、各端末Ａ〜Ｅのルーティングテーブル１０ａ〜１０ｅが示されている。図２に示すように、ルーティングテーブル１０ａ〜１０ｅには、宛先端末、第一転送先端末、転送回数、過去の第一転送先端末の各情報が記憶されている。
【００３７】
宛先端末は、データの送信宛先となる通信端末を識別する識別情報である。第一転送先端末は、通信端末が宛先端末にデータを送信する際に、始めにデータを送信する通信端末を識別する識別情報である。
【００３８】
転送回数は、宛先端末までデータが送信される過程で各通信端末によりデータが転送される回数の情報である。ここで、転送回数には、他の通信端末から受信したデータを他の通信端末に転送する回数に加えて、通信端末が始めにデータを送信した分も含まれている。
【００３９】
過去の第一転送先端末は、過去に第一転送先端末として設定された通信端末の情報である。過去の第一転送先端末はルーティングテーブルの更新時に更新される。この過去の第一転送先端末の記憶数はあらかじめ設定されており、この記憶数が２以上である場合には複数の過去の第一転送先端末が記憶される。
【００４０】
端末Ａのルーティングテーブル１０ａの例では、宛先端末Ｅに対応する現在の第一転送先端末は端末Ｂである。また、過去の第一転送先端末は、より右側の欄に記憶されている端末が古い第一転送先端末となっており、端末Ｃ、端末Ｃ、端末Ｂの順に第一転送先端末が切り替えられている。
【００４１】
端末Ａから端末Ｅにデータを送信する場合、ルーティングテーブル１０ａの宛先端末Ｅの欄を参照すると、現在の第一転送先端末と過去の第一転送先端末に、端末Ｂおよび端末Ｃという異なる複数の端末が記述されているので、この場合は端末Ｂおよび端末Ｃに対してデータを送信する。
【００４２】
次にルーティングテーブルが更新され、端末Ｅに対する現在の第一転送先端末がＢで、過去の第一転送先端末が右からＣ，Ｂ，Ｂとなった場合も、異なる複数の端末が記述されているので、この場合も端末Ｂおよび端末Ｃに対してデータを送信する。
【００４３】
さらにルーティングテーブルが更新され、端末Ｅに対する現在の第一転送先端末がＢで、過去の第一転送先端末が右からＢ，Ｂ，Ｂとなった場合、同一の端末しか記述されなくなったので、この場合は端末Ｂだけに対してデータを送信する。
【００４４】
このように、通信状態が不安定な間は複数の通信経路を介したデータ送信を実行することにより通信品質の劣化を防止することができるとともに、通信状態が安定した後は一つの通信経路を介したデータ送信に切り替えることにより余分なトラフィックを抑制することができる。
【００４５】
つぎに、実施例１に係る通信端末の機能構成について説明する。図３は、実施例１に係る通信端末の機能構成を示す図である。この通信端末は、例えば、無線で相互に接続することのできるパーソナルコンピュータ、ＰＤＡ（Personal Digital Assistants）、携帯電話などの端末である。
【００４６】
図３に示すように、この通信端末は、無線送受信処理部２０、記憶部２１、ユーザデータ送受信部２２、制御情報送受信部２３、ルーティングテーブル作成／更新処理部２４、表示部２５、入力部２６、制御部２７を有する。
【００４７】
無線送受信処理部２０は、複数の通信端末から構成されるアドホックネットワークに自端末を接続させ、他の通信端末との間で無線通信をおこなう処理部である。記憶部２１は、ハードディスク装置やフラッシュメモリなどの記憶デバイスであり、ルーティングテーブル２１ａ、パラメータデータ２１ｂを記憶している。ルーティングテーブル２１ａは、図２で説明したルーティングテーブル１０ａ〜１０ｅに対応するものである。
【００４８】
パラメータデータ２１ｂは、通信端末のデータ送信処理に係る種々の設定パラメータを記憶したデータである。図４は、図３に示したパラメータデータ２１ｂの一例を示す図である。
【００４９】
図４に示すように、このパラメータデータ２１ｂには、過去の第一転送先端末記憶数が登録されている。過去の第一転送先端末記憶数は、ルーティングテーブル２１ａ（図２に示したルーティングテーブル１０ａ〜１０ｅ）において、過去の第一転送先端末に記憶する通信端末の数である。
【００５０】
図３の説明に戻ると、ユーザデータ送受信部２２は、他の通信端末との間でユーザデータの送受信を無線送受信処理部２０を介しておこなう送受信部である。このユーザデータ送受信部２２は、ユーザデータを送信する場合に、現在の第一転送先端末と過去の第一転送先端末に記述されている端末名を参照して、異なる複数の端末名があるか、それとも同一端末名しかないかを判定する。
【００５１】
そして、ユーザデータ送受信部２２は、その判定結果に基づいて複数の通信経路を介したデータ送信を実行するか、あるいは、１つの通信経路を介したデータ送信を実行する。具体的には、ユーザデータ送受信部２２は、ユーザデータに送信先端末として複数あるいは１つの通信端末を登録することにより、複数あるいは１つの通信経路を介したデータ送信を実行する。
【００５２】
図５は、ユーザデータ３０のデータ構造の一例を示す図である。図５に示すように、このユーザデータ３０には、ＩＤ、宛先端末、送信先端末、送信元端末およびデータが含まれている。
【００５３】
ＩＤは、データを識別する識別情報であり、同一の通信端末に同じデータが複数回送信された場合に、それを検知してデータを破棄するために用いられるものである。ここでは、ＩＤとして１０２８という番号が設定されている。ただし、番号に限らず、データを識別できる情報であればＩＤとして用いることができる。
【００５４】
宛先端末は、データの送信先である宛先端末を識別する識別情報である。送信先端末は、通信端末が宛先端末にユーザデータ３０を送信する場合に、つぎにユーザデータ３０を送信すべき通信端末を識別する識別情報である。複数の通信経路を介したデータ送信が実行される場合には、送信先端末が複数登録される。１つの通信経路を介したデータ送信が実行される場合には、送信先端末が１つだけ登録される。
【００５５】
送信元端末は、データの送信元端末を識別する識別情報である。データは、宛先端末への送信対象となるデータである。
【００５６】
図３の説明に戻ると、制御情報送受信部２３は、ユーザデータの通信経路を確立するため、制御情報の送受信を無線送受信処理部２０を介しておこなう処理部である。図６は、実施例１における制御情報４０のデータ構造の一例を示す図である。
【００５７】
図６に示すように、制御情報４０は、送信元端末および宛先端末の情報を含んでいる。送信元端末は、制御情報４０を送信した通信端末を識別する情報である。この送信元端末は、第一転送先端末の候補となる通信端末である。
【００５８】
宛先端末は、データ送信の際に宛先端末となりうる通信端末についての情報である。この宛先端末の情報は、端末名および転送回数の情報を含んでおり、ルーティングテーブル２１ａ（図２に示したルーティングテーブル１０ａ〜１０ｅ）に記憶されている情報に基づいて作成される。
【００５９】
端末名は、データ送信の際に宛先端末となりうる通信端末を識別する通信端末名であり、ルーティングテーブル２１ａに記憶されている宛先端末に対応する。転送回数は、ルーティングテーブル２１ａに記憶されている転送回数に１を加算したものである。
【００６０】
たとえば、この制御情報４０を端末Ａが端末Ｂから受信したとすると、端末Ａの制御情報送受信部２３は、宛先端末が端末Ｅのとき、転送回数は２であり、第一転送先端末は端末Ｂであることを認識することができる。
【００６１】
そして、端末Ａの制御情報送受信部２３は、制御情報４０に含まれる宛先端末の端末名に該当する宛先端末を自通信端末のルーティングテーブル２１ａから検索し、検索された宛先端末に対応する転送回数の情報をルーティングテーブル２１ａから取得する。
【００６２】
その後、端末Ａの制御情報送受信部２３は、制御情報４０に含まれる転送回数と、ルーティングテーブル２１ａに登録されている転送回数とを比較して、制御情報４０に含まれる転送回数がルーティングテーブル２１ａに登録されている転送回数よりも小さい場合に、ルーティングテーブル２１ａの第一転送先端末を制御情報４０に含まれる送信元端末に変更し、さらにルーティングテーブル２１ａの転送回数を制御情報４０に含まれる転送回数に変更する。
【００６３】
このような処理により、ルーティングテーブル２１ａには、端末Ａが宛先端末までデータを送信する場合に、転送回数がより少なく、効率的にデータを送信できる通信経路が記憶されることになる。
【００６４】
図３の説明に戻ると、ルーティングテーブル作成／更新処理部２４は、他の通信端末から受信した制御情報４０を基にして、記憶部２１に記憶されたルーティングテーブル２１ａの作成および更新をおこなう処理部である。
【００６５】
具体的には、ルーティングテーブル作成／更新処理部２４は、制御情報４０に含まれる送信元端末、宛先端末の端末名、宛先端末の転送回数の情報からルーティングテーブル２１ａにおける宛先端末、第一転送先端末、転送回数の情報を作成または更新する。
【００６６】
さらに、ルーティングテーブル作成／更新処理部２４は、宛先端末、第一転送先端末、転送回数の情報を作成または更新した場合に、過去の第一転送先端末の情報を１時点前にシフトさせることにより更新する。
【００６７】
表示部２５は、液晶ディスプレイなどの表示デバイスである。入力部２６は、キーボードやペン型入力装置などの入力デバイスである。制御部２７は、この通信端末を全体制御する制御部であり、各機能部間のデータの授受などを司る。
【００６８】
つぎに、実施例１に係る制御情報送信処理の処理手順について説明する。図７は、実施例１に係る制御情報送信処理の処理手順を示すフローチャートである。図７に示すように、まず、通信端末のルーティングテーブル作成／更新処理部２４は、ルーティングテーブルの作成／更新処理をおこなう（ステップＳ１０１）。このルーティングテーブルの作成／更新処理についてはつぎに詳しく説明する。
【００６９】
そして、ルーティングテーブル作成／更新処理部２４は、過去の第一転送先端末に登録されている端末名を１時点前にシフトさせ（ステップＳ１０２）、過去の第一転送先端末記憶数を越えた最古の第一転送先端末の情報をルーティングテーブル２１ａから削除する（ステップＳ１０３）。
【００７０】
その後、ルーティングテーブル作成／更新処理部２４は、ルーティングテーブル２１ａに現在の第一転送先端末として登録されている端末名を１時点前の過去の第一転送先端末として登録する（ステップＳ１０４）。
【００７１】
そして、制御情報送受信部２３は、ルーティングテーブル２１ａから制御情報４０を作成し（ステップＳ１０５）、作成した制御情報４０を他の通信端末に送信する（ステップＳ１０６）。
【００７２】
具体的には、制御情報送受信部２３は、ルーティングテーブル２１ａから宛先端末および転送回数の情報を取得する。そして、制御情報送受信部２３は、図６に示したように、自通信端末の端末名を制御情報４０の送信元端末として設定する。
【００７３】
また、制御情報送受信部２３は、ルーティングテーブル２１ａから取得した宛先端末の情報を制御情報４０の宛先端末の端末名として設定し、さらにルーティングテーブル２１ａから取得した転送回数に１を加えた回数を制御情報４０の宛先端末の転送回数として設定することにより制御情報４０を作成する。
【００７４】
その後、制御情報送受信部２３は、次回の制御情報４０の送信処理を開始するまで、一定の時間待機し（ステップＳ１０７）、ステップＳ１０１に移行して、それ以後の処理を継続する。
【００７５】
つぎに、図７に示したルーティングテーブル作成／更新処理の処理手順について説明する。図８は、図７に示したルーティングテーブル作成／更新処理の処理手順を示すフローチャートである。
【００７６】
図８に示すように、通信端末の制御情報送受信部２３は、他の通信端末から送信された制御情報４０を受信するのを待ち受ける（ステップＳ２０１）。そして、制御情報送受信部２３は、制御情報４０を受信したか否かを調べ（ステップＳ２０２）、制御情報４０を受信しなかった場合には（ステップＳ２０２，Ｎｏ）、ステップＳ２０１に戻って、制御情報４０の受信を待ち受ける。
【００７７】
制御情報４０を受信した場合には（ステップＳ２０２，Ｙｅｓ）、ルーティングテーブル作成／更新処理部２４は、受信した制御情報４０に含まれる宛先端末の端末名がルーティングテーブル２１ａ（図２に示したルーティングテーブル１０ａ〜１０ｅ）に宛先端末としてすでに登録されているか否かを調べる（ステップＳ２０３）。
【００７８】
制御情報に含まれる宛先端末の端末名がルーティングテーブル２１ａに宛先端末として登録されていない場合には（ステップＳ２０３，Ｎｏ）、ルーティングテーブル作成／更新処理部２４は、ルーティングテーブル２１ａに新規経路情報を登録し（ステップＳ２０６）、ステップＳ２０１に移行して、それ以降の処理を継続する。
【００７９】
具体的には、ルーティングテーブル作成／更新処理部２４は、制御情報４０に含まれている送信元端末、端末名、転送回数の情報を、ルーティングテーブル２１ａの第一転送先端末、宛先端末、転送回数としてそれぞれ記憶する。
【００８０】
ステップＳ２０３において、制御情報４０に含まれている宛先端末の端末名がルーティングテーブル２１ａにすでに登録されている場合には（ステップＳ２０３，Ｙｅｓ）、ルーティングテーブル作成／更新処理部２４は、ルーティングテーブル２１ａからその端末名に対応する宛先端末の転送回数の情報を取得し、制御情報４０に含まれている転送回数がルーティングテーブル２１ａに登録されている転送回数よりも大きいか否かを調べる（ステップＳ２０４）。
【００８１】
制御情報４０に含まれている転送回数がルーティングテーブル２１ａに登録されている転送回数よりも大きい場合には（ステップＳ２０４，Ｙｅｓ）、ルーティングテーブル作成／更新処理部２４は、受信した制御情報４０を破棄し（ステップＳ２０７）、ステップＳ２０１に移行して、それ以後の処理を継続する。
【００８２】
制御情報４０に含まれている転送回数がルーティングテーブル２１ａに登録されている転送回数よりも大きくない場合には（ステップＳ２０４，Ｎｏ）、ルーティングテーブル作成／更新処理部２４は、受信した制御情報４０を用いてルーティングテーブル２１ａを更新し（ステップＳ２０５）、ステップＳ２０１に移行して、それ以降の処理を継続する。
【００８３】
具体的には、ルーティングテーブル作成／更新処理部２４は、ルーティングテーブル２１ａに記憶されている各宛先端末の転送回数と制御情報４０に含まれる各宛先端末の転送回数とを比較して、制御情報４０の転送回数よりも大きい転送回数であるルーティングテーブル２１ａの第一転送先端末、宛先端末、転送回数の情報を、制御情報４０の送信元端末、宛先端末、転送回数の情報に書き換える処理をおこなう。
【００８４】
つぎに、実施例１に係るユーザデータ送信処理の処理手順について説明する。図９は、実施例１に係るユーザデータ送信処理の処理手順を示すフローチャートである。図９に示すように、まず、通信端末のユーザデータ送受信部２１は、ルーティングテーブル２１ａ（図２に示したルーティングテーブル１０ａ〜１０ｅ）からユーザデータを送信する宛先端末に対応する第一転送先端末があるか否かを調べる（ステップＳ３０１）。
【００８５】
宛先端末に対応する第一転送先端末がある場合には（ステップＳ３０１，Ｙｅｓ）、
ユーザデータ送受信部２１は、ルーティングテーブル２１ａからユーザデータを送信する宛先端末に対応する第一転送先端末を検索し、検索された第一転送先端末を送信先端末として設定する（ステップＳ３０２）。
【００８６】
ステップＳ３０１において、宛先端末に対応する第一転送先端末の情報がない場合には（ステップＳ３０１，Ｎｏ）、ユーザデータ送受信部２１は、ルーティングテーブル２１ａが作成または更新されて、対応する第一転送先端末が現れるまで待つ。
【００８７】
ステップＳ３０２の処理を実行した後、ユーザデータ送受信部２１は、ルーティングテーブル２１ａに過去の第一転送先端末の情報があるか否かを調べる（ステップＳ３０３）。
【００８８】
ルーティングテーブル２１ａに過去の第一転送先端末の情報がある場合には（ステップＳ３０３，Ｙｅｓ）、ユーザデータ送受信部２１は、過去の第一転送先端末のうち、ステップＳ３０５における現在の第一転送先端末との比較処理が完了していない過去の第一転送先端末を１つ選択する（ステップＳ３０４）。
【００８９】
その後、ユーザデータ送受信部２１は、第一転送先端末情報の比較回数に１を加算し（ステップＳ３０５）、現在の第一転送先端末と選択した第一転送先端末とが異なるか否かを調べる（ステップＳ３０６）。現在の第一転送先端末と過去の第一転送先端末とが異なる場合には（ステップＳ３０６，Ｙｅｓ）、ユーザデータ送受信部２１は、過去の第一転送先端末を送信先端末として追加する（ステップＳ３０７）。
【００９０】
そして、ユーザデータ送受信部２１は、ステップＳ３０６における第一転送先端末の比較回数が過去の第一転送先端末記憶数に等しいか否かを調べる（ステップＳ３０８）。第一転送先端末の比較回数が過去の第一転送先端末記憶数と等しくない場合には（ステップＳ３０８，Ｎｏ）、ステップＳ３０４に移行して、ユーザデータ送受信部２１は、現在の第一転送先端末との比較処理が完了していない過去の第一転送先端末を１つ選択し、それ以降の処理を継続する。
【００９１】
ステップＳ３０６において、現在の第一転送先端末と過去の第一転送先端末とが同一である場合には（ステップＳ３０６，Ｎｏ）、ステップＳ３０８に移行して、それ以後の処理を継続する。
【００９２】
ステップＳ３０８において、第一転送先端末の比較回数が過去の第一転送先端末記憶数に等しい場合には（ステップＳ３０８，Ｙｅｓ）、ユーザデータ送受信部２１は、設定された送信先端末が複数あるか否かを調べる（ステップＳ３０９）。
【００９３】
また、ステップＳ３０３において、ルーティングテーブル２１ａに過去の第一転送先端末の情報がない場合には（ステップＳ３０３，Ｎｏ）、ステップＳ３０９に移行して、ユーザデータ送受信部２１は、設定された送信先端末が複数あるか否かを調べる。
【００９４】
送信先端末が複数ある場合には（ステップＳ３０９，Ｙｅｓ）、ユーザデータ送受信部２１は、複数の送信先端末にマルチキャスト送信するユーザデータを作成する（ステップＳ３１０）。
【００９５】
具体的には、ユーザデータ送受信部２１は、図５に示したようなユーザデータ３０において、送信先端末に複数の通信端末を登録する。その後、ユーザデータ送受信部２１は、作成したユーザデータを送信し（ステップＳ３１１）、このユーザデータ送信処理を終了する。
【００９６】
ステップＳ３０９において、送信先端末が複数ない場合には（ステップＳ３０９，Ｎｏ）、ユーザデータ送受信部２１は、現在の第一転送先端末にユニキャスト送信するユーザデータを作成する（ステップＳ３１２）。
【００９７】
具体的には、ユーザデータ送受信部２１は、図５に示したようなユーザデータにおいて、送信先端末に現在の第一転送先端末を１つだけ登録する。その後、ステップＳ３１１に移行して、ユーザデータ送受信部２１は、ユーザデータを送信し、このユーザデータ送信処理を終了する。
【００９８】
つぎに、通信端末がユーザデータを受信する処理の処理手順について説明する。図１０は、実施例１に係るユーザデータ受信処理の処理手順を示すフローチャートである。図１０に示すように、まず、通信端末のユーザデータ送受信部２１は、他の通信端末により送信されたデータを受信する（ステップＳ４０１）。
【００９９】
そして、ユーザデータ送受信部２１は、ユーザデータに含まれるＩＤを調べることにより、受信したユーザデータと同一のユーザデータを過去に受信したか否かを調べる（ステップＳ４０２）。
【０１００】
受信したユーザデータと同一のユーザデータを過去に受信した場合には（ステップＳ４０２，Ｙｅｓ）、ユーザデータ送受信部２１は、受信したユーザデータを破棄し（ステップＳ４０３）、このユーザデータ受信処理を終了する。
【０１０１】
受信したユーザデータと同一のユーザデータを過去に受信していない場合には（ステップＳ４０２，Ｎｏ）、ユーザデータ送受信部２１は、受信したユーザデータの宛先が自通信端末であるか否かを調べる（ステップＳ４０４）。
【０１０２】
受信したユーザデータの宛先が自通信端末である場合には（ステップＳ４０４，Ｙｅｓ）、ユーザデータ送受信部２１は、受信したユーザデータを取り込み（ステップＳ４０５）、このユーザデータ受信処理を終了する。
【０１０３】
受信したユーザデータの宛先が自通信端末でない場合には（ステップＳ４０４，Ｎｏ）、ユーザデータ送受信部２１は、受信したユーザデータを他の通信端末に転送し（ステップＳ４０６）、このユーザデータ受信処理を終了する。具体的には、ユーザデータ送受信部２１は、図９に示したユーザデータ送信処理と同様の処理をおこなうことにより、受信したユーザデータを他の通信端末に転送する。
【０１０４】
上述してきたように、本実施例１では、通信端末の記憶部２１が、宛先端末に対してデータを送信する場合の通信経路に係る情報をルーティングテーブル２１ａとして記憶し、ユーザデータ送受信部２２が、記憶部２１に情報が記憶された通信経路が他の通信経路に切り替えられた場合に、同一の宛先端末に対する複数の通信経路を介したデータ送信の実行制御をおこない、当該通信に係る状況に応じてデータ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替えることとしたので、通信品質を劣化させることなく、余分なトラフィックを抑制することができる。
【０１０５】
また、本実施例１では、記憶部２１が、通信経路が他の通信経路に切り替えられた場合に切り替え前後の通信経路に係る情報をルーティングテーブル２１ａに第一転送先端末および過去の第一転送先端末として記憶し、ユーザデータ送受信部２２が、記憶部２１に記憶された情報に基づいて切り替え前後の両方の通信経路を介したデータ送信の実行制御をおこなうこととしたので、通信品質の劣化を効果的に防止することができる。
【０１０６】
また、本実施例１では、上記通信に係る状況は、ルーティングテーブル２１ａに登録された現在の第一転送先端末と過去の第一転送先端末とが異なっているか否かであって、現在の第一転送先端末と過去の第一転送先端末とが同一となった場合に、ユーザデータ送受信部２２が、複数の通信径路を介したデータ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替えることとしたので、通信品質を劣化させることなく、余分なトラフィックを効果的に抑制することができる。
【実施例２】
【０１０７】
なお、実施例１では、現在と過去の第一転送先端末が異なる場合に、データの中継をおこなう送信先端末にユーザデータをマルチキャスト送信するか否かを判定したが、さらに通信電波の電界強度などの接続安定度を示す情報を考慮してマルチキャスト送信するか否かを判定することとしてもよい。そこで、実施例２では、接続の安定性を示す情報をさらに考慮して通信をおこなう場合について説明する。
【０１０８】
図１１は、図１に示した通信システムにおいて実施例２に係る各端末Ａ〜Ｅが記憶するルーティングテーブル５０ａ〜５０ｅの一例を示す図である。図１１に示すように、ルーティングテーブル５０ａ〜５０ｅには、宛先端末、第一転送先端末、転送回数、電界強度、過去の第一転送先端末の各情報が記憶されている。
【０１０９】
このうち、宛先端末、第一転送先端末、転送回数、過去の第一転送先端末は、図２に示したルーティングテーブル１０ａ〜１０ｅにおける宛先端末、第一転送先端末、転送回数、過去の第一転送先端末と同様の情報である。
【０１１０】
電界強度は、第一転送先端末が自通信端末から制御情報を受信した際の、電波の受信電界強度の情報である。この電界強度の情報は、第一転送先端末から送信される制御情報に含まれており、その制御情報を受信することにより取得することができる。
【０１１１】
実施例２に係る通信処理では、ユーザデータを宛先端末に送信する場合に、ルーティングテーブル５０ａ〜５０ｅに登録された宛先端末に対応する電界強度、すなわち、第一転送先端末が自通信端末から制御情報を受信した際の電波の受信電界強度の情報がルーティングテーブル５０ａ〜５０ｅから検索される。
【０１１２】
そして、検索された電界強度が所定の閾値以下である場合にのみ、実施例１で説明したような第一転送先端末へのマルチキャスト送信を実行する。これにより、通信経路の状態が安定しているか否かをより精度よく判定することができ、トラフィックの増加をさらに抑制することができる。
【０１１３】
つぎに、実施例２に係る通信端末の機能構成について説明する。図１２は、実施例２に係る通信端末の機能構成を示す図である。図１２に示すように、この通信端末は、無線送受信処理部６０、接続安定度情報取得部６１、記憶部６２、ユーザデータ送受信部６３、制御情報送受信部６４、ルーティングテーブル作成／更新処理部６５、表示部６６、入力部６７、制御部６８を有する。
【０１１４】
無線送受信処理部６０は、複数の通信端末から構成されるアドホックネットワークに自端末を接続させ、他の通信端末との間でユーザデータや制御情報などを無線で送受信する処理部である。
【０１１５】
接続安定度情報取得部６１は、他の通信端末から制御情報を含んだ電波を受信した際に、その電波の受信電界強度の情報を取得する処理部である。記憶部６２は、ハードディスク装置やフラッシュメモリなどの記憶デバイスであり、ルーティングテーブル６２ａ、パラメータデータ６２ｂを記憶している。ルーティングテーブル６２ａは、図１１で説明したルーティングテーブル５０ａ〜５０ｅに対応するものである。
【０１１６】
パラメータデータ６２ｂは、通信端末のデータ送信処理に係る種々の設定パラメータを記憶したデータである。図１３は、図１２に示したパラメータデータ６２ｂの一例を示す図である。
【０１１７】
図１３に示すように、このパラメータデータ６２ｂには、過去の第一転送先端末記憶数、電界強度閾値の情報が登録されている。過去の第一転送先端末記憶数は、ルーティングテーブル６２ａ（図１１に示したルーティングテーブル５０ａ〜５０ｅ）において、過去の第一転送先端末に記憶されている通信端末の数である。
【０１１８】
また、電界強度閾値は、データ送信方法の切り替えをおこなうか否かを判定する場合に用いられる閾値である。具体的には、ルーティングテーブル６２ａに登録された第一転送先端末の電界強度が電界強度閾値以下である場合にデータ送信方法の切り替えが実行される。
【０１１９】
図１２の説明に戻ると、ユーザデータ送受信部６３は、他の通信端末との間で図５に示したようなユーザデータ３０の送受信を無線送受信処理部６０を介しておこなう送受信部である。
【０１２０】
特に、このユーザデータ送受信部６３は、ユーザデータを送信する場合に、第一転送先端末の電界強度が電界強度閾値以下であるか否かを調べ、電界強度が電界強度閾値以下である場合に、実施例１で説明したような複数の第一転送先端末へのマルチキャスト送信を実行する。
【０１２１】
制御情報送受信部６４は、ユーザデータの通信経路を確立するため、無線送受信処理部２０を介して制御情報の送受信をおこなう処理部である。図１４は、実施例２における制御情報７０のデータ構造の一例を示す図である。
【０１２２】
図１４に示すように、この制御情報７０は、送信元端末および宛先端末の情報を含んでいる。送信元端末は、制御情報７０を当該通信端末に送信した通信端末を識別する情報である。この送信元端末は、第一転送先端末の候補となる通信端末である。
【０１２３】
宛先端末は、データ送信の際に宛先端末となりうる通信端末についての情報である。この宛先端末の情報は、端末名、転送回数および電界強度の情報を含んでおり、ルーティングテーブル６２ａ（図１１に示したルーティングテーブル５０ａ〜５０ｅ）に記憶されている情報に基づいて作成される。
【０１２４】
端末名は、データ送信の際に宛先端末となりうる通信端末を識別する端末名であり、ルーティングテーブル６２ａに記憶されている宛先端末に対応する。転送回数は、ルーティングテーブル６２ａに記憶されている転送回数に１を加算したものである。電界強度は、制御情報を端末名で示される通信端末から受信した際の、電波の受信電界強度の情報である。
【０１２５】
図１２の説明に戻ると、ルーティングテーブル作成／更新処理部６５は、他の通信端末から受信した制御情報７０を基にして、記憶部６２に記憶されたルーティングテーブル６２ａの作成および更新をおこなう処理部である。
【０１２６】
具体的には、ルーティングテーブル作成／更新処理部６５は、実施例１で説明したようにして、制御情報７０に含まれる送信元端末、および、宛先端末の端末名、転送回数、電界強度の情報からルーティングテーブル６２ａにおける宛先端末、第一転送先端末、転送回数、電界強度の情報を作成または更新する。
【０１２７】
さらに、ルーティングテーブル作成／更新処理部６５は、宛先端末、第一転送先端末、転送回数、電界強度の情報を作成または更新した場合に、過去の第一転送先端末の情報を１時点前にシフトさせることにより更新する。
【０１２８】
表示部６６は、液晶ディスプレイなどの表示デバイスである。入力部６７は、キーボードやペン型入力装置などの入力デバイスである。制御部６８は、この通信端末を全体制御する制御部であり、各機能部間のデータの授受などを司る。
【０１２９】
つぎに、実施例２に係るユーザデータ送信処理の処理手順について説明する。図１５−１および図１５−２は、実施例２に係るユーザデータ送信処理の処理手順を示すフローチャート（１）および（２）である。
【０１３０】
なお、実施例２に係る制御情報送信処理、ルーティングテーブル作成／更新処理、ユーザデータ受信処理は、図７、図８、図１０に示した制御情報送信処理、ルーティングテーブル作成／更新処理、ユーザデータ受信処理と同様であるのでここでは説明を省略する。
【０１３１】
ただし、制御情報送信処理においては、通信端末の制御情報送受信部６４は、制御情報を作成する場合に、他の通信端末から電波を受信した際の受信電界強度の情報を制御情報に追加する。
【０１３２】
また、ルーティングテーブル作成／更新処理においては、ルーティングテーブル作成／更新処理部６５は、ルーティングテーブル６２ａ（ルーティングテーブル５０ａ〜５０ｅ）に制御情報に含まれている情報を登録する場合に、制御情報に含まれている送信元端末、端末名、転送回数の情報を、ルーティングテーブル６２ａに第一転送先端末、宛先端末、転送回数としてそれぞれ記憶するとともに、制御情報に含まれている電界強度の情報をルーティングテーブル６２ａに電界強度としてさらに登録する。
【０１３３】
図１５−１に示すように、まず、通信端末のルーティングテーブル作成／更新処理部６５は、ルーティングテーブル６２ａ（ルーティングテーブル５０ａ〜５０ｅ）に宛先端末に対応する第一転送先端末があるか否かを調べる（ステップＳ９０１）。
【０１３４】
宛先端末に対応する第一転送先端末がある場合には（ステップＳ９０１，Ｙｅｓ）、ユーザデータ送受信部６３は、ルーティングテーブル６２ａからユーザデータを送信する宛先端末に対応する第一転送先端末を検索し、検索された第一転送先端末を送信先端末として設定する（ステップＳ９０２）。
【０１３５】
ステップＳ９０１において、宛先端末に対応する第一転送先端末の情報がない場合には（ステップＳ９０１，Ｎｏ）、ユーザデータ送受信部６３は、ルーティングテーブル６２ａが作成または更新されて、対応する第一転送先端末が現れるまで待つ。
【０１３６】
続いて、ユーザデータ送受信部６３は、送信先端末、すなわち宛先端末に対応する第一転送先端末の電界強度がパラメータデータ６２ｂに記憶された電界強度閾値以下であるか否かを調べる（ステップＳ９０３）。
【０１３７】
送信先端末の電界強度がパラメータデータ６２ｂに記憶された電界強度閾値以下である場合には（ステップＳ９０３，Ｙｅｓ）、ユーザデータ送受信部６３は、ルーティングテーブル６２ａに過去の第一転送先端末の情報があるか否かを調べる（ステップＳ９０４）。
【０１３８】
ルーティングテーブル６２ａに過去の第一転送先端末の情報がある場合には（ステップＳ９０４，Ｙｅｓ）、ユーザデータ送受信部６３は、過去の第一転送先端末のうち、ステップＳ９０６における現在の第一転送先端末との比較処理が完了していない過去の第一転送先端末を１つ選択する（ステップＳ９０５）。
【０１３９】
その後、ユーザデータ送受信部６３は、第一転送先端末情報の比較回数に１を加算し（ステップＳ９０６）、現在の第一転送先端末と選択した第一転送先端末とが異なるか否かを調べる（ステップＳ９０７）。現在の第一転送先端末と過去の第一転送先端末とが異なる場合には（ステップＳ９０７，Ｙｅｓ）、ユーザデータ送受信部６３は、過去の第一転送先端末を送信先端末として追加する（ステップＳ９０８）。
【０１４０】
そして、ユーザデータ送受信部６３は、ステップＳ９０７における第一転送先端末の比較回数が過去の第一転送先端末記憶数に等しいか否かを調べる（ステップＳ９０９）。第一転送先端末の比較回数が過去の第一転送先端末記憶数と等しくない場合には（ステップＳ９０９，Ｎｏ）、ステップＳ９０５に移行して、ユーザデータ送受信部６３は、現在の第一転送先端末との比較処理が完了していない過去の第一転送先端末を１つ選択し、それ以降の処理を継続する。
【０１４１】
ステップＳ９０７において、現在の第一転送先端末と過去の第一転送先端末とが同一である場合には（ステップＳ９０７，Ｎｏ）、ステップＳ９０９に移行して、それ以後の処理を継続する。
【０１４２】
ステップＳ９０９において、第一転送先端末の比較回数が過去の第一転送先端末記憶数に等しい場合には（ステップＳ９０９，Ｙｅｓ）、図１５−２に示すように、ユーザデータ送受信部６３は、設定された送信先端末が複数あるか否かを調べる（ステップＳ９１０）。
【０１４３】
また、図１５−１に示したステップＳ９０３において、送信先端末の電界強度がパラメータデータ６２ｂに記憶された電界強度閾値以下でない場合には（ステップＳ９０３，Ｎｏ）、ステップＳ９１０に移行して、ユーザデータ送受信部６３は、設定された送信先端末が複数あるか否かを調べる。
【０１４４】
また、図１５−１に示したステップＳ９０４において、ルーティングテーブル６２ａに過去の第一転送先端末の情報がない場合も同様に（ステップＳ９０４，Ｎｏ）、ステップＳ９１０に移行して、ユーザデータ送受信部６３は、設定された送信先端末が複数あるか否かを調べる。
【０１４５】
送信先端末が複数ある場合には（ステップＳ９１０，Ｙｅｓ）、ユーザデータ送受信部２１は、複数の送信先端末にマルチキャスト送信するユーザデータを作成する（ステップＳ９１１）。
【０１４６】
具体的には、ユーザデータ送受信部６３は、図５に示したようなユーザデータ３０において、送信先端末に複数の通信端末を登録する。その後、ユーザデータ送受信部６３は、作成したユーザデータを送信し（ステップＳ９１２）、このユーザデータ送信処理を終了する。
【０１４７】
ステップＳ９１０において、送信先端末が複数ない場合には（ステップＳ９１０，Ｎｏ）、ユーザデータ送受信部６３は、現在の第一転送先端末にユニキャスト送信するユーザデータを作成する（ステップＳ９１３）。
【０１４８】
具体的には、ユーザデータ送受信部６３は、図５に示したようなユーザデータ３０において、送信先端末に現在の第一転送先端末を１つだけ登録する。その後、ステップＳ９１２に移行して、ユーザデータ送受信部６３は、ユーザデータを送信し、このユーザデータ送信処理を終了する。
【０１４９】
なお、上記実施例２では、ある通信端末から第一転送先端末がデータを受信した際の電界強度が電界強度閾値以下である場合に、その通信端末による複数の第一転送先端末へのマルチキャスト送信を実行することとしているが、第一転送先端末からある通信端末がデータを受信した際の電界強度が電界強度閾値以下である場合に、その通信端末による複数の第一転送先端末へのマルチキャスト送信を実行することとしてもよい。
【０１５０】
また、ある通信端末から第一転送先端末がデータを受信した際の電界強度と第一転送先端末からある通信端末がデータを受信した際の電界強度との平均値を求め、その平均値が電界強度閾値以下である場合に、その通信端末による複数の第一転送先端末へのマルチキャスト送信を実行することとしてもよい。
【０１５１】
また、上記実施例２では、電界強度を通信端末間の通信経路の接続安定度を示す情報として用い、複数の第一転送先端末へのマルチキャスト送信を実行するか否かの判定を電界強度に基づいておこなっているが、データの通信速度の大小を接続安定度を示す情報として用い、通信速度が所定の閾値以下である場合に、複数の第一転送先端末へのマルチキャスト送信処理を実行することとしてもよい。
【０１５２】
この場合、図１２に示した通信端末の接続安定度情報取得部６１は、自通信端末が他の通信端末からデータを受信した際の通信速度を測定する。そして、制御情報送信部６４は、図１４に示した制御情報７０において、電界強度の情報の代わりに通信速度の情報を埋め込み、通信速度の情報を含んだ制御情報を他の通信端末に送信することにより他の通信端末に通信速度を通知する。
【０１５３】
他の通信端末は、この通信速度の情報を受信して、受信した通信速度の情報をその情報を送信した通信端末の名称と対応付けてルーティングテーブルに登録する。そして、通信端末は、宛先端末にユーザデータを送信する場合に、宛先端末に対応する第一転送先端末の通信速度の情報をルーティングテーブルから取得し、取得した通信速度が所定の閾値よりも小さい場合に、複数の第一転送先端末へのマルチキャスト送信を実行する。
【０１５４】
また、接続安定度を示す情報として自通信端末と第一転送先端末との間の距離の情報を用いることとしてもよい。この場合、自通信端末と第一転送先端末との間の距離が所定の距離以上である場合に、複数の第一転送先端末へのマルチキャスト送信処理を実行する。
【０１５５】
ここで、自通信端末と第一転送先端末との間の距離は、各通信端末にＧＰＳ（Global Positioning System）受信機を備えておくことなどにより算出される。具体的には、各通信端末が自端末の位置情報を制御情報に含めるなどして送信し、その位置情報を受信した通信端末が受信した位置情報と自通信端末の位置情報とから距離を算出する。
【０１５６】
また、自通信端末と第一転送先端末との間の距離は、他の通信端末から受信した電波の電界強度から求めることもできる。具体的には、各通信端末は、２つの通信端末間の距離と、ある通信端末から送信された電波が別の通信端末により受信された場合の受信電界強度との間の関係を示す情報をあらかじめ記憶しておく。
【０１５７】
そして、他の通信端末から制御情報を受信した場合には、通信端末は、制御情報を受信した際の受信電界強度を測定し、上記関係を用いて距離を求める。このようにして求められた距離の情報は、図１４に示した制御情報７０において電界強度の情報の代わりに埋め込まれ、距離の情報を含んだ制御情報が他の通信端末に送信されることにより他の通信端末に距離が通知される。
【０１５８】
上述してきたように、本実施例２では、通信端末の記憶部６２が、データを送信する通信経路の接続安定度に係る情報をルーティングテーブル６２ａに記憶し、ユーザデータ送受信部６３が、記憶部６２に記憶された情報に基づいて通信経路の接続安定度が所定の水準よりも低いか否かを判定し、当該接続安定度が所定の水準よりも低い場合に、同一の通信宛先となる装置に対する複数の通信経路を介したデータ送信の実行制御をおこなうこととしたので、通信経路の状態が安定しているか否かを精度よく判定することができる。
【０１５９】
また、本実施例２では、上記接続安定度は、無線通信に係る電界強度であることとしたので、電界強度に基づいて通信経路の状態が安定しているか否かを効率よく判定することができる。
【０１６０】
また、本実施例２では、上記接続安定度は、データの通信速度であることとしたので、通信速度に基づいて通信経路の状態が安定しているか否かを効率よく判定することができる。
【０１６１】
また、本実施例２では、上記接続安定度は、データ通信をおこなう装置間の距離であることとしたので、通信端末間の距離に基づいて通信経路の状態が安定しているか否かを効率よく判定することができる。
【実施例３】
【０１６２】
ところで、上記実施例１および２では、現在の第一転送先端末とすべての過去の第一転送先端末とが同一ではない場合、すべてのユーザデータについてマルチキャスト送信をおこなうこととしているが、重要度の高いユーザデータにだけマルチキャスト送信をおこなうこととし、重要なデータの通信品質を向上させるとともに、トラフィックを抑制することとしてもよい。そこで、本実施例３では、重要度の高いユーザデータにだけマルチキャスト送信をおこなう場合について説明する。
【０１６３】
図１６は、実施例３に係るユーザデータ送信処理の処理手順を示すフローチャートである。なお、実施例３に係る通信端末の機能構成は図３に示したものとほぼ同様であり、図３の機能部と異なる点について以下に説明する。
【０１６４】
図１６に示すように、まず、通信端末のユーザデータ送受信部２１は、ルーティングテーブル２１ａ（図２に示したルーティングテーブル１０ａ〜１０ｅ）からユーザデータを送信する宛先端末に対応する第一転送先端末があるか否かを調べる（ステップＳ１００１）。
【０１６５】
宛先端末に対応する第一転送先端末がある場合には（ステップＳ１００１，Ｙｅｓ）、
ユーザデータ送受信部２１は、ルーティングテーブル２１ａからユーザデータを送信する宛先端末に対応する第一転送先端末を検索し、検索された第一転送先端末を送信先端末として設定する（ステップＳ１００２）。
【０１６６】
ステップＳ１００１において、宛先端末に対応する第一転送先端末の情報がない場合には（ステップＳ１００１，Ｎｏ）、ユーザデータ送受信部２１は、ルーティングテーブル２１ａが作成または更新されて、対応する第一転送先端末が現れるまで待つ。
【０１６７】
ステップＳ１００２の処理を実行した後、ユーザデータ送受信部２１は、ユーザデータの重要度が閾値以上であるか否かを調べる（ステップＳ１００３）。ここで、ユーザデータの重要度は、ユーザにより指定されるものであり、たとえば１から５（値が大きくなるほど重要）までの５段階で表される重要度の情報である。ユーザデータ送受信部２１は、ユーザデータを作成する際に、図５に示した各項目にユーザにより指定された重要度の情報をさらに追加する。
【０１６８】
ユーザデータの重要度が閾値以上である場合には（ステップＳ１００３，Ｙｅｓ）、ユーザデータ送受信部２１は、ステップＳ１００４からステップＳ１０１３までの各処理を実行する。ここで、ステップＳ１００４からステップＳ１０１３までの各処理は、図９におけるステップＳ３０３からステップＳ３１２の処理と同様の処理であるので、説明を省略する。
【０１６９】
ユーザデータの重要度が閾値以上でない場合には（ステップＳ１００３，Ｎｏ）、ステップＳ１０１３に移行して、ユーザデータ送受信部２１は、現在の第一転送先端末にユニキャスト送信するユーザデータを作成し（ステップＳ１０１３）、作成したユーザデータを送信して（ステップＳ１０１２）、このユーザデータ送信処理を終了する。
【０１７０】
上述してきたように、本実施例３では、ユーザデータ送受信部２１が、ユーザデータの重要度に基づいて複数の通信経路を介したデータ送信の実行制御をおこなうか否かを判定し、複数の通信経路を介したデータ送信の実行制御をおこなうと判定した場合には複数の通信経路を介したデータ送信の実行制御をおこない、当該通信に係る状況に応じてデータ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替え、複数の通信経路を介したデータ送信の実行制御をおこなわないと判定した場合には単一の通信経路を介したデータ通信の実行制御をおこなうこととしたので、重要なユーザデータの通信品質を向上させるとともに、トラフィックを効果的に抑制することができる。
【０１７１】
上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをコンピュータで実行することによって実現することができる。そこで、以下では、上記各種処理を実現するプログラムを実行するコンピュータの一例について説明する。図１７は、図３または図１２に示した通信端末となるコンピュータのハードウェア構成を示す図である。
【０１７２】
このコンピュータは、ユーザからのデータの入力を受け付ける入力装置１００、表示装置１０１、各種プログラムを記録した記録媒体からプログラムを読み取る媒体読取装置１０２、ネットワークを介して他のコンピュータとの間でデータの授受をおこなうネットワークインターフェース１０３、ＲＡＭ（Random  Access  Memory）１０４、ＲＯＭ（Read  Only  Memory）１０５、ＣＰＵ（Central  Processing  Unit）１０６、ＨＤ（Hard  Disk）１０７をバス１０８で接続して構成される。
【０１７３】
そして、ＨＤ１０７には、通信端末の機能と同様の機能を発揮するプログラム、すなわち、通信プログラム１０７ｃが記憶されている。なお、通信プログラム１０７ｃについては、適宜分散して記憶することとしてもよい。
【０１７４】
そして、ＣＰＵ１０６が、通信プログラム１０７ｃをＨＤ１０７から読み出して実行することにより、通信プロセス１０６ａがＣＰＵ１０６において実行される。この通信プロセス１０６ａは、図３または図１２に示したユーザデータ送受信部２２、制御情報送受信部２３、ルーティングテーブル作成／更新処理部２４、制御部２７、接続安定度情報取得部６１、ユーザデータ送受信部６３、制御情報送受信部６４、ルーティングテーブル作成／更新処理部６５、制御部６８などの各機能部の機能に対応する。
【０１７５】
また、ＨＤ１０７には、ルーティングテーブル１０７ａおよびパラメータデータ１０７ｂが記憶される。なお、このルーティングテーブル１０７ａは、図３または図１２に示したルーティングテーブル２１ａ、ルーティングテーブル６２ａに対応する。また、パラメータデータ１０７ｂは、図３または図１２に示したパラメータデータ２１ｂ、パラメータデータ６２ｂに対応する。
【０１７６】
そして、ＣＰＵ１０６は、ルーティングテーブル１０７ａおよびパラメータデータ１０７ｂをＨＤ１０７に記憶させるとともに、ルーティングテーブル１０７ａおよびパラメータデータ１０７ｂをＨＤ１０７から読み出してＲＡＭ１０４に格納し、ＲＡＭ１０４に格納されたルーティングテーブル１０４ａおよびパラメータデータ１０４ｂに基づいて各種データ処理を実行する。
【０１７７】
ところで、通信プログラム１０７ｃは、必ずしも最初からＨＤ１０７に記憶させておく必要はない。たとえば、コンピュータに挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」、または、コンピュータの内外に備えられるハードディスクドライブ（ＨＤＤ）などの「固定用の物理媒体」、さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータに接続される「他のコンピュータ（またはサーバ）」などに各プログラムを記憶しておき、コンピュータがこれらから各プログラムを読み出して実行するようにしてもよい。
【０１７８】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施例にて実施されてもよいものである。
【０１７９】
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。
【０１８０】
この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【０１８１】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【０１８２】
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【０１８３】
（付記１）データの通信経路に係る情報に基づいてデータ通信をおこなう通信端末装置であって、
通信宛先となる装置に対してデータを送信する場合の通信経路に係る情報を記憶する記憶手段と、
前記記憶手段により情報が記憶された通信経路が他の通信経路に切り替えられた場合に、同一の通信宛先となる装置に対する複数の通信経路を介したデータ送信の実行制御をおこない、当該通信に係る状況に応じて前記データ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替える制御手段と、
を備えたことを特徴とする通信端末装置。
【０１８４】
（付記２）データを送信する通信経路の接続安定度に係る情報を記憶する接続安定度記憶手段をさらに備え、前記制御手段は、前記接続安定度記憶手段に記憶された情報に基づいて前記通信経路の接続安定度が所定の水準よりも低いか否かを判定し、当該接続安定度が所定の水準よりも低い場合に、同一の通信宛先となる装置に対する複数の通信経路を介したデータ送信の実行制御をおこなうことを特徴とする付記１に記載の通信端末装置。
【０１８５】
（付記３）前記接続安定度は、無線通信に係る電界強度であることを特徴とする付記２に記載の通信端末装置。
【０１８６】
（付記４）前記接続安定度は、データの通信速度であることを特徴とする付記２に記載の通信端末装置。
【０１８７】
（付記５）前記接続安定度は、データ通信をおこなう装置間の距離であることを特徴とする付記２に記載の通信端末装置。
【０１８８】
（付記６）前記記憶手段は、前記通信経路が他の通信経路に切り替えられた場合に切り替え前後の通信経路に係る情報を記憶し、前記制御手段は、前記記憶手段に記憶された情報に基づいて切り替え前後の両方の通信経路を介したデータ送信の実行制御をおこなうことを特徴とする付記１〜５のいずれか１つに記載の通信端末装置。
【０１８９】
（付記７）前記通信に係る状況は、現在の通信径路と一定期間内の過去の通信径路とが異なっているか否かであって、前記制御手段は、現在の通信径路と一定期間内の過去の通信径路とが同一となった場合に、前記複数の通信径路を介したデータ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替えることを特徴とする付記１〜６のいずれか１つに記載の通信端末装置。
【０１９０】
（付記８）前記制御手段は、データの重要度に基づいて前記複数の通信経路を介したデータ送信の実行制御をおこなうか否かを判定し、前記複数の通信経路を介したデータ送信の実行制御をおこなうと判定した場合には複数の通信経路を介したデータ送信の実行制御をおこない、当該通信に係る状況に応じて前記データ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替え、前記複数の通信経路を介したデータ送信の実行制御をおこなわないと判定した場合には単一の通信経路を介したデータ通信の実行制御をおこなうことを特徴とする付記１〜７のいずれか１つに記載の通信端末装置。
【０１９１】
（付記９）データの通信経路に係る情報に基づいてデータ通信をおこなう通信プログラムであって、
通信宛先となる装置に対してデータを送信する場合の通信経路に係る情報を記憶する記憶手順と、
前記記憶手順により情報が記憶された通信経路が他の通信経路に切り替えられた場合に、同一の通信宛先となる装置に対する複数の通信経路を介したデータ送信の実行制御をおこない、当該通信に係る状況に応じて前記データ送信の実行制御を単一の通信経路を介したデータ通信の実行制御に切り替える制御手順と、
をコンピュータに実行させることを特徴とする通信プログラム。
【産業上の利用可能性】
【０１９２】
以上のように、本発明に係る通信端末装置および通信プログラムは、通信品質を劣化させることなく、余分なトラフィックを抑制することが必要な通信システムに有用である。
【図面の簡単な説明】
【０１９３】
【図１】本発明に係る通信処理の概念を示す図である。
【図２】図１に示した通信システムにおいて実施例１に係る各端末Ａ〜Ｅが記憶するルーティングテーブル１０ａ〜１０ｅの一例を示す図である。
【図３】実施例１に係る通信端末の機能構成を示す図である。
【図４】図３に示したパラメータデータ２１ｂの一例を示す図である。
【図５】ユーザデータ３０のデータ構造の一例を示す図である。
【図６】実施例１における制御情報４０のデータ構造の一例を示す図である。
【図７】実施例１に係る制御情報送信処理の処理手順を示すフローチャートである。
【図８】図７に示したルーティングテーブル作成／更新処理の処理手順を示すフローチャートである。
【図９】実施例１に係るユーザデータ送信処理の処理手順を示すフローチャートである。
【図１０】実施例１に係るユーザデータ受信処理の処理手順を示すフローチャートである。
【図１１】図１に示した通信システムにおいて実施例２に係る各端末Ａ〜Ｅが記憶するルーティングテーブル５０ａ〜５０ｅの一例を示す図である。
【図１２】実施例２に係る通信端末の機能構成を示す図である。
【図１３】図１２に示したパラメータデータ６２ｂの一例を示す図である。
【図１４】実施例２における制御情報７０のデータ構造の一例を示す図である。
【図１５−１】実施例２に係るユーザデータ送信処理の処理手順を示すフローチャート（１）である。
【図１５−２】実施例２に係るユーザデータ送信処理の処理手順を示すフローチャート（２）である。
【図１６】実施例３に係るユーザデータ送信処理の処理手順を示すフローチャートである。
【図１７】図３または図１２に示した通信端末となるコンピュータのハードウェア構成を示す図である。
【符号の説明】
【０１９４】
１０ａ〜１０ｅ，２１ａ，５０ａ〜５０ｅ    ルーティングテーブル
２０，６０    無線送受信処理部
２１，６１    記憶部
２１ｂ，６２ｂ    パラメータデータ
２２，６３    ユーザデータ送受信部
２３，６４    制御情報送受信部
２４，６５    ルーティングテーブル作成／更新処理部
２５，６６    表示部
２６，６７    入力部
２７，６８    制御部
３０    ユーザデータ
４０，７０    制御情報
６１    接続安定度情報取得部
【図１】
2008060696.tif 000003
【図２】
2008060696.tif 000004
【図３】
2008060696.tif 000005
【図４】
2008060696.tif 000006
【図５】
2008060696.tif 000007
【図６】
2008060696.tif 000008
【図７】
2008060696.tif 000009
【図８】
2008060696.tif 000010
【図９】
2008060696.tif 000011
【図１０】
2008060696.tif 000012
【図１１】
2008060696.tif 000013
【図１２】
2008060696.tif 000014
【図１３】
2008060696.tif 000015
【図１４】
2008060696.tif 000016
【図１５−１】
2008060696.tif 000017
【図１５−２】
2008060696.tif 000018
【図１６】
2008060696.tif 000019
【図１７】
2008060696.tif 000020