Communication device, communication method, and program

By correcting time information using measured residence times of PTP packets, the communication device addresses synchronization accuracy issues, enhancing time synchronization precision across multiple devices.

JP7625384B2Active Publication Date: 2025-02-03CANON KK
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2020149905
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2020-09-07
Publication Date
2025-02-03
Estimated Expiration
2040-09-07

AI Technical Summary

Technical Problem

Existing communication devices face challenges in maintaining accurate time synchronization when operating as an Ordinaly Clock (OC) due to difficulties in measuring the correct residence time of Precision Time Protocol (PTP) packets, which affects the synchronization accuracy of connected devices.

Method used

The implementation of a communication device with enhanced functionality to receive, analyze, and correct time information by measuring the residence time of PTP packets before transmission, using a control device with correction means to improve synchronization accuracy.

Benefits of technology

This approach enhances the accuracy of time synchronization between multiple devices by correcting time information based on measured residence times, thereby improving overall synchronization precision.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007625384000001
    Figure 0007625384000001
  • Figure 0007625384000002
    Figure 0007625384000002
  • Figure 0007625384000003
    Figure 0007625384000003
Patent Text Reader

Abstract

To improve the accuracy of time synchronization between a plurality of devices.SOLUTION: A communication apparatus incudes: reception means that receives synchronization information; transmission means that transmits synchronization information according to the synchronization information received by the reception means; correction means that corrects time information according to the synchronization information received by the reception means; measurement means that measures a residence time from when the reception means receives the synchronization information to when the transmission means transmits the synchronization information on the basis of the time information; and control means that executes correction of the time information by the correction means when the state of processing by the measurement means or the transmission means satisfies a predetermined condition.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a communication device, a communication method, and a program. [Background technology]

[0002] Recently, technology for time synchronization between multiple devices connected via a network has been used in many fields. For example, there is a virtual viewpoint image generation system that installs multiple cameras at different positions, captures images from multiple viewpoints synchronously, and generates virtual viewpoint content using the multiple viewpoint images obtained by the capture. In such a system, it is required to synchronize the capture timing with high accuracy in order to generate a high-quality virtual viewpoint image.

[0003] Regarding synchronization technology via a network, Patent Document 1 discloses a technology related to the handling of Precision Time Protocol (PTP) packets of active nodes in a multi-protocol label switching network. In this technology, when bridging a PTP packet, the residence time of the PTP packet in the device is measured, and residence time information is transmitted in another PTP packet. Specifically, time (time stamp) information is obtained at the timing of receiving the PTP packet and the timing of transmitting the PTP packet, and the residence time is calculated from the difference in the time stamp information. By utilizing this residence time, it is possible to improve the accuracy of time synchronization between terminals on either side of the active node.

[0004] As mentioned above, the function of measuring the residence time of PTP packets in a device, suppressing deterioration of time accuracy, and bridging PTP packets between devices is defined as Transparent Clock (TC) in IEEE1588-2008. Also, the function of synchronizing with a device that is a time source using PTP packets is defined as Ordinary Clock (OC). [Prior art documents] [Patent documents]

[0005] [Patent Document 1] JP 2019-220970 A Summary of the Invention [Problem to be solved by the invention]

[0006] However, the technology disclosed in Patent Document 1 has the following problems when a communication device operates as an OC to synchronize time with another device that is a time source, and bridges PTP packets as a TC. That is, when operating as an OC, the communication device must periodically update the time information according to the time source. However, when using that time information to measure the residence time of PTP packets required as TC, if the time information is updated while the PTP packets are staying, it becomes difficult to measure the correct residence time. This may affect the synchronization accuracy of other devices that are connected to the communication device and operate as OCs.

[0007] The present invention has been made in view of the above-mentioned problems, and an object of the present invention is to improve the accuracy of time synchronization among a plurality of devices. [Means for solving the problem]

[0008] In order to solve the above-mentioned problems, according to one aspect of the present invention, a communication device includes a receiving unit for receiving synchronization information, and a synchronization information receiving unit for receiving the synchronization information. The residence time elapsed when bridging the synchronization information was added. A transmitting means for transmitting synchronization information, and the synchronization information received by the receiving means. The time indicated by To To synchronize, A correction means for correcting time information, and a forward correction means for correcting the time information based on the time information. Note A measuring means for measuring residence time; before By the above transmission means The transmission by the transmitting means is completed. and a control means for causing the correction means to correct the time information when the correction means detects that the time has passed. Effect of the Invention

[0009] According to the present invention, it is possible to improve the accuracy of time synchronization among a plurality of devices. [Brief description of the drawings]

[0010] [Figure 1] FIG. 1 is a block diagram showing an example of the configuration of a communication system. [Diagram 2] FIG. 1 is a block diagram showing an example of the configuration of a synchronous communication device. [Diagram 3] FIG. 2 is a diagram showing an example of an RTP packet sequence. [Figure 4] FIG. 2 is a diagram showing an example of an RTP packet sequence. [Diagram 5] 10 is a flowchart showing an example of processing of a synchronous communication device. [Figure 6] 10 is a flowchart showing an example of processing of a synchronous communication device. [Figure 7] 10 is a flowchart showing an example of a process of a correction timing control unit. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0011] Hereinafter, an embodiment for carrying out the present invention will be described in detail with reference to the attached drawings. Note that the embodiment described below is one example of a means for realizing the present invention, and should be appropriately modified or changed depending on the configuration of the device to which the present invention is applied and various conditions, and the present invention is not necessarily limited to the following embodiment. Furthermore, not all of the combinations of features described in the embodiment are necessarily essential to the solution of the present invention.

[0012] (Embodiment 1) (Communication system configuration) FIG. 1 is a block diagram showing an example of the configuration of a communication system according to the first embodiment. This communication system includes a time server 2 that distributes time, a TC (Transparent Clock) switching hub 3, a synchronous communication device 10 that performs communication synchronized with the time of the time server 2, and a group of terminals 20 that synchronize with the time of the time server 2.

[0013] The time server 2 has a function of distributing time according to PTP (Precision Time Protocol), and distributes time synchronized with a GPS (Global Positioning System) 1. The TC switching hub 3 is a switching hub with a TC function in a network system using PTP packets. Specifically, the TC switching hub 3 has a function of correcting the residence time of PTP packets within the TC switching hub 3 in a time synchronization network using PTP packets, thereby reducing deterioration in the accuracy of time synchronization.

[0014] The synchronous communication device 10 has two functions: an OC (Ordinary Clock) function and a TC function. As the OC, the synchronous communication device 10 synchronizes with a time server 2 and holds the time synchronized with the time server 2. As the TC, the synchronous communication device 10 has a function of bridging (transferring) PTP packets flowing between the terminals AA21, AB22, AC23, ... and the time server 2.

[0015] The terminal group 20 includes a plurality of terminals AA21, AB22, AC23, etc., connected in a daisy chain shape via a network. Each of the terminals AA, AB, AC (21-23) has two functions, TC and OC, similar to the synchronous communication device 10, and has a function of synchronizing with the time server 2 and bridging PTP packets to other terminals. The communication system may also include a terminal group with multiple lanes. In FIG. 1, the terminal BA30, terminal CA40, and terminal DA50 are at the head of each lane.

[0016] (Details of synchronous communication device) FIG. 2 is a block diagram showing a detailed configuration example of the synchronous communication device 10. As shown in FIG. The synchronous communication device 10 includes a main control unit 60 that controls the entire synchronous communication device 10 , a memory 71 , a system bus 72 , and a communication control unit 80 . First, the functions of the main control unit 60 related to the synchronization process in this embodiment will be described in detail. The main control unit 60 includes a synchronization processing unit 61 that performs synchronization processing, a PTP packet bridge unit 62 that performs bridging processing of PTP packets, and a common unit 63 that performs processing common to the synchronization processing unit 61 and the PTP packet bridge unit 62.

[0017] The synchronization processing unit 61 corresponds to an OC function, and performs a synchronization process with the time server 2 using PTP packets. The synchronization processing unit 61 has two function units (a packet generating unit 61a and a correction time calculating unit 61b). The packet generation unit 61a generates a Delay Request packet required for performing synchronization processing with the time server 2. The correction time calculation unit 61b calculates the network delay time occurring between the time server 2 and the synchronous communication device 10 and the time difference between them, based on the PTP packets exchanged between the time server 2 and the synchronous communication device 10. The operation of the correction time calculation unit 61b will be described in detail later.

[0018] The PTP packet bridge unit 62 corresponds to the TC function, and has a function of bridging PTP packets exchanged between the time server 2 and the terminal group 20. The PTP packet bridge unit 62 has three function units (a bridge processing unit 62a, a packet correction unit 62b, and a residence time calculation unit 62c). The bridge processing unit 62a has a function of bridging a PTP packet received from the communication processing unit A85 of the communication control unit 80 to the communication processing unit B86. Specifically, the bridge processing unit 62a bridges an Announce / Sync / Follow Up packet received by the communication processing unit A85 from the time server 2 to the communication processing unit B86. The bridge processing unit 62a also bridges a Delay Request packet received by the communication processing unit B86 to the communication processing unit A85. Furthermore, the bridge processing unit 62a bridges a Delay Response packet received by the communication processing unit A85 and not addressed to the synchronous communication device 10 to the communication processing unit B86.

[0019] The packet correction unit 62b performs correction processing on the PTP packets that need correction among the PTP packets that are bridged by the bridge processing unit 62a. Specifically, the packet correction unit 62b performs correction of the Correction Field of the Follow Up packet and the Delay Response packet. The detailed operation of the packet correction unit 62b will be described later. The residence time calculation unit 62c has a function of calculating the time (residence time) elapsed when the synchronous communication device 10 bridges PTP packets transmitted and received between the time server 2 and the terminal group 20. Specifically, the residence time is calculated for two types of packets: a Sync packet transmitted from the time server 2 and a Delay Request packet transmitted from each terminal of the terminal group 20.

[0020] The common unit 63 includes a packet analysis unit 63a and a time stamp acquisition unit 63b as functions commonly used by the synchronization processing unit 61 and the PTP packet bridge unit 62. The packet analysis unit 63a has a function of analyzing a PTP packet received by the communication processing unit A85 or the communication processing unit B86 of the communication control unit 80 and stored in the memory 71 by the packet forwarding unit 87. Then, the packet analysis unit 63a notifies the synchronization processing unit 61 or the PTP packet bridge unit 62 of the storage position information of the packet in the memory and the analysis result, etc. according to the analysis result. The time stamp acquisition unit 63b has a function of acquiring the time (time stamp information) when the PTP packet passes through the communication processing unit A85 or the communication processing unit B86. The time stamp information is acquired when passing through in both directions of transmission / reception. The time stamp information is also acquired by accessing the time stamp storage unit A83 and the time stamp storage unit B84.

[0021] Next, the communication control unit 80 will be described. The communication control unit 80 includes a control interface 81 for transmitting and receiving control signals to and from the main control unit 60 via the system bus 72, and a packet interface 82 for transmitting and receiving packet data. The communication control unit 80 also includes a communication processing unit A85, a communication processing unit B86, a packet forwarding unit 87, a timestamp storage unit A83, a timestamp storage unit B84, and a storage unit for storing time information (hereinafter simply referred to as time information) 88. The communication control unit 80 also includes a correction timing control unit 90 for controlling the timing of correction of the time information. The correction timing control unit 90 executes correction of the time information 88 when the state of processing in the synchronous communication device 10 satisfies a predetermined condition (for example, measurement of the residence time of a PTP packet is not performed, etc.). The communication processing unit A85 is a connection interface with the time server 2 via the TC switching hub 3. Packets from the time server 2 are received by the communication processing unit A85, and packets from the synchronous communication device 10 to the time server 2 are transmitted by the communication processing unit A85. The communication processing unit B86 is a connection interface with the terminal group 20. The packet forwarding unit 87 has a function of transmitting a packet created in the memory 71 by the main control unit 60 to the outside via the communication processing unit A85 or the communication processing unit B86 under the instruction of the main control unit 60. The packet forwarding unit 87 also has a function of forwarding a packet received from the communication processing unit A85 or the communication processing unit B86 to the memory 71. The time stamp storage unit A83 stores the time indicated by the time information 88 when the PTP packet passed through the communication processing unit A85. Specifically, the time stamp storage unit A83 stores the time when the communication processing unit A85 received the PTP packet from the synchronous communication device 10. Furthermore, the time stamp storage unit A83 stores the time when a PTP packet is transmitted from the synchronous communication device 10 to the outside of the device via the communication processing unit A85. This allows the main control unit 60 to obtain the time when the actual PTP packet was transmitted and received more accurately than by using, for example, a system clock provided in the main control unit 60.

[0022] The time information 88 is time information held by the communication control unit 80. If the packet received from the time server 2 is a predetermined PTP packet, the time indicated by the time information 88 is output to the time stamp storage unit A83 at the timing of arrival of the PTP packet. The time information 88 also has a function of correcting the time based on a calculated correction value after the synchronization processing unit 61 executes a synchronization process with the time server 2. Furthermore, the time information 88 may have a function of adjusting the advancement of the time information 88. For example, if the time of the synchronous communication device 10 is ahead of the time server 2 every time in the synchronization process, the holdover accuracy can be improved by tuning in a direction to reduce the advancement speed of the time information 88. 1 has one piece of time information 88, and the same time information is supplied to communication processing unit A85 and communication processing unit B86. There may be two pieces of time information. In this case, if the clock signals for advancing the two pieces of time information are the same and the same correction results can be received simultaneously from correction timing control unit 90, high-precision TC processing can be realized. Furthermore, the two pieces of time information may be included in communication processing unit A85 and communication processing unit B86, respectively. Furthermore, the time stamp storage unit B84 has a function equivalent to that of the time stamp storage unit A83, and stores the time at which the PTP packet is transmitted or received from the communication processing unit B86.

[0023] The correction timing control section 90 has a function of setting the calculation result of the correction time calculation section 61b to the time information 88 at a predetermined timing. In detail, the correction timing control unit 90 includes a terminal number storage unit 91 , a timer unit 92 , a packet counter 93 , and a correction value storage unit 94 . The terminal number storage unit 91 has a function of receiving from the main control unit 60 and storing the number of terminals in the terminal group 20 grasped by the main control unit 60. The timer unit 92 is a timer necessary for the correction timing control unit 90 to perform timing control. The packet counter 93 has a function of counting the number of Delay Request packets received by the synchronous communication device 10 from the terminal group 20 and transmitted to the time server 2. Note that the reception of the Delay Request packet is confirmed by checking the packet transfer status via the snoop bus 89 when the received packet is written from the packet transfer unit 87 to the memory 71. The correction value storage unit 94 has a function of storing a time correction value for the time information 88 supplied from the correction time calculation unit 61b.

[0024] (Synchronization processing) Next, the flow of packets transmitted and received between devices in a communication system including synchronous communication device 10 will be described with reference to FIGS. 3, for example, the time server 2 and the synchronous communication device 10 transmit and receive PTP packets at a predetermined period (τ) (S1). Between the terminal group 20 and the time server 2, transmission and reception of PTP packets also occurs at a similar period (τ) (S2, S3).

[0025] An example of a PTP packet exchanged in S1 is shown in Fig. 4(A). Note that in Fig. 4(A), the TC switching hub 3 is omitted for the sake of simplicity. The time server 2 first transmits a Sync packet (S11). Furthermore, if the synchronization process of the time server 2 is operating in 2 Step, the time server 2 transmits a Follow Up packet (S12). The synchronous communication device 10 that has received the Sync / Follow Up packet transmits a Delay Request packet to the time server 2 when executing synchronization process (S13). The time server 2 that has received the Delay Request packet transmits a Delay Response packet to the synchronous communication device 10 (S14). Here, time T1 indicates the time when the time server 2 transmits the Sync packet, and time T2 indicates the time when the synchronous communication device 10 receives the Sync packet. Furthermore, time T3 indicates the time when the synchronous communication device 10 transmits the Delay Request packet, and time T4 indicates the time when the time server 2 receives the Delay Request packet. The Follow Up packet stores time T1, and the Delay Response packet stores time T4.

[0026] The reception time T2 of the Sync packet can be obtained by the following procedure. When the Sync packet passes through the communication processing unit A85, the communication processing unit A85 stores the time based on the time information 88 in the time stamp storage unit A83. The time stamp acquisition unit 63b can obtain T2 by accessing the time stored in the time stamp storage unit A83. Similarly, T3 can be obtained by storing a time based on the time information 88 in the time stamp storage unit A83 at the timing when a Delay Request packet is sent from the synchronous communication device 10 to the time server 2. By transmitting and receiving a series of PTP packets, the synchronous communication device 10 can obtain four times, T1 to T4.

[0027] From the above four pieces of time information (T1, T2, T3, T4), the average transmission path delay between the time server 2 and the synchronous communication device 10 and the time difference between the time server 2 and the synchronous communication device 10, i.e., the time correction amount of the synchronous communication device 10, can be calculated as follows. Average Path Delay = ((T4-T1)-(T3-T2)) / 2 Time correction amount = ((T2-T1)-(T4-T3)) / 2 The time correction amount calculated by the above formula is the offset amount of synchronous communication device 10 with respect to the time server 2, so it is advisable to adjust the advance of the time held by synchronous communication device 10 so that this becomes 0. This completes the basic exchange of PTP packets between the time server 2 and synchronous communication device 10.

[0028] 4B is an example of a case where the synchronous communication device 10 operates in TC End to End (E2E) mode in the transmission and reception of PTP packets occurring between the time server 2 and the terminal group 20. For simplicity of explanation, the explanation focuses on the transmission and reception (S2) of PTP packets occurring between the terminal AA21 and the time server 2. The time server 2 transmits a Sync / Follow Up / Delay Response packet and receives a Delay Request packet, similar to Fig. 4(A). The terminal AA21 receives a Sync / Follow Up / Delay Response packet and transmits a Delay Request packet, similar to the operation of the synchronous communication device 10 in Fig. 4(A).

[0029] When synchronous communication device 10 receives a Sync packet from time server 2 (S11), it transmits the Sync packet to terminal AA21 (S21). At this time, synchronous communication device 10 calculates a residence time Δ1 within synchronous communication device 10 for the Sync packet received from time server 2. When the synchronous communication device 10 receives a Follow Up packet from the time server 2 (S12), the synchronous communication device 10 adds the residence time Δ1 to the value of the Correction field in the Follow Up packet and transmits it to the terminal AA21 (S22). The Correction field is a field that indicates the residence time of a packet generated in the device. The value of this Correction field is a predetermined value when it is transmitted from the time server 2, and the residence time in the device is added each time the packet passes through a device having a TC function. In addition, when the synchronous communication device 10 transmits the Delay Request packet received from the terminal AA21 to the time server 2 (S24), the synchronous communication device 10 calculates the residence time Δ2 in the synchronous communication device 10. The synchronous communication device 10 adds the residence time Δ2 to the Correction field of the Delay Response packet received from the time server 2 (S25) and transmits it (S26). As a result, the average transmission path delay between the time server 2 and the terminal AA21 and the time correction amount can be calculated as follows. Average path delay = ((T2-T3)+(T4-T1)-Δ1-Δ2) / 2 Time correction amount = (T2-T1)-average transmission line delay-Δ1

[0030] (Detailed operation of synchronous communication device 10) Next, detailed operations of the synchronous communication device 10 will be described with reference to the flowcharts of Figures 5 to 7. Three of the processes of the synchronous communication device 10 will be described in detail below: a. Process of the synchronization processing unit 61 (S32), b. Process of the PTP packet bridge unit 62 (S34), and c. Process of the correction timing control unit 90 (S33).

[0031] First, the synchronous communication device 10 sets the number of terminals in the terminal group 20 in the terminal number storage unit 91 of the correction timing control unit 90 (S31 in FIG. 5). Any method may be used to ascertain the number of terminals in the terminal group 20. For example, there is a method of counting the number of Delay Request packets received by the synchronous communication device 10 during transmission and reception processing of periodically generated PTP packets. Thereafter, the synchronous communication device 10 executes the processes of S32 to S34 in parallel until a predetermined end condition is satisfied.

[0032] (Details of the processing of the synchronization processing unit 61) Next, the details of the process (S32) mainly performed by the synchronization processing unit 61 will be described. In S35, the synchronization processing unit 61 determines whether or not a PTP packet has been received via the communication processing unit A85 from the time server 2. If a PTP packet has not been received (No in S35), the synchronization processing unit 61 returns to S35 and waits until a PTP packet is received. When a PTP packet is received (Yes in S35), the synchronization processing unit 61 executes different processes for each type of received PTP packet according to the analysis result of the packet analysis unit 63a (S5, S6, S7).

[0033] When a Sync packet is received (S5), the timestamp acquisition unit 63b acquires from the timestamp storage unit A83 a timestamp generated at the timing of receiving the Sync packet (S36). The timestamp generated by the communication processing unit A85 is stored in the timestamp storage unit A83, so the timestamp acquisition unit 63b acquires this information. The timestamp acquired at this time corresponds to time T2 in FIG. 4(A). After this, the synchronization processing unit 61 returns to S35 and waits to receive a PTP packet until a predetermined end condition is met.

[0034] When a Follow Up packet is received (S6), the packet contains information about the time when the time server 2 transmitted a Sync packet, so the time stamp acquisition unit 63b acquires the transmission time of the Sync packet (S37). This time corresponds to T1 in FIG. 4(A). The packet generation unit 61a then generates a Delay Request packet (S38). Thereafter, the communication processing unit A85 transmits the Delay Request packet to the TC switching hub 3 (S39). After transmission, the time stamp acquisition unit 63b acquires a time stamp at the time of transmission of the Delay Request packet from the time stamp storage unit A83 (S40). This time stamp corresponds to T3 in FIG. 4(A). Thereafter, the synchronization processing unit 61 returns to S35 and waits to receive a PTP packet until a predetermined end condition is met.

[0035] When the Delay Response packet is received from the time server 2 (S7), the following process is executed. First, the time stamp acquisition unit 63b acquires the time when the time server 2 received the Delay Request packet transmitted by the synchronous communication device 10 in S39 from the information of the Delay Response packet (S41). This time stamp corresponds to T4 in FIG. 4(A). Then, the correction time calculation unit 61b calculates the correction amount of the time information 88 using T1, T2, T3, and T4 acquired so far, and stores (sets) the calculated correction amount in the correction value storage unit 94 of the correction timing control unit 90 (S22). Note that, when correcting the time information 88, there are a method of correcting by directly overwriting the time value, a method of correcting by changing the advance amount of the time information 88, and the like, and either method may be used. After this, the synchronization processing unit 61 returns to S35 and waits for the reception of a PTP packet until a predetermined end condition is satisfied.

[0036] (PTP packet bridge unit 62 processing details) Next, the process (S34) of the PTP packet bridge unit 62 will be described in detail. 6, the PTP packet bridge unit 62 determines whether or not a PTP packet has been received by the synchronous communication device 10. If a PTP packet has not been received (No in S43), the PTP packet bridge unit 62 returns to S42 and waits until a PTP packet is received. When a PTP packet is received (Yes in S43), the PTP packet bridge unit 62 executes different processes for each type of received PTP packet according to the analysis result of the packet analysis unit 63a (S15, S16, S17, S18).

[0037] When a Sync packet is received (S15), the residence time calculation unit 62c acquires the time (timestamp) at which the Sync packet was received from the timestamp storage unit A83 via the timestamp acquisition unit 63b (S44). This time is the same value as T2 acquired in S36 described above, but the residence time calculation unit 62c treats it as the residence start time (Tss) for measuring the residence time of the Sync packet. Next, the PTP packet bridge unit 62 causes the communication processing unit B86 to transmit the Sync packet to the terminal group 20 (S45). At this time, the residence time calculation unit 62c acquires the time at which the Sync packet was transmitted from the timestamp storage unit B84 (S46). The residence time calculation unit 62c treats this time as the residence end time (Tse) for measuring the residence time of the Sync packet. Then, the residence time calculation unit 62c obtains the residence time Δs of the Sync packet from Tse-Tss (S47). Thereafter, the PTP packet bridge unit 62 returns to S43 and waits to receive a PTP packet until a predetermined end condition is satisfied.

[0038] When a Follow Up packet is received (S16), the PTP packet bridge unit 62 causes the packet correction unit 62b to reflect the residence time Δs of the Sync packet in the Correction Field of the Follow Up packet (S48). Specifically, the packet correction unit 62b rewrites the value of the Correction Field of the Follow Up packet by adding the residence time Δs of the Sync packet to the value of the Correction Field. Then, the PTP packet bridge unit 62 causes the communication processing unit B86 to transmit a new Follow Up packet to the terminal group 20 (S49). After this, the PTP packet bridge unit 62 returns to S43 and waits to receive a PTP packet until a predetermined end condition is met.

[0039] When a Delay Request is received from the terminal group 20 (S17), the time stamp acquisition unit 63b first acquires the time when the Delay Request packet was received from the time stamp storage unit B84 (S50). The retention time calculation unit 62c handles the acquired time as a retention start time (Trs[n]: n=1 to the number of terminals in the terminal group 20) for measuring the retention time of the Delay Request packet. Then, the PTP packet bridge unit 62 transmits the Delay Request packet to the TC switching hub 3 via the communication processing unit A85 (S51). Then, the retention time calculation unit 62c acquires the time when the Delay Request packet was transmitted from the time stamp storage unit A83 (S52). The retention time calculation unit 62c handles the acquired time as a retention end time Tre[n] for measuring the retention time of the Delay Request packet. Then, the waiting time calculation unit 62c obtains the waiting time Δr[n] of the Delay Request packet from Tre[n]-Trs[n] (S53). After this, the PTP packet bridge unit 62 returns to S43 and waits to receive a PTP packet until a predetermined end condition is satisfied.

[0040] When a Delay Response packet is received (S18), the PTP packet bridge unit 62 judges which terminal of the terminal group 20 the currently received Delay Response packet is addressed to (S54). The terminal to which the packet is addressed may be judged, for example, by the MAC address / IP address included in the packet. Then, the packet correction unit 62b reflects the residence time corresponding to the packet among the residence time Δr[n] of the Delay Request packet obtained in S53 in the Delay Response packet (S55). Specifically, the PTP packet bridge unit 62 rewrites the value obtained by adding the residence time Δr of the Delay Request packet to the value of the Correction Field as a new value of the Correction Field. Then, the PTP packet bridge unit 62 causes the communication processing unit B86 to transmit the new Delay Response packet to the terminal group 20 (S56). Thereafter, the PTP packet bridge unit 62 returns to S43 and waits to receive a PTP packet until a predetermined end condition is satisfied.

[0041] (Details of the correction timing control unit 90 process) Next, the process (S33) of the correction timing control unit 90 will be described in detail with reference to FIG. First, in S71, the correction timing control unit 90 stores the number of terminals in the terminal group 20 set by the main control unit 60 in S31 of Fig. 5 described above in the terminal number storage unit 91. Then, the correction timing control unit 90 repeatedly executes the packet counter process (S90) and the reflection of the correction result (SS91) until a predetermined end condition is satisfied.

[0042] First, the process of S90 will be described. In S72, the correction timing control unit 90 determines whether or not the synchronous communication device 10 has received a PTP packet. If the PTP packet has not been received (No in S72), the correction timing control unit 90 returns to S72 and waits until a PTP packet is received. When a PTP packet is received (Yes in S72), the correction timing control unit 90 executes different processes for each type of received packet according to the analysis result of the packet analysis unit 63a (S73, S74, S75). Note that the reception of a PTP packet can be realized by checking the reception status of the packet via the snoop bus 89, for example.

[0043] When a Sync packet is received, the correction timing control unit 90 resets the packet counter 93 to '0' (S73). The correction timing control unit 90 may use any information that can be used to detect the start of synchronization. For example, a Follow-Up packet may be used as information for detecting the start of synchronization. Alternatively, if an Announce packet is always transmitted before a Sync packet, this may be used as information for detecting the start of synchronization. After this, the correction timing control unit 90 returns to S72 and waits to receive a PTP packet until a predetermined end condition is met.

[0044] If the received PTP packet is a Delay Request packet, the correction timing control unit 90 increments the value of the packet counter 93 in response to the packet being transmitted from the communication processing unit A85 (S74). To detect the completion of transmission of the Delay Request packet, a notification may be received directly from the communication processing unit A85. Alternatively, the value of the packet counter 93 may be incremented a predetermined time after it is confirmed via the snoop bus 89 that the Delay Request packet is transferred from the memory 71 to the packet transfer unit 87. After this, the correction timing control unit 90 returns to S72 and waits for reception of a PTP packet until a predetermined end condition is met.

[0045] If the packet received by the synchronous communication device 10 is a PTP packet other than a Sync / Delay Request packet, the correction timing control unit 90 does nothing (S75). After that, the correction timing control unit 90 returns to S72 and waits to receive a PTP packet until a predetermined end condition is met.

[0046] Next, the process of S91 will be described. First, the correction timing control unit 90 checks whether or not a correction value has been set in the correction value storage unit 94 by the main control unit 60. If a correction value has not been set (No in S76), the correction timing control unit 90 returns to S76 and waits for a correction value to be set. If a correction value has been set (Yes in S76), the correction timing control unit 90 starts the timer unit 92 (S77).

[0047] Next, the correction timing control unit 90 judges whether the value of the packet counter 93 coincides with the number of terminals in the terminal number storage unit 91 (S78). If the value of the packet counter 93 matches the number of terminals (Yes in S78), there are no Delay Request packets that need to have their residence time measured and therefore the process moves to the next step (S80) to reflect the correction value. That is, after Delay Request packets from all terminals in the terminal group 20 are transmitted to the time server 2 and a series of PTP packet transmission / reception processes (synchronization processes) are completed, the correction timing control unit 90 moves to S80 and causes the time information 88 to be corrected. That is, the correction timing control unit 90 causes the time information 88 to be corrected when a series of PTP packet transmission processes are completed. If the value of the packet counter 93 does not match the number of terminals (No in S78), the correction timing control unit 90 judges whether or not a predetermined time has elapsed in the value of the timer unit 92 (S79). If the predetermined time has elapsed (Yes in S79), the correction timing control unit 90 proceeds to S80. If the predetermined time has elapsed since the reception of the PTP packet, it is considered that the measurement of the residence time has ended, so the correction timing control unit 90 proceeds to S80 and corrects the time information 88. The predetermined time for the judgment is determined in consideration of the number of terminals, the average processing time of the PTP packet, etc. On the other hand, if the predetermined time has not elapsed (No in S79), the correction timing control unit 90 waits in S82 and then returns to S78.

[0048] In S80, the correction timing control unit 90 causes the time information 88 to reflect the correction value (correction amount) stored in the correction value storage unit 94 in the above-mentioned S22. At this time, if the correction value is given as a direct value, a delay such as the waiting time in S83 occurs, so the correction timing control unit 90 refers to the timer unit 92 and performs correction by applying an offset for the delay time. Alternatively, if the correction value is set as the advancement amount of the time information 88, there is no particular need to use an offset, and the correction timing control unit 90 corrects the time information 88 according to the correction value. After reflecting the correction value in S80, the correction timing control unit 90 stops / clears the timer unit 92 (S81) and clears the information (correction value) in the correction value storage unit 94 (S82). After that, the correction timing control unit 90 returns to S76 and waits for the correction value to be set until a predetermined end condition is satisfied.

[0049] As described above, in this embodiment, when the process in the device satisfies a predetermined condition (for example, the residence time of the PTP packet is not measured), the time information 88 is corrected, thereby improving the measurement accuracy of the residence time. This improves the accuracy of time synchronization between multiple devices.

[0050] (Modification) In the above embodiment, the correction timing control unit 90 performs time correction after all of the terminal groups 20 have transmitted Delay Request packets, but the present invention is not limited to this. For example, if there is a sufficient interval between the transmission of each Delay Request packet sent from the terminal group 20, the following method can be used. That is, a flag (storage unit) is prepared that is turned On while a Delay Request packet is retained and turned Off when the packet is no longer retained. Then, the correction timing control unit 90 executes the correction process when the flag is turned Off (when the packet is not retained).

[0051] Also, if the time from when synchronous communication device 10 receives the Announce / Sync packet until when it transmits all Delay Request packets is known in advance, the following method can be used: That is, the correction process of time information 88 is suspended until a predetermined time from when the Announce / Sync packet is received, and the correction process is executed after the predetermined time. Furthermore, in the above embodiment, the correction timing control section 90 is configured independent of the main control section 60, but the correction timing control section 90 may be provided within the main control section 60.

[0052] In addition, in the present embodiment, an example has been shown in which the synchronous communication device 10 is provided with two communication processing units (communication processing unit A85 and communication processing unit B86), but for example, the synchronous communication device 10 may have a plurality of interfaces equivalent to the communication processing unit B86. This makes it possible to apply the present invention to a system in which each terminal of the terminal group 20 is directly connected to the synchronous communication device 10 in a star configuration.

[0053] In the above embodiment, a case where one piece of time information 88 is used has been described, but two separate pieces of time information (first time information, second time information) may be used on the receiving side and the transmitting side, and a process of matching the first time information with the second time information may be performed. In this case, in addition to the above process, the process of matching the first time information with the second time information may be performed, for example, at a time other than when measuring the residence time.

[0054] Although the preferred embodiments of the present invention have been described above, the present invention is not limited to these embodiments, and various modifications and changes are possible within the scope of the gist of the present invention. Furthermore, the present invention can be embodied, for example, as a system, an apparatus, a method, a program, or a recording medium (storage medium), etc.

[0055] The present invention can also be realized by a process in which a program for realizing one or more functions of the above-mentioned embodiments is supplied to a system or device via a network or a storage medium, and one or more processors in a computer of the system or device read and execute the program. The present invention can also be realized by a circuit (e.g., ASIC) that realizes one or more functions. ASIC is an abbreviation for Application Specific Integrated Circuit. [Explanation of symbols]

[0056] 2... time server, 3... TC switching hub, 10... synchronous communication device, 20... terminal group, 60... main control unit, 61... synchronization processing unit, 62... PTP packet bridge unit, 80... communication control unit, 90... correction timing control unit

Claims

1. A receiving means for receiving synchronization information; a transmitting means for transmitting the synchronization information obtained by adding a residence time elapsed when bridging the synchronization information to the synchronization information received by the receiving means; a correction means for correcting time information so as to synchronize with the time indicated by the synchronization information received by the receiving means; A measuring means for measuring the residence time based on the time information; a control unit that causes the correction unit to correct the time information when the transmission unit has finished transmitting the time information,

2. 2. The communication device according to claim 1, wherein the control means causes the correction means to correct the time information when the transmission by the transmission means has been completed and the measurement means is not measuring the residence time.

3. 2. The communication device according to claim 1, wherein the control means causes the correction means to execute correction of the time information when the transmission by the transmission means is completed and the measurement of the residence time by the measurement means is completed.

4. 2. The communication device according to claim 1, wherein the control means causes the correction means to execute correction of the time information when transmission by the transmitting means is completed and a predetermined time has elapsed since reception of the synchronization information by the receiving means.

5. the receiving means includes a first output means for outputting a time indicating a time when the synchronization information was received, 5. The communication device according to claim 1, wherein the correction means corrects the time information based on the time output by the first output means.

6. the transmitting means includes a second output means for outputting a time indicating a time of the transmission, 6. The communication device according to claim 5, wherein the measurement means measures the residence time based on a time when the first output means outputs and a time when the second output means outputs.

7. a first storage means for storing the time information; the first output means references the first holding means and outputs the time at which the receiving means received the synchronization information; 7. The communication device according to claim 6, wherein said second output means outputs the time of said transmission by referring to said first holding means.

8. A second storage means for storing the number of communication devices in the same network as the communication device; a counting means for counting the number of transmissions of the transmitting means; Equipped with the control means causes the correction means to execute the correction when the number counted by the counting means matches the number of the communication devices stored in the second storage means. The communication device according to any one of claims 1 to 7.

9. an analysis means for analyzing a type of the synchronization information received by the receiving means; According to the analysis result of the analysis means, a predetermined piece of synchronization information is stored in the communication device. a third holding means for holding whether the The control means The communication device according to any one of claims 1 to 7, characterized in that the third holding means is referenced, and when the specified synchronization information is not retained within the communication device, the correction means is caused to execute the correction.

10. receiving synchronization information; a step of transmitting the received synchronization information by adding a residence time elapsed in bridging the synchronization information to the received synchronization information; correcting time information so as to synchronize with the time indicated by the received synchronization information; measuring the residence time based on the time information; and correcting the time information when the transmission is completed.

11. A program for causing a computer to function as each of the means of the communication device according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • Transmission of residence time information in network

    JP2019220970A

  • JPP6869447B

  • Communication device, cascaded network and internal synchronization method

    US20190138047A1