Clock synchronization - Wikipedia

25, Aug. 2025

 

Clock synchronization - Wikipedia

Coordination of independent clocks For broader coverage of this topic, see Clock network.

Clock synchronization is a topic in computer science and engineering that aims to coordinate otherwise independent clocks. Even when initially set accurately, real clocks will differ after some amount of time due to clock drift, caused by clocks counting time at slightly different rates. There are several problems that occur as a result of clock rate differences and several solutions, some being more acceptable than others in certain contexts.[1]

If you are looking for more details, kindly visit California Triangle.

Terminology

[edit]

In serial communication, clock synchronization can refer to clock recovery, which achieves frequency synchronization, as opposed to full phase synchronization. Such clock synchronization is used in synchronization in telecommunications and automatic baud rate detection.[2]

Plesiochronous or isochronous operation refers to a system with frequency synchronization and loose constraints on phase synchronization. Synchronous operation implies a tighter synchronization based on time perhaps in addition to frequency.

Problems

[edit]

As a result of the difficulties managing time at smaller scales, there are problems associated with clock skew that take on more complexity in distributed computing in which several computers will need to realize the same global time. For instance, in Unix systems, the make command is used to compile new or modified code and seeks to avoid recompiling unchanged code. The make command uses the clock of the machine it runs on to determine which source files need to be recompiled. If the sources reside on a separate file server and the two machines have unsynchronized clocks, the make program might not produce the correct results.[3]

Synchronization is required for accurate reproduction of streaming media. Clock synchronization is a significant component of audio over Ethernet systems.

Solutions

[edit]

In a system with a central server, the synchronization solution is trivial; the server will dictate the system time. Cristian's algorithm and the Berkeley algorithm are potential solutions to the clock synchronization problem in this environment.

In distributed computing, the problem takes on more complexity because a global time is not easily known. The most used clock synchronization solution on the Internet is the Network Time Protocol (NTP), which is a layered client-server architecture based on User Datagram Protocol (UDP) message passing. Lamport timestamps and vector clocks are concepts of the logical clock in distributed computing.

In a wireless network, the problem becomes even more challenging due to the possibility of collision of the synchronization packets on the wireless medium and the higher drift rate of clocks on low-cost wireless devices.[4][5]

Berkeley algorithm

[edit] Main article: Berkeley algorithm

The Berkeley algorithm is suitable for systems where a radio clock is not present. This system has no way of making sure of the actual time other than by maintaining a global average time as the global time. A time server will periodically fetch the time from all the time clients, average the results, and then report back to the clients the adjustment that needs be made to their local clocks to achieve the average. This algorithm highlights the fact that internal clocks may vary not only in the time they contain but also in the clock rate.

Clock-sampling mutual network synchronization

[edit]

Clock-sampling mutual network synchronization (CS-MNS) is suitable for distributed and mobile applications. It has been shown to be scalable over mesh networks that include indirectly-linked non-adjacent nodes and is compatible with IEEE 802.11 and similar standards. It can be accurate to the order of a few microseconds but requires direct physical wireless connectivity with negligible link delay (less than 1 microsecond) on links between adjacent nodes, limiting the distance between neighboring nodes to a few hundred meters.[6]

Cristian's algorithm

[edit] Main article: Cristian's algorithm

Cristian's algorithm relies on the existence of a time server.[7] The time server maintains its clock by using a radio clock or other accurate time source, then all other computers in the system stay synchronized with it. A time client will maintain its clock by making a procedure call to the time server. Variations of this algorithm make more precise time calculations by factoring in network radio propagation time.

Satellite navigation systems

[edit]

In addition to its use in navigation, the Global Positioning System (GPS) can also be used for clock synchronization. The accuracy of GPS time signals is ±10 nanoseconds.[8] Using GPS (or other satellite navigation systems) for synchronization requires a receiver connected to an antenna with unobstructed view of the sky.

Inter-range Instrumentation Group time codes

[edit]

IRIG timecodes are standard formats for transferring timing information. Atomic frequency standards and GPS receivers designed for precision timing are often equipped with an IRIG output. The standards were created by the Telecommunications Working Group of the United States military's Inter-Range Instrumentation Group (IRIG), the standards body of the Range Commanders Council. Work on these standards started in October , and the original standards were accepted in .[9]

Network Time Protocol

[edit]

Network Time Protocol (NTP) is a highly robust protocol, widely deployed throughout the Internet. Well tested over the years, it is generally regarded as the state of the art in distributed time synchronization protocols for unreliable networks. It can reduce synchronization offsets to times of the order of a few milliseconds over the public Internet and to sub-millisecond levels over local area networks.

A simplified version of the NTP protocol, Simple Network Time Protocol (SNTP), can also be used as a pure single-shot stateless primary/secondary synchronization protocol, but lacks the sophisticated features of NTP, and thus has much lower performance and reliability levels.

Precision Time Protocol

[edit]

Precision Time Protocol (PTP) is a master/slave protocol for delivery of highly accurate time over local area networks.

Reference broadcast synchronization

[edit]

The Reference Broadcast Time Synchronization (RBS) algorithm is often used in wireless networks and sensor networks. In this scheme, an initiator broadcasts a reference message to urge the receivers to adjust their clocks.

Reference Broadcast Infrastructure Synchronization

[edit]

The Reference Broadcast Infrastructure Synchronization (RBIS)[10] protocol is a master/slave synchronization protocol, like RBS, based on a receiver/receiver synchronization paradigm. It is specifically tailored to be used in IEEE 802.11 wireless networks configured in infrastructure mode (i.e., coordinated by an access point). The protocol does not require any modification to the access point.

Synchronous Ethernet

[edit]

Synchronous Ethernet uses Ethernet in a synchronous manner such that when combined with synchronization protocols such as PTP in the case of the White Rabbit Project, sub-nanosecond synchronization accuracy is achieved.

For more time synchronization systeminformation, please contact us. We will provide professional answers.

Wireless ad hoc networks

[edit]

Synchronization is achieved in wireless ad hoc networks through sending synchronization messages in a multi-hop manner and each node progressively synchronizing with the node that is the immediate sender of a synchronization message. Examples include Flooding Time Synchronization Protocol (FTSP),[4] and Harmonia,[5] both able to achieve synchronization with accuracy on the order of microseconds.

Huygens

[edit]

Researchers from Stanford and Google introduced Huygens, a probe-based, end-to-end clock synchronization algorithm. Huygens is implemented in software and thus can be deployed in data centers or in public cloud environments. By leveraging some key aspects of modern data centers and applying novel estimation algorithms and signal processing techniques, the Huygens algorithm achieved an accuracy of tens of nanoseconds even at high network load.[11] The findings of this research are being tested in financial market applications.[12]

See also

[edit]
  • Einstein synchronisation
  • International Atomic Time
  • Network Identity and Time Zone
  • Synchronization (computer science)
  • Time and frequency transfer
  • Time signal
  • Time standard
  • Reference Broadcast Infrastructure Synchronization

References

[edit]

Further reading

[edit]

5 Best Practices To Overcome Security Challenges During Data ...

Data synchronization keeps data and other relevant information consistent and accurate across different organizational devices, systems, and applications. Data synchronization is a common practice in businesses, as it helps prevent inconsistencies and allows companies to work with the most current information.

Despite data synchronization being a common practice, it can be challenging to implement from a security point of view. Most organizations in the US and beyond engage IT support services that utilize some of the best practices mentioned in this article to ensure data synchronization takes place safely and securely.

Before we get to these best practices to overcome security challenges during data synchronization, let us briefly explore how data synchronization occurs and the common security challenges during the process.

Data Synchronization 101

Data synchronization typically happens in three phases. In the first phase, an update event is triggered once the data synchronization software detects a change made to the data in a target database. In the second phase, the software compares the previous data version to the version it has just been presented with. In the third phase, it makes changes to the relevant target sources.

Data synchronization can either be synchronous or asynchronous. Asynchronous changes mean the data synching process occurs according to a schedule, e.g., once an hour. Synchronous means the process runs in real-time after every change to a target database.  

The most common security challenges during data synchronization are data exposure and integrity. Your security measures must be in place to preserve the integrity and security of your customer data in compliance with the US government’s regulations on data protection.

Best Practices To Overcome Security Challenges During Data Synchronization

Here are some practices you should implement to guarantee the security and integrity of your data during synchronization:

1. Implement End To End Encryption During Data Synchronization

End-to-end encryption (E2EE) ensures that all data is encrypted before it leaves the source system and decrypted at the destination. E2EE guarantees that even if the data in synchronization is intercepted in transit, it cannot be deciphered and used. With end-to-end encryption, the only person who can decrypt the data is the one with the decryption key.

Ensure your data synchronization tool is equipped with industry-standard encryption, such as AES 256-bit encryption. Also, make sure that you incorporate the Secure Sockets Layer (SSL) and Trusted Storage System (TSS) protocols. SSL will provide secure communication between endpoints, while TSS will provide secure storage and access control for synchronized data. SSL and TSS will guarantee the confidentiality and integrity of sensitive data in transit. If you are concerned about your system security, you can hire IT consultants from KRgroup.com to guide you on the steps you need to take to secure your systems. 

2. Use Reputable Synchronization Software 

An optimal data synchronization software should have features like real-time synchronization, support of multiple platforms (macOS, iOS, Android, Windows, etc.), and a robust security model that protects your data from unauthorized access.

Most reputable synchronization software has all the features mentioned above. In addition, they give your business the flexibility to choose what data you wish to synchronize and what kind of protection should be attached to it. Reputable synchronization software systems can also easily handle complex datasets while maintaining data integrity, all in a secure environment.

3. Implement Access Control 

Access control refers to controlling who can access business data and who cannot. Most data synchronization tools today have incorporated access control into their systems. Access control ensures that only authorized users can view or edit sensitive business data. You can restrict permissions based on a user’s roles in your organization or factors like location.

Lack of access control means that anyone with access to the computer systems where your business data is stored will be able to view the contents. The most common user access control method is through user accounts and passwords. User access control can help you overcome security challenges during data synchronization by allowing you to restrict access to specific data or folders to the relevant parties. 

4. Apply Relevant System Updates and Patches 

System updates and patches keep your computer safe from security threats by patching vulnerabilities that cybersecurity threat actors can exploit to access your system during data synchronization. 

System updates and patches fix bugs, vulnerabilities, and other issues that could contribute to security breaches. Keeping your operating systems patched and updated is a significant way to overcome security challenges during data synchronization.

5. Conduct Security Audits 

Regularly auditing your synchronization process can help identify any security vulnerabilities you may have overlooked. This can help you address these vulnerabilities and improve the overall security of your synchronization process.

Conclusion

Data synchronization is a complex process, but it doesn’t have to be complicated. By following these best practices shared in the article, you can ensure that your data is safe and secure while still being able to sync across multiple systems in real time.

If you want to learn more, please visit our website clock synchronization system.

5 Best Practices To Overcome Security Challenges During Data Synchronization was last updated by