Southsoftware.com
   

Time Protocol

The TIME service is an Internet protocol defined in RFC 868. Its purpose is to provide a site-independent, machine readable date and time.

TIME can operate over either TCP or UDP. When operating over TCP, a host connects to a server that supports the TIME protocol on TCP port 37. The server then sends the time as a 32-bit unsigned binary number in network byte order representing a number of seconds since 00:00 (midnight) 1 January, 1900 GMT and closes the connection. The host receives the time and closes the connection.

When operating over UDP, the client sends a (typically empty) datagram to UDP port 37. The server responds with a single datagram of length 4 containing the time. There is no connection setup or teardown.

Time Protocol uses TCP/IP connection and has resolution of 1 second.

Year 2036 problem

The TIME protocol uses a 32-bit unsigned number of seconds from 0:00:00 01 Jan 1900 GMT, which overflows and turns back to 0 on 6:28:16 20 Feb 2036 GMT.

To fix the incorrect time representation, Advanced Time Synchronizer from version 6 and later uses the high bit of the 32-bit unsigned number to separate time periods.

When the high bit is set, the 32-bit unsigned number represents the period from 3:14:08 20 Jan 1968 GMT to 6:28:15 20 Feb 2036 GMT.

When the high bit is not set, the 32-bit unsigned number represents the period from 6:28:16 20 Feb 2036 GMT to 9:42:23 26 Feb 2104 GMT.

Therefore, the representation range is from 3:14:08 20 Jan 1968 GMT to 9:42:23 26 Feb 2104 GMT.

Categories: Manual

Leave a Reply

   
About us   Cookie policy   Privacy policy   Terms of use   Link to us