(57)【要約】【課題】  通信パラメータの提供装置が複数台存在しても、通信パラメータの設定処理を行えるようにする。【解決手段】  複数の通信パラメータ提供装置が存在する場合に、提供装置が一台になるようにする。例えば、一度、全ての提供装置の提供処理を中止する。または、ユーザに提供装置と選択させる。または、所定の規則に基づいて、提供装置を決定する。【選択図】  図９
2010213087.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
通信パラメータの提供装置を検索する検索手段と、
前記検索手段により複数の前記提供装置を検出した場合に、前記複数の提供装置に対し、通信パラメータの提供装置としての動作を中止させるためのメッセージを送信する送信手段と、
を有することを特徴とする通信装置。
【請求項２】
前記送信手段は、複数の提供装置が存在するネットワークに応じて、前記メッセージを送信することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記送信手段は、複数の提供装置が異なるネットワークに存在する場合に、前記メッセージを送信することを特徴とする請求項１に記載の通信装置。
【請求項４】
前記送信手段は、検出された提供装置が同じネットワークに存在する場合は、前記メッセージを送信しないことを特徴とする請求項１に記載の通信装置。
【請求項５】
前記送信手段は、検出された提供装置が同じチャネルに存在する場合は、前記メッセージを送信しないことを特徴とする請求項１に記載の通信装置。
【請求項６】
前記検索手段により複数の前記提供装置を検出した場合に、いずれの提供装置から通信パラメータを受信するかを選択する選択手段と、
前記送信手段により前記メッセージを送信するか、前記選択手段により提装置を選択するかを判定する判定手段と、
を有することを特徴とする請求項１に記載の通信装置。
【請求項７】
通信装置であって、
通信パラメータの提供装置を検索する検索手段と、
前記検索手段により複数の前記提供装置を検出した場合に、いずれの提供装置から通信パラメータを受信するかを選択するための選択手段と、
を有することを特徴とする通信装置。
【請求項８】
前記選択手段は、前記提供装置をユーザに選択させるための情報を表示部に表示させることを特徴とする請求項７に記載の通信装置。
【請求項９】
前記選択手段は、複数の提供装置が存在するネットワークに応じて、ユーザに前記提供装置を選択させることを特徴とする請求項７に記載の通信装置。
【請求項１０】
前記選択手段は、複数の提供装置が存在するチャネルに応じて、ユーザに前記提供装置を選択させることを特徴とする請求項７に記載の通信装置。
【請求項１１】
通信装置であって、
通信パラメータの提供装置を検索する検索手段と、
前記検索手段により複数の前記提供装置を検出した場合に、通信パラメータの提供装置が一台となるまで待機する待機手段と、
前記待機手段による待機後に、一台になった提供装置と通信パラメータの設定処理を実行する実行手段と、
を有することを特徴とする通信装置。
【請求項１２】
前記待機手段は、複数の提供装置が存在するネットワークに応じて、前記待機することを特徴とする請求項１１に記載の通信装置。
【請求項１３】
複数の提供装置が存在するチャネルに応じて、前記待機することを特徴とする請求項１１に記載の通信装置。
【請求項１４】
通信装置であって、
通信パラメータを受信装置に提供するための提供装置を検索する検索手段と、
前記検索手段により前記提供装置を検出した場合は、所定の規則に基づいて、前記通信装置と前記検出した提供装置から、受信装置に通信パラメータを提供する提供装置を決定する決定手段と、
を有することを特徴とする通信装置。
【請求項１５】
前記決定手段による決定に応じて、前記通信装置は、通信パラメータの提供装置としての処理を終了する終了手段と、
を有することを特徴とする請求項１４に記載の通信装置。
【請求項１６】
前記検索手段は、前記通信装置が存在するチャネルの提供装置を検索することを特徴とする請求項１４に記載の通信装置。
【請求項１７】
前記決定手段は、前記検索手段により検出された提供装置が存在するネットワークに応じて、受信装置に通信パラメータを提供する提供装置を決定することを特徴とする請求項１４に記載の通信装置。
【請求項１８】
前記決定手段は、前記検索手段により検出された提供装置が存在するチャネルに応じて、受信装置に通信パラメータを提供する提供装置を決定することを特徴とする請求項１４に記載の通信装置。
【請求項１９】
通信装置の制御方法であって、
通信パラメータの提供装置を検索し、
複数の提供装置を検出した場合に、前記複数の提供装置に対し、通信パラメータの提供装置としての動作を中止させるためのメッセージを送信することを特徴とする通信装置の制御方法。
【請求項２０】
通信装置の制御方法であって、
通信パラメータの提供装置を検索し、
複数の提供装置を検出した場合に、いずれの提供装置から通信パラメータを受信するかを選択するための処理を行うことを特徴とする通信装置の制御方法。
【請求項２１】
通信装置の制御方法であって、
通信パラメータの提供装置を検索し、
複数の提供装置を検出した場合に、通信パラメータの提供装置が一台となるまで待機し、
一台になった提供装置と通信パラメータの設定処理を実行することを特徴とする通信装置の制御方法。
【請求項２２】
通信装置の制御方法であって、
通信パラメータを受信装置に提供するための提供装置を検索し、
提  供装置を検出した場合は、所定の規則に基づいて、前記通信装置と前記検出した提供装置から、受信装置に通信パラメータを提供する提供装置を決定する処理を実行することを特徴とする通信装置の制御方法。
【請求項２３】
請求項１９乃至請求項２２のいずれか１項に記載の制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、通信装置の制御方法、プログラムに関する。
【背景技術】
【０００２】
ＩＥＥＥ８０２．１１規格シリーズに準拠した無線ＬＡＮに代表される無線通信では、使用前に設定しなければならない設定項目が数多く存在する。
【０００３】
例えば、設定項目として、ネットワーク識別子としてのＳＳＩＤ（Ｓｅｒｖｉｃｅ  Ｓｅｔ  Ｉｄｅｎｔｉｆｉｅｒ）、暗号方式、暗号鍵、認証方式、認証鍵等の無線通信を行うために必要な通信パラメータがある。これら全てをユーザが手入力により設定するのは非常に煩雑である。そこで、様々なメーカーから、通信パラメータを簡単に無線機器に設定するための自動設定方法が考案されている。これら自動設定方法は、接続する機器間で予め定められた手順、及びメッセージにより、一方の機器から他方の機器に通信パラメータを提供し、通信パラメータの設定を自動的に行っている。
【０００４】
非特許文献１には、アクセスポイント（基地局）とステーション（端末局）間における通信パラメータの自動設定の業界標準規格であるＷｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ｓｅｔｕｐ（以下、ＷＰＳ）が開示されている。ＷＰＳには、両方の機器でボタンを押す押しボタン方式と、予め定めたＰＩＮコードを双方に設定して、そのＰＩＮコードが一致した機器間で通信パラメータの設定を行うＰＩＮ方式とがある。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Ｗｉ−Ｆｉ  ＣＥＲＴＩＦＩＥＤ（ＴＭ）  ｆｏｒ  Ｗｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ｓｅｔｕｐ：Ｅａｓｉｎｇ  ｔｈｅ  Ｕｓｅｒ  Ｅｘｐｅｒｉｅｎｃｅ  ｆｏｒ  Ｈｏｍｅ  ａｎｄ  Ｓｍａｌｌ  Ｏｆｆｉｃｅ  Ｗｉ−Ｆｉ（Ｒ）  Ｎｅｔｗｏｒｋｓ，ｈｔｔｐ：／／ｗｗｗ．ｗｉ−ｆｉ．ｏｒｇ／ｗｐ／ｗｉｆｉ−ｐｒｏｔｅｃｔｅｄ−ｓｅｔｕｐ
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ＷＰＳでは、通信パラメータを提供する装置（以下、提供装置）と受信する装置（以下、受信装置）の役割が予め決まっているため、通信パラメータの転送方向も一意に決まる。
【０００７】
なお、提供装置が複数台存在すると、受信装置はどの提供装置から通信パラメータを受信すればよいのかが不明確である。このような場合、ＷＰＳの押しボタン方式では、複数台の提供装置を検出した受信装置は、ＷＰＳの処理を終了するという動作を行う。またＷＰＳのＰＩＮ方式では、検出した順に提供装置とハンドシェークを行い、ＰＩＮが一致した提供装置との間でＷＰＳの処理を実施する。よって、複数台の提供装置が存在する環境下では、押しボタン方式による通信パラメータ自動設定処理は不可能であり、ＰＩＮ方式であっても所要時間がかかるという問題がある。なお、ＷＰＳでは、アドホックモードで通信パラメータの自動設定については決められていない。
【０００８】
複数台の提供装置がそれぞれ違う無線ＬＡＮチャネルに存在する場合は、受信装置の使用できる無線ＬＡＮチャネルを限定することで候補を絞り込むことができるが、提供装置が同一チャンネルに存在する場合は、絞込みが困難である。そのため、無線ＬＡＮチャネルを限定しても、提供処理を行う提供装置が決められず、通信パラメータの自動設定を行うことができない。
【０００９】
そこで本発明は、通信パラメータの提供装置が複数台存在しても、通信パラメータの設定処理を行えるようにすることを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明は、通信パラメータの提供装置を検索し、複数の提供装置を検出した場合に、複数の提供装置に対し、通信パラメータの提供装置としての動作を中止させる。または、ユーザに提供装置と選択させる。または、提供装置が所定の規則に基づいて、提供装置を決定する。
【発明の効果】
【００１１】
本発明によれば、提供装置が複数台存在する場合に、通信パラメータ自動設定処理が失敗する可能性を低減できる。
【図面の簡単な説明】
【００１２】
【図１】装置を構成するブロック図
【図２】装置内のソフトウェア機能ブロック図
【図３】ネットワーク構成図
【図４】ネットワーク構成図
【図５】装置Ａ、装置Ｂおよび装置Ｃの動作シーケンス図
【図６】装置Ａ、装置Ｂおよび装置Ｃの動作シーケンス図
【図７】装置Ａ、装置Ｂおよび装置Ｃの動作シーケンス図
【図８】装置Ａ、装置Ｂおよび装置Ｃの動作シーケンス図
【図９】通信装置の動作フローチャート図
【発明を実施するための形態】
【００１３】
＜実施形態１＞
以下、本実施形態に係る通信装置について、図面を参照しながら詳細に説明する。以下では、ＩＥＥＥ８０２．１１シリーズに準拠した無線ＬＡＮシステムを用いた例について説明するが、通信形態は必ずしもＩＥＥＥ８０２．１１準拠の無線ＬＡＮには限らない。
【００１４】
本実施形態に好適な事例におけるハードウェア構成について説明する。
【００１５】
図１は、後述の各装置の構成の一例を表すブロック図である。１０１は装置全体を示す。１０２は、記憶部１０３に記憶される制御プログラムを実行することにより装置全体を制御する制御部である。制御部１０２は、他の装置との間で通信パラメータの設定制御も行う。１０３は制御部１０２が実行する制御プログラムと、通信パラメータ等の各種情報を記憶する記憶部である。後述する各種動作は、記憶部１０３に記憶された制御プログラムを制御部１０２が実行することにより行われる。
【００１６】
１０４はＩＥＥＥ８０２．１１シリーズに準拠した無線ＬＡＮ通信を行うための無線部である。１０５は各種表示を行う表示部でありＬＣＤやＬＥＤのように視覚で認知可能な情報の出力、あるいはスピーカなどの音出力が可能な機能を有する。
【００１７】
１０６は通信パラメータの自動設定処理を開始するトリガを与える設定ボタンである。設定ボタン１０６が操作されると、通信パラメータの自動設定処理が開始される。制御部１０２は、ユーザによる設定ボタン１０６の操作を検出すると、後述する処理を実施する。
【００１８】
１０７はアンテナ制御部、そして１０８はアンテナである。１０９は、ユーザが各種入力を行うための入力部である。１１０は、機能部である。装置１０１が、デジタルカメラの場合、機能部１１０は撮影部になる。同様に、装置１０１がプリンタの場合は、機能部１１０は印刷部であり、携帯電話の場合は、通話部、公衆無線部となる。機能部１１０は、装置１０１の種類により、様々な機能となる。なお、設定ボタン１０６は、専用のボタンであってもよいが他のボタンを兼用されてもよい。例えば、装置１０１がカメラの場合は、シャッタボタン、各種設定用のＳＥＴボタン等と兼用されてもよい。また、プリンタの場合は、リセットボタン、各種設定用のＳＥＴボタン等と兼用されてもよい。
【００１９】
図２は、後述の通信パラメータの自動設定動作を実行するソフトウェア機能ブロックの構成の一例を表すブロック図である。図１の機能部に相当する構成は省略している。
【００２０】
２０１は装置全体を示している。２０２は通信パラメータの自動設定機能ブロックである。本実施形態では、ネットワーク識別子としてのＳＳＩＤ、暗号方式、暗号鍵、認証方式、認証鍵等の無線ＬＡＮ通信を行うために必要な通信パラメータの自動設定を行う。なお、通信パラメータの自動設定を、以下、自動設定と簡略化する。
【００２１】
２０３は各種通信にかかわるパケットを受信するパケット受信部である。ビーコン（報知信号）の受信は、パケット受信部２０３によって行われる。２０４は各種通信にかかわるパケットを送信するパケット送信部である。ビーコンの送信は、パケット送信部２０４によって行われる。なお、ビーコンには、送信元の機器の各種情報が付加される。
【００２２】
２０５はプローブリクエストなどの機器検索信号の送信を制御する検索信号送信部である。なお、プローブリクエストは、所望のネットワークを検索するためのネットワーク検索信号ということもできる。プローブリクエストの送信は、検索信号送信部２０５により行われる。また、受信したプローブリクエストに対する応答信号であるプローブレスポンスの送信も検索信号送信部２０５により行われる。本実施形態では、ユーザが設定ボタン１０６を操作し、自動設定処理を開始した場合は、ビーコン、プローブリクエスト及びプローブレスポンスに自動設定中（自動設定動作中）であることを示す情報（ＩＥ：Ｉｎｆｏｒｍａｔｉｏｎ  Ｅｌｅｍｅｎｔ）を付加して送信する。
【００２３】
２０６は他の装置からのプローブリクエストなどの機器検索信号の受信を制御する検索信号受信部である。プローブリクエストの受信は、検索信号受信部２０６により行われる。また、プローブレスポンスの受信も検索信号受信部２０６により行われる。なお機器検索信号、及びその応答信号には、送信元の機器の各種情報が付加される。
【００２４】
２０７は、ネットワーク接続を制御するネットワーク制御部である。無線ＬＡＮアドホックネットワークへの接続処理などは、ネットワーク制御部２０７により実施される。
【００２５】
自動設定機能ブロック２０２において、２０８は相手機器より通信パラメータを受信（受理）する通信パラメータ受信部であり、２０９は相手機器に通信パラメータを提供する通信パラメータ提供部である。２１０は、自動設定における各種プロトコルを制御する自動設定制御部である。後述の自動設定処理は、自動設定制御部２１０の制御に基づいて、通信パラメータ受信部２０８、通信パラメータ提供部２０９により行われる。
【００２６】
また、自動設定処理を開始してからの経過時間が当該設定処理の制限時間を越えたか否かの判定も、自動設定制御部２１０で行われる。また、当該制限時間を超えたと判定した場合には、自動設定制御部２１０の制御により、自動設定処理を中止する。
【００２７】
２１１は、通信パラメータを提供する装置（以下、提供装置）を検出する提供元検出部である。提供元検出部２１１は、検索信号送信部２０５および検索信号受信部２０６による検索信号の送信と応答により、提供装置の検出を行う。また、提供元検出部２１１は、パケット受信部２０３によるビーコンの受信により、提供装置の検出を行うこともできる。そして、通信パラメータの提供を受ける場合は、検出した提供装置に通信パラメータの提供を要求し、通信パラメータの提供を受ける。なお、以降の説明では通信パラメータの提供を受ける装置を受信装置と呼ぶことにする。
【００２８】
２１２は、通信パラメータ記憶部であり、提供装置から提供を受けた通信パラメータ、もしくは受信装置へ提供した通信パラメータを記憶する。なお、通信パラメータ記憶部２１２は、記憶部１０３に相当する。本実施形態では、他の装置から通信パラメータの提供を受けた際に、該通信パラメータを設定済パラメータとして記憶部１０３に記憶する。また、通信パラメータを他の装置へ提供した際に、該通信パラメータを設定済パラメータとして記憶部２１２に記憶する。記憶部１０３に記憶した設定済パラメータは、該設定済パラメータを用いて構成したネットワークでの通信が終了した際に破棄されるようにしてもよい。また、記憶部１０３に記憶してから一定時間経過後、装置の電源オフ時、等に破棄されるようにしてもよい。
【００２９】
２１３は、ビーコン制御部であり、ビーコン（報知信号）の送信タイミングを制御する。２１４は、ビーコン生成部であり、ビーコンを生成する。生成したビーコンは、パケット送信部２０４によりネットワークへ送信される。
【００３０】
なお、全ての機能ブロックはソフトウェアもしくはハードウェア的に相互関係を有するものである。また、上記機能ブロックは一例であり、複数の機能ブロックが１つの機能ブロックを構成するようにしてもよいし、何れかの機能ブロックが更に複数の機能を行うブロックに分かれてもよい。
【００３１】
図３は、通信装置Ａ３２（以下、装置Ａ）、通信装置Ｂ３３（以下、装置Ｂ）、通信装置Ｃ３５（以下、装置Ｃ）、通信装置Ｄ３６（以下、装置Ｄ）、通信装置Ｅ３７（以下、装置Ｅ）、アドホックネットワークＡ３１（以下、ネットワークＡ）、およびアドホックネットワークＢ３４（以下、ネットワークＢ）を示した図である。これらの通信装置は、先に説明した図１、図２の構成を有している。
【００３２】
装置Ａと装置Ｄは、この二装置間において自動設定処理を実施済みであり、装置ＡとＤとの間で共有された通信パラメータＡを用いてネットワークＡを構築しているとする。なお、装置ＡとＤの間で行われた自動設定処理では、装置Ａが提供装置として動作し、装置Ｄが受信装置として動作したものとする。
【００３３】
同様に、装置Ｂと装置Ｅは、この二装置間において自動設定処理を実施済みであり、装置ＢとＥとの間で共有された通信パラメータＢを用いてネットワークＢを構築しているとする。なお、装置ＢとＥの間で行われた自動設定処理では、装置Ｂが提供装置として動作し、装置Ｅが受信装置として動作したものとする。
【００３４】
ここで、ネットワークＡとネットワークＢとは、相異なるネットワークである。相異なるネットワークとは、無線ＬＡＮチャネルが同じか異なるかに係らず、ネットワーク識別子であるＢＳＳＩＤ（Ｂａｓｉｃ  Ｓｅｒｖｉｃｅ  Ｓｅｔ  Ｉｄｅｎｔｉｆｉｅｒ）が異なる場合、ＢＳＳＩＤが同じだが、無線ＬＡＮチャネルが異なる場合が考えられる。なお、無線ＬＡＮチャネルとは、周波数チャネルのことである。
【００３５】
本実施の形態においては、装置ＣをネットワークＡへ参加させるため、ネットワークＡに参加している装置Ａと装置Ｃとの間で自動設定を行おうとするときに、誤ってネットワークＢに参加している装置Ｂも自動設定を起動してしまった場合について説明する。
【００３６】
図５は、装置Ａ、装置Ｂおよび装置Ｃにおいて設定ボタン１０６が押下され、各装置間の間で自動設定処理を実施した場合の処理シーケンスの一例を示した図である。
【００３７】
装置Ａは、装置Ｄとの間で行われた自動設定処理により設定された通信パラメータＡを用いて、既に装置Ｄとの間でネットワークＡを構築済みである（Ｆ５０１）。装置Ｂは、装置Ｅとの間で行われた自動設定処理により設定された通信パラメータＢを用いて、既に装置Ｅとの間でネットワークＢを構築済みである（Ｆ５０９）。
【００３８】
各装置において設定ボタン１０６が押されると、装置Ａは自身がネットワークに参加していることを確認する（Ｆ５０２）。自身がネットワークに参加しているため、装置Ａは自身の役割を提供装置に設定する（Ｆ５０３）。その後、同一無線ＬＡＮチャネル（ネットワークＡの無線ＬＡＮチャネル）に存在する提供装置を検索する（Ｆ５０４）。提供装置を検索するために、検索信号（プローブリクエスト）を同一無線ＬＡＮチャネルに向けて送信する（Ｆ５０５）。
【００３９】
装置Ｂも装置Ａと同様の動作を行う。すなわち、自身がネットワークに参加していることを確認する（Ｆ５１０）。自身がネットワークに参加済みであるため、装置Ｂは自身の役割を提供装置に設定する（Ｆ５１１）。そして、同一無線ＬＡＮチャネル（ネットワークＢの無線ＬＡＮチャネル）に存在する提供装置を検索する（Ｆ５１２）。提供装置を検索するために、検索信号を同一無線ＬＡＮチャネルに向けて送信する（Ｆ５１３）。
【００４０】
一方、装置Ｃはネットワークに参加していないため、複数の無線ＬＡＮチャネルについて、ネットワーク検索処理を実施する（Ｆ５０６）。検索する無線ＬＡＮチャネルはサポートしている全ての無線ＬＡＮチャネルでも良いし、ユーザが予め指定した複数のチャネルでも構わない。装置Ｃは、それぞれのチャネルに対して検索信号を送信する（Ｆ５０７、Ｆ５１４）。検索信号には、自動設定機能を有している、あるいは自動設定処理中であることを示す情報要素が含まれている。
【００４１】
装置ＣがネットワークＡの存在するチャネルで検索を実施すると、装置Ａは装置Ｃに向けて検索応答信号を送信する（Ｆ５０８）。また、装置ＣがネットワークＢの存在するチャネルで検索を実施すると、装置Ｂは装置Ｃに向けて検索応答信号を送信する（Ｆ５１５）。検索応答信号には、検索信号と同様に、自動設定機能を有している、あるいは自動設定処理中であることを示す情報要素が含まれる。また、この時点では、装置Ａと装置Ｂは自装置の役割を提供装置に決定しているため、装置Ａと装置Ｂは検索応答信号に「提供装置」を示す情報要素を含めて送信する。ここで、役割としての「提供装置」を示す情報要素に加えて、通信パラメータを提供可能な状態であることを示す情報要素を付加してもよい。
【００４２】
結果として、装置Ｃは、装置Ａおよび装置Ｂの２つの提供装置が近隣に存在することを検出する。近隣に二台の提供装置が存在することを検出した装置Ｃは、装置Ａと装置Ｂとのどちらの提供装置と通信パラメータ自動設定処理を実施するかをユーザに選択させるためのメッセージを表示部１０５に表示する。そして、入力部１０９へのユーザ操作により、装置Ｃは装置Ａと装置Ｂとのどちらの提供装置と通信パラメータ自動設定処理を実施するかを選択する（Ｆ５１６）。
【００４３】
前記選択処理の実施後、装置Ｃは自身の役割を受信装置とする（Ｆ５１７）。選択処理Ｆ５１６において、装置Ａとの間で通信パラメータ自動設定処理を実施すると決定した場合は、装置Ｃは、ネットワークＡへ参加する（Ｆ５１８）。そして、装置Ａと装置Ｃの間では、通信パラメータの自動設定プロトコル処理で交わされる通信メッセージ（プロトコルメッセージ）を相互に送受する。なお、Ｆ５１８で装置ＣがネットワークＡに参加した時点では、暗号鍵、認証鍵等の通信パラメータが装置Ｃに設定されていないため、装置Ｃは装置Ａとの間で暗号、認証を用いた通常のデータ通信を行うことはできない。
【００４４】
ここで、自動設定プロトコル処理とは、提供装置から受信装置へ通信パラメータを提供するために予め定められた各種通信メッセージの送受信を行う処理のことをいう。なお、ＷＰＳでは上記プロトコル処理のことをＲｅｇｉｓｔｒａｔｉｏｎプロトコルと呼んでいる。本実施形態では説明を簡単にするため、以下の１〜３の手順を自動設定プロトコル処理として説明する。
１．受信装置から提供装置に対して通信パラメータ設定の起動を示すメッセージ（通信パラメータの提供を要求するメッセージ）を送信する。
２．該メッセージに応じて提供装置が受信装置に対して通信パラメータの提供処理を行う。
３．通信パラメータ提供が完了したら提供装置から受信装置へ通信パラメータ設定完了のメッセージを送信する。
【００４５】
装置ＣはネットワークＡに参加すると、装置Ａに通信パラメータ設定起動を示すメッセージを送信する（Ｆ５１９）。そして、該メッセージに応答して、装置Ａから装置Ｃに対する通信パラメータＡの提供処理が行われ（Ｆ５２０）、提供処理が完了すると、装置Ａは装置Ｃに対して通信パラメータ設定完了のメッセージを送信する（Ｆ５２１）。これにより通信パラメータ設定処理が完了し、装置Ａと装置Ｃとの間で通信パラメータＡが共有される。
【００４６】
そして、装置Ａと装置Ｃでは、共有した通信パラメータＡを用いて通信接続処理を行う（Ｆ５２２）。なお、通信パラメータ設定処理が完了すると自動的に通信接続処理を開始することで、ユーザに操作を強いることなく装置Ａと装置Ｃが通信可能となる。
【００４７】
なお、選択処理Ｆ５１６において、装置Ａを選択した場合について説明したが、Ｆ５１６でユーザが装置Ｂを選択した場合は、Ｆ５１６〜Ｆ５２２の説明が装置Ｂと装置Ｃとの間でなされることとなるのは言うまでもない。
【００４８】
以上のように、複数台の提供装置を検出した際には、ユーザに提供装置を選択させるメッセージを表示し、ユーザ操作によりどの提供装置と通信パラメータ自動設定処理を実施するかを選択させた。しかしながら、通信装置のユーザインタフェースが乏しく、複数台の提供装置から任意の一台を選べない場合がある。
【００４９】
図６は通信装置のユーザインタフェースが乏しい場合のシーケンスの一例である。Ｆ６０１からＦ６１５は図５におけるＦ５０１からＦ５１５と同様であるため、説明は省略する。
【００５０】
装置Ａからの検索応答信号（Ｆ６０８）と装置Ｂからの検索応答信号（Ｆ６１５）とにより、装置Ｃは、装置Ａおよび装置Ｂの２つの提供装置が近隣に存在することを検出する（Ｆ６１６）。装置Ｃは、ユーザインタフェースが乏しいため、どちらの提供装置から通信パラメータを受信すればよいかを決められない。そこで、装置Ａおよび装置Ｂに向けて提供装置としての処理を終了させる指示を含んだ指示信号を送信する（Ｆ６１７，Ｆ６１８）。該指示信号を受信した装置Ａおよび装置Ｂでは、通信パラメータ自動設定処理を終了する（Ｆ６１９，Ｆ６２１）。また、装置Ｃも、上記指示信号を送信すると、通信パラメータ自動設定処理を終了する（Ｆ６２０）。このとき装置Ａ、装置Ｂ、装置Ｃは、通信パラメータ自動設定処理が終了したことを示すエラー表示を表示部１０５に表示し、ユーザに通知する（Ｆ６２２、Ｆ６２３、Ｆ６２４）。このように、提供装置からの通信パラメータの提供を受けようとする受信装置が複数の提供装置を検出すると、一旦全ての装置における通信パラメータ設定処理を終了させる。そして、自動設定処理が終了したこと認識したユーザに再度、通信パラメータの設定処理を開始させる。この場合、再度、装置Ａと装置Ｂの両方が自動設定を起動する確率は低いため、装置Ｃは装置ＡかＢの所望の装置との間で自動設定処理が行われる可能性が高い。このように、一旦全ての装置における通信パラメータ設定処理を止めた後、再度提供装置が一台となるような状況で自動設定処理を再試行する。これによりユーザの意図しない提供装置からの通信パラメータの受信を防ぐことができる。
【００５１】
次に、ネットワークＡとネットワークＢが同一のネットワークである場合を考える。ネットワーク構成は図４のとおりとなる。図４は、装置Ａ、装置Ｄ、装置Ｂ、装置Ｅ、およびアドホックネットワーク４１（以下、ネットワークＡ）を示した図である。装置Ａ、装置Ｂ、装置Ｄ，装置Ｅは各装置間で自動設定処理を実施済みであり、装置Ａと各装置で共有された通信パラメータＡを用いてネットワークＡを構築している。
【００５２】
図８は、装置Ａ、装置Ｂおよび装置Ｃにおいて設定ボタン１０６が押下され、各装置間の間で自動設定処理を実施した場合の処理シーケンスの一例を示した図である。
【００５３】
装置Ａおよび装置Ｂは、自動設定処理により設定された通信パラメータＡを用いて、既にネットワークＡを構築済みである（Ｆ８０１）。装置Ｃはネットワークを構築していない。
【００５４】
ここで、各装置において設定ボタン１０６が押される。まず、装置Ａは自身がネットワークに参加していることを確認する（Ｆ８０２）。装置ＡはすでにネットワークＡに参加済みであるため、自身の役割を提供装置と決定する。そして、自装置が所属する無線ＬＡＮチャネルに、自装置以外の提供装置が存在するかどうかを検索する（Ｆ８０３）。装置Ａは、提供装置を検索するために、検索信号（プローブリクエスト）を自装置が所属する無線ＬＡＮチャネルに向けて送信する（Ｆ８０８）。一方、装置Ｂもすでに設定ボタン１０６が押下されているため提供装置として動作を実施している。よって、検索信号（Ｆ８０８）に対応して、検索応答信号（プローブレスポンス）が装置Ｂから装置Ａへ送信される（Ｆ８０９）。
【００５５】
装置Ｂも装置Ａと同様の動作を行う。すなわち、自身がネットワークに参加していることを確認する（Ｆ８０４）。自身がネットワークに参加済みであるため、自身の役割を提供装置と決定すると共に、同一無線ＬＡＮチャネルについて提供装置を検索する（Ｆ８０５）。装置Ｂは、提供装置を検索するために、検索信号を同一無線ＬＡＮチャネルに向けて送信する（Ｆ８１０）。既に装置Ａが提供装置として動作しているため、装置Ａから装置Ｂに向けて検索応答信号が送信される（Ｆ８１１）。
【００５６】
以上の処理により、装置Ａは装置Ｂの存在を把握し、装置Ｂは装置Ａの存在を把握する。言い換えると、装置Ａおよび装置Ｂはそれぞれ、複数の提供装置が存在することを検知する（Ｆ８１２、Ｆ８１４）。
【００５７】
装置Ａ、装置Ｂは複数の提供装置が存在することを検知すると、互いに所定の処理を実行し、予め定めた基準により、どちらが提供装置になるかを決定する（Ｆ８２４、Ｆ８２５）。ここでの予め定めた基準としては、例えばＭＡＣアドレス又はＵＵＩＤ等の機器識別子の大小を用い、識別子が大きい装置が提供装置となる。なお、この識別子は、ＭＡＣアドレス又はＵＵＩＤの一部であってもよい。ＭＡＣアドレスとＵＵＩＤの両方を利用してもよい。また、通信装置の種類（プリンタやカメラなど）、使用形態、電源種別（電池駆動、ＡＣ電源駆動など）、またはＣＰＵパワーなどの通信装置の能力などを基準として比較を行っても良い。また、提供装置を決定するために、所定のメッセージを交換し、交換した情報に基づいて、提供装置を決定してもよい。図８の例では、装置Ｂが提供装置となり、装置Ａは提供装置の処理を終了するものとする（Ｆ８１３）。
【００５８】
一方、装置Ｃはネットワークに参加していないため、複数の無線ＬＡＮチャネルについて、ネットワーク検索処理を実施する（Ｆ８０６）。検索する無線ＬＡＮチャネルは通信装置がサポートしている全ての無線ＬＡＮチャネルでも良いし、ユーザが予め指定した複数のチャネルでも構わない。装置Ｃは、それぞれのチャネルに対して検索信号を送信する（Ｆ８０７）。なお、検索信号には、自動設定機能を有している、あるいは自動設定処理中であることを示す情報要素が含まれていてもよい。装置Ｃは、装置Ａおよび装置Ｂの２つの提供装置が同一のネットワークに存在することを検出する。装置Ｃは同一ネットワークに複数の提供装置を検出すると、提供装置同士がどちらか一方に確定するのを待つ。予め定めた時間だけ検索を繰り返し、検索信号（Ｆ８１６）を送信した時点で、検索応答信号（Ｆ８１７）が装置Ｂからのみ送信されるようになる。ここで、提供装置が装置Ｂと決定される。もちろん、２つの提供装置が同一ネットワークに存在することを検出した時点で、異なるネットワークに複数の提供装置が存在した場合やインフラストラクチャモードのＷＰＳと同じように、この時点で装置Ｃは自動設定を取りやめてもよい。装置Ｃが自動設定を取りやめた場合は、ユーザインタフェースに設定ボタン１０６を再度、押下することを促す表示をしても良い。設定ボタン１０６を再度、押下したときには、装置Ａと装置Ｂの間で提供装置が一本化されている。装置Ｃは装置Ｂとの間で通信パラメータ自動設定処理を実施すると決定した場合は、ネットワークＡへ参加する（Ｆ８１８）。
【００５９】
本実施形態の説明では、装置Ａ、装置Ｂおよび装置Ｃを全て略同一のタイミングで設定ボタンを操作している。言うまでも無く、装置Ａ、装置Ｂよりも装置Ｃのボタン押下のタイミングが遅い場合は、装置Ｃが自動設定処理を実施する時点で提供装置は１台に定まっているため、ここで説明した提供装置がどちらか一方に確定するのを待つ処理や、一旦処理を取りやめるという処理は行われない。
【００６０】
これによって、装置Ｂと装置Ｃの間では、通信パラメータの自動設定プロトコル処理で交わされる通信メッセージ（プロトコルメッセージ）を相互に送受する。なお、Ｆ８１８で装置ＣがネットワークＡに参加した時点では、暗号鍵、認証鍵等の通信パラメータが装置Ｃに設定されていないため、装置Ｃは装置Ｂとの間で暗号、認証を用いた通常のデータ通信を行うことはできない。装置ＣはネットワークＡに参加すると、装置Ｂに通信パラメータ設定の起動を示すメッセージを送信する（Ｆ８１９）。そして、該メッセージに応答して、装置Ｂから装置Ｃに対する通信パラメータＡの提供処理が行われ（Ｆ８２０）、提供処理が完了すると、装置Ｂは装置Ｃに対して通信パラメータ設定完了のメッセージを送信する（Ｆ８２１）。これにより通信パラメータ設定処理が完了し、装置Ｂと装置Ｃとの間で通信パラメータＢが共有される。
【００６１】
そして、装置Ｂと装置Ｃでは、共有した通信パラメータＢを用いて通信接続処理を行う（Ｆ８２２）。なお、通信パラメータ設定処理が完了すると自動的に通信接続処理を開始することで、ユーザに操作を強いることなく装置Ｂと装置Ｃが通信可能となる。
【００６２】
図９は、装置Ａ、装置Ｂ、装置Ｃにおける動作フローの一例を示したフローチャートである。図９の動作は、各装置の制御部１０２が、記憶部１０３に記憶される制御プログラムを読み出して実行することにより実施される。以下、本フローチャートに沿って各装置が実行する制御について説明する。
【００６３】
まず、装置は自動設定処理の開始を指示するための設定ボタン１０６が押下されたかどうかを判定する（Ｓ９０１）。設定ボタン１０６が押下されたと判定した場合には、装置は自身がネットワークに参加しているか否かを判定する（Ｓ９０２）。
【００６４】
ネットワークに参加していない場合は、提供装置の検索処理の制限時間であるタイマＴ１を開始する（Ｓ９０３）。タイマＴ１が満了したかどうかを判定（Ｓ９０４）し、タイマが満了していなければ、全ての無線ＬＡＮチャンネルに向けて検索信号（たとえばプローブリクエスト）を送信する（Ｓ９０５）。検索信号送信後、提供装置から検索応答信号を受信するかどうかを判定する（Ｓ９０６）。ここで提供装置から検索応答信号を受信しない場合は、再度Ｓ９０４へ戻り、タイマＴ１が満了するまで検索信号送信処理（Ｓ９０５）を繰り返す。
【００６５】
提供装置から検索応答信号を受信した場合は、異なるネットワークに提供装置が複数台存在するか否かを判定する（Ｓ９０７）。異なるネットワークに存在する提供装置が複数台検出されなければ、同一ネットワークに提供装置が複数台存在するか否かを判定する（Ｓ９２２）。同一ネットワークに提供装置が一台しか存在していない場合は、通信装置は自身の役割を受信装置に設定（Ｓ９０８）し、通信パラメータの受信処理を実施する（Ｓ９０９）。即ち、通信パラメータ設定の起動を提供装置に要求し、提供装置から通信パラメータの提供を受ける。
【００６６】
Ｓ９２２の結果、同一ネットワークに提供装置が複数台存在した場合は、提供装置側での調停が行われるため、提供装置が一台になるまで待機する（Ｓ９２３）。その後、提供装置が一台になった時点で、通信装置は自身の役割を受信装置に設定（Ｓ９０８）し、通信パラメータ受信処理を実施する（Ｓ９０９）。なお、Ｓ９２３における待機処理は行わず、同一ネットワークに複数台の提供装置を検出した時点で処理を停止しても良い。処理を停止する場合は、表示部１０５に処理を停止する旨を表示し、ユーザに設定ボタン１０６の再押下を促すなどの処理を行うとよい。この場合は、再押下した時点で、提供装置が一台になっている可能性が高い。
【００６７】
一方、Ｓ９０７において、通信装置が異なるネットワークに複数の提供装置を検出した場合は、通信装置が、複数の提供装置から特定の一つの提供装置を選択するための選択手段を有しているかどうかを判定する（Ｓ９１０）。選択手段を有する場合は、選択のための表示を行い、ユーザ操作により、通信パラメータの提供を受けたい提供装置を指定する（Ｓ９１１）。提供装置指定後は、自通信装置の役割を受信装置に設定（Ｓ９０８）し、指定された提供装置に通信パラメータ設定の起動を要求し、通信パラメータ受信処理を実施する（Ｓ９０９）。この選択処理は先に説明した図５における通信装置Ｃの動作になる。
【００６８】
また、Ｓ９１０において、通信装置が選択手段を持たない場合については、通信装置は、検出した全ての提供装置へ向けて、提供装置処理の停止指示信号を送信する（Ｓ９１２）。この停止指示信号の送信処理は、先に説明した図６における通信装置Ｃの動作である。
【００６９】
なお、Ｓ９１０において通信装置が選択手段を持っていても、ユーザの意思や通信装置の実装方針によっては、Ｓ９１１に進まずに、Ｓ９１２に処理を進めても良い。また、Ｓ９１０の判定を行わずに、Ｓ９１１もしくはＳ９１２の処理を実施してもよい。つまり、Ｓ９０７において、通信装置が異なるネットワークに複数の提供装置を検出した場合は、選択のための表示を行い、ユーザ操作により、通信パラメータの提供を受けたい提供装置を指定するようにしてもよい（Ｓ９１１）。また、Ｓ９０７において、通信装置が異なるネットワークに複数の提供装置を検出した場合は、検出した全ての提供装置へ向けて、提供装置処理の停止指示信号を送信してもよい（Ｓ９１２）。
【００７０】
次に、通信装置がネットワークに参加している場合の処理について説明する。Ｓ９０２の判定処理においてネットワークに参加している場合は、役割を提供装置に設定（Ｓ９１３）し、提供装置の検索処理の制限時間であるタイマＴ２を開始する（Ｓ９１４）。
【００７１】
その後、自通信装置の所属する無線ＬＡＮチャネルへ向けて検索信号（プローブリクエスト）を送信する（Ｓ９１５）。検索信号送信後、他の提供装置から検索応答信号（プローブレスポンス）を受信するかどうかを判定する（Ｓ９１６）。提供装置からの検索応答信号を受信しない場合は、タイマＴ２が満了したか否かを判定する（Ｓ９２１）。ここで、タイマＴ２が満了していない場合は、再度検索処理を実施するため、Ｓ９１５へ戻る。Ｓ９２１において、提供装置からの検索応答信号を受信しないままタイマＴ２が満了した場合は、自通信装置と同一の無線ＬＡＮチャネルに他の提供装置が存在しないことになるため、通信パラメータ提供処理を開始する（Ｓ９２０）。
【００７２】
一方、Ｓ９１６において、他の提供装置からの検索応答信号を受信した場合は、複数の提供装置が存在しているということになる（Ｓ９１７）。従って、提供装置としての処理を継続するかを判定する（Ｓ９１９）。この判定は、まず、自通信装置を含む複数の提供装置が同じネットワークに存在するかを判定する。他の提供装置が同じネットワークに存在する場合は、予め定めた基準により、自通信装置と他の提供装置のどちらが提供装置の機能を継続するかを決定する。ここでの予め定めた基準としては、例えばＭＡＣアドレス又はＵＵＩＤ等の機器識別子の大小を用い、識別子が大きい装置が提供装置となる。なお、この識別子は、ＭＡＣアドレス又はＵＵＩＤの一部であってもよい。ＭＡＣアドレスとＵＵＩＤの両方を利用してもよい。また、通信装置の種類（プリンタやカメラなど）、使用形態、電源種別（電池駆動、ＡＣ電源駆動など）、またはＣＰＵパワーなどの通信装置の能力などを基準として比較を行っても良い。また、提供装置を決定するために、所定のメッセージを交換し、交換した情報に基づいて、提供装置を決定してもよい。そして、自通信装置が提供装置としての処理を継続すると判断した場合は、提供装置として通信パラメータの提供処理を行う。つまり、通信パラメータ設定の起動要求を待ち、該要求を受信すると、受信装置に通信パラメータを提供する。また、他の提供装置が提供装置となる場合、つまり、自通信装置が提供装置としての処理を行わないと判断した場合は、処理を終了する。
【００７３】
また、他の提供装置が異なるネットワークに存在する場合は、受信装置（装置Ｃ）から通信パラメータ設定の起動信号（Ｆ５１９）を受信した場合は、提供装置の処理を継続する。また、提供装置処理の停止指示信号（Ｆ６１７、Ｆ６１８）を受信した場合は、提供装置の処理を停止する。自通信装置が提供装置のままでよい場合は、そのまま通信パラメータ提供処理を実施する（Ｓ９２０）。一方、提供装置の処理を停止する場合は、通信パラメータ自動設定処理を終了する。なお、Ｓ９１９では、複数台の提供装置のうち一台のみが提供装置を継続することを目的としているが、全ての装置が提供装置としての動作を停止してもよい。
【００７４】
以上のように、上記説明によれば、提供装置が複数台存在することにより、通信パラメータ自動設定処理が失敗することを防止することができる。また、提供装置が複数台存在しても同じネットワークの提供装置であれば、どの提供装置から通信パラメータの提供を受けても、同じネットワークに参加できるので、いずれかの提供装置からの提供を受け、ネットワークに参加できる。
【００７５】
＜実施形態２＞
本実施形態では、ネットワークＡとネットワークＢが相異なるネットワークであることは同じであるが、無線ＬＡＮチャネルが同一である場合にも、提供装置を自動決定する例について説明する。
【００７６】
図７は、装置Ａ、装置Ｂおよび装置Ｃにおいて設定ボタン１０６が押下され、各装置間の間で自動設定処理を実施した場合の処理シーケンスの一例を示した図である。
【００７７】
装置Ａは、装置Ｄとの間で行われた自動設定処理により設定された通信パラメータＡを用いて、既に装置Ｄとの間でネットワークＡを構築済みである（Ｆ７０１）。装置Ｂは、装置Ｅとの間で行われた自動設定処理により設定された通信パラメータＢを用いて、既に装置Ｅとの間でネットワークＢを構築済みである（Ｆ７０４）。装置Ｃはネットワークを構築していない。
【００７８】
ここで、各装置において設定ボタン１０６が押される。まず、装置Ａは自身がネットワークに参加していることを確認する（Ｆ７０２）。装置ＡはすでにネットワークＡに参加済みであるため、自身の役割を提供装置と決定する。そして、自装置が所属する無線ＬＡＮチャネルに、自装置以外の提供装置が存在するかどうかを検索する（Ｆ７０３）。提供装置を検索するために、検索信号（プローブリクエスト）を自装置が所属する無線ＬＡＮチャネルに向けて送信する（Ｆ７０８）。一方、装置Ｂもすでに設定ボタン１０６が押下されているため提供装置として動作を実施している。よって、検索信号（Ｆ７０８）に対して、検索応答信号（プローブレスポンス）が装置Ｂから装置Ａへ送信される（Ｆ７０９）。
【００７９】
装置Ｂも装置Ａと同様の動作を行う。すなわち、自身がネットワークに参加していることを確認する（Ｆ７０５）。自身がネットワークに参加済みであるため、自身の役割を提供装置と決定すると共に、同一無線ＬＡＮチャネルについて提供装置を検索する（Ｆ７０６）。提供装置を検索するために、検索信号を同一無線ＬＡＮチャネルに向けて送信する（Ｆ７１０）。既に装置Ａも提供装置として動作しているため、装置Ａから装置Ｂに向けて検索応答信号が送信される（Ｆ７１１）。
【００８０】
以上の処理により、装置Ａは装置Ｂの存在を把握し、装置Ｂは装置Ａの存在を把握する。言い換えると、装置Ａおよび装置Ｂはそれぞれ、同じ無線ＬＡＮチャネルに複数の提供装置が存在することを検知する（Ｆ７１３、Ｆ７１５）。装置Ａ、装置Ｂは複数の提供装置が存在することを検知すると、互いに所定の処理を実行し、予め定めた基準により、どちらが提供装置になるかを決定する（Ｆ７２４、Ｆ７２５）。ここでの予め定めた基準としては、例えばＭＡＣアドレス又はＵＵＩＤ等の機器識別子の大小を用い、識別子が大きい装置が提供装置となる。なお、この識別子は、ＭＡＣアドレス又はＵＵＩＤの一部であってもよい。ＭＡＣアドレスとＵＵＩＤの両方を利用してもよい。また、通信装置の種類（プリンタやカメラなど）、使用形態、電源種別（電池駆動、ＡＣ電源駆動など）、またはＣＰＵパワーなどの通信装置の能力などを基準として比較を行っても良い。また、提供装置を決定するために、所定のメッセージを交換し、交換した情報に基づいて、提供装置を決定してもよい。図７の例では、装置Ｂが提供装置となり、装置Ａは提供装置の処理を終了するものとする（Ｆ７１４）。
【００８１】
一方、装置Ｃはネットワークに参加していないため、複数の無線ＬＡＮチャネルについて、ネットワーク検索処理を実施する（Ｆ７０７）。検索する無線ＬＡＮチャネルは通信装置がサポートしている全ての無線ＬＡＮチャネルでも良いし、ユーザが予め指定した複数のチャネルでも構わない。装置Ｃは、それぞれのチャネルに対して検索信号を送信する（Ｆ７１２）。なお、検索信号には、自動設定機能を有している、あるいは自動設定処理中であることを示す情報要素が含まれていてもよい。
【００８２】
装置Ｃは、装置Ａおよび装置Ｂの２つの提供装置が同一のチャネルに存在することを検出する。装置Ｃは同一チャネルに複数の提供装置が存在するため、提供装置同士がどちらか一方に確定するのを待つ。予め定めた時間だけ検索を繰り返し、検索信号（Ｆ７１７）を送信した時点で、検索応答信号（Ｆ７１８）が装置Ｂからのみ送信されるようになる。ここで、提供装置が装置Ｂと決定される。
【００８３】
もちろん、２つの提供装置が同一チャネルに存在することを検出した時点で、異なるチャンネルに複数の提供装置が存在した場合やインフラストラクチャモードのＷＰＳと同じように、この時点で装置Ｃは自動設定を取りやめてもよい。装置Ｃが自動設定を取りやめた場合は、ユーザインタフェースに設定ボタン１０６を再度押下することを促す表示をしても良い。設定ボタン１０６を再度押下したときには、装置Ａと装置Ｂの間で提供装置が一本化されている。
【００８４】
Ｆ７１８において、装置Ｃは装置Ｂとの間で通信パラメータ自動設定処理を実施すると決定した場合は、ネットワークＢへ参加する（Ｆ７１９）。
【００８５】
本実施形態の説明では、装置Ａ，装置Ｂおよび装置Ｃを全て略同一のタイミングで設定ボタンの操作をしている。言うまでも無く、装置Ａ、装置Ｂよりも装置Ｃのボタン押下のタイミングが遅い場合は、装置Ｃが自動設定処理を実施する時点で提供装置は１台に定まっているため、ここで説明した提供装置がどちらか一方に確定するのを待つ処理や、一旦処理を取りやめるという処理は行われない。
【００８６】
これによって、装置Ｂと装置Ｃの間では、通信パラメータの自動設定プロトコル処理で交わされる通信メッセージ（プロトコルメッセージ）を相互に送受する。なお、Ｆ７１９で装置ＣがネットワークＢに参加した時点では、暗号鍵、認証鍵等の通信パラメータが装置Ｃに設定されていないため、装置Ｃは装置Ｂとの間で暗号、認証を用いた通常のデータ通信を行うことはできない。装置ＣはネットワークＢに参加すると、装置Ｂに通信パラメータ設定の起動を示すメッセージを送信する（Ｆ７２０）。そして、該メッセージに応答して、装置Ｂから装置Ｃに対する通信パラメータＢの提供処理が行われ（Ｆ７２１）、提供処理が完了すると、装置Ｂは装置Ｃに対して通信パラメータ設定完了のメッセージを送信する（Ｆ７２２）。これにより通信パラメータ設定処理が完了し、装置Ｂと装置Ｃとの間で通信パラメータＢが共有される。
【００８７】
そして、装置Ｂと装置Ｃでは、共有した通信パラメータＢを用いて通信接続処理を行う（Ｆ７２３）。なお、通信パラメータ設定処理が完了すると自動的に通信接続処理を開始することで、ユーザに操作を強いることなく装置Ｂと装置Ｃが通信可能となる。
【００８８】
図７の動作を行うためには、装置Ａ、装置Ｂは、図９のＳ９０７の代わりに、異なるチャネルに複数の提供装置が存在するかを判定する。該判定により複数の提供装置が検出された場合は、Ｓ９１０に進む。または、Ｓ９１１、Ｓ９１２の何れかに進む。また、異なるチャネルに複数の提供装置が存在しない場合は、Ｓ９２２の代わりに、同一チャネルに複数の提供装置が存在するかを判定する。同一チャネルに複数の提供装置が存在する場合は、Ｓ９２３に進む。
【００８９】
以上のように本実施形態によれば、提供装置が異なるネットワークに存在しても、同じチャネルに存在する場合に、提供装置を自動的に決定するので、受信装置はいずれかの提供装置から通信パラメータの提供を受けることができる。
【００９０】
また、図９のＳ９１９では、自通信装置を含む複数の提供装置が存在するかを判定する。他の提供装置が存在する場合は、予め定めた基準により、自通信装置と他の提供装置のどちらが提供装置の機能を継続するかを決定する。ここでの予め定めた基準としては、例えばＭＡＣアドレス又はＵＵＩＤ等の機器識別子の大小を用い、識別子が大きい装置が提供装置となる。なお、この識別子は、ＭＡＣアドレス又はＵＵＩＤの一部であってもよい。ＭＡＣアドレスとＵＵＩＤの両方を利用してもよい。また、通信装置の種類（プリンタやカメラなど）、使用形態、電源種別（電池駆動、ＡＣ電源駆動など）、またはＣＰＵパワーなどの通信装置の能力などを基準として比較を行っても良い。また、提供装置を決定するために、所定のメッセージを交換し、交換した情報に基づいて、提供装置を決定してもよい。そして、自通信装置が提供装置としての処理を継続すると判断した場合は、提供装置として通信パラメータの提供処理を行う。つまり、通信パラメータ設定の起動要求を待ち、該要求を受信すると、受信装置に通信パラメータを提供する。また、他の提供装置が提供装置となる場合、つまり、自通信装置が提供装置としての処理を行わないと判断した場合は、処理を終了する。このように、Ｓ９１９の判断は、複数の提供装置が同じネットワークかどうかを判定する必要なく、複数の提供装置が存在すれば、提供装置の決定処理を行う。
【００９１】
以上のように本実施形態においても、提供装置が複数台存在する場合に、通信パラメータ自動設定処理が失敗することを防止できる。また、提供装置が異なるネットワークであっても、同じ無線ＬＡＮチャネルに存在する場合は、提供装置も他の提供装置を検出できるので、提供装置同士でどの提供装置が処理を継続するかを決定できる。
【００９２】
以上のように、本発明によれば、提供装置が複数台存在する場合に、通信パラメータ自動設定処理が失敗する可能性を低減できる。提供装置が複数台存在してもユーザが意図する提供装置から通信パラメータの提供を受ける可能性が高くなる。また、同じネットワークの提供装置であれば、どの提供装置から通信パラメータの提供を受けても同じネットワークに参加できるので、いずれかの提供装置からの提供を受け、ネットワークに参加できる。
【００９３】
なお、上記説明では、検索信号と検索応答信号を用いるアクティブスキャンによって提供装置の検索を行ったが、ビーコンの受信を待機することにより提供装置を検索するパッシブスキャンを用いてもよい。また、アクティブスキャンとパッシブスキャンを組み合わせて提供装置を検索するようにしてもよい。
【００９４】
また、上記説明はＩＥＥＥ８０２．１１準拠の無線ＬＡＮを例に説明した。しかしながら、本発明は、ワイヤレスＵＳＢ、ＭＢＯＡ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＵＷＢ、ＺｉｇＢｅｅ等の他の無線媒体において実施してもよい。また、有線ＬＡＮ等の有線通信媒体において実施してもよい。
【００９５】
ここで、ＭＢＯＡは、Ｍｕｌｔｉ  Ｂａｎｄ  ＯＦＤＭ  Ａｌｌｉａｎｃｅの略である。また、ＵＷＢは、ワイヤレスＵＳＢ、ワイヤレス１３９４、ＷＩＮＥＴなどが含まれる。また、通信パラメータとしてネットワーク識別子、暗号方式、暗号鍵、認証方式、認証鍵を例にしたが、他の情報であってもよいし、他の情報も通信パラメータには含まれるようにしてもよいことは言うまでも無い。
【００９６】
本発明は前述の機能を実現するソフトウェアのプログラムコードを記録した記録媒体をシステムあるいは装置に供給し、システムあるいは装置のコンピュータ（ＣＰＵ、ＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行するようにしてもよい。
【符号の説明】
【００９７】
２０１  装置装置
２０２  通信パラメータ自動設定機能ブロック
２０３  パケット受信部
２０４  パケット送信部
２０５  検索信号送信部
２０６  検索信号受信部
２０７  ネットワーク制御部
２０８  通信パラメータ受信部
２０９  通信パラメータ提供部
２１０  自動設定制御部
２１１  通信パラメータ提供元検出部
２１２  通信パラメータ記憶制御部
２１３  ビーコン制御部
２１４  ビーコン生成部
【図１】
2010213087.tif 000003
【図２】
2010213087.tif 000004
【図３】
2010213087.tif 000005
【図４】
2010213087.tif 000006
【図５】
2010213087.tif 000007
【図６】
2010213087.tif 000008
【図７】
2010213087.tif 000009
【図８】
2010213087.tif 000010
【図９】
2010213087.tif 000011