王文嘉 崔宏磊
(中國艦船研究設(shè)計中心 武漢 430064)
隨著目前各類艦載電子設(shè)備信息化交互進程的大力發(fā)展,各個系統(tǒng)之間通過艦載通信網(wǎng)絡(luò)進行交互的信息量不斷加大。各個系統(tǒng)均需要記錄某些事件發(fā)生的時間信息,如果各個系統(tǒng)之間沒有一個統(tǒng)一的時間,或者計算機時鐘不精確,那么系統(tǒng)內(nèi)部很多應(yīng)用將會無法正常的工作,系統(tǒng)之間的信息交互就更加無法正常有序的進行了,這將極大的影響設(shè)備的工作性能,從而影響全艦的作戰(zhàn)使用性能。
目前艦上擁有專用的時間統(tǒng)一設(shè)備,具備較高的授時精度,但是其接口有限,該時間源一般提供參照時間源給具有很高時間精度要求的作戰(zhàn)指揮及武器等設(shè)備,對于時間精度要求不高的各類其他入網(wǎng)設(shè)備若采用這種授時方法代價過高。隨著海軍艦載網(wǎng)絡(luò)技術(shù)不斷發(fā)展,為全船各類設(shè)備提供信息交互通道的全艦網(wǎng)絡(luò)系統(tǒng)具備為連接入網(wǎng)的各設(shè)備提供時間同步服務(wù)的能力,利用全艦網(wǎng)絡(luò)系統(tǒng)提供高精度網(wǎng)絡(luò)時間源可以有效地解決各設(shè)備時間統(tǒng)一的問題。
為了選擇適合艦用各系統(tǒng)對時需求,并且經(jīng)濟易用的時間同步方案,首先需要各系統(tǒng)正常工作情況下對時間精度的要求以及各種時間同步技術(shù)能夠提供的時間精度進行一個統(tǒng)計與分析,根據(jù)分析選擇適合的時間同步技術(shù)。表1是目前各領(lǐng)域一些典型應(yīng)用對時間精度的要求。

表1 各領(lǐng)域中系統(tǒng)對時間精度要求
目前艦載入網(wǎng)各系統(tǒng)及設(shè)備從實時性上大致可分為兩大類,一類是實時監(jiān)控系統(tǒng),一類是非實時性MIS管理系統(tǒng)。毫秒級的時間精度可以滿足絕大部分監(jiān)控及管理系統(tǒng)對授時精度的要求。目前存在多種時間同步技術(shù),每一種技術(shù)都各有特點,不同的時間同步技術(shù)的授時精度也存在較大的差異[1~2]。表2是各種時間同步技術(shù)授時精度比較。

表2 各種時間同步技術(shù)授時精度
互聯(lián)網(wǎng)授時技術(shù)(NTP)在局域網(wǎng)內(nèi)得到廣泛的應(yīng)用。標準的NTP協(xié)議采用的是RFC 1350標準[3],簡化的網(wǎng)絡(luò)時間協(xié)議(SNTP)采用的是 RFC 2030標準[4~5]。基于NTP協(xié)議的時間同步技術(shù)可有效地利用艦載網(wǎng)絡(luò)的優(yōu)勢,在不增設(shè)授時設(shè)備的情況下可滿足艦載各系統(tǒng)對于時間精度的要求,操作便捷,技術(shù)成熟,符合信息化技術(shù)發(fā)展的趨勢。
NTP協(xié)議全稱網(wǎng)絡(luò)時間協(xié)議(Network Time Procotol),用來在分布式時間服務(wù)器與客戶端之間進行時間同步。使用NTP的目的是對網(wǎng)絡(luò)內(nèi)所有具有時鐘的設(shè)備進行時鐘同步,使網(wǎng)絡(luò)內(nèi)的所有時鐘保持一致,從而使設(shè)備能夠提供基于統(tǒng)一時間的多種應(yīng)用。
NTP授時技術(shù)有三種工作模式,即主/被動對稱模式、客戶/服務(wù)器模式、廣播模式。在NTP授時技術(shù)客戶/服務(wù)器工作模式中,時間服務(wù)器與需要時間同步的客戶以客戶/服務(wù)器模式相互交換NTP數(shù)據(jù)包。客戶首先向時間服務(wù)器發(fā)送一個NTP數(shù)據(jù)包,包中包含該包離開客戶時的時間標簽T1。當服務(wù)器接收到該包后向客戶發(fā)送一個NTP數(shù)據(jù)包,包中含有服務(wù)器收到客戶NTP數(shù)據(jù)包時的時間標簽T2、該包離開服務(wù)器時的時間標簽T3、數(shù)據(jù)包中原有的時間標簽T1。然后服務(wù)器把包返回給客戶,客戶在接收到響應(yīng)包時在填入包回到客戶的時間標簽T4。使用四個時間標簽就能計算出服務(wù)器與客戶間的傳輸時延和時間偏差。網(wǎng)絡(luò)延時與時鐘偏差的測量原理圖如圖1。t為服務(wù)器和客戶端之間的時間偏差,d為兩者之間的往返時間。

圖1 客戶/服務(wù)器模式工作原理圖

通過計算可得到客戶端時鐘與時間服務(wù)器的時鐘偏差,再將兩端的時間進行補償,客戶端就得到了時間服務(wù)器中的標準時間[6~8]。
進行網(wǎng)絡(luò)授時的服務(wù)器工作在C/S模式下同步響應(yīng)時間相對廣播模式下響應(yīng)時間要快很多。同時由于廣播模式下NTP服務(wù)器工作對于網(wǎng)絡(luò)時延的計算并非通過4個發(fā)送的時間戳進行計算所得的,而是通過內(nèi)部算法估算獲得的,所以相對C/S模式下對時精度要差。而且NTP服務(wù)器使用廣播模式進行時間同步對于網(wǎng)絡(luò)開銷遠遠大于C/S模式的網(wǎng)絡(luò)開銷,所以選用C/S模式對各個系統(tǒng)進行網(wǎng)絡(luò)授時能得到較高的授時精度。在滿足一定時間精度要求的情況下通常選用C/S模式。
艦載時間同步選用網(wǎng)絡(luò)授時技術(shù),網(wǎng)絡(luò)服務(wù)器從艦上專用的時統(tǒng)設(shè)備通過串口獲取秒脈沖信號,將秒脈沖信號結(jié)合網(wǎng)絡(luò)時碼信息作為參考時間源,校正艦用網(wǎng)絡(luò)服務(wù)器的時鐘。艦用網(wǎng)絡(luò)服務(wù)器提供NTP/SNTP服務(wù),需校時的各系統(tǒng)設(shè)備作為校時客戶端,時間以校時服務(wù)器為準。客戶端周期向服務(wù)器發(fā)送校時請求,取得服務(wù)器時間后,按特定算法除掉網(wǎng)絡(luò)延遲后,修改客戶端本地時鐘。艦載網(wǎng)絡(luò)內(nèi)部可分為多級時間服務(wù)器為各級系統(tǒng)接入的客戶端提供時間信息。
采用NTP網(wǎng)絡(luò)授時,艦載網(wǎng)絡(luò)專用授時服務(wù)器可以作為一級授時服務(wù)器(Stratum1),艦載網(wǎng)絡(luò)核心層交換機可以作為二級授時服務(wù)器(Stratum2),艦載網(wǎng)絡(luò)中各級接入交換機可以作為三級授時服務(wù)器(Stratum3)。商用產(chǎn)品測試指標顯示Stratum1授時精度達到1ms~10ms,Stratum2訪問Stratum1授時精度達到10ms~100ms,Stratum3訪問Stratum1授時精度達到100ms~1s。
艦載網(wǎng)絡(luò)內(nèi)采用NTP網(wǎng)絡(luò)授時的三級組網(wǎng)結(jié)構(gòu)示意如圖2。下面針對上述三級組網(wǎng)結(jié)構(gòu)基礎(chǔ)對比分析選用不同組網(wǎng)結(jié)構(gòu)配合不同NTP授時工作模式情況下的三種方案。

圖2 NTP授時三級組網(wǎng)結(jié)構(gòu)示意圖
方案1 一級NTPserver(C/S模式)
使用艦載網(wǎng)絡(luò)專用授時服務(wù)器作為NTP的一級服務(wù)器,以C/S模式向各級系統(tǒng)接入客戶端進行網(wǎng)絡(luò)授時。

圖3 艦載網(wǎng)絡(luò)時間同步方案1工作原理圖
圖3為使用一級NTP服務(wù)器的時間同步工作原理圖。時統(tǒng)設(shè)備向艦載網(wǎng)絡(luò)專用授時服務(wù)器提供兩路基準時間,一路是以1秒/次的頻率提供的1pps的時間脈沖,一路是網(wǎng)絡(luò)時碼信息。選擇NTP服務(wù)器根據(jù)秒脈沖信號與網(wǎng)絡(luò)時碼信號對本地時間進行校準后作為艦載網(wǎng)絡(luò)的基準時間。NTP服務(wù)器以C/S模式向入網(wǎng)的各個設(shè)備發(fā)送網(wǎng)絡(luò)時碼。按照一級授時精度該方案可以達到1ms~10ms的授時精度。客戶端如果使用 WindowsXP、2003、2000操作系統(tǒng)可以使用系統(tǒng)自帶的NTP客戶端程序。如果使用的其它操作系統(tǒng)可以安裝時間同步客戶端軟件。
方案2 一級NTPserver(廣播模式)+二級NTPserver(C/S模式)

圖4 艦載網(wǎng)絡(luò)時間同步方案2工作原理圖
網(wǎng)絡(luò)時統(tǒng)設(shè)備向艦載網(wǎng)絡(luò)專用授時服務(wù)器發(fā)送秒脈沖信號以及網(wǎng)絡(luò)時碼,本地時鐘校準后作為基準時間,艦載網(wǎng)絡(luò)核心層交換機作為Stratum2級時間服務(wù)器,Stratum1級時間服務(wù)器以廣播模式將網(wǎng)絡(luò)時碼發(fā)送給各核心層交換機,Stratum2級交換機使用C/S模式對客戶端進行網(wǎng)絡(luò)授時。對于時間精度要求比較高的系統(tǒng)客戶端我們可以使用Stratum1級時間服務(wù)器對其直接進行授時。該方案工作原理圖如圖4。該方案授時精度可以達到10ms~100ms精度要求。客戶端配置同方案1。
方案3 一級NTPserver(C/S模式)+二級NTPserver(C/S模式)

圖5 艦載網(wǎng)絡(luò)時間同步方案3工作原理圖
網(wǎng)絡(luò)時統(tǒng)設(shè)備向艦載網(wǎng)絡(luò)專用授時服務(wù)器發(fā)送秒脈沖信號以及網(wǎng)絡(luò)時碼,本地時鐘校準后作為基準時間,核心層交換機作為stratum2級時間服務(wù)器,stratum1級時間服務(wù)器以C/S模式將基準時間以網(wǎng)絡(luò)時碼形式發(fā)送給核心層交換機,stratum2級交換機使用C/S模式對客戶端進行網(wǎng)絡(luò)授時。對于時間精度要求比較高的客戶端可以使用Stratum1級時間服務(wù)器對其直接進行授時。該方案工作原理圖如圖5。該方案授時精度可以達到10ms~100ms精度要求。客戶端配置同方案1。
第一種方案授時精度最高,但是使用一級授時服務(wù)器,根據(jù)接入艦載網(wǎng)絡(luò)的客戶端的數(shù)量情況來看,選擇的授時服務(wù)器需要支持較大數(shù)量的客戶端進行對時,這種方式對服務(wù)器的要求很高,而且系統(tǒng)的可擴展性差,如果多路客戶端同時對時間服務(wù)器發(fā)送對時申請,會加重網(wǎng)絡(luò)負擔及授時服務(wù)器的負擔,使整個系統(tǒng)可靠性降低。
第二種方案與第三種方案使用二級授時方案,雖然對于連接在二級時間服務(wù)器上的客戶端來說授時精度有所降低,但是系統(tǒng)的可擴展性更高,系統(tǒng)能夠支持的同時授時的客戶端數(shù)量增加。對于時間精度要求比較高的客戶端系統(tǒng)也可提供專線直接將其與一級授時服務(wù)器相連,獲得較高的授時精度。第二種方案相對第三種方案來說,使用了廣播模式,其授時精度以及響應(yīng)時間相對C/S模式都要差一些,而且廣播模式對于網(wǎng)絡(luò)的利用率也比較低。
艦載網(wǎng)絡(luò)系統(tǒng)可選用具有授時服務(wù)器功能的三層交換機,其授時功能可以支持主/被動對稱模式、客戶/服務(wù)器模式、廣播模式的同步授時功能,系統(tǒng)選用服務(wù)器端可以同時支持多路接入客戶端進行對時,其授時服務(wù)器授時精確度可以達到1ms。如果使用第三種方案工作方式,既可以滿足系統(tǒng)對于時間精確度的要求,又可以避免由于各個客戶端同時向服務(wù)器提出對時申請造成服務(wù)器負擔過重的現(xiàn)象,同時系統(tǒng)具備較強的擴展性。通過上述分析比較,網(wǎng)絡(luò)授時方案3可以有效地解決艦載網(wǎng)絡(luò)各接入設(shè)備時間同步的問題。
NTP協(xié)議的時間精度為1~50ms,影響時間精度的主要因素由網(wǎng)絡(luò)延遲的隨機性導(dǎo)致的時鐘延遲計算偏差及客戶端時鐘硬件精確度。計算機時鐘一般使用振蕩電路或者石英鐘為基礎(chǔ),準確度在1E-6甚至1E-5量級,經(jīng)過長時間的累積后就會出現(xiàn)時間誤差。時間同步周期可以任意設(shè)定,若需要較高的同步精度應(yīng)該設(shè)置小的數(shù)值。按照設(shè)備的晶振級別,目前客戶端晶振按最小精確度(a)1E-6或者1E-5(s/s)計算[9~10],系統(tǒng)所需要的最大時間精度要求為(b)(ms),其客戶端設(shè)定的同步周期c=(b/a)/1000。表3為根據(jù)上述計算方法對不同系統(tǒng)時間精度要求,不同客戶端設(shè)備精度級別,計算所得客戶端對時同步周期值。

表3 時間同步周期計算表
客戶端可以根據(jù)各自的晶振精度結(jié)合系統(tǒng)對于時間精度的要求來設(shè)置客戶端的同步時間周期。
隨著網(wǎng)絡(luò)授時技術(shù)的不斷發(fā)展,越來越多的網(wǎng)絡(luò)設(shè)備,例如大部分三層交換機均具備授時服務(wù)的功能,在進行授時系統(tǒng)設(shè)計時,可根據(jù)各類設(shè)備對于時間精度要求的不同選擇合適的結(jié)構(gòu)形式,并對不同級別的授時服務(wù)器的授時模式進行設(shè)置。網(wǎng)絡(luò)授時系統(tǒng)的設(shè)計應(yīng)用可以有效的發(fā)揮艦載網(wǎng)絡(luò)設(shè)備的潛在功能,在不增加設(shè)備情況下實現(xiàn)接入網(wǎng)絡(luò)設(shè)備的時間同步,節(jié)省了艦載空間,縮短了系統(tǒng)開發(fā)周期,為艦載各類設(shè)備時間同步提供了經(jīng)濟有效的工程方案。
[1]童寶潤.時間統(tǒng)一系統(tǒng)[M].北京:國防工業(yè)出版社,2003,9:134~141
[2]謝華.基于GPS信號和NTP協(xié)議的本地時間同步網(wǎng)絡(luò)[J].工業(yè)控制計算機,2010(6):75~76
[3]Mills David L.Network time Protocal(Version 3)Specification.Implementation and Analysis-RFC 1305,1992
[4]Mills David L.Simple Network Time Protocal(SNTP)version 4for IPv6and OSI-RFC 2030,1996
[5]魯美連.嵌入式NTP網(wǎng)絡(luò)時鐘源的研究與開發(fā)[D].華中科技大學(xué)碩士學(xué)位論文,2007
[6]宋妍,朱爽.基于NTP的網(wǎng)絡(luò)時間服務(wù)系統(tǒng)的研究[J].計算機工程與應(yīng)用,2003,39(36):147~149
[7]王若宇,譚華志,蘇瀅瀅.基于NTP的網(wǎng)絡(luò)時間同步抗毀性設(shè)計[J].艦船電子工程,2008,28(5):103~105
[8]李德河.計算機網(wǎng)絡(luò)授時中時延問題的討論[J].電子測量與儀器學(xué)報,2005,19(4):34~38
[9]黃沛芳.基于NTP的高精度時間同步系統(tǒng)實現(xiàn)[J].電子技術(shù)應(yīng)用,2009(7):122~127
[10]毛瀛洲.NTP網(wǎng)絡(luò)授時系統(tǒng)設(shè)計與實現(xiàn)[D].山東大學(xué)碩士學(xué)位論文,2008