JP2009065579A - Time synchronizing system, time synchronizing method, node, and program - Google Patents

Time synchronizing system, time synchronizing method, node, and program Download PDF

Info

Publication number
JP2009065579A
JP2009065579A JP2007233581A JP2007233581A JP2009065579A JP 2009065579 A JP2009065579 A JP 2009065579A JP 2007233581 A JP2007233581 A JP 2007233581A JP 2007233581 A JP2007233581 A JP 2007233581A JP 2009065579 A JP2009065579 A JP 2009065579A
Authority
JP
Japan
Prior art keywords
node
time
slave
master
route
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007233581A
Other languages
Japanese (ja)
Inventor
Hideaki Yoshimi
英朗 吉見
Zhenlong Cui
珍龍 崔
Kazuo Takagi
和男 高木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2007233581A priority Critical patent/JP2009065579A/en
Publication of JP2009065579A publication Critical patent/JP2009065579A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays

Abstract

<P>PROBLEM TO BE SOLVED: To provide a technology capable of accurately achieving time synchronism between a master and a slave, without using a boundary clock, even in such a network that reciprocative transmission routes partially include asymmetric routes. <P>SOLUTION: A system of the present invention includes: a route investigating section for investigating routing to a node that becomes a communication partner; a route comparing section for investigating a state of matching reciprocative routing; a delay measuring section for measuring a one-side delay time to the node that becomes the communication partner; and a time synchronizing section for correcting time offset between a master and a slave, wherein the slave synchronizes the time with the master in such a way as matching reciprocative routing. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、ネットワークを介して複数の装置の時刻を同期させるための技術に関し、特に、ネットワーク内におけるマスタノードとスレーブノードとの間の時刻オフセットを補正するためのシステムおよび方法に関するものである。   The present invention relates to a technique for synchronizing the times of a plurality of devices via a network, and more particularly to a system and method for correcting a time offset between a master node and a slave node in a network.

通信システムや制御システムが複雑化し、多数のノードが分散配置されるようになった現在、ノード間の時刻を同期させることが重要になっている。   Now that communication systems and control systems have become complex and a large number of nodes have been distributed, it is important to synchronize the time between the nodes.

たとえば、工業オートメーションのシステムでは、センサやモーションコントローラの時刻同期を維持することによって、より高度な処理を実行できるようになる。   For example, in industrial automation systems, more sophisticated processing can be performed by maintaining time synchronization of sensors and motion controllers.

ここで問題となるのは、温度変化や経年変化などの環境変化によって、個々の装置の時刻にズレが生じるという点である。このため、正確な時刻同期を維持するためには何らかの補正メカニズムが必要となる。   The problem here is that the time of each device is shifted due to environmental changes such as temperature changes and secular changes. For this reason, some correction mechanism is required to maintain accurate time synchronization.

IEEE1588では、ネットワーク上にある各装置の時刻をマイクロ秒未満の精度で同期する方法が規定されている。   IEEE 1588 defines a method for synchronizing the time of each device on the network with an accuracy of less than microseconds.

このIEEE1588で規定されている技術は、ネットワーク上にあるマスタとスレーブとの間でタイムスタンプ情報のやりとりを行い、各スレーブ・クロックは、マスタ・クロックのタイムスタンプやネットワーク伝播遅延に関する情報を入手し、時刻同期アルゴリズムによってマスタ・クロックとの差分を求め、自身の時計のズレを補正する。このようにして、スレーブ・クロックとマスタ・クロックとの時刻の同期を取ることで、トリガやイベント、タイムスタンプを全ての装置上で一致させることができる。   The technology specified in IEEE 1588 exchanges time stamp information between a master and a slave on the network, and each slave clock obtains information on the master clock time stamp and network propagation delay. Then, the difference from the master clock is obtained by the time synchronization algorithm, and the deviation of the own clock is corrected. In this way, by synchronizing the time of the slave clock and the master clock, the trigger, event, and time stamp can be matched on all devices.

以下では、図1を用いて、時刻同期アルゴリズムの詳細内容を説明する。
〈ステップ1〉
まず、マスタ10がスレーブ11に対して定期的にSyncメッセージを送信する。
Hereinafter, the detailed contents of the time synchronization algorithm will be described with reference to FIG.
<Step 1>
First, the master 10 periodically transmits a Sync message to the slave 11.

このSyncメッセージの送出がトリガとなって、マスタ10は自身のローカル・システム・クロックのタイムスタンプ(Tm(0))を自装置に記録する。   The master 10 records the time stamp (Tm (0)) of its own local system clock in its own device, triggered by the transmission of this Sync message.

Syncメッセージがスレーブ11に到着すると、それがトリガとなってスレーブ11は自身のローカル・システム・クロックのタイムスタンプ(Ts(0))を自装置に記録する。
〈ステップ2〉
次に、マスタ10がスレーブ11に対してFollow_upメッセージを送信する。このメッセージの中には、先にSyncメッセージを送出したときに記録したマスタ10のローカル・システム・クロックのタイムスタンプ(Tm(0))が含まれている。
When the Sync message arrives at the slave 11, it becomes a trigger, and the slave 11 records the time stamp (Ts (0)) of its own local system clock in its own device.
<Step 2>
Next, the master 10 transmits a Follow_up message to the slave 11. This message includes the time stamp (Tm (0)) of the local system clock of the master 10 that was recorded when the Sync message was transmitted first.

スレーブ11は、自身が記録したローカル・システム・クロックのタイムスタンプ(Ts(0))と、送信されて来たFollow_upメッセージに含まれているマスタ10のローカル・システム・クロックのタイムスタンプ(Tm(0))とのタイムスタンプをもとに、以下のようにして、マスタ・クロックとスレーブ・クロックの差分を求める。
Dms=Ts(0)-Tm(0)=Delay-Offset (式1)
ここで、Delayはネットワークの伝播遅延であり、Offsetはマスタ・クロック10に対するスレーブ11の時刻オフセット(進み)である。
〈ステップ3〉
次に、スレーブ11がマスタ10に対して「Delay Request (Delay_Req)」メッセージを送信する。
The slave 11 records the local system clock time stamp (Ts (0)) recorded by itself and the local system clock time stamp (Tm (0)) of the master 10 included in the transmitted Follow_up message. 0)), the difference between the master clock and the slave clock is obtained as follows.
Dms = Ts (0) -Tm (0) = Delay-Offset (Formula 1)
Here, Delay is a propagation delay of the network, and Offset is a time offset (advance) of the slave 11 with respect to the master clock 10.
<Step 3>
Next, the slave 11 transmits a “Delay Request (Delay_Req)” message to the master 10.

このDelay_Reqメッセージの送出がトリガとなって、スレーブ11は自身のローカル・システム時間のタイムスタンプ(Ts(1))を記録する。   The transmission of the Delay_Req message triggers the slave 11 to record its own local system time stamp (Ts (1)).

Delay_Reqメッセージがマスタ10に到着すると、それがトリガとなってマスタ10は自身のローカル・システム時間のタイムスタンプ(Tm(1))を記録する。
〈ステップ4〉
マスタ10がスレーブ11に対して「Delay Response (Delay_Resp)」メッセージを返信する。このメッセージの中には、先にDelay_Reqメッセージを受信した時のマスタ10のタイムスタンプ(Tm(1))が含まれている。
When the Delay_Req message arrives at the master 10, it is triggered to record the time stamp (Tm (1)) of its own local system time.
<Step 4>
The master 10 returns a “Delay Response (Delay_Resp)” message to the slave 11. This message includes the time stamp (Tm (1)) of the master 10 when the Delay_Req message is received first.

スレーブ11は、自身が記録したローカル・システム・クロックのタイムスタンプ(Ts(1))と、送信されて来たDelay_Reqメッセージに含まれているマスタ10のローカル・システム・クロックのタイムスタンプ(Tm(1))とのタイムスタンプをもとに、マスタ・クロックとスレーブ・クロックとの差分を求める。
Dsm=Tm(1)-Ts(1)=Delay+Offset (式2)
以上のようにして得られたDsmとDmsとから、時刻オフセットを求めることができる。
(Dsm-Dms)/2=Offset (式3)
このように、4つの手順を踏むことで、スレーブ11はマスタ10との時刻オフセットを求めるとともに、このオフセットの情報を元に時刻ズレを補正することにより、マスタ10との時刻同期を行うことが可能である。
IEEE1588
The slave 11 records the local system clock time stamp (Ts (1)) recorded by itself and the local system clock time stamp (Tm (1)) of the master 10 included in the transmitted Delay_Req message. The difference between the master clock and the slave clock is obtained based on the time stamp of 1)).
Dsm = Tm (1) -Ts (1) = Delay + Offset (Formula 2)
The time offset can be obtained from Dsm and Dms obtained as described above.
(Dsm-Dms) / 2 = Offset (Formula 3)
In this way, by following the four steps, the slave 11 obtains a time offset from the master 10 and corrects the time deviation based on the offset information, thereby performing time synchronization with the master 10. Is possible.
IEEE1588

上記説明では、IEEE1588のスレーブが物理リンクでマスタに直接結ばれている場合を例にして説明した。しかしながら、実際には、マスタとスレーブとの間にルータやスイッチなどの装置が存在し、これらの装置によってマスタとスレーブとの間の遅延時間が変化してしまうので、ルータやスイッチなどの装置による遅延を考慮しないと、時刻同期精度が劣化する恐れがある。IEEE1588では、このようにルータやスイッチが介在するような場合でも、時刻同期を正確に行う方法として、バウンダリークロック(Boundary Clock)と呼ばれる機能を定義している。このバウンダリークロック機能をルータやスイッチに組み込むことにより、ルータやスイッチの転送処理による遅延時間のバラつきや変動を吸収することができる。以下において、その動作を説明する。   In the above description, the case where the IEEE 1588 slave is directly connected to the master via a physical link has been described as an example. However, in reality, there are devices such as routers and switches between the master and slave, and these devices change the delay time between the master and slave. If the delay is not taken into account, the time synchronization accuracy may be deteriorated. IEEE 1588 defines a function called a boundary clock as a method for accurately performing time synchronization even when a router or a switch is interposed in this way. By incorporating this boundary clock function into a router or switch, it is possible to absorb variations and fluctuations in delay time due to transfer processing of the router or switch. The operation will be described below.

図2では、スイッチ21にバウンダリークロック22、スイッチ23にバウンダリークロック24を組み込んでいる。   In FIG. 2, a boundary clock 22 is incorporated in the switch 21 and a boundary clock 24 is incorporated in the switch 23.

このような構成の場合、バウンダリークロック22は、マスタ20に対するスレーブとして振る舞い、マスタ20と時刻同期を行う。   In the case of such a configuration, the boundary clock 22 behaves as a slave to the master 20 and performs time synchronization with the master 20.

次に、バウンダリークロック22は、バウンダリークロック24のマスタとして振る舞い、バウンダリークロック24と時刻同期を行う。   Next, the boundary clock 22 behaves as a master of the boundary clock 24 and performs time synchronization with the boundary clock 24.

このとき、バウンダリークロック24は、バウンダリークロック22に対するスレーブとして動作する。   At this time, the boundary clock 24 operates as a slave to the boundary clock 22.

そして、バウンダリークロック24は、スレーブ25に対するマスタとして振る舞い、スレーブ25の時刻同期を行う。   The boundary clock 24 behaves as a master for the slave 25 and performs time synchronization of the slave 25.

このように、マスタ20とスレーブ25とが直接接続されていない場合でも、それらの間に介在する装置に設けられているバウンダリークロックが時刻同期を中継していくことにより、スイッチやルータの転送処理による遅延変動の影響を受けることなく、正確な時刻同期を行うことができる。   In this way, even when the master 20 and the slave 25 are not directly connected, the boundary clock provided in the device interposed between them relays the time synchronization, thereby transferring the switch or router. Accurate time synchronization can be performed without being affected by delay variation due to processing.

しかしながら、バウンダリークロックは非常に特殊な機能であり、現在市販されているようなルータやスイッチには組み込まれていない。   However, the boundary clock is a very special function and is not incorporated in routers and switches that are currently on the market.

そのため、上述の方法で時刻同期を行うには、スイッチやルータの設計を変更する必要があり、装置価格が上昇してしまう。   For this reason, in order to perform time synchronization by the above-described method, it is necessary to change the design of the switch and the router, which increases the device price.

また、バウンダリークロックを中継させて時刻同期を行う場合の注意点として、中継するバウンダリークロックの数に比例して時刻同期誤差が蓄積してしまうことが挙げられる。これは、バウンダリークロックの発振器の安定精度にもよるが、中継するバウンダリークロック数が増えれば増えるほど、元々のマスタ20の時刻とズレが生じてくるので、バウンダリークロックを介してスレーブ25に伝達される時刻には大きな誤差が出てくる。   In addition, as a point of caution when performing time synchronization by relaying boundary clocks, it can be mentioned that time synchronization errors accumulate in proportion to the number of boundary clocks to be relayed. This depends on the stability accuracy of the oscillator of the boundary clock. However, as the number of boundary clocks to be relayed increases, the time difference from the original master 20 occurs, so that the slave 25 is connected via the boundary clock. There is a big error in the time transmitted to.

したがって、これらの問題を抱えているバウンダリークロックを用いることなく、離れたマスタとスレーブとの間の時刻を同期できる方法が切望されている。   Therefore, a method that can synchronize the time between a distant master and a slave without using a boundary clock having these problems is desired.

ただし、上記バウンダリークロックを用いることなく、離れたノード間の時刻同期をネットワークを介して実現するには、同期精度の劣化要因を完全に除去する必要がある。同期精度を劣化させる要因として、ネットワークのルーティング経路の非対称性による同期のズレが挙げられる。   However, in order to realize time synchronization between distant nodes via the network without using the boundary clock, it is necessary to completely remove the cause of deterioration in synchronization accuracy. As a factor that degrades the synchronization accuracy, there is a synchronization shift due to asymmetry of the routing route of the network.

IEEE1588では、前述したように、ネットワーク内の遅延(Delay)がマスタとスレーブとの間で対称となっていることを前提としているが、ルーティング経路によっては遅延時間が非対称となるケースが存在する。   In IEEE 1588, as described above, it is assumed that the delay in the network is symmetric between the master and the slave, but there is a case where the delay time is asymmetric depending on the routing path.

たとえば、図3のようなネットワークを考えた場合、マスタ30からスレーブ31に向けて送信されたパケットが通る経路32と、スレーブ31からマスタ30に向けて送信されたパケットが通る経路33は異なっている。   For example, when considering a network as shown in FIG. 3, a path 32 through which a packet transmitted from the master 30 toward the slave 31 passes is different from a path 33 through which a packet transmitted from the slave 31 toward the master 30 passes. Yes.

このように、ルーティング経路の非対称性により、ネットワークの伝播遅延が非対称となるケースが存在する。   Thus, there is a case where the propagation delay of the network is asymmetric due to the asymmetry of the routing path.

この場合、IEEE1588では時刻同期精度が劣化してしまう。以下では、その精度劣化の影響について説明する。   In this case, the time synchronization accuracy deteriorates in IEEE 1588. Below, the influence of the accuracy deterioration is demonstrated.

図4のように、マスタ40からスレーブ41への伝送遅延をPropagate1、スレーブ41からマスタ40への伝送遅延をPropagate2とすると、上記の式1、式2は以下のように表せる。
Dms=Ts(i)-Tm(i)=Propagate1-Offset (式4)
Dsm=Tm(j)-Ts(j)=Propagate2+Offset (式5)
以上のようにして得られたDsmとDmsとから、時刻オフセットを求めようとすると以下のようになる。
(Dsm-Dms)/2=Offset+(Propagate2-Propagate1)/2 (式6)
上式から分かるように、時刻オフセットを求めようとしても、(Propagate2-Propagate1)/2だけの誤差が生じてしまうので、正確な時刻同期は不可能である。
As shown in FIG. 4, when transmission delay from the master 40 to the slave 41 is Propagate 1 and transmission delay from the slave 41 to the master 40 is Propagate 2, the above equations 1 and 2 can be expressed as follows.
Dms = Ts (i) -Tm (i) = Propagate1-Offset (Formula 4)
Dsm = Tm (j) -Ts (j) = Propagate2 + Offset (Formula 5)
From the Dsm and Dms obtained as described above, the time offset is obtained as follows.
(Dsm-Dms) / 2 = Offset + (Propagate2-Propagate1) / 2 (Formula 6)
As can be seen from the above equation, an error of only (Propagate2-Propagate1) / 2 occurs even if the time offset is obtained, so accurate time synchronization is impossible.

そこで、本発明では、ネットワークのルーティング経路の非対称性による同期のズレを補正して、バウンダリークロックを用いることなく、離れたマスタとスレーブとの間の時刻を同期することを目的とする。   Therefore, an object of the present invention is to correct a synchronization shift caused by asymmetry of a routing route of a network and synchronize the time between a remote master and a slave without using a boundary clock.

更に、ネットワークのルーティング経路の非対称性による同期のズレを補正しても、データリンク層や物理層が非対称であると、やはり時刻同期誤差が発生する。即ち、ネットワーク層、データリンク層、および物理層の3つのレイヤにおける伝送経路のうち、1つでも経路が非対称となっている場合には時刻同期誤差が発生する。   Further, even if the synchronization deviation due to the asymmetry of the network routing path is corrected, if the data link layer or the physical layer is asymmetric, a time synchronization error still occurs. That is, a time synchronization error occurs when even one of the transmission paths in the three layers of the network layer, the data link layer, and the physical layer is asymmetric.

そこで、本発明はこのような問題を解決するためになされたものであり、その目的とするところは、非対称な経路が一部に含まれているようなネットワークでも、バウンダリークロックを用いることなく、マスタとスレーブとの間の時刻同期を正確に実現できる技術を提供することにある。   Therefore, the present invention has been made to solve such a problem, and the object of the present invention is to use a boundary clock without using a boundary clock even in a network in which an asymmetric route is included in part. An object of the present invention is to provide a technology capable of accurately realizing time synchronization between a master and a slave.

上記課題を解決するための本発明は、時刻同期システムであって、マスタノードとスレーブノードとの間の往復のルーティング経路を調査する経路調査手段と、前記調査の結果、往復のルーティング経路が対称であるマスタノードとスレーブノードとの間の時刻オフセットを補正して互いの時刻を同期させる時刻同期手段とを備えていることを特徴とする。   The present invention for solving the above-mentioned problems is a time synchronization system, in which a route investigation means for examining a round-trip routing route between a master node and a slave node, and as a result of the investigation, the round-trip routing route is symmetrical And a time synchronization means for correcting the time offset between the master node and the slave node to synchronize each other's time.

上記課題を解決するための本発明は、時刻同期方法であって、マスタノードとスレーブノードとの間の往復のルーティング経路を調査する経路調査ステップと、前記調査の結果、往復のルーティング経路が対称である場合、マスタノードの時刻にスレーブノードの時刻を合わせるように補正する時刻同期ステップとを有することを特徴とする。   The present invention for solving the above-mentioned problem is a time synchronization method, in which a route check step for checking a round-trip routing route between a master node and a slave node, and as a result of the check, a round-trip routing route is symmetrical And a time synchronization step for correcting the time of the slave node to match the time of the master node.

上記課題を解決するための本発明は、時刻を同期するプログラムであって、前記プログラムは前記ノードに、マスタノードと自ノードとの間の往復のルーティング経路を調査する経路調査処理と、前記調査の結果、往復のルーティング経路が対称である場合、マスタノードの時刻に自ノードの時刻を合わせるように補正する時刻同期処理とを実行させることを特徴とする。   The present invention for solving the above-mentioned problem is a program for synchronizing time, and the program investigates the node into a route investigation process for examining a round-trip routing route between the master node and the own node, and the investigation. As a result, when the round-trip routing path is symmetric, a time synchronization process for correcting the time of the own node to the time of the master node is executed.

上記課題を解決するための本発明は、時刻を同期させるノードであって、マスタノードとの間の往復のルーティング経路を調査する経路調査手段と、前記調査の結果、往復のルーティング経路が対称であるマスタノードとの間の時刻オフセットを補正して互いの時刻を同期させる時刻同期手段とを備えていることを特徴とする。   The present invention for solving the above-mentioned problems is a node for synchronizing time, route investigation means for investigating a round-trip routing route with a master node, and as a result of the investigation, the round-trip routing route is symmetrical. Time synchronization means for correcting a time offset with a certain master node and synchronizing each other's time is provided.

本発明によると、スレーブは、ルーティング経路が往復で一致するマスタと時刻同期を図るとともに、他のノードとの間の片方向遅延時間の対称性を調査することにより、自身に残留している同期誤差量を推定することができる。そして、これによってネットワークの伝播経路が非対称の場合でも時刻同期を正確に実現できる。   According to the present invention, a slave synchronizes with a master whose routing path is reciprocally matched, and at the same time, it investigates the symmetry of the one-way delay time with other nodes, thereby remaining synchronization with itself. The amount of error can be estimated. As a result, time synchronization can be accurately realized even when the propagation path of the network is asymmetric.

これは、本発明の時刻同期システムが、通信相手となるノードまでのルーティング経路を調査する経路調査部と、往復のルーティング経路の一致状態を調査する経路比較部と、通信相手となるノードまでの片方向遅延時間を測定する遅延測定部と、マスタ−スレーブ間の時刻オフセットを補正する時刻同期部とを有し、スレーブは往復のルーティング経路が一致するようなマスタと時刻同期を図るからである。   This is because the time synchronization system of the present invention investigates the routing path to the routing path to the communication partner node, the path comparison section to check the matching state of the round-trip routing path, and the communication partner to the node. This is because it has a delay measurement unit that measures a one-way delay time and a time synchronization unit that corrects a time offset between the master and slave, and the slave synchronizes with the master whose round-trip routing paths match. .

更に、スレーブは他のノードとの間で測定された片方向遅延時間の対称性を確認することにより、スレーブに残留している時刻同期誤差量を推定できるからである。   Furthermore, the slave can estimate the amount of time synchronization error remaining in the slave by confirming the symmetry of the one-way delay time measured with another node.

これにより、ネットワーク層(IPなど)のルーティング経路が非対称となっている場合だけでなく、データリンク層(Ethernetなど)や物理層の伝播経路が非対称となっている場合でも、その同期誤差を検出するとともに補正することが可能である。   This enables detection of synchronization errors not only when the routing path of the network layer (IP etc.) is asymmetric but also when the propagation path of the data link layer (Ethernet etc.) or physical layer is asymmetric. And can be corrected.

本発明の特徴と実施形態を説明するために、以下において、図面を参照して具体的な実施例を述べるものとする。しかしながら、これらの図面および説明は、本発明の典型的な実施形態のみを示しており、その範囲を限定するものではないことを理解されたい。   In order to describe the features and embodiments of the present invention, specific examples will be described below with reference to the drawings. However, it should be understood that these drawings and description show only typical embodiments of the invention and do not limit the scope thereof.

本発明を実施するための第1の実施の形態について、図面を参照して詳細に説明する。   A first embodiment for carrying out the present invention will be described in detail with reference to the drawings.

<構成>
図5は、本発明の時刻同期システムの構成図である。
図5を参照すると、本発明の第1の実施の形態は、マスタ500、マスタ520と、スレーブ510、スレーブ530、スレーブ540、スレーブ550と、ネットワーク560とを含む。
<Configuration>
FIG. 5 is a block diagram of the time synchronization system of the present invention.
Referring to FIG. 5, the first embodiment of the present invention includes a master 500, a master 520, a slave 510, a slave 530, a slave 540, a slave 550, and a network 560.

マスタ500は、パケット送受信部501と、経路調査部502と、経路比較部503と、遅延測定部504と、時刻同期部505とを含んでいる。尚、マスタ500には他のマスタ、本実施の形態ではマスタ520との間のオフセットがないことを前提とする。   The master 500 includes a packet transmission / reception unit 501, a route investigation unit 502, a route comparison unit 503, a delay measurement unit 504, and a time synchronization unit 505. It is assumed that master 500 has no offset with another master, which is master 520 in this embodiment.

同じく、スレーブ510は、パケット送受信部511と、経路調査部512と、経路比較部513と、遅延測定部514と、時刻同期部515とを含んでいる。   Similarly, the slave 510 includes a packet transmission / reception unit 511, a route inspection unit 512, a route comparison unit 513, a delay measurement unit 514, and a time synchronization unit 515.

マスタ520は、上述のマスタ500と同じ構成であり、同様にスレーブ530、スレーブ540、スレーブ550は上述のスレーブ510と同じ構成である。   The master 520 has the same configuration as the above-described master 500, and similarly, the slave 530, the slave 540, and the slave 550 have the same configuration as the above-described slave 510.

ネットワーク560は、図5中に丸印で示される複数のルータを含んでいる。ただし、ネットワーク560は、図5には記載されていないが、ルータ間をネットワーク層の下位層に当たるデータリンク層のEthernetスイッチ(Ethernet:登録商標)や物理層の方向性分岐スイッチなどで接続されているものとする。   The network 560 includes a plurality of routers indicated by circles in FIG. However, the network 560 is not shown in FIG. 5, but the routers are connected by an Ethernet switch (Ethernet: registered trademark) in the data link layer corresponding to the lower layer of the network layer or a directional branch switch in the physical layer. It shall be.

以下では、マスタ500とスレーブ510との間で時刻同期を行う場合を例にして、その構成要素を説明する。   Below, the case where time synchronization is performed between the master 500 and the slave 510 is described as an example, and the constituent elements will be described.

<マスタ>
マスタ500の時刻同期部505は、時刻同期用メッセージをスレーブ510に送信するために生成する。なお、ここでは、このメッセージはIEEE1588に準拠したものを使用する場合を用いて説明するが、他の方法を用いても良い。この場合、時刻同期部505はSyncメッセージ、Follow-upメッセージ、およびDelay Responseメッセージを作成し、パケット送受信部501に渡す。また、時刻同期部505は、スレーブ510からのDelay Requestメッセージをパケット送受信部501を介して受け取る。
<Master>
The time synchronization unit 505 of the master 500 generates a time synchronization message for transmission to the slave 510. Here, this message is described using the case of using a message conforming to IEEE 1588, but other methods may be used. In this case, the time synchronization unit 505 creates a Sync message, a Follow-up message, and a Delay Response message and passes them to the packet transmission / reception unit 501. Further, the time synchronization unit 505 receives the Delay Request message from the slave 510 via the packet transmission / reception unit 501.

マスタ500の経路調査部502は、スレーブ510までのルーティング経路、即ち、スレーブ510との間でデータを送受信するにあたって選択された最適な経路を調べるために、スレーブ510に向けてトレースルート(traceroute)を実行する。トレースルートについては、例えば、非特許文献(http://www.atmarkit.co.jp/fnetwork/netcom/traceroute./html)に記載されているような方法を用いればよい。トレースルートでは、経路調査部502は、ルータを通過する度にTTL(Time to Live)を変化させるパケットをスレーブ510宛に送信する。また、経路調査部502は、TTLが0になった時点でルータから送り返されてくるICMP Time Exceededメッセージをパケット送受信部501を介して受け取る。このトレースルートにより、経路調査部502は、マスタ500からスレーブ510までの間に存在するルータを把握し、ルーティング経路情報を作成する。   The route check unit 502 of the master 500 traces a route to the slave 510, that is, an optimum route selected when transmitting / receiving data to / from the slave 510. Execute. For the trace route, for example, a method as described in non-patent literature (http://www.atmarkit.co.jp/fnetwork/netcom/traceroute./html) may be used. In the trace route, the route examining unit 502 transmits a packet that changes TTL (Time to Live) to the slave 510 every time it passes through the router. Further, the route examining unit 502 receives the ICMP Time Exceeded message sent back from the router when the TTL becomes 0 via the packet transmitting / receiving unit 501. Based on this trace route, the route investigation unit 502 grasps a router existing between the master 500 and the slave 510, and creates routing route information.

そして、経路比較部503は、経路調査部502からトレースルートによって得られたスレーブ510までのルーティング経路情報を受け取る。経路比較部503は、このルーティング経路情報を通信相手となるスレーブ510の経路比較部513に転送する。   Then, the route comparison unit 503 receives the routing route information from the route examining unit 502 to the slave 510 obtained by the trace route. The route comparison unit 503 transfers this routing route information to the route comparison unit 513 of the slave 510 that is the communication partner.

遅延測定部504は、通信相手となるスレーブ510とのオフセット時間を測定するために、パケット送受信部501を介してタイムスタンプが付加されたメッセージをスレーブ510の遅延測定部514とやり取りする。   The delay measurement unit 504 exchanges a message with a time stamp added thereto via the packet transmission / reception unit 501 with the delay measurement unit 514 of the slave 510 in order to measure the offset time with the slave 510 serving as a communication partner.

パケット送受信部501は、時刻同期部505、経路調査部502、経路比較部503、および遅延測定部504から送信メッセージを受け取ると、受け取ったメッセージにIPヘッダとMACヘッダを付けた後、ネットワーク560に送信する。また、パケット送受信部501は、ネットワーク560からパケットを受信すると、そのパケットの宛先に応じて、時刻同期部505、経路調査部502、経路比較部503、および遅延測定部504に渡す。   When the packet transmission / reception unit 501 receives a transmission message from the time synchronization unit 505, the route inspection unit 502, the route comparison unit 503, and the delay measurement unit 504, the packet transmission / reception unit 501 adds an IP header and a MAC header to the received message. Send. Further, when receiving a packet from the network 560, the packet transmission / reception unit 501 passes the packet to the time synchronization unit 505, the route investigation unit 502, the route comparison unit 503, and the delay measurement unit 504 according to the destination of the packet.

<スレーブ>
スレーブ510の時刻同期部515は、時刻同期用メッセージをマスタ500の時刻同期部505から受信する。なお、ここでは、このメッセージは、IEEE1588に準拠したものを使用した場合を用いて説明するが他の方法を用いても良い。この場合、時刻同期部515は、Syncメッセージ、Follow-upメッセージ、およびDelay Responseメッセージをパケット送受信部511を介して受け取る。また、時刻同期部515は、Delay Requestメッセージを作成するとともに、パケット送受信部511を介してマスタ500へ送信する。
<Slave>
The time synchronization unit 515 of the slave 510 receives a time synchronization message from the time synchronization unit 505 of the master 500. Note that here, this message is described using a case in which a message conforming to IEEE 1588 is used, but other methods may be used. In this case, the time synchronization unit 515 receives the Sync message, Follow-up message, and Delay Response message via the packet transmission / reception unit 511. In addition, the time synchronization unit 515 creates a Delay Request message and transmits it to the master 500 via the packet transmission / reception unit 511.

スレーブ510の経路調査部512は、マスタ500までのルーティング経路を調べるために、マスタ500に向けてトレースルート(traceroute)を実行する。トレースルートでは、経路調査部512は、TTLを変化させながらマスタ500を宛先としたパケットを送信する。また、経路調査部512は、TTLが0になった時点でルータから送り返されてくるICMP Time Exceededメッセージをパケット送受信部511を介して受け取る。このトレースルートにより、経路調査部512は、スレーブ510からマスタ500までの間に存在するルータを把握し、ルーティング経路情報を作成することができる。   The route checking unit 512 of the slave 510 executes a trace route (traceroute) toward the master 500 in order to check the routing route to the master 500. In the trace route, the route examining unit 512 transmits a packet destined for the master 500 while changing the TTL. Further, the route examining unit 512 receives the ICMP Time Exceeded message sent back from the router when the TTL becomes 0 via the packet transmitting / receiving unit 511. With this trace route, the route examining unit 512 can grasp the router existing between the slave 510 and the master 500 and create routing route information.

そして、経路比較部513は、経路調査部512から、トレースルートによって得られたマスタ500までのルーティング経路情報を受け取る。また、経路比較部513は、通信相手となるマスタ500の経路比較部503から、マスタ500からスレーブ510までのルーティング経路情報をネットワーク560を介して受け取る。これで、経路比較部513は、マスタ500→スレーブ510と、スレーブ510→マスタ500の往復のルーティング経路情報を手に入れる。そして、経路比較部513は、これら2つのルーティング経路情報を比較して、ルーティング経路に不一致の箇所があるかチェックする。不一致の箇所が見つからなければ、マスタ500と時刻同期を行うために、時刻同期部515に命令する。逆に、不一致する箇所が見つかった場合には、経路比較部513は、経路調査部512に別のマスタへのルーティング経路を調査するように指示を出す。   Then, the route comparison unit 513 receives the routing route information from the route examining unit 512 to the master 500 obtained by the trace route. Further, the route comparison unit 513 receives the routing route information from the master 500 to the slave 510 via the network 560 from the route comparison unit 503 of the master 500 serving as a communication partner. Thus, the path comparison unit 513 obtains the round-trip routing path information of the master 500 → slave 510 and the slave 510 → master 500. Then, the route comparison unit 513 compares these two pieces of routing route information and checks whether there is a mismatched portion in the routing route. If no mismatch is found, the time synchronization unit 515 is instructed to perform time synchronization with the master 500. On the other hand, when a mismatching portion is found, the route comparison unit 513 instructs the route examining unit 512 to investigate the routing route to another master.

遅延測定部514は、通信相手となる任意のノードとの間の片方向遅延時間を測定するために、パケット送受信部511を介して、タイムスタンプが付加されたメッセージを他ノードの遅延測定部とやり取りする。   In order to measure the one-way delay time with an arbitrary node that is a communication partner, the delay measurement unit 514 sends a message with a time stamp added to the delay measurement unit of another node via the packet transmission / reception unit 511. Interact.

パケット送受信部511は、時刻同期部515、経路調査部512、および遅延測定部514から送信メッセージを受け取ると、受け取ったメッセージにIPヘッダとMACヘッダを付けた後、ネットワーク560に送信する。また、パケット送受信部511は、ネットワーク560からパケットを受信すると、そのパケットの宛先に応じて、時刻同期部515、経路調査部512、経路比較部513、および遅延測定部514に渡す。   When packet transmission / reception unit 511 receives a transmission message from time synchronization unit 515, route inspection unit 512, and delay measurement unit 514, it adds an IP header and a MAC header to the received message, and transmits the message to network 560. Further, when receiving a packet from the network 560, the packet transmission / reception unit 511 passes the packet to the time synchronization unit 515, the route investigation unit 512, the route comparison unit 513, and the delay measurement unit 514 in accordance with the destination of the packet.

<動作>
まず、第1の実施の形態の動作概要について述べる。
第1の実施の形態では、図5のように、丸印で示される複数のルータを含むネットワークを想定しており、ネットワーク層のルーティング経路が非対称になりうるモデルを想定している。さらに、ルータ間を結ぶリンクの一部は、リンク561(3重線)のように非対称線路になっているネットワークを想定している。本発明は、このようなネットワークでも、経路の非対称性によって生じる同期精度の劣化を防ぎ、正確な時刻同期を実現できるシステムであり、その動作概要について以下に述べる。
<Operation>
First, an outline of the operation of the first embodiment will be described.
In the first embodiment, as shown in FIG. 5, a network including a plurality of routers indicated by circles is assumed, and a model in which routing paths in the network layer can be asymmetric is assumed. Furthermore, a part of a link connecting routers is assumed to be a network having an asymmetrical line such as a link 561 (triple line). The present invention is a system capable of preventing deterioration of synchronization accuracy caused by path asymmetry and realizing accurate time synchronization even in such a network, and its operation outline will be described below.

まず、ネットワーク層(IP)における経路の非対称性は、トレースルートでルーティング経路を調査することにより検出することが可能である。   First, path asymmetry in the network layer (IP) can be detected by examining the routing path with a trace route.

したがって、スレーブは、まずトレースルートを用いて、ルーティング経路が双方向で対称となっているようなマスタを検出し、そのマスタと時刻同期を行う。   Therefore, the slave first uses a trace route to detect a master whose routing path is bidirectional and symmetrical, and performs time synchronization with the master.

しかしながら、データリンク層や物理層における経路の非対称性は、トレースルートで調査しても検出することはできない。   However, the path asymmetry in the data link layer and the physical layer cannot be detected even by examining the trace route.

なぜなら、トレースルートで検出できるデバイスはネットワーク層のルータだけであり、データリンク層のイーサネットスイッチ(イーサネット:登録商標)や物理層の方向性分岐スイッチはトレースルートではその存在を検出できないからである。   This is because only devices in the network layer can be detected by the trace route, and Ethernet switches (Ethernet: registered trademark) in the data link layer and directional branch switches in the physical layer cannot be detected in the trace route.

図5に示されるように、スレーブ530は、データリンク層や物理層の経路が非対称になっているリンク561を介してマスタ500と時刻同期を行っているが、上記の理由により、このスレーブ530には時刻同期誤差が残留してしまう。   As shown in FIG. 5, the slave 530 performs time synchronization with the master 500 via the link 561 in which the paths of the data link layer and the physical layer are asymmetrical. In this case, a time synchronization error remains.

そこで、このような時刻同期誤差が残っているスレーブ530を検出するために、第1の実施の形態では、経路が対称となっているノード同士で片方向遅延時間を測定する。例えば、時刻オフセットが残っていないスレーブ510とスレーブ540で片方向遅延時間を測定した場合、理由は以下で述べるが、スレーブ510→スレーブ540の片方向遅延時間と、スレーブ540→スレーブ510の片方向遅延時間は等しくなる。   Therefore, in order to detect the slave 530 in which such a time synchronization error remains, in the first embodiment, the one-way delay time is measured between nodes whose paths are symmetrical. For example, when the one-way delay time is measured by the slave 510 and the slave 540 in which no time offset remains, the reason will be described below. The delay times are equal.

一方、時刻オフセットが残留しているスレーブ530と、時刻オフセットが残留していないスレーブ510とで片方向遅延時間を測定した場合、スレーブ510→スレーブ540の片方向遅延時間と、スレーブ540→スレーブ510の片方向遅延時間は、スレーブ530の時刻オフセットの分だけ時間差が生じる。   On the other hand, when the one-way delay time is measured by the slave 530 in which the time offset remains and the slave 510 in which the time offset does not remain, the one-way delay time of the slave 510 → slave 540 and the slave 540 → slave 510 In the one-way delay time, there is a time difference corresponding to the time offset of the slave 530.

第1の実施の形態では、この片方向遅延時間に関する特徴を利用することにより、時刻オフセットが残留しているスレーブを検出する。すなわち、時刻オフセットが残留していないスレーブであれば、複数の他のノードと片方向遅延時間を測定していけば、いつかは遅延時間が往復で対称となるようなノードを見つけることができる。これに対して、時刻オフセットが残留しているスレーブでは、いつまで経っても遅延時間が往復で対称となるようなノードを見つけることができない。   In the first embodiment, a slave with a remaining time offset is detected by using the feature related to the one-way delay time. In other words, if the slave has no time offset remaining, it is possible to find a node whose delay time is symmetric in a round trip by measuring the one-way delay time with a plurality of other nodes. On the other hand, in the slave in which the time offset remains, it is not possible to find a node whose delay time is reciprocally symmetrical regardless of the time.

このように、片方向遅延時間の対称性を調査していくことにより、データリンク層や物理層の経路の非対称によって時刻オフセットが生じているスレーブを検出できる。   In this way, by investigating the symmetry of the one-way delay time, it is possible to detect a slave in which a time offset occurs due to the asymmetry of the path of the data link layer or the physical layer.

また、その時刻オフセット量は、以下で詳しく述べるように、往復の片方向遅延の時間差と相関がある値となっており、他のノードとの片方向遅延時間差から残留している時刻オフセット量を推測できる。   Further, as will be described in detail below, the time offset amount has a value correlated with the time difference between the one-way delays in the round trip, and the time offset amount remaining from the one-way delay time difference with other nodes is calculated. I can guess.

以上の理由から、第1の実施の形態は、ネットワーク層/データリンク層/物理層の経路が非対称となっているようなネットワークでも、正確な時刻同期システムを実現することができる。   For the above reasons, the first embodiment can realize an accurate time synchronization system even in a network in which the route of the network layer / data link layer / physical layer is asymmetric.

次に、図5及び図6を参照しながら、第1の実施の形態の動作の詳細について説明する。   Next, details of the operation of the first embodiment will be described with reference to FIGS. 5 and 6.

図6は、スレーブの処理の流れを示すフローチャートである。   FIG. 6 is a flowchart showing the processing flow of the slave.

以下の説明では、スレーブ510の動作を例に取り上げて説明する。   In the following description, the operation of the slave 510 will be described as an example.

まず、スレーブ510の経路調査部512は、往復のルーティング経路が等しくなるようなマスタを検出すべく、スレーブ510から各マスタ(マスタ500、マスタ520)までのルーティング経路をトレースルートで調査する(ステップ602)。   First, the route investigation unit 512 of the slave 510 investigates the routing route from the slave 510 to each master (master 500, master 520) using the trace route so as to detect a master whose round-trip routing route is equal (step 500). 602).

この際、スレーブ510の経路調査部512は、各マスタからスレーブ510までのルーティング経路も調査するべく、各マスタの経路調査部に経路調査要求メッセージを送信する。   At this time, the route investigation unit 512 of the slave 510 transmits a route investigation request message to the route investigation unit of each master so as to investigate the routing route from each master to the slave 510.

各マスタの経路調査部は、スレーブ510から経路調査要求メッセージを受け取ると、マスタからスレーブ510までのルーティング経路を調査する。この調査が完了すると、各マスタは、ルーティング経路の調査結果をスレーブ510の経路比較部513に送付する。   When the route investigation unit of each master receives the route investigation request message from the slave 510, the route investigation unit investigates the routing route from the master to the slave 510. When this investigation is completed, each master sends the result of investigation of the routing route to the route comparison unit 513 of the slave 510.

そして、経路比較部513において、スレーブ510と各マスタ(マスタ500、マスタ520)との間の往復のルーティング経路が対称かどうかチェックされる。   Then, the route comparison unit 513 checks whether the round-trip routing route between the slave 510 and each master (master 500, master 520) is symmetric.

ここで、スレーブ510とマスタ520の間のルーティング経路は、図7に示されるように方向によって通過ルートが異なっているので、非対称となっている。   Here, the routing route between the slave 510 and the master 520 is asymmetric because the passing route differs depending on the direction as shown in FIG.

一方、スレーブ510とマスタ500の間のルーティング経路は、図8に示されるように往復で同一ルートを通っているので、対称である。   On the other hand, the routing path between the slave 510 and the master 500 is symmetrical because it passes the same route in a round trip as shown in FIG.

このため、経路比較部513は、マスタ500と時刻同期の処理を行うように時刻同期部515に指示する(図6のステップ603)。   Therefore, the path comparison unit 513 instructs the time synchronization unit 515 to perform time synchronization processing with the master 500 (step 603 in FIG. 6).

そして、時刻同期部515は、マスタ500と時刻同期用メッセージを交換する。この時刻同期メッセージには、IEEE1588で規定されている方法を利用しても良い。   Then, the time synchronization unit 515 exchanges a time synchronization message with the master 500. For this time synchronization message, a method defined in IEEE 1588 may be used.

以上の処理により、マスタ500とスレーブ510の間で時刻同期が行われるが、この際、往復のルーティング経路が対称となっているマスタ500−スレーブ510間で時刻同期を行っているので、スレーブ510に時刻同期誤差は生じない。   With the above processing, time synchronization is performed between the master 500 and the slave 510. At this time, since time synchronization is performed between the master 500 and the slave 510 in which the round-trip routing path is symmetric, the slave 510 No time synchronization error occurs.

しかしながら、ネットワーク層よりも下のレイヤの伝播経路、即ち、データリンク層や物理層における伝送経路が非対称になっている場合、これらの処理だけでは時刻同期誤差が残留してしまう。   However, when the propagation path of the layer below the network layer, that is, the transmission path in the data link layer or the physical layer is asymmetric, a time synchronization error remains only with these processes.

例えば、図5の中で3重線によって示されているリンク561は、方向によって異なる伝送路を通るように設計されている。   For example, the link 561 indicated by a triple line in FIG. 5 is designed to pass through different transmission paths depending on directions.

図9は、そのリンク561の物理層における状態を示しているが、ルータからのケーブルは方向性分岐スイッチで2つに分岐され、パケットの伝播方向によって異なる経路を通るように制御されている。ここで、この2つの経路の伝播遅延時間差(片方向遅延誤差)をDoffsetとする。   FIG. 9 shows the state of the link 561 in the physical layer. The cable from the router is branched into two by a directional branch switch, and is controlled so as to take different paths depending on the packet propagation direction. Here, the propagation delay time difference (one-way delay error) between the two paths is defined as Doffset.

このように、ネットワーク層よりも下のレイヤで非対称となっている場合には、上述のトレースルートを用いた方法ではその非対称性を検出できない。このため、例えば、図5で示されるように、スレーブ530がこのような非対称リンク561を介してマスタ500と時刻同期を行っているとすると、時刻同期誤差が残留してしまう。   As described above, when the layer below the network layer is asymmetric, the method using the trace route described above cannot detect the asymmetry. Therefore, for example, as shown in FIG. 5, if the slave 530 performs time synchronization with the master 500 via such an asymmetric link 561, a time synchronization error remains.

このとき残留する時刻同期誤差はリンクの非対称遅延量の半分、すなわちDoffset/2であり、スレーブ530の時計はこの誤差分だけ時刻にズレが生じている。   At this time, the remaining time synchronization error is half of the asymmetric delay amount of the link, that is, Doffset / 2, and the clock of the slave 530 is shifted in time by this error.

各スレーブは、自身がもつ時計に、このような同期誤差が含まれていないかどうかを判断するとともに、その誤差量を推定するために、図6のステップ605〜616の処理を行う。   Each slave determines whether or not such a synchronization error is included in its own clock, and performs the processing of steps 605 to 616 in FIG. 6 in order to estimate the error amount.

以下にその処理について述べる。   The process will be described below.

まず、各スレーブ(スレーブ510、スレーブ530、スレーブ540、スレーブ550)は、図6のステップ601〜603の処理を行い、ネットワーク層のルーティング経路が対称となるようなマスタと時刻同期処理を既に実行しているものとする。図8はマスタノード500とスレーブノード510とが時刻同期処理を実行して得られたルーティング経路を示し、図10はマスタノード500とスレーブノード530とが時刻同期処理を実行して得られたルーティング経路を示し、図11はマスタノード520とスレーブノード540とが時刻同期処理を実行して得られたルーティング経路を示し、図12はマスタノード500とスレーブノード550とが時刻同期処理を実行して得られたルーティング経路を示している。   First, each slave (slave 510, slave 530, slave 540, slave 550) performs the processing of steps 601 to 603 in FIG. 6 and already executes time synchronization processing with the master so that the routing route of the network layer is symmetric. Suppose you are. FIG. 8 shows a routing path obtained by executing time synchronization processing between the master node 500 and the slave node 510, and FIG. 10 shows routing obtained by executing time synchronization processing between the master node 500 and the slave node 530. FIG. 11 shows a routing route obtained by executing the time synchronization processing between the master node 520 and the slave node 540, and FIG. 12 shows the time synchronization processing performed by the master node 500 and the slave node 550. The obtained routing route is shown.

ここで、ルーティング経路がリンク561を含んでいる場合にはスレーブに時刻同期誤差が残留することになるが、図8、図10、図11、図12の経路を見ると分かるように、スレーブ530、スレーブ550はこの条件に当てはまるので同期誤差が残ってしまう。   Here, when the routing path includes the link 561, a time synchronization error remains in the slave. However, as can be seen from the paths in FIGS. 8, 10, 11, and 12, the slave 530 is detected. Since the slave 550 satisfies this condition, a synchronization error remains.

図13はその様子を示した図である。図13を参照すると、スレーブ530、スレーブ540には同期誤差が残っていないが(Offset=0)、スレーブ530、スレーブ550にはDoffset/2の同期誤差が含まれている。   FIG. 13 shows the state. Referring to FIG. 13, no synchronization error remains in slave 530 and slave 540 (Offset = 0), but slave 530 and slave 550 include a synchronization error of Doffset / 2.

このように、時刻同期誤差が残留しているスレーブ530、550を特定するとともに、その同期誤差量を検出すべく、各スレーブは図6のステップ605〜616の処理を実行する。   As described above, the slaves 530 and 550 in which the time synchronization error remains are specified, and each slave executes the processing of steps 605 to 616 in FIG. 6 in order to detect the synchronization error amount.

以下では、これらの処理のイメージを掴むため、同期誤差が残留しているスレーブ530のケースを例に挙げて説明する。   Hereinafter, in order to grasp the image of these processes, a case of the slave 530 in which the synchronization error remains will be described as an example.

まず、スレーブ530の経路調査部512は往復のルーティング経路が対称となる“新たなノード”を探索する(ステップ605)。   First, the route examining unit 512 of the slave 530 searches for a “new node” in which the round-trip routing route is symmetric (step 605).

ここで、新たなノードとは、以下のいずれかの条件を満足するノードのことをさす。
・ステップ603で、時刻同期を行ったマスタ500以外のマスタ(すなわち、本実施の形態ではマスタ520)
・既にマスタと時刻同期処理を実行している他のスレーブ(すなわち、本実施の形態ではスレーブ510、スレーブ540、スレーブ550)
Here, the new node refers to a node that satisfies any of the following conditions.
In step 603, a master other than the master 500 that performed time synchronization (that is, master 520 in the present embodiment).
Other slaves that are already executing time synchronization processing with the master (that is, slave 510, slave 540, slave 550 in this embodiment)

ここで、スレーブ530の経路調査部512は、最初の通信相手として、スレーブ540を選んだとする。   Here, it is assumed that the route investigation unit 512 of the slave 530 selects the slave 540 as the first communication partner.

そして、スレーブ530の経路調査部512は、スレーブ540までの往復のルーティング経路が対称となるか確認するために、トレースルートで調査する(ステップ605)。このようにスレーブ530がスレーブ540との経路の対称性を調査する理由は、通信相手に選んだスレーブ540への経路が非対称になっている場合、スレーブ530とスレーブ540との間で片方向遅延時間を測定しても、その片方向遅延時間は時刻オフセットの影響だけでなく、スレーブ530とスレーブ540との間の経路の非対称性の影響も受けてしまうため、片方向遅延時間から時刻オフセットを正確に求めることができないからである。   Then, the route checking unit 512 of the slave 530 checks the trace route in order to confirm whether the round-trip routing route to the slave 540 is symmetric (step 605). The reason why the slave 530 investigates the symmetry of the route with the slave 540 is that the one-way delay between the slave 530 and the slave 540 is when the route to the slave 540 selected as the communication partner is asymmetric. Even if the time is measured, the one-way delay time is affected not only by the time offset, but also by the asymmetry of the path between the slave 530 and the slave 540. Therefore, the time offset is calculated from the one-way delay time. This is because it cannot be obtained accurately.

ここで、図13のように、スレーブ530とスレーブ540との間のルーティング経路は往復で対称になっているものとする。   Here, as shown in FIG. 13, it is assumed that the routing path between the slave 530 and the slave 540 is symmetrical back and forth.

この場合、スレーブ530の経路比較部513がスレーブ530とスレーブ540との間のルーティング経路は往復で対称になっているものと判断し、ステップ606の処理に進むが、新たなノードはスレーブであるので、ステップ613の処理に進む。   In this case, the route comparison unit 513 of the slave 530 determines that the routing route between the slave 530 and the slave 540 is reciprocally symmetric, and proceeds to the processing of step 606, but the new node is a slave. Therefore, the process proceeds to step 613.

このステップ613では、スレーブ530とこのスレーブ530が時刻同期したマスタ500との間のルーティング経路と、スレーブ540とこのスレーブ540が時刻同期したマスタ520との間のルーティング経路に重なる箇所がないかをスレーブ530の経路比較部513がチェックする。このように2つのルーティング経路の重なり具合を調査する理由は、もし2つの経路に重なっている箇所が存在する場合には、同じ量の時刻オフセットが2つのスレーブに残留している可能性があり、時刻同期誤差を除去できなくなるからである。   In this step 613, it is determined whether or not there is an overlapping portion on the routing path between the slave 530 and the master 500 whose slave 530 is time-synchronized and the routing path between the slave 540 and the master 520 whose time is synchronized. The path comparison unit 513 of the slave 530 checks. The reason for investigating the overlap between the two routing paths in this way is that if there is a place that overlaps the two paths, the same amount of time offset may remain in the two slaves. This is because the time synchronization error cannot be removed.

たとえば、スレーブ550とマスタ500との経路と、スレーブ530とマスタ500との経路は、図10、図12を見ると分かるようにリンク561で重なっているが、この場合両者には同じ量の時刻オフセット(Doffset/2)が残留している。   For example, the route between the slave 550 and the master 500 and the route between the slave 530 and the master 500 are overlapped by a link 561 as can be seen from FIGS. The offset (Doffset / 2) remains.

このように同じ量の時刻オフセットが残留しているスレーブ間で片方向遅延時間を測定すると、その遅延時間は双方向で対称となる。第1の実施の形態では、このように片方向遅延時間が対称となるようなノードを1つでも見つけられたスレーブには時刻オフセットが残留していないと判断してしまうため(ステップ609)、スレーブに残っている同期誤差を除去できなくなってしまう。   When the one-way delay time is measured between slaves in which the same amount of time offset remains in this way, the delay time is symmetric in both directions. In the first embodiment, since it is determined that there is no time offset remaining in the slave in which even one node having such a symmetric one-way delay time is found (step 609), The synchronization error remaining in the slave cannot be removed.

したがって、このようなエラーを防ぐために、図6のステップ613において、スレーブ530とマスタ500との間のルーティング経路と、スレーブ540とマスタ520との間のルーティング経路の重なり具合をチェックしている。   Therefore, in order to prevent such an error, in step 613 in FIG. 6, the overlapping state of the routing path between the slave 530 and the master 500 and the routing path between the slave 540 and the master 520 is checked.

ここで、図10、図11を見ると分かるように、2つのルーティング経路はまったく独立しており、重なる箇所はないので、図6のステップ607に進む。   Here, as can be seen from FIG. 10 and FIG. 11, the two routing paths are completely independent and there is no overlapping portion, so the process proceeds to step 607 in FIG.

ステップ607では、スレーブ530−マスタ500間のルーティング経路とスレーブ530−スレーブ540間のルーティング経路に一致する箇所がないかスレーブ530の経路比較部513がチェックする。   In step 607, the path comparison unit 513 of the slave 530 checks whether there is a match between the routing path between the slave 530 and the master 500 and the routing path between the slave 530 and the slave 540.

このように2つのルーティング経路の重なり具合を調査する理由は、上記のステップ613と同じ理由である。つまり、この2つの経路に重なる箇所が存在する場合には、片方向遅延時間差を元にした判断に誤りが生じる可能性があり、このようなエラーを防ぐために、図6のステップ607において、2つのルーティング経路の重なり具合をチェックしている。   The reason for examining the overlapping state of the two routing paths in this way is the same reason as in step 613 above. That is, if there is a place where these two routes overlap, an error may occur in the determination based on the one-way delay time difference. In order to prevent such an error, in step 607 of FIG. Checking the overlap of two routing paths.

図10、図13を見ると分かるように、この2つのルーティング経路に重なる箇所は全くないので、スレーブ530の経路比較部513は、スレーブ540を片方向遅延時間を測定する対象として決定して、図6のステップ608に進む。   As can be seen from FIG. 10 and FIG. 13, since there is no place overlapping these two routing paths, the path comparison unit 513 of the slave 530 determines the slave 540 as an object for measuring the one-way delay time, Proceed to step 608 in FIG.

ステップ608では、スレーブ530の遅延測定部514がスレーブ530−スレーブ540間の片方向遅延時間を測定する。   In step 608, the delay measurement unit 514 of the slave 530 measures the one-way delay time between the slave 530 and the slave 540.

片方向遅延時間の測定方法は、以下のとおりである。   The method for measuring the one-way delay time is as follows.

送信側では、パケットを送信する瞬間の時刻をタイムスタンプとして付与してからパケットを送信する。   On the transmission side, the packet is transmitted after the time at which the packet is transmitted is given as a time stamp.

一方、受信側では、パケットを受信した時刻を観測する。   On the other hand, the receiving side observes the time when the packet is received.

このパケット受信時刻とパケットに付与されている送信時刻タイムスタンプから片方向遅延時間を算出する。   The one-way delay time is calculated from the packet reception time and the transmission time stamp attached to the packet.

ここで、スレーブ530→スレーブ540の片方向遅延時間は図13のように、
DS540S530=Delay'+Doffset/2
で表される。
Here, the one-way delay time from the slave 530 to the slave 540 is as shown in FIG.
DS540S530 = Delay '+ Doffset / 2
It is represented by

一方、スレーブ540→スレーブ530への片方向遅延時間は図13のように
DS530S540=Delay'-Doffset/2
で表される。
On the other hand, the one-way delay time from the slave 540 to the slave 530 is as shown in FIG.
DS530S540 = Delay'-Doffset / 2
It is represented by

ここで、スレーブ530の遅延測定部514は、DS540S530とDS530S540とを比較して、片方向遅延時間が対称であるか非対称であるかを確認する(ステップ609)。上記のように、スレーブ530−スレーブ540間の片方向遅延は方向によって異なっており一致しない。   Here, the delay measurement unit 514 of the slave 530 compares the DS540S530 and the DS530S540 to confirm whether the one-way delay time is symmetric or asymmetric (step 609). As described above, the one-way delay between the slave 530 and the slave 540 differs depending on the direction and does not match.

このため、スレーブ530の遅延測定部514は図6のステップ610に進み、片方向遅延時間の差、スレーブ530に残留している片方向遅延誤差であるDoffsetをデータベースに保存する。   For this reason, the delay measuring unit 514 of the slave 530 proceeds to step 610 in FIG. 6 and stores the difference in one-way delay time and Doffset, which is the one-way delay error remaining in the slave 530, in the database.

図6のステップ611の規定回数maxは、ここでは3に設定されているとする。   Here, it is assumed that the prescribed number max of step 611 in FIG.

まだ一回目の試行であるので、スレーブ530はステップ605の処理に戻る。   Since it is still the first trial, the slave 530 returns to the process of step 605.

次に、スレーブ530は、新たな通信相手(新たなノード)として、スレーブ550を選んだとする。   Next, it is assumed that the slave 530 selects the slave 550 as a new communication partner (new node).

ここで、図14のように、スレーブ530−スレーブ550間は往復で同じルーティング経路を通っているので、ステップ606に進む。   Here, as shown in FIG. 14, since the slave 530 and the slave 550 are reciprocally passing through the same routing path, the process proceeds to step 606.

新たなノードはスレーブであるので、ステップ613に進み、スレーブ530−マスタ500間のルーティング経路とスレーブ550−マスタ500間のルーティング経路に一致する箇所がないかチェックする。   Since the new node is a slave, the process advances to step 613 to check whether there is a match between the routing path between the slave 530 and the master 500 and the routing path between the slave 550 and the master 500.

ここで、図10、図12から分かるように、スレーブ530−マスタ500間のルーティング経路と、スレーブ550−マスタ500間のルーティング経路には、3重線で示されるリンク561が共有部分として存在している。   Here, as can be seen from FIG. 10 and FIG. 12, a link 561 indicated by a triple line exists as a shared portion in the routing path between the slave 530 and the master 500 and the routing path between the slave 550 and the master 500. ing.

このため、スレーブ530は、このようなスレーブ550は通信相手として不適切と判定して、ステップ605に戻る。
(試行回数2回目)
スレーブ530は、次の通信相手(新たなノード)として、スレーブ510を選んだとする。
Therefore, the slave 530 determines that such a slave 550 is inappropriate as a communication partner, and returns to step 605.
(2nd trial)
Assume that the slave 530 selects the slave 510 as the next communication partner (new node).

ここで、図15のように、スレーブ530−スレーブ510間は往復で同じルーティング経路を通っているので、ステップ606に進む。   Here, as shown in FIG. 15, the slave 530 and the slave 510 are reciprocally passing through the same routing path, so the process proceeds to step 606.

新たなノードはスレーブであるので、ステップ613に進み、スレーブ530−マスタ500間のルーティング経路とスレーブ510−マスタ500間のルーティング経路ルーティング経路に一致する箇所がないかチェックする。   Since the new node is a slave, the process advances to step 613 to check whether there is a match between the routing path between the slave 530 and the master 500 and the routing path between the slave 510 and the master 500.

図8、図10を見ると分かるように、この2つのルーティング経路に重なる箇所は全くないので、図6のステップ608に進む。   As can be seen from FIG. 8 and FIG. 10, since there is no place overlapping these two routing paths, the process proceeds to step 608 in FIG.

ステップ608では、スレーブ530−スレーブ510間の片方向遅延時間を測定する。   In step 608, the one-way delay time between the slave 530 and the slave 510 is measured.

ここで、スレーブ510→スレーブ530の片方向遅延時間は図15のように、
DS510S530=Delay''-Doffset/2
で表される。
Here, the one-way delay time from the slave 510 to the slave 530 is as shown in FIG.
DS510S530 = Delay ''-Doffset / 2
It is represented by

一方、スレーブ530→スレーブ510への片方向遅延時間は図15のように、
DS530S510=Delay''+Doffset/2
で表される。
On the other hand, the one-way delay time from the slave 530 to the slave 510 is as shown in FIG.
DS530S510 = Delay '' + Doffset / 2
It is represented by

このように、スレーブ530−スレーブ510間の片方向遅延は方向によって異なっており、一致しない。   Thus, the one-way delay between the slave 530 and the slave 510 differs depending on the direction and does not match.

このため、スレーブは図6のステップ610に進み、片方向遅延時間の差であるDoffsetをデータベースに保存する。   Therefore, the slave proceeds to step 610 in FIG. 6 and stores Doffset, which is the difference in one-way delay time, in the database.

現在の試行回数は3回目であり、規定回数max=3を超えたので、ステップ615に抜ける。   The current number of trials is the third, and since the prescribed number max = 3 has been exceeded, the process goes to step 615.

この時点で、上述したように、スレーブ530はスレーブ510、540との片方向遅延誤差の測定結果を得ているが、スレーブ530にはDoffset/2の時刻オフセットが残っているため、他のスレーブとの片方向遅延は非対称となっていた。   At this time, as described above, the slave 530 has obtained the measurement result of the one-way delay error with the slaves 510 and 540. However, since the slave 530 has a time offset of Doffset / 2, The one-way delay was asymmetric.

そして、データベースに保存されている片方向遅延による片方向遅延誤差の時間は、どちらのスレーブともDoffsetであり、スレーブ530の時刻オフセット(Doffset/2)の2倍の値となっている。   The time of the one-way delay error due to the one-way delay stored in the database is Doffset for both slaves, and is twice the time offset (Doffset / 2) of the slave 530.

したがって、スレーブ530の遅延測定部514はこのデータベースに保存されている遅延時間差を元に、2つのルーティング経路はまったく独立していると判定して、その遅延時間差を送出する。そしてスレーブ530の時刻同期部515は、送出された遅延時間差、即ちスレーブ530の時刻オフセット(Doffset/2)を補正することができる(図6のステップ615)。   Therefore, the delay measurement unit 514 of the slave 530 determines that the two routing paths are completely independent based on the delay time difference stored in the database, and sends the delay time difference. The time synchronization unit 515 of the slave 530 can correct the transmitted delay time difference, that is, the time offset (Doffset / 2) of the slave 530 (step 615 in FIG. 6).

このようにして時刻オフセットを補正することによりマスタノードと同期させると、時刻同期処理は終了する(図6のステップ616)。   When the time offset is corrected in this way to synchronize with the master node, the time synchronization process ends (step 616 in FIG. 6).

以上の処理により、スレーブ530の時刻オフセットを補正できることが示された。   It has been shown that the time offset of the slave 530 can be corrected by the above processing.

このように、時刻オフセットが残留しているスレーブの場合、他のノードと片方向遅延時間を測定していっても、いつまで経ってもその遅延時間差が0となるようなノードを見つけることはできない。   In this way, in the case of a slave with a time offset remaining, even if one-way delay time is measured with another node, it is not possible to find a node whose delay time difference is zero even after lapse of time. .

この特徴を利用することにより、時刻オフセットが残留しているスレーブは、『自装置には、時刻オフセットが残留している』ということを認識できる。   By utilizing this feature, a slave with a time offset remaining can recognize that “the time offset remains in its own device”.

また、その時刻オフセット量は、他ノードとの片方向遅延時間差の半分となっており、測定結果から時刻オフセットを補正することが可能である。   The time offset amount is half of the one-way delay time difference from other nodes, and the time offset can be corrected from the measurement result.

上の例では、時刻オフセットが残留しているスレーブ530を例に挙げて、図6のステップ605〜616の処理を説明した。   In the above example, the processing in steps 605 to 616 in FIG. 6 has been described by taking the slave 530 in which the time offset remains as an example.

一方、時刻オフセットが残留していないスレーブ510の場合の処理について考えてみる。   On the other hand, consider processing in the case of the slave 510 in which no time offset remains.

この場合も上記と同様の処理を行う。   In this case, the same processing as described above is performed.

まず、ステップ605において、スレーブ510は、最初の通信相手としてスレーブ540を選んだとする。   First, in step 605, it is assumed that the slave 510 selects the slave 540 as the first communication partner.

図16のように、スレーブ510−スレーブ540間の往復のルーティング経路は一致するので、ステップ606に進む。   As shown in FIG. 16, since the round trip routing paths between the slave 510 and the slave 540 match, the process proceeds to step 606.

新たなノードはスレーブであるので、ステップ613に進み、スレーブ510−マスタ500間のルーティング経路と、スレーブ550−マスタ500間のルーティング経路は一致する箇所がないかチェックする。   Since the new node is a slave, the process advances to step 613 to check whether there is a match between the routing path between the slave 510 and the master 500 and the routing path between the slave 550 and the master 500.

ここで、図8、図12を参照すると分かるように、スレーブ510−マスタ500間のルーティング経路と、スレーブ540−マスタ500間のルーティング経路は重なる箇所が一切ないのでステップ607に進む。   Here, as can be seen with reference to FIGS. 8 and 12, the routing path between the slave 510 and the master 500 and the routing path between the slave 540 and the master 500 do not overlap at all.

ここで、図8、図16を見ると分かるように、スレーブ510−マスタ500間のルーティング経路と、スレーブ510−スレーブ540間のルーティング経路に重なる箇所は一切ないのでステップ608に進む。   Here, as can be seen from FIG. 8 and FIG. 16, since there is no portion overlapping the routing path between the slave 510 and the master 500 and the routing path between the slave 510 and the slave 540, the process proceeds to step 608.

ステップ608では、スレーブ510−スレーブ540間の片方向遅延時間を測定する。   In step 608, the one-way delay time between the slave 510 and the slave 540 is measured.

スレーブ510とスレーブ540には時刻オフセットが残ってないので、スレーブ510-スレーブ540間の片方向遅延時間は図16に示すように双方向で一致するので0となる。このため、図6のステップ614に進み、処理は終了となる。   Since no time offset remains between the slave 510 and the slave 540, the one-way delay time between the slave 510 and the slave 540 coincides in both directions as shown in FIG. Therefore, the process proceeds to step 614 in FIG.

このように、時刻オフセットが残留していないスレーブであれば、他のノードと片方向遅延時間を測定していけば、いつかはその遅延時間差が0となるようなノードを見つけることができる。この特徴を利用することにより、時刻オフセットが残留していないスレーブは、『自分には時刻オフセットが残留していない』ということを認識できる。従って、遅延測定部514は、スレーブ510とスレーブ540との往復の片方向遅延時間が対称であるため、残留している片方向遅延誤差は存在しないと認識して、時刻同期部515に同期しないことを通知する。   In this way, if the slave has no time offset remaining, by measuring the one-way delay time with other nodes, it is possible to find a node whose delay time difference becomes zero sometime. By utilizing this feature, a slave having no remaining time offset can recognize that “there is no remaining time offset”. Accordingly, the delay measurement unit 514 recognizes that there is no remaining one-way delay error because the one-way delay time of the round trip between the slave 510 and the slave 540 is symmetric, and does not synchronize with the time synchronization unit 515. Notify that.

以上の処理により、第1の実施例は、ネットワーク層/データリンク層/物理層の経路が非対称となっているようなネットワークでも、時刻オフセットが残っているスレーブを特定するとともに、その残留オフセットを補正し、正確な時刻同期システムを実現できることが示された。   As a result of the above processing, the first embodiment identifies the slave in which the time offset remains even in a network in which the path of the network layer / data link layer / physical layer is asymmetric, and the residual offset is determined. It was shown that it can be corrected and an accurate time synchronization system can be realized.

また、上記の説明では、図6のステップ609において、片方向遅延時間が対称、すなわち往復の片方向遅延時間が一致するかどうかチェックしていたが、要求される時刻同期精度によっては完全に一致している必要はない。   In the above description, it was checked in step 609 in FIG. 6 whether the one-way delay times are symmetric, that is, whether the one-way delay times for round trips are the same. There is no need to do it.

たとえば、要求される時刻同期精度が数μs程度の場合には、片方向遅延時間がサブμsオーダの範囲で一致していれば、要求される時刻同期精度よりも十分低い値に収まっているので、これらの片方向遅延時間は一致しているという判断を下して差し支えない。   For example, if the required time synchronization accuracy is about several μs, if the one-way delay time is in the sub-μs order range, it is well below the required time synchronization accuracy. It can be judged that these one-way delay times coincide with each other.

このように、上記の説明は本発明の典型的な実施形態のみを示しており、当該領域に精通した技術者であれば、上記の説明を元にして、実施形態に様々な変化を容易につけることが可能であり、上記説明はその範囲を限定するものではないことを理解されたい。   As described above, the above description shows only typical embodiments of the present invention, and those skilled in the field can easily make various changes to the embodiments based on the above description. It should be understood that the above description is not intended to limit the scope thereof.

尚、本発明は、上記ステップ603までの処理、即ちスレーブが往復のルーティング経路が一致するマスタと時刻を同期させる構成であっても、十分に、マスタとスレーブとの間の時刻同期を正確に実現できる。   In the present invention, even if the processing up to step 603, that is, the slave synchronizes the time with the master whose round-trip routing route matches, the time synchronization between the master and the slave is sufficiently accurate. realizable.

<効果>
次に、本発明を実施するための第1の実施の形態の効果について説明する。
本発明を実施するための第1の実施の形態では、マスタとスレーブ間での時刻同期を行った後に、スレーブ間で片方向遅延の対称性をチェックすることにより、時刻オフセットが残留しているスレーブノードを特定し、そのオフセットを補正する。これにより、ネットワーク遅延が非対称の場合でも正確な時刻同期を実現できるので、本発明の目的を達成することができる。
<Effect>
Next, the effect of the first embodiment for carrying out the present invention will be described.
In the first embodiment for carrying out the present invention, after performing time synchronization between the master and the slave, the time offset remains by checking the symmetry of the one-way delay between the slaves. Identify the slave node and correct its offset. Thereby, even when the network delay is asymmetrical, accurate time synchronization can be realized, so that the object of the present invention can be achieved.

次に、本発明を実施するための第2の実施の形態について、図面を参照して詳細に説明する。   Next, a second embodiment for carrying out the present invention will be described in detail with reference to the drawings.

第2の実施の形態では、例えば、マスタ同士の間にオフセットが生じていたり、ある組み合わせのマスタとスレーブとの間の経路が非対称であったりしていて、スレーブ間の片方向遅延時間差が一意な値に収まらないケースを想定している。   In the second embodiment, for example, there is an offset between masters, or a path between a master and a slave in a certain combination is asymmetric, and the one-way delay time difference between slaves is unique. Assumes a case that does not fit within the range.

このような場合でも、スレーブに残留している時刻オフセット量を推定するために、得られた片方向遅延時間差に平均化処理を施す。   Even in such a case, in order to estimate the time offset amount remaining in the slave, the obtained one-way delay time difference is averaged.

これにより、最も確からしい時刻オフセット量を算出することができ、正確な時刻同期システムを実現できるので、本発明の目的を達成することができる。   As a result, the most probable time offset amount can be calculated, and an accurate time synchronization system can be realized, so that the object of the present invention can be achieved.

<構成>
第2の実施の形態の構成は、第1の実施の形態の構成と同じであるため、同様の構成については同一番号を付し、その詳細な説明を省略する。
<Configuration>
Since the configuration of the second embodiment is the same as the configuration of the first embodiment, the same number is assigned to the same configuration, and detailed description thereof is omitted.

<動作>
次に、第2の実施の形態の動作について述べる。
第2の実施の形態では、図17のように、複数のマスタと複数のスレーブが存在し、各スレーブと各マスタの間はネットワーク層よりも下のレイヤで経路が非対称となっているリンク801、802、803、804、805で接続されているものとする。
<Operation>
Next, the operation of the second embodiment will be described.
In the second embodiment, as shown in FIG. 17, there are a plurality of masters and a plurality of slaves, and a link 801 in which a path is asymmetric in a layer below the network layer between each slave and each master. , 802, 803, 804, and 805.

各リンクの非対称量は、図17に示されるように、以下の通りである。
リンク801 = D'offset
リンク802 = D''offset
リンク803 = D'''offset
リンク804 = D''''offset
リンク805 = D'''''offset
Asymmetry amount of each link is as follows, as shown in FIG.
Link 801 = D'offset
Link 802 = D''offset
Link 803 = D '''offset
Link 804 = D '''' offset
Link 805 = D '''''offset

このようなネットワーク環境において、各スレーブが図17に示される経路でマスタと時刻同期処理を行った場合(図6のステップ603)、各スレーブには以下の量だけ時刻オフセットが残留する。
スレーブ750 = D'''''offset/ 2
スレーブ760 = D''''offset/ 2
スレーブ770 = D'''offset/ 2
スレーブ780 = D''offset/ 2
スレーブ790 = D'offset/ 2
In such a network environment, when each slave performs time synchronization processing with the master through the route shown in FIG. 17 (step 603 in FIG. 6), a time offset of the following amount remains in each slave.
Slave 750 = D '''''offset / 2
Slave 760 = D '''' offset / 2
Slave 770 = D '''offset / 2
Slave 780 = D''offset / 2
Slave 790 = D'offset / 2

以下では、このような状況を想定した場合の、スレーブ790の動作について説明する。   Hereinafter, the operation of the slave 790 when such a situation is assumed will be described.

スレーブ790の遅延測定部は、図6に示される各ステップの処理を続け、他の各スレーブとの片方向遅延時間の差をデータベースに保存していく。ここで、規定回数が5以上の値に設定されていれば、スレーブ790は他の全スレーブとの片方向遅延時間差の情報を有する。   The delay measurement unit of the slave 790 continues the processing of each step shown in FIG. 6 and stores the difference in one-way delay time with the other slaves in the database. Here, if the specified number of times is set to a value of 5 or more, the slave 790 has information on the one-way delay time difference from all the other slaves.

データベースに保存されている片方向遅延時間差は、以下の通りである。
片方向遅延時間差(スレーブ790−スレーブ750) = D'offset - D'''''offset (式7)
片方向遅延時間差(スレーブ790−スレーブ760) = D'offset - D''''offset (式8)
片方向遅延時間差(スレーブ790−スレーブ770) = D'offset - D'''offset (式9)
片方向遅延時間差(スレーブ790−スレーブ780) = D'offset - D''offset (式10)
ここで、D'''''offset、D''''offset、D'''offset、およびD''offsetの間には相関がなく、正負の値を取りうるものとする。
The one-way delay time difference stored in the database is as follows.
One-way delay time difference (slave 790-slave 750) = D'offset-D '''''offset (Equation 7)
One-way delay time difference (slave 790-slave 760) = D'offset-D '''' offset (Equation 8)
One-way delay time difference (slave 790-slave 770) = D'offset-D '''offset (Equation 9)
One-way delay time difference (slave 790-slave 780) = D'offset-D''offset (Equation 10)
Here, it is assumed that there is no correlation among D ′ ″ ″ offset, D ″ ″ offset, D ′ ″ offset, and D ″ offset, and it can take positive and negative values.

また、図17には5個のスレーブしか記載していないが、さらに多くのスレーブが集まれば、片方向遅延時間差に関するデータを多数集めることができる。   Although only five slaves are shown in FIG. 17, if more slaves are collected, a large amount of data relating to the one-way delay time difference can be collected.

このように得られた片方向遅延時間差をプロットすると、図18のように、D'offsetを中心として、正規分布のようなグラフとなる。   When the unidirectional delay time difference obtained in this way is plotted, a graph like a normal distribution is obtained with D′ offset as the center, as shown in FIG.

正規分布となる理由は、D'''''offset、D''''offset、D'''offset、およびD''offsetの間には相関がないためである。   The reason for the normal distribution is that there is no correlation among D ′ ″ ″ offset, D ″ ″ offset, D ′ ″ offset, and D ″ offset.

この場合、正規分布の平均値はD'offsetとなっているため、得られた片方向遅延時間差に平均値を求めることによりスレーブ760に残留している時刻オフセットD'offsetを推定できる。   In this case, since the average value of the normal distribution is D′ offset, the time offset D′ offset remaining in the slave 760 can be estimated by obtaining the average value for the obtained one-way delay time difference.

また、平均値を求める際に、中心から大きく外れたデータを取り除いてから平均値を求めることで、推定精度を向上できる。   Further, when the average value is obtained, the estimation accuracy can be improved by obtaining the average value after removing data greatly deviating from the center.

また、上記の説明では、平均値をとる方法について述べたが、単純に平均値をとるのではなく、各データの重み付け平均をとってもよい。   In the above description, the method of taking the average value has been described. However, instead of simply taking the average value, a weighted average of each data may be taken.

たとえば、スレーブとマスタの距離(ホップ数)が大きくなればなるほど、非対称の経路を通る可能性が高まるので、スレーブに時刻同期誤差が残留する確率が高くなる。   For example, the greater the distance between the slave and the master (the number of hops), the higher the possibility of passing through an asymmetric route, and thus the probability that a time synchronization error remains in the slave increases.

図17を見ると分かるように、マスタ740とスレーブ750の間には2つのルータしかないが、マスタ720とスレーブ770の間にはルータが5個も存在する。このため、スレーブ750に比べて、スレーブ770には大きな時刻同期誤差が含まれている可能性が高いので、各データにホップ数の逆数を掛けてから平均をとることにより、スレーブ770の時刻同期誤差の影響を緩和できる。   As can be seen from FIG. 17, there are only two routers between the master 740 and the slave 750, but there are also five routers between the master 720 and the slave 770. Therefore, the slave 770 is more likely to contain a large time synchronization error than the slave 750. Therefore, the time synchronization of the slave 770 is obtained by multiplying each data by the reciprocal of the number of hops and taking the average. The influence of error can be reduced.

このような理由から、上記の式7〜式10に対して、それぞれホップ数の逆数を掛けた重み付け平均値を求めることによりスレーブ760に残留している時刻オフセットD'offsetをより正確に推定できる。   For this reason, the time offset D′ offset remaining in the slave 760 can be estimated more accurately by calculating the weighted average value obtained by multiplying the above formulas 7 to 10 by the reciprocal of the hop count. .

また、上記の説明では、マスタ−スレーブ間のホップ数の逆数を係数として重み付け平均を取る方法について述べたが、重み付け係数として、距離や遅延時間など他にも様々なパターンが考えられる。   In the above description, the method of taking a weighted average using the reciprocal of the number of hops between the master and the slave as a coefficient has been described, but various patterns such as distance and delay time can be considered as the weighting coefficient.

以上の説明では、スレーブ790に着目して説明したが、他のスレーブにおいても同様の処理を行うことにより、各スレーブに残留している時刻オフセットを求めることができる。   In the above description, the description has been given focusing on the slave 790, but the time offset remaining in each slave can be obtained by performing the same processing in the other slaves.

<効果>
次に、本発明を実施するための第2の実施の形態の効果について説明する。
本発明を実施するための第2の実施の形態では、スレーブ間の片方向遅延時間差が一意な値とならない場合でも、得られた片方向遅延時間差に平均化処理を施すことにより、スレーブに残留している時刻オフセット量を推定する。
<Effect>
Next, the effect of the second embodiment for carrying out the present invention will be described.
In the second embodiment for carrying out the present invention, even if the one-way delay time difference between slaves does not become a unique value, averaging is performed on the obtained one-way delay time difference so that it remains in the slave. Estimate the amount of time offset.

これにより、最も確からしい時刻オフセット量を算出することができ、正確な時刻同期システムを実現できるので、本発明の目的を達成することができる。   As a result, the most probable time offset amount can be calculated, and an accurate time synchronization system can be realized, so that the object of the present invention can be achieved.

尚、上述した本発明の装置は、上記説明からも明らかなように、ハードウェアで構成することも可能であるが、コンピュータプログラムにより実現することも可能である。   It should be noted that the device of the present invention described above can be configured by hardware, as is apparent from the above description, but can also be realized by a computer program.

プログラムメモリに格納されているプログラムで動作するプロセッサによって、上述した実施の形態と同様の機能、動作を実現させる。尚、上述した実施の形態の一部の機能のみをコンピュータプログラムにより実現することも可能である。   Functions and operations similar to those of the above-described embodiments are realized by a processor that operates with a program stored in a program memory. Note that only a part of the functions of the above-described embodiment can be realized by a computer program.

図1は、時刻同期アルゴリズムを説明するための図である。FIG. 1 is a diagram for explaining a time synchronization algorithm. 図2は、スイッチにバウンダリークロックを組み込んだ場合の構成図である。FIG. 2 is a configuration diagram when a boundary clock is incorporated in the switch. 図3は、ルーティング経路が非対称である場合を説明するための図である。FIG. 3 is a diagram for explaining a case where the routing path is asymmetric. 図4は、ルーティング経路が非対称である場合に生じる精度劣化の影響を説明するための図である。FIG. 4 is a diagram for explaining the influence of accuracy degradation that occurs when the routing path is asymmetric. 図5は、本発明の時刻同期システムの構成図である。FIG. 5 is a block diagram of the time synchronization system of the present invention. 図6は、第1の実施の形態の動作を示すフローである。FIG. 6 is a flow showing the operation of the first embodiment. 図7は、スレーブ510とマスタ520の間のルーティング経路の一例である。FIG. 7 is an example of a routing path between the slave 510 and the master 520. 図8は、スレーブ510とマスタ500の間のルーティング経路の一例である。FIG. 8 is an example of a routing path between the slave 510 and the master 500. 図9は、パケットの伝播方向によって生じる伝播遅延時間差を説明するための図である。FIG. 9 is a diagram for explaining a propagation delay time difference caused by the propagation direction of a packet. 図10は、マスタノード500とスレーブノード530とのルーティング経路の一例である。FIG. 10 is an example of a routing path between the master node 500 and the slave node 530. 図11は、マスタノード520とスレーブノード540とのルーティング経路の一例である。FIG. 11 is an example of a routing path between the master node 520 and the slave node 540. 図12は、マスタノード500とスレーブノード550とのルーティング経路の一例である。FIG. 12 is an example of a routing path between the master node 500 and the slave node 550. 図13は、時刻同期誤差が残留することを説明するための図である。FIG. 13 is a diagram for explaining that the time synchronization error remains. 図14は、スレーブ530とスレーブ550とのルーティング経路の一例である。FIG. 14 is an example of a routing path between the slave 530 and the slave 550. 図15は、スレーブ510とスレーブ530とのルーティング経路の一例である。FIG. 15 is an example of a routing path between the slave 510 and the slave 530. 図16は、スレーブ510とスレーブ540とのルーティング経路の一例である。FIG. 16 is an example of a routing path between the slave 510 and the slave 540. 図17は、スレーブ間の片方向遅延時間差が一意な値に収まらないケースを説明するための図である。FIG. 17 is a diagram for explaining a case where the one-way delay time difference between slaves does not fall within a unique value. 図18は、片方向遅延時間差をプロットしたグラフである。FIG. 18 is a graph plotting the one-way delay time difference.

符号の説明Explanation of symbols

500、520 マスタ
510、530、540、550 スレーブ
560 ネットワーク
501 パケット送受信部
502 経路調査部
503 経路比較部
504 遅延測定部
505 時刻同期部
511 パケット送受信部
512 経路調査部
513 経路比較部
514 遅延測定部
515 時刻同期部
500, 520 Master 510, 530, 540, 550 Slave 560 Network 501 Packet transmission / reception unit 502 Path inspection unit 503 Path comparison unit 504 Delay measurement unit 505 Time synchronization unit 511 Packet transmission / reception unit 512 Path inspection unit 513 Path comparison unit 514 Delay measurement unit 515 Time synchronization unit

Claims (37)

時刻同期システムであって、
マスタノードとスレーブノードとの間の往復のルーティング経路を調査する経路調査手段と、
前記調査の結果、往復のルーティング経路が対称であるマスタノードとスレーブノードとの間の時刻オフセットを補正して互いの時刻を同期させる時刻同期手段と
を備えていることを特徴とする時刻同期システム。
A time synchronization system,
A route investigation means for examining a round-trip routing route between the master node and the slave node;
As a result of the investigation, a time synchronization system comprising time synchronization means for correcting a time offset between a master node and a slave node whose round-trip routing paths are symmetric and synchronizing each other's time .
前記時刻同期手段は、スレーブノードの時刻をマスタノードの時刻に合わせるように時刻オフセットを補正することを特徴とする請求項1に記載の時刻同期システム。   The time synchronization system according to claim 1, wherein the time synchronization unit corrects the time offset so that the time of the slave node matches the time of the master node. 前記経路調査手段は、ネットワーク層における往復の伝送経路を調査することを特徴とする請求項1又は請求項2に記載の時刻同期システム。   The time synchronization system according to claim 1, wherein the route investigation unit investigates a round-trip transmission route in the network layer. 往復のルーティング経路が対称であるマスタノードとの間の時刻オフセットを補正したスレーブノードに残留している片方向遅延誤差を測定する遅延測定手段を有し、
前記時刻同期手段は、前記測定された片方向遅延誤差に基づいて、スレーブノードの時刻を更に補正することを特徴とする請求項1から請求項3のいずれかに記載の時刻同期システム。
A delay measuring means for measuring a one-way delay error remaining in a slave node corrected for a time offset with respect to a master node having a round-trip routing path;
4. The time synchronization system according to claim 1, wherein the time synchronization unit further corrects the time of the slave node based on the measured one-way delay error.
前記遅延測定手段は、前記経路調査手段が前記マスタノードとは異なるノードと前記スレーブノードとのルーティング経路を調査して、前記片方向遅延誤差の測定に用いると決定したノードと、前記スレーブノードとの間の往復の片方向遅延時間の非対称量を測定することによって、前記片方向遅延誤差を測定することを特徴とする請求項4に記載の時刻同期システム。   The delay measuring unit is configured to investigate a routing route between the node different from the master node and the slave node by the route investigating unit, and determine the node to be used for measuring the one-way delay error; and the slave node; 5. The time synchronization system according to claim 4, wherein the one-way delay error is measured by measuring an asymmetry amount of a one-way delay time of a round trip between the two. 前記経路調査手段は、前記マスタノードとは異なるノードと前記スレーブノードとの往復のルーティング経路が対称であり、このルーティング経路と、前記マスタノードと前記スレーブノードとの間のルーティング経路とに重なる経路がない場合に、前記片方向遅延誤差の測定に用いるノードと決定することを特徴とする請求項5に記載の時刻同期システム。   The route check means is configured such that a round-trip routing route between a node different from the master node and the slave node is symmetric, and a route overlapping the routing route and a routing route between the master node and the slave node 6. The time synchronization system according to claim 5, wherein when there is no node, the node is determined as a node used for measuring the one-way delay error. 前記マスタノードとは異なるノードは、マスタノード、または既にマスタノードと時刻を同期させているスレーブノードであることを特徴とする請求項5又は請求項6に記載の時刻同期システム。   7. The time synchronization system according to claim 5, wherein the node different from the master node is a master node or a slave node that has already synchronized the time with the master node. 前記遅延測定手段は、前記片方向遅延時間が対称となる、前記マスタノードとは異なるノードが少なくとも1つ存在する場合には、前記スレーブノードの時刻を補正しないと決定することを特徴とする請求項5から請求項7のいずれかに記載の時刻同期システム。   The delay measuring means determines that the time of the slave node is not corrected when there is at least one node different from the master node in which the one-way delay time is symmetric. The time synchronization system according to any one of claims 5 to 7. 前記遅延測定手段は、前記片方向遅延時間が対称となるようなノードが1つも存在しない場合には、往復の片方向遅延時間の非対称量に基づいて、前記片方向遅延誤差を決定することを特徴とする請求項5から請求項7のいずれかに記載の時刻同期システム。   The delay measuring unit determines the one-way delay error based on an asymmetry amount of a round-trip one-way delay time when there is no node whose one-way delay time is symmetric. The time synchronization system according to any one of claims 5 to 7, characterized in that 前記遅延測定手段は、前記スレーブノードと、前記マスタノードとは異なる複数のノードとの間の片方向遅延時間の非対称量の平均値を元にして、前記片方向遅延誤差を決定することを特徴とする請求項9に記載の時刻同期システム。   The delay measuring means determines the one-way delay error based on an average value of a one-way delay time asymmetry between the slave node and a plurality of nodes different from the master node. The time synchronization system according to claim 9. 前記遅延測定手段は、前記スレーブノードと、前記マスタノードとは異なる複数のノードとの間の片方向遅延時間の重み付け平均値を元にして、前記片方向遅延誤差を決定することを特徴とする請求項9に記載の時刻同期システム。   The delay measuring means determines the one-way delay error based on a weighted average value of one-way delay times between the slave node and a plurality of nodes different from the master node. The time synchronization system according to claim 9. 前記重み付け平均値の重み付け係数は、前記マスタノードとは異なる複数のノードとそのノードが時刻同期を行ったマスタノードの間のホップ数の逆数であることを特徴とする請求項11に記載の時刻同期システム。   12. The time according to claim 11, wherein the weighting coefficient of the weighted average value is a reciprocal of the number of hops between a plurality of nodes different from the master node and the master node with which the node has performed time synchronization. Synchronous system. 時刻同期方法であって、
マスタノードとスレーブノードとの間の往復のルーティング経路を調査する経路調査ステップと、
前記調査の結果、往復のルーティング経路が対称である場合、マスタノードの時刻にスレーブノードの時刻を合わせるように補正する時刻同期ステップと
を有することを特徴とする時刻同期方法。
A time synchronization method,
A route investigation step for examining a round-trip routing route between the master node and the slave node;
As a result of the investigation, when the round-trip routing path is symmetric, the time synchronization method includes a time synchronization step of correcting the time of the slave node to match the time of the master node.
前記経路調査ステップは、マスタノードとスレーブノードとの間の往復の経路上に存在するルータを調査することを特徴とする請求項13に記載の時刻同期方法。   14. The time synchronization method according to claim 13, wherein the route investigation step investigates a router that exists on a round-trip route between a master node and a slave node. 前記経路調査ステップは、ネットワーク層における往復の伝送経路を調査することを特徴とする請求項13又は請求項14に記載の時刻同期方法。   The time synchronization method according to claim 13 or 14, wherein the route investigation step investigates a round-trip transmission route in the network layer. 往復のルーティング経路が対称であるマスタノードとの間の時刻オフセットを補正したスレーブノードに残留している片方向遅延誤差を測定する遅延測定ステップと、
前記測定された片方向遅延誤差に基づいて、スレーブノードの時刻を補正する補正ステップと
を有することを特徴とする請求項13から請求項15のいずれかに記載の時刻同期方法。
A delay measurement step of measuring a one-way delay error remaining in a slave node that corrects a time offset with respect to a master node having a symmetrical round-trip routing path;
The time synchronization method according to claim 13, further comprising a correction step of correcting the time of the slave node based on the measured one-way delay error.
前記遅延測定ステップは、
前記マスタノードとは異なるノードと前記スレーブノードとのルーティング経路を調査して前記片方向遅延誤差の測定に用いるノードを決定する決定ステップと、
前記決定されたノードと、前記スレーブノードとの間の往復の片方向遅延時間の非対称量に基づいて前記片方向遅延誤差を測定するステップと
を有することを特徴とする請求項16に記載の時刻同期方法。
The delay measuring step includes:
A determination step of determining a node to be used for measuring the one-way delay error by examining a routing path between a node different from the master node and the slave node;
The time according to claim 16, further comprising the step of measuring the one-way delay error based on an asymmetry amount of a one-way delay time in a round-trip between the determined node and the slave node. Synchronization method.
前記決定ステップは、前記マスタノードとは異なるノードと前記スレーブノードとの往復のルーティング経路が対称であり、このルーティング経路と、前記マスタノードと前記スレーブノードとの間のルーティング経路とに重なる経路がない場合に、前記片方向遅延誤差の測定に用いるノードと決定することを特徴とする請求項17に記載の時刻同期方法。   In the determining step, a round trip routing path between a node different from the master node and the slave node is symmetric, and a path overlapping the routing path and a routing path between the master node and the slave node is 18. The time synchronization method according to claim 17, wherein if there is no node, the node is determined to be a node used for measurement of the one-way delay error. 前記マスタノードとは異なるノードは、マスタノード、または既にマスタノードと時刻を同期させているスレーブノードであることを特徴とする請求項17又は請求項18に記載の時刻同期方法。   The time synchronization method according to claim 17 or 18, wherein the node different from the master node is a master node or a slave node that has already synchronized the time with the master node. 前記遅延測定ステップは、前記片方向遅延時間が対称となる、前記マスタノードとは異なるノードが少なくとも1つ存在する場合には、前記スレーブノードの時刻を補正しないと決定することを特徴とする請求項17から請求項19のいずれかに記載の時刻同期方法。   The delay measuring step determines that the time of the slave node is not corrected when there is at least one node different from the master node in which the one-way delay time is symmetric. The time synchronization method according to claim 17. 前記遅延測定ステップは、前記片方向遅延時間が対称となるようなノードが1つも存在しない場合には、往復の片方向遅延時間の非対称量に基づいて、前記片方向遅延誤差を決定することを特徴とする請求項17から請求項19のいずれかに記載の時刻同期方法。   The delay measuring step determines the one-way delay error based on an asymmetry amount of a round-trip one-way delay time when there is no node in which the one-way delay time is symmetric. The time synchronization method according to any one of claims 17 to 19, wherein the time synchronization method is characterized in that 前記遅延測定ステップは、前記スレーブノードと、前記マスタノードとは異なる複数のノードとの間の片方向遅延時間の非対称量の平均値を元にして、前記片方向遅延誤差を決定することを特徴とする請求項21に記載の時刻同期方法。   The delay measuring step determines the one-way delay error based on an average value of an asymmetry amount of one-way delay time between the slave node and a plurality of nodes different from the master node. The time synchronization method according to claim 21. 前記遅延測定ステップは、前記スレーブノードと、前記マスタノードとは異なる複数のノードとの間の片方向遅延時間の重み付け平均値を元にして、前記片方向遅延誤差を決定することを特徴とする請求項21に記載の時刻同期方法。   The delay measuring step determines the one-way delay error based on a weighted average value of one-way delay times between the slave node and a plurality of nodes different from the master node. The time synchronization method according to claim 21. 前記遅延測定ステップは、前記マスタノードとは異なる複数のノードとそのノードが時刻同期を行ったマスタノードの間のホップ数の逆数を前記重み付け平均値の重み付け係数にして、前記片方向遅延誤差を決定することを特徴とする請求項23に記載の時刻同期方法。   In the delay measurement step, the one-way delay error is calculated by using a reciprocal of the number of hops between a plurality of nodes different from the master node and a master node with which the time synchronization is performed as a weighting coefficient of the weighted average value. The time synchronization method according to claim 23, wherein the time synchronization method is determined. 時刻を同期するプログラムであって、前記プログラムは前記ノードに、
マスタノードと自ノードとの間の往復のルーティング経路を調査する経路調査処理と、
前記調査の結果、往復のルーティング経路が対称である場合、マスタノードの時刻に自ノードの時刻を合わせるように補正する時刻同期処理と
を実行させることを特徴とするプログラム。
A program that synchronizes time, the program to the node,
A route investigation process for examining a round-trip routing route between the master node and the own node;
As a result of the investigation, when the round-trip routing path is symmetric, a time synchronization process for correcting the time of the own node to be matched with the time of the master node is executed.
前記経路調査処理は、マスタノードと自ノードとの間の往復の経路上に存在するルータを調査することを特徴とする請求項25に記載のプログラム。   26. The program according to claim 25, wherein the route investigation processing investigates a router existing on a round-trip route between the master node and the own node. 前記経路調査処理は、ネットワーク層における往復の伝送経路を調査することを特徴とする請求項25又は請求項26に記載のプログラム。   27. The program according to claim 25 or claim 26, wherein the route investigation processing investigates a round-trip transmission route in the network layer. 往復のルーティング経路が対称であるマスタノードとの間の時刻オフセットを補正後に自ノードに残留している片方向遅延誤差を測定する遅延測定処理と、
前記測定された片方向遅延誤差に基づいて、自ノードの時刻を補正する補正処理と
を更に実行させることを特徴とする請求項25から請求項27のいずれかに記載のプログラム。
A delay measurement process for measuring a one-way delay error remaining in the self-node after correcting a time offset with a master node in which a round-trip routing path is symmetric;
28. The program according to claim 25, further executing a correction process for correcting the time of the own node based on the measured one-way delay error.
前記遅延測定処理は、
前記マスタノードとは異なるノードと自ノードとのルーティング経路を調査して前記片方向遅延誤差の測定に用いるノードを決定する決定処理と、
前記決定されたノードと、前記自ノードとの間の往復の片方向遅延時間の非対称量に基づいて前記片方向遅延誤差を測定する処理と
を有することを特徴とする請求項28に記載のプログラム。
The delay measurement process includes:
A determination process for determining a node to be used for measuring the one-way delay error by examining a routing path between a node different from the master node and the own node;
29. The program according to claim 28, further comprising: a process of measuring the one-way delay error based on an asymmetry amount of a one-way delay time of a round trip between the determined node and the own node. .
前記決定処理は、前記マスタノードとは異なるノードと自ノードとの往復のルーティング経路が対称であり、このルーティング経路と、前記マスタノードと自ノードとの間のルーティング経路とに重なる経路がない場合に、前記片方向遅延誤差の測定に用いるノードと決定する処理であることを特徴とする請求項29に記載のプログラム。   In the determination process, a round trip routing path between a node different from the master node and the own node is symmetric, and there is no route that overlaps the routing path and a routing path between the master node and the own node. 30. The program according to claim 29, which is a process of determining a node to be used for measuring the one-way delay error. 前記マスタノードとは異なるノードは、マスタノード、または既にマスタノードと時刻を同期させているスレーブノードであることを特徴とする請求項29又は請求項30に記載のプログラム。   31. The program according to claim 29, wherein the node different from the master node is a master node or a slave node whose time is already synchronized with the master node. 前記遅延測定処理は、前記片方向遅延時間が対称となる、前記マスタノードとは異なるノードが少なくとも1つ存在する場合には、前記スレーブノードの時刻を補正しないと決定する処理であることを特徴とする請求項29から請求項31のいずれかに記載のプログラム。   The delay measurement process is a process of determining that the time of the slave node is not corrected when there is at least one node different from the master node in which the one-way delay time is symmetric. 32. The program according to any one of claims 29 to 31. 前記遅延測定処理は、前記片方向遅延時間が対称となるようなノードが1つも存在しない場合には、往復の片方向遅延時間の非対称量に基づいて、前記片方向遅延誤差を決定する処理であることを特徴とする請求項29から請求項31のいずれかに記載のプログラム。   The delay measurement process is a process for determining the one-way delay error based on an asymmetry amount of a round-trip one-way delay time when there is no single node in which the one-way delay time is symmetric. 32. The program according to claim 29, wherein there is a program. 前記遅延測定処理は、自ノードと、前記マスタノードとは異なる複数のノードとの間の片方向遅延時間の非対称量の平均値を元にして、前記片方向遅延誤差を決定する処理であることを特徴とする請求項33に記載のプログラム。   The delay measurement process is a process of determining the one-way delay error based on an average value of the asymmetry amount of the one-way delay time between the own node and a plurality of nodes different from the master node. 34. The program according to claim 33. 前記遅延測定処理は、自ノードと、前記マスタノードとは異なる複数のノードとの間の片方向遅延時間の重み付け平均値を元にして、前記片方向遅延誤差を決定する処理であることを特徴とする請求項33に記載のプログラム。   The delay measurement process is a process of determining the one-way delay error based on a weighted average value of one-way delay times between the own node and a plurality of nodes different from the master node. The program according to claim 33. 前記遅延測定処理は、前記マスタノードとは異なる複数のノードとそのノードが時刻同期を行ったマスタノードの間のホップ数の逆数を前記重み付け平均値の重み付け係数にして、前記片方向遅延誤差を決定する処理であることを特徴とする請求項35に記載のプログラム。   The delay measurement process uses the reciprocal of the number of hops between a plurality of nodes different from the master node and the master node with which the node has performed time synchronization as a weighting coefficient of the weighted average value, and calculates the one-way delay error. 36. The program according to claim 35, wherein the program is a determining process. 時刻を同期させるノードであって、
マスタノードとの間の往復のルーティング経路を調査する経路調査手段と、
前記調査の結果、往復のルーティング経路が対称であるマスタノードとの間の時刻オフセットを補正して互いの時刻を同期させる時刻同期手段と
を備えていることを特徴とするノード。
A node that synchronizes time,
A route investigation means for examining a round-trip routing route to and from the master node;
A node comprising: time synchronization means for correcting a time offset with a master node having a symmetrical round-trip routing path as a result of the investigation, and synchronizing each other's time.
JP2007233581A 2007-09-10 2007-09-10 Time synchronizing system, time synchronizing method, node, and program Pending JP2009065579A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007233581A JP2009065579A (en) 2007-09-10 2007-09-10 Time synchronizing system, time synchronizing method, node, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007233581A JP2009065579A (en) 2007-09-10 2007-09-10 Time synchronizing system, time synchronizing method, node, and program

Publications (1)

Publication Number Publication Date
JP2009065579A true JP2009065579A (en) 2009-03-26

Family

ID=40559728

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007233581A Pending JP2009065579A (en) 2007-09-10 2007-09-10 Time synchronizing system, time synchronizing method, node, and program

Country Status (1)

Country Link
JP (1) JP2009065579A (en)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011188572A (en) * 2010-03-05 2011-09-22 Hitachi Ltd Protective relay device and current differential protective relay device
JP2013501433A (en) * 2009-08-14 2013-01-10 中興通訊股▲ふん▼有限公司 Method and system for optical transmission network carrying time synchronization protocol
JP2013509744A (en) * 2009-09-17 2013-03-14 ▲ホア▼▲ウェイ▼技術有限公司 Method and clock device for processing high precision time protocol messages
CN103119872A (en) * 2010-09-20 2013-05-22 阿尔卡特朗讯 Method for correcting an asymmetry in a delay
EP2595331A2 (en) 2011-11-16 2013-05-22 Fujitsu Limited Communication apparatus for performing time synchronization
WO2013190602A1 (en) 2012-06-19 2013-12-27 日本電気株式会社 Clock synchronization system, clock synchronization method, and storage medium whereupon clock synchronization program is stored
JP2014500672A (en) * 2010-12-01 2014-01-09 アルカテル−ルーセント Transparent clock tunnel follow-up message
WO2014016993A1 (en) * 2012-07-27 2014-01-30 日本電気株式会社 Communication apparatus, time synchronization system, and time synchronization method
EP2701318A1 (en) * 2012-08-22 2014-02-26 Alcatel Lucent A method for synchronizing distributed clocks by the precision time protocol, in a telecommunication network
US8730868B2 (en) 2011-03-30 2014-05-20 Hitachi, Ltd. Network node, time synchronization method and network system
KR20150038294A (en) * 2012-09-11 2015-04-08 미쓰비시덴키 가부시키가이샤 Correction parameter calculation device and system, correction parameter calculation method, and computer program
JP2015188159A (en) * 2014-03-26 2015-10-29 東日本電信電話株式会社 Slave node, time synchronization method, and computer program
JP2016508337A (en) * 2013-01-07 2016-03-17 マイクロセミ フリクエンシー アンド タイム コーポレーション General asymmetric correction for packet timing protocols
JP2016152488A (en) * 2015-02-17 2016-08-22 日本電信電話株式会社 Time synchronization method and time synchronization device
JP2016178423A (en) * 2015-03-19 2016-10-06 株式会社富士通アドバンストエンジニアリング Communication apparatus, communication route acquisition method, communication route acquisition program and communication network system
JP2019146052A (en) * 2018-02-22 2019-08-29 日本電信電話株式会社 Time path selection device and time path selection method
WO2020149103A1 (en) * 2019-01-16 2020-07-23 日本電気株式会社 Monitoring system and synchronization method
CN114222360A (en) * 2021-12-21 2022-03-22 南京欧珀软件科技有限公司 Time synchronization method, system and related device
US20220210039A1 (en) * 2020-12-28 2022-06-30 Microsoft Technology Licensing, Llc Network latency estimation in distributed computing systems
US20220360511A1 (en) * 2020-12-28 2022-11-10 Microsoft Technology Licensing, Llc Network latency estimation in distributed computing systems
CN116614199A (en) * 2023-07-14 2023-08-18 腾讯科技(深圳)有限公司 Clock synchronization method, device, slave clock equipment, clock synchronization system and medium

Cited By (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013501433A (en) * 2009-08-14 2013-01-10 中興通訊股▲ふん▼有限公司 Method and system for optical transmission network carrying time synchronization protocol
JP2013509744A (en) * 2009-09-17 2013-03-14 ▲ホア▼▲ウェイ▼技術有限公司 Method and clock device for processing high precision time protocol messages
JP2011188572A (en) * 2010-03-05 2011-09-22 Hitachi Ltd Protective relay device and current differential protective relay device
CN103119872A (en) * 2010-09-20 2013-05-22 阿尔卡特朗讯 Method for correcting an asymmetry in a delay
JP2013538022A (en) * 2010-09-20 2013-10-07 アルカテル−ルーセント Method for correcting delay asymmetry
KR101479483B1 (en) 2010-09-20 2015-01-06 알까뗄 루슨트 Method for correcting an asymmetry in a delay
JP2014500672A (en) * 2010-12-01 2014-01-09 アルカテル−ルーセント Transparent clock tunnel follow-up message
US8730868B2 (en) 2011-03-30 2014-05-20 Hitachi, Ltd. Network node, time synchronization method and network system
EP2595331A2 (en) 2011-11-16 2013-05-22 Fujitsu Limited Communication apparatus for performing time synchronization
US8964790B2 (en) 2011-11-16 2015-02-24 Fujitsu Limited Communication apparatus
WO2013190602A1 (en) 2012-06-19 2013-12-27 日本電気株式会社 Clock synchronization system, clock synchronization method, and storage medium whereupon clock synchronization program is stored
US9634782B2 (en) 2012-06-19 2017-04-25 Nec Corporation Clock synchronization system, clock synchronization method, and storage medium whereupon clock synchronization program is stored
WO2014016993A1 (en) * 2012-07-27 2014-01-30 日本電気株式会社 Communication apparatus, time synchronization system, and time synchronization method
US9258106B2 (en) 2012-07-27 2016-02-09 Nec Corporation Communication apparatus, time synchronization system, and time synchronization method
US9876629B2 (en) 2012-07-27 2018-01-23 Nec Corporation Communication apparatus, time synchronization system, and time synchronization method
EP2701318A1 (en) * 2012-08-22 2014-02-26 Alcatel Lucent A method for synchronizing distributed clocks by the precision time protocol, in a telecommunication network
JP2015531216A (en) * 2012-08-22 2015-10-29 アルカテル−ルーセント Method for synchronizing distribution clocks with a high precision time protocol in a communication network
CN104584468A (en) * 2012-08-22 2015-04-29 阿尔卡特朗讯公司 A method for synchronizing distributed clocks by the precision time protocol, in a telecommunication network
US9438364B2 (en) 2012-08-22 2016-09-06 Alcatel Lucent Method for synchronizing distributed clocks by the precision time protocol, in a telecommunication network
WO2014029533A1 (en) * 2012-08-22 2014-02-27 Alcatel Lucent A method for synchronizing distributed clocks by the precision time protocol, in a telecommunication network
KR101685856B1 (en) 2012-09-11 2016-12-12 미쓰비시덴키 가부시키가이샤 Correction parameter calculation device and system, correction parameter calculation method, and computer program
KR20150038294A (en) * 2012-09-11 2015-04-08 미쓰비시덴키 가부시키가이샤 Correction parameter calculation device and system, correction parameter calculation method, and computer program
JP2016508337A (en) * 2013-01-07 2016-03-17 マイクロセミ フリクエンシー アンド タイム コーポレーション General asymmetric correction for packet timing protocols
JP2015188159A (en) * 2014-03-26 2015-10-29 東日本電信電話株式会社 Slave node, time synchronization method, and computer program
JP2016152488A (en) * 2015-02-17 2016-08-22 日本電信電話株式会社 Time synchronization method and time synchronization device
JP2016178423A (en) * 2015-03-19 2016-10-06 株式会社富士通アドバンストエンジニアリング Communication apparatus, communication route acquisition method, communication route acquisition program and communication network system
JP2019146052A (en) * 2018-02-22 2019-08-29 日本電信電話株式会社 Time path selection device and time path selection method
WO2019163680A1 (en) * 2018-02-22 2019-08-29 日本電信電話株式会社 Time path selection device and time path selection method
US11240141B2 (en) 2018-02-22 2022-02-01 Nippon Telegraph And Telephone Corporation Time path selection device and time path selection method
WO2020149103A1 (en) * 2019-01-16 2020-07-23 日本電気株式会社 Monitoring system and synchronization method
JPWO2020149103A1 (en) * 2019-01-16 2021-11-11 日本電気株式会社 Monitoring system and synchronization method
US20220210039A1 (en) * 2020-12-28 2022-06-30 Microsoft Technology Licensing, Llc Network latency estimation in distributed computing systems
US11431599B2 (en) * 2020-12-28 2022-08-30 Microsoft Technology Licensing, Llc Network latency estimation in distributed computing systems
US20220360511A1 (en) * 2020-12-28 2022-11-10 Microsoft Technology Licensing, Llc Network latency estimation in distributed computing systems
US11563662B2 (en) * 2020-12-28 2023-01-24 Microsoft Technology Licensing, Llc Network latency estimation in distributed computing systems
CN114222360A (en) * 2021-12-21 2022-03-22 南京欧珀软件科技有限公司 Time synchronization method, system and related device
CN114222360B (en) * 2021-12-21 2023-09-12 南京欧珀软件科技有限公司 Time synchronization method, system and related device
CN116614199A (en) * 2023-07-14 2023-08-18 腾讯科技(深圳)有限公司 Clock synchronization method, device, slave clock equipment, clock synchronization system and medium
CN116614199B (en) * 2023-07-14 2023-10-17 腾讯科技(深圳)有限公司 Clock synchronization method, device, slave clock equipment, clock synchronization system and medium

Similar Documents

Publication Publication Date Title
JP2009065579A (en) Time synchronizing system, time synchronizing method, node, and program
US9438364B2 (en) Method for synchronizing distributed clocks by the precision time protocol, in a telecommunication network
US9819541B2 (en) PTP over IP in a network topology with clock redundancy for better PTP accuracy and stability
US8953645B2 (en) Communication system, communication apparatus and time synchronization method
JP5358813B2 (en) Network node, time synchronization method, and network system
JP6147467B2 (en) Frame transmission apparatus and synchronization method
US9806835B2 (en) Clock synchronization using multiple network paths
US9331837B2 (en) Method and device for detecting 1588 time error between network elements
US20150016478A1 (en) Network distributed packet-based synchronization
EP2541815B1 (en) Clock synchronization network
EP3035569B1 (en) Method of time tansfer in a communication network
KR101807745B1 (en) A method for detecting timing references affected by a change in path delay asymmetry between nodes in a communications network
US9651984B2 (en) Feed-forward time transfer mechanism for time synchronization
JP2013138312A5 (en)
JP6481807B2 (en) Time synchronization method, network system, CPU, relay device, and user device
EP2458757B1 (en) A method for transmitting IEEE 1588V2 synchronization packets over ethernet in link-by-link mode, via network elements having a transparent clock, and associated help device
US20230231641A1 (en) Link profiling for asymmetric delay compensation
KR101344596B1 (en) Clock synchronization method of single ring network based on hsr(high-availability seamless redundancy) protocol
JP7472989B2 (en) Delay measurement device, delay measurement method, and delay measurement program
JP2022052785A (en) Time synchronization system and time synchronization method
Gamage et al. One-Way End-to-End Path Delay Measurement for Sr/Srv6 Traffic Engineering Policies Without Clock Synchronization in Software Defined Networks
CN117957796A (en) Asymmetric delay compensation
JP2014116672A (en) Relay device and relay method
JP2017076978A (en) Communication control device
JP2015109555A (en) Communication device, time synchronization method, and time synchronization program