特許第6598771号(P6598771)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ ランディス・ギア イノベーションズ インコーポレイテッドの特許一覧

特許6598771データ・ネットワークにおける分散データ送信
<>
  • 特許6598771-データ・ネットワークにおける分散データ送信 図000002
  • 特許6598771-データ・ネットワークにおける分散データ送信 図000003
  • 特許6598771-データ・ネットワークにおける分散データ送信 図000004
  • 特許6598771-データ・ネットワークにおける分散データ送信 図000005
  • 特許6598771-データ・ネットワークにおける分散データ送信 図000006
  • 特許6598771-データ・ネットワークにおける分散データ送信 図000007
  • 特許6598771-データ・ネットワークにおける分散データ送信 図000008
  • 特許6598771-データ・ネットワークにおける分散データ送信 図000009
  • 特許6598771-データ・ネットワークにおける分散データ送信 図000010
  • 特許6598771-データ・ネットワークにおける分散データ送信 図000011
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6598771
(24)【登録日】2019年10月11日
(45)【発行日】2019年10月30日
(54)【発明の名称】データ・ネットワークにおける分散データ送信
(51)【国際特許分類】
   H04L 29/04 20060101AFI20191021BHJP
   H04W 84/18 20090101ALI20191021BHJP
   H04W 92/18 20090101ALI20191021BHJP
【FI】
   H04L13/00 303Z
   H04W84/18
   H04W92/18
【請求項の数】14
【全頁数】27
(21)【出願番号】特願2016-526078(P2016-526078)
(86)(22)【出願日】2014年9月23日
(65)【公表番号】特表2017-500771(P2017-500771A)
(43)【公表日】2017年1月5日
(86)【国際出願番号】US2014056861
(87)【国際公開番号】WO2015060969
(87)【国際公開日】20150430
【審査請求日】2017年9月19日
(31)【優先権主張番号】14/059,846
(32)【優先日】2013年10月22日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】513113895
【氏名又は名称】ランディス・ギア イノベーションズ インコーポレイテッド
【氏名又は名称原語表記】LANDIS+GYR INNOVATIONS, INC.
(74)【代理人】
【識別番号】100118913
【弁理士】
【氏名又は名称】上田 邦生
(74)【代理人】
【識別番号】100142789
【弁理士】
【氏名又は名称】柳 順一郎
(74)【代理人】
【識別番号】100163050
【弁理士】
【氏名又は名称】小栗 眞由美
(74)【代理人】
【識別番号】100201466
【弁理士】
【氏名又は名称】竹内 邦彦
(72)【発明者】
【氏名】ジェイコブ,ジョン
(72)【発明者】
【氏名】ジェファーソン,ダレル
【審査官】 鈴木 肇
(56)【参考文献】
【文献】 特開2006−279950(JP,A)
【文献】 特開2009−033642(JP,A)
【文献】 特開2009−278557(JP,A)
【文献】 特開2012−098906(JP,A)
【文献】 特開2011−170591(JP,A)
【文献】 米国特許出願公開第2013/0016654(US,A1)
【文献】 国際公開第2007/015482(WO,A1)
【文献】 特表2012−507887(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04B 7/24− 7/26
H04L 12/00−12/28
H04L 12/44−12/955
H04L 13/02−13/18
H04L 29/00−29/12
H04W 4/00−99/00
(57)【特許請求の範囲】
【請求項1】
メッシュ・ネットワークにおける分散データ送信用に構成された分散デバイスであって、
ヘッダおよびペイロード・データを備えるデータ・メッセージを受信するように構成されたネットワーク・インターフェース・デバイスと、
前記ネットワーク・インターフェース・デバイスに接続された処理デバイスと、を有し、
前記処理デバイスは、追加の分散デバイスが近隣デバイスであるかどうかを識別し、
前記追加の分散デバイスが前記近隣デバイスであると識別した場合に
前記処理デバイスが、
前記追加の分散デバイスが前記ヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別されない旨を決定し、
前記ペイロード・データおよび追加のヘッダを備える追加のデータ・メッセージを生成
前記追加のヘッダ前記ペイロード・データを受信するように選択されているものとして前記追加の分散デバイスを識別するように構成され
前記ネットワーク・インターフェース・デバイス、前記追加のデータ・メッセージを前記追加の分散デバイスに送信するように構成され、
前記追加の分散デバイスが前記近隣デバイスであると識別することが、
前記追加の分散デバイスから受信した信号の受信信号強度インジケータが、しきい値受信信号強度インジケータを超える旨を決定することと、
前記追加の分散デバイスから受信した、通信リンクを確立するための過去の試行が成功したことを示す率であるティックル率が、しきい値ティックル率を超える旨を決定することと、
記追加の分散デバイスが、前記ペイロード・データの所期の受信側デバイスである旨を決定することと、
のうちの少なくとも1つを含む分散デバイス。
【請求項2】
メッシュ・ネットワークにおける分散データ送信用のシステムであって、
第1の分散デバイスを有し、
前記第1の分散デバイスは、
第1のヘッダおよびペイロード・データを備える第1のデータ・メッセージを受信するように構成された第1のネットワーク・インターフェース・デバイスと、
第1の処理デバイスと、を有し、
前記第1の処理デバイスは、第2の分散デバイスが前記第1の処理デバイスの近隣デバイスであるかどうかを識別し、
前記第2の分散デバイスが前記第1の分散デバイスの近隣デバイスであると識別した場合に、
前記第1の処理デバイスが、
前記第2の分散デバイスが前記第1のヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別されない旨を決定し、
前記第2の分散デバイスが前記第1のヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別されない旨の決定に基づいて、第2のデータ・メッセージを生成、前記第2のデータ・メッセージは、前記ペイロード・データおよび第2のヘッダを備え、前記第2のヘッダは前記ペイロード・データを受信するように選択されているものとして前記第2の分散デバイスを識別するように構成され
前記第1のネットワーク・インターフェース・デバイス、前記第2のデータ・メッセージを前記第2の分散デバイスに送信するように構成され、
前記システムは、さらに、
前記第1の分散デバイスに通信可能に接続された前記第2の分散デバイスを有し、
前記第2の分散デバイスは、
前記第2のデータ・メッセージを受信するように構成された第2のネットワーク・インターフェース・デバイスと、
第2の処理デバイスと、を有し、
前記第2の処理デバイスは、
第3の分散デバイスが前記第2のヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別されるかどうかを決定し、
前記第3の分散デバイスが前記第2のヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別されるかどうかに基づいて、前記ペイロード・データを再送信するかどうかを決定するように構成され
前記第2の分散デバイスが前記近隣デバイスであると識別することが、
前記第2のネットワーク・インターフェース・デバイスから前記第1のネットワーク・インターフェース・デバイスによって受信された前のメッセージに関する受信信号強度インジケータを識別することと、
前記受信信号強度インジケータがしきい値受信信号強度インジケータを超える旨を決定することと、
を含むシステム。
【請求項3】
メッシュ・ネットワークにおける分散データ送信用のシステムであって、
第1の分散デバイスを有し、
前記第1の分散デバイスは、
第1のヘッダおよびペイロード・データを備える第1のデータ・メッセージを受信するように構成された第1のネットワーク・インターフェース・デバイスと、
第1の処理デバイスと、を有し、
前記第1の処理デバイスは、第2の分散デバイスが前記第1の処理デバイスの近隣デバイスであるかどうかを識別し、
前記第2の分散デバイスが前記第1の分散デバイスの近隣デバイスであると識別した場合に、
前記第1の処理デバイスが、
前記第2の分散デバイスが前記第1のヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別されない旨を決定し、
前記第2の分散デバイスが前記第1のヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別されない旨の決定に基づいて、第2のデータ・メッセージを生成、前記第2のデータ・メッセージは、前記ペイロード・データおよび第2のヘッダを備え、前記第2のヘッダは前記ペイロード・データを受信するように選択されているものとして前記第2の分散デバイスを識別するように構成され
前記第1のネットワーク・インターフェース・デバイス、前記第2のデータ・メッセージを前記第2の分散デバイスに送信するように構成され、
前記システムは、さらに、
前記第1の分散デバイスに通信可能に接続された前記第2の分散デバイスを有し、
前記第2の分散デバイスは、
前記第2のデータ・メッセージを受信するように構成された第2のネットワーク・インターフェース・デバイスと、
第2の処理デバイスと、を有し、
前記第2の処理デバイスは、
第3の分散デバイスが前記第2のヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別されるかどうかを決定し、
前記第3の分散デバイスが前記第2のヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別されるかどうかに基づいて、前記ペイロード・データを再送信するかどうかを決定するように構成され
前記第2の分散デバイスが前記近隣デバイスであると識別することが、
前記第2の分散デバイスに関連付けられた、通信リンクを確立するための過去の試行が成功したことを示す率であるティックル率を識別することと、
前記ティックル率がしきい値ティックル率を超える旨を決定することと、
を含むシステム。
【請求項4】
メッシュ・ネットワークにおける分散データ送信用のシステムであって、
第1の分散デバイスを有し、
前記第1の分散デバイスは、
第1のヘッダおよびペイロード・データを備える第1のデータ・メッセージを受信するように構成された第1のネットワーク・インターフェース・デバイスと、
第1の処理デバイスと、を有し、
前記第1の処理デバイスは、第2の分散デバイスが前記第1の処理デバイスの近隣デバイスであるかどうかを識別し、
前記第2の分散デバイスが前記第1の分散デバイスの近隣デバイスであると識別した場合に、
前記第1の処理デバイスが、
前記第2の分散デバイスが前記第1のヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別されない旨を決定し、
前記第2の分散デバイスが前記第1のヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別されない旨の決定に基づいて、第2のデータ・メッセージを生成、前記第2のデータ・メッセージは、前記ペイロード・データおよび第2のヘッダを備え、前記第2のヘッダは前記ペイロード・データを受信するように選択されているものとして前記第2の分散デバイスを識別するように構成され
前記第1のネットワーク・インターフェース・デバイス、前記第2のデータ・メッセージを前記第2の分散デバイスに送信するように構成され、
前記システムは、さらに、
前記第1の分散デバイスに通信可能に接続された前記第2の分散デバイスを有し、
前記第2の分散デバイスは、
前記第2のデータ・メッセージを受信するように構成された第2のネットワーク・インターフェース・デバイスと、
第2の処理デバイスと、を有し、
前記第2の処理デバイスは、
第3の分散デバイスが前記第2のヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別されるかどうかを決定し、
前記第3の分散デバイスが前記第2のヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別されるかどうかに基づいて、前記ペイロード・データを再送信するかどうかを決定するように構成され
前記第2の分散デバイスが前記近隣デバイスである旨を決定することが、前記第2の分散デバイスが前記ペイロード・データの所期の受信側デバイスである旨を決定することを含むシステム。
【請求項5】
前記第2の処理デバイスが、
前記第3の分散デバイスが前記第2のヘッダ内で前記ペイロード・データを受信するように選択されているものとして識別される旨を決定し、
前記第2のヘッダが、前記第3の分散デバイスが前記ペイロード・データを受信するように選択されているものとして識別することに基づいて、前記ペイロード・データに関する受信側分散デバイスのリストから前記第3の分散デバイスを除外するように構成される、請求項からのいずれか一項に記載のシステム。
【請求項6】
前記第1の分散デバイスに通信可能に接続された制御ユニットをさらに備え、該制御ユニットが、
第1のセッション中に、前記第1、第2、および第3の分散デバイスを含む複数の分散デバイスに提供されることになるデータを受信し、
前記データを前記ペイロード・データおよび追加のペイロード・データに区分し、
送信用の前記ペイロード・データを前記複数の分散デバイスを介して送信し、
第2のセッション中に送信用の前記追加のペイロード・データを前記複数の分散デバイスを介して送信するように構成される、請求項からのいずれか一項に記載のシステム。
【請求項7】
前記制御ユニットは、
前記ペイロード・データまたは前記追加のペイロード・データのうちの少なくとも1つが、前記第1のセッションおよび前記第2のセッションのそれぞれのセッション中に、前記複数の分散デバイスのうちの少なくとも1つの分散デバイスによって受信されなかった旨を決定し、
前記ペイロード・データまたは前記ペイロード・データのうちの少なくとも1つを、前記少なくとも1つの分散デバイスに再送信すること、
を実行するようにさらに構成される、請求項に記載のシステム。
【請求項8】
メッシュ・ネットワークにおける分散データ送信用の方法であって、
前記メッシュ・ネットワークにおける第1の分散デバイスによって、第1のヘッダおよびペイロード・データを備える第1のデータ・メッセージを受信することと、
前記第1の分散デバイスによって、第2の分散デバイスが近隣デバイスであるかどうかを識別することと、
前記第2の分散デバイスが近隣デバイスであると識別した場合に、
前記第1の分散デバイスによって、前記第1のヘッダ内で前記第2の分散デバイスが前記ペイロード・データを受信するように選択されているものとして識別されない旨を決定することと、
前記第1の分散デバイスによって、前記ペイロードおよび第2のヘッダを備える第2のデータ・メッセージを生成することと、
前記第1の分散デバイスによって、前記メッシュ・ネットワークを介して前記第2のデータ・メッセージを前記第2の分散デバイスに送信することと
含み、
前記第2のヘッダは、前記ペイロード・データを受信するように選択されているものとして前記第2の分散デバイスを識別し
前記第2の分散デバイスが前記近隣デバイスであると識別することが、
前記第1の分散デバイスによって、前記第2の分散デバイスから受信した前のメッセージに関する受信信号強度インジケータを識別することと、
前記第1の分散デバイスによって、前記受信信号強度インジケータがしきい値受信信号強度インジケータを超える旨を決定することと、
を含む方法。
【請求項9】
メッシュ・ネットワークにおける分散データ送信用の方法であって、
前記メッシュ・ネットワークにおける第1の分散デバイスによって、第1のヘッダおよびペイロード・データを備える第1のデータ・メッセージを受信することと、
前記第1の分散デバイスによって、第2の分散デバイスが近隣デバイスであるかどうかを識別することと、
前記第2の分散デバイスが近隣デバイスであると識別した場合に、
前記第1の分散デバイスによって、前記第1のヘッダ内で前記第2の分散デバイスが前記ペイロード・データを受信するように選択されているものとして識別されない旨を決定することと、
前記第1の分散デバイスによって、前記ペイロードおよび第2のヘッダを備える第2のデータ・メッセージを生成することと、
前記第1の分散デバイスによって、前記メッシュ・ネットワークを介して前記第2のデータ・メッセージを前記第2の分散デバイスに送信することと
含み、
前記第2のヘッダは、前記ペイロード・データを受信するように選択されているものとして前記第2の分散デバイスを識別し、
前記第2の分散デバイスが前記近隣デバイスであると識別することが、
前記第1の分散デバイスによって、前記第2の分散デバイスに関連付けられた、通信リンクを確立するための過去の試行が成功したことを示す率であるティックル率を識別することと、
前記第1の分散デバイスによって、前記ティックル率がしきい値ティックル率を超える旨を決定することと、
を含む方法。
【請求項10】
メッシュ・ネットワークにおける分散データ送信用の方法であって、
前記メッシュ・ネットワークにおける第1の分散デバイスによって、第1のヘッダおよびペイロード・データを備える第1のデータ・メッセージを受信することと、
前記第1の分散デバイスによって、第2の分散デバイスが近隣デバイスであるかどうかを識別することと、
前記第2の分散デバイスが近隣デバイスであると識別した場合に、
前記第1の分散デバイスによって、前記第1のヘッダ内で前記第2の分散デバイスが前記ペイロード・データを受信するように選択されているものとして識別されない旨を決定することと、
前記第1の分散デバイスによって、前記ペイロードおよび第2のヘッダを備える第2のデータ・メッセージを生成することと、
前記第1の分散デバイスによって、前記メッシュ・ネットワークを介して前記第2のデータ・メッセージを前記第2の分散デバイスに送信することと
含み、
前記第2のヘッダは、前記ペイロード・データを受信するように選択されているものとして前記第2の分散デバイスを識別し
前記第2の分散デバイスが前記近隣デバイスであると識別することが、前記第1の分散デバイスによって、前記第2の分散デバイスが前記ペイロード・データの所期の受信側デバイスである旨を決定することを含む方法。
【請求項11】
前記第2の分散デバイスによって、前記第2のヘッダ内で第3の分散デバイスが前記ペイロード・データを受信するように選択されているものとして識別されない旨を決定することと、
前記第2の分散デバイスによって、前記ペイロードおよび第3のヘッダを備える第3のデータ・メッセージを生成することと、
前記第2の分散デバイスによって、前記メッシュ・ネットワークを介して前記第3のデータ・メッセージを前記第3の分散デバイスに送信することと、
をさらに含み、
前記第3のヘッダが、前記ペイロード・データを受信するように選択されているものとして前記第1、第2、および第3の分散デバイスを識別する請求項から10のいずれか一項に記載の方法。
【請求項12】
前記第2の分散デバイスによって、前記第2のヘッダ内で第3の分散デバイスが前記ペイロード・データを受信するように選択されているものとして識別される旨を決定することと、
前記第2のヘッダが前記第3の分散デバイスを前記ペイロード・データを受信するように選択されているものとして識別することに基づいて、前記第2の分散デバイスによって、前記ペイロード・データに関する受信側分散デバイスのリストから前記第3の分散デバイスを除外することと、
をさらに含む、請求項から10のいずれか一項に記載の方法。
【請求項13】
前記第2の分散デバイスによって、前記第2の分散デバイスの近隣デバイスである第3の分散デバイスを識別することと、
前記第2の分散デバイスによって、前記第3の分散デバイスに関する識別子を前記第2のヘッダに追加することにより前記第2のヘッダのサイズが最大ヘッダ・サイズを超えることになる旨を決定することと、
前記識別子を前記第2のヘッダに追加することにより前記第2のヘッダのサイズが前記最大ヘッダ・サイズを超えることになる旨の決定に基づいて、前記第2の分散デバイスによって、前記ペイロード・データが前記第3の分散デバイスに送信されないことになる旨を決定することと、
をさらに含む、請求項から10のいずれか一項に記載の方法。
【請求項14】
制御ユニットによって、前記第3の分散デバイスが前記ペイロード・データを受信しなかった旨を決定することと、
前記制御ユニットによって、前記ペイロード・データを前記第3の分散デバイスに送信することと、
をさらに含む、請求項13に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般には、コンピューター・ソフトウェアに関し、より詳細には、RFメッシュ・ネットワークまたは他のデータ・ネットワークにおける分散データ送信に関する。
【背景技術】
【0002】
データ・ネットワークは、複数のネットワーク・デバイス間でデータを通信するために使用することができる。データ・ネットワークは、メッシュ・ネットワーク・トポロジを使用して実装可能である。メッシュ・ネットワークにおいて、各ネットワーク・デバイスは他のネットワーク・デバイスから受信したデータを中継し、結果としてネットワーク・デバイスはネットワークを介してデータを伝搬するために協力する。メッシュ・データ・ネットワークの例は、複数のデバイスがRFまたは他のワイヤレス通信リンクを介して通信する、ワイヤレス・ネットワークである。
【発明の概要】
【発明が解決しようとする課題】
【0003】
いくつかの実装形態において、ワイヤレス・ネットワークは、データを送信するために各ネットワーク・デバイスが使用可能な帯域幅に関する制限を含むことができる。通信されることになるデータの量が帯域幅制限を超える場合、メッシュ・ネットワークを介したデータの送信は、メッシュ・ネットワークの性能を低下させる可能性がある。たとえば複数のネットワーク・デバイスが同じデータを不必要に中継することにより、データ・ネットワーク内の制限された帯域幅の非効率的な使用の原因となる。
【0004】
データ・ネットワークの帯域幅制限に対処するための従来の解決策は、データ・ネットワークの追加ノードおよび/またはより高い帯域幅を有するRFトランシーバなどの、追加のネットワーク機器の設置を含むことができる。追加のネットワーク機器の設置は、コストおよび/またはデータ・ネットワークに関連する複雑さを増加させる可能性がある。
【0005】
したがって、メッシュ・ネットワークおよび他のネットワークにおけるデータ通信の効率を向上させるためのシステムおよび方法が望まれている。
【課題を解決するための手段】
【0006】
RFメッシュ・ネットワークまたは他のデータ・ネットワークにおける分散データ送信のためのシステムおよび方法が開示される。例示的なシステムは、少なくとも2つの分散デバイスを含む。第1の分散デバイスは、第1のヘッダおよびペイロード・データを含む、第1のデータ・メッセージを受信することができる。第1の分散デバイスは、第2の分散デバイスが第1のヘッダ内でペイロード・データを受信するものとして識別されない旨を決定することができる。第1の分散デバイスは、第2の分散デバイスが第1のヘッダ内でペイロード・データを受信するものとして識別されない旨の決定に基づいて、第2のデータ・メッセージを生成することができる。第2のデータ・メッセージは、ペイロード・データおよび第2のヘッダを含む。第2のヘッダは第2の分散デバイスを、ペイロード・データを受信するものとして識別する。第1の分散デバイスは、第2のデータ・メッセージを第2の分散デバイスに送信する。
【0007】
これらの例示の態様および特徴は、本発明を制限または定義するためではなく、本出願で開示された概念の理解を助けるための例を提供するために言及されている。他の態様、利点、および特徴は、出願全体を検討すれば明らかとなるであろう。
【0008】
本開示のこれらおよび他の特徴、態様、および利点は、添付の図面を参照しながら以下の発明を実施するための形態を読めば、より良く理解されよう。
【図面の簡単な説明】
【0009】
図1】RFメッシュ・ネットワークまたは他のデータ・ネットワークにおいて分散データ送信を利用可能な例示のシステムを示す、ネットワーク図である。
図2】メッシュ・ネットワークにおいて分散データ送信を実装可能な分散デバイスの例を示す、ネットワーク図である。
図3】RFメッシュ・ネットワークまたは他のデータ・ネットワークにおいて分散データ送信を使用して近隣の分散デバイスにメッセージを送信する分散デバイスを示す、ネットワーク図である。
図4】分散デバイスによって近隣の分散デバイスに送信されるメッセージに追加される例示のヘッダを示す、ネットワーク図である。
図5】RFメッシュ・ネットワークまたは他のデータ・ネットワークにおいて分散データ送信を使用して追加の近隣の分散デバイスに追加のメッセージを送信する分散デバイスを示す、ネットワーク図である。
図6】分散デバイスによって追加の近隣の分散デバイスに送信される追加のメッセージに追加される例示のヘッダを示す、ネットワーク図である。
図7】最大ヘッダ・サイズを有するメッセージを受信する分散デバイスの例を示す、ネットワーク図である。
図8】RFメッシュ・ネットワークまたは他のデータ・ネットワークにおいて分散データ送信を実装するためのネットワーク管理デバイスおよび分散デバイスの例を示す、ブロック図である。
図9】RFメッシュ・ネットワークまたは他のデータ・ネットワークにおける分散データ送信のための例示の方法を示す、フローチャートである。
図10】エラー検査を用いた分散データ送信のための例示の方法を示す、フローチャートである。
【発明を実施するための形態】
【0010】
システムおよび方法は、RFメッシュ・ネットワークまたは他のデータ・ネットワークにおける分散データ送信のために提供される。分散データ送信は、ワイヤレス・ネットワークにおける帯域幅または他のリソースのより効率的な使用を可能にすることができる。ワイヤレス・ネットワークにおける帯域幅または他のリソースのより効率的な使用は、ペイロード・データのより高速な分散を可能にすることができる。ペイロード・データの非限定的な例は、ワイヤレス・ネットワークを介した相互の通信でネットワーク・デバイスに分散されることになる、ファームウェアまたはソフトウェアの更新を含む。
【0011】
以下の非限定的な例は、本開示の一般的な主題の紹介を助けるために提供される。ヘッドエンド・システムまたは他のネットワーク管理デバイスは、ペイロード・データが送信されることになるネットワーク・デバイスのリストにアクセスすることができる。たとえば電力分散ネットワークまたは他のリソース分散ネットワーク(たとえば水、ガスなど)を管理するためのヘッドエンド・システムは、電力分散システムにおいて計測デバイスと通信するために使用される集信器などの(ただし、これらに限定されない)デバイスのリストにアクセスすることができる。リストは、ファームウェアまたは他のソフトウェアがアップグレードされることになる集信器を識別することができる。ヘッドエンド・システムは、ワイヤレスRFリンクを介してファームウェア更新パケットを第1の集信器に送信することができる。第1の集信器はメッセージを、1つまたは複数の近隣集信器に転送することができる。近隣集信器は、第1の集信器が十分信頼できるRF通信リンクを有する集信器とすることができる。たとえば第1の集信器は、所定のしきい値を超える受信信号強度インジケータ(「RSSI」)を有する第1の集信器に対して、過去に送信された信号を有する近隣集信器を識別することができる。集信器は、いずれの集信器がファームウェア更新パケットを受信したかを追跡するためのヘッダと共に、メッセージを近隣集信器に転送することができる。ヘッダは、ファームウェア更新パケットを受信したか、または送信集信器からのファームウェア更新パケットを受信することになる、集信器に関する無線アドレスまたは他の識別子を含むことができる。いずれの集信器がファームウェア更新パケットを受信したかを追跡するためにヘッダを使用することで、後続の集信器がファームウェア更新パケットを不必要に再送信するのを防ぐことができる。後続の集信器がファームウェア更新パケットを不必要に再送信するのを防ぐことで、データ・ネットワークの使用可能容量を増加させることができる。
【0012】
いくつかの態様によれば、RFネットワークまたは他のデータ・ネットワークにおける分散データ送信のためのシステムが提供可能である。システムは、電力分散ネットワークにおける計測デバイスまたは他の端末デバイスから受信したデータを集約するために使用される集信器デバイス(ただし、これらに限定されない)などの、少なくとも2つの分散デバイスを含むことができる。第1の分散デバイスは、第1のヘッダおよびペイロード・データを含む、第1のデータ・メッセージを受信することができる。ペイロード・データの非限定的な例は、分散デバイスがそのファームウェアまたは他のソフトウェアのアップグレードに使用可能な、ファームウェア更新または他のソフトウェア更新(またはそれらの一部)である。ヘッダは、ペイロード・データの受信が選択された、RFメッシュ・ネットワークにおける分散デバイスのリストを含むことができる。第1の分散デバイスは、第2の分散デバイスが、ペイロード・データを受信したかまたは受信するように選択されているものとして第1のヘッダ内で識別されない旨を、決定することができる。第2の分散デバイスが、ペイロード・データを受信したかまたは受信するように選択されているものとして第1のヘッダ内で識別されない旨の決定に応答して、第1の分散デバイスは、ペイロード・データを第2の分散デバイスに送信するための第2のデータ・メッセージを生成することができる。第2のデータ・メッセージは、ペイロード・データおよび第2のヘッダを含む。第1の分散デバイスは、第2の分散デバイスに関する識別子を第1のヘッダに追加することによって、第2のヘッダを生成することができる。第2のデータ・メッセージは、第1のデータ・メッセージと同じペイロード・データおよび第1のデータ・メッセージとは異なるヘッダを含むことができる。識別子の非限定的な例は、ハードウェア識別子、地理座標、ネットワーク・アドレスなどを含む。第2のヘッダは第2の分散デバイスを、ペイロード・データを受信するものとして識別する。第1の分散デバイスは、第2のデータ・メッセージを第2の分散デバイスに送信する。
【0013】
第2の分散デバイスは、第1の分散デバイスと同様の様式でペイロード・データの再送信を続行するか停止するかを決定することができる。たとえば第2の分散デバイスは、第3の分散デバイスがペイロード・データを受信していないこと、および第4の分散デバイスがペイロード・データをすでに受信したことを識別するために、受信したデータ・メッセージのヘッダ内に含まれるデバイス識別子を参照することができる。第2の分散デバイスは、第3の分散デバイスに関する識別子を第2のヘッダに追加することによって、第3のヘッダを生成することができる。第2の分散デバイスは、ペイロード・データと、第1、第2、第3、および第4の分散デバイスに関する識別子を備えるヘッダとを含む、データ・メッセージを、第3の分散デバイスに送信することができる。第2の分散デバイスは、第4の分散デバイスがペイロード・データを受信するようにすでに選択されていることに基づいて、第4の分散デバイスを受信側デバイスのリストから省略することができる。ペイロード・データをすでに受信した分散デバイスを受信側デバイスのリストから省略することによって、RFメッシュ・ネットワークまたは他のデータ・ネットワーク上の不必要なデータ通信量を削減または最小限にすることができる。
【0014】
本明細書で使用される場合、「分散デバイス」という用語は、データ・ネットワークにおける他のネットワーク・デバイスにデータを中継または他の方法で送信するために構成された、ネットワーク・デバイスを言い表すために使用される。分散デバイスの非限定的な例は、電力分散ネットワーク内の電力消費を監視するメーターと通信するために使用される、集信器デバイスである。いくつかの態様において、分散デバイスは、データを他のネットワーク・デバイスに中継または他の方法で送信することに加えて、1つまたは複数の機能を実行することができる。たとえば、集信器デバイスである分散デバイスは、電力分散ネットワークにおける1つまたは複数の計測デバイスからデータを読み取ることができる。集信器デバイスは、データを他の集信器デバイスに分散することも可能である。こうしたデータの例は、ネットワーク管理デバイスを介してヘッドエンドまたは他のサーバ・システムから受信されるソフトウェア更新を含む。
【0015】
本明細書で使用される場合、「ネットワーク管理デバイス」という用語は、バックホール・データ・ネットワークを介してアクセス可能なヘッドエンドまたは他のサーバ・システム、ならびにワイヤレス・ネットワークを介してアクセス可能な1つまたは複数の分散デバイスと、インターフェースするために構成されたコンピューター・デバイスを言い表すために使用される。ネットワーク管理デバイスの非限定的な例は、電力分散ネットワークのためのコレクター・デバイスである。コレクター・デバイスは、インターネットを介してコントロール・センターと、およびRFメッシュ・ネットワークを介して集信器デバイスと、通信することができる。ネットワーク管理デバイスは、バックホール・ネットワークを介してペイロード・データをヘッドエンドまたは他のサーバ・システムから受信することができる。
【0016】
本明細書で使用される場合、「ペイロード・データ」という用語は、ペイロード・データを受信するネットワーク・デバイスによる消費を対象とするデータを言い表すために使用される。ペイロード・データは、ソース・デバイスと宛先デバイスとの間の中間デバイスによる修正なしに、ソース・デバイスから宛先デバイスまでのデータ・ネットワーク全体にわたって送信される、データ・メッセージの一部を含むことができる。データ・ネットワークを介した移送のためにペイロード・データに付加されるヘッダなどの、データ・メッセージの他の部分は、データを通信するために使用される1つまたは複数のネットワーク・デバイスによって修正されること、および/または、宛先デバイスによって廃棄されることが可能である。ペイロード・データの非限定的な例は、ネットワーク・デバイスに1つまたは複数の動作を実行するように命じるためにネットワーク・デバイスに送信されるコマンド・メッセージ、ネットワーク・デバイスに対する照会、ネットワーク・デバイスに適用されることになるファームウェア更新または他のソフトウェア更新などを含む。
【0017】
本明細書で使用される場合、「ヘッダ」という用語は、ペイロード・データの1つまたは複数の特徴、および/またはペイロード・データの送信に関連付けられた1つまたは複数の特徴を識別することが可能な、ペイロード・データと共に含められる補足データを言い表すために使用される。
【0018】
本明細書で使用される場合、「データ・ネットワーク」という用語は、リソースおよび情報の共有を可能にする通信チャネルによって相互接続されたデバイスのグループを言い表すために使用される。通信チャネルは、銅ケーブル、光ファイバ・ケーブル、ワイヤレス送信、電力線通信などの(ただし、これらに限定されない)、ネットワークを介してデータを通信するための任意の好適な手段を含むことができる。
【0019】
本明細書で使用される場合、「メッシュ・ネットワーク」という用語は、各ノードが、ノードによって使用されるデータを送信および受信するため、ならびに、データ・ネットワークを介してデータを伝搬するために他のノードによって使用されたデータを中継するために構成された、データ・ネットワークを言い表すために使用される。
【0020】
いくつかの態様において、制御ユニットはネットワーク・デバイスに送信されることになるデータを受信することができる。制御ユニットは、データを、各々がペイロード・データを含む複数のメッセージに分割することができる。制御ユニットは、ネットワーク・デバイス(たとえばファームウェアまたは他のソフトウェア更新)に送信されることになるデータを受信すること、および、データ・ネットワークを介して送信するためにデータをデータ・メッセージに分割することが可能な、任意のデバイスまたはシステム(たとえば、ヘッドエンド・システム、ネットワーク管理デバイスなど)を含むことができる。各データ・メッセージは、データの一部(たとえばソフトウェアまたはファームウェア更新の一部)であるそれぞれのペイロード・データを含むことができる。各データ・メッセージはネットワーク・デバイスに送信することができる。ネットワーク・デバイスは、ネットワーク・デバイスによる使用のために複数のデータ・メッセージから受信したペイロード・データ(たとえばファームウェア更新の異なる部分)を、組み合わせることができる。
【0021】
いくつかの態様において、分散デバイスは、近隣デバイスである分散デバイスを識別することによって、潜在的な受信側デバイスのリストを生成することができる。本明細書で使用される場合、「近隣デバイス」という用語は、送信側ネットワーク・デバイスが許容可能な成功の確実性を伴ってデータを送信できる、ネットワーク・デバイスを言い表すために使用される。たとえば近隣デバイスは、しきい値RSSIを超えるRSSIに関連付けることができる。RSSIは、近隣デバイスが、送信側デバイスによって送信されたメッセージを正常に受信する可能性があることを示すことができる。分散デバイスは、いずれの分散デバイスが近隣デバイスであるかを識別することができる。分散デバイスは、決定された近隣デバイスのリストからペイロード・データに関する潜在的な受信側を識別することができる。決定された近隣デバイスのリストは、任意の好適なプロセスを介して分散デバイスによって動的に生成することができる。分散デバイスは、ヘッダ内でペイロード・データを受信したかまたは受信するように選択されているものとして識別されない、1つまたは複数の近隣デバイスに、ペイロード・データを送信することができる。
【0022】
ペイロード・データを再送信する各分散デバイスは、受信側分散デバイスに関する識別子をヘッダに含まれるデータに付加することによって、分散デバイスによって受信されるヘッダを修正することができる。いくつかの態様において、受信側分散デバイスに関する識別子をヘッダに付加することによって、ヘッダが最大ヘッダ・サイズに到達してしまう可能性がある。たとえば、いずれの分散デバイスがペイロード・データを受信したかを追跡するために、ヘッダに200バイトを割り振ることができる。各分散デバイスは、4バイトのそれぞれの識別子に関連付けることができる。ペイロード・データを50の分散デバイスに送信することで、ヘッダが200バイトの限界に到達してしまう可能性がある。ペイロード・データを受信する分散デバイスは、関連付けられたヘッダが最大サイズであるかどうか、および/または、追加の識別子をヘッダに付加することでヘッダが最大サイズを超えてしまうかどうかを、判別することができる。分散デバイスは、ヘッダが最大ヘッダ・サイズであるかまたはそれに近いかに基づいて、ペイロード・データが他の分散デバイスに送信されない旨を決定することができる。
【0023】
これらの例示は、本書で論じる一般的な主題を読者に紹介するために与えられるものであり、開示される概念の範囲を限定することは意図されていない。以下の項では、同一の参照番号が同一の要素を示す図面を参照しながら、様々な追加の態様および例を説明する。
【0024】
図面を参照すると、図1は、RFメッシュ・ネットワークまたは他のデータ・ネットワークにおいて分散データ送信を利用することが可能な、例示のシステム100を示すネットワーク図である。システム100は、サーバ・システム102、ネットワーク管理デバイス104、分散デバイス106a、106b、および端末デバイス108a〜dを含むことができる。サーバ・システム102は、バックホール・ネットワーク110を介してネットワーク管理デバイス104と通信することができる。ネットワーク管理デバイス104、分散デバイス106a、106b、および端末デバイス108a〜dは、メッシュ・ネットワーク112を介して通信することができる。
【0025】
サーバ・システム102は、システム100に対して1つまたは複数の管理機能を実行することができる。非限定的な一例では、サーバ・システム102は、メッシュ・ネットワーク112内の1つまたは複数のデバイスの状況を決定するために、ネットワーク管理デバイス104に照会すること、またはネットワーク管理デバイス104を介して、1つまたは複数の分散デバイス106a、106bもしくは1つまたは複数の端末デバイス108a〜dに照会をルーティングすることが、可能である。別の非限定的な例では、サーバ・システム102は、システム100内の1つまたは複数のデバイスにソフトウェア更新を提供することなどが可能である。サーバ・システム102の非限定的な例は、電力または他のリソースを、建物、構造物、または他の地理的領域に提供する、分散ネットワークのためのヘッドエンド・システムである。サーバ・システム102は、サーバなどの単一のコンピューティング・システム、または、クラウドもしくはグリッド・トポロジで接続された複数のサーバなどのコンピューティング・システムのグループを、含むことができる。図1では、例示の目的で単一のサーバ・システム102を示しているが、システム100は任意数のヘッドエンド・システムを含むことができる。いくつかの態様において、サーバ・システム102を省略すること、および/または、サーバ・システム102の1つまたは複数の機能をネットワーク管理デバイス104などの(ただし、これに限定されない)システム100内の他のデバイスによって実行することが、可能である。
【0026】
ネットワーク管理デバイス104は、サーバ・システム102と、メッシュ・ネットワーク112を介してアクセス可能なネットワーク・デバイスとの間で、データを通信することができる。ネットワーク管理デバイス104の非限定的な例は、コレクター・デバイス、または、電力分散システムにおいて複数の計測デバイスによって取得されるデータを集約もしくは他の方法で収集することが可能な他のデバイスである。図1では、例示の目的で単一のネットワーク管理デバイス104を示しているが、システム100は任意数のネットワーク管理デバイスを含むことができる。
【0027】
ネットワーク管理デバイス104は、任意の好適な通信媒体を使用し、バックホール・ネットワーク110を介してサーバ・システム102と通信することができる。好適な通信媒体の非限定的な例は、イーサネット・ケーブル、ワイヤレス・データ通信、電力線通信で使用するための電力ケーブルなどを含む(ただし、これらに限定されない)。電力線通信は、地理的領域内で公益事業会社から建物へ電力を提供するために使用されるケーブルを介した信号通信を含むことができる。
【0028】
バックホール・ネットワーク110は、サーバ・システム102によってアクセス可能なコアネットワークまたはバックボーン・ネットワークと、メッシュ・ネットワーク112との間の、1つまたは複数の通信リンクを含むことができる。バックホール・ネットワーク110の非限定的な例は、インターネット、T1ネットワーク、または他の好適なデータ・ネットワークを含む。
【0029】
分散デバイス106a、106bは、ネットワーク管理デバイス104から受信したデータを、互いに、および/または端末デバイス108a〜dのうちの1つまたは複数に、通信することができる。図1では、例示の目的で2つの分散デバイス106a、106bを示しているが、システム100は任意数の分散デバイスを含むことができる。
【0030】
端末デバイス108a〜dは、システム100内で1つまたは複数のエンドユーザ機能を実行することができる。端末デバイスの非限定的な例は、建物または構造物による電力または他のリソースの消費を監視および分析するための計測デバイスである。図1では、例示の目的で4つの端末デバイス108a〜dを示しているが、システム100は任意数の分散デバイスを含むことができる。分散デバイス106a、106bの各々は、任意数の端末デバイス108a〜dと通信することができる。たとえば、集信器などの分散デバイスは、何百何千の計測デバイスまたは他の端末デバイスと通信することができる。
【0031】
図1では、分散デバイスおよび端末デバイスは例示の目的で別々に示されているが、他の実装が可能である。いくつかの態様において、同じデバイスが、メッセージを分散または他の方法で中継するため、および1つまたは複数のエンドユーザ機能を実行するため、の両方の構成要素を含むことができる。たとえば集信器デバイスは、メッセージを分散または他の方法で中継するための無線機、および1つまたは複数のエンドユーザ機能を実行するための処理デバイス、の両方を含むことができる。
【0032】
サーバ・システム102の管理機能は、メッシュ・ネットワーク112を使用してデータ・メッセージを分散デバイス106a、106bに送信することを含むことができる。非限定的な例では、サーバ・システム102は、分散デバイス106a、106bまたは端末デバイス108a〜dのファームウェアまたは他のソフトウェアを更新するために、ファームウェア更新または他のソフトウェアをネットワーク管理デバイス104に定期的に送信することができる。ファームウェア更新または他のソフトウェアまたは他のソフトウェアは、バックホール・ネットワーク110の使用可能帯域幅をひずませることなく、バックホール・ネットワーク110を介して送信可能なファイル・サイズを有することができる。ファイル・サイズは、メッシュ・ネットワーク112を介してネットワーク管理デバイス104から分散デバイス106a、106bに送信するには大き過ぎる場合がある。たとえば、1メガバイトのサイズを有するファームウェアまたはソフトウェア更新を送信することは、計測デバイスによって測定された電力消費データを通信することなどの(ただし、これに限定されない)、システム100の1つまたは複数のエンドユーザ機能に関係する、メッシュ・ネットワーク112を介した他のデータの通信を中断する場合がある。サーバ・システム102またはネットワーク管理デバイス104などの(ただし、これらに限定されない)制御ユニットは、1メガバイトのファイルを、メッシュ・ネットワーク112の帯域幅制限にとってより好適なサイズを有するデータ部分に分割することができる。たとえば各部分は、700バイトのサイズを有することができる。
【0033】
データ・メッセージに分割されるデータを送信するためにメッシュ・ネットワーク112を使用することで、1つまたは複数の分散デバイスに同じデータを含む重複メッセージを受信させる可能性がある。たとえば第1の分散デバイスは、異なる信号経路内にある第2の分散デバイスおよび第3の分散デバイスから、同じデータを受信することができる。重複メッセージの送信は、それによってメッシュ・ネットワーク112の帯域幅の非効率的な使用を生じさせる可能性がある。
【0034】
本明細書で説明する分散データ送信の実装により、メッシュ・ネットワーク112を介したデータ送信の効率を向上させることができる。図2は、メッシュ・ネットワーク112において分散データ送信を実装可能な分散デバイス106a〜fの例を示すネットワーク図である。
【0035】
メッシュ・ネットワーク112は、ネットワーク管理デバイス104と分散デバイス106a〜fの間で、双方向ワイヤレス通信リンク202a〜hを介して確立することができる。ワイヤレス通信リンク202a〜hは、任意の好適なワイヤレス・プロトコルを使用して確立されるRFリンクとすることができる。低帯域幅メッシュ無線RFプロトコルなどの(ただし、これに限定されない)任意の好適なプロトコルは、ワイヤレス通信リンク202a〜hに使用することができる。
【0036】
ネットワーク管理デバイス104は、ワイヤレス通信リンク202aを介して分散デバイス106aにメッセージ204を送信することができる。メッセージ204は、サーバ・システム102から受信した、および/またはネットワーク管理デバイス104によって生成された、ペイロード・データ206を含むことができる。ペイロード・データ206の非限定的な例は、分散デバイス106a〜gおよび/または端末デバイス108a〜dのファームウェアに対する更新(またはその一部)である。いくつかの態様において、ペイロード・データ206は、分散デバイス106a〜gへの分散のためにサーバ・システム102によって送信されるデータのすべてを含むことができる。他の態様において、ペイロード・データ206は、分散デバイス106a〜gへの分散のためにサーバ・システム102によって送信されるデータの一部を含むことができる。たとえばサーバ・システム102は、ファームウェアまたは他のソフトウェア更新を部分に区分または他の方法で分割することができる。各部分は、それぞれのペイロード・データ206を有するそれぞれのメッセージ204内で、管理デバイス104に送信することができる。管理デバイス104は、それぞれのペイロード・データ206を有する各メッセージ204を1つまたは複数の分散デバイスに送信することができる。
【0037】
図3は、分散データ送信を使用して近隣の分散デバイス106b〜dにメッセージを送信する分散デバイス106aを示す、ネットワーク図である。
【0038】
分散デバイス106aは、近隣の分散デバイス106b〜dをペイロード206に関する潜在的な受信側として識別することができる。分散デバイス106b〜dは、任意の好適な基準に基づいて、分散デバイス106aの近隣デバイスとして識別することができる。
【0039】
いくつかの態様において、分散デバイス106a〜gの各々は、メッシュ・ネットワーク112内の他の分散デバイスから受信した信号電力の測定値であるRSSIを決定することができる。所与の分散デバイスは、所与のしきい値を超える近隣の分散デバイスから受信した信号に関するRSSIに基づいて、近隣の分散デバイスとして識別することができる。たとえば分散デバイス106aは、しきい値RSSIにあるかまたはそれを超えるRSSIに関連付けられている分散デバイス106b〜dの各々に基づいて、分散デバイス106b〜dを近隣デバイスとして識別することができる。任意の好適なしきい値RSSIを使用して、近隣の分散デバイスを識別することができる。
【0040】
追加または代替の態様において、分散デバイス106a〜gの各々は、メッシュ・ネットワーク112内の他の分散デバイスに関するティックル率を決定することができる。ティックル率は、第2の分散デバイスとの通信リンクを確立するための、第1の分散デバイスによるいくつかの成功した試行を示すことができる。たとえば分散デバイス106aは、分散デバイス106b〜dの各々が通信リンクの確立時に大多数の過去の試行が成功したことを示すティックル率に関連付けられていることに基づいて、分散デバイス106b〜dを近隣デバイスとして識別することができる。任意の好適なしきい値ティックル率を使用して、近隣の分散デバイスを識別することができる。
【0041】
追加または代替の態様において、分散デバイス106a〜gの各々は、分散デバイスである近隣デバイスと、他の近隣デバイス(たとえば、分散デバイスでない近隣デバイス、異なるクラスの分散デバイスである近隣デバイスなど)とを区別することができる。たとえば分散デバイス106aは、ペイロード・データ206の所期の受信側である分散デバイス106b〜dと、分散デバイス106aと通信している端末デバイスとを区別することができる。
【0042】
分散デバイス106aは、識別された近隣の分散デバイス106b〜dを含む受信側デバイスのリストを生成することができる。リストは、分散デバイス106b〜dに関する任意の好適な識別子を参照することによって、近隣の分散デバイス106b〜dを識別することができる。好適な識別子は、メッシュ・ネットワーク112内の分散デバイス106b〜dのうちの各々を一意に識別することができる。いくつかの態様において、分散デバイス106b〜dのうちの各々は、製造中に分散デバイスに割り当てられるそれぞれのハードウェア識別子を有することができる。ハードウェア識別子は、分散デバイスの1つまたは複数のハードウェア構成要素を修正せずに変更することができない。他の態様において、分散デバイス106b〜dの各々は、分散デバイスをメッシュ・ネットワーク112に追加するプロセスにおいて分散デバイスに割り当てられる、それぞれのソフトウェア識別子を有することができる。ソフトウェア識別子の非限定的な例は、インターネット・プロトコル(「IP」)アドレスなどの(ただし、これに限定されない)ネットワーク識別子、または、分散デバイスが物理的に配置された地理座標のセットなどの(ただし、これに限定されない)地理識別子を含む。
【0043】
分散デバイス106aは、それぞれのメッセージ302a〜cを介して、ペイロード・データ206を近隣の分散デバイス106b〜dに送信することができる。メッセージ302a〜cは、それぞれヘッダ304a〜cを含むことができる。図4は、メッセージ302a〜cに追加されたヘッダ304a〜cを示すネットワーク図である。図4に示されるように、ヘッダ304a〜cの各々は分散デバイス106b〜dに関する識別子を含む。
【0044】
分散デバイス106b〜dに関する識別子を有するヘッダ304a〜cを含むことで、システム100内のデータ通信量を減少させることができる。たとえば分散デバイス106bは、通信リンク202eを介して分散デバイス106cと通信することができる。分散デバイス106b、106cによって受信されたヘッダ304a、304bがない場合、分散デバイス106aからペイロード・データ206を受信する分散デバイス106b、106cの各々は、通信リンク202eを介して互いにペイロード・データ206を再送信するように試行することができる。分散デバイス106bはヘッダ304aを使用して、分散デバイス106cがペイロード・データ206を受信するように選択されている旨を決定することができる。分散デバイス106cはヘッダ304bを使用して、分散デバイス106bがペイロード・データ206を受信するように選択されている旨を決定することができる。分散デバイス106b、106cは、ヘッダ304a、304b内の情報に基づいて、ペイロード・データ206を互いに送信するのを避けることができる。したがって、通信リンク202eを介した不必要なデータ通信量を低減または除去することができる。
【0045】
図5は、分散データ送信を使用して追加のメッセージを追加の近隣の分散デバイス106e〜gに送信する、分散デバイス106b〜dを示すネットワーク図である。
【0046】
分散デバイス106bは、近隣の分散デバイス106a、106c、106eを識別することができる。分散デバイス106a、106c、106eは、RSSI、ティックル率、デバイス・タイプ、もしくは任意の他の好適な基準、またはそれらの組み合わせに基づいて、分散デバイス106bの近隣デバイスとして識別されることができる。分散デバイス106bは、分散デバイス106a、106cがペイロード・データ206を以前に受信したかまたは受信するように選択されている旨を、ヘッダ304aから決定することができる。分散デバイス106bは、分散デバイス106eがヘッダ304aにリスト表示されていないことに基づいて、近隣の分散デバイス106eをペイロード・データ206の潜在的な受信側として識別することができる。分散デバイス106bは、分散デバイス106eに関する識別子を、ペイロード・データ206を受信した分散デバイスのリストに追加することによって、ヘッダ402を生成することができる。分散デバイス106bは、ヘッダ402を含むメッセージ302dを、通信リンク202fを介して近隣の分散デバイス106eに送信することができる。ヘッダ402は、図6に示されるように、分散デバイス106a、106b、106c、106d、106eを、ペイロード・データ206を受信したかまたは受信するように選択されているものとして識別することができる。
【0047】
分散デバイス106cは、近隣の分散デバイス106a、106b、106fを識別することができる。分散デバイス106a、106b、106fは、RSSI、ティックル率、デバイス・タイプ、もしくは任意の他の好適な基準、またはそれらの組み合わせに基づいて、分散デバイス106cの近隣デバイスとして識別されることができる。分散デバイス106cは、分散デバイス106a、106bがペイロード・データ206を以前に受信したかまたは受信するように選択されている旨を、ヘッダ304bから決定することができる。分散デバイス106cは、分散デバイス106fがヘッダ304bにリスト表示されていないことに基づいて、近隣の分散デバイス106fをペイロード・データ206の潜在的な受信側として識別することができる。分散デバイス106cは、分散デバイス106eに関する識別子を、ペイロード・データ206を受信した分散デバイスのリストに追加することによって、ヘッダ404を生成することができる。分散デバイス106cは、ヘッダ404を含むメッセージ302eを、通信リンク202gを介して近隣の分散デバイス106fに送信することができる。ヘッダ404は、図6に示されるように、分散デバイス106a、106b、106c、106d、106fを、ペイロード・データ206を受信したかまたは受信するように選択されているものとして識別することができる。
【0048】
分散デバイス106dは、近隣の分散デバイス106a、106gを識別することができる。分散デバイス106dは、分散デバイス106aがペイロード・データ206を受信するように以前に選択されている旨を、ヘッダ304cから決定することができる。分散デバイス106dは、分散デバイス106gがヘッダ304cにリスト表示されていないことに基づいて、近隣の分散デバイス106gをペイロード・データ206の潜在的な受信側として識別することができる。分散デバイス106dは、分散デバイス106gに関する識別子を、ペイロード・データ206を受信した分散デバイスのリストに追加することによって、ヘッダ406を生成することができる。分散デバイス106dは、ヘッダ406を含むメッセージ302fを、通信リンク202hを介して近隣の分散デバイス106gに送信することができる。ヘッダ406は、図6に示されるように、分散デバイス106a、106b、106c、106d、106gを、ペイロード・データ206を受信したかまたは受信するように選択されているものとして識別することができる。
【0049】
図6は、分散デバイス106e〜gの各々が、ペイロード・データ206を受信するように選択された各分散デバイスのリストを備えるヘッダ402、404、406を、それぞれ受信するように示しているが、他の実装も可能である。いくつかの態様において、分散デバイスの各々は、ペイロード・データ206を受信したかまたは受信することをターゲットとしている近隣デバイスをリスト表示しているヘッダを備える、それぞれのデータ・メッセージを受信することができる。たとえば分散デバイス106eは、分散デバイス106bを識別し、分散デバイス106a、106c、106d、106eのうちの1つまたは複数を省略する、ヘッダを備えたデータ・メッセージを送信することができる。ペイロード・データ206を受信したかまたは受信することをターゲットとしている近隣デバイスをリスト表示しているヘッダをデータ・メッセージに提供することで、ペイロード・データ206をすでに受信した分散デバイスにペイロード・データ206を備えるメッセージが送信されるのを削減または防止することができる。しかし、これらのヘッダ内の網羅的リストであることは意図されていない。
【0050】
いくつかの態様において、ペイロード・データ206と共に受信されたメッセージ・ヘッダのサイズが最大ヘッダ・サイズを有する旨を1つまたは複数の分散デバイスが決定することに応答して、ペイロード・データ206の再送信を停止することができる。たとえば図7は、最大ヘッダ・サイズを有するメッセージ302gを受信する分散デバイス106hの例を示す、ネットワーク図である。分散デバイス106hは、図7で省略記号によって示されるように、分散デバイス106g、106hの間のメッシュ・ネットワーク112において複数の分散デバイスによって再送信されたメッセージ302gを受信することができる。分散デバイス106g、106hの間の経路は、ペイロード・データ206を再送信した複数の介在分散デバイスを含むことができる。メッセージ302gのヘッダ502は、介在分散デバイスの各々を識別することができる。介在分散デバイスの各々に関する識別子のリストは、ヘッダ502がヘッダ502に割り振られた最大サイズを有する原因となる場合がある。分散デバイス106hは、ヘッダ502に追加のデータを追加できない旨を決定することができる。分散デバイス106hは、分散デバイス106iなどの分散デバイス106hの近隣である任意の分散デバイスへのペイロード・データ206の再送信を、中断することができる。
【0051】
非限定的な例において、ヘッダ502は、200バイトの最大割り振りサイズを有することができる。メッシュ・ネットワーク112における分散デバイスの各々は、それぞれ4バイトのサイズを備える識別子を有することができる。ペイロード・データ206を近隣の分散デバイスに送信することで、送信側分散デバイスによって受信されたヘッダに、4バイトのデータ(すなわち、近隣の分散デバイスに関する識別子のサイズ)追加することができる。管理デバイス104から受信したペイロード・データ206は、メッシュ・ネットワーク112において合計50の近隣の分散デバイスに送信することができる。分散デバイス106hは、分散デバイス106iを識別するデータが、ヘッダに関する200バイトのサイズ制限を超えることなくヘッダ502に追加できない旨の決定に基づいて、ペイロード・データ206の再送信を停止することができる。
【0052】
ペイロード・データ206の再送信を停止することで、分散デバイス106a〜gのうちの1つまたは複数が、ネットワーク管理デバイス104から送信されたデータの不完全なバージョンを有する可能性がある。ペイロード・データ206を生成する制御ユニットまたはネットワーク内の他のデバイスは、ペイロード・データ206を使用するデバイスがペイロード・データ206を受信したかどうかを判別するために、ペイロード・データ206を使用する1つまたは複数のデバイスを照会することができる。非限定的な一例において、サーバ・システム102は、いずれの端末デバイス108a〜dがペイロード・データを受信したかを判別するために、端末デバイス108a〜dの各々を照会することができる。端末デバイス108a〜dのいくつかは、肯定応答を用いて照会に応答することができる。端末デバイス108a〜dのうちの1つまたは複数は、否定応答を用いて照会に応答することができる。サーバ・システム102は、ペイロード・データを受信していない端末デバイスにアドレス指定されたメッセージ内で、ペイロード・データを送信することができる。別の非限定的な例では、ネットワーク管理デバイス104は、いずれの分散デバイス106a〜iがペイロード・データ206を受信したかを決定するために、分散デバイス106a〜iの各々を照会することができる。分散デバイス106a〜hは、肯定応答を用いて照会に応答することができる。分散デバイス106iは、否定応答を用いて照会に応答することができる。ネットワーク管理デバイス104は、分散デバイス106iが分散データ送信プロセスを介してペイロード・データ206を受信していない旨の決定に基づいて、分散デバイス106iにアドレス指定されたメッセージ内で、ペイロード・データ206を送信することができる。
【0053】
照会メッセージを使用して、分散データ送信プロセスの成功を決定することができる。照会メッセージは、ペイロード・データ206よりも小さなサイズを有することができる。ペイロード・データよりも小さなサイズを備える照会メッセージを使用することで、メッシュ・ネットワーク112上のデータ通信量を減少させることができる。
【0054】
いくつかの態様において、メッセージ302a〜gの各々は、ペイロード・データ206に関連付けられたセッション識別子を含むことができる。セッションとは、メッシュ・ネットワーク112を介してペイロード・データ206を分散するために分散データ送信プロセスを使用する期間とすることができる。たとえばファームウェア更新または他のソフトウェア更新などのデータを、分散デバイス106a〜iへの分散のために、ネットワーク管理デバイス104に送信することができる。ネットワーク管理デバイス104は、ファームウェアまたは他のソフトウェア更新を2つの区画に区分することができる。区画の各々は、分散デバイスに送信されることになるそれぞれのペイロード・データおよびそれぞれのセッション識別子を含むことができる。ネットワーク管理デバイス104は、第1のセッション識別子によって識別された第1のセッション中に第1の区画を送信すること、および、第2のセッション識別子によって識別された第2のセッション中に第2の区画を送信することができる。
【0055】
図8は、RFメッシュ・ネットワークまたは他のデータ・ネットワークにおいて分散データ送信を実装するための、ネットワーク管理デバイス104および分散デバイス106の例を示すブロック図である。
【0056】
分散デバイス106は処理デバイス802を含むことができる。処理デバイス802の非限定的な例は、マイクロプロセッサ、特定用途向け集積回路(「ASIC」)、状態機械、または他の好適な処理デバイスを含む。処理デバイス802は、1つを含む任意数の処理デバイスを含むことができる。処理デバイス802は、メモリ・デバイス804などのコンピューター可読媒体に通信可能に接続することができる。処理デバイス802は、メモリ・デバイス804にそれぞれ記憶された、コンピューター実行可能プログラム命令および/またはアクセス情報を実行することができる。
【0057】
メモリ・デバイス804は、処理デバイス802によって実行されたときに、本明細書で説明する動作を処理デバイス802に実行させる、命令を記憶することができる。メモリ・デバイス804は、プロセッサにコンピューター可読命令を提供することが可能な電子、光、磁気、またはその他の記憶デバイスなどの(ただし、これらに限定されない)、コンピューター可読媒体とすることができる。こうした光、磁気、またはその他の記憶デバイスなどの非限定的な例は、読み取り専用(「ROM」)デバイス、ランダムアクセス・メモリ(「RAM」)デバイス、磁気ディスク、磁気テープ、もしくは他の磁気ストレージ、メモリ・チップ、ASIC、構成プロセッサ、光記憶デバイス、またはコンピューター・プロセッサが命令を読み取ることが可能な任意の他の媒体を含む。命令は、任意の好適なコンピューター・プログラミング言語で作成されたコードから、コンパイラおよび/またはインタプリタによって生成された、プロセッサ特有の命令を備えることができる。好適なコンピューター・プログラミング言語の非限定的な例は、C、C++、C#、Visual Basic、Java、Python、Perl、JavaScript、ActionScriptなどを含む。
【0058】
分散デバイス106は、分散デバイス106の1つまたは複数の構成要素を通信可能に接続可能なバス806を含むことができる。
【0059】
管理デバイス104は処理デバイス814を含むことができる。処理デバイス814の非限定的な例は、マイクロプロセッサ、ASIC、状態機械、または他の好適な処理デバイスを含む。処理デバイス814は、1つを含む任意数の処理デバイスを含むことができる。処理デバイス814は、メモリ・デバイス816などのコンピューター可読媒体に通信可能に接続することができる。処理デバイス814は、メモリ・デバイス816にそれぞれ記憶された、コンピューター実行可能プログラム命令および/またはアクセス情報を実行することができる。
【0060】
メモリ・デバイス816は、処理デバイス814によって実行されたときに、本明細書で説明する動作を処理デバイス814に実行させる、命令を記憶することができる。メモリ・デバイス816に記憶される命令は、送信エンジン824を含むことができる。管理デバイス104は、管理デバイス104の1つまたは複数の構成要素を通信可能に接続できるバス818も含むことができる。処理デバイス814、メモリ・デバイス816、およびバス818は、図8では互いに通信する別の構成要素として示されているが、他の実装も可能である。たとえば、処理デバイス814、メモリ・デバイス816、およびバス818は、プリント回路板、またはプログラミング・コードを記憶および実行するために管理デバイス104内に配設可能な他の好適なデバイスの、構成要素とすることができる。
【0061】
管理デバイス104は、ネットワーク・インターフェース・デバイス822、824も含むことができる。ネットワーク・インターフェース・デバイス820は、アンテナ822を介して通信リンク202a〜gのうちの1つまたは複数を確立するように構成された、送受信デバイスとすることができる。ネットワーク・インターフェース・デバイス820の非限定的な例は、RFトランシーバである。ネットワーク・インターフェース・デバイス824は、バックホール・ネットワーク110を介したサーバ・システム102への通信リンクを確立するための1つまたは複数の構成要素を含むことができる。
【0062】
サーバ・システム102は処理デバイス826を含むことができる。処理デバイス826の非限定的な例は、マイクロプロセッサ、ASIC、状態機械、または他の好適な処理デバイスを含む。処理デバイス826は、1つを含む任意数の処理デバイスを含むことができる。処理デバイス826は、メモリ・デバイス828などのコンピューター可読媒体に通信可能に接続することができる。処理デバイス826は、それぞれメモリ・デバイス828内に記憶された、コンピューター実行可能プログラム命令および/またはアクセス情報を実行することができる。
【0063】
メモリ・デバイス828は、処理デバイス826によって実行されたときに、本明細書で説明する動作を処理デバイス826に実行させる、命令を記憶することができる。メモリ・デバイス828に記憶される命令は、送信エンジン830を含むことができる。サーバ・システム102は、サーバ・システム102の1つまたは複数の構成要素を通信可能に接続することができるバス832も含むことができる。処理デバイス826、メモリ・デバイス828、およびバス832は、図8では互いに通信する別の構成要素として示されているが、他の実装も可能である。たとえば、処理デバイス826、メモリ・デバイス828、およびバス832は、プリント回路板、またはプログラミング・コードを記憶および実行するためにサーバ・システム102内に配設可能な他の好適なデバイスの、構成要素とすることができる。
【0064】
サーバ・システム102はネットワーク・インターフェース・デバイス834も含むことができる。ネットワーク・インターフェース・デバイス834は、バックホール・ネットワーク110を介した管理デバイス104への通信リンクを確立するための、1つまたは複数の構成要素を含むことができる。
【0065】
図9は、RFメッシュ・ネットワークまたは他のデータ・ネットワークにおける分散データ送信のための例示の方法900を示すフローチャートである。例示の目的で、方法900は図1〜8に示されたシステム実装を参照しながら説明する。しかしながら、他の実装も可能である。
【0066】
方法900は、ブロック910に示すように、第1のヘッダおよびペイロード・データを含む第1のデータ・メッセージを第1の分散デバイスが受信することを含む。たとえば分散デバイス106は、図2〜8に関して上記で説明したように、ネットワーク管理デバイス104または別の分散デバイスからネットワーク・インターフェース・デバイス808を介してデータ・メッセージを受信することができる。
【0067】
方法900は、ブロック920に示すように、第2の分散デバイスが第1のヘッダ内でペイロード・データを受信するものとして識別されない旨を決定する、第1の分散デバイスをさらに含む。たとえば、分散デバイス106の処理デバイス802は、ヘッダにアクセスするために送信エンジン812を実行することができる。送信エンジン812は、図1〜7に関して上記で説明したように、他の分散デバイスに関する識別子がヘッダにないことに基づいて、近隣デバイスなどの1つまたは複数の他の分散デバイスが、ペイロード・データ206を受信するものとしてヘッダによって識別されない旨を決定することができる。
【0068】
方法900は、ブロック930に示すように、ペイロード・データ、および、ペイロード・データを受信するものとして第2の分散デバイスを識別する第2のヘッダ含む、第2のデータ・メッセージを生成する第1の分散デバイスをさらに含む。第2のデータ・メッセージは、第1のデータ・メッセージと同じペイロード・データ、および第1のデータ・メッセージとは異なるヘッダを含むことができる。たとえば処理デバイス802は、第2のデータ・メッセージを生成するために送信エンジン812を実行することができる。送信エンジン812は、受信側分散デバイスの識別子を第1のヘッダに付加することによって、第2のヘッダを生成することができる。第2のヘッダは、分散デバイス106に先立って、または分散デバイス106と同時期に、ペイロード・データ206を受信したかまたは受信するように選択された他のデバイスを識別することができる。いくつかの態様において、第2のヘッダは、分散デバイス106がペイロード・データ206を受信したかまたは受信するように選択された旨を識別することもできる。第2のヘッダは、図1〜7に関して上記で説明したように、分散デバイス106が第2のデータ・メッセージを使用してペイロード・データ206を送信する相手のデバイスを識別することもできる。
【0069】
方法900は、ブロック940に示すように、メッシュ・ネットワークを介して第2のデータ・メッセージを第2の分散デバイスに送信する、第1の分散デバイスをさらに含む。たとえば分散デバイス106は、図1〜7に関して上記で説明したように、ネットワーク・インターフェース・デバイス808およびアンテナ810を使用し、通信リンク202a〜hのうちの1つを介して第2のデータ・メッセージを送信することができる。
【0070】
追加または代替の態様において、サーバ・システム102またはネットワーク管理デバイス104などの(ただし、これらに限定されない)制御ユニットは、ペイロード・データ206が、分散データ送信プロセスを介して分散デバイス106a〜iのうちの1つによって受信されていない旨を決定することができる。制御ユニットは、分散データ送信プロセスを介してペイロード・データ206を受信していないかまたはその受信を確認していない分散デバイスに、ペイロード・データ206が送信される旨を検証するための、1つまたは複数の動作を実行することができる。
【0071】
図10は、エラー検査を用いた分散データ送信のための例示の方法1000を示すフローチャートである。例示の目的で、方法1000は図8に示されたシステム実装を参照しながら説明する。しかしながら、他の実装も可能である。
【0072】
方法1000は、ブロック1010に示すように、1つまたは複数のネットワーク・デバイスに送信されることになるデータを受信することを含む。たとえば、システム100内の制御ユニットは、システム100内のデバイス(たとえば、分散デバイス106a〜f、端末デバイス108a〜dなど)に関するファームウェア更新または他のソフトウェア更新を受信することができる。任意の好適な制御ユニットは、任意の好適なプロセスを介してデータを受信することができる。1つの非限定的な例において、サーバ・システム102のプロセッサ826によって実行される送信エンジン830は、データを受信することができる。別の非限定的な例では、ネットワーク管理デバイス104のプロセッサ826によって実行される送信エンジン830は、バックホール・ネットワーク110を介してサーバ・システム102からデータを受信することができる。
【0073】
方法1000は、ブロック1020に示すように、システム100内のネットワーク・デバイスへの送信のために、データを部分に区分することまたは他の方法で分割することをさらに含む。1つの非限定的な例において、サーバ・システム102のプロセッサ826は、各々がペイロード・データを含む複数のデータ・メッセージにデータを区分するために、送信エンジン830を実行することができる。別の非限定的な例では、管理デバイス104のプロセッサ814は、各々がペイロード・データを含む複数のデータ・メッセージにデータを区分するために、送信エンジン824を実行することができる。データは、メッシュ・ネットワーク112に関する帯域幅または他の容量測定に基づいて区分することができる。
【0074】
方法1000は、ブロック1030に示すように、各データ部分を分散デバイスに提供することをさらに含む。たとえばサーバ・システム102は、各データ部分を管理デバイス104に送信することができる。各データ部分に関するそれぞれのペイロード・データ206は、データを使用するターゲット・デバイス(たとえば、ファームウェアまたは他のソフトウェアが更新されることになるネットワーク・デバイス)によって再構築されることになるデータ(たとえば、ソフトウェアまたはファームウェア更新)の部分を含むことができる。管理デバイス104のプロセッサ814は、図2〜7に関して上記で説明したように、および/または、図9に関して上記で説明したような方法900を使用して、分散のための1つまたは複数の分散デバイスに各データ部分を提供するために、送信エンジン824を実行することができる。
【0075】
いくつかの態様において、送信エンジン824、830のうちの1つまたは複数は、それぞれのセッションを各データ部分に関連付けることができる。各データ部分は、それぞれのセッション中の送信および/または再送信のために、メッシュ・ネットワーク112の分散デバイスに提供することができる。いくつかの態様において、サーバ・システム102またはネットワーク管理デバイス104は、前のデータ部分に関する前のセッションが満了した後に、各データ部分を提供することができる。
【0076】
方法1000は、ブロック1040に示すように、各分散デバイスがすべてのデータ部分を受信したかどうかを決定するために、分散デバイス106a〜iの各々を照会することをさらに含む。1つの非限定的な例において、サーバ・システム102のプロセッサ826は、分散デバイス106a〜iの各々にアドレス指定されたそれぞれの照会を生成するために、送信エンジン830を実行することができる。サーバ・システム102は、分散デバイス106a〜iにルーティングするために、管理デバイス104に照会を送信することができる。別の非限定的な例では、管理デバイス104のプロセッサ814は、分散デバイス106a〜iの各々にアドレス指定されたそれぞれの照会を生成するために、送信エンジン824を実行することができる。
【0077】
方法1000は、ブロック1050に示すように、分散デバイス106a〜iのうちのいずれかがすべてのデータ部分を受信してはいないかどうかを判別することをさらに含む。たとえば、分散デバイス106a〜iのうちの1つまたは複数は、分散デバイスが1つまたは複数のデータ部分を有していない旨を示すことによって、管理デバイス104からの照会に応答することができる。
【0078】
分散デバイス106a〜iのうちのいずれかがすべてのデータ部分を受信してはいない場合、方法1000は、ブロック1060に示すように、1つまたは複数のデータ部分が欠如している分散デバイスに、受信していない部分を送信することを含む。プロセス900はブロック1050に戻る。
【0079】
分散デバイス106a〜iのすべてがペイロード・データ206のすべての部分を受信している場合、方法1000は、ブロック1070に示すように、組み合わされたデータ部分を使用して1つまたは複数の動作を実行するために、分散デバイス106a〜iに1つまたは複数の命令を送信することを含む。たとえばデータは、分散デバイス106a〜iに関するファームウェア更新または他のソフトウェア更新を含むことができる。ネットワーク管理デバイス104は、ファームウェア更新または他のソフトウェア更新を適用するために、分散デバイス106a〜iの各々に関する命令を送信することができる。分散デバイス106a〜iの各々は、ファームウェア更新または他のソフトウェア更新の受信した部分を組み合わせるかまたは他の方法で再構築することができる。分散デバイス106a〜iの各々は、ファームウェア更新または他のソフトウェア更新を適用することができる。
【0080】
概略
本明細書では、請求する主題を完全に理解するために多数の特定の詳細を記載している。しかしながら当業者であれば、請求する主題がこれらの特定の詳細なしで実施可能であることを理解されよう。他の例では、請求する主題を不明瞭にしないために、当業者に知られた方法、装置、またはシステムは詳細に説明していない。
【0081】
いくつかの部分は、コンピューター・メモリなどのコンピューティング・システム・メモリ内に記憶されたデータ・ビットまたはバイナリ・デジタル信号上での動作のアルゴリズムまたは記号表現に関して提示されている。これらのアルゴリズム記述または表現は、データ処理分野の当業者によって、他の当業者に彼らの作業の内容を伝達するために使用される技法の例である。アルゴリズムとは、所望の結果につながる動作または同様の処理の自己矛盾の無いシーケンスのことである。このコンテキストでは、動作または処理は物理量の物理的操作を含む。典型的には、こうした量は、記憶、転送、組み合わせ、比較、または他の方法の操作を行うことが可能な、電気または磁気の信号の形を取ることができる。時には、主に一般的な使用のために、こうした信号をビット、データ、値、要素、記号、文字、用語、番号、数字などと言い表すことが便利であることが証明されている。しかしながら、これらおよび同様の用語のすべては適切な物理量に関連付けられ、単なる便宜的なラベルであることを理解されたい。別段に明記されていない限り、本明細書全体にわたって、「処理」、「コンピューティング」、「計算」、「決定」、および「識別」などの用語を使用する考察は、コンピューティング・プラットフォームのメモリ、レジスタ、もしくは他の記憶デバイス、送信デバイス、または表示デバイス内で、物理的な電子または磁気量として表されるデータを操作または転送する、1つまたは複数のコンピューターまたは同様の電子コンピューティング・デバイスなどの、コンピューティング・デバイスのアクションまたはプロセスを言い表すことを理解されよう。
【0082】
本明細書で考察するシステムは、任意の特定のハードウェア・アーキテクチャまたは構成に限定されない。コンピューティング・デバイスは、1つまたは複数の機能呼び出し時に条件付けられた結果を提供する構成要素の任意の好適な配置構成を含むことができる。好適なコンピューティング・デバイスは、汎用コンピューティング装置から本主題の1つまたは複数の態様を実装する特殊化されたコンピューティング装置までのコンピューティング・システムをプログラミングまたは構成する、記憶されたソフトウェアにアクセスする多目的マイクロプロセッサ・ベースのコンピューター・システムを含む。任意の好適なプログラミング、スクリプティング、または他のタイプの言語もしくは言語の組み合わせを使用して、コンピューティング・デバイスのプログラミングまたは構成で使用されることになるソフトウェアに含まれる本明細書の教示を実装することができる。
【0083】
本明細書で開示される方法の態様は、こうしたコンピューティング・デバイスの動作中に実行することができる。上記の例で提示されたブロックの順序は変更可能であり、たとえばブロックは、再順序付け、組み合わせ、および/またはサブブロックへの分解が可能である。あるブロックまたはプロセスは並行して実行することができる。
【0084】
本明細書における「するように適合された」または「するように構成された」の使用は、追加のタスクまたはステップを実行するように適合または構成されたデバイスを排除しない、オープンかつ包括的な言い回しを意味する。加えて、「に基づく」の使用は、1つまたは複数の記載された条件または値「に基づく」プロセス、ステップ、計算、または他のアクションが、実際には、記載されたそれらを超える追加の条件または値に基づく可能性があるという点で、オープンかつ包括的であることを意味する。本明細書に含まれる見出し、リスト、および番号付けは単に説明を容易にするためであり、限定的であることは意味していない。
【0085】
本主題をその特定の態様に関して詳細に説明してきたが、当業者であれば、前記を理解したときに、こうした態様の改変、変形、および等価を容易に生成できることを理解されよう。したがって、本開示は限定ではなく例示のために提示されており、当業者であれば、本主題のこうした変更、変形、および/または追加の包含を除外するものでないことが容易に明らかとなるであろうことを理解されたい。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10