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