IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ グーグル インコーポレイテッドの特許一覧

特許7395716解決可能なプライベートアドレスを用いたネットワークフィルタリング
<>
  • 特許-解決可能なプライベートアドレスを用いたネットワークフィルタリング 図1
  • 特許-解決可能なプライベートアドレスを用いたネットワークフィルタリング 図2
  • 特許-解決可能なプライベートアドレスを用いたネットワークフィルタリング 図3
  • 特許-解決可能なプライベートアドレスを用いたネットワークフィルタリング 図4
  • 特許-解決可能なプライベートアドレスを用いたネットワークフィルタリング 図5
  • 特許-解決可能なプライベートアドレスを用いたネットワークフィルタリング 図6
  • 特許-解決可能なプライベートアドレスを用いたネットワークフィルタリング 図7
  • 特許-解決可能なプライベートアドレスを用いたネットワークフィルタリング 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-01
(45)【発行日】2023-12-11
(54)【発明の名称】解決可能なプライベートアドレスを用いたネットワークフィルタリング
(51)【国際特許分類】
   H04W 12/02 20090101AFI20231204BHJP
   H04W 84/18 20090101ALI20231204BHJP
   H04W 12/041 20210101ALI20231204BHJP
   H04W 12/69 20210101ALI20231204BHJP
   H04L 43/028 20220101ALI20231204BHJP
   H04L 9/08 20060101ALI20231204BHJP
   H04L 9/32 20060101ALI20231204BHJP
【FI】
H04W12/02
H04W84/18
H04W12/041
H04W12/69
H04L43/028
H04L9/08 C
H04L9/08 E
H04L9/32 200A
【請求項の数】 13
(21)【出願番号】P 2022514243
(86)(22)【出願日】2019-09-19
(65)【公表番号】
(43)【公表日】2022-11-28
(86)【国際出願番号】 US2019051936
(87)【国際公開番号】W WO2021054961
(87)【国際公開日】2021-03-25
【審査請求日】2022-06-02
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】トゥロン,マーティン・エイ
【審査官】中村 信也
(56)【参考文献】
【文献】国際公開第2018/088952(WO,A1)
【文献】Bluetooth SIG,Bluetooth Core Specification v5.0,Bluetooth Core Specification v5.0,2016年12月06日,https://www.bluetooth.com/ja-jp/specifications/specs/core-specification-5-0/
(58)【調査した分野】(Int.Cl.,DB名)
H04W 4/00-99-00
H04L 41/00-43/55
H04L 9/00- 9/40
(57)【特許請求の範囲】
【請求項1】
ワイヤレスネットワーク内のソースノードがパケットを宛先ノードにアドレス指定するための方法であって、前記方法は、
前記ソースノードが、暗号ベースのメッセージ認証コードを用いて、フィルタ鍵およびアドレス入力生成データをハッシュすることによって、身分解決キーを生成し、
前記ソースノードが、前記身分解決キーおよび乱数フィールドの値をハッシュすることによって、アドレスハッシュを生成することを含み、前記身分解決キーは、アドレス生成入力データから暗号的に導出され、
前記ソースノードが、アドバタイズメントアドレスを形成することを含み、前記アドバタイズメントアドレスは、前記アドレスハッシュの一部を含み、
前記ソースノードが、前記アドバタイズメントアドレスをアドバタイジング拡張パケットに挿入することと、
前記ソースノードが、前記ワイヤレスネットワークを介して前記アドバタイジング拡張パケットを送信することとを含み、前記宛先ノードは、前記アドレスハッシュを用いて、前記アドバタイジング拡張パケットをフィルタリングする、方法。
【請求項2】
前記アドレス入力生成データは、アドレス種類フィールドと、前記ソースノードおよび前記宛先ノードを含む前記ワイヤレスネットワークのネットワーク識別子と、宛先アドレスとを含む、請求項に記載の方法。
【請求項3】
前記宛先アドレスは、ショートアドレス、ロングアドレス、またはブロードキャストアドレスである、請求項に記載の方法。
【請求項4】
前記アドレス入力生成データは、アドレス種類フィールドと、前記ソースノードおよび前記宛先ノードを含む前記ワイヤレスネットワークのネットワーク識別子とを含む、請求項に記載の方法。
【請求項5】
前記身分解決キーおよび前記乱数フィールドの前記値をハッシュすることによって前記アドレスハッシュを形成することは、前記身分解決キーおよび前記乱数フィールドの前記値をハッシュすることの出力を前記出力の最下位24ビットに切り捨てることによって、アドレスハッシュを形成することをさらに含む、請求項1からのいずれか一項に記載の方法。
【請求項6】
前記アドバタイズメントアドレスを形成することは、
乱数を生成することと、
プライベートアドレス種類フィールドと生成された前記乱数とを連結することによって、前記乱数フィールドを形成することと、
前記乱数フィールドを前記アドバタイジング拡張パケットに挿入することとをさらに含む、請求項1からのいずれか一項に記載の方法。
【請求項7】
前記ワイヤレスネットワークを介して前記アドバタイジング拡張パケットを送信することは、1つ以上のアドバタイジングチャネルを用いて、前記アドバタイジング拡張パケットを送信することを含む、請求項1からのいずれか一項に記載の方法。
【請求項8】
前記ソースノードが、データチャネルを示す印しおよびプロトコルデータユニットの送信時間を示す印しを前記アドバタイジング拡張パケットのアドバタイズメントデータフィールドに挿入することをさらに含む、請求項1からのいずれか一項に記載の方法。
【請求項9】
ワイヤレスネットワーク内の宛先ノードがアドバタイジング拡張パケットのアドレスフィルタリングを行うための方法であって、前記方法は、
前記宛先ノードが、前記ワイヤレスネットワーク内のソースノードから、前記アドバタイジング拡張パケットを受信することと、
前記宛先ノードが、受信した前記アドバタイジング拡張パケットに含まれる乱数フィールドの値と、第1のローカルフィルタリング身分解決キーとに基づいて、第1のローカルハッシュ値を生成することと、
前記宛先ノードが、前記第1のローカルハッシュ値と前記アドバタイジング拡張パケットに含まれるハッシュ値とを比較することによって、前記第1のローカルハッシュ値と前記アドバタイジング拡張パケットに含まれる前記ハッシュ値とがマッチするか否かを判断することと、
前記宛先ノードが、前記第1のローカルハッシュ値と前記アドバタイジング拡張パケットに含まれる前記ハッシュ値とがマッチすることに応答して、前記アドバタイジング拡張パケットに示された時間で、データチャネル上のプロトコルデータユニットを受信することとを含
前記第1のローカルハッシュ値を生成することは、暗号ベースのメッセージ認証コードを用いて、フィルタ鍵およびアドレス入力生成データをハッシュすることによって、前記第1のローカルフィルタリング身分解決キーを生成することを含む、方法。
【請求項10】
前記第1のローカルフィルタリング身分解決キーは、前記宛先ノードに知られている唯一のローカルフィルタリング身分解決キーであり、
前記方法は、
前記第1のローカルハッシュ値と前記アドバタイジング拡張パケットに含まれる前記ハッシュ値とがマッチしない場合、前記宛先ノードが、受信した前記アドバタイジング拡張パケットを破棄することと、
前記宛先ノードが、別のアドバタイジング拡張パケットを取得するために、1つ以上のアドバタイジングチャネルを走査することとをさらに含む、請求項に記載の方法。
【請求項11】
前記宛先ノードは、複数のローカルフィルタリング身分解決キーを含み、
前記方法は、
前記第1のローカルハッシュ値と前記アドバタイジング拡張パケットに含まれる前記ハッシュ値とがマッチしない場合、前記宛先ノードが、受信した前記アドバタイジング拡張パケットに含まれる乱数フィールドの前記値および残りの前記複数のローカルフィルタリング身分解決キーの各ローカルフィルタリング身分解決キーに基づいて、残りの前記複数のローカルフィルタリング身分解決キーの各ローカルフィルタリング身分解決キーのローカルハッシュ値を生成することと、
各ローカルフィルタリング身分解決キーのローカルハッシュ値と前記アドバタイジング拡張パケットに含まれる前記ハッシュ値とがマッチする場合、前記宛先ノードが、前記アドバタイジング拡張パケットに示された前記時間で、前記データチャネル上のプロトコルデータユニットを受信することとをさらに含む、請求項または請求項10に記載の方法。
【請求項12】
前記ワイヤレスネットワークを介して前記アドバタイジング拡張パケットを受信することは、アドバタイジングチャネルを介して前記アドバタイジング拡張パケットを受信することを含む、請求項9から11のいずれか一項に記載の方法。
【請求項13】
ワイヤレスネットワーク装置であって、
ワイヤレスネットワークインターフェイスと、
プロセッサと、
請求項1から12のいずれか1項に記載の方法を実行するように構成されたアドレス指定アプリケーションを含むメモリとを備える、ワイヤレスネットワーク装置。
【発明の詳細な説明】
【背景技術】
【0001】
環境条件を検知し、機器を制御し、および情報および警告をユーザに提供するために、低電力ワイヤレスネットワーク、例えばワイヤレスメッシュネットワークを用いて、装置を互いに接続し且つクラウドベースのサービスに接続することは、ますます普及している。複数のワイヤレスネットワークが、同じ無線スペクトルを共有し、同じ無線チャネル化を利用し、および/または同じ標準化通信プロトコルを使用する環境において、ワイヤレス装置は、受信した無線パケットをフィルタリングすることによって、無線パケットがワイヤレス装置にアドレス指定されるか否かまたはワイヤレス装置が受信した無線パケットを無視すべきか否かを判断する必要がある。低電力ワイヤレスネットワーク上の多くの装置がバッテリ電力で長時間動作するように設計されているため、装置の利用可能なコンピューティング、ユーザインターフェイスおよび無線リソースが制限される。最終的に無視されるまたは破棄される無線パケットを処理することは、ワイヤレス装置の限られたリソースを消費するまたは無線パケットの不必要な再送信を引き起こす可能性がある。また、ワイヤレス装置に対して必要のない無線パケットを処理することは、ワイヤレス装置が必要な他の無線パケットを受信できなくなることを引き起こす可能性がある。
【0002】
さらに、多くの低電力ワイヤレス通信プロトコルは、ペイロードデータを暗号化するが、明文でアドレス指定情報を送信する場合がある。暗号化されていないアドレス指定情報を送信することは、アドレスフィルタリングのコストおよび複雑さを低減することができるが、ワイヤレスネットワーク内の通信のプライバシーおよびセキュリティを低減する。
【発明の概要】
【0003】
本明細書は、ワイヤレスネットワーク内の解決可能なプライベートアドレス(resolvable private address)を用いたネットワークフィルタリングを説明する。ワイヤレスネットワーク内のソースノードは、身分解決キー(Identity Resolving Key)および乱数フィールドの値をハッシュすることによって、アドレスハッシュを生成する。ソースノードは、アドレスハッシュの一部を含むアドバタイズメントアドレス(advertisement address)を形成し、アドバタイズメントアドレスをアドバタイジング拡張パケット(advertising extension packet)に挿入する。ソースノードは、ワイヤレスネットワークを介してアドバタイジング拡張パケットを送信する。送信することは、アドレスハッシュに少なくとも部分的に基づいてアドバタイジング拡張パケットをフィルタリングするように、宛先ノードに指示するのに有効である。
【0004】
この概要は、一般的に、アドレス指定およびルーティングに関連する、プライベート解決可能アドレスを用いたネットワークフィルタリングの簡略概念を紹介するために提供される。簡略概念は、以下の詳細な説明においてさらに説明される。この概要は、請求される主題の本質的な特徴を特定することを意図しておらず、請求される主題の範囲を限定することを意図していない。
【0005】
一態様において、ワイヤレスネットワーク内の解決可能なプライベートアドレスを用いてネットワークフィルタリングを行うための方法、装置、システム、および手段が説明される。この場合、ソースノードは、身分解決キーおよび乱数フィールドの値をハッシュすることによって、アドレスハッシュを生成し、身分解決キーは、アドレス生成入力データから暗号的に導出される。ソースノードは、アドレスハッシュの一部を含むアドバタイズメントアドレスを形成し、アドバタイズメントアドレスをアドバタイジング拡張パケットに挿入する。ソースノードは、ワイヤレスネットワークを介してアドバタイジング拡張パケットを送信し、宛先ノードは、アドレスハッシュを用いて、アドバタイジング拡張パケットをフィルタリングする。
【0006】
一態様において、ワイヤレスネットワーク内の解決可能なプライベートアドレスを用いてネットワークフィルタリングを行うための方法、装置、システム、および手段が説明される。この場合、宛先ノードは、ワイヤレスネットワーク内のソースノードから、アドバタイジング拡張パケットを受信する。宛先ノードは、受信したアドバタイジング拡張パケットに含まれる乱数フィールドの値と、第1のローカルフィルタリング身分解決キーとに基づいて、第1のローカルハッシュ値を生成する。宛先ノードは、第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とを比較することによって、第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とがマッチするか否かを判断する。第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とがマッチする場合、宛先ノードは、アドバタイジング拡張パケットに示された時間で、データチャネル上のプロトコルデータユニットを受信する。第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とがマッチしない場合、宛先ノードは、受信したアドバタイジング拡張パケットを破棄し、別のアドバタイジング拡張パケットを取得するために、1つ以上のアドバタイジングチャネル(advertising channel)を走査する。
【0007】
以下の図面を参照して、プライベート解決可能アドレスを用いたネットワークフィルタリングの実施形態を説明する。全ての図面において、同様の番号を用いて、同様の特徴および構成要素を示す。
【図面の簡単な説明】
【0008】
図1】プライベート解決可能アドレスを用いたネットワークフィルタリングの様々な実施形態を実施することができる例示的なワイヤレスネットワークシステムを示す図である。
図2】プライベート解決可能アドレスを用いたネットワークフィルタリングの様々な実施形態に従って、ワイヤレスネットワークにおいて通信されるアドバタイジング拡張の例を示す図である。
図3】プライベート解決可能アドレスを用いたネットワークフィルタリングの様々な実施形態に従って、ワイヤレスネットワークにおいて通信されるアドバタイジング拡張の別の例を示す図である。
図4】プライベート解決可能アドレスを用いたネットワークフィルタリングの様々な実施形態の例示的なメッシュネットワークパケットを示す図である。
図5】本明細書に記載された技術の実施形態に従って、プライベート解決可能アドレスを用いたネットワークフィルタリングを行うための例示的な方法を示す図である。
図6】本明細書に記載された技術の実施形態に従って、プライベート解決可能アドレスを用いたネットワークフィルタリングを行うための別の例示的な方法を示す図である。
図7】本明細書に記載された技術の実施形態に従って、ワイヤレスネットワークを実装することができる例示的な環境を示す図である。
図8】本明細書に記載された技術の1つ以上の実施形態に従って、ワイヤレスネットワーク環境に実装され得る例示的なワイヤレスネットワーク装置を示す図である。
【発明を実施するための形態】
【0009】
低電力ワイヤレスネットワークは、様々なトポロジー、例えばスタートポロジー、メッシュトポロジーなどを使用して動作する。低電力ワイヤレスネットワークは、専有技術または標準技術に準拠することができる。例えば、ワイヤレスメッシュネットワークは、メッシュネットワーキングスタックのうち、上位層内のアプリケーションによって使用される物理(PHY)層およびメディアアクセス制御(MAC)層の特徴およびサービスを定義するIEEE802.15.4規格に準拠することができる。上位層アプリケーションは、これらの標準定義サービスに依存して、パケットデータのアドレス指定およびルーティングをサポートすることによって、メッシュネットワーク全体のアプリケーションレベル通信およびメッシュネットワークと外部ネットワークとの間のアプリケーションレベル通信をサポートする。
【0010】
同様に、他のワイヤレスネットワーク技術、例えばブルートゥース(登録商標)、Thread(登録商標)、ZigBee(登録商標)、Z-Wave(登録商標)、ブルートゥース(登録商標)低エネルギー(BLE)などは、同様の層状ネットワーキングスタックを有する。例えば、BLEは、アプリケーション層、トランスポート層、ネットワーク層、およびベアラ層を定義する。ベアラ層は、ワイヤレスネットワークのノード間のネットワークメッセージをトランスポートする方法を定義する。ネットワーク層は、メッセージをワイヤレスネットワークノードにアドレス指定する方法を定義し、ベアラ層によってトランスポートされるネットワークメッセージのフォーマットを定義し、アプリケーションペイロードをネットワークメッセージに入れる方法を定義する。トランスポート層は、アプリケーションペイロードのフォーマット、およびアプリケーションペイロードを暗号化および認証する方法を定義する。アプリケーション層は、アプリケーションがトランスポート層を使用する方法を定義し、アプリケーションの動作および挙動を定義する。
【0011】
ワイヤレスネットワーク内の複数の装置の通信を容易にするために、いくつかの低電力ワイヤレスシステムは、ブロードキャスト送信機構を利用して、電力効率の良い方法で他の装置と通信する。例えば、BLEは、ワイヤレス装置(ワイヤレスノード)が3つのアドバタイジングチャネル(advertising channel)上でアドバタイズメント(advertisement)を送信するアドバタイジング技術を使用する。他のワイヤレス装置は、アドバタイジングチャネルを走査することによって、アドバタイズメントを受信するができる。アドバタイズメントパケット(advertisement packet)は、小さいデータペイロード(例えば、31バイトのデータ)を有する。BLEメッシュネットワークの場合、アドバタイズメントは、ブロードキャストアドレスを宛先アドレスとして使用して送信される。
【0012】
アドバタイズメントを使用して送信することができるデータの量を拡張するために、アドバタイジング拡張(advertising extension)は、追加のチャネル(例えば、37個の他のBLEチャネル、アドバタイジング拡張データチャネル)上で追加のアドバタイジング拡張データパケットを送信することを可能にする。アドバタイジング拡張データパケットのプロトコルデータユニット(PDU)は、より大きいデータペイロード(例えば、最大255バイト)を搬送する。アドバタイジング拡張データパケットを連鎖することによって、さらに多くのデータを通信することができる。データの送信をワイヤレスネットワーク内のデータチャネル上のアドバタイジング拡張データパケットにシフトすることによって、アドバタイジングチャネルの混雑を低減することができる。
【0013】
複数のBLEネットワークが動作し、同じアドバタイジングチャネルを共有する混雑環境において、第1のワイヤレスネットワーク内のワイヤレス装置は、アドバタイジングチャネルを走査し、第2のワイヤレスネットワークからアドバタイズメントを受信することができる。第2のワイヤレスネットワークのアドバタイズメントによってワイヤレス装置が別の無線チャネルにホップして、アドバタイジング拡張データパケットを受信する場合、ワイヤレス装置は、第1のワイヤレスネットワーク内のメッセージを受信するために、アドバタイジングチャネルを走査しない。アドバタイジング拡張データパケットが第2のワイヤレスネットワーク内のワイヤレス装置に送信される場合、ワイヤレス装置は、第2のワイヤレスネットワーク内のワイヤレス装置に送信されるアドバタイジング拡張データパケットを受信している間に、第1のワイヤレスネットワーク内のアドバタイジングパケットを逃す可能性がある。
【0014】
アドバタイジング拡張パケットのアドレスフィールド内の装置アドレス情報を解決可能なプライベートアドレスとして符号化することによって、ワイヤレス装置は、異なる無線チャネルにホッピングしてアドバタイジング拡張データパケットを受信することなく、アドレスフィルタリングを用いて、アドバタイジング拡張パケットがワイヤレス装置にアドレス指定されているか否かを判断することができる。解決可能なプライベートアドレスを用いたネットワークフィルタリングは、ワイヤレス装置にアドレス指定されていないデータパケットの不必要な受信および評価を排除することによって、ワイヤレスネットワーク装置の電力消費を低減する。解決可能なプライベートアドレスの暗号ベースのアドレス生成は、明文で送信されるデータパケット内の宛先アドレスを排除することによって、データプライバシーを改善する。
【0015】
解決可能なプライベートアドレスを用いたネットワークフィルタリングを行うためのシステムおよび方法の特徴および概念は、任意の数の異なる環境、システム、装置および/または様々な構成に実装されてもよい。以下、例示的な装置、システムおよび構成を用いて、解決可能なプライベートアドレスを用いたネットワークフィルタリングの実施形態を説明する。
【0016】
例示的な環境
図1は、解決可能なプライベートアドレスを用いたネットワークフィルタリングの様々な実施形態を実施することができる例示的なワイヤレスネットワーク100を示す。ワイヤレスネットワーク100は、ソースノード102として機能する第1のワイヤレスネットワーク装置と、宛先ノード104として機能する第2のワイヤレスネットワーク装置とを含む。ソースノード102および宛先ノード104は、以下で図8を参照して説明するように、ワイヤレスネットワーク100を介して通信するためのワイヤレスネットワークインターフェイスを含むワイヤレスネットワーク装置である。ソースノード102および宛先ノード104は、ワイヤレスネットワークインターフェイスを用いて、120で示されるワイヤレスネットワークを介してパケットデータを受信および送信する。また、ソースノード102および宛先ノード104は、ワイヤレスネットワーク100にわたってパケットをルーティング、転送、および/または中継することができる。
【0017】
図示のように、ソースノード102および宛先ノード104は、ネットワークスタック106を含む。ネットワークスタック106は、アプリケーション層108と、トランスポート層110と、ネットワーク層112と、ベアラ層114とを含む。ネこの例では、ットワークスタック106は、4つの層を有すると示されているが、よく知られているように、ネットワークスタック106は、代替的に、より少ないまたはより多い層を有してもよい。以下の特定の層に関して説明される動作は、代替的に、他の層において実行されてもよく、複数の層間で分割されてもよく、または複数の層から単一の層に合併されてもよい。
【0018】
ソースノード102および宛先ノード104は、ネットワークスタック106を用いて、ワイヤレスネットワーク100を介して通信するための1つ以上のアプリケーション116を含む。アプリケーション116は、関連する機能の論理グループ、例えば、モデル、プロファイル、クラスタなどである。アプリケーション層108は、アプリケーション116がトランスポート層110を使用する方法を定義する。アプリケーション層108は、アプリケーションデータおよび構成情報をトランスポート層110に渡す。
【0019】
トランスポート層110は、アプリケーションペイロードをネットワーク層112に送信する。ネットワーク層112は、ワイヤレスネットワークパケットのアドレス指定およびアプリケーションペイロードをワイヤレスネットワークパケットに入れる方法を決定する。ネットワーク層112は、ワイヤレスネットワークパケットの宛先アドレス(DST)を形成する。例えば、アドバタイジング拡張パケットまたはアドバタイジング拡張データパケットの場合、以下でより詳細に説明するように、ネットワーク層112は、DSTの解決可能なプライベートアドレスを符号化し、解決可能なプライベートアドレスをアドバタイジング拡張パケットに挿入する。ネットワーク層112は、ワイヤレスネットワークパケットをベアラ層114に送信する。ベアラ層114は、ワイヤレスネットワーク100を介してワイヤレスネットワークパケットを送信する。
【0020】
宛先ノード104は、ワイヤレスネットワーク100から、ワイヤレスネットワークパケットをベアラ層114に受信する。ベアラ層114は、受信したワイヤレスネットワークパケットをネットワーク層112に渡す。ワイヤレスネットワークパケットがアドバタイジング拡張パケットまたはアドバタイジング拡張データパケットである場合、ネットワーク層112は、宛先アドレスが解決可能なプライベートアドレスであると判断し、解決可能なプライベートアドレスが宛先ノード104のアドレスに対応するか否かを判断する。解決可能なプライベートアドレスが宛先ノード104のアドレスに対応する場合、ネットワーク層112は、パケットからのアプリケーションペイロードをトランスポート層110に送信する。トランスポート層110は、アプリケーションペイロードを宛先ノード104内のアプリケーション層108のアプリケーション116に送信する。
【0021】
図2は、解決可能なプライベートアドレスを用いたネットワークフィルタリングの様々な実施形態に従って、ワイヤレスネットワークにおいて通信されるアドバタイジング拡張の例を示す。図2は、図1を参照して示され、説明されたように、ワイヤレスネットワーク100内のワイヤレスネットワーク装置によってアドバタイジングチャネル202上で送信されるアドバタイジング拡張210と、データチャネル204上で送信されるアドバタイジング拡張データPDU220とを示す。
【0022】
ワイヤレスネットワーク100は、複数の無線チャネルを含み、一部の無線チャネルは、アドバタイジングチャネル(例えば、アドバタイジングチャネル202)として指定され、残りの無線チャネルは、データチャネル(例えば、データチャネル204)として指定される。例えば、BLEネットワークにおいて、無線チャネル0~36は、データチャネルとして指定され、無線チャネル37、38および39は、アドバタイジングチャネルとして指定される。
【0023】
一態様において、ソースノード102などのワイヤレスネットワーク装置は、ソースノード102が1つのデータチャネル204上でアドバタイジング拡張データPDU220を送信することを示すアドバタイジング拡張を、1つ以上のアドバタイジングチャネル202上で送信する。例えば、ソースノード102は、ソースノード102がアドバタイジング拡張データPDU221を送信することを示すアドバタイジング拡張211を、(3つのBLEアドバタイジングチャネル上の送信に対応する3つの縦棒として示される)アドバタイジングチャネル202上で送信する。アドバタイジング拡張は、ソースノード102がアドバタイジング拡張データPDU221を送信するために使用するデータチャネル204を示す印し(例えば、アドバタイジングポインタまたはADV_EXT_IND)と、ソースノード102がアドバタイジング拡張データPDU221を送信する時間とを含む。
【0024】
別のワイヤレスネットワーク装置、例えば、宛先ノード104は、アドバタイジングチャネル202を走査することによって、アドバタイジング拡張211を受信する。アドバタイジング拡張211の受信に基づいて、宛先ノード104は、アドバタイジング拡張データPDU221を受信するための無線チャネルおよび時間を決定することができる。
【0025】
2つの異なるワイヤレスネットワークが、同一の地理区域内で動作することができる。例えば、ソースノード102および宛先ノード104は、第1のワイヤレスネットワークの一部である。(図2に白い矩形として示される)第1のワイヤレスネットワークのアドバタイジング拡張210は、アドバタイジング拡張211、214、215、および216に対応する。第2のワイヤレスネットワーク内の他のワイヤレス装置と、第1のワイヤレスネットワークとは、アドバタイジングチャネル202およびデータチャネル204を共有する。第2のワイヤレスネットワーク内のワイヤレスネットワーク装置は、図2に黒い矩形として示されるアドバタイジング拡張212および213を送信することができる。
【0026】
宛先ノード104がアドバタイジング拡張212および/または213を受信する場合、宛先ノード104は、第2のワイヤレスネットワーク内の装置にそれぞれ送信されるアドバタイジング拡張データPDU222および/または223の受信を試みる。例えば、宛先ノード104がアドバタイジング拡張213を受信し、アドバタイジング拡張213に示されたデータチャネル204に変更(ホップ)する場合、宛先ノード104は、ソースノード102がアドバタイジング拡張214を送信する時間と同じ時間で、アドバタイジング拡張データPDU223の受信を試みる。ソースノード102がアドバタイジング拡張214を送信し、宛先ノード104がアドバタイジング拡張214および関連するアドバタイジング拡張データPDU224の受信を逃すときに、宛先ノード104は、アドバタイジングチャネル202を走査しない。
【0027】
図3は、解決可能なプライベートアドレスを用いたネットワークフィルタリングの様々な実施形態に従って、ワイヤレスネットワークにおいて通信されるアドバタイジング拡張の別の例を示す。図3は、図1を参照して示され、説明されたように、ワイヤレスネットワーク100内のワイヤレスネットワーク装置によってアドバタイジングチャネル202上で送信されるフィルタリングアドバタイジング拡張210を示す。
【0028】
一態様において、宛先ノード104に送信されるアドバタイジング拡張データPDU220を受信する宛先ノード104の利用率を改善するために、アドバタイジング拡張310は、解決可能なプライベートアドレスを含む。宛先ノード104は、(以下でより詳細に説明する)解決可能なプライベートアドレスの一部に基づいてローカルハッシュ値を生成し、ローカルハッシュ値と、宛先ノード104に記憶されたフィルタリング身分解決キー(IRKfilt)から生成された1つ以上のハッシュ値とを比較する。ローカルハッシュ値とフィルタリングIRKから生成されたハッシュ値のうちの1つとがマッチする場合、宛先ノード104は、アドバタイジング拡張310内の印し(例えば、アドバタイジングポインタまたはADV_EXT_IND)を用いてデータチャネルにホップして、アドバタイジング拡張データPDU220を受信する。ローカルハッシュ値とフィルタリングIRKから生成されたハッシュ値のうちの1つとがマッチしない場合、宛先ノード104は、アドバタイジング拡張310を破棄し、アドバタイジングチャネル202の走査を再開して、他のアドバタイジング拡張を受信する。
【0029】
例えば、宛先ノード104は、アドバタイジング拡張311を受信し、アドバタイジング拡張311に含まれる解決可能なプライベートアドレスの一部に基づいてローカルハッシュ値を生成し、ローカルハッシュ値と記憶されたフィルタリングIRKから生成されたハッシュ値とがマッチすると判断し、示されたデータチャネル204にホップしてアドバタイジング拡張データPDU221を受信する。宛先ノード104は、アドバタイジングチャネルの走査を再開し、アドバタイジング拡張312を受信する。宛先ノード104は、アドバタイジング拡張312に含まれる解決可能なプライベートアドレスの一部に基づいてローカルハッシュ値を生成し、(302で示されたように)ローカルハッシュ値と記憶されたフィルタリングIRKから生成されたローカルハッシュ値とがマッチしないと判断し、アドバタイジング拡張312を破棄し、アドバタイジングチャネル202の走査を再開する。同様に、宛先ノード104は、アドバタイジング拡張313を受信し、(304で示されたように)ローカルハッシュ値と記憶されたアドバタイジング拡張313に含まれる解決可能なプライベートアドレスのフィルタリングIRKから生成されたローカルハッシュ値とがマッチしないと判断し、アドバタイジング拡張313を破棄し、アドバタイジングチャネル202の走査を再開する。宛先ノード104は、アドバタイジング拡張のアドレスフィルタリングを行うことによって、宛先ノード104に送信されるアドバタイジング拡張パケットを受信するための利用率を増加させる。
【0030】
続いて、宛先ノード104は、アドバタイジング拡張314、315および316を受信し、アドバタイジング拡張314、315および316に含まれる解決可能なプライベートアドレスの一部に基づいてそれぞれのローカルハッシュ値を生成し、それぞれのローカルハッシュ値と1つ以上の記憶されたフィルタリングIRKから生成されたハッシュ値とがマッチすると判断し、示されたデータチャネル204にホップして、アドバタイジング拡張データPDU224、225および226を受信する。
【0031】
解決可能なプライベートアドレスのフィルタリング
図4は、解決可能なプライベートアドレスを用いたネットワークフィルタリングの様々な実施形態の例示的なワイヤレスネットワークパケット400を示す。アドバタイジング拡張パケット402は、いくつかのフィールドを含み、これらのフィールドの内容は、ネットワークスタック106の様々な層によって決められる。パケット400内の様々なフィールドは、例示として示され、パケット400内のフィールドの長さおよび/または位置が変化してもよい。
【0032】
一態様において、アドバタイジング拡張パケット402は、アドバタイズメントアドレスフィールド404(例えば、ブルートゥース(登録商標)装置アドレス(BDADDR))と、アドバタイズメントデータフィールド406とを含む。例えば、アドバタイズメントアドレスフィールド404の長さは、6バイトであり、アドバタイズメントデータフィールド406の長さは、0バイトから31バイトまで変化してもよい。アドバタイズメントデータフィールド406は、ソースノード102がアドバタイジング拡張データPDU221を送信するときに使用するデータチャネル204を示す印し(例えば、アドバタイジングポインタまたはADV_EXT_IND)と、ソースノード102がアドバタイジング拡張データPDU221を送信する時間とを含むことができる。
【0033】
アドバタイズメントアドレスフィールド404は、乱数フィールド408(例えば、ブルートゥース(登録商標)コア仕様、バージョン5.0、第6巻、B部分の1.3.2.2に定義されたprand)と、ハッシュ値フィールド410とを含む。乱数フィールド408は、2つの部分、すなわち、アドバタイズメントアドレスの種類を示すプライベートアドレス種類フィールド412と、ランダム部分フィールド414とを含む。プライベートアドレス種類フィールド412の長さは、2ビットであり、アドバタイズメントアドレスが解決可能なプライベートアドレスであることを示すバイナリ値「01」に設定される。プライベートアドレス種類フィールド412の2ビットは、prandの最上位2ビットである。ソースノード102は、ランダム部分フィールド414の値としての乱数を生成する。ランダム部分414は、prandの最下位22ビットとして含まれる。ソースノード102は、プライベートアドレス種類フィールド412とランダム部分414とを連結することによって、prandを形成する。このprandは、バイナリ形式「0b 01vv vvvv vvvv vvvv vvvv vvvv」で示され、「v」は、ランダム部分414のビットである。アドバタイズメントアドレス404にprandを使用することによって、無線で送信される2つのメッセージが同じアドバタイズメントアドレスを使用しないため、プライバシーが保証される。
【0034】
ソースノード102は、prandおよびフィルタリング身分解決キー(IRKfilt)を入力とするハッシュ関数を用いて、ハッシュ値フィールド410の値を生成する。
【0035】
【数1】
【0036】
式中、ahは、ランダムアドレスハッシュ関数である。
ソースノード102は、ネットワーク識別子(NID)および/または宛先アドレス(DST)を符号化するIRKfiltを生成する。
【0037】
【数2】
【0038】
式中、kは、ワイヤレスネットワーク(例えば、ワイヤレスネットワーク100)を形成する一組のノード(例えば、ソースノード102および宛先ノード104)の間に共有され、IRKの生成に使用される128ビットのネットワークキー(NetKey)から導出される128ビットのフィルタキー(FilterKey)である。アドレス生成入力データmは、ネットワーク種類および/またはアドレス種類に基づいて、いくつかの形をとることができる。アドレス生成入力データに含まれ得る要素は、ソースノード102および宛先ノード104によって形成されたワイヤレスネットワークのネットワーク識別子(NID)、アドレス種類フィールド、ショートユニキャスト(16ビット)アドレス(DST16)、ロングユニキャスト(64ビット)アドレス(DST64)、またはそれらの組み合わせである。アドレス生成入力データの要素mは、以下の式によって示される。使用されるアドレス生成入力データの要素が複数ある場合、これらの要素は、連結される。ブロードキャストアドレスの場合、ブロードキャストアドレスは、アドレス種類フィールドと、ネットワーク識別子とを含む。
【0039】
【数3】
【0040】
ロングユニキャストアドレスの場合、ロングユニキャストアドレスは、アドレス種類フィールドと、ネットワーク識別子と、DST64とを含む。
【0041】
【数4】
【0042】
ショートユニキャストアドレスの場合、ショートユニキャストアドレスは、アドレス種類フィールドと、ネットワーク識別子と、DST16とを含む。
【0043】
【数5】
【0044】
いくつかの種類のネットワーク、例えばメッセージフラッディングを使用して通信するワイヤレスメッシュネットワークの場合、ネットワーク内のノードは、ネットワーク識別子のみに基づいてフィルタリングを行うことができる。この場合、アドレス生成入力データは、128ビットのネットワーク識別子のみを含む。
【0045】
【数6】
【0046】
IRKfiltの長さは、128ビットである。ソースノード102は、104ビットのパディングを用いて24ビットのprandをパディングすることによって、ランダムアドレスハッシュ値を生成する。
【0047】
【数7】
【0048】
ランダムアドレスハッシュ関数ahの出力は、以下の式によって示される。
【0049】
【数8】
【0050】
式中、eは、セキュリティ関数である。eの出力は、24ビットに切り捨てられ、eの出力の最下位24ビットは、ahの結果として使用される。セキュリティ関数eは、米国連邦情報処理規格公報197(FIPS-197)に定義されているAES-128ビットのブロック暗号を用いて、128ビットのキー(IRKfilt)および128ビットの平文データ(prand')から、128ビットの暗号化データを生成する。
【0051】
【数9】
【0052】
宛先ノード104は、受信した各アドバタイジング拡張パケット402に対して、ハッシュ関数ahを用いて、受信したアドバタイジング拡張パケット402からのprand(乱数408)とローカルフィルタリング身分解決キー(ローカルIRKfilt)とをハッシュ関数ahに入力することによって、ローカルハッシュ値を生成する。ローカルハッシュ値と受信したアドバタイジング拡張パケット402のハッシュ値410とがマッチする場合、宛先ノード104は、受信したアドバタイジング拡張パケット402のアドバタイズメントデータ406内の印し(例えば、アドバタイジングポインタまたはADV_EXT_IND)を用いてデータチャネル204にホップして、PDU210を受信する。受信したアドバタイジング拡張パケット402のローカルハッシュ値とハッシュ値410とがマッチしない場合、宛先ノード104は、アドバタイジング拡張パケット402を破棄し、アドバタイジングチャネル202の走査を再開する。
【0053】
宛先ノード104は、受信したアドバタイジング拡張パケット402内のハッシュ値410と比較するための複数のローカルフィルタリングIRKを有することができる。例えば、宛先ノード104は、ショートアドレス、ロングアドレス、ブロードキャストアドレス、アプリケーション固有アドレス、マルチキャストアドレスなどにそれぞれ対応するローカルフィルタリングIRKを有してもよい。
【0054】
例えば、宛先ノード104は、ローカルフィルタリングIRKのリストなどの任意の適切なデータ構造で、ローカルフィルタリングIRKを宛先ノード104のメモリに保存することができる。第1のローカルIRKfiltの第1のローカルハッシュ値と受信したアドバタイジング拡張パケット402内のハッシュ値410とがマッチしない場合、宛先ノード104は、第2のローカルIRKfiltの第2のローカルハッシュ値を生成し、第2のローカルIRKfiltの第2のローカルハッシュ値と受信したアドバタイジング拡張パケット402内のハッシュ値410とを比較して、両者がマッチするか否かを判断する。宛先ノード104は、マッチを見付け、データチャネルにホップしてアドバタイジング拡張データPDU210を受信するか、またはローカルフィルタリングIRKのリストを使い尽くし、アドバタイジングチャネル202の走査を再開するまで、ローカルハッシュ値の生成およびローカルハッシュ値と受信したアドバタイジング拡張パケット402内のハッシュ値410との比較を続ける。
【0055】
例示的な方法
例示的な方法500および600は、解決可能なプライベートアドレスを用いたネットワークフィルタリングの1つ以上の実施形態に従って、図5および図6を参照して説明される。記載された方法ブロックの順序は、限定として解釈されるべきではない。方法または代替的な方法を実装するために、記載された方法ブロックのうち、任意の数の方法ブロックをスキップすることができ、または任意の数の方法ブロックを任意の順序で組み合わせることができる。通常、本明細書に記載されたコンポーネント、モジュール、方法、および動作は、いずれもソフトウェア、ファームウェア、ハードウェア(例えば、固定論理回路)、手動処理、またはそれらの任意の組合せを用いて実装されてもよい。例示的な方法の一部の動作は、コンピュータ処理システムに対してローカルおよび/またはリモートであるコンピュータ可読記憶メモリに記憶された実行可能な命令の一般的な文脈で説明されてもよく、実装形態は、ソフトウェアアプリケーション、プログラム、関数などを含んでもよい。代替的にまたは追加的に、本明細書に記載されたいずれかの機能は、例えば、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップシステム(SoC)、複合プログラマブルロジック装置(CPLD)などを含むがこれらに限定されない1つ以上のハードウェア論理構成要素によって、少なくとも部分的に実行されてもよい。
【0056】
図5は、一般的に、ワイヤレスネットワーク内のソースノードに関連する解決可能なプライベートアドレスを用いたネットワークフィルタリングを行うための例示的な方法500を示す。ブロック502において、ソースノードは、身分解決キーおよび乱数フィールドの値をハッシュすることによって、アドレスハッシュを生成する。例えば、上記の式1に記載されたように、ソースノード(例えば、ソースノード102)は、フィルタリング身分解決キー(例えば、IRKfilt)および乱数フィールドの値(例えば、prand、すなわち、乱数フィールド408)をハッシュすることによって、アドレスハッシュ(例えば、ハッシュ値410)を生成する。
【0057】
ブロック504において、ソースノードは、アドレスハッシュの一部を含むアドバタイズメントアドレスを形成する。例えば、式8に記載されたように、ソースノードは、アドレスハッシュの一部を含むアドバタイズメントアドレス(例えば、アドバタイズメントアドレス404)を形成する。
【0058】
ブロック506において、ソースノードは、アドバタイズメントアドレスをアドバタイジング拡張パケットに挿入する。例えば、ソースノードは、アドバタイズメントアドレスをアドバタイジング拡張パケット(例えば、アドバタイジング拡張402)に挿入する。
【0059】
ブロック508において、ソースノードは、ワイヤレスネットワークを介してアドバタイジング拡張パケットを送信し、宛先ノードは、アドレスハッシュを用いて、アドバタイジング拡張パケットをフィルタリングする。例えば、ソースノードは、ワイヤレスネットワーク(例えば、ワイヤレスネットワーク100)を介してアドバタイジング拡張パケットを送信し、宛先ノード(例えば、宛先ノード104)は、アドレスハッシュを用いて、アドレスハッシュに少なくとも部分的に基づいてアドバタイジング拡張パケットをフィルタリングする。ソースノードは、1つ以上のアドバタイジングチャネル202を介してアドバタイジング拡張パケットを送信する。
【0060】
図6は、一般的に、ワイヤレスネットワーク内の宛先ノードに関連する解決可能なプライベートアドレスを用いたネットワークフィルタリングを行うための例示的な方法600を示す。ブロック602において、宛先ノードは、ワイヤレスネットワーク内のソースノードから、アドバタイジング拡張パケットを受信する。例えば、宛先ノード(例えば、宛先ノード104)は、ワイヤレスネットワーク(例えば、ワイヤレスネットワーク100)内のソースノード(例えば、ソースノード102)から、アドバタイジング拡張パケット(例えば、アドバタイジング拡張402)を受信する。宛先ノードは、アドバタイジングチャネル202のうちの1つを介してアドバタイジング拡張パケットを受信する。
【0061】
ブロック604において、宛先ノードは、受信したアドバタイジング拡張パケットに含まれる乱数フィールドの値と、第1のローカルフィルタリング身分解決キーとに基づいて、第1のローカルハッシュ値を生成する。例えば、上記の式1に記載されたように、宛先ノードは、受信したアドバタイジング拡張パケット内の乱数フィールド(例えば、prand、すなわち、乱数フィールド408)の値およびフィルタリング身分解決キー(例えば、IRKfilt)をハッシュすることによって、第1のローカルハッシュ値を生成する。
【0062】
ブロック606において、宛先ノードは、第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とを比較することによって、第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とがマッチするか否かを判断する。例えば、宛先ノードは、第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値(例えば、ハッシュ値410)とを比較することによって、第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とがマッチするか否かを判断する。
【0063】
第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とがマッチする場合、宛先ノードは、ブロック608において、アドバタイジング拡張パケットに示された時間で、データチャネル上のプロトコルデータユニットを受信する。例えば、宛先ノードは、データチャネル(例えば、データチャネル204)にホッピングし、アドバタイジング拡張パケットに示された時間でデータチャネル上のアドバタイジング拡張データPDU(例えば、PDU220)を受信する。受信したアドバタイジング拡張データPDUが追加のアドバタイジング拡張データPDU(例えば、一連のアドバタイジング拡張データPDUのうち、次のアドバタイジング拡張データPDU)に指向するアドバタイジングポインタを含む場合、宛先ノードは、ブロック610において、以前に受信したアドバタイジング拡張パケットに示された時間で、データチャネル上の追加のプロトコルデータユニットを受信する。追加のアドバタイジング拡張データPDUが一連のアドバタイジング拡張データPDUのうち、次のアドバタイジング拡張データPDUに指向するアドバタイジングポインタをさらに含む場合、宛先ノードは、一連のアドバタイジング拡張データPDUのうち、最後のアドバタイジング拡張データPDUを受信するまで、ブロック610を繰り返す。ブロック608および610において、受信する追加のアドバタイジング拡張データPDUが存在しない(例えば、直近に受信したアドバタイジング拡張データPDUがアドバタイジングポインタを含まない)場合、宛先ノードは、ブロック602に戻り、別のアドバタイジング拡張パケットを取得するために、1つ以上のアドバタイジングチャネルの走査を再開する。
【0064】
第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とがマッチしない場合、宛先ノードは、ブロック612において、受信したアドバタイジング拡張パケットを破棄し、ブロック602に戻り、別のアドバタイジング拡張パケットを取得するために、1つ以上のアドバタイジングチャネルを走査する。例えば、宛先ノードは、受信したアドバタイジング拡張パケットを破棄し、別のアドバタイジング拡張パケットを取得するために、1つ以上のアドバタイジングチャネル(例えば、アドバタイジングチャネル202)を走査する。宛先ノードが別のアドバタイジング拡張パケットを受信する場合、プロセスは、602に進む。
【0065】
例示的な環境
図7は、(図1を参照して説明した)ワイヤレスネットワーク100と、解決可能なプライベートアドレスを用いたネットワークフィルタリングの実施形態とを実装することができる例示的な環境700を示す。一般的に、環境700は、任意の数および種類のワイヤレスネットワーク装置を有するスマートホームまたは他の種類の構造物の一部として実装されるワイヤレスネットワーク100を含み、これらのメッシュネットワーク装置は、ワイヤレスネットワーク、例えばスター、メッシュ、または他のトポロジーを有するワイヤレスネットワークにおいて通信するように構成される。例えば、ワイヤレスネットワーク装置は、サーモスタット702、(例えば、煙および/または一酸化炭素などの)危険検出装置704、(例えば、屋内および屋外の)カメラ706、(例えば、屋内および屋外の)照明ユニット708、および(例えば、スマートホーム環境内の)構造物712の内部および/または外部に実装された任意の他の種類のワイヤレスネットワーク装置710を含むことができる。この例において、ワイヤレスネットワーク装置はまた、前述した装置、例えばノード102を含むことができる。
【0066】
環境700において、任意の数のワイヤレスネットワーク装置は、無線で互いに通信し、相互作用する無線相互接続として実装することができる。ワイヤレスネットワーク装置は、多種多様の有用なスマートホーム目的および実装を提供するために、互いにおよび/または中央サーバもしくはクラウドコンピューティングシステムと共にシームレスに統合することができるモジュール装置、インテリジェント装置、マルチセンシング装置、またはネットワーク接続装置である。本明細書に記載された装置として実装され得るワイヤレスネットワーク装置の例は、図7に示され、図7を参照して説明される。
【0067】
実装形態において、サーモスタット702は、スマートホーム環境の周囲気候特性(例えば、温度および/または湿度)を検出し、HVACシステムを制御するためのネスト(登録商標)ラーニングサーモスタットを含むことができる。ラーニングサーモスタット702および他のスマート装置は、居住者が装置に入力した設定値を取り込むことによって「学習する」。例えば、サーモスタットは、朝および夜の好ましい温度設定値、構造物の居住者が寝ているときまたは起きているときの好ましい温度設定値、および居住者が在宅していないときまたは在宅しているときの好ましい温度設定値を学習する。
【0068】
危険検出装置704は、危険物質または危険物質を示す物質(例えば、煙、火、または一酸化炭素)の存在を検出するように実装されてもよい。ワイヤレス相互接続の例において、危険検出装置704は、構造物内の火災を示す煙の存在を検出することができる。この場合、最初に煙を検出した危険検出装置は、接続された全てのワイヤレスネットワーク装置に低電力ウェイクアップ信号を放送することができる。他の危険検出装置704は、放送されたウェイクアップ信号を受信すると、危険を検出するためおよび無線通信の警告メッセージを受信するために、高電力状態に移行することができる。また、照明ユニット708は、放送されたウェイクアップ信号を受信すると、危険を検出した領域を照明し、問題区域を特定するために、作動することができる。別の例において、照明ユニット708は、構造物内の問題区域または領域を示すように、例えば検出した火災または不法侵入を示すように1つの照明色で作動することができ、または安全区域および/または構造物から逃げる経路を示すように異なる照明色で作動することができる。別の例において、ドアベルまたはドア監視システムは、存在が検出されると黄色(または他の色)で点滅し、アラームが作動されると赤色で点滅するLEDを含んでもよい。
【0069】
様々な構成において、ワイヤレスネットワーク装置710は、玄関インターフェイス装置を含むことができる。玄関インターフェイス装置は、ネットワークに接続されたドアロックシステムと協働して、1つの場所、例えば構造物712の外側ドアに接近する人またはそこから退去する人を検出し、応答する。玄関インターフェイス装置は、人がスマートホーム環境に接近するまたは進入することに基づいて、他のワイヤレスネットワーク装置と相互作用することができる。玄関インターフェイス装置は、ドアベル機能を制御して、音声または視覚的手段によって人の接近または出発を報知することができ、居住者が帰宅するときにセキュリティシステムを解除し、居住者が離開するときにセキュリティシステムを起動するように、セキュリティシステムを制御することができる。また、ワイヤレスネットワーク装置710は、例えば、周囲照明条件を検出し、(例えば、占有センサを用いて)部屋占有状態を検出し、および1つ以上の照明灯の全光状態および/または調光状態を制御する他のセンサおよび検出装置を含むことができる。場合によって、センサおよび/または検出器は、天井ファンなどの電力状態または速度を制御することができる。また、センサおよび/または検出装置は、部屋または構造物の占有状況を検出し、部屋または構造物が占有されていない場合に、例えば電気コンセントの電力供給を制御することができる。
【0070】
また、ワイヤレスネットワーク装置710は、冷蔵庫、ストーブ、オーブン、洗濯機、乾燥機、空調機、プールヒータ、灌漑システム、セキュリティシステムなどの接続器具および/または制御システム、およびテレビ、娯楽システム、コンピュータ、インターホンシステム、車庫ドア開閉装置、天井ファン、コントロールパネルなどの他の電子装置およびコンピューティング装置を含むことができる。上述したように、器具、装置またはシステムは、ワイヤレスネットワークに差し込まれると、ワイヤレスネットワークにそれ自体を報知することができ、スマートホーム内のワイヤレスネットワークの制御および装置と自動的に統合することができる。なお、ワイヤレスネットワーク装置710は、物理的に構造物の外部に配置され、ワイヤレス通信範囲に位置する装置、例えば水泳プールヒータまたは灌漑システムを制御する装置を含んでもよい。
【0071】
ワイヤレスネットワーク100は、ワイヤレスネットワーク100の外部に位置する外部ネットワークと通信するための境界ルータ714を含む。境界ルータ714は、アクセスポイント716に接続され、アクセスポイント716は、インターネットなどの通信ネットワーク718に接続される。通信ネットワーク718に接続されているクラウドサービス720は、ワイヤレスネットワーク100内の装置に関連するおよび/または使用するサービスを提供する。一例として、クラウドサービス720は、スマートフォン、タブレットなどのエンドユーザ装置をワイヤレスネットワーク100内の装置に接続するアプリケーション、ワイヤレスネットワーク100から取得されたデータを処理してエンドユーザに提示するアプリケーション、1つ以上のワイヤレスネットワーク100内の装置をクラウドサービス720のユーザアカウントにリンクするアプリケーション、ワイヤレスネットワーク100内の装置を提供および更新するアプリケーションなどを含むことができる。例えば、ユーザは、ネットワーク接続されたコンピュータまたは携帯装置、例えば携帯電話またはタブレット装置を使用して、スマートホーム環境内のサーモスタット602および他のワイヤレスネットワーク装置を制御することができる。また、ワイヤレスネットワーク装置は、境界ルータ714およびアクセスポイント716を介して、中央サーバまたはクラウドコンピューティングシステムに情報を通信することができる。データ通信は、様々なカスタムもしくは標準ワイヤレスプロトコル(例えば、WiFi(登録商標)、低電力用のZigBee(登録商標)、BLE、6LoWPANなど)のいずれかおよび/または様々なカスタムもしくは標準ワイヤードプロトコル(CAT6イーサネット(登録商標)、HomePlugなど)のいずれかを用いて実施されてもよい。
【0072】
ワイヤレスネットワーク100内のワイヤレスネットワーク装置は、スマートホーム環境内のワイヤレスネットワーク100を構成するための低電力ノードおよび通信ノードとして機能することができる。ネットワーク内の各々の低電力ノードは、検知しているものに関するメッセージを定期的に送信することができ、環境内の他の低電力ノードは、それ自体のメッセージを送信することに加えて、上記メッセージを複製することができるため、ワイヤレスネットワーク全体を通してノードからノードへ(すなわち、装置から装置へ)上記メッセージを通信することができる。ワイヤレスネットワーク装置は、特にバッテリで駆動されているときに、低電力通信プロトコルを利用して、メッセージを受信し、メッセージを他の通信プロトコルに変換し、変換したメッセージを他のノードおよび/または中央サーバもしくはクラウド計算システムに送信することによって、電力を節約するように実装することができる。例えば、占有センサおよび/または周囲光センサは、室内の居住者を検出すると共に周囲光を測定し、周囲光センサによって室内が暗いことを検出したときおよび占有センサによって人が室内にいることを検出したときに、光源を作動させることができる。また、センサは、部屋の占有状況および部屋内の光量に関するメッセージ(占有センサによって人が室内にいることを検出した瞬間メッセージを含む)を定期的に送信する低電力無線通信チップ(例えば、ZigBee(登録商標)チップ、ブルートゥース(登録商標)チップ、BLEチップ)を含むことができる。上述したように、これらのメッセージは、ワイヤレスネットワークを介して、スマートホーム環境内でノードからノードへ(すなわち、スマート装置からスマート装置へ)無線で送信されてもよく、インターネットを介して中央サーバまたはクラウドコンピューティングシステムに無線で送信されてもよい。
【0073】
他の構成において、各々のワイヤレスネットワーク装置は、スマートホーム環境内のアラームシステムの「トリップワイヤ」として機能することができる。例えば、侵入者が構造物または環境の窓、ドアおよび他の進入口に配置されたアラームセンサによる検出を回避した場合、アラームは、依然として、ワイヤレスネットワーク内の1つ以上の低電力メッシュノードから、占有状況、動き、熱、音などのメッセージを受信することによって作動される。他の実装形態において、人が構造物内の一部屋から別の部屋に移動するときに、ワイヤレスネットワークは、照明ユニット708を自動的にオンおよびオフにすることができる。例えば、ワイヤレスネットワーク装置は、構造物における人の移動を検出し、ワイヤレスネットワークのノードを介して、対応するメッセージを通信することができる。占有されている部屋を示すメッセージに応じて、メッセージを受信した他のワイヤレスネットワーク装置が起動および/または停止することができる。上述したように、ワイヤレスネットワークは、適切な照明ユニット708をオンにして、安全な出口を示すことによって、緊急時に出口の照明を提供することができる。また、照明ユニット708をオンにすることによって、人が構造物から安全に退出するための退出経路の移動方向を示すことができる。
【0074】
また、様々なワイヤレスネットワーク装置は、例えば、装着型コンピューティング装置と通信するように統合され、構造物の居住者を識別および特定し、それに応じて温度、照明、サウンドシステムなどを調整するように、実装されてもよい。他の実装形態において、RFID感知(例えば、人がRFIDブレスレット、ネックレース、またはキーフォブを装着している場合)、合成視覚技術(例えば、ビデオカメラおよび顔認識プロセッサ)、音声技術(例えば、声または音パターン、振動パターンの識別)、超音波感知/画像化技術、および赤外線または近距離通信(NFC)技術(例えば、人が赤外線またはNFC対応スマートフォンを装着している場合)は、規則ベース(rule-based)推論エンジンまたは人工知能技術と共に使用され、感知された情報から有用な結論、例えば居住者が構造物または環境内にいる位置を引き出すことができる。
【0075】
他の実装形態において、個人快適領域ネットワーク、個人健康領域ネットワーク、個人安全領域ネットワークおよび/または他の人間向けサービスロボット機能は、より良い性能を達成するために、規則ベース推論技術または人工知能技術に従って、環境内の他のワイヤレスネットワーク装置およびセンサと論理的に統合することによって強化されてもよい。個人健康領域に関する例において、システムは、規則ベース推論および人工知能技術と共に、(例えば、ワイヤレスネットワーク装置およびセンサのいずれかを用いて)ペットが居住者の現在位置に向かって移動しているか否かを検出することができる。同様に、危険検知サービスロボットは、環境内の煙レベルの小さな増加が料理作りに起因するものであり、本当の危険に起因していない可能性が高いという推論に基づいて、キッチンの温度および湿度が上昇しており、煙検知閾値などの危険検知閾値を一時的に超えることを知らせることができる。任意の種類の監視、検知および/またはサービスを行うように構成された任意のサービスロボットは、ワイヤレス相互接続プロトコルに準拠して、ワイヤレスネットワーク上で通信を行うためのワイヤレスノード装置として実装されてもよい。
【0076】
また、ワイヤレスネットワーク装置710は、スマートホーム環境の構造物にいる各居住者のために提供されたスマートアラームクロックを含むことができる。例えば、居住者は、アラームクロックをカスタマイズして、次の日または次の週の起床時間を設定することができる。人工知能は、アラームをオフにした居住者の応答を考慮し、好ましい睡眠パターンを経時的に推論することができる。また、ワイヤレスネットワーク装置内に配置されたセンサ、例えば超音波センサ、パッシブIRセンサなどから得られたデータに基づいて判断された各居住者の固有シグネチャに基づいて、ワイヤレスネットワーク内でその居住者を追跡することができる。居住者の固有シグネチャは、動きパターン、音声、身長、体重、および顔認識の組み合わせを含む。
【0077】
ワイヤレス相互接続の例において、個人の起床時間をサーモスタット702に関連付けることができる。これによって、予め構造物を所望の睡眠温度設定値または起床温度設定値に温めるまたは冷やすように、HVACシステムを効率的に制御することができる。好ましい設定値は、例えば、人が睡眠前および起床時にサーモスタットに設定した温度を収集することによって、経時的に学習することができる。また、収集されたデータは、呼吸パターン、心拍数、動きなどの人の生体計測指標を含むことができる。これらのデータと、人が実際に起きていることを示すデータとの組み合わせに基づいて、推論を導くことができる。他のワイヤレスネットワーク装置は、データを使用して、他のスマートホーム目的、例えば、環境を所望の設定値に予め温めるまたは冷やすようにサーモスタット702を調整することおよびライト708を点灯または消灯することを達成することができる。
【0078】
実装形態において、ワイヤレスネットワーク装置を利用して、音、振動および/または動きを感知することによって、スマートホーム環境における流水を検出し、水の使用および消耗のアルゴリズムおよびマッピングに基づいて、水の使用を推定することができる。これを用いて、「水使用音声フィンガープリント」とも呼ばれる家庭内の各水源のシグネチャまたはフィンガープリントを決定することができる。同様に、ワイヤレスネットワーク装置を利用して、望ましくない有害生物、例えば、マウスおよび他の齧歯類動物ならびにシロアリ、カクトロチおよび他の昆虫の僅かな音、振動および/または動きを検出することができる。システムは、早期検出および予防のために、例えば警告メッセージを用いて、疑わしい有害生物が環境内に存在していることを居住者に通知することができる。
【0079】
環境700は、ハブ722として機能する1つ以上のワイヤレスネットワーク装置を含むことができる。ハブ722は、汎用のホームオートメーション(home automation)ハブであってもよく、または特定用途向けハブ、例えばセキュリティハブ、エネルギー管理ハブ、HVACハブであってもよい。また、ハブ722の機能は、スマートサーモスタット装置または境界ルータ714などの任意のワイヤレスネットワーク装置に統合されてもよい。構造物712内のハブ722のホスティング機能は、ユーザのインターネット接続が信頼できないときに信頼性を向上させることができ、クラウドサービス720に接続する動作の遅延時間を低減することができ、ワイヤレスネットワーク装置間のローカルアクセスに関するシステムおよび制御制約を満たすことができる。
【0080】
さらに、例示的な環境700は、スマートスピーカ724を含む。スマートスピーカ724は、スマートホーム装置の音声制御を含む音声アシスタントサービスを提供する。ハブ722の機能は、スマートスピーカ724にホストされてもよい。スマートスピーカ724は、ワイヤレスネットワーク、WiFi(登録商標)、またはその両方を介して通信するように構成されてもよい。
【0081】
例示的な装置
図8は、本明細書に記載された解決可能なプライベートアドレスを用いたネットワークフィルタリングの1つ以上の実施形態に従って、ワイヤレスネットワーク内のの任意のメッシュネットワーク装置として実装され得る例示的なワイヤレスネットワーク装置800、例えばソースノード102または宛先ノード104を示す。装置800は、電子回路、マイクロプロセッサ、メモリ、入出力(I/O)論理制御、通信インターフェイスおよびコンポーネント、ならびにワイヤレスネットワーク内の装置を実装する他のハードウェア、ファームウェア、および/またはソフトウェアと統合されてもよい。
【0082】
この例において、ワイヤレスネットワーク装置800は、実行可能命令を処理するための低電力マイクロプロセッサ802および高電力マイクロプロセッサ804(例えば、マイクロコントローラまたはデジタル信号プロセッサ)を含む。また、この装置は、(例えば、電子回路を含む)入出力(I/O)論理制御806を含む。マイクロプロセッサは、集積回路、プログラマブルロジック装置、1つ以上の半導体を用いて形成されたロジック装置、ならびにシステムオンチップ(SoC)として実装されたプロセッサおよびメモリシステムなどの他のシリコンおよび/またはハードウェア実装コンポーネントを含むことができる。代替的にまたは追加的に、この装置は、ソフトウェア、ハードウェア、ファームウェア、または処理回路および制御回路によって実装され得る固定論理回路のいずれか1つまたは組み合わせで実装されてもよい。また、低電力マイクロプロセッサ802および高電力マイクロプロセッサ804は、装置の1つ以上の異なる機能をサポートすることができる。例えば、高出力マイクロプロセッサ804は、計算集約的な処理を実行することができ、低出力マイクロプロセッサ802は、複雑でない処理、例えば1つ以上のセンサ808による危険または温度の検出を管理することができる。また、低電力プロセッサ802は、計算集約的な処理を行うための高電力プロセッサ804をウェイクアップまたは初期化することができる。
【0083】
1つ以上のセンサ808は、様々な特性、例えば、加速度、温度、湿度、水、供給電力、近接度、外部動き、装置動き、音声信号、超音波信号、光信号、火災、煙、一酸化炭素、グローバル測位衛星(GPS)信号、無線周波数(RF)信号、他の電磁信号または電磁場を検出するように実装されてもよい。したがって、センサ808は、温度センサ、湿度センサ、危険関連センサ、他の環境センサ、加速度計、マイクロフォン、光センサ、カメラ(例えば、電荷結合装置またはビデオカメラ)、能動または受動放射線センサ、GPS受信器、および無線周波数検出装置のいずれか1つまたはそれらの組み合わせを含むことができる。実装形態において、ワイヤレスネットワーク装置800は、1つ以上の一次センサと、1つ以上の二次センサとを含むことができる。一次センサは、装置の重要な動作(例えば、サーモスタットによる温度の検知または煙検出装置による煙の検知)に関するデータを検出し、二次センサは、エネルギー効率またはスマート操作などの目的を達成するために使用することができる他の種類のデータ(例えば、動き、光または音)を検出することができる。
【0084】
ワイヤレスネットワーク装置800は、メモリ装置コントローラ810と、任意の種類の不揮発性メモリおよび/または他の適切な電子データ記憶装置などのメモリ装置812とを含む。また、ワイヤレスネットワーク装置800は、様々なファームウェアおよび/またはソフトウェア、例えば、コンピュータ実行可能な命令としてメモリによって記憶され、マイクロプロセッサによって実行されるオペレーティングシステム814を含むことができる。また、この装置ソフトウェアは、解決可能なプライベートアドレスを用いたネットワークフィルタリングの実施形態を実装するアドレス指定アプリケーション816を含むことができる。また、ワイヤレスネットワーク装置800は、別の装置または周辺構成要素とインターフェイスするための装置インターフェイス818と、構成要素間のデータ通信を行うためにワイヤレスネットワーク装置の様々な構成要素を結合するための統合データバス820とを含む。ワイヤレスネットワーク装置内のデータバスは、異なるバス構造および/またはバスアーキテクチャのいずれか1つまたは組み合わせとして実装されてもよい。
【0085】
装置インターフェイス818は、(例えば、ユーザインターフェイスとして)ユーザから入力を受信し、および/またはユーザに情報を提供することができ、受信した入力を用いて、設定を決定することができる。また、装置インターフェイス818は、ユーザ入力に応答する機械コンポーネントまたは仮想コンポーネントを含むことができる。例えば、ユーザは、摺動または回転可能なコンポーネントを機械的に動かすことができ、またはタッチパッドに沿った動きを検出することができる。これらの動きは、装置の設定調整に対応する。物理的および仮想的な可動ユーザインターフェイスコンポーネントを介して、ユーザは、見掛け連続体の一部に沿って設定を入力することができる。また、装置インターフェイス818は、任意の数の周辺機器、例えば、ボタン、キーパッド、スイッチ、マイクロフォン、およびイメージャ(例えば、カメラ装置)から入力を受信することができる。
【0086】
ワイヤレスネットワーク装置800は、例えばワイヤレスネットワーク内の他のワイヤレスネットワーク装置と通信するためのワイヤレスネットワークインターフェイス、およびインターネットを介してネットワークと通信するための外部ネットワークインターフェイスなどのネットワークインターフェイス822を含むことができる。また、ワイヤレスネットワーク装置800は、複数の異なるワイヤレス通信システムに配置され、ワイヤレスネットワークインターフェイスを介して他のワイヤレスネットワーク装置とワイヤレス通信するためのワイヤレス無線システム824を含む。ワイヤレス無線システム824は、WiFi(登録商標)、ブルートゥース(登録商標)、モバイルブロードバンド、および/またはポイントツーポイントIEEE802.15.4を含むことができる。異なる無線システムの各々は、特定の無線通信のために実装された無線装置、アンテナ、およびチップセットを含むことができる。また、ワイヤレスネットワーク装置800は、バッテリなどの電源826を含むおよび/または線路電圧に接続される。AC電源を用いて、装置のバッテリを充電することができる。
【0087】
以下の本文において、いくつかの実施例を説明する。
【実施例1】
【0088】
ワイヤレスネットワーク内のソースノードがパケットを宛先ノードにアドレス指定するための方法であって、方法は、
ソースノードが、身分解決キーおよび乱数フィールドの値をハッシュすることによって、アドレスハッシュを生成することを含み、身分解決キーは、アドレス生成入力データから暗号的に導出され、
ソースノードが、アドバタイズメントアドレスを形成することを含み、アドバタイズメントアドレスは、アドレスハッシュの一部を含み、
ソースノードが、アドバタイズメントアドレスをアドバタイジング拡張パケットに挿入することと、
ソースノードが、ワイヤレスネットワークを介してアドバタイジング拡張パケットを送信することとを含み、宛先ノードは、アドレスハッシュを用いて、アドバタイジング拡張パケットをフィルタリングする。
【実施例2】
【0089】
実施例1に記載の方法は、ソースノードが、暗号ベースのメッセージ認証コードを用いて、フィルタ鍵およびアドレス入力生成データをハッシュすることによって身分解決キーを生成することをさらに含む。
【実施例3】
【0090】
実施例2に記載の方法において、
暗号ベースのメッセージ認証コードは、高度暗号化標準暗号ベースのメッセージ認証コード(AES-CMAC)である。
【実施例4】
【0091】
実施例2または実施例3に記載の方法において、
アドレス入力生成データは、アドレス種類フィールドと、ソースノードおよび宛先ノードを含むワイヤレスネットワークのネットワーク識別子と、宛先アドレスとを含む。
【実施例5】
【0092】
実施例2または実施例3に記載の方法において、
アドレス入力生成データは、アドレス種類フィールドと、ソースノードおよび宛先ノードを含むワイヤレスネットワークのネットワーク識別子とを含む。
【実施例6】
【0093】
実施例4または実施例5に記載の方法において、
宛先アドレスは、ショートアドレス、ロングアドレス、またはブロードキャストアドレスである。
【実施例7】
【0094】
実施例6に記載の方法において、
ショートアドレスは、16ビットアドレスであり、ロングアドレスは、64ビットアドレスであり、ブロードキャストアドレスは、16ビットアドレスである。
【実施例8】
【0095】
実施例6に記載の方法において、
ワイヤレスネットワークは、ブルートゥース(登録商標)ワイヤレスネットワークであり、
ショートアドレスは、16ビットの宛先アドレスであり、
ロングアドレスは、64ビットの宛先アドレスである。
【実施例9】
【0096】
実施例2または実施例3に記載の方法において、
アドレス入力生成データは、ソースノードおよび宛先ノードを含むワイヤレスネットワークのネットワーク識別子を含む。
【実施例10】
【0097】
実施例1から9のいずれか一項に記載の方法において、
身分解決キーおよび乱数フィールドの値をハッシュすることによってアドレスハッシュを形成することは、ハッシングの出力を前記の最下位24ビットに切り捨てることによって、アドレスハッシュを形成することをさらに含む。
【実施例11】
【0098】
実施例1から10のいずれか一項に記載の方法において、
アドバタイズメントアドレスを形成することは、
乱数を生成することと、
プライベートアドレス種類フィールドと生成された乱数とを連結することによって、乱数フィールドを形成することと、
乱数フィールドをアドバタイジング拡張パケットに挿入することとをさらに含む。
【実施例12】
【0099】
実施例11に記載の方法において、
乱数フィールドは、ブルートゥース(登録商標)prandである。
【実施例13】
【0100】
実施例1から12のいずれか一項に記載の方法において、
ワイヤレスネットワークを介してアドバタイジング拡張パケットを送信することは、1つ以上のアドバタイジングチャネルを用いて、アドバタイジング拡張パケットを送信することを含む。
【実施例14】
【0101】
実施例1から12のいずれか一項に記載の方法は、ソースノードが、データチャネルを示す印しおよびプロトコルデータユニットの送信時間を示す印しをアドバタイジング拡張のアドバタイズメントデータフィールドに挿入することをさらに含む。
【実施例15】
【0102】
実施例14に記載の方法は、ソースノードが、示された時間で示されたデータチャネル上のプロトコルデータユニットを送信することをさらに含む。
【実施例16】
【0103】
実施例1から15のいずれか一項に記載の方法において、
ワイヤレスネットワークは、ブルートゥース(登録商標)低エネルギーネットワークであり、
アドバタイジング拡張パケットは、ブルートゥース(登録商標)低エネルギーアドバタイズメントパケットである。
【実施例17】
【0104】
実施例1から16のいずれかに記載の方法において、
身分解決キーおよび乱数フィールドの値をハッシュすることによってアドレスハッシュを形成することは、ソースノードが、ハッシングを実行する前に、パディングビットと乱数とを連結することをさらに含む。
【実施例18】
【0105】
ワイヤレスネットワーク内の宛先ノードがアドバタイジング拡張パケットのアドレスフィルタリングを行うための方法であって、方法は、
宛先ノードが、ワイヤレスネットワーク内のソースノードから、アドバタイジング拡張パケットを受信することと、
宛先ノードが、受信したアドバタイジング拡張パケットに含まれる乱数フィールドの値と、第1のローカルフィルタリング身分解決キーとに基づいて、第1のローカルハッシュ値を生成することと、
宛先ノードが、第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とを比較することによって、第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とがマッチするか否かを判断することと、
宛先ノードが、第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とがマッチすることに応答して、アドバタイジング拡張パケットに示された時間で、データチャネル上のプロトコルデータユニットを受信することとを含む。
【実施例19】
【0106】
実施例18に記載の方法において、
乱数フィールドは、ブルートゥース(登録商標)prandである。
【実施例20】
【0107】
実施例18または19に記載の方法において、
第1のローカルフィルタリング身分解決キーは、宛先ノードに知られている唯一のローカルフィルタリング身分解決キーであり、
方法は、
第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とがマッチしない場合、宛先ノードが、受信したアドバタイジング拡張パケットを破棄することと、
宛先ノードが、別のアドバタイジング拡張パケットを取得するために、1つ以上のアドバタイジングチャネルを走査することとをさらに含む。
【実施例21】
【0108】
実施例18から20のいずれか一項に記載の方法において、
宛先ノードは、複数のローカルフィルタリング身分解決キーを含み、
方法は、
第1のローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とがマッチしない場合、宛先ノードが、受信したアドバタイジング拡張パケットに含まれる乱数フィールドの値および残りの複数のローカルフィルタリング身分解決キーの各ローカルフィルタリング身分解決キーに基づいて、残りの複数のローカルフィルタリング身分解決キーの各ローカルフィルタリング身分解決キーのローカルハッシュ値を生成することと、
各ローカルフィルタリング身分解決キーのローカルハッシュ値とアドバタイジング拡張パケットに含まれるハッシュ値とがマッチする場合、宛先ノードが、アドバタイジング拡張パケットに示された時間で、データチャネル上のプロトコルデータユニットを受信することとをさらに含む。
【実施例22】
【0109】
実施例18から21のいずれか一項に記載の方法において、
第1のローカルハッシュ値を生成することは、暗号ベースのメッセージ認証コードを用いて、フィルタ鍵およびアドレス入力生成データをハッシュすることによって身分解決キーを生成することを含む。
【実施例23】
【0110】
実施例22に記載の方法において、
暗号ベースのメッセージ認証コードは、高度暗号化標準暗号ベースのメッセージ認証コード(AES-CMAC)である。
【実施例24】
【0111】
実施例22または23に記載の方法において、
アドレス入力生成データは、アドレス種類フィールドと、ソースノードおよび宛先ノードを含むワイヤレスネットワークのネットワーク識別子と、宛先アドレスとのうちの1つ以上を含む。
【実施例25】
【0112】
実施例22に記載の方法において、
アドレス入力生成データは、宛先アドレスを含み、
宛先アドレスは、ショートアドレスまたはロングアドレスである。
【実施例26】
【0113】
実施例24または25に記載の方法において、
ワイヤレスネットワークは、ブルートゥース(登録商標)ワイヤレスネットワークであり、
ショートアドレスは、16ビットの宛先アドレスであり、
ロングアドレスは、64ビットの宛先アドレスである。
【実施例27】
【0114】
実施例18から26のいずれか一項に記載の方法において、
ワイヤレスネットワークを介してアドバタイジング拡張パケットを受信することは、アドバタイジングチャネルを介してアドバタイジング拡張パケットを受信することを含む。
【実施例28】
【0115】
ワイヤレスネットワーク装置であって、
ワイヤレスネットワークインターフェイスと、
プロセッサと、
実施例1から27のいずれか1つを実行するように構成されたアドレス指定アプリケーションを含むメモリとを備える。
【実施例29】
【0116】
実施例27のワイヤレスネットワーク装置は、サーモスタット、危険検出器、カメラ、照明ユニット、玄関インターフェイス、ドアロック、占有センサ、天井ファン、電気コンセント、セキュリティセンサ、セキュリティハブ、ガレージドアオープナ、制御パネル、境界ルータ、ハブ、スマートスピーカ、またはその任意の組み合わせである。
【0117】
解決可能なプライベートアドレスを用いたネットワークフィルタリングの実施形態を、特徴および/または方法に特有の用語で説明してきたが、添付の特許請求の範囲の主題は、必ずしも、記載された特定の特徴または方法に限定されない。むしろ、特定の特徴および方法は、解決可能なプライベートアドレスを用いたネットワークフィルタリングの実施形態として開示され、他の同等の特徴および方法は、添付の特許請求の範囲内にあることが意図される。さらに、様々な異なる態様が記載されたが、記載された各態様が、独立して実装されてもよく、または記載された1つ以上の他の態様と共に実装されてもよい。
図1
図2
図3
図4
図5
図6
図7
図8