(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-16
(45)【発行日】2024-01-24
(54)【発明の名称】アクセスポイントをプローブするための方法および装置
(51)【国際特許分類】
H04W 64/00 20090101AFI20240117BHJP
H04W 52/02 20090101ALI20240117BHJP
H04W 4/029 20180101ALI20240117BHJP
H04M 11/00 20060101ALI20240117BHJP
H04W 84/12 20090101ALI20240117BHJP
【FI】
H04W64/00 160
H04W64/00 171
H04W52/02
H04W4/029
H04M11/00 301
H04W84/12
(21)【出願番号】P 2022520709
(86)(22)【出願日】2020-10-30
(86)【国際出願番号】 US2020058384
(87)【国際公開番号】W WO2021087376
(87)【国際公開日】2021-05-06
【審査請求日】2022-06-03
(32)【優先日】2019-11-01
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390037914
【氏名又は名称】マース インコーポレーテッド
【氏名又は名称原語表記】MARS INCORPORATED
(74)【代理人】
【識別番号】100073184
【氏名又は名称】柳田 征史
(74)【代理人】
【識別番号】100175042
【氏名又は名称】高橋 秀明
(72)【発明者】
【氏名】アギラール,アーニー
(72)【発明者】
【氏名】モット,ロバート ダブリュ
(72)【発明者】
【氏名】ヤン,シン
【審査官】吉江 一明
(56)【参考文献】
【文献】米国特許出願公開第2014/0050210(US,A1)
【文献】特表2014-522599(JP,A)
【文献】米国特許出願公開第2015/0051993(US,A1)
【文献】米国特許出願公開第2017/0078896(US,A1)
【文献】特開2017-130972(JP,A)
【文献】米国特許第08781512(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
H04W 4/00 ー 99/00
(57)【特許請求の範囲】
【請求項1】
方法であって、
クライアントステーションにおいて、ワイヤレスアクセスネットワークのためのサービスセット識別子を検知するステップと、
データベースに記憶された情報にアクセスすることによって、前記ワイヤレスアクセスネットワーク内のチャネルのサブセットを決定するステップと、
前記データベースに記憶された情報にアクセスすることによって、前記サービスセット識別子に関連付けられたスキャン時間間隔を決定するステップと、
前記チャネルのサブセットを通して、前記ワイヤレスアクセスネットワーク内に位置するアクセスポイントにプローブ要求を送信するステップと、
前記スキャン時間間隔中に、前記アクセスポイントから前記クライアントステーションにおいてプローブ応答を受信するステップと、
前記プローブ応答に基づいて、前記クライアントステーションの位置を識別するステップと
を含
み、
前記受信されたプローブ応答内に含まれる情報に基づいて二分探索を実行し、前記スキャン時間間隔を決定する、方法。
【請求項2】
前記方法が、
識別された前記位置に基づいて、前記クライアントステーションが所定のジオフェンスゾーン内に位置することを確認するステップ
をさらに含む、請求項1記載の方法。
【請求項3】
前記方法が、
識別された前記位置に基づいて、前記クライアントステーションが所定のジオフェンスゾーンの外側に位置することを確認するステップと、
前記クライアントステーションが前記所定のジオフェンスゾーンを出たとの指示をユーザ機器に送信するステップと
をさらに含む、請求項1記載の方法。
【請求項4】
前記方法が、
前記クライアントステーションにおいて、前記ワイヤレスアクセスネットワークの複数のマルチチャネルスキャンを実行するステップ
をさらに含む、請求項1記載の方法。
【請求項5】
前記方法が、
前記クライアントステーションにおいて受信された前記プローブ応答を前記データベースに記憶するステップ
をさらに含み、前記プローブ応答は、信号強度情報、成功率、または前記プローブ応答が受信されたチャネルの識別情報のうちの少なくとも1つを含む、
請求項1記載の方法。
【請求項6】
前記方法が、
前記信号強度情報または前記プローブ応答成功率のうちの少なくとも1つに基づいて二分探索を実行して前記スキャン時間間隔を決定するステップ
をさらに含む、請求項5記載の方法。
【請求項7】
前記二分探索が、前記クライアントステーションが充電中であるときに実行される、請求項6記載の方法。
【請求項8】
前記プローブ応答が受信されたチャネルの識別情報が、前記データベースに含まれる先入れ先出しバッファに記憶される、請求項5記載の方法。
【請求項9】
前記方法が、
前記チャネルのサブセットを要求する照会を前記クライアントステーションから前記データベースに送信するステップ
をさらに含み、前記チャネルのサブセットは、前記データベースの前記バッファに記憶されたチャネルの識別情報に基づく、請求項
8記載の方法。
【請求項10】
前記照会を送信するステップは、前記クライアントステーションがバッテリ電力で動作しているときに行われる、請求項9記載の方法。
【請求項11】
前記チャネルのサブセットは、前記バッファに記憶されたチャネルのうちの最新のチャネルまたは最も多く発生しているチャネルのうちの少なくとも1つに基づいて決定される、請求項9記載の方法。
【請求項12】
前記クライアントステーションが、ペットの活動を追跡および監視するために使用されるウェアラブルデバイスである、請求項1記載の方法。
【請求項13】
前記ワイヤレスアクセスネットワークが、2.4ギガヘルツ無線周波数帯域で動作する、請求項1記載の方法。
【請求項14】
前記チャネルのサブセットを決定するステップおよび前記スキャン時間間隔を決定するステップが、前記クライアントステーションにおけるバッテリ使用量または前記クライアントステーションの位置を識別するステップのための実行時間のうちの少なくとも1つを低減する、請求項1記載の方法。
【請求項15】
クライアントステーションであって、
コンピュータプログラムコードを含む少なくとも1つの不揮発性記憶媒体と、
少なくとも1つのプロセッサと
を含み、
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
ワイヤレスアクセスネットワークのためのサービスセット識別子を検知するステップと、
データベースに記憶された情報にアクセスすることによって、前記ワイヤレスアクセスネットワーク内のチャネルのサブセットを決定するステップと、
前記データベースに記憶された情報にアクセスすることによって、前記サービスセット識別子に関連付けられたスキャン時間間隔を決定するステップと、
前記チャネルのサブセットを通して、前記ワイヤレスアクセスネットワーク内に位置するアクセスポイントにプローブ要求を送信するステップと、
前記スキャン時間間隔中に前記アクセスポイントからプローブ応答を受信するステップと、
前記プローブ応答に基づいて、前記クライアントステーションの位置を識別するステップと
を行わせるように構成され
、
前記受信されたプローブ応答内に含まれる情報に基づいて二分探索を実行し、前記スキャン時間間隔を決定する、クライアントステーション。
【請求項16】
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
識別された前記位置に基づいて、前記クライアントステーションが所定のジオフェンスゾーン内に位置することを確認するステップ
を行わせるように構成されている、請求項15記載のクライアントステーション。
【請求項17】
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
識別された前記位置に基づいて、前記クライアントステーションが所定のジオフェンスゾーンの外側に位置することを確認するステップと、
前記クライアントステーションが前記所定のジオフェンスゾーンを出たとの指示をユーザ機器に送信するステップと、
を行わせるように構成されている、請求項15記載のクライアントステーション。
【請求項18】
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
前記ワイヤレスアクセスネットワークの複数のマルチチャネルスキャンを実行するステップ
を行わせるように構成されている、請求項15記載のクライアントステーション。
【請求項19】
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
前記クライアントステーションにおいて受信されたプローブ応答を前記データベースに記憶するステップ
を行わせるように構成されており、前記プローブ応答は、信号強度情報、成功率、または前記プローブ応答が受信されたチャネルの識別情報のうちの少なくとも1つを含む、
請求項15記載のクライアントステーション。
【請求項20】
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
前記信号強度情報または前記プローブ応答成功率のうちの少なくとも1つに基づいて二分探索を実行して前記スキャン時間間隔を決定するステップ
を行わせるように構成されている、請求項19記載のクライアントステーション。
【請求項21】
前記二分探索は、前記クライアントステーションが充電中であるときに実行される、請求項20記載のクライアントステーション。
【請求項22】
前記プローブ応答が受信されたチャネルの識別情報は、前記データベースに含まれる先入れ先出しバッファに記憶される、請求項19記載のクライアントステーション。
【請求項23】
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
前記チャネルのサブセットを要求する照会を前記クライアントステーションから前記データベースに送信するステップ
を行わせるように構成されており、前記チャネルのサブセットは、前記データベースの前記バッファに記憶されたチャネルの識別情報に基づく、
請求項22記載のクライアントステーション。
【請求項24】
前記照会を送信するステップは、前記クライアントステーションがバッテリ電力で動作しているときに行われる、請求項23記載のクライアントステーション。
【請求項25】
前記チャネルのサブセットは、前記バッファに記憶されたチャネルのうちの最新のチャネルまたは最も多く発生しているチャネルのうちの少なくとも1つに基づいて決定される、請求項23記載のクライアントステーション。
【請求項26】
前記クライアントステーションが、ペットの活動を追跡および監視するために使用されるウェアラブルデバイスである、請求項15記載のクライアントステーション。
【請求項27】
前記ワイヤレスアクセスネットワークが、2.4ギガヘルツ無線周波数帯域で動作する、請求項15記載のクライアントステーション。
【請求項28】
アクセスポイントであって、
コンピュータプログラムコードを含む少なくとも1つの不揮発性記憶媒体と、
少なくとも1つのプロセッサと
を含み、
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記アクセスポイントに、
ワイヤレスアクセスネットワーク内に位置する前記アクセスポイントにおいて、チャネルのサブセットを通してクライアントステーションからプローブ要求を受信するステップと、
スキャン時間間隔中に前記クライアントステーションにプローブ応答を送信するステップであって、前記プローブ応答は、前記クライアントステーションがジオフェンスゾーンの内側または外側にあることを確認するために使用される、ステップと
を行わせるように構成され
、
前記受信されたプローブ応答内に含まれる情報に基づいて二分探索を実行し、前記スキャン時間間隔を決定する、アクセスポイント。
【発明の詳細な説明】
【技術分野】
【0001】
本開示で説明される実施形態は、ワイヤレスローカルエリアネットワークに関し、より詳細には、ワイヤレスローカルエリアネットワーク内に位置するアクセスポイントをスキャンおよびプローブすることに関する。
【背景技術】
【0002】
モバイルデバイスおよび/またはウェアラブルデバイスは、デバイスのワイヤレスランドエリアネットワーク(WLAN)への接続に役立ちうる種々のハードウェアおよびソフトウェア構成要素を備えている。WLANは、所与の地理的エリア内のコンピュータまたはデバイスを相互接続するワイヤレスコンピュータネットワークである。WLANに接続された所与のモバイルデバイスまたはウェアラブルデバイスは、ステーション(STA)と称される。WLANに接続するために、STAは、WLANのための基地局として機能するワイヤレスルータなどのアクセスポイント(AP)と通信する。各WLANは、サービスセット識別子(SSID)を使用して識別され、APは、基本サービスセット識別子(BSSID)と称される媒体アクセス制御(MAC)アドレスを使用して識別される。
【発明の概要】
【発明が解決しようとする課題】
【0003】
WLAN通信への依存度がますます高まるなか、モバイルデバイスおよびウェアラブルデバイスとAPとの相互作用のしかたを改善する必要性が高まっている。したがって、かかる相互作用に専従するネットワークおよびモバイルリソースの量を削減しつつ、効率的かつ信頼性の高い形式でAPと通信するモバイルデバイスまたはウェアラブルデバイスへの継続的な需要が存在している。
【課題を解決するための手段】
【0004】
前述の欠点を改善するために、本開示は、モバイルデバイスまたはウェアラブルデバイスとWLANのAPとの間の通信を改善することができるシステム、方法、および装置を提示する。
【0005】
特定の非限定的な実施形態において、本開示は、方法を説明する。本方法は、クライアントステーションにおいて、ワイヤレスアクセスネットワークのためのサービスセット識別子を検知または検出するステップを含みうる。ワイヤレスアクセスネットワークは、2.4ギガヘルツ無線周波数帯域で動作することができる。本方法はまた、データベースに記憶された情報にアクセスすることによってワイヤレスアクセスネットワーク内のチャネルのサブセットを決定するステップと、データベースに記憶された情報にアクセスすることによってサービスセット識別子に関連付けられたスキャン時間間隔を決定するステップとを含みうる。チャネルのサブセットを決定するステップおよび/またはスキャン時間間隔を決定するステップは、クライアントステーションにおけるバッテリ使用量またはクライアントステーションの位置を識別するステップのための実行時間のうちの少なくとも1つを低減することに役立ちうる。
【0006】
さらに、本方法は、チャネルのサブセットを通してワイヤレスアクセスネットワーク内に位置するアクセスポイントにプローブ要求を送信するステップと、スキャン時間間隔中にアクセスポイントからクライアントステーションにおいてプローブ応答を受信するステップとを含みうる。本方法は、プローブ応答に基づいてクライアントステーションの位置を識別するステップをさらに含みうる。
【0007】
特定の非限定的な実施形態では、本方法は、識別された位置に基づいて、クライアントステーションが所定のジオフェンスゾーン内に位置することを確認するステップを含みうる。他の非限定的な実施形態では、本方法は、識別された位置に基づいて、クライアントステーションが所定のジオフェンスゾーンの外側に位置することを確認するステップと、クライアントステーションが所定のジオフェンスゾーンを出たとの指示をユーザ機器に送信するステップとを含みうる。
【0008】
幾つかの非限定的な実施形態では、本方法は、クライアントステーションにおいて、ワイヤレスアクセスネットワークの複数のマルチチャネルスキャンを実行するステップを含みうる。本方法はまた、クライアントステーションにおいて受信されたプローブ応答をデータベースに記憶するステップを含みうる。プローブ応答は、信号強度情報、成功率、またはプローブ応答が受信されたチャネルの識別情報のうちの少なくとも1つを含みうる。加えて、本方法は、信号強度情報またはプローブ応答成功率のうちの少なくとも1つに基づいて二分探索を実行してスキャン時間間隔を決定するステップを含みうる。二分探索は、クライアントステーションが充電中であるときに実行することができる。プローブ応答が受信されたチャネルの識別情報は、データベースに含まれる先入れ先出しバッファに記憶することができる。
【0009】
他の非限定的な実施形態では、本方法は、チャネルのサブセットを要求する照会をクライアントステーションからデータベースに送信するステップを含むことができ、チャネルのサブセットは、データベースのバッファに記憶されたチャネルの識別情報に基づく。照会を送信するステップは、クライアントステーションがバッテリ電力で動作しているときに行うことができる。加えて、チャネルのサブセットは、バッファに記憶されたチャネルのうちの最新のチャネルまたは最も多く発生しているチャネルのうちの少なくとも1つに基づいて決定されうる。
【0010】
特定の非限定的な実施形態では、クライアントステーションは、コンピュータプログラムコードを含む少なくとも1つの不揮発性記憶媒体と、少なくとも1つのプロセッサとを含みうる。コンピュータプログラムコードは、少なくとも1つのプロセッサによって実行される際に、クライアントステーションに、ワイヤレスアクセスネットワークのためのサービスセット識別子を検知または検出させるように構成されうる。コンピュータプログラムコードはまた、少なくとも1つのプロセッサによって実行される際に、クライアントステーションに、データベースに記憶された情報にアクセスすることによってワイヤレスアクセスネットワーク内のチャネルのサブセットを決定させ、データベースに記憶された情報にアクセスすることによってサービスセット識別子に関連付けられたスキャン時間間隔を決定させるように構成されうる。さらに、コンピュータプログラムコードは、少なくとも1つのプロセッサによって実行される際に、クライアントステーションに、チャネルのサブセットを通してワイヤレスアクセスネットワーク内に位置するアクセスポイントにプローブ要求を送信させ、スキャン時間間隔中にアクセスポイントからプローブ応答を受信させるように構成されうる。さらに、コンピュータプログラムコードはまた、少なくとも1つのプロセッサによって実行される際に、クライアントステーションに、プローブ応答に基づいてクライアントステーションの位置を識別させるように構成されうる。
【0011】
幾つかの非限定的な実施形態では、アクセスポイントによって実行される方法は、ワイヤレスアクセスネットワーク内に位置するアクセスポイントにおいて、チャネルのサブセットを通してクライアントステーションからプローブ要求を受信するステップを含みうる。本方法はまた、スキャン時間間隔中にアクセスポイントからクライアントステーションにプローブ応答を送信するステップを含みうる。プローブ応答は、クライアントステーションがジオフェンスゾーンの内側または外側にあることを確認するために使用されうる。
【0012】
特定の非限定的な実施形態では、クライアントステーションは、コンピュータプログラムコードを含む少なくとも1つの不揮発性記憶媒体と、少なくとも1つのプロセッサとを含みうる。コンピュータプログラムコードは、少なくとも1つのプロセッサによって実行される際に、クライアントステーションに、ワイヤレスアクセスネットワーク内に位置するアクセスポイントにおいて、チャネルのサブセットを通してクライアントステーションからプローブ要求を受信させるように構成されうる。コンピュータプログラムコードはまた、少なくとも1つのプロセッサによって実行される際に、クライアントステーションに、スキャン時間間隔中にアクセスポイントからクライアントステーションにプローブ応答を送信させるように構成されうる。プローブ応答は、クライアントステーションがジオフェンスゾーンの内側または外側にあることを確認するために使用されうる。
【図面の簡単な説明】
【0013】
本開示の前述および他の目的、特徴および利点は添付図面に示されている実施形態の以下の説明から明らかとなり、ここで、参照符号は種々の図を通して同じ部分を指す。図面は必ずしも縮尺通りに描かれておらず、代わりに本開示の基本方式を示すことに重点が置かれている。
【
図1】特定の非限定的な実施形態によるシステムを示す図である。
【
図2】特定の非限定的な実施形態によるコンピューティングデバイスを示す図である。
【
図3】特定の非限定的な実施形態によるクライアントステーションを示す図である。
【
図4A】特定の非限定的な実施形態によるデータベースを示す図である。
【
図4B】特定の非限定的な実施形態によるデータベースを示す図である。
【
図5】特定の非限定的な実施形態によるクライアントステーションおよびアクセスポイントを有するシステム図を示す図である。
【
図6】特定の非限定的な実施形態によるシステムまたは方法を説明するシステムフロー図を示す図である。
【
図7】特定の実施形態によるスキャン時間間隔チャートを示す図である。
【
図8】特定の実施形態によるWLANチャネルのチャートを示す図である。
【
図9】特定の非限定的な実施形態によるフロー図を示す図である。
【
図10】特定の非限定的な実施形態によるフロー図を示す図である。
【
図11】特定の非限定的な実施形態によるフロー図を示す図である。
【
図12a】特定の実施形態によるプローブ応答チャートを示す図である。
【
図12b】特定の実施形態によるプローブ応答チャートを示す図である。
【発明を実施するための形態】
【0014】
モバイルデバイスまたはウェアラブルデバイスとWLANのAPとの間の通信を改善することができるシステム、装置、および方法が必要とされている。特定の実施形態では、モバイルデバイスまたはウェアラブルデバイスは、クライアントステーション、ユーザ機器、またはSTAと称されうる。本開示の主題は、上記の必要性、ならびにWLANおよび/またはクライアントステーションに関連する他の必要性に対処するものである。具体的には、クライアントステーションは、データベースに記憶された情報を活用して、APと通信するためのプローブ応答スキャン間隔および/またはサブセットチャネルを決定することができる。決定されたスキャン間隔およびサブセットチャネルに基づいて、クライアントステーションは、プローブ要求および応答をそれぞれ送信および受信するために使用されるバッテリリソースの量を低減することができる。決定されたスキャン間隔およびサブセットチャネルはまた、所与のクライアントステーションの位置を識別するために、またはクライアントステーションがジオフェンスゾーンの内側または外側にあることを確認するために使用される時間量を低減することに役立ちうる。
【0015】
米国特許出願第15/291882号明細書(現在の米国特許第10142773号明細書)、および米国特許出願第14/988621号明細書は、参照により本明細書に組み込まれる。明細書、特許請求の範囲および図面を含む、上記で参照した出願に開示されている主題全体が本明細書に組み込まれる。
【0016】
本開示につき、本明細書の一部を形成し例示として特定の例示的な実施形態を示す添付の図面を参照して、以下でより完全に説明する。しかしながら、主題は、種々の異なる形態で具現化することができ、そのため、包含されるまたは特許請求される主題は、本明細書に記載するいかなる例示的な実施形態にも限定されないと解釈されることが意図されており、例示的な実施形態は、単に例示のために提供されている。同様に、特許請求または包含される主題の合理的に広い範囲が意図される。とりわけ、例えば主題は、方法、デバイス、装置、構成要素、またはシステムとして具現化されうる。したがって、実施形態は、例えば、ハードウェア、ソフトウェア、ファームウェア、またはこれらの任意の組み合わせ(ソフトウェア自体以外)の形態をとることができる。したがって、以下の詳細な説明は、限定的な意味で解釈されることを意図するものではない。
【0017】
本明細書および添付の特許請求の範囲において使用される場合、単数形“a”、“an”および“the”は、文脈が明らかに他を指示しない限り、複数形の参照を含む。したがって、例えば「あるアクセスポイント」への言及は2つ以上のアクセスポイントを含みうる。
【0018】
本明細書で使用される場合、用語「含む(comprises)」、「含んでいる(comprising)」、またはその任意の他の変形は、非排他的な包含を対象とすることが意図される。したがって、要素のリストを含むプロセス、方法、物品、システム、または装置は、これらの要素を含むのみならず、明示的に列挙されていない他の要素、またはかかるプロセス、方法、物品、もしくは装置に固有の他の要素を含みうる。
【0019】
本開示に従って使用される「クライアントステーション」なる用語は、ユーザ機器、STA、ウェアラブルデバイス、ウェアラブル追跡デバイス、モバイルデバイス、またはWLANのアクセスポイントと通信するために使用される任意の他のユーザデバイスを指すことができる。例えば、クライアントステーションは、動物またはペット追跡デバイスなどのペットまたは動物用のウェアラブルデバイスでありうる。
【0020】
本開示に従って使用される「アクセスポイント」なる用語は、クライアントステーションをWLANに接続するために使用される任意のデバイス、サーバ、ルータ、ゲートウェイ、または基地局を指す。換言すれば、クライアントステーションは、アクセスポイントを介してWLANとのインタフェースを有する。
【0021】
「動物」または「ペット」なる用語は、本開示に従って使用される場合、以下に限定されるものではないが、飼いイヌ、飼いネコ、ウマ、ウシ、フェレット、ウサギ、ブタ、ラット、マウス、スナネズミ、ハムスター、ヤギなどを含めた家畜を指す。飼いイヌおよび飼いネコは、ペットの特定の非限定的な例である。本開示に従って使用される「動物」または「ペット」なる用語はさらに、以下に限定されるものではないが、バイソン、ヘラジカ、シカ、シカ肉、アヒル、家禽などを含む野生動物を指すことができる。
【0022】
本明細書で使用される場合、「ジオフェンスゾーン」または「ジオフェンス位置」なる用語は、ユーザによって選択された所定の、予め選択された、または既知の地理的エリアまたは位置でありうる。ジオフェンスゾーンまたはジオフェンス位置は、ペットの飼い主または保護人の住居など、ペットまたは動物にとって馴染みのある地理的エリアまたは位置を画定するために使用することができる。幾つかの例では、ジオフェンスゾーンまたはジオフェンス位置は、全地球測位システム(GPS)または全地球航法衛星システム(GLONASS)受信機を使用して決定され、デバイスの緯度および経度を決定することができる。他の例では、ジオフェンスゾーン、ジオフェンス位置、または存在の有無は、WLANネットワークの所定の、予め選択された、または既知のSSIDを使用して決定することができる。ジオフェンスゾーンまたはジオフェンス位置がSSIDスキャン、またはWLANに関連付けられた任意の他の特性もしくは測定値を使用して決定される場合、ジオフェンスゾーンまたはジオフェンス位置は「ビーコンゾーン」と称されうる。換言すれば、特定の非限定的な実施形態では、クライアントステーションは、所与のアクセスポイントの送信範囲内にあるとき、所与のゾーン内または位置内にあると判定されうる。クライアントステーションがジオフェンス位置またはゾーンの内部または外部に位置するかどうかを判定するために、クライアントステーションは、プローブ要求を送信し、WLANネットワークのAPからプローブ応答を受信することができる。
【0023】
本明細書における詳細な説明において、「実施形態」、「ある実施形態」、「一実施形態」、「種々の実施形態において」、「特定の実施形態」、「幾つかの実施形態」、「他の実施形態」、「特定の他の実施形態」などへの言及は、記載された実施形態が特定の特徴、構造、または特性を含みうるが、全ての実施形態が必ずしもその特定の特徴、構造、または特性を含むとは限らないことを示す。さらに、かかる語句は必ずしも同じ実施形態を指すものではない。さらに、特定の特徴、構造、または特性がある実施形態に関連して記載される場合、明示的に記載されているか否かにかかわらず、他の実施形態に関連してかかる特徴、構造、または特性に影響を及ぼすことは、当業者の知識の範囲内であると考えられる。本明細書を読んだ後、関連する技術分野の当業者には、本開示を代替の実施形態で実装する方法が明らかであろう。
【0024】
「~に基づく」なる用語は、必ずしも要因の排他的な集合を伝えることを意図したものではなく、代わりに、文脈に少なくとも部分的に依存して、必ずしも明示的に記述されていない追加の要因の存在を許容することができると理解することができる。
【0025】
「プロセッサ」なる用語は、コンピュータプログラム命令を実行するために使用される任意のハードウェアまたはソフトウェアとして理解することができる。これらのコンピュータプログラム命令は、汎用コンピュータのプロセッサに提供され、その機能を特殊目的、特殊目的コンピュータ、特定用途向け集積回路(ASIC)、または他のプログラマブルデジタルデータ処理装置に変更することができ、その結果、クライアントステーションまたは他のプログラマブルデータ処理装置のプロセッサを介して実行される命令は、ブロック図または1つ以上の動作ブロックに指定された機能/動作を実施し、これにより本明細書の実施形態に従ってその機能を変換する。特定の非限定的な実施形態では、プロセッサは、携帯型埋め込みマイクロコントローラまたはマイクロコンピュータでありうる。
【0026】
「コンピュータ可読媒体」、「記憶媒体」または「メモリ」なる用語は、コンピュータデータを記憶する任意のハードウェアまたはソフトウェアとして理解することができる。データには、コンピュータ、クライアントステーション、またはアクセスポイントによって実行可能なコンピュータプログラムコード(またはコンピュータ実行可能命令)が機械可読形式で含まれうる。限定ではなく例として、コンピュータ可読媒体は、データの有形もしくは固定記憶のためのコンピュータ可読記憶媒体、またはコード含有信号の一時的解釈のための通信媒体を含みうる。本明細書で使用されるコンピュータ可読記憶媒体は、(信号とは対照的に)物理的または有形のストレージを指すことができ、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報の有形のストレージのための任意の方法または技術で実装される揮発性および不揮発性、永続的、取り外し可能および取り外し不可能な媒体を含むが、これらに限定されない。
図4Aおよび
図4Bは、不揮発性ストレージ400内に含まれるデータベースの例示的な実施形態を示している。
【0027】
コンピュータ可読記憶媒体またはメモリは、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能プログラマブル読み出し専用メモリ(EPROM)、電気的消去可能プログラマブル読み出し専用メモリ(EEPROM)、フラッシュメモリまたはその他の個体メモリ技術を含みうるが、これらに限定されない。コンピュータ可読記憶媒体またはメモリはまた、コンパクトディスク読み出し専用光メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、任意の他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または所望の情報もしくはデータもしくは命令を有形に記憶するために使用することができ、コンピュータもしくはプロセッサによってアクセスすることができる任意の他の物理的媒体もしくは物質的媒体を含みうる。
【0028】
本開示に従って使用される「サーバ」なる用語は、処理、データベース、および通信機能を提供するサービスポイントを指す。限定ではなく例として、「サーバ」なる用語は、関連する通信およびデータストレージおよびデータベース機能を有する単一の物理プロセッサを指すことができ、またはプロセッサおよび関連するネットワークおよびストレージデバイス、ならびにサーバによって提供されるサービスをサポートするオペレーティングソフトウェアおよび1つ以上のデータベースシステムおよびアプリケーションソフトウェアのネットワーク化またはクラスタ化された複合体を指すことができる。サーバは、構成または能力において広く異なる場合があるが、概して、1つ以上の中央処理装置およびメモリを含みうる。サーバはまた、1つ以上の大容量ストレージデバイス、1つ以上の電源、1つ以上の有線もしくはワイヤレスネットワークインタフェース、1つ以上の入力/出力インタフェース、または1つ以上のオペレーティングシステムを含みうる。
【0029】
サーバは、例えば、専用ラックマウントサーバ、デスクトップコンピュータ、ラップトップコンピュータ、セットトップボックス、前述のデバイスの2つ以上の特徴などの種々の特徴を組み合わせた一体型デバイスなどを含みうる。サーバは、構成または能力において大きく異なりうるが、概して、1つ以上の中央処理装置およびメモリを含みうる。サーバはまた、1つ以上の大容量ストレージデバイス、1つ以上の電源、1つ以上の有線もしくはワイヤレスのネットワークインタフェース、1つ以上の入力/出力インタフェース、または1つ以上のオペレーティングシステムを含みうる。
【0030】
本開示に従って使用される「ネットワーク」なる用語は、サーバとクライアントデバイスまたは他のタイプのデバイスとの間など、通信が交換されうるようにデバイスを結合することができるネットワークを指し、これには、例えば、ワイヤレスネットワークを介して結合されたワイヤレスデバイス間が含まれる。ネットワークはまた、例えば、ネットワーク接続ストレージ(NAS)、ストレージエリアネットワーク(SAN)、または他の形態のコンピュータもしくは機械可読媒体などの大容量ストレージを含みうる。ネットワークは、インターネット、1つ以上のワイヤレスローカルエリアネットワーク(WLAN)、1つ以上のローカルエリアネットワーク(LAN)、1つ以上のワイドエリアネットワーク(WAN)、ワイヤライン型の接続、ワイヤレス型の接続、セルラ、またはこれらの任意の組み合わせを含みうる。同様に、サブネットワークは、異なるアーキテクチャを使用することができるかまたは異なるプロトコルに準拠または適合することができ、より大きなネットワーク内で相互運用することができる。種々のタイプのデバイスが、例えば、異なるアーキテクチャまたはプロトコルのための相互運用性を実現するために利用可能でありうる。例示的な一例として、ルータは、そうでない場合には別個の独立したLAN間のリンクを提供することができる。
【0031】
通信リンクまたはチャネルは、例えば、ツイストワイヤペアなどのアナログ電話回線、同軸ケーブル、T1、T2、T3もしくはT4タイプの回線を含むフルデジタル回線もしくはフラクショナルデジタル回線、総合サービスデジタル網(ISDN)、デジタル加入者線(DSL)、衛星リンクを含むワイヤレスリンク、または当業者に既知でありうるような他の通信リンクもしくはチャネルを含みうる。さらに、コンピューティングデバイスまたは他の関連する電子デバイスは、例えば、有線またはワイヤレスのラインまたはリンクなどを介して、ネットワークにリモートで結合されうる。
【0032】
本開示の目的のために、「ワイヤレスネットワーク」は、クライアントデバイスをネットワークと結合させるものと理解されるべきである。ワイヤレスネットワークには、スタンドアロンアドホックネットワーク、メッシュネットワーク、WLAN、セルラネットワークなどを採用することができる。ワイヤレスネットワークは、ワイヤレス無線リンクなどによって結合された端末、ゲートウェイ、ルータなどのシステムをさらに含むことができ、これらの端末は自由に、ランダムに移動したり、任意に編成したりすることができるため、ネットワークのトポロジが時には急速に変化することがある。
【0033】
ワイヤレスネットワークには、IEEE802.11、ロングタームエボリューション(LTE)、LTEアドバンスト、ワイヤレスルータ(WR)メッシュ、または第2世代、第3世代、もしくは第4世代(2G、3Gもしくは4G)セルラ技術などのWLAN、またはより新しいモノのインターネット(IOT)、第5世代(5G)、もしくは新しい無線(NR)技術などを含む複数のネットワークアクセス技術をさらに採用することができる。ネットワークアクセス技術は、例えば種々の程度のモビリティを備えたクライアントデバイスなど、デバイスのための広域カバレージを可能にしうる。
【0034】
例えば、ネットワークは、グローバルシステムフォーモバイルコミュニケーション(GSM)、ユニバーサルモバイルテレコミュニケーションシステム(UMTS)、汎用パケット無線サービス(GPRS)、拡張データGSM環境(EDGE)、3GPP(登録商標)ロングタームエボリューション(LTE)、LTEアドバンスト、広帯域符号分割多元接続(WCDMA(登録商標))、Bluetooth、IEEE802.11b/g/n、またはその他の802.11プロトコルなどの1つ以上のネットワークアクセス技術を介して、RFまたはワイヤレス型の通信を可能にしうる。ワイヤレスネットワークは、クライアントデバイスまたはコンピューティングデバイスなどのデバイス間、ネットワーク間、またはネットワーク内などで信号を通信することができる、実質的にあらゆるタイプのワイヤレス通信メカニズムを含みうる。
【0035】
本開示につき、方法およびデバイスのブロック図および動作図を参照して以下に説明する。ブロック図または動作図の各ブロック、およびブロック図または動作図におけるブロックの組み合わせは、アナログまたはデジタルハードウェアおよびコンピュータプログラム命令によって実装されうることが理解される。これらのコンピュータプログラム命令は、本明細書で詳述されるようにその機能を変更する汎用コンピュータ、専用コンピュータ、ASIC、または他のプログラマブルデータ処理装置のプロセッサに提供することができ、その結果、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行される命令は、ブロック図または1つ以上の動作ブロックで指定される機能/動作を実装する。幾つかの代替実装形態では、ブロックに記載された機能/動作は、動作図に記載された順序とは異なる順序で行うことができる。例えば、連続して示される2つのブロックは実際には実質的に同時に実行することができ、または関与する機能/動作に応じてそのブロックを時には逆の順序で実行することができる。
【0036】
図1は、特定の非限定的な実施形態によるシステムを示している。具体的には、
図1に示すように、システム100は、ペットまたは動物のウェアラブルデバイスなどのクライアントステーション102、ペットまたは動物の飼い主または保護人によって使用されるモバイルデバイス104、サーバ106、および/またはWLANなどのネットワーク108を含みうる。クライアントステーション102は、ペットまたは動物の首輪に配置されるウェアラブルデバイスでありうる。クライアントステーション102を使用して、ペットの活動または位置を追跡、監視および/または検出することができる。モバイルデバイス104は、クライアントステーション102と通信することのできるウェブベースのアプリケーションを含みうる。
【0037】
クライアントステーション102がジオフェンスゾーン内に位置する場合、WLANのAPからクライアントステーション102によって受信されたプローブ応答は、データベースに記憶されうる。データベースは、例えばサーバ106内に位置しうる。一方、クライアントステーション102がジオフェンスゾーンを出たとき、クライアントステーション102は、そのGPS受信機をオンにし、セルラネットワークまたはWLANでありうるネットワーク108を使用して、サーバ106に座標を送信することができる。次いで、サーバ106は、モバイルデバイス104またはモバイルデバイス104上に位置するウェブベースのアプリケーションにアラートを送信して、クライアントステーション102がジオフェンスゾーンを出たことをユーザに通知することができる。アラートは、対話型マップ、テキストメッセージ、および/または電子メールメッセージであってよい。他の非限定的な実施形態では、クライアントステーション102は、直接にまたは間接的に送信を開始し、かつ/またはモバイルデバイス104にアラートを送信することができる。
【0038】
1つの非限定的な実施形態では、クライアントステーション102は、
図2に示すハードウェアを含みうる。
図2は、特定の非限定的な実施形態によるクライアントステーションまたはアクセスポイントを示している。クライアントステーション102は、追跡デバイス102内に存在する、概してセンサと称される種々のハードウェアまたはソフトウェア構成要素によって生成されたデータを収集するように構成することができる。例えば、GPS受信機210、または加速度計、ジャイロスコープなどの1つ以上のセンサ208、または移動もしくは活動に関するデータを記録、収集、もしくは受信するために使用される任意の他のデバイスもしくは構成要素を、クライアントステーション102内に含めることができる。クライアントステーション102の位置は、幾つかの非限定的な実施形態では、追跡デバイスが位置するペットの動きを模倣することができる。
【0039】
クライアントステーション102は、参照によりその全体が本明細書に組み込まれる米国特許出願第14/231615号明細書に記載されているように、ペットの首輪に取り付けることができるが、他の実施形態では、クライアントステーション102は、ペットが着用する任意の他のアイテムに取り付けることができる。幾つかの非限定的な実施形態では、クライアントステーション102は、例えば、ペット上またはペット自体の内部、例えばペット内に埋め込まれたマイクロチップなどに位置しうる。
【0040】
本明細書でより詳細に説明するように、クライアントステーション102は、クライアントステーション102から収集された1つ以上のデータを処理しうるプロセッサ202をさらに含みうる。プロセッサ202は、中央処理装置(CPU)、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、プログラマブルロジックデバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル拡張回路もしくは同等のデバイス、またはこれらの組み合わせなどの任意の計算デバイスまたはデータ処理デバイスによって具現化されうる。プロセッサは、単一のコントローラ、または複数のコントローラもしくはプロセッサとして実装することができる。幾つかの実施形態では、クライアントステーション102は、データを収集し、検知しもしくは受信し、かつ/または送信前にデータを前処理するように具体的に構成することができる。データを検知し、記録しおよび/または処理することに加えて、クライアントステーション102は、ネットワーク108を介して他のデバイスまたはサーバへのデータの送信を開始するようにさらに構成することができ、当該データには、位置および任意の他の監視もしくは追跡データが含まれる。例えば、クライアントステーション102内のプロセッサ202は、ネットワーク108を介してサーバ106またはモバイルデバイス104へのアラートの送信を開始することができる。
【0041】
特定の非限定的な実施形態では、クライアントステーション102は、任意の追跡もしくは監視データを連続的にネットワークに送信することができる。他の非限定的な実施形態では、クライアントステーション102は、任意の追跡もしくは監視データを離散的に送信することができる。離散的な送信とは、有限の期間の後にデータを送信することでありうる。例えば、クライアントステーション102は、1時間に1回または1時間に2回、データを送信することができる。これは、ネットワークを介したデータの送信に使用されるネットワークリソースを節約しながら、クライアントステーション102によって消費されるバッテリ電力を低減することに役立ちうる。
【0042】
図1に示すように、クライアントステーション102は、ネットワーク108と通信することができる。単一のネットワークとして図示されているが、ネットワーク108は、デバイス間の通信を容易にする複数のネットワークを含みうる。ネットワーク108は、任意の利用可能な無線アクセス技術を使用する無線ベースの通信ネットワークでありうる。利用可能な無線アクセス技術には、例えば、Bluetooth、WLAN、モバイル通信用グローバルシステム(GMS)、ユニバーサルモバイルテレコミュニケーションシステム(UMTS)、LTE、LTEアドバンスト、3G、5G/NR技術を含む任意の第3世代パートナーシッププロジェクト(「3GPP」)技術が含まれうる。ネットワーク108は、追跡デバイス102、サーバ106、および/またはモバイルデバイス104と通信するために、上記の無線アクセス技術のいずれか、または任意の他の利用可能な無線アクセス技術を使用することができる。
【0043】
一実施形態では、ネットワーク108は、米国電気電子学会(IEEE)802.11規格または同等の規格によって定義されたワイヤレスフィデリティ(「Wi-Fi」)ネットワークなどのWLANを含みうる。この実施形態では、ネットワーク108は、クライアントステーション102からサーバ106への位置および/または任意の追跡もしくは監視データの転送を可能にすることができる。さらに、ネットワーク108は、クライアントステーション102とモバイルデバイス104との間のデータの転送を可能にすることができる。代替的な実施形態では、ネットワーク108は、セルラネットワークなどのモバイルネットワークを含みうる。この実施形態では、ネットワーク108がWLANである特定の実施形態と同様の方法で、図示されているデバイス間でデータを転送することができる。
【0044】
非限定的な一実施形態では、クライアントステーション102およびモバイルデバイス104は、デバイス間で直接にデータを転送することができる。かかる直接の転送は、デバイス間通信またはモバイル間通信と称されうる。個別のものとして説明しているが、ネットワーク108は、複数のネットワークを含みうる。例えば、ネットワーク108は、クライアントステーション102とモバイルデバイス104との間でのデータ転送の可能化に役立ちうるBluetoothネットワーク、WLAN、およびモバイルまたはセルラネットワークを含みうる。
【0045】
システム100は、モバイルデバイス104をさらに含みうる。モバイルデバイス104は、携帯電話機、スマートフォンもしくはマルチメディアデバイス、またはタブレットデバイスなど、任意の利用可能なユーザ機器または移動局でありうる。代替的な実施形態では、モバイルデバイス104は、ワイヤレス通信機能を備えたラップトップコンピュータなどのコンピュータ、ワイヤレス通信機能を備えたパーソナルデータもしくはデジタルアシスタント(PDA)、ポータブルメディアプレーヤ、デジタルカメラ、ポケットビデオカメラ、ワイヤレス通信機能を備えたナビゲーションユニット、またはこれらの任意の組み合わせでありうる。モバイルデバイス104は、クライアントステーション102と通信することができる。かかる非限定的な実施形態では、モバイルデバイス104は、クライアントステーション102、サーバ106、および/またはネットワーク108から、位置情報、または健康評価および/または健康勧告などのペットに関連する任意の他のデータを受信することができる。
【0046】
さらに、クライアントステーション102は、モバイルデバイス104、サーバ106、および/またはネットワーク108からデータを受信することができる。特に、以下に説明する
図5に示すように、クライアントステーション102は、WLANのAPからプローブ応答を受信することができる。クライアントステーション102は、サーバ106のデータベース内に、プローブ応答またはそこに含まれる情報を記憶することができる。例えば、プローブ応答は、信号強度情報(SSI)、成功率、またはプローブ応答が受信されたチャネルの識別情報のうちの少なくとも1つを含みうる。この情報は、サーバ106のデータベース内に記憶することができる。クライアントステーション102は、WLANに関連付けられたチャネルのサブセットおよび/またはスキャン時間間隔を決定するために、この情報にアクセスしてこれを使用することができる。
【0047】
モバイルデバイス104(または非モバイルデバイス)はさらに、サーバ106またはクライアントステーション102と通信して、データまたはアラートを受信することができる。例えば、サーバ106は、ネットワーク化されたアプリケーションまたはアプリケーションプログラミングインタフェース(API)を提供する1つ以上のアプリケーションサーバを含みうる。一実施形態では、モバイルデバイス104は、アプリケーション内のデータを取得して提示するためにAPIを介してサーバ106と通信する1つ以上のモバイルアプリケーションまたはウェブベースのアプリケーションを備えうる。1つの非限定的な実施形態では、サーバ106は、クライアント102から受信した位置またはデータの可視化または表示を提供することができる。他の非限定的な実施形態では、モバイルデバイス104は、クライアントステーション102と直接に通信し、クライアントステーション102からアラートを受信することができる。
【0048】
図2は、特定の非限定的な実施形態によるコンピューティングデバイスを示している。コンピューティングデバイス200は、例えば、
図1に示すクライアントステーション102、サーバ106、またはモバイルデバイス104でありうる。デバイス200は、プロセッサ202、メモリ204、不揮発性ストレージ206、センサ208、GPS受信機210、セルラ送受信機212、Bluetooth送受信機216、およびワイヤレス送受信機214を含みうる。デバイスは、任意の他のハードウェア、ソフトウェア、プロセッサ、メモリ、送受信機、および/またはグラフィカルユーザインタフェースを含みうる。
【0049】
図1に関して説明したように、コンピューティングデバイス200は、ペットが着用するかまたは別様にて持ち運ぶように設計されたクライアントステーション102でありうる。デバイス200は、3軸加速度計などの1つ以上のセンサ208を含む。1つ以上のセンサは、例えばGPS受信機210と組み合わせて使用することができる。GPS受信機210はセンサ208とともに使用することができ、これらは、デバイス200を監視して、例えばその位置(GPS受信機210を介して)およびその加速度(センサ208を介して)を識別する。単一の構成要素として図示されているが、センサ208およびGPS受信機210は、代替的に、同様の機能を提供する複数の構成要素をそれぞれ含んでいてもよい。
【0050】
センサ208およびGPS受信機210は、本明細書でより詳細に説明されるように、データを生成し、プロセッサ202を介して他の構成要素にデータを送信する。代替として、または前述と併せて、センサ208およびGPS受信機210は、短期記憶のためにデータをメモリ204に送信することができる。メモリ204は、非一時的コンピュータ可読媒体、ハードディスクドライブ(HDD)、RAM、フラッシュメモリ、または他の適切なメモリなどの不揮発性記憶媒体または任意の他の適切なストレージデバイスでありうる。
【0051】
代替としてまたは前述と併せて、センサ208およびGPS受信機210は、データを不揮発性ストレージ206に直接に送信することができる。この実施形態では、プロセッサ202は、メモリ204からのデータ(例えば、位置および/またはプローブデータ)にアクセスすることができる。幾つかの実施形態では、不揮発性ストレージ206は、固体ストレージデバイス(例えば、「フラッシュ」ストレージデバイス)または従来のストレージデバイス(例えば、ハードディスク)を含みうる。
図2は、メモリ204および不揮発性ストレージ206の両方を示しているが、この2つは、メモリまたは不揮発性記憶媒体の一方として称される1つのメモリ構成要素に組み合わせることができる。具体的には、GPS受信機210は、位置データ(例えば、緯度、経度など)をプロセッサ202、メモリ204、または不揮発性ストレージ206に同様の方法で送信することができる。
【0052】
図2に示されているように、デバイス200は、セルラ送受信機212、ワイヤレス送受信機214、およびBluetooth送受信機216を含む複数のネットワークインタフェースを含みうる。セルラ送受信機212は、デバイス200が任意の無線アクセスネットワークを介してデータ、情報、またはアラートをサーバまたはモバイルデバイスに送信することを可能にする。さらに、プロセッサ202は、検出されたネットワーク状態に基づいて、セルラ送受信機212、ワイヤレス送受信機214、およびBluetooth送受信機216を使用して送信または受信されたデータのフォーマットおよびコンテンツを決定することができる。送受信機212、214、216は、それぞれ独立して、送信機、受信機、または送信機および受信機の両方、または送信および受信の両方のために構成されうるユニットもしくはデバイスでありうる。送信機および/または受信機(無線部分に関する限り)は、デバイス自体には位置せず、例えばマスト(mast)内に位置する遠隔無線ヘッドとして実装することもできる。ワイヤレス送受信機214は、
図4に示されているように、WLANのAPにプローブ要求を送信し、プローブ応答を受信するために使用されうる。
【0053】
図3は、特定の非限定的な実施形態によるクライアントステーションの別の例を示している。
図3に示されているように、クライアントステーション102などのデバイス300は、GPS受信機302、ジオフェンス検出器304、センサ306、ストレージ308、CPU310、およびネットワークインタフェース312を含みうる。GPS受信機302、センサ306、ストレージ308、およびCPU310は、それぞれ、GPS受信機210、センサ208、メモリ204/不揮発性ストレージ206、またはプロセッサ202と同様でありうる。ネットワークインタフェース312は、
図2に示されているような送受信機212、214、216のうちの1つ以上に対応することができる。デバイス300はまた、バッテリ、AC電源、または任意の他の電源などの1つ以上の電源を含みうる。デバイス300はまた、バッテリを充電するために使用されうる充電ポートを含みうる。充電ポートは、例えば、タイプAユニバーサルシリアルバス(「USB」)ポート、タイプB USBポート、ミニUSBポート、マイクロUSBポート、または任意の他のタイプのポートでありうる。幾つかの他の非限定的な実施形態では、デバイス300のバッテリは、ワイヤレスで充電することができる。
【0054】
図示の実施形態では、GPS受信機302は、デバイス300に関連する位置データを記録し、これには、デバイス300の位置を時間の関数として表す多数のデータポイントが含まれる。GPS受信機302は、デバイス300の位置に基づいてオンおよびオフにすることができる。例えば、デバイス300がジオフェンス位置またはゾーンを出る際に、GPS受信機302をオンにすることができ、受信されたGPS座標をサーバまたはモバイルデバイスに送信することができる。
【0055】
一実施形態では、ジオフェンス検出器304は、既知のジオフェンスゾーンに関する詳細情報を記憶する。例えば、ジオフェンス検出器304は、複数の多角形ジオフェンスに関する複数の緯度点および経度点を記憶することができる。緯度点および/または経度点または座標は、ユーザによって手動で入力することができ、かつ/またはウェアラブルデバイスによって自動的に検出することができる。代替的な実施形態では、ジオフェンス検出器304は、既知のWLANの既知のSSIDの名前を記憶し、SSIDの各々をジオフェンスに関連付けることができる。非限定的な一実施形態では、ジオフェンス検出器304は、SSIDに加えて、デバイス300がジオフェンスゾーンを出た場合を判定するための1つ以上の閾値を記憶することができる。別個の構成要素として示されているが、幾つかの実施形態では、ジオフェンス検出器304は、例えばソフトウェアモジュールとしてCPU310内に実装することができる。
【0056】
1つの非限定的な実施形態では、GPS受信機302は、緯度および経度のデータを、ストレージ308を介してジオフェンス検出器304に送信することができ、または代替的にCPU310を介して間接的にストレージ308に送信することができる。ジオフェンスは、所与のペットのために画定された仮想フェンスまたはセーフスペースでありうる。ジオフェンスは、緯度および/または経度の座標に基づいて、かつ/または所与のWLAN接続信号の境界によって画定されうる。例えば、ジオフェンス検出器304は、デバイス300の現在位置を表す緯度および経度のデータを受信し、デバイス300がジオフェンスゾーン内にあるかまたはジオフェンスゾーンから出たかを判定する。デバイス300がジオフェンスゾーンを出たとジオフェンス検出器304が判定した場合、ジオフェンス検出器304は、さらなる処理のために通知または指示をCPU310に送信することができる。通知がCPU310によって処理された後、通知または指示は、直接にまたはサーバを介してモバイルデバイスに送信可能となる。
【0057】
代替的に、ジオフェンス検出器304は、ネットワークインタフェース312に問い合わせて、デバイス300がWLANネットワークに接続されているかどうかを判定することができる。その際、デバイス300は、WLAN内のAPにプローブ要求を送信し、APからのプローブ応答の受信を待機することができる。この実施形態では、ジオフェンス検出器304は、現在のWLANのSSID(またはその欠如したSSID)と既知のSSIDのリストとを比較することができる。既知のSSIDのリストは、ユーザによって過去に承認されたWLAN接続に基づきうる。ユーザは、例えば、所与のウェアラブルデバイスのためのセットアッププロセス中にホームジオフェンス位置またはゾーンとしてSSIDを承認するように求められうる。別の例では、既知のSSIDのリストは、ユーザのモバイルデバイスに既知であるWLAN接続に基づいて、自動的に入力されうる。デバイス300が既知のSSIDに現在接続されていることをジオフェンス検出器304が検出しなかった場合、ジオフェンス検出器304は、デバイスがジオフェンスゾーンを出たとの通知をCPU310に送信することができる。
【0058】
これに代えてまたはこれに加えて、ジオフェンス検出器304は、WLANネットワークの強度を受信し、WLAN接続の現在の強度が所定の閾値内であるかどうかを判定することができる。信号強度はSSIの形態をとることができ、クライアントステーション102において受信されるプローブ応答に含めることができる。特定の非限定的な実施形態では、クライアントステーションが既知のWLAN接続の存在下にあると判定されたとき、これは、クライアントステーションが所与のアクセスポイントの送信範囲内にありうることを意味し、クライアントステーションが低電力モードに置かれうることを意味する。低電力モードは、クライアントステーションのバッテリの保護に役立ちうる。WLAN接続が所定の閾値の外側にある場合、ウェアラブルデバイスは、ジオフェンスの外縁の境界に近づいている可能性がある。ネットワーク強度閾値を超えたときに通知を受信することにより、ユーザは、ペットがジオフェンスから出ようとしているとの先制的な警告を受信することができる。
【0059】
図3に示されているように、デバイス300は、ストレージ308をさらに含む。一実施形態では、ストレージ308は、デバイス300によって検知または受信されたデータを一時的にまたは確実に記憶することができる。例えば、ストレージ308は、プローブ応答内に含まれる情報を記憶することができる。他の非限定的な実施形態では、過去に検知および/または受信されたデータをストレージ308に記憶する代わりに、デバイス300は、
図1に示されているサーバ106などのサーバのデータベースに記憶されるべきデータを送信することができる。
【0060】
図4Aは、特定の非限定的な実施形態によるデータベースを示している。データベース400は、
図1に示すモバイルデバイス104の不揮発性ストレージ内に位置することができる。データベース400は、イベントマネージャ(EVTMGR)と称されうる。クライアントステーション102またはモバイルデバイス104は、データベースからデータを読み出し、書き込み、または消去することができる。例えば、モバイルデバイス104は、データベースからデータを読み出し、かつ/または読み出したデータをサーバ106に周期的または非周期的にアップロードすることができる。他の例では、モバイルデバイス104は、ペットの活動データ、デバッグロギング、スキャンアルゴリズムに関連付けられた較正データ、および/または任意の他の利用可能なデータなどのデータをデータベース106に書き込むことができる。特定の実施形態では、データベース400は、不揮発性ストレージに含まれ、そこに記憶されたデータの管理に役立ちうる。代替として、データベースは、任意の他のハードウェアまたはクラウドベースのメモリ内で動作するか、またはそこに含まれうる。
図4Aに示している例示的な実施形態では、データベース400は、ステータスブロック410、ブロックポインタ420、および/またはデータブロック430を含みうる。幾つかの実施形態では、データベース400の構成要素の各々は、不揮発性メモリ内に予約セクションを有しうる。
【0061】
図4Bは、特定の非限定的な実施形態によるデータベースを示している。特に、
図4Bは、
図4Aに示されているデータベースの詳細な例を示している。データベース400は、組み込みシステムにおいて使用されうる超低フットプリントのストレージシステムでありうる。データベース400は、不透明データブロックなどのデータブロックを循環的な先入れ先出し(FIFO)方式で不揮発性メモリに書き込み、読み出し、消去することをサポートする。特定の実施形態では、データベース内に含まれるデータは、書き込まれた順序で読み出すことができる。かかる実施形態は、データベースによって使用されるリソースの量を低減しうる簡略化構成の提供に役立ちうる。
【0062】
データベース400のデータブロック430は、1つ以上のデータブロックを含みうる。ブロックの総数は「N」と称されうる。データブロックは、不揮発性メモリ内の任意の場所に存在するバイトの連続ストリングでありうる。特定の実施形態では、データは、いかなるメタデータも伴わなくてよい。むしろ、例えば、データブロック長さ、データブロックを検証するためのチェックサム、データブロックのアドレス、または任意の他の形式のメタデータを含みうるメタデータを、ブロックポインタ420に保持することができる。ブロックポインタ420は、1つ以上のブロックポインタを含みうる。
図4Bは、例えば、7つのブロックポインタを示している。単一のブロックポインタは、単一のデータブロックに対するメタデータを保持することができる。メタデータは、データのアドレス、データ長さ、および/またはチェックサムを含むことができ、チェックサムは、データの完全性を検証するために使用することができる。特定の実施形態では、データは256バイトの長さを有しうる。他の実施形態では、データ長さは、256バイトより大きくても小さくてもよい。
【0063】
ステータスブロック410は、データベースの先頭および末尾の状態を保持するために使用することができる。換言すれば、ステータスブロック410は、ブロックポインタ420へのポインタでありうる。ステータスブロック410は、ストレージシステムがどの場所から読み出され、かつ/またはどの場所に書き込まれうるかの高レベルのピクチャを提供する。特定の非限定的な実施形態では、読み出しまたは書き込みブロックポインタアドレスの新しいまたは更新されたコピーを保持することができる。読み出しポインタアドレスは、
図4Bにおいてテールptrとして示されているテールポインタアドレスに保持することができ、書き込みポインタアドレスは、
図4Bにおいてヘッドptrとして示されているヘッドポインタアドレスに保持することができる。換言すれば、ヘッドポインタのアドレスで次の利用可能なブロックにデータを書き込み、テールポインタのアドレスで次の利用可能なブロックまたは最も古いデータブロックにデータを読み出すことができる。
【0064】
ユーザまたはクライアントステーションが不透明データブロックを記憶することを望む場合、すなわちクライアントステーションがデータベース400にデータを書き込みたい場合、クライアントは、データ長とともにデータをデータベース400に送信することができる。次いで、ステータスブロック410は、チェックサムを計算し、次の利用可能な空きメモリアドレスを取得し、不揮発性記憶媒体またはメモリにデータを書き込むことができる。不揮発性メモリが完全に一杯である場合、最も古いデータブロックを上書きし、対応するブロックポインタを更新することができる。次いで、ステータスブロック410は、データに対するブロックポインタを構築し、構築されたブロックポインタをブロックポインタ420に書き込むことができる。ブロックポインタメモリが一杯である場合、最も古いブロックポインタを上書きすることができ、対応するデータを消去することができる。次いで、ステータスブロック410は、新しいヘッドポインタを反映するように更新することができる。
【0065】
他の特定の非限定的な実施形態では、クライアントステーションは、例えば、サーバにアップロードを行うときに、データベース400からデータを読み出すことができる。ステータス410の読み出しアドレスまたはテールアドレスは、最も古い読み出しブロックポインタがどの場所に位置するか、または最も古い読み出しブロックをどの場所から取得することができるかを示すことができる。このアドレスを使用して、ステータスブロック410は、読み出すべき第1のブロックポインタを特定することができる。ブロックポインタ420内のメタデータを使用して、データブロックは、取得したアドレスにおいて、ブロックポインタ内で指定された長さまで読み出すことができる。次いで、データは、完全性を確認するためにそのチェックサムについて検証され、クライアントステーションに戻されうる。クライアントステーションがサーバへのデータのアップロードに成功した場合、クライアントステーションはデータベース400に通知を送信することができる。通知を送信することは、消去を実行することと同様でありうる。データベース400は、ステータスブロック410内のテールポインタを進めることができ、これによって、ブロックポインタが関連付けられているデータの追跡を失う。特定の実施形態では、データの上記の読み出しは、全てのデータが読み出されるまで、またはクライアントステーションがその所望の数の記憶されたバイトを読み出すまで、ループを続けることができる。
【0066】
例えば、クライアントステーションは、記憶されたデータをサーバに周期的にアップロードすることができ、その結果、サーバは、ペットの活動、位置、および/または使用統計などの関連データを、携帯電話アプリケーションを介してユーザに提示することができる。周期的に、クライアントステーションは、サーバへの接続を確立し、データベース内のクライアントステーションが利用可能なデータの一部または全部をサーバに送信することができる。サーバは、例えばHTTPステータスコード200を使用して、通知を介して送信が成功したことを確認することができる。通知が受信されると、データは正常に消費されたものとして扱われ、ブロックポインタが進められる。ブロックポインタを進めることにより、記憶されたデータを消去または効果的に消去することができ、新しいデータのためにクライアントステーションの不揮発性メモリ上の空間を解放することができる。
【0067】
特定の実施形態では、データブロックを読み出し、次いで、データブロックを指し示していたブロックポインタアドレスを前方に移動させる結果として、データまたはメタデータの消去が生じうる。換言すれば、データベース400のFIFOの性質のために、消去は単にステータスブロック内のテールポインタを進めることを含みうる。
【0068】
図5は、特定の非限定的な実施形態による、クライアントステーションおよびアクセスポイントを有するシステム図を示している。クライアントステーション510は、
図2に示したクライアントステーション210と同様であってよい。幾つかの例では、クライアントステーション510は、ペットまたは動物の首輪に取り付けられうるポータブルウェアラブルデバイスでありうる。クライアントステーション510は、媒体アクセス制御(MAC)および/または物理層(PHY)インタフェースを含むことができ、これらは、プローブ要求を送信し、WLANを介してAPからプローブ応答を受信またはリッスンするために使用される。AP520は、例えば、WLANのためのネットワークルータまたは基地局でありうる。WLANは、IEEE802.11規格または同等の規格によって定義されうる。
【0069】
図5および以下の説明は2.4GHz無線周波数帯域に焦点を当てているが、以下の実施形態のいずれも、少なくともIEEE802.11(n)または(ac)プロトコルに記載されているように、5GHz帯域を利用することもできる。2.4GHz帯域では、WLANは14個の異なるチャネルに制限される。
図5に示されているように、2.4GHz帯域は、2.402~2.483GHzの無線周波数に及びうる。チャネルの各々は、20メガヘルツ(MHz)幅とすることができ、チャネル中心は、チャネル重複を回避するために5MHzだけ分離されている。チャネル重複を回避することによって、WLANは、隣接チャネルの使用によって引き起こされる有害な信号干渉の抑制に役立ちうる。したがって、2.4GHz帯域は、最大で3個の重複しないチャネルであるチャネル1、6および11を提供することができる。一方、5GHz帯域は、より広い周波数範囲を提供し、24個もの重複しないチャネルを提供することができる。
【0070】
WLANと通信するために、クライアントステーション510は、WLANの1つ以上のチャネル上でAP520にプローブ要求を送信する。プローブ要求は、プローブ要求フレームとも称され、クライアントステーション510から送信される特定のWLANフレームとすることができ、単一のAP520または所与のエリア内の全てのAPからの情報を要求する。次いで、クライアントステーション510は、AP520からプローブ応答を受信するために、スキャン間隔と称される有限の時間期間にわたって待機またはリッスンすることができる。AP520からクライアントステーション510において受信されるプローブ応答は、SSI、プローブ応答成功率、またはプローブ応答が受信されたチャネルの識別情報など、WLANまたはAPに関連する任意の情報を含みうる。プローブ応答は、換言すれば、APとの通信を開始するためにクライアントステーションによって使用される同じ情報の一部を含みうる。
【0071】
特定の非限定的な実施形態は、スキャン時間間隔を低減または最小化する一方で、プローブ要求が送信されるチャネルの数も低減または最小化することを目的とする。そうすることで、プローブ要求および応答を送信および受信することに関連付けられたネットワークリソースも低減しながら、クライアントステーションにおけるバッテリ使用量を低減することに役立ちうる。加えて、スキャン間隔およびプローブ要求が送信されるチャネルの数を低減することは、クライアントステーションの位置を識別するための実行時間、ならびにWLANと通信するためにクライアントステーションによって費やされる時間を低減することに役立ちうる。これは、クライアントステーションによって使用されるネットワーク帯域幅リソースを制限しながら、クライアントステーションのバッテリ寿命を延ばすことに役立ちうる。以下で説明するように、クライアントステーションによって使用されるスキャン間隔およびチャネルのサブセットは、クライアントステーションによってアクセスされうるデータベースに記憶された過去の情報に基づいて決定されうる。
【0072】
図5に示されているように、クライアントステーション510は、プローブ要求フレームを周期的に送信し、AP520または所与のWLAN内に位置する特定のAPからのプローブ応答を、設定された時間量の間、リッスンすることができる。クライアントステーションの観点からスキャンの実行に費やされる電力および総時間を低減するために、プローブ要求が送信されるWLANチャネルを低減することができる。さらに、APからのプローブ応答のリッスンに費やされる時間量であって、スキャン時間間隔(STI)またはスキャン間隔としても知られる時間量を低減することができる。
【0073】
図6は、特定の非限定的な実施形態によるシステムまたは方法を説明するシステムフロー図を示している。幾つかの実施形態では、
図6に示されている方法は、いかなるユーザインタラクションも伴わずに動作可能である。これは、本方法がユーザによって検出されない場合があることを意味する。610に示すように、
図6においてSTAと称されるクライアントステーションは、自身がバッテリ充電器に接続されているかどうかを判定することができる。620に示されているように、スキャン間隔の較正は、クライアントステーションがバッテリ充電器などの充電源に接続されている間に行うことができる。クライアントステーションが充電源に接続されている間に較正することは、充電から次の充電までの間にデバイスがバッテリの較正から受ける影響を低減することに役立つ。しかしながら、幾つかの他の実施形態では、スキャン時間間隔はまた、クライアントステーションが充電中でないときに較正することができる。これにより、クライアントステーションが、充電ステーションの近傍内に位置しないAPを明らかにすることが可能となる。
【0074】
スキャン時間間隔を較正することは、WLANの所与のチャネル上でAPから送信されるプローブ応答をクライアントステーションがリッスンする時間量を決定することを意味しうる。スキャン間隔は、WLAN内の所与のチャネルに固有であってよく、または所与のSSIDに固有であってもよい。特定のSSIDをスキャンする場合、クライアントステーションは、どの特定のAPがクライアントステーションの範囲内にあるかを知ることなく、クライアントステーションが較正されるSSID内の全てのAPの中で最も高いスキャン時間間隔を採用することができる。例えば、最も高いスキャン時間間隔は、200ミリ秒(ms)、500ms、1秒、または5秒でありうる。他の例では、最も高いスキャン時間間隔は、200msより短くてよく、または5秒より長くてよい。スキャン時間間隔に関連する情報は、APごとまたはBSSIDごとに収集および/または記憶されうる。
【0075】
幾つかの非限定的な実施形態では、較正は、デバイス動作が可能にする限り頻繁に行われてよく、一方、他の実施形態では、較正は、所与の期間に対して有限回数に限定されてもよい。例えば、較正は、1日1回、1日おきに1回、または1週間に1回行うことができる。スキャン時間間隔の較正の目的は、統計的に有意な数の試行を前提として、プローブ応答がAPからクライアントステーションにおいて受信される成功率において漸近線に到達するように、最小スキャン間隔を決定することでありうる。
【0076】
かかる漸近線の例を
図7に示している。特に、
図7は、特定の実施形態によるスキャン時間間隔チャートを示している。破線710は、プローブ応答成功率が横ばいになる漸近線のポイントをマーキングするために使用することができる。プローブ応答成功率が横ばいになるスキャン間隔時間は、クライアントステーションによって使用される決定されたスキャン間隔時間として機能しうる。換言すれば、SSIDに関連付けられたスキャン時間間隔を決定することは、スキャン時間間隔の較正を含みうる。
【0077】
図6に示されている特定の非限定的な実施形態では、クライアントステーション610が充電中であり、バッテリ電力のみで動作していないときに、スキャン時間間隔の較正620が行われうる。スキャン時間間隔の較正は、高スキャン時間間隔を使用してマルチチャネルスキャンを実行することを含みうる。マルチチャネルスキャンは、WLANのSSID内の複数のチャネルにプローブ要求を送信することを含みうる。初期の高スキャン時間間隔は、ベースラインプローブ応答成功率の確立に役立ちうる。マルチチャネルスキャンの結果は、データベースに記憶することができる。マルチチャネルスキャンは2回以上繰り返すことができる。例えば、マルチチャンネルスキャンは3回以上繰り返すことができる。
【0078】
実行されたマルチチャネルスキャンのいずれかの間にAPが応答しなかった場合、較正を行うことはできない。一方、APが少なくとも1回応答した場合、クライアントステーションはマルチチャネルスキャンを実行し続けることができる。幾つかの例では、APが応答した場合、特定のAPを対象とする10回以上のマルチチャネルスキャンが実行されうる。実行される各マルチチャネルスキャンに対して、クライアントステーションは、クライアントステーションで受信されたプローブ応答を追跡するか、またはデータベースに記憶することができる。プローブ応答は、例えば、受信信号強度インジケータ(RSSI)などの信号強度情報、プローブ要求が送信された後に応答が受信されたかどうかを意味するプローブ成功率、および/またはプローブ応答が受信されたチャネルの識別情報のうちの少なくとも1つを含みうる。クライアントステーションは、プローブ成功率だけでなく、成功率の標準偏差などの他の指標も計算することができる。
【0079】
プローブ応答内に含まれる上記の情報および/または計算された成功率の指標は、サーバに送信され、データベースに記憶することができる。記憶された情報にアクセスして、SSIDに関連付けられたスキャン時間間隔を決定することができる。例えば、特定の非限定的な実施形態では、二分探索を実行してスキャン時間間隔を決定することができる。二分探索は、クライアントステーションおよび/またはデータベースを含むサーバによって実行することができる。二分探索は、ハーフインターバル探索(half-interval search)またはバイナリチョップ(binary chop)としても知られ、プローブ応答成功率のソートされたリスト内で標的値を見出すために使用される探索方法でありうる。特に、二分探索は、リストが許容可能な成功率レベルで最適または最小のスキャン時間間隔に絞り込まれるまで、目標のスキャン時間間隔を含みうるリストのプローブ応答成功率の部分を繰り返し半分に分割するように作用することができる。
【0080】
二分探索は、信号強度情報またはプローブ応答成功率のうちの少なくとも1つに基づきうる。二分探索が較正の一部として実行されると仮定すると、特定の実施形態では、二分探索は、クライアントステーションが充電中であるときに実行することができる。二分探索を使用して、成功率が過去に達成された成功率から50%以下となるスキャン間隔が識別されるまで、クライアントステーションによってマルチチャネルスキャンが繰り返されうる。クライアントステーションがマルチチャネルスキャンを使用してデータを収集し続けている間、二分探索を実行することができる。データの収集中、クライアントステーションは、より高い成功率を有する二分探索の側を支持し続けることができる。所与の成功率に関連するスキャン時間間隔が過去に使用されたスキャン時間間隔の0.5以内の成功率と同様の標準偏差を有することが判明した場合、クライアントステーションまたはサーバは、かかるスキャン時間間隔を決定または選択することができる。
【0081】
所与のスキャン間隔が選択されると、選択されたスキャン間隔と、低い成功率または失敗した成功率を有した最も低いスキャン間隔とに着目して、二分探索を継続することができる。換言すれば、二分探索は、スキャン時間間隔がさらに短縮または最小化されうるかを判定しようと試みることができる。特定の非限定的な実施形態では、2つの二分探索ノードの標準偏差と成功率との間の差が発散し始めると、クライアントステーションまたはサーバは、最後に選択されたスキャン時間間隔が使用されうる最小スキャン間隔であると判定することができる。換言すれば、クライアントステーションまたはサーバは、
図7に示されているように、最後に選択されたスキャン時間間隔が成功率の漸近線を反映していると判定することができる。
【0082】
スキャン時間間隔の較正の結果は、
図6のステップ630に示されているように、データベースに記憶することができる。較正の結果は、決定されたスキャン時間間隔、平均プローブ応答成功率、プローブ応答成功率の標準偏差、平均信号強度、および/もしくは信号強度の標準偏差、または任意の他の指標のうちの1つ以上を含みうる。スキャン時間間隔を決定することに加えて、特定の実施形態はまた、プローブ要求が送信されうるチャネルのサブセットを決定することができる。ステップ640に示されているように、クライアントステーションは、データベースから履歴結果および関連する計算を引き出すことを試みうる。データベースが履歴結果または十分な数の履歴結果を含まない場合、ステップ650に示されているように、チャネル学習方法を実行して、チャネルのサブセットを選定、選択、または決定することができる。特定の実施形態では、チャネル学習方法は、スキャン時間間隔の較正の前に実行することができ、他の非限定的な実施形態では、チャネル学習方法は、スキャン時間間隔の較正の後に実行することができる。
【0083】
上記で説明したように、2.4GHzのWLAN無線周波数帯域は、APがプローブ要求を受信し、かつ/またはプローブ応答を送信することができる14個の異なるチャネルを含みうる。幾つかの非限定的な実施形態では、APは、WLANチャネル間で切り替えることができる。クライアントステーションが所与のAPによって使用されていないチャネル上でプローブ要求を送信した場合、クライアントステーションは、所与のAPからプローブ応答を受信しない。加えて、複数のAPが同じSSIDを共有する場合、これは、複数のAPがWLANの同様のエリア内に位置し、各APは異なるチャネルを使用しうることを意味する。本明細書で開示している特定の実施形態は、特定のSSIDを探索する際にスキャンするための最良の1つ以上のチャネルを動的に適応させ、学習することができるシステムまたは方法を提供する。特定の実施形態では、チャネルスキャンは、特定のSSIDについて実行されうるが、他の実施形態では、チャネルスキャンは、APごとまたはBSSIDごとに実行されうる。
【0084】
図8は、特定の実施形態によるWLANチャネル810のチャートを示している。
図8は2.4GHz帯域を使用するWLANの例を示しているが、特定の他の実施形態では5GHz帯域を使用することができる。上記で説明したように、2.4GHz無線周波数帯域を使用するWLANは、APがそれを介して通信しうる14個の可能なチャネルを有しうる。
図8に示されているヒストグラムから分かるように、14個の可能なチャネルが存在する。300個のプローブ応答がチャネル1を介して受信され、200個のプローブ応答がチャネル6を介して受信され、275個のプローブ応答がチャネル11から受信され、さらに40個の応答がチャネル8で受信された。ヒストグラムは、クライアントステーションがチャネル1、6および11上でのみ送信すべきであることを示唆しているが、チャネル8で受信された応答を考慮することは有益でありうる。例えば、最後の40回の発生が全てチャネル8上でAPから送信されていれば、クライアントステーションは、チャネル1、6または11ではなくチャネル8を介してプローブ要求を送信すべきことが示唆されうる。本明細書で説明する実施形態は、チャネルの全てを動的に考慮することができ、これには、APによって示されている任意のチャネル傾向が含まれる。
【0085】
特定の非限定的な実施形態では、
図6のステップ650に示されているチャネル学習システム、プロセス、または方法が、循環バッファを利用することができる。例えば、「K」は、ローリングまたは循環先入れ先出し(FIFO)バッファ内の要素の数とすることができ、チャネル発生ヒストグラムの構築に使用することができる。「K」は任意の数であってよいが、以下に論じる特定の実施形態では、Kは150の値として仮定されうる。
【0086】
観測されたチャネルは、データベースに含まれるFIFOバッファに記憶されうる。バッファが一杯である場合、バッファ内に含まれる最も古い要素を廃棄することができる。この要素は、クライアントステーションでプローブ応答を受信したチャネルの識別情報を参照することができる。幾つかの非限定的な実施形態では、スキャンが成功したときにバッファに新しい要素を移入することができ、これは、プローブ応答がクライアントステーションで受信されたことを意味する。チャネルのサブセットは、バッファに記憶されたチャネルのうちの最新のチャネルまたは最も多く発生しているチャネルのうちの少なくとも1つに基づいて決定されうる。決定されたチャネルのサブセットは、1つ以上のチャネルを含みうる。2.4GHz帯域では、チャネルのサブセットは1~14個のチャネルを含むことができ、これらは最大3個の重複しないチャネルを含みうる。一方、5GHz帯域では、チャネルのサブセットは、24個の重複しないチャネルを含みうる。
【0087】
1つ以上の基準を使用して、バッファに記憶されたチャネルのうちの最新のチャネルまたは最も多く発生しているチャネルを決定することができる。例えば、特定の実施形態では、チャネルがバッファ内にK/2回発生した場合、そのチャネルは最新のチャネルまたは最も多く発生しているチャネルとみなすことができる。例えば、発生が150回のバッファにおいてチャネル6が75回以上発生する場合、チャネル6は最も発生頻度の高いチャネルとみなすことができる。かかる実施形態では、クライアントステーションは、チャネル6が最も多く発生するチャネルであると判定された場合、チャネル6上でのみプローブ要求を送信することを選択することができる。別の例では、K/5以上の発生を有する任意のチャネルをサブセットに含めることができる。例えば、チャネル1、6および11はそれぞれバッファ内に50回発生する場合がある。かかる実施形態では、クライアントステーションは、チャネルのサブセットがチャネル1、6および11であると判定し、これら3つのチャネル上でのみプローブ要求を送信することができる。上記の基準を満たすチャネルがない場合、クライアントステーションは、サブセットスキャンを完全に行わずにマルチチャネルスキャンを実行することを選択することができる。これは、クライアントステーションが全てのチャネル上でプローブ要求を送信することを意味する。換言すれば、1つ以上の基準が満たされない場合、特定の実施形態では、チャネルのサブセットを選択することができず、クライアントステーションはマルチチャネルスキャンを実行することができる。
【0088】
チャネルのサブセットおよび/またはスキャン間隔が決定されると、クライアントステーションは、ステップ660に示すように、決定されたチャネルのサブセットおよび/またはスキャン間隔に基づいてスキャンを実行することができる。スキャンは、所与のAPがクライアントステーションの範囲内に位置するかどうかの判定に役立ちうる。換言すれば、クライアントステーションは、スキャンを使用して、クライアントステーションが所定のジオフェンスゾーン内または所定のジオフェンスゾーン外に位置することを確認することができる。
【0089】
クライアントステーションがジオフェンスゾーンの外側に位置すると判定された場合、クライアントステーションが所定のジオフェンスゾーンから出たとの指示が、モバイルデバイス、ユーザ機器、またはその中に含まれるウェブベースのアプリケーションに送信されうる。指示は、ユーザ機器のグラフィカルユーザインタフェース、スピーカ、または振動デバイスを通して発せられる任意の形態の通知でありうる。例えば、指示は、モバイルデバイスまたはユーザ機器のグラフィカルユーザインタフェース上に表示されるアラートでありうる。さらに別の例では、指示は、モバイルデバイスのスピーカを通して発せられる音でありうる。特定の非限定的な実施形態では、クライアントステーションがジオフェンス位置またはゾーンを出たとの指示は、クライアントステーションに反映されうる。例えば、クライアントステーション内に位置する照明デバイスをオンにすることができる。照明デバイスは、発光ダイオード(LED)を含みうる。
【0090】
図9は、特定の非限定的な実施形態によるフロー図を示している。特に、
図9は、
図6のステップ620に示されているように、クライアントステーションが充電中にスキャン時間間隔を決定することを示している。ステップ910において、サーバまたはクライアントステーションは、スキャン時間間隔を較正するプロセスを開始するか、または始めることができる。ステップ920において、クライアントステーションは、高スキャン時間間隔を使用してマルチチャネルスキャンを実行して、高ベースラインプローブ応答成功率を確立することができる。マルチチャネルスキャンは、2回以上繰り返すことができる。ステップ930において、クライアントステーションは、APからプローブ応答を受信したかどうかを評価することができる。受信されなかった場合、較正を終了することができる。プローブ応答が受信された場合、ステップ940に示されているように、高スキャン時間間隔でマルチチャネルスキャンを「N」回実行することができる。ステップ950では、高ベースラインスキャン時間間隔の結果に伴って発散する成功率および標準偏差を有する最小のスキャン時間間隔について、二分探索を実行することができる。次いで、決定されたスキャン時間間隔の結果を、APごとにまたはBSSIDごとにデータベースに記憶することができる。
【0091】
図10は、特定の非限定的な実施形態によるフロー図を示している。特に、
図10は、
図6のステップ650に示されているようなチャネル学習システムを使用してチャネルのサブセットを決定することを示している。ステップ1010において、プローブ要求送信のためのチャネルサブセットを選択するプロセスを開始することができる。ステップ1020において、長さKを有するFIFOチャネル循環バッファを使用して、最後に観測されたチャネルまたは最も多く観測されたチャネルを決定することができる。次いで、ステップ1030に示されているように、クライアントステーションまたはサーバは、所与のチャネルがバッファ内にK/2回以上発生するかどうかを判定することができる。K/2回以上発生した場合、ステップ1040に示されているように、所与のチャネルは、チャネルサブセットに含まれる唯一のチャネルでありうる。そうではない場合、ステップ1050に示されているように、そのチャネルは、チャネルのサブセットに含めることができる。ステップ1060において、クライアントステーションまたはサーバは、チャネルのいずれかがバッファ内でK/5回以上発生するかどうかを判定することができる。K/5回以上発生した場合、ステップ1070に示されているように、K/5基準を満たすチャネルの全てをサブセットに含めることができる。そうでなく、上記基準のいずれも満たされない場合、クライアントステーションは、単にマルチチャネルスキャンを実行することができる。
【0092】
図11は、特定の非限定的な実施形態によるフロー図を示している。ステップ1110において、所与のSSID内のAPが範囲内にあるかどうかを判定するためのプロセスを開始することができる。クライアントステーションは、WLANのSSIDを検知または検出することができる。ステップ1120において、クライアントステーションは、メモリまたはメモリ内に位置するデータベースから較正されたパラメータを引き出すことができる。換言すれば、クライアントステーションは、データベースに記憶された情報にアクセスすることによって、WLAN内のチャネルのサブセットを決定することができる。クライアントステーションはまた、データベースに記憶された情報にアクセスすることによって、SSIDに関連付けられたスキャン時間間隔を決定することができる。ステップ1130において、SSIDを使用してプローブ要求を構築することができる。次いで、プローブ要求が、決定されたチャネルサブセットを介して送信されうる。換言すれば、プローブ要求は、ステップ1140に示されているように、チャネル学習方法を使用して決定されたチャネルサブセット上で送信することができる。
【0093】
ステップ1150において、クライアントステーションは、プローブ応答がAPから受信されたかどうかを評価することができる。決定されたスキャン時間間隔中にプローブ応答がAPからクライアントステーションにおいて受信された場合、ステップ1170に示されているように、プローブ応答は、クライアントステーションによってデータベースに記憶されうる。プローブ応答が受信されなかった場合、マルチチャネルスキャンは、高スキャン時間間隔を使用してクライアントステーションによって実行されうる。
【0094】
特定の非限定的な実施形態では、ワイヤレスアクセスネットワーク内に位置するAPは、チャネルのサブセットを通して、クライアントステーションからプローブ要求を受信することができる。APはまた、スキャン時間間隔中にクライアントステーションにプローブ応答を送信することができる。プローブ応答は、クライアントステーションがジオフェンスゾーンの内側または外側にあることを確認するために使用されうる。
【0095】
図12(a)は、特定の実施形態によるプローブ応答チャートを示している。具体的には、
図12(a)は、クライアントステーションによって実行されるマルチチャネルスキャンを示しており、x軸は時間を表し、y軸は電力消費を表している。チャートから分かるように、全てのチャネル上でプローブ要求を送信するために大量の電力が消費されうるが、スキャン時間間隔またはプローブ応答リッスン時間は、長さが200ミリ秒(ms)でありうる。マルチチャネルスキャンは、プローブ要求の送信に1.8秒かけて平均475ミリワット(mW)を消費しうる。
【0096】
図12(b)は、特定の実施形態によるプローブ応答チャートを示している。具体的には、
図12(b)は、上記および
図1~
図11に開示したシステム、方法および装置を利用する実施形態を示している。
図12(b)に示されているように、プローブ要求は単一チャネルのみで送信することができ、スキャン時間間隔またはプローブ応答リッスン時間を25msに短縮することができる。上記の実施形態を使用することは、380msにわたって電力消費を平均360mWに低減することに役立ちうる。
【0097】
このように、上記で開示した実施形態は、クライアントステーションによって使用されるネットワークリソースを低減することによって、クライアントステーションおよびAP自体の両方の改善に役立つ。ネットワークリソースを低減することは、WLAN内のAPに対するクライアントステーションの位置を識別するために必要とされる時間およびバッテリリソースの量を低減することによって、クライアントステーションのバッテリ消費の低減に役立ちうる。一方、ネットワークの観点からは、クライアントステーションによって実行されるマルチチャネルスキャンの数を減らすことによって、リソースを節約することができる。これは、クライアントステーションがWLANのチャネルをプローブ要求で無差別にフラッディングすることの防止に役立ちうる。したがって、上記で説明したシステム、方法および装置は、クライアントステーション、AP、およびWLANネットワークの他の構成要素の機能に対する改善を提供することに役立つ。
【0098】
本開示の目的のために、モジュールとは、ソフトウェア、ハードウェア、もしくはファームウェア(またはこれらの組み合わせ)システム、プロセスもしくは機能、またはその構成要素であり、本明細書に記載したプロセス、特徴、および/または機能を(人間の相互作用または増強を伴って、または伴わずに)実行または促進するものである。モジュールはサブモジュールを含みうる。モジュールのソフトウェア構成要素は、プロセッサによる実行のためにコンピュータ可読媒体に記憶することができる。モジュールは、1つ以上のサーバに一体化することができ、または1つ以上のサーバによってロードおよび実行することができる。1つ以上のモジュールは、エンジンまたはアプリケーションにグループ化することができる。
【0099】
当業者は、本開示の方法およびシステムが多くの方法で実装可能であり、これにより前述の例示的実施形態および実施例によって限定されないことを認識するであろう。換言すれば、ハードウェアとソフトウェアまたはファームウェアとの種々の組み合わせで単一または複数の構成要素によって実行される機能要素および個々の機能は、クライアントレベルまたはサーバレベルのいずれかまたは両方で、ソフトウェアアプリケーション間に分散されうる。この点に関して、本明細書に記載した異なる実施形態の任意の数の特徴は、単一または複数の実施形態に組み合わせることができ、本明細書に記載した特徴の全てよりも少ない特徴または多い特徴を有する代替的な実施形態が可能である。
【0100】
機能はまた、現在既知であるかまたは既知となりつつある方式で、全体的にまたは部分的に複数の構成要素間に分散されうる。したがって、無数のソフトウェア/ハードウェア/ファームウェアの組み合わせが、本明細書で説明される機能、特徴、インタフェース、および選好を達成する際に可能である。さらに、本開示の範囲は、説明した特徴および機能およびインタフェースを実行するための従来から既知の方式と、当業者によって現在および今後理解される本明細書で説明したハードウェアまたはソフトウェアまたはファームウェア構成要素に対して行うことができる変形および修正とを包含する。
【0101】
さらに、本開示においてフローチャートとして提示および説明される方法の実施形態は、技術のより完全な理解を提供するために例として提供されたものである。開示の方法は、本明細書で提示している動作および論理フローに限定されない。種々の動作の順序が変更された代替の実施形態、ならびにより大きな動作の一部として説明されるサブ動作が独立して実行される代替の実施形態が企図される。
【0102】
本開示の目的のために種々の実施形態を説明してきたが、かかる実施形態は本開示の教示をこれらの実施形態に限定するものとみなされるべきではない。本開示に記載したシステムおよびプロセスの範囲内に留まる結果を得るために、上述した要素および動作に対して種々の変更および修正を行うことができる。
以下、本発明の好ましい実施形態を項分け記載する。
実施形態1
方法であって、
クライアントステーションにおいて、ワイヤレスアクセスネットワークのためのサービスセット識別子を検知するステップと、
データベースに記憶された情報にアクセスすることによって、前記ワイヤレスアクセスネットワーク内のチャネルのサブセットを決定するステップと、
前記データベースに記憶された情報にアクセスすることによって、前記サービスセット識別子に関連付けられたスキャン時間間隔を決定するステップと、
前記チャネルのサブセットを通して、前記ワイヤレスアクセスネットワーク内に位置するアクセスポイントにプローブ要求を送信するステップと、
前記スキャン時間間隔中に、前記アクセスポイントから前記クライアントステーションにおいてプローブ応答を受信するステップと、
前記プローブ応答に基づいて、前記クライアントステーションの位置を識別するステップと
を含む、方法。
実施形態2
前記方法が、
識別された前記位置に基づいて、前記クライアントステーションが所定のジオフェンスゾーン内に位置することを確認するステップ
をさらに含む、実施形態1に記載の方法。
実施形態3
前記方法が、
識別された前記位置に基づいて、前記クライアントステーションが所定のジオフェンスゾーンの外側に位置することを確認するステップと、
前記クライアントステーションが前記所定のジオフェンスゾーンを出たとの指示をユーザ機器に送信するステップと
をさらに含む、実施形態1に記載の方法。
実施形態4
前記方法が、
前記クライアントステーションにおいて、前記ワイヤレスアクセスネットワークの複数のマルチチャネルスキャンを実行するステップ
をさらに含む、実施形態1に記載の方法。
実施形態5
前記方法が、
前記クライアントステーションにおいて受信された前記プローブ応答を前記データベースに記憶するステップ
をさらに含み、前記プローブ応答は、信号強度情報、成功率、または前記プローブ応答が受信されたチャネルの識別情報のうちの少なくとも1つを含む、
実施形態1に記載の方法。
実施形態6
前記方法が、
前記信号強度情報または前記プローブ応答成功率のうちの少なくとも1つに基づいて二分探索を実行して前記スキャン時間間隔を決定するステップ
をさらに含む、実施形態5に記載の方法。
実施形態7
前記二分探索が、前記クライアントステーションが充電中であるときに実行される、実施形態6に記載の方法。
実施形態8
前記プローブ応答が受信されたチャネルの識別情報が、前記データベースに含まれる先入れ先出しバッファに記憶される、実施形態5に記載の方法。
実施形態9
前記方法が、
前記チャネルのサブセットを要求する照会を前記クライアントステーションから前記データベースに送信するステップ
をさらに含み、前記チャネルのサブセットは、前記データベースの前記バッファに記憶されたチャネルの識別情報に基づく、
実施形態5に記載の方法。
実施形態10
前記照会を送信するステップは、前記クライアントステーションがバッテリ電力で動作しているときに行われる、実施形態9に記載の方法。
実施形態11
前記チャネルのサブセットは、前記バッファに記憶されたチャネルのうちの最新のチャネルまたは最も多く発生しているチャネルのうちの少なくとも1つに基づいて決定される、実施形態9に記載の方法。
実施形態12
前記クライアントステーションが、ペットの活動を追跡および監視するために使用されるウェアラブルデバイスである、実施形態1に記載の方法。
実施形態13
前記ワイヤレスアクセスネットワークが、2.4ギガヘルツ無線周波数帯域で動作する、実施形態1に記載の方法。
実施形態14
前記チャネルのサブセットを決定するステップおよび前記スキャン時間間隔を決定するステップが、前記クライアントステーションにおけるバッテリ使用量または前記クライアントステーションの位置を識別するステップのための実行時間のうちの少なくとも1つを低減する、実施形態1に記載の方法。
実施形態15
クライアントステーションであって、
コンピュータプログラムコードを含む少なくとも1つの不揮発性記憶媒体と、
少なくとも1つのプロセッサと
を含み、
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
ワイヤレスアクセスネットワークのためのサービスセット識別子を検知するステップと、
データベースに記憶された情報にアクセスすることによって、前記ワイヤレスアクセスネットワーク内のチャネルのサブセットを決定するステップと、
前記データベースに記憶された情報にアクセスすることによって、前記サービスセット識別子に関連付けられたスキャン時間間隔を決定するステップと、
前記チャネルのサブセットを通して、前記ワイヤレスアクセスネットワーク内に位置するアクセスポイントにプローブ要求を送信するステップと、
前記スキャン時間間隔中に前記アクセスポイントからプローブ応答を受信するステップと、
前記プローブ応答に基づいて、前記クライアントステーションの位置を識別するステップと
を行わせるように構成されている、クライアントステーション。
実施形態16
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
識別された前記位置に基づいて、前記クライアントステーションが所定のジオフェンスゾーン内に位置することを確認するステップ
を行わせるように構成されている、実施形態15に記載のクライアントステーション。
実施形態17
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
識別された前記位置に基づいて、前記クライアントステーションが所定のジオフェンスゾーンの外側に位置することを確認するステップと、
前記クライアントステーションが前記所定のジオフェンスゾーンを出たとの指示をユーザ機器に送信するステップと、
を行わせるように構成されている、実施形態15に記載のクライアントステーション。
実施形態18
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
前記ワイヤレスアクセスネットワークの複数のマルチチャネルスキャンを実行するステップ
を行わせるように構成されている、実施形態15に記載のクライアントステーション。
実施形態19
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
前記クライアントステーションにおいて受信されたプローブ応答を前記データベースに記憶するステップ
を行わせるように構成されており、前記プローブ応答は、信号強度情報、成功率、または前記プローブ応答が受信されたチャネルの識別情報のうちの少なくとも1つを含む、
実施形態15に記載のクライアントステーション。
実施形態20
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
前記信号強度情報または前記プローブ応答成功率のうちの少なくとも1つに基づいて二分探索を実行して前記スキャン時間間隔を決定するステップ
を行わせるように構成されている、実施形態19に記載のクライアントステーション。
実施形態21
前記二分探索は、前記クライアントステーションが充電中であるときに実行される、実施形態20に記載のクライアントステーション。
実施形態22
前記プローブ応答が受信されたチャネルの識別情報は、前記データベースに含まれる先入れ先出しバッファに記憶される、実施形態19に記載のクライアントステーション。
実施形態23
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記クライアントステーションに、
前記チャネルのサブセットを要求する照会を前記クライアントステーションから前記データベースに送信するステップ
を行わせるように構成されており、前記チャネルのサブセットは、前記データベースの前記バッファに記憶されたチャネルの識別情報に基づく、
実施形態22に記載のクライアントステーション。
実施形態24
前記照会を送信するステップは、前記クライアントステーションがバッテリ電力で動作しているときに行われる、実施形態23に記載のクライアントステーション。
実施形態25
前記チャネルのサブセットは、前記バッファに記憶されたチャネルのうちの最新のチャネルまたは最も多く発生しているチャネルのうちの少なくとも1つに基づいて決定される、実施形態23に記載のクライアントステーション。
実施形態26
前記クライアントステーションが、ペットの活動を追跡および監視するために使用されるウェアラブルデバイスである、実施形態15に記載のクライアントステーション。
実施形態27
前記ワイヤレスアクセスネットワークが、2.4ギガヘルツ無線周波数帯域で動作する、実施形態15に記載のクライアントステーション。
実施形態28
アクセスポイントであって、
コンピュータプログラムコードを含む少なくとも1つの不揮発性記憶媒体と、
少なくとも1つのプロセッサと
を含み、
前記コンピュータプログラムコードが、前記少なくとも1つのプロセッサによって実行される際に、前記アクセスポイントに、
ワイヤレスアクセスネットワーク内に位置する前記アクセスポイントにおいて、チャネルのサブセットを通してクライアントステーションからプローブ要求を受信するステップと、
スキャン時間間隔中に前記クライアントステーションにプローブ応答を送信するステップであって、前記プローブ応答は、前記クライアントステーションがジオフェンスゾーンの内側または外側にあることを確認するために使用される、ステップと
を行わせるように構成されている、アクセスポイント。