先思考一個(gè)問(wèn)題:當(dāng)一個(gè)客戶(hù)端配置向多個(gè)NTP時(shí)間服務(wù)器校時(shí),此時(shí)客戶(hù)端優(yōu)先向哪個(gè)時(shí)間服務(wù)器同步時(shí)間呢?
一個(gè)完整的NTP校時(shí)請(qǐng)求分四步:
1、客戶(hù)端向服務(wù)器發(fā)起校時(shí)請(qǐng)求
2、服務(wù)器收到客戶(hù)端發(fā)送的校時(shí)請(qǐng)求
3、服務(wù)器處理客戶(hù)端的校時(shí)請(qǐng)求并發(fā)送(響應(yīng))給客戶(hù)端
4、客戶(hù)端收到服務(wù)器響應(yīng)的信息并修正自身時(shí)間
下面我們從服務(wù)器與客戶(hù)端兩個(gè)方向來(lái)分析:
先來(lái)了解一下NTP協(xié)議中的stratum(層次):
NTP時(shí)間服務(wù)器有層次(stratum)之分,取值范圍1~15,頂層的參考時(shí)鐘編號(hào)為0。NTP官網(wǎng)對(duì)stratum的解釋?zhuān)?/span>
“層是同步距離的衡量標(biāo)準(zhǔn)。與抖動(dòng)或延遲相反,分層是一種更靜態(tài)的測(cè)量方法?;旧?,從客戶(hù)端的角度來(lái)看,它是服務(wù)器到參考時(shí)鐘的數(shù)量。因此,參考時(shí)鐘本身位于層 0,而最近的服務(wù)器位于層 1。在網(wǎng)絡(luò)上,沒(méi)有任何有效的 NTP 信息是分層 0 的。
與第 n 層服務(wù)器同步的服務(wù)器將在第 n + 1 層運(yùn)行。層的上限是 15。分層的目的是通過(guò)優(yōu)先選擇分層較低的服務(wù)器來(lái)避免同步循環(huán)?!?/span>
根據(jù)官網(wǎng)解釋?zhuān)琋TP時(shí)間服務(wù)器的層次結(jié)構(gòu)如下圖所示:
另根據(jù)RFC5905(NTPv4)協(xié)議和算法規(guī)范中對(duì)于stratum的描述得知
“隨著分層號(hào)的增加,其精確度也會(huì)降低,這取決于特定的網(wǎng)絡(luò)路徑和系統(tǒng)時(shí)鐘穩(wěn)定性。 以同步距離衡量的平均誤差,與分層數(shù)和衡量的往返延遲大致成正比增加?!?/span>
根據(jù)NTP的stratum可知,第1層服務(wù)器在NTP層次結(jié)構(gòu)中具有最高的優(yōu)先級(jí)。層數(shù)越大距離參考時(shí)鐘距離越遠(yuǎn),其精度越差。
當(dāng)有多個(gè)NTP服務(wù)器時(shí),可以通過(guò)修改其層數(shù)來(lái)調(diào)整它們的優(yōu)先級(jí)。例如,可以將某個(gè)NTP服務(wù)器的層數(shù)設(shè)置為1,而將另一個(gè)服務(wù)器的層數(shù)設(shè)置為2。這樣,層數(shù)較低的服務(wù)器將具有更高的優(yōu)先級(jí),因?yàn)樗x參考時(shí)間源更近。在設(shè)置多個(gè)NTP時(shí)鐘源的優(yōu)先級(jí)時(shí),需要根據(jù)網(wǎng)絡(luò)環(huán)境和需求進(jìn)行合理的調(diào)整。通過(guò)選擇合適的層數(shù)和可能的配置選項(xiàng),可以確保網(wǎng)絡(luò)中的設(shè)備能夠準(zhǔn)確地同步時(shí)間。
附:Stratum取值范圍:
? 0表示未指定或無(wú)效
? 1表示主服務(wù)器(例如,配備GPS/BD衛(wèi)星或CDMA/5G基站的時(shí)間服務(wù)器)
? 2-15表示二級(jí)服務(wù)器,通過(guò)NTP協(xié)議實(shí)現(xiàn)的二級(jí)服務(wù)器
? 16表示不同步的
? 17-255保留
客戶(hù)端系統(tǒng)種類(lèi)繁多,下面以L(fǎng)inux(centos)和Windows兩個(gè)系統(tǒng)來(lái)舉例設(shè)置同步優(yōu)先級(jí)。
Linux系統(tǒng)有兩個(gè)時(shí)間同步守護(hù)進(jìn)程:ntpd和chronyd,centos6.5及之前的版本使用的是ntpd,centos7及之后的版本使用的是chrony。兩者在配置上基本一樣,下面以chrony舉例:
從官網(wǎng)可知,chrony.conf配置文件中,可配置多個(gè)時(shí)鐘源,如下圖所示:
可通過(guò)設(shè)置[option]為“prefer”選項(xiàng)來(lái)設(shè)置優(yōu)先同步哪一臺(tái)時(shí)鐘源
“首選
與不帶 prefer 選項(xiàng)的信息源相比,優(yōu)先選擇此信息源。”
Microsoft官方給出了配置多個(gè)時(shí)間服務(wù)器的方法,如下圖
Windows命令提示符:
w32tm /config /manualpeerlist:"ntpserver.contoso.com clock.adatum.com" /syncfromflags:manual /update
優(yōu)先級(jí)設(shè)置
優(yōu)先級(jí)設(shè)置命令
w32tm /config /manualpeerlist:"ntpserver.contoso.com,0x8 clock.adatum.com,0x2" /syncfromflags:manual /update
查詢(xún)配置參數(shù)命令
reg query HKLMSYSTEMCurrentControlSetServicesW32TimeParameters
end.
--------------------------
原創(chuàng)聲明:
作者:yxj
出處:http://parrol.cn/nts/index.php/content/285
版權(quán):本文版權(quán)歸作者和北京昕辰清虹科技有限公司共有
轉(zhuǎn)載:未經(jīng)作者同意,不得轉(zhuǎn)載;否則必究法律責(zé)任