(57)【要約】  複数のメッシュノードを含むメッシュネットワークにおけるメッシュノードの再送回数を更新する方法であって、当該再送回数は当該メッシュノードが当該メッシュネットワーク内で受信したメッセージを再送する頻度を定義し、当該方法は、当該メッシュノードによって、ある数のデータメッセージを受信することであって、当該データメッセージの各々が、同じソースメッシュノードから発信され、当該メッシュネットワークにおける同じ宛先メッシュノードを対象とすることと、当該メッシュノードによって、当該再送回数に基づいて当該数のデータメッセージの各々を送信することと、当該メッシュノードによって、ある数の確認応答メッセージを受信することであって、各確認応答メッセージは当該ＲＤメッシュノードから発信され、当該第１の数のデータメッセージの特定のデータメッセージの受信に確認応答する、ことと、当該メッシュノードによって、当該データメッセージの数に基づいて、かつ、当該確認応答メッセージの数に基づいて、当該再送回数を更新することを含む。本発明による方法を実行するための相補的なデバイスもまた、本明細書に提示される。【選択図】図１
2021500798.tif 000002
【特許請求の範囲】
【請求項１】
複数のメッシュノードを含むメッシュネットワークにおけるメッシュノードに対する再送回数を更新する方法であって、前記再送回数は、前記メッシュノードが前記メッシュネットワーク内で受信したメッセージを再送する頻度を定義し、前記方法は、
- 前記メッシュノードによって、確認応答を期待するある数のデータメッセージを受信することであって、前記データメッセージの各々は、同じソースメッシュノードから発信され、前記メッシュネットワークにおける同じ宛先メッシュノードを対象とする、ことと、
- 前記メッシュノードによって、前記再送回数に基づいて前記数のデータメッセージの各々を送信することと、
- 前記メッシュノードによって、ある数の確認応答メッセージを受信することであって、各確認応答メッセージは、前記宛先メッシュノードから発信され、当該第１の数のデータメッセージの特定のデータメッセージの受信に確認応答する、ことと、
- 前記メッシュノードによって、前記データメッセージの数に基づいて、かつ、前記確認応答メッセージの数に基づいて、前記再送回数を更新すること、
を含む、方法。
【請求項２】
請求項１に記載の方法であって、前記数のデータメッセージを受信することは、
- 前記メッシュノードによって、受信されたメッセージがデータメッセージであることを、前記受信されたメッセージにおいて、
- ネットワーク層の宛先（ＤＳＴ）フィールドがユニキャストアドレスであること、
- ネットワーク層ネットワーク制御メッセージ指示（ＣＴＬ）フィールドが０に設定されていること、
- 下位トランスポート層セグメント指示ビット（ＳＥＧ）が１に設定されていること、
のいずれかを識別することによって決定することを含む、方法。
【請求項３】
請求項１または２に記載の方法であって、前記数の確認応答メッセージを受信することは、
前記メッシュノードによって、受信されたメッセージが確認応答メッセージであることを、前記受信されたメッセージにおいて、
- ネットワーク層ネットワーク制御メッセージ指示（ＣＴＬ）フィールドが１に設定されていること、
- 下位トランスポート層セグメント指示ビット（ＳＥＧ）が０に設定されていること、
- 下位トランスポート層オペコードが０に設定されていること、
のいずれかを識別することによって決定することを含む、方法。
【請求項４】
請求項１から３のいずれか１項に記載の方法であって、前記メッシュノードによって、前記再送回数を更新することは、
- 前記メッシュノードによって、前記確認応答メッセージの数と前記データメッセージの数との間の比である信頼性閾値を決定することと、
- 前記メッシュノードによって、前記決定された信頼性閾値が０でないときに前記信頼性閾値を所定の閾値と比較し、前記信頼性閾値が０であるときに前記再送回数を０に設定することと、
- 前記メッシュノードによって、前記信頼性閾値が前記所定の閾値を下回る場合に前記再送回数を増加させ、前記信頼性閾値が前記所定の閾値を上回る場合に前記再送回数を減少させること、
を含む、方法。
【請求項５】
請求項４に記載の方法であって、前記所定の閾値は、０．７〜０．９、好ましくは約０．８である、方法。
【請求項６】
請求項１から５のいずれか１項に記載の方法であって、前記メッシュノードはメモリを備え、前記方法は、
- 前記メッシュノードによって、前記メモリに、受信されたデータメッセージを格納すること、
- 前記メッシュノードによって、任意の受信された確認応答メッセージを前記メモリに格納されたデータメッセージと相関させること、
を含む、方法。
【請求項７】
請求項１から６のいずれか１項に記載の方法であって、前記ネットワークはBluetoothメッシュ型のネットワークである、方法。
【請求項８】
複数のメッシュノードを含むメッシュネットワークにおけるメッシュノードに対する再送回数を更新する前記メッシュノードであって、前記再送回数は、前記メッシュノードが前記メッシュネットワーク内で受信したメッセージを再送する頻度を定義し、前記メッシュノードは、
- 確認応答を期待するある数のデータメッセージを受信するために構成された受信装置であって、前記データメッセージの各々は、同じソースメッシュノードから発信され、前記メッシュネットワークにおける同じ宛先メッシュノードを対象する、受信装置と、
- 前記再送回数に基づいて前記数のデータメッセージの各々を送信するために構成された送信装置と、を備え
前記受信装置は、さらに、ある数の確認応答メッセージを受信するために構成され、ここで、各確認応答メッセージは、前記宛先メッシュノードから発信され、当該第１の数のデータメッセージの特定のデータメッセージの受信に確認応答し、前記メッシュノードは、さらに、
- 前記データメッセージの数に基づいて、かつ、前記確認応答メッセージの数に基づいて、前記再送回数を更新するために構成されたプロセッサ、
を備える、メッシュノード。
【請求項９】
請求項８に記載のメッシュノードであって、前記受信装置は、さらに、
- 受信されたメッセージがデータメッセージであることを、前記受信されたメッセージにおいて、
- ネットワーク層の宛先（ＤＳＴ）フィールドがユニキャストアドレスであること、
- ネットワーク層ネットワーク制御メッセージ指示（ＣＴＬ）フィールドが０に設定されていること、
- 下位トランスポート層セグメント指示ビット（ＳＥＧ）が１に設定されていること、
のいずれかを識別することによって決定するために構成される、メッシュノード。
【請求項１０】
請求項８または９に記載のメッシュノードであって、前記受信装置は、さらに、
前記メッシュノードによって、受信されたメッセージが確認応答メッセージであることを、前記受信されたメッセージにおいて、
- ネットワーク層ネットワーク制御メッセージ指示（ＣＴＬ）フィールドが１に設定されていること、
- 下位トランスポート層セグメント指示ビット（ＳＥＧ）が０に設定されていること、
- 下位トランスポート層オペコードが０に設定されていること、
のいずれかを識別することによって決定するために構成される、メッシュノード。
【請求項１１】
請求項８から１０のいずれか１項に記載のメッシュノードであって、前記プロセッサは、
- 前記確認応答メッセージの数と前記データメッセージの数との間の比である信頼性閾値を決定することと、
- 前記決定された信頼性閾値が０でないときに前記信頼性閾値を所定の閾値と比較し、前記信頼性閾値が０であるときに前記再送回数を０に設定し、
- 前記信頼性閾値が前記所定の閾値を下回る場合に前記再送回数を増加させ、前記信頼性閾値が前記所定の閾値を上回る場合に前記再送回数を減少させる、
ために構成される、メッシュノード。
【請求項１２】
請求項１１に記載のメッシュノードであって、前記所定の閾値は、０．７〜０．９、好ましくは約０．８である、メッシュノード。
【請求項１３】
請求項８から１２のいずれか１項に記載のメッシュノードであって、前記メッシュノードはメモリを備え、前記プロセッサは、さらに、
- 前記メモリに、受信されたデータメッセージを格納し、
- 前記メッシュノードによって、任意の受信された確認応答メッセージを前記メモリに格納されたデータメッセージと相関させる、
ために構成される、メッシュノード。
【請求項１４】
少なくとも１つのプロセッサ上で実行されると、前記少なくとも１つのプロセッサに、請求項１から７のいずれか１項に記載の方法を実行させる命令を含む、非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、無線メッシュネットワークに関し、より具体的には、メッシュネットワークの特定のメッシュノードの再送回数を更新する方法に関する。
【背景技術】
【０００２】
無線メッシュネットワーク（ＷＭＮ）は、メッシュトポロジーに編成された複数のメッシュノードを含む。ここで、各メッシュノードは、データを次のメッシュノードに転送することによる、ある種のプロバイダーでもある。ネットワークインフラストラクチャは、各メッシュノードが隣接するメッシュノードに送信することができるだけでよいので、分散化され、単純化される。そのような無線メッシュネットワークは、遠隔地に住む人々と、地方の近隣で動作する小規模企業とが、手頃なインターネット接続のためにそれらのネットワークを互いに接続することを可能にすることができる。
【０００３】
無線メッシュネットワークは、自己形成および自己回復することができる。これらのネットワークは、８０２．１１、８０２．１５、８０２．１６、セルラ技術を含む種々の無線技術によって実現することができ、特定の技術またはプロトコルに制限される必要はない。
【０００４】
低電力無線技術は、メッシュネットワークトポロジを使用して、ネットワークカバレッジおよび柔軟性を増大させる。メッシュネットワークは、パケットを転送し、最終的には互いに無線範囲外にあるノード間の通信を可能にする能力を有するマシンデバイス、例えばセンサおよびアクチュエータ、ならびに中継ノードからなる。
【０００５】
最も単純で最も簡単なネットワーキング方法は、フラッディング（ｆｌｏｏｄｉｎｇ）である。フラッディングネットワークでは、パケットを受信する各中継機がそれを転送する。この方法は、ネットワークトポロジの変更に対してロバスト性がある。また、このアプローチは、通常、メモリおよび計算リソースの点で制約される低電力ネットワークにおけるデバイスの特性によく適合する。
【０００６】
ライセンスされていない帯域で動作する低電力メッシュネットワークでは、各ノードからの各送信が無線チャネル上で他のノード送信との干渉または衝突を引き起こす可能性がある。より多くのトラフィックがネットワークに注入されるほど、より多くの干渉および衝突が起こり、その結果、パケットが失われる。
【０００７】
ユニキャスト送信のために、技術は典型的に、信頼できるホップ・バイ・ホップ通信を保証するためにリンク層確認応答を供給する。一方、メッシュでは、送信はしばしば、いくつかの受信機を有し、データはしばしば、ブロードキャストされる。ブロードキャスト無線メッシュネットワークにおける信頼性を高める典型的な方法は、オリジナルの試みが失われた場合に、ブロードキャスト送信を複数回盲目的に繰り返すことである。
【０００８】
２０１７年７月に正式に発売されたBluetoothメッシュは、ＩｏＴ（Internet of Things）接続空間に加え、非常に期待されているものである。この解決策は、１組の共有チャネル、すなわちアドバタイズメント（広告）チャネルを介したブロードキャストを使用するフラッディングに基づく。
【０００９】
アプリケーションは、事前定義されたBluetoothモデルに関連付けられたデータメッセージを生成する。上位トランスポート層は、制御機能と共に、アプリケーションメッセージの暗号化と認証を提供する。下位トランスポート層は、セグメント化されたメッセージの受信を確認応答するためのエンド・ツー・エンドセグメント確認応答メッセージの送信を含む、セグメント化および再組立機能を提供する。セグメント確認応答は、セグメント化されたパケットに必須であるが、単一のセグメント化されたメッセージで送信されるとき、オプションでショートパケットを確認応答するために使用できる。ネットワーク層は、適切なベアラ（Bluetooth Core v4.0コントローラなど）を介してメッセージを転送する。
【００１０】
Bluetoothメッシュネットワークで中継機として機能するノードは、メッシュパケットのアドバタイズメントチャネルをスキャンする。パケットが検出されて受信されると、ノードはパケットの宛先であるかどうかを確認する。Ｙｅｓの場合、パケットの内容は処理されるアプリケーションに送信される。ノードがパケットの宛先でない場合、ノードはパケットを受信して転送したかどうかをネットワークキャッシュにおいて確認する。Ｙｅｓの場合、パケットは破棄される。それ以外の場合、パケットはノードの隣接機器が受信できるように、アドバタイズメントチャネルを介して再送（再送信）することによって、メッシュネットワーク内で転送される。典型的には、衝突を避けるためにパケットを転送する前に、あるランダム遅延が導入される。この分散メカニズムの手段では、パケットが宛先に到着するまで、ネットワーク内のノードからノードにパケットが転送される。無限の再送を伴うループを回避するために、いくつかの制約が適用される。メッセージが以前に受信されているか、または設定された回数（Ｔｉｍｅ−ｔｏ−Ｌｉｖｅ）より多く中継されている場合、それは廃棄される。しかし、小規模展開では、すべてのノードが最終的にネットワークで生成されたメッセージを受信することが期待される。さらに、各メッセージは成功確率を高めるために、発信者および中継機によって複数回送信される。
【００１１】
Bluetoothメッシュネットワークにおけるメッセージは、２レベルの認証および暗号化メカニズムで保護される。１つの鍵は、ネットワーク層ペイロードをセキュアにするために使用され、ネットワークに属するすべてのノードに知られている。上部トランスポート層は異なる鍵を使用して、アプリケーションデータを認証し、暗号化する。この鍵は、同じアプリケーションを共有するノード間でのみ共有される。アプリケーション鍵をネットワーク鍵から分割する目的は、中間ノードを介してアプリケーションデータを送信できるようにし、中間ノードがアプリケーションデータを読み取ったり変更したりしなくても、それらが中継されるときにこれらのメッセージを認証できるようにすることである。例えば、電球はドアのロックを解除できないはずである。ノードは、アプリケーション鍵を知る必要はなくても。したがって、アプリケーションデータを変更したり理解したりすることはできくても、ネットワーク鍵を使用してアプリケーションメッセージを中継できる。
【００１２】
既存の概念の欠点の一つは、転送されたメッセージが正常に配送されたか否かをローカルに決定するために、特定のメッシュノードで利用可能な情報がないことである。
【発明の概要】
【００１３】
本発明の目的は、複数のメッシュノードを含むメッシュネットワークにおいて、メッシュノードに対する再送回数（再送の数）を更新する方法を提供することである。
【００１４】
他の目的は、追跡する再送回数を更新するように構成されたメッシュノードを提供することである。
【００１５】
第１の態様において、複数のメッシュノードを含むメッシュネットワークにおいて、メッシュノードに対する再送回数を更新する方法が提供され、ここで、再送回数は、メッシュノードがメッシュネットワーク内で受信したメッセージを再送する頻度を定義する。
【００１６】
方法は、メッシュノードによって、確認応答を期待するある数のデータメッセージ（いくつかのデータメッセージ）を受信するステップを含み、データメッセージの各々は、同じソースメッシュノードから発信され、メッシュネットワークにおける同じ宛先メッシュノードを対象とする。
【００１７】
さらなるステップでは、方法は、メッシュノードによって、再送回数に基づいて複数のデータメッセージの各々を送信するステップを含む。
【００１８】
別のステップでは、方法は、メッシュノードによって、ある数の確認応答メッセージ（いくつかの確認応答メッセージ）を受信するステップを含み、各確認応答メッセージは、宛先メッシュノードから発信され、第１の数のデータメッセージの特定のデータメッセージの受信に確認応答する。
【００１９】
さらに別のステップでは、方法は、メッシュノードによって、データメッセージの数に基づいて、かつ、確認応答メッセージの数に基づいて、再送回数を更新するステップを含む。
【００２０】
メッシュネットワークではしばしば、再送回数はメッシュノードのプロビジョニング段階中に事前に設定され、静的に割り当てられるが、展開され、動作するメッシュネットワークの動的性を考慮しないことがわかった。再送回数の過大評価はネットワークにおける増加した輻輳（混雑）のために、ネットワーク性能を劣化させる可能性がある。
【００２１】
アプリケーション層では、宛先メッシュノードからのステータスメッセージの受信が送信元の発信元、または要求／設定メッセージの送信元メッシュノードによって、そのメッセージのエンド・ツー・エンドの確認応答として解釈される。しかしながら、メッセージは、下位トランスポート層までの中間メッシュノードによってのみ処理され、アプリケーション層コンテンツはメッセージのソースメッシュノードと宛先によってのみ復号化されるので、この情報はネットワークの中間メッシュノードでは利用できないかもしれない。
【００２２】
その結果、メッシュノードが実際の必要性に基づいてネットワーク層送信の数を自己調整することを可能にするメッシュネットワークにおけるメカニズムが適所に存在しない可能性がある。
【００２３】
上記に続いて、本開示は、メッシュノードがソースメッシュノードおよび宛先メッシュノードペアのメッセージ受信統計を収集し、それらの統計に基づいて送信動作を調整するためのメッシュノードのためのメカニズムを導入する。
【００２４】
本開示によれば、特定のメッシュノードは、メッシュネットワークにおける任意のメッシュノードからデータメッセージを受信することができる。特定のメッシュノードは、同じメッシュノードから、または複数のメッシュノードから、同じデータメッセージを数回受信することさえ可能である。
【００２５】
このような場合、メッシュノードは、受信したデータメッセージをメモリに格納することを決定してもよい。同じデータメッセージが例えば、同じメッシュノードまたは異なるメッシュノードから再び受信される度に、データメッセージがすでにメモリ内に存在するので、データメッセージがすでに受信されていると判断される。特定のデータメッセージは、たとえ同じデータメッセージが特定のメッシュノードによって複数回受信されても、一度だけ受信されると考えることができる。そのため、各データメッセージは、特定のメッシュノードで受信されるか、または受信されていない。
【００２６】
上記と同じ推論が、宛先メッシュノードによってソースメッシュノードに送信される確認応答メッセージに適用可能である。メッシュネットワークにおける特定のメッシュノードは、たとえその特定の確認通知メッセージが同一または異なるメッシュノードから複数回受信されたとしても、確認通知メッセージが一度だけ受信されたと考えることができる。
【００２７】
上記の例によれば、受信した確認応答メッセージの数は、受信したデータメッセージの数を超えることはできない。このように、受信したデータメッセージに対する受信した確認応答メッセージの比率は、ゼロと１の間であり得る。
【００２８】
上述の方法の利点は、メッシュネットワークの信頼性が向上し、媒体の輻輳が低減されることである。
【００２９】
本開示による実施形態では、ある数のデータメッセージ（いくつかのデータメッセージ）を受信するステップは、メッシュノードによって、受信されたメッセージがデータメッセージであることを、当該受信されたメッセージにおいて、ネットワーク層の宛先（ＤＳＴ）フィールドがユニキャストアドレスであること、ネットワーク層ネットワーク制御メッセージ指示ビット（ＣＴＬ）がゼロに設定されていること、および／または下位トランスポート層セグメント指示ビット（ＳＥＧ）フィールドが１に設定されていることのいずれかを識別することによって、決定することを含む。
【００３０】
ＤＳＴフィールドは、ネットワークプロトコルデータユニット（ＰＤＵ）が向けられる１つまたは複数の要素を識別する１６ビット値である。このアドレスは、ユニキャストアドレス、グループアドレス、または仮想アドレスとする。ＤＳＴフィールドは、発信元ノードによって設定され、リレーノードとして動作するノードのネットワーク層には影響されない。ＣＴＬフィールドは、メッセージが制御メッセージの一部であるかアクセスメッセージの一部であるかを決定するために使用される１ビット値である。ＣＴＬフィールドが０に設定されている場合、下位トランスポートＰＤＵはアクセスメッセージを含む。下位トランスポートＰＤＵの最初のオクテットの最上位ビットはＳＥＧフィールドであり、これは下位トランスポートＰＤＵがセグメント化されたか、または非セグメント化されたメッセージとしてフォーマットされているかを決定するために使用される。
【００３１】
したがって、ＣＴＬビットが０にセットされ、ＳＥＧビットが１に設定されると、下位トランスポートＰＤＵがセグメントアクセスメッセージであることが一緒に定義される。このフォーマットは、宛先ノードに送信されるデータメッセージに固有であると決定される。さらに、下位トランスポート層ＳＥＧビットが１に設定されているメッセージを受信しているノードは、対応する確認応答メッセージが期待されることを理解する。
【００３２】
上記のフィールドのいずれか１つ以上を検査して、受信されたメッセージがデータメッセージであることを識別することができる。しかしながら、ロバスト性を改善するために、上述した全てのフィールドを検査することが有益であり得る。さらに、上述のフィールドは、Bluetoothメッシュパケットに典型的であることに留意されたい。
【００３３】
メッシュノードは、受信されたメッセージがデータメッセージであると判断すると、メッシュノードは、同じデータメッセージが以前に当該ノードによって受信されたかどうかを確認する。受信されていない場合、ローカルコピーがキャッシュメモリに記憶され得、受信されたデータメッセージの数を１インクリメントするためにカウンタが起動される。確認の後、ノードがデータメッセージを受信済みであると判断した場合、そのメッセージは破棄される可能性がある。
【００３４】
受信されたデータメッセージの別個のカウントが、ノードの異なる発信元−宛先ペアに関連するメッセージについて維持されることを理解されたい。さらに、言及されたすべてのフィールドは、アプリケーション鍵によって暗号化されておらず、ネットワークにおこえるどのノードからも見えるメッセージの部分において呼び出されることに留意されたい。
【００３５】
前述したように、メッシュネットワークにおけるメッセージは、２レベルの認証および暗号化メカニズムで保護することができる。１つの鍵はネットワーク層ペイロードをセキュアにするために使用され、ネットワークに属するすべてのノードに知られている。上部トランスポート層は異なる鍵を使用して、アプリケーションデータを認証し、暗号化する。この鍵は、同じアプリケーションを共有するノード間でのみ共有される。この原則を使用して、任意の中間ノードは受信されたメッセージがデータメッセージ（すなわち、ソースメッシュノードから発信され、宛先メッシュノードに向けられたメッセージ）、または確認応答メッセージ（すなわち、データメッセージの受信を確認応答するための、宛先メッシュノードから発信され、ソースメッシュノードに向けられたメッセージで）あるかどうかを少なくとも決定することができる。
【００３６】
本開示の一実施形態によれば、ある数の確認応答メッセージ（いくつかの確認応答メッセージ）を受信するステップは、メッシュノードによって、受信されたメッセージが確認応答メッセージであることを、当該受信されたメッセージにおいて、ネットワーク層ＣＴＬフィールドが１に設定されていること、下位トランスポート層ＳＥＧフィールドがゼロに設定されていること、および／または、下位トランスポート層オペコードがゼロに設定されていることのいずれかを識別することによって、決定することを含む。
【００３７】
受信されたメッセージをデータメッセージとして識別するのと同様に、ネットワーク層ＣＴＬ、下位トランスポート層ＳＥＧおよび／または下位トランスポート層オペコードの１つ以上のフィールドを検査することによって、受信されたメッセージが確認応答メッセージであると識別され得る。ＣＴＬビットが１に設定され、ＳＥＧビットが０に設定されている場合、下位のトランスポートＰＤＵが非セグメント制御メッセージであることが定義される。さらに、０のオペコードは、セグメント化されていない制御メッセージがセグメント確認応答メッセージであることを示す。好ましくは、オペコードは１６進形式であり、０ｘ００として指定される。
【００３８】
上記のフィールドのいずれか１つ以上を検査して、受信されたメッセージがデータメッセージであることを識別することができる。しかしながら、ロバスト性を改善するために、上述した全てのフィールドを検査することが有益であり得る。例えば、０ｘ００だけのオペコードは、受信されたメッセージがセグメント確認応答メッセージであることを決定するが、ＣＴＬおよびＳＥＧビットをさらに確認することは、本開示による方法のロバスト性を改善する。
【００３９】
ブロックＡＣＫフィールドは、下位トランスポートパケットデータユニット（ＰＤＵ）すなわち、セグメント化されたメッセージのセグメントが確認される情報を含む確認メッセージ内に存在することができる。代替案では、単一の確認応答メッセージが１度に複数のセグメントに確認応答することもでき、これは再送の量を決定するときに考慮に入れることができる。
【００４０】
ノードは、受信されたメッセージが確認応答メッセージであると決定すると、ノードは、同じ確認応答メッセージがノードによって以前に受信されたかどうかを確認することができる。受信されていない場合、受信された確認応答メッセージが対応するデータメッセージは確認応答としてマークされ、受信された確認応答メッセージの数を１ずつインクリメントするためにカウンタが起動され得る。確認の後、ノードがデータメッセージを受信済みであると判断した場合、そのメッセージは破棄される可能性がある。
【００４１】
受信されたデータメッセージの別個のカウントは、ノードの異なる起点−宛先ペアに関連するメッセージに対して維持され得ることが理解され得る。さらに、言及されたすべてのフィールドは、アプリケーション鍵によって暗号化されておらず、ネットワーク内のどのノードからも見えるメッセージの部分において呼び出されることに留意されたい。
【００４２】
本開示の一実施形態によれば、メッシュノードによって、再送回数を更新するステップは、当該メッシュノードによって、確認応答メッセージの数とデータメッセージの数との間の比である信頼性閾値を決定することと、当該メッシュノードによって、当該信頼性閾値を、当該決定された信頼性閾値がゼロでないときに所定の閾値と比較することと、当該信頼性閾値がゼロであるときに当該再送回数をゼロに設定し、当該メッシュノードによって、当該信頼性閾値が当該所定の閾値を下回る場合に当該再送回数を増加させ、当該信頼性閾値が当該所定の閾値を上回る場合に当該再送回数を減少させることとを含む。
【００４３】
信頼性閾値は、受信された確認応答メッセージの数と受信されたデータメッセージの数との間の比として計算される。データメッセージと確認応答メッセージの後続のコピーは破棄されるので、受信した確認応答メッセージの数は、受信したデータメッセージの数より大きくなることはない。その結果、信頼性閾値は最大値１となる。
【００４４】
決定された信頼性閾値は、所定の閾値と比較される。信頼性閾値が所定の閾値よりも低い場合には再送回数が増加され、信頼性閾値が所定の閾値よりも高いことが分かった場合には再送回数が減少される。信頼性閾値が所定の閾値に等しいことがわかった場合、再送回数は調整されないことを理解されたい。
【００４５】
もしノードがネットワークにおける弱い通信リンクを持っているなら、送信するすべてのメッセージが隣接ノードで受信されるかもしれない。この結果、ノードにおける信頼性閾値の値が低くなる。したがって、再送回数を増加させることによって、隣接ノードによってメッセージが受信される確率が増加する。同様に、あるノードが、所定の閾値よりも高い信頼性閾値をもたらすネットワークにおける良好な通信リンクを有する場合、ネットワークにおけるトラフィックを減少させることが望ましく、従って、ネットワークにおける冗長メッセージの数を減少させるように再送回数を減少させることが望ましい。
【００４６】
さらに、再送回数を増加させるとき、再送（再送信）の数がそれ以上増加されない最大限度を定義することができる。このような場合、ノードはさらに、再送回数が最大限度を超えているかどうかを確認し、超えている場合は再送回数を最大限度に設定する。同様に、再送の最小数は、１として定義される可能性がある。したがって、各ノードは少なくとも１回メッセージを再送する。このような場合、ノードは再送回数を更新した後、再送回数が１より少ないか否かを確認し、このような場合には再送回数を１に設定する。
【００４７】
特別な場合として、信頼性閾値がゼロであるシナリオを考慮することができる。このような状況は、ノードが受信データメッセージの確認応答メッセージを受信しない場合に発生する可能性がある。このような状況は、ノードがソースノードと宛先ノードの間のパスにないために発生する。この状況では、ノードが受信メッセージをブロードキャストし、それによってネットワーク内のトラフィックを増加させることは意味がない。したがって、信頼性閾値がゼロである場合、再送回数もゼロに設定される。したがって、再送回数を更新するステップでは、４つの結果を定義することができる。
i.   信頼性閾値がゼロである場合、再送回数はゼロに設定される。
ii.  信頼性閾値がゼロよりも大きいが、所定の閾値よりも小さい場合、再送回数は１だけインクリメントされ、おそらく再送の規定された最大回数に制限される。
iii. 信頼性閾値が所定の閾値に等しい場合、再送回数に変更は行われない。
iv.  信頼性閾値が所定の閾値よりも大きい場合、送信の数は１だけ減分され、場合によっては再送の最小数（通常は１）によって制限される。
【００４８】
再送回数は、決定された信頼性閾値がゼロであるときはいつでもゼロに設定されてもよいことに留意されたい。そのような予防措置は、ネットワークが機能を全く停止しないことを保証するために一時的にとられることができる。すなわち、再送回数は特定のタイムアウト値に対してゼロに設定されてもよく、タイムアウト値の満了後に、再送回数は、再びデフォルト値に設定されてもよい。
【００４９】
当業者は、信頼性閾値が所定の閾値に等しい特定の結果が項目ii.またはiv.で指定されるような結果のいずれか１つと組み合わされてもよいことを理解する。
【００５０】
一実施形態によれば、所定の閾値は、０．７〜０．９、好ましくは約０．８である。これにより、ブロードキャストされたメッセージのほとんどが確認応答され、同時にネットワーク内のトラフィックが高すぎないことが保証される。
【００５１】
本開示の一実施形態によれば、メッシュノードはメモリを含み、方法は、当該メッシュノードによって、当該メモリに任意の受信データメッセージを格納するステップと、当該メッシュノードによって、任意の受信した確認応答メッセージを当該メモリに格納されたデータメッセージと相関させるステップとを含む。
【００５２】
前述したように、各ソース−宛先ノードに対して受信メッセージの記録を維持し、対応する確認応答メッセージが受信されたときに、これらのメッセージを確認されたものとしてマークすることは有益であろう。
【００５３】
本開示の実施形態では、ネットワークは、Bluetoothメッシュ型ネットワークである。本開示の教示は、任意のタイプの有線または無線メッシュネットワークに適用され得るが、ネットワークは好ましくはBluetoothメッシュ型ネットワークである。
【００５４】
本開示によれば、方法の利点を含む、方法の上述の例に適用可能な異なる態様は、メッシュネットワークのノードに適用可能な態様に対応する。
【００５５】
本開示の第２の態様では、複数のメッシュノードを備えるメッシュネットワークにおけるメッシュノードに対する再送回数を更新するためのメッシュノードが提供され、当該再送回数は当該メッシュノードが当該メッシュネットワークにおいて受信されたメッセージをどのくらいの頻度で再送するかを定義し、当該メッシュノードはある数のデータメッセージ（いくつかのデータメッセージ）を受信するように構成された受信装置を備え（含み）、当該データメッセージのそれぞれは、同じソースメッシュノードから発信し、当該メッシュネットワーク内の同じ宛先メッシュノードを対象とする。ノードは、当該再送回数に基づいて当該データメッセージの数の各々を送信するように構成された送信装置をさらに備える（含む）。受信装置はさらに、ある数の確認応答メッセージ（いくつかの確認応答メッセージ）を受信するように構成され、各確認応答メッセージは、当該ＲＤメッシュノードから発信され、当該第１の数のデータメッセージの特定のデータメッセージの受信に確認応答し、当該メッシュノードは、当該データメッセージの数に基づいて、かつ当該確認応答メッセージの数に基づいて、当該再送回数を更新するように構成されたプロセッサを備える。
【００５６】
本開示の第１の態様の利点は、メッシュネットワークにおけるのメッシュノードに対する再送回数を更新する方法であり、本質的に本開示の第２の態様の一部でもある。
【００５７】
本開示の第２の態様の例によれば、受信装置は、受信メッセージがデータメッセージであることを、当該受信メッセージにおいて、ネットワーク層の宛先（ＤＳＴ）フィールドがユニキャストアドレスであること、ネットワーク層（ＣＴＬ）フィールドが０（ゼロ）に設定されていること、および／または、下位トランスポート層（ＳＥＧ）フィールドが１に設定されていることのいずれかを識別することによって、決定するようにさらに構成される。
【００５８】
本開示の第２の態様の例によれば、受信装置は、受信されたメッセージが確認応答メッセージであることを、当該受信メッセージにおいて、ネットワーク層（ＣＴＬ）フィールドが１に設定されていること、下位トランスポート層ＳＥＧフィールドが０に設定されている、および／または、下位トランスポート層オペコードが０に設定されていることのいずれかを識別することによって、決定するようにさらに構成される。
【００５９】
本開示の第２の態様の実施形態では、プロセッサが確認応答メッセージの数とデータメッセージの数との間の比である信頼性閾値を決定し、当該決定された信頼性閾値がゼロでない場合に当該信頼性閾値を所定の閾値と比較し、当該信頼性閾値がゼロである場合に当該再送回数を０に設定し、当該信頼性閾値が当該所定の閾値を下回る場合に当該再送回数を増加させ、当該信頼性閾値が当該所定の閾値を上回る場合に当該再送回数を減少させるにさらに構成される。
【００６０】
本開示の第２の態様の実施形態では、所定の閾値は、０．７〜０．９、好ましくは約０．８である。
【００６１】
本開示の第２の態様の一例によれば、メッシュノードは、メモリを備え（含み）、当該プロセッサは当該メッシュノードによって、当該メモリ内の任意の受信データメッセージを格納し、当該メッシュノードによって、任意の受信された確認確認メッセージを当該メモリに格納されたデータメッセージと相関させるようにさらに構成される。
【００６２】
本開示の第３の態様によれば、少なくとも１つのプロセッサ上で実行されると、少なくとも１つのプロセッサに上記で説明した方法を実行させる命令を備える非一時的なコンピュータ可読記憶媒体が提供される。
【００６３】
本開示のこの態様では、コンピュータ可読記憶媒体には当該記憶媒体がロードされたシステムが本開示による方法を実行することを可能にする指示が提供される。
【００６４】
本開示の上記および他の特徴および利点は、添付の図面を参照した以下の説明から最もよく理解されるのであろう。図面において、同一の参照符号は、同一又は同等の機能又は操作を実行する同一の部品又は部品を示す。 
【図面の簡単な説明】
【００６５】
【図１】図１は、本開示による方法の実施を概略的に示す。
【図２】図２は、本開示による方法の実施を概略的に示す。
【図３】図３は、本開示によるネットワーク要素の一例を示す概略図である。
【発明を実施するための形態】
【００６６】
図１は、本開示による方法を実行するためにメッシュネットワーク内のノードによって実行される様々なステップを示す概略図１０を示す。受信するステップ１０では、メッシュノードは複数のデータメッセージを受信する。複数のノードを含むメッシュネットワークでは、ソースメッシュノードが存在する。ソースメッシュノードは代替的に、オリジンノード、ソースノード、またはソースメッシュノードと呼ばれることがある。ソースメッシュノードはさらに、要求を開始するか、またはアプリケーションからネットワーク内の１つ以上のノードに情報を送信するアプリケーションが実行されているサーバと通信することもできる。
【００６７】
ソースメッシュノードは、宛先メッシュノードに情報を送信する。宛先メッシュノードは、宛先ノードとも呼ばれる。ソースメッシュノードから宛先メッシュノードに情報を送信する間、通常は直接送信されず、ネットワーク内の中間ノードを経由して送信される。また、情報は帯域幅をより良く利用するために、より小さなサイズのパケットまたはメッセージに分割されてもよい。送信されるすべてのメッセージは、少なくとも、送信される情報と共に、ソースメッシュノードと宛先メッシュノードの指示を含んでいる。
【００６８】
受信するステップ２０において、ノードは、メッセージがデータメッセージであるとさらに識別することができる。そのような識別は、ネットワーク層の宛先（ＤＳＴ）、ネットワークＣＴ層、および／または下位トランスポート層ＳＥＧの１つまたは複数のフィールドを確認することによって実行され得る。受信されたメッセージがデータメッセージであると識別されると、ノードのプロセッサによって確認が実行され、受信されたメッセージが以前にまだ受信されていないことが決定される。一意のデータメッセージが識別されると、受信されたデータメッセージは、ノードで利用可能なメモリにローカルに記憶され得、および／またはカウンタが受信されたメッセージの数を１だけインクリメントするように起動され得る。
【００６９】
メッシュネットワークでは、メッセージは、フラッディング（ｆｌｏｏｄｉｎｇ）と呼ばれるプロセスによって、ソースメッシュノードからデスティネーションメッシュノードに向けて伝播される。フラッディングでは、データメッセージを受信する各ノードがそれをブロードキャストする。従って、次の送信するステップ３０では、ノードは、受信したデータメッセージを、隣接するすべてのノードに送信する。メッセージは、ノードによって特定の回数送信されるように指定することができる。本発明の目的は、メッセージが特定のノードによって送信される回数を動的に調整できるようにすることである。
【００７０】
ノードは、送信する前に、メッセージが既に規定の回数送信されているか否かを確認することができる。受信するさらなるステップ４０では、ノードは、ノードが送信した対応するデータメッセージに対する確認応答メッセージを受信する。確認応答メッセージが受信されると、ノードは、受信した確認応答メッセージがどのデータメッセージに対応するかを確認する。識別されると、ノードは、データメッセージが確認応答されたものとして追加的にマークし、および／または、カウンタを作動させて、受信した確認応答メッセージの数を１ずつインクリメントしてもよい。
【００７１】
ノードは、受信されたメッセージが確認メッセージであることを決定するために、ネットワーク層ＣＴＬ、下位トランスポート層ＳＥＧフィールド、および／または下位トランスポート層オペコードのフィールドのいずれかに存在するデータを確認してもよい。特定のデータメッセージに対する確認応答がすでに受信されている場合、同じデータメッセージに対して受信された後続の確認応答メッセージは破棄される可能性があることが理解され得る。
【００７２】
更新するステップ５０で、ノードは、次いで、ノードによって実行される再送回数を更新する。このような更新は、受信されたデータメッセージの数と、特定のペアのＲＯ−宛先メッシュノードに対するノードによって受信された確認応答メッセージの数とに基づく。当業者であれば、受信された情報および各ＲＯ−宛先メッシュノードに対する確認応答メッセージの数をカウントするために、別個のカウンタ、またはカウントを示す別個のエントリを維持しなければならないことを理解するであろう。
【００７３】
ノードによって実行されるステップの正確なシーケンスは、図２に示されるフローチャート１００を考慮することによって詳細に理解され得る。ステップ１０１において、メッセージは、メッシュネットワークにおけるノードによって受信される。ステップ１０２において、ノードは、メッセージが既にノードのキャッシュメモリに記憶されているか否かを判定する。メッセージがすでにキャッシュに格納されている場合、そのメッセージは破棄される１０３。これは、メッセージがデータメッセージであるか確認メッセージであるかにかかわらず、すでにそれがノードで受信されている場合、それ以上の処理なしに単に破棄されることを意味する。
【００７４】
ただし、メッセージがまだキャッシュにない場合は、それはキャッシュに格納される１０４。次の決定のステップ１０５で、ノードは、受信されたメッセージがデータメッセージであるか否かを決定する。これは、ネットワーク宛先層ＤＳＴの１つ以上のフィールドがユニキャストアドレスであること、ネットワーク層ＣＴＬフィールドが０（ゼロ）に設定されていること、および／または、下位トランスポート層ＳＥＦフィールドが１に設定されていることを確認することによって決定される。
【００７５】
もし、受信されたメッセージがデータメッセージではないとノードが判断した場合、ノードは次に、受信されたメッセージが確認応答メッセージであるか否かを確認１０６に進む。これは、ネットワーク層ＣＴＬフィールドの１つまたは複数のフィールドが１に設定されていること、下位トランスポート層ＳＥＧフィールドが０に設定されていること、および／または、下位トランスポート層オペコードが０に設定されていることを確認することによって決定され得る。メッセージが確認メッセージでもない場合、アクションは実行されない１０７。受信メッセージが確認応答メッセージである場合、対応するデータメッセージは確認応答としてマーク１０８され、さらにカウンタが起動されて、受信された確認応答メッセージの数をインクリメントする。
【００７６】
ステップ１０５で、受信されたメッセージがデータメッセージであると判断された場合、タイマが起動されて１０９、対応する確認応答メッセージを待ち、ステップ１１０で、特定のＲＯ−宛先メッシュノードペアの信頼性統計が更新される。当業者は、信頼性統計が更新されるＲＯ−宛先メッシュノードペアが、受信されたデータメッセージに対応するＲＯ−宛先メッシュノードペアであることを理解する。さらに、ステップ１０９において、受信されたメッセージがデータメッセージであると判断した後、受信されたデータメッセージの数は、１だけインクリメントされてもよい。
【００７７】
ステップ１１１で、ノードによって送信されたデータメッセージに対して何らかの確認応答メッセージが受信されたか否かが確認される。特定のＲＯ−宛先メッシュノードペアに対する確認応答メッセージがノードによって受信されない場合、そのノードはＲＯ−宛先メッシュノードペア間のパスにないと解釈される。したがって、特定のＲＯ−宛先メッシュノードペアに対する任意の受信メッセージの送信を停止し、したがって、ネットワークにおけるトラフィックを低減し、エネルギーを節約することが有益であり得る。したがって、対応するＲＯ−宛先メッシュノードペアに対する送信の回数は、ゼロに設定される１１２。
【００７８】
しかしながら、確認応答メッセージが受信されている場合、信頼性閾値が計算される。信頼性閾値は、受信された確認応答メッセージの数と受信されたデータメッセージの数との間の比率として定義することができる。ステップ１１３において、信頼性閾値が所定の閾値未満であるかどうかが確認される。信頼性閾値が所定の閾値未満である場合、再送回数が１だけインクリメントされる１１４。しかしながら、信頼性閾値が所定の閾値よりも大きい場合には、再送回数が１だけデクリメントされる１１５。
【００７９】
図示されていないが、さらなるステップにおいて、信頼性閾値が所定の閾値に等しい場合、再送回数は変更されなくてもよい。
【００８０】
図３において、参照番号２００は、本開示による方法を実行するように構成されたネットワーク要素を示す。このようなネットワーク要素２００は例えば、ノードのメッシュネットワークにおけるノードであってもよい。そのようなノード２００は、ネットワークの隣接ノードからメッセージを受信するように構成された受信器手段２０１、２０１２を含む。受信メッセージは、データメッセージまたは確認応答メッセージであり得る。ノードは、受信したデータメッセージをその隣接ノードに送信するように構成された送信器手段をさらに含む。
【００８１】
ノード２００は、本開示による方法を実行するように構成されたプロセッサを含む。さらに、ノード２００は、メモリ２０６も含む。メモリ２０６は、プロセッサによって実行されると、ノードに本開示による方法を実行させるコンピュータプログラム製品を記憶するように構成されている。メモリ２０６はまた、受信したメッセージのコピーを記憶し、受信した情報およびネットワークにおける各ＲＯ−宛先メッシュノードペアに対する確認通知メッセージのカウントを維持するように構成されてもよい。
【００８２】
開示された例に対する他の変形は図面、開示、および添付の特許請求の範囲の研究から、特許請求された開示を実施する際に、当業者によって理解され、達成され得る。特許請求の範囲において、単語「含む」は他の要素又はステップを排除するものではなく、不定冠詞「a」又は「an」は複数を排除するものではない。単一のプロセッサまたは他のユニットは、特許請求の範囲に列挙されるいくつかのアイテムの機能を満たすことができる。特定の手段が相互に異なる従属請求項に記載されているという単なる事実は、これらの手段の組合せが有利に使用されることができないことを示すものではない。コンピュータプログラムは他のハードウェアと一緒に、またはその一部として供給される光記憶媒体またはソリッドステート媒体などの適切な媒体上に記憶／配布することができるが、インターネットまたは他の有線もしくは無線電気通信システムなどを介して、他の形態で配布することもできる。特許請求の範囲におけるいかなる参照符号も、その範囲を限定するものとして解釈されるべきではない。
【００８３】
本開示は、上記に開示された例に限定されず、発明の技能を適用する必要なく、添付の特許請求の範囲に開示された本開示の範囲を超えて、当業者によって修正および強化され得る。 
【図１】
2021500798.tif 000003
【図２】
2021500798.tif 000004
【図３】
2021500798.tif 000005
【手続補正書】
【提出日】令和1年8月8日(2019.8.8)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
Bluetoothメッシュネットワークにおけるメッセージは、２レベルの認証および暗号化メカニズムで保護される。１つの鍵は、ネットワーク層ペイロードをセキュアにするために使用され、ネットワークに属するすべてのノードに知られている。上部トランスポート層は異なる鍵を使用して、アプリケーションデータを認証し、暗号化する。この鍵は、同じアプリケーションを共有するノード間でのみ共有される。アプリケーション鍵をネットワーク鍵から分割する目的は、中間ノードを介してアプリケーションデータを送信できるようにし、中間ノードがアプリケーションデータを読み取ったり変更したりしなくても、それらが中継されるときにこれらのメッセージを認証できるようにすることである。例えば、電球はドアのロックを解除できないはずである。ノードは、アプリケーション鍵を知る必要はなくても。したがって、アプリケーションデータを変更したり理解したりすることはできくても、ネットワーク鍵を使用してアプリケーションメッセージを中継できる。
欧州特許出願ＥＰ ２４３７４４０ Ａ１は、ソースノードと宛先ノード間の距離に基づいて再送信の数を調整する方法を開示している。このような方法では、２つの連続するノード間のチャネル品質は考慮されない。
国際特許出願ＷＯ２０１６ ／ ０１５２１３は、無線通信ネットワークにおいて送信される反復符号化パケットの数を調整する方法を開示している。このようなアプローチでは、実際に受信したパケット数ではなく、受信側が正常に復号したパケット数を利用する。さらに、そのような方法は、メッシュネットワークにおける各中間ノードに適用できないため、意図された受信側ではないメッセージを復号できない。
【国際調査報告】
2021500798.tif 000006
2021500798.tif 000007