NTP意圖將所有參與計(jì)算機(jī)的協(xié)調(diào)世界時(shí)(UTC)時(shí)間同步到幾毫秒誤差內(nèi)。它使用Marzullo算法的修改版來選擇的時(shí)間服務(wù)器,其設(shè)計(jì)旨在減輕可變網(wǎng)絡(luò)延遲造成的影響。NTP通??梢栽诠不ヂ?lián)網(wǎng)保持幾十秒的誤差,并且在理想的局域網(wǎng)環(huán)境中可以實(shí)現(xiàn)超過1毫秒的精度。不對(duì)成路由可擁塞控制可能導(dǎo)致100毫秒(或更高)的錯(cuò)誤。
任何晶振實(shí)際工作頻率都是不穩(wěn)定的,只是程度不同而已。即使溫度補(bǔ)償?shù)木д瘢诔胤秶鷥?nèi)(攝氏10℃~35℃)也有大約5×10-7~2×10-6的誤差。晶振實(shí)際頻率是受外界多種因素(溫度、電壓、老化等)影響而改變的。因此,時(shí)鐘頻率偏差系數(shù)k并非恒定不變的。每隔一定時(shí)間,NTP客戶機(jī)要對(duì)時(shí)鐘頻率偏差系數(shù)k進(jìn)行校正,才能保證計(jì)時(shí)精度。
NTP授時(shí)精度與NTP服務(wù)器與用戶間的網(wǎng)絡(luò)狀況有關(guān),主要取決于NTP包往返路由的延時(shí)對(duì)稱程度,往返路由的延時(shí)不對(duì)稱值不超過網(wǎng)絡(luò)延時(shí)。式(2)是在假設(shè)NTP請(qǐng)求和回復(fù)包在網(wǎng)上傳送延時(shí)相等,即d1=d2=d/2的情況下得出的,而d1、d2的取值范圍在(0...d)間,由式(3)可以得出授時(shí)誤差是±d/2。一般廣域網(wǎng)的網(wǎng)絡(luò)延時(shí)在10 ms~500ms之間;局域網(wǎng)的網(wǎng)絡(luò)延時(shí)在計(jì)時(shí)操作系統(tǒng)內(nèi)核處理延遲的情況下通常小于1ms。
實(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)確的影響,但沒有冗余服務(wù)器和校正時(shí)鐘頻率誤差功能。