該協(xié)議通常描述為一種主從式架構(gòu),但它也可以在點(diǎn)對點(diǎn)網(wǎng)絡(luò)中,對等體雙方可將另一端認(rèn)定為潛在的時(shí)間源。發(fā)送和接收時(shí)間戳采用用戶數(shù)據(jù)報(bào)協(xié)議(UDP)的通信端口123實(shí)現(xiàn)。這也可以使用廣播或多播,曲中的客戶端在初的往返校準(zhǔn)交換后被動地監(jiān)聽時(shí)間更新。NTP提供一個(gè)即將到來的閏秒調(diào)整的警告,但不會傳輸有關(guān)本地時(shí)區(qū)或夏時(shí)制的信息。
計(jì)算機(jī)時(shí)鐘偏差分析
通用PC機(jī)自帶兩類時(shí)鐘源:硬件時(shí)鐘和軟件時(shí)鐘(或稱為系統(tǒng)時(shí)鐘)。不論是硬件時(shí)鐘還是軟件時(shí)鐘,都是由石英晶體振蕩器驅(qū)動的,通過累計(jì)石英晶體振蕩器輸出脈沖數(shù),換算出時(shí)間。所以計(jì)算機(jī)時(shí)鐘的準(zhǔn)確度取決于晶振頻率準(zhǔn)確度。受溫度變化、電壓、芯片老化等因素影響,晶振頻率會發(fā)生小幅度波動,其中溫度對晶振頻影響。
由于工藝和材料的原因,同一生產(chǎn)線上標(biāo)稱頻率相同的石英晶體,其實(shí)際頻率是不同的,實(shí)際頻率與標(biāo)稱頻率偏差率從10-4量級到10-9量級不等。以10-4量級為例,時(shí)鐘每天至少誤差8.64 s。
NTP授時(shí)精度與NTP服務(wù)器與用戶間的網(wǎng)絡(luò)狀況有關(guān),主要取決于NTP包往返路由的延時(shí)對稱程度,往返路由的延時(shí)不對稱值不超過網(wǎng)絡(luò)延時(shí)。式(2)是在假設(shè)NTP請求和回復(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)用中,還有確保秒級精度的簡單的網(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í)對校對準(zhǔn)確的影響,但沒有冗余服務(wù)器和校正時(shí)鐘頻率誤差功能。