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

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

▶ フィリップス ライティング ホールディング ビー ヴィの特許一覧

特表2024-539461メッシュネットワークにおけるノードデバイスの中継機能を制御する方法、ノードデバイス及びシステム
<>
  • 特表-メッシュネットワークにおけるノードデバイスの中継機能を制御する方法、ノードデバイス及びシステム 図1
  • 特表-メッシュネットワークにおけるノードデバイスの中継機能を制御する方法、ノードデバイス及びシステム 図2
  • 特表-メッシュネットワークにおけるノードデバイスの中継機能を制御する方法、ノードデバイス及びシステム 図3
  • 特表-メッシュネットワークにおけるノードデバイスの中継機能を制御する方法、ノードデバイス及びシステム 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-10-28
(54)【発明の名称】メッシュネットワークにおけるノードデバイスの中継機能を制御する方法、ノードデバイス及びシステム
(51)【国際特許分類】
   H04W 40/02 20090101AFI20241018BHJP
   H04W 84/18 20090101ALI20241018BHJP
【FI】
H04W40/02
H04W84/18
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024529841
(86)(22)【出願日】2022-11-14
(85)【翻訳文提出日】2024-05-20
(86)【国際出願番号】 EP2022081723
(87)【国際公開番号】W WO2023094192
(87)【国際公開日】2023-06-01
(31)【優先権主張番号】202141054196
(32)【優先日】2021-11-24
(33)【優先権主張国・地域又は機関】IN
(31)【優先権主張番号】22150972.2
(32)【優先日】2022-01-11
(33)【優先権主張国・地域又は機関】EP
(81)【指定国・地域】
(71)【出願人】
【識別番号】516043960
【氏名又は名称】シグニファイ ホールディング ビー ヴィ
【氏名又は名称原語表記】SIGNIFY HOLDING B.V.
【住所又は居所原語表記】High Tech Campus 48,5656 AE Eindhoven,The Netherlands
(74)【代理人】
【識別番号】100163821
【弁理士】
【氏名又は名称】柴田 沙希子
(72)【発明者】
【氏名】ガドレ マンデシュ パンドュラング
【テーマコード(参考)】
5K067
【Fターム(参考)】
5K067EE02
5K067EE06
5K067EE25
5K067GG08
(57)【要約】
メッシュネットワークにおいて第1のノードデバイスの中継機能を制御する方法が開示される。ネットワークは、第1のノードデバイス及びある数のさらなるノードデバイスを含む複数の動作可能に相互接続されたノードデバイスを含み、各ノードデバイスの中継機能は、有効にされているという初期ステータスを有する。方法は、第1のノードデバイスによって実行され、中継最適化メッセージを受けるステップと、ランダムな待機期間後、前記数のさらなるノードデバイスにネイバー中継発見要求を送信するステップと、ネイバー中継発見要求の送信時に開始される応答期間の満了まで前記数のさらなるノードデバイスからのネイバー中継発見応答を待つステップであって、ネイバー中継発見応答は、さらなるノードデバイスが応答モードで動作している場合に該さらなるノードデバイスから受信される、ステップと、ネイバー中継発見応答の数が閾値以上である場合、自身の中継機能を無効にするステップとを含む。
【特許請求の範囲】
【請求項1】
第1のノードデバイス及びある数のさらなるノードデバイスを含む複数の動作可能に相互接続されたノードデバイスを含むメッシュネットワークにおいて前記第1のノードデバイスの中継機能を制御する方法であって、各ノードデバイスの中継機能は、有効にされているという初期ステータスを有し、当該方法は、前記第1のノードデバイスによって実行され、
中継最適化メッセージを受けるステップと、
ネイバークライアントモードに入る、及び、ランダムな待機期間後前記数のさらなるノードデバイスにネイバー中継発見要求を送信するステップと、
前記ネイバー中継発見要求の送信時に開始される応答期間の満了まで前記数のさらなるノードデバイスからのネイバー中継発見応答を待つステップであって、ネイバー中継発見応答は、さらなるノードデバイスがネイバーサーバモードで動作している場合に該さらなるノードデバイスから受信される、ステップと、
前記ネイバー中継発見応答の数が閾値以上である場合、自身の中継機能を無効にするステップ、又は
前記応答期間の満了後、前記ネイバー中継発見応答の数が前記閾値よりも少ない場合、前記第1のノードデバイスによって実行される、ネイバーサーバモードに入るステップ、及び
前記ネイバーサーバモードで受信するネイバー中継発見要求に応答してネイバー中継発見応答を送出するステップと、
を含む、方法。
【請求項2】
前記中継最適化メッセージは、発見期間を含み、当該方法は、
前記第1のノードデバイスによって、前記発見期間の満了前にのみネイバー中継発見要求に応答するステップ、
を含む、請求項1に記載の方法。
【請求項3】
前記中継最適化メッセージは、前記メッシュネットワークの外部の制御デバイスから、又は前記第1のノードデバイスの内部のファームウェアから受ける、請求項1又は2に記載の方法。
【請求項4】
前記応答期間は、ランダムな時間期間又は一定の時間期間である、請求項1又は2に記載の方法。
【請求項5】
ある数のさらなるノードデバイスにネイバー中継発見要求を送信することは、ネイバー中継発見要求のTTL(time to live)値を設定することを含む、請求項1又は2に記載の方法。
【請求項6】
前記閾値は1である、請求項1又は2に記載の方法。
【請求項7】
当該方法は、記録のために制御デバイスに中継ステータス更新通知を送信するステップを含む、請求項1又は2に記載の方法。
【請求項8】
請求項1乃至7のいずれか一項に記載の方法に従って自身の中継機能を制御するように構成されるノードデバイスであって、当該ノードデバイスは、複数の動作可能に相互接続されたノードデバイスを含むメッシュネットワークにおいて接続され、各ノードデバイスの中継機能は、有効にされているという初期ステータスを有する、ノードデバイス。
【請求項9】
請求項8に記載のノードデバイスを複数含む、メッシュネットワーク。
【請求項10】
少なくとも1つのプロセッサで実行された場合、前記少なくとも1つのプロセッサに請求項1乃至7のいずれか一項に記載の方法を実行させる命令を記憶するコンピュータ可読記憶媒体を含む、コンピュータプログラムプロダクト。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、ワイヤレス通信ネットワークの分野に関し、より具体的には、メッシュネットワークにおけるノードデバイスの中継機能(relay feature)を制御する方法、ノードデバイス及びシステムに関する。
【背景技術】
【0002】
複数のノードデバイスを接続するネットワークトポロジはメッシュネットワークと呼ばれ、ノードデバイスは、その通信範囲内の多くの他のノードデバイスに直接、動的に、非階層的に接続され得、ノードデバイスは、互いに協働してノードデバイス間のデータを効率的にルーティングする。この1つの中央ノードへの依存性の欠如は、すべてのノードが情報の中継に参加することを可能にする。
【0003】
メッシュネットワークは、フラッディング技術又はルーティング技術のいずれかを使用してメッセージを中継することができる。例えば200以上のノードを有するBluetooth(登録商標)メッシュベースのネットワーク等、大型のフラッディングベースのメッシュネットワークにおいて、メッシュネットワーク内のすべてのノードデバイスの中継機能がONに保たれる場合、受信するメッセージの再送信がTTL(Time to live)値によって制限されるにもかかわらず、大きなネットワークトラフィックにつながることになる。一方、一部のノードデバイスの中継機能が不適切にオフにされる場合、メッセージが移動(travel)できる範囲又は距離が短くなり得る。
【0004】
US2017295455A1は、メッシュネットワークにおける中継ノードの最適化に関し、他のノードから少なくとも1つの指示メッセージを受信する場合、第1のノードは、近隣ノードにメッセージを送信することになり、中継機能を有効にすることを開示している。さらに、第1のメッセージと同じSRCアドレスを有するメッセージが存在しない場合、ノードデバイスは、中継ファンクションの有効化を示す指示メッセージを近隣ノードに送信することを開示している。
【0005】
US2020092792A1は、ノードデバイス間の接続性に基づいてメッシュネットワークにおける中継ノードの中継機能を非アクティブにする方法を開示している。
【0006】
現在、メッシュネットワーク全体として中継機能を最適なやり方で制御するために、Bluetoothメッシュ仕様で定義されている等、利用可能な効率的な方法はない。Bluetoothメッシュ仕様に基づいて、各ノードデバイスの中継機能は、例えばメッシュネットワークプロビジョニング担当者(mesh network provisioning person)によって手動で制御され、これは、コスト的にも労力的にも非効率的である。
【0007】
それゆえ、メッセージ伝播に最適に寄与し、また、余分なメッシュトラフィックを減らすのに役立つ、メッシュネットワークにおけるノードデバイスの制御機能を最適化する方法に対する真のニーズが存在する。
【発明の概要】
【発明が解決しようとする課題】
【0008】
本開示の目的は、ネットワークにおける各ノードが、ネットワークにおけるメッセージ伝搬及びトラフィックが最適化されるように、自身の中継機能がONに保たれるべきかオフにされるべきかを自身で判断することを可能にする方法を提供することである。斯かる中継構成(relay configuration)は、自動的であり、プロビジョナの介入なくメッシュネットワークノード自身によって決定される。
【課題を解決するための手段】
【0009】
本開示の第1の態様では、第1のノードデバイス及びある数のさらなるノードデバイスを含む複数の動作可能に相互接続されたノードデバイスを含むメッシュネットワークにおいて第1のノードデバイスを制御する方法であって、各ノードデバイスの中継機能は、有効にされているという初期ステータスを有し、当該方法は、第1のノードデバイスによって実行され、
中継最適化メッセージ(relay optimization message)を受けるステップと、
ランダムな待機期間後前記数のさらなるノードデバイスにネイバー中継発見要求(neighbor relay discovery request)を送信するステップと、
ネイバー中継発見要求の送信時に開始される応答期間の満了まで前記数のさらなるノードデバイスからのネイバー中継発見応答(neighbor relay discovery response)を待つステップであって、ネイバー中継発見応答は、さらなるノードデバイスが応答モード(responding mode)で動作している場合に該さらなるノードデバイスから受信される、ステップと、
ネイバー中継発見応答の数が閾値以上である場合、自身の中継機能を無効にするステップと、
を含む、方法が提示される。
【0010】
本開示は、第1のノードデバイスの近隣に位置するある数のさらなるノードデバイスにネイバー中継発見要求を送信する及びさらなるデバイスから中継ステータスを示すネイバー中継発見応答を受信することにより、メッシュネットワークに接続されている、第1のノードデバイスは、自身の中継機能がオンに保たれるべきかオフにされるべきかを決定することができるという洞察に基づいている。
【0011】
このため、第1のノードデバイスは、近隣ノードデバイスの中継ステータスを発見する状態の下で動作する、又は近隣ノードデバイスの中継ステータスを発見する状態を開始するように構成され、該状態は、中継最適化メッセージによってトリガされる。第1のノードデバイスは、発見状態で動作している場合、中継最適化メッセージを受けると、ネイバー中継発見要求を送信することにより中継機能最適化プロシージャを開始する。その後、第1のノードデバイスは、応答期間中にネイバー中継発見要求を受信した前記数のさらなるノードデバイスからのネイバー中継発見応答を待つ。自身が送信するネイバー中継発見要求に応答してさらなる近隣ノードデバイスによって送信される応答の数をカウントすることにより、第1のノードデバイスは、自身の近隣に位置するいくつかのノードデバイスが現在中継機能を有効にしているかどうかを知ることができる。
【0012】
ノードデバイスの近隣にあるさらなるノードデバイスが現在メッセージを中継することができることを示す、受信した応答の数が、閾値、例えば、1以上である場合、ノードデバイスは、自身の中継機能をオフにする。
【0013】
これにより、メッシュネットワークにおける適切な範囲内でメッセージが依然として中継されることができる一方、ネットワークトラフィックが合理的に低く抑えられるように、ある数のノードデバイスの中継機能が、オン及びオフにされているという動作ステータスの観点から最適化されることができる。
【0014】
ネイバー中継発見要求を送信することにより中継最適化プロシージャを開始する前に、第1のノードデバイスは、中継最適化メッセージを受信した後、ランダムな期間待機する。
【0015】
これは、すべてのノードデバイスが同時にネイバー中継発見要求を発行するシナリオを防ぐのに役立つ。各ノードデバイスに差別化された時点で自身の中継機能を最適化させることにより、ネットワークにおけるノードデバイスの中継機能は、よりバランスの取れたやり方で有効又は無効にされることができる。
【0016】
本開示のある例において、方法はさらに、
応答期間の満了後、ネイバー中継発見応答の数が閾値よりも少ない場合、応答モードに入るステップと、
応答モードで受信するネイバー中継発見要求に応答してネイバー中継発見応答を送出するステップと、
を含む。
【0017】
第1のノードデバイスによって受信されるネイバー中継発見応答の数が閾値を下回る場合、これは、第1のノードデバイスの周囲の近隣ノードデバイスが中継機能をオフにしており、受信したメッセージを中継しないことを示している。この場合、第1のノードデバイスは、自身の中継機能をオンに保ち、応答モードに入る。この応答モードにおいて、第1のノードデバイスは、自身の近隣にある他のノードデバイスが送信する(複数の)ネイバー中継発見要求に応答し、他のノードデバイスが自身の中継機能を最適化することを可能にする。
【0018】
中継最適化メッセージは、中継機能を最適化するためにノードデバイスのグループに送られる。上述したように、グループ内の異なるノードデバイスは、交替で、他のノードデバイスにネイバー中継発見要求を送ることにより自身の中継機能を最適化する。
【0019】
実際には、ネイバー中継発見要求を受信した近隣ノードデバイスは、自身の中継機能がオンであり、自身はネイバー中継発見要求を送信する又は他のノードデバイスからの応答を待つことにより自身の中継機能を最適化するプロシージャ中ではなく、ネイバー中継発見要求に応答していない場合にのみ、ネイバー中継発見要求を送出したノードデバイスに応答を送信する。これは、近隣ノードデバイスの中継機能のステータスのよりリライアブルな(reliable)判断を保証するのに役立つ。
【0020】
本開示のある例において、中継最適化メッセージは、ネットワークの外部の制御デバイスから、又は第1のノードデバイスの内部のファームウェアから受ける。
【0021】
中継最適化メッセージは、中継最適化プロシージャをトリガするためのトリガメッセージとして機能する。これにより、ネットワークにおけるノードデバイスの中継機能の最適化が、制御されたやり方で実行されることができる。
【0022】
例として、ネットワークの外部にある制御デバイスは、プロビジョナデバイス又はバックエンドサーバであってもよい。
【0023】
ノードデバイスが短距離通信ケイパビリティで有効にされるか又は長距離通信ケイパビリティで有効にされるかに依存して、中継最適化メッセージは、短距離通信を介してポータブルプロビジョニングデバイス等のモバイルデバイスから、又は長距離通信を介してバックエンドサーバから送信されてもよい。
【0024】
ノードデバイスが長距離通信インターフェースをサポートする場合、長距離通信を介してバックエンドサーバから中継最適化メッセージを受けることは、バックエンドサーバから中継最適化メッセージを直接受けることを含む。代替的に、ノードデバイスが長距離通信インターフェースをサポートしない場合、ノードデバイスは、長距離通信インターフェースをサポートし、それゆえ、バックエンドサーバと直接通信することができるさらなるノードデバイスを介した委任によってバックエンドサーバから中継最適化メッセージを受けてもよい。
【0025】
代替的に、ファームウェアが、1週間に1回等、所定の時間にノードデバイス上で独自に発見を実行することができる。
【0026】
本開示のある例において、応答期間は、ランダムな時間期間又は一定の時間期間である。
【0027】
当業者であれば、応答期間は、ネットワークのサイズ、最適化されるノードデバイスの数等の様々な要因に基づいて、固定値に、又は好都合にランダムに保つことによって設定されてもよいことを企図することができる。
【0028】
本開示のある例において、ある数のさらなるノードデバイスにネイバー中継発見要求を送信することは、ネイバー中継発見要求のTTL(time to live)値を設定することを含む。
【0029】
ノードデバイスによって送信されるネイバー中継発見要求にTTL値を設定することにより、メッセージは、限られたホップ数しか送信されず、これにより、前記数のさらなるノードデバイスに送信されるという目的を実現することができる。これは、容易に用いられることができる簡単に利用可能な設定でもある。
【0030】
送信は、例えばフラッディングを使用して実行されてもよい。これは、メッシュネットワークで使用される標準的なメッセージ送信技術である。これは、ネイバー中継発見要求を送信するのに好都合に使用されることができる。
【0031】
例として、TTLは、2に設定されてもよい。このTTL値は、ノードデバイスの中継機能が無効にされるべきかどうかを判断するために使用される受信応答の閾値と組み合わせて、中継機能を無効にしている必要があるノードデバイスの数を調整するために使用されてもよい。
【0032】
当業者であれば、受信応答の閾値がより低い値に設定される一方、TTLがより高い値に設定される場合、より少ないノードデバイスが有効にされた中継機能を有することを企図することができる。一方、より多くのノードデバイスが中継機能を有効にしていることが期待される場合、受信応答の閾値がより高い値に設定される一方、TTLはより低い値に設定されてもよい。
【0033】
TTLが2に設定される場合、ネイバー中継発見要求は、1ホップまでしか移動しない。この設定により、ネットワーク内のトラフィックが比較的低くなる一方、ネットワーク上のメッセージのリライアブルな中継が依然として維持される。
【0034】
一例において、閾値は、1に設定されてもよい。これは、ノードデバイスが、自身の近隣にある1つの他のノードデバイスが中継機能を有効にしていることに気付く場合、自身の中継機能をオフにすることを意味する。
【0035】
本開示のある例において、方法はさらに、記録のために制御デバイスにステータス更新通知(status update notification)を送信するステップを含む。
【0036】
制御デバイスは、ネットワーク内の各ノードデバイスの中継ステータスを維持してもよい。ノードデバイスは、今や自身の中継機能を無効にしている場合、制御デバイスによって維持される自身の中継ステータスが更新され得るように、ステータス更新メッセージを制御デバイスに送信する。これにより、制御デバイスは、ネットワーク内のノードデバイスに関する最新の知識を有することができ、これにより、必要なノードデバイスに中継最適化メッセージを送出するタイミングをより適切にすることができる。
【0037】
実際には、中継最適化メッセージは、発見期間を含んでもよく、ノードデバイスによって受信される場合、発見期間の中継発見タイマの開始をトリガする。タイマが切れる場合、発見又は最適化は最早走らなくなる。これは、中継最適化メッセージによってトリガされた中継最適化プロシージャが長時間走り続けないことを保証する。
【0038】
発見期間は、中継最適化メッセージを送信する制御デバイス上で走るアプリケーションによって、又はノードデバイス内のファームウェアにプログラムされているように、中継機能について最適化されるグループ内のノードの総数に基づいて決定されてもよい。例えば、20ノードを含むグループの場合、発見期間は5分に設定されてもよい。
【0039】
本開示の第2の態様は、本開示の第1の態様による方法に従って自身の中継機能を制御するように構成されるノードデバイスを提供する。ノードデバイスは、複数の動作可能に相互接続されたノードデバイスを含むメッシュネットワークにおいて接続され、各ノードデバイスの中継機能は、有効にされているという初期ステータスを有する。
【0040】
本開示の第3の態様は、メッシュネットワークにおいて第1のノードデバイスの中継機能を制御するためのシステムであって、メッシュネットワークは、第1のノードデバイス及びある数のさらなるノードデバイスを含む複数の動作可能に相互接続されたノードデバイスを含み、各ノードデバイスの中継機能は、有効にされているという初期ステータスを有し、
ノードデバイスの各々は、中継最適化メッセージを受けるように構成され、
第1のノードデバイスは、中継最適化メッセージを受けた後にランダムな待機期間後、前記数のさらなるノードデバイスにネイバー中継発見要求を送信するように構成され、
前記数のさらなるノードデバイスは、ネイバー中継発見要求を受信するように構成され、
さらなるノードデバイスは、該さらなるノードデバイスが応答モードで動作している場合、ネイバー中継発見要求を受信することに応答して第1のノードデバイスにネイバー中継発見応答を送信するように構成され、
第1のノードデバイスはさらに、
ネイバー中継発見要求の送信時に開始される応答期間の満了まで前記数のさらなるノードデバイスからのネイバー中継発見応答を待つ、及び
ネイバー中継発見応答の数が閾値以上である場合、自身の中継機能を無効にする、
ように構成される、システムを提供する。
【0041】
システムの観点から、中継機能を最適化する第1のノードデバイスと、近隣のある数のさらなるノードデバイスとの間の相互作用は、一般に上記のシステムで述べられている通りである。
【0042】
ネットワークにおけるノードデバイスは、ネイバー中継発見要求を送信することによって自身の中継機能を最適化する第1のノードデバイスとしても、応答モードで動作している場合にネイバー中継発見要求に応答するさらなるノードデバイスとしても機能してもよいことに留意されたい。この意味で、第1のノードデバイス及びさらなるノードデバイスは、必ずしも別個のノードデバイスを指すとは限らない。代わりに、同じノードデバイスが、異なる時点で第1のノードデバイス又はさらなるノードデバイスのいずれかの役割を担ってもよい。
【0043】
本開示のある例において、中継最適化メッセージはさらに、発見期間を含み、前記数のさらなるノードデバイスの各々は、発見期間の満了前にのみネイバー中継発見要求に応答するように構成される。
【0044】
この発見期間は、最適化を終了するために設定され、ノードデバイスが中継機能を成功裏に最適化した場合に満了する。
【0045】
さらなる例において、第1のノードデバイスはさらに、
応答期間の満了後、ネイバー中継発見応答の数が閾値よりも少ない場合、応答モードに入る、及び
応答モードで受信するネイバー中継発見要求に応答してネイバー中継発見応答を送出する、
ように構成される。
【0046】
第1のノードデバイスは、自身の中継機能をオンに保つ場合、他のノードデバイスからの(複数の)ネイバー中継発見要求に応答することができ、これらのノードデバイスが自身の中継機能を最適化するのを促進することができる。
【0047】
第1のノードデバイスは、自身の中継機能を最適化した結果、中継機能をオフにする場合、別のノードデバイスからのネイバー中継発見要求に最早応答しなくなる。
【0048】
本開示の第4の態様は、第1のノードデバイス及びある数のさらなるノードデバイスを含む複数の動作可能に相互接続されたノードデバイスを含むメッシュネットワークにおいて第1のノードデバイスの中継機能を制御する方法であって、各ノードデバイスの中継機能は、有効にされているという初期ステータスを有し、当該方法は、
ノードデバイスの各々によって、中継最適化メッセージを受けるステップと、
第1のノードデバイスによって、ランダムな待機期間後、前記数のさらなるノードデバイスにネイバー中継発見要求を送信するステップと、
前記数のさらなるノードデバイスによって、ネイバー中継発見要求を受信するステップと、
さらなるノードデバイスによって、該さらなるノードデバイスが応答モードで動作している場合、第1のノードデバイスにネイバー中継発見応答を送信するステップと、
第1のノードデバイスによって、ネイバー中継発見要求の送信時に開始される応答期間の満了まで前記数のさらなるノードデバイスからのネイバー中継発見応答を待つステップと、
ネイバー中継発見応答の数が閾値以上である場合、自身の中継機能を無効にするステップと、
を含む、方法を提供する。
【0049】
ノードデバイスの中継機能を最適化するためのシステムにおけるノードデバイスによる動作は、一般に上記の方法で述べられている通りである。
【0050】
本開示のある例では、方法はさらに、
第1のノードデバイスによって、応答期間の満了後、ネイバー中継発見応答の数が閾値よりも少ない場合、応答モードに入るステップと、
第1のノードデバイスによって、応答モードで受信するネイバー中継発見要求に応答してネイバー中継発見応答を送出するステップと、
を含む。
【0051】
上述したように、第1のノードデバイスは、自身の中継機能を最適化するように、又は、ネイバー中継発見要求に応答し、他のノードデバイスが自身の中継機能を最適化するのを促進するように動作することができる。ノードデバイスの動作は、動作を実行するための条件を満たす場合に異なるモードの下で動作するようにノードデバイスを構成することによって実施されてもよい。
【0052】
例として、中継最適化メッセージはさらに、発見期間を含み、方法はさらに、各ノードデバイスによって、発見期間の満了前にのみ応答モードでネイバー中継発見要求に応答することを含む。
【0053】
発見期間が満了する場合、最適化プロシージャは最早走らなくなるため、ノードデバイスはネイバー中継発見要求に応答せず、これは、ネットワーク内のトラフィックを減らすのにも役立つ。
【0054】
本開示の第5の態様は、少なくとも1つのプロセッサで実行された場合、前記少なくとも1つのプロセッサに本開示の第1の態様による方法を実行させる命令を記憶するコンピュータ可読記憶媒体を含む、コンピュータプログラムプロダクトを提供する。
【0055】
本開示の上述の及び他の特徴及び利点は、添付の図面を参照する以下の説明から最も良く理解されるであろう。図面において、同様の参照数字は、同一の部品又は同一の若しくは同等の機能若しくは動作を実行する部品を示す。
【図面の簡単な説明】
【0056】
図1】複数のノードデバイスを含むメッシュネットワークを概略的に示す。
図2】ノードデバイス上で走り、異なる状態間を循環するネイバークライアントモデル及びネイバーサーバモデルを概略的に示す。
図3】ノードデバイスの中継機能を制御する方法を概略的に示すシーケンス図である。
図4】自身の中継機能を最適化するノードデバイスの観点から、メッシュネットワークにおけるノードデバイスの中継機能を制御する方法を概略的に示す。
【発明を実施するための形態】
【0057】
ここで、本開示によって企図される実施形態が、添付の図面を参照してより詳細に述べられる。開示される主題は、本明細書に記載の実施形態のみに限定されると解釈されるべきではない。むしろ、図示される実施形態は、主題の範囲を当業者に伝えるために例示として提供される。
【0058】
図1は、複数のノードデバイス101~109を含むメッシュネットワーク10を概略的に示している。各ノードデバイスは、直接通信を介して、又は別のノードデバイスを介した中継によって、ネットワーク10におけるさらなるノードデバイスと通信することができる。
【0059】
本開示によって企図されるネットワークを形成するノードデバイスは、すべて中継機能をサポートする。各ノードデバイスは、ネットワークのインストール及びプロビジョニング後、自身の中継機能を有効にしている初期ステータスを有することが想定される。
【0060】
本開示は、ネットワークにおける各ノードデバイスが、自身の中継機能が有効に保たれるべきか無効に保たれるべきかを自動的に判断することを可能にする方法を提案する。
【0061】
Bluetoothネットワーク等のメッシュネットワークにおけるノードデバイスは、サーバモデル、クライアントモデル及び制御モデル等の複数のモデルを動作させ得る。各モデルは、複数の動作状態、これらの状態に作用するメッセージ、及び任意の関連する挙動を定義する。
【0062】
本開示の発明的思想によれば、メッシュネットワークにおけるノードデバイスの中継機能を制御する方法は、各ノードデバイスをネイバーサーバモード(neighbor server mode)とネイバークライアントモード(neighbor client mode)で交互に動作させることにより実施される。
【0063】
ネイバーサーバモード及びネイバークライアントモードは、各ノードデバイスに対して構成され、例えば、上記のBluetoothノードのモデルを用いて実現されてもよい。具体的には、メッシュネットワークにおけるすべてのメッシュノードに対して、それぞれネイバーサーバモデル及びネイバークライアントモデルと呼ばれる2つの新しいモデルが追加される。
【0064】
複数のノードデバイスを含むネットワークをプロビジョニングする場合、ネットワークにおけるすべてのメッシュノードの中継機能はオンにされる。便宜上、メッシュノードデバイスの中継機能は、グループごとに最適化されてもよい。すなわち、以下でより詳細に述べられるように、同じグループのノードデバイスが中継最適化のために考慮される。
【0065】
Bluetoothメッシュネットワークにおいて、ネイバーサーバ(neighbor server)は、ネイバークライアントパブリケーションアドレス(neighbor client Publication address)と同じサブスクリプションアドレスを有する。
【0066】
各メッセージがメッシュネットワーク内で中継されるホップ数を制御する目的で、TTL(Time To Live)等の制御パラメータが使用されてもよい。例として、クライアントモードで動作するノードデバイス、すなわち、ネイバークライアントモデルを実行するノードデバイスのTTLを2に設定することにより、該動作するノードデバイスからのメッセージは、1ホップまで移動することができる。
【0067】
クライアントモードにおいて、ノードデバイスは、ネイバー中継発見要求を送信することにより、自身の中継機能を有効にしている近隣ノードデバイスの数を判断する。ノードデバイスは、中継機能を有効にしているノードデバイスが閾値以上であることを見出す場合、自身の中継機能を無効にする。閾値は例えば1に設定されてもよく、これは、近隣に中継機能を有効にしている別のノードデバイスがある場合、ノードデバイスは自身の中継機能をオフにすることを意味する。
【0068】
ネイバーサーバモードの下で動作する場合、ノードデバイスは、ネイバークライアントモードで動作するノードデバイスからの中継発見要求をリッスンし、応答メッセージを送信するが、応答は公開しない。
【0069】
ネイバーサーバモデルを動作させる、又は単にネイバーサーバと呼ばれるノードは、中継状態値を維持し、Discovery Off(発見オフ)、ServerBusy(サーバビジー)及びServerRunning(サーバランニング)の3つの状態を循環する。
【0070】
一方、ネイバークライアントモデルを動作させる、又は単にネイバークライアントと呼ばれるノードデバイスは、4つの状態、すなわち、Discovery Off(発見オフ)、Client Not Active(クライアント非アクティブ)、Discovery request Sent(発見要求送出)及びResponse Pending(応答ペンディング)を循環する。ネイバークライアントノードは、ネイバー中継カウントのカウンタ及びクライアント応答タイムアウト(秒)を維持する。ネイバー中継カウントは、中継機能をオンにしている近隣ノードデバイスの数をカウントするために使用される。
【0071】
当業者であれば、ネイバーサーバモデル及びネイバークライアントモデルの両方が各ノードデバイスに存在することを企図することができる。ネイバーサーバモデル及びネイバークライアントモデルの一方しか、一度に(at a time)アクティブにならない。Client(クライアント)及びServer(サーバ)状態マシンはイベントでトリガされ、クライアントサーバ及びネイバーサーバの状態は互いに影響される。
【0072】
具体的には、ネイバークライアントモデルがアクティブでない場合、ネイバーサーバモデルが、Running Sate(ランニング状態)になり、その逆も同様である。ネイバークライアントモデル及びネイバーサーバモデルを同時にアクティブにしない目的は、近隣ノード間で報告されるRelay(中継)状態の競合を避けるためである。
【0073】
図2は、ノードデバイス上で走り、異なる状態間を循環するネイバークライアントモデル20及びネイバーサーバモデル30を概略的に示している。
【0074】
ノードデバイスの通常の動作ステータスにおいて、ノードデバイスは、近隣クライアント21及び近隣サーバ31の両方にとって発見オフモードにある。
【0075】
プロビジョナ又はバックエンドサーバとして動作するモバイルデバイス等、外部デバイスからの発見開始コマンド又は命令、又はノードデバイスのファームウェアによって生成される命令を受けるノードデバイスによって開始されてもよい、中継発見(relay discovery)201を開始すると、ノードデバイスは初めにネイバーサーバ30のように働き始める。
【0076】
この時ネイバークライアント20は、202として示される、発見タイムアウト期間のタイマを開始してもよい。同時に、ノードデバイスのネイバークライアント20は、Client Request Pending(クライアント要求ペンディング)モード22に入る。
【0077】
ランダムな待機期間203後、言い換えれば、発見タイムアウト期間中のランダムな時間インスタンスにおいて、ノードデバイスは、ネイバークライアントモデル20の動作を開始し、自身のすぐ近隣のノードデバイスにネイバー中継発見コマンドを送る。これにより、ネイバークライアント20は、Client Response Pending(クライアント応答ペンディング)状態23に入る。
【0078】
Client Response Pending状態23は、クライアント待機タイムアウトカウンタ204によって決定される期間続く。この期間204に、ネイバーサーバを実行し、自身の中継機能をONにしている近隣ノードデバイスは、クライアント要求、すなわち、ネイバー中継発見コマンドに応答する。
【0079】
クライアント待機タイムアウト204が発生する場合、ノードデバイスはネイバークライアントを終え、それゆえ、クライアント非アクティブ状態24が走ることになる。
【0080】
ネイバークライアント20がノードデバイス上で走っている場合301、同じノードデバイス上のネイバーサーバ30は、Serve Busy(サーバビジー)32の状態にある。そうではなく、ネイバークライアント20がアクティブでない場合302、ネイバーサーバ30は、Server(サーバ)ランニング33の状態になる。
【0081】
上述したように、Serverランニング33の状態にある場合、クライアント要求303を受信すると、ネイバーサーバ30はServe Busy32に切り替わる。
【0082】
Serverランニング33の状態にある場合、ネイバーサーバ30は、ネイバークライアントを実行しているノードデバイスから受信するクライアント要求に対して、中継機能がONである場合、中継ステータス304で応答する。
【0083】
Server(サーバ)がビジーである場合32にクライアント要求が受信される場合、サーバビジー応答305がネイバークライアントに返される。この場合、ネイバークライアントを実行しているノードデバイスは、中継発見タイムアウト内でしばらくした後同じ要求の送信を再試行する。
【0084】
メッシュネットワークにおけるノードデバイスの中継機能を制御する方法を実施するシステムにおける異なるエンティティによる動作が、ノードデバイスの中継機能を制御する方法40を概略的に示すシーケンス図である、図3を参照して以下で述べられる。
【0085】
システムは、例えばプロビジョナ装置又はバックエンド管理サーバであってもよい、制御デバイス41と、複数のノードデバイスとを含んでもよい。ノードデバイスの中継機能は、グループごとに更新されてもよく、各グループは、物理的に互いに近くに位置する5~10個のノードデバイス等、ある数のノードデバイスを含んでもよい。
【0086】
上述したように、各ノードデバイスは、ネイバークライアントモデル及びネイバーサーバモデルを動作させてもよい。以下で述べられる方法において、中継最適化のプロシージャは、1つのノードデバイスがネイバークライアント42として動作し、複数の近隣ノードデバイスがネイバーサーバ43として動作するシナリオに対して述べられるが、図3では1つのネイバーサーバ43のみが示されている。
【0087】
ステップ401において、制御デバイス41は、中継最適化を開始することを決定する。それゆえ、制御デバイスは、これまで発見オフモードで動作している、ノードデバイスのグループに中継最適化コマンドを送信する402。
【0088】
中継最適化コマンドを受けると、ノードデバイスのグループの各々は、発見タイマをスタートさせ403、発見プロシージャの特定期間を設定する。
【0089】
この発見期間中、ノードデバイスは、ネイバークライアント42の動作を開始し、他のノードデバイスに中継発見要求405を送る前に、まずランダム期間404の間待機する。中継発見要求の送信は、他のノードデバイスからの応答を収集するための応答期間もトリガする。
【0090】
中継発見要求メッセージを受信したネイバーサーバ43を動作させるノードデバイスは、サーバビジー状態にある場合、ネイバークライアント42にサーバビジーメッセージを返信する。ネイバークライアント42を実行しているノードデバイスは、中継発見期間内でしばらくした後同じ要求の送信を再試行する。
【0091】
中継発見要求メッセージを受信したネイバーサーバ43を動作させているノードデバイスは、サーバビジー状態でない場合、自身の中継ステータスをチェックする406。自身の中継ステータスがオン、すなわち、このノードデバイスの中継機能が有効にされている場合、ネイバーサーバ43を動作させるノードデバイスは、ネイバークライアント42に中継発見応答407メッセージを送る。
【0092】
ネイバーサーバ43からの応答は応答期間中に収集され408、受信した中継発見応答ごとに、ネイバークライアントは、ネイバー中継カウンタを1ずつ増加させてもよい。応答期間の終了時に、ネイバー中継カウントが、1等、閾値以上である場合、ネイバークライアント42を動作させるノードデバイスは、自身の中継機能をオフにする409。
【0093】
その後、ネイバークライアント42を動作させるノードデバイスは、制御デバイス41に中継更新メッセージ410を送り、制御デバイス41は、ローカル又はリモートで維持するノードデバイスに関する中継ステータスを更新する411。
【0094】
発見タイマが切れた412後、中継機能について最適化されるグループ内のすべてのノードデバイスは、発見オフ状態に入る。
【0095】
メッシュネットワークにおけるノードデバイスの中継機能を制御する方法50が、本開示の一実施形態による、ネイバークライアントモデルを動作させるノードデバイスの観点から、図4を参照して以下で述べられる。
【0096】
ステップ51において、ノードデバイスは、中継最適化メッセージを受ける。中継最適化メッセージは、短距離通信を介してモバイルデバイス等のネットワーク管理デバイスから、又は長距離通信を介してバックエンドサーバから送出されてもよい。例として、フィールドエンジニアによるモバイルデバイス上で走るMobile App(モバイルアプリ)が、グループアドレスにRelay Optimization(中継最適化)メッセージを送出してもよい。
【0097】
発見プロセスは、ネイバー発見コマンドがノードデバイス自身から受けられる場合に開始されてもよい。例として、ファームウェアが、例えば1週間に1回、所定の時間にすべてのノードデバイス上で独自に発見を実行することができる。これは、外された(removed)ノードデバイスが対処されることを可能にする。
【0098】
中継最適化メッセージは、ノードデバイスのグループに送信されてもよい。Bluetooth仕様によって定義されるグループアドレスが、Bluetoothネットワークにおけるノードデバイスのグループにこのようなメッセージを送信するために使用されてもよいことが企図され得る。ノードデバイスのグルーピングは、ノードデバイスのネットワークアドレスの地理的ロケーションに基づいて決定されてもよい。
【0099】
中継最適化メッセージはまた、発見期間を含んでもよい。中継最適化メッセージを受けると、ノードデバイスは、発見タイマーを開始し、発見プロシージャが走る期間を定義する。
【0100】
ステップ52において、ノードデバイスは、ランダムな時間の間待機する。
【0101】
中継最適化メッセージを受信したすべてのノードデバイスが同時にネイバー中継発見要求を発行することを避ける目的で、ネイバー中継発見要求は、発見プロシージャに入った後直ちにノードデバイスによって送信されない。代わりに、メッセージは、ランダムな遅延の後に送信される。これは、クライアントモードを実行している同じグループ内の異なるノードデバイスが同時に中継発見要求を送信しないようにすることを可能にする。
【0102】
例として、所与の発見タイムアウト期間内のランダムな発見時間インスタンスで、クライアントモードのノードデバイスは、Neighbour Relay Discovery(ネイバー中継発見)要求を発行する。
【0103】
ステップ53において、ノードデバイスは、ネイバー中継発見要求を送信する。
【0104】
この時点で、ノードデバイスは、ネイバークライアントモデルの動作を開始する。中継発見要求は、例えば、フラッディングによって送信される。さらに、中継発見要求を受信し得るノードデバイスの数を制限するために、TTL(time to live)がメッセージに設定されてもよい。TTLは、ネットワークにおける最適化範囲を制御するために使用される。より大きなTTLは、より多くのノードデバイスが中継発見要求を受信し、これにより、より大きなノードデバイスのグループの中継機能を最適化することを可能にし、一方、より小さなTTLは、より少ないノードデバイスが中継機能を最適化することを可能にする。
【0105】
TTLは2に設定されてもよく、これは、メッセージが1ホップだけ送信されることを可能にする。
【0106】
ステップ54において、ノードデバイスは、定義された応答期間がタイムアウトになるまで近隣ノードデバイスからの応答を待つ。
【0107】
応答期間は、ネイバー中継発見要求が送出された場合に走り始め、ノードデバイスが近隣ノードデバイスからの応答を待つ期間を制御するために使用される。応答期間は、一定期間又はランダムな長さを有する期間であってもよい。クライアントモードのノードデバイスは、応答期間が切れるまで待機する。
【0108】
ネイバーサーバモデルを動作させ、Relay Feature(中継機能)がONになっているノードデバイスのみがクライアントリクエストに応答することに留意されたい。ノードデバイスは、ネイバーサーバモデルを動作させているが、異なるノードデバイスからのネイバー中継発見要求に応答している場合、応答を送信しない。代わりに、当該ノードデバイスは、サーバビジーメッセージをノードデバイスに送信する。ノードデバイスは、発見期間内に再びネイバー中継発見要求を再送信することを試みてもよい。
【0109】
ノードデバイスはまた、受信した応答の数のカウンタを保持してもよい。受信した応答ごとに、カウンタは1ずつインクリメントされる。
【0110】
ステップ55において、応答期間が切れた後、クライアントモードのノードデバイスが受ける中継応答の総数が、1又は2等、閾値以上である場合、該ノードデバイスは自身の中継をオフにする。
【0111】
受信した応答(received response)は、応答を送出したノードデバイスの中継機能が現在有効になっていることを意味する。応答を送出するノードデバイスは比較的近くに位置する(これは中継発見要求に対してTTLを設定することにより制御される)ので、ノードデバイスは自身の中継機能をオフにすることができ、これは、ネットワーク内で中継されるメッセージの伝送範囲を大幅に悪化させることはなく、一方、ネットワークトラフィックを減らすのに役立つ。
【0112】
ステップ56において、ノードデバイスは、制御デバイスが中継機能に関して相応にノードデバイスのステータスを更新し得るように、更新通知を制御デバイスに送る。
【0113】
これは、上述の中継最適化動作が完了した後、一部のノードデバイスは中継機能をオフにすることになるが、他はそうしないからである。それゆえ、ノードからの更新された中継ステータス通知が制御デバイスに送られるべきである。
【0114】
ノードデバイスは、他のノードデバイスから受信する応答の数が閾値を下回る場合、自身の中継機能をオンに保ってもよい。この場合、ノードデバイスはいわゆるサーバモードに入り、他のノードデバイスからのネイバー中継発見要求に応答できるようになり、他のノードデバイスが中継機能を最適化することを可能にする。
【0115】
上記の方法を実施するにあたっては、以下の点が留意される必要がある。
【0116】
ノードデバイス上でクライアントモードがアクティブでない場合、サーバモードがノードデバイス上で走り、クライアントモードで動作している近隣ノードデバイスからのクライアント要求に応答する。また、サーバモードを実行しているノードデバイスは、応答を公開していないクライアントモードを実行しているノードデバイスからの中継発見要求に応答する。
【0117】
発見プロシージャは定義された期間継続し、これは、メッシュネットワークのサイズに基づいて調整されてもよい。発見期間がタイムアウトした後、サーバ及びクライアントはDiscovery Off(発見オフ)状態に入る。
【0118】
本開示は、上記で開示される例に限定されず、任意のデータ通信、データ交換及びデータ処理環境、システム又はネットワークで使用するために、発明的技能を適用する必要なしに、添付の特許請求の範囲に開示される本開示の範囲を越えて当業者によって変更及び拡張されることができる。
図1
図2
図3
図4
【国際調査報告】