(57)【要約】  リング型ネットワークにおいて、マスタノードが、逆方向及び順方向で計測パケットをスレーブノードに送信し、複数のスレーブノードを巡回した計測パケットを受信し、内部クロックの計時に従い、逆方向計測パケットの受信時刻及び順方向計測パケットの送信時刻を記憶し、計測パケットの送信時刻及び受信時刻が示される計測結果通知パケットをスレーブノードに送信し、各スレーブノードは、逆方向及び順方向の計測パケットを受信し、受信した計測パケットを次のノードに送信し、内部クロックの計時に従い、逆方向計測パケットの受信時刻と順方向計測パケットの送信時刻を記憶し、また、計測結果通知パケットを受信し、計測結果通知パケットに示される計測パケットの送信時刻及び受信時刻と、記憶している計測パケットの送信時刻及び受信時刻とを用いて、時刻補正値を算出し、算出した時刻補正値を用いて、内部クロックの時刻を補正する。
2008129594.tif 000002
【特許請求の範囲】
【請求項１】
基準クロックを備えるマスタノード装置と各々が内部クロックを備える複数のスレーブノード装置とがリング接続され、各ノード装置に定められているパケット転送順序に従ってパケットを二方向で転送して複数のノード装置間でパケットを二方向で巡回させる通信システムであって、
前記マスタノード装置は、
第一の計測パケットを、パケット転送順序において一方の方向での送信先となるスレーブノード装置に対して送信し、前記一方の方向で複数のスレーブノード装置を巡回した前記第一の計測パケットを受信し、
第二の計測パケットを、パケット転送順序において他方の方向での送信先となるスレーブノード装置に対して送信し、前記他方の方向で複数のスレーブノード装置を巡回した前記第二の計測パケットを受信し、
前記基準クロックの計時に従い、前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対、及び前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対の少なくともいずれかを記憶し、
前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対、及び前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対の少なくともいずれかを示す計測結果通知パケットを生成し、
いずれか方向の送信先のスレーブノード装置に対して、生成した前記計測結果通知パケットを送信し、
各スレーブノード装置は、
前記一方の方向での受信元のノード装置から前記第一の計測パケットを受信し、受信した前記第一の計測パケットを、前記一方の方向での送信先のノード装置に対して送信し、
前記他方の方向での受信元のノード装置から前記第二の計測パケットを受信し、受信した前記第二の計測パケットを、前記他方の方向での送信先のノード装置に対して送信し、
内部クロックの計時に従い、前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対、及び前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対の少なくともいずれかを記憶し、
いずれかの方向での受信元のノード装置から前記計測結果通知パケットを受信し、受信した前記計測結果通知パケットに示される前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対及び前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対の少なくともいずれかと、記憶している前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対及び前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対の少なくともいずれかを用いて、時刻補正値を算出し、算出した時刻補正値を用いて、内部クロックの時刻を補正することを特徴とする通信システム。
【請求項２】
各スレーブノード装置は、
前記計測結果通知パケットに示される対となる送信時刻と受信時刻との平均値から、記憶している対となる送信時刻と受信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする請求項１に記載の通信システム。
【請求項３】
各スレーブノード装置は、
前記マスタノード装置において、前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対が記憶される場合は、前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対を記憶し、受信した前記計測結果通知パケットに示される前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値から、記憶している前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とし、
前記マスタノード装置において、前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対が記憶される場合は、前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対を記憶し、受信した前記計測結果通知パケットに示される前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値から、記憶している前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする請求項２に記載の通信システム。
【請求項４】
前記マスタノード装置は、
いずれかのスレーブノード装置において通信不能となっている場合に、通信不能となっている折返し点スレーブノード装置において折返し送信が行われる折返し計測パケットを前記折返し点スレーブノード装置の方向での送信先となるスレーブノード装置に対して送信し、前記基準クロックの計時に従い、前記折返し計測パケットの送信時刻を記憶し、
前記折返し点スレーブノード装置において折返し送信された返信折返し計測パケットを受信し、前記基準クロックの計時に従い、前記返信折返し計測パケットの受信時刻を記憶し、
前記折返し計測パケットの送信時刻及び前記返信折返し計測パケットの受信時刻を示す折返し計測結果通知パケットを生成し、生成した前記折返し計測結果通知パケットを前記折返し点スレーブノード装置の方向での送信先となるスレーブノード装置に対して送信し、
各スレーブノード装置は、
前記折返し計測パケットを受信した場合に、内部クロックの計時に従い、前記折返し計測パケットの受信時刻を記憶し、
自装置が前記折返し点スレーブノード装置でない場合に、前記折返し計測パケットの送信方向での送信先となるノード装置に対して前記折返し計測パケットを送信し、前記折返し点スレーブノード装置で折返し送信された返信折返し計測パケットを受信し、受信した前記返信折返し計測パケットを折返し送信方向での送信先となるノード装置に対して送信し、内部クロックの計時に従い、前記返信折返し計測パケットの送信時刻を記憶し、
自装置が前記折返し点スレーブノード装置である場合に、前記折返し計測パケットの受信元のノード装置に対して前記折返し計測パケットを折返し送信し、内部クロックの計時に従い、折返し送信した返信折返し計測パケットの送信時刻を記憶し、
前記折返し計測結果通知パケットを受信し、受信した前記折返し計測結果通知パケットに示されている前記折返し計測パケットの送信時刻及び前記返信折返し計測パケットの受信時刻と、記憶している前記折返し計測パケットの受信時刻及び前記返信折返し計測パケットの送信時刻とを用いて、時刻補正値を算出し、算出した前記時刻補正値を用いて、内部クロックの時刻を補正することを特徴とする請求項１に記載の通信システム。
【請求項５】
前記マスタノード装置は、
二つのスレーブノード装置間において通信不能となっている場合に、通信不能となっている一方の折返し点スレーブノード装置から折返し送信された返信折返しパケットを受信し、受信した前記返信折返し計測パケットを、通信不能となっている他方の折返し点スレーブノード装置の方向での送信先となるスレーブノード装置に対して送信するとともに、前記基準クロックの計時に従い、前記返信折返し計測パケットの送信時刻を記憶し、
前記他方の折返し点スレーブノード装置において再折返し送信された再返信折返し計測パケットを受信し、前記基準クロックの計時に従い、前記再返信折返し計測パケットの受信時刻を記憶し、
前記返信折返し計測パケットの送信時刻及び前記再返信折返し計測パケットの受信時刻を示す折返し計測結果通知パケットを生成し、生成した前記折返し計測結果通知パケットを前記他方の折返し点スレーブノード装置の方向での送信先となるスレーブノード装置に対して送信し、
各スレーブノード装置は、
前記マスタノード装置から送信された前記返信折返し計測パケットを受信した場合に、内部クロックの計時に従い、前記返信折返し計測パケットの受信時刻を記憶し、
自装置が前記他方の折返し点スレーブノード装置でない場合に、前記返信折返し計測パケットの送信方向での送信先となるノード装置に対して前記返信折返し計測パケットを送信し、前記他方の折返し点スレーブノード装置で再折返し送信された再返信折返し計測パケットを受信し、受信した前記再返信折返し計測パケットを再折返し送信方向での送信先となるノード装置に対して送信し、内部クロックの計時に従い、前記再返信折返し計測パケットの送信時刻を記憶し、
自装置が前記他方の折返し点スレーブノード装置である場合に、前記返信折返し計測パケットの受信元のノード装置に対して前記返信折返し計測パケットを再折返し送信し、内部クロックの計時に従い、再折返し送信した再返信折返し計測パケットの送信時刻を記憶し、
前記折返し計測結果通知パケットを受信し、受信した前記折返し計測結果通知パケットに示されている前記返信折返し計測パケットの送信時刻及び前記再返信折返し計測パケットの受信時刻と、記憶している前記返信折返し計測パケットの受信時刻及び前記再返信折返し計測パケットの送信時刻とを用いて、時刻補正値を算出し、算出した前記時刻補正値を用いて、内部クロックの時刻を補正することを特徴とする請求項４に記載の通信システム。
【請求項６】
各スレーブノード装置は、
前記折返し計測結果通知パケットに示されている前記折返し計測パケットの送信時刻と前記返信折返し計測パケットの受信時刻との平均値から、記憶している前記折返し計測パケットの受信時刻と前記返信折返し計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする請求項４に記載の通信システム。
【請求項７】
各スレーブノード装置は、
前記折返し計測結果通知パケットに示されている前記返信折返し計測パケットの送信時刻と前記再返信折返し計測パケットの受信時刻との平均値から、記憶している前記返信折返し計測パケットの受信時刻と前記再返信折返し計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする請求項５に記載の通信システム。
【請求項８】
各スレーブノード装置は、
内部クロックの計時に従い、前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対、及び前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対を記憶し、
他のノード装置における第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対、及び他のノード装置における第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対のいずれかが示される計測結果通知パケットを受信し、
受信した前記計測結果通知パケットに示される他のノード装置における送信時刻と受信時刻の対と、記憶している送信時刻と受信時刻との対のうちのいずれかの対を用いて、時刻補正値を算出し、
算出した時刻補正値を、記憶している送信時刻と受信時刻との対のうち前記時刻補正値の算出に用いられなかった送信時刻と受信時刻との対に用いて、補正後の送信時刻及び補正後の受信時刻を算出することを特徴とする請求項１に記載の通信システム。
【請求項９】
各スレーブノード装置は、
前記一方の方向での受信元のノード装置から、当該ノード装置における第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対が示される計測結果通知パケットを受信し、
受信した計測結果通知パケットに示されている第一の計測パケットの送信時刻と第二の計測パケットの受信時刻と、記憶している前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対とを用いて、時刻補正値を算出し、算出した時刻補正値を、記憶している前記第一の計測パケットの送信時刻及び前記第二の計測パケットの受信時刻に用いて、補正後の第一の計測パケットの送信時刻及び補正後の第二の計測パケットの受信時刻を算出し、
受信した前記計測結果通知パケットに示されている第一の計測パケットの送信時刻と第二の計測パケットの受信時刻の対に代えて、算出した前記補正後の第一の計測パケットの送信時刻と前記補正後の第二の計測パケットの受信時刻との対を前記計測結果通知パケットに格納し、前記一方の方向での送信先のノード装置に対して、前記補正後の第一の計測パケットの送信時刻と前記補正後の第二の計測パケットの受信時刻との対が格納された前記計測結果通知パケットを送信することを特徴とする請求項８に記載の通信システム。
【請求項１０】
各スレーブノード装置は、
前記他方の方向での受信元のノード装置から、当該ノード装置における第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対が示される計測結果通知パケットを受信し、
受信した計測結果通知パケットに示されている第一の計測パケットの受信時刻と第二の計測パケットの送信時刻と、記憶している前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対とを用いて、時刻補正値を算出し、算出した時刻補正値を、記憶している前記第一の計測パケットの受信時刻及び前記第二の計測パケットの送信時刻に用いて、補正後の第一の計測パケットの受信時刻及び補正後の第二の計測パケットの送信時刻を算出し、
受信した前記計測結果通知パケットに示されている第一の計測パケットの受信時刻と第二の計測パケットの送信時刻の対に代えて、算出した前記補正後の第一の計測パケットの受信時刻と前記補正後の第二の計測パケットの送信時刻との対を前記計測結果通知パケットに格納し、前記他方の方向での送信先のノード装置に対して、前記補正後の第一の計測パケットの受信時刻と前記補正後の第二の計測パケットの送信時刻との対が格納された前記計測結果通知パケットを送信することを特徴とする請求項８に記載の通信システム。
【請求項１１】
各スレーブノード装置は、
前記計測結果通知パケットに示されている前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値から、記憶している前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする請求項９に記載の通信システム。
【請求項１２】
各スレーブノード装置は、
前記計測結果通知パケットに示されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値から、記憶している前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする請求項１０に記載の通信システム。
【請求項１３】
複数の通信装置とともにパケットの巡回経路を構成し、各装置に定められているパケット転送順序に従って前記巡回経路においてパケットを二方向に巡回させる、基準クロックを備える管理装置であって、
第一の計測パケットを、パケット転送順序において一方の方向での送信先となる通信装置に対して送信する第一計測パケット送信部と、
前記複数の通信装置を前記一方の方向で巡回した前記第一の計測パケットを受信する第一計測パケット受信部と、
第二の計測パケットを、パケット転送順序において他方の方向での送信先となる通信装置に対して送信する第二計測パケット送信部と、
前記複数の通信装置を前記他方の方向で巡回した前記第二の計測パケットを受信する第二計測パケット受信部と、
前記基準クロックの計時に従い、前記第一の計測パケットの送信時刻及び前記第二の計測パケットの受信時刻の対、及び前記第一の計測パケットの受信時刻及び前記第二の計測パケットの送信時刻の対の少なくともいずれかを記憶する時刻記憶部と、
前記時刻記憶部に記憶されている前記第一の計測パケットの送信時刻及び前記第二の計測パケットの受信時刻の対、及び前記第一の計測パケットの受信時刻及び前記第二の計測パケットの送信時刻の対の少なくともいずれかが示される計測結果通知パケットを生成する計測結果通知パケット生成部と、
前記計測結果通知パケット生成部により生成された前記計測結果通知パケットを、いずれか方向の送信先のスレーブノード装置に対して送信する計測結果通知パケット送信部とを有することを特徴とする管理装置。
【請求項１４】
前記管理装置は、更に、
いずれかの通信装置において通信不能となっている場合に、通信不能となっている折返し点通信装置において折返し送信が行われる折返し計測パケットを生成する折返し計測パケット生成部と、
前記折返し計測パケット生成部により生成された前記折返し計測パケットを、前記折返し点通信装置の方向での送信先となる通信装置に対して送信する折返し計測パケット送信部と、
前記折返し点通信装置において折返し送信された返信折返し計測パケットを受信する折返し計測パケット受信部とを有し、
前記時刻記憶部は、
基準クロックの計時に従い、前記折返し計測パケット送信部による前記折返し計測パケットの送信時刻と、前記折返し計測パケット受信部による前記返信折返し計測パケットの受信時刻を記憶し、
前記計測結果通知パケット生成部は、
前記時刻記憶部に記憶されている前記折返し計測パケットの送信時刻及び前記返信折返し計測パケットの受信時刻を示す折返し計測結果通知パケットを生成し、
前記計測結果通知パケット送信部は、
前記計測結果通知パケット生成部により生成された前記折返し計測結果通知パケットを、前記折返し点通信装置の方向での送信先となる通信装置に対して送信することを特徴とする請求項１３に記載の管理装置。
【請求項１５】
前記折返し計測パケット受信部は、
二つの通信装置間において通信不能となっている場合に、通信不能となっている一方の折返し点通信装置から折返し送信された返信折返しパケットを受信し、
前記折返し計測パケット送信部は、
前記折返し計測パケット受信部により受信された前記返信折返し計測パケットを、通信不能となっている他方の折返し点通信装置の方向での送信先となる通信装置に対して送信し、
前記折返し計測パケット受信部は、更に、
前記他方の折返し点通信装置において再折返し送信された再返信折返し計測パケットを受信し、
前記時刻記憶部は、
前記基準クロックの計時に従い、前記折返し計測パケット送信部による前記返信折返し計測パケットの送信時刻と、前記折返し計測パケット受信部による前記再返信折返し計測パケットの受信時刻を記憶し、
前記折返し計測結果通知パケット生成部は、
前記時刻記憶部に記憶されている前記返信折返し計測パケットの送信時刻及び前記再返信折返し計測パケットの受信時刻を示す折返し計測結果通知パケットを生成し、
前記折返し計測結果通知パケット送信部は、
前記折返し計測結果通知パケット生成部により生成された前記折返し計測結果通知パケットを、前記他方の折返し点通信装置の方向での送信先となる通信装置に対して送信することを特徴とする請求項１４に記載の管理装置。
【請求項１６】
基準クロックを備える管理装置及び一つ以上の他の通信装置とともにパケットの巡回経路を構成し、各装置に定められているパケット転送順序に従って前記巡回経路においてパケットを二方向に巡回させる、内部クロックを備える通信装置であって、
前記管理装置から一方の方向に送信された第一の計測パケットを、パケット転送順序において前記一方の方向での受信元となる装置から受信する第一計測パケット受信部と、
前記第一計測パケット受信部により受信された前記第一の計測パケットを、前記一方の方向での送信先の装置に対して送信する第一計測パケット送信部と、
前記管理装置から他方の方向に送信された第二の計測パケットを、パケット転送順序において前記他方の方向での受信元となる装置から受信する第二計測パケット受信部と、
前記第二計測パケット受信部により受信された前記第二の計測パケットを、前記他方の方向での送信先の装置に対して送信する第二計測パケット送信部と、
前記内部クロックの計時に従い、前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対、及び前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対の少なくともいずれかを記憶する時刻記憶部と、
前記管理装置の前記基準クロックの計時に従った、前記管理装置における前記第一の計測パケットの送信時刻及び前記巡回経路を巡回した前記第二の計測パケットの前記管理装置における受信時刻の対、及び前記巡回経路を巡回した前記第一の計測パケットの前記管理装置における受信時刻及び前記管理装置における前記第二の計測パケットの送信時刻の対の少なくともいずれかが示される計測結果通知パケットを、受信する計測結果通知パケット受信部と、
受信した前記計測結果通知パケットに示される前記管理装置における前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対及び前記管理装置における前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対の少なくともいずれかと、前記時刻記憶部に記憶されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対及び前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対の少なくともいずれかを用いて、時刻補正値を算出する時刻補正値算出部と、
前記時刻補正値算出部により算出された前記時刻補正値を用いて、前記内部クロックの時刻を補正するクロック制御部とを有することを特徴とする通信装置。
【請求項１７】
前記時刻補正値算出部は、
前記計測結果通知パケットに示される対となる送信時刻と受信時刻との平均値から、前記時刻記憶部に記憶されている対となる送信時刻と受信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする請求項１６に記載の通信装置。
【請求項１８】
前記時刻記憶部は、
前記管理装置における前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対が示される計測結果通知パケットが前記計測結果通知パケット受信部により受信される場合に、前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対を記憶し、
前記管理装置における前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対が示される計測結果通知パケットが前記計測結果通知パケット受信部により受信される場合に、前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対を記憶し、
前記時刻補正値算出部は、
前記管理装置における前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対が示される計測結果通知パケットが前記計測結果通知パケット受信部により受信される場合に、前記計測結果通知パケットに示される前記管理装置における前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値から、前記時刻記憶部に記憶されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とし、
前記管理装置における前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対が示される計測結果通知パケットが前記計測結果通知パケット受信部により受信される場合に、前記計測結果通知パケットに示される前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値から、前記時刻記憶部に記憶されている前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする請求項１７に記載の通信装置。
【請求項１９】
前記通信装置は、更に、
いずれかの通信装置において通信不能となっている場合に、前記管理装置により送信された、通信不能となっている折返し点通信装置において折返し送信が行われる折返し計測パケットを受信する折返し計測パケット受信部と、
自装置が前記折返し点通信装置でない場合に、前記折返し計測パケットの送信方向での送信先となる装置に対して前記折返し計測パケットを送信するとともに、前記折返し計測パケットが前記折返し点通信装置で折返し送信された返信折返し計測パケットを、前記折返し計測パケット受信部が受信した後に、折返し送信方向での送信先となる装置に対して送信し、自装置が前記折返し点通信装置である場合に、前記折返し計測パケットの受信元の装置に対して前記折返し計測パケットを返信折返し計測パケットとして折返し送信する折返し計測パケット送信部を有し、
前記時刻記憶部は、
前記内部クロックの計時に従い、前記折返し計測パケットの受信時刻と、前記返信折返し計測パケットの送信時刻とを記憶し、
前記計測結果通知パケット受信部は、
前記管理装置の前記基準クロックの計時に従った、前記管理装置における前記折返し計測パケットの送信時刻及び前記管理装置における前記返信折返し計測パケットの受信時刻を示す折返し計測結果通知パケットを受信し、
前記時刻補正値算出部は、
前記折返し計測結果通知パケットに示されている前記管理装置における前記折返し計測パケットの送信時刻及び前記管理装置における前記返信折返し計測パケットの受信時刻と、前記時刻記憶部に記憶されている前記折返し計測パケットの受信時刻及び前記返信折返し計測パケットの送信時刻とを用いて、時刻補正値を算出することを特徴とする請求項１６に記載の通信装置。
【請求項２０】
前記時刻補正値算出部は、
前記折返し計測結果通知パケットに示されている前記管理装置における前記折返し計測パケットの送信時刻と前記管理装置における前記返信折返し計測パケットの受信時刻との平均値から、前記時刻記憶部に記憶されている前記折返し計測パケットの受信時刻と前記返信折返し計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする請求項１９に記載の通信装置。
【請求項２１】
前記時刻記憶部は、
内部クロックの計時に従い、前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対、及び前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対を記憶し、
前記計測結果通知パケット受信部は、
他の装置における第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対、及び他の装置における第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対のいずれかが示される計測結果通知パケットを受信し、
前記時刻補正値算出部は、
前記計測結果通知パケット受信部により受信された前記計測結果通知パケットに示される他の装置における送信時刻と受信時刻の対と、前記時刻記憶部に記憶されている送信時刻と受信時刻との対のうちのいずれかの対を用いて、時刻補正値を算出し、
算出した時刻補正値を、前記時刻記憶部に記憶されている送信時刻と受信時刻との対のうち前記時刻補正値の算出に用いられなかった送信時刻と受信時刻との対に用いて、補正後の送信時刻及び補正後の受信時刻を算出することを特徴とする請求項１６に記載の通信装置。
【請求項２２】
前記計測結果通知パケット受信部は、
前記一方の方向での受信元となる装置における第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対が示される計測結果通知パケットを、当該装置から受信し、
前記時刻補正値算出部は、
前記計測結果通知パケット受信部により受信された計測結果通知パケットに示されている第一の計測パケットの送信時刻と第二の計測パケットの受信時刻と、前記時刻記憶部に記憶されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対とを用いて、時刻補正値を算出し、算出した時刻補正値を、前記時刻記憶部に記憶されている前記第一の計測パケットの送信時刻及び前記第二の計測パケットの受信時刻に用いて、補正後の第一の計測パケットの送信時刻及び補正後の第二の計測パケットの受信時刻を算出し、
前記通信装置は、更に、
前記計測結果通知パケット受信部により受信された前記計測結果通知パケットに示されている第一の計測パケットの送信時刻と第二の計測パケットの受信時刻の対に代えて、前記時刻補正値算出部により算出された前記補正後の第一の計測パケットの送信時刻と前記補正後の第二の計測パケットの受信時刻との対を前記計測結果通知パケットに格納する計測結果通知パケット更新部と、
前記一方の方向での送信先となる装置に対して、前記計測結果通知パケット更新部により前記補正後の第一の計測パケットの送信時刻と前記補正後の第二の計測パケットの受信時刻との対が格納された前記計測結果通知パケットを送信する計測結果通知パケット送信部とを有することを特徴とする請求項２１に記載の通信装置。
【請求項２３】
各通信装置は、
前記計測結果通知パケット受信部は、
前記他方の方向での受信元となる装置における第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対が示される計測結果通知パケットを、当該装置から受信し、
前記時刻補正値算出部は、
前記計測結果通知パケット受信部により受信された計測結果通知パケットに示されている第一の計測パケットの受信時刻と第二の計測パケットの送信時刻と、前記時刻記憶部に記憶されている前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対とを用いて、時刻補正値を算出し、算出した時刻補正値を、前記時刻記憶部に記憶されている前記第一の計測パケットの受信時刻及び前記第二の計測パケットの送信時刻に用いて、補正後の第一の計測パケットの受信時刻及び補正後の第二の計測パケットの送信時刻を算出し、
前記通信装置は、更に、
前記計測結果通知パケット受信部により受信された前記計測結果通知パケットに示されている第一の計測パケットの受信時刻と第二の計測パケットの送信時刻の対に代えて、前記時刻補正値算出部により算出された前記補正後の第一の計測パケットの受信時刻と前記補正後の第二の計測パケットの送信時刻との対を前記計測結果通知パケットに格納する計測結果通知パケット更新部と、
前記他方の方向での送信先となる装置に対して、前記計測結果通知パケット更新部により前記補正後の第一の計測パケットの受信時刻と前記補正後の第二の計測パケットの送信時刻との対が格納された前記計測結果通知パケットを送信する計測結果通知パケット送信部とを有することを特徴とする請求項２１に記載の通信装置。
【請求項２４】
前記時刻補正値算出部は、
前記計測結果通知パケットに示されている前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値から、前記時刻記憶部に記憶されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする請求項２２に記載の通信装置。
【請求項２５】
各通信装置は、
前記計測結果通知パケットに示されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値から、前記時刻記憶部に記憶されている前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする請求項２３に記載の通信装置。
【請求項２６】
複数の通信装置とともにパケットの巡回経路を構成し、各装置に定められているパケット転送順序に従って前記巡回経路においてパケットを二方向に巡回させる、基準クロックを備える管理装置に、
第一の計測パケットを、パケット転送順序において一方の方向での送信先となる通信装置に対して送信する第一計測パケット送信処理と、
前記複数の通信装置を前記一方の方向で巡回した前記第一の計測パケットを受信する第一計測パケット受信処理と、
第二の計測パケットを、パケット転送順序において他方の方向での送信先となる通信装置に対して送信する第二計測パケット送信処理と、
前記複数の通信装置を前記他方の方向で巡回した前記第二の計測パケットを受信する第二計測パケット受信処理と、
前記基準クロックの計時に従い、前記第一の計測パケットの送信時刻及び前記第二の計測パケットの受信時刻の対、及び前記第一の計測パケットの受信時刻及び前記第二の計測パケットの送信時刻の対の少なくともいずれかを記憶する時刻記憶処理と、
前記時刻記憶処理により記憶されている前記第一の計測パケットの送信時刻及び前記第二の計測パケットの受信時刻の対、及び前記第一の計測パケットの受信時刻及び前記第二の計測パケットの送信時刻の対の少なくともいずれかが示される計測結果通知パケットを生成する計測結果通知パケット生成処理と、
前記計測結果通知パケット生成処理により生成された前記計測結果通知パケットを、いずれか方向の送信先のスレーブノード装置に対して送信する計測結果通知パケット送信処理とを実行させることを特徴とするコンピュータプログラム。
【請求項２７】
基準クロックを備える管理装置及び一つ以上の他の通信装置とともにパケットの巡回経路を構成し、各装置に定められているパケット転送順序に従って前記巡回経路においてパケットを二方向に巡回させる、内部クロックを備える通信装置に、
前記管理装置から一方の方向に送信された第一の計測パケットを、パケット転送順序において前記一方の方向での受信元となる装置から受信する第一計測パケット受信処理と、
前記第一計測パケット受信処理により受信された前記第一の計測パケットを、前記一方の方向での送信先の装置に対して送信する第一計測パケット送信処理と、
前記管理装置から他方の方向に送信された第二の計測パケットを、パケット転送順序において前記他方の方向での受信元となる装置から受信する第二計測パケット受信処理と、
前記第二計測パケット受信処理により受信された前記第二の計測パケットを、前記他方の方向での送信先の装置に対して送信する第二計測パケット送信処理と、
前記内部クロックの計時に従い、前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対、及び前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対の少なくともいずれかを記憶する時刻記憶処理と、
前記管理装置の前記基準クロックの計時に従った、前記管理装置における前記第一の計測パケットの送信時刻及び前記巡回経路を巡回した前記第二の計測パケットの前記管理装置における受信時刻の対、及び前記巡回経路を巡回した前記第一の計測パケットの前記管理装置における受信時刻及び前記管理装置における前記第二の計測パケットの送信時刻の対の少なくともいずれかが示される計測結果通知パケットを、受信する計測結果通知パケット受信処理と、
受信した前記計測結果通知パケットに示される前記管理装置における前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対及び前記管理装置における前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対の少なくともいずれかと、前記時刻記憶処理により記憶されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対及び前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対の少なくともいずれかを用いて、時刻補正値を算出する時刻補正値算出処理と、
前記時刻補正値算出処理により算出された前記時刻補正値を用いて、前記内部クロックの時刻を補正するクロック制御処理とを実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、リング型ネットワークに接続される複数のノード装置間の時刻同期技術に関する。
【背景技術】
【０００２】
各伝送路における伝送遅延や、各ノード内における処理遅延の影響を除外する時刻同期方法は、たとえば、ＩＥＥＥ１５８８等に記されている。
ＩＥＥＥ１５８８に基づく高精度な時刻同期システムの実装では、パケットの送信、受信におけるタイムスタンプの採取を、物理的な信号の送出、あるいは受信のタイミングにより近いタイミングで採取することにより、送信ノード、受信ノードの内部処理遅延による影響を除外する。
ＩＥＥＥ１５８８に基づく手法は、物理的な伝送路で直接接続された、ポイント・ツー・ポイント、またはマルチポイント接続におけるマスタ／スレーブ構成を最小単位とし、これらの最小単位の組み合わせで、あらゆるネットワーク構成における時刻同期を実現する。【０００３】
また、従来のリング型ネットワークにおける時刻同期方法では、ネットワーク内での時刻の基準となるマスタ・クロック・ノード（以降、マスタと記す）から時刻情報を通知することにより、他のスレーブ・クロック・ノード（以降、スレーブと記す）は、通知された時刻情報と、自ノードのクロックとの差から、時刻補正値を求め、自ノードの時刻の補正を行っていた。
このとき、既知のネットワーク構成とノード間のケーブル長から算出したパケット伝送の遅延時間を考慮して時刻補正を行う方法も示されている（たとえば、特許文献１）。
【特許文献１】特開平６−５２０７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来のリング型ネットワークにおける時刻同期方法は、時刻同期の基準となるマスタと時刻の補正対象となるスレーブの間の伝送路や中継ノードにおいて発生する、時刻情報通知パケットの伝送遅延による影響が考慮されていないという課題があった。
更に、ネットワーク構成や、ノード間のケーブル長から遅延時間を算出する方法においては、ネットワーク構成が変更される度に、少なくとも遅延算出のためのパラメータ、すなわち、マスタから、各スレーブに至る経路上の中継ノード数や、ノード間ケーブルの総延長等、を交信しなければならず、さらには、これらの情報が既知でなければ遅延時間を算出できないという課題があった。【０００５】
また、ＩＥＥＥ１５８８に示されるような、ポイント・ツー・ポイント、またはマルチポイント構成の組み合わせによる時刻同期方法をリング型ネットワークに適用した場合は、リング型の構造上で物理的に直接接続された隣り合う２つのノードの組み合わせのそれぞれにおいてマスタとスレーブの関係を構成し、マスタ／スレーブの多段構成によって順々に時刻同期手順を実行しなければならないため、リング上のそれぞれのノードがマスタとスレーブの両方の処理を実装しなければならず、また、時刻同期のためのパケット交換の回数が多く、全ノードの時刻同期が完了するまでの時間もかかるという課題があった。【０００６】
この発明は、上記のような課題を解決することを主な目的の一つとしており、リング型ネットワークの時刻同期において、マスタから、スレーブに至る伝送経路上で発生する遅延の影響を除外でき、マスタ、およびスレーブのそれぞれの処理を簡略化することができ、また、時刻同期のためのパケット交換回数を減少させることを主な目的の一つとする。
【課題を解決するための手段】
【０００７】
本発明に係る通信システムは、基準クロックを備えるマスタノード装置と各々が内部クロックを備える複数のスレーブノード装置とがリング接続され、各ノード装置に定められているパケット転送順序に従ってパケットを二方向で転送して複数のノード装置間でパケットを二方向で巡回させる通信システムであって、
前記マスタノード装置は、
第一の計測パケットを、パケット転送順序において一方の方向での送信先となるスレーブノード装置に対して送信し、前記一方の方向で複数のスレーブノード装置を巡回した前記第一の計測パケットを受信し、
第二の計測パケットを、パケット転送順序において他方の方向での送信先となるスレーブノード装置に対して送信し、前記他方の方向で複数のスレーブノード装置を巡回した前記第二の計測パケットを受信し、
前記基準クロックの計時に従い、前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対、及び前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対の少なくともいずれかを記憶し、
前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対、及び前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対の少なくともいずれかを示す計測結果通知パケットを生成し、
いずれか方向の送信先のスレーブノード装置に対して、生成した前記計測結果通知パケットを送信し、
各スレーブノード装置は、
前記一方の方向での受信元のノード装置から前記第一の計測パケットを受信し、受信した前記第一の計測パケットを、前記一方の方向での送信先のノード装置に対して送信し、
前記他方の方向での受信元のノード装置から前記第二の計測パケットを受信し、受信した前記第二の計測パケットを、前記他方の方向での送信先のノード装置に対して送信し、
内部クロックの計時に従い、前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対、及び前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対の少なくともいずれかを記憶し、
いずれかの方向での受信元のノード装置から前記計測結果通知パケットを受信し、受信した前記計測結果通知パケットに示される前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対及び前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対の少なくともいずれかと、記憶している前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対及び前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対の少なくともいずれかを用いて、時刻補正値を算出し、算出した時刻補正値を用いて、内部クロックの時刻を補正することを特徴とする。【０００８】
各スレーブノード装置は、
前記計測結果通知パケットに示される対となる送信時刻と受信時刻との平均値から、記憶している対となる送信時刻と受信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする。【０００９】
各スレーブノード装置は、
前記マスタノード装置において、前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対が記憶される場合は、前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対を記憶し、受信した前記計測結果通知パケットに示される前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値から、記憶している前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とし、
前記マスタノード装置において、前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対が記憶される場合は、前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対を記憶し、受信した前記計測結果通知パケットに示される前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値から、記憶している前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする。【００１０】
前記マスタノード装置は、
いずれかのスレーブノード装置において通信不能となっている場合に、通信不能となっている折返し点スレーブノード装置において折返し送信が行われる折返し計測パケットを前記折返し点スレーブノード装置の方向での送信先となるスレーブノード装置に対して送信し、前記基準クロックの計時に従い、前記折返し計測パケットの送信時刻を記憶し、
前記折返し点スレーブノード装置において折返し送信された返信折返し計測パケットを受信し、前記基準クロックの計時に従い、前記返信折返し計測パケットの受信時刻を記憶し、
前記折返し計測パケットの送信時刻及び前記返信折返し計測パケットの受信時刻を示す折返し計測結果通知パケットを生成し、生成した前記折返し計測結果通知パケットを前記折返し点スレーブノード装置の方向での送信先となるスレーブノード装置に対して送信し、
各スレーブノード装置は、
前記折返し計測パケットを受信した場合に、内部クロックの計時に従い、前記折返し計測パケットの受信時刻を記憶し、
自装置が前記折返し点スレーブノード装置でない場合に、前記折返し計測パケットの送信方向での送信先となるノード装置に対して前記折返し計測パケットを送信し、前記折返し点スレーブノード装置で折返し送信された返信折返し計測パケットを受信し、受信した前記返信折返し計測パケットを折返し送信方向での送信先となるノード装置に対して送信し、内部クロックの計時に従い、前記返信折返し計測パケットの送信時刻を記憶し、
自装置が前記折返し点スレーブノード装置である場合に、前記折返し計測パケットの受信元のノード装置に対して前記折返し計測パケットを折返し送信し、内部クロックの計時に従い、折返し送信した返信折返し計測パケットの送信時刻を記憶し、
前記折返し計測結果通知パケットを受信し、受信した前記折返し計測結果通知パケットに示されている前記折返し計測パケットの送信時刻及び前記返信折返し計測パケットの受信時刻と、記憶している前記折返し計測パケットの受信時刻及び前記返信折返し計測パケットの送信時刻とを用いて、時刻補正値を算出し、算出した前記時刻補正値を用いて、内部クロックの時刻を補正することを特徴とする。【００１１】
前記マスタノード装置は、
二つのスレーブノード装置間において通信不能となっている場合に、通信不能となっている一方の折返し点スレーブノード装置から折返し送信された返信折返しパケットを受信し、受信した前記返信折返し計測パケットを、通信不能となっている他方の折返し点スレーブノード装置の方向での送信先となるスレーブノード装置に対して送信するとともに、前記基準クロックの計時に従い、前記返信折返し計測パケットの送信時刻を記憶し、
前記他方の折返し点スレーブノード装置において再折返し送信された再返信折返し計測パケットを受信し、前記基準クロックの計時に従い、前記再返信折返し計測パケットの受信時刻を記憶し、
前記返信折返し計測パケットの送信時刻及び前記再返信折返し計測パケットの受信時刻を示す折返し計測結果通知パケットを生成し、生成した前記折返し計測結果通知パケットを前記他方の折返し点スレーブノード装置の方向での送信先となるスレーブノード装置に対して送信し、
各スレーブノード装置は、
前記マスタノード装置から送信された前記返信折返し計測パケットを受信した場合に、内部クロックの計時に従い、前記返信折返し計測パケットの受信時刻を記憶し、
自装置が前記他方の折返し点スレーブノード装置でない場合に、前記返信折返し計測パケットの送信方向での送信先となるノード装置に対して前記返信折返し計測パケットを送信し、前記他方の折返し点スレーブノード装置で再折返し送信された再返信折返し計測パケットを受信し、受信した前記再返信折返し計測パケットを再折返し送信方向での送信先となるノード装置に対して送信し、内部クロックの計時に従い、前記再返信折返し計測パケットの送信時刻を記憶し、
自装置が前記他方の折返し点スレーブノード装置である場合に、前記返信折返し計測パケットの受信元のノード装置に対して前記返信折返し計測パケットを再折返し送信し、内部クロックの計時に従い、再折返し送信した再返信折返し計測パケットの送信時刻を記憶し、
前記折返し計測結果通知パケットを受信し、受信した前記折返し計測結果通知パケットに示されている前記返信折返し計測パケットの送信時刻及び前記再返信折返し計測パケットの受信時刻と、記憶している前記返信折返し計測パケットの受信時刻及び前記再返信折返し計測パケットの送信時刻とを用いて、時刻補正値を算出し、算出した前記時刻補正値を用いて、内部クロックの時刻を補正することを特徴とする。【００１２】
各スレーブノード装置は、
前記折返し計測結果通知パケットに示されている前記折返し計測パケットの送信時刻と前記返信折返し計測パケットの受信時刻との平均値から、記憶している前記折返し計測パケットの受信時刻と前記返信折返し計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする。【００１３】
各スレーブノード装置は、
前記折返し計測結果通知パケットに示されている前記返信折返し計測パケットの送信時刻と前記再返信折返し計測パケットの受信時刻との平均値から、記憶している前記返信折返し計測パケットの受信時刻と前記再返信折返し計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする。【００１４】
各スレーブノード装置は、
内部クロックの計時に従い、前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対、及び前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対を記憶し、
他のノード装置における第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対、及び他のノード装置における第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対のいずれかが示される計測結果通知パケットを受信し、
受信した前記計測結果通知パケットに示される他のノード装置における送信時刻と受信時刻の対と、記憶している送信時刻と受信時刻との対のうちのいずれかの対を用いて、時刻補正値を算出し、
算出した時刻補正値を、記憶している送信時刻と受信時刻との対のうち前記時刻補正値の算出に用いられなかった送信時刻と受信時刻との対に用いて、補正後の送信時刻及び補正後の受信時刻を算出することを特徴とする。【００１５】
各スレーブノード装置は、
前記一方の方向での受信元のノード装置から、当該ノード装置における第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対が示される計測結果通知パケットを受信し、
受信した計測結果通知パケットに示されている第一の計測パケットの送信時刻と第二の計測パケットの受信時刻と、記憶している前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対とを用いて、時刻補正値を算出し、算出した時刻補正値を、記憶している前記第一の計測パケットの送信時刻及び前記第二の計測パケットの受信時刻に用いて、補正後の第一の計測パケットの送信時刻及び補正後の第二の計測パケットの受信時刻を算出し、
受信した前記計測結果通知パケットに示されている第一の計測パケットの送信時刻と第二の計測パケットの受信時刻の対に代えて、算出した前記補正後の第一の計測パケットの送信時刻と前記補正後の第二の計測パケットの受信時刻との対を前記計測結果通知パケットに格納し、前記一方の方向での送信先のノード装置に対して、前記補正後の第一の計測パケットの送信時刻と前記補正後の第二の計測パケットの受信時刻との対が格納された前記計測結果通知パケットを送信することを特徴とする。【００１６】
各スレーブノード装置は、
前記他方の方向での受信元のノード装置から、当該ノード装置における第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対が示される計測結果通知パケットを受信し、
受信した計測結果通知パケットに示されている第一の計測パケットの受信時刻と第二の計測パケットの送信時刻と、記憶している前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対とを用いて、時刻補正値を算出し、算出した時刻補正値を、記憶している前記第一の計測パケットの受信時刻及び前記第二の計測パケットの送信時刻に用いて、補正後の第一の計測パケットの受信時刻及び補正後の第二の計測パケットの送信時刻を算出し、
受信した前記計測結果通知パケットに示されている第一の計測パケットの受信時刻と第二の計測パケットの送信時刻の対に代えて、算出した前記補正後の第一の計測パケットの受信時刻と前記補正後の第二の計測パケットの送信時刻との対を前記計測結果通知パケットに格納し、前記他方の方向での送信先のノード装置に対して、前記補正後の第一の計測パケットの受信時刻と前記補正後の第二の計測パケットの送信時刻との対が格納された前記計測結果通知パケットを送信することを特徴とする。【００１７】
各スレーブノード装置は、
前記計測結果通知パケットに示されている前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値から、記憶している前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする。【００１８】
各スレーブノード装置は、
前記計測結果通知パケットに示されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値から、記憶している前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする。【００１９】
本発明に係る管理装置は、複数の通信装置とともにパケットの巡回経路を構成し、各装置に定められているパケット転送順序に従って前記巡回経路においてパケットを二方向に巡回させる、基準クロックを備える管理装置であって、
第一の計測パケットを、パケット転送順序において一方の方向での送信先となる通信装置に対して送信する第一計測パケット送信部と、
前記複数の通信装置を前記一方の方向で巡回した前記第一の計測パケットを受信する第一計測パケット受信部と、
第二の計測パケットを、パケット転送順序において他方の方向での送信先となる通信装置に対して送信する第二計測パケット送信部と、
前記複数の通信装置を前記他方の方向で巡回した前記第二の計測パケットを受信する第二計測パケット受信部と、
前記基準クロックの計時に従い、前記第一の計測パケットの送信時刻及び前記第二の計測パケットの受信時刻の対、及び前記第一の計測パケットの受信時刻及び前記第二の計測パケットの送信時刻の対の少なくともいずれかを記憶する時刻記憶部と、
前記時刻記憶部に記憶されている前記第一の計測パケットの送信時刻及び前記第二の計測パケットの受信時刻の対、及び前記第一の計測パケットの受信時刻及び前記第二の計測パケットの送信時刻の対の少なくともいずれかが示される計測結果通知パケットを生成する計測結果通知パケット生成部と、
前記計測結果通知パケット生成部により生成された前記計測結果通知パケットを、いずれか方向の送信先のスレーブノード装置に対して送信する計測結果通知パケット送信部とを有することを特徴とする。【００２０】
前記管理装置は、更に、
いずれかの通信装置において通信不能となっている場合に、通信不能となっている折返し点通信装置において折返し送信が行われる折返し計測パケットを生成する折返し計測パケット生成部と、
前記折返し計測パケット生成部により生成された前記折返し計測パケットを、前記折返し点通信装置の方向での送信先となる通信装置に対して送信する折返し計測パケット送信部と、
前記折返し点通信装置において折返し送信された返信折返し計測パケットを受信する折返し計測パケット受信部とを有し、
前記時刻記憶部は、
基準クロックの計時に従い、前記折返し計測パケット送信部による前記折返し計測パケットの送信時刻と、前記折返し計測パケット受信部による前記返信折返し計測パケットの受信時刻を記憶し、
前記計測結果通知パケット生成部は、
前記時刻記憶部に記憶されている前記折返し計測パケットの送信時刻及び前記返信折返し計測パケットの受信時刻を示す折返し計測結果通知パケットを生成し、
前記計測結果通知パケット送信部は、
前記計測結果通知パケット生成部により生成された前記折返し計測結果通知パケットを、前記折返し点通信装置の方向での送信先となる通信装置に対して送信することを特徴とする。【００２１】
前記折返し計測パケット受信部は、
二つの通信装置間において通信不能となっている場合に、通信不能となっている一方の折返し点通信装置から折返し送信された返信折返しパケットを受信し、
前記折返し計測パケット送信部は、
前記折返し計測パケット受信部により受信された前記返信折返し計測パケットを、通信不能となっている他方の折返し点通信装置の方向での送信先となる通信装置に対して送信し、
前記折返し計測パケット受信部は、更に、
前記他方の折返し点通信装置において再折返し送信された再返信折返し計測パケットを受信し、
前記時刻記憶部は、
前記基準クロックの計時に従い、前記折返し計測パケット送信部による前記返信折返し計測パケットの送信時刻と、前記折返し計測パケット受信部による前記再返信折返し計測パケットの受信時刻を記憶し、
前記折返し計測結果通知パケット生成部は、
前記時刻記憶部に記憶されている前記返信折返し計測パケットの送信時刻及び前記再返信折返し計測パケットの受信時刻を示す折返し計測結果通知パケットを生成し、
前記折返し計測結果通知パケット送信部は、
前記折返し計測結果通知パケット生成部により生成された前記折返し計測結果通知パケットを、前記他方の折返し点通信装置の方向での送信先となる通信装置に対して送信することを特徴とする。【００２２】
本発明に係る通信装置は、基準クロックを備える管理装置及び一つ以上の他の通信装置とともにパケットの巡回経路を構成し、各装置に定められているパケット転送順序に従って前記巡回経路においてパケットを二方向に巡回させる、内部クロックを備える通信装置であって、
前記管理装置から一方の方向に送信された第一の計測パケットを、パケット転送順序において前記一方の方向での受信元となる装置から受信する第一計測パケット受信部と、
前記第一計測パケット受信部により受信された前記第一の計測パケットを、前記一方の方向での送信先の装置に対して送信する第一計測パケット送信部と、
前記管理装置から他方の方向に送信された第二の計測パケットを、パケット転送順序において前記他方の方向での受信元となる装置から受信する第二計測パケット受信部と、
前記第二計測パケット受信部により受信された前記第二の計測パケットを、前記他方の方向での送信先の装置に対して送信する第二計測パケット送信部と、
前記内部クロックの計時に従い、前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対、及び前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対の少なくともいずれかを記憶する時刻記憶部と、
前記管理装置の前記基準クロックの計時に従った、前記管理装置における前記第一の計測パケットの送信時刻及び前記巡回経路を巡回した前記第二の計測パケットの前記管理装置における受信時刻の対、及び前記巡回経路を巡回した前記第一の計測パケットの前記管理装置における受信時刻及び前記管理装置における前記第二の計測パケットの送信時刻の対の少なくともいずれかが示される計測結果通知パケットを、受信する計測結果通知パケット受信部と、
受信した前記計測結果通知パケットに示される前記管理装置における前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対及び前記管理装置における前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対の少なくともいずれかと、前記時刻記憶部に記憶されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対及び前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対の少なくともいずれかを用いて、時刻補正値を算出する時刻補正値算出部と、
前記時刻補正値算出部により算出された前記時刻補正値を用いて、前記内部クロックの時刻を補正するクロック制御部とを有することを特徴とする。【００２３】
前記時刻補正値算出部は、
前記計測結果通知パケットに示される対となる送信時刻と受信時刻との平均値から、前記時刻記憶部に記憶されている対となる送信時刻と受信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする。【００２４】
前記時刻記憶部は、
前記管理装置における前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対が示される計測結果通知パケットが前記計測結果通知パケット受信部により受信される場合に、前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対を記憶し、
前記管理装置における前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対が示される計測結果通知パケットが前記計測結果通知パケット受信部により受信される場合に、前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対を記憶し、
前記時刻補正値算出部は、
前記管理装置における前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対が示される計測結果通知パケットが前記計測結果通知パケット受信部により受信される場合に、前記計測結果通知パケットに示される前記管理装置における前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値から、前記時刻記憶部に記憶されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とし、
前記管理装置における前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対が示される計測結果通知パケットが前記計測結果通知パケット受信部により受信される場合に、前記計測結果通知パケットに示される前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値から、前記時刻記憶部に記憶されている前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする。【００２５】
前記通信装置は、更に、
いずれかの通信装置において通信不能となっている場合に、前記管理装置により送信された、通信不能となっている折返し点通信装置において折返し送信が行われる折返し計測パケットを受信する折返し計測パケット受信部と、
自装置が前記折返し点通信装置でない場合に、前記折返し計測パケットの送信方向での送信先となる装置に対して前記折返し計測パケットを送信するとともに、前記折返し計測パケットが前記折返し点通信装置で折返し送信された返信折返し計測パケットを、前記折返し計測パケット受信部が受信した後に、折返し送信方向での送信先となる装置に対して送信し、自装置が前記折返し点通信装置である場合に、前記折返し計測パケットの受信元の装置に対して前記折返し計測パケットを返信折返し計測パケットとして折返し送信する折返し計測パケット送信部を有し、
前記時刻記憶部は、
前記内部クロックの計時に従い、前記折返し計測パケットの受信時刻と、前記返信折返し計測パケットの送信時刻とを記憶し、
前記計測結果通知パケット受信部は、
前記管理装置の前記基準クロックの計時に従った、前記管理装置における前記折返し計測パケットの送信時刻及び前記管理装置における前記返信折返し計測パケットの受信時刻を示す折返し計測結果通知パケットを受信し、
前記時刻補正値算出部は、
前記折返し計測結果通知パケットに示されている前記管理装置における前記折返し計測パケットの送信時刻及び前記管理装置における前記返信折返し計測パケットの受信時刻と、前記時刻記憶部に記憶されている前記折返し計測パケットの受信時刻及び前記返信折返し計測パケットの送信時刻とを用いて、時刻補正値を算出することを特徴とする。【００２６】
前記時刻補正値算出部は、
前記折返し計測結果通知パケットに示されている前記管理装置における前記折返し計測パケットの送信時刻と前記管理装置における前記返信折返し計測パケットの受信時刻との平均値から、前記時刻記憶部に記憶されている前記折返し計測パケットの受信時刻と前記返信折返し計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする。【００２７】
前記時刻記憶部は、
内部クロックの計時に従い、前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対、及び前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対を記憶し、
前記計測結果通知パケット受信部は、
他の装置における第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対、及び他の装置における第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対のいずれかが示される計測結果通知パケットを受信し、
前記時刻補正値算出部は、
前記計測結果通知パケット受信部により受信された前記計測結果通知パケットに示される他の装置における送信時刻と受信時刻の対と、前記時刻記憶部に記憶されている送信時刻と受信時刻との対のうちのいずれかの対を用いて、時刻補正値を算出し、
算出した時刻補正値を、前記時刻記憶部に記憶されている送信時刻と受信時刻との対のうち前記時刻補正値の算出に用いられなかった送信時刻と受信時刻との対に用いて、補正後の送信時刻及び補正後の受信時刻を算出することを特徴とする。【００２８】
前記計測結果通知パケット受信部は、
前記一方の方向での受信元となる装置における第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対が示される計測結果通知パケットを、当該装置から受信し、
前記時刻補正値算出部は、
前記計測結果通知パケット受信部により受信された計測結果通知パケットに示されている第一の計測パケットの送信時刻と第二の計測パケットの受信時刻と、前記時刻記憶部に記憶されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対とを用いて、時刻補正値を算出し、算出した時刻補正値を、前記時刻記憶部に記憶されている前記第一の計測パケットの送信時刻及び前記第二の計測パケットの受信時刻に用いて、補正後の第一の計測パケットの送信時刻及び補正後の第二の計測パケットの受信時刻を算出し、
前記通信装置は、更に、
前記計測結果通知パケット受信部により受信された前記計測結果通知パケットに示されている第一の計測パケットの送信時刻と第二の計測パケットの受信時刻の対に代えて、前記時刻補正値算出部により算出された前記補正後の第一の計測パケットの送信時刻と前記補正後の第二の計測パケットの受信時刻との対を前記計測結果通知パケットに格納する計測結果通知パケット更新部と、
前記一方の方向での送信先となる装置に対して、前記計測結果通知パケット更新部により前記補正後の第一の計測パケットの送信時刻と前記補正後の第二の計測パケットの受信時刻との対が格納された前記計測結果通知パケットを送信する計測結果通知パケット送信部とを有することを特徴とする。【００２９】
各通信装置は、
前記計測結果通知パケット受信部は、
前記他方の方向での受信元となる装置における第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対が示される計測結果通知パケットを、当該装置から受信し、
前記時刻補正値算出部は、
前記計測結果通知パケット受信部により受信された計測結果通知パケットに示されている第一の計測パケットの受信時刻と第二の計測パケットの送信時刻と、前記時刻記憶部に記憶されている前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対とを用いて、時刻補正値を算出し、算出した時刻補正値を、前記時刻記憶部に記憶されている前記第一の計測パケットの受信時刻及び前記第二の計測パケットの送信時刻に用いて、補正後の第一の計測パケットの受信時刻及び補正後の第二の計測パケットの送信時刻を算出し、
前記通信装置は、更に、
前記計測結果通知パケット受信部により受信された前記計測結果通知パケットに示されている第一の計測パケットの受信時刻と第二の計測パケットの送信時刻の対に代えて、前記時刻補正値算出部により算出された前記補正後の第一の計測パケットの受信時刻と前記補正後の第二の計測パケットの送信時刻との対を前記計測結果通知パケットに格納する計測結果通知パケット更新部と、
前記他方の方向での送信先となる装置に対して、前記計測結果通知パケット更新部により前記補正後の第一の計測パケットの受信時刻と前記補正後の第二の計測パケットの送信時刻との対が格納された前記計測結果通知パケットを送信する計測結果通知パケット送信部とを有することを特徴とする。【００３０】
前記時刻補正値算出部は、
前記計測結果通知パケットに示されている前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値から、前記時刻記憶部に記憶されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする。【００３１】
各通信装置は、
前記計測結果通知パケットに示されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との平均値から、前記時刻記憶部に記憶されている前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との平均値を差し引いた差分値を前記時刻補正値とすることを特徴とする。【００３２】
本発明に係るコンピュータプログラムは、複数の通信装置とともにパケットの巡回経路を構成し、各装置に定められているパケット転送順序に従って前記巡回経路においてパケットを二方向に巡回させる、基準クロックを備える管理装置に、
第一の計測パケットを、パケット転送順序において一方の方向での送信先となる通信装置に対して送信する第一計測パケット送信処理と、
前記複数の通信装置を前記一方の方向で巡回した前記第一の計測パケットを受信する第一計測パケット受信処理と、
第二の計測パケットを、パケット転送順序において他方の方向での送信先となる通信装置に対して送信する第二計測パケット送信処理と、
前記複数の通信装置を前記他方の方向で巡回した前記第二の計測パケットを受信する第二計測パケット受信処理と、
前記基準クロックの計時に従い、前記第一の計測パケットの送信時刻及び前記第二の計測パケットの受信時刻の対、及び前記第一の計測パケットの受信時刻及び前記第二の計測パケットの送信時刻の対の少なくともいずれかを記憶する時刻記憶処理と、
前記時刻記憶処理により記憶されている前記第一の計測パケットの送信時刻及び前記第二の計測パケットの受信時刻の対、及び前記第一の計測パケットの受信時刻及び前記第二の計測パケットの送信時刻の対の少なくともいずれかが示される計測結果通知パケットを生成する計測結果通知パケット生成処理と、
前記計測結果通知パケット生成処理により生成された前記計測結果通知パケットを、いずれか方向の送信先のスレーブノード装置に対して送信する計測結果通知パケット送信処理とを実行させることを特徴とする。【００３３】
本発明に係るコンピュータプログラムは、基準クロックを備える管理装置及び一つ以上の他の通信装置とともにパケットの巡回経路を構成し、各装置に定められているパケット転送順序に従って前記巡回経路においてパケットを二方向に巡回させる、内部クロックを備える通信装置に、
前記管理装置から一方の方向に送信された第一の計測パケットを、パケット転送順序において前記一方の方向での受信元となる装置から受信する第一計測パケット受信処理と、
前記第一計測パケット受信処理により受信された前記第一の計測パケットを、前記一方の方向での送信先の装置に対して送信する第一計測パケット送信処理と、
前記管理装置から他方の方向に送信された第二の計測パケットを、パケット転送順序において前記他方の方向での受信元となる装置から受信する第二計測パケット受信処理と、
前記第二計測パケット受信処理により受信された前記第二の計測パケットを、前記他方の方向での送信先の装置に対して送信する第二計測パケット送信処理と、
前記内部クロックの計時に従い、前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対、及び前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対の少なくともいずれかを記憶する時刻記憶処理と、
前記管理装置の前記基準クロックの計時に従った、前記管理装置における前記第一の計測パケットの送信時刻及び前記巡回経路を巡回した前記第二の計測パケットの前記管理装置における受信時刻の対、及び前記巡回経路を巡回した前記第一の計測パケットの前記管理装置における受信時刻及び前記管理装置における前記第二の計測パケットの送信時刻の対の少なくともいずれかが示される計測結果通知パケットを、受信する計測結果通知パケット受信処理と、
受信した前記計測結果通知パケットに示される前記管理装置における前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対及び前記管理装置における前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対の少なくともいずれかと、前記時刻記憶処理により記憶されている前記第一の計測パケットの受信時刻と前記第二の計測パケットの送信時刻との対及び前記第一の計測パケットの送信時刻と前記第二の計測パケットの受信時刻との対の少なくともいずれかを用いて、時刻補正値を算出する時刻補正値算出処理と、
前記時刻補正値算出処理により算出された前記時刻補正値を用いて、前記内部クロックの時刻を補正するクロック制御処理とを実行させることを特徴とする。
【発明の効果】
【００３４】
本発明によれば、マスタノード装置が計測パケットを二方向において複数のスレーブノード装置で巡回させ、マスタノード装置及び各スレーブノード装置で計測した二方向での送受信時刻を用いて時刻補正値の算出を行うため、少ない手順で、伝送経路上で発生する遅延の影響を除外した精度の高い時刻同期が実現できる。
【発明を実施するための最良の形態】
【００３５】
実施の形態１．
図１及び図２は、本実施の形態に係る時刻同期装置１００の構成例を示す図である。
本実施の形態では、複数の時刻同期装置１００が、図３に示すように接続され、リング型ネットワークを構成する。
つまり、本実施の形態で対象にする通信システムは、図３に示すように、管理装置たるマスタノード装置と、通信装置たる複数のスレーブノード装置とがリング接続されるリング型ネットワークである。図３のマスタノード装置、スレーブノード装置は、それぞれ時刻同期装置１００である。
各ノード装置から送信されるパケットは、図３に示すように、順方向、逆方向の二方向に送信される。つまり、本実施の形態では、複数のノード装置間でパケットが順方向、逆方向の二方向で巡回する。
ここでは、順方向伝送路、および逆方向伝送路をそれぞれリング型に接続した二重リング構成をとる例を示しているが、伝送路は、必ずしも二重ではなくとも良い。ここで、順方向伝送路と逆方向伝送路は、たとえば、同一ケーブル上の送信信号線、および受信信号線である。また、伝送路を二重にしている場合であっても、順方向伝送路、逆方向伝送路は、固定的なものではなく、順方向伝送路を逆方向の伝送路とすることもでき、また、逆方向伝送路を順方向の伝送路とすることもできる。
また、各ノード装置には、パケット転送順序が定められている。パケット転送順序に従ってパケットが転送される方向が順方向であり、パケット転送順序の逆にパケットが転送される方向が逆方向である。
図３の例では、マスタノード装置−スレーブノード装置Ａ−スレーブノード装置Ｂ−マスタノード装置というパケット転送ルートが順方向であり、マスタノード装置−スレーブノード装置Ｂ−スレーブノード装置Ａ−マスタノード装置というパケット転送ルートが逆方向である。
また、図３に示すリング型ネットワークを巡回経路ともいう。【００３６】
図１は、マスタノード装置としての時刻同期装置１００の構成例を示す図であり、図２は、スレーブノード装置としての時刻同期装置１００の構成例を示す図である。
マスタノード装置として動作する場合、スレーブノード装置として動作する場合のいずれも、時刻同期装置１００の構成自体は同じであるが、マスタノード装置として動作する場合、スレーブノード装置として動作する場合のそれぞれにおいて各構成要素の役割、処理内容が異なるため、説明の便宜のために、別の図として示している。
しかし、時刻同期装置１００の構成自体は、マスタノード装置として動作する場合、スレーブノード装置として動作する場合でも同じ構成であるため、同じ時刻同期装置１００が、マスタノード装置及びスレーブノード装置のいずれになることも可能である。
以下では、各構成要素について、マスタノード装置、スレーブノード装置に共通する役割、処理内容を説明した後で、マスタノード装置に特有の役割、処理内容、スレーブノード装置に特有の役割、処理内容を説明する。
なお、以下、マスタノード装置を単にマスタ又はマスタノードともいい、スレーブノード装置を単にスレーブ又はスレーブノードともいう。【００３７】
図１及び図２において、時刻同期処理制御部１は、時刻同期手順を制御する手段であり、例えばＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などの回路である。
受信データ処理部２は、順方向伝送路および逆方向伝送路からの受信データの処理を行う手段であり、例えば、ＣＰＵまたはＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などの回路である。
送信データ生成部３は、順方向伝送路および逆方向伝送路から送信する送信データを生成する手段であり、例えば、ＣＰＵまたはＡＳＩＣなどの回路である。
内部クロック４は、内部発振器などの時間経過を計測する手段を備えた回路である。
クロック制御部５は、内部クロック４、順方向伝送路受信部６、順方向伝送路送信部８、逆方向伝送路受信部９、逆方向伝送路送信部１１とそれぞれ接続し、データ送受信のタイムスタンプ取得を制御する手段であり、例えば、ＡＳＩＣなどの回路である。
順方向伝送路受信部６は、順方向伝送路からのデータ受信を行う手段である。
順方向伝送路リピータ７は、順方向伝送路からの受信データをバッファリングし高速に送信するための手段である。
順方向伝送路送信部８は、順方向伝送路への送信を行う手段である。
逆方向伝送路受信部９は、逆方向伝送路からのデータ受信を行う手段である。
逆方向伝送路リピータ１０は、逆方向伝送路からの受信データをバッファリングし、高速に送信するための手段である。
逆方向伝送路送信部１１は、逆方向伝送路へのデータ送信を行う手段である。
なお、前述したように、順方向伝送路を逆方向の伝送路とすることもでき、また、逆方向伝送路を順方向の伝送路とすることもできるため、順方向伝送路受信部６、順方向伝送路リピータ７及び順方向伝送路送信部８は、順方向伝送路が逆方向の伝送路となった場合は、逆方向からの受信、逆方向への送信も可能である。同様に、逆方向伝送路受信部９、逆方向伝送路リピータ１０及び逆方向伝送路送信部１１は、逆方向伝送路が順方向の伝送路となった場合は、順方向からの受信、順方向への送信も可能である。【００３８】
本実施の形態では、マスタノードは、後に詳述するように、第一の計測パケットを、パケット転送順序において一方の方向での送信先となるスレーブノード装置に対して送信し、一方の方向で複数のスレーブノード装置を巡回した第一の計測パケットを受信する。第一の計測パケットの送信方向は、順方向でも逆方向でも構わない。
また、マスタノードは、第二の計測パケットを、パケット転送順序において他方の方向での送信先となるスレーブノード装置に対して送信し、他方の方向で複数のスレーブノード装置を巡回した第二の計測パケットを受信する。第二の計測パケットの送信方向は、第一の計測パケットの送信方向の反対方向である。
また、マスタノードは、内部クロック（基準クロック）の計時に従い、第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対、及び第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対の少なくともいずれかを記憶し、第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対、及び第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対の少なくともいずれかを示す計測結果通知パケットを生成する。
そして、マスタノードは、順方向、逆方向のいずれかの方向の送信先のスレーブノード装置に対して、生成した計測結果通知パケットを送信する。【００３９】
このような処理を行うマスタノードとして動作する場合、時刻同期装置１００の構成要素は、図１に示すように、主に以下のような役割を有する。【００４０】
内部クロック４は、リング型ネットワークに含まれる複数のノード装置間の時刻同期の基準となる基準クロックとして機能する。【００４１】
順方向伝送路送信部８及び逆方向伝送路送信部１１は、それぞれ、第一の計測パケット又は第二の計測パケットを、パケット転送順序においてそれぞれの方向での送信先となるスレーブノード（通信装置）に対して送信する。
また、順方向伝送路送信部８及び逆方向伝送路送信部１１は、計測結果通知パケットをそれぞれの方向での送信先となるスレーブノードに対して送信する場合がある。
第一計測パケット送信部又は第二計測パケット送信部の例、計測結果通知パケット送信部の例となる。【００４２】
順方向伝送路受信部６及び逆方向伝送路受信部９は、それぞれ、複数のスレーブノードを順方向又は逆方向で巡回した第一の計測パケット又は第二の計測パケットを受信する。
また、順方向伝送路受信部６及び逆方向伝送路受信部９は、計測結果通知パケットをそれぞれの方向での受信元となるスレーブノードから受信する場合がある。
順方向伝送路受信部６及び逆方向伝送路受信部９は、第一計測パケット受信部又は第二計測パケット受信部の例となる。【００４３】
時刻同期処理制御部１は、内部クロック４（基準クロック）の計時に従い、第一の計測パケットの送信時刻及び第二の計測パケットの受信時刻の対、及び第一の計測パケットの受信時刻及び第二の計測パケットの送信時刻の対の少なくともいずれかを記憶する。
時刻同期処理制御部１は、時刻記憶部の例となる。【００４４】
送信データ生成部３は、時刻同期処理制御部１に記憶されている第一の計測パケットの送信時刻及び第二の計測パケットの受信時刻の対、及び第一の計測パケットの受信時刻及び第二の計測パケットの送信時刻の対の少なくともいずれかが示される計測結果通知パケットを生成する。
送信データ生成部３は、計測結果通知パケット生成部の例となる。【００４５】
また、本実施の形態では、後に詳述するように、各スレーブノードは、一方の方向での受信元のノード装置から第一の計測パケットを受信し、受信した第一の計測パケットを、一方の方向での送信先のノード装置に対して送信し、また、他方の方向での受信元のノード装置から第二の計測パケットを受信し、受信した第二の計測パケットを、他方の方向での送信先のノード装置に対して送信する。
また、各スレーブノードは、内部クロックの計時に従い、第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対、及び第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対の少なくともいずれかを記憶する。
更に、各スレーブノードは、いずれかの方向での受信元のノード装置から計測結果通知パケットを受信し、受信した計測結果通知パケットに示される第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対及び第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対の少なくともいずれかと、記憶している第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対及び第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対の少なくともいずれかを用いて、時刻補正値を算出し、算出した時刻補正値を用いて、内部クロックの時刻を補正する。【００４６】
このような処理を行うスレーブノードとして動作する場合、時刻同期装置１００の構成要素は、図２に示すように、主に以下のような役割を有する。【００４７】
順方向伝送路受信部６及び逆方向伝送路受信部９は、それぞれ、マスタノードから送信された第一の計測パケット又は第二の計測パケットを、パケット転送順序においてそれぞれの方向での受信元となるノード装置から受信する。
また、順方向伝送路受信部６及び逆方向伝送路受信部９は、マスタノードから送信された計測結果通知パケットをそれぞれの方向での受信元となるノード装置から受信する場合がある。
順方向伝送路受信部６及び逆方向伝送路受信部９は、第一計測パケット受信部又は第二計測パケット受信部、計測結果通知パケット受信部の例となる。【００４８】
順方向伝送路送信部８及び逆方向伝送路送信部１１は、それぞれ、第一の計測パケット又は第二の計測パケットを、パケット転送順序においてそれぞれの方向での送信先となるノード装置に対して送信する。
また、順方向伝送路送信部８及び逆方向伝送路送信部１１は、計測結果通知パケットをそれぞれの方向での送信先となるノード装置に対して送信する場合がある。
順方向伝送路送信部８及び逆方向伝送路送信部１１は、第一計測パケット送信部又は第二計測パケット送信部の例となる。【００４９】
時刻同期処理制御部１は、内部クロック４の計時に従い、第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対、及び第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対の少なくともいずれかを記憶する。
また、時刻同期処理制御部１は、受信した計測結果通知パケットに示されるマスタノードにおける第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対及びマスタノードにおける第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対の少なくともいずれかと、記憶している第一の計測パケットの受信時刻と第二の計測パケットの送信時刻との対及び第一の計測パケットの送信時刻と第二の計測パケットの受信時刻との対の少なくともいずれかを用いて、時刻補正値を算出する。
具体的には、時刻同期処理制御部１は、計測結果通知パケットに示される対となる送信時刻と受信時刻との平均値から、記憶している対となる送信時刻と受信時刻との平均値を差し引いた差分値を時刻補正値とする。
時刻同期処理制御部１は、時刻記憶部及び時刻補正値算出部の例となる。【００５０】
クロック制御部５は、時刻同期処理制御部１により算出された時刻補正値を用いて、内部クロック４の時刻を補正する。【００５１】
次に、動作について説明する。
まず、リング構成における全体の動作を説明する。
各時刻同期装置は、前述の通り、図３のようにリング型に接続する。
同一リング上のノードのうち、１つのノードは、マスタであり、このリング内での時刻同期の基準となる。他のノードは、スレーブとなる。
時刻同期を行う際には、マスタは、順方向、逆方向のそれぞれにパケットを送出する。
各スレーブは、これらのパケットの自ノードにおける送信時刻、受信時刻、および、マスタにおけるパケットの送信時刻、受信時刻から時刻の補正値を算出する。
図３のように、３台の時刻同期装置を接続した場合を例に順を追って説明する。【００５２】
図４は、図３におけるマスタ、スレーブＡ、およびスレーブＢの間のパケット交換を時系列でしめすため、リング構造をマスタの位置で展開し横方向に記し、縦方向に時系列を示したものである。したがって、図４で右端と左端に記されている「マスタ」は同一のノードを示す。
図４は、マスタが第一の計測パケットを逆方向に送信し、第二の計測パケットを順方向に送信する例を示す。
図５は、マスタが第一の計測パケットを逆方向に送信し、第二の計測パケットを順方向に送信するが、マスタ及びスレーブにおける時刻の採取の仕方が図４と異なる例を示す。
図６は、マスタが第一の計測パケットを順方向に送信し、第二の計測パケットを逆方向に送信する例を示す。
図７は、マスタが第一の計測パケットを順方向に送信し、第二の計測パケットを逆方向に送信するが、マスタ及びスレーブにおける時刻の採取の仕方が図６と異なる例を示す。
なお、図４〜図７において、計測結果通知パケットは、順方向に送信することとしているが、計測結果通知パケットの送信方向はどちらの方向でもよく、図４〜図７において、逆方向に送信するようにしてもよい。
なお、以下では、図４の例を最初に説明し、その後、図５〜図７の例の説明を行う。【００５３】
時刻同期の処理は、たとえば、マスタのタイマにより、一定時間ごとに実行する。
時刻同期の処理が開始すると、図４に示すように、まず、マスタは、逆方向に第一の計測パケット（以降、逆方向計測パケットという）を送出する。
スレーブでは、逆方向計測パケットを受信すると、リピータを介して次のノードへ高速にパケットをリピート送信するとともに、データの読み込みを行う。また、次のノードへの送信時には、送信時刻を採取する。
図４において、スレーブＢにおいては、パケット送信時刻Ｔ２１を、スレーブＡにおいては、パケット送信時刻Ｔ１１を採取する。なお、図面では、マスタ、各スレーブが採取する時刻が、パケット送信時刻であればＴｘｘの横に（Ｓ）を、パケット受信時刻であれば（Ｒ）を表記している。
次に、マスタが、リングを一周してきた逆方向計測パケットを受信すると、その受信時刻Ｔ０１を採取する。
次に、マスタは、順方向に第二の計測パケット（以降、順方向計測パケットという）を送出するとともに、その送信時刻Ｔ０２を採取する。
各スレーブでは、順方向計測パケットを受信すると、リピータを介して次のノードへ高速にパケットをパススルーするとともに、データの読み込みを行う。
また、各スレーブは、順方向計測パケットの受信時刻を採取する。
図３において、スレーブＡにおいては、パケット受信時刻Ｔ１２を、スレーブＢにおいては、パケット受信時刻Ｔ２２を採取する。
次に、マスタは、自ノードで採取した、Ｔ０１、Ｔ０２の値を、計測結果通知パケットに格納して送信し、各スレーブに通知する。
各スレーブは、計測結果通知パケットにより受信したＴ０１、Ｔ０２の値と、自ノードで採取した、送信時刻、受信時刻から、それぞれの内部クロックが示す時刻の補正値を算出する。【００５４】
ここまでで、マスタ、スレーブＡ、スレーブＢの各ノードで採取する送信時刻、および、受信時刻は、それぞれの内部クロックにより採取した値であり、それぞれの内部クロックは、その内部発振器の精度等の影響により、それぞれ、絶対時刻との間、および、相互の内部クロック間で示す時刻に差が生じている。
ここでは、各スレーブにおける内部クロックの、マスタの内部クロックから見たオフセット、すなわち、スレーブにおける内部クロックの補正値を算出する。
今、逆方向計測パケット、および、順方向計測パケットのマスタ／スレーブ間の同一経路における伝送遅延、および、中継ノード上での処理遅延などを含めた総遅延が、パケットの送信方向にかかわらず、一定であると仮定した場合、図４において、マスタで採取したＴ０１とＴ０２の平均値、スレーブＡで採取したＴ１１とＴ１２の平均値、および、スレーブＢで採取したＴ２１とＴ２２の平均値は、それぞれ、同一時刻におけるそれぞれの内部クロックが指し示す時刻とみなすことが出来る。
したがって、マスタで採取した時刻の平均値と各スレーブにおける平均値の差が、各スレーブの内部クロックをマスタの内部クロック（基準クロック）に合わせる際の補正値となる。
図４において、スレーブＡの内部クロックの補正値ΔＴ１は、
ΔＴ１＝｛（Ｔ０１＋Ｔ０２）−（Ｔ１１＋Ｔ１２）｝／２  …式１
また、スレーブＢの内部クロックの補正値ΔＴ２は、
ΔＴ２＝｛（Ｔ０１＋Ｔ０２）−（Ｔ２１＋Ｔ２２）｝／２  …式２
となる。
各スレーブにおいてこれらの補正値を求めた後、任意のタイミングで、算出した補正値を使用して内部クロックの時刻を修正することにより、時刻同期処理は完了する。【００５５】
次に、マスタおよびスレーブにおける処理の詳細を示す。
まず、マスタにおける処理を示す。
図８は、マスタにおける処理フローの一例である。
マスタは、これらの一連の時刻同期処理を、マスタ内部のタイマによる周期動作、オペレータの操作、マスタ内部のソフトウェア、ハードウェアで発生する各種イベント等を契機として開始する。時刻同期処理を開始すると、マスタは、まず逆方向計測パケットを送信する（Ｓ１）。
逆方向計測パケットの形式の一例を図９に示す。
図９において、送信元アドレス、および、宛先アドレスは、リング型ネットワークで各ノードを識別するアドレスである。
逆方向計測パケットにおいて、宛先は全ノードであるため、宛先アドレスはブロードキャストアドレスを指定する。
ブロードキャストアドレスは、たとえば、アドレス長が１バイトの場合、１６進数でＦＦなどをあらかじめ予約しておく。
パケット種別は、その値により、パケットの種別を表す。この実施の形態では、逆方向計測パケット、順方向計測パケット、計測結果通知パケットの３種のための値が予約される。
シーケンス番号は、一連のパケットを関連付けるために使用する。
図４において、一連の順方向計測パケット、逆方向計測パケット、計測結果通知パケットのシーケンス番号フィールドに同じ値を格納することにより、受信側で、一連のパケットを関係付ける。シーケンス番号は、一連のパケットの識別が出来れば、どのように割り振ってもよいが、たとえば、マスタで逆方向計測パケットを送信するたびに１ずつカウントアップし、関連する順方向計測パケット、および、計測結果通知パケットに同じ値を格納するようにすればよい。【００５６】
この、逆方向計測パケット送信のマスタ内部での動作は、順方向伝送路が順方向、逆方向伝送路が逆方向のパケットをそれぞれ伝送するので、まず、時刻同期処理制御部１が逆方向計測パケット送信命令を、送信データ生成部３に対して発行し、送信データ生成部３が逆方向計測パケットを生成し逆方向伝送路送信部１１に送り、逆方向伝送路送信部１１は逆方向伝送路に逆方向計測パケットを送出する。【００５７】
逆方向計測パケットを送信後、次に、マスタは、リングを１周してきた同じ逆方向計測パケットを受信する。
このとき、受信時刻を採取し、逆方向計測パケット受信時刻として保持しておく（Ｓ２）。【００５８】
マスタ内部の処理としては、まず、逆方向伝送路受信部９が逆方向計測パケットを受信する。
このとき、逆方向伝送路受信部９からのタイミング信号により、クロック制御部５は、内部クロック４の時刻を取得する。
同時に、逆方向伝送路受信部９で受信した逆方向計測パケットのデータは、受信データ処理部２に伝達され、受信データ処理部２においてパケット種別が判別され、逆方向計測パケット受信のイベントとして時刻同期処理制御部１に通知される。
時刻同期処理制御部１は、逆方向計測パケット受信のイベントを受けると、クロック制御部５から、逆方向伝送路受信部９におけるパケット受信のタイミングで取得した時刻を取得し、逆方向計測パケット受信時刻として、シーケンス番号と対応付け、保存する。【００５９】
次に、マスタは、順方向計測パケットを送信し、送信時刻を採取する（Ｓ３）。
順方向計測パケットの形式は、図９に示した逆方向計測パケットと同様であるが、パケット種別の値が異なる。【００６０】
マスタの内部処理では、まず、時刻同期処理制御部１が、送信データ生成部３に対し、順方向計測パケット送信命令を発行する。送信データ生成部３は、命令を受けると、順方向計測パケットを生成し、順方向伝送路送信部８に送る。順方向伝送路送信部８は順方向計測パケットを順方向伝送路に送出し、送信のタイミングでタイミング信号をクロック制御部５に送る。
クロック制御部５は、タイミング信号を受けると、内部クロック４が示す時刻を取得する。
一方、順方向伝送路送信部８での送信処理が完了し、送信データ生成部３を経由して時刻同期処理制御部１に制御が戻ると、時刻同期処理制御部１は、順方向伝送路送信部８での順方向計測パケット送信のタイミングで取得した時刻をクロック制御部５から取得し、順方向計測パケット送信時刻として、シーケンス番号と対応付けて保存する。【００６１】
次に、マスタは、リングを１周してきた順方向計測パケットを受信する（Ｓ４）。【００６２】
マスタの内部の処理では、順方向伝送路受信部６が順方向伝送路より、順方向計測パケットを受信し、受信データ処理部２でパケット種別が識別され、順方向計測パケット受信イベントとして時刻同期処理制御部１に通知する。
マスタでは、順方向計測パケット受信に対して行う処理はないが、順方向計測パケット受信を契機に計測結果通知パケット送信の処理を開始するようにしても良い。【００６３】
次に、マスタは、計測結果通知パケットを送信し、自ノードで測定した、逆方向計測パケット受信時刻、および、順方向計測パケット送信時刻を各スレーブに通知する（Ｓ５）。【００６４】
マスタの内部の処理では、時刻同期処理制御部１が、内部に保存していた逆方向計測パケット受信時刻、および、順方向計測パケット送信時刻を、計測結果通知パケット送信命令とともに、送信データ生成部３に通知する。
送信データ生成部３は逆方向計測パケット受信時刻、および、順方向計測パケット送信時刻を格納した、計測結果通知パケットを生成する。
計測結果通知パケットの形式の一例を図１０に記す。
送信データ生成部３で生成されたパケットは、順方向伝送路送信部８から順方向伝送路に送出する。【００６５】
次に、マスタは、リングを１周してきた計測結果通知パケットを受信する（Ｓ６）。
マスタの内部処理としては、順方向伝送路受信部６でパケットを受信し、受信データ処理部２でパケット種別を判別し、時刻同期処理制御部１に計測結果通知パケット受信イベントとして通知する。
図８に示した処理の順序は、必ずしもこの通りの順序で行う必要はなく、次の２つの制約が守られる範囲で自由に入れ替えても良い。
（１）各パケットの受信は、当該パケットの送信より後で発生する、すなわち、図８において、Ｓ２はＳ１より後で、Ｓ４はＳ３より後で、Ｓ６はＳ５より後で発生する。
（２）計測結果通知パケット送信は、逆方向計測パケット受信時刻採取より後、かつ、順方向計測パケット送信時刻取得より後で実行する。すなわち、図８において、Ｓ５はＳ２およびＳ３より後に実行する。【００６６】
次に、スレーブにおける処理を示す。
図１１は、スレーブにおける処理フローの一例である。【００６７】
まず、スレーブは、逆方向計測パケットを受信し、これを次のノードに送出するとともに送信時刻を採取する（Ｓ７）。【００６８】
スレーブ内部では次のように処理を行う。
まず、逆方向計測パケットを逆方向伝送路受信部９が受信する。
受信したパケットは、逆方向伝送路受信部９から逆方向伝送路リピータ１０に伝えるとともに、受信データ処理部２に取り込む。
逆方向伝送路リピータ１０に送られたパケットは、バッファリングされ、そのまま変更せずに逆方向伝送路送信部１１に送るか、あるいは、データリンク層のヘッダおよびトレーラを変更して、逆方向伝送路送信部１１に送る。
逆方向伝送路送信部１１は、逆方向伝送路リピータ１０から受け取ったパケットを逆方向伝送路に送出するとともに、送信タイミングの信号をクロック制御部５に送る。
クロック制御部５は、タイミング信号を受けると、内部クロック４が示す時刻を取得し、保存する。
一方、逆方向伝送路受信部９から逆方向計測パケットのデータを取り込んだ受信データ処理部２では、パケット種別を識別し、逆方向計測パケット受信イベントを時刻同期処理制御部１に通知する。
イベントを受けた時刻同期処理制御部１では、クロック制御部５から、逆方向伝送路送信部１１からの逆方向計測パケット送信のタイミングで取得した送信時刻を取得し、逆方向計測パケットのシーケンス番号と関連付けて保存する。【００６９】
次に、スレーブは、順方向計測パケットを受信し受信時刻を採取するとともに、これを次のノードに送出する（Ｓ８）。【００７０】
スレーブ内部では次のように処理を行う。
まず、順方向計測パケットを順方向伝送路受信部６が受信する。
このとき、順方向伝送路受信部６は、パケット受信のタイミング信号をクロック制御部５に送る。
タイミング信号を受けたクロック制御部５は、内部クロック４の示す時刻を取得し保存する。
一方、受信したパケットは、順方向伝送路受信部６から順方向伝送路リピータ７に伝えるとともに、受信データ処理部２に取り込む。
順方向伝送路リピータ７に送られたパケットは、バッファリングされ、そのまま変更せずに順方向伝送路送信部８に送るか、あるいは、データリンク層のヘッダおよびトレーラを変更して、順方向伝送路送信部８に送る。
順方向伝送路送信部８は、順方向伝送路リピータ７から受け取ったパケットを順方向伝送路に送出する。
また一方、順方向伝送路受信部６から順方向計測パケットのデータを取り込んだ受信データ処理部２では、パケット種別を識別し、順方向計測パケット受信イベントを時刻同期処理制御部１に通知する。
イベントを受けた時刻同期処理制御部１では、クロック制御部５から、順方向伝送路受信部６での順方向計測パケット受信のタイミングで取得した受信時刻を取得し、順方向計測パケットのシーケンス番号と関連付けて保存する。【００７１】
次に、スレーブは、計測結果通知パケットを受信する（Ｓ９）。【００７２】
スレーブ内部では次のように処理を行う。
まず、計測結果通知パケットを順方向伝送路受信部６が受信する。
受信したパケットは、順方向伝送路受信部６から順方向伝送路リピータ７に伝えるとともに、受信データ処理部２に取り込む。
順方向伝送路リピータ７に送られたパケットは、バッファリングされ、そのまま変更せずに順方向伝送路送信部８に送るか、あるいは、データリンク層のヘッダおよびトレーラを変更して、順方向伝送路送信部８に送る。
順方向伝送路送信部８は、順方向伝送路リピータ７から受け取ったパケットを順方向伝送路に送出する。
また一方、順方向伝送路受信部６から計測結果通知パケットのデータを取り込んだ受信データ処理部２では、パケット種別を識別し、計測結果通知パケット受信イベントを時刻同期処理制御部１に通知する。【００７３】
次に、スレーブは、自ノードの内部クロックにおける時刻の補正値を算出する（Ｓ１０）。【００７４】
スレーブ内部においては、Ｓ９で計測結果通知パケット受信イベントを受けた時刻同期処理制御部１は、イベント通知により取得した計測結果通知パケットのデータより、マスタで測定した、逆方向計測パケット受信時刻、および、順方向計測パケット送信時刻を取り出し、スレーブで測定した、逆方向計測パケット送信時刻、および、順方向計測パケット受信時刻と合わせて、時刻の補正値を算出する。
このとき、それぞれの受信時刻データ、送信時刻データの対応づけは、各パケットのシーケンス番号により対応付ける。
時刻の補正値の算出式は、図４のケースにて先に示した通りであるが、より一般化した形で記述すると次のようになる。
今、マスタで測定した逆方向計測パケット受信時刻をＴＭＲ、順方向計測パケット送信時刻をＴＭＳ、スレーブで測定した逆方向計測パケット送信時刻をＴＳＳ、順方向計測パケット受信時刻をＴＳＲとすると、スレーブにおける時刻の補正値ΔＴは、
ΔＴ＝｛（ＴＭＲ＋ＴＭＳ）−（ＴＳＳ＋ＴＳＲ）｝／２
となる。【００７５】
次に、スレーブは、算出した時刻補正値を使用して内部クロックの時刻を調整する（Ｓ１１）。【００７６】
スレーブの内部処理では、時刻同期処理制御部１が、Ｓ１０において算出した補正値ΔＴを使用して、クロック制御部５に対して、内部クロック調整命令を発行する。
クロック制御部５は、内部クロック調整命令を受けると、内部クロック４の現在時刻に補正値ΔＴを加算する処理を実行する。
以上の処理で、スレーブの内部クロックをマスタの内部クロックに同期させる時刻同期処理が完了する。【００７７】
図１１に示したスレーブの処理フローは、マスタが図８の処理フローの順序で処理する場合に対し、順に処理を行うように記述されているが、マスタは、前述のように処理の順序を入れ替えても良い。
たとえば、図８では、まず、逆方向計測パケットを送信し、後に、順方向計測パケットを送信するようにしているが、これを入れ替えて、まず、順方向計測パケットを送信し、後に、逆方向計測パケットを送信するようにしても良い。
このように、マスタがどのような順序で処理を行ってもスレーブ側が対処できるようにした処理フローを図１２に示す。
図１２に従ったスレーブの処理手順を示す。【００７８】
まず、スレーブは、マスタから送信されたパケットを受信する（Ｓ１２）。
このとき、逆方向計測パケットであれば、逆方向伝送路受信部９で受信し、順方向計測パケット、または、計測結果通知パケットであれば、順方向伝送路受信部６で受信する。
また、このとき、受信部からは、クロック制御部５に対し受信タイミング信号が送られ、クロック制御部５では、タイミング信号により内部クロック４が示す時刻を、それぞれ、順方向伝送路パケット受信時刻、または、逆方向伝送路パケット受信時刻として保存する。
一方、順方向伝送路受信部６、または、逆方向伝送路受信部９で受信したパケットは、それぞれ、順方向伝送路リピータ７または、逆方向伝送路リピータ１０を経由して、順方向伝送路送信部８または、逆方向伝送路送信部１１から、次のノードへと送信される。
このとき、送信時の送信時刻も、それぞれの送信部からのタイミング信号によりクロック制御部５が採取し、順方向伝送路送信時刻、または、逆方向伝送路送信時刻として保存する。
また一方、順方向伝送路受信部６、または、逆方向伝送路受信部９で受信したパケットのデータは、受信データ処理部２にも取り込まれ、逆方向計測パケット受信、順方向計測パケット受信、または、計測結果通知パケット受信イベントとして、時刻同期処理制御部１に通知される。
パケット受信の処理が終わると、次にスレーブは、パケット種別の判定を行う（Ｓ１３）。
次に、スレーブは、受信パケット種別が逆方向計測パケットであった場合は、時刻同期処理制御部１が、クロック制御部５より逆方向伝送路送信部１１からのタイミング信号により保存した時刻情報を取得し、逆方向計測パケット送信時刻として保存する（Ｓ１４）。
また、Ｓ１３で判定したパケット種別が順方向計測パケットの場合は、時刻同期処理制御部１が、クロック制御部５より順方向伝送路受信部６からのタイミング信号により保存した時刻情報を取得し、順方向計測パケット受信時刻として保存する（Ｓ１５）。また、Ｓ１３で判定したパケット種別が計測結果通知パケットであった場合は、まず、時刻補正値の算出を行う（Ｓ１６）。次に、Ｓ１６で算出した時刻補正値を使用して、時刻調整を行う（Ｓ１７）。【００７９】
ここでは、マスタにおける時刻測定点として逆方向計測パケット受信時刻および順方向計測パケット送信時刻を、スレーブにおける時刻測定点として、逆方向計測パケット送信時刻および順方向計測パケット受信時刻をそれぞれ採取するようにしているが、マスタにおいて、逆方向計測パケット送信時刻および順方向計測パケット受信時刻を採取するようにしたり、あるいは、スレーブで逆方向計測パケット受信時刻および順方向計測パケット送信時刻を採取するようにしたりしても良い。すなわち、マスタ、および、スレーブの各ノードにおける時刻測定点は、
逆方向計測パケットの送信時刻と順方向計測パケットの受信時刻
逆方向計測パケットの受信時刻と順方向計測パケットの送信時刻
の２つの組み合わせからそれぞれのノードにおける測定点を自由に選択しても良い。
具体的には、図５〜図７に示す例がある。【００８０】
図５に示す例では、マスタが第一の計測パケットを逆方向に送信し、第二の計測パケットを順方向に送信する。
そして、マスタは第一の計測パケットである逆方向計測パケットの送信時刻Ｔ０１と、第二の計測パケットである順方向計測パケットの受信時刻Ｔ０２を計測する。
スレーブでは、第一の計測パケットである逆方向計測パケットの受信時刻Ｔ１１（またはＴ２１）と、第二の計測パケットである順方向計測パケットの送信時刻Ｔ１２（またはＴ２２）を計測する。
そして、マスタは、逆方向計測パケット送信時刻Ｔ０１と、順方向計測パケット受信時刻Ｔ０２が示される計測結果通知パケットを送信し、各スレーブでは、上述のように、計測結果通知パケットに示される時刻Ｔ０１、Ｔ０２と記憶している時刻Ｔ１１、Ｔ１２（またはＴ２１、Ｔ２２）を用いて、式１（または式２）に従って時刻補正値を算出して内部クロックの時刻補正を行う。【００８１】
また、図６に示す例では、マスタが第一の計測パケットを順方向に送信し、第二の計測パケットを逆方向に送信する。
そして、マスタは第一の計測パケットである順方向計測パケットの受信時刻Ｔ０１と、第二の計測パケットである逆方向計測パケットの送信時刻Ｔ０２を計測する。
スレーブでは、第一の計測パケットである順方向計測パケットの送信時刻Ｔ１１（またはＴ２１）と、第二の計測パケットである逆方向計測パケットの受信時刻Ｔ１２（またはＴ２２）を計測する。
そして、マスタは、順方向計測パケット受信時刻Ｔ０１と、逆方向計測パケット送信時刻Ｔ０２が示される計測結果通知パケットを送信し、各スレーブでは、上述のように、計測結果通知パケットに示される時刻Ｔ０１、Ｔ０２と記憶している時刻Ｔ１１、Ｔ１２（またはＴ２１、Ｔ２２）を用いて、式１（または式２）に従って時刻補正値を算出して内部クロックの時刻補正を行う。【００８２】
また、図７に示す例では、マスタが第一の計測パケットを順方向に送信し、第二の計測パケットを逆方向に送信する。
そして、マスタは第一の計測パケットである順方向計測パケットの送信時刻Ｔ０１と、第二の計測パケットである逆方向計測パケットの受信時刻Ｔ０２を計測する。
スレーブでは、第一の計測パケットである順方向計測パケットの受信時刻Ｔ１１（またはＴ２１）と、第二の計測パケットである逆方向計測パケットの送信時刻Ｔ１２（またはＴ２２）を計測する。
そして、マスタは、順方向計測パケット送信時刻Ｔ０１と、逆方向計測パケット受信時刻Ｔ０２が示される計測結果通知パケットを送信し、各スレーブでは、上述のように、計測結果通知パケットに示される時刻Ｔ０１、Ｔ０２と記憶している時刻Ｔ１１、Ｔ１２（またはＴ２１、Ｔ２２）を用いて、式１（または式２）に従って時刻補正値を算出して内部クロックの時刻補正を行う。【００８３】
リング型ネットワーク内に、順方向計測パケットの中継処理時間と、逆方向計測パケットの中継処理時間の間に大きな差が発生するスレーブが存在する場合、そのスレーブの中継処理を含まないような測定点の組み合わせを採用することが考えられる。
この実施の形態の図４〜図７で示したような組み合わせで測定点を設定した場合、スレーブでの測定点を統一できるため、スレーブでの処理が単純化でき、また、算出した補正値に時刻同期を行うスレーブ自体の中継処理時間による影響が含まれないという効果がある。【００８４】
図４〜図７の例では、マスタにおける計測時刻の種類と各スレーブにおける計測時刻の種類が異なり、また、計測パケットの送信方向により計測時刻の種類が異なる。例えば、図４では、逆方向計測パケットに対して、マスタは受信時刻を計測し、各スレーブは送信時刻を計測している。また、順方向計測パケットに対して、マスタは送信時刻を計測し、各スレーブは受信時刻を計測している。図５では、逆方向計測パケットに対して、マスタは送信時刻を計測し、各スレーブは受信時刻を計測している。また、順方向計測パケットに対して、マスタは受信時刻を計測し、スレーブは送信時刻を計測している。図６と図７についても、同様に、マスタの計測時刻の種類と各スレーブの計測時刻の種類とが異なり、計測パケットの送信方向により計測時刻の種類が異なる。
このような時刻の採取により、スレーブ自体の中継処理時間による影響が含まれない。【００８５】
他方で、スレーブにおける中継処理時間の影響が含まれるものの、図４〜図７の時刻採取方法と異なる方法で時刻を採取してもよい。
具体的には、マスタと各スレーブノードが採取する時刻の種類を同じものとしてもよい。例えば、
図４に示す例において、逆方向計測パケットに対して、マスタ、各スレーブとも受信時刻を計測し、順方向計測パケットに対して、マスタ、各スレーブとも送信時刻を計測するようにしてもよい。【００８６】
また、このように時刻補正値算出のための測定点の組み合わせをスレーブ側で自由に組み合わせるため、マスタでは、逆方向計測パケット送信時刻、逆方向計測パケット受信時刻、順方向計測パケット送信時刻、および、順方向計測パケット受信時刻の４点を測定し、これらの情報をすべてスレーブに送信するようにしても良い。この場合の計測結果通知パケットの形式の一例を図１３に示す。【００８７】
また、図４の場合において、マスタにおける逆方向計測パケット受信時刻を、順方向計測パケットに含めてスレーブに送信するようにしても良い。
このようにした場合の、逆方向計測パケットの形式の一例を図１４に、順方向計測パケットの形式の一例を図１５に、計測結果通知パケットの形式の一例を図１６に示す。
図１４において、時刻情報のフィールドには、何らかのタイミングで採取した時刻情報を格納しても良いし、何も格納しなくても良い。
逆方向計測パケットと順方向計測パケットの伝送遅延、および中継処理時間に差が生じないようにパケット長を等しくするため、フィールドを確保している。【００８８】
次に、断線等の場合の折り返し運転時の動作を示す。
二重リングを構成するリング型ネットワークにおいて、断線などにより不通箇所が発生した場合、不通となった経路の両端のノードでパケットを折り返す、折り返し運転に移行する場合がある。
図１７にその様子を示す。【００８９】
図１７では、マスタ、スレーブＡ、スレーブＢ、およびスレーブＣの４つのノードでリング型ネットワークを構成している。
このとき、スレーブＢとスレーブＣの間が通信不能となった場合、スレーブＢおよびスレーブＣはこれを検出し、図１７の矢印で示したように、受信したパケットを折り返して送信する、折り返し運転モードに移行する。このようなパケットの折返しを行うスレーブＢ、スレーブＣを、折り返し点スレーブノード装置、又は折返し点スレーブノードという。
このとき、マスタ、およびスレーブの各ノードは、折り返し運転モードに移行したことを検出し、時刻同期の動作を行う。
図１７に示した構成における折り返し運転モード時の時刻同期におけるパケット交換手順を図１８に示す。このときのマスタの処理フローを図１９に示す。
図１９に従って、マスタの処理を順に説明する。
なお、折返し運転時に送受信される計測パケットを、折返し計測パケットという。【００９０】
まず、マスタは、折返し計測パケットを順方向に送信する（Ｓ１８）。なお、折返し計測パケットの最初の送信方向は、順方向、逆方向のどちらでもよいが、ここでは、最初に順方向に送信するものとして説明を進める。
折返し計測パケットの形式は、たとえば、図９に示した形式でパケット種別を折返し計測パケットとして予約された値とする。折り返し計測パケットは、通常時と同様に、送信データ生成部３が、時刻同期処理制御部１からの指示に基づき生成する。
このとき、時刻同期処理制御部１は、クロック制御部５により計測された送信時刻を、順方向送信時刻（図１８のＴ０１）として保存する。
次にマスタは、折返し計測パケットを逆方向で受信する（Ｓ１９）。つまり、一方の折返し点スレーブノード（スレーブＢ）で折返し送信された返信折返し計測パケットを受信する。
このとき、マスタでは、逆方向伝送路受信部９で返信折返し計測パケットを受信し、逆方向伝送路リピータ１０を経由し、逆方向伝送路送信部１１から再び返信折返し計測パケットを送信する。
また、このとき、時刻同期処理制御部１は、逆方向伝送路受信部９における返信折返し計測パケット受信時の受信時刻、および、逆方向伝送路送信部１１における返信折返し計測パケット送信時の送信時刻を採取し、それぞれ、逆方向受信時刻（図１８のＴ０２）、逆方向送信時刻（図１８のＴ０３）として保存する。
次に、マスタは、順方向で折返し計測パケットを受信する（Ｓ２０）。つまり、他方の折返し点スレーブノード（スレーブＣ）で再折返し送信された再返信折返し計測パケットを受信する。
このとき、時刻同期処理制御部１は、再返信折返し計測パケット受信時刻を採取し、順方向受信時刻（図１８のＴ０４）として保存する。
次に、マスタは、時刻同期処理制御部１からの指示に基づき、送信データ生成部３が、採取した順方向送信時刻（Ｔ０１）、逆方向受信時刻（Ｔ０２）、逆方向送信時刻（Ｔ０３）、および、順方向受信時刻（Ｔ０４）を格納した計測結果通知パケットを生成し、順方向伝送路送信部８が、順方向に計測結果通知パケットを送信する（Ｓ２１）。なお、折返し運転時の計測結果通知パケットを通常時の計測結果通知パケットと区別するため、折返し計測結果通知パケットともいう。
この場合の折返し計測結果通知パケットの形式の一例を図２０に示す。
次に、マスタは、折り返し点スレーブノード（スレーブＢ）で折り返し送信された折返し計測結果通知パケットを逆方向で受信し、リピータを経由して逆方向に再度送信する（Ｓ２２）。
次に、マスタは、折り返し点スレーブノード（スレーブＣ）で再折り返し送信された折返し計測結果通知パケットを順方向で受信する（Ｓ２３）。【００９１】
このように、折返し運転時は、マスタノード装置は、通信不能となっている折返し点スレーブノード装置において折返し送信が行われる折返し計測パケットを一方の折返し点スレーブノード装置（スレーブＢ）の方向での送信先となるスレーブノード装置に対して送信し、内部クロック（基準クロック）の計時に従い、折返し計測パケットの送信時刻（Ｔ０１）を記憶し、一方の折返し点スレーブノード装置において折返し送信された返信折返し計測パケットを受信し、内部クロック（基準クロック）の計時に従い、返信折返し計測パケットの受信時刻（Ｔ０２）を記憶する。
また、マスタノード装置は、受信した返信折返し計測パケットを、他方の折返し点スレーブノード装置（スレーブＣ）の方向での送信先となるスレーブノード装置に対して送信するとともに、内部クロック（基準クロック）の計時に従い、返信折返し計測パケットの送信時刻（Ｔ０３）を記憶し、他方の折返し点スレーブノード装置において再折返し送信された再返信折返し計測パケットを受信し、内部クロック（基準クロック）の計時に従い、再返信折返し計測パケットの受信時刻（Ｔ０４）を記憶する。【００９２】
また、マスタノード装置は、折返し計測パケットの送信時刻（Ｔ０１）、返信折返し計測パケットの受信時刻（Ｔ０２）、返信折返し計測パケットの送信時刻（Ｔ０３）及び再返信折返し計測パケットの受信時刻（Ｔ０４）を示す折返し計測結果通知パケットを生成し、生成した折返し計測結果通知パケットを一方の折返し点スレーブノード装置（スレーブＢ）の方向での送信先となるスレーブノード装置に対して送信し、後述するように、一方の折返し点スレーブノード装置の方向のスレーブノード装置に、少なくとも折返し計測パケットの送信時刻（Ｔ０１）及び前記返信折返し計測パケットの受信時刻（Ｔ０２）を通知する。【００９３】
また、マスタノード装置は、折返し計測結果通知パケットを、他方の折返し点スレーブノード装置（スレーブＣ）の方向での送信先となるスレーブノード装置に対して送信し、後述するように、他方の折返し点スレーブノード装置の方向のスレーブノード装置に、少なくとも返信折返し計測パケットの送信時刻（Ｔ０３）及び再返信折返し計測パケットの受信時刻（Ｔ０４）を通知する。【００９４】
なお、時刻同期装置１００の送信データ生成部３は、折返し運転時は、折返し計測パケット生成部の例にもなり、順方向伝送路送信部８又は逆方向伝送路送信部１１は、折返し運転時は、折返し計測パケット送信部の例にもなり、順方向伝送路受信部６又は逆方向伝送路受信部９は、折返し運転時は、折返し計測パケット受信部の例にもなる。【００９５】
次に、スレーブの動作を説明する。
図２１は、折返し運転時のスレーブの処理フローを示す。
まず、スレーブは、パケットを受信する（Ｓ１８）。
このとき、パケットを受信したスレーブが折返し点スレーブノードでなければ、受信したパケットをリピータ経由でリピート送信する。
パケットを受信したノードが折返し点であれば、パケットを受信した方向とは逆方向に折返し送信をする。
また、このとき、それぞれの受信時刻、送信時刻は、それぞれ、クロック制御部５に保存される。
次に、スレーブでは、時刻同期処理制御部１が、受信したパケットの種別を判定する（Ｓ１９）。
パケット種別が折返し計測パケットであった場合は、時刻同期処理制御部１は、当該シーケンス番号の折返し計測パケットの最初の受信かどうかを判定する（Ｓ２０）。
最初の受信であった場合は、時刻同期処理制御部１は、順方向伝送路受信部６、または、逆方向伝送路受信部９で採取した受信時刻をクロック制御部５から取得し、折返し計測パケット受信時刻（図１８のＴ１１、Ｔ２１、Ｔ３１）として保存する（Ｓ２１）。
また、Ｓ２０で最初の受信ではなかった場合、すなわち、同じシーケンス番号の折返し計測パケットの２度目の受信であった場合、時刻同期処理制御部１は、順方向伝送路送信部８、または、逆方向伝送路送信部１１でのリピート送信時に採取した送信時刻を、クロック制御部５から取得し、折返し計測パケット送信時刻（図１８のＴ１２）として保存する（Ｓ２２）。
次に、スレーブでは、時刻同期処理制御部１が、自ノードが折返し点であるかどうかを判別する（Ｓ２３）。
自ノードが折り返し点であった場合は、時刻同期処理制御部１は、順方向伝送路送信部８、または、逆方向伝送路送信部１１での折り返し送信時に採取した送信時刻を、クロック制御部５から取得し、折返し計測パケット送信時刻（図１８のＴ２２、Ｔ３２）として保存する（Ｓ２４）。【００９６】
また、Ｓ１９において、受信パケットが折返し計測結果通知パケットであった場合、スレーブでは、時刻同期処理制御部１が、同じシーケンス番号の折返し計測結果通知パケットの最初の受信かどうかを判別する（Ｓ２５）。
最初の受信であった場合、時刻同期処理制御部１が、スレーブにおける時刻補正値を算出し（Ｓ２６）、算出した補正値を使用して時刻の調整を行う（Ｓ２７）。【００９７】
折返し運転の場合、スレーブにおける、送受信時刻の採取点は、スレーブが折り返し点にあたるか、そうではないか、また、順方向で見たときに、マスタの上流側に接続されているか、下流側に接続されているかによって異なる。
また、マスタのどの採取点を時刻補正値の計算に使用するかについても、マスタの上流に接続されているか、下流に接続されているかで異なる。
まず、スレーブ側の採取点について説明する。【００９８】
図１８のスレーブＡのように、スレーブが折り返し点ではない場合は、折返し計測パケットを、順方向と逆方向の１回ずつ、合計２回受信する。
この場合、１回目の受信時には、図２１のＳ２１で受信時刻を保存し、２回目の受信時には、Ｓ２２で、リピータを経由してリピート送信された送信時刻を保存する。これらの採取点は、それぞれ、図１８の例では、Ｔ１１、および、Ｔ１２にあたる。
折返し点以外のスレーブの時刻採取点は、図１８のスレーブＡのように、マスタの下流側に接続されている場合は、順方向の受信、すなわち、順方向伝送路受信部６で採取された受信時刻と、逆方向の送信、すなわち、逆方向伝送路送信部１１で採取された送信時刻との組み合わせとし、逆に、マスタの上流側に接続されている場合は、逆方向の受信、すなわち、逆方向伝送路受信部９で採取された受信時刻と、順方向の送信、すなわち、順方向伝送路送信部８で採取された送信時刻との組み合わせとする。
折り返し点以外のスレーブについては、これらの組み合わせは、それぞれ、逆の採取点の組み合わせで採取してもよいが、先に記述した点で採取した場合、時刻補正値の算出を行うスレーブ自体のリピート処理による影響が計算結果に含まれないという効果がある。
スレーブが折返し点であった場合は、自ノードでパケットを折り返すため、折返し計測パケットの受信は１回のみである。【００９９】
折り返し点のスレーブでは、図２１のＳ２１で受信時刻を保存し、続いてＳ２４で送信時刻を保存する。
採取点は、スレーブの下流側の折返し点の場合、図１８のスレーブＢにおけるＴ２１、Ｔ２２のように、順方向の受信時刻と逆方向の送信時刻となり、スレーブの上流側の折返し点の場合は、図１８のスレーブＣにおけるＴ３１、Ｔ３２のように、逆方向の受信時刻と順方向の送信時刻となる。
また、図２１のＳ２６においてスレーブの時刻補正値計算に使用する、マスタの採取点は、スレーブがマスタの下流側に接続されている場合は、順方向送信時刻（Ｔ０１）と、逆方向受信時刻（Ｔ０２）を採用し、逆に、スレーブがマスタの上流側に接続されている場合は、逆方向送信時刻（Ｔ０３）と、順方向受信時刻（Ｔ０４）を採用する。
図１８の例では、マスタの下流側に接続されているスレーブＡとスレーブＢでは、マスタの時刻採取点として、Ｔ０１、および、Ｔ０２を採用し、マスタの上流側の接続されているスレーブＣでは、Ｔ０３、および、Ｔ０４を採用する。【０１００】
そして、スレーブＡの内部クロックの補正値ΔＴ１は、
ΔＴ１＝｛（Ｔ０１＋Ｔ０２）−（Ｔ１１＋Ｔ１２）｝／２
となる。
また、スレーブＢの内部クロックの補正値ΔＴ２は、
ΔＴ２＝｛（Ｔ０１＋Ｔ０２）−（Ｔ２１＋Ｔ２２）｝／２
となる。
また、スレーブＣの内部クロックの補正値ΔＴ３は、
ΔＴ３＝｛（Ｔ０３＋Ｔ０４）−（Ｔ３１＋Ｔ３２）｝／２
となる。【０１０１】
スレーブがマスタの上流側に接続されているか、下流側に接続されているかを判別する方法はいくつか考えられるが、たとえば、スレーブ側で、最初に順方向でパケットを受信している場合は、下流側と判断し、最初に逆方向でパケットを受信した場合は、上流側と判断すればよい。
あるいは、マスタからパケットを送出する際に、逆方向に送信する場合に限り、どこかのフィールドのビットを立てるなどして区別しても良い。
あるいは、マスタから、計測結果通知パケットを送出する際に、送出する方向によって通知する、受信時刻および、送信時刻を入れ替えるようにしてもよい。
たとえば、計測結果通知パケットを図２２に示すような形式とし、マスタから順方向に送出する際には、折返し計測パケット送信時刻には、順方向送信時刻を、折返し計測パケット受信時刻には、逆方向受信時刻を格納して送出する。
そして、下流側に送出した計測結果通知パケットが折り返してマスタに戻ってきた際に折返し計測パケット送信時刻のフィールドを逆方向送信時刻に、折返し計測パケット受信時刻のフィールドを順方向受信時刻にそれぞれ置き換えてから、逆方向にパケットを送出するようにする。【０１０２】
このように、折返し運転時は、各スレーブノード装置は、折返し計測パケットを受信した場合に、内部クロックの計時に従い、折返し計測パケットの受信時刻を記憶する。
そして、自装置が折返し点スレーブノードでない場合に、各スレーブノード装置は、折返し計測パケットの送信方向での送信先となるノード装置に対して折返し計測パケットを送信し、折返し点スレーブノード装置で折返し送信された返信折返し計測パケットを受信し、受信した返信折返し計測パケットを折返し送信方向での送信先となるノード装置に対して送信し、内部クロックの計時に従い、返信折返し計測パケットの送信時刻を記憶する。
また、自装置が折返し点スレーブノードである場合に、各スレーブノード装置は、折返し計測パケットの受信元のノード装置に対して折返し計測パケットを折返し送信し、内部クロックの計時に従い、折返し送信した返信折返し計測パケットの送信時刻を記憶する。
また、各スレーブノードは、折返し計測結果通知パケットを受信した際に、受信した折返し計測結果通知パケットに示されている折返し計測パケットの送信時刻及び返信折返し計測パケットの受信時刻と、記憶している折返し計測パケットの受信時刻及び返信折返し計測パケットの送信時刻とを用いて、時刻補正値を算出し、算出した前記時刻補正値を用いて、内部クロックの時刻を補正する。【０１０３】
また、各スレーブノード装置は、一方の折り返し点スレーブノードで折返し送信された返信折返し計測パケットを受信した場合に、内部クロックの計時に従い、返信折返し計測パケットの受信時刻を記憶する。
そして、各スレーブノード装置は、自装置が他方の折返し点スレーブノード装置でない場合に、返信折返し計測パケットの送信方向での送信先となるノード装置に対して返信折返し計測パケットを送信し、他方の折返し点スレーブノードで再折返し送信された再返信折返し計測パケットを受信し、受信した再返信折返し計測パケットを再折返し送信方向での送信先となるノード装置に対して送信し、内部クロックの計時に従い、再返信折返し計測パケットの送信時刻を記憶する。
また、各スレーブノード装置は、自装置が他方の折返し点スレーブノード装置である場合に、返信折返し計測パケットの受信元のノード装置に対して返信折返し計測パケットを再折返し送信し、内部クロックの計時に従い、再折返し送信した再返信折返し計測パケットの送信時刻を記憶する。
また、各スレーブノードは、折返し計測結果通知パケットを受信した際に、受信した折返し計測結果通知パケットに示されている返信折返し計測パケットの送信時刻及び再返信折返し計測パケットの受信時刻と、記憶している返信折返し計測パケットの受信時刻及び再返信折返し計測パケットの送信時刻とを用いて、時刻補正値を算出し、算出した時刻補正値を用いて、内部クロックの時刻を補正する。【０１０４】
以上のように、逆方向と順方向の計測用パケットをリング内に１周ずつさせ、送受信時刻を採取するようにしているため、少ない手順で、同一経路の往復時間計測による時刻同期処理が行える。【０１０５】
また、新しいパケットの生成および送出はすべてマスタ側で行うようにしているため、スレーブ側の処理を単純にすることができ、また、スレーブ側の中継処理時間も短く、その揺らぎも小さくなり、補正時刻の算出に与える影響が小さくなることが期待できる。【０１０６】
また、各スレーブにおける時刻補正値の計算は、自ノードで採取した値とマスタで採取した値のみを使用するようにしているため、他のスレーブの時刻同期のサポート状況にかかわらず、独立して、時刻同期が行える。【０１０７】
さらに、リング型ネットワークの一部に不通が生じた場合に、折返し運転に対応した時刻同期方法に切り替えるようにしているので、折開始運転時にも時刻同期を行うことが出来る。【０１０８】
以上、本実施の形態では、以下の手段を備えた時刻同期装置について説明した。
（ａ）順方向伝送路に対する受信手段および送信手段、
（ｂ）逆方向伝送路に対する受信手段および送信手段、
（ｃ）内部クロック、
（ｄ）上記受信手段および送信手段におけるパケット受信、およびパケット送信のタイミングで、上記内部クロックに基づく時刻を採取し、保存する手段、
（ｅ）上記時刻情報を他のノードと交換し、時刻補正値を算出し、内部クロックの時刻調整を行う制御手段。【０１０９】
また、本実施の形態では、以下の手段を含む、マスタノード装置についても説明した。
（ａ）逆方向伝送路から逆方向計測パケットを送信する手段、
（ｂ）逆方向伝送路から、逆方向計測パケットを受信し、受信時刻を保存する手段、
（ｃ）順方向伝送路から、順方向計測パケットを送信し、送信時刻を保存する手段、
（ｆ）上記保存した受信時刻および送信時刻を通知用パケットに格納し送信する手段。【０１１０】
また、本実施の形態では、以下の手段を含む、スレーブノード装置についても説明した。
（ａ）順方向伝送路、または逆方向伝送路からパケットを受信し、パケット種別を判定する手段、（ｂ）パケット種別が逆方向計測パケットであった場合にパケットを次のノードへ送信し、送信時刻を保存する手段、
（ｃ）パケット種別が順方向計測パケットであった場合に、パケット受信時刻を保存する手段、
（ｄ）パケット種別が計測結果通知パケットであった場合に、計測結果通知パケットに格納されているマスタの時刻情報と、自ノードで計測した時刻情報から時刻補正を算出する手段、
（ｅ）上記算出した時刻補正値を使用して、自ノードのクロックの時刻調整を行う手段。【０１１１】
また、本実施の形態では、以下の手段を含む、マスタノード装置についても説明した。
（ａ）折返し計測パケットを順方向伝送路に送信し、送信時刻を保存する手段、
（ｂ）折返し計測パケットを逆方向伝送路から受信し、受信時刻を保存し、折返し計測パケットを逆方向伝送路に送信し、送信時刻を保存する手段、
（ｃ）折返し計測パケットを順方向伝送路から受信し、受信時刻を保存する手段、
（ｄ）上記４つの受信時刻、送信時刻を計測結果通知パケットに格納し、ブロードキャストで送信する手段。【０１１２】
また、本実施の形態では、以下の手段を含む、スレーブノード装置についても説明した。
（ａ）順方向伝送路、または逆方向伝送路からパケットを受信し、次のノードへ受信したパケットを送信するとともに、パケット種別を判定する手段、
（ｂ）パケット種別が折返し計測であった場合に最初の受信かを判定し、最初の受信であれば、受信時刻を保存し、そうでなければ、送信時刻を保存する手段、
（ｃ）当該スレーブが折返し点か判定し、そうであれば、送品時刻を保存する手段、
（ｄ）受信パケットが計測結果通知であった場合に、最初の受信かどうかを判定し、最初の受信であれば、時刻補正値を算出する手段、
（ｅ）算出した時刻補正値を使用して、自ノードのクロックの時刻調整を行う手段。【０１１３】
実施の形態２．
以上の実施の形態１では、マスタからスレーブに至る経路上の他のスレーブ、すなわち、中継ノードにおける中継処理の時間を含めた計測値を使用してスレーブの時刻補正値を計算するようにしたものであるが、次に、中継ノードにおける中継処理時間を除外した値を使用して時刻同期を行うようにした場合の実施の形態を示す。【０１１４】
この実施の形態では、スレーブは、逆方向計測パケットの受信時刻、送信時刻、順方向計測パケットの受信時刻、送信時刻の４つの採取点すべての時刻を保存し、１つ前のノードとの間で、１つ前のノード、および自ノードの中継処理時間を含まない４点の時刻測定値を使用して、時刻補正値を算出する。
このようにして順に時刻同期を行っていく。また、次のノードに通知する測定値は、自ノードの時刻補正値を使用して測定値に補正をかけた値を通知する。
図２４は、このような場合の、マスタ、スレーブ間のパケット交換手順の例を示した図である。【０１１５】
図２４において、マスタノードから第一の計測パケットである逆方向計測パケット及び第二の計測パケットである順方向計測パケットを送信し、逆方向計測パケット及び順方向計測パケットを巡回経路において巡回させる点は実施の形態１と同様である。
各スレーブノードは、内部クロックの計時に従い、逆方向計測パケットの受信時刻（Ｔ１１、Ｔ２１）、送信時刻（Ｔ１２、Ｔ２２）、順方向計測パケットの受信時刻（Ｔ１３、Ｔ２３）、送信時刻（Ｔ１４、Ｔ２４）という４つの時刻を記憶する。なお、逆方向計測パケット（第一の計測パケット）の受信時刻と順方向計測パケット（第二の計測パケット）の送信時刻とが対になり、逆方向計測パケットの送信時刻と順方向計測パケットの受信時刻とが対となる。
また、各スレーブノードは、補正後計測結果通知パケットを受信し、受信した補正後計測結果通知パケットに示される送信時刻と受信時刻の対と、記憶している送信時刻と受信時刻との対のうちのいずれかの対を用いて、時刻補正値を算出する。
図２４の例では、先行するスレーブノード（例えば、スレーブＡ）における補正後の逆方向計測パケットの受信時刻（Ｔ１１）と順方向計測パケットの送信時刻（Ｔ１４）との対が補正後計測結果通知パケットに示され、各スレーブノード（例えば、スレーブＢ）は、自ノードで記憶している逆方向計測パケットの送信時刻（Ｔ２２）と順方向計測パケットの受信時刻（Ｔ２３）との対と、補正後計測結果通知パケットに示されている受信時刻（Ｔ１１）と送信時刻（Ｔ１４）との対とを用いて、時刻補正値を算出し、算出した時刻補正値を、記憶している送信時刻と受信時刻との対のうち時刻補正値の算出に用いられなかった送信時刻と受信時刻との対（Ｔ２１とＴ２４）に用いて、補正後の送信時刻及び補正後の受信時刻を算出し、補正後の送信時刻及び補正後の受信時刻を示す補正後計測結果通知パケットを次のスレーブノードに送信する。【０１１６】
なお、計測パケットの送信方向、補正後計測結果通知パケットの送信方向は、図２４に示すものに限らず、図２５〜図２７に示すような送信方向でもよい。
図２５では、図２４の場合と同様に、マスタは第一の計測パケットとして逆方向計測パケットを送信し、第二の計測パケットとして順方向計測パケットを送信しているが、補正後計測結果通知パケットは、逆方向に送信している。
図２６では、マスタは第一の計測パケットとして順方向計測パケットを送信し、第二の計測パケットとして逆方向計測パケットを送信し、補正後計測結果通知パケットは、逆方向に送信している。
図２７では、マスタは第一の計測パケットとして順方向計測パケットを送信し、第二の計測パケットとして逆方向計測パケットを送信し、補正後計測結果通知パケットは、順方向に送信している。
なお、図２５〜図２７の例におけるマスタノード、スレーブノードの動作の詳細は後述する。【０１１７】
図２３は、本実施の形態に係るスレーブノード装置としての時刻同期装置１００の構成例を示す。
図２３に示す構成は、実施の形態１で示した図２の構成と同じであるが、以下の点で、実施の形態１と処理内容が異なる。【０１１８】
時刻同期処理制御部１は、内部クロック４の計時に従い、４つの時刻、すなわち、逆方向計測パケットの受信時刻、送信時刻、順方向計測パケットの受信時刻、送信時刻を記憶する。上述したように、逆方向計測パケットの受信時刻と順方向計測パケットの送信時刻が対となり、逆方向計測パケットの送信時刻と順方向計測パケットの受信時刻が対となる。
また、時刻同期処理制御部１は、補正後計測結果通知パケットに示される他のノード装置における送信時刻と受信時刻の対と、記憶している送信時刻と受信時刻との対のうちのいずれかの対を用いて、時刻補正値を算出し、また、算出した時刻補正値を、記憶している送信時刻と受信時刻との対のうち時刻補正値の算出に用いられなかった送信時刻と受信時刻との対に用いて、補正後の送信時刻及び補正後の受信時刻を算出する。
時刻同期処理制御部１は、時刻記憶部及び時刻補正値算出部の例である。【０１１９】
送信データ生成部３は、補正後計測結果通知パケットに示されている他のノード装置の送信時刻と受信時刻の対に代えて、時刻同期処理制御部１により算出された補正後の送信時刻と補正後の受信時刻との対を補正後計測結果通知パケットに格納して、新たな補正後計測結果通知パケットを生成する。
送信データ生成部３は、計測結果通知パケット更新部の例である。【０１２０】
順方向伝送路受信部６及び逆方向伝送路受信部９は、それぞれ、マスタノードから送信された第一の計測パケット又は第二の計測パケットを受信するとともに、補正後計測結果通知パケットを受信する場合がある。
順方向伝送路受信部６及び逆方向伝送路受信部９は、第一計測パケット受信部又は第二計測パケット受信部、計測結果通知パケット受信部の例である。【０１２１】
順方向伝送路送信部８及び逆方向伝送路送信部１１は、それぞれ、第一の計測パケット又は第二の計測パケットを送信する。
また、順方向伝送路送信部８及び逆方向伝送路送信部１１は、送信データ生成部３により生成された新たな補正後計測結果通知パケットを送信する場合がある。
順方向伝送路送信部８及び逆方向伝送路送信部１１は、第一計測パケット送信部又は第二計測パケット送信部、計測結果通知パケット送信部の例である。【０１２２】
他の要素は、図２に示したものと同様である。
また、マスタノードとして動作する時刻同期装置１００の各構成要素の役割は、図１と同様である。【０１２３】
次に、動作について説明する。
図２８は、図２４に示すパケット送信例の場合のマスタの処理フローを示す。
図２８にしたがって、マスタにおける処理手順を示す。
マスタにおける処理手順は実施の形態１に示した図８の場合とほとんど変わらない。【０１２４】
マスタは、まず逆方向計測パケットを送信する（Ｓ２８）。
逆方向計測パケットの形式は図９に示したものと同様である。
逆方向計測パケットを送信後、次に、マスタは、リングを１周してきた同じ逆方向計測パケットを受信する。このとき、受信時刻を採取し、逆方向計測パケット受信時刻として保持しておく（Ｓ２９）。
次に、マスタは、順方向計測パケットを送信し、送信時刻を採取する（Ｓ３０）。
順方向計測パケットの形式は、図９に示したものと同様である。
次に、マスタは、リングを１周してきた順方向計測パケットを受信する（Ｓ３１）。
次に、マスタは、補正後計測結果通知パケットを送信し、自ノードで測定した、逆方向計測パケット受信時刻、および、順方向計測パケット送信時刻をスレーブＡに通知する（Ｓ３２）。
補正後計測結果通知パケットの形式の一例を図２９に示す。
マスタから送信する補正後計測結果通知パケットはブロードキャストではなく、スレーブＡ宛に送信する。
次に、マスタは、スレーブＣから送信された補正後計測結果通知パケットを受信する（Ｓ３３）。
マスタにおける内部処理は、実施の形態１に示したものと原則として同様である。【０１２５】
次に、スレーブの処理手順について説明する。
図３０は、図２４のパケット送信例の場合のスレーブの処理フローである。【０１２６】
まず、スレーブは、パケットを受信する（Ｓ３４）。
このとき、ブロードキャストで送られてくる逆方向計測パケット、および、順方向計測パケットは、リピータを経由してリピート送信する。
このとき、受信時刻、および送信時刻が採取され、クロック制御部５に保存される。
次に、スレーブでは、時刻同期処理制御部１が、受信パケット種別の判定を行う（Ｓ３５）。
受信パケットが逆方向計測パケットであった場合は、時刻同期処理制御部１は、クロック制御部５からパケット受信時刻を取得し、逆方向受信時刻として保存する（Ｓ３６）。
続いて、時刻同期処理制御部１は、クロック制御部５からパケット送信時刻を取得し、逆方向送信時刻として保存する（Ｓ３７）。
一方、Ｓ３５において、受信パケットが順方向計測パケットであった場合は、時刻同期処理制御部１は、クロック制御部５からパケット受信時刻を取得し、順方向受信時刻として保存する（Ｓ３８）。
続いて、時刻同期処理制御部１は、クロック制御部５からパケット送信時刻を取得し、順方向送信時刻として保存する（Ｓ３９）。【０１２７】
また一方、Ｓ３５において、受信パケットが、補正後計測結果通知パケットであった場合は、時刻同期処理制御部１は、自ノードの時刻補正値の算出を行う。
スレーブにおける自ノードの時刻補正値算出には、受信した補正後計測結果通知パケットに含まれる補正後逆方向計測パケット受信時刻、補正後順方向計測パケット送信時刻と、自ノードで採取した、逆方向送信時刻、順方向受信時刻の４つの値を使用する。
補正後計測結果通知パケットに含まれる補正後逆方向計測パケット受信時刻をＴＰＡＲ、補正後順方向計測パケット送信時刻をＴＰＦＳ、自ノードで採取した逆方向送信時刻をＴＳＡＳ、順方向受信時刻をＴＳＦＲとしたとき、当該スレーブノードにおける時刻補正値ΔＴは、
ΔＴ＝｛（ＴＰＡＲ＋ＴＰＦＳ）−（ＴＳＡＳ＋ＴＳＦＲ）｝／２
として求める。【０１２８】
次に、時刻同期処理制御部１が、算出した時刻補正値を使用して測定値を補正して、送信データ生成部３が、補正後計測結果通知パケットに格納し、順方向伝送路送信部１１が、新たな補正後計測結果通知パケット送信する（Ｓ４１）。
時刻同期処理制御部１は、自ノードで採取した逆方向受信時刻にΔＴを加算して補正した値を、補正後逆方向計測パケット受信時刻として、また、自ノードで採取した順方向送信時刻にΔＴを加算して補正した値を、補正後順方向計測パケット送信時刻とし、送信データ生成部３が、算出した補正後逆方向計測パケット受信時刻及び補正後順方向計測パケット送信時刻のそれぞれを他のノードの補正後逆方向計測パケット受信時刻及び補正後順方向計測パケット送信時刻に代えて補正後計測結果通知パケットに格納し、順方向伝送路送信部１１が、順方向で自ノードの次のノード宛に新たな補正後計測結果通知パケット送信する。
次に、クロック制御部５が、時刻同期処理制御部１が算出したΔＴを使用して自ノードの内部クロック４の調整を行う（Ｓ４２）。【０１２９】
図２５の例では、マスタは第一の計測パケットとして逆方向計測パケットを送信し、第二の計測パケットとして順方向計測パケットを送信する。そして、マスタは、逆方向計測パケットの送信時刻（Ｔ０１）と順方向計測パケットの受信時刻（Ｔ０２）を記憶し、これら逆方向計測パケットの送信時刻（Ｔ０１）と順方向計測パケットの受信時刻（Ｔ０２）の対が示される補正後計測結果通知パケットを逆方向に送信する。
また、各スレーブノードでは、内部クロックの計時に従い、逆方向計測パケットの受信時刻（Ｔ１１、Ｔ２１）、送信時刻（Ｔ１２、Ｔ２２）、順方向計測パケットの受信時刻（Ｔ１３、Ｔ２３）、送信時刻（Ｔ１４、Ｔ２４）という４つの時刻を記憶する。なお、逆方向計測パケット（第一の計測パケット）の受信時刻と順方向計測パケット（第二の計測パケット）の送信時刻とが対になり、逆方向計測パケットの送信時刻と順方向計測パケットの受信時刻とが対となる。
マスタノードから補正後計測結果通知パケットを受信したスレーブノードＢは、補正後計測結果通知パケットに示される逆方向計測パケットの送信時刻（Ｔ０１）と順方向計測パケットの受信時刻（Ｔ０２）との対と、スレーブノードＢで記憶している逆方向計測パケットの受信時刻（Ｔ２１）と順方向計測パケットの送信時刻（Ｔ２４）との対とを用いて、時刻補正値を算出する。
スレーブノードＢでの時刻補正値ΔＴは、
ΔＴ＝｛（Ｔ０１＋Ｔ０２）−（Ｔ２１＋Ｔ２４）｝／２
として求める。
そして、算出した時刻補正値を、記憶している逆方向計測パケットの送信時刻（Ｔ２２）と順方向計測パケットの受信時刻（Ｔ２３）に用いて、補正後の逆方向計測パケットの送信時刻及び補正後の順方向計測パケットの受信時刻を算出し、補正後の逆方向計測パケットの送信時刻及び補正後の順方向計測パケットの受信時刻を示す補正後計測結果通知パケットを次のスレーブノードＡに送信する。【０１３０】
図２６の例では、マスタは第一の計測パケットとして順方向計測パケットを送信し、第二の計測パケットとして逆方向計測パケットを送信する。そして、マスタは、順方向計測パケットの受信時刻（Ｔ０１）と逆方向計測パケットの送信時刻（Ｔ０２）を記憶し、これら順方向計測パケットの受信時刻（Ｔ０１）と逆方向計測パケットの送信時刻（Ｔ０２）の対が示される補正後計測結果通知パケットを逆方向に送信する。
また、各スレーブノードでは、内部クロックの計時に従い、順方向計測パケットの受信時刻（Ｔ１１、Ｔ２１）、送信時刻（Ｔ１２、Ｔ２２）、逆方向計測パケットの受信時刻（Ｔ１３、Ｔ２３）、送信時刻（Ｔ１４、Ｔ２４）という４つの時刻を記憶する。なお、順方向計測パケット（第一の計測パケット）の受信時刻と逆方向計測パケット（第二の計測パケット）の送信時刻とが対になり、順方向計測パケットの送信時刻と逆方向計測パケットの受信時刻とが対となる。
マスタノードから補正後計測結果通知パケットを受信したスレーブノードＢは、補正後計測結果通知パケットに示される順方向計測パケットの受信時刻（Ｔ０１）と逆方向計測パケットの送信時刻（Ｔ０２）との対と、スレーブノードＢで記憶している順方向計測パケットの送信時刻（Ｔ２２）と逆方向計測パケットの受信時刻（Ｔ２３）との対とを用いて、時刻補正値を算出する。
スレーブノードＢでの時刻補正値ΔＴは、
ΔＴ＝｛（Ｔ０１＋Ｔ０２）−（Ｔ２２＋Ｔ２３）｝／２
として求める。
そして、算出した時刻補正値を、記憶している順方向計測パケットの受信時刻（Ｔ２１）と逆方向計測パケットの送信時刻（Ｔ２４）に用いて、補正後の順方向計測パケットの受信時刻及び補正後の逆方向計測パケットの送信時刻を算出し、補正後の順方向計測パケットの受信時刻及び補正後の逆方向計測パケットの送信時刻を示す補正後計測結果通知パケットを次のスレーブノードＡに送信する。【０１３１】
図２７の例では、マスタは第一の計測パケットとして順方向計測パケットを送信し、第二の計測パケットとして逆方向計測パケットを送信する。そして、マスタは、順方向計測パケットの送信時刻（Ｔ０１）と逆方向計測パケットの受信時刻（Ｔ０２）を記憶し、これら順方向計測パケットの送信時刻（Ｔ０１）と逆方向計測パケットの受信時刻（Ｔ０２）の対が示される補正後計測結果通知パケットを順方向に送信する。
また、各スレーブノードでは、内部クロックの計時に従い、順方向計測パケットの受信時刻（Ｔ１１、Ｔ２１）、送信時刻（Ｔ１２、Ｔ２２）、逆方向計測パケットの受信時刻（Ｔ１３、Ｔ２３）、送信時刻（Ｔ１４、Ｔ２４）という４つの時刻を記憶する。なお、順方向計測パケット（第一の計測パケット）の受信時刻と逆方向計測パケット（第二の計測パケット）の送信時刻とが対になり、順方向計測パケットの送信時刻と逆方向計測パケットの受信時刻とが対となる。
マスタノードから補正後計測結果通知パケットを受信したスレーブノードＡは、補正後計測結果通知パケットに示される順方向計測パケットの送信時刻（Ｔ０１）と逆方向計測パケットの受信時刻（Ｔ０２）との対と、スレーブノードＡで記憶している順方向計測パケットの受信時刻（Ｔ１１）と逆方向計測パケットの送信時刻（Ｔ１４）との対とを用いて、時刻補正値を算出する。
スレーブノードＢでの時刻補正値ΔＴは、
ΔＴ＝｛（Ｔ０１＋Ｔ０２）−（Ｔ１１＋Ｔ１４）｝／２
として求める。
そして、算出した時刻補正値を、記憶している順方向計測パケットの送信時刻（Ｔ１２）と逆方向計測パケットの受信時刻（Ｔ１３）に用いて、補正後の順方向計測パケットの送信時刻及び補正後の逆方向計測パケットの受信時刻を算出し、補正後の順方向計測パケットの送信時刻及び補正後の逆方向計測パケットの受信時刻を示す補正後計測結果通知パケットを次のスレーブノードＢに送信する。【０１３２】
以上のように、時刻補正値の算出に使用する測定値に各スレーブにおける中継処理時間を含まないようにして、マスタに近いノードから順に時刻補正値を算出していくようにしているため、マスタから当該スレーブまでの間の中継ノードにおける中継処理時間の揺らぎの影響を受けない時刻同期が実現できる。【０１３３】
また、スレーブの処理を統一でき、単純化できる。また、計測用のパケットにおいては、全スレーブがリピート送信を行うため、高速に周回させることが出来る。【０１３４】
以上、本実施の形態では、以下の手段を含む、スレーブノード装置について説明した。
（ａ）順方向伝送路、または逆方向伝送路からパケットを受信し、次のノードへ受信したパケットを送信するとともに、パケット種別を判定する手段、
（ｂ）パケット種別が逆方向計測であった場合、パケット受信時刻を逆方向受信時刻として保存し、パケット送信時刻を逆方向送信時刻として保存する手段、
（ｃ）パケット種別が順方向計測であった場合、パケット受信時刻を順方向受信時刻として保存し、パケット送信時刻を順方向送信時刻として保存する手段、
（ｄ）パケット種別が補正後計測結果通知パケットであった場合に、時刻補正値を算出する手段、（ｅ）算出した時刻補正値を使用して、自ノードで採取した受信時刻、および送信時刻の値を補正し、それらの値を次のノードに補正後計測結果通知パケットとして送信する手段、
（ｆ）算出した時刻補正値を使用して、自ノードのクロックの時刻調整を行う手段。【０１３５】
最後に実施の形態１、２に示した時刻同期装置１００のハードウェア構成例について説明する。
図３１は、実施の形態１、２に示す時刻同期装置１００のハードウェア資源の一例を示す図である。なお、図３１の構成は、あくまでも時刻同期装置１００のハードウェア構成の一例を示すものであり、時刻同期装置１００のハードウェア構成は図３１に記載の構成に限らず、他の構成であってもよい。【０１３６】
図３１において、時刻同期装置１００は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介して、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。更に、ＣＰＵ９１１は、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７と接続していてもよい。また、磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
通信ボード９１５、キーボード９０２、スキャナ装置９０７、ＦＤＤ９０４などは、入力部、入力装置の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力部、出力装置の一例である。【０１３７】
通信ボード９１５は、図３に示すように、リング型ネットワークに接続されている。また、通信ボード９１５は、例えば、ＬＡＮ（ローカルエリアネットワーク）、インターネット、ＷＡＮ（ワイドエリアネットワーク）などに接続可能であっても構わない。
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。【０１３８】
上記プログラム群９２３には、実施の形態１、２の説明において「〜部」、「〜手段」として説明している機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、実施の形態１、２の説明において、「〜の判断」、「〜の計算」、「〜の算出」、「〜の比較」、「〜の採取」、「〜の更新」、「〜の設定」、「〜の登録」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリになどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態１、２で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。【０１３９】
また、実施の形態１、２の説明において「〜部」、「〜手段」として説明しているものは、「〜回路」、「〜装置」、「〜機器」、であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」、「〜手段」として説明しているものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、実施の形態１、２の「〜部」、「〜手段」としてコンピュータを機能させるものである。あるいは、実施の形態１、２の「〜部」、「〜手段」の手順や方法をコンピュータに実行させるものである。【０１４０】
このように、実施の形態１、２に示す時刻同期装置１００は、処理装置たるＣＰＵ、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」、「〜手段」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
【図面の簡単な説明】
【０１４１】
【図１】実施の形態１に係るマスタノードとしての時刻同期装置の構成例を示す図。
【図２】実施の形態１に係るスレーブノードとしての時刻同期装置の構成例を示す図。
【図３】実施の形態１に係るリング型ネットワークの構成例を示す図。
【図４】実施の形態１に係るノード間のパケット転送例を示す図。
【図５】実施の形態１に係るノード間のパケット転送例を示す図。
【図６】実施の形態１に係るノード間のパケット転送例を示す図。
【図７】実施の形態１に係るノード間のパケット転送例を示す図。
【図８】実施の形態１に係るマスタノードの動作例を示すフローチャート図。
【図９】実施の形態１に係る計測パケットの例を示す図。
【図１０】実施の形態１に係る計測結果通知パケットの例を示す図。
【図１１】実施の形態１に係るスレーブノードの動作例を示すフローチャート図。
【図１２】実施の形態１に係るスレーブノードの動作例を示すフローチャート図。
【図１３】実施の形態１に係る計測結果通知パケットの例を示す図。
【図１４】実施の形態１に係る逆方向計測パケットの例を示す図。
【図１５】実施の形態１に係る順方向計測パケットの例を示す図。
【図１６】実施の形態１に係る計測結果通知パケットの例を示す図。
【図１７】実施の形態１に係るリング型ネットワークの一部の不通による折返し運転の例を示す図。
【図１８】実施の形態１に係る折返し運転時のノード間のパケット転送例を示す図。
【図１９】実施の形態１に係る折返し運転時のマスタノードの動作例を示すフローチャート図。
【図２０】実施の形態１に係る折返し運転時の計測結果通知パケットの例を示す図。
【図２１】実施の形態１に係る折返し運転時のスレーブノードの動作例を示すフローチャート図。
【図２２】実施の形態１に係る折返し運転時の計測結果通知パケットの例を示す図。
【図２３】実施の形態２に係るスレーブノードとしての時刻同期装置の構成例を示す図。
【図２４】実施の形態２に係るノード間のパケット転送例を示す図。
【図２５】実施の形態２に係るノード間のパケット転送例を示す図。
【図２６】実施の形態２に係るノード間のパケット転送例を示す図。
【図２７】実施の形態２に係るノード間のパケット転送例を示す図。
【図２８】実施の形態２に係るマスタノードの動作例を示すフローチャート図。
【図２９】実施の形態２に係る補正後計測結果通知パケットの例を示す図。
【図３０】実施の形態２に係るスレーブノードの動作例を示すフローチャート図。
【図３１】実施の形態１、２に係る時刻同期装置のハードウェア構成例を示す図。
【符号の説明】
【０１４２】
１  時刻同期処理制御部、２  受信データ処理部、３  送信データ生成部、４  内部クロック、５  クロック制御部、６  順方向伝送路受信部、７  順方向伝送路リピータ、８  順方向伝送路送信部、９  逆方向伝送路受信部、１０  逆方向伝送路リピータ、１１  逆方向伝送路送信部、１００  時刻同期装置。
【図１】
2008129594.tif 000003
【図２】
2008129594.tif 000004
【図３】
2008129594.tif 000005
【図４】
2008129594.tif 000006
【図５】
2008129594.tif 000007
【図６】
2008129594.tif 000008
【図７】
2008129594.tif 000009
【図８】
2008129594.tif 000010
【図９】
2008129594.tif 000011
【図１０】
2008129594.tif 000012
【図１１】
2008129594.tif 000013
【図１２】
2008129594.tif 000014
【図１３】
2008129594.tif 000015
【図１４】
2008129594.tif 000016
【図１５】
2008129594.tif 000017
【図１６】
2008129594.tif 000018
【図１７】
2008129594.tif 000019
【図１８】
2008129594.tif 000020
【図１９】
2008129594.tif 000021
【図２０】
2008129594.tif 000022
【図２１】
2008129594.tif 000023
【図２２】
2008129594.tif 000024
【図２３】
2008129594.tif 000025
【図２４】
2008129594.tif 000026
【図２５】
2008129594.tif 000027
【図２６】
2008129594.tif 000028
【図２７】
2008129594.tif 000029
【図２８】
2008129594.tif 000030
【図２９】
2008129594.tif 000031
【図３０】
2008129594.tif 000032
【図３１】
2008129594.tif 000033
【国際調査報告】
2008129594.tif 000034
2008129594.tif 000035