C语言实现window(linux)平台的SNTP,本程序功能主要是实现电脑(或者设备)时间同步。
摘录部分代码: unsignedcharliVnMode;/*LeapSecond(2bits:0),VersionNumber(3bits:3),Mode(3bits:Client=3,Server=4)*/ unsignedcharstratum;/*时间层级(0-15)*/ unsignedcharpoll;/*表示连续信息间的最大间隔,8bits,以2的x次幂秒的方式表示。
实际填0即可*/ unsignedcharprecision;/*时间精度,以2的负x次幂秒表示,8bits。
服务器返回时会填写实际精度*/ unsignedlongrootDelay;/*到主参考时间源的往返总延迟。
32bits固定小数点数,小数点在bit15和bit16之间*/ unsignedlongrootDispersion;/*相对于主参考时间源的正常离差。
32bits固定小数点数,小数点在bit15和bit16之间*/ charreferenceID[4];/*用于识别特殊的参考源*/ NTP_TIME_FMTreferenceTimestamp;/*本地时中最后一次设置或修正时的时间,64bits,timestamp格式*/ NTP_TIME_FMToriginateTimestamp;/*客户端发送请求的时间*/ NTP_TIME_FMTreceiveTimestamp;/*服务器接收到请求的时间*/ NTP_TIME_FMTtransmitTimestamp;/*服务器发送响应的时间*/
1