(57)【要約】      （修正有）【課題】スケジューリングを介して決定性でタイムリーな様式でデータをルーティングおよびアグリゲートするための新しい方法を提供する。【解決手段】コンテンツ固有のルートおよびスケジュールを作成し、それにより、オーバーレイドルーティング構造および複数のコンテンツベーススケジュールを実現するコンテンツ中心クロスレイヤスケジューリング（ＣＯＮＣＩＳＥ）手法であって、非競合マルチホップスケジューリングの実装だけでなく、ルーティング経路に沿ったデータアグリゲーションもスケジューリングプロセス中で考慮する。【選択図】図９
2018029326.tif 000002
【特許請求の範囲】
【請求項１】
マルチホップワイヤレスネットワークを介して送信を管理するためのネットワーク管理デバイスであって、前記ネットワークは、ノードを備え、前記ノードのうちの１つまたは複数は、前記ネットワークにわたる通信のために１つまたは複数のメッセージを生成するように構成され、前記メッセージの各々は、複数のデータタイプのうちの１つのデータを備え、同じデータタイプのデータを有するメッセージは、前記ネットワークを介して前記データを送るために必要とされるビット数を低減するようにノードによってアグリゲートされることが可能であり、前記デバイスは、
前記ネットワークにおいて１つまたは複数のノードと通信するように構成されたインターフェースと、
前記ネットワークにおいてノードのトポロジーに関係するネットワーク情報を受信することと、
前記ノードのうちの前記１つまたは複数がメッセージを生成するレートと、前記生成されたメッセージの各々中に含まれている前記データの前記データタイプとを詳述するトラフィック情報を受信することと、
前記ネットワーク情報に基づいて、および前記それぞれのデータタイプのメッセージについての前記トラフィック情報に基づいて各データタイプについてそれぞれのルーティングトポロジーを決定することと、
各データタイプについて、前記それぞれのデータタイプの前記ルーティングトポロジーに基づいて、前記ネットワークにわたって前記それぞれのデータタイプを含んでいるメッセージを送信するためのそれぞれの通信スケジュールを決定すること、前記通信スケジュールは、前記それぞれのデータタイプのデータをアグリゲートするための１つまたは複数の処理タスクを含む、と、
前記インターフェースを介して、前記ノードが前記通信スケジュールに従ってメッセージを送ることを可能にするために前記ネットワークに前記通信スケジュールを送ることと
を行うように構成されたコントローラと
を備える、ネットワーク管理デバイス。
【請求項２】
前記ネットワークは、ハブノードを備え、
メッセージは、前記ハブノードに送られるためにノード間の多数の通信リンクを介して送信され、
前記ネットワークは、前記ノードと前記ハブノードとの間の前記多数の通信リンクに基づいて多数のレイヤを備え、
各データタイプについて、それぞれのルーティングトポロジーを決定することは、各レイヤ中の各ノードについて、前記ノードと、前記ノードよりも前記ハブノードに１レイヤより近い複数の隣接候補ノードから選択される中継ノードとの間に通信リンクを割り当てることを備え、前記中継ノードは、前記それぞれのデータタイプのデータを受信、送信および／またはアグリゲートする各候補ノードに隣接するノードの数に基づいて選択される、
請求項１に記載のデバイス。
【請求項３】
前記中継ノードは、前記それぞれのデータタイプのデータを受信、送信および／またはアグリゲートする最も多い隣接ノードを有する前記候補ノードであると決定される、請求項２に記載のデバイス。
【請求項４】
前記コントローラは、各データタイプについて、
前記それぞれのデータタイプの前記ルーティングトポロジーに基づいて、前記それぞれのデータタイプのデータをアグリゲートするための１つまたは複数のアグリゲーションノードを決定することと、
前記ルーティングトポロジーにおいて通信リンクにわたってデータレートを決定すること、ここにおいて、前記データレートは、前記それぞれのデータタイプの前記ルーティングトポロジーと、前記それぞれのデータタイプのための前記１つまたは複数のアグリゲーションノードとに基づいて決定される、と
を行うように構成され、
各データタイプについてそれぞれの通信スケジュールを決定することは、前記それぞれのデータタイプのための前記アグリゲーションノードの各々について１つまたは複数の処理タスクをスケジュールすることを備える、
請求項１に記載のデバイス。
【請求項５】
前記コントローラは、各データタイプについて、
前記それぞれのデータタイプの前記スケジュールに基づいて前記ネットワークにおいてボトルネックノードを決定することと、
前記ボトルネックノードに割り当てられたスケジュールド送信および／または処理タスクの数を低減する新しいルーティングトポロジーを決定することと、
前記新しいルーティングトポロジーに基づいて新しいスケジュールを決定することと
を行うようにさらに構成された、請求項１に記載のデバイス。
【請求項６】
前記ボトルネックノードは、前記ネットワークにおいて各ノードに割り当てられたスケジュールド送信および／または処理タスクの数に基づいて決定される、請求項５に記載のデバイス。
【請求項７】
前記コントローラは、前記新しいスケジュールは、前記通信スケジュールよりも短い全体的なスケジュールを提供するかどうかを決定することと、そうである場合、前記新しいスケジュールを反映するように前記通信スケジュールを更新することとを行うように構成された、請求項５に記載のデバイス。
【請求項８】
新しいルーティングトポロジーを決定することは、１つまたは複数の通信リンクを前記データタイプのうちの１つの前記ボトルネックノードから異なるノードに再割り当てすることを備える、請求項５に記載のデバイス。
【請求項９】
請求項３に従属するとき、前記異なるノードは、前記それぞれのデータタイプのデータを送信および／またはアグリゲートする、次に最も高い隣接ノードの数をもつ前記候補ノードである、
請求項８に記載のデバイス。
【請求項１０】
各通信スケジュールは、時間クリティカルメッセージが優先権を取る１つまたは複数の優先送信時間スロットを割り当てる、請求項１に記載のデバイス。
【請求項１１】
前記通信スケジュールは、時間スロットチャネルホッピング媒体アクセス制御とともに使用するのに好適である、請求項１に記載のデバイス。
【請求項１２】
いずれかの請求項１に記載の前記デバイスおよびネットワークを備えるシステム。
【請求項１３】
マルチホップワイヤレスネットワークを介して送信を管理するための方法であって、前記ネットワークは、ノードを備え、前記ノードのうちの１つまたは複数は、前記ネットワークにわたる通信のために１つまたは複数のメッセージを生成するように構成され、前記メッセージの各々は、複数のデータタイプのうちの１つのデータを備え、同じデータタイプのデータを有するメッセージは、前記ネットワークを介して前記データを送るために必要とされるビット数を低減するようにノードによってアグリゲートされることが可能であり、前記方法は、
前記ネットワークにおいてノードのトポロジーに関係するネットワーク情報を受信することと、
前記ノードのうちの前記１つまたは複数がメッセージを生成するレートと、前記生成されたメッセージの各々中に含まれている前記データの前記データタイプとを詳述するトラフィック情報を受信することと、
前記ネットワーク情報に基づいて、および前記それぞれのデータタイプのメッセージについての前記トラフィック情報に基づいて各データタイプについてそれぞれのルーティングトポロジーを決定することと、
各データタイプについて、前記それぞれのデータタイプの前記ルーティングトポロジーに基づいて、前記ネットワークにわたって前記それぞれのデータタイプを含んでいるメッセージを送信するためのそれぞれの通信スケジュールを決定すること、前記通信スケジュールは、前記それぞれのデータタイプのデータをアグリゲートするための１つまたは複数の処理タスクを含む、と、
前記ノードが前記通信スケジュールに従ってメッセージを送ることを可能にするために前記ネットワークに前記通信スケジュールを送ることと
を行うネットワーク管理デバイスを備える、方法。
【請求項１４】
前記ネットワークは、ハブノードを備え、
メッセージは、前記ハブノードに送られるためにノード間の多数の通信リンクを介して送信され、
前記ネットワークは、前記ノードと前記ハブノードとの間の前記多数の通信リンクに基づいて多数のレイヤを備え、
各データタイプについて、それぞれのルーティングトポロジーを決定することは、各レイヤ中の各ノードについて、前記ノードと、前記ノードよりも前記ハブノードに１レイヤより近い複数の隣接候補ノードから選択される中継ノードとの間に通信リンクを割り当てることを備え、前記中継ノードは、前記それぞれのデータタイプのデータを受信、送信および／またはアグリゲートする各候補ノードに隣接するノードの数に基づいて選択される、
請求項１３に記載の方法。
【請求項１５】
前記中継ノードは、前記それぞれのデータタイプのデータを受信、送信および／またはアグリゲートする最も多い隣接ノードを有する前記候補ノードであると決定される、請求項１４に記載の方法。
【請求項１６】
前記方法は、各データタイプについて、
前記それぞれのデータタイプの前記ルーティングトポロジーに基づいて、前記それぞれのデータタイプのデータをアグリゲートするための１つまたは複数のアグリゲーションノードを決定することと、
前記ルーティングトポロジーにおいて通信リンクにわたってデータレートを決定すること、ここにおいて、前記データレートは、前記それぞれのデータタイプの前記ルーティングトポロジーと、前記それぞれのデータタイプのための前記１つまたは複数のアグリゲーションノードとに基づいて決定される、と、
を備え、
ここにおいて、各データタイプについてそれぞれの通信スケジュールを決定することは、前記それぞれのデータタイプのための前記アグリゲーションノードの各々について１つまたは複数の処理タスクをスケジュールすることを備える、
請求項１３に記載の方法。
【請求項１７】
前記方法は、各データタイプについて、
前記それぞれのデータタイプの前記スケジュールに基づいて前記ネットワークにおいてボトルネックノードを決定することと、
前記ボトルネックノードに割り当てられたスケジュールド送信および／または処理タスクの数を低減する新しいルーティングトポロジーを決定することと、
前記新しいルーティングトポロジーに基づいて新しいスケジュールを決定することと
をさらに備える、方法請求項１３。
【請求項１８】
前記ボトルネックノードは、前記ネットワークにおいて各ノードに割り当てられたスケジュールド送信および／または処理タスクの数に基づいて決定される、請求項１７に記載の方法。
【請求項１９】
前記方法は、前記新しいスケジュールが、前記通信スケジュールよりも短い全体的なスケジュールを提供するかどうかを決定することと、そうである場合、前記新しいスケジュールを反映するように前記通信スケジュールを更新することとをさらに備える、請求項１８に記載の方法。
【請求項２０】
新しいルーティングトポロジーを決定することは、データタイプのための１つまたは複数の通信リンクを前記データタイプのうちの１つの前記ボトルネックノードから異なるノードに再割り当てすることを備える、請求項１７に記載の方法。
【請求項２１】
請求項１５に従属するとき、前記異なるノードは、前記それぞれのデータタイプのデータを送信および／またはアグリゲートする、次に最も高い隣接ノードの数をもつ前記候補ノードである、請求項２０に記載の方法。
【請求項２２】
各通信スケジュールは、時間クリティカルメッセージが優先権を取る１つまたは複数の優先送信時間スロットを割り当てる、請求項１３に記載の方法。
【請求項２３】
ネットワーク管理デバイスによって実行されたとき、請求項１３に従う方法を前記ネットワーク管理デバイスに実施させるコンピュータ実行可能命令を備える、非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、マルチホップワイヤレスネットワークにわたって送信を管理するためのネットワーク管理デバイスおよび方法に関する。特に、限定はしないが、本開示は、時間スロットチャネルホッピング媒体アクセス制御（ＴＳＣＨ  ＭＡＣ：Time Slotted Channel Hopping Medium Access Control）に基づくＩＥＥＥ８０２．１５．４ｅネットワークのためのスケジューリングシステムに関する。
【背景技術】
【０００２】
ファクトリーオートメーション、電力およびエネルギーシステムモニタリングおよび制御、スマートメータリング、ならびにオイルおよびガス事業などのような産業応用では、低レイテンシおよび高信頼性が常に重要な要件であった。過去において、そのような産業制御システムは、工業プラントにわたってデバイスおよびセンサーユニットのアレイを接続、モニタおよび制御するために多数のケーブルを含んでいた。そのような有線システムを設置、運用および保守するのは極めて費用がかかり得る。これらの欠点にもかかわらず、産業界は、ここ数年間市場に出ているより安価なワイヤレスのモノのインターネット（ＩｏＴ）ソリューションに切り替わるのをまだ渋っている。
【０００３】
ＩＥＥＥ８０２．１５．４規格は、産業応用において使用されるものなど、低レートワイヤレスパーソナルエリアネットワークのための物理レイヤおよび媒体アクセス制御（ＭＡＣ）レイヤを指定している。以前のＩＥＥＥ８０２．１５．４規格ソリューションは、より安価ではあったが、それらのキャリア検知多重アクセス／衝突回避（ＣＳＭＡ／ＣＡ）ベースの競合ＭＡＣアクセス方法に起因して、所望の低レイテンシおよび高信頼性の要件を与えることが可能でなかった。
【０００４】
時分割多元接続（ＴＤＭＡ）スケジューリングはＣＳＭＡ／ＣＡに代わるものである。ＴＤＭＡは、時間を時間スロットと呼ばれる小さい間隔に分割する。ネットワーク中の各個々のノードは、それらが他の送信との衝突なしにチャネル（たとえばある周波数帯域幅）上でデータを送信することができるスケジュール（時間スロットのセット）を割り当てられる。ＴＤＭＡは競合がなく衝突がないので、ＴＤＭＡは、ＣＳＭＡ／ＣＡベースの手法と比較してはるかにより低いマルチホップレイテンシおよびより高い通信信頼性を達成することができる。このように言ったものの、ＴＤＭＡは、いくつかの例を挙げれば、ＷｉＦｉ、Ｂｌｕｅｔｏｏｔｈ（登録商標）およびマイクロ波デバイスなど、産業科学医療無線（ＩＳＭ）帯域における他のデバイスからのマルチパスフェージングおよび干渉という欠点が依然としてある。
【０００５】
これらの制限を克服するために、時間スロットチャネルホッピング（ＴＳＣＨ）ＭＡＣは、決定性メッシュネットワーキングを可能にするための有望な方法を提供し、将来の低電力ワイヤレス産業応用（重要なモノのインターネット）のための道を開く。ＴＳＣＨは、チャネルホッピングを介して改善された通信信頼性を達成し、同じ周波数帯域において働いている外部干渉を回避する。チャネルホッピングは、送信がその上で行われるチャネルを周期的に切り替えることによって衝突のリスクを拡散させるのを助ける。ＴＳＣＨはまた、ネットワークノードを同期させることによって低い無線デューティサイクルおよび低いエネルギー消費量を維持する。
【０００６】
ＴＳＣＨ  ＭＡＣに関するインターネットプロトコルバージョン６（６ＴｉＳＣＨ）規格は、開発中のインターネットエンジニアリングタスクフォース（ＩＥＴＦ）規格である。決定性ワイヤレス通信を可能にするスケジューリング機構とともに、６ＴｉＳＣＨ規格は、産業応用に超低レイテンシおよび高信頼性の保証を提供することができる。
【０００７】
現在の６ＴｉＳＣＨ規格は、ＴＳＣＨ  ＭＡＣがネットワーク中でＴＤＭＡスケジュールをどのように実行するかの機構を定義しているが、それは、最適化されたスケジュールをどのように構築すべきかを指定しない。マルチホップ低電力ワイヤレスネットワークにおいて最適なスケジュールを見つけるのは容易なタスクでない。
【０００８】
産業応用は異なるレイテンシ要求を有し得る。たとえば、プロセス制御またはモニタリングアプリケーション（たとえば環境モニタリング）は、非時間クリティカルであり得る。一方、ファクトリーオートメーション、災害防備およびセーフティアプリケーションは、遅延に大いに敏感であり得る。したがって、そのようなアプリケーションのレイテンシおよびシステム応答時間は重要であり、サービス品質（ＱｏＳ）要件はしばしば数百ミリ秒のスケールである。
【０００９】
さらに、ワイヤレスネットワークノードは、しばしば、限られた容量をもつバッテリーによって電力供給される。したがって、電力効率が最大化されるべきであり、デバイス内の不必要な電力消費が最小限に抑えられるべきである。
【図面の簡単な説明】
【００１０】
本発明のアレンジメント（arrangement）は、単に例として挙げられ図面と併せて行われる、以下の詳細な説明からより十分に理解および諒解されよう。
【図１】図１（ａ）は、ローカルワイヤレスネットワークのためのネットワークトポロジーを示す。図１（ｂ）は、図１（ａ）のネットワークトポロジーのためのルーティングトポロジーを示す。
【図２】図２は、ルーティングおよびスケジューリングプロセスを示す。
【図３】図３（ａ）は、アレンジメントによるコンテンツベースのスケジューリングにおいて使用するためのネットワークコントローラを示す。図３（ｂ）は、アレンジメントによるノードを示す。
【図４】図４は、アレンジメントによるコンテンツベースのルーティングおよびスケジューリングを示す。
【図５】図５は、アレンジメントによるコンテンツベースのスケジュールを決定するための方法の概観を示す。
【図６】図６は、アレンジメントによるコンテンツ固有のルーティングトポロジーを決定する方法を示す。
【図７】図７は、アレンジメントによるネクストホップ中継ノードを決定する方法を示す。
【図８】図８（ａ）は、アレンジメントによるコンテンツ固有のルーティングの一例を示す。図８（ｂ）は、アレンジメントによるコンテンツ固有のスケジューリングの一例を示す。
【図９】図９は、アレンジメントによるコンテンツ固有のスケジュールを決定するための方法を示す。
【図１０】図１０（ａ）は、輻輳ポイントをもつルーティングトポロジーを示す。図１０（ｂ）は、輻輳ポイントを回避する分散ルーティングトポロジーを示す。
【図１１】図１１は、アレンジメントによるノードを動作させる方法を示す。
【図１２】図１２は、２つの代替システム（ＲＡおよびＲＡＡ）に対するトラフィック低減に関するアレンジメント（ＣＯＮＣＩＳＥ）の性能を示す。
【図１３】図１３（ａ）は、アレンジメント（ＣＯＮＣＩＳＥ）と２つの代替システム（ＲＡおよびＲＡＡ）とについての増加するネットワークサイズのトラフィックを示す。図１３（ｂ）は、アレンジメント（ＣＯＮＣＩＳＥ）と２つの代替システム（ＲＡおよびＲＡＡ）とについての増加するネットワークサイズのパケット配信比を示す。
【図１４】図１４（ａ）は、ＣＯＮＣＩＳＥ、ＲＡおよびＲＡＡシステムにおける多数のノードに対するネットワーク通信レイテンシを示す。図１４（ｂ）は、ＣＯＮＣＩＳＥおよびＲＡＡシステムにおける多数のノードに対するネットワーク通信レイテンシを示す。
【図１５】図１５（ａ）は、ＣＯＮＣＩＳＥ、ＲＡおよびＲＡＡシステムのためのネットワークトラフィックに対するパケット配信比を示す。図１５（ｂ）は、ＣＯＮＣＩＳＥ、ＲＡおよびＲＡＡシステムのためのネットワークトラフィックに対するネットワーク通信レイテンシを示す。
【発明を実施するための形態】
【００１１】
第１のアレンジメントによれば、マルチホップワイヤレスネットワークを介して送信を管理するためのネットワーク管理デバイスが提供され、ネットワークはノードを備え、ここにおいて、ノードのうちの１つまたは複数は、ネットワークにわたる通信のために１つまたは複数のメッセージを生成するように構成され、メッセージの各々は複数のデータタイプのうちの１つのデータを備え、ここにおいて、同じデータタイプのデータを有するメッセージは、ネットワークを介してデータを送るために必要とされるビット数を低減するようにノードによってアグリゲートされることが可能である。デバイスは、コントローラと、ネットワークにおいて１つまたは複数のノードと通信するように構成されたインターフェースとを備える。コントローラは、ネットワークにおいてノードのトポロジーに関係するネットワーク情報を受信することと、ノードのうちの１つまたは複数がメッセージを生成するレートと、生成されたメッセージの各々中に含まれているデータのデータタイプとを詳述するトラフィック情報を受信することと、ネットワーク情報に基づいて、およびそれぞれのデータタイプのメッセージについてのトラフィック情報に基づいて各データタイプについてそれぞれのルーティングトポロジーを決定することとを行うように構成される。コントローラは、各データタイプについて、それぞれのデータタイプのルーティングトポロジーに基づいて、ネットワークにわたってそれぞれのデータタイプを含んでいるメッセージを送信するためのそれぞれの通信スケジュールを決定することと、通信スケジュールが、それぞれのデータタイプのデータをアグリゲートするための１つまたは複数の処理タスクを含む、ノードが通信スケジュールに従ってメッセージを送ることを可能にするためにインターフェースを介してネットワークに通信スケジュールを送ることとを行うようにさらに構成される。
【００１２】
したがって、アレンジメントは、同じコンテンツタイプのデータが、ボトルネックを回避するためにアグリゲートされ、ネットワークを通じて効果的にルーティングされることを可能にするように、コンテンツ固有のスケジュールを割り当てる。
【００１３】
インターフェースはワイヤレスまたはワイヤードであり得る。したがって、ネットワーク管理デバイスは、ネットワーク内のノードであり得るか、またはバックエンド管理システムの一部としてネットワーク内のノードに接続され得る。したがって、ネットワーク管理デバイスによるどんな通信もネットワークと直接的に行われるか、または中間ネットワーク／デバイスを介して、たとえば、インターネットを介して行われ得る。
【００１４】
各通信スケジュールは、コンテンツ固有の通信スケジュールである。通信スケジュールを送ることは、データのすべてのタイプについて合成スケジュールを形成することを含み得る。通信スケジュールを送ることは、合成スケジュールをノード固有のスケジュールに分割することと、ノード固有のスケジュールをそれぞれのノードに送ることとをさらに含み得る。代替的に、スケジュールのすべて（または合成スケジュール）がネットワーク中の各ノードに送られ得る。
【００１５】
コンテンツの各タイプは、それぞれの適用例が使用するデータに関係し得る。適用例に基づく割り当てられたコンテンツタイプによって、これは、データが効果的にアグリゲートされ得ることを保証する。
【００１６】
さらなるアレンジメントによれば、ネットワークはハブノードを備え、メッセージが、ハブノードに送られるためにノード間の多数の通信リンクを介して送信され、ネットワークは、ノードとハブノードとの間の多数の通信リンクに基づいて多数のレイヤを備え、各データタイプについてそれぞれのルーティングトポロジーを決定することは、各レイヤ中の各ノードについて、ノードと、ノードよりもハブノードに１レイヤより近い複数の隣接候補ノードから選択される中継ノードとの間に通信リンクを割り当てることを備え、ここにおいて、中継ノードは、それぞれのデータタイプのデータを受信、送信および／またはアグリゲートする各候補ノードに隣接するノードの数に基づいて選択される。
【００１７】
各候補ノードに隣接するノードの数に基づいて通信リンクを割り当てることによって、コンテンツタイプごとにネットワークトポロジーが形成され得、それにより、改善されたアグリゲーションが提供される。通信リンクの割当ては、多数のレイヤの外側レイヤにおいて開始し、レイヤごとに、ハブノードのほうへ移動し得る。レイヤは、ハブノードまでの最短経路および／またはリンク品質に基づいて決定され得る。たとえば、各レイヤは、ハブノードまで同じ最小ホップ距離を有するノードを備え得る。
【００１８】
中継ノードは、それぞれのデータタイプのデータを受信、送信および／またはアグリゲートする最も多い隣接ノードを有する候補ノードであると決定され得る。
【００１９】
アレンジメントでは、コントローラは、各データタイプについて、それぞれのデータタイプのルーティングトポロジーに基づいて、それぞれのデータタイプのデータをアグリゲートするための１つまたは複数のアグリゲーションノードを決定することと、ルーティングトポロジーにおいて通信リンクにわたってデータレートを決定することと、ここにおいて、データレートが、それぞれのデータタイプのルーティングトポロジーと、それぞれのデータタイプのための１つまたは複数のアグリゲーションノードとに基づいて決定される、を行うように構成される。各データタイプについてそれぞれの通信スケジュールを決定することは、それぞれのデータタイプのためのアグリゲーションノードの各々について１つまたは複数の処理タスクをスケジュールすることを備える。アグリゲーションおよびデータレートはルーティングまたはスケジューリング中に計算され得る。
【００２０】
コントローラは、各データタイプについて、それぞれのデータタイプのスケジュールに基づいてネットワークにおいてボトルネックノードを決定することと、ボトルネックノードに割り当てられたスケジュールド送信および／または処理タスクの数を低減する新しいルーティングトポロジーを決定することと、新しいルーティングトポロジーに基づいて新しいスケジュールを決定することとを行うようにさらに構成され得る。これは、輻輳ポイントを回避するようにトポロジーが改善されることを可能にする。言い換えれば、ルーティングおよびスケジューリングは上記で説明したのと同じ方法を使用して繰り返されるが、ボトルネックノードを通じてトラフィックが低減される。２つ以上のボトルネックノードが識別され得る。
【００２１】
ボトルネックノードは、ネットワークにおいて各ノードに割り当てられたスケジュールド送信および／または処理タスクの数に基づいて決定され得る。これは、送信および／または処理タスクの総数に対する送信および／または処理タスクの数であり得る。たとえば、ノードは、それが送信および／または処理タスクの総数に対して送信および／または処理タスクのあらかじめ定義された数よりも多くを有する場合、ボトルネックノードであると決定され得る。代替的に、最も多くのスケジュールド送信および／または処理タスクを有するあらかじめ定義された数のノードがボトルネックノードであると決定され得る。
【００２２】
アレンジメントでは、コントローラは、新しいスケジュールが、通信スケジュールよりも短い全体的なスケジュールを提供するかどうかを決定することと、そうである場合、新しいスケジュールを反映するように通信スケジュールを更新することとを行うように構成される。より短い全体的なスケジュールは、新しいスケジュールのうちの最長のものが通信スケジュールのうちの最長のものよりも短いこと、または新しいスケジュールから形成された合成スケジュールが、通信スケジュールから形成された合成スケジュールよりも短いことを意味し得る。通信スケジュールを更新すべきかどうかの選定はまた、電力またはネットワーク効率など、他の要因に基づき得る。通信スケジュールを更新することは、前の通信スケジュールを新しいスケジュールと交換することを備え得る。更新された通信スケジュールは、上記で説明したように、ネットワークに送られ得るかまたはさらに最適化され得る。したがって、より短いスケジュールが見つかり得なくなるまで（たとえば、あらかじめ定義された数の（失敗した）試行の後に）、さらなる新しいスケジュールが決定され得る。
【００２３】
新しいルーティングトポロジーを決定することは、１つまたは複数の通信リンクをデータタイプのうちの１つのボトルネックノードから異なるノードに再割り当てすることを備え得る。データタイプのうちの１つは、あらかじめ定義された重要性ランキングに基づいて決定された、最も重要でないデータタイプであり得る。重要性ランキングは、少なくとも部分的に、データタイプに関連付けられたそれぞれの適用例に基づいて割り当てられ得る。
【００２４】
異なるノードは、それぞれのデータタイプのデータを送信および／またはアグリゲートする、次に最も高い隣接ノードの数をもつ候補ノードであり得る。
【００２５】
アレンジメントでは、各通信スケジュールは、時間クリティカルメッセージが優先権を取る１つまたは複数の優先送信時間スロットを割り当てる。これは、スケジュールド送信およびアグリゲーションを介して効率なシステムを依然として提供しながら、重要なメッセージが迅速に送信されることを可能にする。時間クリティカルメッセージが送られない場合、ノードは、優先送信セルの使用を求めて競合し得る。
【００２６】
アレンジメントでは、通信スケジュールは、時間スロットチャネルホッピング媒体アクセス制御（ＴＳＣＨ  ＭＡＣ）とともに使用するのに好適である。したがって、ノードは、ＴＳＣＨ  ＭＡＣを使用してスケジュールを実装し得る。通信スケジュールのすべてから形成された合成スケジュールはＴＳＣＨ  ＭＡＣに好適であり得る。さらに、通信スケジュールからノード固有のスケジュールが形成され得、各ノード固有のスケジュールはＴＳＣＨ  ＭＡＣとともに使用するのに好適である。
【００２７】
アレンジメントは、上記で説明したデバイスおよびネットワークを備える。
【００２８】
さらなるアレンジメントによれば、マルチホップワイヤレスネットワークを介して送信を管理するための方法が提供され、ネットワークはノードを備え、ここにおいて、ノードのうちの１つまたは複数は、ネットワークにわたる通信のために１つまたは複数のメッセージを生成するように構成され、メッセージの各々は複数のデータタイプのうちの１つのデータを備え、ここにおいて、同じデータタイプのデータを有するメッセージは、ネットワークを介してデータを送るために必要とされるビット数を低減するようにノードによってアグリゲートされることが可能である。本方法は、ネットワークにおいてノードのトポロジーに関係するネットワーク情報を受信することと、ノードのうちの１つまたは複数がメッセージを生成するレートと、生成されたメッセージの各々中に含まれているデータのデータタイプとを詳述するトラフィック情報を受信することと、ネットワーク情報に基づいて、およびそれぞれのデータタイプのメッセージについてのトラフィック情報に基づいて各データタイプについてそれぞれのルーティングトポロジーを決定することとを行う、ネットワーク管理デバイスを備える。本方法は、各データタイプについて、それぞれのデータタイプのルーティングトポロジーに基づいて、ネットワークにわたってそれぞれのデータタイプを含んでいるメッセージを送信するためのそれぞれの通信スケジュールを決定することと、通信スケジュールが、それぞれのデータタイプのデータをアグリゲートするための１つまたは複数の処理タスクを含む、ノードが通信スケジュールに従ってメッセージを送ることを可能にするためにネットワークに通信スケジュールを送ることとを行う、ネットワーク管理デバイスをさらに備える。
【００２９】
アレンジメントでは、ネットワークはハブノードを備え、メッセージが、ハブノードに送られるためにノード間の多数の通信リンクを介して送信され、ネットワークは、ノードとハブノードとの間の多数の通信リンクに基づいて多数のレイヤを備え、各データタイプについてそれぞれのルーティングトポロジーを決定することは、各レイヤ中の各ノードについて、ノードと、ノードよりもハブノードに１レイヤより近い複数の隣接候補ノードから選択される中継ノードとの間に通信リンクを割り当てることを備え、ここにおいて、中継ノードは、それぞれのデータタイプのデータを受信、送信および／またはアグリゲートする各候補ノードに隣接するノードの数に基づいて選択される。
【００３０】
アレンジメントでは、中継ノードは、それぞれのデータタイプのデータを受信、送信および／またはアグリゲートする最も多い隣接ノードを有する候補ノードであると決定される。
【００３１】
本方法は、各データタイプについて、それぞれのデータタイプのルーティングトポロジーに基づいて、それぞれのデータタイプのデータをアグリゲートするための１つまたは複数のアグリゲーションノードを決定することと、ルーティングトポロジーにおいて通信リンクにわたってデータレートを決定することと、ここにおいて、データレートが、それぞれのデータタイプのルーティングトポロジーと、それぞれのデータタイプのための１つまたは複数のアグリゲーションノードとに基づいて決定される、をさらに備え得る。各データタイプについてそれぞれの通信スケジュールを決定することは、それぞれのデータタイプのためのアグリゲーションノードの各々について１つまたは複数の処理タスクをスケジュールすることを備え得る。
【００３２】
アレンジメントでは、本方法は、各データタイプについて、それぞれのデータタイプのスケジュールに基づいてネットワークにおいてボトルネックノードを決定することと、ボトルネックノードに割り当てられたスケジュールド送信および／または処理タスクの数を低減する新しいルーティングトポロジーを決定することと、新しいルーティングトポロジーに基づいて新しいスケジュールを決定することとをさらに備える。
【００３３】
アレンジメントでは、ボトルネックノードは、ネットワークにおいて各ノードに割り当てられたスケジュールド送信および／または処理タスクの数に基づいて決定される。
【００３４】
本方法は、新しいスケジュールが、通信スケジュールよりも短い全体的なスケジュールを提供するかどうかを決定することと、そうである場合、新しいスケジュールを反映するように通信スケジュールを更新することとをさらに備え得る。
【００３５】
アレンジメントでは、新しいルーティングトポロジーを決定することは、データタイプのための１つまたは複数の通信リンクをデータタイプのうちの１つのボトルネックノードから異なるノードに再割り当てすることを備える。
【００３６】
異なるノードは、それぞれのデータタイプのデータを送信および／またはアグリゲートする、次に最も高い隣接ノードの数をもつ候補ノードであり得る。
【００３７】
アレンジメントでは、各通信スケジュールは、時間クリティカルメッセージが優先権を取る１つまたは複数の優先送信時間スロットを割り当てる。
【００３８】
さらなるアレンジメントによれば、ネットワーク管理デバイスによって実行されたとき、上記で説明した方法のいずれかをネットワーク管理デバイスに実施させるコンピュータ実行可能命令を備える非一時的コンピュータ可読媒体が提供される。
【００３９】
さらなるアレンジメントによれば、マルチホップワイヤレスネットワークにおいて使用するためのノードが提供され、ここにおいて、ノードは、コントローラと、ネットワークにおけるノードとの通信のためのワイヤレスインターフェースとを備える。コントローラは、スケジュールに従ってメッセージを送信するように構成され、ここにおいて、スケジュールは、ノードのためのスケジュールされた時間スロットと、時間クリティカルメッセージが優先権を取る優先時間スロットとを含む。時間クリティカルメッセージが受信されなかった場合、コントローラは、優先時間スロット中に競合ベースプロトコルを使用して送信することを試みる構成される。時間クリティカルメッセージがノードによって受信され、その時間クリティカルメッセージがノードによる送信に関するものである場合、コントローラは、優先時間スロットとノードのためのスケジュールされた時間スロットとから選択された次の利用可能な時間スロット中に時間クリティカルメッセージを送信するように構成される。時間クリティカルメッセージがノードによって受信され、その時間クリティカルメッセージがノードによる送信に関するものでない場合、コントローラは、少なくとも送信を再開する前に優先時間スロットが過ぎるまで待つように構成される。
【００４０】
さらなるアレンジメントによれば、マルチホップワイヤレスネットワークにおいてノードを動作させるための方法が提供される。本方法は、スケジュールに従ってメッセージを送信するノードを備え、ここにおいて、スケジュールは、ノードのためのスケジュールされた時間スロットと、時間クリティカルメッセージが優先権を取る優先時間スロットとを含む。時間クリティカルメッセージが受信されなかった場合、ノードは、優先時間スロット中に競合ベースプロトコルを使用して送信することを試みる。時間クリティカルメッセージがノードによって受信され、その時間クリティカルメッセージがノードによる送信に関するものである場合、ノードは、優先時間スロットとノードのためのスケジュールされた時間スロットとから選択された次の利用可能な時間スロット中に時間クリティカルメッセージを送信する。時間クリティカルメッセージがノードによって受信され、その時間クリティカルメッセージがノードによる送信に関するものでない場合、ノードは、少なくとも送信を再開する前に優先時間スロットが過ぎるまで待つ。
【００４１】
上記のアレンジメントのいずれも、本明細書で説明する教示を実装するために任意の組合せで組み合され得ることは直ちに明らかになろう。
【００４２】
本明細書で説明するアレンジメントは、マルチホップワイヤレスネットワークを介して送信を管理する改善された手段を提供する。レイテンシを最小化し、信頼性を最大化するためのマルチホップ時間スロットおよびチャネル割振りおよびスケジューリングは極めて困難になり得る。主な問題は、時間スロットおよびチャネルをそれらが互いに衝突または干渉しない方法でどのように割り当てるべきかである。第１の場合、ノードは、同時に送信または受信したり、そのノードに指定された複数のメッセージを同時に受信したりすべきではない。第２に、干渉は、互いの干渉範囲内で同時通信が送信されたときにも起こり得る。さもなければ、時間スロットの空間再利用が可能である。同時通信への異なるチャネル割当てもネットワーク間干渉を緩和し得る。
【００４３】
マルチホップ低電力ワイヤレスネットワークにおいて最適なスケジュールを見つけるのは容易なタスクでない。スケジューリングアルゴリズムの大部分は、最適なルーティングレイヤを有すると仮定して、ＭＡＣレイヤ上のスケジューリング問題のみに取り組む。その上、多くのルーティングトポロジーはすべての目的にとって理想的であるとは限らない。
【００４４】
処理が考慮される場合、計算ジョブと通信ジョブの両方が適切にスケジュールされる必要があり、これにより、上記のＮＰ困難問題に複雑さがさらに加わる。集中処理では、すべての生データは、シンクノードで処理される前に、最初にシンクノードに送られる必要がある。分散処理では、どんな中間中継ノードもネットワーク内でデータを計算し、アグリゲートすることができる。しかし、しばしば、親ノードは、処理ジョブが実行され得る前に、それの子ノードからすべてのパケットを受信する必要がある。これは、従来のスケジュール手法が１つのルーティングトポロジーと１つのスケジュールとをのみ生成するからであり、それにより、中継されている何らかのデータが相関していない場合は追加の待ち時間が生じる。したがって、相関する通信イベントと計算イベントとのためにコンテンツ固有のスケジュールを有することが望ましい。さらに、データアグリゲーションのために最も良い候補であるノードは、スケジューリング段階中の負荷バランシングのために最も好適なノードではないことがある。したがって、（物理レイヤとＭＡＣレイヤとの間の）クロスレイヤ相互作用も必要である。
【００４５】
本明細書で説明するアレンジメントは、コンテンツ固有のルートおよびスケジュールが作成され、それにより、オーバーレイドルーティング構造および複数のコンテンツベーススケジュールが生じる、コンテンツ中心クロスレイヤスケジューリング（ＣＯＮＣＩＳＥ：CONtent CentrIc cross-layer SchEduling）手法を実装する。ＣＯＮＣＩＳＥでは、非競合マルチホップスケジューリングが実装されるだけでなく、ルーティング経路に沿ったデータアグリゲーションもスケジューリングプロセス中に考慮に入れられる。これは、したがって、スケジューリングを介して決定性でタイムリーな様式でデータをルーティングおよびアグリゲートするための新しい方法を提供する。
【００４６】
著しいネットワークトラフィック低減はＣＯＮＣＩＳＥの直接的な利益であり、それにより、限られたリソースが節約され、トラフィック輻輳が回避され、干渉が緩和され、通信レイテンシが低減され、通信信頼性が高められ得る。さらに、処理および通信リソースを効率的に使用するための効果的な方法を提供する、コンテンツ依存の即時処理機能とコンテンツ非依存のプレミアム時間スロット予約機構とが提案される。特に、緊急メッセージ（たとえばアラームまたはプロセス障害メッセージ）がネットワーク上で迅速に配信され得る。
【００４７】
結果は、本明細書で説明するアレンジメントが内側レイヤネットワークトラフィックを６５％だけ効果的に低減することができることを示している。その結果、本明細書で説明するアレンジメントは、データアグリゲーションなしに代替６ＴｉＳＣＨスケジューリングソリューションと比較して遅延の５０％低減を提供することができる。アレンジメントはまた、ノードの数が５０に増加したとき、小規模ネットワークにおけるほぼ１００％の信頼性と、９９．５％よりも大きいパケット配信比とを達成する。
【００４８】
図１（ａ）は、ローカルワイヤレスネットワークのためのネットワークトポロジーを示す。図１（ａ）のアレンジメントでは、ワイヤレスネットワークはノード１２０とハブ１１０とを備える。各ノード１２０は、通信範囲内で他のノード１２０（またはハブ１１０）とワイヤレス通信することが可能である。ハブ１１０はまた、それがそれの送信範囲内でノード１２０とワイヤレス通信することが可能であるという点で、ワイヤレスノードである。（ハブ１１０を含む）各ノード１２０は、それ自体の一意のノード識別子（ノードＩＤ）を割り当てられる。ハブ１１０は、事実上、すべての通信の最終的な宛先である。すなわち、ネットワーク中のすべての送信は、ネットワークを通って、データシンクとして働くハブ１１０のほうへ向けられる。送信は、マルチホップシステムを介して中間（中継）ノード１２０によってネットワークを通じて転送される。ハブ１１０は、転送されたメッセージを受信し、送信に基づいてプロセスを実施することが可能であり得るか、またはさらなる処理のためにメッセージを中央コントローラに転送することができる。
【００４９】
図１（ａ）に示されているネットワークトポロジーでは、ノード１２０またはハブ１１０の間の通信リンクは、それぞれのノード間のリンクとして示されている。すなわち、各ノード１１０は、それぞれのリンクを介してそれの送信範囲内で各ノード１２０（またはハブ１１０）に接続される。同様に、ハブ１１０は、それの送信範囲内ですべてのノード１２０に接続される。多くのノード１２０がハブ１１０からの送信範囲の外側にあるので、データは中間ノード１２０を介してハブ１１０に送信され得る。
【００５０】
データパケットは、外側ノード１２０から、ハブ１１０により近いノード１２０に送られ、ノード１２０は、今度は、データパケットを（範囲内にある場合）ハブ１１０に転送するか、またはさらにより近いノード１２０に転送する。１つのノード１２０から別のノードへの各送信はホップと呼ばれる。ノード１２０は、ハブ１１０までのそれらの最小ホップ距離に基づいてレイヤに分割される。
【００５１】
ネットワークトポロジーグラフはＧ（Ｖ，Ａ）としてモデル化され得、ここで、Ｖは、ネットワークにおいてｎ個のノードを表すＧにおけるｎ個の頂点のセットであるＶ＝｛１，２，．．．，ｎ｝。Ａ＝｛ａ（ｉ，ｊ）｜ｉ，ｊ∈Ｖ｝は、ノードｉとノードｊとの間の通信リンクａ（ｉ，ｊ）のセットである。ノードｉとノードｊとの間の距離が通信範囲Ｒよりも大きい場合、ａ（ｉ，ｊ）＝１であり、そうでない場合、ａ（ｉ，ｊ）＝０である。
【００５２】
図１（ｂ）は、図１（ａ）のネットワークトポロジーのためのルーティングトポロジーを示す。ルーティングツリートポロジーは、ネットワークトポロジーから形成され得、ルーティングプロトコルによって選択された専用通信リンクを詳述する。ルーティングは、ハブ１１０までの最短経路、リンク品質（たとえば低電力およびロッシーネットワークのためのルーティングプロトコル、ＲＰＬ：Routing Protocol for Low-Power and Lossy Networks）、負荷バランシングまたは予想される送信カウント（ＥＴＸ：expected transmission count）に基づき得る。ルーティングツリーはハブ１１０に収束する。
【００５３】
ルーティングトポロジーグラフはＴ（Ｖ，Ｅ）としてモデル化され得、ここで、ＥはＡのサブセットである（Ｅ∈Ａ、Ｅ＝｛ｅ（ｉ，ｊ）｜ｉ，ｊ∈Ｖ｝。トラフィックトポロジーＧｔ（Ｖ，ｌ（ｅ（ｉ，ｊ）））はルーティングトポロジーから形成され得、ここで、ｌ（ｅ（ｉ，ｊ））はリンクｅ（ｉ，ｊ）上のトラフィックのレートである。
【００５４】
送信間の衝突を回避するために、ＴＤＭＡ方式が実装される。したがって、スケジュールは、ノード１２０がデータを送信することをいつ可能にされるかを指定するように決定される必要がある。
【００５５】
図２は、ルーティングおよびスケジューリングプロセスを示す。図の左上から開始し、時計回りに進んで、ネットワークトポロジーグラフＧ（Ｖ，Ａ）が受信され、次いで、最適なルーティングトポロジーグラフＴ（Ｖ，Ｅ）を決定するためにルーティングアルゴリズムを介して処理され得る。ノード１２０は、たとえば、それぞれのノード１２０からハブ１１０までの最小ホップ距離ｄに基づいて、レイヤ（グループ）Ｍd∈Ｖに分割され得る。すなわち、各レイヤは、ハブ１１０まで同じ最小ホップ距離を有するノード１２０を備え得る。レイヤの決定はまた、（上位レイヤ中にある）上流の多数のノードを、低いリンク品質をもつノードのほうへルーティングさせることを回避するために、低いリンク品質をもついくつかのノードが１つまたは複数のレイヤ上方へ移動され得るように、リンク品質を考慮に入れ得る。
【００５６】
ルーティングトポロジーグラフＴ（Ｖ，Ｅ）に基づいてトラフィックトポロジーグラフＧｔ（Ｖ，ｌ（ｅ（ｉ，ｊ）））を決定するためにマルチホップトラフィック情報が使用される。次いで、トラフィックトポロジーグラフＧｔ（Ｖ，ｌ（ｅ（ｉ，ｊ）））を使用して、ネットワークにわたる送信のためのスケジューリングを決定する。スケジューリングは、いくつかの目的（たとえば、低いレイテンシまたは高いパケット配信比）が達成され得るような方法で、リンクのトラフィックに関して競合しない干渉のない時間スロットおよびチャネルを各リンクに割り当てる。スケジューリングは、いつ各ノードが所与の通信リンクおよびチャネルに沿って送信するかを、および何のデータが送信されるかを詳述する。
【００５７】
多くの場合、同じ適用例のために収集されたデータは大いに相関している傾向があり、したがって、ハブ１１０に転送される前にノード１２０によって合成されるかまたは一緒に処理され得る。たとえば、同じ物理的イベントに関係する複数のセンサー示度は、ノード１２０によって受信されたときに融合され得る。このタイプのデータアグリゲーションは、費用がかかるワイヤレスリンクを介して送られるべきメッセージの総量を低減することができ、それにより、エネルギー消費量ならびに全体的なネットワーク効率の著しい改善が図られる。一方、無相関のパケットは、処理の観点から単純にアグリゲートされないことがあり、たとえば、温度の示度と湿度の示度との平均を計算することは無意味である。したがって、データは、データ中のコンテンツのタイプＣk、ｋ∈Ｋに基づいてカテゴリー分類され、ここで、Ｋはネットワーク中のコンテンツのタイプの総数である。コンテンツの各タイプは、そのコンテンツを処理し得る異なる適用例に対応し得る。
【００５８】
アグリゲーションプロセスは時間を要するので、スケジュールは、同様のデータをアグリゲートするためのスケジュールされた時間を含むべきである。同様のコンテンツタイプのデータのみがアグリゲートされ得るので、アレンジメントは、コンテンツのタイプごとに独立したスケジューリングおよび送信トポロジー（ハブ１１０への送信のための選択されたルート）を実装する。
【００５９】
アレンジメントによれば、コンテンツのタイプごとに、集中型ルーティングトポロジーとＭＡＣスケジュールの両方からなる別個のスケジュールが作成され、それによりオーバーレイドクロスレイヤスケジュールが得られる、コンテンツ中心クロスレイヤスケジューリング（ＣＯＮＣＩＳＥ）方法が利用される。ＣＯＮＣＩＳＥは、ネットワークコントローラと以下呼ばれる、中央ネットワーク制御および管理ユニット上で動作する、集中型クロスレイヤルーティングおよびスケジューリングアルゴリズムである。
【００６０】
このアレンジメントでは、ネットワークトポロジーグラフは図１および図２におけるように形成されるが、ネットワーク上のコンテンツのそれぞれのタイプのトラフィックレート
【００６１】
【数１】
2018029326.tif 000003
【００６２】
に基づいて、コンテンツのタイプＣkごとに別個のルートおよびトラフィックトポロジーグラフ
【００６３】
【数２】
2018029326.tif 000004
【００６４】
が形成される。
【００６５】
同じコンテンツのパケットは中間中継ノード上で処理されることが可能であるが、異なるコンテンツタイプのパケットはアグリゲートまたは処理され得ないと仮定する。したがって、コンテンツのタイプＣkごとに各ノード中に専用バッファスペース
【００６６】
【数３】
2018029326.tif 000005
【００６７】
が作成される。各中間中継ノードは、それの子ノードから受信されたすべての情報、ならびに、もしあればそれ自体の生成されたデータをバッファし、次いで、以下の３つの条件のいずれか１つが満たされたとき、対応するコンテンツバッファに記憶されたデータを処理する。  
１）  コンテンツ処理ジョブ
【００６８】
【数４】
2018029326.tif 000006
【００６９】
がスケジュールされる。  
２）  コンテンツバッファリング制限に達する。  
３）  時間クリティカルメッセージが受信されたとき、即時処理バイトが復号される。
【００７０】
処理段階中に、処理ノードは、対応するコンテンツについてのすべての情報をアグリゲートする。処理ノードｉからネクストホップノードｊへのアグリゲーション後の出力トラフィックレート
【００７１】
【数５】
2018029326.tif 000007
【００７２】
は、適用例固有のデータアグリゲーション比ωに依存するが、それは、アグリゲーションなしで出力トラフィックレートに対して低減されることになる。より高いアグリゲーション値ωは、より低い出力トラフィックレート
【００７３】
【数６】
2018029326.tif 000008
【００７４】
をもたらすことになるが、アグリゲーションに起因する生データのより大きい損失を引き起こすことになる。
【００７５】
図３（ａ）は、アレンジメントによるコンテンツベースのスケジューリングにおいて使用するためのネットワークコントローラを示す。ネットワークコントローラ３００は、ネットワークを通るトラフィックフローのためのコンテンツベースのルートを決定するように、およびルートのためのコンテンツベースのスケジュールを決定するように本明細書で説明するステップを遂行するためのネットワーク管理デバイスである。ネットワークコントローラは、入力／出力インターフェース３１０と、コントローラ３２０と、メモリ３３０とを備える。
【００７６】
入力／出力インターフェース３１０は、ネットワークのトポロジーとネットワークを通るトラフィックとに関係するネットワーク統計値を受信するためのものである。
【００７７】
コントローラ３２０は、ネットワーク統計値からネットワークトポロジーを決定し、トラフィックデータとネットワークトポロジーとに基づいてコンテンツベースのスケジュールを生成するように構成される。コントローラ３２０は、２つのモジュール、コンテンツルートマネージャ（ＣＲＭ：content route manager）３２２およびコンテンツスケジュールマネージャ（ＣＳＭ：content schedule manager）３２４を実装する。コンテンツルートマネージャ３２２は、コンテンツのタイプごとにコンテンツ依存のルーティングトポロジーを生成する。コンテンツスケジュールマネージャ３２４は、それぞれのコンテンツ依存のルーティングトポロジーに基づいてコンテンツのタイプごとにコンテンツ依存のスケジュールを生成する。
【００７８】
メモリ３３０は、コントローラ３２０によって実行されたとき、コンテンツベースのスケジュールを生成し出力するために本明細書で説明するステップをコントローラ３２０に遂行させる、コンピュータ実行可能コードを記憶する。ネットワークコントローラ３００は、ハブの一部もしくは全部を形成し得るか、またはさらなる（バックエンド）ネットワークを介してハブに通信可能に接続され得る。
【００７９】
図３（ｂ）は、アレンジメントによるノードを示す。ノード３５０は、ワイヤレスインターフェース３６０と、コントローラ３７０と、メモリ３８０とを備える。ワイヤレスインターフェースは、他のワイヤレスノードと通信するためにワイヤレス信号を送信および受信するように構成される。コントローラ３７０は、本明細書で説明する方法に従ってデータをルーティングしデータをアグリゲートするようにノードを制御するように構成される。メモリ３８０は、コントローラ３７０によって実行されたとき、データを送信、受信および処理するために本明細書で説明するステップをコントローラ３７０に遂行させる、コンピュータ実行可能コードを記憶する。メモリ３８０は、特定のタイプのコンテンツのデータを記憶するためのバッファ３８５を備える。それぞれのバッファ３８５
【００８０】
【数７】
2018029326.tif 000009
【００８１】
はコンテンツの各タイプＣkに割り当てられる。
【００８２】
メモリ３８０は、ネットワークコントローラ３００から受信されたスケジュールを記憶するように構成される。コントローラ３７０は、スケジュールに従ってワイヤレスインターフェース３６０を介してネットワーク中の他のノードにデータを送信するように構成される。コントローラ３７０は、ワイヤレスインターフェース３６０を介して受信されたメッセージをデータのコンテンツのタイプ（データタイプ）に従ってそれぞれのバッファ３８５に記憶するように構成される。
【００８３】
図４は、アレンジメントによるコンテンツベースのルーティングおよびスケジューリングを示す。異なるコンテンツタイプを有するメッセージは独立してルーティングされ、処理され、スケジュールされる。これは、ネットワークトラフィック低減を最大化する目的で１つのコンテンツフローに専用化される各トポロジーを持つオーバーレイドルーティングトポロジー（overlaid routing topology）を形成する。さらに、異なるタイプのコンテンツに基づいて複数の非競合スケジュールも構築される。これは、パケットが同じノードによって送られるかどうかにかかわらず、パケットが同じコンテンツタイプに属する限り、それらのパケットが、対応するコンテンツに専用の割り当てられた時間スロット中でのみ送信または処理され得ることを意味する。これを実現するために、コンテンツルートマネージャ（ＣＲＭ）およびコンテンツスケジュールマネージャ（ＣＳＭ）はそれぞれルーティングおよびスケジューリングを処理し、ネットワーク輻輳を回避しバランスのとれたソリューションを提供するためのジョイント最適化機能が提案される。
【００８４】
コンテンツベースのルーティングが図４の左側に示されている。第１のタイプのコンテンツ（上側のルーティングトポロジーによって示される「コンテンツ１」）、および第２のタイプのコンテンツ（下側のルーティングトポロジーによって示される「コンテンツ２」）という、２つのタイプのコンテンツがネットワークを通じて送信される。ネットワークトポロジーは両方のコンテンツタイプについて同じである。ハブ１から２ホップ離れている、第２の（外側）レイヤ中にある、２つのノード５、４がある。ハブ１と第２のレイヤとの中間の、第１のレイヤ中に位置する、２つのさらなるノード３、４がある。コンテンツのタイプごとの別個のルーティングトポロジーにより、第１のタイプのコンテンツはノード４および５からノード３にルーティングされ得るが、第２のタイプのコンテンツはノード４および５からノード２を介してルーティングされ得る。これは、ノード２および３が異なるタイプのコンテンツを独立して処理することを可能にし、それにより、ハブへの送信が高速化される。
【００８５】
図４の右側に示されているように、コンテンツの各タイプにスケジュールが割り当てられる。スケジュールは、ノード間の送信、ならびに同じコンテンツタイプに関係するコンテンツをアグリゲートするためのノードによる処理の両方を考慮に入れる。ノードの異なるペア間の同時送信を可能にするために異なるチャネルが利用される。しかしながら、スケジュールは、同じノードへの２つの送信が行われることを可能にせず、したがって、ノード２および３からハブ１への送信のために別個の時間スロットが割り当てられる。これは送信間の衝突を防止する。
【００８６】
図５は、アレンジメントによるコンテンツベースのスケジュールを決定するための方法の概観を示す。初めに、ネットワークコントローラがネットワーク統計値を収集する５１０。ネットワーク中のノードは、ネットワークおよびトラフィック情報を収集し、シグナリングメッセージを介してこれをネットワークコントローラに送り返すために、競合ベースの方式、たとえばＣＳＭＡを使用して動作する。ネットワーク統計値は、どのノードが互いの送信距離内にあるのかの識別情報、ならびにコンテンツのタイプＣkおよびコンテンツのタイプごとのトラフィックレート
【００８７】
【数８】
2018029326.tif 000010
【００８８】
を含む。ネットワーク統計値は、ネットワークのネットワークトポロジーＧ（Ｖ，Ａ）を決定するために使用される５２０。
【００８９】
特定のタイプのコンテンツに関係するトラフィックデータは、ネットワークトポロジーに基づいてコンテンツのタイプごとにコンテンツ固有のルーティングトポロジーを決定するために使用される５３０。これについては以下でより詳細に説明するが、本方法は、コンテンツに基づいてルーティングツリーを発見し、ネットワークトラフィックが低減され得るようにマルチホップルーティング経路に沿って相関するコンテンツデータをアグリゲートするために集中型ヒューリスティックルーティングアルゴリズムを利用する。コンテンツ固有のルーティングトポロジーは、したがって、コンテンツ固有のアグリゲーションポイントを含むように形成される。目的は、高いトラフィックアグリゲーション比を達成するためにデータをシンクのほうへルーティングするときに最も効果的なコンテンツ依存のアグリゲーションポイントを見つけることである。
【００９０】
コンテンツのタイプごとにコンテンツ固有のルーティングトポロジーが決定されると、それぞれのトラフィックトポロジーに基づいてコンテンツのタイプごとにコンテンツ固有のスケジュールが決定される６５０。これは、ネットワーク内のノードにおける特定のコンテンツのトラフィックレート、ならびにコンテンツ固有のルーティングトポロジーによって必要とされるアグリゲーションポイントに基づく。したがって、スケジュールは、ノードによるデータの送信のための時間だけでなく、アグリゲーションのための時間をも含む。
【００９１】
いくつかのルーティングトポロジーは、多数のメッセージが少数のノードを通じてルーティングされることによりボトルネックを引き起こし得るので、スケジュールの改善されたセットが生成され得るかどうかを確かめるために代替のルーティングトポロジーを反復的にテストするための最適化ステップ５５０が含まれる。これは、ネットワーク中の輻輳ポイントを決定することと、これらの輻輳ポイントを回避するようにルーティングトポロジーを最適化することとを伴う。このステップの目的は、最も短い全体的なスケジュール（スケジュールのセットの開始とスケジュールの終了との間の最小時間）を生成するルーティングトポロジーを見つけることである。
【００９２】
最適化されたスケジュールのセットが決定されると、これはネットワーク中のノードに出力される５６０。これは、コンテンツ固有のスケジュールにおいてスケジュールされたプロセスのすべてを合成する合成スケジュールを形成することによって達成され得る。各ノードはそれ自体のスケジュールのみを必要とする（他のノードが何を行っているかを知る必要がない）ので、スケジュールは、たとえばハブを介してノードに提供される、ノード固有のスケジュールに分割され得る。
【００９３】
コンテンツ固有のルーティングトポロジーとコンテンツ固有のスケジュールとの割振りは、図３に示されているネットワークコントローラによって実装され得る。本方法は、２つのモジュール、コンテンツルートマネージャ（ＣＲＭ）およびコンテンツスケジュールマネージャ（ＣＳＭ）を使用し、それらの両方はネットワークコントローラのコントローラによって実装される。コンテンツルートマネージャはコンテンツ固有のルーティングトポロジーを決定し、コンテンツスケジュールマネージャはコンテンツ固有のスケジュールを決定する。
【００９４】
コンテンツルートマネージャ（ＣＲＭ）
図６は、アレンジメントによるコンテンツ固有のルーティングトポロジーを決定する方法を示す。場合によってはコンテンツ中心ルートファインダーとして知られる本方法は、コンテンツのタイプ（適用例）Ｃkと、ネットワークトポロジーＧ（Ｖ，Ａ）と、コンテンツ固有のトラフィックレート
【００９５】
【数９】
2018029326.tif 000011
【００９６】
とのリストを受信し、初めに第１のコンテンツタイプ（Ｃk＝１）を選択することによって開始する６１０。
【００９７】
本方法は、所与の（ターゲット）ノードに対する２つのタイプのノードを利用する。  
１．  １ホップネイバー  −  ターゲットノード自体を含む、ターゲットノードから１ホップ距離内にある隣接ノード。ターゲットノードがレイヤＭdにある場合、１ホップネイバーはレイヤＭd+1、Ｍd、Ｍd-1にあり得る。  
２．  ネクストホップネイバー  −  より小さいレイヤ番号をもつ、ターゲットノードから１ホップ離れている隣接ノード。たとえば、ターゲットノードがレイヤＭdにある場合、ネクストホップネイバーはレイヤＭd-1中にのみあり得る。
【００９８】
ルーティングツリーを形成するシーケンスはホップ距離レイヤの降順
【００９９】
【数１０】
2018029326.tif 000012
【０１００】
に基づく。したがって、外側レイヤ
【０１０１】
【数１１】
2018029326.tif 000013
【０１０２】
中のノードは、それらのネクストホップネイバー中継ノードを最初に割り当てられさせる。したがって、カウンタｄはｄmaxにおいて開始される（初めにそれに設定される）６１５。
【０１０３】
レイヤＭd中のノードｉごとに、（以下のアルゴリズム１においてＢｅｓｔＮｏｄｅと呼ばれる）ネクストホップ中継ノードが決定される６２０。
【０１０４】
ネクストホップ中継ノードは、コンテンツタイプＣkのメッセージを有する最も多くの１ホップネイバーを有するレイヤＭd-1におけるネクストホップ隣接ノードであると見出される。特定のコンテンツタイプのメッセージを「有する」と言われるノードは、そのタイプのコンテンツを生成する（ソースノードである）か、またはそのタイプのコンテンツを処理および／もしくは中継する。したがって、ネクストホップ中継ノードは、コンテンツタイプＣkのメッセージを送信する最も多くの１ホップネイバーを有するレイヤＭd-1におけるネクストホップ隣接ノードである。
【０１０５】
ネクストホップ中継ノードが見つけられるたびに、それはネクストホップ中継リスト
【０１０６】
【数１２】
2018029326.tif 000014
【０１０７】
に追加される。これにより、本方法は、どのノードがデータアグリゲーションを実施し得るかを追跡することが可能になる。
【０１０８】
さらに、コンテンツインデックスがノードごとに維持される。コンテンツインデックスは、各ノードが各コンテンツのタイプのデータを記憶、処理および／またはルーティングするか否かをリストする（すなわち、
【０１０９】
【数１３】
2018029326.tif 000015
【０１１０】
である場合、ＣｏｎｔｅｎｔＩｎｄｅｘ（ｎ，Ｃk）＝ｔｒｕｅ）。ネクストホップ中継ノードが割り当てられるたびに、ネクストホップ中継ノードのための所与のコンテンツタイプＣkのコンテンツインデックスは、コンテンツタイプＣkのためのルーティングトポロジーへのネクストホップ中継ノードの追加を考慮するために真に設定される（たとえば、０が偽を示す場合、１に設定される）。
【０１１１】
レイヤＭdにおいて各リンクが割り当てられたとき、リンクは、コンテンツ固有のルーティングトポロジー行列
【０１１２】
【数１４】
2018029326.tif 000016
【０１１３】
に追加される６２５。
【０１１４】
【数１５】
2018029326.tif 000017
【０１１５】
は、リンク行列
【０１１６】
【数１６】
2018029326.tif 000018
【０１１７】
と、コンテンツタイプＣkをもつノードのノードＩＤとから形成される。行列
【０１１８】
【数１７】
2018029326.tif 000019
【０１１９】
は３×ｍ行列であり、ここで、ｍはルーティングトポロジー中の通信リンクの数である。行列の各列は単一の通信リンクに関係する。各通信リンクについて、最上行は送信ノードＩＤを指定し、第２の行は受信ノードＩＤを指定し、最下行はトラフィックレート（リンク上のデータレート）を指定する。
【０１２０】
これを形成するために、トラフィック行列は、最初にコンテンツタイプごとに構築される。トラフィック行列は、各ノードにおいて生成されるスケジュールされたデータを示すスケジュールシーケンス（ＳＳ：schedule sequence）行列である。これは、図６の方法に先立って構築され得るか、またはステップ６１０においてトラフィック情報として提供され得る。トラフィック行列は２×ｎ’行列であり、ここで、ｎ’は、（データを生成しないがデータを中継するノードを含む、ノードｎの総数とは対照的に）パケットを生成しているソースノードの総数である。
【０１２１】
図４のネットワークおよびコンテンツタイプのための完成したＳＳ行列は次の通りである。
【０１２２】
【数１８】
2018029326.tif 000020
【０１２３】
第１の行はノードＩＤを表し、第２の行はノードにおけるパケット生成のデータレートを指定する。
【０１２４】
リンク（すなわちネクストホップ中継ノード）が割り当てられると、ＳＳ行列は、受信ノードＩＤに関係する中心行の追加を通じてコンテンツ固有のリンク行列
【０１２５】
【数１９】
2018029326.tif 000021
【０１２６】
に拡張され得る。代替的に、トラフィック行列に関する情報に基づいて新しい行列が構築され得る。このコンテンツ固有のリンク行列
【０１２７】
【数２０】
2018029326.tif 000022
【０１２８】
はマルチホップスケジューリングシーケンス（ＭＳＳ：multihop scheduling sequence）行列である。上記のＳＳ行列のための完成したＭＳＳ行列は次の通りである。
【０１２９】
【数２１】
2018029326.tif 000023
【０１３０】
第１の行はデータを送信しているノードを表し、第２の行はデータを受信しているノードを表し、第３の行は、それぞれのタイプのコンテンツのための通信リンク上のデータレートを表す。
【０１３１】
レイヤＭd中の各ノードのためにリンクおよびレートが割り当てられると、処理タスク
【０１３２】
【数２２】
2018029326.tif 000024
【０１３３】
がリンク行列
【０１３４】
【数２３】
2018029326.tif 000025
【０１３５】
に追加され、データレートはデータアグリゲーションを考慮に入れるように更新される６３０。処理タスクは、リンク行列
【０１３６】
【数２４】
2018029326.tif 000026
【０１３７】
中にそれら自体の列を割り当てられ、最上行は処理を行うノードＩＤを示し、最下行は処理タスクのデータレートを示す。
【０１３８】
処理タスクが追加されると、データアグリゲーション後のトラフィックが計算される。これは、処理タスク（データアグリゲーション）が考慮に入れられた後にリンク行列がトラフィックレートで更新されることを可能にする。これは、データアグリゲーションが、処理を行っているノードからデータレートの低減を最終的に生じることになるからである。
【０１３９】
次いで、最後のレイヤに達したかどうか（ｄ＝１であるかどうか）が決定される６４０。そうでない場合、レイヤ番号は１だけ減少され６４５、本方法はステップ６２０にループバックして、次のレイヤについてネクストホップ中継ノードを計算し、
【０１４０】
【数２５】
2018029326.tif 000027
【０１４１】
の関係する部分を占有する。最後のレイヤに達した場合、リンク行列
【０１４２】
【数２６】
2018029326.tif 000028
【０１４３】
と、コンテンツタイプＣkをもつノードのリストとからコンテンツ固有のルーティングトポロジー
【０１４４】
【数２７】
2018029326.tif 000029
【０１４５】
が決定される。
【０１４６】
次いで、すべてのＫ個のコンテンツタイプについてルーティングが行われたかどうか（すなわちＣk＝Ｋであるかどうか）が決定される６５０。そうでない場合、コンテンツタイプカウンタＣkは１だけ増加され６５５、本方法はステップ６１５にループバックして、次のコンテンツタイプについてコンテンツ固有のルーティングトポロジーを計算する。すべてのＫ個のコンテンツタイプについてルーティングが行われた場合（すなわち、Ｋ番目のコンテンツタイプに達した場合）、すべてのコンテンツタイプについてのルーティングトポロジーのセット
【０１４７】
【数２８】
2018029326.tif 000030
【０１４８】
が出力される６６０。
【０１４９】
図７は、アレンジメントによるネクストホップ中継ノードを決定する方法を示す。図示された方法は図６のステップ６２０および６２５と等価物であり、破線は、本方法が図６のステップ６１５または６３５から入り、次いでその後、図６のステップ６３０に出る場所を表す。
【０１５０】
レイヤが選定されると（ステップ６１５または６３５）、レイヤ中のノードのセットから、レイヤからの第１の（ターゲット）ノードが選択される７１０。これは、レイヤ中のノードのセットにおいて第１のノードを選択するために、単にノードインデックスｉを１に等しくなるように設定することによって実装され得る。
【０１５１】
これの後に、ターゲットノードｉに対するネクストホップネイバーのセットから第１のネクストホップネイバーが選択される７１５。この場合も、これは、ネクストホップネイバーインデックスｊを１に等しく設定することによって達成され得る。上記で定義されたように、ネクストホップネイバーはノードｉの１ホップ内にあるノードのセットであり、ノードｉのレイヤの１レイヤ下方に（ハブに１ホップより近くに）位置する。ターゲットノードｉのネクストホップネイバーは、ターゲットノードの中継ノードになるための候補ノードのセットを形成する。
【０１５２】
これの後に、本方法は、コンテンツタイプＣkの送信データに起因するノードｊ（選択されたネクストホップネイバー）の１ホップネイバーの数をカウントする。これを達成するために、所与のノードが送信コンテンツタイプＣkに起因する場合、そのノードについて真であるコンテンツインデックスが維持され、所与のノードが送信コンテンツタイプＣkに起因しない場合、そのノードについて偽であるコンテンツインデックスが維持される。コンテンツインデックスはすべてのノードとすべてのコンテンツタイプとをカバーする。したがって、本方法はノードｊの各１ホップネイバーを考慮し、コンテンツタイプＣkの送信データに起因するものごとに、カウントインデックス
【０１５３】
【数２９】
2018029326.tif 000031
【０１５４】
に１が加算される。
【０１５５】
次いで、ノードｉのネクストホップネイバーのすべてが考慮されたかどうか（すなわち、ｊがノードｉのネクストホップネイバーの総数に等しいかどうか）が決定される７３０。そうでない場合、本方法は、次のネクストホップネイバーに移り（すなわちネクストホップネイバーインデックスｊに１を加算し）７３５、ステップ７２０に戻って、候補ノードのセットから次のネクストホップネイバーのＮ（ｊ）を決定する。
【０１５６】
ノードｉのネクストホップネイバーのすべてが考慮された場合、ノードｉのどのネクストホップネイバーが、コンテンツタイプＣkの送信データに起因する最も多い１ホップネイバーを有する（Ｎ（ｊ）の最大値を有する）かが決定される。Ｎ（ｊ）の最大値をもつネクストホップネイバーはノードｉのネクストホップ中継ノードになるように設定される７４０。
【０１５７】
次いで、コンテンツタイプＣkのためのネクストホップ中継ノードのコンテンツインデックスが真になることが保証され、コンテンツ固有のリンク行列
【０１５８】
【数３０】
2018029326.tif 000032
【０１５９】
は、（上記で説明したように）割り当てられた通信リンクおよび関連するデータレートで更新される７５０。
【０１６０】
本方法は、次いで、レイヤＭd中のノードのすべてが考慮されたかどうかを決定する７６０。すなわち、ネクストホップ中継ノードがレイヤ中のすべてのノードに割り当てられたかどうか（またはｉがレイヤＭd中のノードの総数に等しいかどうか）を決定する。そうでない場合、本方法はレイヤ中の次のノードに移り（ｉが１だけ増加され）７６５、本方法はステップ７１５にループバックして、レイヤ中の次のノードについてネクストホップ中継ノードを決定し始める。レイヤ中のすべてのノードが考慮された場合、本方法は、図６に示されたステップ６３０に移って最後のレイヤに達したかどうかを決定し、そうでない場合、レイヤを下方に移動する。
【０１６１】
したがって、レイヤＭd中のノードごとに、所与のネクストホップネイバーについて１ホップネイバーをくまなく探索し、特定のコンテンツタイプＣkの送信データに起因する（０よりも大きいか、または各ノードのコンテンツインデックスに基づくそのコンテンツタイプのレート
【０１６２】
【数３１】
2018029326.tif 000033
【０１６３】
を有する）各ノードのカウンタに１を加算することによって、所与のネクストホップネイバーのための最大数の１ホップネイバーが見つけられることがわかる。最も大きいカウンタ
【０１６４】
【数３２】
2018029326.tif 000034
【０１６５】
をもつネクストホップネイバーはネクストホップ中継ノードになるように設定される。
【０１６６】
【数３３】
2018029326.tif 000035
【０１６７】
アルゴリズム１は、図６および図７に示されているコンテンツ中心ルートファインダーを詳述する。
【０１６８】
図８（ａ）は、アレンジメントによるコンテンツ固有のルーティングの一例を示す。このネットワークアレンジメントは図４のアレンジメントと同様であるが、第２のレベルは追加のノード６を含む。ノード５のノード４の両方はコンテンツＣ１およびＣ２を生成するが、ノード６はコンテンツＣ１のみを生成する。これら３つのノードのトラフィックレートは１トラフィックユニットである。コンテンツ中心ルートファインダーは、最初にコンテンツのタイプごとにルーティングトポロジーを形成する。この場合は、ノード５が、Ｃ１のためのそれのＢｅｓｔＮｏｄｅを割り当てられさせる１番のものになる。ノード２はノード４、５および６のすべて３つに接続され、その各々がコンテンツＣ１を有するので、ノード２は、コンテンツＣ１に関して３つの１ホップネイバーを有する（すなわち、ノード２のＮｅｉｇｈｂｏｕｒＣｏｎｔｅｎｔＬｉｓｔはＣ１について３に等しい）。対照的に、ノード３のＮｅｉｇｈｂｏｕｒＣｏｎｔｅｎｔＬｉｓｔは２に等しいにすぎない。ノード２がコンテンツＣ１に関して最も多くの１ホップネイバーを有するので、ノード２は、コンテンツＣ１についてノード５のためのネクストホップ中継ノードとして選定される。ＣｏｎｔｅｎｔＩｎｄｅｘ（２，Ｃ１）は、ノード５からノード２へのタイプＣ１のコンテンツの転移を考慮するために真に設定される。
【０１６９】
ノード４のためのネクストホップ中継ノードを選定するとき、ノード２は、今度はＮｅｉｇｈｂｏｕｒＣｏｎｔｅｎｔＬｉｓｔ＝４を有する。前述のように、ＮｅｉｇｈｂｏｕｒＣｏｎｔｅｎｔＬｉｓｔを比較することによって、ノード２は再びノード４のためのＢｅｓｔＮｏｄｅとして選択される。同じことが、ノード６のためのＢｅｓｔＮｏｄｅを見つけることに当てはまる。レイヤＭ3中のすべてのノードがコンテンツＣ１のためのそれらのネクストホップ中継ノードを割り当てられると、対応するアグリゲーションノードに処理タスクＰC1が追加される。この例では、ノード２がコンテンツＣ１のためのアグリゲーションを実施する。ノード２において３つのパケットが受信された後に、アグリゲーションプロセスはただ１つのアグリゲートされたパケットを出力し、このアグリゲートされたパケットは、次いで、リンクノード２→ノード１のためのトラフィックレートとして割り当てられることになる、と我々はさらに仮定する。
【０１７０】
同じことがコンテンツＣ２に当てはまる。ノード３が、図７に示されているように、ノード４およびノード５のためのネクストホップ中継ノードとして選択される。ノード２およびノード３は、タイプＣ２のコンテンツを有する１ホップネイバーの同じ数を有するので、Ｃ２のためのＢｅｓｔＮｏｄｅとしてノード２を選定することも可能である。しかしながら、コンテンツＣ２を中継および処理するためにノード２も選択された場合、ノード２はボトルネックノードになる可能性が極めて高い。ルーティングトポロジーからボトルネックを除去する方法については、スケジューリングプロセス中の輻輳ポイントアナライザについて論じるときに後でより詳細に説明する。
【０１７１】
上記で説明したように、ルーティングトポロジー中のリンクのために行列
【０１７２】
【数３４】
2018029326.tif 000036
【０１７３】
が形成される。これは、図８（ａ）において
【０１７４】
【数３５】
2018029326.tif 000037
【０１７５】
および
【０１７６】
【数３６】
2018029326.tif 000038
【０１７７】
について示されている。これらの行列は、ノードをも含むそれぞれのグラフ
【０１７８】
【数３７】
2018029326.tif 000039
【０１７９】
に追加されるリンク行列である。ルーティングトポロジーグラフは、コンテンツ固有のスケジュールを決定するためにスケジューラに入力される。代替的に、リンク行列がスケジューラに入力され得る。
【０１８０】
コンテンツスケジュールマネージャ（ＣＳＭ）
コンテンツスケジュールマネージャ中のコンテンツスケジューラは、入力として各コンテンツ固有のルーティングトポロジー
【０１８１】
【数３８】
2018029326.tif 000040
【０１８２】
（またはそれの関連するリンク行列
【０１８３】
【数３９】
2018029326.tif 000041
【０１８４】
）を取り、対応するトラフィックレートに従って
【０１８５】
【数４０】
2018029326.tif 000042
【０１８６】
中の各通信および処理タスクに時間スロットを割り当てる。スケジューリングルールは以下の通りである。  
１．  同じ時間スロット中に競合するリンクがスケジュールされるべきでない。すなわち、（送信機または受信機のいずれかとして）ノードがデータを送信または受信するようにすでにスケジュールされた時間スロットにおいてそのノードに関与する送信がスケジュールされるべきでない。ノードは、データを処理しながらデータを送信または受信することができ、たとえば、ノードは、１つのタイプのコンテンツのデータを処理しながら異なるタイプのコンテンツのデータを送信することができる。  
２．  同じ時間スロット中の同じチャネル（またはカラー）を使用して互いの干渉範囲内で２つの送信が行われるべきでない。これら２つの送信の送信および受信ノードが干渉範囲の外側にある場合、両方の送信のために同じ時間スロット中で同じチャネルが使用され得る。異なるチャネルを使用する場合、干渉するリンクが同じ時間スロットに割り当てられ得る。  
３．  時間がノードｉ上でコンテンツＣkを処理することを可能にするために、処理タスク
【０１８７】
【数４１】
2018029326.tif 000043
【０１８８】
のために最小の遅延が必要とされる。この遅延は、同じタイプのコンテンツＣkに関係するいずれかのタスクのための処理を実施しているノードに適用される。したがって、所与のタイプのデータが処理されている間、処理ノードは、コンテンツタイプのデータを送信または受信するためにスケジュールされるべきでない。これは、データを処理するのに十分な時間を保証する。異なるコンテンツタイプのデータは、この時間中にノードによって送信または受信され得る。
【０１８９】
ＣＳＭは、マルチチャネルおよび時間スロット割当てをサポートし、ＩＥＴＦ  ６ＴＩＳＣＨ規格において最新のＴＳＣＨモードに準拠するスケジューリング手順を適用する。
【０１９０】
スケジューラは、特定のスケジューリング期間にわたって通信リンクまたは処理タスクにセルを割り振る。スケジューリング期間は、経時的に繰り返されることになる、スケジュールがその間に定義されるべき時間期間である。スケジューリング期間はスーパーフレームと呼ばれることがある。スケジューリング期間は複数の時間スロットに分割される。スケジューリング期間は、スケジューラによって決定される標準時間ユニットであり、ここにおいて、スケジューリング期間のために定義されたスケジュールは、スケジューリング期間にわたって繰り返し実行される。セルは、通信チャネル上の時間スロットである。
【０１９１】
スケジュールは、それぞれのリンク行列
【０１９２】
【数４２】
2018029326.tif 000044
【０１９３】
（ＭＳＳ行列）中に含まれている各通信リンクを介して各トラフィックユニット（データパケット）に時間スロットを割り振ることによってコンテンツのタイプごとに定義される。リンクスケジューリングはネットワークレイヤの降順に行われるべきである。
【０１９４】
【数４３】
2018029326.tif 000045
【０１９５】
がネットワークレイヤの降順に構築されると、リンクスケジューリングは、
【０１９６】
【数４４】
2018029326.tif 000046
【０１９７】
中のリンクのリスティングの順序に基づいて行われる。各送信は特定のチャネルを割り当てられる。チャネル割当ては、同時送信が干渉を引き起こすことになるか否かに基づく。リンクが、それらが干渉する時間スロット中にスケジュールされた場合、異なるチャネルオフセットが使用される。そうでない場合、同じチャネルおよび同じ時間スロットがそれらの通信リンクに与えられる。
【０１９８】
スケジューラは、衝突を回避するためにルールの上記セットを利用する。セルを割り当てる前に衝突および干渉について検査するために通信行列Ωが利用される。通信行列ΩはＭ×Ｎch×Ｓ行列であり、ここにおいて、Ｍはネットワーク中のノードの総数であり、Ｎchはチャネルオフセットの数であり、Ｓはスケジューリング期間中の時間スロットの総数である。通信リンクまたは処理タスクがセルに割り振られることになるたびに、すでに割り振られているセルに衝突または干渉しないセルを選択するために行列Ωが検査される。セルが割り振られると、割り振られたプロセスに関与するノードのための対応する成分がΩ行列中でマークされる。したがって、割り振られた通信リンクについては、送信側および受信側ノードのための対応する成分がマークされ、一方、割り振られた処理タスクについては、処理タスクを行うノードのための対応する成分がマークされる。
【０１９９】
送信のために、送信側ノードのネイバーと受信側ノードのネイバーの両方は、送信側がパケットを送信し受信機が肯定応答を送るという２つの通信をセル中の通信が備えるとき、スケジュールされたセルの（送信または受信の両方の）干渉について検査される必要がある。
【０２００】
したがって、所与のタスク（すなわち処理タスクまたは送信）について、スケジューラは、Ω中に競合リンクがマークされていない時間スロットを見つける。割り振られたタスクが送信である場合、スケジューラは、Ω中に干渉する隣接通信がマークされていないチャネルを見つける。見つからなかった場合、スケジューラは、非干渉チャネルとともに何らかの競合しない時間スロットが存在するかどうかを確かめるために異なるセルについて検査する。適切なセル（および、送信リンクでは、チャネル）が見つかった場合、タスクがスケジュールに追加され、上記で説明したようにΩの関係する部分にマークされる。Ωを継続的に更新することによって、スケジューラは、競合するタスクをスケジュールするのを回避する。
【０２０１】
スケジューラは、関連するコンテンツ固有のルーティングトポロジーを使用してコンテンツのタイプごとに実行される。異なるコンテンツタイプ間の競合を回避するために、通信行列Ωは異なるコンテンツタイプのスケジューリングにわたって維持される。
【０２０２】
図６および図７のアレンジメントを使用して生成されたトラフィックトポロジーのためのスケジュールの一例が図８（ｂ）に示されている。
【０２０３】
図８（ｂ）は、アレンジメントによるコンテンツ固有のスケジューリングの一例を示す。この場合、２つの異なるコンテンツタイプ、Ｃ１およびＣ２は、干渉を回避するために異なるチャネルＣＨ１およびＣＨ２上で送信される。
【０２０４】
ＣＲＭとＣＳＭとの間の相互作用
ＣＲＭでは、アルゴリズム１を使用して、各コンテンツフローのための高データアグリゲーション経路が生成され得る。しかしながら、これは、数個のアグリゲーションノードが、マルチコンテンツデータ処理のための過大な通信ジョブならびに大量の計算タスクによって重い負荷をかけられ得るので、ネットワークにおけるトラフィックホットスポットにつながり得、著しく遅延が生じる。すなわち、最も効率的なルーティングトポロジーは、ネットワークにおいて輻輳を引き起こす多数のボトルネックを有し得る。
【０２０５】
そのような問題に対処するために、「ホットスポット」を検出するためにＣＳＭにおいてネットワーク輻輳ポイントアナライザが採用される。スケジューリングが完了した後に輻輳ポイントを識別し、輻輳を回避する新しいルートを決定するために経路オプティマイザを適用する、クロスレイヤ手法における反復法が利用される。ＲＣＭおよびＲＳＭは、できる限り短いスケジュールを生成するように経路を最適化するために繰り返される。
【０２０６】
図９は、アレンジメントによるコンテンツ固有のスケジュールを決定するための方法を示す。本方法は、コンテンツのタイプ（適用例）Ｃkと、ネットワークトポロジーＧ（Ｖ，Ａ）と、コンテンツ固有のトラフィックレート
【０２０７】
【数４５】
2018029326.tif 000047
【０２０８】
とのリストを初めに収集することによって開始する９０２。これらは、ノードが競合ベース方式、たとえばＣＳＭＡの下で動作しているとき、ネットワーク中の送信を監視することによって取得され得る。たとえば、ネットワークトポロジーは、各ノードが、それが検出することができるノード（送信範囲内にあるノード）のリストをネットワークコントローラに送った場合、ネットワークコントローラによって決定され得る。コンテンツのタイプはデータがどのように使用されるのかをモニタすることによって（またはデータの内容を考慮することによって）見出され得て、トラフィックレートは、ハブにおいて受信されたデータパケットがどこから発生するか（どのノードがデータを生成するか）をモニタすることによって決定され得る。収集されると、データはコンテンツルートマネージャ（ＣＲＭ）に入力される。
【０２０９】
コンテンツルートマネージャは、最初に、図６および図７に関して上記で説明したように、コンテンツ中心ルートファインダーを使用して第１のタイプのコンテンツＣkのためのコンテンツ固有のルーティングトポロジーを決定する９１０。コンテンツ中心ルートファインダーはコンテンツルーティングツリー
【０２１０】
【数４６】
2018029326.tif 000048
【０２１１】
（コンテンツトポロジー行列
【０２１２】
【数４７】
2018029326.tif 000049
【０２１３】
および対応するノード）を出力する９１２。次いで、コンテンツのすべてのタイプＣkについてルートが見つかったかどうかが決定される９１４。そうでない場合、本方法はコンテンツ中心ルートファインダー９１０にループバックして、別のタイプのコンテンツについてコンテンツ固有のルーティングトポロジーを見つける。コンテンツのすべてのタイプについてルートが決定された場合、ルーティングトポロジーがコンテンツスケジュールマネージャ（ＣＳＭ）に出力される。
【０２１４】
コンテンツスケジュールマネージャは、上記で説明したように、第１のタイプのコンテンツＣkについてコンテンツ固有のスケジュールを決定するようにコンテンツスケジューラを実装する９２０。次いで、コンテンツのすべてのタイプＣkについてスケジュールが決定されたかどうかが決定される９２２。そうでない場合、本方法はステップ９２０にループバックして、別のタイプのコンテンツについてスケジュールを決定する。コンテンツのすべてのタイプについてスケジュールが割り当てられた場合、コンテンツ固有のスケジュールのセット
【０２１５】
【数４８】
2018029326.tif 000050
【０２１６】
からの最も大きいスケジュール
【０２１７】
【数４９】
2018029326.tif 000051
【０２１８】
が、スケジュールの現在の最適セットＳoptからの最大スケジュール長の長さよりも良い（それよりも短い）かどうかが決定される。第１の反復で現在の最適スケジュールが決定されないとき、このステップは初期にスキップされ得（るか、または最適スケジュール長が初期に無限大に設定され得）、本方法はステップ９２６に直行する。
【０２１９】
ステップ９２６において、反復カウントインデックスは０に設定され、スケジュールのセットは最適スケジュールＳoptになるように設定される。次いで、反復の最大数に達したかどうかが決定される９３０。すなわち、反復カウントインデックスが反復のしきい値数αに等しいかどうかが決定される。そうでない場合、現在の最適スケジュールＳoptが輻輳ポイントアナライザに受け渡される。
【０２２０】
輻輳ポイントアナライザ９３２は、全体的なスケジュール（コンテンツ固有のスケジュールの合成から形成されたスケジュール）において時間スロットの総数のうち最も高い割合を割り当てられたノードを決定する。あらかじめ定義された数の最もビジーなノードがボトルネックノード（たとえばトラフィックの最も高い割合を有する３つのノード）であると決定されるか、またはしきい値割合が利用され、このしきい値割合よりも多くを割り当てられたノードはボトルネックノード（輻輳ポイント）であると決定される。ルーティングトポロジーとボトルネックノードのノードＩＤとは、輻輳ポイントを回避するように経路を最適化するためにＣＲＭに戻される。
【０２２１】
経路オプティマイザ９１６は、それぞれのルーティングトポロジーにおいてボトルネックノードに送信する最も重要でないコンテンツタイプに関係する通信リンクを、ボトルネックノードから離れて、上記のルーティング法を使用して決定された次善の隣接ノードに移動させる。すなわち、各リンクは、それぞれのコンテンツタイプによる送信データに起因して次に高い１ホップネイバーの数をもつノードに移動される。最も重要でないコンテンツタイプは、コンテンツタイプおよび／またはコンテンツタイプが関係する適用例に割り当てられた、あらかじめ定義された重要性レベルに基づき得る。
【０２２２】
次いで、新しいルートが見つかったかどうかが決定される９１８。そうである場合、新しいトラフィックトポロジーグラフが形成される９１２。経路オプティマイザは、スケジュールの新しいセットを生成するために新しいルーティングトポロジーがコンテンツスケジューラ９２０に戻される前に、コンテンツの各タイプのためのルーティングトポロジーのために実装される。
【０２２３】
新しいルートが見つからなかった場合、本方法は経路オプティマイザ９１６にループバックして、次に最も重要でないコンテンツタイプに関係するリンクを移動させる。コンテンツのどんなタイプについても新しいルートが見つからなかった場合、現在のスケジュールおよびトポロジーが出力される（図９に図示せず）。
【０２２４】
新しいスケジュールの最大長がスケジュールの現在の最適セットＳoptの最大長よりも小さいという条件で、スケジュールの新しいセットは最適スケジュールＳoptになるように設定され、反復カウントインデックスはリセットされる９２６。新しいスケジュールの最大長がスケジュールの現在の最適セットＳoptの最大長よりも長い場合、反復カウントインデックスは１だけ増加される９２８。次いで、この場合も、反復のしきい値数に達したかどうかが決定される９３０。そうでない場合、輻輳ポイントアナライザが実行され９３２、本方法は、ルーティングトポロジーの新しいセットを決定し、経路オプティマイザ９１６を介してスケジュールする。改善されたスケジュールが見つかることなく反復の最大数に達した場合（反復カウントインデックスがしきい値αに等しい場合）、最適スケジュールのセットＳoptが出力される９４０。
【０２２５】
最適スケジュールのセットＳoptは、ステップ９２６において、または最適スケジュールＳoptが出力されるとき、最終的な合成スケジュールに合成され得ることに留意されたい。合成されると、合成スケジュールはノード固有のスケジュールに分割され得、各々は特定のノードのタスクを詳述する。これらのノード固有のスケジュールは、次いで、決定されたスケジュールをネットワークが実装することを可能にするためにそれぞれのノードに配信され得る。
【０２２６】
上記の反復法に照らして、異なるタイプのコンテンツのデータが異なるルートを介してルーティングされ、輻輳ポイントが回避される、改善されたスケジュールが取得される。
【０２２７】
図１０（ａ）、輻輳ポイントをもつルーティングトポロジー。図１０（ａ）では、（丸で囲まれた）２つの輻輳ポイントは、それらがそれらに割り当てられた不相応に多数のタスク／セルを有するので、通信と処理の両方のために余分の待ち時間を生じる。
【０２２８】
図１０（ｂ）は、輻輳ポイントを回避する分散ルーティングトポロジーを示す。このルーティングトポロジーは、本明細書で説明するクロスレイヤ反復法が利用されるときに達成される。この場合、外側の輻輳ポイントは、それが利用可能な時間スロット全体の十分大きい比率を有しないので、ボトルネックノードであると決定されず、したがって維持される。とはいえ、内側レイヤにおけるボトルネックノードは、輻輳を回避するために分割される（ボトルネックノードへのリンクはルート変更される）。リンクは、データアグリゲーションが依然として実装され得るように次善のノードに割り当てられる。この方法を通じて、データアグリゲーションの利益は、ネットワーク上の負荷バランシングの利益とのバランスをとられる。
【０２２９】
メッセージ優先順位付け
ネットワーク内データアグリゲーションを使用することによって、スケジューリングについて限られたリソース（たとえば時間およびスペクトル）の節約が行われ得る。利用可能なそれらの追加のリソースを用いて、時間クリティカルメッセージによって使用され得るプレミアム時間スロットが導入され得る。プレミアム時間スロットは、スーパーフレーム中の固定間隔において（たとえば１０個の時間スロットごとに）予約され、この間隔は、たとえば、利用可能なリソースとネットワークトラフィックの総量とに基づいて決定され得る。通常動作中に、プレミアムスロットは共有スロットとして扱われ、したがって、あらゆるノードはプレミアムスロットを使用するために競合することができる（スロット内ＣＳＭＡ／ＣＡ）。しかしながら、時間クリティカルメッセージを送信するための要求（たとえば、送信要求、送信可（ＲＴＳ／ＣＴＳ）方式における送信要求）が受信されると、他のノードはプレミアムスロット競合についてバックオフする。
【０２３０】
時間クリティカルメッセージのために超低レイテンシを保証するために以下の２つの特徴が使用される。
【０２３１】
１）  パケットヘッダまたはペイロード中の予約済みスペースにおいて採用され得る（たとえば、ペイロード中の最初のバイトが即時処理バイトのみのために予約される）、コンテンツ依存の即時処理バイト。  
２）  コンテンツ非依存のプレミアム時間スロット。冗長時間スロットが、すべてのタイプのコンテンツのためのスケジュールのためのプレミアム時間スロットとして予約され、すべてのタイプのコンテンツにわたって共有される。  
通常動作中に、センサーノードによって収集されたデータは、バッファされ、スケジュールされた時間スロットを使用してアグリゲートされる。プレミアム時間スロットはすべてのノードのための共有競合リソースとして使用される。しかしながら、（コンテンツＣkをもつ）時間クリティカルメッセージがそれのヘッダ中に即時処理バイトを伴って送られた場合、それのマルチホップ経路に沿ったデータコンセントレータ（ハブ）までのすべての処理ノードは、対応するコンテンツバッファ
【０２３２】
【数５０】
2018029326.tif 000052
【０２３３】
に記憶されたデータを直ちに処理し、発信メッセージのヘッダ中に同じ即時処理バイトを追加し、次の利用可能なスケジュールされた時間スロットまたはプレミアム時間スロット中にそれを送り出す。対応するコンテンツのみが直ちに処理されるが、異なるコンテンツタイプに属する他のメッセージはスケジュールに従ってバッファされ処理されることに留意されたい。とはいえ、プレミアム時間スロットはコンテンツ非依存であり、これは、プレミアム時間スロット中に、（コンテンツタイプにかかわらず）すべての緊急でないメッセージは、緊急メッセージが検出されたときにバックオフすべきであることを意味する。
【０２３４】
図１１は、アレンジメントによるノードを動作させる方法を示す。この方法は、スケジュールがすでにノードに割り当てられていると仮定する。ノードがアクティブにされた後に１１０２、ノードはメッセージｍを受信するために待つ。メッセージｍが受信されたとき１１０４、メッセージからメッセージのコンテンツが抽出され、コンテンツのタイプＣkが識別される。メッセージは、ワイヤレスネットワークを介して送信されるデータのパケットまたはパケットの一部分であり得る。したがって、メッセージは、受信されたパケットのペイロードの一部分または全部を備える。
【０２３５】
メッセージ中のコンテンツは、コンテンツのタイプＣkに関連するノード中のそれぞれのバッファ
【０２３６】
【数５１】
2018029326.tif 000053
【０２３７】
に記憶される１１０６。したがって、各ノードは、コンテンツのタイプＣkの各々のためにバッファを有する。
【０２３８】
ノードは、次いで、メッセージが即時処理バイトを有するかどうかを決定する１１０８。これは、メッセージのあらかじめ定義されたセクション、たとえば、メッセージのヘッダを検査することによって決定され得る。
【０２３９】
メッセージが即時処理バイトを有する場合、ノードは、それぞれのバッファ
【０２４０】
【数５２】
2018029326.tif 000054
【０２４１】
中のデータを処理して１１１０、バッファ
【０２４２】
【数５３】
2018029326.tif 000055
【０２４３】
に記憶されたコンテンツのそれぞれのタイプのすべてのコンテンツをアグリゲートし、アグリゲートされたコンテンツを含む発信メッセージに即時処理バイトを追加し１１１２、次の利用可能な時間スロット中に発信メッセージを送る１１１４。利用可能な時間スロットは、プレミアム時間スロットであるか、またはノードのためにそれぞれのコンテンツタイプの送信がスケジュールされた時間スロットである。したがって、メッセージがプレミアム時間スロット中に送られ得ても、次のプレミアム時間スロットの前に次のスケジュールされた時間スロットがスケジュールされている場合、メッセージはこれの中で送られる。２つのノードがプレミアム時間スロット中に時間クリティカルメッセージを送信することを試みた場合、どのノードがプレミアム時間スロットを割り当てられるかを決定するために競合機構（たとえばＣＳＭＡ）が使用される。プレミアム時間スロットを割り当てられないノードはバックオフし、次の利用可能な時間スロットを待つ。
【０２４４】
発信メッセージが送られた後に、ノードは、送信が成功であったかどうか（たとえば、発信メッセージを受信したノードからメッセージ受信肯定応答が受信されたかどうか）を決定する１１１６。そうでない場合、ノードは、発信メッセージを再送信すべきかどうか（たとえば、あらかじめ定義された数の失敗した送信試行が行われたかどうか）を決定する１１１８。ノードが再送信することを決定した場合、ノードはステップ１１１４にループバックして、再び信号を送ることを試みる。そうでない場合、ノードはステップ１１０４にループバックして、さらなるメッセージを待つ。
【０２４５】
メッセージが即時処理バイトを有しない場合、ノードはメッセージが時間クリティカルでないと決定し、ノードは、のそれぞれのタイプのための処理タスクが、現在時間の間にスケジュールされた
【０２４６】
【数５４】
2018029326.tif 000056
【０２４７】
であったかどうかを決定する１１２０。
【０２４８】
コンテンツのそれぞれのタイプのために処理タスク
【０２４９】
【数５５】
2018029326.tif 000057
【０２５０】
がスケジュールされていない場合、コンテンツの
【０２５１】
【数５６】
2018029326.tif 000058
【０２５２】
それぞれのタイプＣkのためのバッファが満杯であるかどうかが決定される１１２１。そうである場合、それぞれのバッファ
【０２５３】
【数５７】
2018029326.tif 000059
【０２５４】
中のデータのすべては、同じコンテンツタイプＣkのすべてのコンテンツをアグリゲートするように処理される１１２２。
【０２５５】
コンテンツのそれぞれのタイプのために処理タスク
【０２５６】
【数５８】
2018029326.tif 000060
【０２５７】
がスケジュールされている場合、それぞれのバッファ
【０２５８】
【数５９】
2018029326.tif 000061
【０２５９】
中のデータのすべては、同じコンテンツタイプＣkのすべてのコンテンツをアグリゲートするように処理される１１２２。
【０２６０】
バッファ中のデータが処理された後に１１２２、ノードは次の利用可能な時間スロットを待つ。次いで、次の利用可能な時間スロットがプレミアム時間スロットであるかどうかが決定される１１２４。そうでない場合、利用可能な時間スロットはそのタイプのコンテンツのスケジュールド送信であり、したがって、アグリゲートされたデータを備える発信メッセージが、そのデータを受信するようにスケジュールされたノードに送られる１１２６。
【０２６１】
次の利用可能な時間スロットがプレミアム時間スロットである場合、ノードは、何らかの緊急（時間クリティカル）メッセージが受信されたかどうかを決定する１１２８。すなわち、メッセージがノードに宛てられているか否かにかかわらず、即時処理バイトを含む何らかのメッセージ、検出されたかどうかが決定される。緊急メッセージが検出された場合、ノードは、緊急メッセージがプレミアム時間スロット上で送られることを可能にするためにバックオフし、別の利用可能な時間スロットを待つ。したがって、ノードは１１２４にループバックして、次の利用可能な時間スロットがプレミアム時間スロットであるかどうかを決定する。
【０２６２】
緊急メッセージが検出されなかった場合、ノードは、時間スロットの使用について競合するためにキャリア検知多重アクセス／衝突回避（ＣＳＭＡ／ＣＡ：carrier sensing multiple access with collision avoidance）を開始する１１３０。ノードがチャネルを介して送信可能である場合、メッセージが送られる１１２６。そうでない場合、ノードはステップ１１２４に戻って、次の利用可能な時間スロットを見つけ、それがプレミアム時間スロットであるかどうかを決定する。
【０２６３】
メッセージが送られると、ノードは、送信が成功であったか否かを決定する１１３２。そうである場合、ノードはステップ１１０４に戻って、新しいメッセージを待つ。そうでない場合、ノードは、メッセージを再送信すべきかどうかを決定する。そうである場合、ノードはステップ１１２４に戻って、次の利用可能な時間スロットを見つけ、それがプレミアム時間スロットであるかどうかを決定する。そうでない場合、ノードはステップ１１０４に戻って、新しいメッセージを待つ。
【０２６４】
したがって、上記の方法は、時間クリティカルメッセージを優先させる効率的な手段を提供する。
【０２６５】
ネットワーク性能
提案されるＣＯＮＣＩＳＥ手法は、シミュレーションを介して評価され、以下の２つのシステムと比較された。  
１．      システム１：ＲＰＬ＋ＡＭＵＳ（ＲＡ）  
２．      システム２：ＲＰＬ＋ＡＭＵＳ＋データアグリゲーション（ＲＡＡ）
【０２６６】
ＲＰＬは、低電力およびロッシーネットワークのための規格化されたルーティングプロトコルであり、ＡＭＵＳは、コンテンツ固有のスケジューリングを実装しない６ＴｉＳＣＨ規格のために提案されたスケジューリングアルゴリズムである。ネットワーク上の平均トラフィックは、１００ｍｓごとにノードにつき２パケットであった。平均リンク品質は７０％の成功受信比になった。
【０２６７】
図１２は、２つの代替システム（ＲＡおよびＲＡＡ）に対するトラフィック低減に関するアレンジメント（ＣＯＮＣＩＳＥ）の性能を示す。ＣＯＮＣＩＳＥは、アグリゲーションなしのＲＡと比較してネットワーク内のデータアグリゲーションを介してネットワークトラフィックを４１．１％だけ低減することが観察できよう。さらに、ＣＯＮＣＩＳＥはデータアグリゲーションを可能にするためにコンテンツ中心ルーティングを使用するので、データアグリゲーションが使用可能であるがすべてのタイプのコンテンツのためにただ１つのルーティング経路が選択されるＲＡＡシステムと比較して、トラフィックの２８．７％低減が達成される。特に、ＣＯＮＣＩＳＥは、ＲＡと比較して内側レイヤにおけるトラフィックをほぼ６５％だけ大幅に低減することが可能であり、これは、スケジューリング段階中に大きい影響を及ぼすことができる。
【０２６８】
図１３（ａ）および図１３（ｂ）は、アレンジメント（ＣＯＮＣＩＳＥ）と２つの代替システム（ＲＡおよびＲＡＡ）とについての増加するネットワークサイズのトラフィックおよびパケット配信比を示す。トラフィック低減に関するＣＯＮＣＩＳＥの性能は、ネットワークがスケールアップすると一層良くなることがわかる。同様に、ＣＯＮＣＩＳＥは、ネットワークが２０個未満のノードを有するときに極めて高いパケット配信比（９９．９％）を有する。ノードの数が増加したとき、ＣＯＮＣＩＳＥは、他の２つのシステムよりも優れた性能を示し続ける。
【０２６９】
図１４（ａ）および図１４（ｂ）は、ＣＯＮＣＩＳＥ、ＲＡおよびＲＡＡシステムにおける多数のノードに対するネットワーク通信レイテンシを示す。図１４（ｂ）は図１４（ａ）と同じデータを示すが、ｙ軸（遅延）上のスケールがより微細である。ネットワーク内データアグリゲーションのため、ＣＯＮＣＩＳＥとＲＡＡの両方は、ネットワークが４０個よりも多くのノードを有するとき、ＲＡと比較して１０分の１未満のレイテンシを有する。明らかに、データアグリゲーションなしでは、ネットワークのスケーラビリティは極めて限られる。さらに、データアグリゲーションを用いたＲＡＡと比較して、ＣＯＮＣＩＳＥは、コンテンツ中心ルーティングを介してトラフィックをさらに低減する。したがって、ＣＯＮＣＩＳＥシステムは、２つの代替システムよりも少ない通信レイテンシを有する。
【０２７０】
図１５（ａ）および図１５（ｂ）は、ＣＯＮＣＩＳＥ、ＲＡおよびＲＡＡシステムのためのネットワークトラフィックに対するパケット配信比およびネットワーク通信レイテンシを示す。ＲＡシステムの性能は、ネットワークトラフィックが増加するとパケット配信比とレイテンシの両方に関して著しく低下することが明らかに示されている。一方、データアグリゲーションのため、ＣＯＮＣＩＳＥおよびＲＡＡシステムは増加したトラフィックを良好に処理する。ＣＯＮＣＩＳＥシステムは、ＲＡＡシステムと比較して、パケット配信比のさらに４〜５％の改善と、レイテンシの２０％低減とを有する。
【０２７１】
本明細書で提案されるアレンジメントは、スケジューリングを介して決定性でタイムリーな様式でデータをルーティングおよびアグリゲートする新規の手段を提供する。ネットワークトラフィックフローはそれのコンテンツによって区別され、したがって、提案されるコンテンツルートマネージャ（ＣＲＭ）およびコンテンツスケジュールマネージャ（ＣＳＭ）は、通信処理とデータ処理の両方のためにコンテンツベースのオーバーレイドルーティング経路とコンテンツ固有のスケジュールとを提供することが可能である。スケジューリング機構の決定性性質はレイテンシおよび信頼性の保証を提供することができ、それにより、それは産業応用に適したものになる。提案されるアレンジメントは規格に準拠し、ＩＥＥＥ  ８０２．１５．４ｅ  ＴＳＣＨ  ＭＡＣに基づく最新のＩＥＴＦ  ６ＴｉＳＣＨ規格において使用され得る。とはいえ、アレンジメントは、任意のＴＤＭＡ  ＭＡＣベースの通信プロトコルのためのスケジューリングソリューションとしても使用され得る。
【０２７２】
ネットワークトラフィックは、コンテンツ中心ルーティングの直接的な利益として著しく低減され、このことは、トラフィック輻輳を回避し、通信レイテンシを低減し、干渉を低減し、通信信頼性を高めるのに役立つことができる。ＣＲＭとＣＳＭとの間のクロスレイヤ相互作用は、特にマルチホップワイヤレスネットワークの内側レイヤにおいてトラフィック負荷バランシングを実現することができ、したがって全体的な遅延を低減する。
【０２７３】
コンテンツ依存の即時処理バイトと、コンテンツ非依存のプレミアム時間スロット予約機構とは、処理および通信リソースを効率的に使用するための効果的な方法を提供する。特に、緊急メッセージ（たとえばアラームまたはプロセス障害メッセージ）が、すべての可能なリソースを使用してネットワーク上で迅速に配信され得る。
【０２７４】
したがって、アレンジメントは、改善されたネットワーク効率と、低減された通信レイテンシと、改善された信頼性とを提供する。
【０２７５】
代替アレンジメント
上記のアレンジメントではネットワークコントローラがネットワークトポロジーを決定するが、ネットワークトポロジーは、別のデバイス（たとえば、ハブなど、ネットワーク自体の中のデバイス）によって決定され、ネットワークコントローラに転送され得る。同様に、ネットワークコントローラは、たとえばハブノードとして、ネットワークの一部を形成し得る。
【０２７６】
本明細書で説明するネットワークレイヤについては、主にハブまでの最小ホップ距離に関して説明したが、レイヤは、リンク品質および処理能力など、他の基準に基づいて決定され得る。したがって、必ずしもハブに対してより近くにあるとは限らないノードは、それらを介してデータがルーティングされることを促進するために優先的に下位レイヤ中に配置され得る。
【０２７７】
図３に示されているネットワークコントローラおよびノードは合成された入力／出力インターフェース（図３（ｂ）では入力／出力ワイヤレスインターフェース）を有するが、これらのインターフェースは別個の入力端末および出力端末として実装され得る。
【０２７８】
いくつかのアレンジメントについて説明したが、これらのアレンジメントは例として提示されるものにすぎず、本発明の範囲を限定するものではない。実際は、本明細書で説明した新規の方法およびデバイスは様々な他の形態で実施され得る。さらに、本明細書で説明した方法およびシステムの形態における様々な省略、置換および変更が行われ得る。
【図１】
2018029326.tif 000062
【図２】
2018029326.tif 000063
【図３】
2018029326.tif 000064
【図４】
2018029326.tif 000065
【図５】
2018029326.tif 000066
【図６】
2018029326.tif 000067
【図７】
2018029326.tif 000068
【図８】
2018029326.tif 000069
【図９】
2018029326.tif 000070
【図１０】
2018029326.tif 000071
【図１１】
2018029326.tif 000072
【図１２】
2018029326.tif 000073
【図１３】
2018029326.tif 000074
【図１４】
2018029326.tif 000075
【図１５】
2018029326.tif 000076
【外国語明細書】
2018029326000001.pdf