(57)【特許請求の範囲】
【請求項１】
通信端末が実行する接続制御方法であって、
複数の通信チャネルを順次切り替えて自通信端末の周囲に存在する他の通信端末を探索し、
前記探索によって発見した他の通信端末に接続する場合に何れの側から接続要求を送信するかを決定し、
自通信端末から前記接続要求を送信しないときは、前記探索を停止し、所定の通信チャネルを使用して前記他の通信端末からの前記接続要求の受信を待ち合わせ、
受信を待ち合わせる前記接続要求は、自通信端末および前記他の通信端末の何れをアクセスポイントにするかを決定するネゴシエーションの要求である
通信端末の接続制御方法。
【請求項２】
何れの側から前記接続要求を送信するかの前記決定では、前記探索によって発見した他の通信端末の情報に基づいて、何れの側から前記接続要求を送信するかを決定する
請求項１に記載の通信端末の接続制御方法。
【請求項３】
何れの側から前記接続要求を送信するかの前記決定では、自通信端末のＭＡＣアドレスの値と前記他の通信端末のＭＡＣアドレスの値の大小関係に基づいて、何れの側から前記接続要求を送信するかを決定する
請求項２に記載の通信端末の接続制御方法。
【請求項４】
何れの側から前記接続要求を送信するかの前記決定では、自通信端末のデバイス名と前記他の通信端末のデバイス名の関係に基づいて、何れの側から前記接続要求を送信するかを決定する
請求項２に記載の通信端末の接続制御方法。
【請求項５】
前記探索によって発見した他の通信端末の情報に基づいて、自通信端末を前記他の通信端末に接続するか否かを決定する
請求項１乃至４の何れに記載の通信端末の接続制御方法。
【請求項６】
自通信端末を前記他の通信端末に接続するか否かの前記決定では、前記他の通信端末のＭＡＣアドレスに基づいて、自通信端末を前記他の通信端末に接続するか否かを決定する
請求項５に記載の通信端末の接続制御方法。
【請求項７】
自通信端末を前記他の通信端末に接続するか否かの前記決定では、前記他の通信端末のデバイス名に基づいて、自通信端末を前記他の通信端末に接続するか否かを決定する
請求項５に記載の通信端末の接続制御方法。
【請求項８】
自通信端末から前記接続要求を送信するときは、前記探索を停止し、前記所定の通信チャネルを使用して前記接続要求を前記他の通信端末へ送信する
請求項１乃至７の何れかに記載の通信端末の接続制御方法。
【請求項９】
送信する前記接続要求は、自通信端末および前記他の通信端末の何れをアクセスポイントにするかを決定するネゴシエーションの要求である
請求項８に記載の通信端末の接続制御方法。
【請求項１０】
前記所定の通信チャネルは、前記複数の通信チャネルのうち予め定められたルールによって決定される一の通信チャネルである
請求項１乃至９の何れかに記載の通信端末の接続制御方法。
【請求項１１】
前記探索では、サーチステートとリッスンステートとを交互に繰り返し、前記サーチステートでは、複数の通信チャネルを順次切り替えて各通信チャネル毎にプローブ要求の送信とプローブ応答の受信とを行い、前記リッスンステートでは、前記複数の通信チャネルのうちの何れか一つをリッスンチャネルに使用して前記プローブ要求の受信と前記プローブ応答の送信とを行う
請求項１乃至１０の何れかに記載の通信端末の接続制御方法。
【請求項１２】
通信ネットワークを構成する通信端末であって、
他の通信端末との間で複数の通信チャネルを使用して通信メッセージを送受信する無線通信部と、
前記無線通信部に接続された制御部と
を有し、
前記制御部は、
複数の通信チャネルを順次切り替えて自通信端末の周囲に存在する他の通信端末を探索し、
前記探索によって発見した他の通信端末に接続する場合に何れの側から接続要求を送信するかを決定し、
自通信端末から前記接続要求を送信しないときは、前記探索を停止し、所定の通信チャネルを使用して前記他の通信端末からの前記接続要求の受信を待ち合わせ、
受信を待ち合わせる前記接続要求は、自通信端末および前記他の通信端末の何れをアクセスポイントにするかを決定するネゴシエーションの要求である
通信端末。
【請求項１３】
前記制御部は、何れの側から前記接続要求を送信するかの前記決定では、前記探索によって発見した他の通信端末の情報に基づいて、何れの側から前記接続要求を送信するかを決定する
請求項１２に記載の通信端末。
【請求項１４】
前記制御部は、何れの側から前記接続要求を送信するかの前記決定では、自通信端末のＭＡＣアドレスの値と前記他の通信端末のＭＡＣアドレスの値の大小関係に基づいて、何れの側から前記接続要求を送信するかを決定する
請求項１３に記載の通信端末。
【請求項１５】
前記制御部は、何れの側から前記接続要求を送信するかの前記決定では、自通信端末のデバイス名と前記他の通信端末のデバイス名の関係に基づいて、何れの側から前記接続要求を送信するかを決定する
請求項１３に記載の通信端末。
【請求項１６】
前記制御部は、前記探索によって発見した他の通信端末の情報に基づいて、自通信端末を前記他の通信端末に接続するか否かを決定する
請求項１２乃至１５の何れかに記載の通信端末。
【請求項１７】
前記制御部は、自通信端末を前記他の通信端末に接続するか否かの前記決定では、前記他の通信端末のＭＡＣアドレスに基づいて、自通信端末を前記他の通信端末に接続するか否かを決定する
請求項１６に記載の通信端末。
【請求項１８】
前記制御部は、自通信端末を前記他の通信端末に接続するか否かの前記決定では、前記他の通信端末のデバイス名に基づいて、自通信端末を前記他の通信端末に接続するか否かを決定する
請求項１６に記載の通信端末。
【請求項１９】
前記制御部は、自通信端末から前記接続要求を送信するときは、前記探索を停止し、前記所定の通信チャネルを使用して前記接続要求を前記他の通信端末へ送信する
請求項１２乃至１８の何れかに記載の通信端末。
【請求項２０】
送信する前記接続要求は、自通信端末および前記他の通信端末の何れをアクセスポイントにするかを決定するネゴシエーションの要求である
請求項１９に記載の通信端末。
【請求項２１】
前記所定の通信チャネルは、前記複数の通信チャネルのうち予め定められたルールによって決定される一の通信チャネルである
請求項１２乃至２０の何れかに記載の通信端末。
【請求項２２】
前記制御部は、前記探索では、サーチステートとリッスンステートとを交互に繰り返し、前記サーチステートでは、複数の通信チャネルを順次切り替えて各通信チャネル毎にプローブ要求の送信とプローブ応答の受信とを行い、前記リッスンステートでは、前記複数の通信チャネルのうちの何れか一つをリッスンチャネルに使用して前記プローブ要求の受信と前記プローブ応答の送信とを行う
請求項１２に記載の通信端末。
【請求項２３】
通信ネットワークを構成するコンピュータを、
他の通信端末との間で複数の通信チャネルを使用して通信メッセージを送受信する無線通信部と、
前記無線通信部に接続された制御部と
して機能させ、
前記制御部は、
複数の通信チャネルを順次切り替えて自通信端末の周囲に存在する他の通信端末を探索し、
前記探索によって発見した他の通信端末に接続する場合に何れの側から接続要求を送信するかを決定し、
自通信端末から前記接続要求を送信しないときは、前記探索を停止し、所定の通信チャネルを使用して前記他の通信端末からの前記接続要求の受信を待ち合わせ、
受信を待ち合わせる前記接続要求は、自通信端末および前記他の通信端末の何れをアクセスポイントにするかを決定するネゴシエーションの要求である
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信端末の接続制御方法、通信端末、およびプログラムに関する。
【背景技術】
【０００２】
短距離通信ネットワークの一種に、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する通信ネットワークがある（例えば特許文献１、非特許文献１参照）。この通信ネットワークは、Ｗｉ−Ｆｉ  Ａｄ−ｈｏｃネットワークと比較して、１対複数の接続が可能であること、親経由で子どうしの通信が可能であること、セキュリティが比較的強度であること等の特徴がある。このため、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する通信ネットワークは、近年、データ共有等の各種の用途に利用されるようになっている。本発明は、この種の通信ネットワークにおける通信端末の接続制御方法に関する。但し、本発明は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する通信ネットワークのみに適用が限定されるものではない。【０００３】
Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する通信ネットワークでは、通信ネットワークに接続していない通信端末は、他の通信端末との間で探索に係る通信メッセージを授受することによって、自通信端末の周囲に存在する他の通信端末を探索する。具体的には、通信端末は、サーチステート、リッスンステートと呼ばれる２つの状態を交互に繰り返す探索処理を行う。サーチステートでは、通信端末は、複数の通信チャネルを順次に切り替え、各通信チャネル毎に、プローブ要求をブロードキャストによって送信し、それに対するプローブ応答を受信する。他方、リッスンステートでは、通信端末は、上記複数の通信チャネルのうちの何れか一つをリッスンチャネルと呼ぶ通信チャネルに選択して、リッスンチャネルを通じて他の通信端末からのプローブ要求を受信し、それに対するプローブ応答を送信する。プローブ応答の送信は、リッスンステートで行えるが、サーチステートでは行えない。サーチステートとリッスンステートの時間はランダムであり、またサーチステートにおける各通信チャネルの使用時間もランダムである。【０００４】
通信端末は、サーチステートにおいて或る通信チャネルを使用して送信したプローブ要求に対して、プローブ応答を受信することにより、自通信端末の周囲に他の通信端末が存在すること、および、当該他の通信端末が使用しているリッスンチャネルを認識する。他方、当該他の通信端末は、リッスンステートにおいてプローブ要求を受信することにより、自通信端末の周囲に他の通信端末が存在することを認識し、プローブ応答を返信する。プローブ要求には、このプローブ要求を送信した通信端末が使用しているリッスンチャネルの情報が含まれるため、プローブ要求を受信した通信端末は、プローブ要求を解析することにより相手の通信端末が使用しているリッスンチャネルを知ることができる。【０００５】
Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する通信ネットワークでは、通信端末は、探索処理によって他の通信端末を発見した後も、なおも探索処理を継続するようになっている。通信端末は、発見した他の通信端末への接続がユーザ等によって指示されると、探索処理を停止し、上記他の通信端末のリッスンチャネルを使用して、他の通信端末へ接続要求を送信する。他の通信端末は、この接続要求をリッスンチャネルを通じて受信すると、それに対する応答を返す。こうして通信端末間で接続処理が開始される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−１７６０４５号公報
【非特許文献】
【０００７】
【非特許文献１】Ｗｉ−Ｆｉ  Ａｌｌｉａｎｃｅ  Ｔｅｃｈｎｉｃａｌ  Ｃｏｍｍｉｔｔｅｅ  Ｐ２Ｐ  Ｔａｓｋ  Ｇｒｏｕｐ  Ｗｉ−Ｆｉ  Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ（Ｐ２Ｐ）Ｔｅｃｈｎｉｃａｌ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｖｅｒｓｉｏｎ１．１
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、隣接する複数の通信端末のそれぞれが探索処理を行っている状況において、或る通信端末が他の通信端末のリッスンチャネルを使用して当該他の通信端末へ接続要求を送信したとき、この接続要求が当該他の通信端末で受信される保証はない。その理由は、当該他の通信端末も探索処理を行っているため、サーチステートとリッスンステートを交互に繰り返しており、接続要求が送信された時点で、当該他の通信端末がリッスンステートになっている保証がないためである。このため、他の通信端末がリッスンステートでなくサーチステートになっていると、接続要求は他の通信端末で受信されず、従って、それに対する応答も返されない。そこで、接続要求を送信する通信端末は、応答が返るか、タイムアウトになるまで、接続要求を再送する。前述したように、サーチステートとリッスンステートとはランダムな時間で切り替えられるため、何れは、他の通信端末がリッスンステートになっている期間中に接続要求が送信されることになる。しかし、そうなるまでに長い時間がかかってしまうことが問題である。このような問題は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する通信ネットワークだけでなく、複数の通信チャネルを順次切り替えて自通信端末の周囲に存在する他の通信端末を探索する通信ネットワークで通常起こり得る。【０００９】
本発明の目的は、上述した課題、すなわち、探索によって発見した他の通信端末との間で接続要求を授受し終えるまでに長時間を要し、その結果、接続処理の開始が遅延する、という課題を解決する通信端末の接続制御方法を提供することにある。
【課題を解決するための手段】
【００１０】
本発明の第１の観点に係る通信端末の接続制御方法は、
通信端末が実行する接続制御方法であって、
複数の通信チャネルを順次切り替えて自通信端末の周囲に存在する他の通信端末を探索し、
上記探索によって発見した上記他の通信端末に接続する場合に何れの側から上記接続要求を送信するかを決定し、
自通信端末から上記接続要求を送信しないときは、上記探索処理を停止し、所定の通信チャネルを使用して上記他の通信端末からの上記接続要求の受信を待ち合わせる。【００１１】
本発明の第２の観点に係る通信端末は、
通信ネットワークを構成する通信端末であって、
他の通信端末との間で複数の通信チャネルを使用して通信メッセージを送受信する無線通信部と、
上記無線通信部に接続された制御部と
を有し、
上記制御部は、
複数の通信チャネルを順次切り替えて自通信端末の周囲に存在する他の通信端末を探索し、
上記探索によって発見した他の通信端末に接続する場合に何れの側から上記接続要求を送信するかを決定し、
自通信端末から上記接続要求を送信しないときは、上記探索処理を停止し、所定の通信チャネルを使用して上記他の通信端末からの上記接続要求の受信を待ち合わせる。【００１２】
本発明の第３の観点に係るプログラムは、
通信ネットワークを構成するコンピュータを、
他の通信端末との間で複数の通信チャネルを使用して通信メッセージを送受信する無線通信部と、
上記無線通信部に接続された制御部と
して機能させ、
上記制御部は、
複数の通信チャネルを順次切り替えて自通信端末の周囲に存在する他の通信端末をし、
上記探索によって発見した他の通信端末に接続する場合に何れの側から上記接続要求を送信するかを決定し、
自通信端末から上記接続要求を送信しないときは、上記探索処理を停止し、所定の通信チャネルを使用して上記他の通信端末からの上記接続要求の受信を待ち合わせる。
【発明の効果】
【００１３】
本発明は上述した構成を有するため、探索によって発見した他の通信端末との間で接続要求を速やかに授受することができ、その結果、接続処理を早期に開始することが可能になる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態に係る通信端末のブロック図である。
【図２】本発明の第１の実施形態に係る通信端末の動作の一例を示すフローチャートである。
【図３】本発明の第１の実施形態に係る通信端末において他の通信端末を探索する処理の概念図である。
【図４】本発明の第１の実施形態に係る通信端末の探索処理において他の通信端末を発見する場面の一例を示す概念図である。
【図５】本発明の第１の実施形態に係る通信端末の探索処理において他の通信端末を発見する場面の他の例を示す概念図である。
【図６】本発明の第１の実施形態において２つの通信端末が探索処理によって互いに相手を発見し、接続要求を授受するまでのシーケンスを模式的に示す図である。
【図７】探索処理によって互いに相手を発見した２つの通信端末の一方が探索処理を継続した場合のシーケンスを模式的に示す図である。
【図８】探索処理によって互いに相手を発見した２つの通信端末の双方が接続要求を送信した場合のシーケンスを模式的に示す図である。
【図９】本発明の第２の実施形態に係る通信端末のブロック図である。
【図１０】本発明の第２の実施形態に係る通信端末のＵｓｅｒ制御部の処理の一例を示すフローチャートである。
【図１１】本発明の第２の実施形態に係る通信端末のＷＦＤ接続処理部の処理の一例を示すフローチャートである。
【図１２】本発明の第１の実施形態において２つの通信端末が探索処理によって互いに相手を発見し、接続要求を授受するまでのシーケンスを模式的に示す図である。
【図１３】本発明の通信端末をコンピュータ等の電子情報処理装置で構成した場合のハードウェア構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１５】
次に本発明の実施の形態について図面を参照して詳細に説明する。
[第１の実施形態]
図１を参照すると、本発明の第１の実施形態に係る通信端末１００は、他の通信端末に接続して通信ネットワークを形成する無線通信端末である。通信端末１００は、無線通信部１０１と制御部１０２と記憶部１０３とアンテナ１０４とを有する。
【００１６】
無線通信部１０１は、他の通信端末との間で無線によって通信メッセージを授受する機能を有する。無線通信部１０１は、送信時には、制御部１０２からの要求に応じて通信メッセージのパケットを作成し、作成したパケットに対してヘッダや誤り検出符号の付加などの処理を行い、処理後のデータから搬送波の周波数帯の変調信号を生成し、アンテナ１０４から無線信号として送信する。また、無線通信部１０１は、受信時には、アンテナ１０４により受信した無線信号を復調して通信メッセージのパケットを復号し、誤り検出符号に基づいて誤りがないことを確認した通信メッセージを制御部１０２に通知する。
【００１７】
制御部１０２は、無線通信部１１１における利用周波数の決定（すなわち通信チャネルの決定）、各種通信メッセージの作成と送信指示、受信した各種通信メッセージの解釈、接続処理の制御など、通信端末１００全体の通信制御を司る機能を有する。
【００１８】
例えば、制御部１０２は、自通信端末が通信ネットワークに接続されていない場合、自通信端末の周囲に存在する他の通信端末と無線通信部１０１を通じて探索に係る通信メッセージを授受することによって、自通信端末の周囲に存在する他の通信端末を探索する機能を有する。この周囲の通信端末の探索処理は、例えば、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様のデバイス・ディスカバリ・プロシージャ（Ｄｅｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｃｅｄｕｒｅ）に準拠して行われる。具体的には、制御部１０２は、サーチステート、リッスンステートと呼ばれる２つの状態を交互に繰り返す探索処理を行う。
【００１９】
サーチステートでは、制御部１０２は、複数の通信チャネルを順次に切り替え、各通信チャネル毎に、プローブ要求（Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ）をブロードキャストによって送信し、それに対するプローブ応答（Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅ）を受信する。上記複数の通信チャネルとして、例えば、２．４ＧＨｚ帯では、チャネル１、６、１１の３つが使用される。プローブ要求には、このプローブ要求を送信した通信端末１００のＭＡＣアドレス、リッスンチャネルの情報などが含まれている。またプローブ応答には、このプローブ応答を送信した通信端末のＭＡＣアドレスおよびデバイス名（Ｐ２Ｐ  Ｄｅｖｉｃｅ  Ｎａｍｅ）などが含まれている。他方、リッスンステートでは、制御部１０２は、上記複数の通信チャネルのうちの何れか一つの通信チャネルをリッスンチャネルとして使用し、このリッスンチャネルを通じて他の通信端末からのプローブ要求を受信し、それに対するプローブ応答を送信する。リッスンチャネルは、探索処理の開始時点で選択され、探索処理が完了するまで維持される。プローブ応答の送信は、リッスンステートで行えるが、サーチステートでは行えない。また、サーチステートとリッスンステートの時間はランダムであり、サーチステートにおける各通信チャネルの使用時間もランダムである。
【００２０】
また制御部１０２は、探索処理によって発見した他の通信端末の情報に基づいて、自通信端末１００を当該他の通信端末に接続するか否か、および、接続する場合に何れの側から接続要求を送信するかを決定する機能を有する。
【００２１】
自通信端末１００を他の通信端末に接続するか否かの決定では、制御部１０２は、当該他の通信端末のＭＡＣアドレスに基づいて、自通信端末１００を当該他の通信端末に接続するか否かを決定してよい。例えば、制御部１０２は、当該他の通信端末のＭＡＣアドレスを構成する４８ビットのうちの上位Ｎビットの値が所定値であるときは接続すると決定し、そうでなければ接続しないと決定してよい。Ｎを２４とすると、ＭＡＣアドレスのベンダーＩＤ部が所定値の場合にのみ接続すると決定される。また、Ｎを３２とすると、ＭＡＣアドレスのベンダーＩＤ部と機種ＩＤとが所定値の場合にのみ接続すると決定される。但し、Ｎは２４、３２に限定されない。この方法によれば、通信端末１００自身のＭＡＣアドレスの上位Ｎビットの値を所定値としておくことで、ＭＡＣアドレスの上位Ｎビットの値が同じ所定値である通信端末どうしを相互に接続することができる。あるいは、相互に接続させたい通信端末のＭＡＣアドレスの一覧を記憶部１０３に記憶しておき、制御部１０２は、当該他の通信端末のＭＡＣアドレスがＭＡＣアドレスの一覧に記載されているときは接続すると決定し、そうでなければ接続しないと決定してよい。
【００２２】
また自通信端末１００を他の通信端末に接続するか否かの決定では、制御部１０２は、当該他の通信端末のデバイス名に基づいて、自通信端末１００を当該他の通信端末に接続するか否かを決定してよい。例えば、相互に接続させたい通信端末のデバイス名の一覧を記憶部１０３に記憶しておき、制御部１０２は、当該他の通信端末のデバイス名が上記一覧に記載されているときは接続すると決定し、そうでなければ接続しないと決定してよい。
【００２３】
一方、接続する場合に何れの側から接続要求を送信するかの決定では、制御部１０２は、自通信端末１００のＭＡＣアドレスの値と他の通信端末のＭＡＣアドレスの値の大小関係に基づいて、何れの側から接続要求を送信するか否かを決定してよい。通信端末のＭＡＣアドレスは、基本的に同一値が存在しないため、上記方法によれば、互いに接続しようとする２つの通信端末において、何れか一方が送信側、他方が受信側に決定される。但し、本発明は、ＭＡＣアドレスの値の大小関係に基づいて送信側、受信側を決定する方法に限定されない。例えば、プローブ応答に含まれるＰ２Ｐ  Ｄｅｖｉｃｅ  Ａｄｄｒｅｓｓや、Ｄｅｖｉｃｅ  Ｎａｍｅなどの他の情報に基づいて、何れの側から接続要求を送信するかを決定してもよい。例えば、デバイス名を表すビット列を数値に見立てて、自通信端末のデバイス名の数値と他の通信端末のデバイス名の数値とを比較し、値の小さい側を接続要求の送信側に決定してよい。
【００２４】
また制御部１０２は、上記の決定の結果、他の通信端末に接続し且つ自通信端末から接続要求を送信しないときは、探索処理を停止し、所定の通信チャネルを使用して他の通信端末からの接続要求の受信を待ち合わせる機能を有する。所定の通信チャネルは、接続要求の送信側と受信側とで同じ通信チャネルになるのであれば任意である。また、所定の通信チャネルは、複数の通信チャネルのうち予め定められたルールによって決定してもよい。例えば、所定の通信チャネルとして、接続要求の受信側となる通信端末のリッスンチャネルを使用してよい。あるいはその逆に、接続要求の送信側となる通信端末のリッスンチャネルを使用してよい。受信を待ち合わせる接続要求は、他の通信端末も自通信端末と同じく通信ネットワークに接続されていない場合、双方の通信端末の何れをアクセスポイントとして機能するグループオーナーにするかを決定するＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｒｅｑｕｅｓｔである。また、他の通信端末がグループオーナーである場合は、その通信グループへ加入するように要求するＩｎｖｉｔａｔｉｏｎ  Ｒｅｑｕｅｓｔである。但し、本発明は、これらの接続要求に限定されない。
【００２５】
さらに制御部１０２は、上記の決定の結果、他の通信端末に接続し且つ自通信端末から接続要求を送信するときは、探索処理を停止し、上記所定の通信チャネルを使用して接続要求を他の通信端末へ送信する機能を有する。他の通信端末へ送信する接続要求は、他の通信端末も自通信端末と同じく通信ネットワークに接続されていない場合、ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｒｅｑｕｅｓｔである。但し、本発明は、これらの接続要求に限定されない。
【００２６】
記憶部１０３は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）やハードディスクなどの記憶装置で構成され、各種のデータを記憶する。記憶するデータには、例えば、自通信端末１００が通信ネットワークに接続されているか否かを表す自通信端末ステータス情報、自通信端末１００が通信ネットワークに接続されている場合のグループオーナーの情報、探索した他の通信端末から受信した情報（当該通信端末のＭＡＣアドレス、端末名、ステータス情報（通信ネットワークに接続されていない未接続端末、接続済み親端末、永続的グループをホスト可能な状態か否かを表す他通信端末ステータス情報）などがある。
【００２７】
次に、本実施形態に係る通信端末１００の動作を説明する。
【００２８】
通信端末１００の制御部１０２は起動されると、図２に示す処理の実行を開始する。まず、制御部１０２は、自通信端末の周囲に存在する他の通信端末との間で無線通信部１１１を通じて探索に係る通信メッセージを授受することによって、周囲の通信端末を探索する（ステップＳ１０１）。
【００２９】
図３は、他の通信端末を探索する処理の概念図である。この例の探索処理は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様のデバイス・ディスカバリ・プロシージャ（Ｄｅｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｃｅｄｕｒｅ）に準拠している。リッスンステートでは、通信チャネルｃｈ１をリッスンチャネルに選択しており、通信チャネルｃｈ１を通じて他の通信端末から送信されてくるプローブ要求を受信する。ランダムな時間だけリッスンステートを継続した後、サーチステートに遷移し、まず通信チャネルｃｈ１を選択し、プローブ要求を送信し、通信チャネルｃｈ１を通じて他の通信端末から送信されてくるプローブ応答を受信する。ランダムな時間だけ通信チャネルｃｈ１を継続すると、次に通信チャネルｃｈ６を選択し、プローブ要求を送信し、通信チャネルｃｈ６を通じて他の通信端末から送信されてくるプローブ応答を受信する。ランダムな時間だけ通信チャネルｃｈ６を継続すると、次に通信チャネルｃｈ１１を選択し、プローブ要求を送信し、通信チャネルｃｈ１１を通じて他の通信端末から送信されてくるプローブ応答を受信する。そして、ランダムな時間だけ通信チャネルｃｈ１１を継続すると、再びリッスンステートに遷移し、上述と同様の動作を繰り返す。
【００３０】
制御部１０２は、探索処理において他の通信端末を発見すると、発見した他の通信端末の情報に基づいて、自通信端末１００と当該他の通信端末とを接続するか否かを決定する（ステップＳ１０２）。例えば図４に模式的に示すように、リッスンステートにおいて、他の通信端末からプローブ要求を受信することで制御部１０２は他の通信端末を発見し、この受信したプローブ要求に含まれる当該他の通信端末のＭＡＣアドレスを使用して、プローブ応答をユニキャスト通信により当該他の通信端末へ送信した後、探索処理を継続したまま、自通信端末１００と当該他の通信端末とを接続するか否かを決定する。また、図５に模式的に示すように、サーチステートにおいて、例えば通信チャネルｃｈ６を使用して送信したプローブ要求に対して他の通信端末からプローブ応答を受信することで制御部１０２は他の通信端末を発見し、探索処理を継続したまま、自通信端末１００と当該他の通信端末とを接続するか否かを決定する。
【００３１】
制御部１０２は、発見した他の通信端末と接続しないと決定した場合（ステップＳ１０３でＮＯ）、当該他の通信端末との接続処理は実施せず、再び他の通信端末が探索処理によって発見されるのを待つ。他方、発見した他の通信端末と接続すると決定した場合、制御部１０２は、自通信端末１００および他の通信端末の何れが接続要求を送信するかを決定する（ステップＳ１０４）。そして、接続要求を自通信端末が送信しないのであれば（ステップＳ１０５でＮＯ）、ステップＳ１０６の処理へ進み、接続要求を自通信端末が送信するのであれば（ステップＳ１０５でＹＥＳ）、ステップＳ１０７の処理へ進む。
【００３２】
ステップＳ１０６では、制御部１０２は、探索処理を停止し、所定の通信チャネルを使用して他の通信端末からの接続要求の受信を待ち合わせる。そして、所定の通信チャネルを通じて他の通信端末から接続要求を受信すると、それに対する応答を上記所定の通信チャネルを通じて他の通信端末へ送信し、ステップＳ１０８の処理へ進む。例えば、制御部１０２は、他の通信端末から接続要求としてＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｒｅｑｕｅｓｔを受信すると、応答としてＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｒｅｓｐｏｎｓｅを送信し、ステップＳ１０８の処理へ進む。また制御部１０２は、他の通信端末から接続要求としてＩｎｖｉｔａｔｉｏｎ  Ｒｅｑｕｅｓｔを受信すると、応答としてＩｎｖｉｔａｔｉｏｎ  Ｒｅｓｐｏｎｓｅを送信し、ステップＳ１０８の処理へ進む。
【００３３】
他方、ステップＳ１０７では、制御部１０２は、探索処理を停止し、所定の通信チャネルを使用して接続要求を他の通信端末へ送信し、ステップＳ１０８の処理へ進む。例えば、制御部１０２は、接続要求としてＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｒｅｑｕｅｓｔを送信し、他の通信端末からＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｒｅｓｐｏｎｓｅを受信すると、ステップＳ１０８の処理へ進む。
【００３４】
ステップＳ１０８では、制御部１０２は、接続要求とその応答の授受を行った自通信端末と他の通信端末との間で残りの接続処理に必要な情報の授受を行う。残りの接続処理に必要な情報の授受は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する。例えば、自通信端末と他の通信端末との間でＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  ＲｅｑｕｅｓｔとＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｒｅｓｐｏｎｓｅの授受を行った場合、ＧＯ  Ｃｏｎｆｉｒｍａｔｉｏｎを授受することにより、何れか一方の通信端末がグループオーナーに決定され、続いてＲｅｇｉｓｔｒａｒ（ＧＯ）がＣｒｅｄｅｎｔｉａｌ（認証情報）を生成してＥｎｒｏｌｌｅｅ（Ｃｌｉｅｎｔ）に発行するＷＰＳ  Ｐｒｏｖｉｓｉｏｎｉｎｇ  Ｐｈａｓｅ１処理、新たしい認証情報を使ってＣｌｉｅｎｔがＧＯに再接続するＷＰＳ  Ｐｒｏｖｉｓｉｏｎｉｎｇ  Ｐｈａｓｅ２処理が実施される。また、自通信端末と他の通信端末との間でＩｎｖｉｔａｔｉｏｎ  ＲｅｑｕｅｓｔとＩｎｖｉｔａｔｉｏｎ  Ｒｅｓｐｏｎｓｅの授受を行った場合、ＷＰＳ  Ｐｒｏｖｉｓｉｏｎｉｎｇ  Ｐｈａｓｅ１処理、ＷＰＳ  Ｐｒｏｖｉｓｉｏｎｉｎｇ  Ｐｈａｓｅ２処理が実施される。但し、他の通信端末が自通信端末の永続的グループをホスト可能な通信端末であれば、ＷＰＳ  Ｐｒｏｖｉｓｉｏｎｉｎｇ  Ｐｈａｓｅ１処理は省略される。
【００３５】
このように本実施形態によれば、探索処理で発見した他の通信端末との間で接続要求を速やかに授受することができ、その結果、接続処理を早期に開始することが可能になる。その理由は、通信端末１００は、探索処理によって発見した他の通信端末の情報に基づいて、自通信端末を他の通信端末に接続するか否か、および、接続する場合に何れの側から接続要求を送信するかを決定し、他の通信端末に接続し且つ自通信端末から接続要求を送信しないときは、探索処理を停止し、所定の通信チャネルを使用して他の通信端末からの接続要求の受信を待ち合わせるためである。
【００３６】
図６は本実施形態の効果を説明する模式図であり、通信ネットワークに接続していない２つの通信端末１００−１、１００−２が探索処理によって互いに相手を発見し、接続要求を授受するまでのシーケンスを模式的に示している。具体的には、通信端末１００−２は通信チャネルｃｈ１を使用したサーチステートでプローブ要求を送信し、通信端末１００−１はこのプローブ要求を通信チャネルｃｈ１を使用したリッスンステートで受信してプローブ応答を送信し、通信端末１００−２はこのプローブ応答を受信することで、双方の通信端末が互いに相手の通信端末を発見している。
【００３７】
また図６の例では、他の通信端末に接続すると決定する条件を、他の通信端末のＭＡＣアドレスの上位３２ビットが（０４：Ａ３：４３：５Ｆ）であることとし、何れの側が接続要求を送信するかを決定する条件をＭＡＣアドレスの値が小さい側であることとし、接続要求の送受信を行う所定の通信チャネルを決定するルールを、接続要求の受信側のリッスンチャネルであるとしている。このため、通信端末１００−１は、プローブ要求に含まれる通信端末１００−２のＭＡＣアドレス（０４：Ａ３：４３：５Ｆ：４３：２１）の上位３２ビットが所定値に一致するため、通信端末１００−２に接続すると決定する。また自通信端末１００−１のＭＡＣアドレス（０４：Ａ３：４３：５Ｆ：４３：２３）が通信端末１００−２のＭＡＣアドレスより大きいので、通信端末１００−１は、接続要求を送信しないと決定する。そして通信端末１００−１は、探索処理を停止し、自通信装置１００−１のリッスンチャネルである通信チャネルｃｈ１に固定して接続要求の受信を待ち合わせている。他方、通信端末１００−２は、受信したプローブ応答に含まれる通信端末１００−１のＭＡＣアドレスの上位３２ビットが所定値に一致するため、通信端末１００−１に接続すると決定する。また自通信端末１００−２のＭＡＣアドレスが通信端末１００−１のＭＡＣアドレスより小さいので、通信端末１００−２は、接続要求を送信すると決定する。そして通信端末１００−２は、探索処理を停止し、通信装置１００−１のリッスンチャネルである通信チャネルｃｈ１に固定して通信装置１００−１に対して接続要求を送信している。前述したように通信装置１００−１は通信チャネルｃｈ１に固定して接続要求の受信を待ち合わせているので、通信装置１００−２から送信された接続要求が通信装置１００−１で速やかに受信され、その応答が通信装置１００−１から通信装置１００−２へ送信されている。
【００３８】
図７は通信ネットワークに接続していない２つの通信端末１００−１、１００−２が探索処理によって互いに相手を発見し、接続要求を授受するまでの別のシーケンスを模式的に示している。図６と相違し、図７では通信端末１００−１が探索処理を継続している。この結果、通信端末１００−１がリッスンステートに切り替わるまで通信端末１００−２から送信された接続要求が通信端末１００−１で受信されず、幾度か接続要求が再送されている。
【００３９】
図８は通信ネットワークに接続していない２つの通信端末１００−１、１００−２が探索処理によって互いに相手を発見し、接続要求を授受するまでの別のシーケンスを模式的に示している。図６と相違し、図８では何れが接続要求を送信するかを決定せず、両方の通信端末１００−１、１００−２が他の通信端末と接続すると決定した時点で接続要求を他の通信端末のリッスンチャネルを使用して送信している。この結果、通信端末１００−１は通信端末１００−２のリッスンチャネルｃｈ６で接続要求を送信し、他方、通信端末１００−２は通信端末１００−１のリッスンチャネルｃｈ１で接続要求を送信し、何時まで経っても接続要求が授受できていない。
【００４０】
[第２の実施形態]
本実施形態では、主に本発明に係る通信端末のソフトウェア構造の詳細について説明する。図９を参照すると、本発明の第２の実施形態にかかる通信端末２００は、Ｗｉ−Ｆｉデバイス２０１と、ＷＦＤ接続処理部２０２と、Ｕｓｅｒ制御部２０３とを有する。
【００４１】
Ｗｉ−Ｆｉデバイス２０１は、無線ＬＡＮのデバイスドライバである。Ｗｉ−Ｆｉデバイス２０１は、図示しない無線ＬＡＮのハードウェアにインストールされている。図１との対比では、Ｗｉ−Ｆｉデバイス２０１は無線通信部１０１に相当する。
【００４２】
ＷＦＤ接続処理部２０２は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ接続のためのＷｉ−Ｆｉデバイス制御を行う。Ｕｓｅｒ制御部２０３は、ＷＦＤ接続処理部２０２を制御して、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔによる自動接続を実現するブロックである。ＷＦＤ接続処理部２０２とＵｓｅｒ制御部２０３とは、図示しないＭＰＵにインストールされている。図１との対比では、ＷＦＤ接続処理部２０２とＵｓｅｒ制御部２０３とは、制御部１０２と記憶部１０３とに相当する。ＷＦＤ接続処理部２０２は、以下のような機能を有する。
【００４３】
まずＷＦＤ接続処理部２０２は、Ｕｓｅｒ制御部２０３から検索要求を受信すると、探索処理を行う機能を有する。この探索処理では、サーチステートとリッスンステートとを交互に繰り返し、サーチステートでは、複数の通信チャネルを順次切り替えて各通信チャネル毎にプローブ要求の送信とプローブ応答の受信とを行う。またリッスンステートでは、複数の通信チャネルのうちの何れか一つをリッスンチャネルに使用してプローブ要求の受信とプローブ応答の送信とを行う。そして、探索処理によって発見した他の通信端末の情報を有する検索結果をＵｓｅｒ制御部２０３に送信する。
【００４４】
またＷＦＤ接続処理部２０２は、Ｕｓｅｒ制御部２０３からリッスン要求を受信すると、探索処理を停止し、所定の通信チャネルを使用して他の通信端末からの接続要求の受信を待ち合わせる機能を有する。そして、他の通信端末から接続要求を受信すると、Ｕｓｅｒ制御部２０３に送信する。
【００４５】
さらにＷＦＤ接続処理部２０２は、Ｕｓｅｒ制御部２０３から他の通信端末への接続要求の送信要求を受信すると、探索処理を停止し、所定の通信チャネルを使用して接続要求を他の通信端末へ送信する機能を有する。そして、他の通信端末から接続要求に対する応答を受信すると、Ｕｓｅｒ制御部２０３に送信する。
【００４６】
Ｕｓｅｒ制御部２０３は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔによる自動接続を実現するブロックであり、以下のような機能を有する。
【００４７】
まずＵｓｅｒ制御部２０３は、ＷＦＤ接続処理部２０２から検索結果を受信すると、検索結果中の他の通信端末の情報に基づいて、自通信端末を他の通信端末に接続するか否か、および、接続する場合に何れの側から接続要求を送信するかを決定する機能を有する。
【００４８】
またＵｓｅｒ制御部２０３は、他の通信端末に接続し且つ自通信端末から接続要求を送信しないと決定したときは、ＷＦＤ接続処理部２０２にリッスン要求を送信する機能を有する。そして、Ｕｓｅｒ制御部２０３は、他の通信端末から受信した接続要求をＷＦＤ接続処理部から受信すると、その接続要求に対する応答を送信するようにＷＦＤ接続処理部２０２に要求し、その後の接続手続きを行う機能を有する。
【００４９】
さらにＵｓｅｒ制御部２０３は、他の通信端末に接続し且つ自通信端末から接続要求を送信すると決定したときは、ＷＦＤ接続処理部２０２に他の通信端末へ接続要求を送信するように要求する機能を有する。そして、Ｕｓｅｒ制御部２０３は、ＷＦＤ接続処理部２０２が他の通信端末へ接続要求を送信し、それに対する応答を受信すると、その後の接続手続きを行う機能を有する。
【００５０】
Ｕｓｅｒ制御部２０３は、上記機能を実現するために、ＷＦＤ接続処理部２０２に接続して情報を送受信するイベント送信部２０４およびイベント受信部２０５と、自ノード（自通信端末）のステートを保持する自ノードステート保持部２０６と、他ノード（他の通信端末）のＭＡＣアドレスとステートのリストを保持する他ノードステート保持部２０７と、他ノードとの接続可否を決定するための接続可否決定情報２０８と、接続要求の送信元と受信元を決定するための接続要求送受決定情報２０９と、内部ステート制御部２１０とを有する。
【００５１】
自ノードステート保持部２０６には、自ノードのステートとして、ＩＤＬＥ（接続無し）、ＤＩＳＣ（ノード発見）、ＣＯＮＮ（接続中）、ＣＬＩ（クライアントとして接続中）、ＧＯ（グループオーナーとして接続中）の何れかと、Ｐ＿ＧＲＰ（永続的グループをホスト可能な状態を示す情報）が記憶される。永続的グループをホスト可能な状態を示す情報は、１ｏｒ０と、永続的グループを一意に識別する識別子とを有する。
【００５２】
他ノードステート保持部２０７には、他ノードのステートとして、ＬＯＳＴ（未接続）、ＦＯＵＮＤ（クライアントとして接続中）、ＧＲＯＵＰ（グループオーナーとして接続中）の何れかと、Ｐ＿ＧＲＰ（永続的グループをホスト可能な状態を示す情報）が記憶される。
【００５３】
接続可否決定情報２０８には、例えばＭＡＣアドレスの上位Ｎビットの値が記憶される。但し、そのような情報に限定されず、接続可能な他の通信端末のＭＡＣアドレスのリスト等を接続可否決定情報としてよい。
【００５４】
接続要求送受決定情報２０９には、例えばＭＡＣアドレスの値が小さい通信端末を接続要求の送信側とするルールが記憶される。但し、そのようなルールに限定されず、ＭＡＣアドレスの値が大きい通信端末を接続要求の送信側とするルールや、ＭＡＣアドレス以外の値を使用して接続要求の送信側や受信側を決定するルールを使用してもよい。また、同じルールを固定的に使用する場合、そのルールの論理を内部ステート制御部２１０に組み込むことにより、接続要求送受決定情報２０９を省略してもよい。
【００５５】
内部ステート制御部２１０は、イベント受信部２０５を通じてＷＦＤ接続処理部２０２から受信したイベント種別と、自ノードステート保持部２０６に記憶されている自ノードのステートと、他ノードステート保持部２０７に記憶されている他ノードのステートとに基づいて、適切なコマンドを選択、生成することで、隣接したＷｉ−Ｆｉ  Ｄｉｒｅｃｔ対応ノード間でグループを構成する。
【００５６】
図１０は、Ｕｓｅｒ制御部２０３の処理の一例を示すフローチャート、図１１はＷＦＤ接続処理部２０２の処理の一例を示すフローチャートである。以下、図９乃至図１１を参照して、本実施形態に係る通信端末２００の動作を説明する。
【００５７】
通信端末２００が電源ＯＮ等によって起動されると、Ｕｓｅｒ制御部２０３の内部ステート制御部２１０は、イベント送信部２０４を通じてＷＦＤ接続処理部２０２に対して検索要求を送信する（ステップＳ２０１）。ＷＦＤ接続処理部２０２は、Ｕｓｅｒ制御部２０３から要求を受信すると（ステップＳ２２１でＹＥＳ）、それに応じた処理を行うように構成されている（ステップＳ２２２）。従って、ＷＦＤ接続処理部２０２は、検索要求を受信すると、探索処理を実行する。この探索処理は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様のデバイス・ディスカバリ・プロシージャ（Ｄｅｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｃｅｄｕｒｅ）に準拠して行われる。ＷＦＤ接続処理部２０２は、探索処理において他の通信端末を発見する毎に、発見した他の通信端末の情報を有する検索結果をＵｓｅｒ制御部２０３へ送信する。また他の通信端末を発見できずに一定時間が経過すると、探索処理を停止し、その旨の検索結果をＵｓｅｒ制御部２０３へ送信する。
【００５８】
Ｕｓｅｒ制御部の内部ステート制御部２１０は、イベント受信部２０５を通じてＷＦＤ接続処理部２０２から検索結果を受信すると（ステップＳ２０２）、それを解析して他の通信端末を発見したか否かを判定する（ステップＳ２０３）。若し、他の通信端末を発見していなければ、内部ステート制御部２１０は、探索処理を続行するために検索要求を再びＷＦＤ接続処理部２０２へ送信する（ステップＳ２０１）。
【００５９】
他の通信端末を発見していれば、内部ステート制御部２１０は、検索結果に含まれる他の通信端末のＭＡＣアドレスの上位Ｎビットの値が接続可否決定情報２０８に保持されている所定値であるか否かを調べることにより、当該他の通信端末に接続するか否かを決定する（ステップＳ２０４）。そして、当該他の通信端末のＭＡＣアドレスの上位Ｎビットの値が所定値でないために接続しないと決定したときは、今回の検索結果を破棄し、ＷＦＤ接続処理部２０２から新たな検索結果が送られてくるのを待ち合わせる（ステップＳ２０２）。
【００６０】
他方、当該他の通信端末のＭＡＣアドレスの上位Ｎビットの値が所定値と一致したために接続すると決定したときは、自通信端末および当該他の通信端末の何れが接続要求を送信するかを接続要求送受決定情報２０９に保持されたルールによって決定する（ステップＳ２０５）。具体的には、自通信端末のＭＡＣアドレスと当該他の通信端末のＭＡＣアドレスとを比較し、自通信端末のＭＡＣアドレスの値が当該他の通信端末のＭＡＣアドレスの値より小さければ、自通信端末を接続要求の送信側と決定し、そうでなければ他の通信端末を接続要求の送信側と決定する。
【００６１】
次に、内部ステート制御部２１０は、自通信端末が接続要求の送信側でなければ（ステップＳ２０６でＮＯ）、イベント送信部２０４を通じてＷＦＤ接続処理部２０２に対して、リッスン要求を送信する（ステップＳ２０７）。ＷＦＤ接続処理部２０２は、Ｕｓｅｒ制御部２０３からリッスン要求を受信すると（ステップＳ２２１）、探索処理を停止し、その探索処理のリッスンステートで使用していたリッスンチャネルに固定して他の通信端末から接続要求を受信するのを待ち合わせる（ステップＳ２２２）。そして、リッスンチャネルを通じて他の通信端末から接続要求を受信すると、受信した接続要求をＵｓｅｒ制御部２０３へ送信する（ステップＳ２２２）。内部ステート制御部２１０は、この接続要求を受信すると（ステップＳ２０８）、接続要求に対する応答を送信する要求をＷＦＤ接続処理部２０２へ送信する（ステップＳ２０９）。これに応じてＷＦＤ接続処理部２０２は、リッスンチャネルを通じて接続要求に対する応答を他の通信端末へ送信する（ステップＳ２２１、Ｓ２２２）。その後、内部ステート制御部２１０は、ステップＳ２１２へ進み、残りの接続手続きを実行する。
【００６２】
また、内部ステート制御部２１０は、自通信端末が接続要求の送信側であれば（ステップＳ２０６でＹＥＳ）、イベント受信部２０４を通じてＷＦＤ接続処理部２０２に対して、接続要求の送信を要求する（ステップＳ２１０）。ＷＦＤ接続処理部２０２は、Ｕｓｅｒ制御部２０３から接続要求の送信を要求されると（ステップＳ２２１）、探索処理を停止し、接続要求の送信先の通信端末のリッスンチャネルに固定して自通信端末から接続要求を送信する（ステップＳ２２２）。そして、リッスンチャネルを通じて他の通信端末から接続要求に対する応答を受信すると、受信した応答をＵｓｅｒ制御部２０３へ送信する（ステップＳ２２２）。内部ステート制御部２１０は、この接続要求に対する応答を受信すると（ステップＳ２１１）、ステップＳ２１２へ進み、残りの接続手続きを実行する。
【００６３】
このように本実施形態によれば、探索処理で発見した他の通信端末との間で接続要求を速やかに授受することができ、その結果、接続処理を早期に開始することが可能になる。その理由は、通信端末２００のＵｓｅｒ制御部２０３は、探索処理によって発見した他の通信端末の情報に基づいて、自通信端末を他の通信端末に接続するか否か、および、接続する場合に何れの側から接続要求を送信するかを決定し、他の通信端末に接続し且つ自通信端末から接続要求を送信しないときは、ＷＦＤ接続処理部２０２における探索処理を停止し、所定の通信チャネルを使用して他の通信端末からの接続要求の受信を待ち合わせるように制御するためである。
【００６４】
図１２は本実施形態の効果を説明する模式図であり、通信ネットワークに接続していない２つの通信端末２００−１、２００−２が探索処理によって互いに相手を発見し、接続要求を授受するまでのシーケンスを模式的に示している。
【００６５】
通信端末２００−１のＷＦＤ接続処理部２０２−１は、Ｕｓｅｒ制御部２０３−１から検索要求を受信することにより探索処理を開始する。また、通信端末２００−２のＷＦＤ接続処理部２０２−２は、Ｕｓｅｒ制御部２０３−２から検索要求を受信することにより探索処理を開始する。通信端末２００−２は通信チャネルｃｈ１を使用したサーチステートでプローブ要求を送信し、通信端末２００−１はこのプローブ要求を通信チャネルｃｈ１を使用したリッスンステートで受信してプローブ応答を送信し、通信端末２００−２はこのプローブ応答を受信する。通信端末２００−１のＷＦＤ接続処理部２０２−１は、通信端末２００−２から受信したプローブ要求を含む検索結果をＵｓｅｒ制御部２０３−１へ通知する。また通信端末２００−２のＷＦＤ接続処理部２０２−２は、通信端末２００−１から受信したプローブ要求を含む検索結果をＵｓｅｒ制御部２０３−２へ通知する。
【００６６】
図１２の例では、他の通信端末に接続すると決定する条件を、他の通信端末のＭＡＣアドレスの上位３２ビットが（０４：Ａ３：４３：５Ｆ）であることとし、何れの側が接続要求を送信するかを決定する条件をＭＡＣアドレスの値が小さい側であることとし、接続要求の送受信を行う所定の通信チャネルを決定するルールを、接続要求の受信側のリッスンチャネルであるとしている。このため、通信端末２００−１のＵｓｅｒ制御部２０３−１は、プローブ要求に含まれる通信端末２００−２のＭＡＣアドレス（０４：Ａ３：４３：５Ｆ：４３：２１）の上位３２ビットが所定値に一致するため、通信端末２００−２に接続すると決定する。また自通信端末２００−１のＭＡＣアドレス（０４：Ａ３：４３：５Ｆ：４３：２３）が通信端末２００−２のＭＡＣアドレスより大きいので、Ｕｓｅｒ制御部２０３−１は、接続要求を送信しないと決定し、ＷＦＤ接続処理部２０２−１にリッスン要求を送信する。これにより、ＷＦＤ接続処理部２０２−１は、探索処理を停止し、自通信装置２００−１のリッスンチャネルである通信チャネルｃｈ１に固定して接続要求の受信を待ち合わせる。他方、通信端末２００−２のＵｓｅｒ制御部２０３―２は、受信したプローブ応答に含まれる通信端末２００−１のＭＡＣアドレスの上位３２ビットが所定値に一致するため、通信端末２００−１に接続すると決定する。また自通信端末２００−２のＭＡＣアドレスが通信端末２００−１のＭＡＣアドレスより小さいので、Ｕｓｅｒ制御部２０３−２は、接続要求を送信すると決定し、ＷＦＤ接続処理部２０２−２に接続要求を送信するように要求する。これにより、ＷＦＤ接続処理部２０２−２は、探索処理を停止し、通信装置２００−１のリッスンチャネルである通信チャネルｃｈ１に固定して通信装置２００−１に対して接続要求を送信する。通信装置２００−１は通信チャネルｃｈ１に固定して接続要求の受信を待ち合わせているので、通信装置２００−２から送信された接続要求が通信装置２００−１で速やかに受信され、続いて、その応答が通信装置２００−１から通信装置１００−２へ送信されることになる。
【００６７】
[第３の実施形態]
図１３は、上述した各実施形態における通信端末をコンピュータ等の電子情報処理装置で構成した場合のハードウェア構成の一例を示す。この例の通信端末５１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）周辺部と、入出力部と、レガシー入出力部とを備える。ＣＰＵ周辺部は、ホスト・コントローラ９０１により相互に接続されるＣＰＵ９０２、ＲＡＭ９０３、グラフィック・コントローラ９０４、及び表示装置９０５を有する。入出力部は、入出力（Ｉ／Ｏ）コントローラ９０６によりホスト・コントローラ９０１に接続される通信インターフェイス（Ｉ／Ｆ）９０７、ハードディスクドライブ９０８、及びＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）ドライブ９０９を有する。レガシー入出力部は、入出力コントローラ９０６に接続されるＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１０、フレキシブルディスク（ＦＤ）ドライブ９１１、及び入出力（Ｉ／Ｏ）チップ９１２を有する。
【００６８】
ホスト・コントローラ９０１は、ＲＡＭ９０３と、高い転送レートでＲＡＭ９０３をアクセスするＣＰＵ９０２、及びグラフィック・コントローラ９０４とを接続する。ＣＰＵ９０２は、ＲＯＭ９１０、及びＲＡＭ９０３に格納されたプログラムに基づいて動作して、各部の制御をする。グラフィック・コントローラ９０４は、ＣＰＵ９０２等がＲＡＭ９０３内に設けたフレーム・バッファ上に生成する画像データを取得して、表示装置９０５上に表示させる。これに代えて、グラフィック・コントローラ９０４は、ＣＰＵ９０２等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【００６９】
入出力コントローラ９０６は、ホスト・コントローラ９０１と、比較的高速な入出力装置であるハードディスクドライブ９０８、通信インターフェイス９０７、ＣＤ−ＲＯＭドライブ９０９を接続する。ハードディスクドライブ９０８は、ＣＰＵ９０２が使用するプログラム、及びデータを格納する。通信インターフェイス９０７は、他の通信端末に接続してプログラム又はデータを送受信する。ＣＤ−ＲＯＭドライブ９０９は、ＣＤ−ＲＯＭ９９２からプログラム又はデータを読み取り、ＲＡＭ９０３を介してハードディスクドライブ９０８、及び通信インターフェイス９０７に提供する。
【００７０】
入出力コントローラ９０６には、ＲＯＭ９１０と、フレキシブルディスク・ドライブ９１１、及び入出力チップ９１２の比較的低速な入出力装置とが接続される。ＲＯＭ９１０は、通信端末５１０が起動時に実行するブート・プログラム、あるいは通信端末５１０のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ９１１は、フレキシブルディスク９９３からプログラム又はデータを読み取り、ＲＡＭ９０３を介してハードディスクドライブ９０８、及び通信インターフェイス９０７に提供する。入出力チップ９１２は、フレキシブルディスク・ドライブ９１１、あるいはパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を接続する。
【００７１】
ＣＰＵ９０２が実行するプログラムは、フレキシブルディスク９９３、ＣＤ−ＲＯＭ９９２、又はＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カード等の記録媒体に格納されて利用者によって提供される。記録媒体に格納されたプログラムは圧縮されていても非圧縮であってもよい。プログラムは、記録媒体からハードディスクドライブ９０８にインストールされ、ＲＡＭ９０３に読み出されてＣＰＵ９０２により実行される。ＣＰＵ９０２により実行されるプログラムは、通信端末５１０を、前述した各実施形態における無線通信部、制御部、記憶部、Ｕｓｅｒ制御部、ＷＦＤ接続処理部、Ｗｉ−Ｆｉ  デバイス等として機能させる。
【００７２】
以上に示したプログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク９９３、ＣＤ−ＲＯＭ９９２の他に、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）又はＰＤ（Ｐｈａｓｅ  Ｄｉｓｋ）等の光学記録媒体、ＭＤ（ＭｉｎｉＤｉｓｋ）等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークあるいはインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶媒体を記録媒体として使用して、ネットワークを介したプログラムとして情報共有システムを提供してもよい。
【００７３】
[その他の実施形態]
以上、本発明を幾つかの実施形態を挙げて説明したが、本発明は以上の実施形態にのみ限定されず、その他各種の付加変更が可能である。
【００７４】
なお、本発明は、日本国にて２０１３年１２月２６日に特許出願された特願２０１３−２６８５９７の特許出願に基づく優先権主張の利益を享受するものであり、当該特許出願に記載された内容は、全て本明細書に含まれるものとする。
【産業上の利用可能性】
【００７５】
本発明は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠する通信ネットワーク等の通信ネットワークを自動的に構成する方法に適用することができる。
【符号の説明】
【００７６】
１００…通信端末
１０１…無線通信部
１０２…制御部
１０３…記憶部
１０４…アンテナ
【図１】
0006524912.tif 000002
【図２】
0006524912.tif 000003
【図３】
0006524912.tif 000004
【図４】
0006524912.tif 000005
【図５】
0006524912.tif 000006
【図６】
0006524912.tif 000007
【図７】
0006524912.tif 000008
【図８】
0006524912.tif 000009
【図９】
0006524912.tif 000010
【図１０】
0006524912.tif 000011
【図１１】
0006524912.tif 000012
【図１２】
0006524912.tif 000013
【図１３】
0006524912.tif 000014