(57)【特許請求の範囲】
【請求項１】
パケットネットワークを介して接続される装置間で、パケット送受信時の時刻情報を含む時刻同期パケットを送受信して時刻同期を行う時刻同期方法において、
送信側の装置は、前記時刻同期パケットを送信すると共に、予め設定した一定の送信間隔でシーケンス番号と前記送信間隔情報とを含むリファレンスパケットを送信し、
受信側の装置は、前記シーケンス番号により受信パケットの順序を判別し、前記送信側の装置から受信する最初のリファレンスパケットを基準に前記送信間隔をカウントする送信間隔タイマを起動し、前記送信側の装置から受信する二番目以降のリファレンスパケットの受信間隔が前記送信間隔タイマが出力する送信間隔未満である場合は前記送信間隔タイマをリセットし、当該リファレンスパケットの受信間隔が前記送信間隔タイマが出力する送信間隔以上である場合は前記送信間隔タイマをリセットしないように制御し、前記送信間隔タイマが出力する前記送信間隔を基準として前記送信側の装置から受信するパケットの遅延揺らぎを求めて前記送信側の装置との時刻のずれを調整する
ことを特徴とする時刻同期方法。
【請求項２】
請求項１に記載の時刻同期方法において、
前記受信側の装置は、前記送信側の装置から受信する前記リファレンスパケットの受信間隔よりも前記送信間隔タイマが出力する前記送信間隔の方が短い場合、自装置の周波数精度に基づいて予め求めた所定時間が経過する毎に、前記送信間隔タイマをリセットするタイミングを遅らせる
ことを特徴とする時刻同期方法。
【請求項３】
請求項１または２に記載の時刻同期方法において、
前記リファレンスパケットの一部を前記時刻同期パケットと兼用する
ことを特徴とする時刻同期方法。
【請求項４】
請求項１から３のいずれか一項に記載の時刻同期方法において、
前記リファレンスパケットと前記時刻同期パケットとは、独立して送出される
ことを特徴とする時刻同期方法。
【請求項５】
パケット送受信の時刻情報を含む時刻同期パケットを送受信して時刻同期を行う時刻同期装置において、
前記時刻同期パケットを通信先の装置に送信する時刻同期パケット送信部と、
予め設定した一定の送信間隔でシーケンス番号と前記送信間隔情報とを含むリファレンスパケットを通信先の装置に送信するリファレンスパケット送信部と、
リファレンスパケットの前記シーケンス番号により受信パケットの順序を判別して通信先の装置からリファレンスパケットを受信するリファレンスパケット受信部と、
通信先の装置から時刻同期パケットを受信する時刻同期パケット受信部と、
前記リファレンスパケット受信部が受信する最初のリファレンスパケットを基準に当該リファレンスパケットに含まれる前記送信間隔のカウントを開始し、設定された前記送信間隔のカウントを繰り返し行う送信間隔タイマと、
通信先の装置から受信する二番目以降のリファレンスパケットの受信間隔が前記送信間隔タイマが出力する送信間隔未満である場合は前記送信間隔タイマをリセットし、当該リファレンスパケットの受信間隔が前記送信間隔タイマが出力する送信間隔以上である場合は前記送信間隔タイマをリセットしないように制御し、前記送信間隔タイマが出力する前記送信間隔を基準として前記送信側の装置から受信するパケットの遅延揺らぎを求める遅延揺らぎ計算部と、
前記遅延揺らぎ計算部が求めた遅延揺らぎと前記時刻同期パケット受信部が受信する時刻同期パケットの送受信時刻のタイミングとに基づいて、前記通信先の装置との時刻のずれを調整するオフセット計算処理部と
を備えることを特徴とする時刻同期装置。
【請求項６】
請求項５に記載の時刻同期装置において、
前記遅延揺らぎ計算部は、通信先の装置から受信する前記リファレンスパケットの受信間隔よりも前記送信間隔タイマが出力する前記送信間隔が短い場合、自装置の周波数精度に基づいて予め求めた所定時間が経過する毎に、前記送信間隔タイマをリセットするタイミングを遅らせる
ことを特徴とする時刻同期装置。
【請求項７】
請求項５または６に記載の時刻同期装置において、
前記リファレンスパケットの一部を前記時刻同期パケットと兼用する
ことを特徴とする時刻同期装置。
【請求項８】
請求項５から７のいずれか一項に記載の時刻同期装置において、
前記リファレンスパケットと、前記時刻同期パケットとは、独立して送出される
ことを特徴とする時刻同期装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケットネットワークを介して接続される装置間の時刻同期を実現する技術に関する。
【背景技術】
【０００２】
現在、パケットネットワークを経由して接続される装置間で高精度な時刻同期を行うプロトコルとして、PTP(非特許文献１参照）が知られている。ところが、パケットネットワークでは、PDV（Packet Delay Variation：遅延ゆらぎ)が発生するという問題がある。そこで、高精度な時刻同期を実現するために、PTPではEnd-to-End Transparent clockおよびPeer-to-Peer Transparent clockを定義している。例えばEnd-to-End  Transparent clockは、End-to-Endで時刻同期を行う技術であり、通過ノードの処理時間を計算して時刻のずれを補正する。例えば、通過ノードの入出力（Ingress、Egress）の各ポートにおいて、パケットを送受信する毎にタイムスタンプを打刻して装置内部の処理時間を把握し、時刻同期の精度を向上させる技術が用いられている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】IEEE Std 1588TM-2008 IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところが、Transparent Clockで高精度な時刻同期を実現するためには遅延揺らぎPDVを正確に把握しなければならず、全ての通過ノードにPTPに対応したタイムスタンプ付与機能を備える必要がある。このためには、現在導入されている全てのノード装置をPTPに対応するように改造を行うか、新たにTransparent Clockに対応した時刻配信網を構築しなけらばならないという課題がある。
【０００５】
上記課題に鑑み、本発明の目的は、Transparent Clockに対応していない既存装置上で高精度な時刻同期を行うことができる時刻同期方法および時刻同期装置を提供することである。
【課題を解決するための手段】
【０００６】
本発明に係る時刻同期方法は、パケットネットワークを介して接続される装置間で、パケット送受信時の時刻情報を含む時刻同期パケットを送受信して時刻同期を行う時刻同期方法において、送信側の装置は、前記時刻同期パケットを送信すると共に、予め設定した一定の送信間隔でシーケンス番号と前記送信間隔情報とを含むリファレンスパケットを送信し、受信側の装置は、前記シーケンス番号により受信パケットの順序を判別し、前記送信側の装置から受信する最初のリファレンスパケットを基準に前記送信間隔をカウントする送信間隔タイマを起動し、前記送信側の装置から受信する二番目以降のリファレンスパケットの受信間隔が前記送信間隔タイマが出力する送信間隔未満である場合は前記送信間隔タイマをリセットし、当該リファレンスパケットの受信間隔が前記送信間隔タイマが出力する送信間隔以上である場合は前記送信間隔タイマをリセットしないように制御し、前記送信間隔タイマが出力する前記送信間隔を基準として前記送信側の装置から受信するパケットの遅延揺らぎを求めて前記送信側の装置との時刻のずれを調整することを特徴とする。
【０００７】
このように、一定時間毎に送信側の装置から送信されるリファレンスパケットの受信側の装置での到着時刻を観測し、受信側の装置の送信間隔タイマが出力する送信間隔よりも早くリファレンスパケットが到着した時だけ送信間隔タイマをリセットしてカウントし直すので、充分に長い時間が経過すれば、最も遅延の短いリファレンスパケットの到着間隔に送信間隔タイマが出力する送信間隔の周期が一致することになり、この最短遅延時間がノード装置間の固定遅延時間であると推測できる。これにより、時刻同期パケットの遅延揺らぎを把握することができる。
【０００８】
また、前記受信側の装置は、前記送信側の装置から受信する前記リファレンスパケットの受信間隔よりも前記送信間隔タイマが出力する前記送信間隔の方が短い場合、自装置の周波数精度に基づいて予め求めた所定時間が経過する毎に、前記送信間隔タイマをリセットするタイミングを遅らせることを特徴とする。
【０００９】
これにより、周波数同期がとれていないネットワークにおいても高精度な時刻同期を実現することができる。
【００１０】
また、前記リファレンスパケットの一部を前記時刻同期パケットと兼用することを特徴とする。
【００１１】
これにより、受信側の周期と時刻同期パケットの到着時間の差を取ることができるので、片方向のPDVを把握することが可能になる。但し、高精度でリファレンスパケットの送信周期に合わせて時刻同期パケットを送出可能な装置を用いる必要がある。
【００１２】
また、前記リファレンスパケットと、前記時刻同期パケットとは、独立して送出されることを特徴とする。
【００１３】
これにより、送信側の装置でリファレンスパケットと時刻同期パケットのズレを測定し、そのズレを別パケットとして受信側の装置へ送信することができる。そして、受信側においても、リファレンスパケットと時刻同期パケットのズレを計測し、送信側のズレと受信側のズレの差分を取ることによってPDVを把握することが可能となる。
【００１４】
本発明に係る時刻同期装置は、パケット送受信の時刻情報を含む時刻同期パケットを送受信して時刻同期を行う時刻同期装置において、前記時刻同期パケットを通信先の装置に送信する時刻同期パケット送信部と、予め設定した一定の送信間隔でシーケンス番号と前記送信間隔情報とを含むリファレンスパケットを通信先の装置に送信するリファレンスパケット送信部と、リファレンスパケットの前記シーケンス番号により受信パケットの順序を判別して通信先の装置からリファレンスパケットを受信するリファレンスパケット受信部と、通信先の装置から時刻同期パケットを受信する時刻同期パケット受信部と、前記リファレンスパケット受信部が受信する最初のリファレンスパケットを基準に当該リファレンスパケットに含まれる前記送信間隔のカウントを開始し、設定された前記送信間隔のカウントを繰り返し行う送信間隔タイマと、通信先の装置から受信する二番目以降のリファレンスパケットの受信間隔が前記送信間隔タイマが出力する送信間隔未満である場合は前記送信間隔タイマをリセットし、当該リファレンスパケットの受信間隔が前記送信間隔タイマが出力する送信間隔以上である場合は前記送信間隔タイマをリセットしないように制御し、前記送信間隔タイマが出力する前記送信間隔を基準として前記送信側の装置から受信するパケットの遅延揺らぎを求める遅延揺らぎ計算部と、前記遅延揺らぎ計算部が求めた遅延揺らぎと前記時刻同期パケット受信部が受信する時刻同期パケットの送受信時刻のタイミングとに基づいて、前記通信先の装置との時刻のずれを調整するオフセット計算処理部とを備えることを特徴とする。
【００１５】
このように、遅延揺らぎ計算部は、送信間隔タイマが出力する送信間隔よりも早くリファレンスパケットが到着した時だけ送信間隔タイマをリセットしてカウントし直すので、充分に長い時間が経過すれば、最も遅延の短いリファレンスパケットの到着間隔に送信間隔タイマが出力する送信間隔の周期が一致することになり、この最短遅延時間から装置間の固定遅延時間を推測することができる。これにより、時刻同期パケットの遅延揺らぎを把握することができ、オフセット計算処理部は時刻同期パケットから得られる時刻情報と固定遅延時間とを用いて通信先の装置との時刻のずれを調整することができる。
【発明の効果】
【００１６】
本発明に係る時刻同期方法および時刻同期装置により、PTPに対応していない既存装置で構成されるネットワーク上で高精度な時刻同期を実現することができる。
【図面の簡単な説明】
【００１７】
【図１】パケットネットワーク１００の構成例を示す図である。
【図２】時刻同期シーケンスの一例を示す図である。
【図３】遅延揺らぎがない場合のリファレンスパケットの送受信の様子を示す図である。
【図４】遅延揺らぎがある場合のリファレンスパケットの送受信の様子を示す図である。
【図５】第１の実施形態におけるリファレンスパケットの受信側の動作例を示す図である。
【図６】Masterノード１０１の構成例を示すブロック図である。
【図７】Slaveノード１０２の構成例を示すブロック図である。
【図８】第２の実施形態におけるリファレンスパケットの受信側の動作例を示す図である。
【図９】第３の実施形態におけるリファレンスパケットと時刻同期パケットの受信側の動作例を示す図である。
【図１０】第４の実施形態におけるリファレンスパケットと時刻同期パケットの受信側の動作例を示す図である。
【発明を実施するための形態】
【００１８】
以下、図面を参照して本発明に係る時刻同期方法および時刻同期装置の実施形態について説明する。先ず、各実施形態に共通の構成および動作について説明する。
【００１９】
図１は、パケットネットワークの構成例を示す図である。図１は、マスタ側のノード装置であるMasterノード１０１の時刻にスレーブ側のノード装置であるSlaveノード１０２の時刻を同期させる場合の例を示している。図１の例では、Masterノード１０１とSlaveノード１０２との間に、通過ノード１０３ａおよび通過ノード１０３ｂが配置されている。
【００２０】
ここで、従来のEnd-to-End  Transparent clockの場合は、通過ノード１０３ａおよび通過ノード１０３ｂのそれぞれにおいて処理時間を計算して時刻を補正する。例えば、通過ノード１０３ａおよび通過ノード１０３ｂの入力ポートと出力ポートにおいてパケットを送受信する毎にタイムスタンプを打刻することにより、Masterノード１０１およびSlaveノード１０２は通過ノード１０３ａおよび通過ノード１０３ｂの内部の処理時間を把握することができ、遅延揺らぎや固定遅延時間を求めることができる。ここで、Masterノード１０１およびSlaveノード１０２は、本発明に係る時刻同期装置に対応するノード装置である。
【００２１】
以下の各実施形態で説明する本発明に係る時刻同期方法および時刻同期装置では、通過ノード１０３ａおよび通過ノード１０３ｂはタイムスタンプ付与機能を持たない場合であっても、Masterノード１０１およびSlaveノード１０２間で送受信するリファレンスパケットにより、遅延揺らぎや固定遅延時間を高精度に把握することができる。
【００２２】
［通過ノードにタイムスタンプ付与機能がない場合の時刻同期シーケンス］
先ず、通過ノード１０３ａおよび通過ノード１０３ｂにタイムスタンプ付与機能がない場合の時刻同期シーケンスについて説明する。尚、以降の説明において、通過ノード１０３ａおよび通過ノード１０３ｂをまとめて通過ノード１０３と表記する。
【００２３】
図２は、通過ノード１０３を介して接続されるMasterノード１０１とSlaveノード１０２とが時刻同期を行う場合の時刻同期シーケンスを示している。時刻同期シーケンスは、例えばＩＥＥＥ１５８８などで規格化された時刻同期プロトコルが用いられる。このような時刻同期プロトコルでは、Syncパケット、Follow Up パケット、Delay Reqパケット、Delay Respパケットなどの専用パケットをMasterノード１０１とSlaveノード１０２との間で送受信して、時刻のずれを求める。
【００２４】
次に、Masterノード１０１とSlaveノード１０２との間の時刻のずれを求める方法について説明する。例えば図２において、Masterノード１０１の時刻はtM（変数）、Slaveノード１０２の時刻はtS（変数）で表し、両者の時刻はズレているものとする。そして、Masterノード１０１とSlaveノード１０２の時刻のズレをOffsetとするとOffsetは次の式(1)で表すことができる。
Offset = tSn - tMn      ・・・式(1)
ここで、ｎは整数で、図２のtM1からtM4、tS1からtS4にそれぞれ対応する。
【００２５】
先に説明したように、時刻同期シーケンスでは、先ず、Masterノード１０１からSyncパケットをSlaveノード１０２に送信する。Masterノード１０１がSyncパケットを送信した時刻tM1は、Syncパケット自身に付与するか、別パケットのFollow Up パケットに埋め込んで、Slaveノード１０２に伝える。尚、SyncパケットがMasterノード１０１からSlaveノード１０２に到着するのに掛かる時間は、伝送遅延、通過ノード固定遅延DTHおよび通過ノード１０３にて発生する遅延揺らぎΔJSYNCである。また、通過ノード１０３にタイムスタンプを付与する機能はないため、Slaveノード１０２はDTHおよびΔJSYNCの値を把握できない。把握できるのはSlaveノード１０２の時計で計測できる時刻で、Syncパケットの到着時刻tS2である。尚、Syncパケット自身またはFollow Up パケットに付与された時刻tM1は、Masterノード１０１の時計で計測した時刻である。
【００２６】
続いて、今度はSlaveノード１０２からMasterノード１０１に対して、Delay Reqパケットを送信する。Delay Reqパケットについても装置固定遅延DTHと遅延揺らぎΔJD.REQの値は把握できず、把握できるのはSlaveノード１０２自身が送信した時刻であるtS3のみである。ここで、Masterノード１０１は、Slaveノード１０２から送信されたDelay ReqパケットがMasterノード１０１に到達した時刻tM4をSlaveノード１０２へ伝えるために、Delay Respパケットに時刻tM4を付与し、Masterノード１０１からSlaveノード１０２に送信する。
【００２７】
ここで、時刻同期シーケンスにおけるSyncパケットとDelay Reqパケットを時刻同期パケットと称する。 
【００２８】
図２に示した時刻同期シーケンスにおいて、Slaveノード１０２にて把握可能な値と把握不可能な値を次に示す。
・把握可能な値：tM1、tS2、tS3、tM4
・把握不可能な値：DTH、DMtoS、ΔJSYNC、DStoM、ΔJD.REQ
また、図２の同期シーケンス において、次の式(2)および式(3)が成り立つ。尚、図２において、tM1からtM4はMasterノード１０１側の時計での時刻であり、tS1からtS4はSlaveノード１０２側の時計での時刻である。従って、Masterノード１０１の時刻に対して、Slaveノード１０２の時刻がOffsetだけ遅れているとすると、例えば図２のMasterノード１０１の時計における時刻tM1に対して、Slaveノード１０２の時計における時刻tS1はoffsetだけ遅れているので、tS1= tM1 + Offsetとなる。また、Masterノード１０１側を基準にすると、tM1 = tS1- Offsetとなる。同様にして、式(2)，式(3)は次のようになる。
tS2 = tM1 + DMtoS+ Offset    ・・・式(2)
tM4 = tS3 + DStoM- Offset    ・・・式(3)
ここで、DMtoSとDStoMは把握できないが、SyncパケットとDelay Reqパケットの伝送距離、通過ノード固定遅延、通過ノードの遅延揺らぎPDVがそれぞれ等しいと仮定すると、式(4)が成り立つ。
DMtoS = DStoM    ・・・式(4)
そして、式(4)を用いて式(2)、式(3)を解くと、時刻のずれOffsetは、式(5)に示すように、４つの把握可能な値（tM1、tS2、tS3、tM4）で表すことができる。
Offset = ((tS2 - tM1) - (tM4 - tS3)) / 2    ・・・式(5)
このようにして、時刻のずれOffsetを求めることができる。ここで、上記の方法で求められる時刻のずれは、次の条件Aから条件Cを満たすパケットネットワークにおいて高精度の時刻同期が実現可能となる。
・条件A：双方向の物理的な伝送路長（例えばファイバ長）が等しいこと。
・条件B：双方向のルートが同じであり、装置固定遅延も等しいこと。
・条件C：通過ノードにおいて遅延揺らぎPDVが発生しないこと。
【００２９】
ここで、条件Aおよび条件Bを満たすネットワークは多いが、パケットSW等の装置で構成される通過ノードは条件Cを満たすことが難しい。つまり、遅延揺らぎPDVがないネットワークにおいては式(4)が成り立つが、遅延揺らぎPDVがあるネットワークでは式(4)ではなく、次の式(6)のように表すことができる。
DMtoS - ΔJSYNC= DStoM - ΔJD.REQ    ・・・式(6)
ここで、DMtoSは、Masterノード１０１でSyncパケットを送信した時刻tM1からSlaveノード１０２でSyncパケットを受信した時刻tS2までの時間であり、ΔJSYNCは、この時の遅延揺らぎによる遅延時間である。同様に、DStoMは、Slaveノード１０２でDelay Reqパケットを送信した時刻tS3からMasterノード１０１でDelay Respパケットを受信した時刻tM4までの時間であり、ΔJD.REQは、この時の遅延揺らぎによる遅延時間である。
【００３０】
そして、式(6)を用いて式(2),式(3)を解くと、式(7)に示すように、遅延揺らぎPDVを考慮した時刻のずれOffsetJを求めることができる。
OffsetJ = ((tS2- tM1) - (tM4 - tS3) - (ΔJSYNC - ΔJD.REQ)) / 2    ・・・式(7)
そして、式(5)および式(7)より、式(5)で求めた時刻のずれOffsetの誤差ΔOffsetは式(8)のように求めることができる。
ΔOffset = OffsetJ - Offset = - (ΔJSYNC - ΔJD.REQ) / 2    ・・・式(8)
このように、遅延揺らぎPDVが発生するネットワークにおいて、遅延揺らぎPDVを考慮せずに式(5)によって時刻のずれOffsetを求めると、式(8)に示した時刻の誤差が出てしまうことになる。そこで、遅延揺らぎPDVが発生するネットワークで正確な時刻同期を実現するためには、通過ノードで発生した遅延揺らぎPDVを正確に把握する必要がある。時刻同期プロトコルのPTPで規定されている方法は、通過ノードの入出力ポートにおいてタイムスタンプを打刻することによって装置固定遅延とPDVを測定して時刻補正する方法であるため、全ての通過ノードにタイムスタンプ打刻機能が必要となる。このため、既にネットワーク配置されている通過ノードでは簡単に実施することができない。
【００３１】
これに対して、以降で説明する各実施形態に係る時刻同期方法および時刻同期装置は、通過ノードにタイムスタンプ付与機能がなく、且つ通過ノードで遅延揺らぎPDVが発生するようなネットワークにおいても、高精度な時刻同期を実現することができる。
【００３２】
［各実施形態における時刻同期方法の概要］
本発明に係る時刻同期方法および時刻同期装置では、上記の課題を解決するために、時刻同期シーケンスで用いる時刻同期パケットに加えて、リファレンスパケットを導入することにより、遅延揺らぎPDVを把握し、高精度な時刻同期を実現する。 
【００３３】
先に説明したように、パケットネットワークにおいて高精度な時刻配信を実現するためには遅延揺らぎPDVの影響を把握する必要がある。そこで、本発明では通過ノードでタイムスタンプ等を付与することなく、End-to-Endの装置にて遅延揺らぎPDVを把握し、その影響を補正することにより高精度な時刻配信を実現する。また、Synchronous Ethernet（登録商標）等により高精度な周波数同期を実現しているネットワークの場合は、その周波数を元にしてMasterノード１０１とSlaveノード１０２の時刻を刻むことが可能になり、より高精度に時刻同期を行うことができる。
【００３４】
以下、各実施形態について説明する。
（第１の実施形態）
先ず、遅延揺らぎPDVの把握手法について説明する。本発明に係る時刻同期方法および時刻同期装置では、遅延揺らぎPDVを把握するため、一定の送信間隔TSで正確にリファレンスパケットを送信する。そして、送信間隔TSの値を判別可能な識別値をリファレンスパケットに付与して送信することにより、受信側の装置で送信間隔TSの値を把握することができる。尚、TSは時間を表す値であり、送信側の時計と受信側の時計との間で時を刻む速さ（元になるクロック周波数）が異なる場合は、同じTSであっても送信側と受信側でカウントされる時間は異なる。尚、この場合の処理については、第２の実施形態で詳しく説明する。
【００３５】
また、リファレンスパケットにはシーケンス番号も付与され、受信側に到着するリファレンスパケットのシーケンス番号が順番通りになっているか否かを確認することで、リファレンスパケットのロスを把握することができる。
【００３６】
図３は、光ファイバの芯線直結等で送信側と受信側の装置間を接続する遅延揺らぎPDVがない場合のリファレンスパケットの送信周期TSと受信周期TRNを示した図である。この場合、遅延揺らぎPDVは発生しないので、送信周期TSと受信周期TRNは等しい（TS=TRN）。ここで、Nは整数でリファレンスパケットの受信周期の順番を示し、図３の例ではTR1からTR7まで全て等間隔となる。
【００３７】
ところが、遅延揺らぎPDVが発生するネットワークの場合、図４に示すように、遅延揺らぎPDVの影響により、受信周期TRNは送信周期TSと等しくならない（TS≠TRN）。尚、図４は、図３と同様にリファレンスパケットの送信周期と受信周期の関係を示した図であるが、遅延揺らぎPDVが発生する点が図３と異なる。ここで、各リファレンスパケットの遅延揺らぎPDV（各受信周期毎の遅延揺らぎはΔJ1からΔJ6）は、先に説明したように、受信側のノード装置では把握できない値である。そこで、本発明に係る時刻同期方法および時刻同期装置では、遅延揺らぎPDVの影響を除去した最も遅延の短いリファレンスパケットの受信周期を求める。これにより、伝送距離と通過ノードの固定遅延による固定的な遅延のみによるリファレンスパケットの受信周期が求めることができる。
【００３８】
図５は、遅延揺らぎPDVがある場合の図４に対応する図で、本実施形態に係る時刻同期方法の動作例を示している。図５において、受信ノードは第１番目のリファレンスパケットを受信すると、第１番目のリファレンスパケットの受信時刻を基準にしてタイマ（送信間隔タイマ）を起動する。そして、第１番目のリファレンスパケットに付与されている送信間隔になるまで送信間隔タイマでカウントしながら第２番目のリファレンスパケットの到着を待つ。
【００３９】
ここで、第１番目のリファレンスパケットの到着時刻からカウントを開始した送信間隔タイマが出力する送信間隔の周期が経過するよりも早く第２番目のリファレンスパケットが到着した場合は、第２番目のリファレンスパケットの到着時刻を新たな基準として送信間隔タイマを再起動する。尚、再起動とは、例えば送信間隔タイマが所定周波数のクロックをカウントする時間カウンタで構成される場合は、カウンタを初期値（例えば０）にリセットして、再び最初から時間のカウントを開始する動作である。また、送信ノードと受信ノード間でクロックの周波数同期が取れているネットワークであれば、その周波数同期が取れたクロックを元にして送信間隔タイマのカウントを行うことで、精度をより向上することができる。
【００４０】
反対に第２番目のリファレンスパケットが第１番目のリファレンスパケットの到着時刻からカウントした送信間隔よりも遅く到着した場合は、第１番目のリファレンスパケットで設定した送信間隔タイマを継続して使用する。
【００４１】
以降の第ｎ番目のリファレンスパケットについても同様に、送信間隔タイマがカウントする送信間隔のタイミングよりもリファレンスパケットの方が早く到着した場合は、第ｎ番目のリファレンスパケットの到着時刻を基準にして送信間隔タイマを再起動する。反対に、基準とするリファレンスパケットの到着時刻よりも遅く到着した場合は第ｎ番目のリファレンスパケットの到着時刻を基準にせず、現在基準としている送信間隔タイマによるリファレンスパケットの送信間隔のタイミングをそのまま使用し、送信間隔タイマは設定された送信間隔周期でクロックのカウントを繰り返す。
【００４２】
このようにして、最も遅延の短いリファレンスパケットの到着周期に受信ノードの送信間隔タイマの周期が一致するようになる。リファレンスパケットは基本的には送信ノードから永久的に送信されるが、目標とする時刻同期の精度に達するまでの時間が実験的に判明しているネットワークの場合は、特定時間だけリファレンスパケットを送信するようにしてもよい。但し、通過ノードの増設や障害の発生等で一時的に通信断となった場合は、再度、リファレンスパケットを送出して送信ノードと受信ノードの間で時刻の再同期を開始する。
【００４３】
ここで、最も遅延の短いリファレンスパケットというのは、伝送遅延と装置固定遅延に近いものであり、トラフィックの有無に拘わらず遅延時間はほぼ固定され、双方向のルートが同じであれば送信ノードから受信ノードまでの遅延時間と受信ノードから送信ノードまでの遅延時間は等しくなる。
【００４４】
そして、このリファレンスパケットから得られる遅延揺らぎPDVと、先に説明した時刻同期パケット（IEEE1588準拠のSyncパケットとDelay Reqパケット）から得られる時刻情報とを先に説明した式(5)および式(8)に適用することにより、送信ノードと受信ノードの時刻のずれを高精度で求めることができる。
【００４５】
以下、本発明に係る時刻同期装置に対応するMasterノード１０１の構成とSlaveノード１０２の構成について詳しく説明する。
［Masterノード１０１の構成例］
図６は、Masterノード１０１の構成例を示すブロック図である。図６において、Masterノード１０１は、周波数入力部２０１と、周波数生成部２０２と、時計２０３と、受信回路２０４と、時刻同期パケット受信部２０５と、リファレンスパケット受信部２０６と、基準送信周期カウンタ２０７と、時刻同期パケットPDV計算部２０８と、時刻同期パケット送信部２０９と、リファレンスパケット生成部２１０と、送信回路２１１とで構成される。以下、各ブロックについて順番に説明する。
【００４６】
周波数入力部２０１は、外部（マスタクロック装置など）から基準周波数のクロックを入力する。
【００４７】
周波数生成部２０２は、周波数入力部２０１から入力した基準周波数のクロックを元にして必要な周波数の内部クロックを生成する。例えば時計２０３の動作クロックに合うように逓倍や分周を行う。
【００４８】
時計２０３は、周波数生成部２０２で生成されたクロック周波数を基準に時を刻む。
【００４９】
受信回路２０４は、通信先の装置（本実施形態ではSlaveノード１０２）から送信されるパケットをパケットネットワークを介して受信する。そして、ネットワーク側から受信したパケットが時刻同期パケットである場合は時刻同期パケット受信部２０５に出力し、リファレンスパケットである場合はリファレンスパケット受信部２０７に出力する。
【００５０】
時刻同期パケット受信部２０５は、時刻同期パケットの受信時刻や時刻同期パケットに付与されているSlaveノード１０２側の時刻情報を抽出して時刻同期パケットPDV計算部２０８に出力する。
【００５１】
リファレンスパケット受信部２０６は、リファレンスパケットの受信時刻やリファレンスパケットに付与されている送信間隔の識別値およびシーケンス番号などの情報を抽出する。そして、リファレンスパケット受信部２０６は、リファレンスパケットの受信時刻を基準送信周期カウンタ２０７に出力する。尚、受信するリファレンスパケットのシーケンス番号が連続しない場合は、パケットロスが発生したと判断する。そして、パケットロスが発生した場合は、一連の時刻同期処理を中止してもよいし、一つ前のリファレンスパケットと同じものとみなして次のリファレンスパケットを待つようにしてもよい。
【００５２】
基準送信周期カウンタ２０７は、送信間隔タイマの機能を含み、周波数生成部２０２から入力するクロック周波数に基づく基準の送信間隔周期と、リファレンスパケット受信部２０６から入力するリファレンスパケットの受信時刻とのズレをカウントし、リファレンスパケットが基準周期よりも早く到着すれば送信間隔の基準周期をズラす動作を行う。そして、この基準周期を時刻同期パケットPDV計算部２０８に出力する。
【００５３】
時刻同期パケットPDV計算部２０８は、基準送信周期カウンタ２０７の出力と時刻同期パケット受信部２０５からの時刻同期パケットの受信タイミングとを用いて、遅延揺らぎPDVを計算する。そして、ここで計算した遅延揺らぎPDVを時刻同期パケット送信部２０９に出力し、時刻同期パケット送信部２０９で時刻同期パケットであるDelay Respパケットに遅延揺らぎPDVの値（図２の例ではΔJD.REQ）を埋め込んでSlaveノード１０２へ送信する。尚、Delay Respパケットには、図２で説明したようにDelay Reqパケットの受信時刻tM4の値も付与される。
【００５４】
時刻同期パケット送信部２０９は、Syncパケット、Delay Respパケット、或いはFollow Up パケットなどのPTPプロトコルに応じたパケットをSlaveノード１０２に送信する。この時、時計２０３より取得した時刻を付与する。例えばSyncパケットやFollow Up パケットに送信時刻を付与したり、Delay RespパケットにDelay Reqパケットの受信時刻を付与してSlaveノード１０２に送信する。特に、本実施形態では、遅延揺らぎPDVの値がSlaveノード１０２に送信される。
【００５５】
リファレンスパケット生成部２１０は、周波数入力部２０１から入力されるクロック周波数に同期して周波数生成部２０２で生成されたクロック周波数を基準にして、一定の送信間隔TSでリファレンスパケットを生成し、送信回路２１１からSlaveノード１０２へ送信する。
【００５６】
送信回路２１１は、リファレンスパケット生成部２１０から出力されるリファレンスパケットおよび時刻同期パケット送信部２０９から出力される時刻同期パケットをSlaveノード１０２へ送信する。
【００５７】
このようにして、Masterノード１０１は、外部から入力する基準のクロック周波数に基づいて時計２０３を動作させ、Slaveノード１０２との間でリファレンスパケットおよび時刻同期パケットを送受信する。特に、Slaveノード１０２から受信するリファレンスパケットの受信時刻に基づいて、Slaveノード１０２からMasterノード１０１へパケットを送信する時の遅延揺らぎPDVを取得することができる。
［Slaveノード１０２の構成例］
図７は、Slaveノード１０２の構成例を示すブロック図である。図７において、Slaveノード１０２は、受信回路３０１と、周波数抽出部３０２と、周波数生成部３０３と、時計３０４と、時刻同期パケット受信部３０５と、リファレンスパケット受信部３０６と、基準送信周期カウンタ３０７と、時刻同期パケットPDV計算部３０８と、Offset計算処理部３０９と、時刻同期パケット送信部３１０と、リファレンスパケット生成部３１１と、送信回路３１２とで構成される。
【００５８】
受信回路３０１は、通信先の装置（本実施形態ではMasterノード１０１）から送信されるパケットをパケットネットワークを介して受信する。そして、時刻同期パケットを時刻同期パケット受信部３０５に出力し、リファレンスパケットをリファレンスパケット受信部３０６に出力する。
【００５９】
周波数抽出部３０２は、受信回路３０１からクロック周波数を抽出する。抽出したクロック周波数は、周波数生成部３０３に出力される。
【００６０】
周波数生成部３０３は、周波数抽出部３０２から出力されるクロック周波数を基準にSlaveノード１０２内部の周波数同期を取り、各部に必要なクロック周波数を生成する。尚、外部（マスタクロック装置など）からMasterノード１０１と同じ周波数クロックを受信できる場合に備え、周波数外部入力部３５１を設けてもよい。いずれの場合でも、Masterノード１０１とSlaveノード１０２との周波数同期は可能である。
【００６１】
時計３０４は、周波数生成部３０３で生成されたクロック周波数を基準に時を刻む。
【００６２】
時刻同期パケット受信部３０５は、時刻同期パケットの受信時刻や時刻同期パケットに付与されている時刻情報を抽出して時刻同期パケットPDV計算部３０８に出力すると共に、Offset計算処理部３０９にも出力する。
【００６３】
リファレンスパケット受信部３０６は、Masterノード１０１のリファレンスパケット受信部２０６と同様に、リファレンスパケットの受信時刻やリファレンスパケットに付与されている送信間隔の識別値およびシーケンス番号などの情報を抽出する。そして、リファレンスパケット受信部３０６は、リファレンスパケットの受信時刻を基準送信周期カウンタ３０７に出力する。
【００６４】
基準送信周期カウンタ３０７は、送信間隔タイマの機能を有し、周波数生成部３０３から入力するクロック周波数に基づく基準の送信間隔周期と、リファレンスパケット受信部３０６から入力するリファレンスパケットの受信時刻とのズレをカウントし、リファレンスパケットが基準周期よりも早く到着すれば送信間隔の基準周期をズラす動作を行う。そして、この基準周期を時刻同期パケットPDV計算部３０８およびOffset計算処理部３０９に出力する。
【００６５】
時刻同期パケットPDV計算部３０８は、基準送信周期カウンタ３０７の出力と時刻同期パケット受信部３０５からの時刻同期パケットの受信タイミングとを用いて、遅延揺らぎPDVを計算する。そして、ここで計算した遅延揺らぎPDV（図２の例ではΔJSYNC）をOffset計算処理部３０９に出力する。
【００６６】
Offset計算処理部３０９は、時刻同期パケット受信部３０６で受信した時刻同期パケットおよび時刻同期パケットPDV計算部３０８で計算したPDV情報から得られる各値（例えば図２のtM1，tS2，tS3，tM4，ΔJSYNC，ΔJD.REQなど）を用いて、先に説明した各式により、時刻のずれOffsetの計算を行い、時計３０４の時刻の補正を行う。
【００６７】
時刻同期パケット送信部３１０は、Delay ReqパケットをMasterノード１０１に送信する。この時、時計３０４より取得した時刻を付与し、送信回路３１２を介してMasterノード１０１に送信する。
【００６８】
リファレンスパケット生成部３１１は、周波数生成部３０３で生成されたクロック周波数を基準にして、一定の送信間隔TSでリファレンスパケットを生成し、送信回路３１２からMasterノード１０１へ送信する。
【００６９】
送信回路３１２は、リファレンスパケット生成部３１１から出力されるリファレンスパケットおよび時刻同期パケット送信部３１０から出力される時刻同期パケットをMasterノード１０１へ送信する。
【００７０】
このようにして、Slaveノード１０２は、受信回路３０１から周波数抽出部３０２が抽出したクロック周波数（または周波数外部入力部３５１が外部から入力する基準のクロック周波数）に基づいて動作する時計３０４の時刻を、Offset計算処理部３０９が求めたMasterノード１０１の時計２０３の時刻とのずれに応じて補正し、Masterノード１０１の時計２０３とSlaveノード１０２の時計３０４の時刻同期を高精度で行うことができる。
（第２の実施形態）
次に、第２の実施形態に係る時刻同期方法および時刻同期装置について説明する。尚、本実施形態で用いるMasterノード１０１およびSlaveノード１０２の構成は、第１の実施形態の図６および図７でそれぞれ説明した構成と同じである。
【００７１】
ここで、Masterノード１０１とSlaveノード１０２との間で周波数同期が取れていないネットワークでは、各ノード装置内部の時計（例えば図６の時計２０３と図７の時計３０４）の進み方がずれているため、送信間隔タイマ（例えば図６の基準送信周期カウンタ２０７と図７の時計３０４）がずれてくる可能性がある。例えば、送信側に比べて、受信側の周波数が大きい場合、受信側の時計の進み方が早いので、図８に示すように、Masterノード１０１から送信されたリファレンスパケットが最も早くSlaveノード１０２に到着した場合でも、その到着時刻よりも早くSlaveノード１０２の送信間隔タイマが出力する送信周期TSが来るので、リファレンスパケットを基準パケットにはできない可能性がある。そこで、本実施形態では、以下に述べる方法によってSlaveノード１０２における送信間隔タイマのずれを調整する。
【００７２】
一般的な周波数発信器には周波数精度がスペックとして提示されている。周波数精度は単位秒あたりの周波数のずれであるから、１秒間当たりの位相ずれを求めることができる。そして、受信ノード（上記の例ではSlaveノード１０２）で使用するクロック周波数の誤差の最大値から１秒間当たりの位相ずれを求め、この単位時間当たりの位相ずれからT時間経過した場合の時刻のずれΔTを事前に計算しておく。そして、T時間経過後の時刻のずれΔTだけ、送信間隔タイマをずらす。例えば図８の場合は、送信ノード（上記の例ではMasterノード１０１）から送信間隔TSで送信されるリファレンスパケットの受信ノードでの最短の到着間隔TR1よりも受信ノードの送信間隔タイマが出力する送信間隔周期TS'の方が早い。同様に、後続の到着間隔TR2，TR3と経過するに連れて、次の受信ノードの送信間隔タイマが出力する送信間隔周期TS'によりさらに早くなっていくという問題が生じる。そこで、本実施形態では、周波数精度スペックからT時間経過した場合の時刻のずれΔTを事前に推定してあるので、T時間経過後に想定される時間のずれΔTだけ送信間隔タイマの出力をずらす。これにより、図８の例では、リファレンスパケットの受信間隔TR6の次に到着するリファレンスパケットは、送信間隔タイマが出力する送信間隔TS'よりも遅くなるので、第１の実施形態の図５で説明した制御が可能になる。ここで、TS'＜TSの関係にあるものとする。
【００７３】
このようにして、周波数同期が取れていないネットワークについても、本発明に係る時刻同期方法を用いて高精度な時刻同期を実現することができる。
【００７４】
ここで、第１の実施形態と第２の実施形態で説明した時刻同期方法において、リファレンスパケットの一部を時刻同期パケットとする方法と、リファレンスパケットの送信周期とは別に時刻同期パケットを送信する方法とを用いることができる。次に、これらの方法について詳しく説明する。
【００７５】
（第３の実施形態）
次に、第３の実施形態に係る時刻同期方法について説明する。本実施形態に係る時刻同期方法は、第１の実施形態と第２の実施形態で説明した時刻同期方法において、リファレンスパケットの一部を時刻同期パケットとする方法である。尚、本実施形態において、Masterノード１０１およびSlaveノード１０２の構成は、図６および図７でそれぞれ説明した構成と同じである。
【００７６】
本実施形態における時刻同期方法の動作例を図９に示す。図９において、黒四角印で示したパケット４０１は、リファレンスパケットでもあり、時刻同期パケットでもあるパケットで、リファレンスパケットの一部を時刻同期パケットとして使用する。そして、受信ノードの送信間隔タイマが出力する送信間隔TS'の周期と時刻同期パケット４０１’の到着時間とのずれから遅延揺らぎΔJを得ることができる。このようにして、受信ノードの送信間隔タイマが出力する送信間隔TSの周期と時刻同期パケット４０１’の到着時間との差を取ることによって、送信ノードから受信ノードへの片方向の遅延揺らぎPDVを把握することができる。尚、片方向の遅延揺らぎは、図２の例ではMasterノード１０１からSlaveノード１０２への遅延揺らぎΔJSYNCおよびSlaveノード１０２からMasterノード１０１への遅延揺らぎΔJD.REQに対応する。
【００７７】
このようにして、本実施形態に係る遅延同期方法では、リファレンスパケットの一部を時刻同期パケットとすることにより、時刻同期パケットをリファレンスパケットとは別に送信する必要がなく、第１の実施形態および第２の実施形態と同様に、遅延揺らぎPDVを把握することができる。
【００７８】
尚、本実施形態に係る時刻同期方法では、リファレンスパケットの送信周期に合わせて時刻同期パケットを送出する必要があるので、精確な動作が可能な装置で使用する必要がある。
【００７９】
（第４の実施形態）
次に、第４の実施形態に係る時刻同期方法について説明する。本実施形態に係る時刻同期方法は、第１の実施形態と第２の実施形態で説明した時刻同期方法において、リファレンスパケットの送信周期とは別に時刻同期パケットを送信する方法である。尚、本実施形態において、Masterノード１０１およびSlaveノード１０２の構成は、図６および図７でそれぞれ説明した構成と同じである。
【００８０】
本実施形態における時刻同期方法の動作例を図１０に示す。図１０において、黒四角印で示したパケット４０２は、時刻同期パケットで、白四角印で示したリファレンスパケットとは別に送信ノードから送信される。
【００８１】
リファレンスパケットの送信周期とは別に時刻同期パケットを送信する場合、図１０に示すように、送信ノードにてリファレンスパケット４０３と時刻同期パケット４０２との時間のずれΔJSを測定し、そのズレを別パケットとして、受信ノードへ送信する。また、受信ノード側においても、リファレンスパケットの周期TSと時刻同期パケット４０２’とのずれΔJRを計測し、送信ノード側のずれΔJSと、受信側のずれΔJRとの差分を取ることによって(ΔJR- ΔJS = ΔJ)、遅延揺らぎPDVを把握することができる。
【００８２】
このようにして、本実施形態に係る遅延同期方法では、リファレンスパケットとは別に送信される時刻同期パケットを利用して、第１の実施形態および第２の実施形態と同様に、遅延揺らぎPDVを把握することができる。
【００８３】
以上、各実施形態で説明してきたように、本発明に係る時刻同期方法および時刻同期装置は、予め決められた送信間隔で送信されるリファレンスパケットによって、時刻同期パケットであるSyncパケットとDelay Reqパケットの遅延揺らぎPDVであるΔJSYNCおよびΔJD.REQを把握し、先に示した式(7)を用いて送信ノードと受信ノードとの時刻のずれOffsetJを求めることができ、全ての通過ノードにタイムスタンプ付与機能がない場合であっても、精度の高い時刻同期が可能となり、既に実網に展開されているパケットネットワーク上で時刻同期方法を導入するためのハードルを低くすることができる。
【００８４】
以上、本発明に係る時刻同期方法および時刻同期装置について、各実施形態で例を挙げて説明してきたが、その精神またはその主要な特徴から逸脱することなく他の多様な形で実施することができる。そのため、上述した実施形態はあらゆる点で単なる例示に過ぎず、限定的に解釈してはならない。本発明は、特許請求の範囲によって示されるものであって、本発明は明細書本文にはなんら拘束されない。さらに、特許請求の範囲の均等範囲に属する変形や変更は、全て本発明の範囲内である。
【符号の説明】
【００８５】
１０１・・・Masterノード
１０２・・・Slaveノード
１０３・・・通過ノード
２０１・・・周波数入力部
２０２・・・周波数生成部
２０３・・・時計
２０４・・・受信回路
２０５・・・時刻同期パケット受信部
２０６・・・リファレンスパケット受信部
２０７・・・基準送信周期カウンタ
２０８・・・時刻同期パケットPDV計算部
２０９・・・時刻同期パケット送信部
２１０・・・リファレンスパケット生成部
２１１・・・送信回路
３０１・・・受信回路
３０２・・・周波数抽出部
３０３・・・周波数生成部
３０４・・・時計
３０５・・・時刻同期パケット受信部
３０６・・・リファレンスパケット受信部
３０７・・・基準送信周期カウンタ
３０８・・・時刻同期パケットPDV計算部
３０９・・・Offset計算処理部
３１０・・・時刻同期パケット送信部
３１１・・・リファレンスパケット生成部
３１２・・・送信回路
【図１】
0005518805.tif 000002
【図２】
0005518805.tif 000003
【図３】
0005518805.tif 000004
【図４】
0005518805.tif 000005
【図５】
0005518805.tif 000006
【図６】
0005518805.tif 000007
【図７】
0005518805.tif 000008
【図８】
0005518805.tif 000009
【図９】
0005518805.tif 000010
【図１０】
0005518805.tif 000011