如何用socket取一unix网络服务器的时间? ( 积分: 100 )

  • 主题发起人 主题发起人 xchen301
  • 开始时间 开始时间
X

xchen301

Unregistered / Unconfirmed
GUEST, unregistred user!
仅知道unix服务器网络时间服务端口为13,如何取,请教了~
 
通过Udp协议去连接13端口,可以获得时间编码格式为:
< YYYY MM DD HH MM SS MMM L NTSC-UTC XXXXX

ASCII字符 &quot;<&quot;是时间标记码

YYYY MM DD HH MM SS MMM
年 月 日 时 分 秒 毫秒

L为1,表示一个正闰秒将会在本月末被加上,即这一月最后一秒是第60秒,L为2,表本
月末将会有一个负闰秒。为0表示本月没有闰秒

NTSC-UTC表示服务器所发出的时间编码为国家授时中心所保持的UTC时间

XXXXX为保留位

最后加上回车换行符

用户向服务器要求时间编码时,可首先记下本机时间T1,向服务器发送ASCII码字符串
“>XXX.XXX.XXX.XXX”,即标记码“>”加用户计算机IP地址,服务器收到后,得出此
刻时间编码,发送给用户,用户收到服务器发来的时间标记码“<”后,记下时刻T2,
随后解出服务器时间编码T3,忽略服务器耗时,服务器与用户计算机时差为T3-(T1+T2)/2,
用户调整计算机时间,时间服务完成。
 
后退
顶部