(57)【要約】  ピアツーピアネットワークにおける同期メッセージ送信間隔の最適化のための方法、デバイス、およびコンピュータプログラム製品が、本明細書において説明されている。一態様では、同期メッセージに関する最適化されたタイミングを決定するための方法が提供されている。方法は、ピアツーピアワイヤレス通信ネットワーク上の他のデバイスからクロックドリフト情報を受信することを含む。このクロックドリフト情報は、同期メッセージの送信に起因したネットワークトラフィックを最小限にする一方で他のデバイスで同期誤りをある特定の要件下に維持するために、新たな同期メッセージが送られなければならない周波数を決定するために使用されうる。【選択図】図３
2016504835.tif 000002
【特許請求の範囲】
【請求項１】
アドホックワイヤレス通信ネットワークにおけるルートデバイスであって、
前記ネットワークにおける他のデバイスからメッセージを受信するように構成された受信機と、ここにおいて前記メッセージは、前記ネットワークにおける他のデバイスのクロックのドリフト情報を含む、
前記ネットワークにおける他のデバイスのクロックの前記ドリフト情報に少なくとも部分的に基づいて、同期フレームのタイミングを設定するように構成されたプロセッサと、
前記設定されたタイミングにしたがって同期フレームを送信するように構成された送信機と
を備える、ルートデバイス。
【請求項２】
前記ネットワークにおける他のデバイスのクロックのドリフト情報は、前記ネットワークにおける最大クロックドリフト、および前記ネットワークにおける最小クロックドリフトを備える、
請求項１に記載のルートデバイス。
【請求項３】
前記プロセッサは、前記ルートデバイスのクロックドリフトを決定するようにさらに構成される、
請求項１に記載のルートデバイス。
【請求項４】
前記プロセッサは、前記ルートデバイスのクロックドリフト、および前記ネットワークにおける他のデバイスのクロックの前記ドリフト情報に少なくとも部分的に基づいて、同期フレームの前記タイミングを設定するように構成される、
請求項１に記載のルートデバイス。
【請求項５】
前記送信機は、次の同期フレームのタイミングの情報を含む同期フレームを送信するように構成され、前記次の同期フレームの前記タイミングは、同期フレームの前記設定されたタイミングに少なくとも部分的に基づく、
請求項１に記載の方法。
【請求項６】
アドホックワイヤレス通信ネットワークにおけるルートデバイスによって送信された同期フレームのタイミングを決定する方法であって、
前記ワイヤレス通信ネットワークにおけるデバイスからメッセージを受信することと、ここにおいて前記メッセージは、前記ネットワークにおけるデバイスのクロックのドリフト情報を含む、
前記ネットワークにおけるデバイスのクロックの前記ドリフト情報に少なくとも部分的に基づいて、同期フレームの前記タイミングを決定することと、
同期フレームの前記決定されたタイミングに少なくとも部分的に基づいて同期フレームを送信することと
を備える、方法。
【請求項７】
前記ドリフト情報は、前記ネットワークにおける最大クロックドリフト、および前記ネットワークにおける最小クロックドリフトを備える、
請求項６に記載の方法。
【請求項８】
同期フレームの前記タイミングを決定することは、絶対最大クロックドリフトしきい値および絶対最小クロックドリフトしきい値、ならびに前記ネットワークにおける前記最大クロックドリフトおよび前記ネットワークにおける前記最小クロックドリフトに少なくとも部分的に基づいて、同期フレームの前記タイミングを計算することを備える、
請求項７に記載の方法。
【請求項９】
前記方法は、前記ルートデバイスのクロックドリフトを決定することをさらに備える、
請求項６に記載の方法。
【請求項１０】
同期フレームの前記タイミングを決定することは、前記ルートデバイスの前記クロックドリフトおよび前記ネットワークにおけるデバイスのクロックのドリフト情報に少なくとも部分的に基づいて、同期フレームの前記タイミングを計算することを備える、
請求項９に記載の方法。
【請求項１１】
同期フレームを送信することは、次の同期フレームのタイミングについての情報を含む同期フレームを送信することを備え、前記次の同期フレームの前記タイミングについての前記情報は、同期フレームの前記決定されたタイミングに少なくとも部分的に基づく、
請求項６に記載の方法。
【請求項１２】
実行されるとき、デバイス内のプロセッサに、ピアツーピアネットワーク内でのワイヤレス通信のための方法を実行させる命令を備える非一時的なコンピュータ可読媒体であって、前記方法は、
前記ワイヤレス通信ネットワークにおけるデバイスからメッセージを受信することと、ここにおいて前記メッセージは、前記ネットワークにおけるデバイスのクロックのドリフト情報を含む、
前記ネットワークにおけるデバイスのクロックの前記ドリフト情報に少なくとも部分的に基づいて、同期フレームのタイミングを決定することと、
同期フレームの前記決定されたタイミングに少なくとも部分的に基づいて同期フレームを送信することと
を備える、非一時的なコンピュータ可読媒体。
【請求項１３】
前記ドリフト情報は、前記ネットワークにおける最大クロックドリフト、および前記ネットワークにおける最小クロックドリフトを備える、
請求項１２に記載の非一時的なコンピュータ可読媒体。
【請求項１４】
同期フレームのタイミングを決定することは、絶対最大クロックドリフトしきい値および絶対最小クロックドリフトしきい値、ならびに前記ネットワークにおける前記最大クロックドリフトおよび前記ネットワークにおける前記最小クロックドリフトに少なくとも部分的に基づいて、同期フレームのタイミングを計算することを備える、
請求項１３に記載の非一時的なコンピュータ可読媒体。
【請求項１５】
前記方法は、ルートデバイスのクロックドリフトを決定することをさらに備える、
請求項１２に記載の非一時的なコンピュータ可読媒体。
【請求項１６】
同期フレームのタイミングを決定することは、前記ルートデバイスの前記クロックドリフトおよび前記ネットワークにおけるデバイスのクロックのドリフト情報に少なくとも部分的に基づいて、同期フレームの前記タイミングを計算することを備える、
請求項１５に記載の非一時的なコンピュータ可読媒体。
【請求項１７】
同期フレームを送信することは、次の同期フレームのタイミングについての情報を含む同期フレームを送信することを備え、前記次の同期フレームの前記タイミングの前記情報は、同期フレームの前記決定されたタイミングに少なくとも部分的に基づく、
請求項１２に記載の非一時的なコンピュータ可読媒体。
【請求項１８】
アドホックワイヤレス通信ネットワークにおけるワイヤレスデバイスであって、
前記ネットワークにおける１つまたは複数の他のデバイスから１つまたは複数のメッセージを受信するように構成された受信機と、ここにおいて前記１つまたは複数のメッセージは、前記ネットワークにおける他のデバイスのクロックのドリフト情報を含む、
前記ワイヤレスデバイスのクロックドリフト、および前記１つまたは複数のメッセージにおいて受信された他のデバイスのクロックの前記ドリフト情報に少なくとも部分的に基づいて、調整されたドリフト情報を決定するように構成されたプロセッサと、
前記ネットワークにおける他のデバイスにメッセージを送信するように構成された送信機と
を備え、前記メッセージは、調整されたドリフト情報を含む、
ワイヤレスデバイス。
【請求項１９】
前記ドリフト情報は、前記１つまたは複数の他のデバイスによって制御された情報に基づく、前記ネットワークにおける最大クロックドリフト、および前記ネットワークにおける最小クロックドリフトを備える、
請求項１８に記載のワイヤレスデバイス。
【請求項２０】
前記調整されたドリフト情報は、前記ネットワークにおける最大クロックドリフト、および前記ネットワークにおける最小クロックドリフトを備え、前記プロセッサは、前記ワイヤレスデバイスの前記クロックドリフト情報の最大値および前記１つまたは複数の受信されたメッセージの各々からの前記ネットワークにおける前記最大クロックドリフトを計算することによって調整された最大クロックドリフトを決定し、前記ワイヤレスデバイスの前記クロックドリフト情報の最小値および前記１つまたは複数の受信されたメッセージの各々からの前記ネットワークにおける前記最小クロックドリフトを計算することによって調整された最小クロックドリフトを決定するように構成される、
請求項１９に記載のワイヤレスデバイス。
【請求項２１】
前記プロセッサは、前記調整されたドリフト情報を決定するために、前記ワイヤレスデバイスの前記クロックドリフトを絶対最大クロックドリフトしきい値と、および絶対最小クロックドリフトしきい値と比較するように構成される、
請求項２０に記載のワイヤレスデバイス。
【請求項２２】
前記プロセッサは、前記ワイヤレスデバイスの前記クロックドリフトが絶対最大クロックドリフトしきい値よりも大きい場合、または前記ワイヤレスデバイスの前記クロックドリフトが絶対最小クロックドリフトしきい値未満である場合、前記調整されたドリフト情報に前記ワイヤレスデバイスの前記クロックドリフトを含まないように構成される、
請求項２１に記載のワイヤレスデバイス。
【請求項２３】
前記プロセッサは、前記ワイヤレスデバイスのクロックドリフトを決定するようにさらに構成される、
請求項１８に記載のワイヤレスデバイス。
【請求項２４】
前記プロセッサは、前記ワイヤレスデバイス内の前記クロックの前記クロックドリフトでプログラムされる、
請求項２３に記載のワイヤレスデバイス。
【請求項２５】
前記プロセッサは、正確な外部タイミングソースに少なくとも部分的に基づいて、前記ワイヤレスデバイスの前記クロックドリフトを決定するように構成される、
請求項２３に記載のワイヤレスデバイス。
【請求項２６】
前記プロセッサは、リセットメッセージを受信し、前記リセットメッセージが受信されるときの前記ワイヤレスデバイスの前記クロックドリフトにのみ基づいて、調整されたドリフト情報を決定するようにさらに構成される、
請求項１８に記載のワイヤレスデバイス。
【請求項２７】
アドホックワイヤレス通信ネットワークにおいてクロックドリフト情報を送信する方法であって、
前記ネットワークをわたって１つまたは複数のメッセージを受信することと、ここにおいて前記１つまたは複数のメッセージは、前記ネットワークにおける他のデバイスのクロックのドリフト情報を含む、
ワイヤレスデバイスのクロックドリフト情報を決定することと、
前記ワイヤレスデバイスの前記クロックドリフト情報を前記ネットワークにおける他のデバイスのクロックの前記ドリフト情報と比較することと、
前記１つまたは複数のメッセージに含まれる前記ネットワークにおける他のデバイスのクロックの前記ドリフト情報に基づいて、および前記ワイヤレスデバイスの前記クロックドリフト情報に基づいて、調整されたクロックドリフト情報を決定することと、
前記ネットワークをわたってメッセージを送信することと
を備え、前記メッセージは、前記調整されたクロックドリフト情報を含む、
方法。
【請求項２８】
前記ドリフト情報は、１つまたは複数の他のデバイスによって制御された情報に基づく、前記ネットワークにおける最大クロックドリフト、および前記ネットワークにおける最小クロックドリフトを備える、
請求項２７に記載の方法。
【請求項２９】
前記調整されたドリフト情報は、前記ネットワークにおける調整された最大クロックドリフトおよび前記ネットワークにおける調整された最小クロックドリフトを備え、調整されたクロックドリフト情報を決定することは、
前記ワイヤレスデバイスの前記クロックドリフト情報の最大値、および前記１つまたは複数の受信されたメッセージの各々からの前記ネットワークにおける他のデバイスの前記最大クロックドリフトを計算することによって、前記調整された最大クロックドリフトを決定することと、
前記ワイヤレスデバイスの前記クロックドリフト情報の最小値、および前記１つまたは複数の受信されたメッセージの各々からの前記ネットワークにおける他のデバイスの前記最小クロックドリフトを計算することによって、前記調整された最小クロックドリフトを決定することと
を備える、請求項２８に記載の方法。
【請求項３０】
前記ワイヤレスデバイスの前記クロックドリフトを絶対最大クロックドリフトしきい値と、および絶対最小クロックドリフトしきい値と比較することさらに備える、
請求項２７に記載の方法。
【請求項３１】
ワイヤレスデバイスのクロックドリフト情報を決定することは、前記ワイヤレスデバイスにプログラムされている前記ワイヤレスデバイスの前記クロックドリフトの測定値にアクセスすることを備える、
請求項２７に記載の方法。
【請求項３２】
ワイヤレスデバイスのクロックドリフト情報を決定することは、正確な外部タイミングソースに少なくとも部分的に基づいて、前記ワイヤレスデバイスの前記クロックドリフトを計算することを備える、
請求項３１に記載の方法。
【請求項３３】
ネットワークをわたってリセットメッセージを受信することと、
前記ワイヤレスデバイスの前記クロックドリフト情報にのみ基づいて、前記ネットワークにおける調整されたクロックドリフト情報を決定することと
をさらに備える、請求項２７に記載の方法。
【請求項３４】
実行されるとき、デバイス内のプロセッサに、アドホックワイヤレス通信ネットワークにおいてクロックドリフト情報を送信する方法を実行させる命令を備える非一時的なコンピュータ可読媒体であって、前記方法は、
ネットワークをわたって１つまたは複数のメッセージを受信することと、ここにおいて前記１つまたは複数のメッセージは、前記ネットワークにおける他のデバイスのクロックのドリフト情報を含む、
ワイヤレスデバイスのクロックドリフト情報を決定することと、
前記ワイヤレスデバイスの前記クロックドリフト情報を前記ネットワークにおける他のデバイスのクロックの前記ドリフト情報と比較することと、
前記１つまたは複数のメッセージに含まれる前記ネットワークにおける他のデバイスのクロックの前記ドリフト情報に基づいて、およびワイヤレスデバイスの前記クロックドリフト情報に基づいて、調整されたクロックドリフト情報を決定することと、
前記ネットワークをわたってメッセージを送信することと
を備え、前記メッセージは、前記調整されたクロックドリフト情報を含む、
非一時的なコンピュータ可読媒体。
【請求項３５】
前記クロックドリフト情報は、１つまたは複数の他のデバイスによって制御された情報に基づく、前記ネットワークにおける最大クロックドリフト、および前記ネットワークにおける最小クロックドリフトを備える、
請求項３４に記載の非一時的なコンピュータ可読媒体。
【請求項３６】
前記調整されたドリフト情報は、前記ネットワークにおける調整された最大クロックドリフトおよび前記ネットワークにおける調整された最小クロックドリフトを備え、調整されたクロックドリフト情報を決定することは、
前記ワイヤレスデバイスの前記クロックドリフト情報の最大値、および前記１つまたは複数の受信されたメッセージの各々からの前記ネットワークにおける他のデバイスの前記最大クロックドリフトを計算することによって、前記調整された最大クロックドリフトを決定することと、
前記ワイヤレスデバイスの前記クロックドリフト情報の最小値、および前記１つまたは複数の受信されたメッセージの各々からの前記ネットワークにおける他のデバイスの前記最小クロックドリフトを計算することによって、前記調整された最小クロックドリフトを決定することと
を備える、請求項３５に記載の非一時的なコンピュータ可読媒体。
【請求項３７】
前記ワイヤレスデバイスの前記クロックドリフトを絶対最大クロックドリフトしきい値と、および絶対最小クロックドリフトしきい値と比較することをさらに備える、
請求項３４に記載の非一時的なコンピュータ可読媒体。
【請求項３８】
ワイヤレスデバイスのクロックドリフト情報を決定することは、前記ワイヤレスデバイスにプログラムされている前記ワイヤレスデバイスの前記クロックドリフトの測定値（measurement）にアクセスすることを備える、
請求項３４に記載の非一時的なコンピュータ可読媒体。
【請求項３９】
ワイヤレスデバイスのクロックドリフト情報を決定することは、正確な外部タイミングソースに少なくとも部分的に基づいて、前記ワイヤレスデバイスの前記クロックドリフトを計算することを備える、
請求項３８に記載の非一時的なコンピュータ可読媒体。
【請求項４０】
前記方法は、
ネットワークをわたってリセットメッセージを受信することと、
前記ワイヤレスデバイスの前記クロックドリフト情報にのみ基づいて、前記ネットワークにおける調整されたクロックドリフト情報を決定することと
をさらに備える、請求項３４に記載の非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【米国特許法第１１９条に基づく優先権の主張】
【０００１】
[0001]本特許出願は、本願の譲受人に譲渡され、これによって参照により本明細書に明確に組み込まれる、２０１２年１１月３０日付けで出願された「SYSTEMS AND METHODS FOR OPTIMIZATION OF SYNCHRONIZATION MESSAGE TRANSMISSION INTERVALS IN A PEER-TO-PEER NETWORK」と題する仮出願第６１／７３２，０３２号の基づく優先権を主張する。本特許出願は、本願の譲受人に譲渡され、これによって参照により本明細書に明確に組み込まれる、２０１２年１２月１１日付けで出願された「SYSTEMS AND METHODS FOR OPTIMIZATION OF SYNCHRONIZATION MESSAGE TRANSMISSION INTERVALS IN A PEER-TO-PEER NETWORK」と題する仮出願第６１／７３５，７８９号の基づく優先権をさらに主張する。
【技術分野】
【０００２】
[0002]本願は概して、ワイヤレス通信に、より細分化すると、ピアツーピアワイアレスネットワークにおける同期メッセージ送信間隔の最適化のためのシステム、方法、およびデバイスに関する。
【背景技術】
【０００３】
[0003]多くの電気通信システムでは、通信ネットワークは、いくつかの相互作用する空間的に隔てられたデバイス間でメッセージを交換するために使用される。ネットワークは、例えば、都市エリア、ローカルエリア、またはパーソナルエリアでありうる、地理的範囲に準じて分類されうる。そのようなネットワークは、それぞれ、ワイドエリアネットワーク（ＷＡＮ）、都市エリアネットワーク（ＭＡＮ：metropolitan area network）、ローカルエリアネットワーク（ＬＡＮ）、ワイヤレスローカルエリアネットワーク（ＷＬＡＮ）、またはパーソナルエリアネットワーク（ＰＡＮ）と指定されうる。ネットワークはまた、様々なネットワークノードおよびデバイスを相互接続するために使用される交換（switching）／ルーティングの技法（例えば、回線交換対パケット交換）、送信のために用いられる物理媒体のタイプ（例えば、ワイヤード（wired）対ワイヤレス）、および使用される通信プロトコルのセット（例えば、インターネットプロトコルスイート、ＳＯＮＥＴ（同期型光ネットワーキング）、イーサネット（登録商標）等）によって、異なる。
【０００４】
[0004]ワイヤレスネットワークは、ネットワーク要素が移動式であり、それにより動的接続のニーズを有するとき、またはネットワークアーキテクチャが、固定式よりもむしろ、アドホックのトポロジにおいて形成される場合に、しばしば、好まれる。ワイヤレスネットワークは、電波（radio）、マイクロ波、赤外線、光（optical）等の周波数帯域において電磁波を使用する無誘導伝搬モード（unguided propagation mode）における無形（intangible）物理媒体を用いる。ワイヤレスネットワークは、固定式ワイヤードネットワークと比べて、迅速なフィールド展開およびユーザの移動性を有利に促進する。
【０００５】
[0005]ワイヤレスネットワークにおけるデバイスは、互いに、および互いから、情報を送信および／または受信することができる。様々な通信を実施するために、デバイスは、プロトコルにしたがって調整する必要がありうる。このように、デバイスは、それらのアクティビティを調整するために情報を交換することができる。ワイヤレスネットワーク内での通信を送信および送ることを調整するための改善されたシステム、方法およびデバイスが望まれる。
【０００６】
[0006]図１ａは、従来技術のワイヤレス通信システム１００の例を例示している。ワイヤレス通信システム１００は、例えば、８０２．１１規格のようなワイヤレス規格にしたがって動作することができる。ワイヤレス通信システム１００は、ＡＰ１０４を含むことができ、それはＳＴＡと通信する。いくつかの態様では、ワイヤレス通信システム１００は、１つより多いＡＰを含むことができる。加えて、ＳＴＡは、他のＳＴＡと通信することができる。例として、第１のＳＴＡ１０６ａは、第２のＳＴＡ１０６ｂと通信することができる。別の例として、第１のＳＴＡ１０６ａは、第３のＳＴＡ１０６ｃと通信することができるけれども、この通信リンクは、図１ａには例示されていない。
【０００７】
[0007]様々なプロセスおよび方法が、ＡＰ１０４とＳＴＡとの間の、および第１のＳＴＡ１０６ａのような個々のＳＴＡと、第２のＳＴＡ１０６ｂのような別の個々のＳＴＡとの間の、ワイヤレス通信システム１００における送信のために使用されうる。例えば、ＯＦＤＭ／ＯＦＤＭＡ技法にしたがって、信号は送られ、受信されうる。この場合、ワイヤレス通信システム１００はＯＦＤＭ／ＯＦＤＭＡシステムと称されうる。代わりとして、信号は、ＣＤＭＡ技法にしたがって、ＡＰ１０４とＳＴＡとの間で、および第１のＳＴＡ１０６ａのような個々のＳＴＡと、第２のＳＴＡ１０６ｂのような別の個々のＳＴＡとの間で、送られ、受信されうる。この場合、ワイヤレス通信システム１００はＣＤＭＡシステムと称されうる。
【０００８】
[0008]通信リンクはＳＴＡ間で確立されうる。ＳＴＡ間のいくつかの可能性のある通信リンクが図１ａで例示されている。例として、通信リンク１１２は、第１のＳＴＡ１０６ａから第２のＳＴＡ１０６ｂへの送信を促進することができる。別の通信リンク１１４は、第２のＳＴＡ１０６ｂから第１のＳＴＡ１０６ａへの送信を促進することができる。
【０００９】
[0009]ＡＰ１０４は、基地局としての機能を果たし、基本サービスエリア（ＢＳＡ）１０２内のワイヤレス通信カバレッジを提供することができる。ＡＰ１０４は、ＡＰ１０４に関連付けられ、かつ通信のためにＡＰ１０４を使用するＳＴＡと共に、基本サービスセット（ＢＳＳ）として称されうる。
【００１０】
[0010]ワイヤレス通信システム１００が、中央ＡＰ１０４を有さないけれども、むしろＳＴＡ間のピアツーピアネットワークとして機能しうることは留意されるべきである。したがって、本明細書で説明されているＡＰ１０４の機能は、代わりとしてＳＴＡの１つまたは複数によって実行されうる。
【００１１】
[0011]図１ｂは、ピアツーピアネットワークとして機能しうる従来技術のワイヤレス通信システム１６０の例を例示している。例えば、図１ｂで図示されているワイヤレス通信システム１６０は、ＡＰの存在がなくとも、互いに通信することができるＳＴＡ１０６ａ〜１０６ｉを図示している。このように、ＳＴＡ１０６ａ〜１０６ｉは、干渉を防ぎ、様々なタスクを達成するためにメッセージの送信および受信を調整するよう、様々な方法で通信するように構成されうる。一態様では、図１ｂで図示されているネットワークは、「ニア−ミーエリアネットワーク」（ＮＡＮ）として構成されうる。一態様では、ＮＡＮは、互いに接近した近接に位置付けられているＳＴＡ間の通信のためのネットワークを指しうる。いくつかの態様では、ＮＡＮ内で動作するＳＴＡは、異なるネットワーク構造に属することができる（例えば、異なる外部ネットワーク接続を有する独立したＬＡＮの一部としての様々なホームまたはビルにおけるＳＴＡ）。
【００１２】
[0012]いくつかの態様では、ピアツーピア通信ネットワーク１６０上のノード間の通信に使用される通信プロトコルは、ネットワークノード間の通信が生じうる時間の期間をスケジューリングすることができる。ＳＴＡ１０６ａ〜１０６ｉの間で通信が生じるこれらの時間の期間は、利用可能ウィンドウ（availability window）として知られうる。利用可能ウィンドウは、以下でさらに論じられるように、発見間隔またはページング間隔を含むことができる。
【００１３】
[0013]プロトコルはまた、ネットワークのノード間の通信がどれも生じることにならない他の時間の期間も定義することもできる。いくつかの実施形態では、ピアツーピアネットワーク１６０が利用可能ウィンドウにないとき、ノードは、１つまたは複数のスリープ状態に入ることができる。代わりとして、いくつかの実施形態では、ピアツーピアネットワークが利用可能ウィンドウにないとき、局１０６ａ〜ｉの一部は、スリープ状態に入ることができる。例えば、ピアツーピアネットワークが利用可能ウィンドウにないとき、ＳＴＡに含まれる他のハードウェア、例えばプロセッサ、電子ディスプレイ等はスリープ状態に入らないけれども、ピアツーピアネットワークが利用可能ウィンドウにないときにスリープ状態に入るネットワーキングハードウェアを、いくつかの局は含むことができる。
【００１４】
[0014]ピアツーピア通信ネットワーク１６０は、１つのノードをルートノードであるように割り当てることができる。図１ｂでは、割り当てられたルートノードは、ＳＴＡ１０６ｅとして図示されている。ピアツーピアネットワーク１６０では、ルートノードは、ピアツーピアネットワークにおける他のノードに同期信号を周期的に送信することを担う。ルートノード１６０ｅによって送信された同期信号は、ノード間で通信が生じる利用可能ウィンドウを調整するために、他のノード１０６ａ〜ｄおよび１０６ｆ〜ｉにタイミング基準を提供することができる。例えば、同期メッセージ１７２ａ〜１７２ｄは、ルートノード１０６ｅによって送信され、ノード１０６ｂ〜ｃおよび１０６ｆ〜１０６ｇによって受信されうる。同期メッセージ１７２は、ＳＴＡ１０６ｂ〜ｃおよび１０６ｆ〜１０６ｇにタイミングソースを提供することができる。同期メッセージ１７２はまた、将来的な利用可能ウィンドウのためのスケジュールに対する更新を提供することもできる。同期メッセージ１７２はまた、ＳＴＡ１０６ｂ〜１０６ｃおよび１０６ｆ〜１０６ｇに、それらがピアツーピアネットワーク１６０に依然として存在することを通知するように機能することもできる。
【００１５】
[0015]ピアツーピア通信ネットワーク１６０におけるノードのいくつかは、ブランチ同期ノードとして機能することができる。ブランチ同期ノードは、ルートノードから受信された利用可能ウィンドウスケジュールとマスタクロック情報との両方を再送信することができる。いくつかの実施形態では、ルートメッセージによって送信される同期信号は、利用可能ウィンドウスケジュールおよびマスタクロック情報を含むことができる。これらの実施形態では、同期メッセージは、ブランチ同期ノードによって再送信されうる。図１ｂでは、ＳＴＡ１０６ｂ〜１０６ｃおよび１０６ｆ〜１０６ｇは、ピアツーピア通信ネットワーク１６０におけるブランチ同期ノードとして機能することが図示されている。ＳＴＡ１０６ｂ〜１０６ｃおよび１０６ｆ〜１０６ｇは、ルートノード１０６ｅから同期メッセージ１７２ａ〜１７２ｄを受信し、再送信される同期メッセージ１７４ａ〜１７４ｄとしてその同期メッセージを再送信する。ルートノード１０６ｅからの同期メッセージ１７２を再送信することによって、ブランチ同期ノード１０６ｂ〜１０６ｃおよび１０６ｆ〜１０６ｇは、ピアツーピアネットワーク１６０の範囲を拡張し、ピアツーピアネットワーク１６０のロバスト性を向上させることができる。
【００１６】
[0016]再送信される同期メッセージ１７４ａ〜１７４ｄは、ノード１０６ａ、１０６ｄ、１０６ｈ、および１０６ｉによって受信される。これらのノードは、それらがルートノード１０６ｅ、またはブランチ同期ノード１０６ｂ〜１０６ｃもしくは１０６ｆ〜１０６ｇのどちらかから受信する同期メッセージをそれらが再送信しない点で、「リーフ（leaf）」ノードと特徴付けられうる。
【００１７】
[0017]同期メッセージまたは同期フレームは、周期的に送信されうる。しかしながら、スケジュール上での同期メッセージの周期的な送信は、問題がありうる。これらの問題は、ネットワークにおけるデバイスのクロックドリフトによって引き起こされうる。ネットワークにおける各デバイスは、内部クロックを有することができ、それは、デバイスがスリープ状態からウェイクしてネットワーク上でメッセージを送信および／または受信することができる利用可能ウィンドウを、デバイスが決定することを助けうる。これらの利用可能ウィンドウは、ルートデバイスによって最初に送信された同期メッセージに少なくとも部分的に基づいて決定されうる。しかしながら、ルートデバイスが十分頻繁に同期メッセージを送信しない場合、大きなクロックドリフトを有するデバイスがネットワーク上の他のデバイスの利用可能ウィンドウ中スリープしうる程、それらの利用可能ウィンドウはネットワーク上の他のデバイスに対してシフトしうるので、大きなクロックドリフトを有するいくつかのデバイスは、ネットワークに接続されたままでいることができないことがある。いくつかのデバイス上のクロックドリフトは、同期メッセージ間の多大な量の時間と組み合わされるとき、多大な量の同期誤りを結果として引き起こしうる。反対に、同期メッセージ間の間隔が過度に小さい場合、より多数の同期メッセージが、ネットワークに多大な量の不必要なオーバヘッドを持ち込みうる。
【発明の概要】
【００１８】
[0018]本明細書で論じられているシステム、方法、デバイス、およびコンピュータプログラム製品は各々、いくつかの態様を有し、これらのうちのいずれも、単独でその望ましい属性を担うものではない。後に続く特許請求の範囲によって表現される本発明の範囲を限定することなく、いくつかの特徴が以下で簡潔に説明される。本説明を考慮した後、特に「発明を実施するための形態」と題するセクションを読んだ後、媒体上にデバイスを取り入れるときに、本発明の有利な特徴がどのように低減された電力消費を含むのかが理解されるだろう。
【００１９】
[0019]本開示の一態様は、ネットワークにおける他のデバイスからメッセージを受信するように構成された受信機と、そのメッセージは、ネットワークにおける他のデバイスのクロックのドリフト情報を含む；ネットワークにおける他のデバイスのクロックのドリフト情報に少なくとも部分的に基づいて同期フレームのタイミングを設定するように構成されたプロセッサと；設定されたタイミングにしたがって同期フレームを送信するように構成された送信機と、を備えるアドホックワイヤレス通信ネットワークにおけるルートデバイスを提供している。
【００２０】
[0020]一態様では、アドホックワイヤレス通信ネットワークにおけるルートデバイスによって送信される同期フレームのタイミングを決定する方法が開示されており、その方法は、ワイヤレス通信ネットワークにおけるデバイスからメッセージを受信することと、そのメッセージは、ネットワークにおけるデバイスのクロックのドリフト情報を含む；ネットワークにおけるデバイスのクロックのドリフト情報に少なくとも部分的に基づいて、同期フレームのタイミングを決定することと；同期フレームの計算されたタイミングに少なくとも部分的に基づいて、同期フレームを送信することと、を備える。
【００２１】
[0021]一態様では、実行されるとき、デバイス内のプロセッサに、ピアツーピアネットワーク内でのワイヤレス通信のための方法を実行させる命令を備える非一時的なコンピュータ可読媒体が開示されており、その方法は、ワイヤレス通信ネットワークにおけるデバイスからメッセージを受信することと、そのメッセージは、ネットワークにおけるデバイスのクロックのドリフト情報を含む；ネットワークにおけるデバイスのクロックのドリフト情報に少なくとも部分的に基づいて、同期フレームのタイミングを決定することと；同期フレームの計算されたタイミングに少なくとも部分的に基づいて、同期フレームを送信することと、を備える。
【００２２】
[0022]本開示の一態様は、ネットワークにおける１つまたは複数の他のデバイスから１つまたは複数のメッセージを受信するように構成された受信機と、その１つまたは複数のメッセージは、ネットワークにおける他のデバイスのクロックのドリフト情報を含む；１つまたは複数のメッセージにおいて受信された他のデバイスのクロックのドリフト情報およびワイヤレスデバイスのクロックドリフトに少なくとも部分的に基づいて、適応されたドリフト情報を決定するように構成されたプロセッサと；ネットワークにおける他のデバイスにメッセージを送信するように構成された送信機と、そのメッセージは、適応されたドリフト情報を含む、を備えるアドホックワイヤレス通信ネットワークにおけるワイヤレスデバイスを提供している。
【００２３】
[0023]一態様では、アドホックワイヤレス通信ネットワークにおけるクロックドリフト情報を送信する方法が開示されており、その方法は、ネットワークをわたって１つまたは複数のメッセージを受信することと、その１つまたは複数のメッセージは、ネットワークにおける他のデバイスのクロックのドリフト情報を含む；ワイヤレスデバイスのクロックドリフト情報を決定することと；ネットワークにおける他のデバイスのクロックのドリフト情報とワイヤレスデバイスのクロックドリフト情報を比較することと；１つまたは複数のメッセージに含まれるネットワークにおける他のデバイスのクロックのドリフト情報に基づいて、およびワイヤレスデバイスのクロックドリフト情報に基づいて、適応されたクロックドリフト情報を決定することと；ネットワークをわたってメッセージを送信することと、そのメッセージは、適応されたクロックドリフト情報を含む、を備える。
【００２４】
[0024]一態様では、実行されるとき、デバイス内のプロセッサに、アドホックワイヤレス通信ネットワークにおけるクロックドリフト情報を送信する方法を実行させる命令を備える非一時的なコンピュータ可読媒体が開示されており、その方法は、ネットワークをわたって１つまたは複数のメッセージを受信することと、その１つまたは複数のメッセージは、ネットワークにおける他のデバイスのクロックのドリフト情報を含む；ワイヤレスデバイスのクロックドリフト情報を決定することと；ネットワークにおける他のデバイスのクロックのドリフト情報とワイヤレスデバイスのクロックドリフト情報を比較することと；１つまたは複数のメッセージに含まれるネットワークにおける他のデバイスのクロックのドリフト情報に基づいて、およびワイヤレスデバイスのクロックドリフト情報に基づいて、適応されたクロックドリフト情報を決定することと；ネットワークをわたってメッセージを送信することと、そのメッセージは、適応されたクロックドリフト情報を含む、を備える。
【図面の簡単な説明】
【００２５】
【図１ａ】従来技術のワイヤレス通信システムの例を例示している。
【図１ｂ】従来技術のワイヤレス通信システムの別の例を例示している。
【図２】図１のワイヤレス通信システム内で用いられうるワイヤレスデバイスの機能ブロック図を例示している。
【図３】本開示の態様が用いられうる通信システムの例を例示している。
【図４】ソーシャルＷｉＦｉ（登録商標）ネットワーク上で同期フレームを送信するための方法のフローチャートである。
【図５】ソーシャルＷｉＦｉネットワーク上でクロックドリフト情報を送信するための方法のフローチャートである。
【発明を実施するための形態】
【００２６】
[0031]「典型的」という言葉は、本明細書において「例、事例、または例示としての役目をする」ことを意味するように使用されている。「典型的な」ものとして本明細書で説明されているいずれの実施形態も、他の実施形態よりも、必ずしも、好ましいまたは有利なものとして解釈されるものではない。新規のシステム、装置、および方法の様々な態様が、添付の図面を参照して以下でより十分に説明されている。しかしながら、本開示は、多くの異なる形態で具現化され、本開示全体を通して提示されるあらゆる特定の構造または機能に限定されるものとして解釈されるべきではない。むしろ、これらの態様は、本開示が徹底的かつ完全であり、本開示の範囲を当業者に十分に伝達することになるように提供されている。本明細書における教示に基づいて、本開示の範囲が、本開示のあらゆる他の態様から独立して実行されるか、本発明のあらゆる他の態様と組み合わされて実行されるかに関わらず、本明細書で開示されている新規のシステム、装置、および方法のあらゆる態様をカバーするように意図されていることを当業者は正しく認識すべきである。例えば、本明細書で述べられている任意の数の態様を使用して、装置が実装されうる、または方法が実施されうる。加えて本発明の範囲は、本明細書で述べられている本発明の様々な態様に加えた、または本明細書で述べられている本発明の様々な態様以外の、他の構造、機能、または構造および機能を使用して実施されるような装置、または方法をカバーするように意図されている。本明細書で開示されているあらゆる態様が請求項の１つまたは複数の要素によって具現化されうることは理解されるべきである。
【００２７】
[0032]特定の態様が本明細書で説明されているけれども、これらの態様の多くのバリエーションおよび置換が、本開示の範囲内に含まれる。好ましい態様のいくつかの利益および利点が述べられているけれども、本開示の範囲は、特定の利益、使用、または目的に限定されるようには意図されていない。むしろ、本開示の態様は、異なるワイヤレス技術、システム構成、ネットワーク、および送信プロトコルに広く適用可能であるように意図されており、そのうちのいくつかは、例として、好ましい態様の以下の説明中および図中で例示されている。詳細な説明および図面は、限定というよりもむしろ単に本開示を例示するものであり、本開示の範囲は、添付の特許請求の範囲およびそれらの均等物によって定義されている。
【００２８】
[0033]ワイヤレスネットワーク技術は、様々なタイプのワイヤレスローカルエリアネットワーク（ＷＬＡＮ）を含むことができる。ＷＬＡＮは、広く使用されているネットワークプロトコルを用いて、近くのデバイスを互いに相互接続するために使用されうる。しかしながら、本明細書で説明されている様々な態様は、ワイヤレスプロトコルのようなあらゆる通信規格に適用されることができる。
【００２９】
[0034]いくつかの実装では、ＷＬＡＮは、ワイヤレスネットワークにアクセスするコンポーネントである様々なデバイスを含む。例えば、２つのタイプのデバイス：アクセスポイント（「ＡＰ」）およびクライアント（局、すなわち「ＳＴＡ」とも称される）が存在しうる。概して、ＡＰは、ＷＬＡＮのためのハブまたは基地局としての役割をすることができ、ＳＴＡは、ＷＬＡＮのユーザとしての役割をする。例えば、ＳＴＡは、ラップトップコンピュータ、携帯情報端末（ＰＤＡ）、移動式電話、等でありうる。ある例では、ＳＴＡは、インターネットへの、または他のワイドエリアネットワークへの一般的な接続を取得するために、ＷｉＦｉ（例えば、ＩＥＥＥ８０２．１１プロトコル）対応ワイヤレスネットワークを介してＡＰに接続する。いくつかの実装では、ＳＴＡは、ＡＰとしても使用されうる。
【００３０】
[0035]アクセスポイント（「ＡＰ」）はまた、ノードＢ、無線ネットワークコントローラ（「ＲＮＣ」）、ｅノードＢ、基地局コントローラ（「ＢＳＣ」）、基地トランシーバ局（「ＢＴＳ」）、基地局（「ＢＳ」）、トランシーバ機能（「ＴＦ」）、無線ルータ、無線トランシーバ、または何らかの他の専門用語を備えることができ、これらとして実装されることができ、またはこれらとして既知でありうる。
【００３１】
[0036]局（「ＳＴＡ」）はまた、アクセス端末（「ＡＴ」）、加入者局、加入者ユニット、移動局、リモート局、リモート端末、ユーザ端末、ユーザエージェント、ユーザデバイス、ユーザ機器、または何らかの他の専門用語を備えることができ、これらとして実装されることができ、またはこれらとして既知でありうる。いくつかの実装において、アクセス端末は、セルラ電話機、コードレス電話機、セッション開始プロトコル（「ＳＩＰ」）電話機、ワイヤレスローカルループ（「ＷＬＬ」）局、携帯情報端末（「ＰＤＡ」）、ワイヤレス接続能力を有するハンドヘルドデバイス、またはワイヤレスモデムに接続された何らかの他の適した処理デバイスもしくはワイヤレスデバイスを備えることができる。したがって、本明細書で教示されている１つまたは複数の態様は、電話機（例えば、セルラ電話機またはスマートフォン）中に、コンピュータ（例えば、ラップトップ）中に、ポータブル通信デバイス中に、ヘッドセット中に、ポータブルコンピューティングデバイス（例えば、パーソナルデータアシスタント）中に、エンターテインメントデバイス（例えば、音楽またはビデオのデバイス、あるいは、衛星ラジオ）中に、ゲームデバイスまたはシステム中に、全世界測位システムデバイス中に、あるいは、ワイヤレスの媒体を介して通信するように構成されている他の何らかの適切なデバイス中に、組み込まれうる。
【００３２】
[0037]上記で論じられているように、ピアツーピアネットワークのルートノードは、ピアツーピアネットワークのノード間の通信のために１つまたは複数の利用可能ウィンドウを調整するように同期メッセージを送信することができる。これらの同期メッセージは、固定された間隔で送信されうる。例えば、これらの同期メッセージは、５、１０、２０、５０、または１００個の利用可能ウィンドウ毎に一度送信されうる。しかしながら、長すぎる間隔が、結果としてクロックドリフトに起因して同期誤りをもたらしうる一方で、短すぎる間隔が、結果として不必要なネットワークオーバヘッドをもたらしうるので、固定された間隔は問題がありうる。したがって、不必要なネットワークオーバヘッドを最小限にすることも行いながら、同期誤りを最小限にするために同期メッセージ間の間隔を最適化することが有益でありうる。
【００３３】
[0038]図２は、ワイヤレス通信システム１００または１６０内で用いられうるワイヤレスデバイス２０２において利用されうる様々なコンポーネントを例示している。ワイヤレスデバイス２０２は、本明細書で説明されている様々な方法を実行するように構成されるうるデバイスの例である。例えば、ワイヤレスデバイス２０２は、ＡＰ１０４、またはＳＴＡのうちの１つを備えることができる。
【００３４】
[0039]ワイヤレスデバイス２０２は、ワイヤレスデバイス２０２の動作を制御するプロセッサ２０４を含むことができる。プロセッサ２０４はまた、中央処理ユニット（ＣＰＵ）とも称されうる。読取専用メモリ（ＲＯＭ）とランダムアクセスメモリ（ＲＡＭ）との両方を含むことができるメモリ２０６は、プロセッサ２０４に命令およびデータを提供することができる。メモリ２０６の一部はまた、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）を含むこともできる。プロセッサ２０４は通常、メモリ２０６内に記憶されたプログラム命令に基づいて、論理演算および算術演算を実行する。メモリ２０６内の命令は、本明細書で説明されている方法を実行するために実行可能でありうる。
【００３５】
[0040]プロセッサ２０４は、１つまたは複数のプロセッサで実装される処理システムのコンポーネントを備えることができる、あるいは処理システムのコンポーネントでありうる。１つまたは複数のプロセッサは、汎用マイクロプロセッサ、マイクロコントローラ、デジタルシグナルプロセッサ（ＤＳＰ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、プログラマブル論理デバイス（ＰＬＤ）、コントローラ、ステートマシン、ゲート論理、ディスクリートハードウェアコンポーネント、専用ハードウェア有限ステートマシン、あるいは計算または他の情報の操作を行うことができる何らかの他の適したエンティティ、のあらゆる組み合わせで実装されうる。
【００３６】
[0041]処理システムはまた、ソフトウェアを記憶するための機械可読媒体を含むこともできる。ソフトウェアは、ソフトウェアと称されるか、ファームウェアと称されるか、ミドルウェアと称されるか、マイクロコードと称されるか、ハードウェア記述言語と称されるか、またはその他のものと称されるかに関わらず、あらゆるタイプの命令を意味するように広く解釈されるものとする。命令は、（例えば、ソースコードフォーマット、バイナリコードフォーマット、実行可能コードフォーマット、またはコードのあらゆる他の適したフォーマットにおける）コードを含むことができる。命令は、１つまたは複数のプロセッサによって実行されるとき、処理システムに、本明細書で説明されている様々な機能を実行させる。加えて、ワイヤレスデバイス２０２は、ワイヤレスデバイス２０２のアクティビティを調整および同期するために使用されるクロック信号を生成するように構成されたクロック２２４を含むことができる。いくつかの構成では、プロセッサ２０４はクロック２２４を含むことができる。プロセッサ２０４は、他のワイヤレスデバイスとの同期を許容するために時間値でクロックを更新するように構成されうる。
【００３７】
[0042]ワイヤレスデバイス２０２はまた、ワイヤレスデバイス２０２と遠隔ロケーションとの間でのデータの送信および受信をできるようにする、送信機２１０および／または受信機２１２を含みうるハウジング２０８を含むことができる。送信機２１０および受信機２１２は、トランシーバ２１４に組み合わされうる。アンテナ２１６は、ハウジング２０８に取り付けられ、トランシーバ２１４に電気的に結合されうる。ワイヤレスデバイス２０２はまた、複数の送信機、複数の受信機、複数のトランシーバ、および／または複数のアンテナ（図示せず）を含むことができる。
【００３８】
[0043]送信機２１０は、種々のパケットタイプまたは機能を有するパケットをワイヤレスに送信するように構成されうる。例えば、送信機２１０は、プロセッサ２０４によって生成された種々のタイプのパケットを送信するように構成されうる。ワイヤレスデバイス２０２がＡＰ１０４またはＳＴＡ１０６として実装または使用されるとき、プロセッサ２０４は、複数の異なるパケットタイプのパケットを処理するように構成されうる。例えば、プロセッサ２０４は、パケットのタイプを決定し、それにしたがってパケットおよび／またはパケットのフィールドを処理するように構成されうる。ワイヤレスデバイス２０２がＡＰ１０４として実装または使用されるとき、プロセッサ２０４はまた、複数のパケットタイプのうちの１つを選択および生成するようにも構成されうる。例えば、プロセッサ２０４は、発見メッセージを備える発見パケットを生成し、特定の事例でどのタイプのパケット情報を使用すべきかを決定するように構成されうる。
【００３９】
[0044]受信機２１２は、種々のパケットタイプを有するパケットをワイヤレスに受信するように構成されうる。いくつかの態様では、受信機２１２は、使用されているパケットのタイプを検出し、それにしたがってパケットを処理するように構成されうる。
【００４０】
[0045]ワイヤレスデバイス２０２はまた、トランシーバ２１４によって受信された信号のレベルを検出および定量化する目的で使用されうる信号検出器２１８を含むこともできる。信号検出器２１８は、総エネルギー、シンボルあたりのサブキャリア毎のエネルギー、電力スペクトル密度、および他の信号のような信号を検出することができる。ワイヤレスデバイス２０２はまた、信号を処理する際に使用するデジタルシグナルプロセッサ（ＤＳＰ）２２０を含むことができる。ＤＳＰ２２０は、送信のためのパケットを生成するように構成されうる。いくつかの態様では、パケットは、物理層データユニット（ＰＰＤＵ）を備えることができる。
【００４１】
[0046]ワイヤレスデバイス２０２は、いくつかの態様で、ユーザインタフェース２２２をさらに備えることができる。ユーザインタフェース２２２は、キーパッド、マイクロフォン、スピーカ、および／またはディスプレイを備えることができる。ユーザインタフェース２２２は、ワイヤレスデバイス２０２のユーザに情報を搬送する、および／またはユーザから入力を受信する、あらゆる要素またはコンポーネントを含むことができる。
【００４２】
[0047]ワイヤレスデバイス２０２の様々なコンポーネントは、バスシステム２２６によって互いに結合されうる。バスシステム２２６は、例えば、データバスを含み、データバスに加えて、電力バス、制御信号バス、およびステータス信号バスも同様に含むことができる。ワイヤレスデバイス２０２のコンポーネントは、互いに結合されうる、または何らかの他のメカニズムを使用して互いに入力を受け入れる、または提供することができる。
【００４３】
[0048]いくつかの別々になったコンポーネントが図２で例示されているけれども、コンポーネントの１つまたは複数が組み合わされる、共同に実行されることができる。例えば、プロセッサ２０４は、プロセッサ２０４に関して上記で説明された機能のみを実行するためでなく、信号検出器２１８および／またはＤＳＰ２２０に関して上記で説明された機能を実行するためにも使用されうる。さらに、図２で例示されているコンポーネントの各々は、複数の別個の要素を使用して実装されうる。
【００４４】
[0049]例えば、図１ｂで図示されたＳＴＡ１０６ａ〜ｉのようなデバイスは、近隣アウェアネットワーキング（neighborhood-aware networking）またはソーシャルＷｉＦｉネットワーキングのために使用されうる。例えば、ネットワーク内の様々な局は、局の各々がサポートするアプリケーションに関して、互いにデバイス対デバイス（例えば、ピアツーピア通信）ベースで通信することができる。ＳＴＡが確実な通信および低電力消費を確保しながら、（例えば、ページングまたはクエリパケットを送ることによって）他のＳＴＡによって提供されたサービスを発見することに加えて、（例えば、発見パケットを送ることによって）それ自体を広告することを可能にするために、発見プロトコルがソーシャルＷｉＦｉネットワークで使用されうる。
【００４５】
[0050]近隣アウェアネットワークまたはソーシャルＷｉＦｉネットワークにおいて、ネットワークにおけるワイヤレスデバイス２０２のような１つのデバイスは、ルートデバイスまたはノードとして指定されうる。いくつかの実施形態では、ルートデバイスは、ルータのような特化したデバイスというよりはむしろ、ネットワークにおける他のデバイスと同様に通常のデバイスでありうる。ソーシャルＷｉＦｉネットワークにおいてルートノードは、ネットワークにおける他のノードに、同期メッセージまたは同期信号もしくはフレームを周期的に送信することを担いうる。ルートノードによって送信された同期メッセージは、通信がノード間で生じる利用可能ウィンドウを調整するために、他のノードにタイミング基準を提供することができる。同期メッセージはまた、将来的な利用可能ウィンドウのためのスケジュールに対する更新を提供することもできる。同期メッセージはまた、ＳＴＡに、それらがピアツーピアネットワークに依然として存在することを通知するように機能することもできる。
【００４６】
[0051]ネットワークにおける各デバイスは、ワイヤレスデイバス２０２内のクロック２２４のような、クロックを有することができる。このクロックは、デバイスにそれが造られたときに組み込まれた内部クロックでありうる。このクロックは、デバイスのアクティビティを調整および同期するために使用されるクロック信号を生成するように構成されうる。しかしながら、このクロックは幾らかの量のクロックドリフトを有し、ここにおいてクロックドリフトは、クロックによって生成されるクロック信号と、理想クロック（ideal clock）によって生成されうるクロック信号との間の差異を表しうる。このクロックドリフトは、ソーシャルＷｉＦｉネットワークにおけるブランチノードおよびリーフノード上のクロックに加えて、ルートノードのクロックに存在しうる。
【００４７】
[0052]クロックドリフトはランダムでありうる、または幾らかの範囲で一定でありうる。クロックドリフトは、いくつかの方法で表わされる。例えば、クロックドリフトは、  
tn = (1 + dn)t  
として表わされ、ここにおいてtは実時間であり、tnはｎ番目のワイヤレスデバイス上で測定されるような時間であり、dnはｎ番目のワイヤレスデバイスのクロックドリフトである。
【００４８】
[0053]この公式は、クロックドリフトの概算を提供することがきる。この概算は、クロックドリフトの特質に依存して、程度に差はあれど正確でありうる。例えば、クロックドリフトが一定、またはほぼ一定である場合、この方式は、dnが正確に計算されうる限り、クロックドリフトの非常に正確な概算を提供することができる。クロックドリフトdnは、過度に速いか過度に遅いかのどちらかであるクロックに対応して、正か負かのどちらかでありうる。
【００４９】
[0054]クロックドリフトは、ネットワークにある特定の量の同期誤りを持ち込みうる。ソーシャルＷｉＦｉネットワークにおいてネットワーク上のデバイスは、利用可能ウィンドウを決定するために、ルートデバイスによって送信され、ブランチデバイスによって再送信される同期メッセージを使用することができる。これらの利用可能ウィンドウ中、ソーシャルＷｉＦｉネットワークにおけるデバイスは、ネットワーク上の他のデバイスからメッセージを送信および／または受信するように構成されうる。その他の時間には、ソーシャルＷｉＦｉネットワーク上のデバイス、またはデバイスの一部は、スリープ状態にありうる。例えば、ワイヤレスデバイス２０２のような、ソーシャルＷｉＦｉネットワーク上のデバイスは、ルートノードから受信された同期メッセージに少なくとも部分的に基づいてスリープ状態に入ることができる。いくつかの実施形態では、ソーシャルＷｉＦｉネットワーク上のデバイスは、スリープモードに入ることができ、ここにおいてデバイス全体というよりむしろ、デバイスの１つまたは複数の要素がスリープモードに入りうる。例えば、送信機２１０、受信機２１２、および／またはトランシーバ２１４がソーシャルＷｉＦｉネットワーク上で受信された同期メッセージに基づいてスリープモードに入りうるスリープモードに、ワイヤレスデバイス２０２は入ることができる。このスリープモードは、ワイヤレスデバイス２０２が電力またはバッテリ寿命を節約することを可能にしうる。
【００５０】
[0055]図３は、本開示の態様が用いられうる通信システムの例を例示している。ワイヤレスデバイス３００は、ワイヤレスデバイス２００のような、ワイヤレスデバイスでありうる。ワイヤレスデバイス３００は、ソーシャルＷｉＦｉネットワーク３２０のような、ピアツーピアネットワークのルートノードでありうる。ワイヤレスデバイス３００は、ソーシャルＷｉＦｉネットワーク３２０上で、他のデバイスにメッセージ３１０を送信するように構成されうる。ルートノードとして、ワイヤレスデバイス３００は、ソーシャルＷｉＦｉネットワーク３２０上で、他のデバイスに幾らかの間隔で同期メッセージを送信するように構成されうる。
【００５１】
[0056]ワイヤレスデバイス３０２および３０４は、ソーシャルＷｉＦｉネットワーク３２０上のノードでありうる。ワイヤレス３０２および３０４は、ネットワーク３２０上のブランチノードまたはリーフノードでありうる。ソーシャルＷｉＦｉネットワーク３２０上のノードとして、ワイヤレスデバイス３０２および３０４は、ネットワーク３２０上で、他のデバイスにメッセージ３１２および３１４を送信することができる。これらのメッセージは、利用可能ウィンドウ中に他のデバイスに送信され、その時間中、各デバイスは、ネットワーク３２０上で他のワイヤレスデバイスから送信を送信および／または受信するように構成される。例えば、ワイヤレスデバイス３０２は、双方のデバイスのための利用可能ウィンドウ中、ワイヤレスデバイス３０４にメッセージ３１２を送信することができ、利用可能ウィンドウは、ワイヤレスデバイス３００から受信された同期メッセージに部分的に基づく。
【００５２】
[0057]ソーシャルＷｉＦｉネットワーク３２０上のデバイスは、限定された利用可能ウィンドウを有しうるので、クロックドリフトは、ネットワーク３２０に同期誤りを持ち込みうる。例えば、各ワイヤレスデバイス３００、３０２、および３０４は、クロックドリフトを有しうる。ワイヤレスデバイス３００は、ルートノードとして、同期メッセージを周期的に送信することができる。いくつかの実施形態では、同期メッセージは、ネットワーク３２０におけるデバイスのための利用可能ウィンドウの周波数を示すことができ、さらに、同期メッセージの周波数および／または次の同期メッセージまでの間隔を示すことができる。
【００５３】
[0058]ソーシャルＷｉＦｉネットワーク３２０は、同期誤りを有しうる。この同期誤りは、０．００１秒、０．０１秒、０．１秒、１秒、または別の量の秒のような、いくつかの秒数として表わされ得る。この同期誤りは、同期メッセージ間のクロックドリフトの量を示すことができる。例えば、同期誤りは、式  
SEn = |X(1 + dn) - X(1 + dr)| = X|dn - dr|  
にしたがって計算され、ここにおいてSEnはｎ番目の非ルートワイヤレスデバイスに関する同期誤りであり、dnはｎ番目のワイヤレスデバイスのクロックドリフトであり、drはルートワイヤレスデバイスのクロックドリフトであり、ここにおいてＸは最後の同期メッセージからの秒数であり、|.|は絶対値を取ることを意味する。  
ネットワークにおいて生じうる同期誤りを制限することが望ましくありうる。過度に高い同期誤りを有するデバイスは、ソーシャルＷｉＦｉネットワークに接続されたままでいることができないことがある。同期誤りを制限するために、同期フレームがルートノードによって送信されうる周波数を最適化することが望ましくありうる。例えば、ルートノードが同期フレームを送ることができる周波数は、ソーシャルＷｉＦｉネットワークに接続された１つまたは複数のデバイスのクロックドリフトに少なくとも部分的に基づきうる。
【００５４】
[0059]図４は、ソーシャルＷｉＦｉネットワーク上で同期フレームを送信するための方法のフローチャートである。この方法は、ワイヤレスデバイス２０２のようなデバイスでありうるソーシャルＷｉＦｉネットワークのルートノードによって実行されうる。
【００５５】
[0060]ブロック４０２で、ルートノードは、ネットワークにおける最も大きいクロックドリフトを決定する。このクロックドリフトは、上記で論じられたように、ｄｒとして表現されうる。上記の公式では、大きなクロックドリフトは、過度に速い内部クロックを有するデバイスを表しうる。
【００５６】
[0061]ブロック４０４で、ルートノードは、ネットワークにおける最も小さいクロックドリフトを決定する。このクロックドリフトは、上記で論じられたように、ｄｒとして表現されうる。クロックドリフトは正の数または負の数のどちらかでありうるので、ネットワークにおける最も小さいクロックドリフトは、負の数でありうる。負のクロックドリフトは、過度に遅い内部クロックを有するデバイスを表しうる。
【００５７】
[0062]ブロック４０５で、ルートノードは、それ自身のクロックドリフトを決定する。このクロックドリフトはルートノードにプログラムされうる、またはルートノードがそれ自身のクロックドリフトを決定することができることがある。例えば、ルートノードは、それ自身の内部クロックと、ＧＰＳ衛星または他のソースのような正確な外部タイミングソースとの間の比較に基づいて、それ自身のクロックドリフトを決定することができることがある。
【００５８】
[0063]ブロック４０６で、ルートノードは、同期誤りしきい値、ネットワークにおける最も大きいおよび最も小さいクロックドリフト、ならびにルートノード自身のクロックドリフトに基づいて、最適化された同期フレーム間隔を計算する。これは、いくつかの方法で計算されうる。例えば、ソーシャルＷｉＦｉネットワークは、最大同期誤りしきい値εを有することができる。この最大同期誤りしきい値は、ネットワークにおけるあらゆるデバイスに関する最大の許容可能同期誤りを表すことができる。この最大同期誤りしきい値は、ネットワーク上の利用可能ウィンドウの長さに少なくとも部分的に基づきうる。例えば、ネットワーク上のデバイスの利用可能ウィンドウがより長い場合、最大同期誤りしきい値もまたより長くありうる。ネットワーク上のデバイスの利用可能ウィンドウの長さは、ソーシャルＷｉＦｉのようなネットワーキングプロトコルのために標準化されうる、あるいは、ネットワーク上で送信された同期メッセージまたは別のメッセージに含まれる情報に少なくとも部分的に基づいて決定されうる。より頻繁な同期メッセージの形態においてより短い利用可能ウィンドウがより多くのネットワークオーバヘッドを要求するのに対してより長い利用可能ウィンドウはより多くの電力を要求しうるので、利用可能ウィンドウの長さを決定することはネットワークオーバヘッドとバッテリ寿命との間のトレードオフを表しうる。最大同期エラーしきい値は、いくつかの方法で設定されうる。例えば、最大同期エラーしきい値は、デバイスが構築されるときに工場においてデバイス上で設定されうる、またはサーバから取得されうる。ルートデバイスは、サーバに接続することが可能である場合、サーバを照合する（check）ことによって最大同期誤りしきい値を取得することができる。
【００５９】
特定のデバイスに関する同期誤りｎが最大同期誤りしきい値未満であることを確実にするために、同期メッセージは以下の上部制限までに送信されるべきである。  
【数１】
2016504835.tif 000003
【００６０】
ここにおいてＸは同期メッセージ間の秒数であり、dnはｎ番目のワイヤレスデバイスのクロックドリフトであり、drはルートワイヤレスデバイスのクロックドリフトであり、εは最大同期誤りしきい値である。
【００６１】
したがって、同期誤りがネットワーク上のいずれのデバイスに関しても最大同期誤りしきい値未満であることを確実にするために、ルートデバイスは、  
【数２】
2016504835.tif 000004
【００６２】
と同じ程度の頻繁で同期フレームを送るべきである。
【００６３】
ここにおいてＸは同期メッセージ間の秒数であり、dnはｎ番目のワイヤレスデバイスのクロックドリフトであり、drはルートワイヤレスデバイスのクロックドリフトであり、εは最大同期誤りしきい値である。この公式は、ネットワーク上の各、およびすべてのデバイスに対して使用され、Xの値は、その公式がネットワーク上の各デバイスに関して真であるように設定されうる。しかしながら、フローチャート４００においてルートノードが、ネットワークにおける最高のクロックドリフトおよび最低のクロックドリフトへのアクセスを有するので、ルートノードは、最適化された同期フレーム間隔を計算するために、ブロック４０６でこの公式を２回、使用する必要があるだけであろう。
【００６４】
上記の式が真であり、同期フレーム間の最大時間を秒単位で決定するために使用されうる一方で、その代わりに、リアルタイムよりむしろルート時間で最大同期誤りしきい値を表現することの方がより役立ちうる。これは、式  
【数３】
2016504835.tif 000005
【００６５】
を使用して、ルートデバイスのクロックドリフトを明らかにすることによって計算されうる。ここにおいてXrはルートデバイスのクロックを使用して計算されるような、同期メッセージ間の秒数であり、dnはｎ番目のワイヤレスデバイスのクロックドリフトであり、ｄｒはルートワイヤレスデバイスのクロックドリフトであり、εは最大同期誤りしきい値である。したがって、ルートデバイスは、ルートデバイスのクロック上に示されるように、少なくともXr秒毎に、同期メッセージを送るように構成されうる。したがってこの式は、ブロック４０６にあるように、最も大きいおよび最も小さいクロックドリフトに少なくとも部分的に基づいて、最適化された同期フレーム間隔を計算するように使用されうる式の例である。例えば、上記の式の分母は式  
【数４】
2016504835.tif 000006
【００６６】
を使用して計算されうる。ここにおいてdnはｎ番目のワイヤレスデバイスのクロックドリフトであり、drはルートワイヤレスデバイスのクロックドリフトであり、dmaxはネットワーク上の最も大きいクロックドリフトであり、dminはネットワーク上の最も小さいクロックドリフトである。  
いくつかの実施形態では、ルートノードは、絶対最大または最小クロックドリフトを有しうる。例えば、ルートデバイスは、ネットワーク上の最も大きいクロックドリフトが過度に大きい場合、最適化された同期フレーム周波数を計算するために、ネットワーク上の最も大きいクロックドリフトよりもむしろ、絶対最大クロックドリフトを使用することができる。このことは結果として、いくつかのデバイスがネットワークに接続されたままでいることができなくなることをもたらしうるけれども、このことは、ネットワークオーバヘッドを低減するために必要でありうる。  
いくつかの実施形態では、ルートデバイスは最小同期フレーム間隔を有することができ、最小同期フレーム間隔が最適同期フレーム間隔よりも大きい場合、計算された最適同期フレーム間隔よりもむしろ、この間隔を使用しうる。このことは、ネットワークオーバヘッドを低減するために有益でありうる。いくつかの実施形態では、ルートデバイスは最大同期フレーム間隔を有することができ、最大同期フレーム間隔が最適同期フレーム間隔よりも小さい場合、計算された最適同期フレーム間隔よりもむしろこの間隔を使用しうる。このことは、新たなデバイスがネットワークに接続されたままでいることをできるようにするために、またはいくつかのデバイスがそれら自身のクロックドリフトを正しく報告していないことがある場合に有益でありうる。
【００６７】
[0064]最後に、ブロック４０８で方法は、最適化された同期フレーム間隔に少なくとも部分的に基づいて、同期フレームを送信することができる。例えば、同期フレームが送信される時間は、最適化された同期フレーム間隔の計算に少なくとも部分的に基づきうる。いくつかの実施形態では、同期フレームは、いつ次の同期フレームが送信されうるかを示すことができる。次の同期フレームのタイミングは、最適化された同期フレーム間隔の計算に少なくとも部分的に基づきうる。
【００６８】
[0065]上記の開示にしたがって同期メッセージ間の秒数を最適化するために、ルートデバイスは、ネットワーク上のワイヤレスデバイスのクロックドリフトへのアクセスを有さなければならない。このことは、いくつかの方法で達成されうる。図５は、ソーシャルＷｉＦｉネットワーク上でクロックドリフト情報を送信するための方法のフローチャートである。この方法は、ワイヤレスデバイス２０２のような、ソーシャルＷｉＦｉネットワーク上のワイヤレスデバイスによって実行されうる。
【００６９】
[0066]ブロック５０２では、ワイヤレスデバイスは、それ自身のクロックドリフトを決定する。例えば、ソーシャルＷｉＦｉネットワーク上の各ワイヤレスデバイスは、それ自身のクロックドリフトｄｎについての情報を有することができる。いくつかの実施形態では、この情報は、ワイヤレスデバイスが製造またはプログラムされる時点でワイヤレスデバイス上にプログラムされうる。例えば、ワイヤレスデバイスのクロックは、工場または他の施設でテストされうる、あるいはデバイスが構築される時点でデバイスにプログラムされうる既知の誤りを含みうる。いくつかの実施形態では、ワイヤレスデバイスは、それ自身のクロックドリフトを計算することができることがある。例えば、ワイヤレスデバイスは、全世界測位システム（ＧＰＳ）衛星またはセルラタワー上のクロックのような、正確な外部タイミング基準へのアクセスを有することができる。ワイヤレスデバイスはまた、インターネットのようなネットワークを通じた正確な外部タイミング基準へのアクセスを有することもできる。ワイヤレスデバイスは、正確な外部タイミング基準上の時間の持続時間をそれ自身の内部クロック上の時間の持続時間と比較することによってそれ自身のクロックドリフトを測定するために、この正確な外部タイミング基準へのアクセスを使用することができる。ワイヤレスデバイスは、幾らかの設定された間隔でそのクロックドリフトを再較正するように構成されうる、および／または例えば、ワイヤレスデバイスが、それがソーシャルＷｉＦｉネットワークから脱同期されてしまっていることを発見するときにそのクロックドリフトを再較正するように構成されうる。
【００７０】
[0067]ブロック５０４では、ワイヤレスデバイスは、送信デバイスによって算出されるような、ネットワーク上のデバイスの最大および最小クロックドリフトを含む利用可能ウィンドウ中に１つまたは複数のパケットを受信する。このパケットは、いずれのタイプのパケットでもありうる。例えば、このパケットは、発見パケットでありうる。
【００７１】
[0068]ブロック５０６では、ワイヤレスデバイスは、それ自身のクロックドリフト、および１つまたは複数のパケット内の各受信された最大クロックドリフト、のうちの最大値を計算することによって、調整された最大クロックドリフトを算出する。
【００７２】
[0069]ブロック５０８では、ワイヤレスデバイスは、それ自身のクロックドリフト、および１つまたは複数のパケット内の各受信された最小クロックドリフト、のうちの最小値を計算することによって、調整された最小クロックドリフトを算出する。
【００７３】
[0070]ブロック５１０では、ワイヤレスデバイスは、利用可能ウィンドウ中に、ネットワーク上の調整された最大および最小クロックドリフトを含むパケットを送信する。例えば、ワイヤレスデバイスは、後の利用可能ウィンドウ中に、その次のパケット内の調整された最大および最小クロックドリフトを送信することができる。
【００７４】
[0071]いくつかの実施形態では、ワイヤレスネットワークがネットワーク上で最大および最小クロックドリフトを周期的にリセットすることは有益でありうる。例えば、デバイスがネットワークを離れうると、ネットワーク上の任意のデバイスの最大および最小クロックデバイスが変化しうる。しかしながら、この変化は、図５の方法をそのまま使用して観測されないことがある。したがって、ルートデバイスが、同期フレームのような、パケット内の「リセット」メッセージを周期的に送ることは有益でありうる。「リセット」メッセージを受信すると、ネットワーク上の各ワイヤレスデバイスは、そのデバイス自身のクロックドリフトに対応するように、その調整された最大クロックドリフトと調整された最小クロックドリフトとの両方をリセットすることができる。将来的な利用可能ウィンドウでは、図５の方法は、継続して使用されうるけれども、これらの「リセット」メッセージは、ネットワーク上の最大および最小クロックドリフトがリセットし、いくつかのデバイスがネットワークを離れるときのために適応することをできるようにし、このことは、ネットワーク上の最大および最小クロックドリフトを変化させうる。
【００７５】
[0072]本明細書において、例えば、「第１の」、「第２の」等の指定を使用した要素に対するいずれの参照も、概してそれらの要素の量および順序を限定しないことは理解されるべきである。むしろ、これらの指定は、２つ以上の要素または要素の事例の間を区別する便利なワイヤレスデバイスとして本明細書で使用されうる。したがって、第１の要素および第２の要素への参照は、そこで２つの要素のみしか用いられないことも、何らかの方法で第１の要素が第２の要素に先行しなければならないことも意味しない。また、他の方法で述べられない限り、要素のセットは、１つまたは複数の要素を含むことができる。
【００７６】
[0073]当業者は、情報および信号が、様々な異なる技術および技法のいずれかを使用して表されうることを理解するだろう。例えば、上記の記述全体にわたって参照されうるデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場または磁性粒子、光場または光粒子、あるいはそれらの任意の組み合わせによって表されうる。
【００７７】
[0074]当業者は、本明細書で開示された態様と関係して説明されている様々な例示的な論理ブロック、モジュール、プロセッサ、手段、回路、およびアルゴリズムステップのいずれも、電子ハードウェア（例えば、ソースコード化または何らかの他の技法を使用して設計されうる、デジタル実装、アナログ実装、またはこの二つの組み合わせ）、（本明細書では便宜上、「ソフトウェア」または「ソフトウェアモジュール」として称されうる）命令を組み込む設計コードまたはプログラムの様々な形態、または両方の組み合わせとして実装されうることをさらに認識するだろう。ハードウェアとソフトウェアのこの互換性を明確に例示するために、様々な例示的なコンポーネント、ブロック、モジュール、回路、およびステップが、概してそれらの機能の観点から上記で説明されてきた。そのような機能が、ハードウェアとして実装されるか、またはソフトウェアとして実行されるかは、特定のアプリケーション、および全体のシステムに課せられた設計制約に依存する。当業者は、説明されている機能を特定のアプリケーション毎に様々な方法で実装しうるけれども、そのような実装決定は、本開示の範囲からの逸脱を引き起こすものと解釈されるべきではない。
【００７８】
[0075]本明細書で開示されている態様と関係して、および図１−１１と関係して説明されている様々な例示的な論理ブロック、モジュール、および回路は、集積回路（ＩＣ）、アクセス端末、またはアクセスポイント内で実装される、またはこれらによって実行されうる。ＩＣは、汎用プロセッサ、デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、または他のプログラマブル論理デバイス、ディスクリートゲートまたはトランジスタ論理、ディスクリートハードウェアコンポーネント、電子コンポーネント、光コンポーネント、機械コンポーネント、または本明細書で説明されている機能を実行するように設計されたそれらの任意の組み合わせを含むことができ、ＩＣ内、ＩＣ外、またはそれらの両方に存在する命令またはコードを実行することができる。論理ブロック、モジュール、および回路は、ネットワーク内またはデバイス内の様々なコンポーネントと通信するためにアンテナおよび／またはトランシーバを含むことができる。汎用プロセッサは、マイクロプロセッサでありうるが、代わりとして、プロセッサは、あらゆる従来のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシン（state machine）であることができる。プロセッサはまた、コンピューティングデバイスの組み合わせ、例えば、ＤＳＰとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、ＤＳＰコアと連携した１つまたは複数のマイクロプロセッサ、またはあらゆる他のそのような構成、として実装されうる。モジュールの機能は、本明細書で教示されているような何らかの他の方法でも実装されうる。（例えば、添付図面の１つまたは複数に関して）本明細書で説明されている機能は、添付された特許請求の範囲において同様に指定されている「手段（means for）」の機能に、いくつかの態様において対応しうる。
【００７９】
[0076]ソフトウェアで実行される場合、機能は、コンピュータ可読媒体上で、１つまたは複数の命令またはコードとして記憶またはそれらを通じて送信されうる。本明細書で開示されている方法またはアルゴリズムのステップは、コンピュータ可読媒体上に存在しうるプロセッサ実行可能なソフトウェアモジュールで実行されうる。コンピュータ可読媒体は、１つの場所から別の場所へコンピュータプログラムを転送することを可能にされうる任意の媒体を含むコンピュータ記憶媒体と通信媒体との両方を含む。記憶媒体は、コンピュータによってアクセスされうるあらゆる利用可能な媒体でありうる。限定ではなく例として、そのようなコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭ、または他の光ディスク記憶装置、磁気ディスク記憶装置、または他の磁気記憶デバイス、あるいは命令またはデータ構造の形態で所望のプログラムコードを記憶するために使用され、コンピュータによりアクセスされうるあらゆる他の媒体を含むことができる。また、あらゆる接続手段が、コンピュータ可読媒体と適切に名づけられうる。本明細書で使用されるようにディスク（disk）およびディスク（disc）は、コンパクトディスク（compact Disc）（ＣＤ）、レーザーディスク（登録商標）（laser disc）、光ディスク（optical disc）、デジタルバーサタイルディスク（Digital Versatile Disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（floppy disk）およびブルーレイディスク（blu-ray disc）を含み、ここにおいてディスク（disc）がレーザを用いて光学的にデータを再現するのに対し、ディスク（disk）は大抵磁気的にデータを再現する。上記の組み合わせもまた、コンピュータ可読媒体の範囲内に含まれるべきである。加えて、方法またはアルゴリズムの動作は、コンピュータプログラム製品に組み込まれうる、コンピュータ可読媒体および機械可読媒体上のコードおよび命令のセット、あるいは１つのまたはあらゆる組み合わせとして存在しうる。
【００８０】
[0077]あらゆる開示されたプロセスにおけるステップのあらゆる特定の順序または階層がサンプルのアプローチの例であることは理解される。設計の選好に基づいて、プロセスにおけるステップの特定の順序または階層が本開示の範囲内に留まりながら再構成されうることは理解される。添付の方法の請求項は、様々なステップの要素をサンプルの順序で提示しており、提示されている特定の順序または階層に限定されるようには意図されていない。
【００８１】
[0078]本開示で説明されている実装への様々な変更は、当業者には容易に明らかであり、および本明細書で定義されている包括的な原理は、本開示の趣旨または範囲から逸脱することなく他の実装に適用されうる。したがって、本開示は、本明細書に図示されている実装に限定されるようには意図されていないが、本明細書に開示されている請求項、原理および新規の特徴と一致する最も広い範囲を与えられるものとする。「典型的」という言葉は、本明細書では、「例、事例、または例示としての役目をする」ことを意味するように排他的に使用される。「典型的」と本明細書において説明されているいずれの実装も、他の実装に対して、好ましいまたは有利であると必ずしも解釈されるものではない。
【００８２】
[0079]別個の実装のコンテクストにおいて本明細書で説明されているある特定の特徴もまた、単一の実装で組み合わせて実装されることができる。反対に、単一の実装のコンテクストにおいて説明されている様々な特徴もまた、複数の実装で別個に、または任意の適したサブコンビネーションで実装されうることができる。さらに、特徴がある特定の組み合わせで作用するように上記で説明され、および最初でもそのように請求されうるけれども、請求される組み合わせからの１つまたは複数の特徴は、いくつかのケースでは、その組み合わせから削除され、請求される組み合わせは、サブコンビネーション、またはサブコンビネーションのバリエーションに向けられうる。
【００８３】
[0080]同様に、動作は、特定の順序で図面に書き描かれる一方で、このことが、望ましい結果を実現するために、そのような動作が図示されている特定の順序または連続した順序で実行されるべきであること、あるいは全ての例示されている動作が実行されるべきであることを要求するように理解されるべきではない。ある特定の環境では、マルチタスキングおよび平行処理は有利でありうる。さらに、上記で説明された実装における様々なシステムコンポーネントの分離が、すべての実装においてそのような分離を要求しているものとして理解されるべきではなく、説明されているプログラムコンポーネントおよびシステムが、概して単一のソフトウェア製品に共に統合されうる、または複数のソフトウェア製品にパッケージされうることは理解されるべきである。加えて、他の実装は、以下の請求項の範囲内にある。いくつかのケースでは、請求項に記載されている動きは、異なる順序で実行されることができ、それでもなお望ましい結果を実現することができる。
【図１ａ】
2016504835.tif 000007
【図１ｂ】
2016504835.tif 000008
【図２】
2016504835.tif 000009
【図３】
2016504835.tif 000010
【図４】
2016504835.tif 000011
【図５】
2016504835.tif 000012
【国際調査報告】
2016504835.tif 000013
2016504835.tif 000014