NTP的工作模式
Server/Client mode:用戶向一個或多個服務(wù)器發(fā)出服務(wù)請求,根據(jù)所交換的信息,從中選擇認(rèn)為準(zhǔn)確的時間,并調(diào)整本地的時鐘。
Multicast/Broadcast mode:此種模式是適用于在高速的LAN上。利用一個或多個服務(wù)器在固定的周期向某個多播地址做廣播。
Symmetric mode:兩個以上的Server互相進(jìn)行時間消息的通訊,可以相互校正對方的時間,以維持整個subnet的時間的一致性。
局域網(wǎng)內(nèi)同步(這個時在工作中用得多的):如果只需要在本局域網(wǎng)內(nèi)進(jìn)行系統(tǒng)間的時鐘同步,那么就可以使用局域網(wǎng)中任何一個系統(tǒng)的時鐘。你需要選擇局域網(wǎng)中的一個節(jié)點的時鐘作為“”的時間源,然后其它的節(jié)點就只需要與這個時間源進(jìn)行時間同步即可。使用這種方式,所有的節(jié)點都會使用一個公共的系統(tǒng)時鐘,但是不需要可局域網(wǎng)外的系統(tǒng)進(jìn)行時鐘同步。如果一個系統(tǒng)在局域網(wǎng)的內(nèi)部,同時又不能使用無線時鐘,這種方式是的選擇。
為了減少溫度引起晶振頻率漂移對時鐘準(zhǔn)確度的影響,可以采用數(shù)字溫漂補(bǔ)償方法,提高時鐘長期計時準(zhǔn)確度。先測出工作溫度范圍內(nèi)溫度對應(yīng)的溫漂補(bǔ)償系數(shù),工作時每隔一定時間,根據(jù)實際溫度查出對應(yīng)補(bǔ)償系數(shù)動態(tài)地修正時間。
局域網(wǎng)絡(luò)延相對較大的原因在于時間戳一般都是在應(yīng)用層加蓋。為減少操作系統(tǒng)內(nèi)核處理延時的影響提高NTP授時精度,發(fā)/收NTP包時間戳應(yīng)盡量接近主機(jī)真實發(fā)/收包時刻。在不改變硬件的條件下,一個可行的辦法是修改網(wǎng)卡驅(qū)動程序,將記錄NTP包發(fā)/收時間戳從應(yīng)用程序移至網(wǎng)卡驅(qū)動程序處,可消除操作系統(tǒng)內(nèi)核處理延時不確定而引入的誤差。這種方法在局域網(wǎng)中可大幅提高NTP授時精度至μs級。