NTP的工作模式
Server/Client mode:用户向一个或多个服务器发出服务请求,根据所交换的信息,从中选择认为准确的时间,并调整本地的时钟。
Multicast/Broadcast mode:此种模式是适用于在高速的LAN上。利用一个或多个服务器在固定的周期向某个多播地址做广播。
Symmetric mode:两个以上的Server互相进行时间消息的通讯,可以相互校正对方的时间,以维持整个subnet的时间的一致性。
局域网内同步(这个时在工作中用得多的):如果只需要在本局域网内进行系统间的时钟同步,那么就可以使用局域网中任何一个系统的时钟。你需要选择局域网中的一个节点的时钟作为“”的时间源,然后其它的节点就只需要与这个时间源进行时间同步即可。使用这种方式,所有的节点都会使用一个公共的系统时钟,但是不需要可局域网外的系统进行时钟同步。如果一个系统在局域网的内部,同时又不能使用无线时钟,这种方式是的选择。
任何晶振实际工作频率都是不稳定的,只是程度不同而已。即使温度补偿的晶振,在常温范围内(摄氏10℃~35℃)也有大约5×10-7~2×10-6的误差。晶振实际频率是受外界多种因素(温度、电压、老化等)影响而改变的。因此,时钟频率偏差系数k并非恒定不变的。每隔一定时间,NTP客户机要对时钟频率偏差系数k进行校正,才能保证计时精度。
本程序能通过网络授时服务器获取当前时间,因为一般我们的手机只能提供到分钟的时间显示,并且由于手机硬件的固有问题导致经常会出现手机系统时间不准确问题,(已知的某平台的手机会在充电后时间变快4分钟),这是编写本程序的初衷,本程序功能够提供给使用者到秒级的时间显示,同时告诉使用者手机系统时间与当前标准时间的差值,但无权去修改使用者手机的系统时间,软件使用中会消耗非常少的网络流量。