NTP的工作模式
Server/Client mode:用戶向一個或多個服務(wù)器發(fā)出服務(wù)請求,根據(jù)所交換的信息,從中選擇認(rèn)為準(zhǔn)確的時間,并調(diào)整本地的時鐘。
Multicast/Broadcast mode:此種模式是適用于在高速的LAN上。利用一個或多個服務(wù)器在固定的周期向某個多播地址做廣播。
Symmetric mode:兩個以上的Server互相進行時間消息的通訊,可以相互校正對方的時間,以維持整個subnet的時間的一致性。
基于NTP減少計算機時鐘頻率偏差
時鐘頻率偏差是時鐘長期計時累積誤差的主要原因,要提高時鐘長期計時精度,必須補償時鐘頻率偏差。聯(lián)網(wǎng)的計算機可采用NTP方式,可非常方便地校準(zhǔn)時鐘頻率偏差。以NTP服務(wù)器時鐘為標(biāo)準(zhǔn)時間,在某一時刻設(shè)置NTP客戶機時間為NTP服務(wù)器當(dāng)前時間T0,經(jīng)過一段時間后,NTP服務(wù)器時間為T0+tsn,NTP客戶端時間為T0+tcn。因為存在時鐘頻率偏差,tsn與tcn并不相等。NTP客戶端時間tcn需乘以時鐘頻率偏差系數(shù)k才等于tsn,即tsn=k×tcn,所以k=tsn/tcn。
網(wǎng)絡(luò)時間協(xié)議NTP(Network Time Protocol)的主要開發(fā)者是美國特拉華大學(xué)的MILLS David L教授設(shè)計實現(xiàn)的,由時間協(xié)議、ICMP時間戳消息及IP時間戳選項發(fā)展而來。NTP用于將計算機客戶或服務(wù)器的時間與另一服務(wù)器同步,使用層次式時間分布模型。在配置時,NTP可以利用冗余服務(wù)器和多條網(wǎng)絡(luò)路徑來獲得時間的高準(zhǔn)確性和高可靠性。即使客戶機在長時間無法與某一時間服務(wù)器相聯(lián)系的情況下,仍可提供高準(zhǔn)確度時間。
本程序能通過網(wǎng)絡(luò)授時服務(wù)器獲取當(dāng)前時間,因為一般我們的手機只能提供到分鐘的時間顯示,并且由于手機硬件的固有問題導(dǎo)致經(jīng)常會出現(xiàn)手機系統(tǒng)時間不準(zhǔn)確問題,(已知的某平臺的手機會在充電后時間變快4分鐘),這是編寫本程序的初衷,本程序功能夠提供給使用者到秒級的時間顯示,同時告訴使用者手機系統(tǒng)時間與當(dāng)前標(biāo)準(zhǔn)時間的差值,但無權(quán)去修改使用者手機的系統(tǒng)時間,軟件使用中會消耗非常少的網(wǎng)絡(luò)流量。