(57)【要約】【課題】  通信媒体がアイドル状態であることを検出してからデータ送信を開始するまでの待機時間が非優先端末よりも優先端末の方が短い通信システムにおける好適なデータ通信制御を実現する。【解決手段】  優先端末として動作する通信端末が、前記通信端末から送信されるデータのデータ量を判定し、判定したデータ量に応じて、非優先端末として動作する相手端末にデータを送信させるための制御を行う。【選択図】  図６
2011009872.tif 000002
【特許請求の範囲】
【請求項１】
通信媒体がアイドル状態であることを検出してからデータ送信を開始するまでの待機時間が非優先端末よりも優先端末の方が短い通信システムにおいて前記優先端末として動作する通信端末であって、
前記通信端末から送信されるデータのデータ量を判定する第１の判定手段と、
前記第１の判定手段により判定したデータ量に応じて、非優先端末として動作する相手端末にデータを送信させるための制御を行う通信制御手段と、
を有することを特徴とする通信端末。
【請求項２】
前記通信制御手段は、前記第１の判定手段により判定したデータ量が所定値より大きい場合、データの送信が完了するまでに少なくとも１回はデータ送信を中断し、前記第１の判定手段により判定したデータ量が所定値より小さいと判定された場合、データの送信が完了するまでデータ送信を継続することを特徴とする請求項１記載の通信端末。
【請求項３】
前記相手端末から送信されるデータがあるか否かを判定する第２の判定手段を有し、
前記通信制御手段は、前記第１の判定手段による判定結果と前記第２の判定手段による判定結果とに応じて、前記通信端末からのデータ送信が完了するまでのデータ送信の中断を制御することを特徴とする請求項１又は２記載の通信端末。
【請求項４】
前記第２の判定手段により前記相手端末から送信されるデータがないと判定した後は、前記通信制御手段は、前記通信端末から送信されるデータのデータ量に拘らず、データ送信を中断せずにデータ送信を継続することを特徴とする請求項３記載の通信端末。
【請求項５】
前記第２の判定手段は、前記相手端末から送信されるデータがあるか否かを判定するためにデータの送信を一時的に中断し、該中断している間に前記相手端末からデータを受信したか否かを判定することを特徴とする請求項３又は４記載の通信端末。
【請求項６】
前記第２の判定手段は、送信データを有することを示すメッセージを前記相手端末から受信したか否かを判定することを特徴とする請求項３又は４記載の通信端末。
【請求項７】
前記通信制御手段は、前記通信端末からのデータ送信と前記相手端末からのデータ受信と、が交互に行われるように、データ送信とデータ送信の中断と、を切替えながら繰り返すことを特徴とする請求項１から６のいずれか１項に記載の通信端末。
【請求項８】
前記通信制御手段は、所定のデータ量毎もしくは所定時間毎にデータの送信とデータの中断と、を切替えることを特徴とする請求項７記載の通信端末。
【請求項９】
無線リンクを確立するための接続要求と接続応答のいずれを送信したかに応じて、前記優先端末と非優先端末のいずれで動作するかを決定する決定手段と、を有し、
前記決定手段により前記通信端末が前記優先端末として動作することが決定された場合に、前記通信制御手段による通信制御を行うことを特徴とする請求項１から８のいずれか１項に記載の通信端末。
【請求項１０】
通信媒体がアイドル状態であることを検出してからデータ送信を開始するまでの待機時間が非優先端末よりも優先端末の方が短い通信システムにおいて前記優先端末として動作する通信端末の制御方法において、
前記通信端末から送信されるデータのデータ量を判定する判定工程と、
前記判定工程において判定されたデータ量に応じて、非優先端末として動作する相手端末にデータを送信させるための制御を行う通信制御工程と、
を有することを特徴とする通信端末の制御方法。
【請求項１１】
請求項１０記載の制御方法をコンピュータに実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信媒体がアイドル状態であることを検出してからデータ送信を開始するまでの待機時間が非優先端末よりも優先端末の方が短い通信システムにおける通信制御に関する。
【背景技術】
【０００２】
二つの装置の間で無線通信を行なう際にあらかじめ送信用及び受信用として、時間や周波数といった無線リソースを割り当てておくと無駄を生じる場合がある。よって、例えばＩＥＥＥ８０２．１１無線ＬＡＮ（以下、無線ＬＡＮ）では、キャリアを検出しない場合に早いもの勝ちで送信権を獲得するＣＳＭＡ／ＣＡという方法が用いられている。なお、ＣＳＭＡ／ＣＡ  とは、Ｃａｒｒｉｅｒ  Ｓｅｎｓｅ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ／  Ｃｏｌｌｉｓｉｏｎ  Ａｖｏｉｄａｎｃｅの略称である。
【０００３】
無線ＬＡＮでは、データの衝突を回避するため、前のデータ送信の終了を検出してから自データの送信が可能になるまでの待機時間であるＩＦＳをデータの種類によって変えることにより、ＡＣＫなどを優先的に送信するようにしている。ここで、ＩＦＳはＩｎｔｅｒ  Ｆｒａｍｅ  Ｓｐａｃｅの略である。更に、データ送信を開始するまでのバックオフ時間をランダムに設定することにより（ランダムバックオフ）、同じ優先度のデータの衝突を回避している。特許文献１では、ＩＦＳを制御することによって小さいデータサイズのパケットを優先的に送信する技術が開示されている。特許文献２では、ランダムバックオフ制御を更に改良して衝突の発生確率を小さくしている。
【０００４】
また近年、ＮＦＣ（Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）、ＴｒａｎｓｆｅｒＪｅｔ（登録商標）などの非接触通信（近接無線通信）が登場している。これらの非接触通信は通信距離が非常に短く、通信を行う機器同士を数ｃｍ以内（例えばＮＦＣなら１０ｃｍ以内、ＴｒａｎｓｆｅｒＪｅｔなら３ｃｍ以内）に近づけると無線リンクが接続され、遠ざけると無線リンクが切断されるよう制御される。なお、ＴｒａｎｓｆｅｒＪｅｔでは機器同士が１対１でデータ通信を行うことを想定しており、現在ではユースケース等が記載されたホワイトペーパーが公開されている（非特許文献１）。非特許文献１には、ユーザが互いの機器を近接させることによりデータの共有が可能であることが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−２４７０５１号公報
【特許文献２】特開２００８−３０１０７５号公報
【非特許文献】
【０００６】
【非特許文献１】「ＴｒａｎｓｆｅｒＪｅｔ（ＴＭ）  Ｏｖｅｒｖｉｅｗ  Ｗｈｉｔｅｐａｐｅｒ」ＴｒａｎｓｆｅｒＪｅｔ  Ｃｏｎｓｏｒｔｉｕｍ，２００９年，ｈｔｔｐ：／／ｗｗｗ．ｔｒａｎｓｆｅｒｊｅｔ．ｏｒｇ／ｔｊ／ｔｒａｎｓｆｅｒｊｅｔ＿ｗｈｉｔｅｐａｐｅｒ．ｐｄｆ
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ＴｒａｎｓｆｅｒＪｅｔを用いてデータ共有するために、例えば、ユーザが自機器において送信データの選択等の操作を行ってから相手機器に近づけることでデータ通信を行う、という方法が考えられる。ＴｒａｎｓｆｅｒＪｅｔのような非接触通信では機器間の距離が少しでも通信範囲外に離れると無線リンクが切断してしまうため、無線リンクの接続を維持したまま送信データの選択等の操作を行うことは困難だからである。しかしながら、双方の機器で送信データの選択等が行われている状態で近接された場合に、どのようにデータ送受信の制御を行うかについて、非特許文献１には開示されていない。
【０００８】
このような場合のデータ通信制御の方法として、例えば無線ＬＡＮと同様にＣＳＭＡ／ＣＡ方式を適用し、早いもの勝ちでデータ送信を開始する、という方法も考えられる。しかしながら、この場合、送信権を先に獲得した一方の機器のデータ伝送が終了するまで、他方の機器からのデータ伝送が行えない、という状況が発生する可能性がある。該他方の機器からのデータ送信がすぐに開始されないと、通信に不具合があるとユーザが勘違いし、機器を動かしたり再度送信操作を行ったり、といった余計な操作を行ってしまうことが考えられる。また、該他方の機器のアプリケーションによっては、所定時間が経過してもデータの送信が開始されない場合にタイムアウトエラーとなってしまう可能性もある。特に送信権を先に獲得した機器の有するデータ量が大きい場合に、このような問題が発生する可能性が高くなる。
【０００９】
本発明は、通信媒体がアイドル状態であることを検出してからデータ送信を開始するまでの待機時間が非優先端末よりも優先端末の方が短い通信システムにおける好適なデータ通信制御を実現することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を達成するため、本発明は、通信媒体がアイドル状態であることを検出してからデータ送信を開始するまでの待機時間が非優先端末よりも優先端末の方が短い通信システムにおいて前記優先端末として動作する通信端末であって、
前記通信端末から送信されるデータのデータ量を判定する第１の判定手段と、
前記第１の判定手段により判定したデータ量に応じて、非優先端末として動作する相手端末にデータを送信させるための制御を行う通信制御手段と、
を有することを特徴とする。
【００１１】
また、本発明は、通信媒体がアイドル状態であることを検出してからデータ送信を開始するまでの待機時間が非優先端末よりも優先端末の方が短い通信システムにおいて前記優先端末として動作する通信端末の制御方法において、
前記通信端末から送信されるデータのデータ量を判定する判定工程と、
前記判定工程において判定されたデータ量に応じて、非優先端末として動作する相手端末にデータを送信させるための制御を行う通信制御工程と、
を有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、通信媒体がアイドル状態であることを検出してからデータ送信を開始するまでの待機時間が非優先端末よりも優先端末の方が短い通信システムにおいて、優先端末として動作するデータ通信端末が好適にデータ通信を制御することができる。
【図面の簡単な説明】
【００１３】
【図１】システム構成図
【図２】データ通信端末１０１のブロック図
【図３】実施形態１におけるデータ通信端末１０１の動作を示すフローチャート
【図４】分割判定処理の詳細な動作を示すフローチャート
【図５】ファイル分割送受信の詳細な動作を示すフローチャート
【図６】実施形態１におけるデータ通信端末１０１間のメッセージシーケンス図１
【図７】実施形態１におけるデータ通信端末１０１間のメッセージシーケンス図２
【図８】実施形態２におけるデータ通信端末１０１の動作を示すフローチャート
【図９】実施形態２におけるデータ通信端末１０１間のメッセージシーケンス図１
【図１０】非接触通信１０２における送信データのタイミングチャート
【発明を実施するための形態】
【００１４】
（実施形態１）
図１は本実施形態におけるシステムの構成図である。
【００１５】
１０１Ａ、１０１Ｂはデータ通信端末（通信装置）である。以後、任意のデータ通信端末を示す場合は記号１０１を用いることとする。データ通信端末１０１Ａ、１０１Ｂは非接触通信（近接無線通信）１０２によって互いにデータ通信することができる。非接触通信としては、ＮＦＣ（Ｎｅａｒ  Ｆｉｌｅｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）やＴｒａｎｓｆｅｒＪｅｔ（登録商標）などを適用することが可能である。
【００１６】
図１０は、非接触通信１０２における送信データのタイミングチャートである。本実施形態の非接触通信１０２では、同じ時間には一方向のデータしか送れないようになっている。データ通信端末１０１がデータを送信する場合は、最初にキャリアセンスを行い、通信媒体がアイドル状態であることを検出してからフレーム間隔ＩＦＳ（Ｉｎｔｅｒ  Ｆｒａｍｅ  Ｓｐａｃｅ）待ってから新たなデータフレームを送信する。図１０に示されるように、非接触通信１０２では、優先端末のフレーム間隔ＩＦＳｐが非優先端末のフレーム間隔ＩＦＳｎよりも短くなっている。よって、優先端末と非優先端末とで同時にデータ送信の事象が発生した場合は優先端末のデータフレームが先に送信され、非優先端末のデータフレームは待たされる。
【００１７】
優先端末／非優先端末のいずれとして動作するかは無線リンクの確立（接続）の際に決定されるものとする。非接触通信１０２では、一方のデータ通信端末１０１が接続要求を送信し、該接続要求を受信した他方のデータ通信端末１０１が接続応答を返信することにより、無線リンクが確立（接続）される。その際に、接続要求を送信（接続応答を受信）したデータ通信端末１０１が優先端末、接続応答を送信（接続要求を受信）したデータ通信端末１０１が非優先端末と決定される。つまり、本実施形態の非接触通信１０２では、接続要求を送信したデータ通信端末１０１が優先的にデータの送信を行うことができる。従って、例えば、一方のデータ通信端末１０１のみが送信対象のデータを有しており、該データ通信端末１０１が接続要求を送信した場合は、送信対象のデータを一括して送信することができる。
【００１８】
しかしながら、両方のデータ通信端末１０１が送信対象のデータを有する場合、接続要求を送信したデータ通信端末１０１がデータ送信を開始すると、該データ送信が完了するまで、接続応答を送信したデータ通信端末１０１からはデータを送信できないこととなる。その結果、接続応答を送信したデータ通信端末１０１のユーザが通信に不具合があると勘違いし、余計な操作を行ってしまうことが考えられる。また、接続応答を送信したデータ通信端末１０１のアプリケーションによっては、所定時間が経過してもデータの送信が開始されない場合にタイムアウトエラーとして処理してしまう可能性もある。
【００１９】
ここからは、上記課題を解決するための通信制御方法について説明する。
図２は本実施形態におけるデータ通信端末１０１の機能ブロック図である。
２０１はデータ通信端末１０１の制御を行なうデータ通信端末制御部である。２０２は非接触通信１０２のリンク制御やデータ伝送の制御を行なう非接触通信制御部である。２０３はデータ等の記憶を行なうメモリである。
【００２０】
２０４は非接触通信１０２を介したデータの送受信の制御を行なうデータ送受信制御部である。２０５は非接触通信１０２を介して通信を行なう相手データ通信端末（相手装置）との間でデータ送信の競合が発生したかを判定する送信競合判定部である。
【００２１】
２０６はデータを分割して送信する場合の制御を行なう分割送受信制御部である。なお、本実施形態において「データを分割して送信する」とは、データの送信とデータの受信とを切替えながら繰り返すことを示す。具体的には、送信対象のファイル（データ）のうち、一部のデータを送信したら一旦送信を中断し、相手端末からの一部のデータの受信を行ってからデータの送信を再開する、という処理を繰り返す。例えば、送信対象のファイルを複数のデータフレームに分割して送信する場合に、２データフレームの送信→２データフレームの受信→２データフレームの送信→・・・と繰り返す場合は「分割データ送信（又は受信）」と呼ぶものとする。一方、送信対象のファイルを複数のデータフレームに分割して送信する場合であっても、分割したデータフレームを全て続けて相手端末へ送信し、途中で相手端末からのデータ受信を行うことがない場合は、「分割データ送信」とは呼ばないものとする。なお、この場合は「一括データ送信」と呼ぶものとする。「一括データ送信」は、上述のように複数のデータフレームを継続して最後まで送信する場合と、送信対象のファイルを複数のデータフレームに分割せずにまとめて送信する場合と、の両方を含むものとする。
【００２２】
２０７はデータを分割して送信する場合に送信から受信への切替を制御する送信受信切替部、２０８はデータを分割して送信する場合に受信から送信への切替を制御する受信送信切替部である。
【００２３】
２０９はデータ通信端末１０１のユーザインタフェースである。２１０は数字や文字を入力するためのテンキー、２１１は表示部２１３における移動を入力するカーソルキー、２１２はデータの送信を入力する送信キー、２１３は表示を行なう表示部である。
【００２４】
２１４はアプリケーションの起動／停止の制御を行なうアプリケーション制御部である。２１５はアプリケーションであり、２１６は受信アプリ、２１７は送信アプリである。２１８は画像ファイルから表示部２１３に表示する為に復号化を行なう画像デコーダである。受信アプリ２１６は相手データ通信端末１０１Ｂから画像データの受信を行なうと順次画像デコーダ２１８に送り、画像を復号化して表示部２１３に表示する。
【００２５】
図３は本実施形態におけるデータ通信端末１０１の動作を示すフローチャートである。図４は図３における『分割判定処理Ｓ３０６』の詳細な動作を示すフローチャートである。分割判定処理Ｓ３０６は送信競合判定部２０５で行なわれる。
【００２６】
図５は図３における『後続データのファイル分割送受信Ｓ３０７』の詳細な動作を示すフローチャートである。後続データのファイル分割送受信Ｓ２０７は分割送信制御部２０６で行なわれる。
【００２７】
非接触通信１０２の機能を搭載するデータ通信端末１０１の使用者がファイルを他のデータ通信端末に送信する場合には以下の操作を行なう。使用者はテンキー２１０もしくはカーソルキー２１１の操作によってファイルを指定し、送信キー２１２を押してからお互いの非接触通信１０２のアンテナ部が近づくようにして他のデータ通信端末端末へ近づける。
【００２８】
図３の処理が開始され（Ｓ３０１）、ファイルが指定され送信操作が行なわれると（Ｓ３０２）、データ通信端末１０１のアプリケーション制御部２１４は送信アプリ及び受信アプリを起動する（Ｓ３０３）。
【００２９】
使用者がデータ通信端末１０１を他のデータ通信端末に対して近づけると、接続要求と接続応答のメッセージの送受信を行なって非接触通信１０２のリンクが確立し、データの送受信が可能になる。上述したように、接続要求と接続応答のいずれを送信したかによって、優先端末と非優先端末が決定される。ここでは、データ通信端末１０１が接続要求を送信し、優先端末として動作するものとして説明する。
【００３０】
非接触通信１０２のリンクが確立すると（Ｓ３０４）、優先端末として決定されたデータ通信端末１０１は、送信するファイルのサイズ（データ量）が所定のサイズ以上か否かを判定する（Ｓ３０５）。そして、所定のサイズ以上の場合には（Ｓ３０５のＹｅｓ）、データ通信端末１０１は『分割送信判定処理Ｓ３０６』を行う。送信ファイルのサイズが所定のサイズ以下の場合には（Ｓ３０５のＮｏ）、データ通信端末１０１は『分割送信判定処理Ｓ３０６』を行なわずに指定されたファイルの一括送信を行なう（Ｓ３１０）。なお、相手データ通信端末にも送信するファイルがある場合は、データ通信端末からのファイル送信完了後、起動中の受信アプリを用いて相手データ通信端末から送信されるファイルの受信を行う。つまり、送信ファイルのサイズが所定値より小さい場合は送信完了までの時間が短いため、相手データ通信端末が送信ファイルを有していたとしても直ちにデータ送信を開始でき、タイムアウトエラーの発生を防止できる。一方、送信ファイルのサイズが所定値以上の場合にファイルを一括送信してしまうと、相手データ通信端末が送信ファイルを有していた場合、タイムアウトエラーが発生する可能性がある。従って、送信ファイルのサイズが所定値以上の場合は、下記の分割判定処理を行う。
【００３１】
『分割判定処理Ｓ３０６』の詳細処理を図４のフローチャートに沿って説明する。『分割判定処理Ｓ３０６』は送信競合判定部２０５で行なわれる。
【００３２】
図４の処理開始後（Ｓ４０１）、データ通信端末１０１は所定の分割判定用送信バイト数のデータ送信を行なう（Ｓ４０２、Ｓ４０３、Ｓ４０４）。送信ファイルのバイト数が分割判定用送信バイトに満たずにファイルの送信が完了した場合は（Ｓ４０３のＹｅｓ）、データ通信端末１０１は『後続送信データ無』と判定しデータ送信を終了してＳ４０５に進む。それ以外の場合、すなわちＳ４０３にてファイル送信完了と判定されずに分割判定用送信バイト数のデータを送信した場合、（Ｓ４０４のＹｅｓ）、データ通信端末１０１は『後続送信データ有』と判定し、データの送信を中断してデータの受信処理を開始する。つまり、優先端末として動作するデータ通信端末１０１は、未だ送信すべきデータがあり、かつ優先的に該データを送信できるにも拘らず、一旦データの送信を中断し、相手データ通信端末にデータの送信権を与える。
【００３３】
データ通信端末１０１はデータ受信待タイマを開始し（Ｓ４０５）、データの受信を行なう。なお、データ受信待タイマは、少なくとも非優先端末のフレーム間隔ＩＦＳｎよりも長い時間に設定される。データ受信待タイマがタイムアウトする前に受信データを検出しなかった場合は（Ｓ４０６のＮｏ、Ｓ４１２のＹｅｓ）、『受信データ無』と判定しデータ受信を終了する。この場合、Ｓ４０３の判定結果にてファイル送信が完了済みであれば（Ｓ４１３のＹｅｓ）、データ通信端末１０１は『後続送信データ無・受信データ無』と判定し（Ｓ４１９）、図４の処理を終了する。Ｓ４０３でファイル送信完了済みと判定されていなければ（Ｓ４１３のＮｏ）、データ通信端末１０１は『後続送信データ有・受信データ無』と判定し（Ｓ４１８）、図４の処理を終了する。
【００３４】
データ受信待タイマがタイムアウトする前に受信データを検出した場合（Ｓ４０６のＹｅｓ）、所定の分割判定用受信バイト数のデータの受信を行なう（Ｓ４０７、Ｓ４０８、Ｓ４０９）。なお、分割判定用送信バイト数と分割判定用受信バイト数とは同一の値とする。
【００３５】
受信バイト数が分割判定用受信バイトに満たないでファイルの受信が完了した場合（Ｓ４０８のＹｅｓ）、データ通信端末１０１は『後続受信データ無』と判定しデータ受信を終了してＳ４１１に進む。この場合、Ｓ４０３の判定にてファイル送信が完了済みであれば（Ｓ４１１のＹｅｓ）、データ通信端末１０１は『後続送信データ無・後続受信データ無』と判定し（Ｓ４１７）、図４の処理を終了する。Ｓ４０３でファイル送信完了済みと判定されていなければ（Ｓ４１１のＮｏ）、データ通信端末１０１は『後続送信データ有・後続受信データ無』と判定し（Ｓ４１６）、図４の処理を終了する。
【００３６】
Ｓ４０８にてファイル受信完了と判定されずに分割判定受信バイト数のデータを受信した場合（Ｓ４０９のＹｅｓ）、データ通信端末１０１は『後続受信データ有』と判定する。この場合、Ｓ４０３の判定にてファイル送信が完了済みであれば（Ｓ４１０のＹｅｓ）、データ通信端末１０１は『後続送信データ無・後続受信データ有』と判定し（Ｓ４１５）、図４の処理を終了する。Ｓ４０３でファイル送信完了済みと判定されていなければ（Ｓ４１０のＮｏ）、データ通信端末１０１は『後続送信データ有・後続受信データ無』と判定し（Ｓ４１４）、図４の処理を終了する。
【００３７】
このように、送信データに関しては、分割判定処理Ｓ３０６後に送信すべきデータが存在するか否かによって『後続送信データ有』と『後続送信データ無』の判定が分割判定処理Ｓ３０６で行なわれる。また、受信データに関しては、相手が送信してくるデータがなかった場合に『受信データ無』の判定が分割判定処理Ｓ３０６で行なわれる。相手が送信してくるデータがあった場合には、分割判定処理Ｓ３０６後に受信すべきデータが存在するか否かによって『後続受信データ有』と『後続送信データ無』の判定が分割判定処理Ｓ３０６で行なわれる。
【００３８】
従って、分割判定処理Ｓ３０６では次の種類の判定が行なわれる。
後続送信データ有・後続受信データ有
後続送信データ有・後続受信データ無
後続送信データ無・後続受信データ有
後続送信データ無・後続受信データ無
後続送信データ有・受信データ無
後続送信データ無・受信データ無
【００３９】
『後続送信データ有・後続受信データ有』の場合は、データ通信端末１０１は図３における『後続データのファイル分割送受信Ｓ３０７』を行なう。『後続データのファイル分割送受信Ｓ３０７』の処理内容の詳細に関しては後述する。
【００４０】
『後続送信データ無・後続受信データ有』の場合は、データ通信端末１０１は図３における『後続データのファイル一括受信Ｓ３０８』を行なう。『後続データのファイル一括受信Ｓ３０８』では、これ以降はデータ送信を一切行なわずに相手データ通信端末１０１からのファイルが終了するまでデータ受信をし続ける。
【００４１】
『後続送信データ有・後続受信データ無』および『後続送信データ有・受信データ無』の場合は、データ通信端末１０１は図３における『後続データのファイル一括送信Ｓ３０９』を行なう。『後続データのファイル一括送信Ｓ３０９』では、これ以降は途中でデータ受信を行なわずにファイルが終了するまでデータ送信をし続ける。即ち、データ送信の中断を行なわない。
【００４２】
『後続送信データ無・後続受信データ無』および『後続送信データ無・受信データ無』の場合は、データ通信端末１０１はデータ送受信処理を終了する（Ｓ３１１）。
【００４３】
『後続データのファイル分割送受信Ｓ３０７』の詳細処理を図５のフローチャートに沿って説明する。『後続データのファイル分割送受信Ｓ３０７』は分割送受信制御部２０６により行われ、データの送信と受信との切替えをファイル終了まで繰り返す。ファイル分割送受信Ｓ３０７の処理途中に相手からのファイル受信が完了した場合は、それ以降分割データ受信処理を行なわずにファイルが終了するまでデータ送信をし続ける。即ち、相手からのファイルの受信を完了した後はデータ送信の中断を行なわない。また、ファイル分割送受信Ｓ３０７の処理途中にファイル送信が完了した場合は、それ以降分割データ送信処理を行なわずにファイルが終了するまでデータ受信をし続ける。
【００４４】
図５の処理が開始された場合（Ｓ５０１）、分割データ送信では、データ通信端末１０１は所定の分割送信用送信バイト数のデータ送信を行なう（Ｓ５０２、Ｓ５０３、Ｓ５０４）。なお、分割送信用送信バイト数は、前述の分割判定用送信バイト数とは異なる値にしてもよいし、同一の値にしてもよい。
【００４５】
分割送信用送信バイトに満たないうちに送信ファイルが終了した場合（Ｓ５０３のＹｅｓ）、相手データ通信端末からのファイルを受信完了済みでなければ（Ｓ５１０のＮｏ）、Ｓ５０６に進み、分割データ受信を行なう。相手データ通信端末からのファイル受信を完了している場合は（Ｓ５１０のＹｅｓ）、送受信処理を終了する（Ｓ５１２）。
【００４６】
分割送信用送信バイト数のデータ送信が完了した場合（Ｓ５０４のＹｅｓ）、相手データ通信端末からのファイル受信が完了していなければ（Ｓ５０５のＮｏ）、Ｓ５０６に進み、分割データ受信を行う。つまり、優先端末として動作するデータ通信端末１０１は、未だ送信すべきデータがあり、かつ優先的に該データを送信できるにも拘らず、一旦データの送信を中断し、相手データ通信端末にデータの送信権を与えるようにする。
【００４７】
相手データ通信端末からのファイル受信が完了している場合は（Ｓ５０５のＹｅｓ）、Ｓ５０２に戻り、データの送信を継続する。なお、Ｓ５０５にて一度ファイルの受信が完了済みと判定された後は、それ以降Ｓ５０５の判定を行わなくともよい。その場合、残りの送信ファイルに関しては分割送信用送信バイト数とは異なるバイト数に分割して送信してもよいし、分割せずに一括送信してもよい。
【００４８】
分割データ受信では、データ通信端末１０１は所定の分割受信用受信バイト数のデータ受信を行なう（Ｓ５０６、Ｓ５０７、Ｓ５０８）。なお、分割受信用受信バイト数は分割送信用送信バイト数と同一の値にするものとする。
【００４９】
分割送信用受信バイトに満たないうちに受信ファイルが終了した場合（Ｓ５０７のＹｅｓ）、ファイル送信が完了済みでなければ（Ｓ５１１のＮｏ）、Ｓ５０２に戻り、データ送信を行なう。この場合、残りの送信ファイルを一括送信するようにしてもよい。ファイルの送信も完了している場合は（Ｓ５１１のＹｅｓ）、送受信処理を終了する（Ｓ５１２）。
【００５０】
分割受信用受信バイト数のデータ受信が完了した場合（Ｓ５０８のＹｅｓ）、相手データ通信端末へのファイル送信が完了していなければ（Ｓ５０９のＮｏ）、Ｓ５０２に戻り、再び分割データ送信処理（Ｓ５０２、Ｓ５０３、Ｓ５０４）を行う。相手データ通信端末へのファイル送信が完了している場合は（Ｓ５０９のＹｅｓ）、Ｓ５０６に戻り、データの受信を継続する。そして相手データ通信端末からのファイルの受信が完了するまでデータの受信を行う。
【００５１】
図６、図７は実施形態１におけるデータ通信端末１０１Ａとデータ通信端末１０１Ｂとの間のメッセージシーケンス図である。図６は、データ通信端末１０１Ａとデータ通信端末１０１Ｂの両方でファイルの送信操作が行われ、『分割判定処理Ｓ３０６』において『後続送信データ有・後続受信データ有』と判定された場合のメッセージシーケンス図である。
【００５２】
データ通信端末１０１Ａにて、ファイルが指定され送信操作が行なわれると（Ｔ６０１Ａ）、送信アプリ及び受信アプリが起動される。送信アプリ及び受信アプリが起動されると、アプリケーション２１５Ａからデータ送受信制御部２０４Ａにファイル送信要求（Ｍ６０１Ａ）が通知され、データ送受信制御部２０４Ａから非接触通信制御部２０２Ａに接続開始メッセージが通知される（Ｍ６０２Ａ）。
【００５３】
データ通信端末１０１Ｂにおいても同様にファイルが指定され送信操作が行われると（Ｔ６０１Ｂ）、送信アプリ及び受信アプリが起動される。そして、アプリケーション２１５Ｂからデータ送受信制御部２０４Ｂにファイル送信要求（Ｍ６０１Ｂ）が通知され、データ送受信制御部２０４Ｂから非接触通信制御部２０２Ｂに接続開始メッセージが通知される（Ｍ６０２Ｂ）。
【００５４】
使用者がデータ通信端末１０１Ａとデータ通信端末１０１Ｂとを近づけると（Ｔ６０２）、接続要求Ｍ６０３と接続応答Ｍ６０４のメッセージの送受信が行われ、非接触通信１０２のリンクが確立し、データの送受信が可能になる。なお、データ通信端末１０１Ａ、１０１Ｂ夫々の非接触通信制御部２０２Ａ、Ｂは、データ送受信制御部２０４Ａ、Ｂから通知される接続開始メッセージを受けると、早いもの勝ちで接続要求（Ｍ６０３）を送信する。図６では、データ通信端末１０１Ａの非接触通信制御部２０２Ａが先に接続要求（Ｍ６０３）を送信し、データ通信端末１０１Ｂの非接触通信制御部２０２Ｂが接続応答（Ｍ６０４）を返信するものとして説明する。その結果、データ通信端末１０１Ａが優先端末となり優先的にデータ送信権を獲得し、データ通信端末１０１Ｂが非優先端末となる。
【００５５】
接続要求（Ｍ６０３）を受信したデータ通信端末１０１Ｂの非接触通信制御部２０２Ｂは、接続完了メッセージ（Ｍ６０５Ｂ）をデータ送受信制御部２０４Ｂに通知する。接続完了メッセージ（Ｍ６０５Ｂ）を受けたデータ送受信制御部２０４Ｂは、ファイル送信開始の指示メッセージ（Ｍ６０６Ｂ）をアプリケーション２１５Ｂに通知する。該指示メッセージを受けたアプリケーション２１５Ｂは、起動中の送信アプリを用いてファイルの送信をデータ送受信制御部２０４Ｂに指示する（Ｍ６０７Ｂ）。なお、ファイル送信開始の指示メッセージ（Ｍ６０６Ｂ）の通知、もしくはファイル送信指示（Ｍ６０７Ｂ）の通知の際に、ファイルの送信が開始されたことを示すメッセージを表示部２１３に表示する等してユーザに報知するようにしてもよい。
【００５６】
接続応答（Ｍ６０４）を受信したデータ通信端末１０１Ａの非接触通信制御部２０２Ａも同様に、接続完了メッセージ（Ｍ６０５Ａ）をデータ送受信制御部２０４Ａに通知する。接続完了メッセージ（Ｍ６０５Ａ）を受けたデータ送受信制御部２０４Ａは、ファイル送信開始の指示メッセージ（Ｍ６０６Ａ）をアプリケーション２１５Ａに通知する。該指示メッセージを受けたアプリケーション２１５Ａは、起動中の送信アプリを用いてファイルの送信をデータ送受信制御部２０４Ａに指示する（Ｍ６０７Ａ）。なお、ファイル送信開始の指示メッセージ（Ｍ６０６Ａ）の通知、もしくはファイル送信指示（Ｍ６０７Ａ）の通知の際に、ファイルの送信が開始されたことを示すメッセージを表示部２１３に表示する等して、ユーザに報知するようにしてもよい。
【００５７】
データ通信端末１０１Ａのデータ送受信制御部２０４Ａは、送信ファイルのうち、分割判定用送信バイト数のデータを送信した後、データ通信端末１０１Ｂから送信される分割判定用受信バイト数のデータを受信する（Ｍ６０９）。該データを受信したデータ通信端末１０１Ａ、Ｂ夫々のデータ送受信制御部２０４Ａ、２０４Ｂは、ファイル受信通知をアプリケーション２１５Ａ、２１５Ｂに送信する（Ｍ６０８Ａ、Ｍ６０８Ｂ）。なお、ファイル受信通知（Ｍ６０８Ａ、Ｍ６０８Ｂ）を受けた際にファイル受信中であることを示すメッセージを表示部２１３に表示するようにしてもよい。
【００５８】
分割判定用送信バイト数のデータ送信、及び分割判定用受信バイト数のデータ受信を行うことにより『後続送信データ有・後続受信データ有』と判定したデータ通信端末１０１Ａは、送信ファイルの残りのデータの送信と、受信ファイルの残りのデータの受信を行う。具体的には、分割送信用送信バイト数のデータの送信と、分割受信用受信バイト数のデータの受信と、が交互に繰り返される（Ｍ６１０）。
【００５９】
ここで、データ通信端末１０１Ｂにて送信ファイルの送信が終了すると、アプリケーション２１５Ｂからファイル終了通知（Ｍ６１１Ｂ）がデータ送受信制御部２０４Ｂに送信される。そして、データ送受信制御部２０４Ｂからデータ送受信制御部２０４Ａへファイル終了通知（Ｍ６１１）が送信され、データ送受信制御部２０４Ａからアプリケーション２１５Ａへファイル終了通知（Ｍ６１１Ａ）が送信される。なお、データ通信端末１０１Ｂは、送信ファイルの送信が終了した時点で、ファイルの送信が完了したことを示すメッセージを表示部２１３に表示するようにしてもよい。
【００６０】
データ通信端末１０１Ａは、ファイル終了通知（Ｍ６１１Ａ）を受信することにより、ファイルの受信が完了したことを認識する。なお、この際に、データ通信端末１０１Ａは、ファイルの受信が完了したことを示すメッセージを表示部２１３に表示するようにしてもよい。
【００６１】
データ通信端末１０１Ａは、ファイルの受信が完了したことを判定すると、送信ファイルの残りのデータを送信し（Ｍ６１２）、全て終了したらファイル終了通知をデータ通信端末１０１Ｂへ送信する（Ｍ６１３Ａ、Ｍ６１３、Ｍ６１３Ｂ）。なお、データ通信端末１０１Ａは、送信ファイルの送信が終了した時点で、ファイルの送信が完了したことを示すメッセージを表示部２１３に表示するようにしてもよい。また、データ通信端末１０１Ｂは、ファイル終了通知（Ｍ６１３Ｂ）を受信した際にファイルの受信が完了したことを示すメッセージを表示部２１３に表示するようにしてもよい。こうして、データ通信端末１０１Ａと１０１Ｂとの間でのデータ通信が完了する。
【００６２】
図７は、データ通信端末１０１Ａにてファイル送信操作が行われ、データ通信端末１０１Ｂにてファイル受信操作が行われた場合のメッセージシーケンス図である。この場合、『分割判定処理Ｓ３０６』において『受信データ無・後続送信データ有』と判定される。なお、図６と同一の処理に関しては同一の符号が付されている。
【００６３】
データ通信端末１０１Ａにて、ファイルが指定され送信操作が行なわれると（Ｔ６０１Ａ）、送信アプリ及び受信アプリが起動される。送信アプリ及び受信アプリが起動されると、アプリケーション２１５Ａからデータ送受信制御部２０４Ａにファイル送信要求（Ｍ６０１Ａ）が通知され、データ送受信制御部２０４Ａから非接触通信制御部２０２Ａに接続開始メッセージが通知される（Ｍ６０２Ａ）。
【００６４】
データ通信端末１０１Ｂにおいてファイルの受信操作が行われると（Ｔ７０１Ｂ）、受信アプリのみが起動される。なお、ここでは受信アプリのみ起動するものとして説明するが、送信アプリも起動するようにしてもよい。
【００６５】
使用者がデータ通信端末１０１Ａとデータ通信端末１０１Ｂとを近づけると（Ｔ６０２）、接続要求Ｍ６０３と接続応答Ｍ６０４のメッセージの送受信を行なって非接触通信１０２のリンクが確立し、データの送受信が可能になる。図７では、データ通信端末１０１Ｂの非接触通信制御部２０２Ｂには接続開始メッセージが通知されないため、データ通信端末１０１Ａの非接触通信制御部２０２Ａのみ接続要求の送信を試みる。その結果、図６と同様に、データ通信端末１０１Ａの非接触通信制御部２０２Ａが接続要求（Ｍ６０３）を送信し、データ通信端末１０１Ｂの非接触通信制御部２０２Ｂが接続応答（Ｍ６０４）を返信する。
【００６６】
接続要求（Ｍ６０３）を受信したデータ通信端末１０１Ｂの非接触通信制御部２０２Ｂは、接続完了メッセージ（Ｍ６０５Ｂ）をデータ送受信制御部２０４Ｂに通知する。接続完了メッセージ（Ｍ６０５Ｂ）を受けたデータ送受信制御部２０４Ｂは、ファイル受信開始の指示メッセージ（Ｍ７０１Ｂ）をアプリケーション２１５Ｂに通知する。該指示メッセージを受けたアプリケーション２１５Ｂは、起動中の受信アプリを用いてデータ通信端末１０１Ａからのデータの受信を待機する。なお、ファイル送信開始の指示メッセージ（Ｍ７０１Ｂ）の通知の際に、ファイルの送信が開始されたことを示すメッセージを表示部２１３に表示するようにしてもよい。
【００６７】
接続応答（Ｍ６０４）を受信したデータ通信端末１０１Ａの非接触通信制御部２０２Ａは、接続完了メッセージ（Ｍ６０５Ａ）をデータ送受信制御部２０４Ａに通知する。接続完了メッセージ（Ｍ６０５Ａ）を受けたデータ送受信制御部２０４Ａは、ファイル送信開始の指示メッセージ（Ｍ６０６Ｂ）をアプリケーション２１５Ａに通知する。該指示メッセージを受けたアプリケーション２１５Ａは、起動中の送信アプリを用いてファイルの送信をデータ送受信制御部２０４Ａに指示する（Ｍ６０７Ａ）。なお、ファイル送信開始の指示メッセージ（Ｍ６０６Ｂ）の通知、もしくはファイル送信指示（Ｍ６０７Ｂ）の通知の際に、ファイルの送信が開始されたことを示すメッセージを表示部２１３に表示するようにしてもよい。
【００６８】
データ通信端末１０１Ａのデータ送受信制御部２０４Ａは、分割判定用送信バイト数のデータを送信し（Ｍ６０９）、データ受信待タイマにより計時される所定時間、データ通信端末１０１Ｂからの分割判定用受信バイト数のデータの受信を待機する。ここでは、データ通信端末１０１Ｂからデータが送信されないため、データ受信待タイマがタイムアウトする。その結果、データ通信端末１０１Ａは、『後続送信データ有・受信データ無』と判定し、『後続データのファイル一括送信』（Ｍ７０２）を行う。なお、Ｍ７０２ではファイルを所定のバイト数に分割して送信してもよいし、分割せずにまとめて送信してもよい。
【００６９】
データ通信端末１０１Ａは、ファイルの送信が完了したら、ファイル終了通知をデータ通信端末１０１Ｂへ送信する（Ｍ６１３Ａ、Ｍ６１３、Ｍ６１３Ｂ）。なお、データ通信端末１０１Ａは、ファイルの送信が完了した時点でファイル送信完了を示すメッセージを表示部２１３に表示するようにしてもよい。また、データ通信端末１０１Ｂはファイル終了通知（Ｍ６１３Ｂ）を受信した際に、ファイル受信完了を示すメッセージを表示部２１３に表示するようにしてもよい。こうして、データ通信端末１０１Ａと１０１Ｂとの間でのデータ通信が完了する。
【００７０】
以上のように、実施形態１では、優先端末となったデータ通信端末が、まず送信ファイルのデータ量が所定値以上か否かを判定する。そして、所定値以上の場合は、送信ファイルのうち、所定量のデータの送信を行ってからデータの送信を一時的に停止し、相手データ通信端末から送信されるデータがあるか否かを確認する。相手データ通信端末から送信されるデータがある場合は、相手データ通信端末との間でデータの送信が交互に行われるように送受信の役割を切替える。つまり、データを優先的に送信できる場合でもファイルを一括して送信せずに途中でデータ通信を中断し、相手データ通信端末へデータの送信権を譲るようにする。
【００７１】
これにより、非優先端末である相手データ通信端末からもデータの送信が開始されるので、通信がうまくいっているのに装置の使用者に余計な操作をさせてしまうということを回避できる。また、所定時間経過してもデータの送信が開始されないとタイムアウトエラーになるようなアプリケーションが使用されている場合であっても、エラーを発生させずにデータの送信を完了させることができる。なお、アプリケーションによっては、データの送信が開始されても所定時間以上次のデータが送信されないと、タイムアウトエラーになってしまうことも考えられるが、本実施形態ではデータを交互に送受信するようにしたので、上記事態が生じるのを回避できる。
【００７２】
つまり、本実施形態によれば、送信、受信のどちらか一方しか同時に行なえない通信方式であっても通信方式を変更せずに、ファイル送信中にファイル受信を行なうことができる。すなわち、双方の装置においてデータ送信がほぼ同時に開始された場合でもデータ送信又は受信が正常に行なわれていることを通信開始時からユーザに実感させることができる。
【００７３】
上記説明では、図４において分割判定用送信バイト数のデータ送信（Ｓ４０２〜Ｓ４０４）を行ってから分割判定用受信バイト数のデータ受信に切替えるものとして説明したが、分割判定用送信バイト数のデータ送信は省略しても構わない。優先端末として決定されたデータ通信端末は、分割判定用受信バイト数のデータ受信を行うだけでも、相手データ通信端末から送信されるデータがあるか否かを判定することができるためである。
【００７４】
また、上記説明では、図５において先にデータ送信を行ってからデータの受信に切替えるものとして説明したが、先にデータ受信を行ってからデータの送信に切替えるようにしても構わない。
【００７５】
また、上記説明では、ファイルが指定され送信操作が行なわれた時に送信アプリと受信アプリの両方を起動していたが、受信アプリは起動しなくてもよい。その場合、『分割判定処理Ｓ３０６』の時にデータ受信待タイマがタイムアウトする前に受信データを検出した場合（Ｓ４０６のＹｅｓ）に受信アプリを起動するようにしてもよい。但し、受信データを検出した場合（Ｓ４０６のＹｅｓ）に受信アプリを起動する場合は、初期の受信データを受信アプリが確実に処理するために、受信アプリ起動完了までに受信データをバッファリングする必要がある。本動作を行なうことによって、データを受信した場合にのみ受信アプリを起動するので、不要なアプリケーションの起動を回避でき、処理負荷も低減される。
【００７６】
（実施形態２）
実施形態１では、所定のデータ量のデータ送信、受信を最初に行うことにより相手から送信されるデータがあるか否かを確認し、ファイルの分割送受信を行うか否かを判定する場合について説明した。実施形態２では、最初にファイルの送信要求を互いに送受信することにより、ファイルの分割送受信を行うか否かを判定する例について説明する。システム構成図、データ通信端末１０１の機能ブロック図は実施形態１で説明した図１、図２と同様であるため、ここでの説明を省略する。
【００７７】
図８は本発明の実施例２におけるデータ通信端末１０１の動作を示すフローチャートである。なお、図３と同一の処理に関しては同一の符号が付されている。
【００７８】
ファイル送信を開始する方法は実施形態１と同じである。図８の処理が開始され（Ｓ８０１）、ファイルが指定され送信操作が行なわれると（Ｓ３０２）、データ通信端末１０１のアプリケーション制御部２１４は送信アプリを起動する（Ｓ８０２）。なお、ここでは送信アプリのみ起動するものとして説明するが、実施形態１と同様に受信アプリも起動するようにしても構わない。
【００７９】
使用者がデータ通信端末１０１を他のデータ通信端末に対して近づけると、接続要求と接続応答のメッセージの送受信を行なって非接触通信１０２のリンクが確立し、データの送受信が可能になる。上述したように、接続要求と接続応答のいずれを送信したかによって、優先端末と非優先端末が決定される。ここでは、データ通信端末１０１が接続要求を送信し、優先端末として動作するものとして説明する。
【００８０】
非接触通信１０２のリンクが確立すると（Ｓ３０４のＹｅｓ）、優先端末として決定されたデータ通信端末１０１はファイル送信要求を相手データ通信端末に対して送信する（Ｓ８０３）。ここで、ファイル送信要求とは、相手データ通信端末に対して送信するファイルがあることを示すメッセージである。
【００８１】
データ通信端末１０１は相手データ通信端末からファイル送信要求、又はファイル送信応答が送信されるのを一定時間待機する（Ｓ８０４、Ｓ８０８）。相手データ通信端末からファイル送信要求を受信しないでファイル送信応答を受信した場合（Ｓ８０４のＮｏ、Ｓ８０８のＹｅｓ）、データ通信端末１０１はファイルの一括送信を行なう（Ｓ８１１）。すなわち、ファイル送信要求を受信しない場合は相手データ通信端末からはデータが送信されないということであるので、データ通信端末１０１はデータ送信の中断を行なわずにファイルが終了するまでデータ送信をし続ける。
【００８２】
相手データ通信端末からファイル送信応答を受信する前にファイル送信要求を受信した場合（Ｓ８０４のＹｅｓ）、データ通信端末１０１は受信アプリを起動し（Ｓ８０５）、ファイル送信応答を相手データ通信端末に送信する（Ｓ８０６）。ファイル送信応答を送信した後、データ通信端末１０１は、相手データ通信端末からのファイル送信応答を待つ（Ｓ８０７）。相手データ通信端末からのファイル送信応答を受信すると、データ通信端末１０１は送信するファイルのサイズが所定のサイズ以上か否かを判定し（Ｓ３０５）、所定のサイズ以上の場合には（Ｓ３０５のＹｅｓ）、『ファイル分割送受信Ｓ８０９』を行なう。
【００８３】
『ファイル分割送受信Ｓ８０９』は、実施形態１の『後続データのファイル分割送受信Ｓ３０７』の処理と同じであり、フローチャートは図５で示される。
【００８４】
送信ファイルのサイズが所定のサイズ以下の場合（Ｓ３０５のＮｏ）には、データ通信端末１０１は『ファイル一括送受信』を行なう（Ｓ３１０）。この場合、データ通信端末１０１は送信アプリにより送信ファイルを全て送信した後、受信アプリを用いて、相手データ通信端末１０１からのファイルが終了するまでデータ受信をし続ける。
【００８５】
Ｓ８０９、Ｓ３１０、Ｓ８１１のいずれかの方法によりデータ通信が完了すると、図８の処理を終了する（Ｓ８１０）。
【００８６】
図９は実施形態２におけるデータ通信端末１０１Ａとデータ通信端末１０１Ｂとの間のメッセージシーケンス図である。図９の例では、データ通信端末１０１Ａとデータ通信端末１０１Ｂの両方でファイルの送信操作が行われ、Ｓ８０９の『ファイル分割送受信』が行われる。なお、図６と同一の処理に関しては同一の符号が付されている。
【００８７】
データ通信端末１０１Ａにて、ファイルが指定され送信操作が行なわれると（Ｔ６０１Ａ）、送信アプリが起動される。そして、アプリケーション２１５Ａからデータ送受信制御部２０４Ａにファイル送信要求（Ｍ６０１Ａ）が通知され、データ送受信制御部２０４Ａから非接触通信制御部２０２Ａに接続開始メッセージが通知される（Ｍ６０２Ａ）。
【００８８】
データ通信端末１０１Ｂにおいても同様にファイルが指定され送信操作が行われると（Ｔ６０１Ｂ）、送信アプリが起動される。そして、アプリケーション２１５Ｂからデータ送受信制御部２０４Ｂにファイル送信要求（Ｍ６０１Ｂ）が通知され、データ送受信制御部２０４Ｂから非接触通信制御部２０２Ｂに接続開始メッセージが通知される（Ｍ６０２Ｂ）。
【００８９】
使用者がデータ通信端末１０１Ａとデータ通信端末１０１Ｂとを近づけると（Ｔ６０２）、接続要求Ｍ６０３と接続応答Ｍ６０４のメッセージの送受信が行われ、非接触通信１０２のリンクが確立し、データの送受信が可能になる。ここでも図６と同様に、データ通信端末１０１Ａの非接触通信制御部２０２Ａが接続要求（Ｍ６０３）を送信し、データ通信端末１０１Ｂの非接触通信制御部２０２Ｂが接続応答（Ｍ６０４）を返信するものとする。その結果、データ通信端末１０１Ａが優先端末となり、データ通信端末１０１Ｂが非優先端末となる。
【００９０】
接続要求（Ｍ６０３）を受信したデータ通信端末１０１Ｂの非接触通信制御部２０２Ｂは、接続完了メッセージ（Ｍ６０５Ｂ）をデータ送受信制御部２０４Ｂに通知する。同様に、接続応答（Ｍ６０４）を受信したデータ通信端末１０１Ａの非接触通信制御部２０２Ａは、接続完了メッセージ（Ｍ６０５Ａ）をデータ送受信制御部２０４Ａに通知する。接続完了メッセージ（Ｍ６０５Ａ、Ｍ６０５Ｂ）を受けたデータ通信端末１０１Ａ、１０１Ｂ夫々のデータ送受信制御部２０４Ａ、２０４Ｂは、ファイル送信要求（Ｍ９０１）を送信する。また、データ通信端末１０１Ａ、１０１Ｂ夫々のデータ送受信制御部２０４Ａ、２０４Ｂは、ファイル送信要求（Ｍ９０１）を受信すると、ファイル送信応答（Ｍ９０２）を返信する。
【００９１】
データ通信端末１０１Ａ、１０１Ｂ夫々のデータ送受信制御部２０４Ａ、２０４Ｂは、ファイル送信要求（Ｍ９０１）を受信すると、受信アプリの起動指示メッセージをアプリケーション２１５Ａ、２１５Ｂに送信する。該起動指示メッセージを受信したアプリケーション２１５Ａ、２１５Ｂは受信アプリを起動する。
【００９２】
また、データ通信端末１０１Ａ、１０１Ｂ夫々のデータ送受信制御部２０４Ａ、２０４Ｂは、ファイル送信応答（Ｍ９０２）を受信すると、ファイル送信開始の指示メッセージをアプリケーション２１５Ａ、２１５Ｂに通知する（Ｍ６０６Ａ、Ｍ６０６Ｂ）。該指示メッセージを受けたアプリケーション２１５Ａ、２１５Ｂは、起動中の送信アプリを用いてファイルの送信をデータ送受信制御部２０４Ａ、２０４Ｂに指示する（Ｍ６０７Ａ、Ｍ６０７Ｂ）。
【００９３】
そして、ファイルの送信指示を受けたデータ送受信制御部２０４Ａ、２０４Ｂは、ファイルの分割送受信を開始する。具体的には、分割送信用送信バイト数のデータの送信と、分割受信用受信バイト数のデータの受信と、が交互に繰り返される（Ｍ６１０）。該データを受信したデータ通信端末１０１Ａ、Ｂ夫々のデータ送受信制御部２０４Ａ、２０４Ｂは、ファイル受信通知をアプリケーション２１５Ａ、２１５Ｂに送信する（Ｍ６０８Ｂ）。
【００９４】
ここで、データ通信端末１０１Ｂにて送信ファイルの送信が終了すると、アプリケーション２１５Ｂからファイル終了通知（Ｍ６１１Ｂ）がデータ送受信制御部２０４Ｂに送信される。そして、データ送受信制御部２０４Ｂからデータ送受信制御部２０４Ａへファイル終了通知（Ｍ６１１）が送信され、データ送受信制御部２０４Ａからアプリケーション２１５Ａへファイル終了通知（Ｍ６１１Ａ）が送信される。データ通信端末１０１Ａは、ファイル終了通知（Ｍ６１１Ａ）を受信することにより、ファイルの受信が完了したことを認識する。
【００９５】
データ通信端末１０１Ａは、ファイルの受信が完了したことを判定すると、送信ファイルの残りのデータを送信し（Ｍ６１２）、全て終了したらファイル終了通知をデータ通信端末１０１Ｂへ送信する（Ｍ６１３Ａ、Ｍ６１３、Ｍ６１３Ｂ）。こうして、データ通信端末１０１Ａと１０１Ｂとの間でのデータ通信が完了する。
【００９６】
以上のように、実施形態２では、送信するファイルがあることを示すファイル送信要求を最初に送受信することにより、相手データ通信端末から送信されるデータがあるか否かを確認する。そして、相手データ通信端末から送信されるデータがある場合は、相手データ通信端末との間でデータの送信が交互に行われるように送受信の役割を切替える。つまり、データを優先的に送信できる場合でもファイルを一括して送信せずに途中でデータ通信を中断し、相手データ通信端末へデータの送信権を譲るようにする。
【００９７】
これにより、非優先端末である相手データ通信端末からもデータの送信が開始されるので、通信がうまくいっているのに装置の使用者に余計な操作をさせてしまうということを回避できる。また、所定時間経過してもデータの送信が開始されないとタイムアウトエラーになるようなアプリケーションが使用されている場合であっても、エラーを発生させずにデータの送信を完了させることができる。また、アプリケーションによっては、データの送信が開始されても所定時間以上次のデータが送信されないと、タイムアウトエラーになってしまうことも考えられるが、本実施形態ではデータを交互に送受信するようにしたので、上記事態が生じるのを回避できる。
【００９８】
つまり、本実施形態によれば、送信、受信のどちらか一方しか同時に行なえない通信方式であってもファイル送信中にファイル受信を行なうことができる。すなわち、双方の装置においてデータ送信がほぼ同時に開始された場合でもデータ送信又は受信が正常に行なわれていることを通信開始時からユーザに実感させることができる。
【００９９】
なお、上記説明では、図８においてＳ８０３〜Ｓ８０７の処理を行ってからＳ３０５で送信ファイルサイズが所定値以上か否かの判定を行っていたが、先にＳ３０５の判定を行い、送信ファイルサイズが所定値以上の場合にＳ８０３〜Ｓ８０７の処理を行っても良い。即ち、送信ファイルのデータ量が所定値以上の場合に相手データ通信端末も送信ファイルを有するか判定するようにし、所定値未満の場合は『ファイルの一括送受信（Ｓ３１０）』を行うようにしてもよい。
【０１００】
また、上記説明では、データ通信端末１０１Ａ、１０１Ｂが夫々ファイル送信要求を送信することにより、相手に対してファイルの送信を行うことを通知していたが、他の方法を用いてもよい。例えば、接続要求または接続応答に、送信するファイルがあることを示す情報を含めて送信するようにしても構わない。また、ファイル送信要求を受信した側のデータ通信端末が、自らもファイルの送信を行う場合はファイル送信応答を送信し、ファイルの送信を行わない場合はファイル送信応答を送信しないようにしてもよい。また、ファイルの送信を行わないことを示すファイル送信応答を送信するようにしてもよい。この場合、ファイル送信要求を送信した端末は、相手からファイル送信応答が送信されるかを一定時間待機し、もしくは相手から送信されるファイル送信応答の内容を確認することにより、相手からもファイルの送信があるか否かを判定することができる。
【０１０１】
なお、上記実施形態１、２では、『分割判定処理Ｓ３０６』、『後続データのファイル分割送受信Ｓ３０７』及び『ファイル分割送受信Ｓ８０９』において、所定のデータ量毎に送信と受信とを切替えていたが、送信および受信はタイマで切替えてもよい。例えば、『分割判定処理Ｓ３０６』においては所定の分割判定用送信バイト数のデータ送信を行なっていたが、分割判定送信用タイマを設けて分割判定用送信タイマがタイムアウトするまでデータ送信を行なう処理で代用してもよい。すなわち、所定時間毎にデータの送信と受信とを切替えることにより、双方向のファイル送信を実現するようにしてもよい。
【０１０２】
また、上記実施形態１、２において、例えば、アプリケーション２１５からデータ送受信制御部２０４に送られるデータがバッファに蓄えられるが、バッファがオーバフローしてしまうとファイルデータの一部が欠落してしまう可能性がある。特に、相手データ通信端末からデータを受信している最中に上記不具合が発生する可能性がある。これを回避するために、データ分割送受信処理において、送信するデータが第一のしきい値以上になった場合は、分割データ受信途中でも分割データ送信を開始し、送信するデータが第二のしきい値以下になるまで分割データ送信を行なう。これにより自データ通信端末から送信するデータの欠落を防ぐことができるという効果がある。
【０１０３】
また、上記実施形態１、２では、接続要求を送信したデータ通信端末が優先端末となり接続応答を送信したデータ通信端末が非優先端末となるものとして説明したが、その逆でも構わない。また、接続要求を送信したか否かに応じて優先端末／非優先端末を決定するものとしたが、他の方法により優先端末／非優先端末を決定してもよい。例えば、接続要求と接続応答の送受信後にネゴシエーションを行い、優先端末／非優先端末の関係を決定するようにしてもよい。上記実施形態１、２では、非接触通信１０２の場合について説明したが、優先端末がデータ送信を行なう場合は非優先端末がデータ送信を待機する通信方式であれば、無線、有線に限らず適用が可能である。
【０１０４】
また、本実施形態の機能を実現するソフトウェアのコンピュータプログラムを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵ若しくはＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行する。これによっても、本発明の目的が達成されることは言うまでもない。
【符号の説明】
【０１０５】
１０１  データ通信端末
１０２  非接触通信
２０１  データ通信端末制御部
２０２  非接触通信制御部
２０３  メモリ
２０４  データ送受信制御部
２０５  送信競合判定部
２０６  分割送受信制御部
２０７  送信受信切替部
２０８  受信送信切替部
【図１】
2011009872.tif 000003
【図２】
2011009872.tif 000004
【図３】
2011009872.tif 000005
【図４】
2011009872.tif 000006
【図５】
2011009872.tif 000007
【図６】
2011009872.tif 000008
【図７】
2011009872.tif 000009
【図８】
2011009872.tif 000010
【図９】
2011009872.tif 000011
【図１０】
2011009872.tif 000012