Globally Synchronized Time via Datacenter Networks

In this paper, we present Datacenter Time Protocol (DTP), a clock synchronization protocol that does not use packets at all, but is able to achieve nanosecond precision. In essence, DTP uses the physical layer of network devices to implement a decentralized clock synchronization protocol. By doing so, DTP eliminates most non-deterministic elements in clock synchronization protocols. Further, DTP uses control messages in the physical layer for communicating hundreds of thousands of protocol messages without interfering with higher layer packets. Thus, DTP has virtually zero overhead since it does not add load at layers 2 or higher layers. It does require replacing network devices, which can be done incrementally. We demonstrate that the precision provided by DTP is bounded by 25.6 nanoseconds for directly connected nodes, and in general, is bounded by 4TD where D is the longest distance between any two servers in a network in terms of number of hops and T is the period of the fastest clock (≈ 6.4ns). Moreover, in software, a DTP daemon can access the DTP clock with usually better than 4T (≈ 25.6ns) precision. As a result, the end-to-end precision can be better than 4T D + 8T nanoseconds. By contrast, the precision of the state of the art protocol is not bounded: The precision is hundreds of nanoseconds when a network is idle and can decrease to hundreds of microseconds when a network is heavily congested.

[1]  Ian A. Kash,et al.  R 2 C 2 : A Network Stack for Rack-scale Computers , 2015 .

[2]  Devavrat Shah,et al.  Fastpass: a centralized "zero-queue" datacenter network , 2015, SIGCOMM 2015.

[3]  Christopher Frost,et al.  Spanner: Google's Globally-Distributed Database , 2012, OSDI.

[4]  Radim Bartos,et al.  Transparent Clocks vs. Enterprise Ethernet switches , 2011, 2011 IEEE International Symposium on Precision Clock Synchronization for Measurement, Control and Communication.

[5]  Hitesh Ballani,et al.  R2C2: A Network Stack for Rack-scale Computers , 2015, Comput. Commun. Rev..

[6]  Hitesh Ballani,et al.  R2C2: A Network Stack for Rack-scale Computers , 2015, Comput. Commun. Rev..

[7]  Fred B. Schneider,et al.  Understanding Protocols for Byzantine Clock Synchronization , 1987 .

[8]  P. Moreira,et al.  Performance results of the first White Rabbit installation for CNGS time transfer , 2012, 2012 IEEE International Symposium on Precision Clock Synchronization for Measurement, Control and Communication Proceedings.

[9]  J. Ridoux,et al.  An IEEE-1588 compatible RADclock , 2012, 2012 IEEE International Symposium on Precision Clock Synchronization for Measurement, Control and Communication Proceedings.

[10]  Devavrat Shah,et al.  Fastpass , 2014, SIGCOMM.

[11]  Alex C. Snoeren,et al.  RotorNet: A Scalable, Low-complexity, Optical Datacenter Network , 2017, SIGCOMM.

[12]  Thomas G. Edwards,et al.  Using SDN to facilitate precisely timed actions on real-time data streams , 2014, HotSDN.

[13]  Flaviu Cristian,et al.  Probabilistic clock synchronization , 1989, Distributed Computing.

[14]  John Ankcorn,et al.  Software-Driven Hardware Development , 2015, FPGA.

[15]  Maciej Lipinski,et al.  White rabbit: a PTP application for robust sub-nanosecond synchronization , 2011, 2011 IEEE International Symposium on Precision Clock Synchronization for Measurement, Control and Communication.

[16]  Junda Liu,et al.  Libra: Divide and Conquer to Verify Forwarding Tables in Huge Networks , 2014, NSDI.

[17]  David Tipper,et al.  A Survey of Clock Synchronization Over Packet-Switched Networks , 2016, IEEE Communications Surveys & Tutorials.

[18]  Pedro Moreira,et al.  White rabbit: Sub-nanosecond timing distribution over ethernet , 2009, 2009 International Symposium on Precision Clock Synchronization for Measurement, Control and Communication.

[19]  Kevin B. Stanton,et al.  Hardware Assisted Precision Time Protocol . Design and case study , 2008 .

[20]  Li Zhang,et al.  Achieving precise coordinated cluster time in a cluster environment , 2008, 2008 IEEE International Symposium on Precision Clock Synchronization for Measurement, Control and Communication.

[21]  P. M. Melliar-Smith,et al.  Byzantine clock synchronization , 1984, PODC '84.

[22]  Enrique Mallada,et al.  Skewless network clock synchronization , 2012, 2013 21st IEEE International Conference on Network Protocols (ICNP).

[23]  Cristian Marinescu,et al.  Synchronizing the Linux system time to a PTP hardware clock , 2011, 2011 IEEE International Symposium on Precision Clock Synchronization for Measurement, Control and Communication.

[24]  Hermann Kopetz,et al.  Clock Synchronization in Distributed Real-Time Systems , 1987, IEEE Transactions on Computers.

[25]  Biswanath Mukherjee,et al.  A survey on high-precision time synchronization techniques for optical datacenter networks and a zero-overhead microsecond-accuracy solution , 2018, Photonic Network Communications.

[26]  David L. Mills,et al.  Internet time synchronization: the network time protocol , 1991, IEEE Trans. Commun..

[27]  Kenneth P. Birman,et al.  Exact temporal characterization of 10 Gbps optical wide-area network , 2010, IMC '10.

[28]  J. Jasperneite,et al.  Enhancements to the time synchronization standard IEEE-1588 for a system of cascaded bridges , 2004, IEEE International Workshop on Factory Communication Systems, 2004. Proceedings..

[29]  W. J. Klepczynski,et al.  GPS: primary tool for time transfer , 1999, Proc. IEEE.

[30]  Bill Ogden,et al.  Ibm system z9 109 technical introduction , 2005 .

[31]  Tal Mizrahi,et al.  Software defined networks: It's about time , 2016, IEEE INFOCOM 2016 - The 35th Annual IEEE International Conference on Computer Communications.

[32]  S. Zatti,et al.  The accuracy of the clock synchronization achieved by TEMPO in Berkeley UNIX 4.3BSD , 1987 .

[33]  Amin Vahdat,et al.  Exploiting a Natural Network Effect for Scalable, Fine-grained Clock Synchronization , 2018, NSDI.

[34]  Hakim Weatherspoon,et al.  SoNIC: Precise Realtime Software Access and Control of Wired Networks , 2013, NSDI.

[35]  Amin Vahdat,et al.  A scalable, commodity data center network architecture , 2008, SIGCOMM '08.

[36]  Bill Carter,et al.  What is the Open Compute Project? , 2018, 2018 Optical Fiber Communications Conference and Exposition (OFC).

[37]  Darryl Veitch,et al.  Robust synchronization of software clocks across the internet , 2004, IMC '04.

[38]  Darryl Veitch,et al.  PC based precision timing without GPS , 2002, SIGMETRICS '02.

[39]  Michel Hack,et al.  Almost Peer-to-Peer Clock Synchronization , 2007, 2007 IEEE International Parallel and Distributed Processing Symposium.

[40]  Radim Bartos,et al.  The impact of network latency on the synchronization of real-world IEEE 1588-2008 devices , 2010, 2010 IEEE International Symposium on Precision Clock Synchronization for Measurement, Control and Communication.

[41]  Ioannis Tomkos,et al.  Optical Interconnects for Future Data Center Networks , 2012 .