Time synchronization client, time synchronization method, and time synchronization program

The time synchronization client addresses rollover issues by monitoring for time rollovers and controlling adjustments, ensuring stable and accurate time synchronization.

JP2025125434APending Publication Date: 2025-08-27MITSUBISHI ELECTRIC CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024021487
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-02-15
Publication Date
2025-08-27

AI Technical Summary

Technical Problem

Existing time synchronization systems face issues when a rollover occurs in a grandmaster device, leading to incorrect initial time transmission, causing corruption of the time synchronization client's internal state, sudden time changes that disrupt applications, and prolonged synchronization times.

Method used

A time synchronization client equipped with a rollover monitoring unit that determines if a rollover has occurred by comparing the time in synchronization messages with a threshold, controlling time adjustments accordingly, and optionally notifying external devices or returning to an initialized state.

Benefits of technology

Prevents corruption of the time synchronization client's state, avoids sudden time changes, and ensures timely synchronization by appropriately handling rollover events, thereby maintaining system stability and application integrity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025125434000001_ABST
    Figure 2025125434000001_ABST
Patent Text Reader

Abstract

To make it possible to appropriately respond when time information is supplied from a device in which a rollover has occurred.SOLUTION: A rollover monitoring unit 136 determines that a rollover has occurred when a time indicated in a time synchronization message is later than a threshold time. When the rollover monitoring unit 136 determines that no rollover has occurred, a time adjustment unit 135 adjusts the time based on the time synchronization message. When the rollover monitoring unit 136 determines that a rollover has occurred, the time adjustment unit 135 stops adjusting the time based on the time synchronization message.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a technique for preventing synchronization to an incorrect time. [Background technology]

[0002] Time synchronization is standardized by IEEE1588 and IEEE802.1AS. IEEE1588 is a standard related to PTP. PTP stands for Precision Time Protocol. Time synchronization systems that transfer time synchronization messages such as IEEE1588 have a master and slave structure. In a time synchronization system, time is supplied from a grandmaster, which serves as the clock source, and time synchronization clients perform time synchronization using the time transferred by relay devices.

[0003] In IEEE1588 time synchronization, in the case of end-to-end delay measurement, transmission path delay is measured using Delay Request and Delay Response (see Figure 16 in Non-Patent Document 1). In the case of peer-to-peer delay, transmission path delay is measured using Pdelay Request and Pdelay Response (see Figure 17 in Non-Patent Document 1). In both methods, time adjustment is then performed upon receipt of a Sync message and a FollowUp message. In Non-Patent Document 1, time adjustment is triggered by receipt of a Sync message if the method is not two-step, and by receipt of a FollowUp message if the method is two-step (see Figures 37 and 38 of Non-Patent Document 1). At this time, the conditions of the time synchronization State Machine are checked, and if the conditions for time synchronization are met, time adjustment is performed.

[0004] In IEEE1588, time correction is performed during synchronization and syntonization, or during synchronization or syntonization. For time correction, a correction value is calculated and the time is adjusted based on the calculated correction value. Methods of time adjustment based on correction values ​​are not covered by IEEE1588. Generally, there are methods of correcting the time all at once and methods of correcting the time gradually. For example, in NTP Version 4, the method of correcting the time all at once is called STEP, and the method of correcting the time gradually is called SLEW (see Chapter 5 of RFC5905). NTP stands for Network Time Protocol. With STEP, the time is adjusted all at once using the settimeofday function. With SLEW, the time is adjusted gradually using the adjtime function. The time adjustment method is determined taking into consideration the impact on applications that reference the time. The initial setting is often to perform a one-time correction for the first time adjustment immediately after startup, and then gradually correct the time thereafter.

[0005] IEEE1588 defines the BMCA algorithm, which determines the master clock from information included in Announce messages sent from multiple grandmasters (see Figure 33 in Non-Patent Document 1). BMCA stands for Best Master Clock algorithm. The message format of the Announce message defines the quality status of the grandmaster, such as ClockClass (see Tables 4 and 43 in Non-Patent Document 1). In BMCA, the grandmaster that is the time source is selected based on this quality status, etc.

[0006] Time synchronization devices such as grandmasters and relay devices have limitations on the time management range, and time rollovers can occur in the following two cases: (Case 1) GPS only has 10 bits for displaying the week. GPS stands for Global Positioning System. Therefore, after approximately 19.6 years have passed since 1980 / 1 / 1:00:00:00, the time will return to the original time of 1980 / 1 / 1:00:00:00. (Case 2) The OS of a device such as a grandmaster is only 32-bit. As a result, when the year 2038 arrives, the time will revert to the original time of 1970 / 1 / 1:00:00:00. This is the so-called Year 2038 problem.

[0007] Patent Document 1 describes a technique for correcting the time externally when a rollover occurs inside the device (Case 2). [Prior art documents] [Patent documents]

[0008] [Patent Document 1] International Publication No. 2021-014614 [Non-patent literature]

[0009] [Non-Patent Document 1] IEEE1588-2019 IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems P58-61, P90-92, P158-160,P171-173 [Non-patent document 2] IEEE Std 802.1ASTM-2020 Timing and Synchronization for Time Sensitive Applications P55-57 [Non-patent document 3] RFC5905 Network Time Protocol Version4 P10 Summary of the Invention [Problem to be solved by the invention]

[0010] When a rollover occurs in a grandmaster, etc., the initial time, in which all bits of the time information are 0, may be transmitted. In this case, when a time synchronization client performs time synchronization, the following three problems occur: (Issue 1) The internal state of the time synchronization client may become corrupted, making it impossible to synchronize time properly thereafter. (Issue 2) When time synchronization is performed all at once at the initial time, the time changes suddenly, which can cause abnormalities in applications that do not tolerate time changes. (Problem 3) When time synchronization is performed gradually to the initial time, it takes time to synchronize the time because the initial time is far from the current time.

[0011] The initial time may be sent during device startup and when the device is restarted. An example of a case that occurs during startup is when a rollover occurs at the grandmaster or relay device. Examples of cases where this occurs when restarting a device include when the grandmaster device is disconnected from a time source such as GPS while restarting a relay device, or when the grandmaster device is powered off and does not start up. In these cases, the relay device cannot obtain time from an external source, and may become the master clock based on the BMCA results, reading the initial time of the relay device's OS and distributing the time.

[0012] Patent Document 1 describes a technology for correcting the time from an external source when a rollover due to the Year 2038 problem occurs inside a time synchronization device. However, the technology described in Patent Document 1 does not address the case where time information is supplied from a device where a rollover has occurred.

[0013] An object of the present disclosure is to enable appropriate response when time information is supplied from a device in which a rollover has occurred. [Means for solving the problem]

[0014] The time synchronization client according to the present disclosure includes: a rollover monitoring unit that determines that a rollover has occurred when the time indicated in the time synchronization message is later than a threshold time; a time adjustment unit that adjusts the time based on the time synchronization message when the rollover monitoring unit determines that the rollover has not occurred, and stops adjusting the time based on the time synchronization message when the rollover monitoring unit determines that the rollover has occurred; Equipped with. [Effects of the Invention]

[0015] In this disclosure, based on the time indicated in the time synchronization message, it is determined whether a rollover has occurred in the time information supplier and whether or not to adjust the time is controlled, thereby making it possible to respond appropriately when time information is supplied from a device where a rollover has occurred. [Brief explanation of the drawings]

[0016] [Figure 1] 1 is a configuration diagram of a time synchronization system 100 according to a first embodiment. [Figure 2] FIG. 2 is a hardware configuration diagram of a time synchronization client 103 according to the first embodiment. [Figure 3] FIG. 2 is a configuration diagram of a time synchronization function of a time synchronization client 103 according to the first embodiment. [Figure 4] 10 is a flowchart of a process performed when a Sync message is received according to the first embodiment. [Figure 5] 10 is a flowchart of a process performed when a FollowUp message is received according to the first embodiment. [Figure 6] FIG. 10 is a configuration diagram of a time synchronization function of a time synchronization client 103 according to a second embodiment. [Figure 7] 10 is a flowchart of a process performed when a Sync message is received according to the second embodiment. [Figure 8] 10 is a flowchart of a process performed when a FollowUp message is received according to the second embodiment. [Figure 9]11 is a flowchart of a process performed when a Sync message is received according to the third embodiment. [Figure 10] 11 is a flowchart of a process performed when a FollowUp message is received according to the third embodiment. [Figure 11] 10 is a flowchart of a process performed when a Sync message is received according to the second modification. [Figure 12] 10 is a flowchart of a process performed when a FollowUp message is received according to Modification 2. DETAILED DESCRIPTION OF THE INVENTION

[0017] Embodiment 1 ***Configuration Description*** The configuration of a time synchronization system 100 according to the first embodiment will be described with reference to FIG. The time synchronization system 100 includes a grandmaster device 101, a relay device 102, and a time synchronization client 103. In Fig. 1, three relay devices 102, namely, relay devices 102a, 102b, and 102c, are shown as the relay devices 102. The grandmaster device 101, the relay devices 102, and the time synchronization client 103 are connected by a wired transmission path 104 such as Ethernet.

[0018] The grandmaster device 101 is the source of a time synchronization message containing time information. The relay device 102 is a device that relays the time synchronization message supplied from the grandmaster device 101. The time synchronization client 103 is a device that adjusts the time based on the time synchronization message to achieve time synchronization.

[0019] The hardware configuration of the time synchronization client 103 according to the first embodiment will be described with reference to Fig. 2. Fig. 2 shows a state in which the relay device 102 is omitted and the grandmaster device 101 and the time synchronization client 103 are directly connected. The time synchronization client 103 includes hardware such as a clock oscillator 110, a processor 111, a main memory 112, an internal clock 113, peripherals 114, and one or more physical ports 115. The processor 111 is connected to other hardware via a signal line 116. In FIG. 2, two physical ports 115, physical ports 115a and 115b, are shown.

[0020] The clock oscillator 110 is an element or device that supplies an operating clock to the processor 111. The processor 111 is an element or device that processes software that realizes time synchronization functions, etc. The main memory 112 is an element or device that stores instructions and data necessary for software processing, such as DRAM. DRAM stands for Dynamic Random Access Memory. The internal clock 113 is an element or device that manages the time in the time synchronization client 103. The peripheral 114 is an element or device that performs input / output to and from the time synchronization client 103, such as an element or device that performs input / output to and from a HDD. HDD stands for Hard Disk Drive. Software for time synchronization, etc. is stored on the HDD, etc. The physical port 115 is an element or circuit that transmits and receives IP packets, etc. via Ethernet with external devices such as the grandmaster device 101. IP stands for Internet Protocol. Software that realizes the time synchronization function and the like is loaded into the main memory 112 by the processor 111 and executed by the processor 111 to operate.

[0021] The grandmaster device 101 comprises hardware components, an external clock 120 and a physical port 121. The external clock 120 and the physical port 121 are connected by a signal line 122. The grandmaster device 101 supplies a time synchronization message indicating the time of the external clock 120 from the physical port 121.

[0022] The configuration of the time synchronization function of the time synchronization client 103 according to the first embodiment will be described with reference to FIG. The time synchronization client 103 includes a protocol processing unit 131, a time synchronization processing unit 132, a BMCA unit 133, a time measurement unit 134, a time adjustment unit 135, and a rollover monitoring unit 136 as functional components that realize the time synchronization function.

[0023] The protocol processing unit 131 has a function to terminate the protocol. The protocol processing unit 131 extracts a time synchronization message from a packet received via the physical port 115. The time synchronization processing unit 132 performs processing required for time synchronization. The BMCA unit 133 selects the grandmaster device 101 that will be the source of time information when performing time synchronization. The time measurement unit 134 measures the time difference between the time indicated in the time synchronization message and the time indicated by the internal clock 113. The time adjustment unit 135 adjusts the time of the internal clock 113 based on the time difference measured by the time measurement unit 134. The rollover monitoring unit 136 determines whether a rollover has occurred in the grandmaster device 101 that is the source of time information, and controls the time adjustment unit 135.

[0024] ***Explanation of Operation*** The operation of the time synchronization client 103 according to the first embodiment will be described with reference to FIGS. The operation procedure of the time synchronization client 103 according to the first embodiment corresponds to the time synchronization method according to the first embodiment. Moreover, the program that realizes the operation of the time synchronization client 103 according to the first embodiment corresponds to the time synchronization program according to the first embodiment.

[0025] As described in Non-Patent Document 1, in IEEE1588 time synchronization, time adjustment is triggered by the reception of a Sync message, which is a time synchronization message, or the reception of a FollowUp message, which is a time synchronization message. Here, the processing upon reception of a Sync message and the processing upon reception of a FollowUp message will be described.

[0026] Referring to FIG. 4, the process when a Sync message according to the first embodiment is received will be described. The processing from step S101 to step S105 is the same as the processing in Figure 37 of Non-Patent Document 1. That is, when the protocol processing unit 131 extracts a Sync message, in step S101 it is confirmed that the time synchronization processing unit 132 is not INITIALIZING or DISABLED. If it is confirmed that it is not INITIALIZING or DISABLED, in step S102 the time synchronization processing unit 132 confirms that it is not FAULTY. If it is confirmed that it is not FAULTY, in step S103 the time synchronization processing unit 132 confirms that it is SLAVE or UNCALIBRATED. If it is confirmed that it is SLAVE or UNCALIBRATED, in step S104 the time synchronization processing unit 132 confirms that it is a message from the current MasterPTP. If it is confirmed that it is a message from the current MasterPTP, in step S105 the time synchronization processing unit 132 confirms that the FlagField is twoStepFlag. If it is confirmed that the FlagField is twoStepFlag, the process proceeds to step S106.

[0027] In step S106, the rollover monitoring unit 136 reads the threshold time from the main memory 112. The threshold time is the time saved in step S109, which will be described later, when the process of FIG. 4 was executed last time. When the process of FIG. 4 is executed for the first time, the threshold time is a time given as an initial value. An appropriate time is set as the initial value on a command line or the like. The appropriate time is, for example, the time at the time of setting. In step S107, the rollover monitoring unit 136 determines whether the time indicated in the Sync message, which is a time synchronization message, is later than the threshold time read in step S106. The rollover monitoring unit 136 determines that a rollover has occurred if the time indicated in the Sync message is not later than the threshold time. If the time indicated in the Sync message is later than the threshold time, the rollover monitoring unit 136 proceeds to step S108. In other words, if the rollover monitoring unit 136 determines that a rollover has not occurred, the rollover monitoring unit 136 proceeds to step S108. On the other hand, if the time indicated in the Sync message is not later than the threshold time, the rollover monitoring unit 136 proceeds to step S110. In other words, if the rollover monitoring unit 136 determines that a rollover has occurred, the rollover monitoring unit 136 proceeds to step S110.

[0028] In step S108, the time measurement unit 134 measures the time difference between the time indicated by the Sync message and the time indicated by the internal clock 113. Then, the time adjustment unit 135 adjusts the time of the internal clock 113 based on the time difference measured by the time measurement unit 134. In step S109, the rollover monitoring unit 136 updates the threshold time stored in the main memory 112 with the time of the internal clock 113 after adjustment in step S108.

[0029] In step S110, the rollover monitoring unit 136 notifies an external device that a rollover has occurred. As a specific example, the rollover monitoring unit 136 writes a log indicating that a rollover has occurred to the HDD via the peripheral 114. Alternatively, the rollover monitoring unit 136 may notify the HDD that a rollover has occurred via the transmission path 104 using email or a protocol such as Syslog or SNMP. SNMP is an abbreviation for Simple Network Management Protocol.

[0030] With reference to FIG. 5, the process when a FollowUp message according to the first embodiment is received will be described. The processing from step S201 to step S205 is the same as the processing in Fig. 38 of Non-Patent Document 1. That is, from step S201 to step S204, the same processing as from step S101 to step S104 in Fig. 4 is performed. Then, when it is confirmed in step S204 that the message is from the current MasterPTP, in step S205 the time synchronization processing unit 132 confirms that it is a FollowUp message related to the Sync message. If it is confirmed that the message is a FollowUp message related to a Sync message, the process proceeds to step S206.

[0031] The process of step S206 is the same as the process of step S106 in Fig. 4. The processes of steps S208 to S210 are the same as the processes of steps S108 to S110 in Fig. 4.

[0032] The processing of step S207 differs from the processing of step S107 in Fig. 4 in that the time synchronization message is a FollowUp message rather than a Sync message. That is, in step S207, the rollover monitoring unit 136 determines whether the time indicated in the FollowUp message, which is a time synchronization message, is later than the threshold time read in step S106. The rollover monitoring unit 136 determines that a rollover has occurred if the time indicated in the FollowUp message is not later than the threshold time. If the time indicated in the FollowUp message is later than the threshold time, the rollover monitoring unit 136 proceeds to step S208. On the other hand, if the time indicated in the FollowUp message is not later than the threshold time, the rollover monitoring unit 136 proceeds to step S210.

[0033] That is, when the Sync message or FollowUp message is received, if the rollover monitoring unit 136 determines that a rollover has occurred, the time adjustment unit 135 stops adjusting the time based on the time synchronization message and runs independently.

[0034] ***Effects of the First Embodiment*** As described above, the time synchronization client 103 according to the first embodiment determines whether a rollover has occurred in the time information supplier based on whether the time indicated in the time synchronization message is later than the threshold time, and controls whether to adjust the time. This makes it possible to respond appropriately when time information is supplied from a device where a rollover has occurred. Specifically, it is possible to prevent problems 1 to 3 from occurring.

[0035] Furthermore, when the time synchronization client 103 according to the first embodiment determines that a rollover has occurred in the supplier of the time information, it notifies the external device, thereby making it possible to prevent an abnormality from occurring in the external device.

[0036] ***Other Configurations*** <Variation 1> In the first embodiment, the time synchronization function is realized by software. However, as a first modification, at least a part of the time synchronization function may be realized by hardware. As a specific example, as in the timestamp generation model described in 6.6.5 of Non-Patent Document 1, the internal clock acquisition and time synchronization processing unit 132 may be implemented on the physical port 115, and other software for the time synchronization function may be run on the main memory 112. Furthermore, the functional components for implementing the time synchronization function may be implemented using electronic circuits. Examples of electronic circuits include single circuits, composite circuits, programmed processors, parallel programmed processors, logic ICs, GAs, ASICs, and FPGAs. GA stands for Gate Array. ASIC stands for Application Specific Integrated Circuit. FPGA stands for Field-Programmable Gate Array.

[0037] Embodiment 2 The second embodiment differs from the first embodiment in that it monitors the state of the grandmaster device 101, which is the source of the time information. In the first embodiment, this difference will be explained, and explanations of the same points will be omitted.

[0038] ***Configuration Description*** The configuration of the time synchronization function of the time synchronization client 103 according to the second embodiment will be described with reference to FIG. 3 in that the time synchronization client 103 includes a status monitoring unit 137 as a functional component that realizes the time synchronization function. The status monitoring unit 137 monitors the quality information of the grandmaster device 101.

[0039] ***Explanation of Operation*** The operation of the time synchronization client 103 according to the second embodiment will be described with reference to FIGS.

[0040] Referring to FIG. 7, the process when a Sync message according to the second embodiment is received will be described. The processes from step S301 to step S305 are the same as the processes from step S101 to step S105 in Fig. 4. The processes from step S307 to step S311 are the same as the processes from step S106 to step S110 in Fig. 4.

[0041] In step S306, the state monitoring unit 137 determines whether or not at least one of the grandmaster device 101 that is the source of the time synchronization message and the relay device 102 that is the relay source of the time synchronization message is in an abnormal state. Here, the status monitoring unit 137 determines whether the quality of the time notified from MasterPTP is appropriate. If the quality of the time is not appropriate, the status monitoring unit 137 determines that the status of at least one of the grandmaster device 101 and the relay device 102 is abnormal.

[0042] Specifically, the status monitoring unit 137 uses a received Announce message to determine whether the quality of the time is appropriate. The status monitoring unit 137 determines that the quality of the time is appropriate if the following conditions 1 and 2 are met. Condition 1 is that the grandmaster Priority 1 and grandmaster Priority 2 of the Announce message match the Profile. Condition 2 is that the grandmaster Clock Quality of the Announce message is 6, which indicates that the system is synchronized with GPS or the like, or 7, which indicates Holdover. If the status monitoring unit 137 determines that neither the grandmaster device 101 nor the relay device 102 is in an abnormal state, the process proceeds to step S307. On the other hand, if the status monitoring unit 137 determines that at least one of the grandmaster device 101 and the relay device 102 is in an abnormal state, the process proceeds to step S311. In step S311, if it is determined in step S306 that an abnormal state exists, the state monitoring unit 137 notifies the external device that an abnormal state exists. On the other hand, if it is determined in step S308 that a rollover has occurred, the rollover monitoring unit 136 notifies the external device that a rollover has occurred.

[0043] With reference to FIG. 8, the process when a FollowUp message according to the second embodiment is received will be described. The processing from step S401 to step S405 is the same as the processing from step S201 to step S205 in Fig. 5. The processing from step S406 is the same as the processing from step S306 in Fig. 7. However, if the status monitoring unit 137 determines that at least neither the grandmaster device 101 nor the relay device 102 is in an abnormal state, the processing proceeds to step S407. On the other hand, if the status monitoring unit 137 determines that at least one of the grandmaster device 101 and the relay device 102 is in an abnormal state, the processing proceeds to step S411. The processing from step S407 to step S411 is the same as the processing from step S206 to step S210 in Fig. 5. In step S411, if it is determined in step S406 that an abnormal state exists, the state monitoring unit 137 notifies the external device that an abnormal state exists. On the other hand, if it is determined in step S408 that a rollover has occurred, the rollover monitoring unit 136 notifies the external device that a rollover has occurred.

[0044] It is also possible that the Announce message does not arrive before the time synchronization message. In this case, the control using the threshold time described in the first embodiment is performed. Therefore, when a rollover occurs, the time is not adjusted.

[0045] ***Effects of the Second Embodiment*** As described above, the time synchronization client 103 according to the second embodiment monitors the status of the grandmaster device 101, which is the supplier of time information. If an abnormality occurs in the grandmaster device 101, the time synchronization client 103 is controlled to run independently until the abnormality is resolved. This makes it possible to prevent the time from being synchronized to an inaccurate time and causing a malfunction.

[0046] Embodiment 3 The third embodiment differs from the first and second embodiments in that when a rollover occurs, the time synchronization state is returned to the initialized state, LISTENING. In the third embodiment, this difference will be explained, and explanations of the same points will be omitted. In the third embodiment, a case where a function is added to the first embodiment will be described, but it is also possible to add a function to the second embodiment.

[0047] ***Explanation of Operation*** The operation of the time synchronization client 103 according to the second embodiment will be described with reference to FIGS.

[0048] Referring to FIG. 9, the process when a Sync message according to the third embodiment is received will be described. The processes from step S501 to step S509 are the same as the processes from step S101 to step S109 in Fig. 4. The process of step S511 is the same as the process of step S110 in Fig. 4. In step S510, the time adjustment unit 135 returns the time synchronization state to the initialized state, LISTENING.

[0049] With reference to FIG. 10, the process when a FollowUp message according to the third embodiment is received will be described. The processes from step S601 to step S609 are the same as the processes from step S201 to step S209 in Fig. 5. The process from step S611 is the same as the process from step S210 in Fig. 5. In step S610, the time adjustment unit 135 returns the time synchronization state to the initialized state, LISTENING.

[0050] ***Effects of the Third Embodiment*** As described above, when a rollover occurs, the time synchronization client 103 according to the third embodiment returns the time synchronization state to the initialized state of LISTENING. This makes it possible to prevent the time synchronization client 103 from becoming self-operated because it is not connected to the time information supplier, and becoming a master clock and supplying the initial time, etc. After the time information supplier is normalized, it is possible to perform time synchronization appropriately.

[0051] ***Other Configurations*** <Variation 2> A case where a function is added to the second embodiment will be described. Referring to FIG. 11, the process when a Sync message is received according to the second modification will be described. The processing from step S701 to step S710 is the same as the processing from step S301 to step S310 in Fig. 7. The processing from step S712 is the same as the processing from step S311 in Fig. 7. In step S711, the time adjustment unit 135 returns the time synchronization state to the initialized state, LISTENING.

[0052] Referring to FIG. 12, a process performed when a FollowUp message is received according to the second modification will be described. The processing from step S801 to step S810 is the same as the processing from step S401 to step S410 in Fig. 8. The processing from step S812 is the same as the processing from step S411 in Fig. 8. In step S811, the time adjustment unit 135 returns the time synchronization state to the initialized state, LISTENING.

[0053] Various aspects of the present disclosure are summarized below as appendices. (Appendix 1) a rollover monitoring unit that determines that a rollover has occurred if the time indicated in the time synchronization message is not later than a threshold time; a time adjustment unit that adjusts the time based on the time synchronization message when the rollover monitoring unit determines that the rollover has not occurred, and stops adjusting the time based on the time synchronization message when the rollover monitoring unit determines that the rollover has occurred; A time synchronization client comprising: (Appendix 2) When it is determined that a rollover has occurred, the rollover monitoring unit notifies an external device that the rollover has occurred. A time synchronization client as described in Appendix 1. (Appendix 3) The rollover monitoring unit updates the threshold time with the time after the adjustment by the time adjustment unit. 3. A time synchronization client according to claim 1 or 2. (Appendix 4) When it is determined that the rollover has occurred, the time adjustment unit returns the state of time synchronization to the initialized state. 1. A time synchronization client according to any one of claims 1 to 3. (Appendix 5) The time synchronization client further a state monitoring unit that determines whether or not at least one of a grandmaster that is a source of the time synchronization message and a relay device that is a relay source of the time synchronization message is in an abnormal state; Equipped with When the state monitoring unit determines that the abnormal state exists, the time adjustment unit stops adjusting the time based on the time synchronization message. 10. A time synchronization client according to any one of clauses 1 to 4. (Appendix 6) When the time adjustment unit determines that the abnormal state exists, the time adjustment unit returns the state of time synchronization to an initialized state. A time synchronization client as described in Appendix 5. (Appendix 7) the computer determines that a rollover has occurred if the time indicated in the time synchronization message is not later than the threshold time; A time synchronization method in which, when a computer determines that the rollover has not occurred, it adjusts the time based on the time synchronization message, and, when it determines that the rollover has occurred, it stops adjusting the time based on the time synchronization message. (Appendix 8) a rollover monitoring process that determines that a rollover has occurred if the time indicated in the time synchronization message is not later than a threshold time; a time adjustment process that adjusts the time based on the time synchronization message when it is determined by the rollover monitoring process that the rollover has not occurred, and stops adjusting the time based on the time synchronization message when it is determined by the rollover monitoring process that the rollover has occurred; A time synchronization program that allows a computer to function as a time synchronization client.

[0054] The embodiments and modifications of the present disclosure have been described above. Some of these embodiments and modifications may be combined and implemented. Also, one or more of them may be implemented partially. Note that the present disclosure is not limited to the above embodiments and modifications, and various modifications are possible as needed. [Explanation of symbols]

[0055] 100 time synchronization system, 101 grandmaster device, 102 relay device, 103 time synchronization client, 104 transmission path, 111 processor, 112 main memory, 113 internal clock, 114 peripheral, 115 physical port, 116 signal line, 120 external clock, 121 physical port, 122 signal line, 131 protocol processing unit, 132 time synchronization processing unit, 133 BMCA unit, 134 time measurement unit, 135 time adjustment unit, 136 rollover monitoring unit, 137 status monitoring unit.

Claims

1. a rollover monitoring unit that determines that a rollover has occurred if the time indicated in the time synchronization message is not later than a threshold time; a time adjustment unit that adjusts the time based on the time synchronization message when the rollover monitoring unit determines that the rollover has not occurred, and stops adjusting the time based on the time synchronization message when the rollover monitoring unit determines that the rollover has occurred; A time synchronization client comprising:

2. When it is determined that a rollover has occurred, the rollover monitoring unit notifies an external device that the rollover has occurred. The time synchronization client of claim 1 .

3. The rollover monitoring unit updates the threshold time with the time after the adjustment by the time adjustment unit. The time synchronization client of claim 1 .

4. When it is determined that the rollover has occurred, the time adjustment unit returns the state of time synchronization to the initialized state. The time synchronization client of claim 1 .

5. The time synchronization client further a state monitoring unit that determines whether or not at least one of a grandmaster that is a source of the time synchronization message and a relay device that is a relay source of the time synchronization message is in an abnormal state; Equipped with When the state monitoring unit determines that the abnormal state exists, the time adjustment unit stops adjusting the time based on the time synchronization message. The time synchronization client of claim 1 .

6. When the time adjustment unit determines that the abnormal state exists, the time adjustment unit returns the state of time synchronization to an initialized state. The time synchronization client of claim 5 .

7. the computer determines that a rollover has occurred if the time indicated in the time synchronization message is not later than the threshold time; A time synchronization method in which, when a computer determines that the rollover has not occurred, it adjusts the time based on the time synchronization message, and, when it determines that the rollover has occurred, it stops adjusting the time based on the time synchronization message.

8. a rollover monitoring process that determines that a rollover has occurred if the time indicated in the time synchronization message is not later than a threshold time; a time adjustment process that adjusts the time based on the time synchronization message when it is determined by the rollover monitoring process that the rollover has not occurred, and stops adjusting the time based on the time synchronization message when it is determined by the rollover monitoring process that the rollover has occurred; A time synchronization program that allows a computer to function as a time synchronization client.

Citation Information

Patent Citations

  • Time synchronization device, time synchronization method, and time synchronization program

    WO2021014614A1