(57)【要約】  デバイスをネットワークに参加させる前に、デバイスはローカル接続を介して外部システムに接続される。外部システムはデバイスにローカル時刻値およびローカル時刻誤差値を含むローカルタイムスタンプを供給する。デバイスは外部システムと通信するために時刻情報を使用する。デバイスがネットワークに参加すると、デバイスは時刻情報を含む通信をネットワーク上で送信する。その場合、通信はデバイスの時刻値に基づく時刻値および最大誤差を示す値に設定された時刻誤差値を含む。ネットワークは潜在的に低品質の時刻情報から保護される。時刻誤差値が最大誤差を示すとき、通信を受信するあらゆるデバイスは時刻情報を拒否する。
2019536379.tif 000002
【特許請求の範囲】
【請求項１】
デバイスをネットワークに参加させる前に、前記デバイスを構成する方法であって、
外部システムと通信を確立する工程と、
ここで、前記通信は前記デバイスと前記外部システムとを接続するローカル通信インタフェースを介して確立される、
前記外部システムから前記ローカル通信インタフェースを介してローカルタイムスタンプを受信する工程と、
ここで、前記ローカルタイムスタンプは、ローカル時刻値およびローカル時刻誤差値を含む、
前記デバイスが前記ローカル通信インタフェースを介して受信したタイムスタンプを受け入れるよう構成されているか、または拒否するよう構成されているかを判定する工程と、
前記デバイスが前記ローカル通信インタフェースを介して受信したタイムスタンプを拒否するよう構成されているとき、前記デバイスが有効なデバイス時刻値を有するか否かを判定する工程と、
前記デバイス時刻値が有効でないとき、前記デバイス時刻値を前記ローカル時刻値に設定し、デバイス時刻誤差値を最大誤差を表す時刻誤差値に設定する工程と、
前記デバイスの構成を完了する工程と、
前記デバイスを前記ネットワークに参加させる工程と、
前記デバイス時刻値と前記デバイス時刻誤差値とをメンテナンスパケットに含める工程と、
前記メンテナンスパケットを前記ネットワーク上で送信する工程と、
を含む、
方法。
【請求項２】
前記ローカル通信インタフェースは、Ｂｌｕｅｔｏｏｔｈ（登録商標）接続またはシリアル接続のうちの１つである、
請求項１に記載の方法。
【請求項３】
前記デバイスの構成を完了する工程は、現在のデバイス時刻値に基づくデジタル署名を含む通信を前記外部システムに送信することを含む、
請求項１に記載の方法。
【請求項４】
さらに、
経過時間を反映するよう前記デバイス時刻値を更新する工程と、
前記ネットワークを介して第２デバイスにより送信された第２メンテナンスパケットを受信する工程と、
ここで、前記第２メンテナンスパケットは、第２時刻値と第２時刻誤差値とを有する第２タイムスタンプを含む、
前記第２時刻誤差値を前記デバイス時刻誤差値と比較する工程と、
前記第２時刻誤差値と前記デバイス時刻誤差値との比較が、前記第２時刻値が更新された前記デバイス時刻値よりも新しいことを示すとき、前記デバイス時刻値として前記第２時刻値を受け入れ、前記デバイス時刻誤差値を前記第２時刻誤差値よりも大きい誤差を反映した値に設定する工程と、
を含む、
請求項１に記載の方法。
【請求項５】
前記第２時刻値を受け入れ、前記デバイス時刻誤差値を前記第２時刻誤差値よりも大きい値を反映した値に設定した後、さらに、
前記デバイス時刻値を更新し続ける工程と、
更新された前記デバイス時刻値と前記デバイス時刻誤差値とを第３メンテナンスパケットに含める工程と、
前記第３メンテナンスパケットを前記ネットワーク上で送信する工程と、
を含む、
請求項４に記載の方法。
【請求項６】
前記デバイスの構成が完了した後、前記デバイスは前記ネットワークに接続された複数のネットワークデバイスと通信し、ネットワークメンテナンスを実行する、
請求項１に記載の方法。
【請求項７】
前記デバイスが前記ローカル通信インタフェースを介して受信したタイムスタンプを受け入れるよう構成されているか、または拒否するよう構成されているかを判定する工程は、前記デバイスの構成設定をチェックすることを含む、
請求項１に記載の方法。
【請求項８】
さらに、
経過時間を反映するよう前記デバイス時刻値を更新する工程と、
前記ローカル通信インタフェースを介して前記外部システムから第２ローカルタイムスタンプを受信する工程と、
ここで、前記第２ローカルタイムスタンプは、第２ローカル時刻値と第２ローカル時刻誤差値とを含む、
前記デバイスが前記ローカル通信インタフェースを介して受信したタイムスタンプを受け入れるよう構成されているか、または拒否するよう構成されているかを判定する工程と、
前記デバイスが前記ローカル通信インタフェースを介して受信したタイムスタンプを拒否するよう構成されているとき、前記デバイス時刻値が有効であるか否かを判定する工程と、
前記デバイス時刻値が有効であるとき、前記ローカル通信インタフェースを介して受信した前記第２ローカルタイムスタンプを拒否する工程と、
前記デバイス時刻値を更新し続ける工程と、
を含む、
請求項１に記載の方法。
【請求項９】
外部システムに接続するよう構成されたローカル通信インタフェースと、
ネットワークを介してネットワークデバイスと通信するよう構成されたトランシーバと、
発振器と、
複数のデバイス構成設定を記憶するメモリ装置と、
コンピュータ読み取り可能な記憶媒体に記憶された命令を実行し、動作を実行するよう構成された処理装置と、
を備え、
前記命令は、
前記外部システムとの通信を確立すること、
ここで、前記通信は前記ローカル通信インタフェースを介して確立される、
前記ローカル通信インタフェースを介して前記外部システムからローカルタイムスタンプを受信すること、
ここで、前記ローカルタイムスタンプはローカル時刻値とローカル時刻誤差値とを含む、
前記デバイスが、前記ローカル通信インタフェースを介して受信したタイムスタンプを受け入れるよう構成されるか、または拒否するよう構成されるかを判定すること、
前記デバイスが前記ローカル通信インタフェースを介して受信した前記タイムスタンプを拒否するよう構成されるとき、前記デバイスが有効なデバイス時刻値を有するか否かを判定すること、
前記デバイス時刻値が無効であるとき、前記デバイス時刻値を前記ローカル時刻値に設定し、デバイス時刻誤差値を最大誤差を示す時刻誤差値に設定すること、
前記発振器を使用して前記デバイス時刻値を維持すること、
前記デバイス時刻値と前記デバイス時刻誤差値をメンテナンスパケットに含めること、
前記メンテナンスパケットを前記トランシーバを介して前記ネットワーク上で送信すること、
を含む、
デバイス。
【請求項１０】
前記ローカル通信インタフェースは、Ｂｌｕｅｔｏｏｔｈ（登録商標）接続またはシリアル接続のうち１つを提供するよう構成される、
請求項９に記載のデバイス。
【請求項１１】
前記命令は、さらに、
現在のデバイス時刻値に基づくデジタル署名を含む通信を前記外部システムに送信すること、
を含む、
請求項９に記載のデバイス。
【請求項１２】
前記命令は、さらに、
前記ネットワークを介して第２デバイスにより送信された第２メンテナンスパケットを受信すること、
ここで、前記第２メンテナンスパケットは第２時刻値と第２時刻誤差値とを有する第２タイムスタンプを含む、
前記第２時刻誤差値を前記デバイス時刻誤差値と比較すること、
前記第２時刻誤差値と前記デバイス時刻誤差値の比較が、前記第２時刻値が現在のデバイス時刻値よりも新しいことを示すとき、前記デバイス時刻値として前記第２時刻値を受け入れ、前記デバイス時刻誤差値を前記第２時刻誤差値よりも大きい誤差を反映した値に設定すること、
を含む、
請求項９に記載のデバイス。
【請求項１３】
前記デバイスが前記ローカル通信インタフェースを介して受信したタイムスタンプを受け入れるよう構成されるか、または拒否するよう構成されるかを判定することは、デバイス構成設定をチェックすることを含む、
請求項９に記載のデバイス。
【請求項１４】
前記命令は、さらに
前記ローカル通信インタフェースを介して前記外部システムから第２ローカルタイムスタンプを受信すること、
ここで、前記第２ローカルタイムスタンプは第２ローカル時刻値と第２ローカル時刻誤差値とを含む、
前記デバイスが前記ローカル通信インタフェースを介して受信したタイムスタンプを受け入れるよう構成されるか、または拒否するよう構成されるかを判定すること、
前記デバイスが前記ローカル通信インタフェースを介して受信した前記タイムスタンプを拒否するよう構成されるとき、前記デバイス時刻値が有効であるか否かを判定すること、
前記デバイス時刻値が有効であるとき、前記ローカル通信インタフェースを介して受信した前記第２ローカルタイムスタンプを拒否すること、
前記デバイス時刻値を維持し続けること、
を含む、
請求項９に記載のデバイス。
【請求項１５】
ネットワークにデバイスを参加させる前に前記デバイスを構成する方法であって、
外部システムとの通信を確立する工程と、
ここで、前記通信は、前記デバイスと前記外部システムとを接続するローカル通信インタフェースを介して確立される、
前記ローカル通信インタフェースを介して前記外部システムからローカルタイムスタンプを受信する工程と、
ここで、前記ローカルタイムスタンプは、ローカル時刻値とローカル時刻誤差値とを含む、
前記デバイスが前記ローカル通信インタフェースを介して受信したタイムスタンプを受け入れるよう構成されるか、または拒否するよう構成されるかを判定する工程と、
前記デバイスが前記ローカル通信インタフェースを介して受信した前記タイムスタンプを拒否するよう構成されるとき、前記デバイスが有効なデバイス時刻値を有するか否かを判定する工程と、
前記デバイス時刻値が有効でないとき、前記デバイス時刻値を前記ローカル時刻値に設定し、デバイス時刻誤差値を最大誤差を表す時刻誤差値に設定する工程と、
前記外部システムに現在のデバイス時刻値に基づくデジタル署名を含む通信を送信する工程と、
前記ネットワークに前記デバイスを参加させる工程と、
を含む、
方法。
【請求項１６】
さらに
前記デバイス時刻値を維持する工程と、
前記デバイス時刻値と前記デバイス時刻誤差値をパケットに含める工程と、
前記パケットを前記ネットワーク上で送信する工程と、
を含む、
請求項１５に記載の方法。
【請求項１７】
さらに、
前記デバイス時刻値を維持する工程と、
前記ネットワークを介して第２デバイスにより送信された第２メンテナンスパケットを受信する工程と、
ここで、前記第２メンテナンスパケットは、第２時刻値と第２時刻誤差値とを有する第２タイムスタンプを含む、
前記第２時刻誤差値を前記デバイス時刻誤差値と比較する工程と、
前記第２時刻誤差値と前記デバイス時刻誤差値との比較が、前記第２時刻値が現在のデバイス時刻値よりも新しいことを示すとき、前記デバイス時刻値として前記第２時刻値を受け入れ、前記デバイス時刻誤差値を前記第２時刻誤差値よりも大きい誤差を反映した値に設定する工程と、
を含む、
請求項１５に記載の方法。
【請求項１８】
前記デバイスが前記ローカル通信インタフェースを介して受信したタイムスタンプを受け入れるよう構成されるか、または拒否するよう構成されるかを判定する工程は、デバイス構成設定をチェックすることを含む、
請求項１５に記載の方法。
【請求項１９】
さらに、
前記ローカル通信インタフェースを介して前記外部システムから第２ローカルタイムスタンプを受信する工程と、
ここで、前記第２ローカルタイムスタンプは第２ローカル時刻値と第２ローカル時刻誤差値とを含む、
前記デバイスが前記ローカル通信インタフェースを介して受信したタイムスタンプを受け入れるよう構成されるか、または拒否するよう構成されるかを判定する工程と、
前記デバイスが前記ローカル通信インタフェースを介して受信した前記タイムスタンプを拒否するよう構成されるとき、前記デバイス時刻値が有効であるか否かを判定する工程と、
前記デバイス時刻値が有効であるとき、前記ローカル通信インタフェースを介して受信した前記第２ローカルタイムスタンプを拒否する工程と、
前記デバイス時刻値を維持し続ける工程と、
を含む、
請求項１５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不正確な時刻情報を伝播することからネットワークを保護することに関する。より詳細には、ローカルインタフェースを介してネットワークデバイスにより受信された時刻情報を管理することに関する。
【背景技術】
【０００２】
ネットワークの動作は、正確で、かつネットワーク上の他のデバイスと同期された時刻を有するネットワーク上のデバイスに依存するため、時刻はネットワークにおいて重要な要素である。多くのネットワークにおいて、時刻情報はデバイス間で共有される。これらのネットワークにおいて、デバイスのうちの１つがネットワークに不正確な時刻を差し込むと、ネットワークの動作は、品質低下が起こったり、失敗したりすることさえある。
【０００３】
あるデバイスにより差し込まれた不正確な時刻を伝播することからネットワークを保護するために、ネットワークデバイスは、ネットワークの一部ではないデバイスから受信したあらゆる時刻情報を拒否するようデフォルトで構成されることがある。これは、構成に時刻情報を要するデバイスに対して問題を引き起こす場合がある。デバイスは構成されるまでネットワークに参加できず、また、デバイスはネットワークに参加するまで時刻情報を取得することができない。このため、デバイスの構成ができるように時刻情報をデバイスに供給する必要があるが、ネットワークを通じて潜在的に不正確な時刻情報を伝播することを防止する必要がある。
【発明の概要】
【０００４】
時刻情報はデバイスがネットワークに参加する前にデバイスに供給されるため、デバイスは外部システムと通信できる。デバイスはローカル接続を介して外部デバイスに接続され、外部デバイスから受信した時刻情報を受信および使用することができる。ネットワークに接続されたときに、デバイスがローカル接続から受信した時刻情報を拒否するよう構成されていたとしても、デバイスは外部システムからの時刻情報を受け入れる。デバイスは、デバイスの時刻値を外部デバイスから受信した時刻値に設定し、デバイスの時刻誤差値を最大値に設定する。デバイスがネットワークに参加したときに、デバイスによってネットワーク上で最初に通信された時刻情報は、最大時刻誤差値を含む。最大時刻誤差値が時刻値の質が低いことを示すため、そのデバイスから時刻情報を受信するあらゆる他のデバイスは時刻情報を拒否する。
【０００５】
これらの例示的な態様および特徴は、本発明を限定または定義するために言及されているのではなく、本出願において開示された発明概念の理解を助けるための例を提供するためのものである。本発明の他の形態、利点、および特徴は、説明全体を検討した後に明らかになるであろう。
【図面の簡単な説明】
【０００６】
【図１】例示的な動作環境を示すブロック図である。
【図２】例示的な方法を示すフロー図である。
【図３】例示的なデバイスを示すブロック図である。
【発明を実施するための形態】
【０００７】
本発明の態様は、ネットワークを潜在的に不正確な時刻を伝播することから保護しつつ、デバイスがローカルインタフェースを介して受信された時刻情報を受け入れて使用することを可能にする。多くのデバイスは、ローカルタイムスタンプを拒否するようデフォルトで構成されているが、外部システムと通信するため、および、構成またはメンテナンスプロセスを完了するために時刻情報が必要な場合がある。デバイスをネットワークに参加させる前に、デバイスはローカル接続を介して外部システムに接続される。外部システムは、デバイスにローカル時刻値とローカル時刻誤差値とを含むタイムスタンプを供給する。まだネットワークに参加していないために、デバイスがローカルタイムスタンプを拒否するよう構成され、有効な時刻を有していない場合、デバイスはローカルタイムスタンプを受け入れて、デバイスの時刻誤差値を最大値に設定する。デバイスは外部システムと安全に通信するためにその時刻情報を使用することができる。デバイスがネットワークに参加した後、デバイスは時刻情報を含む通信をネットワークに送信することができる。もしそうであれば、その通信はデバイスの時刻値に基づく時刻値と、最大値に設定された時刻誤差値とを含む。時刻誤差値が最大誤差を示すため、その通信を受信するあらゆるデバイスは時刻情報を拒否する。
【０００８】
（例示的な動作環境）
図１は、例示的な動作環境を示し、ネットワークに接続された複数のネットワークデバイス１２０〜１２５を接続するネットワーク１００を含む。ネットワークは無線メッシュネットワークであってもよい。一例では、ネットワークはＡＭＩネットワークの一部である。１つまたは複数のネットワークデバイスは、ＮＴＰサーバのような信頼できる時刻源に接続されてもよい。図１は、ネットワークデバイス１２０がローカル接続１３２を介してＮＴＰサーバ１３０に接続されていることを示す。ＮＴＰサーバ１３０は、ローカル接続１３２を介してネットワークデバイス１２０に時刻情報を供給する。ネットワークデバイス１２０は、次に、ネットワーク１００に接続された他のネットワークデバイスに時刻情報を送信する。時刻情報は、時刻値および時刻誤差値を含む。時刻情報がネットワークを通じて伝播されるため、時刻情報を受信するそれぞれのネットワークデバイスは、時刻誤差値を調整し、時刻値の経過時間または精度を反映する。時刻値の経過時間は、時刻値が信頼できる時刻源から受信されてからの時間を示す。例えば、ネットワークデバイス１２０はＮＴＰサーバ１３０から時刻値を受信し、ネットワークデバイス１２０の時刻値をＮＴＰサーバから受信した時刻値に設定することができる。ネットワークデバイス１２０はまた、時刻誤差値を０、または、時刻値が信頼できる時刻源から受信されたことを示す他の所定の値に設定することができる。
【０００９】
ＮＴＰサーバは更新された時刻情報を定期的にネットワークデバイス１２０に供給する。ネットワークデバイス１２０は、次に、ネットワーク１００を介して他のネットワークデバイスに時刻情報を通信する。このように、ネットワークを通じた時刻伝播は定期的に更新される。一例として、ネットワークデバイス１２０は、時刻値および時刻誤差値をメンテナンスパケットに含め、メンテナンスパケットをネットワーク１００に送信することにより、他のネットワークデバイスに時刻情報を通信する。ネットワークデバイス１２１が他のネットワークデバイスからメンテナンスパケットを受信したとき、メンテナンスパケットの時刻誤差値をネットワークデバイス１２１の時刻誤差値と比較し、メンテナンスパケットの時刻値がネットワークデバイス１２１の時刻値よりも新しいものであるかを判定する。比較結果がメンテナンスパケットの時刻値のほうが新しいことを示すとき、ネットワークデバイス１２１は、その時刻値をメンテナンスパケットからの時刻値に置換する。この状況で、ネットワークデバイス１２１は、受信した時刻誤差値よりも大きい誤差を示すようにその時刻誤差値を調整する。例えば、より高い値がより古い時刻値を示す場合、受信した時刻誤差値が「２」であるとき、ネットワークデバイスはその時刻誤差値を「３」に調整してもよい。比較結果がメンテナンスパケットの時刻値のほうが古いことを示すとき、ネットワークデバイス１２１はその時刻値を維持し、受信した時刻値を無視する。
【００１０】
一例では、ネットワークデバイスは時間の経過に伴って、ネットワークデバイスの時刻誤差値を調整する。調整は、ネットワークデバイスの内部時計の精度に基づく。例えば、ネットワークデバイスが、５ＰＰＭまたはより高い精度を有する温度補償水晶発振器（ＴＣＸＯ）を使用する場合、時刻値が１秒進むたびに、時刻誤差値は１０マイクロ秒ずつ調整されてもよい。ネットワーク機器が１００ＰＰＭの精度を有する発振器を使用するとき、時刻値が１秒進むたびに、時刻誤差値は１００マイクロ秒ずつ調整されてもよい。他の調整方法が使用されてもよい。また、他の調整方法は、ネットワークデバイスの時計の相対的な精度を反映してもよい。
【００１１】
図１はまた、ネットワークデバイス１０２、およびローカル接続１０６を介してネットワークデバイスに接続された外部システム１０４を示す。ローカル接続は、Ｂｌｕｅｔｏｏｔｈ（登録商標）接続またはシリアル接続を含むが、それらに限定されず、ネットワークデバイスと外部システムとの間の通信を許可するのに適切な接続であってもよい。ネットワークデバイス１０２は、ネットワーク１００に参加する前に構成される必要があってもよいため、ネットワークへの接続は破線で示されている。外部システム１０４は任意の種類のシステムであってもよく、一例では、デバイス１０２を構成する、またはネットワーク上でメンテナンスを実行する、ソフトウェアアプリケーションを含むコンピュータシステムである。ネットワークデバイス１０２と外部システム１０４との間の通信の少なくともいくつかは、デジタル署名、または時刻情報に依存する他のメカニズムを使用してもよい。ネットワークデバイスが時刻情報を持たない場合、デジタル署名を使用して通信することができない場合があり、また、構成を完了したりネットワークに参加したりすることができない場合がある。この状況では、外部システム１０４がネットワークデバイス１０２に時刻情報を供給する。そのため、ネットワークデバイスと外部システムとが安全に通信することができ、ネットワークデバイスが設定され得る。一例では、外部システムはネットワークスタックのレイヤー２を介してタイムスタンプを供給する。他のシステムは、異なるレイヤーを使用してもよい。また、異なる方法で時刻情報を通信してもよい。ネットワークデバイスは外部システムからの時刻情報を使用するが、時刻誤差値を最大誤差を示す値に設定する。
【００１２】
（例示的な方法）
図２は、ネットワークデバイスにより実行される例示的な方法を示す。ネットワークデバイスと外部システムとがローカル接続を介して接続された後、ステップ２０２において、ネットワークデバイスはローカル接続を介して外部システムからローカルタイムスタンプを受信する。ローカルタイムスタンプは、時刻値と時刻誤差値とを含む。ステップ２０４において、ネットワークデバイスは、ローカルタイムスタンプ、すなわち、ローカル接続を介して受信した外部デバイスからのタイムスタンプを受信するよう構成されているか否かを判定する。一般的に、ＮＴＰサーバに接続されることを目的とするデバイスでなければ、ネットワークデバイスは、ローカルタイムスタンプを拒否するよう構成されている。一例では、ネットワークデバイスは構成設定をチェックして、ローカルタイムスタンプを受け入れるよう構成されているか否かを判定する。ネットワークデバイスが低品質の時刻をネットワークに導入することを回避するため、多くのデバイスはローカルタイムスタンプを拒否するよう構成されている。一例では、デバイスに対する構成設定は、製造時にローカルタイムスタンプを拒否するよう構成されている。ステップ２０４において、ネットワークデバイスがローカルタイムスタンプを拒否するよう構成されていると判定する場合、Ｎｏの分岐に沿ってステップ２０６に進む。ステップ２０６において、ネットワークデバイスは、有効な時刻値を有しているか否かを判定する。一般的に、デバイスは、構成前に有効な時刻値を有していない。ステップ２０６において、ネットワークデバイスが有効な時刻値を有していないと判定する場合、Ｎｏの分岐に沿ってステップ２０８に進む。ステップ２０８において、ネットワークデバイスは、ネットワークデバイスの時刻値をローカルタイムスタンプの時刻値に設定し、ネットワークデバイスの時刻誤差値を最大誤差値に設定することにより、ローカルタイムスタンプを受け入れる。最大誤差値は、時刻値が低品質であることを示す。
【００１３】
ネットワークデバイスは、最初に外部システムに接続されたとき、ステップ２０２からステップ２０４、ステップ２０６、ステップ２０８に進んでもよい。これにより、ネットワークデバイスは時刻情報を持つため、外部システムと安全に通信し、構成プロセスを完了することができる。時刻誤差値は、最大誤差を示す値に設定されるため、他のネットワークデバイスがその時刻情報を受け取る場合、その時刻値を無視する。このことは、構成前に有効な時刻をネットワークデバイスに供給するＮＴＰサーバへの接続が必要ないくつかの現在のシステムからの改善を提供する。
【００１４】
ステップ２０６において、ネットワークデバイスが有効な時刻値を有すると判定する場合、Ｙｅｓの分岐に沿ってステップ２１４に進む。一例では、デバイスは、０ではない時刻値および最大値未満の時刻誤差値を有する場合、有効な時刻を有すると判定する。ネットワークデバイスは、ステップ２１４においてローカルタイムスタンプを拒否し、ネットワークデバイスの時刻値および時刻誤差値を維持し続ける。ネットワークデバイスがステップ２０２からステップ２０４、ステップ２０６、ステップ２１４に進む場合、ネットワークデバイスは有効な時刻値を有し、ローカルタイムスタンプを受け入れない。この状況は、ネットワークデバイスが外部システムへの接続前にネットワークに参加する場合に発生する場合がある。ネットワークデバイスがすでにネットワークに参加しているため、ネットワークデバイスは、ネットワークから受信した通信に基づく有効な時刻情報を有する。
【００１５】
ネットワークデバイスが、ステップ２０４において、ローカルタイムスタンプを受け入れるよう構成されると判定する場合、Ｙｅｓの分岐に沿ってステップ２１０に進む。ネットワークデバイスは、ステップ２１０において、ローカルタイムスタンプの時刻値が、ネットワークデバイスにより維持される時刻値よりも新しいか否かを判定する。ネットワークデバイスは、より新しい時刻値をより正確な時刻値とみなす。一例では、ネットワークデバイスは、ローカルタイムスタンプの時刻誤差値とネットワークデバイスの時刻誤差値とを比較して、ローカルタイムスタンプの時刻値がネットワークデバイスの時刻値よりも新しいか否かを判定する。ステップ２１０において、ネットワークデバイスが、ローカルタイムスタンプからの時刻値がより新しいと判定する場合、Ｙｅｓの分岐に沿ってステップ２１２に進む。ステップ２１２において、ネットワークデバイスの時刻値をローカルタイムスタンプの時刻値に設定し、ネットワークデバイスの時刻誤差値をローカルタイムスタンプの時刻誤差値に基づく誤差値に設定することにより、ネットワークデバイスはローカルタイムスタンプを受け入れる。ネットワークデバイスは、ネットワークデバイスの時刻誤差値をローカル時刻誤差値により示されるものより大きな時刻誤差を示す値に設定してもよい。ネットワークデバイスがステップ２０２から、ステップ２０４、ステップ２１０、ステップ２１２に進む場合、ネットワークデバイスはローカルタイムスタンプを受け入れるよう構成される。この状況は、ネットワークデバイスがＮＴＰサーバへの接続を目的としている場合に発生する場合がある。
【００１６】
ネットワークデバイスが、ステップ２１０において、ローカルタイムスタンプからの時刻値がより古いと判定する場合、Ｎｏの分岐に沿ってステップ２１４に進む。ネットワークデバイスは、ステップ２１４においてローカルタイムスタンプを拒否し、ローカルデバイスの時刻値および時刻誤差値を維持し続ける。ネットワークデバイスがステップ２０２からステップ２０４、ステップ２１０、ステップ２１４に進む場合、ネットワークデバイスはローカルタイムスタンプを受け入れるよう構成されるが、ローカルタイムスタンプを受け入れない。この状況は、ネットワークデバイスが中間デバイスを介してＮＴＰサーバに接続され、中間デバイスがＮＴＰサーバへの接続を失った場合に発生する場合がある。この状況において、ネットワークデバイスの時刻情報は、中間デバイスから受信した時刻情報よりも正確である場合がある。
【００１７】
ネットワークデバイスが構成されネットワークに参加すると、ネットワークデバイスは、メンテナンスパケットまたは時刻情報を含む他の通信をネットワーク上に送信してもよい。メンテナンスパケットは、ネットワークデバイスにより維持される時刻値に基づく時刻値、およびネットワークデバイスに維持される時刻誤差値に基づく時刻誤差値を含んでいてもよい。他のネットワークデバイスがメンテナンスパケットを受信すると、そのネットワークデバイスは、メンテナンスパケットの時刻誤差値をそのネットワークデバイスの時刻誤差値と比較する。メンテナンスパケットの時刻誤差値は最大誤差を示す値に設定されているため、ネットワークデバイスはメンテナンスパケットの時刻値を拒否し、ネットワークデバイスの時刻値を維持する。このようにして、ネットワークデバイスからの時刻値は、ネットワークを介して伝播されない。
【００１８】
同様に、ネットワークデバイスが構成されネットワークに参加すると、ネットワークデバイスは、メンテナンスパケットまたは他のネットワークデバイスからの時刻情報を含む他の通信を受信してもよい。ネットワークデバイスは、メンテナンスパケットの時刻誤差値を、最大誤差を示す値に設定されたネットワークデバイスの時刻誤差値と比較する。メンテナンスパケットの時刻誤差値が有効な時刻値（例えば、最大誤差未満）を示す場合、ネットワークデバイスは、ネットワークデバイスの時刻値をメンテナンスパケットの時刻値に設定する。このようにして、ネットワークデバイスは有効なネットワーク時刻を受信する。
【００１９】
（例示的なネットワークデバイス）
図３は、ネットワークデバイス１０２またネットワークデバイス１２０のような、例示的なネットワークデバイス３００を示す。ネットワークデバイス３００は、プロセッサ３０２を含む。プロセッサの非限定的な例は、マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、ＦＰＧＡ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）、または他の適切な処理装置を含む。プロセッサは１つを含む任意の数の処理装置を含んでいてもよい。プロセッサ３０２はメモリ３０４と通信可能に接続されていてもよい。プロセッサはコンピュータが実行可能なプログラム命令を実行する、および／またはメモリ装置に記憶された情報にアクセスすることができる。
【００２０】
メモリは、プロセッサによって実行されたときに、プロセッサにより本明細書に記載された動作を実行させる命令を記憶することができる。メモリは、コンピュータ読み取り可能な記憶媒体であってもよい。コンピュータ読み取り可能な記憶媒体は、電気的、光学的、磁気的、またはプロセッサにコンピュータ読み取り可能な命令を提供することができる他の記憶装置を含むがそれに限定されない。このような、光学的、磁気的、または他の記憶装置の非限定的な例は、リードオンリー（「ＲＯＭ」）装置、ランダムアクセスメモリ（「ＲＡＭ」）装置、磁気ディスク、磁気テープまたは他の磁気ストレージ、メモリチップ、ＡＳＩＣ、構成されたプロセッサ、光記憶装置、またはコンピュータプロセッサが命令を読むことのできる他の媒体を含む。命令は、任意の適切なコンピュータプログラミング言語により書かれたコードから、コンパイラおよび／またはインタプリタにより生成されるプロセッサ固有の命令を含んでいてもよい。
【００２１】
メモリはまた、ネットワークデバイスの構成設定を記憶してもよい。一例では、構成設定は不揮発性メモリに記憶される。構成設定はデバイスがローカルタイムスタンプを受け入れることを許可されているか否かを示す１つまたは複数の設定を含んでいてもよい。上述のように、ネットワークデバイスは、メンテナンスパケットまたはネットワークからの時刻情報を含む他の通信を受信してもよい。ネットワークデバイスが時刻情報を受信しない場合、ネットワークデバイスは時刻情報を要求するリクエストをネットワークに送信してもよい。デバイスの構成設定は、リクエスト送信前にネットワークデバイスが時刻情報を待つ時間を特定してもよい。ネットワークデバイスは発振器３１０を含んでいてもよい。発振器は時刻値３１４を維持するために利用されてもよい。ネットワークデバイスはまた、時刻値の経過時間または精度を反映する時刻誤差値３１６を維持してもよい。
【００２２】
ネットワークデバイスはまた、ネットワークトランシーバ３０６を含んでいてもよい。トランシーバの非限定的な例は、ＲＦトランシーバおよび無線で信号を送信および受信する他のトランシーバを含む。ネットワークトランシーバはアンテナ３２０に接続されてもよい。
【００２３】
ネットワークデバイスはまた、ローカル通信インタフェース３０８を含んでいてもよい。ローカル通信インタフェースの非限定的な例は、Ｂｌｕｅｔｏｏｔｈ（登録商標）インタフェース、シリアルインタフェース、および外部システムと通信する他のインタフェースを含む。
【００２４】
ネットワークデバイスは図３に示される構成要素に限定されるものではない。一例では、ネットワークデバイスはまた、電気、水、またはガスのような資源の消費量を計測する計測モジュールを含んでいてもよい。
【００２５】
上記は、本発明の態様を例示、記述、説明する目的のために提供され、網羅的であることまたは本発明を開示された正確な形態に限定することを意図するものではない。これらの実施形態のさらなる修正および適応は、当業者にとって明らかであり、本発明の範囲および精神から逸脱することなく行われてもよい。例えば、時刻情報は任意の適切な方法で通信されてもよい。メンテナンスパケットの使用は必須ではない。外部システムは、必ずしも構成のためではなく、任意の目的のためにネットワークデバイスに接続されてもよい。さらに、図示または記載されていない構成要素およびステップと同様、上述の構成要素の異なる配置が可能である。同様に、いくつかの特徴およびサブコンビネーションが有用であり、他の特徴およびサブコンビネーションを参照せずに採用されてもよい。
【図１】
2019536379.tif 000003
【図２】
2019536379.tif 000004
【図３】
2019536379.tif 000005
【国際調査報告】
2019536379.tif 000006
2019536379.tif 000007
2019536379.tif 000008