(57)【特許請求の範囲】
【請求項１】
ワイヤレス近傍アウェアネットワーク（ＮＡＮ）においてディスカバリ情報を通信する方法であって、
第１のワイヤレスデバイスにおいて、隣接ワイヤレスデバイスからメッセージを受信することと、前記メッセージは、発見されたデバイス識別子を示すデータ構造を備え、
前記データ構造が前記第１のワイヤレスデバイスの識別子を示すかどうかを決定することと、
前記データ構造が前記第１のワイヤレスデバイスの前記識別子を示さないときに、前記第１のワイヤレスデバイスの前記識別子を備えるメッセージを送信することと、
を備え、
前記データ構造はブルームフィルタを備え、前記ブルームフィルタはｍビットのビットアレイであり、前記ビットアレイは前記ビットアレイに関連するｋ個の異なるハッシュ関数をもち、各ハッシュ関数は、均一なランダム分布で前記ｍ個のアレイ位置のうちの１つに入力ストリングをマッピングし、前記ｋ個のハッシュ関数Ｈ（ｊ，Ｘ，ｍ）のうちの少なくとも１つは、（ＣＲＣ３２（ｊ||Ｘ）＆０ｘＦＦＦＦ）ｍｏｄ  ｍと定義され、ここで、ｊは変更ストリングであり、Ｘは前記入力ストリングであり、ＣＲＣ３２は３２ビット巡回冗長コードである、方法。
【請求項２】
前記受信メッセージはディスカバリクエリメッセージを備える、請求項１に記載の方法。
【請求項３】
前記送信メッセージはディスカバリ応答メッセージを備える、請求項１に記載の方法。
【請求項４】
前記データ構造は少なくとも部分的な識別子のリストを備える、請求項１に記載の方法。
【請求項５】
前記部分的な識別子は、前記識別子のバイトのサブセットを備える、請求項４に記載の方法。
【請求項６】
前記メッセージは、前記ビットアレイに関連するハッシュ関数の特定のセットを示すブルームフィルタインデックスをさらに備える、請求項１に記載の方法。
【請求項７】
前記ブルームフィルタインデックスは後続の送信で更新される、請求項６に記載の方法。
【請求項８】
前記データ構造が前記第１のワイヤレスデバイスの前記識別子を示すかどうかを決定することは、
ｋ個のアレイ位置を得るために、前記ｋ個のハッシュ関数の各々に前記識別子をマッピングすることと、
すべての前記ｋ個のアレイ位置にある前記ビットが１であるかどうかを決定することと、
を備える、請求項１に記載の方法。
【請求項９】
前記ブルームフィルタの前記パラメータｋは４の値を有し、前記ブルームフィルタの前記パラメータｍは、前記ブルームフィルタ中に示すべきデバイスの数の５倍より大きい値を有する、請求項１に記載の方法。
【請求項１０】
第２のブルームフィルタとクエリインデックスとを備える第２のメッセージを受信することと、
ハッシュ関数の異なるセットを使用して、前記データ構造が前記第１のワイヤレスデバイスの前記識別子を示すかどうかを決定することと、
前記第１のワイヤレスデバイスが、同じクエリインデックスをもつクエリに応答しておらず、前記データ構造が、前記第１のワイヤレスデバイスの前記識別子を示さないときに、前記第２のメッセージに応答することと、
をさらに備える、請求項１に記載の方法。
【請求項１１】
前記受信メッセージは、長さフィールドと、ディスカバリ制御フィールドと、発見アドレス情報フィールドとを備える、請求項１に記載の方法。
【請求項１２】
前記ディスカバリ制御フィールドは、ブルームフィルタの存在を示すタイプフラグと、所望の局応答を示すインクルードフラグと、関連するブルームフィルタに関連するハッシュ関数の特定のセットを識別するブルームフィルタインデックスとを備える、請求項１１に記載の方法。
【請求項１３】
前記長さフィールドは１オクテットであり、前記ディスカバリ制御フィールドは１オクテットであり、前記タイプフラグは１ビットであり、前記インクルードフラグは１ビットであり、前記ブルームフィルタインデックスは２ビットであり、前記発見アドレス情報フィールドは可変長である、請求項１２に記載の方法。
【請求項１４】
ワイヤレス近傍アウェアネットワーク（ＮＡＮ）においてディスカバリ情報を通信するための装置であって、
隣接ワイヤレスデバイスからメッセージを受信するための手段と、前記メッセージは、発見されたデバイス識別子を示すデータ構造を備え、
前記データ構造が前記装置の識別子を示すかどうかを決定するための手段と、
前記データ構造が前記装置の前記識別子を示さないときに、前記装置の前記識別子を備えるメッセージを送信するための手段と、
を備え、
前記データ構造はブルームフィルタを備え、前記ブルームフィルタはｍビットのビットアレイであり、前記ビットアレイは前記ビットアレイに関連するｋ個の異なるハッシュ関数をもち、各ハッシュ関数は、均一なランダム分布で前記ｍ個のアレイ位置のうちの１つに入力ストリングをマッピングし、前記ｋ個のハッシュ関数Ｈ（ｊ，Ｘ，ｍ）のうちの少なくとも１つは、（ＣＲＣ３２（ｊ||Ｘ）＆０ｘＦＦＦＦ）ｍｏｄ  ｍと定義され、ここで、ｊは変更ストリングであり、Ｘは前記入力ストリングであり、ＣＲＣ３２は３２ビット巡回冗長コードである、装置。
【請求項１５】
コンピュータ上で実行されると、請求項１乃至１３のうちのいずれか１項に記載の方法を実行するための命令を備える、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、一般にワイヤレス通信に関し、より詳細には、ワイヤレスネットワークにおいてデバイスを発見するためのシステム、方法、およびデバイスに関する。
【背景技術】
【０００２】
[0002]多くの電気通信システムでは、いくつかの相互作用する空間的に分離されたデバイス間でメッセージを交換するために、通信ネットワークが使用される。ネットワークは、たとえば、メトロポリタンエリア、ローカルエリア、またはパーソナルエリアであり得る地理的範囲に従って分類され得る。そのようなネットワークは、それぞれ、ワイドエリアネットワーク（ＷＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、ローカルエリアネットワーク（ＬＡＮ）、ワイヤレスローカルエリアネットワーク（ＷＬＡＮ）、またはパーソナルエリアネットワーク（ＰＡＮ）として指定されるであろう。ネットワークはまた、様々なネットワークノードとデバイスとを相互接続するために使用されるスイッチング／ルーティング技法（たとえば、回線交換対パケット交換）、送信のために採用される物理媒体のタイプ（たとえば、ワイヤード対ワイヤレス）、および使用される通信プロトコルのセット（たとえば、インターネットプロトコルスイート、ＳＯＮＥＴ（同期光ネットワーキング：Synchronous Optical Networking）、イーサネット（登録商標）など）によって異なる。
【０００３】
[0003]ワイヤレスネットワークは、ネットワーク要素がモバイルであり、したがって動的接続性の必要を有するときに、またはネットワークアーキテクチャが固定ではなくアドホックなトポロジーで形成される場合に、しばしば好適である。ワイヤレスネットワークは、無線、マイクロ波、赤外線、光などの周波数帯域内の電磁波を使用する非誘導伝搬モードでは、無形の物理媒体を採用する。ワイヤレスネットワークは、有利なことに、固定有線ネットワークと比較して、ユーザモビリティと迅速な現場配置とを容易にする。
【０００４】
[0004]ワイヤレスネットワーク中のデバイスは、互いの間で情報を送信／受信することができる。その情報は、いくつかの態様ではデータユニットまたはデータフレームと呼ばれることがある、パケットを含むことができる。パケットは、ワイヤレスネットワークにおいてデバイスを発見するために使用され得る識別情報を含むことができる。場合によっては、外来の（extraneous）識別情報が送信され、ネットワークオーバーヘッドを増加され得る。したがって、識別情報を効率的に通信するための改善されたシステム、方法、およびデバイスが望まれる。
【発明の概要】
【０００５】
[0005]本明細書で説明するシステム、方法、デバイス、およびコンピュータプログラム製品は、各々いくつかの態様を有し、それらのうちの単一の態様が単独でその望ましい属性に関与するとは限らない。以下の特許請求の範囲によって表される本発明の範囲を限定することなしに、いくつかの特徴について以下で手短に説明する。この説明を考察すれば、特に「発明を実施するための形態」と題するセクションを読めば、本発明の有利な特徴が、媒体上にデバイスを導入するときの低減された電力消費をどのように含むかが理解されよう。
【０００６】
[0006]本開示で説明する主題の一態様は、ワイヤレス近傍アウェア(aware)ネットワーク（ＮＡＮ）においてディスカバリ情報を通信する方法を提供する。本方法は、隣接ワイヤレスデバイスからメッセージを受信することを含む。メッセージは、隣接ワイヤレスデバイスに関連する識別子を含む。本方法は、発見されたデバイス識別子を示すデータ構造に識別子を追加することをさらに含む。本方法は、発見されたデバイス識別子を示すデータ構造を含むメッセージを送信することをさらに含む。
【０００７】
[0007]本開示で説明する主題の別の態様は、ワイヤレス近傍アウェアネットワーク（ＮＡＮ）においてディスカバリ情報を通信する方法を提供する。本方法は、第１のワイヤレスデバイスにおいて、隣接ワイヤレスデバイスからメッセージを受信することを含む。メッセージは、発見されたデバイス識別子を示すデータ構造を含む。本方法は、データ構造が第１のワイヤレスデバイスの識別子を示すかどうかを決定することをさらに含む。本方法は、データ構造が第１のワイヤレスデバイスの識別子を示さないときに、第１のワイヤレスデバイスの識別子を含むメッセージを送信することをさらに含む。
【０００８】
[0008]本開示で説明する主題の別の態様は、ワイヤレス近傍アウェアネットワーク（ＮＡＮ）においてディスカバリ情報を通信するように構成されたワイヤレスデバイスを提供する。本デバイスは、隣接ワイヤレスデバイスからメッセージを受信するように構成された受信機を含む。メッセージは、隣接ワイヤレスデバイスに関連する識別子を含む。本デバイスは、発見されたデバイス識別子を示すデータ構造を記憶するように構成されたメモリをさらに含む。本デバイスは、メモリに記憶されたデータ構造に識別子を追加するように構成されたプロセッサをさらに含む。本デバイスは、発見されたデバイス識別子を示すデータ構造を含むメッセージを送信するように構成された送信機をさらに含む。
【０００９】
[0009]本開示で説明する主題の別の態様は、ワイヤレス近傍アウェアネットワーク（ＮＡＮ）においてディスカバリ情報を通信するように構成された第１のワイヤレスデバイスを提供する。本デバイスは、隣接ワイヤレスデバイスからメッセージを受信するように構成された受信機を含む。メッセージは、発見されたデバイス識別子を示すデータ構造を含む。本デバイスは、データ構造が第１のワイヤレスデバイスの識別子を示すかどうかを決定するように構成されたプロセッサをさらに含む。本デバイスは、データ構造が第１のワイヤレスデバイスの識別子を示さないときに、第１のワイヤレスデバイスの識別子を含むメッセージを送信するように構成された送信機をさらに含む。
【００１０】
[0010]本開示で説明する主題の別の態様は、ワイヤレス近傍アウェアネットワーク（ＮＡＮ）においてディスカバリ情報を通信するための装置を提供する。本装置は、隣接ワイヤレスデバイスからメッセージを受信するための手段を含む。メッセージは、隣接ワイヤレスデバイスに関連する識別子を含む。本装置は、発見されたデバイス識別子を示すデータ構造に識別子を追加するための手段をさらに含む。本装置は、発見されたデバイス識別子を示すデータ構造を含むメッセージを送信するための手段をさらに含む。
【００１１】
[0011]本開示で説明する主題の別の態様は、ワイヤレス近傍アウェアネットワーク（ＮＡＮ）においてディスカバリ情報を通信するための装置を提供する。本装置は、隣接ワイヤレスデバイスからメッセージを受信するための手段を含む。メッセージは、発見されたデバイス識別子を示すデータ構造を含む。本装置は、データ構造が本装置の識別子を示すかどうかを決定するための手段をさらに含む。本装置は、データ構造が本装置の識別子を示さないときに、本装置の識別子を含むメッセージを送信するための手段をさらに含む。
【００１２】
[0012]本開示で説明する主題の別の態様は、実行されたとき、装置に、隣接ワイヤレスデバイスからメッセージを受信させるコードを含む非一時的コンピュータ可読媒体を提供する。メッセージは、隣接ワイヤレスデバイスに関連する識別子を含む。本媒体は、実行されたとき、装置に、発見されたデバイス識別子を示すデータ構造に識別子を追加させるコードをさらに含む。本媒体は、実行されたとき、装置に、発見されたデバイス識別子を示すデータ構造を含むメッセージを送信させるコードをさらに含む。
【００１３】
[0013]本開示で説明する主題の別の態様は、実行されたとき、装置に、隣接ワイヤレスデバイスからメッセージを受信させるコードを含む非一時的コンピュータ可読媒体を提供する。メッセージは、発見されたデバイス識別子を示すデータ構造を含む。本媒体は、実行されたとき、装置に、データ構造が装置の識別子を示すかどうかを決定させるコードをさらに含む。本媒体は、実行されたとき、装置に、データ構造が装置の識別子を示さないときに、装置の識別子を含むメッセージを送信させるコードをさらに含む。
【図面の簡単な説明】
【００１４】
【図１】本開示の態様が採用され得るワイヤレス通信システムの一例を示す図。
【図２】図１のワイヤレス通信システム内で採用され得るワイヤレスデバイスの機能ブロック図。
【図３】本開示のいくつかの態様による、ワイヤレス通信システムにおける例示的な通信タイムラインを示す図。
【図４】通信のためにレガシーシステムにおいて使用されるビーコンフレームの一例を示す図。
【図５】例示的な近傍アウェアネットワークビーコンフレームを示す図。
【図６】例示的な近傍アウェアネットワークディスカバリフレームを示す図。
【図７】例示的な近傍アウェアネットワークディスカバリフレームを示す図。
【図８】例示的なベンダー固有のディスカバリフレームを示す図。
【図９】図１のワイヤレス通信システム内で採用され得る例示的なディスカバリタイプ長さ値（ＴＬＶ）を示す図。
【図１０Ａ】図１のワイヤレス通信システム内で採用され得る例示的な発見アドレス情報コンテナを示す図。
【図１０Ｂ】図１のワイヤレス通信システム内で採用され得る例示的な発見アドレス情報コンテナを示す図。
【図１１】一実装形態による、ブルームフィルタの１つの例示的な例を示す図。
【図１２】図１のワイヤレス通信システム内で採用され得るワイヤレス通信の例示的な方法のフローチャート。
【図１３】図１のワイヤレス通信システム内で採用され得るワイヤレス通信の例示的方法のフローチャート。
【発明を実施するための形態】
【００１５】
[0028]「例示的」という単語は、本明細書では、「例、事例、または例示の働きをすること」を意味するために使用する。本明細書で「例示的」であるとして説明されるいかなる実施形態も、必ずしも他の実施形態よりも好ましいまたは有利であると解釈されるべきではない。添付の図面を参照しながら新規のシステム、装置、および方法の様々な態様について以下でより十分に説明する。ただし、本開示は、多くの異なる形態で実施され得、本開示全体にわたって提示する任意の特定の構造または機能に限定されるものと解釈すべきではない。むしろ、これらの態様は、本開示が周到で完全になり、本開示の範囲を当業者に十分に伝えるように与えられる。本明細書の教示に基づいて、本開示の範囲は、本発明の他の態様とは無関係に実装されるにせよ、または本発明の他の態様と組み合わされるにせよ、本明細書で開示する新規のシステム、装置、および方法のいかなる態様をもカバーするものであることを、当業者なら諒解されたい。たとえば、本明細書に記載の態様をいくつ使用しても、装置は実装され得、または方法は実施され得る。さらに、本発明の範囲は、本明細書に記載の本発明の様々な態様に加えてまたはそれらの態様以外に、他の構造、機能、または構造および機能を使用して実施されるそのような装置または方法をカバーするものとする。本明細書で開示するいかなる態様も請求項の１つまたは複数の要素によって実施され得ることを理解されたい。
【００１６】
[0029]本明細書では特定の態様について説明するが、これらの態様の多くの変形および置換は本開示の範囲内に入る。好適な態様のいくつかの利益および利点について説明するが、本開示の範囲は特定の利益、使用、または目的に限定されるものではない。むしろ、本開示の態様は、様々なワイヤレス技術、システム構成、ネットワーク、および送信プロトコルに広く適用可能であるものとし、そのうちのいくつかを例として図および好ましい態様についての以下の説明で示す。発明を実施するための形態および図面は、限定的なものではなく、本開示を説明するものにすぎず、本開示の範囲は、添付の特許請求の範囲およびその均等物によって定義される。
【００１７】
[0030]普及しているワイヤレスネットワーク技術は、様々なタイプのワイヤレスローカルエリアネットワーク（ＷＬＡＮ）を含むことができる。ＷＬＡＮは、広く使用されるネットワーキングプロトコルを採用して、近接デバイスを互いに相互接続するために使用され得る。本明細書で説明する様々な態様は、ワイヤレスプロトコルなど、任意の通信規格に適用され得る。
【００１８】
[0031]いくつかの実装形態では、ＷＬＡＮは、ワイヤレスネットワークにアクセスする構成要素である様々なデバイスを含む。たとえば、２つのタイプのデバイス、すなわちアクセスポイント（「ＡＰ」）および（局または「ＳＴＡ」とも呼ばれる）クライアントが存在することができる。概して、ＡＰはＷＬＡＮ用のハブまたは基地局として働くことができ、ＳＴＡはＷＬＡＮのユーザとして働く。たとえば、ＳＴＡはラップトップコンピュータ、携帯情報端末（ＰＤＡ）、モバイルフォンなどであり得る。一例では、ＳＴＡは、インターネットまたは他のワイドエリアネットワークへの一般的接続性を得るためにＷｉＦｉ（登録商標）（たとえば、ＩＥＥＥ８０２．１１プロトコル）準拠ワイヤレスリンクを介してＡＰに接続する。いくつかの実装形態では、ＳＴＡはまた、ＡＰとして使用され得る。
【００１９】
[0032]アクセスポイント（「ＡＰ」）はまた、ノードＢ、無線ネットワークコントローラ（「ＲＮＣ」）、ｅノードＢ、基地局コントローラ（「ＢＳＣ」）、トランシーバ基地局（「ＢＴＳ」）、基地局（「ＢＳ」）、トランシーバ機能（「ＴＦ」）、無線ルータ、無線トランシーバ、または何らかの他の用語を含むか、それらのいずれかとして実装されるか、またはそれらのいずれかとして知られていることがある。
【００２０】
[0033]局「ＳＴＡ」はまた、アクセス端末（「ＡＴ」）、加入者局、加入者ユニット、移動局、リモート局、リモート端末、ユーザ端末、ユーザエージェント、ユーザデバイス、ユーザ機器、または何らかの他の用語を含むか、それらのいずれかとして実装されるか、またはそれらのいずれかとして知られていることがある。いくつかの実装形態では、アクセス端末は、セルラー電話、コードレス電話、セッション開始プロトコル（「ＳＩＰ」）電話、ワイヤレスローカルループ（「ＷＬＬ」）局、携帯情報端末（「ＰＤＡ」）、ワイヤレス接続能力を有するハンドヘルドデバイス、またはワイヤレスモデムに接続された何らかの他の好適な処理デバイスまたはワイヤレスデバイスを含むことができる。したがって、本明細書で教示する１つまたは複数の態様は、電話（たとえば、セルラーフォンまたはスマートフォン）、コンピュータ（たとえば、ラップトップ）、ポータブル通信デバイス、ヘッドセット、ポータブルコンピューティングデバイス（たとえば、個人情報端末）、エンターテインメントデバイス（たとえば、音楽またはビデオデバイス、または衛星ラジオ）、ゲームデバイスもしくはシステム、全地球測位システムデバイス、またはワイヤレス媒体を介して通信するように構成された他の好適なデバイスに組み込まれ得る。
【００２１】
[0034]たとえば、局のグループなどのデバイスは、近傍アウェアネットワーキング（ＮＡＮ）またはソーシャルＷｉＦｉネットワーキングのために使用され得る。たとえば、ネットワーク内の様々な局は、局の各々がサポートするアプリケーションに関して互いにデバイス間で通信することができる（たとえば、ピアツーピア通信）。ソーシャルＷｉＦｉネットワークにおいて使用されるディスカバリプロトコルにとって、セキュア通信および低電力消費を保証しながら、ＳＴＡが、（たとえば、ディスカバリパケットを送ることによって）それら自体を広告すること、ならびに（たとえば、ページングパケットまたはクエリパケット送ることによって）他のＳＴＡによって与えられたサービスを発見することを可能にすることが望ましい。検出パケットは、検出メッセージまたは検出フレームと呼ばれることもあることに留意されたい。ページングまたは照会パケットは、ページングもしくは照会メッセージまたはページングもしくは照会フレームと呼ばれることもあることに留意されたい。
【００２２】
[0035]図１に、本開示の態様が採用され得るワイヤレス通信システム１００の一例を示す。ワイヤレス通信システム１００は、８０２．１１規格などのワイヤレス規格に従って動作することができる。ワイヤレス通信システム１００は、ＳＴＡ１０６と通信するＡＰ１０４を含むことができる。いくつかの態様では、ワイヤレス通信システム１００は、２つ以上のＡＰを含むことができる。さらに、ＳＴＡ１０６は、他のＳＴＡ１０６と通信することができる。一例として、第１のＳＴＡ１０６ａは、第２のＳＴＡ１０６ｂと通信することができる。別の例として、図１にこの通信リンクを図示していないが、第１のＳＴＡ１０６ａは第３のＳＴＡ１０６ｃと通信することができる。
【００２３】
[0036]ワイヤレス通信システム１００におけるＡＰ１０４とＳＴＡ１０６との間の送信および第１のＳＴＡ１０６ａなどの個別のＳＴＡと第２のＳＴＡ１０６ｂなどの別の個別のＳＴＡとの間の送信のために、様々なプロセスおよび方法が使用され得る。たとえば、信号は、ＯＦＤＭ／ＯＦＤＭＡ技法に従って送信および受信され得る。そうである場合、ワイヤレス通信システム１００はＯＦＤＭ／ＯＦＤＭＡシステムと呼ばれることがある。代替的に、信号は、ＣＤＭＡ技法に従って、ＡＰ１０４とＳＴＡ１０６との間で送信および受信され、第１のＳＴＡ１０６ａなどの個別のＳＴＡと第２のＳＴＡ１０６ｂなどの別の個別のＳＴＡとの間で送信および受信され得る。そうである場合、ワイヤレス通信システム１００はＣＤＭＡシステムと呼ばれることがある。
【００２４】
[0037]ＡＰ１０４からＳＴＡ１０６のうちの１つまたは複数への送信を可能にする通信リンクはダウンリンク（ＤＬ）１０８と呼ばれることがあり、ＳＴＡ１０６のうちの１つまたは複数からＡＰ１０４への送信を可能にする通信リンクはアップリンク（ＵＬ）１１０と呼ばれることがある。代替的に、ダウンリンク１０８が順方向リンクまたは順方向チャネルと呼ばれることがあり、アップリンク１１０が逆方向リンクまたは逆方向チャネルと呼ばれることがある。
【００２５】
[0038]通信リンクは、ソーシャルＷｉＦｉネットワーキング中などにＳＴＡ間に確立され得る。ＳＴＡ間のいくつかの可能な通信リンクを図１に示す。一例として、通信リンク１１２は、第１のＳＴＡ１０６ａから第２のＳＴＡ１０６ｂへの送信を容易にすることができる。別の通信リンク１１４は、第２のＳＴＡ１０６ｂから第１のＳＴＡ１０６ａへの送信を容易にすることができる。
【００２６】
[0039]ＡＰ１０４は、基地局として働き、基本サービスエリア（ＢＳＡ）１０２においてワイヤレス通信カバレージを与えることができる。ＡＰ１０４は、ＡＰ１０４に関連付けられ、また通信のためにＡＰ１０４を使用する、ＳＴＡ１０６とともに、基本サービスセット（ＢＳＳ）と呼ばれることがある。ワイヤレス通信システム１００は、中央ＡＰ１０４を有しないことがあり、むしろ、ＳＴＡ１０６間のピアツーピアネットワークとして機能することができることに留意されたい。したがって、本明細書で説明するＡＰ１０４の機能は、代替的にＳＴＡ１０６のうちの１つまたは複数によって実行され得る。
【００２７】
[0040]図２は、ワイヤレス通信システム１００内で採用され得るワイヤレスデバイス２０２において利用され得る様々な構成要素を示す。ワイヤレスデバイス２０２は、本明細書で説明する様々な方法を実装するように構成され得るデバイスの一例である。たとえば、ワイヤレスデバイス２０２は、ＡＰ１０４を含むか、またはＳＴＡ１０６のうちの１つを含むことができる。
【００２８】
[0041]ワイヤレスデバイス２０２は、ワイヤレスデバイス２０２の動作を制御するプロセッサ２０４を含むことができる。プロセッサ２０４は中央処理ユニット（ＣＰＵ）と呼ばれることもある。読取り専用メモリ（ＲＯＭ）とランダムアクセスメモリ（ＲＡＭ）の両方を含むことができるメモリ２０６は、命令とデータとをプロセッサ２０４に与えることができる。メモリ２０６の一部は不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）をも含むことができる。プロセッサ２０４は、通常、メモリ２０６内に記憶されたプログラム命令に基づいて、論理演算と算術演算とを実行する。メモリ２０６中の命令は、本明細書で説明する方法を実装するように実行可能であり得る。
【００２９】
[0042]プロセッサ２０４は、１つまたは複数のプロセッサとともに実装された処理システムを含むことができるか、またはそれの構成要素であり得る。１つまたは複数のプロセッサは、汎用マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ（ＤＳＰ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、プログラマブル論理デバイス（ＰＬＤ）、コントローラ、状態機械、ゲート論理、個別ハードウェア構成要素、専用ハードウェア有限状態機械、または情報の計算または他の操作を実行することができる任意の他の好適なエンティティの任意の組合せを用いて実装され得る。
【００３０】
[0043]処理システムは、ソフトウェアを記憶するための機械可読媒体をも含むことができる。ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語などの名称にかかわらず、任意のタイプの命令を意味すると広く解釈されたい。命令は、（たとえば、ソースコード形式、バイナリコード形式、実行コード形式、または他の適切なコード形式の）コードを含むことができる。命令は、１つまたは複数のプロセッサによって実行されたとき、本明細書で説明する様々な機能を処理システムに実行させる。
【００３１】
[0044]ワイヤレスデバイス２０２はまた、ワイヤレスデバイス２０２と遠隔ロケーションとの間のデータの送信および受信を可能にするために送信機２１０および／または受信機２１２を含むことができる、ハウジング２０８を含むことができる。送信機２１０および受信機２１２は組み合わされてトランシーバ２１４になり得る。アンテナ２１６は、ハウジング２０８に取り付けられ、トランシーバ２１４に電気的に結合され得る。ワイヤレスデバイス２０２はまた、複数の送信機、複数の受信機、複数のトランシーバ、および／または複数のアンテナ（図示せず）を含むことができる。
【００３２】
[0045]送信機２１０は、異なるパケットタイプまたは機能を有するパケットをワイヤレス送信するように構成され得る。たとえば、送信機２１０は、プロセッサ２０４によって生成された様々なタイプのパケットを送信するように構成され得る。ワイヤレスデバイス２０２がＡＰ１０４またはＳＴＡ１０６として実装または使用されるとき、プロセッサ２０４は、複数の異なるパケットタイプのパケットを処理するように構成され得る。たとえば、プロセッサ２０４は、パケットのタイプを決定し、それに応じて、パケットおよび／またはパケットのフィールドを処理するように構成され得る。ワイヤレスデバイス２０２がＡＰ１０４として実装または使用されるとき、プロセッサ２０４はまた、複数のパケットタイプのうちの１つを選択し、生成するように構成され得る。たとえば、プロセッサ２０４は、ディスカバリメッセージを含むディスカバリパケットを生成し、特定のインスタンスにどのタイプのパケット情報を使用すべきかを決定するように構成され得る。
【００３３】
[0046]受信機２１２は、異なるパケットタイプを有するパケットをワイヤレスに受信するように構成され得る。いくつかの態様では、受信機２１２は、使用されたパケットのタイプを検出し、それに応じて、パケットを処理するように構成され得る。
【００３４】
[0047]ワイヤレスデバイス２０２は、トランシーバ２１４によって受信された信号のレベルを検出し、定量化するために使用され得る信号検出器２１８をも含むことができる。信号検出器２１８は、総エネルギー、シンボルごとのサブキャリア当たりのエネルギー、電力スペクトル密度および他の信号などの信号を検出することができる。ワイヤレスデバイス２０２は、信号を処理する際に使用するためのデジタル信号プロセッサ（ＤＳＰ）２２０をも含むこともできる。ＤＳＰ２２０は、送信のためにパケットを生成するように構成され得る。いくつかの態様では、パケットは物理レイヤデータユニット（ＰＰＤＵ）を含むことができる。
【００３５】
[0048]ワイヤレスデバイス２０２は、いくつかの態様ではユーザインターフェース２２２をさらに含むことができる。ユーザインターフェース２２２は、キーパッド、マイクロフォン、スピーカー、および／またはディスプレイを含むことができる。ユーザインターフェース２２２は、ワイヤレスデバイス２０２のユーザに情報を伝達し、および／またはユーザからの入力を受信する、任意の要素または構成要素を含むことができる。
【００３６】
[0049]ワイヤレスデバイス２０２の様々な構成要素は、バスシステム２２６によって互いに結合され得る。バスシステム２２６は、たとえば、データバスを含むことができ、ならびに、データバスに加えて、電力バス、制御信号バス、およびステータス信号バスを含むことができる。ワイヤレスデバイス２０２の構成要素は、何らかの他の機構を使用して、互いに結合されるか、または互いに対する入力を受け付けるかもしくは与えることができる。
【００３７】
[0050]いくつかの別個の構成要素が図２に示されているが、それらの構成要素のうちの１つまたは複数は、組み合わせられるかまたは共通に実装され得る。たとえば、プロセッサ２０４は、プロセッサ２０４に関して上記で説明した機能を実装するためだけでなく、信号検出器２１８および／またはＤＳＰ２２０に関して上記で説明した機能を実装するためにも使用され得る。さらに、図２に示す構成要素の各々は、複数の別個の要素を使用して実装され得る。
【００３８】
[0051]ＡＰ１０４およびＳＴＡ１０６などのデバイス間または複数のＳＴＡ１０６間の適切な通信を保証するために、ＡＰ１０４またはＳＴＡ１０６は、ＡＰ１０４またはＳＴＡ１０６の特性に関する情報を受信することができる。たとえば、ＳＴＡ１０６は、ＳＴＡ１０６とＡＰ１０４との間の通信のタイミングを同期させるために、ＡＰ１０４についてのタイミング情報を使用することができる。追加または代替として、ＳＴＡ１０６は、ＡＰ１０４または別のＳＴＡの媒体アクセス制御（ＭＡＣ）アドレス、ＡＰ１０４によってサービスされる基本サービスセット（ＢＳＳ）の識別子など、他の情報を必要とすることができる。ＳＴＡ１０６は、メモリ２０６およびプロセッサ２０４を使用して実行されるソフトウェアを通してなど、そのような情報を単独で必要とするかどうかを決定することができる。
【００３９】
[0052]ＡＰ１０４またはＳＴＡ１０６は、複数の動作モードを有することができる。たとえば、ＳＴＡ１０６は、アクティブモード、通常動作モードまたはフル電力モードと呼ばれる第１の動作モードを有することができる。アクティブモードでは、ＳＴＡ１０６は、常に「アウェイク」状態にあり、別のＳＴＡ１０６とデータをアクティブに送信／受信することができる。さらに、ＳＴＡ１０６は、省電力モードまたはスリープモードと呼ばれる第２の動作モードを有することができる。省電力モードでは、ＳＴＡ１０６は、「アウェイク」状態にあり得るか、またはＳＴＡ１０６が別のＳＴＡ１０６とデータをアクティブに送信／受信しない「ドーズ」状態もしくは「スリープ」状態にあり得る。たとえば、ＳＴＡ１０６の受信機２１２、ならびに、場合によってはＤＳＰ２２０および信号検出器２１８は、ドーズ状態で低減された電力消費を使用して動作することができる。さらに、電力節約モードでは、ＳＴＡ１０６は、ＡＰ１０４または別のＳＴＡとデータを送信／受信することが可能になるように、ＳＴＡ１０６が特定の時間に「起動する」（たとえば、アウェイク状態に入る）必要があるか否かをＳＴＡ１０６に示す、ＡＰ１０４または他のＳＴＡからのメッセージ（たとえば、ページングメッセージ）をリッスンするために、時々、アウェイク状態に入ることができる。
【００４０】
[0053]図３に、デバイスが１つのチャネルを介して通信することができるワイヤレス通信システムにおける例示的な通信タイムライン３００を示す。例示的な通信タイムライン３００は、持続時間ΔＡ３０６のディスカバリ間隔（ＤＩ）３０２と、持続時間ΔＢ３０８のページング間隔（ＰＩ）３０４と、持続時間ΔＣ３１０の全体的な間隔とを含むことができる。いくつかの態様では、通信は、他のチャネルをも介して行うことができる。時間は、時間軸にわたってページの端から端まで水平方向に増加する。
【００４１】
[0054]ＤＩ３０２中に、ＡＰまたはＳＴＡは、ディスカバリパケットなどのブロードキャストメッセージを通してサービスを広告することができる。いくつかの実施形態では、ＤＩ３０２は、ディスカバリウィンドウ（ＤＷ：discovery window）と呼ばれることがある。ＡＰまたはＳＴＡは、他のＡＰまたはＳＴＡによって送信されたブロードキャストメッセージをリッスンすることができる。いくつかの態様では、ＤＩの持続時間は、時間とともに変化することができる。他の態様では、ＤＩの持続時間は、ある時間期間にわたって固定されたままであることができる。ＤＩ３０２の終端は、図３に示すように、第１の残余時間期間だけ後続のＰＩ３０４の始端から分離され得る。ＰＩ３０４の終端は、図３に示すように、異なる残余時間期間だけ後続のＤＩの始端から分離され得る。
【００４２】
[0055]ＰＩ３０４中に、ＡＰまたはＳＴＡは、ページング要求パケットなどのページング要求メッセージを送信することによって、ブロードキャストメッセージ中で広告される複数のサービスのうちの１つまたは複数に対する関心を示すことができる。ＡＰまたはＳＴＡは、他のＡＰまたはＳＴＡによって送信されたページング要求メッセージをリッスンすることができる。いくつかの態様では、ＰＩの持続時間は、時間とともに変化することができる。他の態様では、ＰＩの持続時間は、ある時間期間にわたって一定のままであることができる。いくつかの態様では、ＰＩの持続時間は、ＤＩの持続時間よりも短くなり得る。
【００４３】
[0056]持続時間ΔＣ３１０の全体的な間隔は、図３に示すように、１つのＤＩの始端から後続のＤＩの始端までの時間期間を測定することができる。いくつかの実施形態では、持続時間ΔＣ３１０は、ディスカバリ期間（ＤＰ：discovery period）と呼ばれることがある。いくつかの態様では、全体的な間隔の持続時間は、時間とともに変化することができる。他の態様では、全体的な間隔の持続時間は、ある時間期間にわたって一定のままであることができる。持続時間ΔＣ３１０の全体的な間隔の終わりに、ＤＩと、ＰＩと、残余間隔と、を含む別の全体的な間隔が開始することができる。連続する全体的な間隔は、無期限に続くか、または固定時間期間の間継続することができる。
【００４４】
[0057]ＳＴＡが送信していないかもしくはリッスンしていないか、または送信もしくはリッスンすることを予想していないとき、ＳＴＡは、スリープモードまたは省電力モードに入ることができる。一例として、ＳＴＡは、ＤＩまたはＰＩ以外の期間中にスリープすることができる。スリープモードまたは省電力モードにあるＳＴＡは、ＳＴＡによる送信またはリスニングを可能にするために、ＤＩまたはＰＩの始端で起動するか、または通常動作モードもしくはフル電力モードに復帰することができる。いくつかの態様では、ＳＴＡが別のデバイスと通信することを予想する他のときにまたは起動するようにＳＴＡに命令する通知パケットを受信したことの結果として、ＳＴＡは、起動するか、または通常動作モードもしくはフル電力モードに復帰することができる。ＳＴＡは、ＳＴＡが送信を受信することを保証するために早く起動することができる。
【００４５】
[0058]上記で説明したように、ＤＩ中に、ＡＰまたはＳＴＡは、ディスカバリパケット（ＤＰ：discovery packet）を送信することができる。ＰＩ中に、ＡＰまたはＳＴＡは、ページング要求パケット（ＰＲ：paging request packet）を送信することができる。ＤＰは、ＳＴＡまたはＡＰによって与えられた複数のサービスを広告し、ページング間隔がいつディスカバリパケットを送信するデバイスのためのものであるかを示すように構成されたパケットであり得る。ＤＰは、データフレーム、管理フレーム、または管理アクションフレームを含むことができる。ＤＰは、上位レイヤのディスカバリプロトコルまたはアプリケーションベースのディスカバリプロトコルによって生成された情報を搬送することができる。ＰＲは、ＡＰまたはＳＴＡによって与えられた複数のサービスのうちの少なくとも１つに対する関心を示すように構成されたパケットであり得る。
【００４６】
[0059]ＤＩおよびＰＩの始端および終端は、ディスカバリパケットまたはページング要求パケットを送信することを望む各ＳＴＡに数々の方法を介して知られ得る。いくつかの態様では、各ＳＴＡは、他のＡＰまたはＳＴＡとそれのクロックを同期させ、共有ＤＩおよびＰＩ開始時間とＤＩ持続時間とＰＩ持続時間とを設定することができる。他の態様では、デバイスは、本開示の態様と競合するか、またはそれと準拠しないことのある通信などのレガシー通信の媒体を消去し、ＤＩまたはＰＩ期間の始端および持続時間、ならびにＤＩおよびＰＩ持続時間に関する追加情報を示すために特殊送信可（Ｓ−ＣＴＳ：special clear to send）信号などの信号を送ることができる。
【００４７】
[0060]他のＳＴＡからなど、ディスカバリパケットを介して広告されたサービスに潜在的に関心があるＳＴＡは、ＤＩ中に起動するかまたは起動したままであり、特定のディスカバリパケットが、受信ＳＴＡに関係があり得る複数のサービスのうちの１つまたは複数に関する情報を含むかどうかを決定するためにディスカバリパケットを処理することができる。ＤＩ期間の後に、情報を通信することを予定していないＳＴＡは、ＳＴＡが通信することを予定する次回まで休止期間の間、スリープモードまたは省電力モードに入ることができる。いくつかの態様では、ＳＴＡが、ＤＩまたはＰＩの外で別のデバイスと追加情報を通信することができるまで、ＳＴＡは、スリープモードまたは省電力モードに入ることができる。いくつかの態様では、ＳＴＡは、次のＰＩの始端までスリープモードまたは省電力モードに入ることができる。ＰＩの始端において、関係するＳＴＡは、サービスのプロバイダにページング要求パケットを送信するために起動することができる。
【００４８】
[0061]他のＳＴＡに送信されたディスカバリパケットなどの送信されたディスカバリパケットへの応答を待つＳＴＡは、ＰＩ中に起動するかまたは起動したままであり、ＳＴＡによって与えられた複数のサービスのうちの少なくとも１つに対する別のデバイスによる関心を特定のページング要求パケットが示すかどうかを決定するためにページング要求パケットを処理することができる。ＰＩ期間の後に、情報を通信することを予定していないＳＴＡは、ＳＴＡが通信することを予定する次回まで休止期間（break period）の間、スリープモードまたは省電力モードに入ることができる。いくつかの態様では、ＳＴＡが、ＤＩまたはＰＩの外で別のデバイスと追加情報を通信することができるまで、ＳＴＡは、スリープモードまたは省電力モードに入ることができる。いくつかの態様では、ＳＴＡは、次のＤＩの始端までスリープモードまたは省電力モードに入ることができる。
【００４９】
[0062]例として、全体的な間隔の持続時間ΔＣは、いくつかの態様では、約１〜５秒に等しくなることができる。他の態様では、全体的な間隔は、１秒よりも短いか、または５秒よりも長くなり得る。ＤＩの持続時間ΔＡは、いくつかの態様では、約１６ｍｓに等しくなるが、他の態様では、１６ｍｓよりも長くなることもまたは短くなることもある。ＰＩの持続時間ΔＢは、いくつかの態様では、持続時間ΔＡにほぼ等しくなることができる。他の態様では、持続時間ΔＢは、持続時間ΔＡよりも長くなることもまたは短くなることもある。
【００５０】
[0063]図４に、通信のためにレガシーシステムにおいて使用されるビーコンフレーム４００の一例を示す。図示のように、ビーコン４００は、中央アクセス制御（ＭＡＣ）ヘッダ４０２と、フレーム本体４０４と、フレーム制御シーケンス（ＦＣＳ）４０６とを含む。図示のように、ＭＡＣヘッダ４０２は２４バイト長であり、フレーム本体４０４は可変長であり、ＦＣＳ４０６は４バイト長である。
【００５１】
[0064]ＭＡＣヘッダ４０２は、ビーコンフレーム４００のための基本的なルーティング情報を与えるように働く。図示の実施形態では、ＭＡＣヘッダ４０２は、フレーム制御（ＦＣ）フィールド４０８と、持続時間フィールド４１０と、宛先アドレス（ＤＡ）フィールド４１２と、ソースアドレス（ＳＡ）フィールド４１４と、基本サービスセット識別情報（ＢＳＳＩＤ）フィールド４１６と、シーケンス制御フィールド４１８とを含む。図示のように、ＦＣフィールド４０８は２バイト長であり、持続時間フィールド４１０は２バイト長であり、ＤＡフィールド４１２は６バイト長であり、ＳＡフィールド４１４は６バイト長であり、ＢＳＳＩＤフィールド４１６は６バイト長であり、シーケンス制御フィールド４１８は２バイト長である。
【００５２】
[0065]フレーム本体４０４は、送信ノードに関する詳細な情報を与えるように働く。図示の実施形態では、フレーム本体４０４は、タイムスタンプフィールド４２０と、ビーコン間隔フィールド４２２と、能力(ability)情報フィールド４２４と、サービスセット識別子（ＳＳＩＤ）フィールド４２６と、サポートレートフィールド４２８と、周波数ホッピング（ＦＨ）パラメータセット４３０と、直接シーケンスパラメータセット４３２と、競合なしパラメータセット４３４と、独立基本サービスセット（ＩＢＳＳ）パラメータセット４３６と、国情報フィールド４３８と、ＦＨホッピングパラメータフィールド４４０と、ＦＨパターンテーブル４４２と、電力制約フィールド４４４と、チャネル切替え告知フィールド４４６と、クワイエットフィールド４４８と、ＩＢＳＳ直接周波数選択（ＤＦＳ：direct frequency selection）フィールド４５０と、送信電力制御（ＴＰＣ：transmit power control）フィールド４５２と、実効放射電力（ＥＲＰ：effective radiated power）情報フィールド４５４と、拡張サポートレートフィールド４５６と、ロバストセキュリティネットワーク（ＲＳＮ）フィールド４５８とを含む。
【００５３】
[0066]図４に示すように、タイムスタンプフィールド４２０は８バイト長であり、ビーコン間隔フィールド４２２は２バイト長であり、能力情報フィールド４２４は２バイト長であり、サービスセット識別子（ＳＳＩＤ）フィールド４２６は可変長であり、サポートレートフィールド４２８は可変長であり、周波数ホッピング（ＦＨ）パラメータセット４３０は７バイト長であり、直接シーケンスパラメータセット４３２は２バイト長であり、競合なしパラメータセット４３４は８バイト長であり、独立基本サービスセット（ＩＢＳＳ）パラメータセット４３６は４バイト長であり、国情報フィールド４３８は可変長であり、ＦＨホッピングパラメータフィールド４４０は４バイト長であり、ＦＨパターンテーブル４４２は可変長であり、電力制約フィールド４４４は３バイト長であり、チャネル切替え告知フィールド４４６は６バイト長であり、クワイエットフィールド４４８は８バイト長であり、ＩＢＳＳ直接周波数選択（ＤＦＳ）フィールド４５０は可変長であり、送信電力制御（ＴＰＣ）フィールド４５２は４バイト長であり、実効放射電力（ＥＲＰ）情報フィールド４５４は３バイト長であり、拡張サポートレートフィールド４５６は可変長であり、ロバストセキュリティネットワーク（ＲＳＮ）フィールド４５８は可変長である。
【００５４】
[0067]図４をさらに参照すると、ビーコンフレーム４００は可変長であるが、常に少なくとも８９バイト長である。様々な無線環境では、ビーコンメッセージ４００中に含まれている情報の多くがまれに使用されるか、またはまったく使用されないことがある。したがって、低電力無線環境では、電力消費を低減するために、ビーコンフレーム４００の長さを低減することが望ましいことがある。その上、いくつかの無線環境では、低いデータレートを使用する。たとえば、８０２．１１ａｈ規格を実装するアクセスポイントは、比較的遅いデータ送信レートにより、ビーコンフレーム４００を送信するのに比較的長い時間を要することができる。したがって、ビーコンフレーム４００を送信するのにかかる時間を短縮するために、ビーコンフレーム４００の長さを低減することが望ましいことがある。
【００５５】
[0068]様々な実施形態では、近傍アウェアネットワークは、ビーコンフレーム４００を復号するように構成された既存のハードウェアに適合するようにフォーマットされた同期ビーコンを使用することができる。たとえば、近傍アウェアネットワーク中の１つまたは複数のＳＴＡおよび／またはＡＰは、ＮＡＮビーコンフレームを送信することができ、ＮＡＮビーコンフレームは、ＮＡＮ中のＳＴＡにわたって同期を維持するために使用され得る。いくつかの実施形態では、ビーコンフレーム４００中の様々なフィールドが除去、サイズ変更、および／または再利用され得る。
【００５６】
[0069]図５に、例示的な近傍アウェアネットワークビーコンフレーム５００を示す。図示の実施形態では、ＮＡＮビーコンフレーム５００は、フレーム制御（ＦＣ）フィールド５０８と、持続時間フィールド５１０と、宛先アドレス（ＤＡ）フィールド５１２と、ソースアドレス（ＳＡ）フィールド５１４と、ＮＡＮ  ＢＳＳＩＤフィールド５１６と、シーケンス制御フィールド５１８と、高スループット（ＨＴ）制御フィールド５１９と、タイムスタンプ５２０と、ディスカバリ期間フィールド５２２と、予約済み能力フィールド５２４と、ＳＳＩＤフィールド５２６と、ディスカバリウィンドウ（ＤＷ）情報フィールド５２９と、フレーム検査シーケンス（ＦＣＳ）５０６と、を含む。図示のように、フレーム制御（ＦＣ）フィールド５０８は２バイト長であり、持続時間フィールド５１０は２バイト長であり、宛先アドレス（ＤＡ）フィールド５１２は６バイト長であり、ソースアドレス（ＳＡ）フィールド５１４は６バイトであり、ＮＡＮ  ＢＳＳＩＤフィールド５１６は６バイト長であり、シーケンス制御フィールド５１８は２バイト長であり、高スループット（ＨＴ）制御フィールド５１９は４バイト長であり、タイムスタンプ５２０は８バイト長であり、ディスカバリ期間フィールド５２２は２バイト長であり、予約済み能力フィールド５２４は２バイト長であり、ＳＳＩＤフィールド５２６は可変長であり、ディスカバリウィンドウ（ＤＷ）情報フィールド５２９は可変長であり、フレーム検査シーケンス（ＦＣＳ）５０６は４バイト長である。様々な実施形態では、ＮＡＮビーコンフレーム５００は、図５に示した１つまたは複数のフィールドを省略し、および／または、本明細書で説明するフィールドのいずれかを含む、図５に示していない１つまたは複数のフィールドを含むことができる。ＮＡＮビーコンフレーム５００中のフィールドは、異なる適切な長さであり得、異なる順序であり得ることを、当業者は諒解されよう。
【００５７】
[0070]様々な実施形態では、フレーム制御（ＦＣ）フィールド５０８、持続時間フィールド５１０、宛先アドレス（ＤＡ）フィールド５１２、ソースアドレス（ＳＡ）フィールド５１４、シーケンス制御フィールド５１８、タイムスタンプ５２０、ＳＳＩＤフィールド５２６、およびフレーム検査シーケンス（ＦＣＳ）５０６のうちの１つまたは複数は、それぞれ、図４に関して上記で説明したフレーム制御（ＦＣ）フィールド４０８、持続時間フィールド４１０、宛先アドレス（ＤＡ）フィールド４１２、ソースアドレス（ＳＡ）フィールド４１４、シーケンス制御フィールド４１８、タイムスタンプ４２０、ＳＳＩＤフィールド４２６、およびフレーム検査シーケンス（ＦＣＳ）４０６を含むことができる。したがって、フレーム制御（ＦＣ）フィールド５０８、持続時間フィールド５１０、宛先アドレス（ＤＡ）フィールド５１２、ソースアドレス（ＳＡ）フィールド５１４、ＮＡＮ  ＢＳＳＩＤフィールド５１６、およびシーケンス制御フィールド５１８は、図４のＭＡＣヘッダ４０２などのレガシーＭＡＣヘッダと同じフォーマットを有するように構成され得る。ＮＡＮビーコンフレーム５００は、改変なしに、レガシーハードウェアによって処理するようにフォーマットされ得る。
【００５８】
[0071]いくつかの実施形態では、ＮＡＮ  ＢＳＳＩＤフィールド５１６は、図４に関して上記で説明したＢＳＳＩＤフィールド４１６と同じフォーマットを有することができるが、別様に解釈され得る。一実施形態では、ＮＡＮ  ＢＳＳＩＤ５１６は、すべてのＮＡＮ同期フレーム中で使用される所定のＢＳＳＩＤまたはトークンＢＳＳＩＤを含むことができる。したがって、異なるネットワークが同期フレーム中に同じＮＡＮ  ＢＳＳＩＤを含むことができる。トークンＢＳＳＩＤは、プリセットされ得、広く知られていることがあり、および／または動的に決定され得る。いくつかの実施形態では、ＤＡフィールド５１２は、ブロードキャストアドレスに設定され得、ＳＡフィールド５１４は、送信者アドレスに設定され得る。
【００５９】
[0072]別の実施形態では、各ＮＡＮは、異なる（たとえば、擬似ランダム）ＮＡＮ  ＢＳＳＩＤ５１６を有することができる。一実施形態では、ＮＡＮ  ＢＳＳＩＤ５１６は、サービスアプリケーションに基づき得る。たとえば、アプリケーションＡによって作成されたＮＡＮは、アプリケーションＡの識別子に基づいてＢＳＳＩＤ５１６を有することができる。いくつかの実施形態では、ＮＡＮ  ＢＳＳＩＤ５１６は、標準化団体によって定義され得る。いくつかの実施形態では、ＮＡＮ  ＢＳＳＩＤ５１６は、たとえば、デバイスロケーション、サーバに割り当てられたＩＤなどの他のコンテキスト情報および／またはデバイス特性に基づき得る。一例では、ＮＡＮ  ＢＳＳＩＤ５１６は、ＮＡＮの緯度ロケーションおよび経度ロケーションのハッシュを含むことができる。
【００６０】
[0073]一実施形態では、フレーム制御フィールド５０８は、タイプインジケータを含むことができる。ＦＣ５０８のタイプインジケータは、ＮＡＮビーコン５００が管理フレームであることを示すことができる。一実施形態では、ＳＴＡ１０６（図１）は、タイプインジケータをビーコン管理フレームに設定することができる。いくつかの実施形態では、ＮＡＮビーコン５００の１つまたは複数のフィールドは、プローブ応答として送られ得、ＦＣ５０８のタイプインジケータは、フレームがプローブ応答であることを示すことができる。
【００６１】
[0074]いくつかの実施形態では、タイムスタンプ５２０は、図４に関して上記で説明したタイムスタンプ４２０と同じフォーマットを有することができるが、別様に解釈され得る。一実施形態では、タイムスタンプ５２０は、送信のときにおける、またはフレームコンパイルのときにおける送信デバイスのクロック時間を含むことができる。一実施形態では、ＳＴＡ１０６（図１）は、タイムスタンプ５２０を内部クロック値に設定することができる。
【００６２】
[0075]いくつかの実施形態では、ディスカバリ期間フィールド５２２は、図４に関して上記で説明したビーコン間隔フィールド４２２と同じフォーマットを有することができるが、別様に解釈され得る。一実施形態では、ディスカバリ期間フィールド５２２は、（図３に関して上記で説明した）ディスカバリ期間３１０の長さを示すことができる。たとえば、タイムスタンプ５２０は、ディスカバリ間隔３０２がディスカバリ期間３１０に関していつ開始することになるかを示すことができる。
【００６３】
[0076]いくつかの実施形態では、予約済み能力フィールド５２４は、図４に関して上記で説明した能力情報フィールド４２４と同じフォーマットを有することができるが、予約済みビットを含み得る。したがって、受信ＳＴＡ１０６（図１）は、レガシーハードウェアを使用してＮＡＮビーコン５００を復号することができるが、予約済み能力フィールド５２４の値を無視することができる。一実施形態では、予約済み能力フィールド５２４は、ＮＡＮに関する追加情報を含むことができる。
【００６４】
[0077]いくつかの実施形態では、ＳＳＩＤフィールド５２６は、図４に関して上記で説明したＳＳＩＤフィールド４２６と同じフォーマットを有することができるが、別様に解釈され得る。一実施形態では、ＳＳＩＤフィールド４２６は、アプリケーション識別子を搬送することができる。一実施形態では、ＳＳＩＤフィールド４２６は省略され得る。一実施形態では、ＳＳＩＤフィールド４２６は、ネットワーク識別子を含むことができる。
【００６５】
[0078]ディスカバリウィンドウ情報フィールド５２９は、図３に関して上記で説明したディスカバリウィンドウ３０２に関する情報を提供することができる。様々な実施形態では、ＳＴＡ１０６（図１）は、ディスカバリウィンドウ３０２中の任意の時間にＮＡＮビーコンを送信することができる。したがって、受信デバイスは、ＮＡＮビーコン５００の送信時間に基づいてディスカバリウィンドウ３０２の開始時間を決定することができないことがある。一実施形態では、ディスカバリウィンドウ情報フィールド５２９は、（図３に関して上記で説明した）ディスカバリ間隔３０２のオフセットまたは開始時間を示すことができる。たとえば、タイムスタンプ５２０は、ディスカバリ間隔３０２がディスカバリ期間３１０に関していつ開始することになるかを示すことができる。したがって、受信ＳＴＡ１０６は、ディスカバリウィンドウ情報フィールド５２９に基づいて起動時間を決定することができる。
【００６６】
[0079]いくつかの実施形態では、ＮＡＮアウェアでない１つまたは複数のデバイスがＮＡＮビーコン５００を受信することができる。いくつかの構成では、そのようなレガシーデバイスは、図４に関して上記で説明したビーコン４００などのレガシービーコンとしてＮＡＮビーコン５００を解釈することができる。たとえば、レガシーデバイスは、複数の異なるＮＡＮ  ＢＳＳＩＤフィールド５１６を有する複数のＮＡＮビーコン５００を受信することができる。いくつかの実施形態では、ＮＡＮビーコン５００は、レガシーデバイスがＮＡＮビーコン５００を無視または破棄することができるように構成され得る。他の実施形態では、ＮＡＮビーコン５００は、レガシーデバイスに可視である異なるＮＡＮ  ＢＳＳＩＤフィールド５１６の数を低減するように構成され得る。
【００６７】
[0080]一実施形態では、ＤＡ５１２は、ビーコン５００がＮＡＮビーコンであることを示すマルチキャストアドレスまたはアドレスのグループに設定され得る。ビーコン５００がＮＡＮビーコンであることを示すマルチキャストアドレスまたはアドレスのグループは、あらかじめ決定され得、メモリ２０６（図２）に記憶され得る、および／または標準化団体によって設定され得る。ＮＡＮアウェアなデバイスは、ＮＡＮマルチキャストアドレスまたはアドレスのグループをリッスンするように構成され得る。レガシーデバイスは、ＮＡＮマルチキャストアドレスまたはアドレスのグループを無視または破棄するように構成され得る。
【００６８】
[0081]いくつかの実施形態では、ＳＡ５１４は、ＮＡＮ  ＢＳＳＩＤ５１６とは異なるアドレスに設定され得る。たとえば、ＳＡ５１４は、ワイヤレスデバイス２０２（図２）のアドレスに設定され得る。上記で説明したように、ＮＡＮ  ＢＳＳＩＤ５１６は、すべてのＮＡＮ同期フレーム中で使用される所定のＢＳＳＩＤまたはトークンＢＳＳＩＤ、アプリケーションベースのＢＳＳＩＤなどを含むことができる。いくつかのレガシーデバイスは、ビーコンフレームが同一のＳＡ５１４の値とＢＳＳＩＤ５１６の値とを有すると仮定することができるので、いくつかのレガシーデバイスは、ＳＡ５１４フィールドおよびＢＳＳＩＤ５１６フィールドの中に異なる値を有するＮＡＮビーコン５００を破棄または無視することができる。
【００６９】
[0082]他の実施形態では、ＳＡ５１４は、ワイヤレスデバイス２０２（図２）のアドレスとは無関係に、ＮＡＮ  ＢＳＳＩＤ５１６に設定され得る。上記で説明したように、ＮＡＮ  ＢＳＳＩＤ５１６は、すべてのＮＡＮ同期フレーム中で使用される所定のＢＳＳＩＤまたはトークンＢＳＳＩＤを含むことができる。いくつかのレガシーデバイスが、ビーコンフレーム中に見られる別個のＢＳＳＩＤ値を追跡することができるので、使用される異なるＮＡＮ  ＢＳＳＩＤ５１６の値の数を低減することは、レガシーデバイス上で追跡される異なるネットワークの数を低減することができる。
【００７０】
[0083]図６に、例示的な近傍アウェアネットワークディスカバリフレーム６００を示す。図示の実施形態では、ＮＡＮディスカバリフレーム６００は、フレーム制御（ＦＣ）フィールド６０８と、持続時間フィールド６１０と、宛先アドレス（ＤＡ）フィールド６１２と、ソースアドレス（ＳＡ）フィールド６１４と、ＮＡＮ  ＢＳＳＩＤフィールド６１６と、シーケンス制御フィールド６１８と、高スループット（ＨＴ）制御フィールド６１９と、カテゴリーフィールド６６０と、アクションフィールド６６２と、サービス識別子６６４と、接続セットアップ情報フィールド６６６と、フレーム検査シーケンス（ＦＣＳ）６０６とを含む。図示のように、フレーム制御（ＦＣ）フィールド６０８は２バイト長であり、持続時間フィールド６１０は２バイト長であり、宛先アドレス（ＤＡ）フィールド６１２は６バイト長であり、ソースアドレス（ＳＡ）フィールド６１４は６バイト長であり、ＮＡＮ  ＢＳＳＩＤフィールド６１６は６バイト長であり、シーケンス制御フィールド６１８は２バイト長であり、高スループット（ＨＴ）制御フィールド６１９は４バイト長であり、カテゴリーフィールド６６０は１バイト長であり、アクションフィールド６６２は１バイト長であり、フレーム検査シーケンス（ＦＣＳ）６０６は４バイト長である。様々な実施形態では、ＮＡＮディスカバリフレーム６００は、図６に示した１つまたは複数のフィールドを省略し、および／または、本明細書で説明するフィールドのいずれかを含む、図６に示していない１つまたは複数のフィールドを含むことができる。ＮＡＮディスカバリフレーム６００中のフィールドは、異なる適切な長さであり得、異なる順序であり得ることを、当業者は諒解されよう。
【００７１】
[0084]様々な実施形態では、フレーム制御（ＦＣ）フィールド６０８、持続時間フィールド６１０、宛先アドレス（ＤＡ）フィールド６１２、ソースアドレス（ＳＡ）フィールド６１４、シーケンス制御フィールド６１８、タイムスタンプ６２０、およびフレーム検査シーケンス（ＦＣＳ）６０６のうちの１つまたは複数は、それぞれ、図４に関して上記で説明したフレーム制御（ＦＣ）フィールド４０８、持続時間フィールド４１０、宛先アドレス（ＤＡ）フィールド４１２、ソースアドレス（ＳＡ）フィールド４１４、シーケンス制御フィールド４１８、タイムスタンプ４２０およびフレーム検査シーケンス（ＦＣＳ）４０６を含むことができる。したがって、フレーム制御（ＦＣ）フィールド６０８、持続時間フィールド６１０、宛先アドレス（ＤＡ）フィールド６１２、ソースアドレス（ＳＡ）フィールド６１４、ＮＡＮ  ＢＳＳＩＤフィールド６１６、およびシーケンス制御フィールド６１８は、図４のＭＡＣヘッダ４０２などのレガシーＭＡＣヘッダと同じフォーマットを有するように構成され得る。ＮＡＮディスカバリフレーム６００は、改変なしに、レガシーハードウェアによって処理するようにフォーマットされ得る。
【００７２】
[0085]いくつかの実施形態では、ＮＡＮ  ＢＳＳＩＤフィールド６１６は、図４に関して上記で説明したＢＳＳＩＤフィールド４１６と同じフォーマットを有することができるが、別様に解釈され得る。一実施形態では、ＮＡＮ  ＢＳＳＩＤ６１６は、すべてのＮＡＮ同期フレーム中で使用される所定のＢＳＳＩＤまたはトークンＢＳＳＩＤを含むことができる。したがって、異なるネットワークが同期フレーム中に同じＮＡＮ  ＢＳＳＩＤを含むことができる。トークンＢＳＳＩＤは、プリセットされ得、広く知られていることがあり、および／または動的に決定され得る。いくつかの実施形態では、ＤＡフィールド６１２は、ブロードキャストアドレスに設定され得、ＳＡフィールド６１４は、送信者アドレスに設定され得る。
【００７３】
[0086]別の実施形態では、各ＮＡＮは、異なる（たとえば、擬似ランダム）ＮＡＮ  ＢＳＳＩＤを有することができる。一実施形態では、ＮＡＮ  ＢＳＳＩＤは、サービスアプリケーションに基づき得る。たとえば、アプリケーションＡによって作成されたＮＡＮは、アプリケーションＡの識別子に基づいてＢＳＳＩＤを有することができる。いくつかの実施形態では、ＮＡＮ  ＢＳＳＩＤ５１６は、標準化団体によって定義され得る。いくつかの実施形態では、ＮＡＮ  ＢＳＳＩＤ５１６は、たとえば、デバイスロケーション、サーバに割り当てられたＩＤなどの他のコンテキスト情報および／またはデバイス特性に基づき得る。一例では、ＮＡＮ  ＢＳＳＩＤ５１６は、ＮＡＮの緯度ロケーションおよび経度ロケーションのハッシュを含むことができる。
【００７４】
[0087]一実施形態では、フレーム制御フィールド６０８は、タイプインジケータを含むことができる。ＦＣ６０８のタイプインジケータは、ＮＡＮディスカバリ６００が管理フレームであることを示すことができる。様々な実施形態では、ＮＡＮディスカバリフレーム６００は、公開アクションフレームであり得る。サービス識別子６６４、接続セットアップ情報６６６、および／または追加のＮＡＮ情報は、公開アクションフレーム中で情報要素として搬送され得る。一実施形態では、ＳＴＡ１０６（図１）は、タイプインジケータを公開アクションフレームに設定することができる。
【００７５】
[0088]一実施形態では、サービス識別子６６４は、ＮＡＮディスカバリフレーム６００についてのサービス情報を示すことができる。一実施形態では、ＳＡフィールド６１４は、送信デバイスのデバイス識別子を含むことができる。一実施形態では、接続セットアップ情報フィールド６６６は、たとえば、接続確立のためのＷｉＦｉ  ｄｉｒｅｃｔの使用などの１つまたは複数の接続パラメータを示す情報を含むことができる。
【００７６】
[0089]図７に、例示的な近傍アウェアネットワークディスカバリフレーム７００を示す。図示の実施形態では、ＮＡＮディスカバリフレーム７００は、カテゴリーフィールド７１０と、アクションフィールド７２０と、１つまたは複数のディスカバリタイプ長さ値（ＴＬＶ）フィールド７３０〜７５０とを含む。図示のように、カテゴリーフィールド７１０は１オクテット長であり、アクションフィールド７２０は１オクテット長であり、１つまたは複数のＴＬＶフィールド７３０〜７５０はそれぞれ可変長である。様々な実施形態では、ＮＡＮディスカバリフレーム７００は、図７に示した１つまたは複数のフィールドを省略し、および／または、本明細書で説明するフィールドのいずれかを含む、図７に示していない１つまたは複数のフィールドを含むことができる。たとえば、ＮＡＮディスカバリフレーム７００は、図６のＮＡＮディスカバリフレーム６００に関して上記で説明したフィールドのいずれかを含むことができる。ＮＡＮディスカバリフレーム７００中のフィールドは、異なる適切な長さであり得、異なる順序であり得ることを、当業者は諒解されよう。
【００７７】
[0090]いくつかの実施形態では、カテゴリーフィールド７１０は、公開アクションフレームを示すことができる。アクションフィールド７２０は、ディスカバリフレームを示すことができる。本明細書では、ＴＬＶフィールド７３０〜７５０について図９に関してより詳細に説明する。
【００７８】
[0091]図８に、例示的なベンダー固有のディスカバリフレーム８００を示す。図示の実施形態では、ベンダー固有のディスカバリフレーム８００は、カテゴリーフィールド８１０と、アクションフィールド８２０と、組織固有識別子（ＯＵＩ：organizationally unique identifier）フィールド８３０と、ＯＵＩタイプフィールド８４０と、ＯＵＩサブタイプ８５０と、ダイアログトークン８６０と、１つまたは複数のディスカバリタイプ長さ値（ＴＬＶ）フィールド８７０〜８８０とを含む。図示のように、カテゴリーフィールド８１０は１オクテットであり、アクションフィールド８２０は１オクテットであり、ＯＵＩフィールド８３０は３オクテットであり、ヒーＯＵＩタイプフィールド８４０は１オクテットであり、ＯＵＩサブタイプ８５０は１オクテットであり、ダイアログトークン８６０は１オクテットであり、１つまたは複数のディスカバリＴＬＶフィールド８７０〜８８０は可変長である。様々な実施形態では、ベンダー固有のディスカバリフレーム８００は、図８に示した１つまたは複数のフィールドを省略し、および／または、本明細書で説明するフィールドのいずれかを含む、図８に示していない１つまたは複数のフィールドを含むことができる。たとえば、ベンダー固有のディスカバリフレーム８００は、図６のベンダー固有のディスカバリフレーム６００に関して上記で説明したフィールドのいずれかを含むことができる。ベンダー固有のディスカバリフレーム８００中のフィールドは、異なる適切な長さであり得、異なる順序であり得ることを、当業者は諒解されよう。
【００７９】
[0092]いくつかの実施形態では、カテゴリーフィールド７１０は、公開アクションフレームを示すことができる。アクションフィールド７２０は、ベンダー固有のアクションフレームを示すことができる。ＯＵＩフィールド８３０は、（「指名先」と呼ばれる）ベンダー、メーカー、または他の団体を広域的にまたは世界的に一意に識別するために使用され得、指名先の排他的使用のために（ＭＡＣアドレス、グループアドレス、サブネットワークアクセスプロトコル識別子など）派生識別子の可能な各タイプのブロックを効果的に予約することができる。ＯＵＩタイプフィールド８４０は、たとえば、ＭＡＣ識別子、コンテキスト依存識別子（ＣＤＩ）、拡張一意識別子（ＥＵＩ）など、ＯＵＩフィールド８３０のタイプを示すために使用され得る。ＯＵＩサブタイプフィールド８５０は、ＯＵＩタイプフィールド８４０のサブタイプを示すことができる。ダイアログトークン８６０は、特定のトランザクションを示すように選定され得る。本明細書では、ＴＬＶフィールド８３０〜７５０について図９に関してより詳細に説明する。
【００８０】
[0093]図９に、図１のワイヤレス通信システム１００内で採用され得る例示的なディスカバリタイプ長さ値（ＴＬＶ）９００を示す。様々な実施形態では、たとえば、ＡＰ１８４（図１）、ＳＴＡ１８６Ａ〜１０６Ｄ（図１）、および／またはワイヤレスデバイス２０２（図２）など、本明細書で説明する任意のデバイス、または別の互換デバイスは、ディスカバリＴＬＶ９００を送信することができる。ワイヤレス通信システム１００における１つまたは複数のメッセージは、たとえば、ビーコン４００（図４）、ビーコン５００（図５）、ディスカバリフレーム６００（図６）、プローブ応答、および／またはディスカバリクエリフレームなどのディスカバリＴＬＶ９００を含むことができる。一実施形態では、ディスカバリＴＬＶ９００は、図７および図８に関して上記で説明したディスカバリＴＬＶ７３０〜７５０および／または８７０〜８８０を含むことができる。ＴＬＶ９００の１つまたは複数のフィールドは、フレーム９００に加えて、またはその代わりに、情報要素の属性中に含まれ得る。たとえば、属性は、ベンダー固有のＩＥであり得る。
【００８１】
[0094]図示の実施形態では、ディスカバリＴＬＶ９００は、サービス識別子９１０と、長さフィールド９２０と、サービス制御フィールド９３０と、整合フィルタコンテナ９５０と、レンジング情報コンテナ９６０と、サービス固有情報コンテナ９７０と、発見アドレス情報コンテナ９８０とを含む。ディスカバリＴＬＶ９００は追加フィールドを含むことができ、フィールドは並べ替えられ、削除され、および／またはサイズ変更され得ることが当業者には諒解されよう。たとえば、様々な実施形態では、ディスカバリＴＬＶ９００は、サービス制御フィールド９３０および／または整合フィルタコンテナ９５０を省略することができる。
【００８２】
[0095]図示のサービス識別子フィールド９１０は６オクテット長である。いくつかの実装形態では、サービス識別子フィールド９１０は、２、５、または１２オクテット長であり得る。いくつかの実装形態では、サービス識別子フィールド９１０は、信号ごとにおよび／またはサービスプロバイダ間で長さが変化するなど、可変長であり得る。サービス識別子フィールド９１０は、ディスカバリフレームのサービスまたはアプリケーションを識別する値を含むことができる。たとえば、サービス識別子９１０は、サービス名のハッシュまたはサービスに基づく他の値を含むことができる。いくつかの実施形態では、所定のトークン値が予約され得る。たとえば、オール０またはオール１のサービス識別子は、ＮＡＮ管理動作を示すことができる。
【００８３】
[0096]長さフィールド９２０は、ディスカバリＴＬＶ９００の長さまたは後続のフィールドの全長を示すために使用され得る。図９に示した長さフィールド９２０は１オクテット長である。いくつかの実装形態において、長さフィールド９２０は、２、５、または１２オクテット長であり得る。いくつかの実装形態では、長さフィールド９２０は、信号ごとにおよび／またはサービスプロバイダ間で長さが変化するなど、可変長であり得る。いくつかの実施形態では、０の長さ（または別の所定のトークン値）は、（サービス制御フィールド９３０、整合フィルタコンテナ９５０、レンジング情報コンテナ９６０、サービス固有情報コンテナ９７０、および／または発見アドレス情報コンテナ９８０などの）１つまたは複数の他のフィールドが存在しないことを示すことができる。
【００８４】
[0097]サービス制御フィールド９３０は、適用可能なサービスの情報を示すことができる。図９に示すサービス制御フィールド９３０は１オクテット長である。いくつかの実装形態では、サービス制御フィールド９３０は、２、６、または８オクテット長であり得る。いくつかの実装形態では、サービス制御フィールド９３０は、信号ごとにおよび／またはサービスプロバイダ間で長さが変化するなど、可変長であり得る。サービス制御フィールド９３０は、パブリッシュフラグ９３１と、サブスクライブフラグ９３２と、レンジ制限フラグ９３３と、整合フィルタフラグ９３４と、サービス情報フラグ９３５と、ＡＰフラグ９３６と、発見アドレスフラグ９３７と、予約済みビットとを含む。サービス制御フィールド９３０は追加フィールドを含むことができ、フィールドは並べ替えられ、削除され、および／またはサイズ変更され得ることが当業者には諒解されよう。
【００８５】
[0098]図示の実施形態では、パブリッシュフラグ９３１、サブスクライブフラグ９３２、レンジ制限フラグ９３３、整合フィルタフラグ９３４、サービス情報フラグ９３５、ＡＰフラグ９３６、および発見アドレスフラグ９３７はそれぞれ、１ビット長である。様々な実施形態では、整合フィルタフラグ９３４は、整合フィルタコンテナ９５０がディスカバリＴＬＶ９００中に存在するかどうかを示すことができる。サービス情報フラグは、サービス固有情報コンテナ９７０がディスカバリＴＬＶ９００中に存在するかどうかを示すことができる。ＡＰフラグ９３６は、ディスカバリＴＬＶ９００がＡＰによって送信されるかどうかを示すことができる。発見アドレスフラグ９３７は、発見アドレス情報コンテナ９８０がディスカバリＴＬＶ９００中に存在するかどうかを示すことができる。
【００８６】
[0099]整合フィルタコンテナ９５０は、整合フィルタ情報を示すことができる。図９に示す整合フィルタコンテナ９５０は可変長である。いくつかの実装形態では、整合フィルタコンテナ９５０は、２、６、または８オクテット長であり得る。整合フィルタコンテナ９５０は、整合フィルタ長さフィールドおよび／またはＮＡＮのための整合フィルタを含むことができる。整合フィルタ長さフィールドは、整合フィルタの長さを示すことができる。整合フィルタ長さフィールドは１オクテット長であり得る。一実施形態では、整合フィルタ長さは、０（または別の所定のトークン値）であり得、整合フィルタは省略され得る。整合フィルタは、可変長であり得る。整合フィルタコンテナ９５０は追加フィールドを含むことができ、フィールドは並べ替えられ、削除され、および／またはサイズ変更され得ることが当業者には諒解されよう。
【００８７】
[0100]レンジング情報コンテナ９６０は、レンジング情報を示すことができる。図９に示したレンジング情報コンテナ９６０は可変長である。いくつかの実装形態では、レンジング情報コンテナ９６０は、２、６、または８オクテット長であり得る。レンジング情報コンテナ９６０は、レンジ情報長さフィールドと、レンジ制御フィールドと、レンジング情報フィールドとのうちの１つまたは複数を含むことができる。レンジング情報コンテナ９６０は追加フィールドを含むことができ、フィールドは並べ替えられ、削除され、および／またはサイズ変更され得ることが当業者には諒解されよう。
【００８８】
[0101]レンジ情報長さフィールドは、レンジング情報フィールドの長さを示すことができる。レンジ情報長さフィールドは１オクテット長であり得る。一実施形態では、レンジング情報長さフィールドは、０（または別の所定のトークン値）であり得、レンジング情報フィールドは省略され得る。レンジ制御フィールドは、レンジングアルゴリズムタイプを示すことができる。レンジ制御フィールドは１オクテット長であり得る。レンジ制御フィールドは追加フィールドを含むことができ、フィールドは並べ替えられ、削除され、および／またはサイズ変更され得ることが当業者には諒解されよう。レンジング情報フィールドは、たとえば、レンジングアルゴリズム識別、レンジングデータなどのレンジング情報を示すために使用され得る。レンジング情報フィールドは、可変長であり得る。いくつかの実装形態では、レンジング情報フィールドは、１、５、または１２オクテット長であり得る。
【００８９】
[0102]サービス固有情報コンテナ９７０は、適用可能なサービスに関する１つまたは複数の追加のデータフィールドをカプセル化することができる。図９に示すサービス固有情報コンテナ９７０は可変長である。いくつかの実装形態では、サービス固有情報コンテナ９７０は、１、５、または１２オクテット長であり得る。サービス固有情報コンテナ９７０は、サービス固有情報長さフィールドおよび／またはサービス固有情報フィールドを含むことができる。サービス固有情報長さフィールドは、サービス固有情報フィールドの長さを示すことができる。一実施形態では、サービス固有情報長さフィールドは、０（または別の所定のトークン値）であり得、サービス固有情報フィールドは省略され得る。サービス固有情報フィールドは、可変長であり得る。いくつかの実装形態では、サービス固有情報フィールドは、１、５、または１２オクテット長であり得る。
【００９０】
[0103]発見アドレス情報コンテナ９８０は、送信デバイス２０２（図２）によって発見されたデバイスの１つまたは複数のアドレスを示すことができる。図９に示す発見アドレス情報コンテナ９８０は可変長である。いくつかの実装形態では、発見アドレス情報コンテナ９８０は、１、５、または１２オクテット長であり得る。発見アドレス情報コンテナ９８０について、図１０Ａに関して以下でより詳細に説明する。
【００９１】
[0104]再び図３を参照すると、いくつかの実施形態では、ＤＷ３０４は、ディスカバリクエリウィンドウとディスカバリ応答ウィンドウとを含むことができる。様々な実施形態では、ディスカバリクエリウィンドウおよびディスカバリ応答ウィンドウは重複することができる。ディスカバリクエリウィンドウ中に、探索ＡＰまたはＳＴＡは、ディスカバリアクションフレーム中でディスカバリクエリメッセージを送ることができる。応答ＡＰまたはＳＴＡは、ディスカバリ応答ウィンドウ中でクエリに応答することができる。リッスンＡＰまたはＳＴＡは、探索ＡＰまたはＳＴＡに対するディスカバリクエリ応答を受信することができる。ディスカバリ応答のいくつかは、１つまたは複数のリッスンＡＰによって紛失され得る。いくつかの実施形態では、ディスカバリ応答クエリは、送信デバイス２０２（図２）によって発見されたデバイスの１つまたは複数のアドレスを示すことができる。応答ＡＰまたはＳＴＡは、それに応じて追加のディスカバリ応答を送信することができる。
【００９２】
[0105]図１０Ａに、図１のワイヤレス通信システム１００内で採用され得る例示的な発見アドレス情報コンテナ１０００を示す。様々な実施形態では、たとえば、ＡＰ１８４（図１）、ＳＴＡ１８６ａ〜１０６ｄ（図１）、および／またはワイヤレスデバイス２０２（図２）など、本明細書で説明する任意のデバイス、または別の互換デバイスは、発見アドレス情報コンテナ１０００を送信することができる。ワイヤレス通信システム１００における１つまたは複数のメッセージは、たとえば、ビーコン４００（図４）、ビーコン５００（図５）、ディスカバリフレーム６００（図６）、プローブ応答、および／またはディスカバリクエリフレームなどの発見アドレス情報コンテナ１０００を含むことができる。一実施形態では、発見アドレス情報コンテナ１０００は、図９に関して上記で説明した発見アドレス情報コンテナ９８０を含むことができる。
【００９３】
[0106]図示の実施形態では、発見アドレス情報コンテナ１０００は、長さフィールド１０１０と、ディスカバリ制御フィールド１０２０と、オプションのクエリインデックス１０３０と、発見アドレス情報１０４０とを含む。ディスカバリＴＬＶ９００は追加フィールドを含むことができ、フィールドは並べ替えられ、削除され、および／またはサイズ変更され得ることが当業者には諒解されよう。たとえば、様々な実施形態では、デバイスが発見されなかったとき、発見アドレス情報１０４０は省略され得る。
【００９４】
[0107]長さフィールド１０１０は、発見アドレス情報コンテナ１０００の長さまたは後続のフィールドの全長を示すために使用され得る。図１０Ａに示した長さフィールド１０１０は１オクテット長である。いくつかの実装形態において、長さフィールド１０１０は、２、５、または１２オクテット長であり得る。いくつかの実装形態では、長さフィールド１０１０は、信号ごとにおよび／またはサービスプロバイダ間で長さが変化するなど、可変長であり得る。いくつかの実施形態では、０の長さ（または別の所定のトークン値）は、（ディスカバリ制御フィールド１０２０および／または発見アドレス情報フィールド１０４０などの）１つまたは複数の他のフィールドが存在しないことを示すことができる。
【００９５】
[0108]ディスカバリ制御フィールド１０２０は、発見アドレス情報１０４０についての制御情報を示すことができる。図１０Ａに示すディスカバリ制御フィールド１０２０は１オクテット長である。いくつかの実装形態では、ディスカバリ制御フィールド１０２０は、２、６、または８オクテット長であり得る。いくつかの実装形態では、ディスカバリ制御フィールド１０２０は、信号ごとにおよび／またはサービスプロバイダ間で長さが変化するなど、可変長であり得る。ディスカバリ制御フィールド１０２０は、アドレスフラグ１０２２と、ブルームフィルタフラグ１０２４と、ブルームフィルタインデックス１０２６と、１つまたは複数の予約済みビット１０２８とを含む。ディスカバリ制御フィールド１０２０は追加フィールドを含むことができ、フィールドは並べ替えられ、削除され、および／またはサイズ変更され得ることが当業者には諒解されよう。
【００９６】
[0109]アドレスフラグ１０２２は、発見アドレス情報１０４０が、発見されたデバイスに関する完全なアドレス情報を含むのか、または部分的なアドレス情報を含むのかを示すことができる。図１０Ａに示すアドレスフラグ１０２２は１ビットである。ブルームフィルタフラグ１０２４は発見アドレス情報１０４０が、（図１１に関して以下で説明する）発見デバイスアドレスのブルームフィルタを含むかどうかを示すことができる。図１０Ａに示すブルームフィルタフラグ１０２４は１ビットである。ブルームフィルタインデックス１０２６は、ブルームフィルタ中で使用されるハッシュ関数のセットを示すことができる。図１０Ａに示すブルームフィルタインデックスは可変長である。
【００９７】
[0110]クエリインデックス１０３０は、特定のディスカバリクエリを識別することができる。図１０Ａに示すクエリインデックス１０３０は１オクテット長である。いくつかの実装形態では、クエリインデックス１０３０は、２、６、または８オクテット長であり得る。いくつかの実装形態では、クエリインデックス１０３０は、信号ごとにおよび／またはサービスプロバイダ間で長さが変化するなど、可変長であり得る。クエリインデックス１０３０は、フォローアップクエリが送信されるたびに増分、減分、あるいは変更され得る。一実施形態では、ブルームフィルタインデックス１０２６は、クエリインデックス１０３０が変更されたときに変更され得る。
【００９８】
[0111]発見アドレス情報１０４０は、発見されたデバイスの１つまたは複数のアドレスを示すことができる。図１０Ａに示す発見アドレス情報１０４０は可変長である。いくつかの実装形態では、発見アドレス情報１０４０は、５０、１００、または２００オクテット長であり得る。いくつかの実施形態では、発見アドレス情報１０４０は、発見されたデバイスの完全なアドレスまたは部分的なアドレスのリストを含むことができる。リストは、符号化されるか、またはフィルタ処理され得る。いくつかの実施形態では、発見デバイスアドレスは、（図１１に関して以下で説明する）ブルームフィルタによって表される。受信デバイスは、発見アドレス情報１０４０を受信することができ、受信デバイスアドレスがデバイスアドレス情報１０４０中に含まれているかどうかを決定することができる。受信デバイスアドレスがデバイスアドレス情報１０４０中に含まれていない場合、受信デバイスは、ＮＡＮ中でのそれの存在を告知するために１つまたは複数のディスカバリパケットを送信することができる。
【００９９】
[0112]図１０Ｂに、図１のワイヤレス通信システム１００内で採用され得る例示的なディスカバリ制御フィールド１０５０を示す。様々な実施形態では、たとえば、ＡＰ１８４（図１）、ＳＴＡ１８６ａ〜１０６ｄ（図１）、および／またはワイヤレスデバイス２０２（図２）など、本明細書で説明する任意のデバイス、または別の互換デバイスは、発見アドレス情報コンテナ１０００を送信することができる。ワイヤレス通信システム１００における１つまたは複数のメッセージは、たとえば、ビーコン４００（図４）、ビーコン５００（図５）、ディスカバリフレーム６００（図６）、プローブ応答、および／またはディスカバリクエリフレームなどのディスカバリ制御フィールド１０５０を含むことができる。一実施形態では、ディスカバリ制御フィールド１０５０は、図１０Ａに関して上記で説明したディスカバリ制御フィールド１０２０を含むことができる。
【０１００】
[0113]ディスカバリ制御フィールド１０５０は、発見アドレス情報１０４０についての制御情報を示すことができる。様々な実施形態では、ディスカバリ制御フィールド１０５０は、クエリ応答包含フィルタ（ＱＲＩＦ：query response inclusion filter）制御フィールドと呼ばれることがあり、ＱＲＩＦ属性中に含まれ得る。図１０Ｂに示すディスカバリ制御フィールド１０５０は１オクテット長である。いくつかの実装形態では、ディスカバリ制御フィールド１０５０は、２、６、または８オクテット長であり得る。いくつかの実装形態では、ディスカバリ制御フィールド１０５０は、信号ごとにおよび／またはサービスプロバイダ間で長さが変化するなど、可変長であり得る。ディスカバリ制御フィールド１０５０は、タイプフラグ１０５２と、インクルードフラグ１０５４と、ブルームフィルタインデックス１０５６と、４つの予約済みビット１０５８とを含む。ディスカバリ制御フィールド１０５０は追加フィールドを含むことができ、フィールドは並べ替えられ、削除され、および／またはサイズ変更され得ることが当業者には諒解されよう。
【０１０１】
[0114]タイプフラグ１０５２は発見アドレス情報１０４０が、一連の部分的なＭＡＣアドレスまたは（図１１に関して以下で説明する）発見デバイスアドレスのブルームフィルタを含むかどうかを示すことができる。図１０Ｂに示すタイプフラグ１０５２は１ビットである。インクルードフラグ１０５４は、発見アドレス情報１０４０中に示されるＳＴＡが、受信されたディスカバリフレームへの応答を送るべきであるか否かを示すことができる。図１０Ｂに示すインクルードフラグ１０５４は１ビットである。ブルームフィルタインデックス１０５６は、ブルームフィルタ中で使用されるハッシュ関数のセットを示すことができる。図１０Ｂに示すブルームフィルタインデックスは２ビット長である。
【０１０２】
[0115]図１１に、一実装形態による、ブルームフィルタ１１００の１つの例示的な例を示す。ブルームフィルタ１１００は、空間効率的な確率的データ構造である。ブルームフィルタは、ｍビットのビットアレイとｋ個の異なるハッシュ関数とを含む。各ビットは０または１の値を有し得る。ｋ個の異なるハッシュ関数の各々は、均一なランダム分布でｍ個のアレイ位置のうちの１つに入力ストリングをマッピングする。例示的な実装形態では、ｍビットは、すべて０に初期化される。識別子が受信されるときはいつでも、識別子がブルームフィルタ１１００に追加される。当該識別子をブルームフィルタ１１００に追加するプロセスは、ａ）ｋ個のハッシュ関数の各々に入力ストリングとして識別子を供給することと、ここにおいて、各ハッシュ関数が、１つのアレイ位置に入力ストリングをマッピングする、ｂ）ｋ個のハッシュ関数によって識別されるアレイ位置にあるビットを１に設定することとを含む。
【０１０３】
[0116]上記で説明したように、ブルームフィルタ１１００は、ｋ個の異なるハッシュ関数を含み、その各々が、ビットアレイ中のビット位置に入力ストリングをマッピングする。ハッシュ関数は、たとえば、入力ストリングの巡回冗長検査（ＣＲＣ）であり得る。一実装形態では、ｋ個の異なるハッシュ関数は、単一のハッシュ関数（たとえば、ＣＲＣ３２などのＣＲＣ）と（「変更ストリング」と呼ばれる）ｋ個の異なるストリングとを使用して作成され得る。（「ブルーム入力ストリング」と呼ばれる）ブルームフィルタへの入力ストリングごとに、（「ハッシュ入力ストリング」と呼ばれる）ｋ個の異なる入力ストリングが生成され、ここにおいて、各ハッシュ入力ストリングは、ｋ個の変更ストリングのうちの異なる１つにブルーム入力ストリングを付加することによって作成される。その後、ｋ個の異なるハッシュ入力ストリングの各々が単一のハッシュ関数に供給され、したがって、ビットアレイ中にビット位置を生成する。ｋ個の異なるハッシュ入力ストリングがあるので、ビットアレイ中のｋ個のビット位置が識別される（それらの一部は同じピット位置であり得る）。したがって、ブルームフィルタ１１００は、単一のハッシュ関数とｋ個の異なるストリングとを使用してｋ個の異なるハッシュ関数をシミュレートする。
【０１０４】
[0117]別の実装形態では、ｋ個のハッシュ入力ストリングが異なる方法で作成され得る。一例では、各ハッシュ入力ストリングは、ブルーム入力ストリングに変更ストリングのうちの異なる１つを付加することによって作成され得る。別の例では、各ハッシュ入力ハッシュ入力ストリングは、ブルーム入力ストリングの中間に変更ストリングのうちの異なる１つを挿入することによって作成され得る。
【０１０５】
[0118]上記で説明したように、ブルームフィルタ１１００は、ｍビットのビットアレイとｋ個の異なるハッシュ関数とを含む。一実装形態では、ハッシュ関数の数ｋが１の値を有し、ビットアレイのサイズｍが、推定されるべきワイヤレスネットワークの最大サイズの約２倍となる値を有する。一実装形態では、ハッシュ関数の数ｋは４の値を有する。一実装形態では、ビットアレイのサイズｍは、推定されるべきワイヤレスネットワークの最大サイズの約５倍となる値を有する。一実装形態では、ハッシュ関数の数ｋは４の値を有する。一実装形態では、ビットアレイのサイズｍは、挿入されるべきエントリの数の約５倍となる値を有する。別の実装形態では、ブルームフィルタ１１００のサイズ（パラメータｍおよびｋの値）は、以下の式１および２を使用して、（ｎによって示される）ブルームフィルタ１１００中に記憶されるべき別個の識別子の所望の数と、フィルタ中に追加されていない識別子がブルームフィルタ１１００中にあるものとして決定される（ｐによって示される）所望の偽（false）アラーム確率とに基づいて決定され得る。
【数１】
0006321050.tif 000002
【０１０６】
[0119]一実装形態では、メッセージ中の識別子は、隣接ワイヤレスデバイスまたはサービスもしくはアプリケーションに関連付けられ得る。メッセージ中の識別子は、フレームを送るワイヤレスデバイスを識別するディスカバリフレームのＭＡＣアドレスであり得る。識別子はまた、フレーム中のサービス識別子であり得、ここにおいて、サービス識別子は、フレームのボディ中にあり得るか、またはフレーム中のアドレスフィールドのうちの１つを置き換え得る。別の例として、識別子は、特定のアプリケーションに基づく識別子であり、フレームのボディ中に位置し得る。
【０１０７】
[0120]図１１に示すブルームフィルタ１１００は、すべて０に初期化されたｍビットのビットアレイ（１１１０）とｋ個の異なるハッシュ関数（図示せず）とを含み、ここにおいて、ｍ＝１８であり、ｋ＝３である。ｋ個の異なるハッシュ関数の各々は、均一なランダム分布でｍ個のアレイ位置のうちの１つに入力ストリングをマッピングまたはハッシングする。３つの入力ストリング、すなわち、ｘ、ｙ、およびｚがブルームフィルタ１１００に追加されている。入力ストリングｘについて、ブルームフィルタ１１００は、図１１のｘで開始する３つの矢印によって示されるように、（図示しないｋ個のハッシュ関数を使用して）ビットアレイ中の３つの異なるビット位置にそれをマッピングする。したがって、入力ストリング「ｘ」に対応する３つのビット位置はすべて、１の値を有する。同様に、入力ストリングｙおよびｚは、ビットアレイ中の３つの異なるビット位置にこれらのストリングの各々をマッピングし、これらのビット位置を１の値に設定することによって、ブルームフィルタ１１００に追加される。ブルームフィルタ１１００の生じたビットアレイを図１１に示す。入力ストリングｗがブルームフィルタ１１００に追加されたかどうかを決定するために、ブルームフィルタ１１００は、ｗで開始する３つの矢印によって示されるように、ビットアレイ中の３つのビット位置に入力ストリングｗをマッピングする。入力ストリングｗに対応するビット位置のうちの１つが０の値を有するので、入力ストリングｗがブルームフィルタ中にないと決定される。ブルームフィルタが、ｘ、ｙ、およびｚのみを記憶し、ｗを記憶していないので、この決定は正しい。
【０１０８】
[0121]一実施形態では、各ハッシュ関数Ｈ（ｊ，Ｘ，ｍ）は、以下の式３に示すように定義され得、ここで、ｊは変更ストリングであり、Ｘは入力ストリングであり、ｍは、ブルームフィルタの長さまたはサイズであり、「｜｜」は連結演算であり、「＆」は、ビットＡＮＤ演算である。
【数２】
0006321050.tif 000003
【表１】
0006321050.tif 000004
【０１０９】
[0123]一実施形態では、ブルームフィルタインデックス１０２６（図１０Ａ）は、上記の表１に示すように、ハッシュ関数のセットを示すことができる。したがって、一例では、ワイヤレスデバイス２０２（図２）は、０ｂ００のブルームフィルタインデックス１０２６を選択することができる。第１のハッシュ関数Ｈ（０ｘ００，Ｘ，ｍ）について、ワイヤレスデバイス２０２は、０ｘ００に発見されたデバイス識別子を付加し、結果係数（result modulus）ｍの最後の２バイトをとり、ブルームフィルタに結果を挿入することができる。ワイヤレスデバイス２０２は、第２のハッシュ関数から第４のハッシュ関数Ｈ（０ｘ０１，Ｘ，ｍ）、Ｈ（０ｘ０２，Ｘ，ｍ）、およびＨ（０ｘ０３，Ｘ，ｍ）にわたってプロシージャを繰り返すことができる。ワイヤレスデバイス２０２は、ブルームフィルタ１０４０を含むディスカバリフレーム中のブルームフィルタインデックス１０２６を符号化し、ディスカバリフレームを送信することができる。
【０１１０】
[0124]受信側で、ワイヤレスデバイス２０２は、ブルームフィルタインデックス１０２６とブルームフィルタ１０４０とを含むディスカバリフレームを受信することができる。一例では、ブルームフィルタインデックス１０２６は、０ｂ１１であり得る。第１のハッシュ関数Ｈ（０ｘ０Ｃ，Ｘ，ｍ）について、ワイヤレスデバイス２０２は、０ｘ０Ｃにそれ自体のデバイス識別子を付加し、結果係数ｍの最後の２バイトをとり、結果のブルームフィルタ１０４０を検査することができる。ワイヤレスデバイス２０２は、第２のハッシュ関数から第４のハッシュ関数Ｈ（０ｘ０Ｄ，Ｘ，ｍ）、Ｈ（０ｘ０Ｅ，Ｘ，ｍ）、およびＨ（０ｘ０Ｆ，Ｘ，ｍ）にわたってプロシージャを繰り返すことができる。検査されたビットがブルームフィルタ１０４０中に設定されている場合、ワイヤレスデバイス２０２は、それがすでに発見されており、追加の告知を送信するのを控えることができると決定することができる。
【０１１１】
[0125]表１に、ｋ＝４であり、ブルームフィルタインデックス１０２６が２ビット長である例を示すが、他の構成が使用され得ることを当業者は諒解されよう。式３がＣＲＣ３２関数を使用するが、他のハッシュ関数が使用され得る。式３は、ｊにＸを付加しているが、ｊは、Ｘに付加されることも、Ｘの中間に挿入されることも、Ｘの間にインターリーブされこともあり得、またはその逆も同様である。式３は、連結結果の最後の２バイトのみを使用しているが、たとえば、１バイ、３バイ、４バイトなど、他の長さが使用され得る。
【０１１２】
[0126]図１２に、図１のワイヤレス通信システム１００内で採用され得るワイヤレス通信の例示的な方法のフローチャート１２００を示す。この方法は、図２に示すワイヤレスデバイス２０２など、本明細書に記載するデバイスによって全体的または部分的に実装され得る。本明細書では、図示された方法について、図１に関して上記で説明したワイヤレス通信システム１００、および図２に関して上記で説明したワイヤレスデバイス２０２を参照しながら説明するが、図示された方法は、本明細書で説明する別のデバイス、または任意の他の好適なデバイスによって実装され得ることが当業者には諒解されよう。本明細書では、図示された方法について、特定の順序に関して説明するが、様々な実施形態では、本明細書のブロックは異なる順序で実行されるか、または省略され得、さらなるブロックが追加され得る。
【０１１３】
[0127]最初に、ブロック１２１０において、デバイス２０２は、隣接ワイヤレスデバイスからメッセージを受信する。メッセージは、隣接ワイヤレスデバイスに関連する識別子を含む。たとえば、ＳＴＡ１０６ａは、ＳＴＡ１０６ｂからディスカバリ応答フレームを受信することができる。一実施形態では、受信メッセージはディスカバリ応答メッセージを含むことができる。一実施形態では、識別子は、メディアアクセス制御（ＭＡＣ）アドレスを含むことができる。
【０１１４】
[0128]次に、ブロック１２２０において、デバイス２０２は、発見されたデバイス識別子を示すデータ構造に識別子を追加する。一実施形態では、データ構造は、少なくとも部分的な識別子のリストを含むことができる。たとえば、部分的な識別子は、識別子の最後の３バイトを含むことができる。他の実施形態では、識別子の他の部分が記憶され得る。
【０１１５】
[0129]一実施形態では、データ構造は、図１０Ａに関して上記で説明したように、ブルームフィルタを含む。ブルームフィルタは、ビットアレイに関連するｋ個の異なるハッシュ関数とともにｍビットのビットアレイを含むことができる。各ハッシュ関数は、均一なランダム分布でｍ個のアレイ位置のうちの１つに入力ストリングをマッピングすることができる。識別子をブルームフィルタに追加するプロセスは、ｋ個のアレイ位置を得るためにｋ個のハッシュ関数の各々に識別子を供給することと、すべてのｋ個のアレイ位置にあるビットを１に設定することとを含むことができる。一実施形態では、ｋ個のハッシュ関数のうちの少なくとも１つは、入力ストリングの巡回冗長検査である。一実施形態では、ブルームフィルタのパラメータｋは、１の値を有し、ブルームフィルタのパラメータｍは、ワイヤレスネットワークの最大サイズの約２倍となる値を有する。
【０１１６】
[0130]次いで、ブロック１２３０において、デバイス２０２は、発見されたデバイス識別子を示すデータ構造を含むメッセージを送信する。たとえば、ＳＴＡ１０６ａは、ＳＴＡ１０６ｂ〜１０６−ｄおよびＡＰ１０４にディスカバリクエリフレームをブロードキャストすることができる。一実施形態では、送信メッセージは、図１０Ａに関して上記で説明した発見アドレス情報コンテナ１０００を含むことができる。たとえば、送信メッセージは、長さフィールドと、ディスカバリ制御フィールドと、発見アドレス情報フィールドとを含むことができる。ディスカバリ制御フィールドは、アドレスフラグと、ブルームフィルタフラグと、ブルームフィルタインデックスとを含むことができる。様々な実施形態では、長さフィールドは、１オクテットであり、ディスカバリ制御フィールドは、１オクテットであり、タイプフラグは、１ビットであり、インクルードフラグは、１ビットであり、ブルームフィルタインデックスは、２ビットであり、発見アドレス情報フィールドは、可変長である。ディスカバリ制御フィールドは、クエリインデックスをさらに含むことができる。
【０１１７】
[0131]一実施形態では、本方法は、ハッシュ関数の異なるセットを使用して、第２のブルームフィルタを生成することをさらに含むことができる。たとえば、１つまたは複数のＳＴＡは、ブルームフィルタでの衝突によりディスカバリクエリメッセージに応答しないことがある。デバイス２０２は、ブルームフィルタインデックスを増分するか、あるいは変更することができ、これは、発見アドレス情報フィールド中でブルームフィルタを生成するために使用されるハッシュ関数のセットを示すことができる。一実施形態では、デバイス２０２は、クエリインデックスをさらに増分するか、あるいは変更することができる。
【０１１８】
[0132]本方法は、第２のブルームフィルタを含む第２のメッセージを送信することをさらに含むことができる。たとえば、ＳＴＡ１０６ａは、ＳＴＡ１０６ｂ〜１０６ｄおよびＡＰ１０４に第２のメッセージをブロードキャストすることができる。第２のメッセージは、第１のメッセージと同じフォーマットを有することができる。たとえば、第２のメッセージは、図１０Ａに関して上記で説明した発見アドレス情報コンテナ１０００を含むことができる。
【０１１９】
[0133]一実施形態では、図１２に示した方法は、受信回路と、追加回路と、送信回路とを含むことができるワイヤレスデバイス中に実装され得る。ワイヤレスデバイスが、本明細書で説明する簡略化されたワイヤレスデバイスよりも多くの構成要素を有することができることを、当業者は諒解されよう。本明細書で説明するワイヤレスデバイスは、特許請求の範囲内の実装形態のいくつかの顕著な特徴を説明するのに有用な構成要素のみを含む。
【０１２０】
[0134]受信回路は、隣接ワイヤレスデバイスからメッセージを受信するように構成され得る。一実施形態では、受信回路は、フローチャート１２００（図１２）のブロック１２１０を実装するように構成され得る。受信回路は、受信機２１２（図２）およびアンテナ２１６（図２）のうちの１つまたは複数を含むことができる。いくつかの実装形態では、受信するための手段は、受信回路を含むことができる。
【０１２１】
[0135]追加回路は、発見されたデバイス識別子を示すデータ構造に識別子を追加するように構成され得る。一実施形態では、追加回路は、フローチャート１２００（図１２）のブロック１２２０を実装するように構成され得る。追加回路は、プロセッサ２０６（図２）およびメモリ２０４（図２）のうちの１つまたは複数を含むことができる。いくつかの実装形態では、追加するための手段は、追加回路を含むことができる。
【０１２２】
[0136]送信回路は、発見されたデバイス識別子を示すデータ構造を含むメッセージを送信するように構成され得る。一実施形態では、送信回路は、フローチャート１２００（図１２）のブロック１２３０を実装するように構成され得る。送信回路は、送信機２１０（図２）およびアンテナ２１６（図２）のうちの１つまたは複数を含むことができる。いくつかの実装形態では、送信するための手段は送信回路を含むことができる。
【０１２３】
[0137]図１３に、図１のワイヤレス通信システム１００内で採用され得るワイヤレス通信の例示的な方法のフローチャート１３００を示す。この方法は、図２に示すワイヤレスデバイス２０２など、本明細書に記載するデバイスによって全体的または部分的に実装され得る。本明細書では、図示された方法について、図１に関して上記で説明したワイヤレス通信システム１００、および図２に関して上記で説明したワイヤレスデバイス２０２を参照しながら説明するが、図示された方法は、本明細書で説明する別のデバイス、または任意の他の好適なデバイスによって実装され得ることが当業者には諒解されよう。本明細書では、図示された方法について、特定の順序に関して説明するが、様々な実施形態では、本明細書のブロックは異なる順序で実行されるか、または省略され得、さらなるブロックが追加され得る。
【０１２４】
[0138]最初に、ブロック１３１０において、デバイス２０２は、隣接ワイヤレスデバイスからメッセージを受信する。メッセージは、発見されたデバイス識別子を示すデータ構造を含む。たとえば、ＳＴＡ１０６ａは、ＳＴＡ１０６ｂからディスカバリクエリフレームを受信することができる。一実施形態では、受信メッセージはディスカバリクエリメッセージを含むことができる。一実施形態では、識別子は、メディアアクセス制御（ＭＡＣ）アドレスを含むことができる。
【０１２５】
[0139]一実施形態では、受信メッセージは、図１０Ａに関して上記で説明した発見アドレス情報コンテナ１０００を含むことができる。たとえば、受信メッセージは、長さフィールドと、ディスカバリ制御フィールドと、発見アドレス情報フィールドとを含むことができる。ディスカバリ制御フィールドは、アドレスフラグと、ブルームフィルタフラグと、ブルームフィルタインデックスとを含むことができる。様々な実施形態では、長さフィールドは、１オクテットであり、ディスカバリ制御フィールドは、１オクテットであり、タイプフラグは、１ビットであり、インクルードフラグは、１ビットであり、ブルームフィルタインデックスは、２ビットであり、発見アドレス情報フィールドは、可変長である。ディスカバリ制御フィールドは、クエリインデックスをさらに含むことができる。
【０１２６】
[0140]一実施形態では、データ構造は、少なくとも部分的な識別子のリストを含むことができる。たとえば、部分的な識別子は、識別子の最後の３バイトを含むことができる。他の実施形態では、識別子の他の部分が記憶され得る。
【０１２７】
[0141]一実施形態では、データ構造は、図１０Ａに関して上記で説明したように、ブルームフィルタを含む。ブルームフィルタは、ビットアレイに関連するｋ個の異なるハッシュ関数とともにｍビットのビットアレイを含むことができる。各ハッシュ関数は、均一なランダム分布でｍ個のアレイ位置のうちの１つに入力ストリングをマッピングすることができる。一実施形態では、ｋ個のハッシュ関数のうちの少なくとも１つは、入力ストリングの巡回冗長検査である。一実施形態では、ブルームフィルタのパラメータｋは、１の値を有し、ブルームフィルタのパラメータｍは、ワイヤレスネットワークの最大サイズの約２倍となる値を有する。
【０１２８】
[0142]次に、ブロック１３２０において、デバイス２０２は、データ構造がデバイス２０２の識別子を示すかどうかを決定する。一実施形態では、データ構造がデバイス２０２の識別子を示すかどうかを決定することは、ｋ個のアレイ位置を得るためにｋ個のハッシュ関数の各々に識別子をマッピングすることと、すべてのｋ個のアレイ位置にあるビットが１であるかどうかを決定することとを含むことができる。一実施形態では、データ構造がデバイス２０２の識別子を示すかどうかを決定することは、データ構造中の完全な識別子または部分的な識別子のリストと、デバイス２０２の完全な識別子または部分的な識別子を比較することを含むことができる。
【０１２９】
[0143]データ構造がデバイス２０２の識別子を示す場合、デバイス２０２は、隣接ワイヤレスデバイスがデバイス２０２を発見したと決定することができる（が、そのような決定は、ブルームフィルタまたは部分的な識別子リストでの衝突により誤判定（false positive）となり得る）。したがって、デバイス２０２は、クエリ応答を送信することを控えることができる。データ構造が、デバイス２０２の識別子を示さない場合、デバイス２０２は、隣接ワイヤレスデバイスがデバイス２０２を発見していないと決定することができ、ブロック１３３０に進むことができる。
【０１３０】
[0144]次いで、ブロック１３３０において、デバイス２０２は、データ構造が第１のワイヤレスデバイスの識別子を示さないときに、デバイス２０２の識別子を含むメッセージを送信する。たとえば、ＳＴＡ１０６ａは、ＳＴＡ１０６ｂ〜１０６−ｄおよびＡＰ１０４にディスカバリ応答フレームをブロードキャストすることができる。
【０１３１】
[0145]一実施形態では、本方法は、第２のブルームフィルタを含む第２のメッセージを受信することをさらに含むことができる。第２のブルームフィルタは、ハッシュ関数の異なるセットを使用することができる。たとえば、デバイス２０２は、ブルームフィルタでの衝突によりディスカバリクエリメッセージに応答しないことがある。デバイス２０２は、ブルームフィルタインデックスが増分されたか、あるいは変更されたと決定することができる。本方法は、第２のブルームフィルタがデバイス２０２の識別子を示さないときに、第２のメッセージに応答することをさらに含むことができる。
【０１３２】
[0146]一実施形態では、第２のメッセージは、クエリインデックスをさらに含むことができる。デバイス２０２は、デバイス２０２が同じクエリインデックスをもつクエリに以前に応答したかどうかをさらに決定することができる。本方法は、第２のブルームフィルタがデバイス２０２の識別子を示さず、デバイス２０２が同じクエリインデックスをもつクエリに以前に応答しなかったときに、第２のメッセージに応答することをさらに含むことができる。
【０１３３】
[0147]一実施形態では、図１３に示した方法は、受信回路と、決定回路と、送信回路とを含むことができるワイヤレスデバイス中に実装され得る。ワイヤレスデバイスが、本明細書で説明する簡略化されたワイヤレスデバイスよりも多くの構成要素を有することができることを、当業者は諒解されよう。本明細書で説明するワイヤレスデバイスは、特許請求の範囲内の実装形態のいくつかの顕著な特徴を説明するのに有用な構成要素のみを含む。
【０１３４】
[0148]受信回路は、隣接ワイヤレスデバイスからメッセージを受信するように構成され得る。一実施形態では、受信回路は、フローチャート１３００（図１３）のブロック１３１０を実装するように構成され得る。受信回路は、受信機２１２（図２）およびアンテナ２１６（図２）のうちの１つまたは複数を含むことができる。いくつかの実装形態では、受信するための手段は、受信回路を含むことができる。
【０１３５】
[0149]決定回路は、データ構造がデバイス２０２の識別子を示すかどうかを決定するように構成され得る。一実施形態では、決定回路は、フローチャート１３００（図１３）のブロック１３２０を実装するように構成され得る。決定回路は、プロセッサ２０６（図２）およびメモリ２０４（図２）のうちの１つまたは複数を含むことができる。いくつかの実装形態では、決定するための手段は、決定回路を含むことができる。
【０１３６】
[0150]送信回路は、デバイス２０２の識別子を含むメッセージを送信するように構成され得る。一実施形態では、送信回路は、フローチャート１３００（図１３）のブロック１３３０を実装するように構成され得る。送信回路は、送信機２１０（図２）およびアンテナ２１６（図２）のうちの１つまたは複数を含むことができる。いくつかの実装形態では、送信するための手段および／または応答するための手段は送信回路を含むことができる。
【０１３７】
[0151]本明細書で説明するように、様々なフィールド、デバイス、および方法について、図５のビーコン５００などのビーコンに関して説明する。本明細書で説明するフィールド、デバイス、および方法はまた、ネットワーク内のＮＡＮデバイスを同期させるためにタイミング情報を搬送するように構成され得る他の同期フレームに適用され得ることを、当業者は諒解されよう。たとえば、同期フレームは、ディスカバリウィンドウの開始時間を示すディスカバリウィンドウ情報要素とディスカバリ期間インジケータとを含むことができる。いくつかの実施形態では、ビーコンタイプを有する同期フレームは、ビーコンと呼ばれることがある。
【０１３８】
[0152]本明細書における「第１」、「第２」などの名称を使用した要素への言及は、それらの要素の数量または順序を概括的に限定するものでないことを理解されたい。むしろ、これらの名称は、本明細書において２つ以上の要素またはある要素の複数の例を区別する便利な方法として使用され得る。したがって、第１および第２の要素への言及は、そこで２つの要素のみが採用され得ること、または第１の要素が何らかの方法で第２の要素に先行しなければならないことを意味するものではない。また、別段に記載されていない限り、要素のセットは１つまたは複数の要素を含むことができる。
【０１３９】
[0153]情報および信号は多種多様な技術および技法のいずれかを使用して表され得ることを、当業者は理解されよう。たとえば、上記の説明全体にわたって言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁界もしくは磁性粒子、光場もしくは光学粒子、またはそれらの任意の組合せによって表され得る。
【０１４０】
[0154]さらに、本明細書で開示された態様に関して説明した様々な例示的な論理ブロック、モジュール、プロセッサ、手段、回路、およびアルゴリズムステップのいずれかは、電子ハードウェア（たとえば、ソースコーディングまたは何らかの他の技法を使用して設計され得る、デジタル実装形態、アナログ実装形態、またはそれら２つの組合せ）、（便宜上、本明細書では「ソフトウェア」または「ソフトウェアモジュール」と呼ぶことがある）命令を組み込んだ様々な形態のプログラムもしくは設計コード、または両方の組合せとして実装され得ることを当業者は諒解されよう。ハードウェアおよびソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップについて、概してそれらの機能に関して上記で説明した。そのような機能がハードウェアとして実装されるか、またはソフトウェアとして実装されるかは、特定の適用例および全体的なシステムに課せられた設計制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装することができるが、そのような実装の決定は、本開示の範囲からの逸脱を生じるものと解釈されるべきではない。
【０１４１】
[0155]本明細書で開示した態様に関して、および図１〜図１１に関して説明した様々な例示的な論理ブロック、モジュール、および回路は、集積回路（ＩＣ）、アクセス端末、またはアクセスポイント内に実装され得るか、またはそれらによって実行され得る。ＩＣは、汎用プロセッサ、デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）もしくは他のプログラマブル論理デバイス、個別ゲートもしくはトランジスタ論理、個別ハードウェア構成要素、電気構成要素、光学構成要素、機械構成要素、または本明細書で説明される機能を実行するように設計されたそれらの任意の組合せを含むことができ、ＩＣの内部に、ＩＣの外側に、またはその両方に存在するコードまたは命令を実行することができる。論理ブロック、モジュール、および回路は、ネットワーク内またはデバイス内の様々な構成要素と通信するためにアンテナおよび／またはトランシーバを含むことができる。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、ＤＳＰおよびマイクロプロセッサの組合せ、複数のマイクロプロセッサ、ＤＳＰコアと連携する１つもしくは複数のマイクロプロセッサ、または任意の他のそのような構成として実装され得る。モジュールの機能は、本明細書で教示した方法とは別の何らかの方法で実装され得る。（たとえば、添付の図の１つまたは複数に関して）本明細書で説明した機能は、いくつかの態様では、添付の特許請求の範囲において同様に指定された「手段」機能に対応することができる。
【０１４２】
[0156]ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体に記憶されるか、またはコンピュータ可読媒体を介して送信され得る。本明細書で開示した方法またはアルゴリズムのステップは、コンピュータ可読媒体上に常駐することができる、プロセッサ実行可能ソフトウェアモジュールで実装され得る。コンピュータ可読媒体は、ある場所から別の場所にコンピュータプログラムを転送することを可能にされ得る任意の媒体を含む、コンピュータ記憶媒体とコンピュータ通信媒体の両方を含む。記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体であり得る。限定ではなく例として、そのようなコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を含むことができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれ得る。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびブルーレイ（登録商標）ディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、一方ディスク（disc）は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。さらに、方法またはアルゴリズムの動作は、コンピュータプログラム製品に組み込まれ得る、機械可読媒体およびコンピュータ可読媒体上のコードおよび命令の１つもしくは任意の組合せ、またはそのセットとして常駐することができる。
【０１４３】
[0157]任意の開示するプロセス中のステップの特定の順序または階層は、例示的な手法の一例であることを理解されたい。設計上の選好に基づいて、プロセス中のステップの特定の順序または階層は本開示の範囲内のまま再構成され得ることを理解されたい。添付の方法クレームは、様々なステップの要素を例示的な順序で提示したものであり、提示された特定の順序または階層に限定されるものではない。
【０１４４】
[0158]本開示で説明した実装形態への様々な修正は当業者には容易に明らかであり得、本明細書で定義した一般原理は、本開示の趣旨または範囲から逸脱することなく他の実装形態に適用され得る。したがって、本開示は、本明細書で示した実装形態に限定されるものではなく、本明細書で開示する特許請求の範囲、原理および新規の特徴に一致する、最も広い範囲を与られるべきである。「例示的」という単語は、本明細書ではもっぱら「例、事例、または例示の働きをすること」を意味するために使用される。「例示的」として本明細書で説明するいかなる実装形態も、必ずしも他の実装形態よりも好ましいまたは有利であると解釈されるべきではない。
【０１４５】
[0159]また、別個の実装形態に関して本明細書で説明されたいくつかの特徴は、単一の実装形態において組合せで実装され得る。また、逆に、単一の実装形態に関して説明された様々な特徴は、複数の実装形態において別個に、または任意の好適な部分組合せで実装され得る。その上、特徴は、いくつかの組合せで働くものとして上記で説明され、初めにそのように請求されることさえあるが、請求される組合せからの１つまたは複数の特徴は、場合によってはその組合せから削除され得、請求される組合せは、部分組合せ、または部分組合せの変形形態を対象とし得る。
【０１４６】
[0160]同様に、動作は特定の順序で図面に示されているが、これは、望ましい結果を達成するために、そのような動作が、示される特定の順序でもしくは順番に実行されることを、またはすべての図示の動作が実行されることを必要とするものとして理解されるべきでない。いくつかの状況では、マルチタスキングおよび並列処理が有利であり得る。その上、上記で説明した実装形態における様々なシステム構成要素の分離は、すべての実装形態においてそのような分離を必要とするものとして理解されるべきでなく、説明するプログラム構成要素およびシステムは、概して、単一のソフトウェア製品において互いに一体化されるか、または複数のソフトウェア製品にパッケージングされ得ることを理解されたい。さらに、他の実装形態が以下の特許請求の範囲内に入る。場合によっては、特許請求の範囲に記載の行為は、異なる順序で実行され、依然として望ましい結果を達成することができる。
以下に、出願当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
ワイヤレス近傍アウェアネットワーク（ＮＡＮ）においてディスカバリ情報を通信する方法であって、
第１のワイヤレスデバイスにおいて、隣接ワイヤレスデバイスからメッセージを受信することと、前記メッセージは、発見されたデバイス識別子を示すデータ構造を備え、
前記データ構造が前記第１のワイヤレスデバイスの識別子を示すかどうかを決定することと、
前記データ構造が前記第１のワイヤレスデバイスの前記識別子を示さないときに、前記第１のワイヤレスデバイスの前記識別子を備えるメッセージを送信することと、
を備える、方法。
［Ｃ２］
前記受信メッセージはディスカバリクエリメッセージを備える、Ｃ１に記載の方法。
［Ｃ３］
前記送信メッセージはディスカバリ応答メッセージを備える、Ｃ１に記載の方法。
［Ｃ４］
前記データ構造は少なくとも部分的な識別子のリストを備える、Ｃ１に記載の方法。
［Ｃ５］
前記部分的な識別子は、前記識別子のバイトのサブセットを備える、Ｃ４に記載の方法。
［Ｃ６］
前記データ構造はブルームフィルタを備える、Ｃ１に記載の方法。
［Ｃ７］
前記ブルームフィルタはｍビットのビットアレイであり、前記ビットアレイは前記ビットアレイに関連するｋ個の異なるハッシュ関数をもち、各ハッシュ関数は、均一なランダム分布で前記ｍ個のアレイ位置のうちの１つに入力ストリングをマッピングする、Ｃ６に記載の方法。
［Ｃ８］
前記メッセージは、前記ビットアレイに関連するハッシュ関数の特定のセットを示すブルームフィルタインデックスをさらに備える、Ｃ７に記載の方法。
［Ｃ９］
前記ブルームフィルタインデックスは後続の送信で更新される、Ｃ８に記載の方法。
［Ｃ１０］
前記データ構造が前記第１のワイヤレスデバイスの前記識別子を示すかどうかを決定することは、
ｋ個のアレイ位置を得るために、前記ｋ個のハッシュ関数の各々に前記識別子をマッピングすることと、
すべての前記ｋ個のアレイ位置にある前記ビットが１であるかどうかを決定することと、
を備える、Ｃ７に記載の方法。
［Ｃ１１］
前記ｋ個のハッシュ関数Ｈ（ｊ，Ｘ，ｍ）のうちの少なくとも１つは、（ＣＲＣ３２（ｊ｜｜Ｘ）＆０ｘＦＦＦＦ）ｍｏｄ  ｍと定義される、ここで、ｊは変更ストリングであり、Ｘは前記入力ストリングであり、ＣＲＣ３２は３２ビット巡回冗長コードである、Ｃ７に記載の方法。
［Ｃ１２］
前記ブルームフィルタの前記パラメータｋは４の値を有し、前記ブルームフィルタの前記パラメータｍは、前記ブルームフィルタ中に示すべきデバイスの数の５倍より大きい値を有する、Ｃ７に記載の方法。
［Ｃ１３］
第２のブルームフィルタとクエリインデックスとを備える第２のメッセージを受信することと、
ハッシュ関数の異なるセットを使用して、前記データ構造が前記第１のワイヤレスデバイスの前記識別子を示すかどうかを決定することと、
前記第１のワイヤレスデバイスが、同じクエリインデックスをもつクエリに応答しておらず、前記データ構造が、前記第１のワイヤレスデバイスの前記識別子を示さないときに、前記第２のメッセージに応答することと、
をさらに備える、Ｃ７に記載の方法。
［Ｃ１４］
前記受信メッセージは、長さフィールドと、ディスカバリ制御フィールドと、発見アドレス情報フィールドとを備える、Ｃ１に記載の方法。
［Ｃ１５］
前記ディスカバリ制御フィールドは、ブルームフィルタの存在を示すタイプフラグと、所望の局応答を示すインクルードフラグと、関連するブルームフィルタに関連するハッシュ関数の特定のセットを識別するブルームフィルタインデックスとを備える、Ｃ１４に記載の方法。
［Ｃ１６］
前記長さフィールドは１オクテットであり、前記ディスカバリ制御フィールドは１オクテットであり、前記タイプフラグは１ビットであり、前記インクルードフラグは１ビットであり、前記ブルームフィルタインデックスは２ビットであり、前記発見アドレス情報フィールドは可変長である、Ｃ１５に記載の方法。
［Ｃ１７］
前記インクルードフラグは、設定されていないとき、前記ブルームフィルタ中に示されたデバイスが応答すべきでないことを示し、設定されているとき、前記ブルームフィルタ中に示されたデバイスのみが送信すべきであることを示す、Ｃ１５に記載の方法。
［Ｃ１８］
前記ディスカバリ制御フィールドは、クエリインデックスをさらに備える、Ｃ１５に記載の方法。
［Ｃ１９］
前記識別子は、メディアアクセス制御（ＭＡＣ）アドレスを備える、Ｃ１に記載の方法。
［Ｃ２０］
ワイヤレス近傍アウェアネットワーク（ＮＡＮ）においてディスカバリ情報を通信するように構成された第１のワイヤレスデバイスであって、
隣接ワイヤレスデバイスからメッセージを受信するように構成された受信機と、前記メッセージが、発見されたデバイス識別子を示すデータ構造を備え、
前記データ構造が前記第１のワイヤレスデバイスの識別子を示すかどうかを決定するように構成されたプロセッサと、
前記データ構造が前記第１のワイヤレスデバイスの前記識別子を示さないときに、前記第１のワイヤレスデバイスの前記識別子を備えるメッセージを送信するように構成された送信機と、
を備える、第１のワイヤレスデバイス。
［Ｃ２１］
前記受信メッセージは発見クエリメッセージを備える、Ｃ２０に記載の第１のワイヤレスデバイス。
［Ｃ２２］
前記送信メッセージはディスカバリ応答メッセージを備える、Ｃ２０に記載の第１のワイヤレスデバイス。
［Ｃ２３］
前記データ構造は少なくとも部分的な識別子のリストを備える、Ｃ２０に記載の第１のワイヤレスデバイス。
［Ｃ２４］
前記部分的な識別子は、前記識別子のバイトのサブセットを備える、Ｃ２３に記載の第１のワイヤレスデバイス。
［Ｃ２５］
前記データ構造はブルームフィルタを備える、Ｃ２０に記載の第１のワイヤレスデバイス。
［Ｃ２６］
前記ブルームフィルタはｍビットのビットアレイであり、前記ビットアレイは前記ビットアレイに関連するｋ個の異なるハッシュ関数をもち、各ハッシュ関数は、均一なランダム分布で前記ｍ個のアレイ位置のうちの１つに入力ストリングをマッピングする、Ｃ２５に記載の第１のワイヤレスデバイス。
［Ｃ２７］
前記メッセージは、前記ビットアレイに関連するハッシュ関数の特定のセットを示すブルームフィルタインデックスをさらに備える、Ｃ２６に記載の第１のワイヤレスデバイス。
［Ｃ２８］
前記ブルームフィルタインデックスは後続の送信で更新される、Ｃ２７に記載の第１のワイヤレスデバイス。
［Ｃ２９］
前記データ構造が前記第１のワイヤレスデバイスの前記識別子を示すかどうかを決定することは、
ｋ個のアレイ位置を得るために、前記ｋ個のハッシュ関数の各々に前記識別子をマッピングすることと、
すべての前記ｋ個のアレイ位置にある前記ビットが１であるかどうかを決定することと、
を備える、Ｃ２６に記載の第１のワイヤレスデバイス。
［Ｃ３０］
前記ｋ個のハッシュ関数Ｈ（ｊ，Ｘ，ｍ）のうちの少なくとも１つが、（ＣＲＣ３２（ｊ｜｜Ｘ）＆０ｘＦＦＦＦ）ｍｏｄ  ｍと定義される、ここで、ｊは変更ストリングであり、Ｘは前記入力ストリングであり、ＣＲＣ３２は３２ビット巡回冗長コードである、Ｃ２６に記載の第１のワイヤレスデバイス。
［Ｃ３１］
前記ブルームフィルタの前記パラメータｋは４の値を有し、前記ブルームフィルタの前記パラメータｍは、前記ブルームフィルタ中に示すべきデバイスの数の５倍より大きい値を有する、Ｃ２６に記載のワイヤレスデバイス。
［Ｃ３２］
前記受信機は、第２のブルームフィルタとクエリインデックスとを備える第２のメッセージを受信するようにさらに構成され、
前記プロセッサは、
ハッシュ関数の異なるセットを使用して、前記データ構造が前記第１のワイヤレスデバイスの前記識別子を示すかどうかを決定することと、
前記第１のワイヤレスデバイスが、同じクエリインデックスをもつクエリに応答しておらず、前記データ構造が、前記第１のワイヤレスデバイスの前記識別子を示さないときに、前記第２のメッセージに応答することと、
を行うようにさらに構成された、Ｃ２６に記載のワイヤレスデバイス。
［Ｃ３３］
前記受信メッセージは、長さフィールドと、ディスカバリ制御フィールドと、発見アドレス情報フィールドとを備える、Ｃ２０に記載の第１のワイヤレスデバイス。
［Ｃ３４］
前記ディスカバリ制御フィールドは、ブルームフィルタの存在を示すタイプフラグと、所望の局応答を示すインクルードフラグと、関連するブルームフィルタに関連するハッシュ関数の特定のセットを識別するブルームフィルタインデックスとを備える、Ｃ３３に記載の第１のワイヤレスデバイス。
［Ｃ３５］
前記長さフィールドは１オクテットであり、前記ディスカバリ制御フィールドは１オクテットであり、前記タイプフラグは１ビットであり、前記インクルードフラグは１ビットであり、前記ブルームフィルタインデックスは２ビットであり、前記発見アドレス情報フィールドは可変長である、Ｃ３４に記載の第１のワイヤレスデバイス。
［Ｃ３６］
前記インクルードフラグは、設定されていないとき、前記ブルームフィルタ中に示されたデバイスが応答すべきでないことを示し、設定されているとき、前記ブルームフィルタ中に示されたデバイスのみが送信すべきであることを示す、Ｃ３４に記載の第１のワイヤレスデバイス。
［Ｃ３７］
前記ディスカバリ制御フィールドは、クエリインデックスをさらに備える、Ｃ３４に記載の第１のワイヤレスデバイス。
［Ｃ３８］
前記識別子は、メディアアクセス制御（ＭＡＣ）アドレスを備える、Ｃ２０に記載の第１のワイヤレスデバイス。
［Ｃ３９］
ワイヤレス近傍アウェアネットワーク（ＮＡＮ）においてディスカバリ情報を通信するための装置であって、
隣接ワイヤレスデバイスからメッセージを受信するための手段と、前記メッセージは、発見されたデバイス識別子を示すデータ構造を備え、
前記データ構造が前記装置の識別子を示すかどうかを決定するための手段と、
前記データ構造が前記装置の前記識別子を示さないときに、前記装置の前記識別子を備えるメッセージを送信するための手段と、
を備える、装置。
［Ｃ４０］
ｋ個のアレイ位置を得るために、各々がｍビットのブルームフィルタビットアレイに関連付けられる、ｋ個の異なるハッシュ関数の各々に前記識別子をマッピングすることと、
すべての前記ｋ個のアレイ位置にあるビットが１であるかどうかを決定するための手段と、
をさらに備える、Ｃ３９に記載の装置。
［Ｃ４１］
第２のブルームフィルタとクエリインデックスとを備える第２のメッセージを受信するための手段と、
ハッシュ関数の異なるセットを使用して、前記データ構造が前記装置の前記識別子を示すかどうかを決定するための手段と、
前記装置が、同じクエリインデックスをもつクエリに応答しておらず、前記データ構造が、前記装置の前記識別子を示さないときに、前記第２のメッセージに応答するための手段と、
をさらに備える、Ｃ４０に記載の装置。
［Ｃ４２］
実行されたとき、装置に、
隣接ワイヤレスデバイスからメッセージを受信することと、前記メッセージは、発見されたデバイス識別子を示すデータ構造を備え、
前記データ構造が前記装置の識別子を示すかどうかを決定することと、
前記データ構造が前記装置の前記識別子を示さないときに、前記装置の前記識別子を備えるメッセージを送信することと、
を行わせるコードを備える、非一時的コンピュータ可読媒体。
［Ｃ４３］
実行されたとき、前記装置に、
ｋ個のアレイ位置を得るために、各々がｍビットのブルームフィルタビットアレイに関連付けられる、ｋ個の異なるハッシュ関数の各々に前記識別子をマッピングすることと、
すべての前記ｋ個のアレイ位置にあるビットが１であるかどうかを決定することと、
を行うことによって前記データ構造が前記識別子を示すかどうかを決定させるコードをさらに備える、Ｃ４２に記載の媒体。
［Ｃ４４］
実行されたとき、前記装置に、
第２のブルームフィルタとクエリインデックスとを備える第２のメッセージを受信することと、
ハッシュ関数の異なるセットを使用して、前記データ構造が前記装置の前記識別子を示すかどうかを決定することと、
前記装置が、同じクエリインデックスをもつクエリに応答しておらず、前記データ構造が、前記装置の前記識別子を示さないときに、前記第２のメッセージに応答することと、
を行わせるコードをさらに備える、Ｃ４３に記載の媒体。
【図１】
0006321050.tif 000005
【図２】
0006321050.tif 000006
【図３】
0006321050.tif 000007
【図４】
0006321050.tif 000008
【図５】
0006321050.tif 000009
【図６】
0006321050.tif 000010
【図７】
0006321050.tif 000011
【図８】
0006321050.tif 000012
【図９】
0006321050.tif 000013
【図１０Ａ】
0006321050.tif 000014
【図１０Ｂ】
0006321050.tif 000015
【図１１】
0006321050.tif 000016
【図１２】
0006321050.tif 000017
【図１３】
0006321050.tif 000018