賈杰峰,王 錚,劉連照
(1.中華通信系統(tǒng)有限責(zé)任公司 河北分公司,河北 石家莊 050081;2.中國電子科技集團公司第五十四研究所,河北 石家莊 050081;3.中國洛陽電子裝備試驗中心,河南 洛陽 471003)
隨著計算機技術(shù)的發(fā)展,網(wǎng)絡(luò)時間協(xié)議(Network Time Protocol,NTP)授時技術(shù)已經(jīng)滲入到了國民經(jīng)濟的各個方面。NTP由美國特拉華大學(xué)的David L.Mills教授提出,是互聯(lián)網(wǎng)上公認(rèn)的時間同步工具[1]。NTP協(xié)議是一種用在分布式時間服務(wù)器和客戶端之間的時間同步授時技術(shù)[2]。在文獻[3-8]中論述了NTP時間同步精度在局域網(wǎng)上可以達到1 ms級,在互聯(lián)網(wǎng)中可以達到幾十毫秒級的同步精度。在應(yīng)用NTP授時服務(wù)過程中,傳輸網(wǎng)絡(luò)架構(gòu)、網(wǎng)絡(luò)負(fù)荷及網(wǎng)絡(luò)拓?fù)涞纫蛩貢?dǎo)致NTP授時服務(wù)精度出現(xiàn)波動。當(dāng)NTP授時精度惡化到一定程度時,NTP授時設(shè)備將無法完成正常授時服務(wù)。因此,研制一款NTP授時監(jiān)測終端顯得尤為重要。
通過獲取NTP用時設(shè)備與時間基準(zhǔn)設(shè)備的時間偏差,實時反映NTP授時服務(wù)的健康狀態(tài),可以增強整個NTP授時服務(wù)系統(tǒng)的時間傳遞穩(wěn)定性和可靠性,為用戶評估NTP授時服務(wù)提供支撐。
NTP是TCP/IP協(xié)議家族的一員。目前,應(yīng)用較為廣泛的有NTPv3協(xié)議(RFC 1305)、NTPv4協(xié)議(RFC 5905)和SNTP協(xié)議,其中NTPv4協(xié)議兼容NTPv3與SNTP協(xié)議。NTP時間服務(wù)器為客戶機提供標(biāo)準(zhǔn)時間,時間服務(wù)器的時間主要來自于接收衛(wèi)星導(dǎo)航系統(tǒng)時間[9]。NTP協(xié)議采用UDP協(xié)議進行傳輸,NTP服務(wù)器端的端口號為123[10]。NTP協(xié)議支持3種工作模式:主從模式(Server/Client Mode)、對稱模式(Symmetric Mode)和多播/廣播模式(Multicast/Broadcast Mode)[11]。NTP的設(shè)計充分考慮了互聯(lián)網(wǎng)上時間同步的復(fù)雜性,是一種主流的網(wǎng)絡(luò)時間同步工具[12]。
NTP最典型的工作模式以客戶端和服務(wù)器的方式進行通信,不僅可以估算數(shù)據(jù)包在網(wǎng)絡(luò)上的往返時延,還可以估算計算機時鐘偏差,從而實現(xiàn)網(wǎng)絡(luò)上的高精度計算機校時[13]。客戶端使用時鐘偏差來調(diào)整本地時鐘,實現(xiàn)自身時間向服務(wù)器時間溯源[14-15]。
在客戶端/服務(wù)器模式下,NTP服務(wù)器與NTP客戶端依據(jù)NTP協(xié)議規(guī)定的報文格式進行報文交互。客戶端周期性地向服務(wù)器發(fā)送時間同步請求消息,該信息包含客戶端發(fā)送時本地時刻T1。服務(wù)器收到該報文后,立即將接收時刻T2寫入報文,同時將該報文回復(fù)給客戶端,在發(fā)送時將服務(wù)器的發(fā)送時刻T3寫入報文。客戶端在接收到該報文后,將本地接收時刻T4寫入[16]。至此,這個NTP報文內(nèi)就有了4個時間參數(shù)。在進行NTP監(jiān)測時,NTP監(jiān)測終端僅獲取時間偏差,不進行本地時鐘的調(diào)整,同時將時間偏差上報給監(jiān)控計算機,由監(jiān)控計算機進行數(shù)據(jù)分析與處理。NTP授時監(jiān)測原理如圖1所示。

圖1 NTP授時監(jiān)測原理Fig.1 Principle diagram of NTP timing monitoring
圖1中,T1為NTP監(jiān)測終端發(fā)出NTP報文時的本地時刻;T2為NTP服務(wù)器收到NTP報文時的到達時刻;T3為NTP服務(wù)器發(fā)送NTP報文時的發(fā)送時刻;T4為NTP監(jiān)測終端收到NTP報文時的本地時刻;單向時延(T_MS)為由NTP監(jiān)測終端發(fā)出到NTP服務(wù)器的路徑延遲;單向時延(T_SM)為由NTP服務(wù)器發(fā)出到NTP監(jiān)測終端的路徑延遲。
由此可知以下關(guān)系:
offset=T2-T1-TMS,
(1)
offset=T4-T3+TSM。
(2)
按照NTP協(xié)議規(guī)定,服務(wù)器與客戶端間的單向時延是相等的,即:
delay=-TMS=+TSM。
(3)
將式(1)與式(2)相加,并將式(3)帶入,可得主從鐘差offset:
(4)
將式(1)與式(2)相減,并將式(3)帶入,可得單向路徑延遲delay:
(5)
由以上公式可求得主從時鐘鐘差offset,主從時鐘路徑延遲delay,即可實現(xiàn)NTP監(jiān)測的目的。
NTP授時監(jiān)測終端由電源單元、散熱單元、主板單元、監(jiān)控單元、時鐘單元、接收機單元和NTP授時監(jiān)測單元組成。
電源單元為整機提供高效純凈的供電。散熱單元負(fù)責(zé)整機散熱,保證終端處于合適的溫度下。主板單元為終端內(nèi)各個板卡提供物理支撐和直流電源并負(fù)責(zé)板卡間1 pps、10 MHz、ToD監(jiān)控信息等信息的傳送。監(jiān)控單元負(fù)責(zé)終端內(nèi)各個單元狀態(tài)信息采集和監(jiān)控,并與上位機完成通信。接收機單元接收北斗導(dǎo)航信號為時鐘單元提供1 pps和ToD信號。時鐘單元以接收機單元送來的北斗信息實現(xiàn)向北斗時溯源,為終端提供穩(wěn)定準(zhǔn)確的1 pps、10 MHz、ToD時頻信息。NTP授時監(jiān)測單元以時鐘單元輸出的時間頻率信號為基準(zhǔn),運行NTP協(xié)議完成NTP信號的監(jiān)測,每個NTP授時監(jiān)測單元可以同時監(jiān)測10個NTP服務(wù)器或客戶端,整機配備6個NTP授時監(jiān)測單元可以同時完成60個NTP服務(wù)器或客戶端的監(jiān)測任務(wù)。NTP授時監(jiān)測終端工作原理如圖2所示。

圖2 NTP授時監(jiān)測終端工作原理Fig.2 Working principle diagram of NTP timing monitoring terminal
為驗證NTP授時監(jiān)測終端的NTP監(jiān)測功能,搭建測試驗證連接如圖3所示。

圖3 NTP授時監(jiān)測測試驗證連接Fig.3 Connection diagram of NTP timing monitoring test verification
使用NTP授時監(jiān)測終端和SyncEdge綜合時間分析儀分別對NTP授時服務(wù)器進行測試。NTP授時監(jiān)測終端、SyncEdge綜合時間分析儀、NTP授時服務(wù)器分別接收北斗信號,向北斗時間溯源。NTP授時監(jiān)測終端和SyncEdge綜合時間分析儀分別通過交換機與被監(jiān)測NTP授時服務(wù)器相連接。NTP授時監(jiān)測終端通過串口將獲取的鐘差數(shù)據(jù)上傳到監(jiān)控計算機。
測試過程如下:首先將NTP授時監(jiān)測終端、SyncEdge綜合時間分析儀、NTP授時服務(wù)器加電預(yù)熱1 h,使各設(shè)備達到工作穩(wěn)定狀態(tài)。保持NTP授時服務(wù)器狀態(tài)不變,同時開啟NTP授時監(jiān)測終端和SyncEdge綜合時間分析儀NTP監(jiān)測任務(wù),進行監(jiān)測,直到測試結(jié)束。
分別將60個NTP服務(wù)器端口的IP添加至NTP授時監(jiān)測終端,對各個服務(wù)器IP進行連續(xù)數(shù)據(jù)監(jiān)測,其中NTP服務(wù)器IP為192.168.1.224端口的監(jiān)測終端測試數(shù)據(jù)如圖4所示。

圖4 NTP授時監(jiān)測終端測試數(shù)據(jù)Fig.4 Test data diagram of NTP timing monitoring terminal
使用SyncEdge綜合時間分析儀對NTP服務(wù)器IP為192.168.1.224的NTP授時服務(wù)器進行連續(xù)數(shù)據(jù)監(jiān)測,測試數(shù)據(jù)結(jié)果如圖5和圖6所示。通過測試數(shù)據(jù)結(jié)果可以看出,NTP授時監(jiān)測終端與SyncEdge綜合時間分析儀監(jiān)測的同一NTP端口的標(biāo)準(zhǔn)差數(shù)據(jù)基本一致。因2個設(shè)備的零值不同,所以平均偏差數(shù)據(jù)存在差異。可見,NTP授時監(jiān)測終端與SyncEdge綜合時間分析儀均實際反映了NTP授時服務(wù)器的授時性能。

圖5 Sync-edge測試數(shù)據(jù)結(jié)果Fig.5 Sync-edge test data diagram

圖6 SyncEdge測試數(shù)據(jù)結(jié)果Fig.6 SyncEdge test data statistics
NTP授時監(jiān)測終端添加60個NTP服務(wù)器IP后,能夠?qū)崿F(xiàn)對全部端口的NTP監(jiān)測,NTP授時監(jiān)測終端監(jiān)測NTP端口數(shù)量監(jiān)測如圖7所示。

圖7 NTP端口數(shù)量監(jiān)測Fig.7 NTP port number monitoring diagram
由圖7和圖4可以看出,NTP授時監(jiān)測終端實現(xiàn)了對60個NTP授時端口的實時連續(xù)性能監(jiān)測,并對測試數(shù)據(jù)進行了平均偏差、標(biāo)準(zhǔn)方差等統(tǒng)計分析,有利于用戶掌握NTP授時服務(wù)器的相關(guān)情況。
本文提出了一種NTP授時監(jiān)測技術(shù),并完成了工程實現(xiàn)。通過實驗表明,NTP授時監(jiān)測終端可以同時對多個NTP服務(wù)端口進行實時監(jiān)測,同時對監(jiān)測數(shù)據(jù)進行了統(tǒng)計分析,為NTP授時網(wǎng)絡(luò)健康管理、故障定位提供了數(shù)據(jù)支撐。