(57)【要約】  オーセンティケータと、認証を求める複数の無線デバイスとの間でアドホック無線ネットワークを構成する方法は、無線デバイスをオーセンティケータとして割り当てる段階と、認証を求める第１デバイスがオーセンティケータへ送信した第１セットアップメッセージを受信する段階と、オーセンティケータと、認証を求める第１デバイスとの間の第１ハンドシェイク処理を開始する段階とを含む。方法はさらに、認証を求める第２デバイスがオーセンティケータへ送信した第２セットアップメッセージを、第１ハンドシェイク処理の完了前にオーセンティケータにより受信する段階を含む。方法はさらに、オーセンティケータと、認証を求める第２デバイスとの間の第２ハンドシェイク処理を、第１ハンドシェイク処理の完了前に開始する段階を含む。方法はさらに、第１ハンドシェイク処理を完了する段階と、第２ハンドシェイク処理を完了する段階と、を含む。【選択図】  図３
2010504055.tif 000002
【特許請求の範囲】
【請求項１】
オーセンティケータと、認証を求める複数の無線デバイスとの間でアドホック無線ネットワークを構成する方法であって、
無線デバイスを前記オーセンティケータとして割り当てる段階と、
認証を求める第１デバイスが前記オーセンティケータへ送信した第１セットアップメッセージを受信する段階と、
前記オーセンティケータと、認証を求める前記第１デバイスとの間の第１ハンドシェイク処理を開始する段階と、
認証を求める第２デバイスが前記オーセンティケータへ送信した第２セットアップメッセージを、前記第１ハンドシェイク処理の完了前に前記オーセンティケータにより受信する段階と、
前記オーセンティケータと、認証を求める前記第２デバイスとの間の第２ハンドシェイク処理を、前記第１ハンドシェイク処理の完了前に開始する段階と、
前記第１ハンドシェイク処理を完了する段階と、
前記第２ハンドシェイク処理を完了する段階と、を備える方法。
【請求項２】
前記オーセンティケータはレジストラを含み、認証を求める前記複数の無線デバイスは複数のエンローリーを含む、請求項１に記載の方法。
【請求項３】
前記複数のエンローリーは、３以上のエンローリーを含む、請求項２に記載の方法。
【請求項４】
前記オーセンティケータ、認証を求める前記第１デバイス、および認証を求める前記第２デバイスは、無線ゲームデバイスを含む、請求項１に記載の方法。
【請求項５】
前記オーセンティケータ、認証を求める前記第１デバイス、および認証を求める前記第２デバイスは、少なくとも携帯電話機、カメラ、プリンタ、ＭＰ３プレーヤ、またはＰＤＡを含む、請求項１に記載の方法。
【請求項６】
前記オーセンティケータは、認証を求める前記第１デバイスに関連付けられた第１状態マシンと、認証を求める前記第２デバイスに関連付けられた第２状態マシンとを保持する、請求項１に記載の方法。
【請求項７】
前記オーセンティケータは、前記第１ハンドシェイク処理と前記第２ハンドシェイク処理とに関する情報を保存するデータベースを保持する、請求項６に記載の方法。
【請求項８】
前記第１セットアップメッセージは、認証を求める前記第１デバイスで行われるユーザアクションに呼応して送信される、請求項１に記載の方法。
【請求項９】
前記ユーザアクションは、プッシュボタンコンフィギュレーション（ＰＢＣ）モードに関するボタン押下を含む、請求項８に記載の方法。
【請求項１０】
前記第１ハンドシェイク処理を開始する段階、および、前記第２ハンドシェイク処理を開始する段階は、前記オーセンティケータで行われる単一のユーザアクションに呼応して行われる、請求項１に記載の方法。
【請求項１１】
前記オーセンティケータで行われる前記単一のユーザアクションは、ボタン押下を含む、請求項１０に記載の方法。
【請求項１２】
前記第１セットアップメッセージはＥＡＰメッセージを含み、前記第２セットアップメッセージはＥＡＰメッセージを含む、請求項１に記載の方法。
【請求項１３】
前記第２ハンドシェイク処理を完了する段階は、前記第１ハンドシェイク処理を完了する段階の後に行われる、請求項１に記載の方法。
【請求項１４】
前記アドホック無線ネットワークはＩＥＥＥ８０２．１１規格に準拠している、請求項１に記載の方法。
【請求項１５】
前記オーセンティケータはさらに、認証を求めるデバイスとして振舞う、請求項１に記載の方法。
【請求項１６】
認証を求める前記第１デバイス、および、認証を求める前記第２デバイスは、さらにオーセンティケータとして振舞う、請求項１に記載の方法。
【請求項１７】
認証を求める他の複数の無線デバイスとの間でアドホック無線ネットワークを構成する無線デバイスであって、
前記無線デバイスは、
認証を求める第１デバイスが前記無線デバイスへ送信した第１セットアップメッセージを受信する第１ポートと、
前記無線デバイスと、認証を求める前記第１デバイスとの間で第１ハンドシェイク処理を開始する第１プロセッサと、
認証を求める第２デバイスが前記無線デバイスへ送信した第２セットアップメッセージを、前記第１ハンドシェイク処理の完了前に受信する第２ポートと、
前記無線デバイスと、認証を求める前記第２デバイスとの間の第２ハンドシェイク処理を、前記第１ハンドシェイク処理の完了前に開始する第２プロセッサと、
前記第１ハンドシェイク処理を完了する第３プロセッサと、
前記第２ハンドシェイク処理を完了する第４プロセッサと、を備える無線デバイス。
【請求項１８】
前記無線デバイスはレジストラを含み、認証を求める前記他の複数の無線デバイスは複数のエンローリーを含む、請求項１７に記載の無線デバイス。
【請求項１９】
前記複数のエンローリーは、３以上のエンローリーを含む、請求項１８に記載の無線デバイス。
【請求項２０】
前記無線デバイス、認証を求める前記第１デバイス、および認証を求める前記第２デバイスは、無線ゲームデバイスを含む、請求項１７に記載の無線デバイス。
【請求項２１】
前記無線デバイス、認証を求める前記第１デバイス、および認証を求める前記第２デバイスは、少なくとも携帯電話機、カメラ、プリンタ、ＭＰ３プレーヤ、またはＰＤＡを含む、請求項１７に記載の無線デバイス。
【請求項２２】
認証を求める前記第１デバイスに関連付けられた第１状態マシンと、認証を求める前記第２デバイスに関連付けられた第２状態マシンとをさらに備える、請求項１７に記載の無線デバイス。
【請求項２３】
前記第１ハンドシェイク処理と前記第２ハンドシェイク処理とに関する情報を保存するデータベースをさらに備える、請求項２２に記載の無線デバイス。
【請求項２４】
認証を求める前記第１デバイスは、トリガデバイスを含む、請求項１７に記載の無線デバイス。
【請求項２５】
前記トリガデバイスは、押しボタンを含む、請求項２４に記載の無線デバイス。
【請求項２６】
単一のユーザアクションを受け取るトリガデバイスをさらに備える、請求項１７に記載の無線デバイス。
【請求項２７】
前記トリガデバイスは、押しボタンを含む、請求項２６に記載の無線デバイス。
【請求項２８】
前記第１セットアップメッセージはＥＡＰメッセージを含み、前記第２セットアップメッセージはＥＡＰメッセージを含む、請求項１７に記載の無線デバイス。
【請求項２９】
前記第２ハンドシェイク処理の完了は、前記第１ハンドシェイク処理の完了の後に行われる、請求項１７に記載の無線デバイス。
【請求項３０】
前記アドホック無線ネットワークはＩＥＥＥ８０２．１１規格に準拠している、請求項１７に記載の無線デバイス。
【請求項３１】
前記第１ポートおよび前記第２ポートは、同一のポートである、請求項１７に記載の無線デバイス。
【請求項３２】
前記第１プロセッサ、前記第２プロセッサ、前記第３プロセッサ、および前記第４プロセッサは、同一のプロセッサである、請求項１７に記載の無線デバイス。
【請求項３３】
認証を求める複数の無線デバイス間でアドホック無線ネットワークを構築する方法であって、
１つの無線デバイスをオーセンティケータとして選択する段階と、
前記オーセンティケータで１以上のビーコンを生成する段階と、
タイマの値が所定時間未満であると決定する段階と、
認証を求める前記複数の無線デバイスのうち第１デバイスからの要求を受信する段階と、
エンローリーカウントが所定の最大値未満であると決定する段階と、
前記オーセンティケータと前記第１デバイスとの間で第１ハンドシェイク処理を開始する段階と、
前記エンローリーカウントを１増分する段階と、
前記タイマの値が前記所定時間未満であると決定する段階と、
認証を求める前記複数の無線デバイスのうち第２デバイスからの要求を受信する段階と、
前記エンローリーカウントが前記所定の最大値未満であると決定する段階と、
前記オーセンティケータと前記第２デバイスとの間で第２ハンドシェイク処理を開始する段階と、を備える、方法。
【請求項３４】
前記第１ハンドシェイク処理を完了する段階と、
前記第２ハンドシェイク処理を完了する段階と、をさらに備える、請求項３３に記載の方法。
【請求項３５】
前記第２ハンドシェイク処理を完了する段階は、前記第１ハンドシェイク処理を完了する段階の後に行われる、請求項３４に記載の方法。
【請求項３６】
前記オーセンティケータはレジストラを含む、請求項３３に記載の方法。
【請求項３７】
前記複数の無線デバイスは、３以上の無線デバイスを含む、請求項３３に記載の方法。
【請求項３８】
前記複数の無線デバイスは、無線ゲームデバイスを含む、請求項３３に記載の方法。
【請求項３９】
前記複数の無線デバイスは、少なくとも携帯電話機、カメラ、プリンタ、ＭＰ３プレーヤ、またはＰＤＡを含む、請求項３３に記載の方法。
【請求項４０】
前記オーセンティケータは、前記第１デバイスに関連付けられた第１状態マシンと、前記第２デバイスに関連付けられた第２状態マシンとを保持する、請求項３３に記載の方法。
【請求項４１】
前記オーセンティケータは、前記第１ハンドシェイク処理と前記第２ハンドシェイク処理とに関する情報を保存するデータベースを保持する、請求項４０に記載の方法。
【請求項４２】
前記第１デバイスからの前記要求はＥＡＰメッセージを含み、前記第２デバイスからの前記要求はＥＡＰメッセージを含む、請求項３３に記載の方法。
【請求項４３】
前記所定の最大値は前記オーセンティケータにより決定される、請求項３３に記載の方法。
【請求項４４】
前記アドホック無線ネットワークはＩＥＥＥ８０２．１１規格に準拠している、請求項３３に記載の方法。
【請求項４５】
前記オーセンティケータはさらに、認証を求める無線デバイスとして振舞う、請求項３３に記載の方法。
【請求項４６】
認証を求める前記第１デバイスはさらに、オーセンティケータとして振舞う、請求項３３に記載の方法。
【請求項４７】
認証を求める前記第２デバイスはさらに、オーセンティケータとして振舞う、請求項３３に記載の方法。
【請求項４８】
複数の無線デバイスの中から選択され、認証を求める他の無線デバイスとの間でアドホック無線ネットワークを構築する認証装置であって、
１以上のビーコンを生成する第１プロセッサと、
タイマの値が所定時間未満であると決定する第１決定モジュールと、
認証を求める前記他の無線デバイスのうち第１デバイスからの要求を受信する第１ポートと、
メモリに記憶されているエンローリーカウントが所定の最大値未満であると決定する第２プロセッサと、
前記認証装置と前記第１デバイスとの間で第１ハンドシェイク処理を開始する第３プロセッサと、
前記メモリに記憶されている前記エンローリーカウントを１増分するメモリコントローラと、
前記タイマの値が前記所定時間未満であると決定する第２決定モジュールと、
認証を求める前記他の無線デバイスのうち第２デバイスからの要求を受信する第２ポートと、
前記エンローリーカウントが前記所定の最大値未満であると決定する第４プロセッサと、
前記認証装置と前記第２デバイスとの間で第２ハンドシェイク処理を開始する第５プロセッサと、を備える認証装置。
【請求項４９】
前記第３プロセッサはさらに、前記第１ハンドシェイク処理を完了し、
前記第５プロセッサはさらに、前記第２ハンドシェイク処理を完了する、請求項４８に記載の認証装置。
【請求項５０】
前記第２ハンドシェイク処理の完了は、前記第１ハンドシェイク処理の完了の後に行われる、請求項４９に記載の認証装置。
【請求項５１】
レジストラをさらに備える、請求項４８に記載の認証装置。
【請求項５２】
前記複数の無線デバイスは、３以上のデバイスを含む、請求項４８に記載の認証装置。
【請求項５３】
前記複数の無線デバイスは、無線ゲームデバイスを含む、請求項４８に記載の認証装置。
【請求項５４】
前記複数の無線デバイスは、少なくとも携帯電話機、カメラ、プリンタ、ＭＰ３プレーヤ、またはＰＤＡを含む、請求項４８に記載の認証装置。
【請求項５５】
前記第１デバイスに関連付けられた第１状態マシンと、前記第２デバイスに関連付けられた第２状態マシンとをさらに備える、請求項４８に記載の認証装置。
【請求項５６】
前記第１ハンドシェイク処理と前記第２ハンドシェイク処理とに関する情報を保存するデータベースをさらに備える、請求項５５に記載の認証装置。
【請求項５７】
前記第１デバイスからの前記要求はＥＡＰメッセージを含み、前記第２デバイスからの前記要求はＥＡＰメッセージを含む、請求項４８に記載の認証装置。
【請求項５８】
前記所定の最大値は前記認証装置により決定される、請求項４８に記載の認証装置。
【請求項５９】
前記アドホック無線ネットワークはＩＥＥＥ８０２．１１規格に準拠している、請求項４８に記載の認証装置。
【請求項６０】
前記第１ポートおよび前記第２ポートは、同一のポートである、請求項４８に記載の認証装置。
【請求項６１】
前記第１プロセッサ、前記第２プロセッサ、前記第３プロセッサ、前記第４プロセッサ、および前記第５のプロセッサは、同一のプロセッサである、請求項４８に記載の認証装置。
【請求項６２】
前記第１決定モジュールおよび前記第２決定モジュールは、同一の決定モジュールである、請求項４８に記載の認証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、米国連邦法典３５セクション１１９（ｅ）に基づき「Adhoc Simple Config,」なる名称の２００６年９月１８日出願の米国仮出願番号第６０／８２６，０３４の恩恵を享受しており、この出願の開示の全体をここに参照として組み込む。
【背景技術】
【０００２】
本発明は、無線通信ネットワークに係り、より詳しくは、アドホック無線フィデリティネットワークを構築するプロトコルに係る。
【０００３】
無線ネットワークは公知であり、益々データ交換に利用されるようになっている。そのような公知の無線ローカルエリアネットワーク（ＷＬＡＮ）規格の１つが、ＩＥＥＥ８０２．１１規格であり、インフラストラクチャＷＬＡＮについて通信モードおよび関連構成プロトコルを定義する。
【０００４】
インフラストラクチャ無線ネットワークには、レジストラ、アクセスポイント（ＡＰ）およびエンローリーという、３つの論理コンポーネントが存在する。ここではオーセンティケータおよび認証を求めるデバイスという用語を、レジストラおよびエンローリーという用語に替わる記述語として利用する。図１Ａを参照すると、レガシーＡＰ１０との間で無線通信リンクを構築するには、クライアント１２は先ず、外部レジストラ１４からネットワーク証明書を取得する。続いて、クライアント１２は、クライアント１２が外部レジストラ１４から取得したネットワーク証明書を用いて、レガシーＡＰ１０へのリンクを構築する。
【０００５】
図１Ｂを参照すると、ＡＰ２０は、エンベデッドレジストラを有すると示されている。ＡＰ２０との通信リンクを構築するのに、クライアント２２は先ず、ＡＰ２０のエンベデッドレジストラからネットワーク証明書を、８０２．１１インフラストラクチャネットワークを介して拡張認証プロトコル（ＥＡＰ）を利用して取得する。続いて、取得されたネットワーク証明書を用いて、クライアント２２はＡＰ２０に無線接続する。
【０００６】
図１Ｃを参照すると、ＡＰ３０との通信リンクを構築するのに、クライアント３２は先ず、ＡＰ３０を介してＥＡＰを用いて、ネットワーク証明書を取得する。ＡＰ３０は、ＵｐｎＰ（登録商標）フォーラムが定義するユニバーサルプラグアンドプレイ（ＵｐｎＰ）プロトコルを用いて、クライアント３２のＥＡＰメッセージをレジストラ３４へ中継する。次に、レジストラ３４から供給されたネットワーク証明書を用いて、クライアント３２は、ＡＰ３０との通信リンクを構築する。
【０００７】
概して携帯電子デバイス用には、インフラストラクチャネットワークよりもアドホックネットワークのほうが適している。しかし、多数のデバイスを含むネットワークを構築する現行の方法には、使い勝手の面で問題がある。このようなデバイスを３つ以上用いてアドホック、ピアツーピア、メッシュ、または他の無線ネットワークを形成して、アクセスポイントを利用せずにデータ交換を可能とすることが望まれる。
【発明の開示】
【０００８】
本発明の１実施形態においては、オーセンティケータと、認証を求める複数の無線デバイスとの間でアドホック無線ネットワークを構成する方法が提供される。方法は、無線デバイスをオーセンティケータとして割り当てる段階と、認証を求める第１デバイスがオーセンティケータへ送信した第１セットアップメッセージを受信する段階と、オーセンティケータと、認証を求める第１デバイスとの間の第１ハンドシェイク処理を開始する段階とを含む。方法はさらに、認証を求める第２デバイスがオーセンティケータへ送信した第２セットアップメッセージを、第１ハンドシェイク処理の完了前にオーセンティケータにより受信する段階を含む。方法はさらに、オーセンティケータと、認証を求める第２デバイスとの間の第２ハンドシェイク処理を、第１ハンドシェイク処理の完了前に開始する段階を含む。方法はさらに、第１ハンドシェイク処理を完了する段階と、第２ハンドシェイク処理を完了する段階と、を含む。
【０００９】
本発明の別の実施形態においては、認証を求める他の複数の無線デバイスとの間でアドホック無線ネットワークを構成する、オーセンティケータとして割り当てられた無線デバイスが提供される。無線デバイスは、認証を求める第１デバイスが無線デバイスへ送信した第１セットアップメッセージを受信する第１ポートを有し、無線デバイスと、認証を求める第１デバイスとの間で第１ハンドシェイク処理を開始する。無線デバイスはさらに、認証を求める第２デバイスが無線デバイスへ送信した第２セットアップメッセージを、第１ハンドシェイク処理の完了前に受信する第２ポートを有する。無線デバイスはさらに、無線デバイスと、認証を求める第２デバイスとの間の第２ハンドシェイク処理を、第１ハンドシェイク処理の完了前に開始する第２プロセッサを有する。さらに、無線デバイスは、第１ハンドシェイク処理を完了する第３プロセッサと、第２ハンドシェイク処理を完了する第４プロセッサと、を有する。
【００１０】
本発明のまた別の実施形態においては、無線デバイスと、認証を求める複数の無線デバイスとの間でアドホック無線ネットワークを構築する装置が提供される。装置は、無線デバイスをオーセンティケータとして割り当てる手段と、認証を求める第１デバイスがオーセンティケータへ送信した第１セットアップメッセージを受信する手段と、オーセンティケータと、認証を求める第１デバイスとの間の第１ハンドシェイク処理を開始する手段と、を有する。装置はさらに、認証を求める第２デバイスがオーセンティケータへ送信した第２セットアップメッセージを、第１ハンドシェイク処理の完了前にオーセンティケータにより受信する手段を有する。装置はさらに、オーセンティケータと、認証を求める第２デバイスとの間の第２ハンドシェイク処理を、第１ハンドシェイク処理の完了前に開始する手段を有する。さらに、装置は、第１ハンドシェイク処理を完了する手段と、第２ハンドシェイク処理を完了する手段とを含む。
【００１１】
本発明の１つの特定の実施形態によると、認証を求める複数の無線デバイス間でアドホック無線ネットワークを構築する方法が提供される。方法は、１つの無線デバイスをオーセンティケータとして選択する段階と、オーセンティケータで１以上のビーコンを生成する段階と、タイマの値が所定時間未満であると決定する段階と、認証を求める複数の無線デバイスのうち第１デバイスからの要求を受信する段階と、を含む。方法はさらに、エンローリーカウントが所定の最大値未満であると決定する段階と、オーセンティケータと第１デバイスとの間で第１ハンドシェイク処理を開始する段階と、エンローリーカウントを１増分する段階と、を含む。方法はさらに、タイマの値が所定の値未満であると決定する段階と、認証を求める複数の無線デバイスのうち第２デバイスからの要求を受信する段階と、エンローリーカウントが所定の最大値未満であると決定する段階と、を含む。さらに、方法は、オーセンティケータと第２デバイスとの間で第２ハンドシェイク処理を開始する段階を含む。
【００１２】
本発明の別の特定の実施形態においては、複数の無線デバイスの中から選択され、認証を求める他の無線デバイスとの間でアドホック無線ネットワークを構築する認証装置が提供される。認証装置は、１以上のビーコンを生成する第１プロセッサと、タイマの値が所定時間未満であると決定する第１決定モジュールと、認証を求める他の無線デバイスのうち第１デバイスからの要求を受信する第１ポートと、を含む。認証装置はさらに、メモリに記憶されているエンローリーカウントが所定の最大値未満であると決定する第２プロセッサと、認証装置と第１デバイスとの間で第１ハンドシェイク処理を開始する第３プロセッサと、メモリに記憶されているエンローリーカウントを１増分するメモリコントローラと、を含む。認証装置はさらに、タイマの値が所定の値未満であると決定する第２決定モジュールと、認証を求める他の無線デバイスのうち第２デバイスからの要求を受信する第２ポートと、エンローリーカウントが所定の最大値未満であると決定する第４プロセッサと、認証装置と第２デバイスとの間で第２ハンドシェイク処理を開始する第５プロセッサと、を含む。
【００１３】
本発明のまた別の特定の実施形態においては、認証を求める複数の無線デバイス間でアドホック無線ネットワークを構築する認証装置が提供される。認証装置は、１つの無線デバイスをオーセンティケータとして選択する手段と、オーセンティケータで１以上のビーコンを生成する手段と、タイマの値が所定時間未満であると決定する手段と、認証を求める複数の無線デバイスのうち第１デバイスからの要求を受信する手段と、を含む。認証装置はさらに、エンローリーカウントが所定の最大値未満であると決定する手段と、オーセンティケータと第１デバイスとの間で第１ハンドシェイク処理を開始する手段と、エンローリーカウントを１増分する段階と、を含む。認証装置はさらに、タイマの値が所定の値未満であると決定する手段と、認証を求める複数の無線デバイスのうち第２デバイスからの要求を受信する手段と、エンローリーカウントが所定の最大値未満であると決定する手段と、を含む。さらに、認証装置は、オーセンティケータと第２デバイスとの間で第２ハンドシェイク処理を開始する手段を含む。
【００１４】
本発明によれば従来の技術に比して多くの利点がある。例えば、本発明の実施形態は、家庭用電化製品の利便性を向上させる。さらに、幾らかの実施形態では、バッテリ消費の低減が実現される。実施形態によっては、これら利点の１以上、および他の利点が実現される。これらおよびその他の利点は、本明細書を通じて、より詳しくは以下の図面との関連で詳述される。
【図面の簡単な説明】
【００１５】
【図１】（Ａ）  従来のインフラストラクチャ無線ネットワークの様々な論理コンポーネントを示す。    （Ｂ）  従来のインフラストラクチャ無線ネットワークの様々な論理コンポーネントを示す。    （Ｃ）  従来のインフラストラクチャ無線ネットワークの様々な論理コンポーネントを示す。
【００１６】
【図２】本発明の１実施形態による、アドホックネットワークを構築するよう構成される３つのデバイスを示す。
【００１７】
【図３】本発明の１実施形態による、ノードの構成ステータスの構築と関連した例示的な状態遷移表である。
【００１８】
【図４】本発明の１実施形態によるエンローリーおよびレジストラの間のハンドシェイクシーケンスを示す。
【００１９】
【図５】本発明の１実施形態による、レジストラアプリケーションと関連した例示的な状態遷移表である。
【００２０】
【図６】本発明の１実施形態による、多数の状態マシンを有するレジスタの簡略図である。
【００２１】
【図７】本発明の１実施形態による、同時にオーセンティケータに登録される２つのエンローリーデバイス間のアドホック無線ネットワークを形成すべく実行されるステップの例示的なフローチャートである。
【００２２】
【図８】本発明の１実施形態による、実行されることで１対のデバイス間のアドホック無線ネットワークを形成するステップの例示的なフローチャートである。
【００２３】
【図９】本発明の１実施形態による、既存のアドホック無線ネットワークに参加するべく、エンローリーが行うステップのフローチャートである。
【００２４】
【図１０】本発明の１実施形態による、既存のアドホック無線ネットワークに同時に参加すべく多数のエンローリーが実行するステップのフローチャートである。
【００２５】
【図１１】本発明の１実施形態による、エンローリーおよび／またはレジストラとして構成することのできるデバイスの様々なハードウェアブロックを示す。
【発明を実施するための最良の形態】
【００２６】
本発明の１実施形態においては、アドホックＷＬＡＮは、携帯情報端末（ＰＤＡ）、デジタルカメラ、電話機、ビデオゲームコンソール等の３以上のデバイス間に構築される。本発明のアドホックＷＬＡＮ（以後代わりにアドホックネットワークと称される）の動作を統括するプロトコルに則り、ネットワークの各デバイスは、エンローリー（クライアント）であってもよいし、レジストラであってもよい。別の言い方をすると、本発明においては、各デバイスは、レジストラ動作モードおよびエンローリー動作モード両方をサポートするよう構成可能である。以下により完全に記載するように、多数のエンローリーが同時にレジストラとのセットアップ交渉またはハンドシェイク処理を行うことができる。
【００２７】
図２は、本発明の１実施形態による、データ交換をすべくアドホックネットワークを構築またはアドホックネットワークに参加するよう構成される３つのデバイス２００、２５０、および２６０を示す。各デバイス２００、２５０および２６０は、当初アイドルモード（今後「節電モード」とも称する）であることでバッテリ消費を低減する、あるいは、さもなくばＯＦＦにされている、と仮定する。これらデバイス各々のハード／ソフトボタン（例えばデバイス２００のボタン２０２、デバイス２５０のボタン２５２、およびデバイス２６０のボタン２６２）の押下などの、ユーザがトリガするイベントに応じて、これらデバイスはアイドルモードを退出する、あるいは、さもなくばＯＮにされる。１実施形態においては、もし既存の節電モードが所定の期間内に（例えば５秒以内に）、ボタン２０２（２５２、２６２）が再度押されると、デバイス２００（２５０、２６０）はエンローリーとして構成され（つまり、エンローリーの役割を果たし）、さもなくばデバイス２００（２５０、２６０）はレジストラとして構成される（つまり、レジストラの役割を果たす）。別の実施形態においては、もし節電モードを終了してから所定の期間内に（例えば５秒以内に）、ボタン２０２（２５２、２６２）が再度押されると、デバイス２００（２５０、２６０）はレジストラの役割を果たし、さもなくばデバイス２００（２５０、２６０）はエンローリーの役割を果たす。これら３つのデバイス間でアドホックネットワークを構築すべく、３つのうちいずれかがレジストラとして構成され、他の２つがエンローリーとして構成される。デバイス２００がレジストラとして構成され、デバイス２５０および２６０がエンローリーとして構成される例を考える。レジストラ２００がひとたびエンローリー２５０および２６０により発見されて、エンローリー２５０および２６０がレジストラ２００への登録を済ませると、エンローリー２５０および２６０は、レジストラ２００から取得したネットワーク証明書を用いて無線アドホックネットワークを介した通信を構築することでセキュアにデータ交換する。
【００２８】
図２に示す実施形態においては、デバイス２００、２５０および２６０に銘々の節電モードを退出させるのに利用されるのと同じキーまたはボタンをさらに利用して、これらデバイスがエンローリーまたはレジストラいずれの役割を果たしているかを判断する。他の実施形態においては、デバイスを強制的に節電モードから退出させるのに利用されるキーは、レジストラおよびエンローリー間でデバイスの構成を選択するのに用いられるものとは異なっていてもよい。１実施形態においては、ひとたびデバイスがレジストラとして構成されると、エンローリーになるには、該デバイスをＯＦＦにしてその後にＯＮにされる必要がある。幾らかの実施形態においては、レジストラが既知の期間内にエンローリーを検出しない場合、節電モードに戻ることもあり、またはタイムアウトの後にエンローリーになることもある。さらに、幾らかの実施形態においては、ユーザがトリガする単一のアクションに応じて、多数のエンローリーが、レジストラに登録した後でアドホックネットワークに参加することもある。故に、図２には３つのデバイスを示すが、本例は本発明の実施形態を制限する意図は持たない。マルチプレーヤゲームアプリケーションなどの典型的なアプリケーションにおいては、アドホックネットワークに参加するデバイス数は、３以上であってよい（例えば４、８、１６、またはそれ以上などであってよい）。
【００２９】
幾らかの実施形態においては、ユーザがトリガするイベントに呼応してデバイスが節電モードから退出した後で、このユーザは、デバイスに配設されたユーザインタフェースを介して、レジストラ構成モードおよびエンローリー構成モードの間で選択を行うオプションを提示される。例えば、デバイスがユーザインタフェース（例えば液晶ディスプレイ（ＬＣＤ）パネル）を有する場合、レジストラ構成モードおよびエンローリー構成モードの間で選択を行うオプションは、ＬＣＤパネル上のプロンプトとしてユーザに提示される。ディスプレイされたエントリのうちいずれかにカーソルを動かすことで、ユーザは所望の動作モードを選択する。同様にして、エンローリーも、節電モードを終了して立ち上がり、レジストラを探し始める。
【００３０】
図３は、本発明の１実施形態による、節電モードから退出した後の、デバイスの構成ステータスの構築と関連した例示的な状態遷移表３００である。デバイスは節電モード中アイドル状態３０２のままである。節電モードを退出すると、デバイスに配設された無線モジュールが起動されて、待ち状態３０４への遷移を行う。待ち状態３０４にある間、もし所定の期間内にユーザがハード／ソフトキーの押下または音声コマンドの発行などによりイベントをトリガすると、デバイスは、エンローリーとして構成される、つまりエンローリーとしての役割を果たし、エンローリー発見段階（状態）３０６に入り、レジストラを求めてスキャンする。一方でもし、ユーザがトリガするイベントがないまま所定の期間が過ぎたら、状態３１２へ遷移してデバイスをレジストラとして構成して、自身のアドホックネットワークを開始させる。レジストラは、リセット信号に呼応してアイドルモード３０２に遷移して戻る。
【００３１】
状態３０６中にエンローリーがレジストラを発見すると、エンローリー登録段階３０８へ遷移して、レジストラへの登録処理を開始する。一方でもしエンローリーが状態３０６中にレジストラを発見しなかった場合、タイムアウト信号ＴＭＯを発行する。エンローリーは、タイムアウト信号を発行する前に、所定回数レジストラを発見することを試みるよう構成されてもよい。所定回数のレジストラ発見の試みが不成功に終わった場合、エンローリーは自身のアドホックネットワークを作成して、レジストラアプリケーションを開始してよい。
【００３２】
状態３０８においてエンローリー登録が成功した場合、エンローリーは状態３１０に遷移して、成功した拡張認証プロトコル（ＥＡＰ）ハンドシェイクからエンローリーが取得した証明書を用いてアドホックネットワークへの参加を試み、これは特定の登録プロトコル交換であってよい。反対に、状態３０８においてエンローリー登録が不成功であった場合、エンローリーは待ち状態３０４へ遷移して戻る。エンローリーは、状態３１０にある間に自身のレジストラアプリケーションを開始することもできる。状態３１０の動作に続いて、エンローリーはリセット信号に呼応してアイドル状態３０２へ遷移して戻る。
【００３３】
幾らかのシステムにおいては、エンローリーおよびレジストラの間のセキュアな接続モードを構築するべく、ユーザはレジストラ上でエンローリーと関連付けられたＰＩＮを入力せねばならない。これが入力されると、エンローリーおよびレジストラは、接続構築処理を進める。このようなシステムにおいては、レジストラが潜在的なエンローリーに対して送信したビーコンは、レジストラがＰＩＮモードを介してのみ通信する旨、そしてレジストラがアドホックネットワークセッションの押しボタンモードには参加しない旨を伝える情報を含む。また別のシステムにおいては、エンローリーおよびレジストラの間の接続は、エンローリーによる光学信号（例えばＬＥＤフラッシュ）、音声信号（例えば音声ビープ）、ＲＦ信号等を介したＰＩＮのレジストラへの中継に応じて、セキュアプッシュボタンコンフィギュレーション（ＳＰＢＣ）モードを用いて構築される。言い換えると、このような実施形態においては、エンローリーは、ＰＩＮをレジストラに対して無線で送信するので、ユーザによる手動のＰＩＮ入力の必要がない。ＳＰＢＣモードにおいては、セキュリティ／認証情報を交渉データに導入して、例えば視距離にあるデバイスのみと交渉させるようにしてもよい。ＳＰＢＣモードの他のアプリケーションにおいては、レジストラまたはエンローリーが、ハンドシェイクに１つの認証情報または共有秘密情報を導入して、ある特定のデバイスのみが（例えば、視距離にあるデバイス）認証情報を取得できるようにしてもよい。
【００３４】
幾らかの無線規格では、デバイスをアドホックネットワークへ参加させるための各エンローリーのネットワークへの追加は、エンローリーがレジストラとのセットアップ交渉を連続的に行うことにより行われる。このような例示的登録処理は、２００７年５月４日提出の米国特許出願番号第１１／８００，１６６（代理人整理番号ＭＰ１２２９）に記載されており、これは本願と同一出願人によるものなので、ここに全ての目的で参照として組み込む。例えば、図２を参照すると、連続登録処理においては、エンローリー２５０は、エンローリー２６０がネットワークに参加した後で、ネットワークに参加してよい。セキュリティおよびその他の理由から、プロトコルのなかには、多数のエンローリーの同時追加を行わず、アドホックネットワークへの追加を一度に１つのデバイスにしか許可しないものもある。このようなプロトコルにおいては、第１エンローリーが登録されている間は、第２セットアップメッセージの受領はセキュリティ違反として解釈され、第２セットアップメッセージと第１エンローリーとは拒絶される。このような連続登録処理を利用するプロトコルにおいては、Ｍ個のエンローリーデバイスをネットワークに追加するには、ユーザはアクション（例えば、レジストラデバイスのボタンを押下するアクション、あるいは別のアクション）をＭ回行う必要がある。このような登録処理はレジストラにとっては単調で冗長である。
【００３５】
このような従来の手順を利用することは、各デバイスで行われた単一のユーザアクション（例えばボタンの押下）に呼応して多数のデバイスをアドホックネットワークに迅速に追加することが望ましいマルチプレーヤゲームのアプリケーションなど、家庭用電化製品（ＣＥ）のアプリケーションの種類によっては好ましくない。従って本発明の実施形態では、多数のデバイス間の無線ネットワーク構築に利用されるステップ数を低減することで、ＣＥデバイスの利便性を向上させる。さらに、このようなデバイスを追加するのに費やされる全時間量も低減されるので、ユーザにとって利便性が向上する。ＡＰの利用可能性は、概してＣＥデバイスに保証されており、アドホックネットワークの利用は、ユーザにとって多くのＣＥアプリケーションにおいて有用である。
【００３６】
本発明の実施形態は、レジストラデバイスで行われた単一のユーザアクションに呼応して、２以上のエンローリーデバイスが同時にアドホックネットワークに参加できる方法およびシステムを提供する。同時に追加できるエンローリーの数は、プログラム可能な機能であり、適宜特定のアプリケーションに相応しく柔軟性を持たせることができる。多数のエンローリーの同時追加に関してエンローリーの数およびその他の基準は、幾らかの実施形態においてはレジストラでローカルに割り当てられる。ここで記載するデバイスも、レガシーデバイスに後方互換性を有する。
【００３７】
一例としては、多数のＣＥデバイスが無線アドホックネットワークと通信するアプリケーションにおいては（例えば、マルチプレーヤゲームに４、８、１６、またはそれ以上の数のゲームデバイスが参加するアプリケーションなど）、多数のデバイスを同時にネットワークに参加させることができることが望ましい。ゲームアプリケーションを考えた場合には、ゲームに保存される情報を潜在的なハッカーが狙う可能性は限られているので、ネットワークに関するセキュリティの問題は最小限である。一方、ユーザが概して最小限の努力でネットワークへの参加を希望する、という観点からすると、使い易さは重要なデザインの基準である。発明者達は、多数のユーザ間のアドホックネットワーク構築を連続して行うことは、ゲーム環境におけるユーザのゲーム体験を損なうことになると判断した。
【００３８】
幾らかの実施形態においては、多数のエンローリーの同時登録を行うべく、レジストラの役割のみを変更して、エンローリーの動作は変更しない。その結果、単一のハンドシェイクセッションにおいて、多数のエンローリーがレジストラと通信することができるようになる。概して、多数のエンローリーの各々の正体は、ハンドシェイクメッセージに含まれる情報（例えば、エンローリーデバイスのアドレス）により定義される。
【００３９】
所定のローカルＰＩＮを利用することでデバイス群がネットワークに登録または参加することもできる。ＰＢＣモードを利用する幾らかのシステムにおいては、固定ＰＩＮ値（ゼロなど）を利用してネットワークに参加する多数のデバイス間で秘密を共有しないこともある。このため、このデフォルトおよび潜在的に公知のＰＩＮ値の利用によるセキュリティは限られている。本発明の実施形態も、ＰＢＣモードプロトコルを行うことはできるが、特定のアプリケーションに関連付けられるＰＩＮはゼロではない。例えば、マルチプレーヤゲームアプリケーションにおいては、所定の「ゲームＩＤ」をＰＩＮとして利用して、同じゲームをする他のデバイスが同時にアドホックネットワークへ登録することを許可する。このような「ゲームＩＤ」の利用により、従来の方法に比して、多数のデバイスが同時に登録する際のセキュリティを幾ばくか向上させることができる。さらに、「ゲームＩＤ」に基づいて、レジストラは、ネットワークへの参加を許されるエンローリーの最大数を決定することができる。幾らかのアプリケーションにおいては、レジストラの特定のアプリケーションの知識に基づいて、不正なエンローリーの検出も可能である。例えば、マルチプレーヤゲームのレジストラは、正当なプレーヤ数を先験的に感知しており、この情報を利用して不正なエンローリーを検出してもよい。
【００４０】
図４は、本発明の１実施形態による、エンローリーおよびレジストラの間のハンドシェイクシーケンスを部分的に示す。ハンドシェイクシーケンスは、登録段階に続く発見段階を含む。ハンドシェイクの登録段階は、インフラストラクチャ無線ネットワークのものに類似している。発見段階を、無線ネットワークを参照しながら以下で説明する。
【００４１】
上述のようにボタン押下に呼応して、または上述のレジストラへのＰＩＮ入力に呼応して、ＷＰＳ＿ＲＥＧＩＳＴＲＡＲ＿ＳＴＡＲＴと称される信号が生成される。これに呼応して、レジストラアプリケーション／ドライバは、信号ＷＰＳ＿ＩＥをレジストラのビーコンおよびプローブ応答の中に含め、イベント０と表す。イベント１の間に、レジストラアプリケーション（例えばＬｉｎｕｘ（登録商標）またはＷｉｎｄｏｗｓ（登録商標）アプリケーション）が、ドライバに対してレジストラセッションの開始を指定する。本指定は、ボタン押下、レジストラ登録を開始する旨のユーザコマンド、またはアドホックレジストラへのＰＩＮ入力に呼応して行われてよい。イベント２において、（ｉ）ドライバはアドホック節電退出コマンドをファームウェア（ＦＷ）に対して送り、（ｉｉ）アドホックレジストラをアグレッシブビーコンモードにする。ＦＷは、発見段階のＷＬＡＮイベントを制御する。アグレッシブビーコンモードにされると、レジストラのビーコンコンテンションウィンドウを、レジストラのビーコン／プローブ応答送信に応じて、比較的非常に小さな値に設定する。レジストラの発見に成功すると、エンローリーは、ＥＡＰをＬＡＮ（ＥＡＰＯＬ）フレーム信号により送信して発見段階の完了を示す（イベント３として表される）。その後、登録段階を開始する。
【００４２】
上述のように、幾らかの実施形態においては、レジストラセッションのＷＰＳ開始により、レジストラは、節電モードを退出して、アグレッシブビーコンモードに入り、その後、レジストラのビーコンコンテンションをレガシーデバイスのものと比して非常に小さく設定する。また他の実施形態においては、ＦＷは定期的にレジストラをアグレッシブビーコンモードにする。さらに、エンローリークライアントも、スキャン時間がレジストラビーコンの定期的時間と等しくなるよう設定するよう構成することもできる。この定期性は、構成可能であり、レジストラの節電とエンローリークライアントのスキャン時間との間のトレードオフとなる。
【００４３】
従来の技術では、一度に１台のデバイスしかアドホックネットワークに追加できない。図４を参照すると、通信８として表される、第１エンローリーがレジストラにＥＡＰメッセージを送信している間（Ｍ１‐Ｍ８またはＭ１−Ｍ２Ｄ）は、第２エンローリーからのさらなるＥＡＰメッセージの受信により、多数のエンローリーの存在を理由にハンドシェイク処理が終了する。本発明の実施形態によると、登録段階（例えば、多数のエンローリーがレジストラへＥＡＰメッセージを送信している間）においても同時に多数のエンローリーがレジストラと通信することを許される。
【００４４】
図５は、本発明の１実施形態による、レジストラアプリケーションと関連した例示的な状態遷移表５００である。状態遷移表５００は、アイドル状態５０２、発見状態５０４、および登録状態５０６という、３状態を有するとして描かれている。ボタン押下、ＰＩＮ入力、音声コマンド発行等によりユーザがアクションを起こすまで、レジストラはアイドル状態５０２に留まる。ユーザアクションに呼応して、イベントＷＰＳ＿ＲＥＧＩＳＴＲＡＲ＿ＳＴＡＲＴが、アイドル状態５０２から発見状態５０４への遷移を強制する。発見状態５０４にあるとき、もしレジストラが所定の期間ＷＰＳ＿ＷＡＬＫ＿ＴＭＯ中に発見されない場合、アイドル状態５０２へ戻る遷移が起こる。一方もしも、期間ＷＰＳ＿ＷＡＬＫ＿ＴＩＭＥが完了する前にレジストラが発見されると、登録状態５０６に遷移する。レジスタへの登録の成功または失敗の後に、登録状態５０６からアイドル状態５０２に遷移する。
【００４５】
従来のプロトコルの中には、セキュリティその他の理由から、多数のエンローリーが同時に登録を試みた場合にハンドシェイク処理をアボートするものがある。つまりこれら従来のプロトコルは、アドホックネットワークに対するデバイスの追加を一度に１台しか許可していない。このようなプロトコルでは、第１エンローリーが登録処理中に、第２セットアップメッセージが受信されると、セキュリティ違反と解釈されて、第２セットアップメッセージを拒絶して、第１エンローリーの登録をアボートする。上述のように、このような連続登録処理を利用するプロトコルにおいては、Ｍ個のエンローリーデバイスをネットワークに追加するには、ユーザはアクション（例えば、レジストラデバイスのボタンを押下するアクション、あるいは別のアクション）をＭ回行う必要がある。このような登録処理はユーザにとっては単調で冗長である。
【００４６】
本発明の実施形態によると、図４に示すハンドシェイクシーケンス全てまたはその一部が、多数のエンローリーとレジストラとの間で同時に行われる。多数の同時ハンドシェイクシーケンスを支援する機能を提供すべく、レジストラには、多数の状態遷移表が与えられており（代わりに「状態マシン」と称する）、各状態遷移表は多数のエンローリーのうちの対応する１つに対応している。ハンドシェイクシーケンス中に、各状態マシンがインスタンス化されて、個々のエンローリ各々の状態を保持する。例えば、登録処理中に、レジストラは、同時にハンドシェイクシーケンスを行っているエンローリーの正体を調べることができる。
【００４７】
図６は、本発明の１実施形態による、多数の状態マシンを有するレジスタ６００の簡略図である。図６に示すように、レジストラ６００は、４つの状態マシン６１０、６１２、６１４、および６１６を含む。故に、レジストラ６００は、４つのエンローリーの同時登録を支援することができる。他の実施形態においては、特定のアプリケーションに相応しいさらなる状態マシンを追加することもできる。当業者であれば、多くの変形例、変更例、および代替例を想到するであろう。レジストラは、さらに、１以上の同時登録処理および無線ネットワークに関するデータを含むデータベース６２０を保持してよい。例えば、データベースは、同時登録可能なエンローリーデバイスの数の範囲、アドホックネットワークへの参加が許されるデバイスの総数、エンローリーがネットワークに参加できるレート、等を記憶できる１以上のフィールドを含んでよい。データベースはプログラム可能として、レジストラがデータベース６２０に記憶されているデータを修正できるようになっている。同時登録可能なエンローリーデバイスの数は、アプリケーションに依る。多くのアプリケーションにおいては、同時エンローリーの最大数は、レジストラ側でのみ決められるので、本発明の実施形態は、相互運用性には影響を及ぼさず、従来のモードでの動作が可能である。
【００４８】
状態マシン６１０−６１４は、命令およびデータを実行することのできる１以上の汎用プロセッサに含められてよい。幾らかの実施形態においては、特定用途向けＩＣ（ＡＳＩＣ）のような専用ハードウェアを利用して実行されてよい。また別の実施形態においては、このような状態マシンおよび登録処理の動作は、ソフトウェアとハードウェアとの組み合わせを利用して実行されてよい。一例としては、このような実装例は、専用回路、ＡＳＩＣ、組み合わせ論理、他のプログラム可能なプロセッサ、それらの組み合わせ等を含む。
【００４９】
動作において、レジストラ６００は、図４に示す第１エンローリーとの第１ハンドシェイクシーケンスを開始する。状態マシン６１０は、第１ハンドシェイクシーケンスのステータスを第１エンローリーに関する情報とともに保持する。第１ハンドシェイクシーケンスの完了前に、レジストラ６００は、同時に、今度は第２エンローリーとの間で図４に示す第２ハンドシェイクシーケンスを開始する。状態マシン６１２は、第２ハンドシェイクシーケンスのステータスを第２エンローリーに関する情報とともに保持する。さらなるエンローリーがアドホックネットワークに同様にして追加され、その各々がさらなる状態マシンに関連付けられる。幾らかの実施形態においては、第１登録処理が完了した後で、別のエンローリーで利用すべく再度、対応する状態マシンをインスタンス化する。当業者であれば、多くの変形例、変更例、および代替例を想到するであろう。
【００５０】
本発明の幾らかの実施形態では、ハッカーも正当なデバイスも含まれる多数のエンローリーを同時に登録させる機能を持たせた結果、セキュリティ面が劣る結果にはなっているが、実現されるユーザの利用感の向上は、システムセキュリティに対する危険を補って余りある。例えば、携帯ゲームステーションを利用するマルチプレーヤゲーム環境においては、アドホックネットワークにアクセスを試みるハッカーの危険性は、携帯ゲームステーションに保存されている情報が少ないことから、極僅かなものである。この結果、このようなアプリケーションにおいては、多数のデバイス間でアドホックネットワークを簡単に構築できることによる利用性の向上は、感知されているセキュリティに対する危険を補って余りある、といえる。
【００５１】
図７は、本発明の１実施形態による、同時にオーセンティケータに登録される２つのエンローリーデバイス間のアドホック無線ネットワークを形成すべく実行されるステップの例示的なフローチャートである。１実施形態においては、オーセンティケータがレジストラで、認証を受ける側のデバイスがエンローリーである。明瞭化目的から、図７との関連でエンローリーという用語を利用する。方法７００は、第１エンローリーがオーセンティケータへ送信した第１セットアップメッセージ（ＥＡＰメッセージ）を受信する（７１０）ことを含む。オーセンティケータは、第１エンローリーとの間で、第１ハンドシェイクまたは登録処理を開始する（７１２）。第１ハンドシェイク処理は、第１エンローリーに関連づけて第１状態マシンをインスタンス化することを含む。第１エンローリーはＥＡＰ交換を開始して、第１ハンドシェイク処理の一環として、オーセンティケータとのプッシュボタンコンフィグレーション（ＰＢＣ）ハンドシェイクを開始する。幾らかの実施形態においては、ＰＢＣハンドシェイクは、Ｗｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ｓｅｔｕｐ（登録商標）規格が定義する規格に準拠している。ハンドシェイク処理のさらなる説明は、例えば図４、８、および９に関する部分など、本明細書の随所でなされている。
【００５２】
方法はさらに、第２エンローリーからオーセンティケータへ送信された第２セットアップメッセージを受信することを含む（７１４）。第２セットアップメッセージは、第１ハンドシェイク処理の完了前に、オーセンティケータにより受信される。第２ハンドシェイク処理がオーセンティケータと第２エンローリーとの間で開始される（７１６）。第２ハンドシェイク処理は、第２エンローリーに関連付けて第２状態マシンをインスタンス化することを含む。第２エンローリーはＥＡＰ交換を開始して、第２ハンドシェイク処理の一環として、オーセンティケータとの間でＰＢＣハンドシェイクを行おうとする。
【００５３】
本発明の実施形態によると、第２ハンドシェイク処理は、第１ハンドシェイク処理の完了前に開始される。その結果、第１ハンドシェイク処理および第２ハンドシェイク処理が同時に進行する。第１ハンドシェイク処理が（７１８）で完了し、概して第１ハンドシェイク処理が完了した後で第２ハンドシェイク処理が（７２０）で完了する。当業者には明らかなように、第１ハンドシェイク処理の完了の後で第２ハンドシェイク処理が完了する必要はない。
【００５４】
図７に示す特定のステップは、本発明の１実施形態による２つのエンローリーとオーセンティケータとの間で同時にアドホック無線ネットワークを形成する特定の方法であることを理解されたい。他のステップシーケンスも、代替実施形態においては行われうる。例えば、本発明の代替実施形態では、上で概略を示したステップを異なる順序で行うこともできる。さらに、図７に示す個々のステップは、適宜個々のステップとして様々なシーケンスで行うことのできる多数のサブステップを含むことができる。特定のアプリケーションによっては、さらなるステップを追加、または削除することができる。当業者であれば、多くの変形例、変更例、および代替例を想到するであろう。
【００５５】
図８は、実行されることで、１つがレジストラになり１つがエンローリーになる、２つのデバイス間のアドホックネットワークを形成するステップの例示的なフローチャートである。処理は、ステップ８００から始まり、それに続きデバイスに電源が投入される（８０２）。電源が投入されると、デバイスはアイドルモードに入り（８０５）、ＷＰＳを認知しない通常のアドホックモードで振舞う。デバイスをレジストラとして構成する決定がなされると（８０４）、レジストラはステップ８０７に進む。次に、ユーザのボタン押下またはトリガに呼応して（８０７）、タイマＴ２が起動され（８０６）、デバイスはアグレッシブにビーコン送信を始める（８０８）。レジストラとして構成されたデバイスは（８０４）、ユーザがボタンを押下しない、または定期的なビーコンがトリガされない場合、アイドルモード８０５に留まる。タイマの経過時間が所定期間Ｔｍｏｎｉｔｏｒより小さい間（８１０）、レジストラは、引き続きエンローリー要求を探す（８１２）。レジストラが、期間Ｔｍｏｎｉｔｏｒ中にエンローリーからのプローブ要求を受信すると、ＷＰＳハンドシェイクを行う試みがなされる（８１４）。ハンドシェイクを行いエンローリー構成またはプロビジョニングが成功した場合（８１６）、レジストラは、構築されたアドホックネットワーク上で通信を構築してよい。エンローリー構成またはプロビジョニングが不成功に終わった場合（８１６）、処理はステップ８０４に戻る。レジストラがエンローリー要求を所定期間Ｔｍｏｎｉｔｏｒ内に受信しなかった場合、処理はステップ８０８に戻る。ひとたびタイマＴ２の経過時間がＴｍｏｎｉｔｏｒより大きくなったら（８１０）、処理はステップ８０５に戻る。幾らかの例示的実施形態においては、所定期間Ｔｍｏｎｉｔｏｒは約３０秒から約１２０秒の間の範囲である。一例示的実施形態においては、所定時間Ｔｍｏｎｉｔｏｒは１２０秒である。
【００５６】
デバイスをレジストラとして構成しないという決定がなされると（８０４）、デバイスはエンローリーとなり、タイマＴ１を起動する（８３０）。さらに、ボタン押下などのトリガイベントに呼応してタイマＴ１を開始させてよい。エンローリーは、レジストラを求めてスキャンを開始する（８３２）。タイマＴ１の時間が所定期間Ｔｗａｌｋより小さい場合（８３４）、エンローリーは、引き続きレジストラからのプローブ応答を探す（８３６）。パッシブスキャンモードにおいては、エンローリーはビーコンを探す。エンローリーがレジストラからのプローブ応答を検出すると（８３６）、エンローリーは、他のレジストラが存在するか否かをチェックする（８３８）。エンローリーが２以上のレジストラを検出した場合、処理はステップ８３０に戻る。エンローリーがレジストラを１つも発見しなかった場合、または２以上のレジストラを発見した場合には、エンローリーは、自身のアドホックネットワークを作成し、レジストラアプリケーションの開始処理を進めてよい。当業者には明らかなように、このような振る舞いが望ましくないアプリケーションもある。エンローリーが単一のレジストラを発見した場合のみ、エンローリーは発見したレジストラへの登録処理を進める。エンローリーが単一のレジストラを発見した場合、ＥＡＰ交換を開始して（８４０）、ＷＰＳハンドシェイクを試みる（８４２）。この後、ハンドシェイクおよびエンローリーの構成またはプロビジョニングの成功に続いて（８４４）、エンローリーは、レジストラから取得したネットワーク証明書を用いて、ネットワークに参加しようと試みてよい。エンローリーの構成またはプロビジョニングの成功の後に、もしこのエンローリーがレジストラとして機能することができる場合、エンローリーは、エンローリーが定期的に自身のビーコンコンテンションウィンドウを下げてより多くのエンローリーを追加しようと試みるのに応じて、アドホックネットワークのレジストラとして振舞うよう試みてよい。エンローリーが、期間Ｔｗａｌｋ内にレジストラからのプローブ応答を検出しなかった場合、エンローリーは自身のレジストラアプリケーションを開始してレジストラとなる（８０６）。
【００５７】
本発明の実施形態においては、従来の技術に比して、期間Ｔｍｏｎｉｔｏｒを延長することができる。延長時間ウィンドウは、多数のエンローリーが同時にネットワーク参加することを許可するのに適した期間を提供する。その結果、一登録処理について適切な期間をその都度設定するのではなく、時間ウィンドウの長さを適宜延長して、同時の、そして重複する可能性のある登録処理を支援する。時間ウィンドウはプログラム可能であることで、環境およびレジストラがネットワーク参加を予期するエンローリーの数に基づいて時間ウィンドウの長さの修正を許可する。
【００５８】
時間ウィンドウは、一登録処理に比べて延長されるが、延長された時間ウィンドウは、概して一連の連続登録処理に関連付けられる時間ウィンドウの合計より短い。その結果、本発明の実施形態によれば、電力消費が低減され、従来の技術と比してユーザの待ち時間が低減される。特に、多数のエンローリーがレジストラと同時に交渉することができるので、同時登録処理中のビーコン生成にレジストラが要する電力は、同じ数の連続登録処理を行う際に必要となる電力と比して低くなる。
【００５９】
時間ウィンドウはプログラム可能であることで、動作条件およびアプリケーションに応じて柔軟なものとなっている。例えば、潜在的なエンローリーの数が増えると、時間ウィンドウを大きくする。延長された時間ウィンドウはさらに、再送信および他のシステム遅延を可能とする。当業者であれば、多くの変形例、変更例、および代替例を想到するであろう。
【００６０】
図９は、既存のアドホックネットワークに参加するべく、エンローリーが行うステップの例示的なフローチャートである。図９に示す処理は、多数のエンローリーと単一のレジストラとにより同時に行われてよい。処理は、ステップ９００から始まり、それに続きエンローリーに電源が投入される（９０２）。タイマＴ１の起動後（９３０）、エンローリーはレジストラを求めてスキャンを開始する（９３２）。タイマＴ１の経過時間が所定期間Ｔｗａｌｋより小さい場合（９３４）、エンローリーは引き続きレジストラからのプローブ応答を探してよい（９３６）。パッシブスキャンモードにおいては、エンローリーはビーコンを探す。エンローリーがレジストラからのプローブ応答を検出すると（９３６）、エンローリーは、他のレジストラが存在するか否かをチェックする（９３８）。エンローリーが、２以上のレジストラを発見した場合には、処理はステップ９３２に戻る。エンローリーがレジストラを１つも発見しなかった場合、または２以上のレジストラを発見した場合には、エンローリーは自身のアドホックネットワークを作成し、レジストラアプリケーションの開始処理を進めてよい。当業者には明らかなように、このような振る舞いが望ましくないアプリケーションもある。エンローリーが単一のレジストラを発見した場合にのみ、そのエンローリーが、発見されたレジストラへの登録を進めることができる。エンローリーが単一のレジストラを発見した場合、ＥＡＰ交換を開始して（９４０）、ＰＢＣハンドシェイクを試みる（９４２）。この後、ハンドシェイクおよびエンローリーの構成またはプロビジョニングの形成の成功に続いて（９４４）、エンローリーは、レジストラから取得したネットワーク証明書を用いて、ネットワークに参加しようと試みてよい。エンローリーの構成またはプロビジョニングの成功の後に、もしこのエンローリーがレジストラとして機能することができる場合、エンローリーは、エンローリーが定期的にビーコンコンテンションウィンドウを下げてより多くのエンローリーを追加しようと試みるのに応じて、アドホックネットワークのレジストラとして振舞うよう試みてよい。
【００６１】
図１０は、本発明の１実施形態による、既存のアドホック無線ネットワークに同時に参加すべく多数のエンローリーが実行するステップのフローチャートである。図１０に示す処理には、エンローリーに発見されるべくアグレッシブビーコンモードに入るべくレジストラがとるべき一連のステップが含まれる。ステップ１０００の処理開始に続いて、レジストラがビーコンを生成すべきであるか否かを判断する（１００２）。レジストラがビーコンを生成する必要があると判断すると（１００２）、所定時間またはパラメータＴｍｏｎｉｔｏｒを対象ビーコン送信時間（ＴＢＴＴ）の値の２倍に設定する（１００６）。次に、レジストラは節電モードを退出して、第２のタイマＴ２を起動する（１００８）。もし反対に、定期的にビーコンが送信されていない場合には、ステップ１００４でボタン押下があったか否かを判断する。例えばボタンは、ユーザが既存のアドホックネットワークに参加する意向があるか否か、またはエンローリーデバイスのネットワーク参加を許可する、などを示すのに利用される、押しボタン式のデバイスであってよい。ボタンが押下されると、所定期間Ｔｍｏｎｉｔｏｒをデフォルト値に設定する。
【００６２】
節電モードを退出してタイマＴ２を起動した後で（１００８）、レジストラは自身のビーコンコンテンションウィンドウを小さくする（１０１２）。アグレッシブビーコンモードにある間、つまり、小さくされたビーコンコンテンションウィンドウモードの間、レジストラは他のレジストラからのビーコンについての情報を待つ。レジストラが他のレジストラからのビーコンを検出している限り（１０１４）、レジストラは自身のビーコンは生成せず（つまり、現在のビーコン期間のみ）、引き続き自身のビーコンコンテンションウィンドウを小さくする（１０１２）。しかし、レジストラが他のレジストラからのビーコンを検出しない場合には、最後のビーコンコンテンションウィンドウを利用して自身のビーコンを生成する（１０１４）。
【００６３】
ビーコン生成に続いて、もしもタイマＴ２の値が所定期間Ｔｍｏｎｉｔｏｒより大きいか等しいと判断されると（１０１６）、レジストラは節電モードに戻り、自身のビーコンコンテンションウィンドウを自身の開始値にリセットする（１０２８）。タイマＴ２の値がＴｍｏｎｉｔｏｒより小さいと判断されると（１０１６）、レジストラはエンローリーからのプローブ要求を探し続ける（１０１８）。レジストラがエンローリープローブ要求（例えばＥＡＰＯＬ＿ＳＴＡＲＴフレームで表されるＥＡＰ要求）を検出すると、ステップ１０２０でエンローリーカウントが所定値Ｍより小さいか否かを判断する。ステップ１０２０の判断により、レジストラは、セキュリティその他の理由から同時エンローリーの数を所定値Ｍに制限することができる。エンローリーカウントが所定値Ｍに達するまたはそれを超えると、処理はステップ１０２８に移行する。しかし、さらなるエンローリーの登録を許可する場合には、ＷＰＳ登録ハンドシェイク処理を実行することで（１０２２）、完了すると構成の成功（１０２４）を判断する。構成の成功を判断した後で、エンローリーカウントで表されるエンローリーの数を１増分する（１０２６）。その後処理はステップ１０１６に進み、タイマＴ２が所定期間Ｔｍｏｎｉｔｏｒより小さいかを判断する処理を繰り返す。Ｔ２がＴｍｏｎｉｔｏｒより大きいか等しい場合、または最大エンローリー数が登録されている場合、レジストラは節電モードに戻り、自身のビーコンコンテンションウィンドウを自身の開始値にリセットする（１０２８）。故に、レジストラとして振舞うアドホックデバイス側における単一のボタン押下（または他のアクション）の後に、Ｍ個までのエンローリーを追加することができる（Ｍ個までを同時に追加できる）。
【００６４】
本発明の実施形態は、アドホックネットワークを利用する家庭用電化製品で対象となる設計要素であるバッテリ資源の保存を可能とする。レジストラは定期的に節電モードに入ることができるので、バッテリ消費が低減される。さらに、本発明の実施形態を利用すると、ＣＥデバイスを、ここで記載した手順を利用して他のデバイスと融合または合体させることができる。
【００６５】
図１１は、本発明の１実施形態による、エンローリーおよび／またはレジストラとして構成されることのできるデバイス１１００のハードウェアブロック図を示す。デバイス１１００は、その一部に、トリガブロック１１０２、タイマ１１０４、１１１０、コントローラ１１０６、およびスキャナ１１０８を含むとして示されている。トリガブロック１１０２は、ユーザアクションに呼応してイベントをトリガするよう構成されている。例えば、デバイス１１００に電源投入されると、トリガブロック１１０２は第１タイマ１１０４を起動する。タイマ１１０４の経過時間が所定時間に達する前にトリガブロック１１０２が第２のユーザアクションを検出した場合、コントローラ１１０６はデバイス１１００をエンローリーとして構成する。タイマ１１０４の経過時間が所定時間に達するまでにトリガブロック１１０２が第２のユーザアクションを検出しなかった場合、コントローラ１１０６はデバイス１１００をレジストラとして構成する。コントローラ１１０６はさらに、デバイス１１００のビーコンコンテンションウィンドウを修正する。デバイス１１００がエンローリーとして構成されている場合、スキャナ１１０８は、レジストラが送信したビーコンを求めてスキャンする。タイマ１１１０は、デバイス１１００がレジストラとして構成されている場合に、所定期間内にプローブ要求が受信されたか否かを判断するのに利用される。タイマ１１１０はさらに、デバイス１１００がエンローリーとして構成されている場合に、所定期間内にプローブ応答が受信されたか否かを判断するのにも利用される。
【００６６】
さらにデバイス１１００は、他のデバイスとの間で信号を授受する１以上のポートを含む（１１２０）（１１２２）。１以上のメモリ１１１２、決定モジュール１１１４、およびプロセッサ１１１６がデバイス１１００に提供されて、デバイス１１００の動作を制御する。図１１に示すものを含み、ここでプロセッサ、エンジン、モジュール等として言及された様々な機能ブロックを、命令およびデータを実行するよう構成された１以上の汎用プロセッサに含ませることができる。幾らかの実施形態においては、このようなブロックは、特定用途向けＩＣ（ＡＳＩＣ）のような専用ハードウェアを利用して実行されうる。また別の実施形態においては、このようなブロックおよび信号送受信処理を、ソフトウェアおよびハードウェアの組み合わせを利用して実行することができる。例えば、このようなプロセッサは、専用回路、ＡＳＩＣ、組み合わせ論理、他のプログラム可能なプロセッサ、それらの組み合わせ等を含む。
【００６７】
本発明の上述の実施形態は例示的であり限定的ではない。様々な代替例および均等物が可能である。他に要素を追加、削減、または要素の修正も、本開示の観点からは自明であり、添付請求項の範囲に含まれることを意図する。
【図１】
2010504055.tif 000003
【図２】
2010504055.tif 000004
【図３】
2010504055.tif 000005
【図４】
2010504055.tif 000006
【図５】
2010504055.tif 000007
【図６】
2010504055.tif 000008
【図７】
2010504055.tif 000009
【図８】
2010504055.tif 000010
【図９】
2010504055.tif 000011
【図１０】
2010504055.tif 000012
【図１１】
2010504055.tif 000013
【国際調査報告】
2010504055.tif 000014