NTP的工作模式
Server/Client mode:用戶向一個或多個服務(wù)器發(fā)出服務(wù)請求,根據(jù)所交換的信息,從中選擇認為準確的時間,并調(diào)整本地的時鐘。
Multicast/Broadcast mode:此種模式是適用于在高速的LAN上。利用一個或多個服務(wù)器在固定的周期向某個多播地址做廣播。
Symmetric mode:兩個以上的Server互相進行時間消息的通訊,可以相互校正對方的時間,以維持整個subnet的時間的一致性。
局域網(wǎng)內(nèi)同步(這個時在工作中用得多的):如果只需要在本局域網(wǎng)內(nèi)進行系統(tǒng)間的時鐘同步,那么就可以使用局域網(wǎng)中任何一個系統(tǒng)的時鐘。你需要選擇局域網(wǎng)中的一個節(jié)點的時鐘作為“”的時間源,然后其它的節(jié)點就只需要與這個時間源進行時間同步即可。使用這種方式,所有的節(jié)點都會使用一個公共的系統(tǒng)時鐘,但是不需要可局域網(wǎng)外的系統(tǒng)進行時鐘同步。如果一個系統(tǒng)在局域網(wǎng)的內(nèi)部,同時又不能使用無線時鐘,這種方式是的選擇。
任何晶振實際工作頻率都是不穩(wěn)定的,只是程度不同而已。即使溫度補償?shù)木д?,在常溫范圍?nèi)(攝氏10℃~35℃)也有大約5×10-7~2×10-6的誤差。晶振實際頻率是受外界多種因素(溫度、電壓、老化等)影響而改變的。因此,時鐘頻率偏差系數(shù)k并非恒定不變的。每隔一定時間,NTP客戶機要對時鐘頻率偏差系數(shù)k進行校正,才能保證計時精度。
本程序能通過網(wǎng)絡(luò)授時服務(wù)器獲取當前時間,因為一般我們的手機只能提供到分鐘的時間顯示,并且由于手機硬件的固有問題導(dǎo)致經(jīng)常會出現(xiàn)手機系統(tǒng)時間不準確問題,(已知的某平臺的手機會在充電后時間變快4分鐘),這是編寫本程序的初衷,本程序功能夠提供給使用者到秒級的時間顯示,同時告訴使用者手機系統(tǒng)時間與當前標準時間的差值,但無權(quán)去修改使用者手機的系統(tǒng)時間,軟件使用中會消耗非常少的網(wǎng)絡(luò)流量。