(57)【要約】【課題】通信装置が、相手装置の通信の状態を考慮した適切なチャネルの切り替えを行うこと。【解決手段】第１の他の通信装置との第１の無線通信を行うと共に、第１の他の通信装置を介して設定される第２の他の通信装置との間の直接通信である第２の無線通信であって、第１の無線通信に係る第１の周波数と、第１の周波数と異なる第２の周波数とのいずれかを用いることが可能な第２の無線通信を行うことができる通信装置は、第１の他の通信装置から送信された信号が、通信装置と第２の他の通信装置との少なくともいずれかへ第１の他の通信装置から送信すべきデータが存在することを示す場合、第２の無線通信において、第１の周波数から第２の周波数への移行を制限する。【選択図】  図８
2016054403.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
第１の他の通信装置との第１の無線通信を行うと共に、前記第１の他の通信装置を介して設定される第２の他の通信装置との間の直接通信である第２の無線通信であって、前記第１の無線通信に係る第１の周波数と当該第１の周波数と異なる第２の周波数とのいずれかを用いることが可能な前記第２の無線通信を行うための通信手段と、
前記第１の他の通信装置から送信された信号が、前記通信装置と前記第２の他の通信装置との少なくともいずれかへ前記第１の他の通信装置から送信すべきデータが存在することを示す場合、前記第２の無線通信において、前記第１の周波数から前記第２の周波数への移行を制限するように、前記通信手段を制御する制御手段と、
を有することを特徴とする通信装置。
【請求項２】
前記制御手段は、前記第２の無線通信において、前記第１の周波数から前記第２の周波数への移行を禁止することで前記制限を行う、
ことを特徴とする請求項１に記載の通信装置。
【請求項３】
前記制御手段は、前記第２の無線通信において、前記第１の周波数から前記第２の周波数への移行を所定時間だけ禁止し、当該所定時間が経過した後に前記第１の周波数から前記第２の周波数への移行を許可することで前記制限を行う、
ことを特徴とする請求項１に記載の通信装置。
【請求項４】
前記制御手段は、前記第２の無線通信において前記第２の周波数で前記第２の他の通信装置と通信するとした場合の通信可能な時間を算出し、当該時間が所定時間より短い場合に、前記第２の無線通信において、前記第１の周波数から前記第２の周波数への移行を禁止することで前記制限を行う、
ことを特徴とする請求項１に記載の通信装置。
【請求項５】
前記制御手段は、前記第２の他の通信装置に送信予定のデータ量が、前記第２の無線通信において前記第２の周波数で前記第２の他の通信装置と通信するとした場合の送信可能なデータ量を超える場合に、前記第１の周波数から前記第２の周波数への移行を禁止することで前記制限を行う、
ことを特徴とする請求項１に記載の通信装置。
【請求項６】
前記制御手段は、前記第２の他の通信装置に送信予定のデータ量が、前記第２の無線通信において前記第２の周波数で前記第２の他の通信装置と通信するとした場合の通信可能な時間で送信を完了することが可能なデータ量を超える場合に、前記第１の周波数から前記第２の周波数への移行を禁止することで前記制限を行う、
ことを特徴とする請求項１に記載の通信装置。
【請求項７】
前記第１の他の通信装置から送信された信号が前記第２の他の通信装置へ当該第１の他の通信装置から送信すべきデータが存在することを示すかを判定するための情報を、前記第２の他の通信装置に対して要求して取得する取得手段をさらに有する、
ことを特徴とする請求項１から６のいずれか１項に記載の通信装置。
【請求項８】
前記制御手段は、前記取得手段が前記情報を取得できなかった場合、前記第１の他の通信装置から送信された信号が、当該第１の他の通信装置に接続する他の通信装置のいずれかへ当該第１の他の通信装置から送信すべきデータが存在することを示す場合に、前記制限を行う、
ことを特徴とする請求項７に記載の通信装置。
【請求項９】
前記情報は、ＩＥＥＥ８０２．１１規格におけるＡｓｓｏｃｉａｔｉｏｎ  Ｉｄｅｎｔｉｆｉｅｒ（ＡＩＤ）である、
ことを特徴とする請求項７又は８に記載の通信装置。
【請求項１０】
前記第１の他の通信装置は、ＩＥＥＥ８０２．１１規格による無線ＬＡＮのアクセスポイントであり、前記第１の他の通信装置から送信される信号は、Ｂｅａｃｏｎである、
ことを特徴とする請求項１から９のいずれか１項に記載の通信装置。
【請求項１１】
前記制御手段は、前記Ｂｅａｃｏｎにおける情報要素であるＴｒａｆｆｉｃ  Ｉｎｄｉｃａｔｉｏｎ  Ｍａｐ（ＴＩＭ）を参照することにより、前記第１の他の通信装置から送信された信号が、前記通信装置と前記第２の他の通信装置との少なくともいずれかへ前記第１の他の通信装置から送信すべきデータが存在することを示すかを判定する、
ことを特徴とする請求項１０に記載の通信装置。
【請求項１２】
前記第１の無線通信及び前記第２の無線通信は、ＩＥＥＥ８０２．１１規格シリーズに準拠した無線ＬＡＮの通信である、
ことを特徴とする請求項１から１１のいずれか１項に記載の通信装置。
【請求項１３】
前記第１の無線通信は、ＩＥＥＥ８０２．１１規格におけるインフラストラクチャモードの通信であり、前記第２の無線通信は、ＩＥＥＥ８０２．１１規格におけるＴｕｎｎｅｌｅｄ  Ｄｉｒｅｃｔ  Ｌｉｎｋ  Ｓｅｔｕｐ（ＴＤＬＳ）による通信である、
ことを特徴とする請求項１から１２のいずれか１項に記載の通信装置。
【請求項１４】
第１の他の通信装置との第１の無線通信を行うと共に、前記第１の他の通信装置を介して設定される第２の他の通信装置との間の直接通信である第２の無線通信であって、前記第１の無線通信に係る第１の周波数と当該第１の周波数と異なる第２の周波数とのいずれかを用いることが可能な前記第２の無線通信を行うための通信手段を有する通信装置の制御方法であって、
制御手段が、前記第１の他の通信装置から送信された信号が、前記通信装置と前記第２の他の通信装置との少なくともいずれかへ前記第１の他の通信装置から送信すべきデータが存在することを示す場合、前記第２の無線通信において、前記第１の周波数から前記第２の周波数への移行を制限するように、前記通信手段を制御する制御工程を有する、
ことを特徴とする制御方法。
【請求項１５】
第１の他の通信装置との第１の無線通信を行うと共に、前記第１の他の通信装置を介して設定される第２の他の通信装置との間の直接通信である第２の無線通信であって、前記第１の無線通信に係る第１の周波数と当該第１の周波数と異なる第２の周波数とのいずれかを用いることが可能な前記第２の無線通信を行うための通信手段を有する通信装置に備えられたコンピュータに、
前記第１の他の通信装置から送信された信号が、前記通信装置と前記第２の他の通信装置との少なくともいずれかへ前記第１の他の通信装置から送信すべきデータが存在することを示す場合、前記第２の無線通信において、前記第１の周波数から前記第２の周波数への移行を制限するように、前記通信手段を制御する制御工程を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線通信における周波数チャネル切り替え制御技術に関する。
【背景技術】
【０００２】
ＩＥＥＥ８０２．１１規格シリーズに代表される無線ＬＡＮ通信システムが広く利用されている。無線ＬＡＮでは、アクセスポイント（以後、ＡＰ）と呼ばれる基地局と、ＡＰの電波到達範囲内に存在し、無線接続状態のステーション（以後、ＳＴＡ）とが接続を確立してネットワークを確立し、無線通信を行う。そして、近年では、上述のアクセスポイント機能とステーション機能との両方の機能を有する無線通信装置が登場している。このような無線通信装置は、ＳＴＡとして他のアクセスポイントが構成したネットワークに接続しながら、自らがアクセスポイントとしてネットワークを構成し、他のＳＴＡとの間で接続を確立することができる。
【０００３】
また、従来型のＡＰとＳＴＡによる単純な無線ネットワーク構成だけでなく、さまざまな無線ＬＡＮネットワークの形態で通信を行う方法が出現している（特許文献１参照）。例えば、ＡＰに接続しているＳＴＡ同士が、直接接続（ダイレクトリンク）を用いて通信するための技術として、Ｔｕｎｎｅｌｅｄ  Ｄｉｒｅｃｔ  Ｌｉｎｋ  Ｓｅｔｕｐ（ＴＤＬＳ）がある。ＩＥＥＥ  ｓｔｄ  ８０２．１１−２０１２には、無線ＬＡＮ端末間でＡＰを介してＴＤＬＳ設定用の制御データを送受信することによって、無線ＳＴＡ間の直接接続を形成する技術が規定されている。直接接続を形成することにより、無線ＬＡＮ端末が相手端末と直接通信することとなるため、ＡＰの能力に縛られない通信が可能となる。
【０００４】
また、ＴＤＬＳでは、ＡＰが構成している無線ネットワークのチャネル（以下、「ベースチャネル」と呼ぶ。）に縛られずに、ＳＴＡ同士の直接通信のためにチャネルを別のチャネル（以下、「オフチャネル」と呼ぶ。）に切り替えることが可能である。これにより、例えば、ＡＰが２．４ＧＨｚ帯で動作している場合でも、ＳＴＡは、相手方のＳＴＡとの間で、５ＧＨｚ帯のチャネルを用いて直接通信をすることができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表２０１２−５２４４４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来手法では、通信装置は、直接通信する相手装置の通信状態や、チャネルスイッチ実行のための条件を確認せずにチャネルスイッチを行う。このため、相手装置の状態によっては、ＴＤＬＳによる直接通信ができなくなったり、通信効率が劣化したりする場合があるという課題があった。
【０００７】
本発明は、上記課題に鑑みなされたものであり、相手装置の通信の状態を考慮した適切なチャネルの切り替えを行うための技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明による通信装置は、第１の他の通信装置との第１の無線通信を行うと共に、前記第１の他の通信装置を介して設定される第２の他の通信装置との間の直接通信である第２の無線通信であって、前記第１の無線通信に係る第１の周波数と当該第１の周波数と異なる第２の周波数とのいずれかを用いることが可能な前記第２の無線通信を行うための通信手段と、前記第１の他の通信装置から送信された信号が、前記通信装置と前記第２の他の通信装置との少なくともいずれかへ前記第１の他の通信装置から送信すべきデータが存在することを示す場合、前記第２の無線通信において、前記第１の周波数から前記第２の周波数への移行を制限するように、前記通信手段を制御する制御手段と、を有する。
【発明の効果】
【０００９】
本発明によれば、相手装置の通信の状態を考慮した適切なチャネルの切り替えを行うことができる。
【図面の簡単な説明】
【００１０】
【図１】無線通信システムの構成例を示す図。
【図２】実施形態１の端末装置の機能構成例を示すブロック図。
【図３】実施形態１〜２のＴＤＬＳのセットアップ処理の流れの例を示すシーケンス図。
【図４】実施形態１〜２の端末装置が実行するＴＤＬＳのセットアップ処理の流れの例を示すフローチャート。
【図５】実施形態１の端末装置間の通信処理の流れの第１の例を示すシーケンス図。
【図６】実施形態１の端末装置間の通信処理の流れの第２の例を示すシーケンス図。
【図７】実施形態１の端末装置間の通信処理の流れの第３の例を示すシーケンス図。
【図８】実施形態１の通信処理時に端末装置が実行する処理の流れの例を示すフローチャート。
【図９】実施形態２〜３における無線通信装置の機能構成を示すブロック図。
【図１０】実施形態２の端末装置間の通信処理の流れの例を示すシーケンス図。
【図１１】実施形態２の通信処理時に端末装置が実行する処理の流れの例を示すフローチャート。
【図１２】実施形態２の通信処理時に端末装置が実行する処理の流れの例を示すフローチャート。
【図１３】実施形態３のＴＤＬＳのセットアップ処理の流れの例を示すシーケンス図。
【図１４】実施形態３の端末装置が実行するＴＤＬＳのセットアップ処理の流れの例を示すフローチャート。
【図１５】実施形態３の端末装置間の通信処理の流れの例を示すシーケンス図。
【図１６】実施形態３の通信処理時に端末装置が実行する処理の流れの例を示すフローチャート。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して本発明の実施の形態を詳細に説明する。なお、以下では、ＩＥＥＥ８０２．１１規格シリーズに準拠する無線ＬＡＮが用いられる場合について説明する。ただし、以下の実施形態は一例を示すものであって、本発明はこれに限られず、他の同様のシステムが用いられる場合にも適用可能である。
【００１２】
＜＜実施形態１＞＞
（無線通信システムの構成）
図１に、本実施形態に係る無線通信システムの構成例を示す。無線通信システムは、例えば、無線ＬＡＮによって通信を行う複数の無線通信装置を含む。図１の例では、第１の端末装置１０１及び第２の端末装置１０３が、それぞれアクセスポイント（ＡＰ）１０２との間で無線通信１０４及び１０６を行い、さらに、第１の端末装置１０１と第２の端末装置１０３との間での直接通信１０５が行われる。
【００１３】
なお、第１の端末装置１０１及び第２の端末装置１０３と、ＡＰ１０２との間の無線通信１０４及び１０６のための接続は、インフラストラクチャモードで確立される。この第１の端末装置１０１及び第２の端末装置１０３とＡＰ１０２との間の無線通信１０４及び１０６で使用される周波数帯域（周波数チャネル）は、ベースチャネル（なお、以下では「ＢＳＳ  ｃｈ」と表記する場合がある。）と呼ばれる。
【００１４】
また、第１の端末装置１０１と第２の端末装置１０３との間の直接通信１０５のための接続は、ＩＥＥＥ８０２．１１ｚで規定されたシーケンスによりＡＰ１０２を介して直接接続を設定するＴＤＬＳを用いて、設定される。なお、ＴＤＬＳとは、Ｔｕｎｎｅｌｅｄ  Ｄｉｒｅｃｔ  Ｌｉｎｋ  Ｓｅｔｕｐの略称である。直接通信１０５では、無線通信１０４及び１０６で使用されるベースチャネルを用いることが可能であるほか、ベースチャネルから、ベースチャネルとは異なる周波数チャネルへ遷移して、その遷移先のチャネルを用いることも可能である。この遷移先の周波数チャネルは、オフチャネル（なお、以下では「Ｏｆｆ  ｃｈ」と表記する場合がある。）と呼ばれる。また、無線通信１０４及び１０６と直接通信１０５とにおいて異なる周波数チャネルを使用するために、直接通信１０５において使用する周波数チャネルを遷移させることをチャネルスイッチと呼ぶ。
【００１５】
（端末装置の構成）
図２に、第１の端末装置１０１の機能構成例を示す。第１の端末装置１０１は、その機能構成として、例えば、無線送受信部２０１、ＴＤＬＳ通信設定部２０２、チャネルスイッチ実行部２０３、無線通信制御部２０４、ＴＤＬＳ通信切替制御部２０５、ＴＤＬＳ通信情報記憶部２０６を有する。なお、第２の端末装置１０３も同様の機能を有する。
【００１６】
無線送受信部２０１は、ＩＥＥＥ８０２．１１規格に従って、無線信号を送受信する機能部である。ＴＤＬＳ通信設定部２０２は、ＴＤＬＳ通信を実行するために必要な設定、及びＴＤＬＳの相手装置の識別情報であるＩＥＥＥ８０２．１１規格のＡＩＤ（Ａｓｓｏｃｉａｔｉｏｎ  Ｉｄｅｎｔｉｆｉｅｒ）を、相手装置から取得する。なお、以下では、第１の端末装置１０１のＴＤＬＳの相手装置が第２の端末装置１０３である場合について説明するが、これ以外のＴＤＬＳに対応している通信装置が相手装置であってもよい。ＴＤＬＳ通信設定部２０２は、第２の端末装置１０３に対して、第１の端末装置１０１自身のＡＩＤを送信し、これにより、第１の端末装置１０１と第２の端末装置１０３との間でＡＩＤを共有することができる。
【００１７】
ＴＤＬＳ通信切替制御部２０５は、ＴＤＬＳ通信設定部２０２で取得したＡＩＤを用いて、ＡＰ１０２から送信された信号であるＢｅａｃｏｎ内のＴＩＭ情報を解析する。ＴＩＭ（Ｔｒａｆｆｉｃ  Ｉｎｄｉｃａｔｉｏｎ  Ｍａｐ）は、Ｂｅａｃｏｎの情報要素であり、パワーセーブモード（ＰＳＭ）中の各端末装置へ送信するデータの有無を示す。したがって、ＴＤＬＳ通信切替制御部２０５は、ＡＩＤに基づいて、第１の端末装置１０１自身及び相手装置に対してＡＰ１０２が送信データを有しているかを判定することができる。なお、以下の各実施形態では、Ｂｅａｃｏｎ内のＴＩＭ情報が解析されるが、これらに相当する他の信号の他の情報要素が解析されてもよい。
【００１８】
ＴＤＬＳ通信切替制御部２０５は、このＴＩＭ情報の解析により、ＡＰ１０２との通信から第２の端末装置１０３とのＴＤＬＳ通信に変更する際のチャネルスイッチを実行するかを決定する。すなわち、ＴＤＬＳ通信切替制御部２０５は、ＴＩＭ情報に基づいて、場合によっては、ＴＤＬＳのチャネルスイッチの実行を禁止し、または特定の場合にのみ許可するなどの、チャネルスイッチの制限を行う。ＴＤＬＳ通信切替制御部２０５は、例えば、ＡＰ１０２が、第１の端末装置１０１および第２の端末装置１０３のいずれにも送信すべきデータを有しない場合にのみ、チャネルスイッチを許可し、それ以外の場合にチャネルスイッチを制限する。ＴＤＬＳ通信切替制御部２０５は、チャネルスイッチを実行すると決定した場合は、チャネルスイッチの実行に必要な値の設定を行う。
【００１９】
チャネルスイッチ実行部２０３は、ＴＤＬＳ通信切替制御部２０５においてチャネルスイッチが許可された場合に、チャネルスイッチのための手続きを実行する。ＴＤＬＳ通信情報記憶部２０６は、第２の端末装置１０３の情報またはＴＤＬＳによる直接通信の設定情報などを記憶する。無線通信制御部２０４は、送受信メッセージの制御を行う。
【００２０】
なお、全ての機能ブロックはソフトウェアもしくはハードウェア的に相互関係を有する。また上記の機能ブロック構成は一例であり、複数の機能ブロックが１つの機能ブロックを構成するようにしてもよいし、いずれかの機能ブロックが更に複数の機能ブロックに分割されてもよい。図２に示す各機能ブロックがハードウェアとして構成される場合には、これらは、例えば、ＣＰＵや各種のメモリ（ＲＯＭ，ＲＡＭ，ＨＤＤ等）、無線通信インターフェース、操作部、表示部等によって構成される。また、図２に示す各機能ブロックがソフトウェアとして構成される場合には、これらは、例えば、コンピュータプログラムとしてメモリに格納され、ＣＰＵにより実行されることで、第１の端末装置１０１を動作させる。
【００２１】
（設定処理）
続いて、第１の端末装置１０１（以下では「ＳＴＡ１」とする。）及び第２の端末装置（以下では「ＳＴＡ２」とする。）が、共に図２に示すような機能構成を有する場合に実行される処理について説明する。図３に、ＳＴＡ１及びＳＴＡ２がＴＤＬＳによる通信を行うためのセットアップ処理の流れの一例を示す。また、図４に、ＳＴＡ１及びＳＴＡ２が実行する処理の流れの例を示す。なお、ＳＴＡ１及びＳＴＡ２は、初期状態として、それぞれがインフラストラクチャモードによりＡＰに接続しており、ＡＰとの間での通信が可能な状態であるものとする。また、以下では、ＳＴＡ１は、例えばＳＴＡ２に送信すべき大量のデータが発生したことにより、セットアップ処理を開始して、高効率なデータ送信のための直接リンクを形成しようとしている場合について説明する。すなわち、以下では、ＳＴＡ１がＴＤＬＳによる直接通信の設定を開始し、ＳＴＡ２がそれに対応することにより、ＳＴＡ１とＳＴＡ２との間でセットアップ処理が実行されるものとする。なお、以下に説明する処理は、例えばＳＴＡ１及びＳＴＡ２のそれぞれにおけるＴＤＬＳ通信設定部２０２によって実行される。
【００２２】
まず、ＳＴＡ１は、ＳＴＡ２がＴＤＬＳに対応しているかどうかを確認するために、ＴＤＬＳ  ＤｉｓｃｏｖｅｒｙリクエストをＡＰ経由でＳＴＡ２へ送信する（Ｆ３０１〜Ｆ３０２、Ｓ４０２でＮＯ、Ｓ４０３）。一方、ＳＴＡ２は、ＳＴＡ１からＴＤＬＳ  Ｄｉｓｃｏｖｅｒｙリクエストを受信していることを確認すると（Ｓ４０２でＹＥＳ）、応答信号として、ＴＤＬＳ  ＤｉｓｃｏｖｅｒｙレスポンスをＳＴＡ１に送信する（Ｆ３０３、Ｓ４０９）。これにより、ＳＴＡ２は、ＴＤＬＳに対応している旨をＳＴＡ１へ通知することができる。なお、ＴＤＬＳ  Ｄｉｓｃｏｖｅｒｙレスポンスは、ＡＰを経由することなく直接送信される。
【００２３】
ＳＴＡ１は、ＴＤＬＳ  Ｄｉｓｃｏｖｅｒｙレスポンスを受信すると（Ｓ４０４でＹＥＳ）、ＳＴＡ２がＴＤＬＳに対応していることを把握する。そして、ＳＴＡ１は、直接接続を確立するために、ＡＰ経由で、ＴＤＬＳセットアップリクエストをＳＴＡ２へ送信する（Ｆ３０４〜Ｆ３０５、Ｓ４０５）。そして、ＳＴＡ２は、ＴＤＬＳセットアップリクエストを受信すると（Ｓ４１０でＹＥＳ）、ＡＰ経由で、ＳＴＡ１へ、ＴＤＬＳセットアップレスポンスを送信する（Ｆ３０６〜Ｆ３０７、Ｓ４１１）。
【００２４】
ＳＴＡ１は、ＴＤＬＳ  セットアップレスポンスを受信すると（Ｓ４０６でＹＥＳ）、ＳＴＡ２との間でＡＩＤを共有するため、ＡＰ経由でＳＴＡ２にＳＴＡ１のＡＩＤを通知する。また、ＳＴＡ１は、ＳＴＡ２のＡＩＤを通知するよう、併せてＳＴＡ２のＡＩＤを要求するリクエストを送信する（Ｆ３０８〜Ｆ３０９、Ｓ４０７）。ＳＴＡ２は、ＳＴＡ１のＡＩＤ情報の通知と、ＳＴＡ２のＡＩＤを要求するリクエストを受信すると（Ｓ４１２でＹＥＳ）、自身のＡＩＤをＳＴＡ１へ通知する（Ｆ３１０〜Ｆ３１１、Ｓ４１３）。
【００２５】
ＳＴＡ１は、ＳＴＡ２のＡＩＤを入手したのち（Ｓ４０８でＹＥＳ）、ＴＤＬＳ設定確認をＳＴＡ２へ送信する（Ｆ３１２〜Ｆ３１３、Ｓ４１４）。一方で、ＳＴＡ２は、ＳＴＡ１からＴＤＬＳ設定確認を受信し（Ｓ４１４）、これによりＳＴＡ１とＳＴＡ２との間の直接接続が確立される。これ以降、ＳＴＡ１とＳＴＡ２との間の直接通信が可能となる。
【００２６】
なお、ＳＴＡ１とＳＴＡ２との間のＡＩＤの共有処理（Ｆ３０８〜Ｆ３１１、Ｓ４０７〜Ｓ４０８及びＳ４１２〜Ｓ４１３）は、ＴＤＬＳ設定確認（Ｆ３１２〜Ｆ３１３、Ｓ４１４）の後に実行されてもよい。
【００２７】
（通信時の処理）
続いて、上述のようにして通信設定がされた後に実行される直接通信の流れについて説明する。ＳＴＡ１及びＳＴＡ２は、例えば直接通信の高速・効率化のために、直接通信で用いる周波数チャネルを、ＡＰとの通信で用いる周波数チャネルとは異なる周波数チャネルに変更（チャネルスイッチ）しようとする。ただし、本実施形態では、ＳＴＡ１及びＳＴＡ２は、ＡＰから受信したＢｅａｃｏｎのＴＩＭ情報要素を解析して、自身または相手装置に対するＡＰからの送信データが存在する場合には、このようなチャネルスイッチを禁止する。これにより、ＳＴＡ１又はＳＴＡ２がＡＰからのデータの受信中にチャネルスイッチリクエストを受信して、制限時間内にリクエストに関する返答ができなくなることによってＴＤＬＳによる直接通信ができなくなってしまうことを防止する。
【００２８】
このような処理の流れについて、図５〜図８を参照して説明する。なお、図５はＳＴＡ１及びＳＴＡ２に対してＡＰからの送信データがない場合の処理の流れの例を示している。また、図６はＳＴＡ１に対してのみＡＰからの送信データがある場合の処理の流れの例であり、図７はＳＴＡ１及びＳＴＡ２の両者にＡＰからの送信データがある場合の処理の流れの例を示している。また、図８は、ＳＴＡ１及びＳＴＡ２が実行する処理の流れの例を示すフローチャートである。図８の各ステップは、ＳＴＡ１及びＳＴＡ２のＣＰＵが、それぞれのメモリに格納されたプログラムを実行することによって処理される。なお、図５〜図７に示す例以外にも、たとえばＳＴＡ２に対してのみＡＰからの送信データが存在する場合などの例が考えられるが、図８に示すフローは、それらの他の場合にも対応するものとなっている。また、ＳＴＡ１及びＳＴＡ２は、ＡＰとの無線通信を行わないＰｏｗｅｒ  Ｓａｖｅ  Ｍｏｄｅ（ＰＳＭ）中は、通常、相手装置との間でＴＤＬＳによる直接通信を実行するものとする。
【００２９】
まず、ＳＴＡ１及びＳＴＡ２に対してＡＰからの送信データがない場合の処理の流れの例について、図５を参照して説明する。ＡＰは、通信に必要な様々な情報を周辺の端末装置に知らせるため、ＩＥＥＥ８０２．１１規格に準拠しているＢｅａｃｏｎを周期的に送出する（Ｆ５０１）。そして、ＰＳＭで動作している端末装置は、ＬｉｓｔｅｎＩｎｔｅｒｖａｌおよびＲｅｃｅｉｖｅＤＴＩＭｓという２つのパラメータに基づいて、Ｂｅａｃｏｎを受信する。ここで、ＬｉｓｔｅｎＩｎｔｅｒｖａｌはＢｅａｃｏｎを受信する周期を規定するパラメータであり、ＲｅｃｅｉｖｅＤＴＩＭｓはＤＴＩＭ（Ｄｅｌｉｖｅｒｙ  ＴＩＭ）情報要素を含むＢｅａｃｏｎをすべて受信するか否かを定める設定パラメータである。上述のように、Ｂｅａｃｏｎには、その情報要素としてＴＩＭ（Ｔｒａｆｆｉｃ  Ｉｎｄｉｃａｔｉｏｎ  Ｍａｐ）が含まれている。ＴＩＭはＰＳＭ中の各端末装置への送信データの有無を示す情報要素であり、これを受信した端末装置は、ＡＩＤを用いてＴＩＭを解析し、自端末装置と他の端末装置を含む各端末装置に対する送信データの有無を把握することができる。本実施形態では、ＳＴＡ１及びＳＴＡ２は、ＴＤＬＳの相手装置のＡＩＤ情報をセットアップ時に共有しているため、Ｂｅａｃｏｎ受信後（Ｆ５０１、Ｓ８０２でＹＥＳ）、その相手装置のＴＩＭ情報を解析することができる（Ｆ５０２〜Ｆ５０３、Ｓ８０４）。なお、この解析は、ＳＴＡ１及びＳＴＡ２の各ＴＤＬＳ通信切替制御部２０５によって行われる。
【００３０】
ここで、ＳＴＡ１及びＳＴＡ２の両者にＡＰからの送信データが存在しないと判定すると（Ｓ８０５でＹＥＳ）、ＳＴＡ１のチャネルスイッチ実行部２０３はチャネルスイッチリクエストを生成し、ＳＴＡ２へと送信する（Ｆ５０４、Ｓ８０７）。チャネルスイッチリクエストには、チャネルスイッチのためにかかる時間を規定するＳｗｉｔｃｈＴｉｍｅ、または最初のデータフレーム受信まで待つことができる時間を規定するＳｗｉｔｃｈＴｉｍｅｏｕｔなどのパラメータが含まれる。なお、チャネルスイッチリクエストは、ＳＴＡ２からＳＴＡ１へ送信されてもよいが、ここでは、ＳＴＡ１がチャネルスイッチリクエストを送信する前には、ＳＴＡ２からのチャネルスイッチリクエストを受信していないものとする（Ｓ８０６でＮＯ）。
【００３１】
ＳＴＡ２は、チャネルスイッチリクエストを受信すると（Ｓ８０６でＹＥＳ）、ＳＴＡ２のチャネルスイッチ実行部２０３は、ＡＣＫ（Ａｃｋｎｏｗｌｅｄｇｍｅｎｔ）をＳＴＡ１へと返して、そのリクエストを受信したことをＳＴＡ１へと通知する（不図示）。なお、このＡＣＫについては、例えば、その後のチャネルスイッチレスポンスを送信することによって、このＡＣＫの送信が省略されてもよい。その後、ＳＴＡ２は、ＳｗｉｔｃｈＴｉｍｅおよびＳｗｉｔｃｈＴｉｍｅｏｕｔを含めたチャネルスイッチレスポンスをＳＴＡ１へと送信する（Ｓ８１３、Ｆ５０５）。
【００３２】
ＳＴＡ１は、ＳＴＡ２からのチャネルスイッチレスポンスを受信すると（Ｓ８０８でＹＥＳ）、ＳＴＡ２にＡＣＫを返し（不図示）、その後、Ｏｆｆ  ｃｈへとチャネルスイッチを実行する（Ｆ５０６、Ｓ８０９）。ＳＴＡ２は、ＳＴＡ１からＡＣＫを受信後、Ｏｆｆ  ｃｈへとチャネルスイッチを実行する（Ｆ５０７、Ｓ８１４）。そして、ＳＴＡ１及びＳＴＡ２が共にチャネルスイッチを実行した後、ＳＴＡ１とＳＴＡ２との間ではＯｆｆ  ｃｈにおいて直接通信が開始される（Ｆ５０８、Ｓ８１１、Ｓ８１６）。
【００３３】
その後、ＳＴＡ１及びＳＴＡ２は、ＢＳＳ  ｃｈにてＢｅａｃｏｎを受信するタイミングまでには、Ｏｆｆ  ｃｈからＢＳＳ  ｃｈへとチャネルスイッチをしておく必要がある。したがって、チャネルスイッチの時間（すなわちＢｅａｃｏｎを受信するタイミングによって定まる所定の時間）になると（Ｓ８１０でＹＥＳ）、ＳＴＡ１は、チャネルスイッチのためにチャネルスイッチレスポンスを送信する（Ｆ５０９、Ｓ８１２）。
【００３４】
ＳＴＡ２は、チャネルスイッチレスポンスを受信すると（Ｓ８１５でＹＥＳ）、ＳＴＡ１へＡＣＫを返し（不図示）、Ｏｆｆ  ｃｈからＢＳＳ  ｃｈへのチャネルスイッチを実行する（Ｆ５１１、Ｓ８１７）。また、ＳＴＡ１も、ＡＣＫを受信すると、Ｏｆｆ  ｃｈからＢＳＳ  ｃｈへのチャネルスイッチを実行する（Ｆ５１０、Ｓ８１７）。なお、ＳＴＡ１及びＳＴＡ２は、ＢＳＳ  ｃｈへとチャネルスイッチ後、周期的に送信されてくるＢｅａｃｏｎを受信するまでに時間がある場合は、ベースチャネルにおいてＴＤＬＳによる直接通信をしてもよい（Ｓ８０２でＮＯ、Ｓ８０３）。そして、ＳＴＡ１及びＳＴＡ２は、Ｂｅａｃｏｎを受信すると（Ｆ５１２、Ｓ８０２）、上述の手順を再度実行する。
【００３５】
続いて、ＳＴＡ１に対してのみＡＰからの送信データがある場合の処理の流れの例について、図６を参照して説明する。この場合、ＳＴＡ１及びＳＴＡ２が、ＡＰからのＢｅａｃｏｎを解析して自装置及び相手装置の少なくともいずれかに、ＡＰからの送信データが存在するかを判定するまで（Ｆ５０１〜Ｆ５０３、Ｓ８０２〜８０５）は、図５の場合と同様である。
【００３６】
一方で、本例では、ＳＴＡ１は、ＡＰからの自装置に対する送信データが存在すると判定し（Ｓ８０５でＮＯ、Ｓ８１８でＹＥＳ）、ＡＰからのデータを受信するために、ＰＳＭを解除することをＡＰに通知する（Ｆ６０１、Ｓ８１９）。ＡＰは、ＳＴＡ１からのＰＳＭを解除したことの通知を受け取ると、続いて、ＳＴＡ１に対して送信すべきデータを送信する（Ｆ６０２）。ＳＴＡ１は、ＡＰからのデータの受信（Ｓ８２０）が終了すると、ＡＰに対してＰＳＭへ移行することを通知する（Ｆ６０３、Ｓ８２１）。
【００３７】
なお、この場合、ＳＴＡ２は、ＡＰからのＳＴＡ１に対する送信データが存在するが、自装置に対する送信データは存在しないと判定すると（Ｓ８０５でＮＯ、Ｓ８１８でＮＯ）、次のＢｅａｃｏｎの受信を待ち受けている（Ｓ８０２）。したがって、次のＢｅａｃｏｎの受信タイミングまで時間がある場合で、ＳＴＡ１がＡＰからのデータの受信を終了した場合、ＳＴＡ１及びＳＴＡ２は、ＢＳＳ  ｃｈにおいてＴＤＬＳによる直接通信を行う（Ｆ６０４、Ｓ８０３）。そして、ＳＴＡ１及びＳＴＡ２は、Ｂｅａｃｏｎを受信すると（Ｆ５１２、Ｓ８０２）、上述の手順を再度実行する。
【００３８】
続いて、ＳＴＡ１及びＳＴＡ２の両者にＡＰからの送信データがある場合の処理の流れの例について、図７を参照して説明する。この場合も、ＳＴＡ１及びＳＴＡ２が、ＡＰからのＢｅａｃｏｎを解析して自装置及び相手装置の少なくともいずれかに、ＡＰからの送信データが存在するかを判定するまで（Ｆ５０１〜Ｆ５０３、Ｓ８０２〜８０５）は、図５の場合と同様である。
【００３９】
一方で、本例では、ＳＴＡ１及びＳＴＡ２は、ＡＰからの自装置に対する送信データが存在すると判定し（Ｓ８０５でＮＯ、Ｓ８１８でＹＥＳ）、ＡＰからのデータを受信するために、ＰＳＭを解除することをＡＰに通知する（Ｆ６０１、Ｆ７０１、Ｓ８１９）。ＡＰは、その通知を受信すると、ＳＴＡ１及びＳＴＡ２に対して、順に送信すべきデータを送信する（Ｆ６０２、Ｆ７０２、Ｓ８２０）。ＳＴＡ１及びＳＴＡ２は、ＡＰからのデータの受信（Ｓ８２０）が終了すると、ＡＰに対してＰＳＭに移行することを通知する（Ｆ６０３、Ｆ７０３、Ｓ８２１）。そして、ＳＴＡ１及びＳＴＡ２は、双方がＡＰに対してＰＳＭに移行することを通知した後、ＡＰからＢｅａｃｏｎを受信するまで、ＢＳＳ  ｃｈにおいてＴＤＬＳによる直接通信を行う（Ｆ６０４、Ｓ８０３）。その後、ＳＴＡ１及びＳＴＡ２は、Ｂｅａｃｏｎを受信すると（Ｆ５１２、Ｓ８０２）、上述の手順を再度実行する。
【００４０】
なお、上述の各例では、チャネルスイッチリクエストを送信した端末装置（ＳＴＡ１）が、ＢＳＳ  ｃｈへのチャネルスイッチのためのチャネルスイッチレスポンスを送信する例を示したが、これに限られない。すなわち、チャネルスイッチリクエストを受信した側の端末装置（ＳＴＡ２）が、チャネルスイッチレスポンスを送信してもよい。
【００４１】
このように、本実施形態では、各端末装置は、ＴＤＬＳによる直接通信をする端末装置に対してＡＰが送信するデータが存在する場合に、チャネルスイッチを禁止する。これにより、ＴＤＬＳによる直接通信を行う端末装置のいずれかがＡＰからのデータの受信中にチャネルスイッチリクエストを受信して、制限時間内にリクエストに関する返答ができなくなることを防ぐことが可能となる。この結果、ＳＴＡ１とＳＴＡ２との間でのＴＤＬＳによる直接通信ができなくなってしまうことを防ぐことが可能となる。また、ＡＰからのデータ受信に伴い、ＴＤＬＳによる直接通信を行うことができる時間が短くなる場合に、チャネルスイッチが実行されることがなくなる。この結果、ＡＰからのデータ受信とチャネルスイッチの処理とに多くの時間がかかる場合などで、ＴＤＬＳによる直接通信に割ける時間が極端に短くなってしまうことを防ぐことができる。また、効率的でないチャネルスイッチが実行される確率を低減することができるため、周波数利用効率を向上させることが可能となる。
【００４２】
なお、本実施形態では、端末装置が、ＴＤＬＳの相手装置にＡＰからの送信データがある場合に、次回のＢｅａｃｏｎの受信タイミングまではチャネルスイッチを禁止する例について説明した。しかしながら、そのような処理以外の処理が実行されてもよい。例えば、端末装置は、相手装置にＡＰからの送信データが存在すると判定してから所定時間だけ、チャネルスイッチを禁止してもよい。この場合、端末装置は、その所定時間の経過後に、チャネルスイッチリクエストを相手装置に送信してもよい。これにより、ＴＤＬＳによる直接通信を行う端末装置のいずれかがＡＰからのデータの受信中にチャネルスイッチリクエストを受信して、制限時間内にリクエストに関する返答ができなくなる確率を低減することができる。また、例えば、所定時間をＴＤＬＳによる直接通信の通信可能時間を十分に確保できるタイミングに基づいて定めておくことにより、チャネルスイッチ後のＳＴＡ１とＳＴＡ２との間の通信可能時間が極端に短くなることを防ぐことが可能となる。
【００４３】
＜＜実施形態２＞＞
上述の実施形態１では、端末装置が、自装置と、ＴＤＬＳによる直接通信の相手装置とに、ＡＰからの送信データが存在する場合に、チャネルスイッチリクエストを禁止する例について説明した。本実施形態では、端末装置は、チャネルスイッチを実行した場合にどれだけの通信時間を確保できるかを特定して、チャネルスイッチの禁止または許可を決定する。以下では、このような処理を実行する端末装置の構成及び処理の流れについて説明する。なお、本実施形態のシステム構成は、実施形態１のものと同様であるため説明を省略する。また、ＴＤＬＳによる直接接続の設定時のセットアップ処理の流れは、実施形態１と同様であるため、これについても説明を省略する。
【００４４】
（端末装置の構成）
図９に、第１の端末装置１０１の機能構成例を示す。なお、実施形態１に係る第１の端末装置１０１と同様の機能部については同様の参照番号を付すことによりその説明を省略する。本実施形態の第１の端末装置１０１は、実施形態１の第１の端末装置１０１のＴＤＬＳ通信切替制御部２０５と異なり、ＴＤＬＳ通信切替制御部９０１が効率判定部９０２を有している点である。なお、ＴＤＬＳ通信切替制御部９０１は、実施形態１のＴＤＬＳ通信切替制御部２０５と同様に、チャネルスイッチの実行適否を判定し、実行する場合に必要な値の設定を実行する。ただし、チャネルスイッチを実行すると判定する条件が実施形態１の場合とは異なる。
【００４５】
ＴＤＬＳ通信切替制御部９０１は、第２の端末装置１０３のＡＩＤを用いて、ＡＰ１０２が送信したＢｅａｃｏｎのＴＩＭ情報を解析して、第１の端末装置１０１及び第２の端末装置１０３に対してＡＰ１０２からの送信データが存在するかを判定する。さらに、効率判定部９０２において、ＴＤＬＳによる直接通信において、チャネルスイッチを実行することが効率的であるかを判定する。そして、ＴＤＬＳ通信切替制御部９０１は、チャネルスイッチを実行するのが効率的であると判定された場合に、チャネルスイッチ実行部２０３が相手装置との間でのＴＤＬＳによる直接通信においてチャネルスイッチを実行することを許可する。なお、効率判定部９０２は、第１の端末装置１０１及び第２の端末装置１０３の両方にＡＰからの送信データが存在しないと判定された場合、または第１の端末装置１０１のみにＡＰからの送信データが存在すると判定された場合に、上述の判定を行う。
【００４６】
なお、以下では、例として、効率判定部９０２において、オフチャネルでの通信時間の観点のみから、チャネルスイッチの実行が効率的か否かを判定する場合の処理の流れについて説明する。ただし、これ以外の観点から、チャネルスイッチの実行が効率的か否かの判定が行われてもよい。例えば、端末装置からの送信予定データ量、または送信予定データ量とオフチャネルにおける通信時間との双方などに基づいて、チャネルスイッチを実行することが効率的であるか否かが判定されてもよい。すなわち、効率判定部９０２は、例えば、端末装置からの送信予定データ量がオフチャネルで送信可能なデータ量以下である場合に、チャネルスイッチを実行することが効率的であると判定してもよい。また、効率判定部９０２は、例えば、端末装置からの送信予定データ量をオフチャネルにおける通信可能時間で送信を完了することが可能なデータ量以下である場合に、チャネルスイッチを実行することが効率的であると判定してもよい。
【００４７】
（通信時の処理）
続いて、第１の端末装置１０１（以下では「ＳＴＡ１」とする。）及び第２の端末装置（以下では「ＳＴＡ２」とする。）が、共に図９に示すような機能構成を有する場合に実行される通信時の処理について説明する。図１０は、本実施形態において、ＳＴＡ１に対してのみＡＰからの送信データがある場合の処理の流れの例である。また、図１１及び図１２は、本実施形態においてＳＴＡ１及びＳＴＡ２が実行する処理の流れの例を示すフローチャートである。図１１、１２の各ステップは、ＳＴＡ１及びＳＴＡ２のＣＰＵが、それぞれのメモリに格納されたプログラムを実行することによって処理される。なお、ＳＴＡ１及びＳＴＡ２は、ＡＰとの無線通信を行わないＰｏｗｅｒ  Ｓａｖｅ  Ｍｏｄｅ（ＰＳＭ）中は、通常、相手装置との間でＴＤＬＳによる直接通信を実行するものとする。
【００４８】
まず、ＳＴＡ１及びＳＴＡ２は、ＡＰからＢｅａｃｏｎを受信すると（Ｆ５０１、Ｓ８０２）、セットアップ時に共有したＡＩＤ値を用いて、自装置及び相手装置のＴＩＭ情報要素を解析する（Ｆ５０２〜Ｆ５０３、Ｓ８０４）。ここで、ＴＩＭの解析の結果、ＳＴＡ１とＳＴＡ２とのいずれに対してもＡＰの送信データが存在しない場合、又はＳＴＡ１とＳＴＡ２との両方に対してＡＰの送信データが存在する場合は、実施形態１と同様の処理が実行される。すなわち、ＳＴＡ１とＳＴＡ２とのいずれに対してもＡＰの送信データが存在しない場合（Ｓ８０５でＹＥＳ）、ＳＴＡ１又はＳＴＡ２は、図８のＳ８０６〜Ｓ８１２及びＳ８１７の処理を実行し、Ｏｆｆ  ｃｈへ移行して相手端末との間で直接通信を行う。この結果、システムの動作は、図５のようになる。一方、ＳＴＡ１とＳＴＡ２との両方に対してＡＰの送信データが存在する場合は、ＳＴＡ１又はＳＴＡ２は、図１１において、Ｓ８０５でＮＯ、Ｓ８１８でＹＥＳ、そしてＳ１１０４でＹＥＳと判定して、Ｏｆｆ  ｃｈへ移行しない。この結果、システムの動作は、図７のようになる。
【００４９】
一方で、ＳＴＡ１とＳＴＡ２とのいずれか一方に対してのみ、ＡＰの送信データが存在する場合（Ｓ８１８でＮＯ、又はＳ１１０４でＮＯ）は、実施形態１とは異なる処理が行われる。以下では、例として、ＳＴＡ１に対してのみ、ＡＰからの送信データが存在する場合についての処理の流れについて説明する。
【００５０】
ＳＴＡ１に対してのみＡＰからの送信データが存在する場合、ＳＴＡ２は、それを検知すると（Ｓ８１８でＮＯ）、ＳＴＡ１からのチャネルスイッチリクエストを含むデータ受信待ち状態に入る（Ｆ１００１、Ｓ１１０２）。一方、ＳＴＡ１は、ＡＰからデータを受信するため、ＰＳＭを解除することをＡＰに通知し（Ｆ６０１、Ｓ８１９）、ＡＰからのデータを受信する（Ｆ６０２、Ｓ８２０）。ＳＴＡ１は、ＡＰからのデータを受信した後、ＰＳＭに移行することをＡＰに通知する（Ｆ６０３、Ｓ８２１）。そして、本例ではＳＴＡ２に対してのＡＰからの送信データが存在しない（Ｓ１１０４でＮＯ）ため、ＳＴＡ１は、チャネルスイッチリクエストをＳＴＡ２に送信する（Ｆ５０４、図１２のＳ１２０１）。ＳＴＡ２は、チャネルスイッチリクエストを受信すると（Ｓ１１０２でＹＥＳ）、ＡＣＫを返した後（不図示）、ＳＴＡ１へ、チャネルスイッチレスポンスを送信する（Ｆ５０５、Ｓ８１３）。ＳＴＡ１は、ＳＴＡ２からのチャネルスイッチレスポンスを受信後（Ｓ１２０２でＹＥＳ）、ＡＣＫをＳＴＡ２へと返す（不図示）。
【００５１】
ＳＴＡ１は、その後、例えば、チャネルスイッチレスポンス内のＳｗｉｔｃｈＴｉｍｅおよびＬｉｓｔｅｎＩｎｔｅｒｖａｌ、ＲｅｃｅｉｖｅＤＴＩＭｓの値を使用して、チャネルスイッチを実行することが効率的か否かを判定する（Ｓ１２０３）。ＳＴＡ１は、例えば、これらの値に基づいてチャネルスイッチを実行した場合、次に受信すべきＢｅａｃｏｎを受信するまでにオフチャネルにおいてＳＴＡ２と直接通信可能な時間長である、オフチャネル滞在時間を計算する（Ｆ１００２）。そして、ＳＴＡ１は、その滞在時間の大きさと、事前に設定されている所定時間の大きさ（例えば、チャネルスイッチを実行時の最少のオフチャネル滞在時間）とを比較する（Ｆ１００３）。
【００５２】
なお、この最少のオフチャネル滞在時間は、どのような設定手法によって設定されてもよく、例えば、端末装置毎に設定されてもよいし、無線通信の開始前にユーザによって選択されてもよい。また、算出された滞在時間と最少滞在時間の比較は、ＳＴＡ２へＡＣＫを返した後に実行されなければならないわけではなく、ＳＴＡ２へＡＣＫを返す前に実行されてもよい。この場合、ＳＴＡ１は、算出した滞在時間が最少滞在時間より短い場合、ＳＴＡ２へＡＣＫを返さずに、ＢＳＳ  ｃｈでデータ送信を開始してもよいし、チャネルスイッチレスポンスを送信してＢＳＳ  ｃｈで直接通信を行うことをＳＴＡ２に通知してもよい。
【００５３】
ＳＴＡ１は、オフチャネル滞在時間の方が短い場合、すなわち、チャネルスイッチを実行することが効率的でないと判定した場合（Ｓ１２０３でＮＯ）、ＳＴＡ２に対して、チャネルスイッチレスポンスを送信する（Ｆ１００４、Ｓ１２０４）。ＳＴＡ１は、このチャネルスイッチレスポンスにより、ＢＳＳ  ｃｈへ移行しないようにＳＴＡ２へ通知することができる。なお、ＳＴＡ１は、このチャネルスイッチレスポンスを、例えばＳＴＡ２がチャネルスイッチレスポンスを送信した（Ｆ５０５、Ｓ８１３）後にＯｆｆ  ｃｈへ移行しない所定期間内に送信する。ＳＴＡ２は、チャネルスイッチレスポンスの送信（Ｓ８１３）後であっても、ＳＴＡ１からのチャネルスイッチレスポンスを受信すると（Ｓ１１０３でＹＥＳ）、Ｏｆｆ  ｃｈへと移行しない。そして、ＳＴＡ１及びＳＴＡ２は、ＢＳＳ  ｃｈにおいて直接通信を行う（Ｆ６０４、Ｓ８０３）。
【００５４】
一方、ＳＴＡ１は、オフチャネル滞在時間が、所定時間（例えば、最少のオフチャネル滞在時間）以上である場合（Ｓ１２０３でＹＥＳ）、Ｏｆｆ  ｃｈへと移行する（Ｆ５０６、Ｓ８０９）。そして、ＳＴＡ２は、ＳＴＡ１からチャネルスイッチレスポンスを受信しなかった場合（Ｓ１１０３でＮＯ）に、Ｏｆｆ  ｃｈへと移行する（Ｆ５０７、Ｓ８１４）。そして、ＳＴＡ１及びＳＴＡ２は、Ｏｆｆ  ｃｈにおいて直接通信を行う（Ｆ５０８、Ｓ８１１、Ｓ８１６）。その後、ＳＴＡ１は、Ｂｅａｃｏｎ受信タイミングが近づくと（Ｓ８１０でＹＥＳ）、チャネルスイッチレスポンスをＳＴＡ２へ送信し（Ｆ５０９、Ｓ８１２）、ＢＳＳ  ｃｈへと移行する（Ｆ５１０、Ｓ８１７）。ＳＴＡ２は、ＳＴＡ１からのチャネルスイッチレスポンスを受信すると（Ｓ８１５でＹＥＳ）、ＢＳＳ  ｃｈへと移行する（Ｆ５１１、Ｓ８１７）。その後、ＳＴＡ１及びＳＴＡ２は、Ｂｅａｃｏｎを受信すると（Ｆ５１２、Ｓ８０２）、上述の手順を再度実行する。なお、ＳＴＡ１及びＳＴＡ２は、ＢＳＳ  ｃｈへとチャネルスイッチ後、周期的に送信されてくるＢｅａｃｏｎを受信するまでに時間がある場合は、ベースチャネルにおいてＴＤＬＳによる直接通信をしてもよい（Ｓ８０２でＮＯ、Ｓ８０３）。
【００５５】
なお、上述の例では、Ｆ５０９において、チャネルスイッチリクエストを送信した端末装置（ＳＴＡ１）が、ＢＳＳ  ｃｈへのチャネルスイッチのためのチャネルスイッチレスポンスを送信する例を示したが、これに限られない。すなわち、チャネルスイッチリクエストを受信した側の端末装置（ＳＴＡ２）が、チャネルスイッチレスポンスを送信してもよい。
【００５６】
なお、上述の説明では、算出された滞在時間と所定時間との比較が、ＳＴＡ２からのチャネルスイッチレスポンスを受信した後に行われると説明したが、これに限られない。例えば、ＳＴＡ１は、チャネルスイッチリクエストを送信する前に、ＳＴＡ１自身のＳｗｉｔｃｈＴｉｍｅのみに基づいて計算したオフチャネルにおける滞在時間と、所定時間とを比較してもよい。この場合、ＳＴＡ１は、その時点でチャネルスイッチを実行することが効率的であると判定した場合に、ＳＴＡ２にチャネルスイッチリクエストを送信する。ＳＴＡ１は、その後、ＳＴＡ２からチャネルスイッチレスポンスを受信し、ＳＴＡ２のＳｗｉｔｃｈＴｉｍｅがＳＴＡ１のものよりも大きい場合にオフチャネルにおける滞在時間を再度計算する。そして、ＳＴＡ１は、最少滞在時間などの所定時間と再度算出されたオフチャネルにおける滞在時間との比較を行い、チャネルスイッチを実行することが効率的であるかを再度判定する。なお、ＳＴＡ１は、ＳＴＡ２のＳｗｉｔｃｈＴｉｍｅがＳＴＡ１のもの以下である場合は、再度の計算、比較及び判定を行う必要はなく、この場合は、ただちにＯｆｆ  ｃｈへの移行を開始してもよい。
【００５７】
このように、本実施形態では、直接通信をする端末装置の両方についてのＡＰからのデータ受信状況及びデータ受信後のオフチャネル滞在時間に基づいて、ＴＤＬＳによる直接通信時にＯｆｆ  ｃｈへのチャネルスイッチを実行するか否かが判定される。この場合、ＡＰからのデータ受信及びチャネルスイッチに時間がかかる場合などであっても、ＴＤＬＳによる直接通信に割ける時間が極端に短くなってしまうことを防ぐことができる。また、効率的でないチャネルスイッチが実行される確率を低減することができるため、周波数利用効率を向上させることが可能となる。
【００５８】
なお、上述の実施形態では、直接通信を行う２つの端末装置の両方に対してＡＰからの送信データが存在する場合は、次回のＢｅａｃｏｎ受信タイミングまではチャネルスイッチを禁止する例について説明した。しかしながら、このように端末装置の両方に対してＡＰからの送信データが存在する場合であっても、端末装置は、ＴＩＭ情報の解析後、一定時間待った後に、チャネルスイッチリクエストを相手装置へ送信してもよい。これにより、相手装置におけるＡＰからのデータ受信に要する時間に相当する一定時間だけ待つことにより、相手装置がＡＰからのデータ受信中にチャネルスイッチリクエストを送信することによりデータ処理が遅れる確率を低減することができる。そして、端末装置は、相手装置からチャネルスイッチレスポンスを受信することにより、続いて、オフチャネルの滞在時間の算出、所定時間との比較、及びチャネルスイッチ実行適否の判定を行う。これにより、例えば、ＡＰからのデータ受信が十分に短い期間で終了した場合などで、チャネルスイッチを実行することの利点を得ることができる場合に、チャネルスイッチを実行することが可能となる。
【００５９】
また、上述の実施形態では、直接通信をする端末装置が、自身および相手装置に関するＴＩＭ情報を解析する場合について説明した。しかしながら、端末装置は、自身に関するＴＩＭ情報のみを解析してもよい。すなわち、端末装置は、自身に対するＡＰからの送信データが存在しない場合に、ただちに、又は所定時間が経過するまで待って、相手装置からチャネルスイッチリクエストを受信しない場合に、チャネルスイッチリクエストを送信するようにしてもよい。また、端末装置は、自身に対するＡＰからの送信データが存在する場合に、ＢＳＳ  ｃｈにおけるＡＰからのデータの受信を終えた後に、相手装置にチャネルスイッチリクエストを送信してもよい。
【００６０】
また、端末装置は、相手装置からチャネルスイッチリクエストを受信して、チャネルスイッチした場合のオフチャネル滞在時間を算出してもよい。このとき、端末装置は、その滞在時間の算出に、チャネルスイッチリクエストに含まれている相手装置のＳｗｉｔｃｈＴｉｍｅの値および相手装置のＳｗｉｔｃｈＴｉｍｅを用いることができる。なお、オフチャネル滞在時間の算出、算出した滞在時間に基づくチャネルスイッチの実行の適否の判定は、チャネルスイッチレスポンスの送信前に行われてもよいし、送信後に行われてもよい。これらの算出及び判定がチャネルスイッチレスポンスの送信前に実行される場合、ＳＴＡ１は、算出した滞在時間の方が所定時間より短い場合に、ＳＴＡ２にチャネルスイッチレスポンスを送信する。
【００６１】
いずれにしても、本実施形態では、端末装置は、相手装置のＳｗｉｔｃｈＴｉｍｅおよびＬｉｓｔｅｎＩｎｔｅｒｖａｌ、ＲｅｃｅｉｖｅＤＴＩＭｓなどに基づいて、チャネルスイッチの適否を決定することができる。
【００６２】
＜＜実施形態３＞＞
上述の実施形態１及び２では、端末装置が、各実施形態で説明した端末装置の構成（例えば図２又は図９の構成）を有する場合の例について説明した。本実施形態では、端末装置の一方が、これらの構成を有しない場合の例について、処理の流れを説明する。なお、本実施形態のシステム構成は、実施形態１又は２のものと同様であるが、例として第２の端末装置１０３（ＳＴＡ２）が、図２及び図９のような構成を有しないものとする。
【００６３】
図１３は、ＳＴＡ１が、図９の構成を有する端末装置であり、ＳＴＡ２がそのような構成を有しない端末装置であり、両者共にＴＤＬＳによる直接通信が可能である場合のＴＤＬＳによる直接通信を行うためのセットアップ処理の流れの例を示している。また、図１４は、セットアップ処理時に図９の構成を有する端末装置（ＳＴＡ１）が実行する処理の流れを示すフローチャートである。図１４の各ステップは、ＳＴＡ１のＣＰＵが、メモリに格納されたプログラムを実行することによって処理される。なお、ＳＴＡ１及びＳＴＡ２は、初期状態として、それぞれがインフラストラクチャモードによりＡＰに接続しており、ＡＰとの間での通信が可能な状態であるものとする。また、以下では、ＳＴＡ１は、例えばＳＴＡ２に送信すべき大量のデータが発生したことにより、セットアップ処理を開始して、高効率なデータ送信のための直接リンクを形成しようとしている場合について説明する。すなわち、以下では、ＳＴＡ１がＴＤＬＳによる直接通信の設定を開始し、ＳＴＡ２がそれに対応することにより、ＳＴＡ１とＳＴＡ２との間でセットアップ処理が実行されるものとする。
【００６４】
（設定処理）
処理が開始されてから、ＳＴＡ１が、自身のＡＩＤをＳＴＡ２へ通知すると共に、ＳＴＡ２のＡＩＤの通知要求をＳＴＡ２へ送信するまでの処理（Ｆ３０１〜Ｆ３０９）は、図３と同様であるため、説明を省略する。
【００６５】
ＳＴＡ２は、ＳＴＡ１から、ＳＴＡ１自身のＡＩＤの通知とＳＴＡ２のＡＩＤの通知要求とを受信しても、上述のように、図９のような構成を有していないため、その通知要求に対応しない（ＡＩＤを通知しない）こととなる（Ｆ１３０２）。そして、ＳＴＡ１は、所定時間経過してもＳＴＡ２からＡＩＤの通知がない場合（Ｆ１３０１、Ｓ４０８でＮＯ、Ｓ１４０２でＹＥＳ）、ＳＴＡ２が通知要求に対応できない従来の端末装置であるものと判定する（Ｓ１４０３）。ＳＴＡ１は、判定終了後、ＴＤＬＳ設定確認をＳＴＡ２へ送信する（Ｆ３１２〜３１３、Ｓ４１４）。そして、ＳＴＡ２がＴＤＬＳ設定確認を受信すると、直接接続が確立され、これ以降、ＳＴＡ１及びＳＴＡ２は、直接通信が可能となる。なお、ＳＴＡ１による、ＳＴＡ２へのＳＴＡ１のＡＩＤ通知およびＳＴＡ２のＡＩＤ通知要求の送信は、ＴＤＬＳ設定確認の後に行われてもよい。
【００６６】
一方、ＳＴＡ１は、ＳＴＡ２からＴＤＬＳ  Ｄｉｓｃｏｖｅｒｙリクエストを受信した場合は、ＳＴＡ２から、ＳＴＡ２のＡＩＤ通知およびＳＴＡ１のＡＩＤ通知要求を受信したか否かを判定する（Ｓ４１２）。そして、ＳＴＡ１は、ＳＴＡ２から、ＳＴＡ２のＡＩＤ通知およびＳＴＡ１のＡＩＤ通知要求を受信した場合（Ｓ４１２でＹＥＳ）は、ＳＴＡ１自身のＡＩＤをＳＴＡ２へ通知する（Ｓ４１３）。一方、ＳＴＡ１は、ＳＴＡ２からＳＴＡ２のＡＩＤ通知およびＳＴＡ１のＡＩＤ通知要求を受信せずにＴＤＬＳ設定確認を受信した場合（Ｓ４１２でＮＯ、Ｓ１４０４でＹＥＳ）は、ＳＴＡ２が従来の端末装置であると判定する（Ｓ１４０６）。同様に、ＳＴＡ１は、ＳＴＡ２からＳＴＡ２のＡＩＤ通知およびＳＴＡ１のＡＩＤ通知要求を受信せずに所定時間が経過した場合（Ｓ４１２でＮＯ、Ｓ１４０４でＮＯ、Ｓ１４０５でＹＥＳ）も、ＳＴＡ２が従来の端末装置であると判定する（Ｓ１４０６）。そして、ＳＴＡ２からＳＴＡ１へ送信されたＴＤＬＳ設定確認に従って直接接続が確立され、これ以降、ＳＴＡ１及びＳＴＡ２は、直接通信が可能となる（Ｓ４１４）。
【００６７】
（通信時の処理）
続いて、上述のようにして通信設定がされた後に実行される直接通信の流れについて説明する。図１５は、図９のような機能構成を有しないＳＴＡ２に対してのみ、ＡＰからの送信データが存在する場合の通信時の処理の流れを示している。また、図１６は、本実施形態の、図９のような構成を有するＳＴＡ１が実行する処理の流れを示している。なお、ＳＴＡ１及びＳＴＡ２は、ＡＰとの無線通信を行わないＰｏｗｅｒ  Ｓａｖｅ  Ｍｏｄｅ（ＰＳＭ）中は、通常、相手装置との間でＴＤＬＳによる直接通信を実行するものとする。
【００６８】
ＳＴＡ２は、ＡＰからＢｅａｃｏｎを受信すると（Ｆ５０１）、ＳＴＡ２のみのＴＩＭ情報を解析する（Ｆ１５０３）。そして、ＳＴＡ２は、ＡＰからの送信データが存在する場合には、ＰＳＭを解除することをＡＰに通知し（Ｆ７０１）、ＡＰからデータを受信し（Ｆ７０２）、データの受信が終了した後にＰＳＭへ移行することをＡＰに通知する（Ｆ７０３）。
【００６９】
一方、ＳＴＡ１は、ＳＴＡ１以外の同一ＡＰに無線通信している全ての端末装置のＴＩＭ情報を解析し、ＳＴＡ１およびそれ以外の装置に対して、ＡＰからの送信データがあるか否かを判定することができる（Ｆ１５０１、Ｓ１６０２）。ただし、ＳＴＡ１は、ＳＴＡ２が図９のような構成を有しておらず、ＳＴＡ２のＡＩＤ情報が取得できない。このため、ＳＴＡ１は、ＴＩＭ情報のうち、どれがＳＴＡ２のものであるかを特定することはできない。
【００７０】
そして、ＳＴＡ１は、ＴＩＭ情報によりＳＴＡ１のみにＡＰからのデータ受信があると判定すると（Ｓ８１８でＹＥＳ、Ｓ１６０４でＮＯ）、ＳＴＡ２へチャネルスイッチリクエストを送信する（Ｆ５０４，Ｓ１２０１）。なお、これ以降の、処理の流れは、実施形態２と同様であるため、説明を省略する。
【００７１】
一方、ＳＴＡ１に対するＡＰからの送信データはないが、同一ＡＰに接続している他の端末装置に対するＡＰからの送信データがある場合（Ｓ１６０３でＮＯ、Ｓ８１８でＮＯ）は、そのＡＰからの送信データがある他の端末装置はＳＴＡ２でありうる。したがって、ＳＴＡ１は、この場合、チャネルスイッチリクエストの送信を所定時間だけ控え、ＳＴＡ２からのチャネルスイッチリクエストを受信するのを待つ（Ｆ１５０２、Ｓ１１０２、Ｓ１６０５）。そして、ＳＴＡ１は、ＳＴＡ２からのチャネルスイッチリクエストが受信されないまま所定時間が経過すると（Ｓ１６０５でＹＥＳ）、ＳＴＡ２へチャネルスイッチリクエストを送信する（Ｆ５０４，Ｓ１２０１）。なお、これ以降の、処理の流れは、実施形態２と同様であるため、説明を省略する。
【００７２】
また、同一ＡＰに接続している他の端末装置に対するＡＰからの送信データがある場合に、ＳＴＡ１に対するＡＰからの送信データが存在する場合（Ｓ８１８でＹＥＳ、Ｓ１６０４でＹＥＳ）もありうる。そして、そのＡＰからの送信データがある他の端末装置はＳＴＡ２でありうる。したがって、この場合、ＳＴＡ１は、ＡＰからデータを受信した後、チャネルスイッチリクエストを送信することなく、ＳＴＡ２へＢＳＳ  ｃｈにおいてデータ送信を開始する（Ｓ８０３）。
【００７３】
なお、ＳＴＡ１は、ＡＰからデータを受信した後、ＳＴＡ２がＡＰからデータ受信中である可能性があるため、ＳＴＡ２へのチャネルスイッチリクエストを送信しないが、ＳＴＡ２からのチャネルスイッチリクエストを受信するのを一定時間待ってもよい。この場合、ＳＴＡ１は、一定時間待ってもＳＴＡ２からのチャネルスイッチリクエストが受信されない場合、ＢＳＳ  ｃｈにおいて、ＳＴＡ２との直接通信を開始してもよい。一方、ＳＴＡ１は、ＳＴＡ２からチャネルスイッチリクエストを受信した場合に、チャネルスイッチを実行し、又は上述の実施形態１又は２で説明した処理を実行してもよい。
【００７４】
例えば、実施形態２で説明した処理が実行される場合、ＳＴＡ１は、ＳＴＡ２からチャネルスイッチリクエストを受信すると、ＡＣＫをチャネルスイッチレスポンス送信前又は送信後に送信し、チャネルスイッチした場合のオフチャネル滞在時間を算出する。そして、ＳＴＡ１は、この算出した滞在時間に基づいて、チャネルスイッチの実行の適否を判定し、実行に適した環境である場合には、そのままＯｆｆ  ｃｈへ移行して、Ｏｆｆ  ｃｈにおいて、直接送信すべきデータをＳＴＡ２へ送信することができる。一方、ＳＴＡ１は、チャネルスイッチの実行に適しない環境である場合には、チャネルスイッチレスポンスをＳＴＡ２へ送信し、ＢＳＳ  ｃｈにおいて、直接送信すべきデータをＳＴＡ２へ送信する。なお、オフチャネル滞在時間の算出、算出した滞在時間に基づくチャネルスイッチの実行の適否の判定は、チャネルスイッチレスポンスの送信前に行われてもよいし、送信後に行われてもよい。これらの算出及び判定がチャネルスイッチレスポンスの送信前に実行される場合、ＳＴＡ１は、算出した滞在時間の方が所定時間より短い場合に、ＳＴＡ２にチャネルスイッチレスポンスを送信する。
【００７５】
このように、本実施形態では、直接通信を行う端末装置の一方のみが図９のような構成を有している場合に、端末装置が、自装置以外に関するＴＩＭ情報を解析する。そして、その端末装置は、自装置が接続しているＡＰに接続中の他の端末装置に対するＡＰからの送信データが存在するか否かによって、チャネルスイッチの実行を制限する。これにより、端末装置は、他の端末装置の１つである相手装置がＡＰからデータを受信している際に、チャネルスイッチリクエストを送信してしまうことにより、相手装置で処理が遅れてしまう確率を低減することができる。また、効率的でないチャネルスイッチが実行される確率を低減することができるため、周波数利用効率を向上させることが可能となる。
【００７６】
＜＜その他の実施形態＞＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００７７】
１０１及び１０３：端末装置、１０２：アクセスポイント（ＡＰ）、２０１：無線送受信部、２０２：ＴＤＬＳ通信設定部、２０３：チャネルスイッチ実行部、２０４：無線通信制御部、２０５：ＴＤＬＳ通信切替制御部、２０６：ＴＤＬＳ通信情報記憶部
【図１】
2016054403.tif 000003
【図２】
2016054403.tif 000004
【図３】
2016054403.tif 000005
【図４】
2016054403.tif 000006
【図５】
2016054403.tif 000007
【図６】
2016054403.tif 000008
【図７】
2016054403.tif 000009
【図８】
2016054403.tif 000010
【図９】
2016054403.tif 000011
【図１０】
2016054403.tif 000012
【図１１】
2016054403.tif 000013
【図１２】
2016054403.tif 000014
【図１３】
2016054403.tif 000015
【図１４】
2016054403.tif 000016
【図１５】
2016054403.tif 000017
【図１６】
2016054403.tif 000018