NTP協(xié)議和算法-IT運(yùn)維
2020-06-03 17:22 作者:艾銻無(wú)限 瀏覽量:
NTP協(xié)議和算法-IT運(yùn)維
IT運(yùn)維工作,以服務(wù)為中心,以穩(wěn)定、安全、高效為三個(gè)基本點(diǎn),確保公司的互聯(lián)網(wǎng)業(yè)務(wù)能夠 7×24 小時(shí)為您提供高質(zhì)量的服務(wù)。
下面由網(wǎng)絡(luò)運(yùn)維工程師為您講解專業(yè)的NTP協(xié)議和算法
NTP:Network Time Protocol,網(wǎng)絡(luò)時(shí)間協(xié)議,用于時(shí)間同步,它可以提供高精準(zhǔn)度的時(shí)間校正(LAN上與標(biāo)準(zhǔn)時(shí)間差小于1毫秒,WAN上幾十毫秒),且可通過(guò)加密確認(rèn)的方式來(lái)防止惡意攻擊。
NTP校時(shí)原理:
每一個(gè)時(shí)間包內(nèi)包含最近一次的事件的時(shí)間信息、包括上次事件的發(fā)送與接收時(shí)間、傳遞現(xiàn)在事件的當(dāng)?shù)貢r(shí)間、及此包的接收時(shí)間。在收到上述包后即可計(jì)算出時(shí)間的偏差量與傳遞資料的時(shí)間延遲。時(shí)間服務(wù)器利用一個(gè)過(guò)濾演算法,及先前八個(gè)校時(shí)資料計(jì)算出時(shí)間參考值,判斷后續(xù)校時(shí)包的精確性,一個(gè)相對(duì)較高的離散程度,表示一個(gè)對(duì)時(shí)資料的可信度比較低。僅從一個(gè)時(shí)間服務(wù)器獲得校時(shí)信息,不能校正通訊過(guò)程所造成的時(shí)間偏差,而同時(shí)與許多時(shí)間服務(wù)器通信校時(shí),就可利用過(guò)濾算法找出相對(duì)較可靠的時(shí)間來(lái)源,然后采用它的時(shí)間來(lái)校時(shí)。
時(shí)間信息的傳輸都使用UDP協(xié)議。
NTP協(xié)議格式:
NTP packet = NTP header + Four TimeStamps = 48byte
NTP header : 16byte
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
|LI | VN |Mode | Stratum | Poll | Precision |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
LeapYearIndicator : 2bit
VersionNumber : 3bit
Stratum : 8bit
Mode : 3 bit
PollInterval : 8 bit
Percision : 8bit
| Root Delay |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Root delay : 32bit
| Root Dispersion |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Root Dispersion : 32bit
| Reference Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Reference Identifier : 32bit
Four TimeStamps : 32byte
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
| Reference Timestamp |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Reference Timestamp : 64bit
| Originate Timestamp |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Originate Timestamp : 64bit
| Receive Timestamp |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Receive Timestamp : 64bit
| Transmit Timestamp |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Transmit Timestamp : 64bit
| Authenticator (optional) (96) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Network Time Protocol使用port 123,64 bits的binary number,前32 bits和Time Protocol一樣,后32 bits用以表示秒以下的部份,并加上網(wǎng)絡(luò)延時(shí)量的估計(jì).理論上可以精確到到2的-32次方秒,實(shí)際使用大約只有50ms(廣域網(wǎng))左右,在局域網(wǎng)可達(dá)1ms。在實(shí)際中您應(yīng)找最近而且最穩(wěn)定的Server作時(shí)間源。
SNTP算是NTP的一個(gè)子集,它不像NTP可以同時(shí)和多個(gè)Server對(duì)時(shí), 一般在Client端下使用。