劉建成
(朗訊科技光網絡有限公司 上海研發中心,上海201206)
隨著計算機和互聯網的迅速發展,基于網絡的分布式應用越來越普及。為了確保分布式網絡化的終端能夠實現精確的數據采集、運行控制等實時性任務,需要整個系統具有統一的參考時間,并且應該使所有分布式終端的本地時鐘與該系統時間保持同步。越來越多的工業測量和控制系統對時鐘同步的精度要求也越來越高,尤其是在大多數以工業以太網為基礎的控制系統中,已經對時鐘同步提出了微妙級的同步要求。特別是在分布式控制系統中,考慮到實時性的調度和控制,對時間統一的要求就更為嚴格。傳統的時間同步技術網絡時間協議(Network time protocol,NTP)已經無法滿足這種精度要求,比如對時鐘同步精度要求非常苛刻的TDSCDMA網絡就采用GPS衛星信號進行授時,雖然精度可以保證,但是GPS系統造價昂貴、安裝復雜、兼容性差的缺點使得運營商不得不考慮其替代方案。
為了徹底解決分布式網絡化測控系統的實時性問題,很多研究機構和測控公司紛紛投入人力、物力進行這方面的研究與實驗。美國電氣和電子工程師協會(IEEE)開發并發布了“網絡測量和控制系統的精密時鐘同步協議標準(Precision clock synchronization protocol for networked measurement and control systems)”,即IEEE1588協議,簡稱為精確時間同步協議(Precision Time Protocol,PTP)。 IEEE1588協議的發展和成熟提供了一種低成本高精度的網絡時鐘同步解決方案。IEEE1588定義了一種用于由網絡通訊、本地計算和分布式對象等技術實現的現代測量和控制系統的精確時鐘同步協議。該協議支持系統范圍的時鐘同步,即可以用于廣域的以太網中,也可用于支持多點歡送的局域網中,能夠實現亞微妙級的時間同步精度。IEEE1588協議采用了發布者和接收者的P/S模式,主時鐘擔當時間發布者的角色,從時鐘擔當接受者的角色。IEEE1588精確時鐘同步算法由于其高同步精度、低成本實現、方便安裝與維護等優越性,在供電管理、工業控制、測試和測量、網絡通信等鄰域得到了廣泛的應用。
IEEE1588通過交換報文來確定主時鐘Master和從時鐘Slave之間的時間偏差及報文傳輸的網絡延遲。首先,主時鐘節點Master端周期性的發送同步報文 (Sync消息)給從時鐘Slave端,Sync消息中包括其離開主時鐘時的時間t1,如果采用兩步機制,則將同步包文時間戳t1打包到跟隨報文(Follow Up消息),緊接著發送Follow Up消息。Slave接收后記錄該消息到達時間戳t2;從時鐘發Delay_Req消息給主時鐘,并記錄Delay_Req的離開時刻t3;主時鐘記錄Delay_Req到達時間t4,并通過Delay_Resp把t4發回給從時鐘Slave。從時鐘Slave根據時間戳t1,t2,t3,t4來計算主從時鐘的時間偏差及傳輸的網絡延遲,并用時間偏差調整自身時鐘,直到與主時鐘同步,如圖1所示。
圖1 同步過程Fig.1 Synchronization process
這里我們把主從時鐘的時間偏差記作△toffset,而發送同步報文Sync消息傳輸需要的時間記作△tdelay12,發送Delay_Req消息傳輸需要的時間記作△tdelay34,則它們有公式(1)關系。
從而得到主從時間偏差
在IEEE1588協議里假設網絡雙向傳輸是對稱的,我們標記平均傳輸網絡延遲為△tdelay,即公式(3)
從而得到公式(4)中的主從時間偏差以及平均傳輸網絡延遲:
從原理中可以看出傳輸的網絡延遲嚴重影響時鐘同步精度。傳輸的網絡延遲包含協議棧、存貯轉發及物理網絡上的傳輸時延。物理網絡所產生的線路延時一般是穩定的,而協議棧及存貯轉發在運行過程中由于受不確定因素影響會產生較大的抖動,這對同步的精度有較大的影響。為此IEEEl588協議提出了一種基于軟件和硬件相結合的時間同步方法,將時間戳的標記點下移到MAC層和PHY層之間,即圖2中的A點,降低協議棧及業務流量對同步時間的影響,使同步過程中的主要延時為物理層延時,目前已經有很多Switch芯片、PHY芯片都支持硬件打時間戳。
圖2 硬件打時間戳模型Fig.2 Timestamp generation model
只有當網絡雙向傳輸是完全對稱的,即△tdelay=△tdelay12=△tdelay34時,才能夠保證同步的精確性。但在現實中的網絡系統中這只能是一種理想情況,在網絡上有較大負載的情況下,這種假設很難保證。為了有效減小遠程末端的串擾,目前使用網絡電纜在設計時就采用了一些非對稱的設計,而許多收發器采用的也是不對稱的傳送和接收路徑。在這種情況下,網絡負載越大,不同傳輸方向上延遲Delay越不可能相等,這樣就會使計算出的延時與實際的主從延時相差較大。另外,如果主時鐘和從時鐘使用的收發器的時間特性不同,這種不對稱性將是無法補償的,從而嚴重影響時鐘同步精度。現實中的網絡傳輸延遲肯定是非對稱的,根據IEEE1588的規定,上文中給出的計算網絡延遲的式(3)可在必要時作出修改,以滿足實際情況的需要。
針對網絡傳輸路徑的不對稱性,以及發送同步報文Sync消息傳輸需要的時間△tdelay12和發送Delay_Req消息傳輸需要的時間△tdelay34具有不同的更新周期,可以考慮一種基于加權平衡的同步改進算法,所以若將網絡延遲△tdelay取為△tdelay12和△tdelay34的加權平均值,則可具有較好的精確度。不妨標記傳輸的網絡延遲△tdelay34為網絡延遲△tdelay12的w倍(w的測量計算不在本文討論,文獻[1]給出了具體的實現方法)
從而得到公式(6)中的主從時間偏差以及傳輸網絡延遲:
在時間源穩定運行下,主從時鐘間的時間偏差△toffset測量值在統計學理論上符合正態分布,或者分布近似高斯分布。根據IEEE1588標準同步算法計算得出的時間偏差測量值△toffset,若簡單認為就是主從時鐘間的相位差而直接進行相位的調整,由于時間偏差△toffset符合正態分布,則會出現從時鐘相位的正負矢量方向上的無間歇運動,時鐘的運行將很不穩定,不但起不到適中同步的效果,反而可能使系統的時間發生嚴重的錯亂。故在實現精確時間同步算法的時間同步系統中,由于網絡延時等不可確定因素的影響,計算得出的主從時鐘偏差測量值與理論值存在一定誤差,為進一步提高時間同步精度,一般運用統計學方法計算大量主從時鐘偏差樣本的算術平均值,無限逼近主從相位偏差的數學期望值,即式(7)。不足的是當采集到的△toffest測量值不夠理想時,計算出的算術平均值可能會遠離其期望值,或者在主時鐘源時間發生跳變時,通常的調相操作可能會使得從時鐘相位發生較大位移,降低同步精度和系統的穩定性。
通常來講,可以把主時鐘源認為是運行極其穩定的系統,但時鐘系統都會有參數調整,比如在閏秒操作,就會造成主時鐘源“輕微”的時間跳躍。所以,授時的主時鐘信號是可能存在跳變的非穩定基準信號。由于無法確定過于偏離期望值的數據是變質的樣本還是參數調整后可能更優的信號,倘若把參數調整后更優的“標準”信號簡單舍棄,將造成從時鐘系統向主時鐘信號同步鎖定的滯后。而快速向其靠攏顯然也是不恰當的,因為這樣將可能使得從時鐘的相位發生較大的位移,造成系統的不穩定。時間同步操作時正確的做法應是逐漸信任并逐漸靠攏。這里考慮用方差閾值濾波的方法,只有當N個的方差 D(公式8)小于方差閾值 DThreshold,則第 N個時間偏差△tdelay[N]才被接受,進入下一個循環計算。為了加快算法收斂速度同時又保證穩定性,可根據算法狀態調整時間窗N的大小,在初始時算法還未進入穩定狀態,設置為較小值,調整時間窗為N/2.這樣既保證了在從時鐘與主時鐘偏差較大時,算法能很快做出響應,盡快收斂,同時又保證在從時鐘與主時鐘同步穩定時,不用頻繁調整從時鐘。
Alcatel-Lucent 1850業務傳輸平臺TSS5R是一款簡潔,模塊化的包交換光傳輸PTN系統,支持IEEE1588時鐘同步。2012年TSS5R通過了中國移動PTN測試,TSS5R時鐘同步性能表現穩定。在實驗室里,我們將兩個TSS5R網元背靠背光纖連接來測試時間同步。測試設備連接如圖3,時間測量儀TimeAcc接收GPS信號,同時輸出1PPS+TOD信號給TSS5R主時鐘Master網元,輸出10 MHz頻率參考信號給綜合測試儀HP37718,而綜合測試儀HP37718則提供2 MHz的頻率信號給主時鐘Master網元。從時鐘Slave網元與主時鐘Master網元利用SYNCE相位調頻,保持主從時鐘的頻率同步,利用IEEE1588進行時間同步,同時從時鐘Slave網元輸出1PPS+TOD到時間測量儀TimeAcc,在時間同步算法收斂穩定后做了長時間的時間性能監控試驗,測試的時間性能如圖4,實驗結果表明時鐘同步具有穩定的性能,在主從同步穩定后,時間偏差達到亞微妙級別。
圖3 測試配置框圖Fig.3 Test configuration
圖4 實驗結果Fig.4 Result of experiment
本文在深入研究IEEE1588精確時間同步原理的基礎上,給出一種改進的時間同步方法,該改進的時鐘同步算法使時鐘同步性能更穩定更抗干擾。該改進算法被應用在Alcatel-Lucent包交換光傳輸TSS5R系統中,并通過了中國移動基于分組網絡的分組時間同步特性測試。實驗結果表明TSS5R系統IEEE1588時鐘同步具有穩定的性能,同步精度達到亞微秒級,可滿足PTN產品高精度時鐘同步的要求。
[1]HE Zong-ying.Automatic asymmetric delay correction for IEEE1588 in TSS-5R [C]//Alcatel-Lucent 2012 Technical Volume.Shanghai:Alcatel-Lucent,2012:10-11.
[2]LIU Jian-cheng,FANG Peng,HE Zong-ying.Implementation of IEEE1588 clock synchronization over PTN[C]//Alcatel-Lucent 2012 Technical symposium,2012:231-234.
[3]LV Shuai,LU Yue-ming,JI Yue-feng.An Enhanced IEEE 1588 Time Synchronization for Asymmetric Communication Link in Packet Transport Network [J].IEEE Communications Letters,2010,14(8):764-766.
[4]IEEEInstrumentation and Measurement Society,IEEEStd 1588.IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurementand Control Systems[S].New York:Instituteof Electricaland Electronic Engineers,Inc,2008.
[5]袁文學,基于IEEE1588協議的電力系統時間同步技術改進與仿真 [D].宜昌:三峽大學,2010.
[6]袁震華,董秀軍,劉朝英.基于IEEE1588的時鐘同步技術及其應用 [J].計算機測量與控制,2006,14(12):1726-1728.YUAN Zhen-hua,DONG Xiu-jun,LIU Chao-ying.Precise time synchronizationtechnology and application based on IEEE1588[J].Computer Measurement&Control,2006,14(12):1726-1728.