説明

無線通信装置

【課題】 無線プロファイルを適切に用いて無線ネットワークを構築するための技術を提供する。
【解決手段】 ユーザがデバイス状態のプリンタ10の操作部14とPC70のそれぞれに方式選択操作を実行すると、プリンタ10は、プリンタ10の状態をG/O状態に決定する。次いで、プリンタ10は、パスワードを生成する。プリンタ10は、生成されたパスワード「xxxxxx」を含む無線プロファイルを用いて、PC70との間で無線接続を確立し、無線ネットワークを構築する。無線ネットワークが消滅した後において、ユーザがデバイス状態のプリンタ10の操作部14とPC70のそれぞれに方式選択操作を実行すると、プリンタ10は、パスワード「xxxxxx」とは異なる他のパスワードを生成する。プリンタ10は、生成された他のパスワードを含む無線プロファイルを用いて、PC70との間で無線接続を確立する。

【発明の詳細な説明】
【技術分野】
【0001】
本明細書によって開示される技術は、無線ネットワークの親局として機能する親局状態と、無線ネットワークの子局として機能する子局状態と、を含む複数の状態のうちのいずれかの状態で選択的に動作可能な無線通信装置に関する。
【背景技術】
【0002】
特許文献1には、クライアントデバイスとアクセスポイントとを含む無線ネットワークを構築するための技術が開示されている。この技術では、クライアントデバイスは、ユーザによって所定の操作が実行されると、上記の無線ネットワークを構築するために利用されるべき無線プロファイル(SSID、パスワード等)を生成する。クライアントデバイスとアクセスポイントとは、当該無線プロファイルを用いて、無線接続を確立する。これにより、上記の無線ネットワークが構築される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2004−234286号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1では、無線ネットワークが消滅した後に、新たな無線ネットワークが構築される状況について、何ら開示されていない。本明細書では、無線ネットワークが消滅した後に、新たな無線ネットワークが構築される状況において、当該新たな無線ネットワークを適切に構築するための技術を提供する。
【課題を解決するための手段】
【0005】
本明細書によって開示される無線通信装置は、無線ネットワークの親局として機能する親局状態と、無線ネットワークの子局として機能する子局状態と、を含む複数の状態のうちのいずれかの状態で選択的に動作可能な無線通信装置である。無線制御装置は、決定部と、生成部と、通信実行部とを備える。決定部は、無線通信装置が複数の状態のうちのいずれの状態で動作するのかを決定する。生成部は、無線通信装置と第1の外部装置とを含む第1の無線ネットワークが構築されるべき場合において、無線通信装置が親局状態で動作することが決定される場合に、第1の無線ネットワークを構築するための第1の無線プロファイルに含まれる第1の認証情報を生成する。通信実行部は、第1の認証情報を含む第1の無線プロファイルを用いて、第1の外部装置と無線接続を確立するための通信を実行することによって、第1の無線ネットワークを構築する。第1の無線ネットワークが消滅した後に、無線通信装置と第2の外部装置とを含む第2の無線ネットワークが構築されるべき場合において、無線通信装置が親局状態で動作することが決定される場合に、生成部は、さらに、第2の無線ネットワークを構築するための第2の無線プロファイルに含まれる第2の認証情報であって、第1の認証情報とは異なる第2の認証情報を生成する。通信実行部は、さらに、第2の認証情報を含む第2の無線プロファイルを用いて、第2の外部装置と無線接続を確立するための通信を実行することによって、第2の無線ネットワークを構築する。
【0006】
例えば、第1の無線ネットワークが構築される際に、第三者によって第1の認証情報が不正に取得される可能性がある。上記の技術では、無線通信装置は、第1の無線ネットワークが消滅した後に、第2の無線ネットワークが構築されるべき場合において、無線通信装置が親局状態で動作することが決定される場合に、第1の無線ネットワークを構築するための第1の認証情報とは異なる第2の認証情報を生成する。即ち、無線通信装置は、第2の無線ネットワークが構築されるべき場合に、第三者が知り得ない第2の認証情報を生成する。従って、第三者によって所有される機器が、第2の無線ネットワークに不正に参加することを抑制することができる。即ち、第2の無線ネットワークのセキュリティを向上させ得る。従って、新たな無線ネットワークを適切に構築することができる。
【0007】
なお、上記の無線通信装置を実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も、新規で有用である。
【図面の簡単な説明】
【0008】
【図1】通信システムの構成の一例を示す。
【図2】プリンタ処理のフローチャートを示す。
【図3】PIN/PBC接続処理のフローチャートを示す。
【図4】マニュアル接続処理のフローチャートを示す。
【図5】G/O処理のフローチャートを示す。
【図6】ケースAのシーケンス図を示す。
【図7】図6の続きのシーケンス図を示す。
【図8】ケースBのシーケンス図を示す。
【発明を実施するための形態】
【0009】
(実施例)
(システムの構成:図1)
図1に示されるように、通信システム2は、プリンタ10(PC60、70の周辺機器)と、PC60、70と、を備える。プリンタ10及びPC60は、それぞれ、後述のWi−Fi Directに従った無線通信機能を実行可能である。なお、以下では、Wi−Fi Directのことを「WFD」と呼び、WFDに従った無線通信機能のことを「WFD機能」と呼ぶ。プリンタ10とPC60とは、WFDに従って無線接続を確立可能である。プリンタ10とPC60との間で無線接続が確立されることにより、無線ネットワークが構築される。この結果、プリンタ10とPC60とは、印刷データ等の通信対象の対象データの無線通信を実行可能になる。以下では、プリンタ10、PC60のように、WFD機能を実行可能な機器を「WFD対応機器」と呼ぶ。
【0010】
PC70は、WFD機能を実行不可能であるが、通常の無線通信の機能を実行可能である。即ち、PC70は、公知のAP(アクセスポイント)との間で無線接続を確立可能である。詳しくは後述するが、APとして機能するG/O状態のプリンタ10とPC70との間で無線接続が確立されることにより、無線ネットワークが構築される。この結果、プリンタ10とPC70とは、印刷データ等の通信対象の対象データの無線通信を実行可能になる。以下では、PC70のように、WFD機能を実行不可能な機器を「WFD非対応機器」と呼ぶ。
【0011】
(プリンタ10の構成)
プリンタ10は、表示部12と、操作部14と、無線インターフェイス16と、印刷実行部20と、制御部22と、を備える。上記の各部12〜22は、バス線(符号省略)に接続されている。表示部12は、様々な情報を表示するためのディスプレイである。操作部14は、複数のキーによって構成される。ユーザは、操作部14を操作することによって、様々な指示をプリンタ10に与えることができる。無線インターフェイス16は、無線通信を実行するためのインターフェイスである。無線インターフェイス16は、無線チップセット17を含む。無線チップセット17の機能については後で説明する。印刷実行部20は、インクジェット方式、レーザ方式等の印刷機構を備え、制御部22からの指示に従って印刷を実行する。
【0012】
制御部22は、CPU30とメモリ32とを備える。CPU30は、メモリ32に格納されているプログラム34に従って、様々な処理を実行する。メモリ32は、ROM、RAM、ハードディスク等によって構成される。メモリ32は、上記のプログラム34の他に、後述の管理リスト36を格納する。CPU30が上記のプログラム34に従って処理を実行することによって、決定部40、生成部42、通信実行部44、停止部46、及び、表示制御部48の各機能が実現される。
【0013】
(PC60、70の構成)
PC60は、図示省略のCPU、メモリ、ディスプレイ等を備える。PC60のメモリは、プリンタ10のためのプリンタドライバプログラムを格納している。PC60のCPUは、プリンタドライバプログラムを利用して、印刷対象の印刷データを生成することができる。プリンタ10とPC60との間に無線接続が確立されている状態では、PC60は、印刷データをプリンタ10に無線で送信可能である。なお、PC70は、WFD機能を実行不可能であることを除けば、PC60と同様の構成を備える。
【0014】
(WFD)
上述したように、プリンタ10とPC60とは、それぞれ、WFD機能を実行可能である。WFDは、Wi−Fi Allianceによって策定された規格である。WFDは、Wi−Fi Allianceによって作成された「Wi−Fi Peer−to−Peer(P2P) Technical Specification Version1.1」に記述されている。
【0015】
WFDでは、機器の状態として、Group Owner状態(以下では「G/O状態」と呼ぶ)、クライアント状態、及び、デバイス状態の3つの状態が定義されている。WFD対応機器(即ち、プリンタ10、PC60等)は、上記の3つの状態のうちの1つの状態で選択的に動作可能である。なお、WFD非対応機器は、上記の3つの状態のうちの1つの状態で選択的に動作不可能であり、常にクライアント状態で動作する。
【0016】
G/O状態の機器とクライアント状態の機器とによって、1個の無線ネットワークが構成される。1個の無線ネットワークでは、G/O状態の機器が1個しか存在し得ないが、クライアント状態の機器が1個以上存在し得る。G/O状態の機器は、1個以上のクライアント状態の機器を管理する。具体的に言うと、G/O状態の機器は、1個以上のクライアント状態の機器のそれぞれの識別情報(即ちMACアドレス)が記述された管理リスト(図1の36参照)を記憶する。G/O状態の機器は、クライアント状態の機器(WFD対応機器とWFD非対応機器のいずれも含む)が無線ネットワークに新たに参加すると、当該機器の識別情報を管理リストに追加し、クライアント状態の機器が無線ネットワークから離脱すると、当該機器の識別情報を管理リストから削除する。
【0017】
G/O状態の機器は、管理リストに登録されている機器、即ち、クライアント状態の機器との間で、通信対象の対象データ(例えば、OSI参照モデルのネットワーク層の情報を含むデータ(印刷データ等))の無線通信を実行可能である。しかしながら、G/O状態の機器は、管理リストに登録されていない機器との間で、無線ネットワークに参加するためのデータ(例えば、ネットワーク層の情報を含まないデータ(Probe Request信号、Probe Response信号等の物理層のデータ))の無線通信を実行可能であるが、上記の対象データの無線通信を実行不可能である。例えば、G/O状態のプリンタ10は、管理リスト36に登録されているPC60(即ちクライアント状態のPC60)から印刷データを無線で受信可能であるが、管理リスト36に登録されていないPCから印刷データを無線で受信不可能である。
【0018】
また、G/O状態の機器は、複数個のクライアント状態の機器の間の対象データ(印刷データ等)の無線通信を中継可能である。例えば、クライアント状態のPC60がクライアント状態の他のプリンタに印刷データを無線で送信すべき場合には、PC60は、まず、印刷データをG/O状態のプリンタ10に無線で送信し、プリンタ10は、印刷データを上記の他のプリンタに無線で送信する。即ち、G/O状態の機器は、無線ネットワークのAP(アクセスポイント)の機能を実行可能である。
【0019】
なお、無線ネットワークに参加していないWFD対応機器(即ち、管理リストに登録されていないWFD対応機器)が、デバイス状態の機器である。デバイス状態の機器は、無線ネットワークに参加するためのデータの無線通信を実行可能であるが、当該無線ネットワークを介して対象データ(印刷データ等)の無線通信を実行不可能である。
【0020】
(無線接続を実行するための方式)
本実施例では、一対の機器の間で無線接続を実行するための方式として、WPS(Wi-Fi Protected Setup)の無線接続方式と、マニュアルの無線接続方式(以下では「マニュアル方式」と呼ぶ)と、が利用される。なお、WFDでは、WPSの無線接続方式が利用される。WPSの無線接続方式は、PIN(Personal Identification Number)コード方式と、PBC(Push Button Configuration)方式と、を含む。一方、マニュアル方式は、WFD非対応機器(例えばPC70)とAP(例えばG/O状態のプリンタ10)との間で、WPSの無線接続方式を利用せず、ユーザが無線接続を確立するために必要な無線プロファイル(SSID、認証方式、暗号化方式、パスワード等)を入力することで、無線接続を実行するための方式である。
【0021】
(自律G/Oモード)
本実施例のWFD対応機器(プリンタ10、PC60等)は、通常の動作モードと、通常の動作モードとは異なる自律G/Oモードと、のどちらかの動作モードに従って動作する。ユーザは、WFD対応機器の操作部において、自律G/OモードのON又はOFFを切り替えるための所定の操作を実行することができる(後述の図2のS10参照)。
【0022】
(プリンタ処理:図2)
続いて、図2を参照して、デバイス状態のプリンタ10によって実行されるプリンタ処理の内容について説明する。
【0023】
プリンタ10の電源がON状態の間、S10において、プリンタ10の制御部22は、自律G/OモードのON操作が行われることを監視する。S10でYESの場合(ユーザが自律G/OモードのON操作を実行した場合)、S20に進む。S20では、決定部40(図1参照)は、プリンタ10の状態としてG/O状態を決定して、プリンタ10の状態を、現在の状態(例えばデバイス状態)からG/O状態に移行させる。なお、S10でNOの場合(ユーザが自律G/OモードのON操作を実行しない場合)、S12に進む。
【0024】
次いで、S22では、生成部42(図1参照)は、パスワードを生成する。S22で生成されるパスワードは、無線ネットワークを構築するために用いられる無線プロファイルに含まれるべきパスワードである。具体的には、生成部42は、英数字を用いて文字列をランダムに生成し、生成された文字列を、現在時刻に関係する所定の関数で変換することによって、パスワードを生成する。上記の手法でパスワードが生成されることにより、パスワードに規則性が表れ難くなる。即ち、生成部42がパスワードを生成する毎に、前回生成されたパスワードとは異なるパスワードが生成される。S22を終えると、S12に進む。
【0025】
S12では、制御部22は、プリンタ10の現在の状態がG/O状態であるのか否かを判断する。S12でYESの場合(プリンタ10の現在の状態=G/O状態の場合)、S24に進む。S24では、制御部22は、G/O処理(図5参照)を実行する。S24のG/O処理を終えると、S10に戻る。
【0026】
S12でNOの場合(プリンタ10の現在の状態=デバイス状態又はクライアント状態の場合)、S14に進む。S14では、制御部22は、方式選択操作が実行されることを監視する。ユーザは、プリンタ10の操作部14を操作して、PINコード方式、PBC方式、及び、マニュアル方式のうちのいずれか1つの方式を選択するための方式選択操作を実行することができる。ユーザが方式選択操作を実行すると、制御部22は、S14でYESと判断し、S16に進む。なお、S14でNOの場合(ユーザが方式選択操作を実行しない場合)、S10に戻る。
【0027】
S16では、制御部22は、S14で選択された方式がPINコード方式又はPBC方式であるのか否かを判断する。S16でYESの場合(S14で選択された方式=PINコード方式又はPBC方式)、S18に進む。S18では、制御部22は、PIN/PBC接続処理(図3参照)を実行する。一方、S16でNOの場合(S14で選択された方式=マニュアル方式)、S26に進む。S26では、決定部40は、プリンタ10の状態としてG/O状態を決定して、プリンタ10の状態を、現在の状態(例えばデバイス状態)からG/O状態に移行させる。次いで、S28では、制御部22は、マニュアル接続処理(図4参照)を実行する。S18又はS28を終えると、S10に戻る。
【0028】
なお、プリンタ10の現在の状態がデバイス状態である間に、S16でYESと判断される場合(S14で選択された方式=PINコード方式又はPBC方式)には、決定部40は、プリンタ10の状態としてデバイス状態を維持し、S18に進む。一方において、プリンタ10の現在の状態がクライアント状態である間に、S16でYESと判断される場合(S14で選択された方式=PINコード方式又はPBC方式)には、決定部40は、プリンタ10の状態としてデバイス状態を決定して、プリンタ10の状態をクライアント状態からデバイス状態に移行させた後に、S18に進む。
【0029】
(PIN/PBC接続処理:図3)
続いて、図3を参照して、デバイス状態のプリンタ10によって実行されるPIN/PBC接続処理の内容について説明する。PIN/PBC接続処理は、上記のPINコード方式とPBC方式のいずれかの方式によって、プリンタ10と他のWFD対応機器(例えばPC60)との間で無線接続を確立するための処理である。
【0030】
図3のS30では、プリンタ10の制御部22は、Scan処理を実行する。Scan処理は、プリンタ10の周囲に存在するG/O状態の機器(WFD対応機器)を検索するための処理である。具体的に言うと、制御部22は、Scan処理において、1ch〜13chの13個のチャネルを順次利用して、Probe Request信号を無線で順次送信する。
【0031】
例えば、プリンタ10の周囲にG/O状態のWFD対応機器(以下では「特定のG/O機器」と呼ぶ)が存在する場合には、特定のG/O機器は、1ch〜13chのうちの1個のチャネルを利用することを予め決定している。従って、特定のG/O機器は、プリンタ10からProbe Request信号を無線で受信する。この場合、特定のG/O機器は、Probe Response信号をプリンタ10に無線で送信する。このProbe Response信号は、特定のG/O機器がG/O状態であることを示す情報を含む。この結果、制御部22は、特定のG/O機器を見つけることができる。なお、上記のProbe Response信号は、さらに、特定のG/O機器のデバイス名と、特定のG/O機器のカテゴリ(例えば、プリンタ、PC等)を示す情報と、特定のG/O機器のMACアドレスと、を含む。この結果、制御部22は、特定のG/O機器に関する情報を取得することができる。
【0032】
なお、例えば、プリンタ10の周囲にデバイス状態のWFD対応機器(以下では「特定のデバイス機器」と呼ぶ)が存在する場合には、特定のデバイス機器は、1ch、6ch、11chのうちの1個のチャネルを利用することを予め決定している。従って、特定のデバイス機器も、プリンタ10からProbe Request信号を無線で受信する。この場合、特定のデバイス機器は、Probe Response信号をプリンタ10に無線で送信する。ただし、このProbe Response信号は、デバイス状態であることを示す情報を含み、G/O状態であることを示す情報を含まない。また、クライアント状態の機器(WFD非対応機器を含む)は、プリンタ10からProbe Request信号を無線で受信しても、Probe Response信号をプリンタ10に無線で送信しない。従って、制御部22は、Scan処理において、特定のG/O機器を適切に見つけることができる。
【0033】
次いで、S32では、制御部22は、Listen処理を実行する。Listen処理は、後述のSearch処理(S34参照)を実行している特定のデバイス機器から無線で受信されるProbe Request信号に応答するための処理である。即ち、制御部22は、特定のデバイス機器からProbe Request信号を無線で受信すると、Probe Response信号を無線で送信する。このProbe Response信号は、プリンタ10がデバイス状態であることを示す情報と、プリンタ10のデバイス名と、プリンタ10のカテゴリを示す情報と、プリンタ10のMACアドレスと、を含む。制御部22がProbe Response信号を送信することによって、特定のデバイス機器は、プリンタ10を見つけることができる。
【0034】
次いで、S34では、制御部22は、1ch、6ch、11chの3個のチャネルを順次利用して、Probe Request信号を無線で順次送信する。これにより、制御部22は、特定のデバイス機器からProbe Response信号を無線で受信する。このProbe Response信号は、特定のデバイス機器がデバイス状態であることを示す情報と、特定のデバイス機器のデバイス名と、特定のデバイス機器のカテゴリを示す情報と、特定のデバイス機器のMACアドレスと、を含む。この結果、制御部22は、特定のデバイス機器を見つけることができ、特定のデバイス機器に関する情報を取得することができる。なお、特定のG/O機器も、プリンタ10のSearch処理で送信されるProbe Request信号に応じて、Probe Response信号をプリンタ10に無線で送信し得る。ただし、このProbe Response信号は、G/O状態であることを示す情報を含み、デバイス状態であることを示す情報を含まない。また、上述したように、クライアント状態の機器(WFD非対応機器を含む)は、プリンタ10からProbe Request信号を無線で受信しても、Probe Response信号をプリンタ10に無線で送信しない。このために、制御部22は、Search処理において、特定のデバイス機器を適切に見つけることができる。
【0035】
次いで、S36では、制御部22は、機器リストを表示部12に表示させる。制御部22は、S30及びS34で見つかった各機器に関する情報(即ちS30及びS34で得られた情報)を表示部12に表示させる。図3の例では、S36において、デバイス名「XXX」に対応する機器に関する情報(G/O状態、プリンタ、MACアドレス)と、デバイス名「YYY」に対応する機器に関する情報(デバイス状態、PC、MACアドレス)と、が表示部12に表示される。
【0036】
ユーザは、S36で表示される機器リストを見ることによって、プリンタ10の周囲に存在する機器を知ることができる。ユーザは、プリンタ10とどの機器との間で無線接続を確立させるのかを選択するための機器選択操作を操作部14に実行することができる。
なお、以下では、機器選択操作によって選択された機器(例えばPC60)のことを「対象機器」と呼ぶ。対象機器が選択されると、S38に進む。
【0037】
S38では、制御部22は、対象機器がデバイス状態であるか否かを判断する。対象機器がデバイス状態である場合(例えば図3のデバイス名「YYY」に対応する機器がユーザによって選択された場合)、制御部22は、S38でYESと判断し、S40に進む。
【0038】
S40では、決定部40(図1参照)は、対象機器との間でG/Oネゴシエーションを実行する。上述したように、1個の無線ネットワークでは、1個のG/O状態の機器しか存在し得ない。従って、決定部40は、G/Oネゴシエーションを実行して、プリンタ10及び対象機器のどちらか一方の機器をG/Oとして決定し、他方の機器をクライアントとして決定する。
【0039】
例えば、図2のS14で選択された方式がPINコード方式である場合には、S40では、決定部40は、PINコードを生成して表示部12に表示させる。この場合、ユーザは、表示部12に表示されたPINコードを、対象機器に入力する。なお、ここでは、プリンタ10でPINコードが表示され、対象機器にPINコードが入力される例を説明したが、対象機器でPINコードが表示され、プリンタ10にPINコードが入力されてもよい。PINコードの表示及び入力が実行されると、決定部40は、対象機器に接続要求信号を無線で送信し、対象機器からOK信号を無線で受信する。
【0040】
一方において、例えば、図2のS14で選択された方式がPBC方式である場合には、PINコードの表示及び入力が実行されない。この場合、決定部40は、対象機器に接続要求信号を無線で送信し、対象機器からOK信号を無線で受信する。
【0041】
決定部40は、接続要求信号の送信及びOK信号の受信が終了すると、プリンタ10のG/O優先度を示す情報を対象機器に無線で送信すると共に、対象機器のG/O優先度を示す情報を対象機器から無線で受信する。なお、プリンタ10のG/O優先度は、プリンタ10がG/Oになるべき程度を示す指標であり、プリンタ10において予め決められている。同様に、対象機器のG/O優先度は、対象機器がG/Oになるべき程度を示す指標である。例えば、CPU及びメモリの能力が比較的に高い機器(例えばPC)は、G/Oとして動作しながら、他の処理を高速で実行することができる。従って、このような機器は、通常、G/Oになるべき程度が高くなるように、G/O優先度が設定される。一方において、例えば、CPU及びメモリの能力が比較的に低い機器は、G/Oとして動作しながら、他の処理を高速で実行することができない可能性がある。従って、このような機器は、通常、G/Oになるべき程度が低くなるように、G/O優先度が設定される。
【0042】
決定部40は、プリンタ10のG/O優先度と対象機器のG/O優先度とを比較して、優先度が高い方の機器(プリンタ10又は対象機器)をG/Oとして決定し、優先度が低い方の機器(対象機器又はプリンタ10)をクライアントとして決定する。また、対象機器は、プリンタ10と同じ手法を利用して、プリンタ10のG/O優先度と対象機器のG/O優先度とに基づいて、G/O及びクライアントを決定する。
【0043】
S40のG/Oネゴシエーションが終了すると、決定部40は、プリンタ10の状態を、デバイス状態から決定済みの状態(即ちクライアント状態又はG/O状態)に移行させる。また、対象機器も、デバイス状態から決定済みの状態(即ちクライアント状態又はG/O状態)に移行する。
【0044】
一方、S38で、対象機器がG/O状態である場合(例えば図3のデバイス名「XXX」に対応する機器がユーザによって選択された場合)、制御部22は、S38でNOと判断し、S40をスキップしてS42に進む。この場合、S40のG/Oネゴシエーションが実行されずに、決定部40は、プリンタ10の状態としてクライアント状態を決定して、プリンタ10の状態を、デバイス状態からクライアント状態に移行させる。対象機器がG/O状態であるために、プリンタ10は、対象機器によって管理されるクライアント状態になることが好ましいからである。
【0045】
例えば、図2のS14で選択された方式がPINコード方式である場合には、S38でNOと判断されると、上記のS40と同様に、PINコードの表示及び入力が実行される。次いで、決定部40は、対象機器から接続要求信号を無線で受信し、OK信号を対象機器に無線で送信する。一方において、例えば、図2のS14で選択された方式がPBC方式である場合には、S38でNOと判断されると、PINコードの表示及び入力が実行されず、決定部40は、対象機器から接続要求信号を無線で受信し、OK信号を対象機器に無線で送信する。接続要求信号の受信及びOK信号の送信が実行されると、S42に進む。
【0046】
S42では、制御部22は、プリンタ10の現在の状態がG/O状態であるのか否かを判断する。S42でYESの場合(プリンタ10の現在の状態=G/O状態、かつ、対象機器の現在の状態=クライアント状態)には、S44に進む。一方、S42でNOの場合(プリンタ10の現在の状態=クライアント状態、かつ、対象機器の現在の状態=G/O状態)には、S52に進む。
【0047】
S44では、生成部42(図1参照)は、パスワードを生成する。S44の処理は、図2のS22の処理と同様である。S44を終えると、S46に進む。
【0048】
S46では、通信実行部44(図1参照)は、G/O状態用のWPSネゴシエーションを実行する。例えば、図2のS14で選択された方式がPINコード方式である場合には、通信実行部44は、プリンタ10で表示されたPINコード又はプリンタ10に入力されたPINコードを用いて、特定のデータ(例えば、最後にプリンタ10と対象機器との間で通信したパケットデータ)をハッシュコードに変換する。一方、対象機器も、対象機器で表示されたPINコード又は対象機器に入力されたPINコードを用いて、上記の特定データをハッシュコードに変換する。プリンタ10(通信実行部44)及び対象機器のどちらかの機器は、プリンタ10で生成されたハッシュコードと、対象機器で生成されたハッシュコードと、が一致するのか否かを判断する。また、例えば、図2のS14で選択された方式がPBC方式である場合には、プリンタ10(通信実行部44)及び対象機器は、予め決められているPINコードを用いて、上記の特定データをハッシュコードに変換する。また、プリンタ10及び対象機器のどちらかの機器は、2つのハッシュコードが一致するのか否かを判断する。本実施例では、SSID、認証方式、及び、暗号化方式は、予め決められている。ただし、SSIDは、S46で生成されてもよい。また、パスワードは、S44で生成されたものである。
【0049】
2つのハッシュコードが一致した場合、即ち、PINコードの認証に成功した場合には、通信実行部44は、上記の無線プロファイルを、対象機器に無線で送信する。この結果、プリンタ10及び対象機器は、同じ無線プロファイルを利用することができる。
【0050】
次いで、S48では、通信実行部44は、対象機器との間で、無線プロファイルを用いて接続処理を実行する。即ち、通信実行部44は、対象機器との間で、無線プロファイルを用いて、Authentication Request、Authentication Response、Association Request、Association Response、及び、4way handshakeの無線通信を実行する。この過程で、プリンタ10及び対象機器は、SSIDの認証、パスワードの認証、認証方式及び暗号化方式の認証等の様々な認証処理を実行する。全ての認証が成功した場合に、プリンタ10及び対象機器の間に無線接続が確立される。これにより、プリンタ10と対象機器とを含む無線ネットワークが構築される。
【0051】
次いで、S50では、制御部22は、メモリ32内の管理リスト36にクライアント状態である対象機器のMACアドレスを登録する。なお、対象機器のMACアドレスは、S34のSearch処理で取得されたProbe Response信号に含まれている。S50を終えると、PIN/PBC接続処理が終了する。
【0052】
一方、S52では、通信実行部44は、クライアント状態用のWPSネゴシエーションを実行する。具体的に言うと、S52では、通信実行部44は、無線接続を確立するために必要な無線プロファイル(SSID、認証方式、暗号化方式、パスワード等)を、対象機器から無線で受信する。例えば、図2のS14で選択された方式がPINコード方式である場合には、プリンタ10(通信実行部44)及び対象機器は、プリンタ10で表示されたPINコード又はプリンタ10に入力されたPINコードを用いて、特定データをハッシュコードに変換し、2つのハッシュコードが一致するのか否かを判断する。2つのハッシュコードが一致した場合、通信実行部44は、無線プロファイルを対象機器から無線で受信する。また、例えば、図2のS14で選択された方式がPBC方式である場合には、プリンタ10及び対象機器は、予め決められたPINコードを用いて、特定データをハッシュコードに変換し、2つのハッシュコードが一致するのか否かを判断する。2つのハッシュコードが一致した場合、通信実行部44は、無線プロファイルを対象機器から無線で受信する。この結果、プリンタ10及び対象機器は、同じ無線プロファイルを利用することができる。
【0053】
次いで、S54では、通信実行部44は、上記のS48と同様に、対象機器との間で無線プロファイルを用いて接続処理を実行する。その結果、プリンタ10と対象機器との間に無線接続が確立される。これにより、プリンタ10と対象機器とを含む無線ネットワークが構築される。S54を終えると、PIN/PBC接続処理が終了する。
【0054】
例えば、プリンタ10がG/O状態である場合には、プリンタ10は、クライアント状態の対象機器との間で、通信対象の対象データ(印刷データ等)の通信を実行することができるようになる。なお、対象データは、OSI参照モデルの物理層よりも上位層であるネットワーク層のデータを含む。従って、G/O状態のプリンタ10は、クライアント状態の対象機器との間で、ネットワーク層の無線通信を実行することができる。さらに、G/O状態のプリンタ10は、クライアント状態の対象機器と、管理リストに登録されているクライアント状態の他の機器と、の間の無線通信を中継することができるようになる。
【0055】
(マニュアル接続処理:図4)
続いて、図4を参照して、G/O状態のプリンタ10によって実行されるマニュアル接続処理(図2のS28)の内容について説明する。ユーザは、プリンタ10と他の機器(以下では「対象機器」と呼ぶ)との間で、WPSの無線接続方式を利用せずに、無線接続を確立させることを望む場合には、図2のS14でマニュアル方式を選択する。この結果、マニュアル接続処理が実行される。なお、上述したように、マニュアル接続処理が開始される場合には、プリンタ10の状態はG/O状態である(図2のS26)。通常、マニュアル接続処理では、G/O状態になることが不可能なWFD非対応機器と接続することを想定しているからである。
【0056】
S60では、まず、生成部42は、パスワードを生成する。S60の処理は、図2のS22の処理と同様である。S60を終えると、S62に進む。
【0057】
S62では、表示制御部48(図1参照)は、SSID及びパスワードを表示部12に表示させる。具体的には、S62では、表示制御部48は、予め決められているSSIDと、S60で生成されたパスワードと、を表示部12に表示させる。SSID及びパスワードは、無線接続を確立するために必要な無線プロファイルに含まれるべき情報である。ユーザは、表示部12を見ることにより、SSID及びパスワードを知ることができる。マニュアル方式では、SSID及びパスワードは、対象機器に無線で送信されない。
【0058】
ユーザは、対象機器の操作部を操作して、プリンタ10の表示部12に表示されたSSID及びパスワードを対象機器に入力する。この場合、対象機器は、入力されたSSID及びパスワードをプリンタ10に無線で送信する。この際、対象機器は、入力されたSSID及びパスワードとともに、対象機器のMACアドレスをプリンタ10に無線で送信する。
【0059】
S64では、通信実行部44は、対象機器から受信したSSID及びパスワードの認証が成功したか否か判断する。具体的には、S64では、通信実行部44は、対象機器から受信したSSID及びパスワードと、表示部12に表示されたSSID及びパスワードと、が一致するのか否かを判断(認証)する。S64でYESの場合(対象機器から受信したSSID及びパスワードと、表示部12に表示されたSSID及びパスワードと、が一致する場合)、S66に進む。なお、S64でNOの場合には、S66及びS68が実行されずに、マニュアル接続処理が終了する。
【0060】
S66では、通信実行部44は、対象機器との間で無線プロファイルを用いて接続処理を実行する。具体的には、まず、S66では、通信実行部44は、予め決められている認証方式及び暗号化方式等を対象機器に無線で送信する。この結果、プリンタ10と対象機器とは、共通の無線プロファイル(SSID、認証方式、暗号化方式、パスワード等)を利用することができる。さらに、通信実行部44は、対象機器との間で、無線プロファイルを用いた通信(Authentication Request、Authentication Response、Association Request、Association Response、及び、4way handshake)を実行して、認証方式及び暗号化方式の認証等、SSID及びパスワードの認証以外の様々な認証処理を実行する。全ての認証が成功した場合に、プリンタ10及び対象機器の間に無線接続が確立される。これにより、プリンタ10及び対象機器を含む無線ネットワークが構築される。
【0061】
次いで、S68では、制御部22は、メモリ32内の管理リスト36にクライアントである対象機器のMACアドレスを登録する。S68を終えると、マニュアル接続処理が終了する。
【0062】
上述したように、マニュアル方式(図4参照)では、ユーザは、SSIDとパスワードとを対象機器に入力する必要がある。従って、マニュアル方式のことを「手動無線設定モード」と呼ぶことができる。これに対し、PINコード方式及びPBC方式(図3参照)では、ユーザは、SSIDとパスワードとを対象機器に入力せずに済む。従って、PINコード方式とPBC方式とを合わせて「自動無線設定モード(もしくは簡単無線設定モード)」と呼ぶことができる。
【0063】
(G/O処理:図5)
続いて、図5を参照して、プリンタ10が、無線ネットワークのG/Oとして動作する場合に実行される処理の内容を説明する。S70では、制御部22は、ユーザによって操作部14において方式選択操作が実行されることを監視する。方式選択操作が実行されると(S70でYES)、S72に進む。なお、ユーザは、G/O状態のプリンタ10との間で無線接続が確立されるべき機器(以下では「対象機器」と呼ぶ)においても、方式選択操作を実行する。
【0064】
S72では、制御部22は、S70で選択された方式がPINコード方式又はPBC方式であるのか否かを判断する。S72でYESの場合(S70で選択された方式=PINコード方式又はPBC方式の場合)、制御部22は、S74に進む。この際、対象機器は、Scan処理においてプリンタ10を見つけることができ、プリンタ10を含む機器リストを対象機器の表示部に表示させる。
【0065】
例えば、S70で選択された方式がPINコード方式である場合、ユーザによって機器リストからプリンタ10が選択されると、対象機器とプリンタ10との間では、図3のS40と同様にPINコードの表示及び入力が実行され、その後、接続要求信号の受信及びOK信号の送信が実行される。一方において、例えば、S70で選択された方式がPBC方式である場合、PINコードの表示及び入力が実行されず、対象機器とプリンタ10との間では、接続要求信号の受信及びOK信号の送信が実行される。なお、対象機器から受信される接続要求信号は、対象機器のMACアドレス、カテゴリ等の各種情報を含む。これにより、制御部22は、対象機器の各種情報を取得する。なお、対象機器は、接続要求信号をプリンタ10に送信すると、クライアント状態に移行する。プリンタ10がG/O状態であるために、対象機器がG/O状態になることが不可能だからである。対象機器がクライアント状態に移行すると、S74に進む。
【0066】
S74では、制御部22は、図3のS46と同様に、G/O状態用のWPSネゴシエーションを実行する。即ち、S74〜S78の各処理は、図3のS46〜50と同様である。S78を終えると、S70に戻る。
【0067】
一方、S72でNOの場合(S70で選択された方式=マニュアル方式の場合)、S80に進む。S80では、表示制御部48は、SSID及びパスワードを表示部12に表示させる。S80で表示部12に表示されるパスワードは、プリンタ10がG/O状態に移行された際に生成されたパスワードである(図2のS22、図3のS44、図4のS60)。S82は、図4のS64と同様である。S82でYESの場合(対象機器から受信したSSID及びパスワードと、表示部12に表示されたSSID及びパスワードと、が一致する場合)、S76に進み、S82でNOの場合、S70に戻る。
【0068】
一方、S70でNOの場合(方式選択操作が実行されない場合)、S84では、制御部22は、無線チップセット17(図1参照)から、検出不能信号を取得することを監視する。管理リスト36に登録されているクライアント状態の機器(以下では「クライアント機器」と呼ぶ)は、G/O状態のプリンタ10に定期的に信号(以下「定期信号」と呼ぶ)を送信する。無線チップセット17は、クライアント機器が送信する定期信号を受信する。例えば、クライアント機器が携帯端末である場合には、クライアント機器は、プリンタ10との無線通信が可能な範囲の外に移動する可能性がある。また、例えば、通信障害等によってプリンタ10とクライアント機器との間で無線通信を実行不可能な状態になる可能性もある。また、例えば、クライアント機器の電源がOFFされる可能性もある。そのような場合には、無線チップセット17は、クライアント機器から送信される定期信号を受信することができない。無線チップセット17は、クライアント機器から定期信号を受信不可能な状態が所定時間に亘って継続する場合に、制御部22に検出不能信号を供給する。検出不能信号は、検出不能状態のクライアント機器のMACアドレスを含む。制御部22は、検出不能信号を取得すると(S84でYES)、S88に進む。
【0069】
一方、S84でNOの場合(無線チップセット17から、検出不能信号を取得しなかった場合)、S86では、制御部22は、クライアント機器から、非接続信号を取得することを監視する。例えば、ユーザは、クライアント機器を無線ネットワークから離脱させることを望む場合に、クライアント機器において所定の操作を実行することができる。この場合、クライアント機器は、無線ネットワークから離脱することを示す非接続信号を、G/O状態のプリンタ10に無線で送信する。非接続信号は、非接続信号の送信元のクライアント機器のMACアドレスを含む。制御部22は、非接続信号を取得すると(S86でYES)、S88に進む。なお、S86でNOの場合、S70に戻る。
【0070】
S88では、制御部22は、S84で取得した検出不能信号に含まれるMACアドレス、又は、S86で取得した非接続信号に含まれるMACアドレスを、管理リスト36から削除する。S88の処理の結果、クライアント機器が無線ネットワークから離脱し、当該クライアント機器が制御部22の管理対象から外れる。S88を終えると、S90に進む。
【0071】
S90では、制御部22は、クライアント機器の数がゼロであるのか否かを判断する。具体的には、制御部22は、管理リスト36に記憶されているMACアドレスの数がゼロであるのか否かを判断する。S90でNOの場合(管理リスト36に記憶されているMACアドレスの数が1以上である場合)、G/O処理はS70に戻る。一方、S90でYESの場合(管理リストに記憶されているMACアドレスの数がゼロである場合)、S92に進む。
【0072】
S92では、停止部46(図1参照)は、プリンタ10の状態をG/O状態からデバイス状態に移行させて、G/Oとしての動作を停止させる。G/Oとしての動作が停止することにより、プリンタ10は、他の機器との間で対象データ(印刷データ等)を無線で通信することができなくなる。また、プリンタ10は、複数個のクライアント機器の間の対象データの無線通信を中継することもできなくなる。また、S92では、停止部46は、無線ネットワークで利用されていた無線プロファイルを破棄する。即ち、停止部46は、プリンタ10がG/O状態に移行された際に生成されたパスワード(図2のS22、図3のS44、図4のS60)を破棄する。即ち、S92では、無線ネットワークが消滅する。S92を終えると、G/O処理が終了する。
【0073】
(ケースA:図6、図7)
続いて、図6、図7を参照して、上記の各処理(図2〜図5参照)が実行されるケースの一例(ケースA)を説明する。
【0074】
(処理A1)
ケースAでは、まず、ユーザが、デバイス状態のプリンタ10の操作部14を操作して、マニュアル方式を選択するための方式選択操作を実行する(図2のS16でNO)。さらに、ユーザは、デバイス状態のPC70でも、マニュアル方式を選択するための方式選択操作を実行する。この場合、まず、プリンタ10は、プリンタ10の状態を、デバイス状態からG/O状態に移行させる(図2のS26)。次いで、プリンタ10は、パスワード「xxxxxx」を生成する(図4のS60)。次いで、プリンタ10は、予め決められているSSID「aaaaaa」と、生成されたパスワード「xxxxxx」とを、表示部12に表示させる(図4のS62)。ユーザは、プリンタ10の表示部12に表示されたSSID及びパスワードを、PC70に入力する。PC70は、入力されたSSID及びパスワードをプリンタ10に無線で送信する。PC70から受信したSSID及びパスワードの認証が成功すると(図4のS64でYES)、プリンタ10は、認証方式及び暗号化方式の認証等、その他の認証を実行する。全ての認証が成功すると、プリンタ10とPC70との間に無線接続が確立される(図4のS66)。これにより、プリンタ10とPC70を含む無線ネットワークが構築される。
【0075】
(処理A2)
次いで、ユーザは、G/O状態のプリンタ10とデバイス状態のPC60のそれぞれに、PINコード方式を選択するための方式選択処理を実行する(図5のS70でYES、S72でYES)。この場合、PC60は、Scan処理においてプリンタ10を見つけることができ、プリンタ10を含む機器リストをPC60の表示部に表示させる。ユーザによって機器リストからプリンタ10が選択されると、PC60とプリンタ10とにおいて、PINコードの表示及び入力が実行される。その後、PC60は、クライアント状態に移行する。次いで、プリンタ10とPC60との間でWPSネゴシエーションが実行され(図5のS74)、プリンタ10からPC60に無線プロファイルが送信される。この無線プロファイルは、SSID「aaaaaa」と、生成済みのパスワード「xxxxxx」と、を含む。次いで、プリンタ10は、PC60との間で、無線プロファイルを用いて接続処理を実行する(図5のS76)。その結果、プリンタ10とPC60との間に無線接続が確立される(図5のS76、S78)。これにより、PC60は、プリンタ10とPC70を含む既存の無線ネットワークに新たに参加することができる。
【0076】
(処理A3)
その後、PC60及びPC70が、無線ネットワークから離脱する。なお、PC60は、状態をクライアント状態からデバイス状態に移行させる。この結果、プリンタ10の管理対象のクライアント機器の数(即ちクライアント数)がゼロとなる(図5のS90でYES)。この場合、プリンタ10は、プリンタ10の状態をG/O状態からデバイス状態に移行(復帰)させて、G/Oとしての動作を停止させる(図5のS92)。この際、プリンタ10は、無線ネットワークで利用されていた無線プロファイルを破棄する。これにより、無線ネットワークは消滅する。この構成によると、プリンタ10は、無線ネットワークを適切に消滅させることができる。
【0077】
(処理A4)
図7に示すように、その後、ユーザは、デバイス状態のプリンタ10とデバイス状態のPC70のそれぞれに、マニュアル方式を選択するための方式選択操作を再度実行する(図2のS16でNO)。この場合、処理A1と同様に、まず、プリンタ10は、プリンタ10の状態をデバイス状態からG/O状態に移行させる(図2のS26)次いで、プリンタ10は、前回生成されたパスワード「xxxxxx」とは異なるパスワード「yyyyyy」をランダムに生成する(図4のS60)。従って、仮に、第三者によって「xxxxxx」が不正に取得されたとしても、当該第三者は、「xxxxxx」に基づいて、「yyyyyy」を推測し難い。このために、無線ネットワークのセキュリティを向上させ得る。次いで、プリンタ10は、予め決められているSSID「aaaaaa」と、生成されたパスワード「yyyyyy」と、を表示部12に表示させる(図4のS62)。これ以降、プリンタ10とPC70との間で、上述の処理A1と同様の処理が実行される。その結果、プリンタ10とPC70との間に再度無線接続が確立される(図4のS66)。これにより、プリンタ10とPC70を含む新たな無線ネットワークが構築される。
【0078】
(処理A5)
次いで、ユーザは、G/O状態のプリンタ10とデバイス状態のPC60のそれぞれに、PINコード方式を選択するための方式選択処理を実行する(図5のS70でYES、S72でYES)。この場合も、プリンタ10とPC60との間で、上述の処理A2と同様の処理が実行される。ただし、図7に示すように、処理A5では、WPSネゴシエーションにおいてプリンタ10からPC60に送信される無線プロファイルが、パスワード「xxxxxx」ではなく、パスワード「yyyyyy」を含む。この点が上述の処理A2とは異なる。処理A5の結果、プリンタ10とPC60との間に無線接続が確立される(図5のS76、S78)。これにより、PC60は、プリンタ10とPC70を含む既存の無線ネットワークに新たに参加することができる。
【0079】
例えば、ケースAにおいて、図6の処理A1で無線ネットワークが構築される際に、第三者によって、表示部12に表示されたパスワード「xxxxxx」が盗み見られる可能性がある。本実施例では、プリンタ10は、図6の処理A1で構築された無線ネットワークが消滅した後に、図7の処理A4で無線ネットワークが構築されるべき場合に、プリンタ10は、異なるパスワード「yyyyyy」を生成する。即ち、プリンタ10は、新たな無線ネットワークが構築されるべき場合に、第三者が知り得ない新たなパスワードを生成する。従って、第三者によって所有される機器が、新たな無線ネットワークに不正に参加することを抑制することができる。即ち、新たな無線ネットワークのセキュリティを向上させることができ、この結果、新たな無線ネットワークを適切に構築することができる。
【0080】
(ケースB:図8)
続いて、図8を参照して、上記の各処理(図2〜図5参照)が実行されるケースの他の一例(ケースB)を説明する。図8では、プリンタ10とPC60との間で、PINコード方式によって無線接続が確立される状況を想定している。
【0081】
ケースBでは、まず、ユーザが、デバイス状態のプリンタ10及びデバイス状態のPC60のそれぞれに、PINコード方式を選択するための方式選択操作を実行する(図2のS16でYES)。この場合、まず、プリンタ10は、Scan、Listen、Searchの各処理を実行する(図3のS30〜S34)。この際、プリンタ10は、Search処理において、デバイス状態のPC60を見つけることができる。次いで、プリンタ10は、PC60を含む機器リストを表示部12に表示させる(図3のS36)。ユーザは、プリンタ10の操作部14を操作して、PC60を選択する機器選択操作を実行することができる。機器選択操作が実行されると、プリンタ10とPC60との間で、PINコードの表示及び入力が実行される。
【0082】
次いで、プリンタ10は、PC60との間でG/Oネゴシエーションを実行する(図3のS40)。例えば、上記のG/Oネゴシエーションの結果、プリンタ10がG/Oとして決定され、PC60がクライアントとして決定される場合(図3のS42でYES)には、プリンタ10は、プリンタ10の状態をG/O状態に移行させる。一方、PC60は、PC60の状態をクライアント状態に移行させる。次いで、プリンタ10は、パスワード「pppppp」を生成する(図3のS44)。次いで、プリンタ10とPC60との間でWPSネゴシエーションが実行され(図3のS46)、プリンタ10からPC60に無線プロファイルが送信される。この無線プロファイルは、予め決められているSSID「aaaaaa」と、パスワード「pppppp」と、を含む。次いで、プリンタ10は、PC60との間で、無線プロファイルを用いて接続処理を実行する(図3のS48)。その結果、プリンタ10とPC60との間に無線接続が確立される(図3のS48、S50)。これにより、プリンタ10とPC60とを含む無線ネットワークが構築される。
【0083】
また、上記のG/Oネゴシエーションの結果、プリンタ10がクライアントとして決定され、PC60がG/Oとして決定する場合(図3のS42でNO)には、プリンタ10は、プリンタ10の状態をクライアント状態に移行させる。一方、PC60は、PC60の状態をG/O状態に移行させる。この場合、プリンタ10(即ち生成部40)は、パスワードを生成しない。PC60は、パスワード「qqqqqq」を生成する。次いで、プリンタ10とPC60との間でWPSネゴシエーションが実行され(図3のS52)、PC60からプリンタ10に無線プロファイルが送信される。この無線プロファイルは、予め決められているSSID「bbbbbb」と、パスワード「qqqqqq」と、を含む。次いで、プリンタ10は、PC60との間で、無線プロファイルを用いて接続処理を実行する(図3のS54)。その結果、プリンタ10とPC60との間に無線接続が確立される(図3のS54)。これにより、プリンタ10とPC60を含む無線ネットワークが構築される。なお、ここでは、PC60がパスワード「qqqqqq」を新たに生成する例について説明しているが、PC60は、パスワードを生成せずに、予め決められたパスワードを用いてもよい。
【0084】
ケースBでは、プリンタ10は、G/O状態及びクライアント状態のうちのどちらで動作すると決定されたのかに応じて、適切に動作を実行することができ、その結果、無線ネットワークを適切に構築することができる。
【0085】
(対応関係)
プリンタ10が「無線通信装置」の一例である。G/O状態、クライアント状態が、それぞれ、「親局状態」、「子局状態」の一例である。ケースA(図6、図7)のPC60が「第1の外部装置」及び「第2の外部装置」の一例である。ケースAのPC70が「第3の外部装置」の一例である。ケースAの処理A1で構築される無線ネットワークと、処理A4で構築される無線ネットワークが、それぞれ、「第1の無線ネットワーク」、「第2の無線ネットワーク」の一例である。ケースAの処理A1で生成されるパスワード(xxxxxx)、処理A4で生成されるパスワード(yyyyyy)が、それぞれ、「第1の認証情報」、「第2の認証情報」の一例である。パスワード「xxxxx」を含む無線プロファイル、パスワード「yyyyyy」を含む無線プロファイルが、それぞれ、「第1の無線プロファイル」、「第2の無線プロファイル」の一例である。PIN/PBC方式、マニュアル方式が、それぞれ、「自動無線設定モード」、「手動無線設定モード」の一例である。ケースB(図8)のパスワード「qqqqqq」と、そのパスワード「qqqqqq」を含む無線プロファイルが、それぞれ、「特定の認証情報」、「特定の無線プロファイル」の一例である。
【0086】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【0087】
(変形例1)上記の実施例では、生成部42は、パスワードのみを生成し、SSIDを生成しない(図2のS22、図3のS44、図5のS60)。これに代えて、生成部42は、パスワードとともに、SSIDを生成してもよい。また、生成部42は、パスワードを生成せず、SSIDのみを生成してもよい。一般的に言うと、生成部は、第1及び第2の認証情報のみならず、他の情報(例えばSSID)を生成してもよい。
【0088】
(変形例2)上記の実施例では、生成部42は、ランダムに生成された文字列を、現在時刻に関係する所定の関数で変換することにより、パスワードを生成する。これに代えて、生成部42は、ランダムに生成された文字列をパスワードとしてもよい。また、生成部42は、ランダムではなく、所定の規則に従って、パスワードを生成してもよい。一般的に言うと、生成部は、第1の認証情報とは異なる第2の認証情報を生成すればよい。
【0089】
(変形例3)「無線通信装置」は、プリンタ10に限られず、無線通信可能な他の機器(例えば、携帯電話、PDA、PC、サーバ、FAX装置、コピー機、スキャナ、多機能機等)であってもよい。
【0090】
(変形例4)上記の実施例では、WFD非対応機器(PC70)は、WPSネゴシエーションを実行可能であるか不可能であるかを特定していない。WFD非対応機器は、WPSネゴシエーションを実行可能であってもよい(以下では「WPS対応機器」と呼ぶ)し、WPSネゴシエーションを実行不可能であってもよい(以下では「WPS非対応機器」と呼ぶ)。即ち、第1〜第3の外部装置は、WFD対応機器であってもよいし、WFD非対応機器のうちのWPS対応機器であってもよいし、WFD非対応機器のうちのWPS非対応機器であってもよい。
【0091】
(変形例5)図4のS62及び図5のS80において、表示制御部48は、SSID及びパスワードを、プリンタ10の表示部12ではなく、他の機器の表示部に表示させてもよい。即ち、一般的に言うと、「表示部」は、無線通信装置の内部の表示部であってもよいし、無線通信装置の外部の表示部であってもよい。
【0092】
(変形例6)「親局状態」は、WFDのG/O状態に限られず、無線ネットワークを構成する他のデバイスを管理(例えば、他のデバイスに関する情報のリストを管理すること、他のデバイス間の無線通信を中継すること等)する状態であればよい。また、「子局状態」は、WFDのクライアント状態に限られず、親局状態の機器によって管理される状態であればよい。
【0093】
(変形例7)上記の各実施例では、プリンタ10のCPU30がソフトウェアに従って処理を実行することによって、各部40〜48が実現される。これに代えて、各部40〜48のうちの少なくとも一部は、論理回路等のハードウェアによって実現されてもよい。
【0094】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【0095】
2:通信システム、10:プリンタ、60:PC、70:PC

【特許請求の範囲】
【請求項1】
無線ネットワークの親局として機能する親局状態と、前記無線ネットワークの子局として機能する子局状態と、を含む複数の状態のうちのいずれかの状態で選択的に動作可能な無線通信装置であって、
前記無線通信装置が前記複数の状態のうちのいずれの状態で動作するのかを決定する決定部と、
前記無線通信装置と第1の外部装置とを含む第1の無線ネットワークが構築されるべき場合において、前記無線通信装置が前記親局状態で動作することが決定される場合に、前記第1の無線ネットワークを構築するための第1の無線プロファイルに含まれる第1の認証情報を生成する生成部と、
前記第1の認証情報を含む前記第1の無線プロファイルを用いて、前記第1の外部装置と無線接続を確立するための通信を実行することによって、前記第1の無線ネットワークを構築する通信実行部と、
を備え、
前記第1の無線ネットワークが消滅した後に、前記無線通信装置と第2の外部装置とを含む第2の無線ネットワークが構築されるべき場合において、前記無線通信装置が前記親局状態で動作することが決定される場合に、
前記生成部は、さらに、前記第2の無線ネットワークを構築するための第2の無線プロファイルに含まれる第2の認証情報であって、前記第1の認証情報とは異なる前記第2の認証情報を生成し、
前記通信実行部は、さらに、前記第2の認証情報を含む前記第2の無線プロファイルを用いて、前記第2の外部装置と無線接続を確立するための通信を実行することによって、前記第2の無線ネットワークを構築する、無線通信装置。
【請求項2】
前記第2の無線ネットワークが構築されるべき場合において、前記無線通信装置が前記子局状態で動作することが決定される場合に、
前記生成部は、前記第2の認証情報を生成せず、
前記通信実行部は、前記第2の外部装置が有する特定の認証情報を含む特定の無線プロファイルを用いて、前記第2の外部装置と無線接続を確立するための通信を実行することによって、前記第2の無線ネットワークを構築する、請求項1に記載の無線通信装置。
【請求項3】
前記決定部は、
自動無線設定モードに従って前記第2の無線ネットワークが構築されるべき場合に、前記無線通信装置が前記親局状態及び前記子局状態のうちのどちらで動作するのかを決定し、
手動無線設定モードに従って前記第2の無線ネットワークが構築されるべき場合に、前記無線通信装置が前記親局状態で動作することを決定する、請求項1又は2に記載の無線通信装置。
【請求項4】
前記第1の無線ネットワークに含まれる前記子局状態で動作する外部装置の数がゼロになる場合に、前記無線通信装置が前記親局状態で動作するのを停止して、前記第1の無線ネットワークを消滅させる停止部をさらに備える、請求項1から3のいずれか一項に記載の無線通信装置。
【請求項5】
前記第1の認証情報が生成される場合に、前記第1の認証情報を表示部に表示させ、前記第2の認証情報が生成される場合に、前記第2の認証情報を前記表示部に表示させる表示制御部をさらに備える、請求項1から4のいずれか一項に記載の無線通信装置。
【請求項6】
前記通信実行部は、さらに、第3の外部装置が前記第2の無線ネットワークに新たに参加すべき場合に、前記第2の認証情報を含む前記第2の無線プロファイルを用いて、前記第3の外部装置と無線接続を確立するための通信を実行する、請求項1から5のいずれか一項に記載の無線通信装置。
【請求項7】
前記生成部は、第1の文字列をランダムに生成して、前記第1の文字列を用いて前記第1の認証情報を生成し、前記第1の文字列とは異なる第2の文字列をランダムに生成して、前記第2の文字列を用いて前記第2の認証情報を生成する、請求項1から6のいずれか一項に記載の無線通信装置。
【請求項8】
無線ネットワークの親局として機能する親局状態と、前記無線ネットワークの子局として機能する子局状態と、を含む複数の状態のうちのいずれかの状態で選択的に動作可能な無線通信装置のためのコンピュータプログラムであって、
前記無線通信装置に搭載されるコンピュータに、以下の各処理、即ち、
前記無線通信装置が前記複数の状態のうちのいずれの状態で動作するのかを決定する決定処理と、
前記無線通信装置と第1の外部装置とを含む第1の無線ネットワークが構築されるべき場合において、前記無線通信装置が前記親局状態で動作することが決定される場合に、前記第1の無線ネットワークを構築するための第1の無線プロファイルに含まれる第1の認証情報を生成する生成処理と、
前記第1の認証情報を含む前記第1の無線プロファイルを用いて、前記第1の外部装置と無線接続を確立するための通信を実行することによって、前記第1の無線ネットワークを構築する通信実行処理と、
を実行させ、
前記第1の無線ネットワークが消滅した後に、前記無線通信装置と第2の外部装置とを含む第2の無線ネットワークが構築されるべき場合において、前記無線通信装置が前記親局状態で動作することが決定される場合に、
前記生成処理では、さらに、前記第2の無線ネットワークを構築するための第2の無線プロファイルに含まれる第2の認証情報であって、前記第1の認証情報とは異なる前記第2の認証情報を生成し、
前記通信実行処理では、さらに、前記第2の認証情報を含む前記第2の無線プロファイルを用いて、前記第2の外部装置と無線接続を確立するための通信を実行することによって、前記第2の無線ネットワークを構築する、コンピュータプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2013−5095(P2013−5095A)
【公開日】平成25年1月7日(2013.1.7)
【国際特許分類】
【出願番号】特願2011−132285(P2011−132285)
【出願日】平成23年6月14日(2011.6.14)
【出願人】(000005267)ブラザー工業株式会社 (13,856)
【Fターム(参考)】