鄒昕洋,張友鵬
(蘭州交通大學自動化與電氣工程學院,蘭州 730070)
時間同步技術在測試控制系統、電力系統及自動化領域等分布式系統得到了廣泛的應用。隨著高速鐵路的發展,列車運行速度不斷提高,鐵路系統也應建立自己的時間同步,鐵路時間同步網技術條件在2015年提出[1,2]。為了保證鐵路中鐵路總公司、鐵路局、鐵路各站段和列車之間所傳遞信息的一致性,考慮到鐵路各系統的調度和控制點的實時性,鐵路系統對時間同步技術的要求變得尤為重要,因此,尋求一種高精度、穩定的時間同步技術有助于提高鐵路時間同步網時間同步精度,從而提高各系統之間的運行效率和可靠性。
鐵路時間同步網包括鐵路運輸系統、鐵路信號系統和其他系統。時間同步精度在各系統中的地位至關重要,在缺乏時間同步機制的鐵路系統中,由于人為因素、網絡病毒、機器時鐘本身等因素在同步校時過程中都會影響同步精度從而影響列車運行安全[3-5]。
近年來開展的鐵路時間同步方案中,鐵路時間同步網中的時間同步技術一般采用NTP協議、1PPS+TOD、IRIG-B等時間同步技術,但為了滿足鐵路的快速發展要求和時間同步精度,必須采用一種高精度時間同步技術。本文提出采用PTP協議應用在鐵路時間同步網中,較好地解決了時間同步精度問題,并在仿真中驗證了PTP協議在鐵路時間同步網中的可行性。
PTP協議是一種精準時間同步協議,同步時間戳可由硬件獲得,PTP協議集成了多種通信和分布式對象等多項技術,適用于分布式系統和以太網傳輸。文獻[6]在電力系統中提出PTP協議的應用并建立相關的同步方案;文獻[7]對NTP和PTP同步過程進行介紹并分析了兩種協議所存在的誤差;文獻[8]基于NTP對鐵路時間同步網的建模和性能比較作出分析。本文基于以上研究提出在鐵路時間同步網系統中運用PTP同步技術,并在OPNET仿真下建模分析各鐵路局與鐵路總公司之間同步情況。
2002年提出的IEEE 1588協議定義了一個能夠在測試和控制系統中實現高精度時鐘同步協議—精準時間同步協議(PTP),該協議適用于以太網中,并且將網絡通信、時間點計算和分布式對象等技術集成在一起,其同步精度可達到亞微秒級。PTP協議大多應用在電力、自動控制領域等,定義主從方四種報文Sync、Followup、DelayReq和DelayResp,通過計錄報文傳輸時間戳,完成PTP傳輸[9]。PTP協議可以滿足當前絕大部分分布式網絡系統的同步要求。
PTP(Precision Time Protocol)是一種通過報文傳送建立主從時鐘聯系的精確時間同步技術,PTP主要采用分層的主從模式以及建立時間戳機制進行交互報文,對時間戳進行編碼再進行傳送,記錄主從時鐘時間戳時間并進行計算,從而進行校準時間。IEEE1588定義兩種時鐘,普通時鐘和邊界時鐘,普通時鐘和邊界時鐘區別在于定義PTP端口的時鐘個數,從通信關系上來看PTP協議采用主從時鐘方式通信[10-11]。
PTP同步的基本原理如下:主時鐘和從時鐘之間通過報文傳輸并記錄報文的收發時間,從而通過傳遞的四個時間戳進行計算主、從時鐘之間的往返延遲時間[12]。PTP同步過程如圖1所示。

圖1 PTP服務器與客戶端對時工作原理示意
(1)主時鐘(Master)在T1時刻時向從時鐘(Slave)發送Sync報文,Slave則在T2時刻接受到該報文。
(2)在Sync發送后,隨后Master會發送一個跟隨報文(Follow up),該報文包含Sync的時間戳T1,在跟隨報文傳輸后記錄時間戳T2,該時刻包含主時鐘端傳輸的時間戳。
(3)從時鐘(Slave)在接收到主時鐘報文后記錄并向主時鐘(Master)發送Delay_Req報文,在報文離開從時鐘時記錄時間T3,報文在到達主時鐘后記錄時間T4。
(4)主時鐘(Master)在T4時刻接受到Delay_Rep報文后,對從時鐘(Slave)響應一個Delay_Resp時延報文,該報文包括T3時間戳和離開主時鐘報文的T4時間戳。
根據發送接收的4個時間戳可以計算出主、從時間的往返總延時(delay)和時間偏差(offset)。
T1+delay1+offset=T2
(1)
T3+delay2-offset=T4
(2)
在式(1)和式(2)中,合理的假設通信傳輸路徑是對稱的,即delay1=delay2=delay
Toffset=[(T2-T1)-(T4-T3)]/2
(3)
Tdelay=[(T2-T1)+(T4-T3)]/2
(4)
最佳時鐘算法(BMC)是用來通過時鐘比較從同步系統中篩選出最精準的時鐘,并將其作為整個網絡的主時鐘,而其他的時鐘則作為系統的從時鐘。在同步網絡中,最佳時鐘算法由兩部分構成,一個是數據集比較算法,該算法用于將不同優先級的數據所構成的集合進行比較,得到最優的集合[13];而另一個是狀態決定算法,根據被選出來的主時鐘數據集來更新本地數據集及更新每個時鐘PTP狀態,最后在報文交互完成后進行時鐘校正和時間調整。整體算法流程如圖2所示。

圖2 PTP協議算法處理流程
最佳時鐘算法由兩部分算法組構成。
狀態決定算法:PTP時鐘端口狀態被分為PTP_INITIALIZING、PTP_MASTER、PTP_SLAVE等9種不同的狀態,該算法根據本地時鐘的信息和鏈路上接收到的時鐘數據,來確定本地端口當前的工作狀態。
數據集比較算法:為狀態決定算法提供數據支撐,用來統計兩個相關端口二進制關系,算法流程如圖3所示。

圖3 數據集比較算法流程
我國鐵路時間同步網分為地面時間同步和列車時間同步兩個部分。地面時間同步網采用三級樹狀傳輸網絡結構,一級時間同步設備設置在鐵路總公司調度指揮中心,二級時間同步設備設置在鐵路局,三級時間同步設備設置在各站、段。鐵路時間同步網的授時技術采用GPS/北斗授時技術提供世界協調時間(UTC),二、三級時間同步節點可通過光纖接收來自上級傳輸的時間信息,用來校準自身時鐘[14]。
在接收到GPS/北斗系統時間信號后,通過傳輸網承載傳輸到二級同步節點的母鐘,二級母鐘接收到時間信號進行計算校準時間偏差和時間延遲后更新設備最新時間信息,再通過傳輸網對三級時間同步節點進行時間信息的傳輸。當二級時間同步節點接收不到一級傳輸的時間信號,或中間傳輸受阻時,鐵路局時間同步節點將采用自身的授時系統進行接收時間信號[15-17],通過逐級向下傳輸完成同步過程,鐵路時間同步網的系統結構如圖4所示。
本文采用OPNET仿真軟件,建立鐵路時間同步網的網絡模型,節點模型和所運行的進程模型,模擬鐵路總公司到鐵路局和鐵路各站、段之間同步進程。模擬內部報文傳輸過程,得到進行傳輸的時間延遲、時間偏差、接收發送量[18]。

圖4 鐵路時間同步網結構
鐵路時間同步網的網絡模型如圖5所示,在仿真中模擬12個鐵路局15站所對應的節點模型,首先第一級節點對應鐵路總公司并包含4個對時服務器兩兩互為冗余[17]結構,用來接收來自北斗/GPS傳輸的精確時鐘和處理由鐵路局和各站發出的對時請求,采用一對多的連接方式,從而向下一級發送時間信息,網絡第二級節點為鐵路局時間同步節點模擬12個鐵路局時間同步節點作為中間節點連接一級和三級時間同步節點,第三級為所轄車站時間同步節點并對應15個客戶端向對時服務器發出對時請求,系統網絡模型中鏈路采用點對點的通信方式[19,20]。

圖5 鐵路時間同步網網絡模型
PTP仿真子進程主要負責鐵路時間同步網的時間同步過程,當完成時間同步過程系統再進行其他數據發送,如圖6所示為PTP仿真子進程模型,首先初始化狀態(init)需要完成模型屬性的讀取和相應參數的設置,隨后進行報文傳輸(SYNC_TIME)、(FOLLOW_UP)、(SYNC_PK_ARRIVAL)、(FOLLOW_PK_ARRIVAL)分別執行PTP協議的協議傳輸,仿真模型以(idle)作為各個報文傳輸的核心,當PTP協議失步時切換到(MAINTENANCE_END)異步狀態,則需要結束PTP協議的同步。當完成時間同步過程后,系統再進行其他業務傳輸。

圖6 PTP協議子進程模型
在仿真中將同步檢查時間(sync check duration)設置成60 s,同步維持時間(sync maintenance time)設置為50 s,在仿真過程中間隔60 s時系統檢查同步一次,以防系統處在失步狀態。設置仿真時間1 000 s,針對內部鐵路局和鐵路總公司的報文交互情況作出仿真得出結果如圖7所示。在第60 s時鐵路局14,15節點開始進行時間同步,由于實際同步距離不同14和15節點初始時間偏差出現差異約為80 μs和500 μs,當仿真到1 000 s時,第14,15節點時間同步完成后時間延遲約為1 630,1 600 μs。時間偏差約為100,170 μs。

圖7 鐵路局的時間偏差和傳輸延遲
鐵路時間同步網系統的全局統計結果在主從時鐘端的收發量為12 000,每60 s鐵路時間同步網的鐵路局客戶端就向鐵路總公司發送同步請求構成同步,當系統失步時收發量又回到0。系統整體傳輸量情況如圖8所示。鐵路時間同步網的全局時間延遲統計結果約為1 600 μs,時間偏差統計結果均值約為130 μs,鐵路時間同步網全局仿真結果如圖9所示。

圖8 鐵路時間同步網收發過程

圖9 鐵路時間同步網全局統計結果
采用PTP協議應用在鐵路時間同步網中,本文在OPNET中分別對整體和局部鐵路局同步節點進行仿真,最終得到全局時間延遲約為1 600 μs,時間偏差約為130 μs,同步精度可達到微秒級,符合鐵路時間同步精度的要求。并將同步結果與文獻[16]的結果相對比,應用PTP協議的時間同步精度有大幅度提高,驗證了PTP協議在鐵路時間同步網中的可行性。