鄒昕洋,張友鵬
(蘭州交通大學(xué)自動化與電氣工程學(xué)院,蘭州 730070)
時間同步技術(shù)在測試控制系統(tǒng)、電力系統(tǒng)及自動化領(lǐng)域等分布式系統(tǒng)得到了廣泛的應(yīng)用。隨著高速鐵路的發(fā)展,列車運行速度不斷提高,鐵路系統(tǒng)也應(yīng)建立自己的時間同步,鐵路時間同步網(wǎng)技術(shù)條件在2015年提出[1,2]。為了保證鐵路中鐵路總公司、鐵路局、鐵路各站段和列車之間所傳遞信息的一致性,考慮到鐵路各系統(tǒng)的調(diào)度和控制點的實時性,鐵路系統(tǒng)對時間同步技術(shù)的要求變得尤為重要,因此,尋求一種高精度、穩(wěn)定的時間同步技術(shù)有助于提高鐵路時間同步網(wǎng)時間同步精度,從而提高各系統(tǒng)之間的運行效率和可靠性。
鐵路時間同步網(wǎng)包括鐵路運輸系統(tǒng)、鐵路信號系統(tǒng)和其他系統(tǒng)。時間同步精度在各系統(tǒng)中的地位至關(guān)重要,在缺乏時間同步機制的鐵路系統(tǒng)中,由于人為因素、網(wǎng)絡(luò)病毒、機器時鐘本身等因素在同步校時過程中都會影響同步精度從而影響列車運行安全[3-5]。
近年來開展的鐵路時間同步方案中,鐵路時間同步網(wǎng)中的時間同步技術(shù)一般采用NTP協(xié)議、1PPS+TOD、IRIG-B等時間同步技術(shù),但為了滿足鐵路的快速發(fā)展要求和時間同步精度,必須采用一種高精度時間同步技術(shù)。本文提出采用PTP協(xié)議應(yīng)用在鐵路時間同步網(wǎng)中,較好地解決了時間同步精度問題,并在仿真中驗證了PTP協(xié)議在鐵路時間同步網(wǎng)中的可行性。
PTP協(xié)議是一種精準(zhǔn)時間同步協(xié)議,同步時間戳可由硬件獲得,PTP協(xié)議集成了多種通信和分布式對象等多項技術(shù),適用于分布式系統(tǒng)和以太網(wǎng)傳輸。文獻[6]在電力系統(tǒng)中提出PTP協(xié)議的應(yīng)用并建立相關(guān)的同步方案;文獻[7]對NTP和PTP同步過程進行介紹并分析了兩種協(xié)議所存在的誤差;文獻[8]基于NTP對鐵路時間同步網(wǎng)的建模和性能比較作出分析。本文基于以上研究提出在鐵路時間同步網(wǎng)系統(tǒng)中運用PTP同步技術(shù),并在OPNET仿真下建模分析各鐵路局與鐵路總公司之間同步情況。
2002年提出的IEEE 1588協(xié)議定義了一個能夠在測試和控制系統(tǒng)中實現(xiàn)高精度時鐘同步協(xié)議—精準(zhǔn)時間同步協(xié)議(PTP),該協(xié)議適用于以太網(wǎng)中,并且將網(wǎng)絡(luò)通信、時間點計算和分布式對象等技術(shù)集成在一起,其同步精度可達到亞微秒級。PTP協(xié)議大多應(yīng)用在電力、自動控制領(lǐng)域等,定義主從方四種報文Sync、Followup、DelayReq和DelayResp,通過計錄報文傳輸時間戳,完成PTP傳輸[9]。PTP協(xié)議可以滿足當(dāng)前絕大部分分布式網(wǎng)絡(luò)系統(tǒng)的同步要求。
PTP(Precision Time Protocol)是一種通過報文傳送建立主從時鐘聯(lián)系的精確時間同步技術(shù),PTP主要采用分層的主從模式以及建立時間戳機制進行交互報文,對時間戳進行編碼再進行傳送,記錄主從時鐘時間戳?xí)r間并進行計算,從而進行校準(zhǔn)時間。IEEE1588定義兩種時鐘,普通時鐘和邊界時鐘,普通時鐘和邊界時鐘區(qū)別在于定義PTP端口的時鐘個數(shù),從通信關(guān)系上來看PTP協(xié)議采用主從時鐘方式通信[10-11]。
PTP同步的基本原理如下:主時鐘和從時鐘之間通過報文傳輸并記錄報文的收發(fā)時間,從而通過傳遞的四個時間戳進行計算主、從時鐘之間的往返延遲時間[12]。PTP同步過程如圖1所示。
圖1 PTP服務(wù)器與客戶端對時工作原理示意
(1)主時鐘(Master)在T1時刻時向從時鐘(Slave)發(fā)送Sync報文,Slave則在T2時刻接受到該報文。
(2)在Sync發(fā)送后,隨后Master會發(fā)送一個跟隨報文(Follow up),該報文包含Sync的時間戳T1,在跟隨報文傳輸后記錄時間戳T2,該時刻包含主時鐘端傳輸?shù)臅r間戳。
(3)從時鐘(Slave)在接收到主時鐘報文后記錄并向主時鐘(Master)發(fā)送Delay_Req報文,在報文離開從時鐘時記錄時間T3,報文在到達主時鐘后記錄時間T4。
(4)主時鐘(Master)在T4時刻接受到Delay_Rep報文后,對從時鐘(Slave)響應(yīng)一個Delay_Resp時延報文,該報文包括T3時間戳和離開主時鐘報文的T4時間戳。
根據(jù)發(fā)送接收的4個時間戳可以計算出主、從時間的往返總延時(delay)和時間偏差(offset)。
T1+delay1+offset=T2
(1)
T3+delay2-offset=T4
(2)
在式(1)和式(2)中,合理的假設(shè)通信傳輸路徑是對稱的,即delay1=delay2=delay
Toffset=[(T2-T1)-(T4-T3)]/2
(3)
Tdelay=[(T2-T1)+(T4-T3)]/2
(4)
最佳時鐘算法(BMC)是用來通過時鐘比較從同步系統(tǒng)中篩選出最精準(zhǔn)的時鐘,并將其作為整個網(wǎng)絡(luò)的主時鐘,而其他的時鐘則作為系統(tǒng)的從時鐘。在同步網(wǎng)絡(luò)中,最佳時鐘算法由兩部分構(gòu)成,一個是數(shù)據(jù)集比較算法,該算法用于將不同優(yōu)先級的數(shù)據(jù)所構(gòu)成的集合進行比較,得到最優(yōu)的集合[13];而另一個是狀態(tài)決定算法,根據(jù)被選出來的主時鐘數(shù)據(jù)集來更新本地數(shù)據(jù)集及更新每個時鐘PTP狀態(tài),最后在報文交互完成后進行時鐘校正和時間調(diào)整。整體算法流程如圖2所示。
圖2 PTP協(xié)議算法處理流程
最佳時鐘算法由兩部分算法組構(gòu)成。
狀態(tài)決定算法:PTP時鐘端口狀態(tài)被分為PTP_INITIALIZING、PTP_MASTER、PTP_SLAVE等9種不同的狀態(tài),該算法根據(jù)本地時鐘的信息和鏈路上接收到的時鐘數(shù)據(jù),來確定本地端口當(dāng)前的工作狀態(tài)。
數(shù)據(jù)集比較算法:為狀態(tài)決定算法提供數(shù)據(jù)支撐,用來統(tǒng)計兩個相關(guān)端口二進制關(guān)系,算法流程如圖3所示。
圖3 數(shù)據(jù)集比較算法流程
我國鐵路時間同步網(wǎng)分為地面時間同步和列車時間同步兩個部分。地面時間同步網(wǎng)采用三級樹狀傳輸網(wǎng)絡(luò)結(jié)構(gòu),一級時間同步設(shè)備設(shè)置在鐵路總公司調(diào)度指揮中心,二級時間同步設(shè)備設(shè)置在鐵路局,三級時間同步設(shè)備設(shè)置在各站、段。鐵路時間同步網(wǎng)的授時技術(shù)采用GPS/北斗授時技術(shù)提供世界協(xié)調(diào)時間(UTC),二、三級時間同步節(jié)點可通過光纖接收來自上級傳輸?shù)臅r間信息,用來校準(zhǔn)自身時鐘[14]。
在接收到GPS/北斗系統(tǒng)時間信號后,通過傳輸網(wǎng)承載傳輸?shù)蕉壨焦?jié)點的母鐘,二級母鐘接收到時間信號進行計算校準(zhǔn)時間偏差和時間延遲后更新設(shè)備最新時間信息,再通過傳輸網(wǎng)對三級時間同步節(jié)點進行時間信息的傳輸。當(dāng)二級時間同步節(jié)點接收不到一級傳輸?shù)臅r間信號,或中間傳輸受阻時,鐵路局時間同步節(jié)點將采用自身的授時系統(tǒng)進行接收時間信號[15-17],通過逐級向下傳輸完成同步過程,鐵路時間同步網(wǎng)的系統(tǒng)結(jié)構(gòu)如圖4所示。
本文采用OPNET仿真軟件,建立鐵路時間同步網(wǎng)的網(wǎng)絡(luò)模型,節(jié)點模型和所運行的進程模型,模擬鐵路總公司到鐵路局和鐵路各站、段之間同步進程。模擬內(nèi)部報文傳輸過程,得到進行傳輸?shù)臅r間延遲、時間偏差、接收發(fā)送量[18]。
圖4 鐵路時間同步網(wǎng)結(jié)構(gòu)
鐵路時間同步網(wǎng)的網(wǎng)絡(luò)模型如圖5所示,在仿真中模擬12個鐵路局15站所對應(yīng)的節(jié)點模型,首先第一級節(jié)點對應(yīng)鐵路總公司并包含4個對時服務(wù)器兩兩互為冗余[17]結(jié)構(gòu),用來接收來自北斗/GPS傳輸?shù)木_時鐘和處理由鐵路局和各站發(fā)出的對時請求,采用一對多的連接方式,從而向下一級發(fā)送時間信息,網(wǎng)絡(luò)第二級節(jié)點為鐵路局時間同步節(jié)點模擬12個鐵路局時間同步節(jié)點作為中間節(jié)點連接一級和三級時間同步節(jié)點,第三級為所轄車站時間同步節(jié)點并對應(yīng)15個客戶端向?qū)r服務(wù)器發(fā)出對時請求,系統(tǒng)網(wǎng)絡(luò)模型中鏈路采用點對點的通信方式[19,20]。
圖5 鐵路時間同步網(wǎng)網(wǎng)絡(luò)模型
PTP仿真子進程主要負責(zé)鐵路時間同步網(wǎng)的時間同步過程,當(dāng)完成時間同步過程系統(tǒng)再進行其他數(shù)據(jù)發(fā)送,如圖6所示為PTP仿真子進程模型,首先初始化狀態(tài)(init)需要完成模型屬性的讀取和相應(yīng)參數(shù)的設(shè)置,隨后進行報文傳輸(SYNC_TIME)、(FOLLOW_UP)、(SYNC_PK_ARRIVAL)、(FOLLOW_PK_ARRIVAL)分別執(zhí)行PTP協(xié)議的協(xié)議傳輸,仿真模型以(idle)作為各個報文傳輸?shù)暮诵?,?dāng)PTP協(xié)議失步時切換到(MAINTENANCE_END)異步狀態(tài),則需要結(jié)束PTP協(xié)議的同步。當(dāng)完成時間同步過程后,系統(tǒng)再進行其他業(yè)務(wù)傳輸。
圖6 PTP協(xié)議子進程模型
在仿真中將同步檢查時間(sync check duration)設(shè)置成60 s,同步維持時間(sync maintenance time)設(shè)置為50 s,在仿真過程中間隔60 s時系統(tǒng)檢查同步一次,以防系統(tǒng)處在失步狀態(tài)。設(shè)置仿真時間1 000 s,針對內(nèi)部鐵路局和鐵路總公司的報文交互情況作出仿真得出結(jié)果如圖7所示。在第60 s時鐵路局14,15節(jié)點開始進行時間同步,由于實際同步距離不同14和15節(jié)點初始時間偏差出現(xiàn)差異約為80 μs和500 μs,當(dāng)仿真到1 000 s時,第14,15節(jié)點時間同步完成后時間延遲約為1 630,1 600 μs。時間偏差約為100,170 μs。
圖7 鐵路局的時間偏差和傳輸延遲
鐵路時間同步網(wǎng)系統(tǒng)的全局統(tǒng)計結(jié)果在主從時鐘端的收發(fā)量為12 000,每60 s鐵路時間同步網(wǎng)的鐵路局客戶端就向鐵路總公司發(fā)送同步請求構(gòu)成同步,當(dāng)系統(tǒng)失步時收發(fā)量又回到0。系統(tǒng)整體傳輸量情況如圖8所示。鐵路時間同步網(wǎng)的全局時間延遲統(tǒng)計結(jié)果約為1 600 μs,時間偏差統(tǒng)計結(jié)果均值約為130 μs,鐵路時間同步網(wǎng)全局仿真結(jié)果如圖9所示。
圖8 鐵路時間同步網(wǎng)收發(fā)過程
圖9 鐵路時間同步網(wǎng)全局統(tǒng)計結(jié)果
采用PTP協(xié)議應(yīng)用在鐵路時間同步網(wǎng)中,本文在OPNET中分別對整體和局部鐵路局同步節(jié)點進行仿真,最終得到全局時間延遲約為1 600 μs,時間偏差約為130 μs,同步精度可達到微秒級,符合鐵路時間同步精度的要求。并將同步結(jié)果與文獻[16]的結(jié)果相對比,應(yīng)用PTP協(xié)議的時間同步精度有大幅度提高,驗證了PTP協(xié)議在鐵路時間同步網(wǎng)中的可行性。