(57)【要約】      （修正有）【課題】マルチホップワイヤレスネットワーク上でのワイヤレス送信のためのワイヤレスデバイスを提供する。【解決手段】メッセージを送信するための時間スロットおよびメッセージを受信するための時間スロットのスケジュールは、ワイヤレスデバイスがネットワークのどのレイヤを占めるかに基づいて決定される。メッセージを備える第１ノードからの送信は、メッセージを受信するためのスケジュールされた時間スロットの間に受信される。メッセージはメッセージのキューに加えられる。ネットワーク中の別のノードがメッセージを受信したことを示す信号がワイヤレスインターフェースを介して受信されることに応答して、メッセージはメッセージのキューから除去される。メッセージを送信するためのスケジュールされた時間スロットの間に、メッセージのキューから少なくとも１つのメッセージがワイヤレスデバイスよりもシンクに近いレイヤ中のノードへ送信される。【選択図】図９
2018082430.tif 000002
【特許請求の範囲】
【請求項１】
マルチホップワイヤレスネットワーク上でのワイヤレス送信のためのワイヤレスデバイスであって、前記ワイヤレスネットワークはシンクノードへメッセージを転送するように構成されたノードを備え、前記ノードは連続するレイヤへグループ化されており、各レイヤはこのレイヤ中のノードの前記シンクノードからの距離を表わし、前記ワイヤレスデバイスは、
前記ネットワーク中のノードとワイヤレス通信するためのワイヤレスインターフェースと、
前記ワイヤレスデバイスがどのレイヤを占めるかに基づいてメッセージを送信するための時間スロットおよびメッセージを受信するための時間スロットのスケジュールを決定し、
前記ワイヤレスインターフェースを介して、メッセージを受信するためのスケジュールされた時間スロットの間に、メッセージを備える送信を第１ノードから受信し、
前記ワイヤレスデバイスによる送信のためのメッセージのキューに前記メッセージを加え、
前記ネットワーク中の別のノードが前記メッセージを受信したことを示す信号が前記ワイヤレスインターフェースを介して受信されることに応答して、前記メッセージを前記メッセージのキューから除去し、
メッセージを送信するためのスケジュールされた時間スロットの間に、前記ワイヤレスインターフェースに前記送信のためのメッセージのキューから少なくとも１つのメッセージを前記ワイヤレスデバイスよりも前記シンクに近いレイヤ中のノードへ送信させる、
ように構成されたコントローラと、を備えるワイヤレスデバイス。
【請求項２】
別のノードが前記メッセージを受信したことを示す前記信号は、前記メッセージおよび／または前記メッセージが受信されたことの前記別のノードからの確認応答を備える送信である、
請求項１のワイヤレスデバイス。
【請求項３】
前記コントローラは、メッセージを送信するためのスケジュールされた時間スロットの間に、
送信競合期間の間にさらなる送信が前記ワイヤレスインターフェースを介して受信されるかどうかを判断し、
前記送信競合期間の間にさらなる送信が受信されることに応答して、メッセージを送信するための前記スケジュールされた時間スロットの間送信を禁じる、
ように構成されている、
請求項１のワイヤレスデバイス。
【請求項４】
前記送信競合期間は、乱数、前記キュー中のメッセージの数、前記キュー中の少なくとも１つのメッセージの優先度、または通信リンク品質の１つまたは複数に基づく、
請求項３のワイヤレスデバイス。
【請求項５】
前記コントローラは、メッセージを受信するための前記スケジュールされた時間スロットの間に前記送信を受信することに応答して、
前記メッセージの受信の後の確認応答競合期間の間に、さらなるノードが前記送信を受信したことを示す信号が前記ワイヤレスインターフェースを介して受信されるかどうかを判断し、
さらなるノードが前記送信を受信したことを示す信号が前記確認応答競合期間の間に受信されないことに応答して、前記送信の受信の確認応答を前記ワイヤレスインターフェースを介して前記第１ノードに送信する、ように構成されている、
請求項１のワイヤレスデバイス。
【請求項６】
前記確認応答競合期間は、ランダム値、前記キュー中のメッセージの数、前記キュー中のメッセージの優先度、または通信リンク品質の１つまたは複数に基づく。
請求項５のワイヤレスデバイス。
【請求項７】
前記確認応答競合期間中の前記判断および前記確認応答の前記送信は、前記デバイスが前記シンクから奇数だけ離れたレイヤに位置するかまたは偶数だけ離れたレイヤに位置するかの判断に応じる、
請求項５のワイヤレスデバイス。
【請求項８】
前記スケジュールは、交互に並ぶ、メッセージを送信するための時間スロットおよびメッセージを受信するための時間スロットを備える、
請求項１のワイヤレスデバイス。
【請求項９】
前記スケジュールは、前記ワイヤレスデバイスが前記シンクから奇数だけ離れたレイヤを占めるか偶数だけ離れたレイヤを占めるかに基づく、
請求項１のワイヤレスデバイス。
【請求項１０】
前記コントローラは、送信のためのチャネルおよびチャネル受信を、ワイヤレスデバイスがどのレイヤを占めるかに基づいて決定するように構成される、
請求項１のワイヤレスデバイス。
【請求項１１】
前記コントローラは、前記送信のためのチャネルを、
前記ワイヤレスデバイスが前記シンクから奇数レイヤだけ離れているか偶数レイヤだけ離れているかに依存して、
【数１】
2018082430.tif 000010
に従って算出されたチャネルオフセット（ＣＨｏｆｆｓｅｔ）に基づいて設定するように構成されており、
ＬＩＤは、前記ワイヤレスデバイスが占めるレイヤを表わし、ｍは、前記ネットワークによって使用されているチャネルの数を表わす、
請求項１０のワイヤレスデバイス。
【請求項１２】
前記コントローラは、前記受信のためのチャネルを、
前記ワイヤレスデバイスが前記シンクから奇数レイヤだけ離れているか偶数レイヤだけ離れているかに依存して、
【数２】
2018082430.tif 000011
に従って算出されたチャネルオフセット（ＣＨｏｆｆｓｅｔ）に基づいて設定するように構成されており、
ＬＩＤは、前記ワイヤレスデバイスが占めるレイヤを表わし、ｍは、前記ネットワークによって使用されているチャネルの数を表わす、
請求項１０のワイヤレスデバイス。
【請求項１３】
前記コントローラは、
前記メッセージのインジケーションを、送信後に記憶し、
後に受信されるメッセージが前記メッセージの複製かどうかを判断するために前記後に受信されるメッセージを前記メッセージの前記インジケーションと比較し、
前記後に受信されるメッセージが前記メッセージの複製であると判断することに応答して、前記ワイヤレスデバイスによる前記後に受信されるメッセージの送信を禁じる、
ように構成されている、
請求項１のワイヤレスデバイス。
【請求項１４】
前記コントローラは、
前記ワイヤレスデバイスが前記シンクの手前の最終レイヤを占めるかどうかを判断し、
前記ワイヤレスデバイスが前記シンクの手前の前記最終レイヤを占めることに応答して、中央のスケジューラに最終レイヤスケジュールを要求し、
前記最終レイヤスケジュールの受信に応答して、前記最終レイヤスケジュールに従って前記シンクと通信する、
ように構成されている、
請求項１のワイヤレスデバイス。
【請求項１５】
前記コントローラは、前記ワイヤレスインターフェースがメッセージを受信するための連続する２つのスケジュールされた時間スロットの間に送信を検出しないことに応答して、メッセージを受信するための後続のｎ個のスケジュールされた時間スロットの間に、エネルギーを保存しておくために前記ワイヤレスインターフェースを電源オフするように構成されており、
ｎは正の整数である、
請求項１のワイヤレスデバイス。
【請求項１６】
前記コントローラは、メッセージを受信するためのスケジュールされた時間スロットの間に送信が受信されないことに応答して、前記ワイヤレスインターフェースが電源オフされる、メッセージ受信のためのスケジュールされた時間スロットの数をｋだけ増やすように構成されており、
ｋは正の整数である、
請求項１５のワイヤレスデバイス。
【請求項１７】
前記コントローラは、メッセージを受信するためのスケジュールされた時間スロットの間に前記ワイヤレスインターフェースが送信を検出することに応答して、間に前記インターフェースが電源オフされる、メッセージを受信するためのスケジュールされた時間スロットの数をデフォルト値へリセットする、ように構成されている、
請求項１５のワイヤレスデバイス。
【請求項１８】
前記コントローラは、
メッセージを受信するためのスケジュールされた時間スロットの間に前記ワイヤレスインターフェースが送信を検出しないことに応答して、メッセージを受信するための後続のスケジュールされた時間スロットの間に前記ワイヤレスインターフェースが電源オフされる可能性を増やし、
メッセージを受信するためのスケジュールされた時間スロットの間に前記ワイヤレスインターフェースが送信を検出することに応答して、メッセージを受信する後続の時間スロットの間に前記ワイヤレスインターフェースが電源オフされる可能性を減じる、
ように構成されている。
請求項１のワイヤレスデバイス。
【請求項１９】
前記コントローラは、メッセージを送信するためのスケジュールされた時間スロットの間に、前記キューがメッセージを含んでいないことに応答して、メッセージを送信するためのスケジュールされた前記時間スロットの期間にわたって前記ワイヤレスインターフェースを電源オフする、ように構成されている、
請求項１のワイヤレスデバイス。
【請求項２０】
請求項１のワイヤレスデバイスを複数備えるマルチホップワイヤレスネットワーク。
【請求項２１】
マルチホップワイヤレスネットワーク上でのワイヤレス送信のためのワイヤレスデバイスを管理する方法であって、前記ワイヤレスネットワークは、シンクノードへメッセージを転送するように構成されたノードを備え、前記ノードは連続するレイヤへグループ化されており、各レイヤはこのレイヤ中の前記ノードの前記シンクノードからの距離を表わし、前記ワイヤレスデバイスは、前記ネットワーク中のノードとワイヤレス通信するためのワイヤレスインターフェースと構成されたコントローラと、を備え、
前記方法は、前記コントローラが、
前記ワイヤレスデバイスがどのレイヤを占めるかに基づいてメッセージを送信するための時間スロットおよびメッセージを受信するための時間スロットのスケジュールを決定し、
前記ワイヤレスインターフェースを介して、メッセージを受信するためのスケジュールされた時間スロットの間に、メッセージを備える送信を第１ノードから受信し、
前記ワイヤレスデバイスによる送信のためのメッセージのキューに前記メッセージを加え、
前記ネットワーク中の別のノードが前記メッセージを受信したことを示す信号が前記ワイヤレスインターフェースを介して受信されることに応答して、前記メッセージを前記メッセージのキューから除去し、
メッセージを送信するためのスケジュールされた時間スロットの間に、前記ワイヤレスインターフェースに前記送信のためのメッセージのキューから少なくとも１つのメッセージを前記ワイヤレスデバイスよりも前記シンクに近いレイヤ中のノードへ送信させる、
ことを備える方法。
【請求項２２】
プロセッサによって実行されると、前記プロセッサに請求項２１の方法を実行させる命令を備えるコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示はマルチホップワイヤレスネットワーク上でのワイヤレス送信のためのデバイスおよび方法に関する。
【背景技術】
【０００２】
低レイテンシおよび高信頼性は、常に、ファクトリーオートメーション、電力およびエネルギーシステム監視ならびに制御、スマートメータリング、および石油ならびにガス事業のような産業上での適用にとって重要な要件であり続けている。過去においては、そのような産業用制御システムは、産業プラントの至る所にあるデバイスおよびセンサユニットのアレイを接続、監視、および制御するための多くのケーブルを含んでいた。そのようなワイヤードシステムを設置、操作、および維持することは非常に高価であり得る。これらの短所にもかかわらず、産業界は、過去数年間にわたって市場に出ているインターネットオブシングス（ＩｏＴ）ソリューションのより安価なワイヤレスインターネットに切り替えることに依然乗り気でない。
【０００３】
ＩＥＥＥ８０２．１５．４規格は、産業上での適用において使用されるもののような、低レートワイヤレスパーソナルエリアネットワーク向けの物理レイヤおよび媒体アクセス制御（ＭＡＣ）レイヤを規定する。以前のＩＥＥＥ８０２．１５．４規格ソリューションは、より安価な一方で、その搬送波感知（キャリアセンス）多重アクセス／衝突回避方式（ＣＳＭＡ／ＣＡ）ベースの競合ＭＡＣアクセス方式ゆえに、所望の低レイテンシおよび高信頼性要件をもたらすことができなかった。
【０００４】
時分割多元接続（ＴＤＭＡ）スケジューリングはＣＳＭＡ／ＣＡに代わるものである。ＴＤＭＡは、時間を時間スロットと呼ばれる小さな間隔へと分割する。ネットワーク中の個々のノードは各々、自身が他の送信との衝突なしで或るチャネル（例えば、ある周波数帯域幅）上でデータを送信できるスケジュール（時間スロットの組）を割り当てられる。ＴＤＭＡは、競合なしかつ衝突なしであるため、ＣＳＭＡ／ＣＡベースのアプローチと比較して、はるかに低いマルチホップレイテンシおよびはるかに高い通信信頼性を達成できる。そうは言うものの、ＴＤＭＡは、マルチパスフェージング、およびＷｉＦｉ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ならびにマイクロ波装置などのような、産業・科学・医療用無線（ＩＳＭ）帯域中の他のデバイスからの干渉波に苦しむ。
【０００５】
これらの制限を克服するために、時間スロットチャネルホッピング（ＴＳＣＨ）ＭＡＣは、確定的メッシュネットワーク化を可能にする有望な方法を提供し、また、将来の低電力ワイヤレス産業適用（重要物のインターネット）への道を開く。ＴＳＣＨは、チャネルホッピングを介して改善された通信信頼性を達成し、同じ周波数帯域で動作する外部干渉波を回避する。チャネルホッピングは、送信がなされるチャネルを周期的に切り替えることによって衝突リスクの分散を支援する。ＴＳＣＨはまた、複数のネットワークノードを同期させることによって低い無線デューティサイクルおよび低いエネルギー使用量を維持する。
【０００６】
ＴＳＣＨ  ＭＡＣ規格上でのインターネットプロトコルバージョン６（６ＴｉＳＣＨ）は、開発途上のインターネット技術タスクフォース（ＩＥＴＦ）規格である。６ＴｉＳＣＨは、確定的ワイヤレス通信を可能にするスケジューリング機序に加えて、極めて低いレイテンシ、および産業上の適用に対する高信頼性を保証できる。
【０００７】
従来通り、６ＴｉＳＣＨネットワークでは、確定的通信を保証するために、スケジュールされた各通信リンクは１つの送信機および１つの受信機を有する。加えて、専用のルーティング経路があり、このルーティング経路に沿った各通信リンクはマルチホップリンクトラフィックに従ってスケジュールされる必要がある。したがって、スケジューラは、どのノードが、どのチャネル上でどの時間スロットで送信または受信すべきかを明示的に決定する必要がある。
【０００８】
一般的なルールは、１つのノードが同時に送信も受信もするべきでないこと、および１つのノードが自身を指定する複数のメッセージを同時に受信するべきでないことである。第２に、互いに干渉を起こす範囲の中で複数の通信が同時に起こる場合、やはり干渉が起こり得る。したがって、そのような衝突を全て回避するためにスケジューリングが使用される。
【０００９】
やはり、スケジューリングはやや複雑なプロセスである可能性があり、このことは、さらなる遅延を招くとともに制御オーバーヘッドのためにより多くのリソースを消費する可能性がある。このことも、いくつかの制限を課する可能性がある。密にスケジュールされた通信を伴うネットワークは、可変トラフィックレート、ノード障害、およびノードモビリティのようなネットワークダイナミシティー（dynamicity）に対して特に脆弱である可能性がある。
【００１０】
したがって、スケジューリングを改善するとともにＴＳＣＨ  ＭＡＣ規格に対して空間ダイバーシチを提供する要求がある。これは、ノードがモバイル型である場合でさえ、通信信頼性を大いに向上させて、再スケジューリングの複雑性を著しく減じることができる。
【図面の簡単な説明】
【００１１】
本発明のアレンジメント（arrangements）は、以下の詳細な説明からより完全に理解および諒解され、例として形成され、図面とともに理解される。
【図１】ＴＳＣＨを利用するマルチホップネットワークおよびネットワーク中の送信のためのスケジュールの例を示す。
【図２】ＴＳＣＨにおけるスケジューリングと一アレンジメントにおいて実施されるスケジューリングとの間の比較を示す。
【図３】図３Ａ乃至図３Ｅは、確認応答を利用する単一のオポチュニスティックルーティング経路の形成を示す。
【図４】図４Ａ乃至図３Ｆは、確認応答を利用する複数のオポチュニスティックルーティング経路の形成を示す。
【図５】Ｔｘオーバーヒアリング（overhearing）を伴うＡＣＫモードのための時間スロット構造を示す。
【図６】ＡＣＫオーバーヒアリングを伴うＡＣＫモードのための時間スロット構造を示す。
【図７】Ｔｘオーバーヒアリングを伴う非ＡＣＫモードのための時間スロット構造を示す。
【図８】図８Ａは、図３および図４のノードトポグラフィーのための奇数時間スロットの間の送信を示し、図８Ｂは、図３および図４のノードトポグラフィーのための偶数時間スロットの間の送信を示す。
【図９】所与のノードのためのチャネルオフセットを割り当てる方法のフローチャートを示す。
【図１０】一アレンジメントに従ったデューティサイクル自動調整の例を示す。
【図１１】一アレンジメントに従ったデューティサイクル自動調整のフローチャートを示す。
【図１２】一アレンジメントに従ったノードを示す。
【図１３】一アレンジメントに従ったデータ送受信をスケジュールする方法を示す。
【図１４】一アレンジメントに従った確認応答競合（ＡＣＫモード）のためのフローチャートを示す。
【図１５】送信成功率を（例えば、送信範囲中での）受信のために利用可能な受信機ノードの数の関数として示す。
【図１６】ＴＳＣＨスロットフレームと提案されるハイブリッドアレンジメントとの間の比較を示す。
【図１７】図１７Ａは、偶数時間スロットのためのノードとのＢＯＯＳＴスケジューリングの例を示し、図１７Ｂは、奇数時間スロットのためのノードとのＢＯＯＳＴスケジューリングの例を示す。
【図１８】ＴＡＳＡ、非集中型トラフィックアウェアスケジューリング（ＤｅＴＡＳ）、ＡＣＫモードでのＢＯＯＳＴ（ＢＯＯＳＴ（ＡＣＫ））、非ＡＣＫモードでのＢＯＯＳＴ（ＢＯＯＳＴ（Ｎｏ  ＡＣＫ））、およびハイブリッドＢＯＯＳＴ（ＢＯＯＳＴ（Ｈｙｂｒｉｄ））の様々な性能特性についてのレーダーチャートを示す。
【図１９】図１９Ａは、ネットワーク性能を相違するスケジューリング機序の下でのパケット伝送レート（ＰＤＲ）の点で示し、図１９Ｂは、ネットワーク性能を相違するスケジューリング機序の下での再スケジューリングのための平均遅延時間の点で示す。
【図２０】図２０Ａは、パケット伝送率を、静的ネットワークについてのネットワーク中のノードの数の関数として示し、図２０Ｂは、パケット伝送率を、ノードの１０％が自身の次のホップルーティングノード（それらの親ノードを切り替える）を６０秒ごとに変更するネットワークについてのネットワーク中のノードの数の関数として示す。
【発明を実施するための形態】
【００１２】
第１アレンジメントによれば、マルチホップワイヤレスネットワーク上でのワイヤレス送信のためのワイヤレスデバイスであって、前記ワイヤレスネットワークはシンクノードへメッセージを転送するように構成されたノードを備え、前記ノードは連続するレイヤへグループ化されており、各レイヤはこのレイヤ中のノードの前記シンクノードからの距離を表わす、ワイヤレスデバイスが提供される。上記ワイヤレスデバイスは、上記ネットワーク中のノードとワイヤレス通信するためのワイヤレスインターフェースと、構成されたコントローラとを備える。上記コントローラは、上記ワイヤレスデバイスがどのレイヤを占めるかに基づいてメッセージを送信するための時間スロットおよびメッセージを受信するための時間スロットのスケジュールを決定し、上記ワイヤレスインターフェースを介して、メッセージを受信するためのスケジュールされた時間スロットの間に、メッセージを備える送信を第１ノードから受信し、上記ワイヤレスデバイスによる送信のためのメッセージのキューに上記メッセージを加え、上記ネットワーク中の別のノードが上記メッセージを受信したことを示す信号が上記ワイヤレスインターフェースを介して受信されることに応答して、上記メッセージを上記メッセージのキューから除去し、メッセージを送信するためのスケジュールされた時間スロットの間に、上記ワイヤレスインターフェースに上記送信のためのメッセージのキューから少なくとも１つのメッセージを上記ワイヤレスデバイスよりも上記シンクに近いレイヤ中のノードへ送信させる、ように構成されている。
【００１３】
この結果、このアレンジメントは、ルーティングトポロジーに対する変更に素早くかつ効率的に適合できる分散型オポチュニスティックルーティングスキームを提供しつつ確定的な（スケジュールされた）方法で通信する手段を提供する。ワイヤレスデバイスは、ネットワーク中の複数のノードのうちの１つであり得る。各ノードは、自身が自身の占めるレイヤに従ってデータを送信することを試みるとともにデータを受信するようにスケジュールされているかを判断することができる。これは、レイヤＩＤによって示され得る。例えば、時間スロットは、交互に並ぶ偶数時間スロットおよび奇数時間スロットに分割され得、また、偶数レイヤ（偶数レイヤＩＤを有するレイヤ）は偶数時間スロットの間に送信するとともに奇数時間スロットの間にデータを受信するようにスケジュールされ得る。当然ながら、逆が当てはまり得、その場合、偶数レイヤは、奇数時間スロットの間に送信するとともに偶数時間スロットの間にデータを受信するようにスケジュールされる。送信のための時間スロットおよび受信のための時間スロットのスケジューリングにより、本明細書で記述されるアレンジメントは、時間スロット化チャネルホッピング（ＴＳＣＨ）ワイヤレスネットワークの実施に適する。
【００１４】
キューは、送信のためのメッセージの最後の１つのキューであってもよいし、最後のキューへの追加に先立ってメッセージを蓄積する初期バッファを含んでいてもよい。したがって、受信されたメッセージは、送信のための最後のキューに直接加えられるとともに次いで除去されてもよいし、受信されるとともに初期バッファに記憶され、次いでネットワーク中の別のノードがメッセージを受信したことを示す信号が受信されていないことに応答して所与の期間の後に最後のキューに加えられてもよい。後者のケースでは、キューはバッファおよび最後のキューから構成されると考えられことができ、この場合、ネットワーク中の別のノードがメッセージを受信したことを示す信号の受信はバッファがクリアされることに帰着する。キュー中の少なくとも１つのメッセージ（メッセージ、送信）は、キュー中の次メッセージであり得、例えば最も長くキューを占めたメッセージであり得る。あるいは、キュー中の少なくとも１つのメッセージは、キュー中で最高の優先度を有するメッセージであり得る。
【００１５】
一アレンジメントでは、ワイヤレスデバイスは、メッセージがワイヤレスデバイスよりもシンクノードから離れているレイヤ中のノードに由来する場合に、当該メッセージを自身のキューにただ加えるように構成される。
【００１６】
別のノードがメッセージを受信したことを示す信号は、また、１または複数の他のノードがメッセージを受信したことを示し得る。別のノードがメッセージを受信したことを示す信号は、メッセージの同じ複製が別のノードおよびワイヤレスデバイスによって受信されたことを必ずしも示さない。そうではなく、別のノードは、第１ノードからの送信に含まれているのと同じメッセージの複製を含んだ別の送信を（恐らくは別のノードから）受信したのかもしれない。各メッセージは、メッセージが同等物であるかどうかを判断するために比較されることを可能にする一意的なメッセージ識別子（メッセージＩＤ）と関連付けられ得る。
【００１７】
ワイヤレスインターフェースは、ワイヤレストランシーバ（結合したワイヤレス送信器および受信機）を備えてもよいし、受信機および個別の送信機を備えてもよい。
【００１８】
ネットワーク中のレイヤは、シンクからのノードの距離を示す。より高いレイヤは、ノードが、より低いレイヤよりもシンクノードから離れていることを示す。レイヤは、シンクまでの最小ホップ距離、ノード間のランク／リンク品質、および／または他の段階変化するルーティングメトリックに基づいて決定され得る。
【００１９】
コントローラは、ワイヤレスデバイスがどのレイヤを占めるかを判断するように構成され得る。あるいは、レイヤは、アンカーポイントまたは集中型ネットワーク管理デバイスのような別のデバイスによってワイヤレスデバイスと通信させられることができる。
【００２０】
一アレンジメントでは、別のノードが上記メッセージを受信したことを示す上記信号は、上記メッセージおよび／または上記メッセージが受信されたことの上記別のノードからの確認応答を備える送信である。よって、オーバーヒアされる別の送信がメッセージを含む場合、メッセージはキューから除去され得、または、確認応答がオーバーヒアされる場合、第１メッセージ。確認応答および／または送信はどのようなものであっても、関連するメッセージを識別するメッセージＩＤを含み得る。
【００２１】
さらなるアレンジメントでは、上記コントローラは、メッセージを送信するためのスケジュールされた時間スロットの間に、送信競合期間の間にさらなる送信が上記ワイヤレスインターフェースを介して受信されるかどうかを判断し、上記送信競合期間の間にさらなる送信が受信されることに応答して、メッセージを送信するための上記スケジュールされた時間スロットの間送信を禁じる、ように構成されている。よって、ワイヤレスデバイスは、送信競合期間中に送信を求めて争うとともに別のノードが送信する場合ワイヤレスデバイスのためにバックオフするように構成され得る。
【００２２】
一アレンジメントでは、上記送信競合期間は、乱数、上記キュー中のメッセージの数、上記キュー中の少なくとも１つのメッセージの優先度、または通信リンク品質の１つまたは複数に基づく。
【００２３】
送信競合期間を乱数に基づかせることは、複数のノードが同時に送信することを試みるのを回避するのを支援する。一アレンジメントでは、送信競合期間はキュー中のメッセージの数に反比例する。このことは、送信優先度が最もビジーなノードに行くことを可能にする。
【００２４】
一アレンジメントでは、送信競合期間は、キュー（送信が試みられているメッセージ）中の少なくとも１つのメッセージの優先度に反比例する。このことは、送信優先度が最も重要なメッセージに行くことを可能にする。メッセージの優先度は、メッセージを含んでいるどのような送信に含まれていてもよい。
【００２５】
一アレンジメントでは、送信競合期間は通信リンク品質に反比例する。このことは、送信優先度が最良の通信リンクを有するノードに行くことを可能にする。リンク品質は、ネットワーク中の１つ下のレイヤ中のノードとの通信リンクの品質であり得る。
【００２６】
一アレンジメントでは、上記コントローラは、メッセージを受信するための上記スケジュールされた時間スロットの間に上記送信を受信することに応答して、上記メッセージの受信の後の確認応答競合期間の間に、さらなるノードが上記送信を受信したことを示す信号が上記ワイヤレスインターフェースを介して受信されるかどうかを判断し、さらなるノードが上記送信を受信したことを示す信号が上記確認応答競合期間の間に受信されないことに応答して、上記送信の受信の確認応答を上記ワイヤレスインターフェースを介して上記第１ノードに送信する、ように構成されている。
【００２７】
よって、ワイヤレスデバイスは確認応答競合を実施し得、確認応答競合に勝利するノードはメッセージを送信することができる。受信されたメッセージは、確認応答競合期間の間、当該メッセージに関係する確認応答がオーバーヒアされない限り、送信のためにキューに入っていてよい。上述のように、代替的なアレンジメントは、メッセージに関係する確認応答がオーバーヒアされないと、まずメッセージをバッファすること、次いで確認応答競合期間の終わりに最後のキューに加えることを含む。このケースでは、キューはバッファおよび最後のキューを含んでいる。
【００２８】
一アレンジメントでは、上記確認応答競合期間は、ランダム値、上記キュー中のメッセージの数、上記キュー中のメッセージの優先度、または通信リンク品質の１つまたは複数に基づく。送信競合期間と同様に、ランダム値は複数のノードが確認応答を同時に発することを回避するのを支援する。
【００２９】
一アレンジメントでは、確認応答競合期間はキュー中のメッセージの数に比例する。このことは、よりビジーでないノードに優先度を与え、それらがメッセージ上でまさしくその送信を取る機会を増す。
【００３０】
一アレンジメントでは、確認応答競合期間はリンク品質に反比例する。このことは、より良く接続されているノードに優先度を与える。
【００３１】
一アレンジメントでは、確認応答競合期間はキュー中の次メッセージの優先度に比例する。このことは、緊急性により劣る他のメッセージを有するノードへメッセージをルーティングすることを支援する。
【００３２】
一アレンジメントでは、上記確認応答競合期間中の上記判断および上記確認応答の上記送信は、上記デバイスが上記シンクから奇数だけ離れたレイヤに位置するかまたは偶数だけ離れたレイヤに位置するかの判断に応じる。よって、ワイヤレスデバイスが確認応答競合を実施するかどうかは、ワイヤレスデバイスが占めるレイヤに基づき得る。一アレンジメントでは、ワイヤレスデバイスが自身がネットワーク中で奇数レイヤを示すか偶数レイヤを占めるかに基づいて確認応答競合を経るハイブリッドモードが実行される。例えば、ワイヤレスデバイスは、自身が偶数レイヤを占める場合、確認応答競合を実施し得、自身が奇数レイヤを占める場合、確認応答競合を実施せず、逆も同様である。
【００３３】
一アレンジメントでは、上記スケジュールは、交互に並ぶ、メッセージを送信するための時間スロットおよびメッセージを受信するための時間スロットを備える。これらは、交互に並ぶ奇数時間スロットおよび偶数時間スロットであり得る。
【００３４】
一アレンジメントでは、上記スケジュールは、上記ワイヤレスデバイスが上記シンクから奇数だけ離れたレイヤを占めるか偶数だけ離れたレイヤを占めるかに基づく。メッセージを受信するための時間スロットおよびメッセージを送信するための時間スロットは、ワイヤレスデバイスが奇数レイヤを占めるか偶数レイヤを占めるか（ワイヤレスデバイスが、シンクから偶数レイヤだけ離れているか奇数レイヤだけ離れているか）に基づいて割り当てられ得る。
【００３５】
一アレンジメントでは、前記コントローラは、送信のためのチャネルおよびチャネル受信を、ワイヤレスデバイスがどのレイヤを占めるかに基づいて決定するように構成される。コントローラは、自身が、ワイヤレスデバイスと同時に送信するようにスケジュールされた近隣レイヤへの異なる送信チャネルを実施することを確実にするように構成され得る。同じことが、メッセージの受信のための送信チャネルに当てはまり得る。例えば、レイヤが、自身が奇数レイヤであるか偶数レイヤであるかに基づいて送信または受信するようにスケジュールされる場合、近隣の奇数レイヤおよび近隣の偶数レイヤは相違するチャネルを割り当てられ得る。チャネルオフセットは、ワイヤレスデバイスが占めるレイヤ、およびネットワークによって使用されているチャネルの数（例えば、チャネル再使用係数ｍ）に基づき得る。
【００３６】
一アレンジメントでは、上記コントローラは、上記送信のためのチャネルを、
上記ワイヤレスデバイスが上記シンクから奇数レイヤだけ離れているか偶数レイヤだけ離れているかに依存して、
【００３７】
【数１】
2018082430.tif 000003
【００３８】
に従って算出されたチャネルオフセット（ＣＨｏｆｆｓｅｔ）に基づいて設定するように構成されており、ＬＩＤは、上記ワイヤレスデバイスが占めるレイヤを表わし、ｍは、上記ネットワークによって使用されているチャネルの数を表わす。このことは、近隣の送信する複数レイヤが同じチャネル上で送信しないことを確実にし、よって、ネットワークに対する干渉を回避するのを支援する。
【００３９】
一アレンジメントでは、上記コントローラは、上記受信のためのチャネルを、上記ワイヤレスデバイスが上記シンクから奇数レイヤだけ離れているか偶数レイヤだけ離れているかに依存して、
【００４０】
【数２】
2018082430.tif 000004
【００４１】
に従って算出されたチャネルオフセット（ＣＨｏｆｆｓｅｔ）に基づいて設定するように構成されており、ＬＩＤは、上記ワイヤレスデバイスが占めるレイヤを表わし、ｍは、上記ネットワークによって使用されているチャネルの数を表わす。このことは、干渉を回避するために、メッセージを受信する近隣のレイヤが相違するチャネル上でそうすることを確実にする。
【００４２】
一アレンジメントでは、上記コントローラは、上記メッセージのインジケーションを、送信後に記憶し、後に受信されるメッセージが上記メッセージの複製かどうかを判断するために上記後に受信されるメッセージを上記メッセージの上記インジケーションと比較し、上記後に受信されるメッセージが上記メッセージの複製であると判断することに応答して、上記ワイヤレスデバイスによる上記後に受信されるメッセージの送信を禁じる、ように構成されている。このことは、複製メッセージがネットワーク内で送られることを回避するのを支援する。
【００４３】
一アレンジメントでは、コントローラは、オーバーヒアされるあらゆる送信について、送信が関係するそれぞれのメッセージのインジケーションを記憶し、後に受信されたメッセージをメッセージのインジケーションと比較し、後に受信されたメッセージがそれぞれのメッセージの複製かどうかを判断し、後に受信されるメッセージがそれぞれのメッセージの複製であると判断することに応答して、ワイヤレスデバイスによる後に受信されたメッセージの送信を禁じる、ように構成されている。このことは、複製メッセージがネットワーク内で送られることを回避するのを支援する。
【００４４】
一アレンジメントでは、上記コントローラは、上記ワイヤレスデバイスが上記シンクの手前の最終レイヤを占めるかどうかを判断し、上記ワイヤレスデバイスが上記シンクの手前の上記最終レイヤを占めることに応答して、中央のスケジューラに最終レイヤスケジュールを要求し、上記最終レイヤスケジュールの受信に応答して、上記最終レイヤスケジュールに従って上記シンクと通信する、ように構成されている。シンクへの送信を特別にスケジュールすることによって、シンクでの衝突が回避される。これは、空間ダイバーシチの減少が原因で衝突のリスクが増加するので、最後のレイヤにのみ適用され得る。この最後のレイヤだけを中心にスケジュールすることによって、中心にスケジュールされる必要のあるノードの数が比較的少なく抑えられ、複雑性を低く維持することができる。グリーディスケジューリングアルゴリズムが、各ノードについての平均トラフィックレートに基づいて適用され得る。
【００４５】
一アレンジメントでは、上記コントローラは、上記ワイヤレスインターフェースがメッセージを受信するための連続する２つのスケジュールされた時間スロットの間に送信を検出しないことに応答して、メッセージを受信するための後続のｎ個のスケジュールされた時間スロットの間に、エネルギーを保存しておくために上記ワイヤレスインターフェースを電源オフするように構成されており、ｎは正の整数である。このことは、ワイヤレスデバイスがネットワークのビジー状態でない場合に電力消費を削減するためにデューティサイクリングを実施することを可能にする。
【００４６】
ワイヤレスインターフェースを電源オフすることは、ワイヤレスデバイスの一部を低電力（スリープ）モードに置き得る。このことは、コントローラ中の１つまたは複数のプロセス／モジュール、例えば送受信を担当するモジュール、を電源オフすることを含み得る。低電力モードは、電力を消費する多くのモジュールがオフされる低エネルギー使用モードであり得る。ワイヤレスインターフェースが送信を検出しないことは、ワイヤレスインターフェースが電源オンされることを必要とする（さらに、ワイヤレスインターフェースが信号が受信されたかあるいはされていないかに関するいかなる判断も行うことができないので、ワイヤレスデバイスが低電力モードに入る時間スロットは、低電力モードの間にスケジュールされない）。
【００４７】
一アレンジメントでは、上記コントローラは、メッセージを受信するためのスケジュールされた時間スロットの間に送信が受信されないことに応答して、上記ワイヤレスインターフェースが電源オフされる、メッセージ受信のためのスケジュールされた時間スロットの数をｋだけ増やすように構成されており、ｋは正の整数である。よって、ワイヤレスインターフェースは、メッセージが繰り返し検出されない、メッセージを受信するための複数のスケジュールされた時間スロットの間、電源を落とされ得る。
【００４８】
一アレンジメントでは、上記コントローラは、メッセージを受信するためのスケジュールされた時間スロットの間に上記ワイヤレスインターフェースが送信を検出することに応答して、間に上記インターフェースが電源オフされる、メッセージを受信するためのスケジュールされた時間スロットの数をデフォルト値へリセットする、ように構成されている、このデフォルト値は、０と等しくあり得る。したがって、メッセージは聞かれ、ワイヤレスデバイスは、メッセージを受信するためのスケジュールされた後続の時間スロットの間にリセットするとともに送信を求めてリスンし得る。
【００４９】
一アレンジメントでは、上記コントローラは、メッセージを受信するためのスケジュールされた時間スロットの間に上記ワイヤレスインターフェースが送信を検出しないことに応答して、メッセージを受信するための後続のスケジュールされた時間スロットの間に上記ワイヤレスインターフェースが電源オフされる可能性を増やし、メッセージを受信するためのスケジュールされた時間スロットの間に上記ワイヤレスインターフェースが送信を検出することに応答して、メッセージを受信する後続の時間スロットの間に上記ワイヤレスインターフェースが電源オフされる可能性を減じる、ように構成されている。よって、ワイヤレスインターフェースが電源オフされる時間スロットをスケジュールする代わりに、ワイヤレスインターフェースを電源オフする可能性が持続され、可能性は、メッセージが受信されない場合に増やされる。この可能性は、閾値と、メッセージを受信するための各時間スロットのために生成された乱数に基づいて実施され得る。乱数が閾値を超える場合、ワイヤレスインターフェースは電源オフされる。メッセージが受信されない場合、閾値が減じられる。メッセージを受信するための時間スロットの間にメッセージが検出される場合、可能性／閾値はデフォルト値にリセットされ得る。
【００５０】
一アレンジメントでは、上記コントローラは、メッセージを送信するためのスケジュールされた時間スロットの間に、上記キューがメッセージを含んでいないことに応答して、メッセージを送信するためのスケジュールされた上記時間スロットの期間にわたって上記ワイヤレスインターフェースを電源オフする、ように構成されている。よって、メッセージが送信を予定されていない場合、ワイヤレスデバイスは電力を保存しておくために送信時間スロットの間、ワイヤレスインターフェースおよびいかなる関連するモジュールも電源オフし得る。
【００５１】
一アレンジメントによれば、上記のアレンジメントの任意のもののワイヤレスデバイスを複数備えるマルチホップワイヤレスネットワークが提供される。
【００５２】
さらなるアレンジメントによれば、マルチホップワイヤレスネットワーク上でのワイヤレス送信のためのワイヤレスデバイスを管理する方法であって、上記ワイヤレスネットワークは、シンクノードへメッセージを転送するように構成されたノードを備え、上記ノードは連続するレイヤへグループ化されており、各レイヤはこのレイヤ中の上記ノードの上記シンクノードからの距離を表わし、上記ワイヤレスデバイスは、上記ネットワーク中のノードとワイヤレス通信するためのワイヤレスインターフェースと構成されたコントローラと、を備える、方法が提供される。上記方法は、上記コントローラが、上記ワイヤレスデバイスがどのレイヤを占めるかに基づいてメッセージを送信するための時間スロットおよびメッセージを受信するための時間スロットのスケジュールを決定し、上記ワイヤレスインターフェースを介して、メッセージを受信するためのスケジュールされた時間スロットの間に、メッセージを備える送信を第１ノードから受信し、上記ワイヤレスデバイスによる送信のためのメッセージのキューに上記メッセージを加え、上記ネットワーク中の別のノードが上記メッセージを受信したことを示す信号が上記ワイヤレスインターフェースを介して受信されることに応答して、上記メッセージを上記メッセージのキューから除去し、メッセージを送信するためのスケジュールされた時間スロットの間に、上記ワイヤレスインターフェースに上記送信のためのメッセージのキューから少なくとも１つのメッセージを上記ワイヤレスデバイスよりも上記シンクに近いレイヤ中のノードへ送信させる、ことを備える。
【００５３】
同様に、さらなるアレンジメントは、上記のワイヤレスデバイスのうちの任意のものによって、これらのデバイスを詳述されるように機能させるように実施され得る方法を含む。
【００５４】
さらなるアレンジメントによれば、プロセッサによって実行されると、上記プロセッサに上記の方法を実行させる命令を備えるコンピュータ可読媒体が提供される。コンピュータ可読媒体は、ＮＡＮＤ型フラッシュメモリ、ＣＤ−ＲＯＭ、または磁気ハードドライブのような非一時的コンピュータ可読媒体であり得る。
【００５５】
したがって、アレンジメントは、ＴＳＣＨのオポチュニスティック転送およびチャネルダイバーシチの受信機ダイバーシチの利点を得つつ、スケジューリングの複雑性を減じるためにオポチュニスティックルーティングをＴＳＣＨと混合する。
【００５６】
時間スロット化チャネルホッピング（ＴＳＣＨ）
ＩＥＥＥ８０２．１５．４ｅ  ＴＳＣＨ  ＭＡＣは、時間スロット型のＴＤＭＡ機序であり、そこでは送信および受信が各スケジュールされた時間スロット中で行なわれる。加えて、チャネルホッピングが周波数ダイバーシチを加え、周波数ダイバーシチは、統計上、狭帯域干渉およびマルチパスフェージングの影響を緩和する。
【００５７】
図１は、ＴＳＣＨを利用するマルチホップネットワークおよびネットワーク中の送信のためのスケジュールの例を示す。ワイヤレスネットワークは、ノード１２１、１２２、１２３、およびシンク１１０を備える。ノード１２１、１２２、１２３は各々、通信範囲内で他のノード１２１、１２２、１２３（またはシンク１１０）とワイヤレス通信することができる。シンク１１０は、自身の送信範囲中のノード１２１、１２２、１２３とワイヤレス通信できるという点で、ワイヤレスノードでもある。ノード１２１、１２２、１２３は（シンク１１０を含め）、各々、自身の一意的なノード識別子（ノードＩＤ）を割り当てられている。
【００５８】
シンク１１０は、事実上、全ての通信にとっての最終目的地である。すなわち、ネットワーク中の送信は全て、ネットワーク内をシンク１１０へと導かれ、シンク１１０はネットワーク中の全ての通信のためのハブとして振る舞う。送信は、マルチホップシステムを通じて、中間（リレー）ノード１２１、１２２、１２３によってネットワーク内で転送される。シンク１１０は、転送されたメッセージを受信し、送信に基づいてプロセスを実行することができ得、かつ／または、メッセージを例えばインターネットを介してさらなるデバイスまたはネットワークに転送することができる。
【００５９】
図１に示されるルーティングトポロジーでは、ノード１２１、１２２、１２３、またはハブ１１０の間の専用通信リンクは、それぞれのノードの間のリンクとして示される。ノード１２１、１２２、１２３からシンク１１０へのデータ転送をスケジュールするために、ルーティングトポロジーが算出されるとともにスケジュールが割り当てられる。データパケットは、外側のノード１２３から、シンク１１０により近いノード１２２および１２３に送られ、それらは当該データパケットを（範囲内であれば）シンク１１０またはさらなるノードに転送する。１つのノード１２１、１２２、１２３から別のノードまでの送信は各々、ホップと呼ばれる。ノード１２１、１２２、１２３は、例えばそれらのシンク１１０までの最小ホップ距離に基づいてレイヤに分割される。ルーティングツリートポロジーは、シンク１１０への最短経路、リンク品質（例えば、ＲＰＬ（routing protocol for low power and lossy networks））、負荷バランシング、または予測される送信数（ＥＴＸ）に基づいて形成されることができる。ルーティングツリーはシンク１１０へと集まる。
【００６０】
本例では、第１ノード１２１はネットワークの外縁に位置し、さらに第２ノード１２２および第３ノード１２３はネットワーク中に位置し、シンク１１０は第２ノード１２２および第３ノード１２３のノードの向こう側に位置する。第１ノード１２１は、第２ノード１２２に割り当てられた通信リンクを有し、第２ノード１２２はシンク１１０との通信リンクを有する。第３ノード１２３もシンク１１０との自身の通信リンクを有する。各通信リンクは、２つのノードの間にのみある。
【００６１】
送信間の衝突を回避するために、ＴＤＭＡスキームが実施される。このため、いつノード１２１、１２２、１２３がデータを送信することを許可されるかを指定するためにスケジュールが決定される必要がある。
【００６２】
スケジューラは、セルを、特定のスケジューリング周期にわたって、通信リンクまたは処理タスクに割り当てる。スケジューリング周期は、スケジュールが定義される期間であり、時間にわたって繰り返す。スケジューリング周期は、フレームまたはスロットフレームと称され得る。スロットフレームは、スケジューラによって決定される標準的な時間ユニットであり、スロットフレームに対して定義されたスケジュールは、スケジューリング周期にわたって繰り返し実行される。各スロットフレームは、複数の時間スロットに分割される。スケジュールは、送信をスロットフレーム中の時間スロットへ割り当てる。複数の送信が、各時間スロットにおいて様々なチャネル上で割り当てられることができる。セルは或る通信チャネル上の時間スロットである。
【００６３】
本アレンジメントでは、各スロットフレームは４つの時間スロットを有する。第１時間スロットでは、第１チャネル上で通信が第１ノード１２１から第２ノード１２２への通信がスケジュールされる。同時に（第１時間スロット中で）、第２チャネル上の通信が第３ノード１２３からシンク１１０へスケジュールされる。これらの同時送信は、互いに近くで起こり、このことが相違するチャネルが干渉を回避するために割り当てられる理由である。送信が十分に互いに離れていれば、同じチャネルが使用されてもよい。
【００６４】
第２時間スロットでは、第１チャネル上で第２ノード１２２からシンク１１０への送信がスケジュールされる。第３時間スロットでは、第１チャネル上で第２ノード１２２とシンク１１０との間のさらなる送信がスケジュールされる。これらの２つの送信の各々は、例えば、第１ノード１２１から転送されているメッセージまたは第２ノード１２２によって生成されたメッセージを含み得る。第４時間スロットは、スケジュールされた送信を有しない。
【００６５】
本例は、干渉を回避するために、時間にわたるチャネルホッピングを実装する。チャネルが比較的頻繁に変更されれば、チャネル間のどのような干渉波も、比較的短期間でだけ幸福（will happy）であるだろう。本例では、スケジュールされた複数の送信が同じ（すなわち、複数の送信が同じノード間で同じ時間スロットの間にスケジュールされる）であっても、チャネルはスロットフレーム間で変わる。したがって、第２スロットフレームでは、以前は第１チャネル上にあった送信は第３チャネル上でなされる。以前は第２チャネル上にあった送信は第４チャネル上でなされる。同様に、第３スロットフレームの間、以前は第３および第４チャネル上にあった送信は、それぞれ第５および第６チャネル上でなされる。
【００６６】
特定の時間スロットを送信のために割り当てることによって、ＴＳＣＨは、特定レベルの信頼性を保証できる確定的システムを提供する。同様に、送信がいつ起こり得るかをノードが知っているので、必要でない場合、ノードは電源オフされることができる。これは、電力使用を著しく節約する。そうは言うものの、より大きなネットワークについては、適切なルートおよびスケジュールを決定するのは計算上かなり難しい可能性がある。したがって、ＴＳＣＨは、ネットワークトポグラフィーの変化またはノード障害への適合の点で著しくは効果的ではない。
【００６７】
オポチュニスティックルーティング
ワイヤレスセンサネットワーク中のオポチュニスティックルーティング（ＯＲＷ）およびオポチュニスティックＲＰＬ（ＯＲＰＬ）は、最初にウェイクアップするとともにシンクにより近いいずれかのノードにオポチュニスティックに転送することによってリンクダイバーシチを活用する。どちらのプロトコルも、ＴＳＣＨベースＭＡＣではなく、非同期デューティサイクリングＭＡＣプロトコル向けに設計されている。非同期デューティサイクリングプロトコルでは、トラフィックを転送するための所与の時刻にウェイクアップし得る複数の潜在的な転送機があるため、オポチュニスティックなリンク選択が達成されることができる。対照的に、ＴＳＣＨスケジューリングスキームは、所与の時間スロット中に送信機当たりただ１つの受信機をオンさせ、このことは、リンクダイバーシチの活用を現実の課題にしている。
【００６８】
本明細書で詳述されるアレンジメントは、この課題を、複数ノードをネットワーク内でのそれらの位置に基づいてウェイクアップさせることによって克服し、ＴＳＣＨベースＭＡＣプロトコルに対してリンクダイバーシチをもたらす。加えて、アレンジメントは、単一のメッセージの複製の数を制限するために優先度付きチャネルアクセススキームを導入する。
【００６９】
チャネルダイバーシチおよびホッピング
チャネルダイバーシチを使用することは、産業上の制御用途に対して高い信頼性をもたらすのに重要である。チャネルダイバーシチは、単一ノードからネットワークの残り部分までの高速データ配布プロトコルおよびオポチュニスティックルーティングプロトコルを含む、いくつかの情況において活用されることができる。そうは言うものの、これらのスキームはＴＳＣＨベースＭＡＣ向けに設計されているのではなく、また、これらのスキームをこの目的で拡張することは些細なことではない。他方、６ＴｉＳＣＨは、チャネルダイバーシチを元からサポートし、また、ＴＳＣＨ  ＭＡＣに対するホッピングを提供し、本明細書に記述されるそのようなアレンジメントは産業上の制御用途に対する高信頼性の運用のための力となる。
【００７０】
ＴＳＣＨスケジューリングスキーム
ＴＳＣＨスケジューリングは、集中型または分散型技法によって実施され得る。集中化スケジューリング技法は中央のエンティティにおいてネットワークから情報を集め、理想的なシナリオでの衝突のないスケジュールを算出し、次いでその実行のためにノードにこのスケジュールを配布する。これらのスケジュールは、静的ネットワーク状態で非常によく機能する。リンク変動またはノードモビリティが原因のネットワーク変化は、どのようなものであてもスケジュールの再計算を必要とし、著しいオーバーヘッドを引き起こす。また、いかなる変化であってもその始まりにおいて、チャネルリソースが以前のルーティング経路から新しく作られた経路に再分配される。このことは、たいてい、トラフィック信頼性の突然の低下およびエンドツーエンドのレイテンシの増加につながる。本明細書で記述されるアレンジメントは、そのような変化に対して堅牢である。単一の転送経路に頼らないことによって、ネットワークは、新しい転送経路へ最小の性能劣化または性能劣化なしに素速くホップすることができる。
【００７１】
分散型スケジューリングスキームは、何らかの変化の場合に局地的に、したがってより迅速にスケジューリングを決定することによって、集中型スケジューリングスキームの問題を緩和する。本明細書で記述されるアレンジメントは、いかなる中央のエンティティも必要とすることなくあらゆるネットワーク変化およびトラフィックタイプに適合できる、完全分散型のトラフィックアウェアスケジューリングプロトコルを利用する。その優先度付きチャネルアクセススキームのおかげで、スケジューリングプロトコルはエンドツーエンドのレイテンシさえも減じることができる。
【００７２】
ＢＯＯＳＴ
アレンジメントは、ＢＯＯＳＴ（Bringing Opportunistic routing and effortless-Scheduling to TSCH）を行う。ＢＯＯＳＴはＩＥＥＥ８０２．１５．４ｅ  ＴＳＣＨ  ＭＡＣに基礎を置く。
【００７３】
各ノードは、シンクからの当該ノードの距離に基づいてレイヤＩＤを割り当てられる。そして、各ノードは、自身がどのレイヤを占めるかに基づいて自身のスケジュールを算出する。
【００７４】
ＢＯＯＳＴの主な特徴は次のものを含む。
１）ＢＯＯＳＴは、レイヤレベルスケジューリング決定方法（determinism）を提供するが、それでもなおＴＳＣＨ  ＭＡＣ規格に従う。ＢＯＯＳＴは、各レイヤ内でトラフィックアウェアオポチュニスティックルーティングを採用する。このことは、スケジューラにさらなる複雑性を加えることなく、信頼性を向上させるために送信機および受信機の空間ダイバーシチを全体像の中に持ち込む。提案されるレイヤＩＤベースのマルチチャネルスケジューリングは非常に単純であり、それは単一のパラメータのみを必要とする。
２）同期された時間スロット内での競合機序が、マルチパスおよび受信機ダイバーシチを活用するために利用され、このことは低質なチャネルに対して堅牢であり、再送信を減じる。さらに、競合は優先度およびトラフィックアウェア型であり、これにより、メッセージの効果的なスケジューリングおよびルーティングを可能にする。
３）ＢＯＯＳＴは、信頼性の向上のために、またはスロット長およびレイテンシを減じるために、それぞれ、確認応答ありおよび確認応答なしの双方向メッセージ交換をサポートする。
４）オーバーヒアリング機序が、非能率的であるネットワークフラッジングを回避するために設けられる。
【００７５】
ネットワークモデルおよびルーティングプロトコル
ネットワークは、シンクまでのそれぞれのレイヤ内のノードの距離に基づいて、多くのレイヤに分割される。各ノードは、レイヤＩＤ（ＬＩＤ）を割り当てられ、レイヤＩＤはノードが占めるレイヤを表わす。レイヤＩＤは、シンクまでの地理的距離（例えば、最小のホップ距離）に基づいて定義されることができ、ＲＰＬプロトコルに従ったランク（リンク品質）および／または他の段階変化するルーティングメトリックによって表わされる。
【００７６】
レイヤは、シンクからブロードキャストされた「ハロー」メッセージを使用することを通じてシンクまでの最小ホップ距離に基づいて割り当てられることができる。ネットワーク動作の初めに、シンクは、このメッセージを近くのノードへブロードキャストすることができる。メッセージの送信は、各々、送信機のレイヤＩＤを含んでいる。シンクノードは、０のレイヤＩＤを有する初期メッセージを送る。当該メッセージを受信する各ノードは、送信機のレイヤＩＤを記憶し、また、自身のレイヤＩＤを送信機のレイヤＩＤより１つ大きく設定する。次に、ノードは、自身のレイヤＩＤを含んだメッセージを再送信する。ノードがメッセージの１つ超の複製を受信する場合、ノードは、自身のレイヤＩＤを受信された最小レイヤＩＤより１だけ大きく設定する。停止の基準は、例えば、各ノードがメッセージを一度だけ転送するようにすることによって、実現され得る。
【００７７】
各ノードについてのＬＩＤの値は、制御信号を介してネットワークの動作の間、周期的に更新され得る。例えば、「ハロー」メッセージは、ネットワーク中のノードがネットワーク内での自身の位置を割り出すことを可能にするためにシンクによって定期的に送られ得る。代替的に、または付加的に、ノードは、境界を明示するアンカーポイントとの通信を介して自身の位置を把握し得る。これらのアンカーポイントは、自身の境界を通過したノードと、ノードが境界を越えたことを通知するために、かつ／またはノードに新しいレイヤＩＤを割り当てるために、第２通信方式、例えば近距離通信（ＮＦＣ）または無線周波数ＩＤ（ＲＦＩＤ）によって通信し得る。
【００７８】
単純なＬＩＤベースルーティング機序が適用され、この場合、より高いＬＩＤ値を有するノードだけがより小さなＬＩＤ値を有する後続のレイヤ中のノードにメッセージを送る。
ＢＯＯＳＴ  ＭＡＣおよびスロット構造
アレンジメントは、（図１に示されるような）ＩＥＥＥ８０２．１５．４ｅ  ＴＳＣＨ  ＭＡＣに関して詳述されるものに類似の時間スロット化されたＴＤＭＡ機序を利用する。この機序では、送信および受信は割り当てられた時間スロット中で行なわれる。加えて、チャネルホッピングが周波数ダイバーシチを付加し、これは、統計上、狭帯域干渉およびマルチパスフェージングの影響を緩和する。
【００７９】
図２は、ＴＳＣＨにおけるスケジューリングと、一アレンジメントにおいて実施されるスケジューリングとの間の比較を示す。ＴＳＣＨ  ＭＡＣの各時間スロットでは、スケジュールされたＴＳＣＨ時間スロットまたはＣＳＭＡ／ＣＡ競合ベースの共用時間スロットのいずれかに基づいて、１つの送信機（Ｔｘ）と１つの受信機（Ｒｘ）の間のユニキャスト通信が採用される。
【００８０】
共用時間スロットの間は、初期競合アクセス期間（ＣＡＰ）がスケジュールされる。送信機がチャネルに成功裡にアクセスすると、受信機への送信がスケジュールされる。次に、受信機は、受信機からの受信の確認応答を受信するのを待つ。
【００８１】
専用時間スロットの間は、送信がこの時間スロットのために特別にスケジュールされるので、競合アクセス期間は必要ではない。したがって、送信がスケジュールされ、次いで、受信機は、受信機からの確認応答を受信するのを待つ。
【００８２】
本アレンジメントでは、同じＬＩＤを有する複数の送信器が、第１競合アクセス期間（ＣＡＰ１）の間に疑似ランダム送信遅延タイマＤｔに基づいて媒体にアクセスするために競合する。これは共有時間スロットに類似している。しかしながら、後に詳述されるように、所与のレイヤ中のノードだけがアクセスを求めて争う。加えて、遅延タイマは、例えば、より良い通信リンクを優先させるためのバイアスを含んでいる。
【００８３】
近隣エリア中で最低値のＤｔを有する送信機が、最初に送信することができ、他方、この領域中の他のノードは、チャネルが占領されることを感知するとバックオフし、自身の送信を次のスケジュールされた時間スロットまで延期する。しかしながら、ｎ個の送信機が互いに隠される場合、ｎ個の送信機に同時に送信させることができる。
【００８４】
空間ダイバーシチは、メッセージを１つの特定のノードへ送信するのではなくメッセージを近くの複数ノードへブロードキャスト／マルチキャストすることによって利用される。本アレンジメントでは、各ノードは、自身のレイヤから、データシンクにより近い次のレイヤ（すなわち、送信ノードのレイヤの１つ下のレイヤ）中のノードへメッセージをブロードキャストする。このことは、オポチュニスティックルーティングが実施されることを可能にしつつ、メッセージがシンクに常に近づいて行くことを確実にする。
【００８５】
２つの機序がオポチュニスティックルーティングのために提案される。図２に示されるように、（１）確認応答（ＡＣＫ）モードと、（２）非ＡＣＫモードである。ＡＣＫモードでは、メッセージが送信された後、送信遅延タイマＤｔに類似の受信遅延タイマＤｒが第２競合アクセス期間（ＣＡＰ２）期間中に使用される。最小のＤｒを有する受信機が、送信機に受信の確認応答を送る。他の受信機は、この確認応答を検出すると、バックオフし、沈黙し続ける。
【００８６】
複数の受信機を関与させることによって、大いに改善されることができ、これは通信の信頼性がノード密度に基づく。したがって、ネットワークが十分なノード密度σを有する場合、非ＡＣＫモードが提案される。このことは、時間スロット中のＡＣＫ要素を全て除去し、このことは、スロット長さを事実上、１／３（全体で１０ミリ秒のＴＳＣＨ時間スロット中で約３ミリ秒）減じる。
【００８７】
メッセージ複製を減じるためのオーバーヒアリング
レイヤｋからレイヤｋ−１へメッセージをブロードキャストする場合、同じメッセージの複数のコピーが複数の受信機によって受信され得ること、その後それらを次のレイヤへ転送できることは不可避であり、非能率的なネットワークフラッジングに帰着する。それを回避するために、２つのオーバーヒアリング機序が提案される。送信機（Ｔｘ）オーバーヒアリングおよびＡｃＫオーバーヒアリングである。
【００８８】
各ノードは、送信用メッセージのキューを保持する。あるノードが送信をスケジュールされるとともに送信の競合に勝利すると、このノードは自身のキュー中の次メッセージを送信する。あるノードが別のノードからメッセージを受信すると、このノードは自身の送信用キューにこのメッセージを加える。メッセージ（および、ある場合には各確認応答）の各送信は、この送信が関係するメッセージの識別のためのメッセージＩＤを含み得る。
【００８９】
一アレンジメントでは、キューは先入れ先出しポリシーで動作する。あるいは、各メッセージは、自身の関連する優先度を有し得る。高優先度を有するメッセージは、キューのより低い優先度を有するメッセージよりも前に移動され得る。
【００９０】
Ｔｘオーバーヒアリングでは、ＣＡＰ１の間にＴｘ競合に敗北するいずれのノードも、Ｔｘ競合に勝利するノードによって転送されたメッセージをおそらく受信およびオーバーヒアするだろう。すると、ノードは、自身のキュー中に受信メッセージの複製を有するかどうかを（例えば、一意的メッセージＩＤの比較によって）チェックし、有する場合は、キューから複製を削除する。
【００９１】
同様に、Ａｃｋオーバーヒアリングについては、ＣＡＰ２の間にＡＣＫ競合に敗北するいずれのノードも、１つのＡＣＫ競合のノードによって送信されたＡＣＫメッセージおそらくオーバーヒアするだろう。これは、確認応答が関係するメッセージを識別するためのメッセージＩＤを含む。ノードは、確認応答中のメッセージＩＤを自身のキュー中のメッセージのメッセージＩＤと比較し、自身のバッファから受信されたメッセージの複製を除去する。
【００９２】
上記のオーバーヒアリング機序は、複数の複製メッセージが相違するルートを介して渡されるリスクを緩和しつつ複数のノードへの送信によって、受信機ダイバーシチが実施されることを可能にする。
【００９３】
ＴｘオーバーヒアリングはＡＣＫモードまたは非ＡＣＫモードのどちらにも適用されることができ、他方、ＡＣＫオーバーヒアリングはＡＣＫモード中でのみ使用されることができる。
【００９４】
どのノードが競合に勝利するかおよびその地理的場所に依存して、図３に示されるように、単一のオポチュニスティックルーティング経路が形成されることができる。
【００９５】
図３Ａ乃至図３Ｅは、確認応答を利用する単一のオポチュニスティックルーティング経路の形成を示す。ネットワークは、シンクからのノードの距離に基づいて複数のレイヤに分割される。各レイヤは、ノードへの同様の距離（例えば、同じ最小ホップ距離）を有する複数のノードを含んでいる。
【００９６】
第１ノード（ノード１）は第５（外側の）レイヤ（レイヤ５）中に位置する。ノード１は送信を始動し、レイヤ４中に位置するノード２、ノード３、およびノード４へメッセージをブロードキャストする（図３Ａ）。ノード２、３、および４は、それぞれの自身のキューへメッセージを加える。本シナリオでは、ノード３がＡＣＫ競合に勝利し、ノード１にＡＣＫメッセージをブロードキャストする。
【００９７】
ＡＣＫメッセージは、ノード２およびノード４によってオーバーヒアされ（図３Ｂ）、それらは自身のキューをチェックし、確認応答されている最中のメッセージの複製を見つけ、複製を自身のキューから削除する。
【００９８】
同様に、レイヤ４中のノードが送信できるとき、同じプロセスが繰り返す。本ケースでは、ノード３が送信競合に勝利し、（図３Ｃに）示されるように、レイヤ３中のノード５およびノード６へメッセージを転送する。レイヤごとのオポチュニスティックルーティングを使用することによって、メッセージは最終的にはシンクに到着する。
【００９９】
空間ダイバーシチが利用されるので、中継ノードのうちのいくつかが互いに隠されていれば、同じメッセージを転送する複数の経路を有することが可能である。
【０１００】
この一例が図４Ａ乃至図４Ｆに示される。図４Ａ乃至図４Ｆは、確認応答を利用する複数のオポチュニスティックルーティング経路の形成を示す。図３Ａと同じく、ノード１はレイヤ４中のノード２、３、および４に送信する。このケースでは、ノード２がＭＡＣにアクセスするための最小の遅延Ｄｒを有するものとされ、最初にＡＣＫメッセージを送信する。ノード３はＡＣＫメッセージをオーバーヒアし、メッセージの複製を自身のキューから削除する。しかしながら、ノード４はノード２から（それらが互いの送信範囲外に位置するゆえに）隠されているので、ノード４はノード２からのＡＣＫメッセージをオーバーヒアしない。したがって、ノード４はバックオフせず、したがって、自身のタイマＤｒが程なく終了すると、ＡＣＫメッセージを送る。したがって、ノード２およびノード４は、両方とも、メッセージを次のレイヤへ転送し、互いに地理的に別々の２つの独特のルーティング経路を形成する。このアプローチは、ルーティングの空間ダイバーシチを高め、よって、さらなる制御オーバーヘッドなしで信頼性を向上させる。
【０１０１】
既に転送されたメッセージをノードが転送することを回避するために、各ノードは、ノードによってオーバーヒアまたは転送される各メッセージについてのメッセージＩＤを或る有限の期間にわたって把握する。したがって、各ノードは、ネットワーク内で以前に送信されたメッセージのリストを記憶している。ノードへ送信することまたはノードがネットワーク中の２つの他のノード間の送信をオーバーヒアすることのいずれかを通じてメッセージが受信される度に、メッセージ（一意的なメッセージＩＤのような）の識別子がリスト中で記憶される。確認応答がオーバーヒアされる度に加えて、確認応答が関係するメッセージの（メッセージＩＤのような）識別子が、リスト中で記憶される。
【０１０２】
メッセージが受信される度に、メッセージはリスト中で識別されたメッセージと比較される。受信されたメッセージが以前に受信されたメッセージのリストの中で識別されると、メッセージは複製であると判断される。このため、メッセージは無視され、送信用メッセージのキューに加えられず、ノードによって転送されず、ノードによって確認応答されない。このことは、（例えば、第２のより遅いルーティング経路を介して）後に受信される複製されたメッセージが止められることができること確実にし、メッセージがネットワークをフラッジングさせることを防止して効率を向上させ、最も高速のルートが優先されることを確実にする。本シナリオでは、レイヤ１中のノードのうちの１つは、レイヤ１中のさらなるノードが第２経路を介してメッセージの複製を受信する前に、第１経路を介してメッセージを受信するとともにこのメッセージをシンクへ転送する。このケースでは、このさらなるノードがシンクへのメッセージの送信をオーバーヒアしたので、複製メッセージを後に第２ルートを介して受信されたときに無視し、したがって、それをシンクへ転送しない。
スロット構造
図５は、Ｔｘオーバーヒアリングを伴うＡＣＫモードのための時間スロット構造を示す。４つのタイミングシナリオが示される。送信競合に勝利するノードに関係する送信機Ａ、領域中の送信競合に敗北する残りの送信機に関係する他の送信機Ｂ、確認応答競合に勝利する受信機に関する受信機Ｃ、領域中の確認応答競合に敗北する残りの受信機に関係する他の受信機Ｄである。
【０１０３】
時間スロットは全て、初期期間（ＴｓＴｘｏｆｆｓｅｔ）で始まる。ＴｓＴｘｏｆｆｓｅｔの後、ガードインターバルが、送信のためにスケジュールされた全ノードが送信競合の開始前にリスンし始めるための時間を許すためのバッファを提供するためにスケジュールされる。ガードインターバルの後、送信機ノード（送信のためにスケジュールされるレイヤ中のノード）は、送信競合アクセス期間（ＣＡＰ１）を開始する。本シナリオでは、送信機Ａが最短の送信遅延Ｄｔを有するので、送信機Ａがこの競合に勝利する。
【０１０４】
この送信遅延Ｄｔが終了すると、他の送信が検出されなかったので、送信機Ａはメッセージを受信機ノード（送信機レイヤの下方のレイヤ中のノード）へ送信する。他の送信機は、この送信を自身の送信遅延が終了する前にオーバーヒアし、よって、バックオフする。他の送信機は、メッセージをオーバーヒアし、それぞれの自身のキューの中にあるこのメッセージのあらゆる複製を削除する。
【０１０５】
送信の後、送信機Ａは、（ＡＣＫモードが実施されているので）受信の確認応答を待つ。受信機は、送信終了後にバッファ期間（ＴｘＡｃｋＤｅｌａｙ）の間待ち、ガードタイムが続いた後、確認応答競合を開始する。ＴｘＡｃｋＤｅｌａｙ期間は、受信ノードが確認応答競合を開始する前に受信されたメッセージを処理する時間を提供する。ガードタイムは、全受信ノードがメッセージを処理し終えるとともに確認応答競合のための準備をし終えるための時間を許すためのバッファを提供する。確認応答競合の間、各受信機は、確認応答競合アクセス期間（ＣＡＰ２）の間に自身の受信機遅延Ｄｒを待つ。本シナリオでは、受信機Ｃが最短の受信機遅延を有し、よって、確認応答競合に勝利する。
【０１０６】
この受信機遅延が終了すると、他の確認応答が受信機Ｃによってオーバーヒアされなかったので、受信機Ｃは送信機Ａに確認応答を送る。他の受信機Ｄはこの確認応答をオーバーヒアし、よってバックオフし、いかなるスケジュールされた確認応答も禁じる。他の受信機Ｄは、確認応答のメッセージＩＤを、それぞれの自身のキューに記憶されている複製メッセージと同じであると認識する。よって、他の受信機Ｄは、それぞれの自身のキューからこれらの複製を削除する。
【０１０７】
確認応答を送信した後、受信機Ｃは、送信のための次のスケジュールされた時間スロットまで待ち、次いで、自身のキューからメッセージ（例えば、たった今受信したメッセージ）を送信することを試みる。
【０１０８】
図６は、ＡＣＫオーバーヒアリングを伴うＡＣＫモードのための時間スロット構造を示す。図５と同じく、送信機Ａ、他の送信機Ｂ、受信機Ｃ、および他の受信機Ｄのための時間スロット構造が示される。シナリオは図５でのものと同じである。しかしながら、他の受信機Ｄが受信機Ｃから送られた確認応答をオーバーヒアすることが分かる。このことは、他の受信機Ｄをバックオフさせ、メッセージのいかなる複製も自身のキューから除去させる。
【０１０９】
図７は、Ｔｘオーバーヒアリングを伴う非ＡＣＫモードのための時間スロット構造を示す。送信機Ａ、他の送信機Ｂ、および全受信機（Ｃ）のための時間スロットスケジュールが示される。
【０１１０】
非ＡＣＫモードでは、送信はＡＣＫモードと同様に起こる。したがって、ノードは、送信のためにスケジュールされたノードが送信競合アクセスを開始する前に、初期オフセット（ＴｓＴｘｏｆｆｓｅｔ）およびガードタイムで時間スロットを開始する。
【０１１１】
送信競合アクセス期間（ＣＡＰ１）の間、送信機Ａは最短の送信遅延Ｄｔを有することによって競合に勝利し、したがって、送信を開始する。他の送信機Ｂはこの送信をオーバーヒアし、バックオフして、自身のキュー中にあり得る送信されたメッセージのいかなる複製も除去する。
【０１１２】
受信のためにスケジュールされた周辺の全ノード（全受信機Ｃ）は、送信をオーバーヒアし、送信されたメッセージを受信する。確認応答が必要でないため、確認応答競合はない。代わりに、全ノードは次の時間スロットまで待つ。
【０１１３】
受信機Ｃが受信機Ｃの送信のためにスケジュールされた時間スロットに達すると、それらは上で詳述されるような送信競合を開始する。送信競合に勝利する受信機は、自身のキュー中の次メッセージを送る。このメッセージが送信機Ａから送信されたメッセージである場合、残りの受信機Ｃはこの送信をオーバーヒアし、それぞれの自身のキューからこのメッセージを削除する。したがって、非ＡＣＫモードは、いかなる確認応答競合も必要とせずに、オポチュニスティックルーティングを提供する。
【０１１４】
優先度およびキューアウェア送信遅延
送信競合アクセス期間（ＣＡＰ１）において、同じレイヤ中の各ノードは同じ時間スロット中でウェイクアップし、チャネルをリスンし始める。各ノードがチャネルにアクセスするとともに送信し始めるタイミングは小さな送信遅延期間Ｄｔに依存する。
【０１１５】
一アレンジメントでは、送信遅延期間は、（１）に示されるようなパケット優先度Ｐおよびランタイムキュー長さＱを含む若干のパラメータの関数である。
Ｄｔ＝ｆ（Ｐ，Ｑ）      （１）
そのような関数の一例は、３つのデータ優先度カテゴリおよび２つのキュー長さカテゴリがあるとすると、下記のように示される。
【０１１６】
【表１】
2018082430.tif 000005
【０１１７】
表１に示されるように、パケット優先度Ｐは送信のためにキューに入れられたパケットの優先度に基づいた遅延を表わす。Ｐは、パケット優先度が増加すると、遅延を減じるとともにそれによって高優先度メッセージが送られ易くなるように、減少する。
【０１１８】
対照的に、Ｑ値は、所与のノードで送信のためにキューに入れられたメッセージの数を示し、キュー長さが増加すると、増加する。Ｑ値は、１０個未満のパケットのキューについては１であり、１０個以上のパケットのキューについては２である。
【０１１９】
送信遅延関数の単純な例は（２）に示され、ここでｒａｎｄ（１，１０）は１から１０までの乱数を生成する。このランダム関数の目的は、同じキュー長さを有する複数ノードが同じ優先度を有するメッセージの送信を試みるというケースにおける競合衝突を回避することである。
【０１２０】
あるチャネルへのアクセスを競争する２つのノード、ノード１およびノード２があるとする。ノード１は高優先度メッセージおよび低いキューを有し、ｒａｎｄ関数は５の値を与える。よって、Ｄｔ（１）＝５＋２００／１＝２０５μｓである。他方、ノード２は、低優先度メッセージを有するが、より大きなキュー長さを有する。２のランダム値を仮定すると、Ｄｔ（２）＝２＋６００／２＝３０２μｓである。
【０１２１】
ノード１およびノード２は両方とも時間スロットの開始のときにウェイクアップし、チャネルをリスンする。２０５μｓ後、チャネルがまだアイドル状態なので、ノード１は送信を開始する。他方、ノード２は、送信を開始できるまで、３０２μｓの間、待つ。その前に、ノード２は、チャネルがノード１によって占領されていることを既に検知し、よって、ノード２は自身の送信をバックオフする。
【０１２２】
そのようなデザインの主な利点は、同じレイヤ内では、最もビジーなノードおよび伝送するべき最も重大なメッセージを有するノードに優先度が与えられるということである。より重大なメッセージにとっての遅延を減じるとともにより長いキューサイズを有するノードのための遅延を減じることによって、よりビジーなノードおよび／または高優先度メッセージを有するノードは、チャネルにアクセスするためのより高い可能性を得る。このことは、リソースを再度割り当てるために相当な量の時間およびシグナリングを必要とする従来の６ＴｉＳＣＨスケジューリングベースのアプローチと比較して、動的ネットワーク状態下でのより適応的なスキームを提供する。
【０１２３】
送信遅延Ｄｔは、キューサイズ、メッセージ優先度、およびリンク品質の１つまたは複数に基づくことが可能である。
【０１２４】
ＡＣＫ遅延タイマＤｒ
確認応答（ＡＣＫ）遅延タイマＤｒ（これは、どのノードが確認応答競合アクセス期間（ＣＡＰ２）の間に最初にＡＣＫメッセージを送るかを決定する）は、Ｄｔに類似のパラメータに基づくことができる。Ｄｒは、ノードのキューサイズによって決定されることができ、より大きなキューを有するノードは、バッファオーバーフローおよびトラフィック輻輳を回避するためにより大きなＤｒを有する。
【０１２５】
リンク品質レベルおよび／または送信用キュー中の次メッセージの優先度のような他のパラメータが使用されることも可能である。ＡＣＫメッセージ衝突を回避するためにランダム遅延関数が実施されることも可能である。
【０１２６】
リンク品質は通信リンク上で送られた信号の受信信号強度インジケーション（ＲＳＳＩ）、リンク品質インジケーション（ＬＱＩ）、および／またはＥＴＸ（expected transmission count）によって示されることが可能である。レイヤ中の各ノードが１つ下のレイヤ中のどのノードとも通信することができるので、リンク品質は、ノードと１つ下のレイヤ中の受信ノードとの間の通信リンクの品質を表す。したがって、リンク品質は、ノードの個々の組の間の個々のリンク品質の平均であり得る。Ｄｒはリンク品質に反比例する。例えば、より大きなＥＴＸ値は、より低いリンク品質を、よって、より大きな値Ｄｒを表す。
【０１２７】
一アレンジメントでは、Ｄｒはキュー中の次メッセージの優先度に比例する。これは、高優先度メッセージを有するノードがさらなるメッセージを受信しにくいことを意味する。これは、送信するべき重要メッセージを有するノードからのトラフィックの転送を支援する。
【０１２８】
レイヤベース分散スケジューリング
６ＴｉＳＣＨにおけるスケジューラは、ネットワーク中の個々の通信リンクにとって最適化されたスケジュールを提供することを担う。何らかの既知のまたは事前収集されたネットワーク情報（例えば、ノードトラフィックレート、リンク品質など）に基づいて、集中型スケジューラは、各ノードがどの時間スロットの間にどのチャネル上でパケットを送信または受信するべきかを決定することができる。しかしながら、そのような集中型スケジューリングアルゴリズムの複雑性は、リンクの数が増加すると、指数関数的に跳ね上がる可能性があり、よって、それはスケーラブルではない。
【０１２９】
加えて、集中型スケジューリング機序は、トラフィックが周期的な静的ネットワークのような予測可能な状態を有するネットワークに対してのみ適し得る。したがって、集中型スケジューリング機序は、ネットワークダイナミシティー（例えば、可変のトラフィックレート、一様でないトラフィック負荷、リンクダイナミシティー）に対して堅牢ではないかもしれない。
【０１３０】
分散型スケジューリングアプローチは、ローカルなメッセージ変更を介したネットワーク状態に関するリアルタイムな報告に基づいて、適応性をもたらすことが可能である。そうは言うものの、リソースを交換するためにローカルにメッセージをゴシップする（gossip）ことは、さらなる遅延を招き得、ノードモビリティまたはルーティングトポロジー中の変化への適応性が限られる。
【０１３１】
一アレンジメントでは、ＴＳＣＨ  ＭＡＣのためのレイヤベース分散スケジューリング機序が提案される。このスケジュールは、ノードがウェイクアップするとともにパケットを送信または受信し始めるべきかどうかを、単一パラメータであるレイヤＩＤ（ＬＩＤ）に基づいて決定する。図８Ａおよび図８Ｂに描かれるように、奇数のＬＩＤを有するノードは、ＴＳＣＨスロットフレーム中の奇数時間スロットの間にウェイクアップするとともに送信を求める競合に参加し、他方、偶数時間スロットの間に、リスンするとともにパケットを受信する。同様に、偶数のレイヤを占めるノードは、偶数時間スロットの間に送信を求めて争うとともに奇数時間スロットの間に受信パケットをリスンするようにスケジュールされる。代替的なアレンジメントでは、時間スロットは交換され、偶数レイヤが奇数時間スロットの間に送信するとともに奇数レイヤが偶数時間スロットの間に送信する。
【０１３２】
図８Ａは、図３および図４のノードトポグラフィーについての奇数時間スロットの間の送信を示す。図８Ｂは、図３および図４のノードトポグラフィーについての偶数時間スロットの間の送信を示す。
【０１３３】
ネットワークは、シンクからの各レイヤ中のノードの距離に基づいて、交互に並ぶ奇数レイヤおよび偶数レイヤに分割される。奇数のレイヤＩＤを有するレイヤは奇数レイヤであり、偶数のレイヤＩＤを有するレイヤは偶数レイヤである。
【０１３４】
同様に、スロットフレーム内の時間スロットは、スロットフレーム内の時間スロットの位置に基づいて、交互に並ぶ奇数時間スロットおよび偶数時間スロットに分割される。
【０１３５】
図８Ａは奇数時間スロットの間の送信を示す。本アレンジメントでは、奇数レイヤ（レイヤ５、３、および１）は奇数時間スロットの間に送信する。したがって、奇数時間スロットは、奇数レイヤ中の全ノードのための送信のためにスケジュールされる。送信するべきメッセージを有するノードは全て、上に詳述されるように、奇数時間スロットの間にウェイクアップするとともに送信することを試みる。送信競合に勝利するノードは、自身のレイヤから自身の１つ下のレイヤ中のノードに送信する。偶数レイヤ中のノードは、奇数時間スロットの間に送信を求めてリスンする。
【０１３６】
本シナリオでは、ノード１が、レイヤ５中の送信競合に勝利し、レイヤ４中のノード２、３、および４に送信する。同様に、レイヤ３では、ノード５が、ノード６に対して送信競合に勝利し、したがって、レイヤ２中のノード（ノード８を含む）に送信する。レイヤ１では、ノード９が、送信競合に勝利するとともにシンクへ送信する。
【０１３７】
ネットワークがＡＣＫモードで動作しているかまたは非ＡＣＫモードで動作しているかに基づいて、送信を受信するノードは、受信された送信の送信器に確認応答を送るために競合し得る。
【０１３８】
図８Ｂは偶数時間スロットの間の送信を示す。このケースでは、偶数レイヤを占めるノードは送信を求めて競争し、他方、奇数レイヤを占めるノードは送信を求めてリスンする。
【０１３９】
本シナリオでは、レイヤ４中のノード３が、送信競合に勝利するとともにレイヤ３中のノード５および６に送信する。同様に、レイヤ２では、ノード８が送信競合に勝利し、レイヤ１中の近くのノード（ノード９を含む）に送信する。
【０１４０】
図８Ａおよび図８Ｂがネットワーク内の送信の１セットを示すことに注意されたい。上に詳述されるノードの送信範囲外にあるノードは、その時間スロットの間の送信のためにスケジュールされたレイヤを占める場合、一斉送信し得る。これは、そのようなノードが、上記の詳述される送信ノードから離れていてこれらの送信を検出できないからである。このことは、ネットワークを介する複数の伝送経路が利用されてネットワークの効率を高めるためることを可能にする。
【０１４１】
本アレンジメントでは、相違するチャネルオフセット（色）が、近隣の奇数レイヤによって自身の送信の間（および近隣の偶数レイヤによって自身のスケジュールされた送信の間）に、干渉を緩和するために使用される。
【０１４２】
図８Ａでは、レイヤ１からシンクへの送信は第１チャネル（ＣＨ１）上で送られ、レイヤ３からレイヤ２への送信は第２チャネル（ＣＨ２）上で送られ、レイヤ５からレイヤ４への送信は第３チャネル（ＣＨ３）上で送られる。
【０１４３】
図８Ｂでは、レイヤ２からレイヤ１への送信は第１チャネル上で送られ、他方、レイヤ４からレイヤ３への送信は第２チャネル上で送られる。
【０１４４】
それでも、２つのレイヤが互いに非常に離れていれば、スペクトルの再使用が可能である。図１に関して上で詳述されるように、スロットフレーム間で各レイヤのためのチャネルを変更することによって、周波数ホッピングが採用され得る。一旦チャネルオフセットが決定された後は、マッピング機能が、チャネルオフセットを実際の物理的周波数にマッピングするために呼び出される。
【０１４５】
一旦チャネルオフセットが設定された後は、擬似乱数アルゴリズムが、スロットフレーム中の送信のための実際のチャネルを算出するために使用される。したがって、同じチャネルオフセットを有するノードは同じチャネル中で動作する。それでも、次のスロットフレーム中では異なるチャネルが使用される。
【０１４６】
以下では、チャネルオフセットを決定するための機序が記述される。
【０１４７】
等式（３）は、奇数時間スロットの間の送信（Ｔｘ）および受信（Ｒｘ）のためのチャネルオフセット（ＣＨ＿ｏｆｆｓｅｔ）の算出のためにそれぞれ使用されることができる。
【０１４８】
【数３】
2018082430.tif 000006
【０１４９】
ここで、ｍはチャネル再使用係数であり、ａ％ｂはａモジューロｂ、ａ÷ｂの余りを表わし、
【０１５０】
【数４】
2018082430.tif 000007
【０１５１】
は、ｎ以下の最大の整数を返すfloor(n)である。
【０１５２】
チャネル再使用係数は使用されるチャネルの数であり、チャネルが再使用されるまでの奇数レイヤ（または偶数レイヤ）の数である。これは、チャネルが再使用されるまでのホップ（レイヤ）の最大数の半分と等しく、近隣の奇数レイヤおよび偶数レイヤが同じチャネルを使用し得るからである。例えば、ｍ＝２である場合、チャネルは、２つの奇数レイヤごと（または２つの偶数レイヤごと）に再使用される。図８Ａおよび図８Ｂのアレンジメントでは、ｍは３以上である（図示されないさらなるチャネルが使用され得る）。
【０１５３】
等式（４）は、偶数時間スロットの間の送信（Ｔｘ）および受信（Ｒｘ）のためのチャネルオフセットの算出のためにそれぞれ使用されることができる。
【０１５４】
【数５】
2018082430.tif 000008
【０１５５】
以下の例は、上記の等式を図８Ｂのノード２に適用する。３つのチャネルが利用されるので、チャネル再使用係数ｍは３に等しい。ノード２は、レイヤＩＤ（ＬＩＤ）が４である。ノード２は、偶数のＬＩＤ値を有するので、奇数時間スロットの間にだけデータを受信するようにスケジュールされる。したがって、（３）に従って、ノード２の受信のためのチャネルオフセットは２％３＋５％２＝３である。ノード２は、（４）によって１％３＋３％２＝２として算出されるチャネルオフセットで偶数時間スロット中に送信するようにスケジュールされる。よって、ノード２は、時間スロット２、４、および６の間にチャネルオフセット２で送信を求めて争い、また、時間スロット１、３、および５の間にウェイクアップするとともにチャネルオフセット３でチャネルをリスンする。
【０１５６】
レイヤ１ノードのためのスケジューリング（シンクへの最後のホップ）
他のレイヤ中のノードとは対照的に、レイヤ１中のノードは複数の潜在的な受信ノードを有さず、ただ１つの受信機（シンク）を有する。よって、隠れ端末問題が、高いパケットドロップレートのような（シンクでの衝突による）重大な結果を引き起こし得る。したがって、一アレンジメントは、明示的に、レイヤ１ノードとシンクとの間の通信を奇数時間スロットの間にスケジュールし、他方、他のレイヤ中のノードは、上の節で提案されるＬＩＤベースの偶数／奇数スロット機序を使用する。
【０１５７】
レイヤ１ノードについての平均トラフィックレートに基づいた低複雑性グリーディアルゴリズムが、トラフィックをスケジュールするために適用されることができる。１つのホップおよび１つの受信機しかないので、スケジューリングアルゴリズムの複雑性はＯ（ｎ）であり、ここで、ｎはＬＩＤ＝１を有するノードの数である。
【０１５８】
図９は、所与のノードにチャネルオフセットを割り当てる方法のフローチャートを示す。ノードは、ネットワークとの同期の維持および自身のレイヤＩＤを監視することによって始まる（２０１）。ノードは自身のレイヤＩＤを割り出し、このレイヤＩＤが自身にとって新しいかどうかをチェックする。これは、ノードが以前に関連付けられたレイヤＩＤ（例えば、ノードがネットワークにちょうど入っている最中であるため）を有しないかもしれないからであり、ノードが別のレイヤへと移動するに伴ってレイヤＩＤが変わるからであり得る（２０３）。そうでなければ、ノードは、ステップ２０１へとループし、同期を維持するとともにレイヤＩＤを監視し続ける。
【０１５９】
ノードが、自身が新しいレイヤを占めると判断する場合、ノードは、自身が占める新しいレイヤを反映するために自身のレイヤＩＤを更新する。この後、ノードは、自身が偶数レイヤを占めるかどうか（すなわち、ＬＩＤ％２＝０かどうか）を判断する（２０５）。そうである場合、ノードは、偶数時間スロットについての送信の試みおよび奇数時間スロットについての受信の試みをスケジュールする（２０７）。次いで、ノードは、第１等式（４）に従って送信（偶数送信）についての自身のチャネルオフセット、および第２等式（３）に従って受信（奇数受信）についての自身のチャネルオフセットを算出する。
【０１６０】
ノードが奇数レイヤを占める場合（すなわち、ＬＩＤ％２≠０の場合）、ノードは、自身が第１レイヤを占める（すなわち、ＬＩＤ＝１）かどうかを判断する（２１１）。そうでなければ、ノードは、奇数時間スロット中のオポチュニスティック送信の試みおよび偶数時間スロット中のオポチュニスティック受信をスケジュールする（２１３）。ノードが最後のレイヤであるレイヤ１を占める場合、ノードは、奇数時間スロットの間のシンクへの特別な送信および偶数時間スロットの間のオポチュニスティック受信をスケジュールする。シンクでの衝突を回避するために、ノードへのスケジュールされた送信が、中心に算出されるとともにレイヤ１中のノードに割り当てられることができる。奇数レイヤを占めるノードのための時間スロットが（このノードが最後のレイヤを占めようがそうでなかろうが）スケジュールされると（２１３、２１５）、チャネルオフセットが、第１等式（３）（奇数の送信）および第２等式（４）（偶数の受信）に従って算出される（２１７）。
【０１６１】
以前に言及されたように、時間スロットへの偶数レイヤおよび奇数レイヤの割り当ては逆にされ得る。その結果、偶数レイヤは奇数時間スロットの間に送信するとともに偶数時間スロットの間に受信するように割り当てられ得る。反対のことが奇数レイヤに当てはまる。したがって、チャネルオフセットは、等式（３）および（４）に基づいて、図９に示されるものから交換される。
【０１６２】
沈黙カウンタベースデューティサイクル自動調整
提案される上記のスケジューリングを用いると、ネットワーク中の全ノードがどの時間スロット中でも送信または受信のためにウェイクアップし、１００％のデューティサイクルという結果になる。これは、エネルギーの点でとりわけ効率的ではない。トラフィックレートが既知の場合、単純な解法は、おそらく、１つのスロットフレーム中で上記のスケジューリングアプローチに従ってｗ個の時間スロットをアクティブに設定することであり、スロットフレーム中の残りの時間スロットは、ノードがスリープまたは電源オフ状態にあることができるインアクティブである。よって、１つのスロットフレーム中のアクティブな時間スロットと全時間スロットの間の比率が、事実上、ノードのデューティサイクルである。アクティブな時間スロットの数ｗは、６ＴｉＳＣＨ中のＰＣＥ（path computation element）のような中央ネットワークエンティティによって決定されることができ、または、各ノードが過去のトラフィック情報に基づいてｗを決定することができる。
【０１６３】
動的デューティサイクリング機序が下に提案される。送信器側では、ノードは、自身の送信キュー中にパケットがあって初めて自身のスケジュールされたＴｘ時間スロット中でウェイクアップするとともに送信する。奇数時間スロットまたは偶数時間スロットの間に受信するようにスケジュールされたノードについては、或るノードが１つの時間スロットの間に送信を聞くと、ノードは受信のための次の時間スロットをアクティブな時間スロットとしてスケジュールする。その結果、ノードは、受信のためにスケジュールされる次の時間スロットにおいてウェイクアップするとともにパケットを受信することを試みる。連続する受信時間スロット数αの中に受信された送信がなければ、ｋが所定の重みパラメータであるとして、ノードは受信のためのα×ｋ個のスケジュールされた時間スロットの後になって初めてウェイクアップする。ノードがパケットを受信すると、αはデフォルト値に設定され、それはたいてい０である。
【０１６４】
新しいスロットフレームが始まると、パケットが最初に見逃されないように、αはデフォルト値（例えば、０）にリセットされることができる。しかしながら、エネルギー効率が送信成功率に優先される場合、ノード前回のスロットフレームから回数αを維持することもできる。
【０１６５】
図１０は、一アレンジメントによるデューティサイクル自動調整の例を示す。図１０は、第１レイヤ（ＬＩＤ＝１）を占める所与のノード（ノード１）のための２０個の時間スロットを有するスロットフレームを示す。本アレンジメントでは、奇数レイヤは偶数時間スロット上でパケットを受信するようにスケジュールされ、また、重みｋは１に設定される（ｋ＝１）。したがって、ノード１は、時間スロット２、４、６、８、１０、１２、１４、１６、１８、および２０の間にパケットを受信するようにスケジュールされるはずである。ネットワークがビジー状態である場合、ノード１は、スケジュールされた時間スロット中でウェイクアップするとともにパケットを受信する。しかしながら、２つの連続するリスンしている時間スロット（データ受信のためにスケジュールされた時間スロット）の間にパケットが受信されなければ、ノードはエネルギーを保存しておくためにリスンしている時間スロットの間、スリープし始めるだろう。
【０１６６】
本ケースでは、ノード１は第２時間スロットの間にパケットを受信する。この結果、ノード１は、自身のカウンタを０に設定し（α＝０）、次のスケジュールされた受信時間スロットでウェイクアップするように自身をスケジュールする。ノードは、自身の送信用キュー中でメッセージを有するに至ったので、次のスケジュールされた送信時間スロット（第３時間スロット）中にウェイクアップし、メッセージを転送する。
【０１６７】
次いで、ノードは第４時間スロットの間に送信を求めてリスンする。本例では、第４時間スロットの間にパケットは受信されない。したがって、ノード１は、自身のカウンタを１だけインクリメントして、カウンタを１に設定する（α＝１）。
【０１６８】
１つの空の受信時間スロットしか遭遇していないので、ノード１はまた次のスケジュールされたリスンしている時間スロット（第６時間スロット）中でウェイクアップする。ノードがこの時間スロットの間にメッセージを受信すれば、カウンタは０にリセットされる。本例では、第６時間スロット中でパケットは受信されない。したがって、カウンタは１だけ増加され、２（α＝２）にされる。ノードがメッセージ受信のための次のα×ｋ番目の時間スロットでウェイクアップするように構成されているので、ノードは次のリスンしている時間スロット（第８時間スロット）の間スリープし、次の次のリスンしている時間スロット（１０番目の時間スロット）にウェイクアップする。
【０１６９】
本シナリオでは、ノード１は、時間スロット１０でウェイクアップしたとき、やはりパケットを受信しない。したがって、カウンタは再度インクリメントされ、ノードは時間スロット１６（次の次の次のリスンする時間スロット）までスリープする。
【０１７０】
本例では、ノード１は時間スロット１６でパケットを受信する。この結果、カウンタαはデフォルト値０に設定される。このことは、ノードをウェイクアップさせ、次の受信時間スロット（すなわち時間スロット１８）の間にパケットを求めてリスンさせる。
【０１７１】
図１１は、上記のアレンジメントによるデューティサイクル自動調整のフローチャートを示す。この方法はノード中のプロセッサ中の遅延モジュールによって実施される。
【０１７２】
遅延モジュールは、まず遅延カウンタαをデフォルト値に設定し、受信時間スロットカウンタｘをデフォルト値に設定する（３０２）。本アレンジメントでは、デフォルト値は両方とも０である。ノードが受信時間スロットに入る（３０４）と、遅延モジュールは、受信時間スロットカウンタが、所定の重みｋと乗じられた遅延カウンタαの積以上であるかどうか、すなわちｘ≧ｋ×αであるかどうかを判断する（３０６）。そうである場合、遅延モジュールは、自身がこの受信時間スロットのためにウェイクアップするべきであると判断する。この結果、遅延モジュールは受信時間スロットの間にメッセージを求めてリスンする（３１０）。
【０１７３】
遅延モジュールは、メッセージが受信されかどうか判断する（３１２）。そうである場合、遅延カウンタおよび受信時間スロットカウンタはそのデフォルト値にリセットされる（３１６）。次いで、遅延モジュールは次の時間スロットを待つ（３３０）。一方、ノードは確認応答信号を発するか、または本明細書に記述されるような他の機能を実行してもよい。
【０１７４】
メッセージが受信されない場合、遅延カウンタは１だけ増加され（αはα＋１に設定され）（３１４）、また、遅延カウンタは次の時間スロットを待つ（３３０）。
【０１７５】
次の受信時間スロットが来ると、方法はステップ３０４以降を繰り返す。
【０１７６】
受信時間スロットカウンタがｋ×α以上である場合、遅延モジュールは自身がまだ自身の必要な遅延に達していないと判断する。この結果、遅延モジュールは受信時間スロットカウンタを１だけ増し（ｘがｘ＋１に設定され）（３２２）、ノードが現在の受信時間スロットの間スリープするようにする（３２４）。次いで、遅延モジュールは次の時間スロットを待つ（３３０）。
【０１７７】
次の時間スロットが送信時間スロットである場合、ノードはウェイクアップし、自身が送信用キュー（図示せず）中に少なくとも１つのメッセージを有すれば、送信する。次いで、次の受信時間スロットが来ると、方法はステップ３０４以降を繰り返す。
【０１７８】
この図１１が受信時間スロットの間にいつノードをウェイクアップさせるかの判断にもっぱら関することに注意されたい。ノードは、受信時間スロット（例えば送信する確認応答）の間にさらなる動作を実行し得る。しかしながら、これは明確化のために示されていない。
【０１７９】
他の同様の方法が使用されることもでき、例えば、各ノードは、１から１００の間の乱数を生成し、それを所定の閾値βと比較することができる。乱数がβ未満である場合、ノードは受信時間スロットの間にウェイクアップするとともにリスンする。そうでなければ、ノードは、受信時間スロットの間に電源オフされ、また、次のスケジュールされた受信時間スロットを待つ。βは、所与の受信時間スロットの間にウェイクアップするノードの割合（β％）を事実上表す。したがって、βは、所与のノードが所与の受信時間スロットの間にリスンするためにウェイクアップする可能性とみなされることができる。
【０１８０】
１度のアレンジメントでは、受信時間スロットの間に送信が聞かれない場合、βの値が減じられる。このことは、送信が検出されない場合に不要なオーバーヒアリングを減じるために受信時間スロットの間にノードがウェイクアップする可能性が時間とともに減じられ得ることを意味する。パケットが受信される場合、閾値βはデフォルト値（例えば、１００）に設定されることができる。βのより大きな値は、各受信時間スロットの間にウェイクアップする受信機の数を増加させることができ、このことは、送信成功の見込みを高めることができるが、効率を減じる可能性がある。
【０１８１】
ノード
図１２は一アレンジメントに従ったノードを示す。ノードは、マルチホップワイヤレスネットワーク中の他のノードに接続するように構成されたワイヤレスデバイスである。ノード４００は、ワイヤレスインターフェース４１０、コントローラ４２０、およびメモリ４３０を備える。
【０１８２】
ワイヤレスインターフェース４１０は、他のワイヤレスノードと通信するためにワイヤレス信号を送りかつ受信するように構成される。コントローラ４２０は、ワイヤレスインターフェース４１０を本明細書に記述される方法に従ってデータを送受信するように制御するように構成される。
【０１８３】
メモリ４３０は、コントローラ４２０によって実行されると、コントローラ４２０にデータを送信し、受信し、処理するように本明細書に記述されるステップを実行させるコンピュータ実行可能コードを記憶する。メモリ４３０は、送信のためのメッセージを記憶するための送信キュー４３５を備える。
【０１８４】
コントローラ４２０は、遅延モジュール４２２、および送信（Ｔｘ）ならびに受信（Ｒｘ）モジュール４２４を備える。Ｔｘ／Ｒｘモジュール４２４は、ネットワークのノード２００が占めるレベルに基づいて、送信のための時間スロット（送信時間スロット）およびデータを求めてリスンするための時間スロット（受信時間スロット）をスケジュールするように構成される。Ｔｘ／Ｒｘモジュールはまた、本明細書で詳述されるようにワイヤレスインターフェース４１０を介して送信時間スロットの間にメッセージのキュー中の次メッセージを送信することを試みるとともに受信時間スロットの間に送信を求めてリスンするように構成される。遅延モジュール４２２は、デューティサイクル調整に関して本明細書で詳述されるように、ある時間スロットの間Ｔｘ／Ｒｘモジュールを電源オフする命令を発するように構成される。
【０１８５】
キュー４３５は、メモリのバッファであり得る。キュー４３５は、揮発性または不揮発性メモリの一方であり得る。一アレンジメントでは、遅延モジュール４２２およびＴｘ／Ｒｘモジュール４２４は、単一のモジュールに組み入れられる。
【０１８６】
図１３は、一アレンジメントに従ったデータの送受信をスケジュールする方法を示す。方法は、ノード４００のＲｘ／Ｔｘモジュール４２４によって実施され得る。示される方法は非ＡＣＫモードに従う。ＡＣＫモードについてのプロセスは後で記述される。
【０１８７】
方法は、新しい時間スロットが開始すると始まる（５０２）。次いで、ノードは、時間スロットが送信時間スロットかどうかを判断する（５０４）。そうである場合、ノードは、送信のためにキュー中にメッセージがあるかどうかを判断する（５０６）。そうでなければ、ノードは、エネルギーを保存しておくために時間スロットの間スリープし（５０８）、次の時間スロットを待ち（５１０）、ノードはステップ５０２から再び始まる。
【０１８８】
キューが送信のためのメッセージを含んでいる場合、ノードは送信競合を開始する。この間、ノードは送信遅延Ｄｔを割り出し、Ｄｔの間、待つ（５１２）。この時間の間、ノードは、何らかの送信を求めてリスンする（５１４）。送信遅延Ｄｔが終了する前にノードが送信をオーバーヒアしない場合、ノードは、キュー中の次メッセージを次のレイヤ中のノードに送信する（５１６）。メッセージは、送信されると、キューから除去される。
【０１８９】
メッセージが送信される度、ノードは、自身が受信メッセージが複製かどうかを確かめることができるようにメモリ中にメッセージの複製（または一意的なメッセージＩＤのようなメッセージの識別子）を或る期間にわたって記憶する。この期間が終了すると、メッセージ（またはメッセージ識別子）はメモリから削除される。
【０１９０】
送信がＤｔの間にオーバーヒアされると、ノードは、送信に含まれているメッセージが送信のために現在キュー中にあるメッセージのうちのいずれかと一致するかどうかを判断する（５１８）。複製メッセージがキュー中に存在しない場合、ノードは次の時間スロットを待つ（５１０）。複製メッセージがキュー中にある場合、ノードは、複製メッセージがネットワーク内を伝播されることを回避するために、キューから複製を削除する（５２０）。次いで、ノードは次の時間スロットを待つ（５１０）。
【０１９１】
時間スロットが送信時間スロットでない場合、ノードは、時間スロットが受信時間スロットであると判断する。次いで、ノードは、受信時間スロットが、ノードがスリープすることをスケジュールされた受信時間スロットであるかどうかを（例えば、以前の空の受信時間スロットに照らして遅延モジュールによって）判断する（５３０）。ノードがスリープする予定である場合、ノードは時間スロットの間スリープする（５０８）。次いで、ノードは次の時間スロットを待つ（５１０）。
【０１９２】
ノードが受信時間スロットの間スリープすることをスケジュールされていない場合、ノードは受信時間スロットの間、信号を求めてリスンする（５３２）。ノードは、信号が受信されるかどうかを決定する（５３４）。信号が受信されない場合、ノードは次の時間スロットを待つ（５１０）。このとき、上に詳述されるように、遅延モジュールは遅延カウンタをインクリメントし得る。
【０１９３】
信号が受信時間スロットの間に受信されると、ノードは、信号に含まれているメッセージが以前にノードによって送られたかどうかを決定する（５３６）。この目的で、ノードは、自身の以前に送信されたメッセージのリストをチェックする。受信メッセージが以前に送信されたことをリストが示す（リストが受信されたメッセージの複製または同じメッセージＩＤを含んでいる）場合、ノードは受信されたメッセージを無視し（５３８）、次の時間スロットを待つ（５１０）。受信メッセージが複製でない場合、ノードは受信されたメッセージを送信用キューに加え（５４０）、次いで、次の時間スロットを待つ。
【０１９４】
図１３のアレンジメントはデューティサイクリングを伴う非ＡＣＫモードに関する。デューティサイクリングが実施されない場合、ステップ５３０が省略され、時間スロットが受信時間スロットであるとノードが判断すると、ノードは信号を求めてリスンすること（５３２）に直接移行する。ＡＣＫモードが実施されている場合、図１４に示されるように、さらなるステップがステップ５３６の後に実行される。
【０１９５】
図１４は、一アレンジメントに従った確認応答競合（ＡＣＫモード）のためのフローチャートを示す。この方法は、図１３のステップ５４０を置換する。方法は、（図１３のステップ５３６から）受信されたメッセージが以前に送られたメッセージの複製ではないとノードが決定すると始まる。次いで、ノードは受信機遅延Ｄｒを生成し、この期間の間待つ（６０２）。ノードは、確認応答がＤｒの間にオーバーヒアされるかどうかを判断する（６０４）。そうでない場合、ノードはメッセージの本来の送信機に確認応答を送る（６０６）。
【０１９６】
確認応答は、送信機が、送られたメッセージに確認応答が関係すると識別できるように、かつ近くのノードが確認応答を識別するとともに必要な場合に複製の送信からバックオフできるように、一意的なメッセージＩＤを含んでいる。確認応答が送られると、ノードは受信されたメッセージを送信用キュー中に加え（６０８）、次の時間スロットを待つ（６１０）。
【０１９７】
確認応答がＤｒの間にオーバーヒアされる場合、ノードは、確認応答に含まれているメッセージＩＤがノードによって受信されたメッセージを識別する（例えば、受信メッセージのメッセージＩＤと一致する）かどうかを判断する（６１２）。そうでない場合、ノードは、ステップ６０６乃至６１０に移り、確認応答を送るとともにメッセージをキューに加える。オーバーヒアされた確認応答中のメッセージＩＤがノードによって受信されたメッセージを識別する場合、ノードは受信されたメッセージを無視し（６１４）、次の時間スロットを待つ（６１０）。受信されたメッセージを無視することは、受信されたメッセージに関して何も行わないこと、または、ノード内のメモリから受信されたメッセージのあらゆる複製を削除することを含むことができる。
【０１９８】
ＡＣＫモードの間、送信ノードについてのプロセスも変更される。このケースでは、送信ノードはメッセージを送信した後に複数の受信ノードのうちの１つからの確認応答を求めてリスンする。このことは、図１３に示されない。しかしながら、これは、ステップ５１６および５１０の間に起こるだろう。確認応答が受信されない場合、送信ノードは、送信用キュー中のメッセージを維持し、次の送信時間スロットの間にメッセージを送信することを再び試みる。送信の試みの所定数の失敗の後、メッセージはキューから除去される。確認応答が受信される場合、送信ノードはメッセージを自身のキューから除去する。
【０１９９】
制限付きのノードモビリティサポート
本明細書で記述されるアレンジメントは、ノードトポロジーの変化およびノード障害に素早くかつ効率的に適合できるマルチホップネットワーク（例えば、ＴＳＣＨ  ＭＡＣネットワーク）のための分散型スケジューリング機序を提供する。これは、厳密な決定方法およびリアルタイムルーティングならびにスケジューリング最適化の複雑性によりノードトポロジーの変化に適合するのが困難な集中型ＴＳＣＨ  ＭＡＣスケジューリング方法と対照的である。この改善したスケジューリングは、本明細書で、スケジューリングを単一パラメータ、レイヤＩＤに基づかせることによって達成される。この単独のパラメータは、ノードがデータを送信（ブロードキャスト）するべきか受信するべきかを決定する。この単純さが、ノードモビリティまたはノード障害への適合を可能にする。
【０２００】
ノードがＴＳＣＨネットワークに同期させられることができている限り、ノードがモバイル型である場合、ノードは自身のＬＩＤ値を監視するだけでよい。ノードは、１つのレイヤから別のレイヤへ移るとき、スケジュールされたＴｘ時間スロットおよびＲｘ時間スロットを単に切り替えるとともにＬＩＤに基づいて対応するチャネルオフセットを使用する（等式（３）および（４）を参照）。
【０２０１】
一アレンジメントでは、シンクでの衝突を回避するために、シンクの手前の最後のレイヤ（レイヤ１）が中心に（例えば、シンクによって）スケジュールされる。したがって、レイヤ１に移るノードはいずれもシンクに専用時間スロットを要求し、シンクは、新しいノードを含めるようにスケジュールを適合させる。これは、限られた数のノードを有するただ１つのレイヤだけのためのスケジューリングというように複雑性が減じられているため、レイヤ１にとっての比較的短い時間フレームで達成可能である。
【０２０２】
レイヤ１に加わるノードは、シンクから送信についてのスケジュールを受信する前に、レイヤ１（例えば、奇数の時間スロット）中での送信を争うようにスケジュールされた時間スロットの間のキャリアセンスを利用し得、当該ノードは当該レイヤ中の他のノードがそのスロット中で送信していない場合に送信できる。
【０２０３】
ＡＣＫ時間スロットおよび非ＡＣＫ時間スロットを有するハイブリッドフレーム
図１５は、送信成功率を（例えば、送信範囲内での）受信のために利用可能な受信機ノードの数の関数として示す。これは、ただ１つの受信ノードが存在する場合の送信成功率が４０％、５０％、６０％、７０％、８０％、および９０％それぞれのシナリオでプロットされている。利用可能な受信機ノードの数が増加すると、送信成功率は空間ダイバーシチのおかげで著しく増加する。そうは言うものの、メッシュネットワーク中にはシンクは１つだけである。このことは、最後のホップでの空間ダイバーシチが消失する結果となる。このため、いくつかのアレンジメントは、最後のレイヤからシンクへの送信のためには、他のレイヤのためには非ＡＣＫモードが使用されても、ＡＣＫモードを実施する。
【０２０４】
送信成功率が受信のために利用可能なノードの数に依存するため、あるノード密度未満のネットワークのためにはＡＣＫモードを適用することが望ましい。そうは言うものの、受信を確認応答するために必要な追加の信号は、ネットワークの効率を減じる可能性がある。したがって、一アレンジメントでは、ハイブリッドＡＣＫおよび非ＡＣＫスロットフレーム構造が利用される。
【０２０５】
理想的には、シンクへの最後のホップだけが、信頼性を保証するためにＡＣＫモードを必要とする。そうは言うものの、スケジューリングの設計を簡単に保つために、ハイブリッドスロットフレームは、奇数時間スロット（スロット１、３、および５など）中でＡＣＫモードを実施し、偶数時間スロット（スロット２、４、…など）中で非ＡＣＫモードを実施する。このことは、向上したパケット伝送レート（ＡＣＫモード）と向上した効率（非ＡＣＫモード）の間のバランスをもたらす。
【０２０６】
図１６は、ＴＳＣＨスロットフレームと提案されるハイブリッドアレンジメントとの間の比較を示す。確認応答を含む時間スロット（ＡＣＫ時間スロット）が長さ１０ミリ秒であり、他方、確認応答なしの時間スロット（ｎｏｎ−ＡＣＫ時間スロット）がわずか長さ７ミリ秒であるので、ハイブリッドアレンジメント（ＡＣＫと非ＡＣＫを交互に行き来する）は、レイテンシの１５％の減少をもたらす。拡張により、非ＡＣＫモード（１００％のｎｏｎ−ＡＣＫ時間スロット）を実施することは、レイテンシの３０％の減少をもたらす。
【０２０７】
ネットワーク性能
提案されるＢＯＯＳＴアプローチが、シミュレーションにより評価され、以下の２つの代替的ソリューション、すなわちトラフィックアウェアスケジューリングアルゴリズム（ＴＡＳＡ）＋ＴＳＣＨと、適応型マルチホップスケジューリング（ＡＭＵＳ）法＋ＴＳＣＨと比較された。シミュレーションでは、ノードは、５０×１５０ｍ２の領域中で、１スロットフレーム当たり１ノード当たり１パケットに設定されたトラフィックレートでランダムに分散された。２００個の時間スロットが１つのスロットフレームに含まれており、これは、スロットフレーム長を２秒にする（各時間スロットは１０ミリ秒）。
【０２０８】
最適化されたスケジュールを生成するのに必要な計算時間が割り出された。これは、ルーティング経路変更（ＲＰＬ中の親変化）、ノードトラフィック変化、ノード障害イベント、およびノードモビリティを含む、ネットワーク動作の間に起こり得るあらゆるネットワーク変化に対するネットワークの適応性を評価する非常に重要なパラメータである。これらのイベントのうちのいずれかが起こると、スケジューラは、自身が所定の信頼性またはレイテンシ要件を満たせるように新しいネットワーク状態に基づいて新しいスケジュールを再算出する必要があり得る。スケジュール計算時間がより長いことは、ネットワークダイナミシティー適合のためのシステム応答がより遅いことを意味する。その結果、ネットワークの性能が悪化する可能性があり、または、ネットワーク全体が新しいスケジュールが展開されることが可能になるまでの間障害を起こす可能性がある。
【０２０９】
表３に示されるように、ＴＡＳＡおよびＡＭＵＳは両方とも、最適化されたスケジュールを算出するのに相当な量の時間を必要とした。対照的に、ＢＯＯＳＴでのスケジューリング処理は、その単純さゆえに、新しいスケジュールに切り替えるための時間がほとんどかからない。
【０２１０】
表３がスケジュールを生成するための計算時間だけを示すことに注意されたい。この時間に加えて、スケジューラは、たいてい、スケジュール計算段階の前に新しいネットワーク状態を集めるとともにスケジュール計算段階の後に新しいスケジュールを割り当てるシグナリングメッセージを受信および送らなければならない。このシグナリングプロセスはスケジュール計算時間に加えてさらなる遅延を加える可能性がある。対照的に、本アレンジメントでは、ノードは、単一のパラメータ、すなわち自身のＬＩＤ、を監視するとともにいずれのＬＩＤ変化に対しても自律的に自身のスケジュールを適応させることだけを要する。
【０２１１】
図１７Ａは、偶数時間スロットのための１００個のノードとのＢＯＯＳＴスケジューリングの例を示す。図１７Ｂは、奇数時間スロットのための１００個のノードとのＢＯＯＳＴスケジューリングの例を示す。斜線を施されたノードはデータを送信するようにスケジュールされ、斜線を施されていないノードはデータを受信するようにスケジュールされる。レイヤは受信レイヤおよび送信レイヤで交互に並び、受信レイヤおよび送信レイヤが偶数時間スロットおよび奇数時間スロットの間で切り替わる。
【０２１２】
【表２】
2018082430.tif 000009
【０２１３】
図１８は、ＴＡＳＡ、非集中型トラフィックアウェアスケジューリング（ＤｅＴＡＳ）、ＡＣＫモードでのＢＯＯＳＴ（ＢＯＯＳＴ（ＡＣＫ））、非ＡＣＫモードでのＢＯＯＳＴ（ＢＯＯＳＴ（Ｎｏ  ＡＣＫ））、およびハイブリッドＢＯＯＳＴ（ＢＯＯＳＴ（Ｈｙｂｒｉｄ））の様々な性能特性についてのレーダーチャートを示す。３つの提案されるＢＯＯＳＴアレンジメントは、大幅に減じられたスケジュール複雑性だけでなく、大いに改善したスケーラビリティ、信頼性、およびノードモビリティに対する適応性を示す。ＴＡＳＡおよびＤｅＴＡＳはより良いスループットおよび減じられたレイテンシを示すが、これは静的なネットワークに対してのみである。これらのシステムの性能は、ノードモビリティおよび／またはノード障害が原因でスケジュールが繰り返し再計算される必要がある場合、低下する。
【０２１４】
ＴＡＳＡ、ＡＭＵＳ、ＢＯＯＳＴ（ＡＣＫ）、ＢＯＯＳＴ（Ｎｏ  ＡＣＫ）およびＢＯＯＳＴ（Ｈｙｂｒｉｄ）についてのネットワーク性能が評価された。
【０２１５】
図１９Ａは、ネットワーク性能を、相違するスケジューリング機序の下でのパケット伝送レート（ＰＤＲ）の点で示す。図１９Ｂは、ネットワーク性能を、相違するスケジューリング機序の下での再スケジューリングのための平均遅延時間の点で示す。
【０２１６】
図１９Ａは、パケット伝送レートを、様々なスケジューリング機序についての平均リンク成功率の関数として示す。リンク成功率は、通信リンク内の成功裡の送信の割合である。パケット伝送レートは、ネットワークを通ってシンクへ成功裡に送信されるパケット／メッセージの割合である。送信が失敗すると、これはそれぞれのリンク成功率を下げることに寄与する。ノードは、その後、再送信を試みる。所定数の再送信の後でも通信が依然可能でなければ、メッセージはドロップされる。このことは、パケット伝送レートを下げることに寄与する。
【０２１７】
平均リンク成功率は、５０％から１００％（すなわち、５０％から１００％の成功裡の送信可能性）にわたる。リンク成功率が減少すると、ＴＡＳＡおよびＢＯＯＳＴ（Ｎｏ  Ａｃｋ）のＰＤＲは著しく減少する。他方、ＡＭＵＳは、リソースの過提供（overprovision）配分スキームのおかげで、そのようなリンク品質低下についての性能についてはるかに小さくしか減少しない。
【０２１８】
ＢＯＯＳＴ（ＡＣＫ）およびＢＯＯＳＴ（Ｈｙｂｒｉｄ）は、リンク品質低下に対する最良の回復力を有する。ＢＯＯＳＴ（ＡＣＫ）ソリューションは、ＰＤＲの点で最も良く機能するが、ＢＯＯＳＴ（Ｈｙｂｒｉｄ）アプローチは、良好な信頼性レベルを保持しつつより低いレイテンシをもたらす（図１９Ｂ）。
【０２１９】
上記のシミュレーションでは、静的ネットワークが仮定されており、そこでは、トラフィックは一定であり、ツリートポロジーは一旦形成された後は静的である。ノードモビリティを有するネットワーク性能も評価された。
【０２２０】
図２０Ａは、パケット伝送率を、静的ネットワークについてのネットワーク中のノードの数の関数として示す。図２０Ｂは、パケット伝送率を、ノードの１０％が自身の次のホップルーティングノード（それらの親ノードを切り替える）を６０秒ごとに変更するネットワークについてのネットワーク中のノードの数の関数として示す。図２０Ｂから、（表３に示されるように）長い再スケジューリング時間が原因でＡＭＵＳの性能がＰＤＲの点で著しく低下することが分かる。ノードの数が増えると、新しいスケジュールを算出するのに必要な時間は著しく長くなる。加えて、新しいスケジュールが算出されている間は古いスケジュールは最適化されていないので、ノードの数が増えると、その性能はやはり低下する。他方、ＢＯＯＳＴアレンジメントは、効率的なスケジューリング機序のおかげで、そのような変化によって著しくは影響されない。例えば、ＢＯＯＳＴ（ＡＣＫ）は、１００個のノードまでは、依然９９．９％のＰＤＲを維持する。
【０２２１】
したがって、本明細書で記述されるアレンジメントは、ルーティングトポロジーの変化に適合できるＴＳＣＨネットワーク化での使用に適する効率的な分散型スケジューリング機序を提供する。このことは、ネットワークが、移動するノードおよび／またはノード障害に、性能の著しい低下なしで、効果的に適合することを可能にする。ネットワークのレイヤに基づいて送受信をスケジュールすることによって、各ノードは、（データの送信または受信のいずれかのために）自身のチャネルおよびチャネルへのアクセスを競うべき時間を素早く効率的に決定することができる。加えて、送信または受信のための特定の時間スロットをスケジュールすることによって、スケジューリングは、所与の性能レベルを保証するための決定方法を維持する。そのような決定方法はセンサまたは制御システムのようなシグナリングシステムにとって重要であり、スケジュールされないオポチュニスティックルーティングにとって可能ではない。
【０２２２】
上記のアレンジメントが奇数時間スロットの間に送信するとともに偶数時間スロットの間にデータを受信する奇数レイヤを有する一方、逆も適用し得、奇数レイヤが偶数時間スロットの間に送信するとともに奇数時間スロットの間にデータを受信する。
【０２２３】
加えて、上記のアレンジメントが交互に並ぶ受信時間スロットおよび送信時間スロットを使用して記述される一方、交互に並ぶスロットフレーム構造が使用され得る。例えば、各レイヤは、連続する２つ時間スロット上で送信し、その後、連続する２つの時間スロット上でメッセージを受信し得る。さらなる組合せが、各ノードのためのスケジューリングがノードのレイヤＩＤに基くのである限り、可能である。
【０２２４】
特定のアレンジメントが記述されたが、アレンジメントは例としてのみ提示されており、発明の範囲を限定することを意図されない。実際、本明細書で記述される新規な方法およびデバイスは他の様々な形態で具現され得、本明細書で記述される方法およびシステムの形態で様々な省略、置換、および変更がなされ得る。
【図１】
2018082430.tif 000012
【図２】
2018082430.tif 000013
【図３】
2018082430.tif 000014
【図４】
2018082430.tif 000015
【図５】
2018082430.tif 000016
【図６】
2018082430.tif 000017
【図７】
2018082430.tif 000018
【図８】
2018082430.tif 000019
【図９】
2018082430.tif 000020
【図１０】
2018082430.tif 000021
【図１１】
2018082430.tif 000022
【図１２】
2018082430.tif 000023
【図１３】
2018082430.tif 000024
【図１４】
2018082430.tif 000025
【図１５】
2018082430.tif 000026
【図１６】
2018082430.tif 000027
【図１７】
2018082430.tif 000028
【図１８】
2018082430.tif 000029
【図１９】
2018082430.tif 000030
【図２０】
2018082430.tif 000031
【外国語明細書】
2018082430000001.pdf