(57)【要約】  ピアツーピアネットワークのグループオーナであるべきいくつかのワイヤレスデバイスのうちの1つを選択する方法が、第1のワイヤレスデバイスにおいて、どれだけ多くの他のワイヤレスデバイスが第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを示す、第1のカウント値を決定するステップと、第2のワイヤレスデバイスについて、どれだけ多くの他のワイヤレスデバイスが第2のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを示す第2のカウント値を決定するステップと、少なくとも部分的に、第1のカウント値が第2のカウント値よりも大きいか、または小さいかに基づいて、グループオーナとして、第1のワイヤレスデバイスまたは第2のワイヤレスデバイスのいずれかを選択するステップとを含む。
2017529013.tif 000002
【特許請求の範囲】
【請求項１】
ピアツーピアネットワークのグループオーナを選択する方法であって、
前記ピアツーピアネットワークについて、どれだけ多くのワイヤレスデバイスが第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを、どれだけ多くのワイヤレスデバイスが第2のワイヤレスデバイスのワイヤレス通信範囲内にあるのかと比較するステップと、
前記第1のワイヤレスデバイスまたは前記第2のワイヤレスデバイスのいずれかを、少なくとも部分的に前記比較に基づいて前記グループオーナとして選択するステップと
を含む、方法。
【請求項２】
前記第1のワイヤレスデバイスが、発見動作の期間に、どれだけ多くのワイヤレスデバイスが前記第2のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを示す表示を受け取る、請求項1に記載の方法。
【請求項３】
他のワイヤレスデバイスにプローブ要求を送信するステップと、
いくつかの前記他のワイヤレスデバイスからプローブ応答を受け取るステップであって、受け取ったプローブ応答の数が、どれだけ多くのワイヤレスデバイスが前記第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを示す、ステップと
をさらに含む、請求項1に記載の方法。
【請求項４】
前記受け取ったプローブ応答の各々が、対応する他のワイヤレスデバイスのメディアアクセス制御(MAC)アドレスを含む、請求項3に記載の方法。
【請求項５】
前記第1のワイヤレスデバイス内に設けられるデータベース中に前記MACアドレスを記憶するステップ
をさらに含む、請求項4に記載の方法。
【請求項６】
どれだけ多くのワイヤレスデバイスが前記第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかの表示を、前記第2のワイヤレスデバイスに送るステップ
をさらに含む、請求項1に記載の方法。
【請求項７】
前記選択するステップが、
前記第2のワイヤレスデバイスのワイヤレス通信範囲内よりも、前記第1のワイヤレスデバイスのワイヤレス通信範囲内により多くのワイヤレスデバイスがある場合、前記第1のワイヤレスデバイスを前記グループオーナとして選択するステップと、
前記第1のワイヤレスデバイスのワイヤレス通信範囲内よりも、前記第2のワイヤレスデバイスのワイヤレス通信範囲内により多くのワイヤレスデバイスがある場合、前記第2のワイヤレスデバイスを前記グループオーナとして選択するステップと
を含む、請求項1に記載の方法。
【請求項８】
前記選択するステップが、
同じ数のワイヤレスデバイスが前記第1のワイヤレスデバイスと第2のワイヤレスデバイスのワイヤレス通信範囲内にあることを前記比較が示す場合、前記第1のワイヤレスデバイスと第2のワイヤレスデバイスのメディアアクセス制御(MAC)アドレスの比較に基づいて、前記第1のワイヤレスデバイスまたは前記第2のワイヤレスデバイスのいずれかを前記グループオーナとして選択するステップ
をさらに含む、請求項1に記載の方法。
【請求項９】
第1のワイヤレスデバイスであって、
ワイヤレス信号を他のワイヤレスデバイスと交換するトランシーバと、
1つまたは複数のプロセッサと、
前記1つまたは複数のプロセッサによって実行されると、前記第1のワイヤレスデバイスに、
ピアツーピアネットワークについて、どれだけ多くのワイヤレスデバイスが前記第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを、どれだけ多くのワイヤレスデバイスが第2のワイヤレスデバイスのワイヤレス通信範囲内にあるのかと比較させ、
前記第1のワイヤレスデバイスまたは前記第2のワイヤレスデバイスのいずれかを、少なくとも部分的に前記比較に基づいてグループオーナとして選択させる
命令を記憶するメモリと
を備える、第1のワイヤレスデバイス。
【請求項１０】
前記第1のワイヤレスデバイスが、発見動作の期間に、どれだけ多くのワイヤレスデバイスが前記第2のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを示す表示を受け取る、請求項9に記載の第1のワイヤレスデバイス。
【請求項１１】
前記命令の実行が、前記第1のワイヤレスデバイスに、
他のワイヤレスデバイスにプローブ要求を送信させ、
いくつかの前記他のワイヤレスデバイスからプローブ応答を受け取らせ、受け取ったプローブ応答の数が、どれだけ多くのワイヤレスデバイスが前記第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを示す、
請求項9に記載の第1のワイヤレスデバイス。
【請求項１２】
前記受け取ったプローブ応答の各々が、対応する他のワイヤレスデバイスのメディアアクセス制御(MAC)アドレスを含む、請求項11に記載の第1のワイヤレスデバイス。
【請求項１３】
前記命令の実行が、前記第1のワイヤレスデバイスに、さらに、
前記第1のワイヤレスデバイス内に設けられるデータベース中に前記MACアドレスを記憶させる、
請求項12に記載の第1のワイヤレスデバイス。
【請求項１４】
前記命令の実行が、前記第1のワイヤレスデバイスに、さらに、
どれだけ多くのワイヤレスデバイスが前記第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかの表示を、前記第2のワイヤレスデバイスに送らせる、
請求項9に記載の第1のワイヤレスデバイス。
【請求項１５】
前記グループオーナを選択する前記命令の実行が、前記第1のワイヤレスデバイスに、
前記第2のワイヤレスデバイスのワイヤレス通信範囲内よりも、前記第1のワイヤレスデバイスのワイヤレス通信範囲内により多くのワイヤレスデバイスがある場合、前記第1のワイヤレスデバイスを前記グループオーナとして選択させ、
前記第1のワイヤレスデバイスのワイヤレス通信範囲内よりも、前記第2のワイヤレスデバイスのワイヤレス通信範囲内により多くのワイヤレスデバイスがある場合、前記第2のワイヤレスデバイスを前記グループオーナとして選択させる、
請求項9に記載の第1のワイヤレスデバイス。
【請求項１６】
前記グループオーナを選択する前記命令の実行が、前記第1のワイヤレスデバイスに、
同じ数のワイヤレスデバイスが前記第1のワイヤレスデバイスと第2のワイヤレスデバイスのワイヤレス通信範囲内にあることを前記比較が示す場合、前記第1のワイヤレスデバイスと第2のワイヤレスデバイスのメディアアクセス制御(MAC)アドレスの比較に基づいて、前記第1のワイヤレスデバイスまたは前記第2のワイヤレスデバイスのいずれかを前記グループオーナとして選択させる、
請求項9に記載の第1のワイヤレスデバイス。
【請求項１７】
第1のワイヤレスデバイスの1つまたは複数のプロセッサによって実行されると、前記第1のワイヤレスデバイスに、
ピアツーピアネットワークについて、どれだけ多くのワイヤレスデバイスが前記第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを、どれだけ多くのワイヤレスデバイスが第2のワイヤレスデバイスのワイヤレス通信範囲内にあるのかと比較するステップと、
前記第1のワイヤレスデバイスまたは前記第2のワイヤレスデバイスのいずれかを、少なくとも部分的に前記比較に基づいてグループオーナとして選択するステップと
を含む動作を実施させる命令を記憶する、非一時的なコンピュータ可読記録媒体。
【請求項１８】
前記第1のワイヤレスデバイスが、発見動作の期間に、どれだけ多くのワイヤレスデバイスが前記第2のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを示す表示を受け取る、請求項17に記載の非一時的なコンピュータ可読記録媒体。
【請求項１９】
前記命令の実行が、前記第1のワイヤレスデバイスに、
他のワイヤレスデバイスにプローブ要求を送信するステップと、
いくつかの前記他のワイヤレスデバイスからプローブ応答を受け取るステップであって、受け取ったプローブ応答の数が、どれだけ多くのワイヤレスデバイスが前記第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを示す、ステップと
をさらに含む動作を実施させる、請求項17に記載の非一時的なコンピュータ可読記録媒体。
【請求項２０】
前記受け取ったプローブ応答の各々が、対応する他のワイヤレスデバイスのメディアアクセス制御(MAC)アドレスを含む、請求項19に記載の非一時的なコンピュータ可読記録媒体。
【請求項２１】
前記命令の実行が、前記第1のワイヤレスデバイスに、
前記第1のワイヤレスデバイス内に設けられるデータベース中に前記MACアドレスを記憶するステップ
をさらに含む動作を実施させる、請求項20に記載の非一時的なコンピュータ可読記録媒体。
【請求項２２】
前記命令の実行が、前記第1のワイヤレスデバイスに、
どれだけ多くのワイヤレスデバイスが前記第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかの表示を、前記第2のワイヤレスデバイスに送るステップ
をさらに含む動作を実施させる、請求項17に記載の非一時的なコンピュータ可読記録媒体。
【請求項２３】
前記グループオーナを選択する前記命令の実行が、前記第1のワイヤレスデバイスに、
前記第2のワイヤレスデバイスのワイヤレス通信範囲内よりも、前記第1のワイヤレスデバイスのワイヤレス通信範囲内により多くのワイヤレスデバイスがある場合、前記第1のワイヤレスデバイスを前記グループオーナとして選択するステップと、
前記第1のワイヤレスデバイスのワイヤレス通信範囲内よりも、前記第2のワイヤレスデバイスのワイヤレス通信範囲内により多くのワイヤレスデバイスがある場合、前記第2のワイヤレスデバイスを前記グループオーナとして選択するステップと
を含む動作を実施させる、請求項17に記載の非一時的なコンピュータ可読記録媒体。
【請求項２４】
前記グループオーナを選択する前記命令の実行が、前記第1のワイヤレスデバイスに、
同じ数のワイヤレスデバイスが前記第1のワイヤレスデバイスと第2のワイヤレスデバイスのワイヤレス通信範囲内にあることを前記比較が示す場合、前記第1のワイヤレスデバイスと第2のワイヤレスデバイスのメディアアクセス制御(MAC)アドレスの比較に基づいて、前記第1のワイヤレスデバイスまたは前記第2のワイヤレスデバイスのいずれかを前記グループオーナとして選択するステップ
を含む動作を実施させる、請求項17に記載の非一時的なコンピュータ可読記録媒体。
【請求項２５】
第1のワイヤレスデバイスであって、
ピアツーピアネットワークについて、どれだけ多くのワイヤレスデバイスが前記第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを、どれだけ多くのワイヤレスデバイスが第2のワイヤレスデバイスのワイヤレス通信範囲内にあるのかと比較するための手段と、
前記第1のワイヤレスデバイスまたは前記第2のワイヤレスデバイスのいずれかを、少なくとも部分的に前記比較に基づいてグループオーナとして選択するための手段と
を備える、第1のワイヤレスデバイス。
【請求項２６】
前記第1のワイヤレスデバイスが、発見動作の期間に、どれだけ多くのワイヤレスデバイスが前記第2のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを示す表示を受け取る、請求項25に記載の第1のワイヤレスデバイス。
【請求項２７】
他のワイヤレスデバイスにプローブ要求を送信するための手段と、
いくつかの前記他のワイヤレスデバイスからプローブ応答を受け取るための手段であって、受け取ったプローブ応答の数が、どれだけ多くのワイヤレスデバイスが前記第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを示す、手段と
をさらに備える、請求項25に記載の第1のワイヤレスデバイス。
【請求項２８】
前記受け取ったプローブ応答の各々が、対応する他のワイヤレスデバイスのメディアアクセス制御(MAC)アドレスを含む、請求項27に記載の第1のワイヤレスデバイス。
【請求項２９】
どれだけ多くのワイヤレスデバイスが前記第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかの表示を、前記第2のワイヤレスデバイスに送るための手段
をさらに備える、請求項27に記載の第1のワイヤレスデバイス。
【請求項３０】
選択するための前記手段が、
同じ数のワイヤレスデバイスが前記第1のワイヤレスデバイスと第2のワイヤレスデバイスのワイヤレス通信範囲内にあることを前記比較が示す場合、前記第1のワイヤレスデバイスと第2のワイヤレスデバイスのメディアアクセス制御(MAC)アドレスの比較に基づいて、前記第1のワイヤレスデバイスまたは前記第2のワイヤレスデバイスのいずれかを前記グループオーナとして選択する、
請求項27に記載の第1のワイヤレスデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本実施形態は、一般にワイヤレスネットワークに関し、より詳細には、ピアツーピアネットワーク内のグループオーナ選択に関する。
【背景技術】
【０００２】
Wi-Fiネットワークは、移動局(STA)などいくつかのワイヤレスデバイスと、ワイヤレス通信チャネルまたはリンクを提供する1つまたは複数のアクセスポイント(AP)によって形成することができる。基本サービスセット(BSS)に対応することができる各APは、ビーコンフレームを周期的にブロードキャストして、APのワイヤレス範囲内の任意のSTAが、Wi-Fiネットワークとの通信リンクを確立および/または維持することを可能にする。APがSTAについてのダウンリンクデータを待ち行列に入れたかどうかを示すトラフィック表示マップ(TIM: traffic indication map)、およびAPのタイミング同期機能(TSF)値を含むことができるビーコンフレームは、典型的には、ターゲットビーコン送信時間(TBTT)スケジュールに従ってブロードキャストされる。
【０００３】
ピアツーピア(P2P)ネットワークは、APが存在しなくとも、いくつかのSTAによって形成することができる。「Wi-Fi Direct」としても知られている、Wi-Fi Alliance P2P規格に従って動作するP2Pネットワークでは、STAのうちの1つをグループオーナ(GO)として指定することができ、他のSTAをP2Pクライアントとして指定することができる。P2Pグループオーナは、たとえば、ビーコンフレームをP2Pグループ中の他のSTAにブロードキャストすることなど、APの機能の多くを実施することができる。ブロードキャストされるビーコンフレームは、グループオーナのTSF値、ならびに、必要とされる動作パラメータ、サポートされる能力、メンバシップ、およびP2Pグループ内で利用可能なサービスを含むことができる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
複数のSTAのうちのどれがP2PグループのGOとして働くのかを選択するのは重要である。というのは、たとえば、GOは、P2Pグループのメンバからのデータ送信を制御することができ、したがってP2Pグループメンバと通信することが可能であるべきであるからである。
【課題を解決するための手段】
【０００５】
この概要は、下の詳細な記載の中でさらに記載される概念の選択を、簡単な形で導入するために提供される。この概要は、特許請求の範囲に記載される主題のキーとなる特徴または本質的な特徴を識別することを意図しておらず、また、特許請求の範囲に記載される主題の範囲を限定することも意図していない。
【０００６】
ピアツーピア(P2P)ネットワークのためのグループオーナ(GO)を選択する方法および装置が開示される。例示的な実施形態では、第1のワイヤレスデバイスは、どれだけ多くの他のワイヤレスデバイスが第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを示す、第1のカウント値を決定することができる。第1のワイヤレスデバイスは、次いで、1つまたは複数の第2のワイヤレスデバイスについて、どれだけ多くの他のワイヤレスデバイスが1つまたは複数の第2のワイヤレスデバイスのうちの各々のワイヤレス通信範囲内にあるのかを各々が示す、1つまたは複数の第2のカウント値を決定することができる。第1のワイヤレスデバイスは、1つまたは複数の第2のワイヤレスデバイスから、1つまたは複数の第2のカウント値を受け取ることができる。第1のワイヤレスデバイスは、次いで、少なくとも部分的に、第1のカウント値が1つまたは複数の第2のカウント値よりも大きいか、または小さいかに基づいて、ピアツーピアネットワークのグループオーナとして、第1のワイヤレスデバイスまたは1つまたは複数の第2のワイヤレスデバイスのうちの1つのいずれかを選択することができる。たとえば、第1の数が1つまたは複数の第2のカウント値よりも大きいとき、第1のワイヤレスデバイスがGOとして選択される。第1の数が1つまたは複数の第2のカウント値よりも小さいとき、第1のワイヤレスデバイスがGOとして選択される。第1の数が第2のカウント値の最大値と等しいとき、GOの選択は、第1のワイヤレスデバイスと1つまたは複数の第2のワイヤレスデバイスのMACアドレスとの(たとえば、比較)に基づくことができる。
【０００７】
ワイヤレスデバイスは、1つまたは複数のアンテナ、1つまたは複数のアンテナを通して信号を送受信するためのトランシーバを含むワイヤレスモデム、1つまたは複数のプロセッサ、および1つまたは複数のプロセッサによって実行するように構成される1つまたは複数のプログラムを記憶するメモリを含むことができる。1つまたは複数のプログラムは、例示的な実施形態の方法を実施するための命令を含む。また、ワイヤレスデバイス内に設けられる非一時的なコンピュータ可読記憶媒体が、ワイヤレスデバイス中の1つまたは複数のプロセッサによって実行するように構成される1つまたは複数のプログラムを記憶することができる。1つまたは複数のプログラムは、例示的な実施形態の方法を実施するための命令を含むことができる。
【０００８】
本実施形態は、例として説明されており、添付図面の図によって限定されることを意図していない。同様の番号は、図面および明細書を通して、同様の要素を参照する。
【図面の簡単な説明】
【０００９】
【図１】例示的な実施形態を実装することができるネットワークシステムを描く図である。
【図２】図1に記載されるワイヤレスデバイスの一実施形態であるワイヤレスデバイスを示す図である。
【図３】例示的な実施形態に従う、P2Pネットワークを動作させるための例示的な動作を描く、例示的なフローチャートを示す図である。
【図４Ａ】例示的な実施形態に従う、P2Pネットワークについてのグループオーナを選択する例示的な動作を描く、例示的なフローチャートを示す図である。
【図４Ｂ】例示的な実施形態に従う、P2Pネットワークについてのグループオーナを選択する別の例示的な動作を描く、例示的なフローチャートを示す図である。
【図５】例示的な実施形態に従う、P2Pネットワークの新しいグループオーナを選択するための例示的な動作を描く、例示的なフローチャートを示す図である。
【発明を実施するための形態】
【００１０】
例示的な実施形態は、IEEE 802.11ファミリの規格のうちの1つまたは複数の態様に従って動作するワイヤレスシステムの文脈で、下に記載される。例示的な実施形態は、他のワイヤレスネットワーク(たとえば、セルラネットワーク、ブルートゥース(登録商標)ネットワーク、ピコネットワーク、フェムトネットワーク、衛星ネットワークなど)、ならびに1つまたは複数の有線規格もしくはプロトコル(たとえば、イーサネット(登録商標)および/もしくはHomePlug/PLC規格)の信号を使用するシステムに等しく適用可能であることを理解されよう。本明細書で使用する、「WLAN」および「Wi-Fi(登録商標)」という用語は、IEEE 802.11ファミリの規格、ブルートゥース(登録商標)、ハイパーLAN(ヨーロッパで主に使用される、IEEE 802.11規格に匹敵するワイヤレス規格の組)、および比較的短い無線伝播範囲を有する他の技術によって管理される通信を含むことができる。したがって、「WLAN」と「Wi-Fi」という用語は、本明細書で交換可能に使用することができる。加えて、例示的な実施形態は、インフラストラクチャWLANシステム、ピアツーピア(または、Independent Basic Service Set)ワイヤレスシステム、Wi-Fi Directワイヤレスシステム、および/またはホットスポットとして動作するように構成されるワイヤレスネットワーク中に実装することができる。加えて、ワイヤレスデバイス間のデータパケット交換に関して本明細書に記載されるが、例示的な実施形態は、ワイヤレスデバイス間の、任意のデータ単位、パケット、および/またはフレームの交換に適用することができる。したがって、「データパケット」という用語は、任意のフレーム、パケット、または、たとえば、プロトコルデータユニット(PDU)、MACプロトコルデータユニット(MPDU)、および物理層コンバージェンスプロシージャプロトコルデータユニット(PPDU: physical layer convergence procedure protocol data unit)などのデータユニットを含むことができる。「A-MPDU」という用語は、aggregated MPDUのことを指すことができる。
【００１１】
さらに、「スリープ状態」、「ドーズ状態(doze state)」、および「パワーセーブ状態」という用語は、Wi-Fi対応デバイスまたは局のうちの1つまたは複数の構成要素が(たとえば、バッテリ寿命を長くするために)非アクティブ化される低電力動作モードのことを指し、したがって、「スリープ状態」、「ドーズ状態」、および「パワーセーブ状態」という用語は、本明細書で交換可能に使用することができる。「ワイヤレスデバイス」と「局」(またはSTA)という用語は、本明細書で交換可能に使用することができる。加えて、「P2Pネットワーク」および「P2Pグループ」という用語は、専用のアクセスポイントなしで(たとえば、Wi-Fi Directプロトコルに従って)互いに通信できるいくつかのワイヤレスデバイスのことを両方が指すことができ、したがって、「P2Pネットワーク」と「P2Pグループ」という用語は、本明細書で交換可能に使用することができる。
【００１２】
以下の記載では、本開示の完全な理解を実現するために、具体的な構成要素、回路、およびプロセスの例などの、多くの具体的な詳細が記載される。本明細書で使用する「結合された」という用語は、直接結合されたこと、または、1つもしくは複数の介在する構成要素もしくは回路を通して結合されたことを意味する。また、以下の記載では、説明の目的で、本実施形態の完全な理解を実現するため、具体的な名称が記載される。しかしながら、これらの特定の詳細が本実施形態を実施するのに必要ではない可能性があることは当業者には明らかであろう。別の例では、本開示を曖昧にすることを避けるために、周知の回路およびデバイスがブロック図で示される。本明細書で説明する様々なバスを介して与えられる信号のいずれも、他の信号で時分割多重化され、1つまたは複数の共通バスを介して与えられ得る。加えて、回路要素またはソフトウェアブロック間の相互接続は、バスまたは単一の信号線として示される場合がある。バスの各々は代替として単一信号線であってもよく、単一信号線の各々は代替としてバスであってもよく、単一線またはバスは構成要素間の通信のための無数の物理的または論理的機構のうちの任意の1つまたは複数を表し得る。本実施形態は本明細書で説明する特定の例に限定されるものと解釈すべきではなく、むしろ、その範囲内に添付の特許請求の範囲によって定義されるすべての実施形態を含むものと解釈すべきである。
【００１３】
図1は、例示的な実施形態を実装することができる例示的なネットワークシステム100を描く。システム100は、たとえば、(ワイヤレスシステム100の動作を管理するために、他のワイヤレスプロトコルを採用することができるが、)Wi-Fi Directプロトコルに従って動作できる、ピアツーピア(P2P)ネットワーク110(またはP2Pグループ110)を一緒に形成する、4つのワイヤレスデバイスWD1〜WD4を含むように示される。簡単にするために、図1では、単に4つのワイヤレスデバイスWD1〜WD4が示されるが、ネットワークシステム100が任意の数のワイヤレスデバイスを含むことができることを理解されたい。
【００１４】
ワイヤレスデバイスWD1〜WD4の各々は、たとえば、セル電話、スマートフォン、スマートウォッチ、携帯情報端末(PDA)、タブレットデバイス、ラップトップコンピュータ、ルータ、ゲートウェイ、ハブ、アクセスポイント、移動局(STA)、メディアプレイヤ、スピーカ、オーディオアンプなどを含む、任意の好適なWi-Fi対応ワイヤレスデバイスであってよい。ワイヤレスデバイスWD1〜WD4の各々は、たとえば、ワイヤレスデバイスの製造業者によってその中にプログラムされる、一意のメディアアクセス制御(MAC)アドレス(すなわち、それぞれ、MAC1〜MAC4)を割り当てることができる。少なくともいくつかの実施形態では、ワイヤレスデバイスWD1〜WD4の各々は、少なくとも1つまたは複数のトランシーバ、1つまたは複数の処理リソース(たとえば、プロセッサおよび/またはASIC)、1つまたは複数のメモリリソース、ディスプレイ、1つまたは複数の表示器、および電源(たとえば、バッテリ)を含むことができる。メモリリソースは、図3および図4に関して下で記載される動作を実施するための命令を記憶する、非一時的コンピュータ可読媒体(たとえば、EPROM、EEPROM、フラッシュメモリ、ハードドライブなどの1つまたは複数の不揮発性メモリ要素)を含むことができる。
【００１５】
P2Pグループを形成する前に、ワイヤレスデバイスWD1〜WD4は、近くのワイヤレスデバイスを発見するため、および/または近くのデバイスによって何のサービス(たとえば印刷)が提示されるのかを判定するため、発見動作を実施することができる。発見動作は、デバイス発見フェーズおよびサービス発見フェーズといった、2つのフェーズを含みことができる。デバイス発見フェーズの期間に、ワイヤレスデバイスは、たとえば、着信ビーコンフレームについて3つのソーシャルチャネル(たとえば、2.4GHz帯中のチャネル1、6、および11)をスキャンすることによって、および/またはそれらのチャネルを聞いている可能性がある任意のワイヤレスデバイスにプローブ要求フレームをブロードキャストすることによって、Wi-Fi通信範囲内の他のワイヤレスデバイスの識別情報および/または可用性を判定する。その後、サービス発見フェーズの期間に、ワイヤレスデバイスは、(たとえば、デバイス発見フェーズの期間に発見された)利用可能なピアデバイスに、それらが提供するサービスについて問い合わせる。
【００１６】
一度ワイヤレスデバイスWD1〜WD4が、互い(その後、それらは、「ピア」デバイスと呼ぶことができる)を発見すると、ワイヤレスデバイスWD1〜WD4は、P2Pネットワーク110についてのグループオーナ(GO)を選択することができる。前述のように、グループオーナ(GO)は、(たとえば、P2Pグループへ新しいメンバを入れること、P2Pネットワークを管理すること、ビーコンフレームをブロードキャストすることなど)アクセスポイントに典型的に関連する機能の多くを実施することができる。結果として、GOを「ソフトAP」と呼ぶこともできる。(たとえば、GOとして選択されないワイヤレスデバイスWD1からWD4のものといった)他のピアデバイスを、P2Pクライアントデバイスと呼ぶことができる。GOは、任意の好適な有線またはワイヤレス通信プロトコルを使用して、P2Pクライアントデバイスをネットワーク(たとえば、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、および/またはインターネット)に接続することを可能にすることもできる。一例では、バックホールネットワークへのGOのセルラー接続を介して、近くのクライアントデバイスに、インターネットへのアクセスを提供するGOが、一般的に「ホットスポット」として知られる場合がある。
【００１７】
一度P2Pグループが形成されると、P2Pグループのメンバ(たとえば、GOおよびクライアントデバイス)は、従来型のアクセスポイントの支援なしで互いに通信することができ、それによって、図1のワイヤレスデバイスWD1〜WD4などのいくつかのワイヤレスデバイスが、ほぼどこでもP2Pグループを形成することを可能にする。加えて、P2Pグループのメンバは、たとえば、印刷、ゲーム、ファイル共有、および/またはインターネットゲートウェイサービスを含むサービスを、(互いに)提供することができる。
【００１８】
現在、P2PグループについてのGOを選択するため、2つの主な技法がある。自律型グループオーナ選択(Autonomous Group Owner selection)として一般的に知られている第1の技法では、ワイヤレスデバイスのユーザが、ユーザのデバイスをGOとしてセットアップする。ネゴシエーションベース型グループ形成として一般的に知られている第2の技法では、いくつかの候補となるワイヤレスデバイスが、GOとして選択されるように、互いに競い合う。より詳細には、候補となるワイヤレスデバイスの各々が、それ自体のグループオーナインテント値を計算することができ、次いで、候補となるワイヤレスデバイスは、それ自体のグループオーナインテント値を、他の候補となるワイヤレスデバイスのグループオーナインテント値と比較する。最も大きいグループオーナインテント値を有するワイヤレスデバイスがGOになり、すべての他のワイヤレスデバイスはクライアントデバイスになる。ワイヤレスデバイスのグループオーナインテント値は、典型的には、ワイヤレスデバイスがインフラストラクチャWLANサービスとP2Pグループとの間の相互接続を実施することができるのか、ワイヤレスデバイス中の残りの電力、ワイヤレスデバイスがすでに別のグループ中のグループオーナであるか、および/または受信信号強度インジケータ(RSSI)値に基づく。
【００１９】
GOがP2Pグループを管理し、いつそのクライアントデバイスが互いにデータを送信することができるのかを制御することができるので、GOがクライアントデバイスのうちのできるだけ多くのワイヤレス通信範囲内であることが重要である。現在のWi-Fi Directプロトコルは、グループオーナインテント値を決定するとき、この情報を考慮しない。したがって、従来型の技法に基づいてGOを選択することでは、様々な物理的な位置を有する最も多くのクライアントデバイスにサービスすることが最高に可能なGOを選択する結果にならない可能性がある。これは、例示的な実施形態によって解決されるべき技術的問題のうちの少なくとも1つである。
【００２０】
たとえば、図1を参照して、ワイヤレスデバイスWD1〜WD4がすべてP2Pネットワーク110のメンバであることができるが、ワイヤレスデバイスWD1〜WD4のうちの1つまたは複数は、他のワイヤレスデバイスのすべてと通信することが可能ではない可能性がある。より詳細には、図1に描かれる例では、ワイヤレスデバイスWD2の位置は、ワイヤレスデバイスWD1およびWD3とのワイヤレス通信を可能にすることができるが、(たとえば、ワイヤレスデバイスWD4が、ワイヤレスデバイスWD2のワイヤレスカバレージエリア内でないため、)ワイヤレスデバイスWD4とは可能にすることができない。ワイヤレスデバイスWD3の位置は、ワイヤレスデバイスWD1およびWD2とのワイヤレス通信を可能にすることができるが、(たとえば、ワイヤレスデバイスWD4が、ワイヤレスデバイスWD3のワイヤレスカバレージエリア内でないため、)ワイヤレスデバイスWD4とは可能にすることができない。ワイヤレスデバイスWD4の位置は、(たとえば、ワイヤレスデバイスWD1のみが、ワイヤレスデバイスWD4のワイヤレスカバレージエリア内であるため、)ワイヤレスデバイスWD1とのみワイヤレス通信を可能にすることができる。しかし、ワイヤレスデバイスWD1の、(たとえば、他のワイヤレスデバイスWD2〜WD4の位置に対した)中心位置は、(たとえば、ワイヤレスデバイスWD2〜WD4は、すべて、ワイヤレスデバイスWD1のワイヤレスカバレージエリア内であるため、)ワイヤレスデバイスWD1が、すべての他のワイヤレスデバイスWD2〜WD4とのワイヤレスに通信することを可能にすることができる。結果として、ワイヤレスデバイスWD1は、P2Pネットワーク110についての、GOの選択のための最良の候補となることができる。
【００２１】
例示的な実施形態によれば、P2Pグループ110についてのGOは、ワイヤレスデバイスWD1〜WD4の各々がどれだけ多くの他のワイヤレスデバイスとワイヤレスに通信することができるのかに、少なくとも部分的に基づいて選択することができる。少なくとも1つの例示的な実施形態では、ワイヤレスデバイスWD1〜WD4の各々が、P2Pネットワーク110内の他のワイヤレスデバイスのどれだけ多くがワイヤレス範囲内にあるのかを判定することができ、ワイヤレス範囲内にある他のワイヤレスデバイスの数を示すカウンタ値または数を(たとえば、メモリ中に)記憶することができる。ワイヤレスデバイスWD1〜WD4は、互いにそれらのカウント値を交換し、次いで、互いにカウント値を比較して、ワイヤレスデバイスWD1〜WD4のどれが最大のカウント値を有するのか(たとえば、したがって、ワイヤレスデバイスWD1〜WD4のどれが、P2Pネットワーク110中の最も多くの他のワイヤレスデバイスとワイヤレスに通信することが可能であるのか)を判定することができる。その後、最大のカウント値または数を有するワイヤレスデバイスを、P2Pネットワーク110についてのGOとして選択することができる。少なくとも1つの例示的な実施形態では、カウント値または数が、ワイヤレスデバイスのグループオーナインテント値にとっての基礎をなすことができる。
【００２２】
他の実施形態では、ワイヤレスデバイスのグループオーナインテント値は、カウント値と、たとえば、ワイヤレスデバイスがインフラストラクチャWLANサービスとP2Pグループとの間の相互接続を実施することができるのか、ワイヤレスデバイス中の残りの電力、ワイヤレスデバイスがすでに別のグループ中のグループオーナであるか、および/または受信信号強度インジケータ(RSSI)値を含む1つもしくは複数の他のパラメータとの組合せに基づくことができる。そのような他の実施形態では、グループオーナインテント値を決定するのに考慮されるべきパラメータは、たとえば、1つもしくは複数の第1のパラメータに比較的重いウェイトを置き、および/または1つもしくは複数の第2のパラメータに比較的軽いウェイトを置くといった、様々な重み付け値を割り当てることができる。この方式では、ワイヤレスデバイスWD1〜WD4のユーザは、どのようにグループオーナインテント値が決定されるのかを、動的に構成すること、および/または調整することができる。
【００２３】
少なくともいくつかの例示的な実施形態では、ワイヤレスデバイスWD1〜WD4の各々は、プローブ要求を送信し、次いで他のワイヤレスデバイスのうちのどれだけ多くが応答するのかを調べるために(たとえば、ワイヤレスチャネルを)聞くことによって、どれだけ多くの他のワイヤレスデバイスがワイヤレス範囲内にあるのかを判定することができる。より詳細には、別のワイヤレスデバイスが範囲内にあってプローブ要求を受け取る場合、(現在のWi-Fiプロトコルによって)他のワイヤレスデバイスは、プローブ応答で応答するはずである。こうして、他のワイヤレスデバイスがプローブ応答で応答する場合、他のワイヤレスデバイスがワイヤレス範囲内にあると見なすことができる。逆に、他のワイヤレスデバイスがプローブ応答で応答しない場合、他のワイヤレスデバイスがワイヤレス範囲内にないと見なすことができる。プローブ要求およびプローブ応答のヘッダが、送っているワイヤレスデバイスのMACアドレスを含むので、プローブ要求および/またはプローブ応答を受け取るワイヤレスデバイスは、送っているデバイスのMACアドレスを抽出し、その後、そのワイヤレスデバイスのMACアドレスをメモリ中に記憶することができる。いくつかの例示的な実施形態では、ワイヤレスデバイスWD1〜WD4の各々は、フレーム(たとえば、プローブ要求および/またはプローブ応答)を受け取ったワイヤレスデバイスのMACアドレスのリストを保持することができる。ワイヤレスデバイスWD1〜WD4のうちの1つまたは複数は、MACアドレスのそのリストを使用して、カウント値もしくは数を導出すること、および/または、少なくとも部分的に、ワイヤレスデバイスのグループオーナインテント値を決定することができる。
【００２４】
図2は、図1のワイヤレスデバイスWD1〜WD4の一実施形態であるワイヤレスデバイス200を示す。ワイヤレスデバイス200は、表示器205、ディスプレイ210、少なくとも1つのトランシーバ220、少なくとも1つのプロセッサ230、メモリ240、およびアンテナ(ANT)を含む。図2にはただ1つのアンテナが示されるが、ワイヤレスデバイス200は、任意の好適な数のアンテナを含むことができる。表示器205は、ワイヤレスデバイス200のユーザに、ワイヤレスデバイス200の動作状態(または他の状態)を警告する、任意の好適な表示器(たとえば、1つまたは複数のLED)であってよい。ディスプレイ210は、ワイヤレスデバイス200のためのユーザインターフェースを提供する、任意の好適なタイプのディスプレイ(たとえば、タッチセンシティブディスプレイ)であってよい。
【００２５】
トランシーバ220は、他のワイヤレスデバイスに信号を送信し、信号を受信するために使用することができる。いくつかの実施形態では、トランシーバ220は、様々な周波数帯内で、および/または様々なプロトコルに従って信号を送受信するために、複数のトランシーバを含むことができる。たとえば、トランシーバ220のうちの第1のものがWi-Fi信号を送受信することができ、トランシーバ220のうちの第2のものがセルラー信号を送受信することができ、トランシーバ220のうちの第3のものがブルートゥース(登録商標)信号を送受信することができる。トランシーバ220は、ビーコンフレーム、プローブ要求、プローブ応答、発見メッセージ、アクションフレーム、管理フレーム、測定フレーム、および/またはデータフレーム(ならびに他の好適なフレーム)をやはり送信することができる。
【００２６】
メモリ240は、いくつかの他のワイヤレスデバイスのMACアドレスまたは他の識別情報を記憶するためのローカルキャッシュとして使用できるデバイスデータベース242を含むことができる。いくつかの実施形態では、デバイスデータベース242中の各MACアドレスエントリは、ワイヤレスデバイス200のワイヤレス通信範囲内にあるワイヤレスデバイスを表すことができる。デバイスデータベース242へのMACアドレスエントリは、下でより詳細に記載されるように、P2P発見動作と一緒に行うことができる。少なくとも1つの実施形態では、デバイスデータベース242は、ワイヤレスデバイス200のカウント値もしくは数、および/またはワイヤレスデバイス200のワイヤレス範囲内にある他のワイヤレスデバイスのカウント値もしくは数を、やはり(または代わりに)記憶することができる。加えて、デバイスデータベース242は、ワイヤレスデバイス200のグループオーナインテント値、および/またはワイヤレスデバイス200のワイヤレス範囲内にある他のワイヤレスデバイスのグループオーナインテント値を記憶することができる。少なくとも1つの例示的な実施形態では、デバイスデータベース242は、以前にワイヤレスデバイス200と関連した、および/または接続された他のワイヤレスデバイスについての、履歴関係(たとえば、および対応するMACアドレス)を記憶することもできる。
【００２７】
加えて、デバイスデータベース242は、ワイヤレスデバイス200およびワイヤレスデバイス200のワイヤレス通信範囲内にあるすべての他のワイヤレスデバイスのカウント値または数(または代わりにグループオーナインテント値)を記憶する、グループオーナ候補テーブル243を含むことができる。他の実施形態では、グループオーナ候補テーブル243を、デバイスデータベース242内に一体化することができる。
【００２８】
さらにメモリ240は、以下のソフトウェアモジュールを記憶できる非一時的コンピュータ可読記憶媒体(たとえば、EPROM、EEPROM、フラッシュメモリ、ハードドライブなどの1つまたは複数の不揮発性メモリ要素)を含むこともできる。
・どれだけ多くのワイヤレスデバイスが、ワイヤレスデバイス200の通信範囲内にあり得るのかを判定するためのデバイス発見モジュール244
・候補となるワイヤレスデバイスのグループからP2Pネットワーク110についてのグループオーナを選択するためのグループオーナ選択モジュール246
・P2Pネットワーク110に加入するように他のワイヤレスデバイスを勧誘するP2P勧誘モジュール248
各ソフトウェアモジュールは、プロセッサ230により実行されると、ワイヤレスデバイス200に対応する機能を実施させることができるプログラム命令を含む。こうして、非一時的コンピュータ可読記憶媒体のメモリ240は、図3、図4A、図4B、および図5の動作のすべてまたは一部を実施するための命令を含むことができる。
【００２９】
表示器205、ディスプレイ210、トランシーバ220およびメモリ240に結合されるプロセッサ230は、ワイヤレスデバイス200中の(たとえばメモリ240内に)記憶される1つまたは複数のソフトウェアプログラムのスクリプトまたは命令を実行することが可能な、任意の好適な1つまたは複数のプロセッサであってよい。図2に、トランシーバ220とメモリ240との間に結合されるように示されるが、実際の実施形態では、トランシーバ220、プロセッサ230、およびメモリ240は、(簡単にするために図示されない)1つまたは複数のバスを使用して一緒に接続することができる。
【００３０】
プロセッサ230は、デバイス発見モジュール244を実行して、どれだけ多くの他のワイヤレスデバイスがワイヤレスデバイス200のワイヤレス通信範囲内にあるのかを判定し、および/またはこの情報を他のワイヤレスデバイスと共有することができる。前述のように、ワイヤレスデバイス200の通信範囲内の他のワイヤレスデバイスは、P2Pネットワーク110についての候補となる可能性があり、P2Pネットワーク110についてのGOとしての選択についての候補となる可能性がある。いくつかの実施形態では、プロセッサ230によるデバイス発見モジュール244の実行によって、トランシーバ220に、他のワイヤレスデバイスへのプローブ要求をブロードキャストさせ、他のワイヤレスデバイスから送信される応答を聞かせることができる。たとえば、プロセッサ230によるデバイス発見モジュール244の実行によって、ワイヤレスデバイス200に、ワイヤレス媒体についてのプローブ要求を送信させ、ワイヤレスデバイス200のワイヤレス範囲内にある近くのワイヤレスデバイスからの応答を引き出させることができる。別のワイヤレスデバイスが範囲内にあり、プローブ要求を受け取る場合、他のワイヤレスデバイスは、ワイヤレスデバイス200にプローブ要求を送ることができる。ワイヤレスデバイス200は、プローブ応答から他のワイヤレスデバイスのMACアドレスを抽出し、MACアドレスをデバイスデータベース242中に記憶することができる。この方式では、デバイスデータベース242中のMACアドレスの記憶は、対応する他のワイヤレスデバイスがワイヤレスデバイス200のワイヤレス範囲内にあることを示すことができる。少なくとも1つの実施形態では、デバイス発見モジュール244は、新しいMACアドレスがデバイスデータベース242に記憶されると、ワイヤレスデバイス200のカウント値または数を増分することができる。たとえば、対応するワイヤレスデバイスがもはやワイヤレスデバイス200のワイヤレス範囲内にないために、デバイスデータベース242中に現在記憶されているMACアドレスが削除される(または無効とマークされる)と、デバイス発見モジュール244は、カウント値または数を減分することができる。前述のように、デバイスデータベース242中に記憶されるMACアドレスの数を使用して、ワイ
ヤレスデバイス200のグループオーナインテント値の少なくとも一部を判定することができる。
【００３１】
プロセッサ230は、グループオーナ選択モジュール246を実行して、少なくとも部分的に、P2Pネットワーク110形成するべきワイヤレスデバイスのカウント値もしくは数(または代わりにグループオーナインテント値)に基づいてP2Pネットワーク110についてのGOを選択することができる。少なくともいくつかの例示的な実施形態では、グループオーナ選択モジュール246は、プロセッサ230により実行されると、ワイヤレスデバイスWD1〜WD4のカウント値または数を互いに比較して、ワイヤレスデバイスWD1〜WD4のどれが最大のカウント値または数を有するか(したがって、ワイヤレスデバイスWD1〜WD4のどれが、最も多くの他のワイヤレスデバイスとワイヤレスに通信することが可能であるか)を判定することができる。こうして、少なくとも1つの実施形態では、ワイヤレスデバイス200が、(たとえば、P2Pグループ中の他のワイヤレスデバイスについてのカウント値または数と比較して)最大のカウント値または数を有する場合、ワイヤレスデバイス200は、P2PグループについてのGOとしてそれ自体を選択することができる。逆に、ワイヤレスデバイス200が最大のカウント値または数を有さない場合、ワイヤレスデバイス200は、それ自体をP2Pグループ中のクライアントデバイスとして指定することができる。
【００３２】
他の例示的な実施形態では、各ワイヤレスデバイスのグループオーナインテント値は、カウント値と、たとえば、ワイヤレスデバイスがインフラストラクチャWLANサービスとP2Pグループとの間の相互接続を実施することができるのか、ワイヤレスデバイス中の残りの電力、ワイヤレスデバイスがすでに別のグループ中のグループオーナであるか、および/または受信信号強度インジケータ(RSSI)値を含む1つもしくは複数の他のパラメータとの組合せに基づくことができる。
【００３３】
プロセッサ230は、P2P勧誘モジュール248を実行して、P2Pネットワーク110に加入するように他のワイヤレスデバイスを勧誘することができる。P2Pネットワーク110のGOとして動作するようにワイヤレスデバイス200が選択されると、プロセッサ230によってP2P勧誘モジュール248を実行することができる。少なくともいくつかの実施形態では、P2P勧誘モジュール248を実行して、ワイヤレスデバイス200に、デバイスデータベース242中に記憶されるMACアドレスにより識別されるワイヤレスデバイスに対し、(たとえば、P2Pネットワーク110に加入するよう)勧誘メッセージを送らせることができる。
【００３４】
図3は、例示的な実施形態に従う、P2Pネットワーク110を動作させるための例示的な動作300を描く、例示的なフローチャートを示す。例示的な実施形態は、本明細書に記載される動作を、追加の動作、より少ない動作、異なる順序の動作、並列の動作、および/またはいくつかの動作を変えて実施することができる。
【００３５】
図1〜図3を参照すると、ワイヤレスデバイスWD1〜WD4は、最初に発見フェーズ(301)に入る。発見フェーズ301の期間に、ワイヤレスデバイスWD1〜WD4は、他の近くのワイヤレスデバイスを発見することができる。いくつかの実施形態では、ワイヤレスデバイスWD1〜WD4が、それぞれのユーザから発見フェーズ301を開始するという表示を受け取ると、発見フェーズ301に入ることができる。一例では、ワイヤレスデバイスWD1〜WD4の各々が、ボタン押下または任意の他の技術的に実現可能なユーザ入力を検出することができる。別の例では、ワイヤレスデバイスWD1〜WD4は、(たとえば、短距離場通信(NFC)またはブルートゥース(登録商標)信号を使用する)「ペアリング」を使用して、P2Pネットワーク110のセットアップを円滑にすることができる。
【００３６】
発見フェーズ301の期間に、ワイヤレスデバイスWD1〜WD4の各々は、(たとえば、そのワイヤレス通信範囲内に)どれだけ多くの他のワイヤレスデバイスが認識可能であるのかを判定することができる(302)。いくつかの実施形態では、ワイヤレスデバイスWD1〜WD4の各々は、他のワイヤレスデバイスにプローブ要求を送信し、次いで、プローブ応答を聞いて、どれだけ多くの他のワイヤレスデバイスがワイヤレス範囲内にあるかを判定することができる。前述のように、各プローブ応答は、応答するワイヤレスデバイスのMACアドレスを含み、ワイヤレスデバイスWD1〜WD4の各々は、(たとえば、受け取ったプローブ要求を使用して)そのワイヤレス範囲内にある他のワイヤレスデバイスのMACアドレスのリストを蓄積することができる。ワイヤレスデバイスWD1〜WD4の各々は、結果として得られるMACアドレスのリストを使用して、どれだけ多くの他のワイヤレスデバイスがそのワイヤレス範囲内にあるかを示すカウント値または数を判定することができる。少なくとも1つの例示的な実施形態では、ワイヤレスデバイスWD1〜WD4の各々についてのグループオーナインテント値は、少なくとも部分的に、判定されたカウント値または数に基づくことができる。
【００３７】
依然として発見フェーズ301中であるが、ワイヤレスデバイスWD1〜WD4の各々は、どれだけ多くのワイヤレスデバイスが、P2Pネットワーク110中の他のワイヤレスデバイスの各々に対して認識可能であるのかを判定することができる(304)。たとえば、ワイヤレスデバイスWD1は、たとえば共有動作期間に、他のワイヤレスデバイスWD2〜WD4の各々からカウント値もしくは数(またはグループオーナインテント値)を受け取ることができる。共有動作は、任意の好適なフレームを利用することができ、発見フェーズ301の期間に実施することができる。
【００３８】
より詳細には、プリアソシエーションサービス発見期間(preassociation service discovery period)に、ワイヤレスデバイスWD1〜WD4は、それらの判定されたカウント値または数を示す情報を互いと共有することができる。プリアソシエーションサービス発見プロトコルの例としては、Internet Engineering Task ForceからのRFC 6267により記載されるmDNS (multicast Domain Name System)プロトコル、Apple(登録商標) IncorporatedからのBonjour(登録商標)プロトコル、およびGNU Lesser General Public Licenseから入手可能なAvahiプロトコルが挙げられる。いくつかの実施形態では、発見フェーズ301は、所定の時間期間に制限することができる。たとえば、通信範囲内の他のワイヤレスデバイスを発見するステップおよび他のワイヤレスデバイスに認識可能であるワイヤレスデバイスの数を判定するステップを含む、発見フェーズ301に関連する動作は、30秒に制限することができる。他の実施形態では、他の時間期間を使用することができる。
【００３９】
次いで、接続フェーズ305の期間に、ワイヤレスデバイスWD1〜WD4は、互いとの接続を形成して、P2Pネットワーク110を形成することができる。第1に、グループオーナ(GO)が、P2Pネットワーク110について選択される(306)。前述のように、ワイヤレスデバイスWD1〜WD4の各々は、それらのカウント値または数を、他のワイヤレスデバイスのカウント値または数と比較して、GOを選択することができる。最大のカウント値または数を有するワイヤレスデバイスをGOとして選択することができ、すべての他のワイヤレスデバイスが、クライアントデバイスになることができる。少なくとも1つの例示的な実施形態では、ワイヤレスデバイスWD1〜WD4は、それらのグループオーナインテント値を互いと比較することができ、最大のグループオーナインテント値を有するワイヤレスデバイスを、GOとして選択することができる。いくつかの実施形態では、1つより多い候補となるワイヤレスデバイスが同じカウント値もしくは数(または同じグループオーナインテント値)を有する場合、候補となるワイヤレスデバイスのMACアドレスを、「タイブレーカ」として使用することができる。いくつかの実施形態では、最大のMACアドレスを有する候補となるワイヤレスデバイスをGOとして選択することができる。他の実施形態では、最小のMACアドレスを有する候補となるワイヤレスデバイスをGOとして選択することができる。
【００４０】
次いで、GOは、P2Pネットワーク110に加入するように他のワイヤレスデバイスを勧誘することができる(308)。いくつかの実施形態では、GOは、P2P勧誘プロシージャを使用して、P2Pネットワーク110に加入するように他のワイヤレスデバイスを勧誘することができる。たとえば、GOは、勧誘されるワイヤレスデバイスにP2P勧誘フレームを送信することができる。それへの応答で、GOは、勧誘されるワイヤレスデバイスからP2P勧誘応答フレームを受信することができる。いくつかの実施形態では、P2P勧誘および応答フレームは、ワイヤレスデバイスがP2Pネットワーク110に加入することに関連するボタン押下と同等に働くことができる。
【００４１】
次に、ワイヤレスデバイスWD1〜WD4は、通信フェーズ(309)に入ることができる。通信フェーズの期間に、P2Pネットワーク110内のワイヤレスデバイスWD1〜WD4の間で、データおよび他の情報を交換することができる(310)。
【００４２】
いくつかの実施形態では、P2Pネットワーク110内のワイヤレスデバイスWD1〜WD4は、ワイヤレスデバイスの動作フェーズを表示することができる。たとえば、図2をやはり参照して、ワイヤレスデバイス200が発見フェーズ301に入ると、表示器205に関連するLEDは、第1のデューティサイクルで点滅することができる。たとえば、LEDは、発見フェーズ301の期間に、25%のデューティサイクルで点滅することができる。ワイヤレスデバイス200が接続フェーズ305に入ると、LEDは、第2のデューティサイクルで点滅することができる。たとえば、LEDは、接続フェーズ305の期間に、50%のデューティサイクルで点滅することができる。ワイヤレスデバイス200が通信フェーズ309に入ると、LEDは、第3のデューティサイクルで点滅する、または連続してオンのままでいることができる。他の実施形態では、他のデューティサイクルを使用して、様々な動作フェーズを表示することができる。さらに他の実施形態では、異なるLED色を使用して、ワイヤレスデバイス200の様々な動作フェーズを表示することができる。
【００４３】
いくつかの実施形態では、GOが他のワイヤレスデバイスを308で勧誘した後、1つまたは複数の追加のワイヤレスデバイスが、P2Pネットワーク110に加入することができる。たとえば、追加のワイヤレスデバイスがボタン押下を検出することができ、ボタン押下の検出に応答して、追加のワイヤレスデバイスが、P2Pネットワーク110へ加入するための要求をGOに送ることができる。すでにP2Pネットワーク110のメンバである他のワイヤレスデバイスは、影響を受けないことができる。
【００４４】
図4Aは、例示的な実施形態に従う、P2Pネットワーク110のためのGOを選択するためのより詳細な動作400を描く、例示的なフローチャートを示す。いくつかの実施形態は、本明細書に記載される動作を、追加の動作、より少ない動作、異なる順序の動作、並列の動作、および/またはいくつかの動作を変えて実施することができる。さらに、図4Aの動作は、簡単にするためにワイヤレスデバイスWD1に関して下で記載されるが、P2Pネットワーク110に関連する他のワイヤレスデバイスが、図4Aの動作を実施することもできる(また、GOの選択についての候補として考慮することもできる)。
【００４５】
第1のワイヤレスデバイスWD1は、他のワイヤレスデバイスWD2〜WD4のどれだけ多くが、ワイヤレスデバイスWD1のワイヤレス通信範囲内にあるのかを示す第1のカウント値を決定する(402)。次いで、第1のワイヤレスデバイスWD1は、1つまたは複数の第2のワイヤレスデバイスWD2〜WD4について、どれだけ多くの他のワイヤレスデバイスが、1つまたは複数の第2のワイヤレスデバイスWD2〜WD4のうちのそれぞれ1つのワイヤレス通信範囲内にあるのかを各々が示す1つまたは複数の第2のカウント値を決定する(404)。前述のように、第1のワイヤレスデバイスWD1は、1つまたは複数の第2のワイヤレスデバイスWD2〜WD4から、1つまたは複数の第2のカウント値を示す情報を受け取ることができる。
【００４６】
次いで、第1のワイヤレスデバイスWD1は、少なくとも部分的に、第1のカウント値が1つまたは複数の第2のカウント値よりも大きいか、または小さいかに基づいて、ピアツーピアネットワーク110のグループオーナとして、第1のワイヤレスデバイスWD1または1つもしくは複数の第2のワイヤレスデバイスWD2〜WD4のうちの1つのいずれかを選択する(406)。たとえば、第1のカウント値が第2のカウント値よりも大きいとき、第1のワイヤレスデバイスWD1がGOとして選択される(406A)。逆に、第1のカウント値が第2のカウント値の1つまたは複数よりも小さいとき、最も大きい第2のカウント値を有する第2のワイヤレスデバイスWD2がGOとして選択される(406B)。第1のカウント値が第2のカウント値の最大値と等しいとき、同じ最も大きいカウント値を有するワイヤレスデバイスのMACアドレスの比較に基づいて、GOを選択することができる(406C)。
【００４７】
図4Bは、別の例示的な実施形態に従う、P2Pネットワーク110のためのGOを選択するためのより詳細な動作450を描く、例示的なフローチャートを示す。いくつかの実施形態は、本明細書に記載される動作を、追加の動作、より少ない動作、異なる順序の動作、並列の動作、および/またはいくつかの動作を変えて実施することができる。さらに、図4Bの動作は、簡単にするためにワイヤレスデバイスWD1に関して下で記載されるが、P2Pネットワーク110に関連する他のワイヤレスデバイスが、図4Bの動作を実施することもできる(また、GOの選択についての候補として考慮することもできる)。
【００４８】
ピアツーピアネットワークについて、どれだけ多くのワイヤレスデバイスが第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかが、どれだけ多くのワイヤレスデバイスが第2のワイヤレスデバイスのワイヤレス通信範囲内にあるのかと比較される(452)。少なくともいくつかの実施形態では、第1のワイヤレスデバイスが他のワイヤレスデバイスにプローブ要求を送信することができ(452A)、いくつかの他のワイヤレスデバイスからプローブ応答を受け取ることができ、受け取ったプローブ応答の数が、どれだけ多くのワイヤレスデバイスが第1のワイヤレスデバイスのワイヤレス通信範囲内にあるのかを示す(452B)。
【００４９】
次に、第1のワイヤレスデバイスまたは第2のワイヤレスデバイスのいずれかを、少なくとも部分的に比較に基づいてグループオーナとして選択することができる(454)。少なくともいくつかの実施形態では、第2のワイヤレスデバイスのワイヤレス通信範囲内よりも、第1のワイヤレスデバイスのワイヤレス通信範囲内により多くのワイヤレスデバイスがある場合、第1のワイヤレスデバイスをグループオーナとして選択することができ(454A)、第1のワイヤレスデバイスのワイヤレス通信範囲内よりも、第2のワイヤレスデバイスのワイヤレス通信範囲内により多くのワイヤレスデバイスがある場合、第2のワイヤレスデバイスをグループオーナとして選択することができる(454B)。同じ数のワイヤレスデバイスが第1のワイヤレスデバイスと第2のワイヤレスデバイスのワイヤレス通信範囲内にあることを比較が示す場合、第1のワイヤレスデバイスと第2のワイヤレスデバイスのメディアアクセス制御(MAC)アドレスの比較に基づいて、第1のワイヤレスデバイスまたは第2のワイヤレスデバイスのいずれかをグループオーナとして選択することができる(454C)。いくつかの実施形態では、最大数のMACアドレスを有するワイヤレスデバイスをグループオーナとして選択することができる。他の実施形態では、最小数のMACアドレスを有するワイヤレスデバイスをグループオーナとして選択することができる。
【００５０】
ワイヤレスデバイスのどれが、少なくとも部分的に、P2Pグループを形成することになる最も多くの他のワイヤレスデバイスのワイヤレス範囲内にあるのかに基づいてGOを選択することによって、選択されたGOが、グループ中の最も多くのワイヤレスデバイスと通信可能となることを例示的な実施形態が確実にすることができる。これは、上述の少なくとも1つの技術的な問題に対する技術的な解決策のうちの少なくとも1つである。
【００５１】
GOが電源を切断されたとき、低電力モードにされたとき、またはP2Pネットワーク110の通信範囲から移動したとき、P2Pネットワーク110内の通信が停止する可能性がある。いくつかの実施形態では、現在のGOに関連する非アクティブが検出されて、通信を回復するために、新しいGOが選択される場合がある。新しいGOの選択は、図5に関して下でより詳細に記載される。
【００５２】
図5は、いくつかの実施形態に従う、P2Pネットワーク110の新しいグループオーナを選択する例示的な動作500を描く、例示的なフローチャートを示す。図2をやはり参照して、ワイヤレスデバイス200は、GOが非アクティブであることを最初に判定することができる(502)。一実施形態では、ワイヤレスデバイス200は、ワイヤレスデバイス200がGOからのビーコンフレームを受け取らないことに基づいて、GOが非アクティブであることを判定することができる。たとえば、ワイヤレスデバイス200は、(他の好適な時間期間を使用することができるが)10秒の期間の間GOからビーコンフレームを受け取らないとき、GOが非アクティブであると結論することができる。別の実施形態では、ワイヤレスデバイス200は、GOから指定された数の連続したビーコンフレームをワイヤレスデバイス200が受け取らないことに基づいて、GOが非アクティブであると判定することができる。たとえば、ワイヤレスデバイス200は、(ビーコンフレームが消失する他の数を使用することができるが)10の連続したビーコンフレームを受け取らないとき、GOが非アクティブであると結論することができる。
【００５３】
次に、ワイヤレスデバイス200は、新しいGOを決定するためにキャッシュしたデータを使用するかどうかを決定する(504)。キャッシュしたデータは、デバイスデータベース242中に記憶したMACアドレス、グループオーナ候補テーブル243中に記憶したカウント値もしくは数、および/またはグループオーナ候補テーブル243中に記憶したグループオーナインテント値を含むことができる。ワイヤレスデバイス200がキャッシュしたデータを使用して新しいGOを選択する場合、新しいグループオーナとして、次に大きいカウント値またはグループオーナインテント値を有するワイヤレスデバイスが選択される(506)。逆に、ワイヤレスデバイス200が、(504で検査されたように)そのキャッシュしたデータを使用しない場合、図4Aおよび/または図4Bに関して上で記載された1つまたは複数の動作を実施することによって、新しいGOを選択することができる(508)。
【００５４】
上記の明細書で、本実施形態は、その具体的で例示的な実施形態を参照して記載されてきた。しかし、添付の特許請求の範囲に記載された本開示のより広い範囲から逸脱することなく、様々な修正および変更をそれに加えることができることは明らかであろう。したがって、本明細書および図面は、限定的ではなく例示的であると見なされるべきである。
【符号の説明】
【００５５】
100  ネットワークシステム、ワイヤレスシステム
110  ピアツーピア(P2P)ネットワーク、P2Pグループ
200  ワイヤレスデバイス
205  表示器
210  ディスプレイ
220  トランシーバ
230  プロセッサ
240  メモリ
242  デバイスデータベース
243  グループオーナ候補テーブル
244  デバイス発見モジュール
246  グループオーナ選択モジュール
248  P2P勧誘モジュール
300  動作
301  発見フェーズ
305  接続フェーズ
309  通信フェーズ
400  動作
450  動作
500  動作
【図１】
2017529013.tif 000003
【図２】
2017529013.tif 000004
【図３】
2017529013.tif 000005
【図４Ａ】
2017529013.tif 000006
【図４Ｂ】
2017529013.tif 000007
【図５】
2017529013.tif 000008
【国際調査報告】
2017529013.tif 000009
2017529013.tif 000010
2017529013.tif 000011