(57)【要約】【課題】  通信装置が無線ネットワークに親局として所属する事態を少なくし得る技術を提供する。【解決手段】  ＭＦＰ１０がＧ／Ｏ機器としてＷＦＤＮＷに所属している状態で、ＭＦＰ１０がＣＬ機器として所属していた元のＷＦＤＮＷのＧ／Ｏ機器であるＰＣ１２０が、ＭＦＰ１０に発見される場合に（Ｓ８０９）、ＭＦＰ１０は、ＭＦＰ１０がＧ／Ｏ機器として所属しているＷＦＤＮＷから離脱し、ＰＣ１２０が、ＷＦＤＮＷにＧ／Ｏ機器として所属しており、ＭＦＰ１０が、ＷＦＤＮＷにＣＬ機器として所属している状態を構築する。【選択図】図８
2015056865.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
第１のデバイスが、第１の無線ネットワークに親局として所属しており、前記通信装置が、前記第１の無線ネットワークに子局として所属している第１の所属状態で、前記第１のデバイスと無線通信を実行するための第１の通信情報を、メモリに記憶させる第１の記憶制御部と、
第２のデバイスを含む１個以上のデバイスが、第１の無線ネットワークに子局として所属している前記第１の所属状態で、前記第２のデバイスの識別情報を、前記メモリに記憶させる第２の記憶制御部と、
前記第１の無線ネットワークを利用して、前記第１のデバイスと無線通信可能であるのか否かを確認する確認部と、
前記第１の無線ネットワークを利用して、前記第１のデバイスと無線通信可能でないことが確認される場合に、前記通信装置及び前記第２のデバイスが第２の無線ネットワークに所属している第２の所属状態を構築する構築部であって、前記通信装置は、前記第２の無線ネットワークに親局として所属しており、前記第２のデバイスは、前記第２の無線ネットワークに子局として所属している、前記構築部と、
前記メモリ内の前記第１の通信情報を用いて、前記第１のデバイスを検索する検索部と、
前記検索の結果として、前記第１のデバイスが発見される場合に、前記通信装置を、前記第２の無線ネットワークから離脱させる離脱部と、を備え、
前記構築部は、前記通信装置が、前記第２の無線ネットワークから離脱される場合に、前記通信装置及び前記第１のデバイスが第３の無線ネットワークに所属している第３の所属状態を構築し、前記通信装置は、前記第３の無線ネットワークに子局として所属しており、前記第１のデバイスは、前記第３の無線ネットワークに親局として所属している、通信装置。
【請求項２】
前記構築部は、前記通信装置が、前記第２の無線ネットワークから離脱された後に、前記第３の所属状態を構築する、請求項１に記載の通信装置。
【請求項３】
前記通信装置は、さらに、前記検索の結果として、前記第１のデバイスが発見される場合に、前記第２の無線ネットワークを利用して、前記第２のデバイスに、前記第１のデバイスが発見されたことを通知する通知部を備える、請求項１又は２に記載の通信装置。
【請求項４】
前記通信装置は、さらに、
前記第１の無線ネットワークを利用して、前記第１のデバイスと無線通信可能でないことが確認される場合であって、前記第１の無線ネットワークに子局として所属している前記１個以上のデバイスのうち、前記第２のデバイスと第３のデバイスとが、第４の無線ネットワークに所属している第４の所属状態であって、前記第３のデバイスは、前記第４の無線ネットワークに親局として所属しており、前記第２のデバイスは、前記第４の無線ネットワークに子局として所属している、前記第４の所属状態である場合に、前記通信装置が、前記第４の無線ネットワークに子局として所属するために、前記第３のデバイスとの無線接続を確立する確立部と、
前記通信装置が、前記第４の無線ネットワークに子局として所属している状態で、前記第３のデバイスと無線通信を実行するための第２の通信情報を、前記メモリに記憶させる第３の記憶制御部と、を備え、
前記確認部は、さらに、前記第４の無線ネットワークを利用して、前記第３のデバイスと無線通信可能であるのか否かを確認し、
前記構築部は、前記第１の無線ネットワークを利用して、前記第１のデバイスと無線通信可能でないことが確認される場合であって、かつ、前記第４の無線ネットワークを利用して、前記第３のデバイスと無線通信可能でないことが確認される場合に、前記第２の所属状態を構築し、
前記検索部は、さらに、前記メモリ内の前記第２の通信情報を用いて、前記第３のデバイスを検索し、
前記離脱部は、前記検索の結果として、前記第１のデバイスと前記第３のデバイスとのいずれか一方のデバイスである対象デバイスが発見される場合に、前記通信装置を、前記第２の無線ネットワークから離脱させ、
前記構築部は、前記通信装置が、前記第２の無線ネットワークから離脱される場合に、前記通信装置及び前記対象デバイスが第５の無線ネットワークに所属している第５の所属状態を構築し、前記通信装置は、前記第５の無線ネットワークに子局として所属し、前記対象デバイスは、前記第５の無線ネットワークに親局として所属している、請求項１から３のいずれか一項に記載の通信装置。
【請求項５】
通信装置は、さらに、前記第１の無線ネットワークを利用して、前記第１のデバイスと無線通信可能でないことが確認される場合に、前記第１の無線ネットワークに所属している前記１個以上の子局のうち、前記通信装置が親局として無線ネットワークに所属している状態を構築すべきであるのか否かを決定する決定部を備え、
前記構築部は、前記通信装置が親局として無線ネットワークに所属している状態を構築すべきであると決定される場合に、前記第２の所属状態を構築する、請求項１から４のいずれか一項に記載の通信装置。
【請求項６】
前記第１の通信情報は、ＳＳＩＤを含む、請求項１から５のいずれか一項に記載の通信装置。
【請求項７】
通信装置のためのコンピュータプログラムであって、
前記通信装置に搭載されるコンピュータに、以下の各処理、即ち、
第１のデバイスが、第１の無線ネットワークに親局として所属しており、前記通信装置が、前記第１の無線ネットワークに子局として所属している第１の所属状態で、前記第１のデバイスと無線通信を実行するための第１の通信情報を、メモリに記憶させる第１の記憶制御処理と、
第２のデバイスを含む１個以上のデバイスが、第１の無線ネットワークに子局として所属している前記第１の所属状態で、前記第２のデバイスの識別情報を、前記メモリに記憶させる第２の記憶制御処理と、
前記第１の無線ネットワークを利用して、前記第１のデバイスと無線通信可能であるのか否かを確認する確認処理と、
前記第１の無線ネットワークを利用して、前記第１のデバイスと無線通信可能でないことが確認される場合に、前記通信装置及び前記第２のデバイスが第２の無線ネットワークに所属している第２の所属状態を構築する構築処理であって、前記通信装置は、前記第２の無線ネットワークに親局として所属しており、前記第２のデバイスは、前記第２の無線ネットワークに子局として所属している、前記構築処理と、
前記メモリ内の前記第１の通信情報を用いて、前記第１のデバイスを検索する検索処理と、
前記検索の結果として、前記第１のデバイスが発見される場合に、前記通信装置を、前記第２の無線ネットワークから離脱させる離脱処理と、を実行させ、
前記構築処理では、前記通信装置が、前記第２の無線ネットワークから離脱される場合に、前記通信装置及び前記第１のデバイスが第３の無線ネットワークに所属している第３の所属状態を構築し、前記通信装置は、前記第３の無線ネットワークに子局として所属しており、前記第１のデバイスは、前記第３の無線ネットワークに親局として所属している、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書では、無線ネットワークに所属するための通信装置を開示する。
【背景技術】
【０００２】
特許文献１に、無線ネットワーク接続装置を無線ネットワークに接続するための技術が開示されている。無線ネットワーク接続装置は、ネットワーク設定装置からネットワーク設定情報を受け取ると、ネットワーク設定情報に基づいて、目的の無線ネットワークに接続する動作を実行する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６―２５４０７７号公報
【０００４】
【非特許文献１】「Ｗｉ−Ｆｉ  Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ（Ｐ２Ｐ）  Ｔｅｃｈｎｉｃａｌ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｖｅｒｓｉｏｎ１．１」、Ｗｉ−Ｆｉ  Ａｌｌｉａｎｃｅ、２０１０年
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本明細書では、通信装置が無線ネットワークに親局として所属する事態を少なくし得る技術を提供する。
【課題を解決するための手段】
【０００６】
本明細書によって開示される通信装置は、第１の記憶制御部と、第２の記憶制御部と、確認部と、構築部と、検索部と、離脱部と、を備える。第１の記憶制御部は、第１のデバイスが、第１の無線ネットワークに親局として所属しており、通信装置が、第１の無線ネットワークに子局として所属している第１の所属状態で、第１のデバイスと無線通信を実行するための第１の通信情報を、メモリに記憶させる。第２の記憶制御部は、第２のデバイスを含む１個以上のデバイスが、第１の無線ネットワークに子局として所属している第１の所属状態で、第２のデバイスの識別情報を、メモリに記憶させる。確認部は、第１の無線ネットワークを利用して、第１のデバイスと無線通信可能であるのか否かを確認する。構築部は、第１の無線ネットワークを利用して、第１のデバイスと無線通信可能でないことが確認される場合に、通信装置及び第２のデバイスが第２の無線ネットワークに所属している第２の所属状態を構築する。第２の所属状態では、通信装置は、第２の無線ネットワークに親局として所属しており、第２のデバイスは、第２の無線ネットワークに子局として所属している。検索部は、メモリ内の第１の通信情報を用いて、第１のデバイスを検索する。離脱部は、検索の結果として、第１のデバイスが発見される場合に、通信装置を、第２の無線ネットワークから離脱させる。構築部は、通信装置が、第２の無線ネットワークから離脱される場合に、通信装置及び第１のデバイスが第３の無線ネットワークに所属している第３の所属状態を構築する。第３の所属状態では、通信装置は、第３の無線ネットワークに子局として所属しており、第１のデバイスは、第３の無線ネットワーに親局として所属している。
【０００７】
上記の構成では、通信装置は、通信装置が親局として無線ネットワークに所属している状態で、第１のデバイスを発見すると、第１のデバイスが、無線ネットワークに親局として所属しており、通信装置が子局として所属している状態を構築する。この構成によれば、通信装置と第１のデバイスとが無線通信不可能な状況から可能な状況に移行する場合に、元の無線ネットワークに親局として所属していた第１のデバイスを親局とする無線ネットワークを、新たに形成することができる。この結果、通信装置が、親局として無線ネットワークに所属している場合であっても、通信装置と第１のデバイスとが同一の無線ネットワークに所属する場合には、第１のデバイスが親局として所属しており、通信装置が子局として所属している状態を構築することができる。この構成によれば、通信装置が無線ネットワークに親局として所属する事態を少なくし得る。
【０００８】
上記の通信装置を実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も、新規で有用である。また、上記の通信装置と第１のデバイスと第２のデバイスとを備えるシステムも、新規で有用である。
【図面の簡単な説明】
【０００９】
【図１】通信システムの構成を示す。
【図２】ＷＦＤネットワークが形成される様子を表わすシーケンス図を示す。
【図３】Ｇ／Ｏ機器が離脱する様子を表わすシーケンス図を示す。
【図４】新たにＷＦＤネットワークが形成される様子を表わすシーケンス図を示す。
【図５】ＰＣが発見されるケースＡのシーケンス図を示す。
【図６】Ｇ／Ｏ機器が離脱するケースＢのシーケンス図を示す。
【図７】元のＧ／Ｏ機器であったＭＦＰが発見されるケースＢ−１のシーケンス図を示す。
【図８】元のＧ／Ｏ機器であったＰＣとＭＦＰとが発見されるケースＢ−２のシーケンス図を示す。
【図９】ネットワーク制御処理のフローチャートを示す。
【図１０】リスト管理処理のフローチャートを示す。
【発明を実施するための形態】
【００１０】
（通信システム２の構成）
図１に示されるように、通信システム２は、複数個のＭＦＰ（Multi-Function Peripheralの略）１０，５０と、携帯端末１１０と、パーソナルコンピュータ（以下では「ＰＣ（Personal Computerの略）」と呼ぶ）１２０と、を備える。
【００１１】
（各機器１０，５０，１１０，１２０が実行可能な無線通信の種類）
各機器１０，５０，１１０，１２０は、ＷＦＤ（Wi-Fi Direct（登録商標）の略）方式に従った無線通信（以下、「ＷＦＤ通信」と呼ぶ）と、を実行可能である。
【００１２】
（ＷＦＤ通信）
ＷＦＤ方式は、Ｗｉ−Ｆｉ  Ａｌｌｉａｎｃｅによって作成された規格書「Ｗｉ−Ｆｉ  Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ（Ｐ２Ｐ）  Ｔｅｃｈｎｉｃａｌ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｖｅｒｓｉｏｎ１．１」に記述されている無線通信方式である。ＷＦＤ方式は、例えば、ＩＥＥＥ（The Institute of Electrical and Electronics Engineers, Inc.の略）の８０２．１１の規格、及び、それに準ずる規格（例えば、８０２．１１ａ，１１ｂ，１１ｇ，１１ｎ等）に従って、無線通信を実行するための無線通信方式である。
【００１３】
各機器１０，５０，１１０，１２０は、ＷＦＤネットワーク（以下では「ＷＦＤＮＷ」と呼ぶ）に所属することによって、当該ＷＦＤＮＷに所属する他の機器と目的データのＷＦＤ通信を実行することができる。目的データは、ＯＳＩ参照モデルのネットワーク層の情報、及び、ネットワーク層よりも上位層（例えばアプリケーション層）の情報を含むデータであり、例えば、印刷データ、スキャンデータ等を含む。
【００１４】
各機器１０，５０，１１０，１２０のように、ＷＦＤ通信を実行可能な機器のことを「ＷＦＤ対応機器」と呼ぶ。上記のＷＦＤの規格書では、ＷＦＤ対応機器の状態として、Ｇｒｏｕｐ  Ｏｗｎｅｒ状態（以下では「Ｇ／Ｏ状態」と呼ぶ）、クライアント状態（以下では「ＣＬ状態」と呼ぶ）、及び、デバイス状態の３つの状態が定義されている。ＷＦＤ対応機器は、上記の３つの状態のうちの１つの状態で選択的に動作可能である。
【００１５】
デバイス状態の第１及び第２のＷＦＤ対応機器は、無線ネットワークを新たに形成すべき際に、通常、Ｇ／Ｏネゴシエーションと呼ばれる無線通信を実行する。Ｇ／Ｏネゴシエーションでは、第１のＷＦＤ対応機器（例えばＭＦＰ１０）は、第１のＷＦＤ対応機器のＧ／Ｏ優先度を示す情報を第２のＷＦＤ対応機器（例えばＰＣ１２０）に送信し、第２のＷＦＤ対応機器のＧ／Ｏ優先度を示す情報を第２のＷＦＤ対応機器から受信する。第１のＷＦＤ対応機器のＧ／Ｏ優先度は、第１のＷＦＤ対応機器がＧ／Ｏ状態になるべき程度を示す指標であり、第１のＷＦＤ対応機器において予め決められている。同様に、第２のＷＦＤ対応機器のＧ／Ｏ優先度は、第２のＷＦＤ対応機器がＧ／Ｏ状態になるべき程度を示す指標である。
【００１６】
第１のＷＦＤ対応機器は、２つのＧ／Ｏ優先度を比較して、優先度が高い方の機器がＧ／Ｏ状態になることを決定し、優先度が低い方の機器がＣＬ状態になることを決定する。同様に、第２のＷＦＤ対応機器は、２つの優先度を比較して、Ｇ／Ｏ状態及びＣＬ状態を決定する。
【００１７】
例えば、第１のＷＦＤ対応機器がＧ／Ｏ状態になり、第２のＷＦＤ対応機器がＣＬ状態になることを想定する。この場合、第１のＷＦＤ対応機器は、まず、ＷＦＤＮＷで利用されるべきＷＦＤ無線設定情報を準備する。ＷＦＤ無線設定情報は、認証方式、暗号化方式、パスワード、ＳＳＩＤ（Service Set Identifierの略）、ＢＳＳＩＤ（Basic Service Set Identifierの略）等を含む。ＷＦＤ無線設定情報に含まれる認証方式、暗号化方式、及び、パスワードは、ＷＦＤＮＷにおいて、認証及び暗号化のために利用される情報である。ＷＦＤ無線設定情報に含まれるＳＳＩＤは、ＷＦＤＮＷを識別するためのネットワーク識別子である。ＷＦＤ無線設定情報に含まれるＢＳＳＩＤは、Ｇ／Ｏ機器（即ち第１のＷＦＤ対応機器）のＭＡＣアドレスである。なお、以下では、ＷＦＤ無線設定情報のことを「ＷＦＤＷＳＩ（WFD Wireless Setting Informationの略）」と呼ぶ。
【００１８】
第１のＷＦＤ対応機器（即ちＧ／Ｏ機器）がＷＦＤＷＳＩを準備する手法は、以下のとおりである。即ち、第１のＷＦＤ対応機器は、予め決められている認証方式及び暗号化方式を特定する。第１のＷＦＤ対応機器は、予め決められているパスワードを特定するか、あるいは、パスワードを新たに生成することによって、パスワードを準備する。第１のＷＦＤ対応機器は、予め決められているＳＳＩＤを特定するか、あるいは、ＳＳＩＤを新たに生成することによって、ＳＳＩＤを準備する。第１のＷＦＤ対応機器は、第１のＷＦＤ対応機器に予め割り当てられているＭＡＣアドレスをＢＳＳＩＤとして特定する。
【００１９】
第１のＷＦＤ対応機器は、準備済みのＷＦＤＷＳＩを第２のＷＦＤ対応機器に供給する。これにより、第１及び第２のＷＦＤ対応機器は、ＷＦＤＷＳＩに従った認証通信（即ちAuthentication Request信号、Association Request信号等の通信）を実行する。第１のＷＦＤ対応機器（即ちＧ／Ｏ機器）が第２のＷＦＤ対応機器（即ちＣＬ機器）の認証を実行して、当該認証が成功すれば、第１及び第２のＷＦＤ対応機器の間に接続が確立される。第１のＷＦＤ対応機器は、第２のＷＦＤ対応機器のＭＡＣアドレスを、第１のＷＦＤ対応機器の管理リストに記述する。管理リストは、Ｇ／Ｏ機器がＣＬ機器を管理するために、ＣＬ機器のＭＡＣアドレスが記述されるリストである。
【００２０】
上記の各処理の結果、第１のＷＦＤ対応機器は、Ｇ／Ｏ機器としてＷＦＤＮＷに新たに所属し（即ち、ＷＦＤＮＷを新たに形成し）、第２のＷＦＤ対応機器は、ＣＬ機器としてＷＦＤＮＷに新たに所属する。
【００２１】
Ｇ／ＯネゴシエーションによってＷＦＤＮＷが新たに形成された段階では、１個のＧ／Ｏ機器及び１個のＣＬ機器のみがＷＦＤＮＷに所属している。ただし、Ｇ／Ｏ機器は、他の機器と接続を確立して、当該他の機器をＣＬ機器としてＷＦＤＮＷに新たに参加させることができる。この場合、２個以上のＣＬ機器がＷＦＤＮＷに所属している状態になる。即ち、ＷＦＤＮＷでは、１個のＧ／Ｏ機器と１個以上のＣＬ機器とが存在し得る。Ｇ／Ｏ機器は、１個以上のＣＬ機器を管理する。具体的に言うと、Ｇ／Ｏ機器は、１個以上のＣＬ機器のＭＡＣアドレスを、Ｇ／Ｏ機器のメモリ内の管理リストに記述する。また、Ｇ／Ｏ機器は、ＣＬ機器がＷＦＤＮＷから離脱すると、ＣＬ機器のＭＡＣアドレスを管理リストから消去する。
【００２２】
Ｇ／Ｏ機器は、他装置を介さずに、ＣＬ機器と目的データの無線通信を実行可能である。また、Ｇ／Ｏ機器は、一対のＣＬ機器の間の目的データの無線通信を中継可能である。換言すると、一対のＣＬ機器は、Ｇ／Ｏ機器を介して、目的データの無線通信を実行可能である。
【００２３】
上述したように、ＷＦＤＮＷでは、目的データの送信元のＷＦＤ対応機器と、目的データの送信先のＷＦＤ対応機器と、の間で、これらのＷＦＤ対応機器とは別体に構成されているアクセスポイント（以下では「ＡＰ（Access Pointの略）」と呼ぶ）を介さずに、目的データの無線通信を実行することができる。即ち、ＷＦＤ通信、ＷＦＤ方式は、それぞれ、ＡＰを介さない無線通信、ＡＰが利用されない無線通信方式であると言える。なお、ＡＰは、無線アクセスポイント、無線ＬＡＮルータ等と呼ばれる通常のＡＰであり、ＷＦＤ方式のＧ／Ｏ機器やいわゆるＳｏｆｔＡＰとは異なる。
【００２４】
また、Ｇ／Ｏ機器は、目的データの無線通信をデバイス機器（即ちデバイス状態のＷＦＤ対応機器）と実行不可能であるが、接続を確立するための接続用データの無線通信をデバイス機器と実行可能である。即ち、Ｇ／Ｏ機器は、接続用データの無線通信をデバイス機器と実行することによって、デバイス機器と接続を確立して、デバイス機器をＷＦＤＮＷに新たに参加させることができる。換言すると、デバイス機器は、接続用データの無線通信をＧ／Ｏ機器と実行することによって、Ｇ／Ｏ機器と接続を確立して、ＷＦＤＮＷに新たに参加することができる。この場合、デバイス機器は、デバイス状態からＣＬ状態に移行する（即ち、ＣＬ機器としてＷＦＤＮＷに参加する）。接続用データは、ＯＳＩ参照モデルのネットワーク層よりも下位層（例えば、物理層、データリンク層）の情報を含むデータ（即ち、ネットワーク層の情報を含まないデータ）であり、例えば、Probe Request信号、Probe Response信号、Association Request信号、Association Response信号、Authentication Request信号、4-Way Handshake信号、Invitation Request信号、Invitation Response信号等を含む。
【００２５】
また、Ｇ／Ｏ機器は、目的データの無線通信をＷＦＤ非対応機器と実行不可能であるが、接続用データの無線通信をＷＦＤ非対応機器と実行可能である。ＷＦＤ非対応機器は、ＷＦＤ方式に従って動作することが不可能な機器（即ち、ＷＦＤ方式の３つの状態のいずれかで選択的に動作することが不可能な機器）である。Ｇ／Ｏ機器は、接続用データの無線通信をＷＦＤ非対応機器と実行することによって、ＷＦＤ非対応機器と接続を確立して、ＷＦＤ非対応機器をＷＦＤＮＷに新たに参加させることができる。換言すると、ＷＦＤ非対応機器は、接続用データの無線通信をＧ／Ｏ機器と実行することによって、Ｇ／Ｏ機器と接続を確立して、ＷＦＤＮＷに新たに参加することができる。ＷＦＤ非対応機器は、３つの状態（即ち、Ｇ／Ｏ状態、ＣＬ状態、デバイス状態）のいずれかの状態で選択的に動作するものではないが、ＷＦＤＮＷに所属している間には、ＣＬ状態と同様の状態で動作する。
【００２６】
（ＭＦＰ１０の構成）
続いて、ＭＦＰ１０の構成について説明する。なお、ＭＦＰ５０は、ＭＦＰ１０と同様の構成を備える。ＭＦＰ１０は、印刷機能及びスキャン機能を含む多機能を実行可能な周辺機器である。ＭＦＰ１０は、操作部１２と、表示部１４と、印刷実行部１６と、スキャン実行部１８と、無線ＬＡＮインターフェース（以下ではインターフェースのことを「Ｉ／Ｆ」と記載する）２０と、制御部３０と、を備える。各部１２〜３０は、バス線（符号省略）に接続されている。
【００２７】
操作部１２は、複数のキーを備える。ユーザは、操作部１２を操作することによって、様々な指示をＭＦＰ１０に入力することができる。表示部１４は、様々な情報を表示するためのディスプレイである。印刷実行部１６は、インクジェット方式、レーザ方式等の印刷機構である。スキャン実行部１８は、ＣＣＤ、ＣＩＳ等のスキャン機構である。
【００２８】
無線ＬＡＮＩ／Ｆ２０は、ＷＦＤ通信を実行するためのインターフェースである。無線ＬＡＮＩ／Ｆ２０には、ＷＦＤ通信で利用されるＭＡＣアドレス（以下では「ＷＦＤ用ＭＡＣアドレス」と呼ぶ）が割り当てられる。
【００２９】
なお、ＭＦＰ５０にも、ＷＦＤ用ＭＡＣアドレスが割り当てられる。ＭＦＰ１０のＷＦＤ用ＭＡＣアドレスと、ＭＦＰ５０のＷＦＤ用ＭＡＣアドレスと、は異なる。
【００３０】
制御部３０は、ＣＰＵ３２とメモリ３４とを備える。メモリ３４は、ＲＯＭ、ＲＡＭ、ハードディスク等によって構成される。ＣＰＵ３２は、メモリ３４に格納されているプログラムに従って、様々な処理を実行する。なお、ＭＦＰ５０は、制御部３０と同様の制御部６０を備える。制御部６０は、ＣＰＵ３２と同様のＣＰＵ６２と、メモリ３４と同様のメモリ６４と、を備える。
【００３１】
メモリ３４は、さらに、ＷＦＤに関するＭＦＰ１０の現在の状態（即ち、Ｇ／Ｏ状態、ＣＬ状態、及び、デバイス状態のいずれかの状態）を示すＷＦＤ状態値を格納する。ＭＦＰ１０がＷＦＤＮＷに所属している場合（即ち、ＷＦＤ状態値がＧ／Ｏ状態又はＣＬ状態を示す場合）には、メモリ３４は、さらに、当該ＷＦＤＮＷで現在利用されているＷＦＤＷＳＩを格納する。
【００３２】
（携帯端末１１０の構成）
携帯端末１１０は、例えば、携帯電話（例えばスマートフォン）、ＰＤＡ、ノートＰＣ、タブレットＰＣ、携帯型音楽再生装置、携帯型動画再生装置等の可搬型の端末装置である。携帯端末１１０は、ＭＦＰ１０，５０と同様に、ＷＦＤ通信を実行可能である。携帯端末１１０に割り当てられているＷＦＤ用ＭＡＣアドレスは、ＭＦＰ１０，５０のＷＦＤ用ＭＡＣアドレスとは異なる。
【００３３】
（ＰＣ１２０の構成）
ＰＣ１２０は、ＯＳ（Operating Systemの略）プログラムを備えている。ＰＣ１２０は、ＯＳプログラムに従って、ＷＦＤ通信を実行可能である。ＰＣ１２０に割り当てられているＭＡＣアドレスは、ＭＦＰ１０，５０、携帯端末１１０のＷＦＤ用ＭＡＣアドレスとは異なる。
【００３４】
（ＷＦＤＮＷが形成される様子；図２）
次に、図２を参照して、ＷＦＤＮＷが形成される様子を説明する。図２の初期状態では、ＷＦＤＮＷが形成されておらず、各機器１０，５０，１１０，１２０は、デバイス状態である。
【００３５】
Ｓ２００では、ユーザは、ＭＦＰ５０をＷＦＤＮＷに所属させるためのＷＦＤ接続操作を、ＭＦＰ５０の操作部に加える。具体的に言うと、ユーザは、ＭＦＰ５０の表示部に表示される画面に含まれる複数個の項目の中から、「ＷＦＤ方式の無線接続」を示す項目を選択する。Ｓ２０２では、ユーザは、ＰＣ１２０をＷＦＤＮＷに所属させるためのＷＦＤ接続操作（即ち「ＷＦＤ方式の無線接続」を示す項目の選択操作）を、ＰＣ１２０に加える。
【００３６】
Ｓ２０４では、ＭＦＰ５０のＣＰＵ６２は、ＰＣ１２０とＧ／Ｏネゴシエーションを実行する。Ｓ２０６では、ＰＣ１２０は、Ｇ／Ｏネゴシエーションの結果として、ＰＣ１２０がＧ／Ｏ状態になることを決定する。また、Ｓ２０８では、ＣＰＵ６２は、Ｇ／Ｏネゴシエーションの結果として、ＭＦＰ５０がＣＬ状態になることを決定する。即ち、ＣＰＵ６２は、メモリ６４内のＷＦＤ状態値を、デバイス状態を表す値からＣＬ状態を表す値に変更する。
【００３７】
Ｓ２１０では、ＰＣ１２０は、ＷＦＤＮＷで利用されるべきＷＦＤＷＳＩ（以下では「ＷＳ１」と呼ぶ）を準備して、ＷＳ１をＭＦＰ５０に供給する。この結果、ＰＣ１２０とＭＦＰ５０との間に接続が確立される。これにより、ＰＣ１２０は、Ｇ／Ｏ機器としてＷＦＤＮＷ（以下では「第１のＷＦＤＮＷ」と呼ぶ）を新たに形成し、ＭＦＰ５０は、ＣＬ機器として第１のＷＦＤＮＷに参加する。ＣＰＵ６２は、ＷＳ１と、をメモリ６４に格納する。これにより、ＰＣ１２０が、第１のＷＦＤＮＷにＧ／Ｏ機器として所属し、ＭＦＰ５０が、第１のＷＦＤＮＷにＣＬ機器として所属する状態が構築される。
【００３８】
ＭＦＰ５０は、Ｇ／Ｏネゴシエーションを実行してデバイス状態からＣＬ状態に移行するので、第１のＷＦＤＮＷに最も先に所属するＣＬ機器である。従って、Ｓ２１２では、ＣＰＵ６２は、参加リスト及び優先リストを生成する。参加リストは、第１のＷＦＤＮＷに所属している各ＣＬ機器のＭＡＣアドレスが記述されるリストである。参加リストでは、ＷＦＤＮＷに早く所属したＣＬ機器（即ち、ＷＦＤ接続操作が先に実行されたＣＬ機器）のＭＡＣアドレスが上位に記述される。例えば、Ｇ／Ｏ機器（例えばＰＣ１２０）と、第１のＣＬ機器（例えばＭＦＰ１０）と、第２のＣＬ機器（例えばＭＦＰ１１０）と、が所属しているＷＦＤＮＷが形成されている状況を想定する。最初に、第１のＣＬ機器がＷＦＤＮＷに所属し、次いで、第２のＣＬ機器がＷＦＤＮＷに所属した場合には、参加リストの最上位には、第１のＣＬ機器のＭＡＣアドレスが記述され、参加リストの上位２番目には、第２のＣＬ機器のＭＡＣアドレスが記述される。なお、Ｇ／Ｏ機器のＭＡＣアドレスは、参加リストに記述されない。上述したように、Ｇ／Ｏ機器は、各ＣＬ機器のＭＡＣアドレスが記述される管理リストを所持している。参加リストは、各ＣＬ機器によって所持されるリストである点において、管理リストとは異なる。
【００３９】
また、後で詳述するが、優先リストは、優先的にＧ／Ｏ機器としてＷＦＤＮＷに所属すべき機器の順位を示すリストである。優先リストには、各機器のＭＡＣアドレスと、当該機器がＧ／Ｏ機器としてＷＦＤＮＷに所属すべき順位と、が記述される。
【００４０】
ＣＰＵ６２は、ＭＦＰ５０のＷＦＤ用ＭＡＣアドレスが最上位に記述されている参加リストを生成する。また、ＭＦＰ５０は、ＰＣ１２０が最上位に記述されている優先リストを生成する。図２以降の各図（図２〜図８）では、符号が付されていない四角のボックスで参加リスト及び優先リストを表現している。参加リストでは、ＭＡＣアドレスが、ＷＦＤＮＷに参加した順番に記載されている。優先リストでは、Ｇ／Ｏ機器として所属すべき優先度を表す順位が、各機器のＭＡＣアドレスに対応付けられた丸の中の数字で表現されている。各リスト内の「ＭＦＰ１０」、「ＭＦＰ５０」、「携帯端末１１０」、「ＰＣ１２０」は、それぞれ、ＭＦＰ１０のＭＡＣアドレス、ＭＦＰ５０のＭＡＣアドレス、携帯端末１１０のＭＡＣアドレス、ＰＣ１２０のＭＡＣアドレスが、各リストに記述されていることを意味する。
【００４１】
次いで、Ｓ２２０では、ユーザは、ＭＦＰ１０を第１のＷＦＤＮＷに所属させるためのＷＦＤ接続操作を、ＭＦＰ１０に加える。この場合、ＭＦＰ１０のＣＰＵ３２は、Ｇ／Ｏ機器であるＰＣ１２０に接続要求を送信する。また、Ｓ２２１では、ユーザは、Ｇ／Ｏ機器であるＰＣ１２０にも、ＷＦＤ接続操作を加える。これにより、Ｓ２２２では、ＰＣ１２０は、ＭＦＰ１０から接続要求を受信すると、第１のＷＦＤＮＷで現在利用されているＷＳ１を、ＭＦＰ１０に供給する。Ｓ２２３では、ＣＰＵ３２は、ＷＳ１をメモリ３４に格納する。この結果、ＰＣ１２０とＭＦＰ１０との間に接続が確立される。これにより、Ｓ２２４では、ＭＦＰ１０は、デバイス状態からＣＬ状態に移行して、ＣＬ機器として第１のＷＦＤＮＷに新たに参加する。即ち、ＣＰＵ３２は、メモリ３４内のＷＦＤ状態値を、デバイス状態を表す値からＣＬ状態を表す値に変更する。
【００４２】
次いで、Ｓ２２５では、ＣＰＵ３２は、ＭＦＰ１０のＭＡＣアドレスを含む参加通知をブロードキャストする。参加通知は、ＭＦＰ１０がＷＦＤＮＷに新たに参加したことを、ＷＦＤＮＷの他のＣＬ機器に示すための通知である。
【００４３】
ＭＦＰ５０のＣＰＵ６２は、ＰＣ１２０を介して、ＭＦＰ１０から参加通知を受信する。ＣＰＵ６２は、ＭＦＰ５０が最先のＣＬ機器（即ち参加リストの最上位に記述されているＣＬ機器）であるので、Ｓ２２６において、ＭＦＰ１０のＭＡＣアドレスを参加リストの最下位に追加する。なお、ＣＰＵ６２は、ＭＦＰ１０から参加通知を受信しても、優先リストを変更しない。次いで、Ｓ２２７では、ＣＰＵ６２は、ＭＦＰ１０のＭＡＣアドレスを送信先に指定して、参加リスト及び優先リストを、ＰＣ１２０に送信する。なお、変形例では、ＣＰＵ６２は、参加リスト及び優先リストを、第１のＷＦＤＮＷにブロードキャストしてもよい。
【００４４】
ＭＦＰ１０のＣＰＵ３２は、ＰＣ１２０を介して、ＭＦＰ５０から参加リスト及び優先リストを受信する。そして、Ｓ２２８では、ＣＰＵ３２は、参加リスト及び優先リストをメモリ３４に格納する。さらに、Ｓ２２８では、ＣＰＵ３２は、受信された参加リスト及び優先リストを用いて、優先リストを更新する。具体的には、ＣＰＵ３２は、メモリ３４内の参加リストの中に、ＭＦＰ１０のＭＡＣアドレスよりも上位に、他の機器のＭＡＣアドレスが記述されているか否かを確認する。ＣＰＵ３２は、ＭＦＰ１０のＭＡＣアドレスよりも上位に、ＭＦＰ５０のＭＡＣアドレスが記述されていることを確認すると、ＭＦＰ５０のＭＡＣアドレスを、メモリ３４内の優先リストに記述する。これにより、優先リストが更新される。即ち、優先リストでは、ＷＦＤＮＷに先に所属している機器の順に、優先的にＧ／Ｏ機器としてＷＦＤＮＷに所属すべき機器の順位が与えられている。なお、変形例では、優先リストの順位は、例えば、機器の種類（ＰＣ、ＭＦＰ、携帯端末）で決定されてもよい。この場合、Ｓ２２６において、ＣＰＵ６２は、ＭＦＰ５０が管理する優先リストを更新してもよい。
【００４５】
次いで、Ｓ２３０では、ユーザは、携帯端末１１０を第１のＷＦＤＮＷに所属させるためのＷＦＤ接続操作を、携帯端末１１０に加える。携帯端末１１０は、Ｇ／Ｏ機器であるＰＣ１２０に接続要求を送信する。Ｓ２３１では、ユーザは、Ｇ／Ｏ機器であるＰＣ１２０にも、ＷＦＤ接続操作を加える。これにより、Ｓ２３２では、ＰＣ１２０は、携帯端末１１０から接続要求を受信すると、第１のＷＦＤＮＷで現在利用されているＷＳ１を、携帯端末１１０に供給する。この結果、ＰＣ１２０と携帯端末１１０との間に接続が確立される。これにより、Ｓ２３４では、携帯端末１１０は、ＣＬ状態に移行して、ＣＬ機器として第１のＷＦＤＮＷに新たに参加する。この結果、ＰＣ１２０が、第１のＷＦＤＮＷにＧ／Ｏ機器として所属し、ＭＦＰ５０，１０及び携帯端末１１０が、第１のＷＦＤＮＷにＣＬ機器として所属する状態が構築される。Ｓ２３６では、携帯端末１１０は、携帯端末１１０のＭＡＣアドレスを含む参加通知をブロードキャストする。
【００４６】
ＭＦＰ１０のＣＰＵ３２は、ＰＣ１２０を介して、携帯端末１１０から参加通知を受信する。ＣＰＵ３２は、ＭＦＰ１０が最先のＣＬ機器ではないので、参加通知を受信しても、参加リストを更新しない。
【００４７】
一方、ＭＦＰ５０のＣＰＵ６２は、ＰＣ１２０を介して、携帯端末１１０から参加通知を受信する。Ｓ２３８では、ＣＰＵ６２は、ＭＦＰ５０が最先のＣＬ機器であるので、携帯端末１１０のＭＡＣアドレスを参加リストの最下位に記述して、更新済みの参加リストを生成する。次いで、Ｓ２４０では、ＣＰＵ６２は、更新済みの参加リストの中で、携帯端末１１０のＭＡＣアドレスよりも上位に記述されているＭＡＣアドレス（即ちＭＦＰ５０，１０のＭＡＣアドレス）のうち、ＭＦＰ５０のＭＡＣアドレス以外のＭＡＣアドレス（即ちＭＦＰ１０のＭＡＣアドレス）に、更新済みの参加リストを送信する。Ｓ２４２では、ＭＦＰ１０のＣＰＵ３２は、ＰＣ１２０を介して、ＭＦＰ５０から参加リストを受信すると、メモリ３４内の参加リストを更新する。
【００４８】
また、Ｓ２４４では、ＭＦＰ５０のＣＰＵ６２は、更新済みの参加リストのうち、最下位に記述されているＭＡＣアドレス（即ち、携帯端末１１０のＭＡＣアドレス）を送信先に指定して、参加リスト及び優先リストを、ＰＣ１２０に送信する。Ｓ２４６において、携帯端末１１０は、ＰＣ１２０を介して、ＭＦＰ５０から参加リスト及び優先リストを受信すると、参加リスト及び優先リストを携帯端末１１０のメモリに格納する。また、Ｓ２４６では、携帯端末１１０は、携帯端末１１０のメモリに格納された参加リスト及び優先リストを用いて、優先リストを更新する。優先リストの更新方法は、Ｓ２２８と同様である。なお、変形例では、ＣＰＵ６２は、参加リスト及び優先リストを、第１のＷＦＤＮＷにブロードキャストしてもよい。この場合、ＭＦＰ１０のＣＰＵ３２は、受信された参加リストとメモリ３４内の参加リストとが異なっている場合には、メモリ３４内の参加リストを更新すると共に、受信された優先リストを破棄してもよい。一方、ＣＰＵ３２は、受信された参加リストとメモリ３４内の参加リストとが同じ場合には、受信された参加リスト及び優先リストを破棄してもよい。
【００４９】
上述したように、図２の各処理が実行されると、ＰＣ１２０がＧ／Ｏ機器であり、かつ、ＭＦＰ１０，５０及び携帯端末１１０がＣＬ機器である第１のＷＦＤＮＷが形成される。これにより、例えば、携帯端末１１０は、ＭＦＰ１０に印刷を実行させるために、第１のＷＦＤＮＷを利用して、ＰＣ１２０（即ちＧ／Ｏ機器）を介して、印刷データをＭＦＰ１０に送信することができる。この場合、ＭＦＰ１０のＣＰＵ３２は、第１のＷＦＤＮＷを利用して、ＰＣ１２０（即ちＧ／Ｏ機器）を介して、携帯端末１１０から印刷データを受信する。そして、ＣＰＵ３２は、印刷データを印刷実行部１６に供給して、印刷実行部１６に印刷を実行させる。
【００５０】
（Ｇ／Ｏ機器が第１のＷＦＤＮＷから離脱するケース；図３，４）
続いて、図３，４を参照して、第１のＷＦＤＮＷから離脱する場合の各デバイス１０，５０，１１０，１２０の処理の内容を説明する。図３の初期状態は、図２の最終状態と同一の状態、即ち、ＰＣ１２０がＧ／Ｏ機器であり、かつ、ＭＦＰ１０，５０及び携帯端末１１０がＣＬ機器である第１のＷＦＤＮＷが形成されている状態である。
【００５１】
図示省略しているが、参加リストの最上位に記述されているＭＡＣアドレスのＭＦＰ５０では、ＣＰＵ６２は、ＭＦＰ５０とは異なる各ＣＬ機器の存在確認を実行する。ＣＰＵ６２は、存在が確認できないＣＬ機器がある場合、当該ＣＬ機器のＭＡＣアドレスを、参加リストから消去する。
【００５２】
また、各ＣＬ機器は、ＷＦＤＮＷに所属している間、定期的に、Ｇ／Ｏ機器の存在確認を実行している。Ｓ３００では、ＭＦＰ１０のＣＰＵ３２は、ＰＣ１２０の存在確認を実行している。具体的には、ＣＰＵ３２は、メモリ３４内のＷＳ１に含まれているＰＣ１２０のＢＳＳＩＤ（即ちＭＡＣアドレス）を送信先に指定して、第１のＷＦＤＮＷを利用して、Ｇ／Ｏ存在確認信号をＰＣ１２０に送信する。Ｓ３００のＧ／Ｏ存在確認信号が送信される段階では、ＰＣ１２０は、第１のＷＦＤＮＷから離脱していない。従って、Ｓ３０２では、ＰＣ１２０は、ＭＦＰ１０からＧ／Ｏ存在確認信号を受信すると、第１のＷＦＤＮＷを利用して、ＰＣ１２０のＭＡＣアドレスを含む応答信号をＭＦＰ１０に送信する。
【００５３】
Ｓ３０４では、ＭＦＰ１０のＣＰＵ３２は、ＰＣ１２０から応答信号を受信するので、ＰＣ１２０が第１のＷＦＤＮＷに所属していること、即ち、ＰＣ１２０が無線通信可能であることを確認する。図３では示していないが、ＭＦＰ５０と携帯端末１１０のそれぞれも、ＭＦＰ１０と同様に、第１のＷＦＤＮＷを利用して、ＰＣ１２０の存在確認を繰り返し実行する。
【００５４】
例えば、ＰＣ１２０がＭＦＰ５０等と無線通信を実行することができない場所まで移動された結果として、Ｓ３１０において、ＰＣ１２０は、第１のＷＦＤＮＷから離脱する。その後、Ｓ３１２では、ＭＦＰ１０のＣＰＵ３２は、第１のＷＦＤＮＷを利用して、Ｇ／Ｏ存在確認信号をＰＣ１２０に送信しようとする。しかしながら、ＰＣ１２０は、Ｇ／Ｏ存在確認信号を受信しないので、応答信号を送信しない。
【００５５】
なお、図３では示していないが、ＭＦＰ５０と携帯端末１１０のそれぞれも、第１のＷＦＤＮＷを利用して、Ｇ／Ｏ存在確認信号をＰＣ１２０に送信するが、応答信号を受信しない。この場合、Ｓ３１６では、ＭＦＰ１０のＣＰＵ３２は、ＰＣ１２０から応答信号を受信しないので、ＰＣ１２０が第１のＷＦＤＮＷに所属していないこと（即ちＰＣ１２０が第１のＷＦＤＮＷから離脱したこと）、即ち、ＰＣ１２０と無線通信を実行することができないことを確認する。そして、ＣＰＵ３２は、ＭＦＰ１０の状態をＣＬ状態からデバイス状態に移行させる。即ち、ＣＰＵ３２は、メモリ３４内のＷＦＤ状態値を、ＣＬ状態を示す値から、デバイス状態を示す値に変更する。なお、メモリ３４内のＷＦＤＷＳＩ、参加リスト及び優先リストは、メモリ３４から削除されずに、メモリ３４内に維持される。
【００５６】
同様に、Ｓ３１８では、ＭＦＰ５０のＣＰＵ６２は、ＰＣ１２０が第１のＷＦＤＮＷから離脱したことを確認して、ＭＦＰ５０の状態をＣＬ状態からデバイス状態に移行させる。また、Ｓ３２０では、携帯端末１１０は、ＰＣ１２０が第１のＷＦＤＮＷから離脱したことを確認して、ＭＦＰ１１０の状態をＣＬ状態からデバイス状態に移行させる。各機器１０，５０，１１０は、デバイス状態で動作しているために、目的データの無線通信を実行することができない。例えば、携帯端末１１０は、ＭＦＰ１０（又はＭＦＰ５０）に印刷データを送信することができない。
【００５７】
上述したように、ＭＦＰ１０，５０のようなＣＬ機器は、第１のＷＦＤＮＷを利用して、ＰＣ１２０（即ちＧ／Ｏ機器）にＧ／Ｏ存在確認信号を送信して、ＰＣ１２０から応答信号を受信するのか否かを判断することによって、ＰＣ１２０（即ちＧ／Ｏ機器）が第１のＷＦＤＮＷから離脱したのか否かを適切に確認することができる。以下では、ＰＣ１２０（即ちＧ／Ｏ機器）が第１のＷＦＤＮＷから離脱する場合に、ＣＬ機器がどのような処理を実行するのかについて説明する。
【００５８】
図４の初期状態は、図３の最終状態、即ち、ＰＣ１２０が、第１のＷＦＤＮＷから離脱した状態であり、ＭＦＰ１０，５０及び携帯端末１１０は、デバイス状態である。なお、ＰＣ１２０は、Ｇ／Ｏ状態で維持されている。Ｓ４００では、ＭＦＰ５０のＣＰＵ６２は、メモリ６４内の参加リストの最上位にＭＦＰ５０のＭＡＣアドレスが記述されているのか否かを判断する。即ち、ＣＰＵ６２は、ＭＦＰ５０が第１のＷＦＤＮＷの最先のＣＬ機器であったのか否かを判断する。Ｓ４００では、ＣＰＵ６２は、ＭＦＰ１０が最先のＣＬ機器であったと判断する。
【００５９】
一方において、Ｓ４０２では、ＭＦＰ１０のＣＰＵ３２は、ＭＦＰ１０が第１のＷＦＤＮＷの最先のＣＬ機器でなかったと判断する。なお、Ｓ４０３において、携帯端末１１０も、携帯端末１１０が第１のＷＦＤＮＷの最先のＣＬ機器でなかったと判断する。この場合、ＭＦＰ１０及び携帯端末１１０は、第１のＷＦＤＮＷの最先のＣＬ機器（即ちＭＦＰ５０）から、Invitation Request信号（以下では「Ｉｒｅｑ信号」と呼ぶ）を受信するまで待機する。Ｉｒｅｑ信号は、Ｇ／Ｏ機器によって送信される信号である。Ｉｒｅｑ信号は、Ｉｒｅｑ信号の送信先機器（例えばＭＦＰ１０）が、Ｉｒｅｑ信号の送信元機器（即ちＧ／Ｏ機器）が所属している既存のＷＦＤＮＷに、ＣＬ機器として新たに所属するように要求するための信号である。
【００６０】
Ｓ４０４では、ＭＦＰ５０のＣＰＵ６２は、ＭＦＰ５０の状態をデバイス状態からＧ／Ｏ状態に移行させる。上述したように、ＷＦＤＮＷが新たに形成されるべき際には、通常、Ｇ／Ｏネゴシエーションが実行されて、Ｇ／Ｏ機器及びクライアント機器が決定される。しかしながら、Ｓ４０４では、ＣＰＵ６２は、Ｇ／Ｏネゴシエーションを実行せずに、ＭＦＰ５０の状態をＣＬ状態からＧ／Ｏ状態に移行させる。Ｓ４０４が実行されると、ＭＦＰ５０がＧ／Ｏ機器になるが、クライアント機器が存在しない。換言すれば、Ｓ４０４が実行されると、Ｇ／Ｏ機器（即ちＭＦＰ５０）のみが所属しているＷＦＤＮＷ（以下では「第２のＷＦＤＮＷ」と呼ぶ）が新たに形成されると言える。この構成によれば、Ｇ／Ｏ機器であるＰＣ１２０と、第１のＷＦＤＮＷを利用して、無線通信を実行することができない場合に、新たなＷＦＤＮＷにＧ／Ｏとして所属すべきであるのか否かを適切に決定することができる。
【００６１】
具体的には、Ｓ４０４では、ＣＰＵ６２は、メモリ６４内のＷＦＤ状態値を、デバイス状態を示す値から、Ｇ／Ｏ状態を示す値に変更する。ＣＰＵ６２は、さらに、第２のＷＦＤＮＷで利用されるべきＷＦＤＷＳＩ（以下では「ＷＳ２」と呼ぶ）を準備して、ＷＳ２をメモリ６４に格納する。
【００６２】
ＣＰＵ６２は、Ｓ４０４を実行するので、Ｇ／Ｏ機器として動作する。このために、ＣＰＵ６２は、後述のＳ４０６，Ｓ４２０において、Ｇ／Ｏ機器のみが送信可能なＩｒｅｑ信号を送信することができ、この結果、ＭＦＰ１０及び携帯端末１１０を第２のＷＦＤＮＷに参加させることができる。
【００６３】
Ｓ４０６では、ＣＰＵ６２は、メモリ６４内の参加リストの上位２番目に記述されているＭＦＰ１０のＭＡＣアドレスを抽出する。そして、ＣＰＵ６２は、ＭＦＰ１０のＭＡＣアドレスを送信先に指定して、Ｉｒｅｑ信号を送信する。Ｉｒｅｑ信号は、参加リストに記述されている最上位の機器がＧ／Ｏ機器になった後に、当該Ｇ／Ｏ機器から、参加リストに記述されている上位２番目以下の各機器に送信される信号である。この際に、最上位の機器（即ちＧ／Ｏ機器）は、最初に、参加リストの上位２番目の機器にＩｒｅｑ信号を送信し、次いで、上位３番目以下の各機器にＩｒｅｑ信号を順に送信する。これにより、ＭＦＰ５０は、ＭＦＰ１０及び携帯端末１１０が第２のＷＦＤＮＷにＣＬ機器として新たに所属するように要求することができる。
【００６４】
Ｓ４０８では、ＭＦＰ１０のＣＰＵ３２は、ＭＦＰ５０からＩｒｅｑ信号を受信すると、Invitation Response信号（以下では「Ｉｒｅｓ信号」と呼ぶ）をＭＦＰ５０に送信する。ＭＦＰ５０のＣＰＵ６２は、ＭＦＰ１０からＩｒｅｓ信号を受信すると、Ｓ４１０において、ＷＳ２をＭＦＰ１０に供給する。この結果、ＭＦＰ５０とＭＦＰ１０との間に接続が確立される。Ｓ４１１では、ＣＰＵ３２は、ＷＳ２をメモリに格納する。Ｓ４１２では、ＣＰＵ３２は、ＭＦＰ１０の状態をデバイス状態からＣＬ状態に移行させる。これにより、ＭＦＰ１０は、ＣＬ機器として第２のＷＦＤＮＷに新たに参加する。言い換えると、ＭＦＰ５０が、第２のＷＦＤＮＷにＧ／Ｏ機器として所属し、ＭＦＰ１０が、第２のＷＦＤＮＷにＣＬ機器として所属する状態が構築される。
【００６５】
Ｓ４１４では、ＣＰＵ３２は、ＭＦＰ１０がデバイス状態からＣＬ状態に移行し、さらに、参加リストの上位２番目である状態でＩｒｅｑ信号を受信してＣＬ状態に移行したと判断する。Ｓ４１６では、ＣＰＵ３２は、ＭＦＰ１０のＭＡＣアドレスが最上位に記述されている新たな参加リストを生成して、ＭＦＰ１０のＭＡＣアドレスが上位２番目以降に記述されている古い参加リストに代えて新たな参加リストをメモリ３４に格納する。
【００６６】
次いで、ＭＦＰ５０のＣＰＵ６２は、ＭＦＰ１０の場合と同様に、携帯端末１１０を第２のＷＦＤＮＷに参加させる。即ち、Ｓ４２０では、ＣＰＵ６２は、ＭＦＰ５０のメモリ内の参加リストの上位３番目（即ち最下位）に記述されている携帯端末１１０のＭＡＣアドレスを送信先に指定して、Ｉｒｅｑ信号を送信する。Ｓ４２２では、ＣＰＵ６２は、携帯端末１１０からＩｒｅｓ信号を受信する。Ｓ４２４では、ＣＰＵ６２は、ＷＳ２を携帯端末１１０に供給する。この結果、ＭＦＰ５０と携帯端末１１０との間に接続が確立される。
【００６７】
Ｓ４２６では、携帯端末１１０は、携帯端末１１０の状態をデバイス状態からＣＬ状態に移行させる。これにより、携帯端末１１０は、ＣＬ機器として第２のＷＦＤＮＷに新たに参加する。言い換えると、ＭＦＰ５０が、第２のＷＦＤＮＷにＧ／Ｏ機器として所属し、ＭＦＰ１０及び携帯端末１１０が、第２のＷＦＤＮＷにＣＬ機器として所属する状態が構築される。
【００６８】
Ｓ４２８では、携帯端末１１０は、デバイス状態からＣＬ状態に移行し、さらに、参加リストの上位３番目である状態でＩｒｅｑ信号を受信してＣＬ状態に移行した。携帯端末１１０は、携帯端末１１０のＭＡＣアドレスを含む参加通知を第２のＷＦＤＮＷにブロードキャストする。ＭＦＰ１０のＣＰＵ３２は、ＭＦＰ５０（即ちＧ／Ｏ機器）を介して、携帯端末１１０から参加通知を受信する。この場合、Ｓ４３０において、ＣＰＵ３２は、ＭＦＰ１０が最先のＣＬ機器（即ち参加リストの最上位に記述されているＣＬ機器）であるので、携帯端末１１０のＭＡＣアドレスを参加リストの最下位に追加して、更新済みの参加リストを生成する。次いで、Ｓ４３２では、ＣＰＵ３２は、更新済みの参加リストを、携帯端末１１０のＭＡＣアドレスを送信先として、ＭＦＰ５０に送信する。
【００６９】
Ｓ４３４において、携帯端末１１０は、ＭＦＰ１０から参加リストを受信すると、古い参加リストに代えて受信済みの参加リストを携帯端末１１０のメモリ（図示省略）に格納する。
【００７０】
（ケースＡ  ＰＣ１２０が通信可能な状態に戻るケース；図５）
図５のケースＡの初期状態は、図４の最終状態と同様である。この状態では、第２のＷＦＤＮＷのＧ／Ｏ機器であるＭＦＰ５０のＣＰＵ６２は、第１のＷＦＤＮＷのＧ／Ｏ機器であったＰＣ１２０を検索する（Ｓ５００）。具体的には、ＣＰＵ６２は、メモリ６４内のＷＳ１に含まれているＰＣ１２０のＳＳＩＤとＢＳＳＩＤ（即ちＰＣ１２０のＭＡＣアドレス）と、を用いて、Probe Request信号を発信する。ＣＰＵ６２は、定期的にProbe Request信号を発信することによって、ＰＣ１２０を検索する。ＣＰＵ６２は、Probe Request信号を発信してから所定の期間内に、Probe Request信号に対する応答としてProbe Response信号を受信しない場合、ＰＣ１２０を発見することができないと判断する、即ち、ＭＦＰ５０とＰＣ１２０とは、無線通信を実行することができないと判断する。なお、ＣＰＵ６２は、ＷＦＤＮＷを利用せずに、Probe Request信号を発信する。
【００７１】
例えば、ＰＣ１２０が移動されてＭＦＰ５０に近づいたために、ＰＣ１２０とＭＦＰ５０とが、無線通信を実行することができない状態から実行することができる状態に移行する場合がある。ＰＣ１２０とＭＦＰ５０とが、無線通信を実行できる状態では、ＰＣ１２０は、ＭＦＰ５０から発信されたProbe Request信号を受信する（Ｓ５０２）。Ｓ５０４では、ＰＣ１２０は、受信されたProbe Request信号に対して、Probe Response信号を送信する。
【００７２】
ＣＰＵ６２は、ＰＣ１２０からProbe Response信号を受信することによって、ＰＣ１２０を発見する。これにより、ＣＰＵ６２は、ＭＦＰ５０とＰＣ１２０とが無線通信を実行可能であると判断する。この場合、Ｓ５０６において、ＣＰＵ６２は、第２のＷＦＤＮＷを解散するための解散処理を、ＭＦＰ１０と実行する。
【００７３】
具体的には、ＣＰＵ６２は、第２のＷＦＤＮＷを利用して、ＰＣ１２０のＳＳＩＤとＭＡＣアドレスとを含む元Ｇ／Ｏ確認信号を、ＭＦＰ１０に送信する。ＭＦＰ１０のＣＰＵ３２は、ＭＦＰ５０から元Ｇ／Ｏ確認信号を受信する。ＣＰＵ３２は、元Ｇ／Ｏ確認信号に含まれているＳＳＩＤと同一のＳＳＩＤと、元Ｇ／Ｏ確認信号に含まれているＭＡＣアドレスと同一のＢＳＳＩＤと、を含むＷＦＤＷＳＩが、メモリ３４に格納されているのか否かを判断する。メモリ３４には、ＷＳ１とＷＳ２とが格納されている。ＣＰＵ３２は、元Ｇ／Ｏ確認信号に含まれているＳＳＩＤ及びＭＡＣアドレスと同一のＳＳＩＤ及びＢＳＳＩＤを含むＷＦＤＷＳＩ（即ちＷＳ１）が、メモリ３４に格納されていると判断する。この場合、ＣＰＵ３２は、元Ｇ／Ｏ確認信号に対する応答として、ＯＫを示す信号を、ＭＦＰ５０に送信する。この構成によれば、ＭＦＰ１０は、元のＧ／Ｏ機器であるＰＣ１２０が、ＭＦＰ５０によって発見されたことを知ることができる。
【００７４】
ＭＦＰ５０のＣＰＵ６２は、ＯＫを示す信号を受信すると、第２のＷＦＤＮＷを利用して、Deauthentication信号をＭＦＰ１０に送信する。Deauthentication信号は、Ｇ／Ｏ機器がＷＦＤＮＷを解散する際、即ち、Ｇ／Ｏ機器がＧ／Ｏ状態から他の状態（例えばデバイス状態）に移行する際に、ＷＦＤＮＷに所属する各ＣＬ機器との接続を解除するために、Ｇ／Ｏ機器からＣＬ機器に送信される信号である。ＭＦＰ１０のＣＰＵ３２は、Deauthentication信号をＭＦＰ５０から受信すると、Deauthentication信号の応答として、第２のＷＦＤＮＷを利用して、Disassociation信号をＭＰＦ５０に送信する。Disassociation信号は、ＣＬ機器がＧ／Ｏ機器との接続を切断する際に、ＣＬ機器からＧ／Ｏ機器に送信される信号である。Ｓ５０８では、ＣＰＵ６２は、Ｓ５０６と同様に、携帯端末１１０と解散処理を実行する。なお、ＣＰＵ６２は、元Ｇ／Ｏ確認信号を、第２のＷＦＤＮＷにブロードキャストしてもよい。この構成によれば、携帯端末１１０は、元のＧ／Ｏ機器であるＰＣ１２０が、ＭＦＰ５０によって発見されたことを知ることができる。
【００７５】
Ｓ５１０では、ＣＰＵ６４は、管理リストに記述されている全てのＭＡＣアドレスのＣＬ機器（即ちＭＦＰ１０、携帯端末１１０）と共に解散処理を実行すると、ＭＦＰ５０の状態をＧ／Ｏ状態からデバイス状態に移行させる。Ｓ５１２では、ＭＦＰ１０のＣＰＵ３２は、ＭＦＰ１０の状態をＣＬ状態からデバイス状態に移行させる。また、Ｓ５１４では、携帯端末１１０は、携帯端末１１０の状態をＣＬ状態からデバイス状態に移行させる。
【００７６】
続いて、Ｓ５２０では、ＭＦＰ５０のＣＰＵ６２は、ＰＣ１２０と再接続処理を実行する。具体的には、最初に、ＣＰＵ６２は、ＰＣ１２０と無線通信可能であるかを確認するために、ＰＣ１２０を検索する。ＰＣ１２０は、検索に対する応答を、ＭＦＰ５０に送信する。再接続処理における検索及び応答は、Ｓ５０２及びＳ５０４において、ＣＰＵ６２及びＰＣ１２０が実行する処理と同様である。
【００７７】
ＣＰＵ６２は、ＰＣ１２０から応答を受信すると、ＷＳ１を用いて、ＭＦＰ５０とＰＣ１２０との接続を確立するための通信を、ＰＣ１２０と実行する。本通信は、通常のＷＦＤＷＳＩに従った認証通信と同様である。即ち、ＣＰＵ６２は、ＷＳ１を用いて生成したAuthentication Request信号を、ＰＣ１２０に送信する。ＰＣ１２０は、ＭＦＰ５０からAuthentication Request信号を受信すると、Authentication Request信号を用いた認証処理を実行する。ＰＣ１２０は、認証処理が成功すると、Authentication Request信号に対する応答として、ＯＫを示す信号を、ＭＦＰ５０に送信する。続いて、ＣＰＵ６２は、Authentication Request信号に対して、ＯＫを示す信号を受信すると、ＰＣ１２０にAssociation Request信号を送信する。ＰＣ１２０は、ＭＦＰ５０からAssociation Request信号を受信すると、ＯＫを示す信号を、ＭＦＰ５０に送信する。ＣＰＵ６２が、Association Request信号に対してＯＫを示す信号を受信すると、ＰＣ１２０とＭＦＰ５０との間に接続が確立される。
【００７８】
Ｓ５２２では、ＣＰＵ６２は、ＭＦＰ５０の状態をデバイス状態からＣＬ状態に移行させる。この結果、ＰＣ１２０は、Ｇ／Ｏ機器としてＷＦＤＮＷ（以下では「第３のＷＦＤＮＷ」と呼ぶ）を新たに形成し、ＭＦＰ５０は、ＣＬ機器として第３のＷＦＤＮＷに参加する。これにより、ＰＣ１２０が、第３のＷＦＤＮＷにＧ／Ｏ機器として所属し、ＭＦＰ５０が、第３のＷＦＤＮＷにＣＬ機器として所属する状態が構築される。
【００７９】
ＭＦＰ５０は、元のＧ／Ｏ機器であるＰＣ１２０を発見してデバイス状態からＣＬ状態に移行するので、最先のＣＬ機器である。従って、Ｓ５２４において、ＣＰＵ６２は、参加リストを生成する。なお、ＣＰＵ６２は、既に優先リストがメモリ６４に格納されているため、優先リストを生成しない。
【００８０】
次いで、Ｓ５３０では、ＰＣ１２０とＭＦＰ１０とは、Ｓ５２０と同様の再接続処理を実行する。この結果、Ｓ５３２では、ＭＦＰ１０のＣＰＵ３２は、ＭＦＰ１０の状態をデバイス状態からＣＬ状態に移行させる。これにより、ＰＣ１２０が、第３のＷＦＤＮＷにＧ／Ｏ機器として所属し、ＭＦＰ１０，５０が、第３のＷＦＤＮＷにＣＬ機器として所属する状態が構築される。さらに、Ｓ５４０では、ＰＣ１２０と携帯端末１１０とは、Ｓ５２０と同様の再接続処理を実行する。なお、図示省略したが、ＭＦＰ１０及び携帯端末１１０のそれぞれは、図２のＳ２２５，Ｓ２３６と同様に、デバイス状態からＣＬ状態に移行して、ＣＬ機器として第３のＷＦＤＮＷに新たに参加すると、自器のＭＡＣアドレスを含む参加通知を、第３のＷＦＤＮＷにブロードキャストする。この結果、ＣＰＵ６２は、図２のＳ２２６，Ｓ２２７，Ｓ２３８，Ｓ２４０，Ｓ２４４と同様に、参加リストを更新して、更新済みの参加リストを、ＭＦＰ１０及び携帯端末１１０に送信する。さらに、ＣＰＵ６２は、図２のＳ２２７，Ｓ２４４と同様に、優先リストを、ＭＦＰ１０及び携帯端末１１０に送信する。ＭＦＰ１０のＣＰＵ３２は、ＭＦＰ５０から参加リスト及び優先リストが受信されると、図２のＳ２２８と同様に、参加リストをメモリ３４に格納する。携帯端末１１０は同様に、ＭＦＰ５０から参加リスト及び優先リストが受信されると、図２のＳ２４６と同様に、参加リストを携帯端末１１０のメモリに格納する。なお、ＭＦＰ５０及び携帯端末１１０は、メモリ内に優先リストが格納されているために、受信済みの優先リストをメモリに格納せずに、消去する。
【００８１】
ケースＡでは、ＭＦＰ５０は、第１のＷＦＤＮＷのＧ／Ｏ機器であったＰＣ１２０が、無線通信を実行できない状態から実行できる状態に移行する場合に、ＰＣ１２０が、第３のＷＦＤＮＷにＧ／Ｏ機器として所属し、ＭＦＰ５０が第３のＷＦＤＮＷにＣＬ機器として所属する状態を構築することができる。この構成によれば、ＭＦＰ５０が無線ネットワークに親局として所属する事態を少なくすることができる。Ｇ／Ｏ機器は、ＷＦＤＮＷに所属するＣＬ機器間の無線通信を中継する処理、ＣＬ機器がＷＦＤＮＷに所属しているのか否かを定期的に確認する処理等、ＣＬ機器と比較して、実行すべき処理が多い。このため、ＭＦＰ５０が、Ｇ／Ｏ機器としてＷＦＤＮＷに所属する場合、ＭＦＰが有する機能（例えば印刷機能、スキャン機能）を実行すると共に、ＷＦＤＮＷのための処理を実行しなければならず、ＭＦＰ５０の処理負荷が高くなる。ケースＡでは、ＭＦＰ５０が、Ｇ／Ｏ機器としてＷＦＤＮＷに所属すべき事態を、抑制することができる。これにより、ＭＦＰ５０の処理負荷を低減することができる。
【００８２】
また、ＭＦＰ５０は、Ｓ５０６，Ｓ５０８において、解散処理を実行した後で、Ｓ５２０の再接続処理を実行する。この構成によれば、ＭＦＰ５０が、複数のＷＦＤＮＷに同時に所属すべき事態を回避することができる。また、ＭＦＰ５０は、Ｓ５００、Ｓ５０２において、ＳＳＩＤを用いてＰＣ１２０を検索する。この構成によれば、ＭＦＰ５０は、デバイス状態のＰＣ１２０を検索せず、Ｇ／Ｏ状態のＰＣ１２０を検索することができる。この結果、ＭＦＰ５０とＰＣ１２０とは、Ｇ／Ｏネゴシエーションを行うことなく、ＷＦＤＮＷを形成することができる。また、第１のＷＦＤＮＷと同様のＷＦＤＮＷを再び形成することができる可能性が高い。
【００８３】
（ケースＢ  Ｇ／Ｏ機器が第２のＷＦＤＮＷから離脱するケース：図６）
図６のケースＢの初期状態は、図４の最終状態と同様である。Ｓ６００では、ＣＬ機器であるＭＦＰ１０、携帯端末１１０は、定期的に、Ｇ／Ｏ機器であるＭＦＰ５０の存在確認を実行する。なお、存在確認の手法は、図３のＳ３００と同様に、ＷＳ２内に含まれるＢＳＳＩＤを送信先に指定して、第２のＷＦＤＮＷを利用して、Ｇ／Ｏ存在確認信号をＭＦＰ５０に送信する。Ｓ６００のＧ／Ｏ存在確認信号が送信される段階では、ＭＦＰ５０は、第２のＷＦＤＮＷから離脱していない。従って、Ｓ６０２では、ＭＦＰ５０のＣＰＵ６２は、ＭＦＰ１０からＧ／Ｏ存在確認信号を受信して、第２のＷＦＤＮＷを利用して、ＭＦＰ５０のＭＡＣアドレスを含む応答信号を、ＭＦＰ１０に送信する。
【００８４】
例えば、Ｇ／Ｏ機器であるＭＦＰ５０が省電力のために、スリープ状態に移行された結果として、Ｓ６０６において、ＭＦＰ５０は、第２のＷＦＤＮＷから離脱する。その後、Ｓ６０８では、ＭＦＰ１０のＣＰＵ３２は、第２のＷＦＤＮＷを利用して、Ｇ／Ｏ存在確認信号をＭＦＰ５０に送信する。ＭＦＰ５０は、Ｇ／Ｏ存在確認信号を受信しないので、応答信号を送信しない。
【００８５】
なお、図６では示していないが、携帯端末１１０も、第２のＷＦＤＮＷを利用して、Ｇ／Ｏ存在確認信号をＭＦＰ５０に送信するが、応答信号を受信しない。この結果、ＭＦＰ５０及び携帯端末１１０は、それぞれに、ＭＦＰ５０と無線通信を実行することができないことを確認する。この場合、Ｓ６１０では、ＭＦＰ１０のＣＰＵ３２は、ＭＦＰ５０から応答信号を受信しないので、ＭＦＰ５０が第２のＷＦＤＮＷに所属していないこと、即ち、ＰＣ１２０と無線通信を実行することができないことを確認する。そして、ＣＰＵ３２は、ＭＦＰ１０の状態をＣＬ状態からデバイス状態に移行させる。なお、メモリ３４内のＷＦＤＷＳＩ、参加リスト及び優先リストは、メモリ３４から削除されずに、メモリ３４内に維持される。
【００８６】
同様に、Ｓ６１２では、携帯端末１１０は、ＭＦＰ５０が第２のＷＦＤＮＷから離脱したことを確認して、ＭＦＰ１１０の状態をＣＬ状態からデバイス状態に移行させる。各機器１０，１１０は、デバイス状態で動作しているために、目的データの無線通信を実行することができない。このため、携帯端末１１０は、ＭＦＰ１０に印刷データを送信することができない。
【００８７】
Ｓ６１４では、ＣＰＵ３２は、ＭＦＰ１０がＣＬ状態からデバイス状態に移行すると、メモリ３４内の参加リストの最上位にＭＦＰ１０のＭＡＣアドレスが記述されているのか否かを判断する。即ち、ＣＰＵ３２は、ＭＦＰ１０が第２のＷＦＤＮＷの最先のＣＬ機器であったのか否かを判断する。Ｓ６１４では、ＣＰＵ３２は、ＭＦＰ１０が最先のＣＬ機器であったと判断する。一方において、Ｓ６１６では、携帯端末１１０は、携帯端末１１０のメモリ内の参加リストを確認することによって、携帯端末１１０が第２のＷＦＤＮＷの最先のＣＬ機器でなかったと判断する。この場合、携帯端末１１０は、第２のＷＦＤＮＷの最先のＣＬ機器（即ちＭＦＰ１０）から、Ｉｒｅｑ信号を受信するまで待機する。この構成によれば、Ｇ／Ｏ機器であるＭＦＰ５０と、第２のＷＦＤＮＷを利用して、無線通信を実行することができない場合に、新たなＷＦＤＮＷにＧ／Ｏ機器として所属すべきであるのか否かを適切に決定することができる。
【００８８】
この場合、ＣＰＵ３２は、Ｓ６１８〜Ｓ６２４の処理を実行する。Ｓ６１８〜Ｓ６２４の処理は、図４のＳ４０４〜Ｓ４１０の処理と同様である。なお、Ｓ６１８〜Ｓ６２４では、Ｓ４０４〜Ｓ４１０のＣＰＵ６２の処理を、ＣＰＵ３２が実行し、Ｓ４０４〜Ｓ４１０のＣＰＵ３２の処理を、携帯端末１１０が実行する。Ｓ６２６の処理は、図４のＳ４２６の処理と同様である。この結果、ＭＦＰ１０がＧ／Ｏ機器として所属しており、携帯端末１１０がＣＬ機器として所属している新たなＷＦＤＮＷ（以下では「第４のＷＦＤＮＷ」と呼ぶ）が形成される。言い換えると、第４のＷＦＤＮＷに、ＭＦＰ１０がＧ／Ｏ機器として所属しており、携帯端末１１０がＣＬ機器として所属している状態を構築される。この結果、ＭＦＰ１０のメモリ３４と、携帯端末１１０のメモリのそれぞれには、ＷＳ１、ＷＳ２及びＷＳ３が格納される。
【００８９】
Ｓ６２８では、携帯端末１１０は、携帯端末１１０がデバイス状態からＣＬ状態に移行し、さらに、参加リストの上位２番目である状態でＩｒｅｑ信号を受信してＣＬ状態に移行したと判断する。Ｓ６３０では、携帯端末１１０は、携帯端末１１０のＭＡＣアドレスが最上位に記述されている新たな参加リストを生成して、携帯端末１１０のＭＡＣアドレスが上位２番目以降に記述されている古い参加リストに代えて新たな参加リストを携帯端末１１０のメモリに格納する。
【００９０】
なお、Ｓ６４０では、Ｇ／Ｏ機器であるＭＦＰ１０のＣＰＵ３２は、ＷＳ１を用いて、定期的に、第１のＷＦＤＮＷのＧ／Ｏ機器であったＰＣ１２０を検索する。さらに、Ｓ６４０では、ＣＰＵ３２は、ＷＳ２を用いて、定期的に、第２のＷＦＤＮＷのＧ／Ｏ機器であったＭＦＰ５０を検索する。Ｓ６４０のＣＰＵ３２の処理は、図５のＳ５００におけるＣＰＵ６４の処理と同様である。
【００９１】
（ケースＢ−１  ＭＦＰ１０が通信可能な状態に戻るケース；図７）
図７のケースＢ−１の初期状態は、図６の最終状態と同様である。この状態では、第３のＷＦＤＮＷのＧ／Ｏ機器であるＭＦＰ１０のＣＰＵ３２は、第１のＷＦＤＮＷのＧ／Ｏ機器であったＰＣ１２０を検索する（Ｓ７００）。さらに、ＣＰＵ３２は、第２のＷＦＤＮＷのＧ／Ｏ機器であったＭＦＰ５０を検索する（Ｓ７０２）。Ｓ７００、Ｓ７０２の処理は、図６のＳ６４０の処理と同様である。
【００９２】
例えば、ＭＦＰ５０がスリープ状態から非スリープ状態に移行したために、ＭＦＰ５０とＭＦＰ１０とが、無線通信を実行できない状態から実行できる状態に移行する場合がある。ＭＦＰ５０は、Ｇ／Ｏ状態で維持されている。ＭＦＰ５０とＭＦＰ１０が、無線通信を実行できる状態では、ＭＦＰ５０は、ＭＦＰ１０から発信されたProbe Request信号（Ｓ７０４）を受信する。Ｓ７０６では、ＰＣ１２０は、受信されたProbe Request信号に対して、Probe Response信号を送信する。
【００９３】
ＣＰＵ３２は、ＭＦＰ５０からProbe Response信号を受信することによって、ＭＦＰ５０を発見する。これにより、ＣＰＵ３２は、ＭＦＰ１０とＭＦＰ５０とが、無線通信を実行可能であると判断する。そして、図示省略したが、ＣＰＵ３２は、メモリ３４内の優先リストを用いて、ＭＦＰ５０のＭＡＣアドレスよりも、Ｇ／Ｏ機器になるべき優先度が高い機器のＭＡＣアドレスが存在するのか否かを確認する。優先リストでは、ＭＦＰ５０のＭＡＣアドレスよりも、ＰＣ１２０のＭＡＣアドレスの方が上位に対応付けてられている。この場合、Ｓ７０８において、Ｓ７０２と同様に、ＣＰＵ３２は、ＭＦＰ５０が発見された後、ＰＣ１２０を検索する。
【００９４】
ＣＰＵ３２は、Probe Request信号を送信してから所定の期間が経過しても、ＰＣ１２０からProbe Response信号を受信しない。即ち、ＣＰＵ３２は、ＰＣ１２０を発見することができない。この結果、ＣＰＵ３２は、ＭＦＰ１０とＰＣ１２０とが、無線通信を実行可能でないと判断する。この場合、ＣＰＵ３２は、ＭＦＰ５０がＧ／Ｏ機器として所属する新たなＷＦＤＮＷ（以下では「第５のＷＦＤＮＷ」と呼ぶ）に、ＣＬ機器として所属するために、携帯端末１１０とＳ７１０の解散処理を実行し、Ｓ７１２の処理を実行し、ＭＦＰ５０とＳ７２０の再接続処理を実行し、かつ、Ｓ７２２の処理を実行する。なお、Ｓ７１０の解散処理は、図５のＳ５０６の解散処理と同様である。
【００９５】
但し、Ｓ７１０では、Ｓ５０６のＣＰＵ６２の処理を、ＣＰＵ３２が実行し、Ｓ５０６のＣＰＵ３２の処理を、携帯端末１１０が実行する。なお、Ｓ７１０では、ＣＰＵ３２は、解散処理の最初に、ＭＦＰ５０のＳＳＩＤ及びＭＡＣアドレスを送信する。これにより、携帯端末１１０は、ＭＦＰ５０と無線通信を実行可能であると知ることができる。また、Ｓ７１２の処理は、図５のＳ５１０と同様であり、Ｓ７２０の再接続処理は、Ｓ５２０の再接続処理と同様であり、Ｓ７２２の処理は、図５のＳ５２２の処理と同様である。但し、Ｓ７１２，Ｓ７２０，Ｓ７２２では、Ｓ５１０，Ｓ５２０，Ｓ５２２のＣＰＵ６２の処理を、ＣＰＵ３２が実行し、Ｓ５２０のＰＣ１２０の処理を、ＭＦＰ５０のＣＰＵ６４が実行する。なお、携帯端末１１０が実行するＳ７１４の処理は、Ｓ５１４の処理と同様である。
【００９６】
これにより、ＭＦＰ５０は、Ｇ／Ｏ機器として第５のＷＦＤＮＷを新たに形成し、ＭＦＰ１０は、ＣＬ機器として第５のＷＦＤＮＷに参加する。言い換えると、ＭＦＰ５０が、第５のＷＦＤＮＷにＧ／Ｏ機器として所属し、ＭＦＰ１０が、第５のＷＦＤＮＷにＣＬ機器として所属する状態が構築される。
【００９７】
ＭＦＰ１０は、元のＧ／Ｏ機器であるＭＦＰ５０を発見してデバイス状態からＣＬ状態に移行するので、最先のＣＬ機器である。従って、Ｓ７２４において、ＣＰＵ３２は、参加リストを生成する。なお、ＣＰＵ３２は、既に優先リストがメモリ３４に格納されているため、優先リストを生成しない。
【００９８】
次いで、Ｓ７３０では、ＭＦＰ５０と携帯端末１１０とは、ＭＦＰ１０，５０が実行するＳ７２０の再接続処理と同様の再接続処理を実行する。この結果、Ｓ７３２では、携帯端末１１０は、携帯端末１１０の状態をデバイス状態からＣＬ状態に移行させる。これにより、ＭＦＰ５０が、第５のＷＦＤＮＷにＧ／Ｏ機器として所属し、ＭＦＰ１０及び携帯端末１１０が、第５のＷＦＤＮＷにＣＬ機器として所属する状態が構築される。
【００９９】
ケースＢ−１では、第２のＷＦＤＮＷのＧ／Ｏ機器であったＭＦＰ５０が、ＭＦＰ１０と無線通信を実行できない状態から実行できる状態に移行する場合に、ＭＦＰ５０が、第５のＷＦＤＮＷにＧ／Ｏ機器として所属し、ＭＦＰ１０が第５のＷＦＤＮＷにＣＬ機器として所属する状態を構築することができる。この構成によれば、ＭＦＰ１０が無線ネットワークにＧ／Ｏ機器として所属する事態を少なくすることができる。これにより、ＭＦＰ１０の処理負荷を低減することができる。
【０１００】
また、ＭＦＰ１０は、Ｓ７１０において、解散処理を実行した後で、Ｓ７２０の再接続処理を実行する。この構成によれば、ＭＦＰ１０が、複数のＷＦＤＮＷに同時に所属すべき事態を回避することができる。
【０１０１】
（ケースＢ−２  ＰＣ１２０が通信可能な状態に戻るケース；図８）
図８のケースＢ−２の初期状態は、図６の最終状態と同様である。図８のＳ８００〜Ｓ８０８の処理は、図７のＳ７００〜Ｓ７０８の処理と同様である。
【０１０２】
ＣＰＵ３２は、Ｓ８０８において、ＰＣ１２０にProbe Request信号を送信してから所定の期間内に、ＰＣ１２０からProbe Response信号を受信する。これにより、ＣＰＵ３２は、ＰＣ１２０を発見する。この結果、ＣＰＵ３２は、ＭＦＰ１０とＰＣ１２０とが、無線通信を実行可能であると判断する。この状況では、ＰＣ１２０の方が、ＭＦＰ５０よりもＧ／Ｏ機器としての優先度が高いために、ＣＰＵ３２は、ＰＣ１２０がＧ／Ｏ機器として所属する新たなＷＦＤＮＷ（以下では「第６のＷＦＤＮＷ」と呼ぶ）に、ＣＬ機器として所属するために、携帯端末１１０とＳ８１０の解散処理を実行し、Ｓ８１２の処理を実行する。Ｓ８１０，Ｓ８１２の処理は、図７のＳ７１０，Ｓ７１２の処理と同様である。
【０１０３】
ＣＰＵ３２は、さらに、ＰＣ１２０とＳ８２０の再接続処理を実行し、かつ、Ｓ８２２の処理を実行する。Ｓ８２２に続いて、ＭＦＰ１０のＣＰＵ３２は、Ｓ８２４の処理を実行する。Ｓ８２０の再接続処理及びＳ８２２，Ｓ８２４の処理は、図５のＳ５２０の再接続処理及びＳ５２２，Ｓ５２４の処理と同様である。但し、Ｓ８２０〜Ｓ８２４では、Ｓ５２０〜Ｓ５２４のＣＰＵ６２の処理を、ＣＰＵ３２が実行する。ＰＣ１２０と携帯端末１１０とは、Ｓ８３０の再接続処理を実行し、携帯端末１１０は、Ｓ８３２の処理を実行する。Ｓ８１０〜Ｓ８３２の処理は、Ｓ７１０〜Ｓ７３２の処理と同様である。但し、Ｓ８１０〜Ｓ８３２では、Ｓ７１０〜Ｓ７３２のＣＰＵ３２の処理を、携帯端末１１０が実行する。
【０１０４】
これにより、ＰＣ１２０は、Ｇ／Ｏ機器として第６のＷＦＤＮＷを新たに形成し、ＭＦＰ１０と携帯端末１１０とは、ＣＬ機器として第６のＷＦＤＮＷに参加する。言い換えると、ＰＣ１２０が、第６のＷＦＤＮＷにＧ／Ｏ機器として所属し、ＭＦＰ１０と携帯端末１１０が、第６のＷＦＤＮＷにＣＬ機器として所属する状態が構築される。
【０１０５】
ケースＢ−２では、ケースＢ−１と同様に、ＭＦＰ１０は、第１のＷＦＤＮＷのＧ／Ｏ機器であったＰＣ１２０が、無線通信を実行できない状態から実行できる状態に移行する場合に、ＰＣ１２０が、第６のＷＦＤＮＷにＧ／Ｏ機器として所属し、ＭＦＰ１０が第６のＷＦＤＮＷにＣＬ機器として所属する状態を構築することができる。この構成によれば、ＭＦＰ１０が無線ネットワークにＧ／Ｏ機器として所属する事態を少なくすることができる。これにより、ＭＦＰ１０の処理負荷を低減することができる。
【０１０６】
また、ケースＢ−２では、ＭＦＰ１０は、第１のＷＦＤＮＷのＧ／Ｏ機器であったＰＣ１２０と、第２のＷＦＤＮＷのＧ／Ｏ機器であったＭＦＰ５０とが、無線通信を実行できない状態から実行できる状態に移行する場合に、ＰＣ１２０が、第６のＷＦＤＮＷにＧ／Ｏ機器として所属し、ＭＦＰ１０及び携帯端末１１０が第６のＷＦＤＮＷにＣＬ機器として所属する状態を構築することができる。これにより、ＭＦＰ５０が、Ｇ／Ｏ機器としてＷＦＤＮＷに所属すべき事態を、抑制することができる。これにより、ＭＦＰ５０の処理負荷を低減することができる。
【０１０７】
また、ＭＦＰ１０は、Ｓ８１０において、解散処理を実行した後で、Ｓ８２０の再接続処理を実行する。この構成によれば、ＭＦＰ１０が、複数のＷＦＤＮＷに同時に所属すべき事態を回避することができる。
【０１０８】
また、ケースＢ−１及びケースＢ−２によれば、過去に、ＭＦＰ１０がＣＬ機器として所属していたＷＦＤＮＷに、Ｇ／Ｏ機器として所属していた機器（即ち、ＰＣ１２０、ＭＦＰ５０）が、ＭＦＰ１０によって発見される場合に、Ｇ／Ｏ機器として所属していた機器が、新たなＷＦＤＮＷにＧ／Ｏ機器として所属しており、ＭＦＰ１０が、新たなＷＦＤＮＷにＣＬ状態として所属している状態を構築することができる。このため、ＭＦＰ１０は、Ｇ／Ｏ状態としてＷＦＤＮＷに所属すべき事態を抑制することができる。
【０１０９】
（ネットワーク制御処理；図９）
続いて、図９を参照して、ＭＦＰ１０が実行するネットワーク制御処理について説明する。ＭＦＰ５０及び携帯端末１１０も、ＭＦＰ１０と同様に、ネットワーク制御処理を実行する。ネットワーク制御処理は、ＷＦＤＮＷに、ＣＬ機器として所属すると開始される処理である。即ち、ＷＦＤＮＷに、ＣＬ機器として所属しない機器は、ネットワーク制御処理を実行しない。
【０１１０】
Ｓ１０では、ＣＰＵ３２は、Ｇ／Ｏ機器から送信されるＷＦＤＷＳＩを、メモリ３４に格納する（図２のＳ２２３）。次いで、Ｓ１２では、ＣＰＵ３２は、ＭＦＰ１０が所属するＷＦＤＮＷ（以下では「元のＷＦＤＮＷ」）のＧ／Ｏ機器と通信可能であるのか否かの判断を、元のＷＦＤＮＷのＧ／Ｏ機器と通信可能でないと判断されるまで、繰り返し実行する。（図３のＳ３００、Ｓ３０４）。Ｇ／Ｏ機器と通信可能でないと判断される場合（Ｓ１２でＮＯ）、Ｓ１４において、ＣＰＵ３２は、ＭＦＰ１０をＣＬ状態からデバイス状態に移行する（図３のＳ３１６、図６のＳ６１０）。次いで、Ｓ１６では、ＣＰＵ３２は、ＭＦＰ１０がＧ／Ｏ状態に移行すべきであるのか否かを判断する（図４のＳ４０２、図６のＳ６１４）。具体的には、ＣＰＵ３２は、メモリ３４に格納されている参加リストの最上位に、ＭＦＰ１０のＭＡＣアドレスが記述されている場合に、Ｇ／Ｏ状態に移行すべきであると判断し（図６のＳ６１４）（Ｓ１６でＹＥＳ）、参加リストの最上位以外に、ＭＦＰ１０のＭＡＣアドレスが記述されている場合に、Ｇ／Ｏ状態に移行すべきでないと判断する（図４のＳ４０２）（Ｓ１６でＮＯ）。
【０１１１】
Ｓ１６でＹＥＳの場合、ＣＰＵ３２は、ＭＦＰ１０をデバイス状態からＧ／Ｏ状態に移行して（図６のＳ６１８）、Ｓ１８に進む。Ｓ１８では、ＣＰＵ３２は、参加リストに記述されているＭＡＣアドレスの機器（即ち、元のＷＦＤＮＷにＣＬ機器として所属していた機器）と、接続を確立する（図６のＳ６２４）。次いで、Ｓ２０では、元のＷＦＤＮＷのＧ／Ｏ機器（以下では「元Ｇ／Ｏ機器」と呼ぶ）を検索する（図６のＳ６４０、図７のＳ７００，Ｓ７０４，Ｓ７０８、図８のＳ８００，Ｓ８０４，Ｓ８０８）。
【０１１２】
Ｓ２２では、ＣＰＵ３２は、Ｓ１８の検索の結果、元Ｇ／Ｏ機器が発見されたのか否かを判断する。具体的には、図７のＳ７０６、図８のＳ８０６，Ｓ８０９に示されるように、Ｓ１８において送信されたProbe Request信号に対する応答が受信される場合に、元Ｇ／Ｏ機器が発見されたと判断し（Ｓ２２でＹＥＳ）、Probe Request信号に対する応答が受信されない場合に、元Ｇ／Ｏ機器が発見されなかったと判断する（Ｓ２２でＮＯ）。
【０１１３】
Ｓ２２でＮＯの場合に、Ｓ２０に戻る。一方、Ｓ２２でＹＥＳの場合、Ｓ２４において、解散処理（図７のＳ７１０、図８のＳ８１０）を実行する。次いで、Ｓ２６では、ＣＰＵ３２は、ＭＦＰ１０をＧ／Ｏ状態からデバイス状態に移行して（図７のＳ７１２、図８のＳ８１２）、Ｓ３６に進む。
【０１１４】
Ｓ１６でＮＯの場合（即ちＭＦＰ１０がＧ／Ｏ状態に移行すべきでないと判断される場合）、Ｓ２８において、ＣＰＵ３２は、元のＷＦＤＮＷに所属していたＣＬ機器であって、Ｇ／Ｏ状態に移行した機器（例えばＭＦＰ５０）（以下では「新Ｇ／Ｏ機器」と呼ぶ）と、接続を確立する（図４のＳ４１０）。次いで、Ｓ２９では、ＣＰＵ３２は、Ｇ／Ｏ機器から送信されるＷＦＤＷＳＩを、メモリ３４に格納する（図４のＳ４１１）。そして、Ｓ３０では、Ｓ１２と同様に、ＣＰＵ３２は、新Ｇ／Ｏ機器と通信可能であるのか否かを判断する。新Ｇ／Ｏ機器と通信可能でない場合（Ｓ３０でＮＯ）、Ｓ１４に進む。
【０１１５】
一方、新Ｇ／Ｏ機器と通信可能である場合（Ｓ３０でＹＥＳ）、Ｓ３２において、ＣＰＵ３２は、新Ｇ／Ｏ機器が解散処理（図５のＳ５０６）を実行するのか否かを判断する。具体的には、ＣＰＵ３２は、元Ｇ／Ｏ機器のＳＳＩＤを、新Ｇ／Ｏ機器から受信する場合に、新Ｇ／Ｏ機器が解散処理（図５のＳ５０６）を実行すると判断する。この構成によれば、ＣＰＵ３２は、元Ｇ／Ｏ機器のＳＳＩＤを、受信することによって、元Ｇ／Ｏ機器が無線通信可能であると知ることができる。ＣＰＵ３２は、新Ｇ／Ｏ機器が解散処理を実行する場合（Ｓ３２でＹＥＳ）、Ｓ３４に進み、新Ｇ／Ｏ機器が解散処理を実行しない場合（Ｓ３２でＮＯ）、Ｓ３０に戻る。
【０１１６】
Ｓ３４では、ＣＰＵ３２は、ＭＦＰ１０をＣＬ状態からデバイス状態に移行して（図５のＳ５１２）、Ｓ３６に進む。Ｓ３６では、ＣＰＵ３２は、元Ｇ／Ｏ機器と接続するための再接続処理（図５のＳ５３０、図７のＳ７２０、図８のＳ８２０）を実行する。なお、Ｓ２０において、複数個の元Ｇ／Ｏ機器が発見された場合（例えばＰＣ１２０とＭＦＰ５０）、ＣＰＵ３２は、複数個の元Ｇ／Ｏ機器のうち、メモリ３４に格納されている優先リストにおいて上位に記述されている元Ｇ／Ｏ機器（例えばＰＣ１２０）と、再接続処理を実行する。次いで、Ｓ３８では、ＣＰＵ３２は、ＭＦＰ１０を、デバイス状態からＣＬ状態に移行して（図５のＳ５３２、図７のＳ７２２、図８のＳ８２２）、Ｓ１０に戻る。
【０１１７】
（リスト管理処理；図１０）
続いて、図１０を参照して、ＭＦＰ１０が実行するリスト管理処理について説明する。ＭＦＰ５０及び携帯端末１１０も、ＭＦＰ１０と同様に、リスト管理処理を実行する。リスト管理処理は、ＣＬ機器によって実行される処理である。即ち、Ｇ／Ｏ機器及びデバイス機器は、リスト管理処理を実行しない。
【０１１８】
Ｓ４０では、ＣＰＵ３２は、ＭＦＰ１０の状態がデバイス状態からＣＬ状態に移行したのか否かを判断する。上述したように、リスト管理処理は、デバイス機器によって実行されないが、ＣＬ機器によって実行される処理である。従って、ＭＦＰ１０がデバイス状態からＣＬ状態に移行した結果として、リスト管理処理が開始された後に、１回目のＳ４０が実行される場合には、ＣＰＵ３２は、Ｓ４０でＹＥＳと判断して、Ｓ４２に進む。
【０１１９】
Ｓ４２では、ＣＰＵ３２は、ＭＦＰ１０がＧ／Ｏネゴシエーションを実行してＣＬ状態に移行したのか否かを判断する。ＣＰＵ３２は、ＭＦＰ１０がＧ／Ｏネゴシエーションを実行してＳ４０でＣＬ状態に移行した場合（例えば、ＭＦＰ５０が図２のＳ２０８においてＣＬ状態に移行する場合）には、Ｓ４２でＹＥＳと判断して、Ｓ４４に進む。なお、Ｇ／Ｏネゴシエーションの結果としてＷＦＤＮＷが新たに形成されるために、ＭＦＰ１０が当該Ｇ／Ｏネゴシエーションを実行してＣＬ機器としてＷＦＤＮＷに所属したということは（即ち、Ｓ４２でＹＥＳと判断されるということは）、当該ＷＦＤＮＷに所属した最初のＣＬ機器がＭＦＰ１０であることを意味する。
【０１２０】
Ｓ４２では、ＣＰＵ３２は、さらに、メモリ３４内の参加リストの上位２番目に、ＭＦＰ１０のＷＦＤ用ＭＡＣアドレスが記述されている状態（以下では「ＭＦＰ１０が上位２番目である状態」と呼ぶ）で、ＭＦＰ１０がＩｒｅｑ信号を受信してＳ１０でＣＬ状態に移行したのか否かを判断する（図４のＳ４１４）。ＣＰＵ３２は、ＭＦＰ１０が上位２番目である状態でＩｒｅｑ信号を受信してＣＬ状態に移行した場合（例えば図４のＳ４１２の移行の場合）には、Ｓ４２でＹＥＳと判断して、Ｓ４４に進む。
【０１２１】
即ち、図４に示すように、ＭＦＰ１０が、第１のＷＦＤＮＷにＣＬ機器として所属している状態から、デバイス状態に移行し、さらに、第２のＷＦＤＮＷにＣＬ機器として所属する場合に、Ｓ４０でＹＥＳと判断され、Ｓ４２の判断が実行される。Ｓ４２の判断の対象の参加リストは、第１のＷＦＤＮＷに所属中にメモリ３４に格納され、デバイス状態に移行しても削除されずにメモリ３４に維持されている参加リストである（例えば図２のＳ２４２で更新された参加リスト）。
【０１２２】
Ｓ４２では、ＣＰＵ３２は、さらに、元Ｇ／Ｏ機器を発見し、再接続処理が実行することによってＳ４０でＣＬ状態に移行したのか否かを判断する。ＣＰＵ３２は、元Ｇ／Ｏ機器を発見し、再接続処理によってＣＬ状態に移行した場合（例えば図７のＳ７２２、図８のＳ８２２の移行の場合）には、Ｓ４２でＹＥＳと判断して、Ｓ４４に進む。
【０１２３】
上述したように、Ｓ４２でＹＥＳと判断されるということは、ＷＦＤＮＷに所属した最初のＣＬ機器（最先のＣＬ機器）がＭＦＰ１０であることを意味する。このような状況では、Ｓ４４において、ＣＰＵ３２は、ＭＦＰ１０のＭＡＣアドレスが記述された新たな参加リストを生成して、新たな参加リストをメモリ３４に格納する。Ｓ４４の時点では、新たな参加リストは、ＭＦＰ１０のＭＡＣアドレスのみを含む。即ち、ＭＦＰ１０のＭＡＣアドレスは、参加リストの最上位に記述される。なお、Ｓ４４が開始される際に、メモリ３４に古い参加リストが格納されている場合には、制御部３０は、古い参加リストをメモリ３４から削除して、新たな参加リストをメモリ３４に格納する。
【０１２４】
さらに、Ｓ４４では、ＣＰＵ３２は、メモリ３４に優先リストが格納されていない場合に、Ｇ／Ｏ機器のＭＡＣアドレスが記述された優先リストを生成して、メモリ３４に格納する。一方、Ｓ４４では、ＣＰＵ３２は、メモリ３４に優先リストが格納されている場合に、新たに優先リストを生成しない。Ｓ４４を終えると、Ｓ４０に戻る。
【０１２５】
一方において、ＣＰＵ３２は、ＭＦＰ１０が、Ｇ／Ｏネゴシエーションを実行せず、さらに、Ｉｒｅｑ信号を受信せずに、ＣＬ状態に移行した場合には、Ｓ４２でＮＯと判断して、Ｓ４６に進む。Ｓ４２でＮＯと判断される状況は、図２のＳ２２４及び図５のＳ５３２において、ＭＦＰ１０がＣＬ状態に移行される状況を含む。
【０１２６】
上記のどちらの状況でも、デバイス状態のＭＦＰ１０がＷＦＤＮＷに新たに参加する際には、当該ＷＦＤＮＷにはＣＬ機器が既に所属している。従って、ＭＦＰ１０は、当該ＷＦＤＮＷに最も早く参加した最先のＣＬ機器ではなく、参加リストは、生成済みである。
【０１２７】
Ｓ４６では、ＣＰＵ３２は、参加通知を、ＷＦＤＮＷにブロードキャストする（図２のＳＳ２２５）。Ｓ４８では、ＣＰＵ３２は、最先のＣＬ機器から送信された参加リストと優先リストとを受信する（図２のＳ２２７）。上述したように、受信済みの参加リストでは、ＭＦＰ１０のＭＡＣアドレスが、最下位に記述されている。Ｓ４８では、ＣＰＵ３２は、さらに、受信済みの参加リストと優先リストとをメモリ３４に格納する。なお、メモリ３４に古い参加リストが格納されている場合には、ＣＰＵ３２は、古い参加リストをメモリ３４から削除して、受信済みの参加リストをメモリ３４に格納する。また、メモリ３４に既に優先リストが格納されている場合には、ＣＰＵ３２は、受信済みの優先リストをメモリ３４に格納しない。
【０１２８】
次いで、Ｓ４９では、Ｓ４８において、メモリ３４に優先リストが受信された場合、ＣＰＵ３２は、受信済みの参加リストを用いて、受信済みの優先リストを更新して（図２のＳ２２８）、Ｓ４０に戻る。なお、ＣＰＵ３２は、Ｓ４８において、優先リストが受信される前に、既に、メモリ３４に優先リストが格納されている場合、Ｓ４９をスキップして、Ｓ４０に戻る。
【０１２９】
Ｓ５０では、ＣＰＵ３２は、参加通知を受信することを監視している。ＣＰＵ３２は、Ｇ／Ｏ機器を介して、新規ＣＬ機器から参加通知を受信すると（図２のＳ２３６、図４のＳ４２８）、Ｓ５０でＹＥＳと判断して、Ｓ５２に進む。
【０１３０】
Ｓ５２では、ＣＰＵ３２は、メモリ３４内の参加リストの最上位にＭＦＰ１０のＭＡＣアドレスが記述されているのか否かを判断する。即ち、ＣＰＵ３２は、ＭＦＰ１０が最先のＣＬ機器であるのか否かを判断する。ＣＰＵ３２は、ＭＦＰ１０が最先のＣＬ機器である場合には、Ｓ５２でＹＥＳと判断して、Ｓ５４に進む。ＣＰＵ３２は、ＭＦＰ１０が最先のＣＬ機器でない場合（図２のＳ２３６で参加通知を受信する場合）には、Ｓ５２でＮＯと判断して、Ｓ５４、Ｓ５６をスキップしてＳ４０に戻る。
【０１３１】
Ｓ５４では、ＣＰＵ３２は、参加通知に含まれるＭＡＣアドレス（即ち新規ＣＬ機器のＭＡＣアドレス）を参加リストの最下位に記述して、更新済みの参加リストを生成する（図４のＳ４３０）。これにより、メモリ３４内に更新済みの参加リストが格納される。
【０１３２】
次いで、Ｓ５６では、ＣＰＵ３２は、更新済みの参加リストを、ＷＦＤＮＷに所属する他のＣＬ機器（例えば携帯端末１１０）に送信する（図４のＳ４３２）。Ｓ５６を終えると、Ｓ４０に戻る。
【０１３３】
Ｓ６０では、ＣＰＵ３２は、参加リストを受信することを監視している。上記のＳ５６又は後述のＳ７８において、ＭＦＰ１０とは異なる最先のＣＬ機器は、参加リストをＷＦＤＮＷのＣＬ機器に送信し得る。この場合、ＣＰＵ３２は、Ｇ／Ｏ機器を介して、最先のＣＬ機器から参加リストを受信し（図２のＳ２４０）、この結果、Ｓ６０でＹＥＳと判断して、Ｓ６２に進む。
【０１３４】
Ｓ６２では、ＣＰＵ３２は、古い参加リストをメモリ３４から削除して、受信済みの参加リストをメモリ３４に格納する（図２のＳ２４２）。これにより、ＣＰＵ３２は、参加リストを更新することができる。Ｓ６２を終えると、Ｓ４０に戻る。
【０１３５】
Ｓ７０では、ＣＰＵ３２は、メモリ３４内の参加リストの最上位にＭＦＰ１０のＭＡＣアドレスが記述されているのか否かを判断する。即ち、ＣＰＵ３２は、ＭＦＰ１０が最先のＣＬ機器であるのか否かを判断する。ＣＰＵ３２は、ＭＦＰ１０が最先のＣＬ機器である場合には、Ｓ７０でＹＥＳと判断して、Ｓ７２に進む。
【０１３６】
Ｓ７２では、ＣＰＵ３２は、最先のＣＬ機器であるＭＦＰ１０とは異なる各ＣＬ機器の存在確認を実行する。Ｓ７４では、ＣＰＵ３２は、離脱機器が存在するのか否かを判断する。制御部３０は、離脱機器が存在する場合には、Ｓ７４でＹＥＳと判断して、Ｓ７６に進む。一方において、ＣＰＵ３２は、離脱機器が存在しない場合には、Ｓ７４でＮＯと判断して、Ｓ７６及びＳ７８をスキップしてＳ１０に戻る。
【０１３７】
Ｓ７６では、ＣＰＵ３２は、メモリ３４内の参加リストから離脱機器のＭＡＣアドレスを消去して、更新済みの参加リストを生成する。
【０１３８】
次いで、Ｓ７８では、ＣＰＵ３２は、更新済みの参加リストをＷＦＤＮＷにブロードキャストする。参加リストは、Ｇ／Ｏ機器を介して、ＷＦＤＮＷに所属している各ＣＬ機器（即ちＭＦＰ１０とは異なる各ＣＬ機器であって、離脱機器以外の各ＣＬ機器）に送信される。この結果、上記の各ＣＬ機器は、参加リストを更新する（Ｓ６２）。
【０１３９】
ＣＰＵ３２は、Ｓ７０でＹＥＳと判断する毎に、Ｓ７２〜Ｓ７８を実行する。即ち、ＣＰＵ３２は、ＣＬ機器の生存確認を繰り返し実行する。例えば、Ｓ７０の判断を実行するためのインタバールがほぼ一定である状況では、ＣＰＵ３２は、ＣＬ機器の存在確認を定期的に実行する。Ｓ７８を終えると、Ｓ７０に戻る。
【０１４０】
上述したように、Ｓ７０〜Ｓ７８では、最先のＣＬ機器であるＭＦＰ１０が、ＣＬ機器の存在確認を実行する。換言すると、最先のＣＬ機器がＭＦＰ１０とは異なる他のＣＬ機器である場合には、上記の他のＣＬ機器が存在確認を実行する。但し、上記の他のＣＬ機器が、ＷＦＤＮＷから離脱する可能性がある。この場合、存在確認を実行するＣＬ機器がいなくなり、この結果、参加リストが更新されなくなる。このような事態が発生するのを抑制するために、ＣＰＵ３２は、後述のＳ８０及びＳ８２を実行する。
【０１４１】
Ｓ８０では、ＣＰＵ３２は、ＭＦＰ１０が上位２番目の状態（即ち、ＭＦＰ１０のＷＦＤ用ＭＡＣアドレスが、参加リストの上位２番目に記述されている状態）であるのか否かを判断する。ＣＰＵ３２は、ＭＦＰ１０が上位２番目の状態である場合には、Ｓ８０でＹＥＳと判断して、Ｓ８２に進む。一方において、ＣＰＵ３２は、ＭＦＰ１０が上位２番目の状態でない場合には、Ｓ８０でＮＯと判断して、Ｓ８２をスキップしてＳ４０に戻る。
【０１４２】
Ｓ８２では、ＣＰＵ３２は、ＣＬ存在確認信号を受信しない状態が所定時間継続したのか否かを判断する。最先のＣＬ機器がＷＦＤＮＷから離脱した場合には、最先のＣＬ機器からＣＬ存在確認信号が送信されない。この場合、ＣＰＵ３２は、上記の所定時間に亘ってＣＬ存在確認信号を受信しないために、Ｓ８２でＹＥＳと判断して、Ｓ７２〜Ｓ７８を実行する。
【０１４３】
即ち、ＣＰＵ３２は、最先のＣＬ機器に代わってＣＬ存在確認信号を送信し（Ｓ７２）、この結果、最先のＣＬ機器がＷＦＤＮＷから離脱したと判断する（Ｓ７４でＹＥＳ）。そして、ＣＰＵ３２は、メモリ３４内の参加リストから最先のＣＬ機器のＭＡＣアドレスを消去して、更新済みの参加リストを生成する（Ｓ７６）。この結果、更新済みの参加リストでは、ＭＦＰ１０のＷＦＤ用ＭＡＣアドレスが最上位に記述される。即ち、ＭＦＰ１０が最先のＣＬ機器になる。次いで、ＣＰＵ３２は、更新済みの参加リストをＷＦＤＮＷにブロードキャストする（Ｓ７８）。
【０１４４】
なお、ＭＦＰ５０及び携帯端末１１０は、ＭＦＰ１０と同様に、図１０のリスト管理処理を実行する。例えば、ＭＦＰ５０がリスト管理処理を実行する場合には、ＭＦＰ５０のＣＰＵが、ＣＰＵ３２の代わりに、図１０の各処理を実行する。各機器１０，５０，１１０がリスト管理処理を実行するので、各機器１０等がＣＬ機器である場合には、各機器１０等は、各機器１０等のＭＡＣアドレスが記述されている参加リストを所持することができる。
【０１４５】
（対応関係）
ＭＦＰ１０、ＰＣ１２０、携帯端末１１０、ＭＦＰ５０が、それぞれ、「通信装置」、「第１のデバイス」、「第２のデバイス」、「第３のデバイス」の一例である。メモリ３４が「メモリ」の一例であるが、「メモリ」は、「通信装置」とは別体で設けられていてもよい。第１のＷＦＤＮＷ、第２のＷＦＤＮＷ、第４のＷＦＤＮＷが、それぞれ、「第１の無線ネットワーク」、「第４の無線ネットワーク」、「第２の無線ネットワーク」の一例である。図７のケースＢ−１では、第５のＷＦＤＮＷが、「第５の無線ネットワーク」の一例であり、ＭＦＰ５０が、「対象デバイス」の一例である。図８のケースＢ−２では、第６のＷＦＤＮＷが、「第３の無線ネットワーク」及び「第５の無線ネットワーク」の一例であり、ＰＣ１２０が、「対象デバイス」の一例である。
【０１４６】
ＷＳ１、ＷＳ２が、それぞれ、「第１の通信情報」、「第２の通信情報」の一例であり、携帯端末１１０のＭＡＣアドレスが、「第２のデバイスの識別情報」の一例である。
【０１４７】
図９のＳ１０の処理を実行するＣＰＵ３２が、「第１の記憶制御部」の一例であり、Ｓ２９の処理を実行するＣＰＵ３２が、「第３の記憶制御部」の一例である。図９のＳ１２、Ｓ３０の処理を実行するＣＰＵ３２が、「確認部」の一例であり、Ｓ１８、Ｓ３６の処理を実行するＣＰＵ３２が「構築部」の一例であり、Ｓ２０の処理を実行するＣＰＵ３２が、「検索部」の一例であり、Ｓ２４の処理を実行するＣＰＵ３２が、「離脱部」、「通知部」の一例であり、Ｓ２８の処理を実行するＣＰＵ３２が、「確立部」の一例であり、Ｓ１６を実行するＣＰＵ３２が、「決定部」の一例である。また、図１０のＳ４８を実行するＣＰＵ３２が「第２の記憶制御部」の一例である。
【０１４８】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【０１４９】
（１）例えば、図５のケースＡにおいて、ＰＣ１２０（即ちＧ／Ｏ機器）は、ＰＣ１２０の電源をＯＦＦするための操作が加えられた場合に、第１のＷＦＤＮＷからＰＣ１２０が離脱することを示す離脱信号を、各ＣＬ機器１０，５０，１１０に送信してもよい。即ち、ＷＦＤＮＷのＧ／Ｏ機器は、ＷＦＤＮＷから離脱する場合に、離脱信号を、各ＣＬ機器に送信してもよい。この場合、各ＣＬ機器１０，５０，１１０は、ＰＣ１２０から離脱信号を受信する場合に、デバイス状態に移行してもよい。即ち、各機器１０，５０，１１０は、Ｇ／Ｏ存在確認信号（図４参照）を送信しなくても、第１のＷＦＤＮＷからＰＣ１２０が離脱することを知ることができる。本変形例では、離脱信号が受信される場合が、「第１の無線ネットワークを利用して、第１のデバイスと無線通信可能でないことが確認される場合」の一例である。
【０１５０】
（２）例えば、図７のケースＢ−１において、ＭＦＰ５０は、ＭＦＰ５０が無線通信可能であることを示す通信可能信号を、発信していてもよい。通信可能信号は、ＭＦＰ５０のＭＡＣアドレスを含んでいてもよい。ＭＦＰ１０のＣＰＵ３２は、通信可能信号が受信されることを監視していてもよい。そして、ＣＰＵ３２は、通信可能信号を受信することによって、ＭＦＰ５０を発見してもよい。即ち、ＣＰＵ３２は、ＭＦＰ５０を検索するために、Probe Request信号を発信しなくてもよい。本変形例では、通信可能信号が受信されることを監視する処理が、「検索部」の一例である。
【０１５１】
（３）図７のケースＢ−１において、ＭＦＰ１０のＣＰＵ３２は、ＭＦＰ５０との間で、再接続処理を実行した後、即ち、第４のＷＦＤＮＷが形成された後で、第３のＷＦＤＮＷの解散処理を実行してもよい。この場合、ＭＦＰ１０は、複数個のＷＦＤに所属するための構成、例えば、複数個の無線ＬＡＮＩ／Ｆを備えていてもよい。
【０１５２】
（４）上記の各実施例では、携帯端末１１０からＭＦＰ１０に印刷データが送信される例を説明している。ただし、上記の各実施例の技術は、印刷データとは異なるデータの通信にも適用可能である。例えば、ＭＦＰ１０から携帯端末１１０にスキャンデータが送信されてもよい。また、上記の各実施例の技術は、印刷データ及びスキャンデータとは異なる種類のデータ（例えば音声データ、動画データ等）の通信にも適用可能である。
【０１５３】
（５）ＣＬ機器（例えばＭＦＰ１０）が、他のＣＬ機器（例えば携帯端末１１０）のＭＡＣアドレスを取得するための手法は、図１０のリスト管理処理を実行する手法に限られない。例えば、携帯端末１１０及びＭＦＰ１０，５０がＣＬ機器として所属しているＷＦＤＮＷが形成されている場合に、ＭＦＰ１０のＣＰＵ３２は、所定のタイミング（例えば定期的に）で、ＭＡＣアドレスの要求パケットをＷＦＤＮＷにブロードキャストしてもよい。この場合、携帯端末１１０は、要求パケットを受信する場合に、携帯端末１１０のＭＡＣアドレスを含む応答パケットを、ＭＦＰ１０に送信する。これにより、ＣＰＵ３２は、Ｇ／Ｏ機器を介して、携帯端末１１０からＭＡＣアドレスを受信することができる。ＣＰＵ３２は、同様に、ＭＦＰ５０からＭＡＣアドレスを受信することができる。また、ＭＦＰ５０のＣＰＵも、所定のタイミング（例えば定期的に）で、ＭＡＣアドレスの要求パケットをＷＦＤＮＷにブロードキャストしてもよい。この場合、ＭＦＰ５０のＣＰＵは、Ｇ／Ｏ機器を介して、各ＣＬ機器１０，５０から、ＭＡＣアドレスを受信することができる。
【０１５４】
（６）「親局」は、ＷＦＤのＧ／Ｏ機器に限られず、無線ネットワークに属する各機器を管理する機器（例えば、無線ネットワークに属する各機器の間の無線通信を中継可能な機器）であれば、どのような機器であってもよい。また、「子局」は、ＷＦＤのＣＬ機器に限られず、無線ネットワークの親局から管理される状態であれば、どのような機器であってもよい。また、各機器は、ＡＰを介して通信を行う無線ＬＡＮ（例えば、通常のＷｉ−Ｆｉ（登録商標）通信ネットワーク）に接続できてもよい。この場合、ＡＰが「第１のデバイス」の一例であり、通常Ｗｉ−Ｆｉ通信ネットワークが「第１の無線ネットワーク」の一例であってもよい。また、この場合、ＡＰと通信できない状況で、ＭＦＰ５０をＧ／Ｏ機器とするＷＦＤＮＷを一時的に形成し、ＡＰと通信可能になった場合に、通常Ｗｉ−Ｆｉ通信ネットワークを新たに形成してもよい。
【０１５５】
（７）「通信装置」及び「第１のデバイス」〜「第３のデバイス」は、ＭＦＰ１０，５０、携帯端末１１０及びＰＣ１２０に限られず、他の通信装置（例えば、プリンタ、スキャナ、ＦＡＸ装置、コピー機、電話機、デスクトップＰＣ、サーバ等）であってもよい。
【０１５６】
（８）上記の実施例では、ＭＦＰ１０のＣＰＵ３２がメモリ３４内のプログラム（即ちソフトウェア）を実行することによって、図９，１０の各処理Ｓ１０〜Ｓ８２が実現される。これに代えて、図９，１０の各処理Ｓ１０〜Ｓ８２のうちの少なくとも１つは、論理回路等のハードウェアによって実現されてもよい。
【０１５７】
（９）例えば、図７のケースＢ−１において、ＭＦＰ１０のＣＰＵ３２は、ＭＦＰ５０を発見する場合、ＣＬ機器である携帯端末１１０に、ＭＦＰ５０が発見されたことを示す情報を、第４のＷＦＤＮＷを利用して送信してもよい。そして、ＣＰＵ３２は、Ｓ７１０の解散処理を実行してもよい。即ち、ＣＰＵ３２は、解散処理とは別に、ＭＦＰ５０が発見されたことを示す情報を、携帯端末１１０に送信してもよい。本変形例では、ＭＦＰ５０が発見されたことを示す情報の送信処理を実行するＣＰＵ３２が、「通知部」の一例である。
【０１５８】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【０１５９】
２：通信システム、１０，５０：ＭＦＰ、３０：制御部、３２：ＣＰＵ、３４：メモリ、６０：制御部、６２：ＣＰＵ、６４：メモリ、１１０：携帯端末
【図１】
2015056865.tif 000003
【図２】
2015056865.tif 000004
【図３】
2015056865.tif 000005
【図４】
2015056865.tif 000006
【図５】
2015056865.tif 000007
【図６】
2015056865.tif 000008
【図７】
2015056865.tif 000009
【図８】
2015056865.tif 000010
【図９】
2015056865.tif 000011
【図１０】
2015056865.tif 000012