NTP同步原理
NTP基本工作原理,客戶端A和服務(wù)器B通過網(wǎng)絡(luò)相連,它們都有自己獨(dú)立的系統(tǒng)時(shí)鐘,要實(shí)現(xiàn)各自系統(tǒng)時(shí)鐘的自動(dòng)同步,作如下假設(shè):
客戶端A和B的系統(tǒng)時(shí)鐘同步之前,客戶端A的時(shí)鐘設(shè)定為10:50:00am,服務(wù)器B的時(shí)鐘設(shè)定為11:00:00am。以服務(wù)器B為NTP時(shí)間服務(wù)器,即客戶端A將使自己的時(shí)鐘與服務(wù)器B的時(shí)鐘同步。數(shù)據(jù)包在客戶端A和B之間單向傳輸所需要的時(shí)間為1秒。
系統(tǒng)時(shí)鐘同步的工作過程如下:
客戶端A發(fā)送一個(gè)NTP消息包給服務(wù)器B,該消息包帶有它離開客戶端A時(shí)的時(shí)間戳,該時(shí)間戳為10:50:00am(T1)。
當(dāng)此NTP消息包到達(dá)服務(wù)器B時(shí),服務(wù)器B加上自己的時(shí)間戳,該時(shí)間戳為11:00:01am(T2)。
當(dāng)此NTP消息包離開服務(wù)器B時(shí),服務(wù)器B再加上自己的時(shí)間戳,該時(shí)間戳為11:00:02am(T3)。
當(dāng)客戶端A接收到該響應(yīng)消息包時(shí),加上一個(gè)新的時(shí)間戳,該時(shí)間戳為10:00:03am(T4)。
至此,客戶端A 擁有足夠信息來計(jì)算以下兩個(gè)重要參數(shù):
NTP 消息來回一個(gè)周期的時(shí)延:Delay=(T4-T1)-(T3-T2)。
RouterA 相對(duì)RouterB 的時(shí)間差:Offset=((T2-T1)+(T3-T4))/2。
RouterA 根據(jù)這些信息來設(shè)定自己的時(shí)鐘,實(shí)現(xiàn)與RouterB 的時(shí)鐘同步。
NTP使用端口以下兩幅圖為NTP的抓包,10.121.35.26為一臺(tái)HJ210-BDRBP時(shí)鐘服務(wù)器,10.121.35.1為一臺(tái)客戶端。
10.121.35.1為一臺(tái)客戶端
由抓包分析,客戶端通過一個(gè)隨機(jī)端口向服務(wù)器的123端口發(fā)送NTP查詢包,服務(wù)器在接受到查詢包后,通過123端口到達(dá)服務(wù)器的發(fā)送端口,來實(shí)現(xiàn)同步。
日常抓包中常見的是源端口和目的端口都是123的數(shù)據(jù)包。如下圖:
授時(shí)功能的完成
在日常網(wǎng)絡(luò)策略開放中,為實(shí)現(xiàn)授時(shí)功能的完成,需開放客戶端和服務(wù)器雙向的UDP123端口。有時(shí)只開發(fā)單向UDP123端口仍可以授時(shí),是應(yīng)為部分防火墻默認(rèn)是對(duì)相同方向UDP數(shù)據(jù)包如果一路開放,另外一路默認(rèn)準(zhǔn)許通行,其并不是只開發(fā)單向鏈路就可以實(shí)現(xiàn)校時(shí)功能。
咨詢電話:
掃一掃咨詢微信客服