網(wǎng)絡(luò)時(shí)間協(xié)議NTP(Network Time Protocol)的主要開(kāi)發(fā)者是美國(guó)特拉華大學(xué)的MILLS David L教授設(shè)計(jì)實(shí)現(xiàn)的,由時(shí)間協(xié)議、ICMP時(shí)間戳消息及IP時(shí)間戳選項(xiàng)發(fā)展而來(lái)。NTP用于將計(jì)算機(jī)客戶或服務(wù)器的時(shí)間與另一服務(wù)器同步,使用層次式時(shí)間分布模型。在配置時(shí),NTP可以利用冗余服務(wù)器和多條網(wǎng)絡(luò)路徑來(lái)獲得時(shí)間的高準(zhǔn)確性和高可靠性。即使客戶機(jī)在長(zhǎng)時(shí)間無(wú)法與某一時(shí)間服務(wù)器相聯(lián)系的情況下,仍可提供高準(zhǔn)確度時(shí)間。
實(shí)際應(yīng)用中,還有確保秒級(jí)精度的簡(jiǎn)單的網(wǎng)絡(luò)時(shí)間協(xié)議SNTP(Simple Network Time Protocol)。SNTP是NTP的一個(gè)子集,主要用于那些不需要NTP的精度以較高實(shí)現(xiàn)復(fù)雜性的網(wǎng)絡(luò)時(shí)間同步客戶機(jī)。SNTP協(xié)議已減少了網(wǎng)絡(luò)延時(shí)對(duì)校對(duì)準(zhǔn)確的影響,但沒(méi)有冗余服務(wù)器和校正時(shí)鐘頻率誤差功能。
局域網(wǎng)絡(luò)延相對(duì)較大的原因在于時(shí)間戳一般都是在應(yīng)用層加蓋。為減少操作系統(tǒng)內(nèi)核處理延時(shí)的影響提高NTP授時(shí)精度,發(fā)/收NTP包時(shí)間戳應(yīng)盡量接近主機(jī)真實(shí)發(fā)/收包時(shí)刻。在不改變硬件的條件下,一個(gè)可行的辦法是修改網(wǎng)卡驅(qū)動(dòng)程序,將記錄NTP包發(fā)/收時(shí)間戳從應(yīng)用程序移至網(wǎng)卡驅(qū)動(dòng)程序處,可消除操作系統(tǒng)內(nèi)核處理延時(shí)不確定而引入的誤差。這種方法在局域網(wǎng)中可大幅提高NTP授時(shí)精度至μs級(jí)。
為了減少溫度引起晶振頻率漂移對(duì)時(shí)鐘準(zhǔn)確度的影響,可以采用數(shù)字溫漂補(bǔ)償方法,提高時(shí)鐘長(zhǎng)期計(jì)時(shí)準(zhǔn)確度。先測(cè)出工作溫度范圍內(nèi)溫度對(duì)應(yīng)的溫漂補(bǔ)償系數(shù),工作時(shí)每隔一定時(shí)間,根據(jù)實(shí)際溫度查出對(duì)應(yīng)補(bǔ)償系數(shù)動(dòng)態(tài)地修正時(shí)間。