(57)【要約】データシンクに対しノードの同期をとる方法が、近傍ノードによって送信されたパケットを、ノードによって受信する第１の時点と、近傍ノードによって送信されたパケットを、データシンク又は同期をとられた近傍ノードによって受信する第２の時点とを求める。ノードは、第１の時点と第２の時点との間の差に基づいてデータシンクに同期する。
2016537842.tif 000002
【特許請求の範囲】
【請求項１】
データシンクに対しノードの同期をとる方法であって、
近傍ノードによって送信されたパケットを、前記ノードによって受信する第１の時点を求めることと、
前記近傍ノードによって送信されたパケットを、前記データシンク又は同期をとられた近傍ノードによって受信する第２の時点を求めることと、
前記第１の時点と前記第２の時点との間の差に基づいて前記データシンクに対し前記ノードの同期をとることと、
を含む、
方法。
【請求項２】
前記ノードのクロックと、前記データシンクのクロックとの間のオフセットを、
Ｏｆｆｓｅｔ＝ＴＲ−ＴＮ
に従って求めることと、
なお、ここで、ＴＮは前記第１の時点であり、ＴＲは前記第２の時点であり、
前記オフセットに従って、前記データシンクのクロックとの、前記ノードのクロックの同期をとることと、
を更に含む、
請求項１に記載の方法。
【請求項３】
前記ＬＬＮにおけるノードは、宛先指向有向非巡回グラフ（ＤＯＤＡＧ）トポロジーになるように編成され、前記方法は、
前記データシンクから前記ノードに拡張型ＤＯＤＡＧ情報オブジェクト（ＤＩＯ）メッセージを送信することと、
前記ノードから前記データシンクに拡張型宛先告知オブジェクト（ＤＡＯ）メッセージを送信することと、
を更に含む、
請求項１に記載の方法。
【請求項４】
前記近傍ノードによって、前記データシンク又は前記同期をとられた近傍ノードによって送信されたＳＹＮＣ−ＳＴＡＲＴパケットを受信することに応答して送信されるＳＹＮＣ−ＲＥＱパケットを、前記ノードによって受信することと、
前記データシンク又は前記同期をとられた近傍ノードによって、前記ＳＹＮＣ−ＲＥＱパケットを受信することに応答して送信されたＳＹＮＣ−ＲＥＳパケットを、前記ノードによって受信することと、
前記ノードによって及び前記データシンク又は前記同期をとられた近傍ノードによって前記ＳＹＮＣ−ＲＥＱパケットを受信した時点に基づいて、前記ノードの前記クロックと前記データシンクのクロックとの間の前記オフセットを求めることと、
前記オフセットに基づいて前記データシンクに対し前記ノードの同期をとることと、
を更に含む、
請求項３に記載の方法。
【請求項５】
前記データシンクがプライマリデータシンクであるか又はセカンダリデータシンクであるかを判断することと、
前記選択されたデータシンクが前記プライマリデータシンクである場合、前記オフセットに基づいて、前記データシンクの前記クロックとの、前記ノードの前記クロックの同期をとることと、
そうでない場合、前記ノードに前記オフセットを記憶することと、
を更に含む、
請求項４に記載の方法。
【請求項６】
無線ネットワークを形成するノードであって、
クロックと、
近傍ノードによってデータシンク又は同期をとられた近傍ノードに送信されるＳＹＮＣ−ＲＥＱパケットを受信し、前記ＳＹＮＣ−ＲＥＱパケットの受信に応答して前記データシンク又は前記同期をとられた近傍ノードによって送信されるＳＹＮＣ−ＲＥＳパケットを受信する受信機と、
前記ノードによって、前記クロックを用いて、前記ＳＹＮＣ−ＲＥＱパケットの受信の第１の時点を求め、前記ＳＹＮＣ−ＲＥＳパケットを用いて、前記データシンク又は前記同期をとられた近傍ノードによる前記ＳＹＮＣ−ＲＥＱパケットの受信の第２の時点を求めるプロセッサであって、それによって該プロセッサは、前記第１の時点と前記第２の時点との間の差に基づいて、前記データシンク又は前記同期をとられた近傍ノードに対し前記ノードの同期をとる、プロセッサと、
を備える、
ノード。
【請求項７】
前記プロセッサは、前記データシンクのクロックとの、前記ノードの前記クロックの同期を実行する、
請求項６に記載のノード。
【請求項８】
前記プロセッサは、前記データシンクのクロックとの、前記ノードの前記クロックの同期を実行し、前記ノードの前記クロックと、前記ネットワークにおける第２のデータシンクのクロックとの間のクロックオフセットを求め、前記ノードは、
前記クロックオフセットを記憶するメモリと、
前記同期を更新することなく、前記データシンク及び前記第２のデータシンクに対し同期をとられたデータパケット送信を行う送信機と、
を更に備える、
請求項６に記載のノード。
【請求項９】
前記メモリは、１組のデータシンクとの前記ノードの同期をとる１組のクロックオフセットを記憶する、
請求項８に記載のノード。
【請求項１０】
前記送信機は、前記データパケットを前記データシンクに送信し、制御期間内にシンク切換えパケットをブロードキャストし、前記ブロードキャストされたシンク切換えパケットに応答して、切換え遅延要求パケットが同期期間内に受信されない限り、前記データパケットを前記第２のデータシンクに送信する、
請求項８に記載のノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、包括的には、無線ネットワークにおけるパケットのルーティングに関し、詳細には、無線ネットワークにおける同期に関する。
【背景技術】
【０００２】
低電力高損失ネットワーク（ＬＬＮ：ｌｏｗ−ｐｏｗｅｒ  ａｎｄ  ｌｏｓｓｙ  ｎｅｔｗｏｒｋｓ）におけるノードは、処理能力、メモリ、電力消費、寿命、稼働率、物理的サイズによって制約される。ノード間の通信リンクは、高い損失レート、低いデータレート、不安定性、低い伝送電力、及び短い伝送範囲によって特徴付けられ得る。実際のＬＬＮ内に、数十〜数百万のノードが存在し得る。ＬＬＮの例は、スマートメーターネットワーク、及びビル監視のための無線センサーネットワークを含む。
【０００３】
モバイルアドホックネットワークと対照的に、ＬＬＮは制約されたトラフィックパターンを有する可能性があるが、例えばノードから１つ又は複数のデータシンク又はコンセントレーターへの、マルチポイントツーポイントトラフィックが優勢である。ポイントツーマルチポイント及びポイントツーポイントトラフィックは稀である。データシンクは通例、制御ポイントであり、ＬＬＮ内のノードからデータを収集する。ＬＬＮは、信頼性及び効率性のために複数のデータシンクを有することができる。データシンクは、協働して又は独立して機能することができ、ネットワークインターフェースを介してデータセンターに接続することができる。
【０００４】
大規模なＬＬＮ展開及び大容量のパケット配信の結果として、上記の制約に起因したパケット損失が生じる可能性がある。再送信はネットワークトラフィックを増大させる可能性がある。信頼性を増大させ、オーバーヘッドを低減するために、複数のデータシンクノードを有するＬＬＮ内のノードは、最適なルートを選択することができる。しかしながら、ＬＬＮのための最も標準的なルーティング方法は、マルチシンクルーティングのために設計されたものではない。
【０００５】
幾つかの従来のマルチシンクルーティング方法が既知である。しかしながら、これらの方法は、ＬＬＮのために最適でなく、同期をとられていない。例えば、インターネットエンジニアリングタスクフォース（ＩＥＴＦ：Ｉｎｔｅｒｎｅｔ  ｅｎｇｉｎｅｅｒｉｎｇ  ｔａｓｋ  ｆｏｒｃｅ）は、ＬＬＮのためのＩＰｖ６ルーティングプロトコル（ＲＰＬ：Ｒｏｕｔｉｎｇ  Ｐｒｏｔｏｃｏｌ  ｆｏｒ  ＬＬＮｓ）を開発した。ＲＰＬは、有向非巡回グラフ（ＤＡＧ：ｄｉｒｅｃｔｅｄ  ａｃｙｃｌｉｃ  ｇｒａｐｈ）を用いてルートを発見する。ＲＰＬはマルチシンクルーティングプロトコルであるにも関わらず、ルートは、宛先指向ＤＡＧ（ＤＯＤＡＧ：Ｄｅｓｔｉｎａｔｉｏｎ  Ｏｒｉｅｎｔｅｄ  ＤＡＧ）を構築することに基づいて発見される。ＤＯＤＡＧは、ＤＯＤＡＧの根（ＤＯＤＡＧ  ｒｏｏｔ）と呼ばれる単一シンクノードを有する。ルートが発見された後、ノードはパケットをＤＯＤＡＧルートに送信する。ＲＰＬは、ノードが複数のシンクへのルートをどのように発見し、保持するか、及びノードが複数のシンク間でどのように切り換えるかを指定しない。また、ＤＯＤＡＧは同期をとられていない。
【０００６】
同期は幾つかのＬＬＮにおいて必要とされる。例えば、同期は、計測データ収集、需要及び応答管理、スマートメーターネットワークに接続されたスマートメーター及びデバイスの制御を含む多目的動作のために、スマートメーターネットワークによって用いられる可能性がある。結果として、ＲＰＬは幾つかのＬＬＮにおいて、マルチシンク多目的ルーティングに適していない場合がある。
【０００７】
特許文献１は、センサーネットワークのためのマルチシンク／マルチパスルーティングを制御する方法を記載している。その方法は、セーフティークリティカルなシステムのために設計されている。信頼性要件を満たすために、そのルーティング方法は、複数のパスを用いて同じデータの複数のコピーを複数のデータシンクに送信する。その方法のためのオーバーヘッドは、大規模ＬＬＮにとって過度である。また、マルチシンクマルチパスの複数の送信によってＬＬＮの信頼性が低減する可能性がある。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】米国特許出願公開第２０１２／０２３６８５５号
【発明の概要】
【０００９】
本発明の幾つかの実施形態は、ノードが同期パケットを一切送信することなくデータシンクとの同期を実行することができるという認識に基づいている。これはなぜなら、ノードが近傍ノードによって送信されたパケットを受信することができるためである。このため、幾つかの状況では、ノードは、データシンクと近傍ノードとの間で交換される同期パケットに基づいてデータシンクに対し同期をとることができる。さらに又は代替的に、ノードは、近傍ノードと、以前にデータシンクと同期していた、同期をとられた近傍ノードとの間で交換される同期パケットに基づいてデータシンクに対し同期をとることができる。パッシブ同期は、通信オーバーヘッドを低減する。
【００１０】
例えば、ＬＬＮにおけるノードのうちの幾つかは、アクティブ同期を実行することができ、幾つかのノードはパッシブ同期を実行することができる。アクティブ同期では、ノードは同期パケットを、データシンク又は同期をとられた近傍ノードと交換する。一方、パッシブ同期では、ノードはパケットを一切送信せず、他のノードによって送信された同期パケットのみを用いる。
【００１１】
したがって、本発明の１つの実施形態は、データシンクに対しノードの同期をとる方法を開示する。本方法は、近傍ノードによって送信されたパケットを、ノードによって受信する第１の時点を求めることと、近傍ノードによって送信されたパケットを、データシンク又は同期をとられた近傍ノードによって受信する第２の時点を求めることと、第１の時点と第２の時点との間の差に基づいてデータシンクに対しノードの同期をとることとを含む。
【００１２】
別の実施形態は、無線ネットワークを形成するノードを開示する。このノードは、クロックと、近傍ノードによってデータシンク又は同期をとられた近傍ノードに送信されるＳＹＮＣ−ＲＥＱパケットを受信し、ＳＹＮＣ−ＲＥＱパケットの受信に応答してデータシンク又は同期をとられた近傍ノードによって送信されるＳＹＮＣ−ＲＥＳパケットを受信する受信機と、ノードによって、クロックを用いて、ＳＹＮＣ−ＲＥＱパケットの受信の第１の時点を求め、ＳＹＮＣ−ＲＥＳパケットを用いて、データシンク又は同期をとられた近傍ノードによるＳＹＮＣ−ＲＥＱパケットの受信の第２の時点を求め、それによって、第１の時点と第２の時点との間の差に基づいて、データシンク又は同期をとられた近傍ノードに対しノードの同期をとる、プロセッサとを備える。
【図面の簡単な説明】
【００１３】
【図１Ａ】本発明の幾つかの実施形態が動作することができる低電力高損失ネットワーク（ＬＬＮ）の概略図である。
【図１Ｂ】本発明の幾つかの実施形態による１組のノード及び複数のデータシンクによって形成されるＬＬＮにおいてパケットを送信する方法のブロック図である。
【図１Ｃ】本発明の幾つかの実施形態による、時間値及びクロックオフセットを記憶し操作する方法のブロック図である。
【図２Ａ】本発明の幾つかの実施形態による、同期間隔の構造の概略図である。
【図２Ｂ】本発明の幾つかの実施形態による、独立した同期間隔を有する２つのデータシンクの例である。
【図３Ａ】本発明の幾つかの実施形態による、ルート発見メッセージにおけるフィールドの概略図である。
【図３Ｂ】本発明の幾つかの実施形態による、ルート発見メッセージにおけるフィールドの概略図である。
【図４】マルチシンクＬＬＮにおけるデータシンク選択及び各選択されたデータシンクへのルート発見のための方法のブロック図である。
【図５】本発明の幾つかの実施形態による、ルート発見メッセージ伝搬プロセスの一例の概略図である。
【図６】本発明の幾つかの実施形態による、ルート確認プロセスの一例の概略図である。
【図７Ａ】データシンクのカバレッジエリアの例の概略図である。
【図７Ｂ】データシンクのカバレッジエリアの例の概略図である。
【図８Ａ】ノードが迅速なプライマリデータシンク切換えを実行することができない一例の概略図である。
【図８Ｂ】ノードが迅速なプライマリデータシンク切換えを実行することができる一例の概略図である。
【図９Ａ】本発明の幾つかの実施形態による、プライマリデータシンク切換え通知パケットの構造の概略図である。
【図９Ｂ】本発明の幾つかの実施形態による、プライマリデータシンク切換え遅延要求パケットの構造の概略図である。
【図１０Ａ】本発明の幾つかの実施形態による様々な同期パケットの概略図である。
【図１０Ｂ】本発明の幾つかの実施形態による様々な同期パケットの概略図である。
【図１０Ｃ】本発明の幾つかの実施形態による様々な同期パケットの概略図である。
【図１１Ａ】本発明の１つの実施形態による同期方法のブロック図である。
【図１１Ｂ】本発明の幾つかの実施形態によるマルチホップ同期方法のブロック図である。
【図１２Ａ】シンクによる同期開始パケットの送信の概略図である。
【図１２Ｂ】同期パケット送信及び近傍ノードからのパケットの受信の概略図である。
【図１３Ａ】本発明の幾つかの実施形態によって用いられるＤＩＯメッセージのフローの概略図である。
【図１３Ｂ】本発明の幾つかの実施形態によって用いられるＤＡＯメッセージのフローの概略図である。
【図１３Ｃ】本発明の幾つかの実施形態によって用いられるＳＹＮＣ−ＳＴＡＲＴメッセージのフローの概略図である。
【図１３Ｄ】本発明の幾つかの実施形態によるＳＹＮＣ−ＲＥＱ及びＳＹＮＣ−ＲＥＳメッセージ交換の概略図である。
【図１３Ｅ】本発明の幾つかの実施形態によるシンク切換え及び切換え遅延メッセージ交換の概略図である。
【図１３Ｆ】本発明の幾つかの実施形態によって用いられるデータパケットのフローの概略図である。
【発明を実施するための形態】
【００１４】
図１Ａは、本発明の幾つかの実施形態が動作する低電力高損失ネットワーク（ＬＬＮ）の概略図を示す。幾つかの実施形態がＬＬＮに関して記載されているが、本発明の様々な実施形態は、スマートメーターネットワーク、センサーネットワーク、並びに、産業オートメーション、ビルディングオートメーション及びホームオートメーション、並びに環境監視のために用いられるネットワーク等の、他のタイプの無線ネットワークと共に用いることができることが理解される。
【００１５】
ネットワークは、１組のノード（Ｎ）１１０と、１組のデータシンク（Ｓ）１２０とを備える。ノード及びシンクはメッシュトポロジーを形成し、無線リンク１３０を用いて通信する。接続性を確保するために、ノードは、各ノードが少なくとも１つの近傍を有するように配列される。ＬＬＮ内の各ノードは、データパケット及び制御パケット等のパケットを、１つ又は複数のリンクを通じて、データシンクのうちの１つ又は複数に送信する。ノードは、近傍ノードから受信したパケットをデータシンクに向けて転送することもできる。データシンクは、ルーティングパケット及び制御パケット等のパケットを、１つ又は複数のリンクを介して１つ又は複数のノードに送信する。ノードはまた、近傍から受信したパケットを１つ又は複数のノードに向けて転送する。さらに、データシンクは、リンク１４０を介してデータセンター１５０に接続することができる。
【００１６】
ＬＬＮを形成するノード及びデータシンクは、様々な機能を実行することができる。データシンクは通常、データセンターの場合を除いて、データソースではない。各データシンクは、ノードのサブセットと通信する役割を果たすことができ、ノードのサブセットからデータを収集するとともに、これらのノードを管理する。データシンクは、制御パケット及び管理パケットを１つ又は複数のノードに送信することができる。全てのＬＬＮノードはデータソースであり得る。ノードは自身のデータパケットを１つ又は複数のデータシンクに送信し、データシンクから受信した制御パケット又は管理パケットに応答する。
【００１７】
ノードは、データ伝送のために、複数のデータシンクへの複数のルートを保持することができる。様々な実施形態において、ノードは複数のデータシンクと同期する。そのような方式において、ノードは、同期を更新することなく、自身のデータ伝送を１つのデータシンクから別のデータシンクに迅速に切り換えることができる。そのような切換えによって、ネットワーク条件が変化したときの伝送遅延が低減する。
【００１８】
例えば、ノードは、第１のデータシンクをプライマリデータシンクとして選択し、第２のデータシンクをセカンダリデータシンクとして選択する。ノードは、自身のデータパケットをプライマリシンクノードに送信する。ノードは、自身のプライマリデータシンクのプライマリメンバーであり、ノードは、自身のセカンダリデータシンクのセカンダリメンバーである。プライマリメンバーは、データパケット、ルーティングパケット、同期パケットを含む全てのタイプのパケットを送信する。セカンダリメンバーは、セカンダリデータシンクへのデータパケットを除く全てのタイプのパケットを送信する。ノードは、ネットワーク条件及び性能に基づいて適応的に、自身のプライマリデータシンクの宛先をセカンダリデータシンクに切り換えることができる。
【００１９】
データ伝送は同期をとられ、割り当てられた時間内で実行されるため、ノードは、伝送を切り換えることが可能になるには、プライマリデータシンク及びセカンダリデータシンクに同期する必要がある。例えば、同期をとられた伝送中、ノードは、第１のデータシンクと同期をとられた第１の割り当てられた時間において、第１のデータパケットをノードから第１のデータシンクに送信し、第２のデータシンクと同期をとられた第２の割り当てられた時間において、第２のデータパケットをノードから第２のデータシンクに送信する。第１のデータシンク及び第２のデータシンクは同期する必要がなく、すなわち、独立して動作することができる。
【００２０】
図１Ｂは、図１ＡのＬＬＮにおいてパケットを送信する方法のブロック図を示す。本方は、ＬＬＮ内のノードのプロセッサ１６１によって実施することができる。プロセッサは、バスによって、メモリ、入出力インターフェース、クロック１８５及び送受信機に接続される。ノードは、データシンクのサブセットを選択する（１６０）。選択されたデータシンクは、第１のデータシンク１６５及び第２のデータシンク１６３を備える。ノードは、第１のデータシンクをプライマリデータシンクとして指定し、第２のデータシンクをセカンダリデータシンクとして指定することができる（１７０）。また、ノードは複数のセカンダリデータシンクを指定することができる。
【００２１】
ノートは、第１のデータシンク１６５及び第２のデータシンク１６３とのノードの同期１８０を実行する。次に、ノードは、第１のデータシンクと同期をとられた第１の割り当てられた時間において、ノードから第１のデータシンクに第１のデータパケット１９５を送信する（１９０）。また、ノードは、第２のデータシンクと同期をとられた第２の割り当てられた時間において、第２のデータパケット１９３をノードから第２のデータシンクに送信する（１９０）。ここで、第１のデータパケット及び第２のデータパケットは、同期を更新することなく送信される。このため、ノードは、データシンクが必ずしも互いに同期をとられていないときに、複数のデータシンクに対し同期をとられた送信を行うことができる。
【００２２】
通常、ノードは、第２のデータパケットを送信する前に、データシンクの指定を切り換える。１つの実施形態では、ノードはプライマリデータシンクのみに送信するが、異なる期間において様々なデータシンクがプライマリデータシンクとして指定され得る。切換えは、ネットワーク内の条件の変化に応答して適応的に行うことができ、ノードは、同期を更新することなく、切換えを迅速に実行することができる。
【００２３】
幾つかの実施形態は、ノードの複数のクロックを用いて、複数のデータシンクに対するノードの同期を実行する。しかしながら、様々な実施形態において、ノードは同期のための１つのクロックを有する。同期をとられたマルチシンクルーティングの問題を解決するために、本発明の幾つかの実施形態において、ノードはプライマリデータシンクのクロックに対しクロック１８５の同期をとり、セカンダリデータシンクへのクロックオフセット１８３を保持する。すなわち、各クロックオフセットは、ノードのクロックの時間と、対応するセカンダリデータシンクのクロックの時間との差を記憶する。
【００２４】
図１Ｃは、本発明の幾つかの原理を用いるノード１９９９のブロック図を示す。ノードは、低電力高損失ネットワーク（ＬＬＮ）の一部とすることができる。ノードは、単一のクロック１９００と、ＬＬＮにおける第１のデータシンクのクロックとのクロックの同期を実行し、ノードのクロックと第２のデータシンクのクロックとの間のクロックオフセットを求める、プロセッサ１６１等のプロセッサと、クロックオフセットを記憶するメモリ１９１０とを備える。ノードは、データパケットを受信し、同期を更新することなく複数のデータシンクに対し同期をとられたデータパケット送信を行う送受信機１９４５も備えることができる。
【００２５】
ノードのプロセッサは、時間値及びクロックオフセットを記憶し、操作する。幾つかの実施形態では、プロセッサはクロック１９００を管理し、受信した時間値及びクロックオフセットをセカンダリデータシンクに記憶するためにメモリブロックを割り当てる。例えば、プロセッサは、第１の時間値１９３１のためのメモリロケーションへのポインター１９０１と、第２の時間値１９３２のためのメモリロケーションへのポインター１９０２とを保持することができる。プロセッサは、時間値１９３１及び１９３２に基づいてクロックオフセットを求めることができる（１９５０）。
【００２６】
また、プロセッサは、クロックオフセットのためのメモリロケーションへのポインター、例えば、第１のクロックオフセットのためのメモリロケーションへのポインター１９１１と、第２のクロックオフセットのためのメモリロケーションへのポインター１９１２と、…、第ｋの（最後の）クロックオフセットのためのメモリロケーションへのポインター１９１ｋとを保持することができる。
【００２７】
幾つかの実施形態において、ＬＬＮは、１組のノードと、１組のデータシンクとを備え、データシンクのうちの少なくとも一部が、宛先指向有効非巡回グラフ（ＤＯＤＡＧ）情報オブジェクト（ＤＩＯ：ＤＯＤＡＧ  ｉｎｆｏｒｍａｔｉｏｎ  ｏｂｊｅｃｔ）メッセージを構成し送信することによって、ＤＯＤＡＧ形成を開始する。これらの実施形態において、同期は、ＤＯＤＡＧ形成に応答して行われる。
【００２８】
例えば、１つの実施形態において、プロセッサは、メモリ内に、参加したＤＯＤＡＧのＤＯＤＡＧ  ＩＤを記憶するテーブル１９２０を保持する。同期パケットを受信すると（１９４０）、テーブル１９２０を用いて、時間値を記憶するか否かが判断される（１９３０）。ノードは、ＤＯＤＡＧの根をプライマリデータシンク又はセカンダリデータシンクとして選択することによってＤＯＤＡＧに参加する。参加したＤＯＤＡＧについて、すなわち、ノードはこのＤＯＤＡＧのプライマリメンバー又はこのＤＯＤＡＧのセカンダリメンバーのいずれかであり、プロセッサは、ポインター１９０１によって指し示されるメモリに第１の時間値を記憶し（１９３１）、ポインター１９０２によって指し示されるメモリに第２の時間値を記憶する（１９３２）。２つの時間値を用いて、プロセッサはクロックオフセットを計算する（１９５０）。
【００２９】
対応するＤＯＤＡＧの根がプライマリデータシンクである場合（１９６０）、プロセッサは、ＤＯＤＡＧの根のクロックに対し自身のクロック１９００の同期をとるようにクロック値をセットする（１９６１）。そうでない場合、プロセッサはクロックオフセットを記憶する（１９６２）。クロックオフセットを記憶するために、プロセッサは、特定のメモリロケーションにＤＯＤＡＧ  ＩＤをマッピングし（１９６３）、次に、メモリロケーションポインターを用いて、クロックオフセット値を対応するメモリロケーションに記憶する。
【００３０】
ＬＬＮにおける同期間隔
図２Ａは、幾つかの実施形態によって用いられる同期（ｓｙｎｃ）間隔２１０の構造を示す。同期間隔は、ルーティング期間２２０、同期期間２３０、データ期間２４０及び制御期間２５０のうちの１つ又はそれらの組み合わせを含む。各々の期間の長さは、同期プロセスを管理するデータシンクによって決定される。ルーティング期間及び同期期間は、全ての同期間隔中に必ずしも存在しない。これらの２つの期間のうちの任意のものが存在しない場合、期間は、データパケット送信のために用いることができる。ルーティング期間中、ノードはプライマリデータシンク及びセカンダリデータシンクを選択する。同期期間中、ノードは、プライマリデータシンクのクロックとのノードのクロックの同期をとり、セカンダリデータシンクに対するクロックオフセットを決定し、保持する。データ期間中、ノードはデータパケットをプライマリデータシンクに送信する。制御期間中、制御パケット及び管理パケットが送信される。失敗したデータパケットの再送信も制御期間に行うことができる。
【００３１】
図２Ｂは、データシンク２６０  Ｓ１及び２７０  Ｓ２が、開始時間及び各期間の長さの観点から異なる同期間隔を有する例を示す。幾つかの実施形態では、同期はルート発見後に実行される。各データシンクは、そのルート発見及び同期間隔を独立して管理する。しかしながら、本発明の様々な実施形態では、データシンクは、他のデータシンクの同期情報を監視して、最良の性能のために自身の同期間隔を管理する。例えば、２つの近傍のデータシンクは、より高いデータパケット配信レートを達成するために、重複していないデータ期間を準備することができる。
【００３２】
ＬＬＮのためのマルチシンク選択及びルート発見
ＬＬＮにルーティングプロトコルを提供するために、インターネットエンジニアリングタスクフォース（ＩＥＴＦ）は、ＬＬＮのためのＩＰｖ６ルーティングプロトコル（ＲＰＬ）を開発した。ＲＰＬは、ＬＬＮのための双方向ルートを確立するための有向非巡回グラフ（ＤＡＧ）トポロジーを構築する。ＲＰＬルートは、データシンクとして動作する１つ又は複数のルート間のトラフィックのために最適化される。ＤＡＧは、データシンクあたり１つの宛先指向ＤＡＧ（ＤＯＤＡＧ）となるように、１つ又は複数のＤＯＤＡＧに分割される。したがって、ＤＯＤＡＧは、ＲＰＬにおける定義済みの構造である。ＬＬＮのトラフィックは、根に向かって上流方向に、又は根から下流方向に、ＤＯＤＡＧのエッジに沿って流れる。根を宛先として有する上流方向のルートは、ＤＯＤＡＧ情報オブジェクト（ＤＩＯ）メッセージを用いるＤＯＤＡＧ構築メカニズムによって提供される。根は、ＤＯＤＡＧバージョン番号、ＤＯＤＡＧ  ＩＤ、及び根の階数等のＤＯＤＡＧパラメーターを構成し、これらのパラメーターをＤＩＯメッセージにおいて通知する。
【００３３】
ノードは、ＤＯＤＡＧに参加するために、ホップカウント又は期待伝送カウント（ＥＴＸ：ｅｘｐｅｃｔｅｄ  ｔｒａｎｓｍｉｓｓｉｏｎ  ｃｏｕｎｔ）等のルーティングメトリックに基づいて、１組のＤＩＯメッセージ送信機を、根に向かうルートの親として選択し、このノード自体の階数を求める。また、ノードは、好ましい親を、上流方向トラフィックのための次のホップとして選択する。ＤＯＤＡＧに参加すると、ノードはＤＩＯメッセージを送信し、ＤＯＤＡＧパラメーターを通知する。ＤＯＤＡＧの根に向かってＤＯＤＡＧバージョンが辿られていくにつれ、ノードの階数は単調減少する。根から他の宛先への下流方向のルートは、これらの宛先ノードが宛先告知オブジェクト（ＤＡＯ：Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｖｅｒｔｉｓｅｍｅｎｔ  Ｏｂｊｅｃｔ）メッセージを送信することによって提供される。
【００３４】
本発明の幾つかの実施形態は、マルチパスルート発見のためにＲＰＬを用いる。ノードは、自身のプライマリデータシンクへの複数のルートを選択し、そのセカンダリデータシンクの各々への複数のルートを選択する。単純にするために、幾つかの実施形態は、データシンクをＲＰＬにおけるＤＯＤＡＧの根として指定する。効率的なマルチシンクルーティングを達成するために、本発明の実施形態は、現在ＲＰＬによって指定されていないフィールドをＲＰＬにおけるＤＩＯメッセージ及びＤＡＯメッセージに追加する。
【００３５】
図３Ａは、ＤＩＯメッセージを生成するデータシンクの複数のプライマリメンバーを示すＮ＿Ｐ＿Ｎｏｄｅｓフィールド３１１と、ＤＩＯメッセージを生成するデータシンクの複数のセカンダリメンバーを示すＮ＿Ｂ＿Ｎｏｄｅｓフィールド３１２と、ＤＩＯメッセージを生成するデータシンクによって推定される予測信頼性を示すＥＴＲフィールド３１３と、ＤＩＯメッセージがＤＯＤＡＧのプライマリメンバーによって送信されるか又はセカンダリメンバーによって送信されるかを示すメンバーシップフィールド３１４とを含む、ＤＩＯメッセージにおける追加フィールド３１０を示す。ノードがＤＯＤＡＧの根を自身のプライマリデータシンクとして選択する場合、ノードはＤＯＤＡＧのプライマリメンバーである。ノードがＤＯＤＡＧの根を自身のセカンダリデータシンクとして選択する場合、ノードはＤＯＤＡＧのセカンダリメンバーである。
【００３６】
最初に、データシンクはＮ＿Ｐ＿Ｎｏｄｅｓを０にセットし、Ｎ＿Ｂ＿Ｎｏｄｅｓを０にセットし、ＥＴＲを１００％にセットし、メンバーシップを１にセットする。データシンクは、ＥＴＲを、データ期間内で受信に成功したデータパケットの総数を、データ期間に受信されることが予期されるデータパケットの総数で除算したものとして推定する。シンクは、ＤＡＯメッセージにおいて受信したＮ＿Ｐａｃｋｅｔｓフィールドと用いることによって、予期されるデータパケットの総数を求める。
【００３７】
図３Ｂは、ＤＡＯメッセージ内の追加フィールド３２０を示す。メンバーシップフィールド３２１は、ＤＡＯメッセージを生成するノードがＤＯＤＡＧのプライマリメンバーであるか又はセカンダリメンバーであるかを示す。Ｎ＿Ｐａｃｋｅｔｓフィールド３２２は、データ期間において送信されるデータパケット数を示す。ノードは、データ期間における自身の予測パケット数を推定する。例えば、スマートメーターネットワークの場合、ノードは各データ期間において１つの計測データパケットを送信する。情報を伝搬するために、双方の動作モードにおいてＤＯＤＡＧの根にＤＡＯを送信することができる。
【００３８】
図４は、幾つかの実施形態によるマルチシンクＬＬＮにおけるデータシンク選択及びルート発見方法のブロック図を示す。データシンクは、適切な構成を有するＤＩＯメッセージを送信する（４０５）ことによって、ＤＯＤＡＧ形成プロセスを開始する。ＤＯＤＡＧ形成中、ＤＩＯメッセージの伝搬によって、ノードからＤＯＤＡＧの根へのルートが確立される。各ＤＯＤＡＧの形成中に、ノードは、データシンクによって（４０５）又は近傍ノードによって（４６５）送信されるＤＩＯメッセージの複数のコピーを受信する（４１０）。
【００３９】
受信ノードは、受信したＤＩＯメッセージが新たなＤＯＤＡＧ又は新たなＤＯＤＡＧバージョンを告知しているか否かをチェックする（４１５）。上記のいずれでもない場合、ノードは、ＤＩＯメッセージが参加したＤＯＤＡＧに向けられたものであるか否かをチェックする（４１８）。ＤＯＤＡＧに向けられたものでない場合、ノードはＤＩＯメッセージを破棄する（４２２）。ＤＯＤＡＧに向けられたものである場合、ノードはＲＰＬにおいて指定されているようにＤＩＯメッセージを処理する（４２０）。新たなＤＯＤＡＧ又は新たなＤＯＤＡＧバージョンが告知されている場合、ノードは、告知されたＤＯＤＡＧに参加するか否かを判定する（４３０）。参加しない場合、ノードはＤＩＯメッセージを破棄する（４２２）。参加する場合、ＤＩＯメッセージにおいて指定されているルーティングメトリック及び目的関数に基づいて、ノードはＤＩＯメッセージ送信機のサブセットを自身のＤＩＯの親、すなわち、ＤＯＤＡＧの根に対する次のホップのノードとして選択し（４３５）、自身の階数を計算する。次に、ノードは、ＤＯＤＡＧの根を自身のプライマリデータシンクとして選択するか否かを判定する（４４０）。
【００４０】
マルチシンクルーティングにおいて、複数のデータシンクが自身のＤＯＤＡＧ形成プロセスを開始することができる。したがって、ノードは、複数のデータシンクによって開始されるＤＩＯメッセージを受信する。ノードは、選択されたＤＯＤＡＧに参加した後、１つのＤＯＤＡＧの根をプライマリデータシンクとして選択し、残りのＤＯＤＡＧの根をセカンダリデータシンクとして選択する。判定を下すために用いることができる多くの方法が存在する。以下の式は、プライマリデータシンク及びセカンダリデータシンクを選択するために値Ｐ（Ｓ）をどのように用いるかを示す。
【００４１】
【数１】
2016537842.tif 000003
【００４２】
ここで、ＳはデータシンクＳを表し、ＥＴＲ（Ｓ）はＤＩＯメッセージから取得され、Ｎ（Ｓ）ＰはシンクＳのプライマリメンバーの数であり、Ｎ（Ｓ）ＳはシンクＳのセカンダリメンバーの数であり、Ｎ（Ｓ）ｍａｘは、シンクＳによってサポートすることができる最大ノード数であり、Ｈ（Ｓ）ｍｉｎは、ＤＩＯメッセージの受信したコピーから取得される、ノードからシンクＳへの最小ホップ数であり、Ｈ（Ｓ）ｍａｘは、シンクＳによって許可される最大ホップ数である。ノードは、式（１）におけるＰ（Ｓ）の値を最大にするプライマリデータシンクＳを選択し、式（１）におけるＰ（Ｓ）の後続の値を有するセカンダリデータシンクを選択する。
【００４３】
ノードがＤＯＤＡＧにプライマリメンバーとして参加することを決定する場合、ノードは階数を用いてＤＩＯメッセージを更新し（４４５）、メンバーシップフィールドを１に設定し、また、メンバーシップが１に設定されたＤＡＯメッセージ送信をスケジューリングする（４５０）。ノードがＤＯＤＡＧにセカンダリメンバーとして参加することを決定した場合、ノードは自身の階数を用いてＤＩＯを更新し（４５５）、メンバーシップを０に設定し、また、メンバーシップが０に設定されたＤＡＯメッセージ送信をスケジューリングする（４６０）。ノードはまた、Ｎ＿Ｐａｃｋｅｔｓフィールドを推定された数に設定する。ＤＩＯメッセージが更新され、ＤＡＯメッセージが構築された後、ノードは更新されたＤＩＯメッセージを送信して（４６５）ＤＯＤＡＧ形成プロセスを継続し、ＤＡＯメッセージを送信して（４７０）ＤＯＤＡＧの根からノード自身へのルートを確立する。
【００４４】
図５は、ノードＮ＊５１０がデータシンク５３０  Ｓ１及び５４０  Ｓ２の双方によって開始されたＤＩＯメッセージを受信する（５２０）例を示す。例えば、ノードＮ＊は、シンクＳ１によって開始されたＤＩＯメッセージの２つのコピーを受信し、シンクＳ２によって開始されたＤＩＯメッセージの３つのコピーを受信する。ノードＮ＊は、Ｓ２を自身のプライマリデータシンクとして選択する。
【００４５】
図６は、ノードＮ＊５１０が、データシンクＳ２を根とするプライマリＤＯＤＡＧのために、メンバーシップフィールドが１に等しいＤＡＯメッセージ６１０を送信し、データシンクＳ１を根とするセカンダリＤＯＤＡＧに対し、メンバーシップフィールドが０に等しいＤＡＯメッセージ６２０を送信する例を示す。
【００４６】
式（１）におけるＨＭａｘパラメーターを用いて、データシンクのカバレッジエリアを制御することができる。より小さいＨＭａｘの場合、データシンクはより近いノードをカバーする。利点は、プライマリデータシンクへのパスが短くなることと、遅延が短くなることとを含む。不利な点は、データ期間において、より多くのノードが自身のデータパケットを送信するときの通信干渉が大きくなることと、パケット配信レートが低くなることとを含む。
【００４７】
図７Ａは、それぞれＳ１及びＳ２を根とする２つのＤＯＤＡＧを有する低電力高損失ネットワークの例を示す。図７Ａにおいて、ＨＭａｘ＝２であり、したがって、シンクＳ１及びＳ２は、それらに近いノードをカバーする。Ｓ１は、リンク７１０を介して７つのノードをカバーし、Ｓ２はリンク７２０を介して８つのノードをカバーする。ＨＭａｘがより大きい場合、データシンクは、より小さいノード密度で広いエリアをカバーすることができる。より大きなカバレッジの利点は、データ期間における通信干渉が減ることと、パケット配信レートが高くなることとを含む。不利な点は、プライマリシンクへのパスが長くなることと、遅延が長くなることとを含む。
【００４８】
図７Ｂは、それぞれＳ３及びＳ４を根とする２つのＤＯＤＡＧを有する低電力高損失ネットワークの例を示す。図７Ｂにおいて、ＨＭａｘ＝４であり、したがって、シンクＳ３及びＳ４は、比較的大きいエリアをカバーする。Ｓ３は、リンク７３０を介して８つのノードをカバーし、Ｓ４はリンク７４０を介して１０個のノードをカバーする。
【００４９】
複数のＤＯＤＡＧに参加することによって、ノードは、複数のデータシンクに対応する複数組のルーティングパラメーターを保持する。ノードは、自身のデータを自身のプライマリデータシンクに送信する。一方、ノードは自身のプライマリデータシンクをセカンダリデータシンクに切り換えることができる。
【００５０】
データシンク切換え
マルチシンクルーティングにおいて、ノードは、同期を更新することなく、自身のプライマリデータシンクの宛先をセカンダリデータシンクに切り換えることができる。幾つかの実施形態では、切換え中、ノードは自身の子ノードの、それらの子ノードのプライマリシンクへのルートを保持する。なぜなら、子ノードは自身のプライマリシンクを、親ノードと独立して選択するためである。
【００５１】
図８Ａは、ノードＮ４及びＮ５がシンクＳ１を自身のプライマリシンクとして選択する（８１０）一例を示す。ノードＮｌ、Ｎ２及びＮ３は、シンクＳ２を自身のプライマリシンクとして選択する（８２０）。さらに、ノードＮ１はまた、Ｓ１を自身のセカンダリシンクとして選択する（８３０）。一方、ノードＮ１が自身のプライマリシンクをＳ２からＳ１に切り換える場合、切換えによって、ノードＮ３のプライマリシンクＳ２へのノードＮ３のルートが中断する。
【００５２】
ルートを断たない切換えを容易にするために、幾つかの実施形態は２つのタイプのパケット、すなわち、プライマリシンク切換え通知パケット及びプライマリシンク切換え遅延要求パケットを定義する。
【００５３】
図９Ａは、パケットのタイプを示すタイプフィールド９１１、切換えを行うことを計画しているノードを示すＮｏｄｅ＿ＩＤフィールド９１２、ノードの現在のプライマリシンクを示すＣｕｒｒｅｎｔ＿Ｓｉｎｋフィールド９１３、ノードのターゲットプライマリシンクを示すＴａｒｇｅｔ＿Ｓｉｎｋフィールド９１４、及び任意のオプションの情報を含むオプションフィールド９１５のうちの１つ又はそれらの組合せを含むプライマリシンク切換え通知パケット９１０を示す。
【００５４】
図９Ｂは、パケットのタイプを示すタイプフィールド９２１、切換え遅延を要求しているノードを示すＮｏｄｅ＿ＩＤフィールド９２２、要求ノードの現在のプライマリシンクを示すＣｕｒｒｅｎｔ＿Ｓｉｎｋフィールド９２３、待機することを要求される同期間隔数を示すＮ＿Ｗａｉｔフィールド９２４、及び任意のオプション情報を含むオプションフィールド９２５のうちの１つ又はそれらの組合せを含むプライマリシンク切換え遅延要求パケット９２０を示す。
【００５５】
プライマリルートを切断することを回避するために、ノードは制御期間においてシンク切換えパケット９１０をブロードキャストし、切換え遅延要求パケット９２０を待つ。ノードが同期間隔の終了までに切換え遅延要求パケットを受信しない場合、ノードは、次の同期間隔において、適切なメンバーシップ設定を用いてＤＡＯメッセージをＣｕｒｒｅｎｔ＿Ｓｉｎｋ及びＴａｒｇｅｔ＿Ｓｉｎｋに送信することによって、自身のプライマリシンクをＣｕｒｒｅｎｔ＿ＳｉｎｋからＴａｒｇｅｔ＿Ｓｉｎｋに切り換える。ノードが切換え遅延要求パケットを受信する場合、ノードはＮ＿Ｗａｉｔ同期間隔にわたって待機する。
【００５６】
図８Ａに示すように、Ｎ１がシンク切換えパケット９１０をブロードキャストする場合、Ｎ３はパケットを受信し、切換え遅延要求パケット９２０を送信し、ノードＮ１に、１つの同期間隔にわたって待機するように要求する。次の同期間隔において、ノードＮ３は、シンク２への自身のルートを、Ｎ１からＮ２に切り換える（８４０）。Ｎ３が自身のルートをＳ２に切り換えた後、図８Ｂに示すように、Ｎ１が自身のプライマリシンクをＳ２からＳ１に切り換えることが安全となる。
【００５７】
同期パケットの構造
本発明の幾つかの実施形態は、同期目的で様々なタイプのパケットを用いる。パケットのタイプは、ＳＹＮＣ−ＳＴＡＲＴパケットと、ＳＹＮＣ−ＲＥＱパケットと、ＳＹＮＣ−ＲＥＳパケットとを含む。
【００５８】
図１０Ａは、ＳＹＮＣ−ＳＴＡＲＴパケット１０１０の構造を示す。ＳＹＮＣ−ＳＴＡＲＴパケットは、パケットのタイプを示すタイプフィールド１０１１、同期プロセスを開始するデータシンクのＩＤを示すＳｉｎｋ＿ＩＤフィールド１０１２、データシンクによって保持される同期シーケンス番号を示すＳｙｎｃ＿Ｓｅｑフィールド１０１３、同期間隔の構成を示すＳｙｎｃ＿Ｃｏｎｆｉｇフィールド１０１４、及び他のオプションを示すオプションフィールド１０１５のうちの１つ又はそれらの組合せを含む。Ｓｙｎｃ＿Ｓｅｑフィールドの値は、データシンクがＳＹＮＣ−ＳＴＡＲＴパケットを送信する度に１インクリメントされ、Ｓｙｎｃ＿Ｓｅｑフィールドの値はゼロより大きい。
【００５９】
Ｓｙｎｃ＿Ｃｏｎｆｉｇフィールドのコンテンツ１０１６は、この同期間隔の開始時点を示すＳｔａｒｔ＿ｔｉｍｅフィールドと、次のＳＹＮＣ−ＳＴＡＲＴパケット送信の同期間隔数を示し、値がゼロより大きくなくてはならないＮｅｘｔ＿Ｓｙｎｃフィールドと、ルーティング期間の長さを示すＲｏｕｔｉｎｇ＿Ｌフィールドと、同期期間の長さを示すＳｙｎｃ＿Ｌフィールドと、データ期間の長さを示すＤａｔａ＿Ｌフィールドと、制御期間の長さを示すＣｏｎｔｒｏｌ＿Ｌフィールドとを含む。
【００６０】
図１０Ｂは、ＳＹＮＣ−ＲＥＱパケット１０２０の構造を示す。ＳＹＮＣ−ＲＥＱパケットは、パケットのタイプを示すタイプフィールド１０２１、同期要求パケットを送信するノードのＩＤを示すＮｏｄｅ＿ＩＤフィールド１０２２、ＳＹＮＣ−ＲＥＱパケットの宛先を示すＤｅｓｔ＿ＩＤフィールド１０２３、受信したＳＹＮＣ−ＳＴＡＲＴパケットから取得される同期シーケンス番号を示すＳｙｎｃ＿Ｓｅｑフィールド１０２４、及び他のオプションを示すオプションフィールド１０２５のうちの１つ又はそれらの組合せを含む。
【００６１】
図１０Ｃは、ＳＹＮＣ−ＲＥＳパケット１０３０の構造を示す。ＳＹＮＣ−ＲＥＳパケットは、パケットのタイプを示すタイプフィールド１０３１、同期応答パケットが送信されるノードのＩＤを示すＮｏｄｅ＿ＩＤフィールド１０３２、ＳＹＮＣ−ＲＥＳパケットの宛先を示すＤｅｓｔ＿ＩＤフィールド１０３３、受信したＳＹＮＣ−ＲＥＱパケットから取得される同期シーケンス番号を示すＳｙｎｃ＿Ｓｅｑフィールド１０３４、ＳＹＮＣ−ＲＥＱパケットを受信する時間を示すＴＲフィールド１０３５、ＳＹＮＣ−ＲＥＳパケットの送信時間を示すＴＴフィールド１０３６、及び他のオプションを示すオプションフィールド１０３７のうちの１つ又はそれらの組合せを含む。ＴＲ及びＴＴは、ＳＹＮＣ−ＲＥＱパケットを受信しＳＹＮＣ−ＲＥＳパケットを送信するノード又はシンクのクロックのみに基づいて記録される。
【００６２】
幾つかの実施形態は、ＳＹＮＣ−ＳＴＡＲＴパケットが送信される同期間隔間で、データパケット送信又は他の目的のために、同期間隔におけるルーティング期間及び同期期間を用いる。例えば、データシンクは他のデータシンクＳＹＮＣ−ＳＴＡＲＴパケットを監視することができ、他のデータシンクがＳＹＮＣ−ＳＴＡＲＴパケットを送信していない場合に、自身のＳＹＮＣ−ＳＴＡＲＴパケットを送信することを選択する。
【００６３】
パッシブ同期
本発明の幾つかの実施形態は、ノードが同期パケットを一切送信することなくデータシンクとの同期を実行することができるという認識に基づいている。これは、なぜなら、ＬＬＮにおいて、ノードが近傍ノードによって送信されたパケットを受信することができるためである。このため、幾つかの状況では、ノードはデータシンクと近傍ノードとの間で交換される同期パケットに基づいてデータシンクに対し同期をとることができる。さらに又は代替的に、ノードは、近傍ノードと、データシンクと以前に同期していた、同期をとられた近傍ノードとの間で交換される同期パケットに基づいて、データシンクに対し同期をとることができる。パッシブ同期により、オーバーヘッドが低減する。
【００６４】
例えば、ＬＬＮにおけるノードのうちの幾つかは、アクティブ同期を実行することができ、幾つかのノードはパッシブ同期を実行することができる。アクティブ同期では、ノードはデータシンク又は同期をとられた近傍ノードと同期パケットを交換する。一方、パッシブ同期では、ノードはパケットを一切送信せず、他のノードによって送信される同期パケットのみを用いる。
【００６５】
図１１Ａは、本発明の１つの実施形態による、ＬＬＮにおいてデータシンクに対しノードの同期をとる方法のブロック図を示す。実施形態は、ノードが近傍ノードによって送信されたパケットを受信する第１の時点１１９１を求める（１１９０）。また、実施形態は、この近傍ノードから、データシンク又は同期をとられた近傍ノードが同じパケットを受信する第２の時点１１９２を求める（１１９３）。ノード及びデータシンクは、第１の時点と第２の時点との間の差に基づいて同期をとられる（１１９５）。
【００６６】
本方法は、プロセッサ１６１を用いてノードによって実施することができる。幾つかの実施形態では、ノードは、近傍ノードによって、データシンク又は同期をとられた近傍ノードによって送信されるＳＹＮＣ−ＳＴＡＲＴパケットを受信するのに応答して送信されるＳＹＮＣ−ＲＥＱパケットを受信する。ノードは、ＳＹＮＣ−ＲＥＱパケットを受信する時点を第１の時点として記録する。さらに、ノードは、データシンク又は同期をとられた近傍ノードによって、ＳＹＮＣ−ＲＥＱパケットを受信するのに応答して送信されたＳＹＮＣ−ＲＥＳパケットを受信する。ＳＹＮＣ−ＲＥＳパケットは、データシンク又は同期をとられた近傍ノードがＳＹＮＣ−ＲＥＱパケットを受信したときを示すフィールドを含む。ノードは、ＳＹＮＣ−ＲＥＳパケットから第２の時点を取り出す。
【００６７】
幾つかの実施形態では、データシンクは、ＤＯＤＡＧトポロジーの根である。さらに又は代替的に、データシンクは、ＤＯＤＡＧの根において同期をとられた他のノードとすることができる。
【００６８】
マルチホップ同期
幾つかの実施形態では、ＬＬＮにおけるノードは、プライマリデータシンクのクロックに対し、自身のクロックの同期をとり、自身のセカンダリデータシンクに対する時間オフセットを保持する。通信オーバーヘッドを低減するために、ノードのうちの幾つかはアクティブ同期を実行し、他のノードはパッシブ同期を実行する。同期プロセスは、データシンクによって開始される。同期プロセスを開始するために、データシンクはＳＹＮＣ−ＳＴＡＲＴパケットをブロードキャストする。ブロードキャストされたＳＹＮＣ−ＳＴＡＲＴパケットは、データシンクの１ホップ近傍によって受信される。ＳＹＮＣ−ＳＴＡＲＴパケットを受信すると、このシンクを自身のプライマリデータシンクとして選択する１ホップ近傍は、アクティブ同期又はパッシブ同期のいずれかを実行して、シンクのクロックに対する自身のクロックの同期をとる。このシンクを自身のセカンダリデータシンクとして選択する、データシンクの１ホップ近傍は、アクティブ同期又はパッシブ同期のいずれかを実行して、自身のクロックオフセットを計算する。同期を実行した後、１ホップ近傍はＹＮＣ−ＳＴＡＲＴパケットをブロードキャストし、データシンクの２ホップ近傍に、それらの２ホップ近傍のクロックの同期をとらせるか又はそれらの２ホップ近傍の時間オフセットを計算させる。このプロセスは、このシンクをプライマリデータシンク又はセカンダリデータシンクとして選択する全てのノードが同期をとられるか又はクロックオフセットを計算するまで継続する。
【００６９】
図１１Ｂは、本発明の１つの実施形態によるマルチホップ同期プロセスのブロック図を示す。ＳＹＮＣ−ＳＴＡＲＴパケットを構成するために、データシンクはパケットのタイプフィールドをＳＹＮＣ−ＳＴＡＲＴに設定し、パケットのＳｉｎｋ＿ＩＤを自身のＩＤ、Ｓｙｎｃ＿Ｓｅｑ＝１に設定し、Ｓｔａｒｔ＿Ｔｉｍｅを、このパケットが送信される時点に設定し、全ての他のフィールドを適切な値に設定する。ノードがデータシンクでない場合、ノードは自身のＳｙｎｃ−Ｓｅｑを０に設定する。
【００７０】
データシンクは、ＳＹＮＣ−ＳＴＡＲＴパケットをブロードキャストする（１１００）ことによって同期を開始する。データシンクによって送信されるか（１１００）又はデータシンクにおいて同期をとられた近傍ノードによって送信される（１１８０）ＳＹＮＣ−ＳＴＡＲＴパケットを受信すると（１１０５）、ノードは、ＳＹＮＣ−ＳＴＡＲＴパケットが、現在ノードに利用可能であるよりも高いＳｙｎｃ＿Ｓｅｑ値を含むか否かを判断する（１１１０）。含まない場合、ノードはＳＹＮＣ−ＳＴＡＲＴパケットを破棄する（１１１５）。含む場合、ノードは、ＳＹＮＣ−ＲＥＱパケットがＳＹＮＣ−ＳＴＡＲＴパケット送信機に送信されているか否かをチェックする（１１２０）。送信されていない場合、ノードはアクティブ同期を開始する（１１２５）。
【００７１】
アクティブ同期中、ノードはＳＹＮＣ−ＲＥＱパケットを生成し、ランダムバックオフプロセスを実行する。ランダムバックオフプロセスの終了時までに他のノードによって送信されたＳＹＮＣ−ＲＥＱが受信されない場合、ノードは、ＳＹＮＣ−ＲＥＳ待機期間のためのタイマーを始動し、ＳＹＮＣ−ＲＥＱパケットを、ノードがそこからＳＹＮＣ−ＳＴＡＲＴパケットを受信したデータシンク又は同期をとられた近傍ノードに送信し（１１３０）、ＳＹＮＣ−ＲＥＱパケットが送信されたときを示す時点ＴＱを記録し、次に、ＳＹＮＣ−ＲＥＳパケットを待つ。ＳＹＮＣ−ＲＥＱパケットの受信ノードは、ＳＹＮＣ−ＲＥＳパケットを生成し、このＳＹＮＣ−ＲＥＳパケットを要求ノードに返送する。
【００７２】
ノードが待機期間内にＳＹＮＣ−ＲＥＳパケットを受信する（１１３５）場合、ノードは、ＳＹＮＣ−ＲＥＳパケットが受信された時点ＴＳを記録し（１１４０）、タイムレコードＴＱ、ＴＳ及びＳＹＮＣ−ＲＥＳパケットから取り出されたタイムレコードＴＲ、ＴＴを用いることによって、ＳＹＮＣ−ＳＴＡＲＴ送信機のクロックに対する自身のオフセットを計算する（１１４５）。
【００７３】
例えば、１つの実施形態において、ノードは、
【数２】
2016537842.tif 000004
に従ってクロックオフセットを求める。ここで、ＴＱはＳＹＮＣ−ＲＥＱパケットを送信する時点であり、ＴＳはＳＹＮＣ−ＲＥＳパケットを受信する時点であり、ＴＴは、データシンク又は同期をとられた近傍ノードによってＳＹＮＣ−ＲＥＳパケットを送信する時点であり、ＴＲは、データシンク又は同期をとられた近傍ノードによってＳＹＮＣ−ＲＥＱパケットを受信する時点である。
【００７４】
オフセットが計算された後、ノードは、同期プロセスが自身のプライマリデータシンクによって開始されたか否かを判断する（１１５０）。自身のプライマリデータシンクによって開始されていない場合、ノードはクロックオフセットを記憶する（１１５５）。自身のプライマリデータシンクによって開始された場合、ノードは、ＳＹＮＣ−ＳＴＡＲＴパケットを送信したノードのクロックに対し、自身のクロックの同期をとる（１１７５）。ノードが自身のクロックの同期をとった後、ノードはＳＹＮＣ−ＳＴＡＲＴパケットを送信して（１１８０）、自身の近傍に同期プロセスを継続させる。ノードが待機期間内にＳＹＮＣ−ＲＥＳパケット１１３５を受信しない場合、ノードは再び同期を開始する。
【００７５】
ＳＹＮＣ−ＳＴＡＲＴパケットを受信した後、ノードがＳＹＮＣ−ＳＴＡＲＴ送信機、例えばデータシンク又はデータシンクとの同期をとられたノードに送信されたＳＹＮＣ−ＲＥＱパケットを受信する（１１２０）場合、ノードはパッシブ同期プロセスを開始する（１１６０）。
【００７６】
パッシブ同期中、ノードは、ＳＹＮＣ−ＲＥＱパケットが受信される時点ＴＰを記録し（１１６５）、ＳＹＮＣ−ＲＥＳパケットを待つためのタイマーを始動する。ノードが対応するＳＹＮＣ−ＲＥＳパケットを受信する（１１７０）場合、ノードは、ＳＹＮＣ−ＳＴＡＲＴ送信機のクロックに対するクロックオフセットを以下のように計算する（１１４５）。
【００７７】
【数３】
2016537842.tif 000005
【００７８】
ここで、ＴＰは、ノードによってＳＹＮＣ−ＲＥＱパケットを受信する時点であり、ＴＲは、ＳＹＮＣ−ＳＴＡＲＴパケットを送信したデータシンク又は同期をとられた近傍ノードによってＳＹＮＣ−ＲＥＱパケットを受信する時点であり、ＴＲ時間はＳＹＮＣ−ＲＥＳパケットに含まれる。
【００７９】
オフセットが計算された後、ノードは、同期プロセスが自身のプライマリデータシンクによって開始されたか否かを判断する（１１５０）。自身のプライマリデータシンクによって開始されていない場合、ノードはオフセットを記憶する（１１５５）。自身のプライマリデータシンクによって開始された場合、ノードは、ＳＹＮＣ−ＳＴＡＲＴ送信機のクロックに対し、自身のクロックの同期をとる（１１７５）。ノードが自身のクロックの同期をとった後、ノードはＳＹＮＣ−ＳＴＡＲＴパケットを送信し（１１８０）、自身の近傍に同期プロセスを継続させる。
【００８０】
パッシブ同期ノード１１７０が待機期間内にＳＹＮＣ−ＲＥＳパケットを受信しない場合、ノードは同期１１７１を再始動する。パッシブ同期を実行するノードが複数のＳＹＮＣ−ＲＥＱ及びＳＹＮＣ−ＲＥＳの対を受信する場合、ノードはこれらの対を用いてクロック精度を改善することができる。
【００８１】
同期期間が存在する同期間隔内で、ノードが自身のプライマリデータシンク又はセカンダリデータシンクに対応する同期関連パケットを一切受信しない場合、ノードは、Ｓｙｎｃ＿Ｓｅｑが０に設定されたＳＹＮＣ−ＲＥＱパケットをブロードキャストすることができる。Ｓｙｎｃ＿Ｓｅｑが０に等しいＳＹＮＣ−ＲＥＱパケットを受信すると、現在の同期期間において同期を実行した近傍ノードが、ＳＹＮＣ−ＲＥＳパケットを用いて応答し、要求ノードにアクティブ同期を実行させることができる。
【００８２】
図１２Ａ及び図１２Ｂは、同期プロセスの例を示す。図１２Ａに示すように、同期プロセスを開始するために、データシンクＳはＳＹＮＣ−ＳＴＡＲＴパケットをブロードキャストする（１２１０）。１ホップ近傍Ｎ１〜Ｎ５は、データシンクＳのカバレッジ範囲１２２０内にある。したがって、ノードＮ１〜Ｎ５は、ＳＹＮＣ−ＳＴＡＲＴパケットを受信する。１ホップ近傍Ｎ１は、ＳＹＮＣ−ＳＴＡＲＴパケットの受信時に、データシンクＳに対するアクティブ同期を実行し、１ホップ近傍Ｎ２は、データシンクＳに対しパッシブ同期を実行する。
【００８３】
図１２Ｂにおいて、ノードＮ１はデータシンクＳとのアクティブ同期を実行する。ノードＮ１はＳＹＮＣ−ＲＥＱパケットを生成し、ＳＹＮＣ−ＲＥＱパケットをデータシンクＳに送信する（１２３０）。ノードＮ１のカバレッジエリア１２４０内に４つのノードＳ、Ｎ２、Ｎ６及びＮ７が存在する。したがって、これらの４つのノードはノードＮ１によって送信されたＳＹＮＣ−ＲＥＱパケットを受信することができる。
【００８４】
ＳＹＮＣ−ＲＥＱパケットを受信するのに応答して、データシンクＳは、ＳＹＮＣ−ＲＥＳパケットを生成し、このＳＹＮＣ−ＲＥＳパケットをノードＮ１に返送する（１２５０）。ノードＮ１〜Ｎ５は、データシンクＳによって送信されたＳＹＮＣ−ＲＥＳを受信することができる。ノードＮ１は、ＳＹＮＣ−ＲＥＳパケットを受信すると、データシンクＳのクロックに対し自身のクロックの同期をとる。次に、ノードＮ１は、ＳＹＮＣ−ＳＴＡＲＴパケットを送信し（１２１０）、自身の近傍に同期プロセスを実行させる。この例において、ノードＳ、Ｎ２、Ｎ６及びＮ７は、ノードＮ１によって送信されるＳＹＮＣ−ＳＴＡＲＴパケットを受信することができる。一方、この例において、ノードＮ２は、シンクＳに対するパッシブ同期を実行することができる。ノードＮ６及びＮ７は、ノードＮ１によって送信されるＳＹＮＣ−ＲＥＱパケットを受信することができるが、ノードＮ６及びＮ７はデータシンクＳによって送信されるＳＹＮＣ−ＲＥＳパケットを受信することができない。結果として、ノードＮ６及びＮ７はデータシンクＳとのパッシブ同期を実行することができない。代わりに、ノードＮ６及びＮ７のうちの一方は、ノードＮ１とのアクティブ同期を実行することができ、他方はノードＮ１とのパッシブ同期を実行することができる。
【００８５】
ノードＮ１がデータシンクＳにＳＹＮＣ−ＲＥＱパケットを送信する（１２２０）とき、ノードＮ２はこのＳＹＮＣ−ＲＥＱパケットを受信する（１２６０）。また、ノードＮ２は、図１２Ａに示すように、データシンクＳによってブロードキャストされるＳＹＮＣ−ＳＴＡＲＴパケットを受信する。したがって、ノードＮ２は、ＳＹＮＣ−ＲＥＳパケットを監視することによってパッシブ同期を実行することができる。ノードＮ２は、ノードＮ１によって送信されたＳＹＮＣ−ＲＥＱパケットの受信時の時点ＴＰを記録し、ＳＹＮＣ−ＲＥＳパケットを待つためのタイマーを始動する。ノードＮ２は、ＳＹＮＣ−ＲＥＳ待機期間内でデータシンクＳによってノードＮ１に送信されたＳＹＮＣ−ＲＥＳパケットを受信し（１２７０）、そのクロックをデータシンクＳのクロックに同期する。幾つかの実施形態では、ノードの第１のプリファレンスは、パッシブ同期を実行して通信オーバーヘッドを低減することである。
【００８６】
図１３Ａ〜図１３Ｆは、様々なメッセージのフローを示す。図１３Ａに示すように、ＤＩＯメッセージは、シンクノード１３１０によって開始され、ネットワークを通じて伝搬される（１３２０）。図１３Ｂは、ＤＡＯメッセージが非シンクノード１３２５によって生成され、シンクノード１３１０に向かって流れるＤＡＯメッセージのフロー１３３０の概略図を示す。図１３Ｃは、シンクノード１３１０によって開始され、ネットワークを通じて伝搬される（１３４０）、ＳＹＮＣ−ＳＴＡＲＴメッセージのフロー１３４０の概略図である。
【００８７】
図１３Ｄは、ＳＹＮＣ−ＲＥＱメッセージ１３５１及びＳＹＮＣ−ＲＥＳメッセージ１３５３の伝送を示す。同期をとられていないノードＮ２  １３５８は、ＳＹＮＣ−ＲＥＱメッセージ１３５１を生成し、このメッセージ１３５１を、同期をとられたノードＮ１  １３５０に送信する。ノード１３５０は、ＳＹＮＣ−ＲＥＳメッセージｌ３５３で返答する。近傍ノードＮ３は、メッセージ１３５１及び１３５３の双方をオーバーヒアし、パッシブ同期を実行することができる。
【００８８】
図１３Ｅは、シンク切換えメッセージ１３７２及び切換え遅延メッセージ１３７６の送信を示し、ここで、ノードＮ１  １３７４は、シンクを切り換えるために、シンク切換えメッセージ１３７２を自身の近傍ノードにブロードキャストする。近傍ノードＮ２  １３７８はノードＮ１が即時のシンク切換えを行うことを所望せず、したがって、切換え遅延メッセージ１３７６をノードＮ１に送信する。
【００８９】
図１３Ｆは、非シンクノード１３２５によって生成されるデータパケットのフロー１３８０、及びシンクノード１３１０に向かうフローの概略図を示し、シンクノード１３１０は次に、データパケットをデータセンター１３８５に転送する。
【００９０】
本発明の上記の実施形態は数多くの方法のいずれかにおいて実現することができる。例えば、それらの実施形態は、ハードウェア、ソフトウェア又はその組み合わせを用いて実現することができる。ソフトウェアにおいて実現されるとき、そのソフトウェアコードは、単一のコンピューター内に設けられるにしても、複数のコンピューター間に分散されるにしても、任意の適切なプロセッサ、又はプロセッサの集合体において実行することができる。そのようなプロセッサは集積回路として実現することができ、集積回路構成要素内に１つ又は複数のプロセッサが含まれる。しかしながら、プロセッサは、任意の適切な構成の回路を用いて実現することができる。そのプロセッサは、当該技術分野において既知であるように、メモリ、送受信機及び入／出力インターフェースに接続することができる。
【００９１】
また、本明細書において概説される種々の方法又はプロセスは、種々のオペレーティングシステム又はプラットフォームのいずれか１つを利用する１つ又は複数のプロセッサ上で実行可能であるソフトウェアとしてコード化することができる。代替的に、又はそれに加えて、本発明は、信号等の、コンピューター可読記憶媒体以外のコンピューター可読媒体として具現することができる。
【００９２】
用語「プログラム」又は「ソフトウェア」は、本明細書において、コンピューター又は他のプロセッサをプログラミングし、上記で論じられたような本発明の種々の態様を実施するために用いることができる任意のタイプのコンピューターコード又は１組のコンピューター実行可能命令を指すために、一般的な意味において用いられる。
【００９３】
請求項要素を修飾するために特許請求の範囲において「第１の」、「第２の」のような序数の用語を使用することは、それだけで、或る請求項要素が別の請求項要素よりも優先度が高いこと、優位であること、若しくは上位にあることを、又は方法の動作が実行される時間的な順序を暗示するのではなく、請求項要素を区別するために、或る特定の名称を有する１つの請求項要素を（序数用語を使用しなければ）同じ名称を有する別の要素から区別するラベルとして単に使用される。
【図１Ａ】
2016537842.tif 000006
【図１Ｂ】
2016537842.tif 000007
【図１Ｃ】
2016537842.tif 000008
【図２Ａ】
2016537842.tif 000009
【図２Ｂ】
2016537842.tif 000010
【図３Ａ】
2016537842.tif 000011
【図３Ｂ】
2016537842.tif 000012
【図４】
2016537842.tif 000013
【図５】
2016537842.tif 000014
【図６】
2016537842.tif 000015
【図７Ａ】
2016537842.tif 000016
【図７Ｂ】
2016537842.tif 000017
【図８Ａ】
2016537842.tif 000018
【図８Ｂ】
2016537842.tif 000019
【図９Ａ】
2016537842.tif 000020
【図９Ｂ】
2016537842.tif 000021
【図１０Ａ】
2016537842.tif 000022
【図１０Ｂ】
2016537842.tif 000023
【図１０Ｃ】
2016537842.tif 000024
【図１１Ａ】
2016537842.tif 000025
【図１１Ｂ】
2016537842.tif 000026
【図１２Ａ】
2016537842.tif 000027
【図１２Ｂ】
2016537842.tif 000028
【図１３Ａ】
2016537842.tif 000029
【図１３Ｂ】
2016537842.tif 000030
【図１３Ｃ】
2016537842.tif 000031
【図１３Ｄ】
2016537842.tif 000032
【図１３Ｅ】
2016537842.tif 000033
【図１３Ｆ】
2016537842.tif 000034
【手続補正書】
【提出日】平成28年3月24日(2016.3.24)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
したがって、本発明の１つの実施形態は、宛先指向有向非巡回グラフ（ＤＯＤＡＧ）トポロジーになるように編成されたノードの無線ネットワークにおけるデータシンクに対しノードの同期をとる方法を開示する。本方法は、データシンクからノードに拡張型ＤＯＤＡＧ情報オブジェクト（ＤＩＯ）メッセージを送信することと、ノードからデータシンクに拡張型宛先告知オブジェクト（ＤＡＯ）メッセージを送信することと、近傍ノードによって送信されたパケットを、ノードによって受信する第１の時点を求めることと、近傍ノードによって送信されたパケットを、データシンク又は同期をとられた近傍ノードによって受信する第２の時点を求めることと、第１の時点と第２の時点との間の差に基づいてデータシンクに対しノードの同期をとることと、近傍ノードによって、データシンク又は同期をとられた近傍ノードによって送信されたＳＹＮＣ−ＳＴＡＲＴパケットを受信することに応答して送信されるＳＹＮＣ−ＲＥＱパケットを、ノードによって受信することと、データシンク又は同期をとられた近傍ノードによって、ＳＹＮＣ−ＲＥＱパケットを受信することに応答して送信されたＳＹＮＣ−ＲＥＳパケットを、ノードによって受信することと、ノードによって及びデータシンク又は同期をとられた近傍ノードによってＳＹＮＣ−ＲＥＱパケットを受信した時点に基づいて、ノードのクロックとデータシンクのクロックとの間のオフセットを求めることと、ノードのクロックと、データシンクのクロックとの間のオフセットに基づいてデータシンクに対しノードの同期をとることとを含む。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
宛先指向有向非巡回グラフ（ＤＯＤＡＧ）トポロジーになるように編成されたノードの無線ネットワークにおけるデータシンクに対しノードの同期をとる方法であって、
前記データシンクから前記ノードに拡張型ＤＯＤＡＧ情報オブジェクト（ＤＩＯ）メッセージを送信することと、
前記ノードから前記データシンクに拡張型宛先告知オブジェクト（ＤＡＯ）メッセージを送信することと、
近傍ノードによって送信されたパケットを、前記ノードによって受信する第１の時点を求めることと、
前記近傍ノードによって送信されたパケットを、前記データシンク又は同期をとられた近傍ノードによって受信する第２の時点を求めることと、
前記第１の時点と前記第２の時点との間の差に基づいて前記データシンクに対し前記ノードの同期をとることと、
前記近傍ノードによって、前記データシンク又は前記同期をとられた近傍ノードによって送信されたＳＹＮＣ−ＳＴＡＲＴパケットを受信することに応答して送信されるＳＹＮＣ−ＲＥＱパケットを、前記ノードによって受信することと、
前記データシンク又は前記同期をとられた近傍ノードによって、前記ＳＹＮＣ−ＲＥＱパケットを受信することに応答して送信されたＳＹＮＣ−ＲＥＳパケットを、前記ノードによって受信することと、
前記ノードによって及び前記データシンク又は前記同期をとられた近傍ノードによって前記ＳＹＮＣ−ＲＥＱパケットを受信した時点に基づいて、前記ノードのクロックと前記データシンクのクロックとの間のオフセットを求めることと、
前記ノードのクロックと、前記データシンクのクロックとの間のオフセットに基づいて前記データシンクに対し前記ノードの同期をとることと、
を含む、
方法。
【請求項２】
前記ノードのクロックと、前記データシンクのクロックとの間の前記オフセットを、
Ｏｆｆｓｅｔ＝ＴＲ−ＴＮ
に従って求めることと、
なお、ここで、ＴＮは前記第１の時点であり、ＴＲは前記第２の時点であり、
前記オフセットに従って、前記データシンクのクロックとの、前記ノードのクロックの同期をとることと、
を更に含む、
請求項１に記載の方法。
【請求項３】
前記データシンクがプライマリデータシンクであるか又はセカンダリデータシンクであるかを判断することと、
選択されたデータシンクが前記プライマリデータシンクである場合、前記オフセットに基づいて、前記データシンクの前記クロックとの、前記ノードの前記クロックの同期をとることと、
そうでない場合、前記ノードに前記オフセットを記憶することと、
を更に含む、
請求項１に記載の方法。
【請求項４】
宛先指向有向非巡回グラフ（ＤＯＤＡＧ）トポロジーになるように編成された無線ネットワークを形成するノードであって、
クロックと、
近傍ノードによって、データシンク又は同期をとられた近傍ノードによって送信されたＳＹＮＣ−ＳＴＡＲＴパケットを受信することに応答して、データシンク又は同期をとられた近傍ノードに送信されるＳＹＮＣ−ＲＥＱパケットを受信し、前記ＳＹＮＣ−ＲＥＱパケットの受信に応答して前記データシンク又は前記同期をとられた近傍ノードによって送信されるＳＹＮＣ−ＲＥＳパケットを受信する受信機と、
前記ノードによって、前記クロックを用いて、前記ＳＹＮＣ−ＲＥＱパケットの受信の第１の時点を求め、前記ＳＹＮＣ−ＲＥＳパケットを用いて、前記データシンク又は前記同期をとられた近傍ノードによる前記ＳＹＮＣ−ＲＥＱパケットの受信の第２の時点を求めるとともに、前記ノードによって及び前記データシンク又は前記同期をとられた近傍ノードによって前記ＳＹＮＣ−ＲＥＱパケットを受信した時点に基づいて、前記ノードのクロックと前記データシンクのクロックとの間のオフセットを求めるプロセッサであって、それによって該プロセッサは、前記オフセットに基づいて、前記データシンク又は前記同期をとられた近傍ノードに対し前記ノードの同期をとる、プロセッサと、
を備える、
ノード。
【請求項５】
前記プロセッサは、前記データシンクのクロックとの、前記ノードの前記クロックの同期を実行する、
請求項４に記載のノード。
【請求項６】
前記プロセッサは、前記データシンクのクロックとの、前記ノードの前記クロックの同期を実行し、前記ノードの前記クロックと、前記ネットワークにおける第２のデータシンクのクロックとの間のクロックオフセットを求め、前記ノードは、
前記クロックオフセットを記憶するメモリと、
前記同期を更新することなく、前記データシンク及び前記第２のデータシンクに対し同期をとられたデータパケット送信を行う送信機と、
を更に備える、
請求項４に記載のノード。
【請求項７】
前記メモリは、１組のデータシンクとの前記ノードの同期をとる１組のクロックオフセットを記憶する、
請求項６に記載のノード。
【請求項８】
前記送信機は、前記データパケットを前記データシンクに送信し、制御期間内にシンク切換えパケットをブロードキャストし、前記ブロードキャストされたシンク切換えパケットに応答して、切換え遅延要求パケットが同期期間内に受信されない限り、前記データパケットを前記第２のデータシンクに送信する、
請求項６に記載のノード。
【国際調査報告】
2016537842.tif 000035
2016537842.tif 000036
2016537842.tif 000037