文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.190161
中文引用格式: 馬昭,葛文雙,,胡愛蘭,,等. 基于PTP授時的高可靠時間統(tǒng)一系統(tǒng)的應用研究[J].電子技術應用,2019,,45(5):38-42.
英文引用格式: Ma Zhao,,Ge Wenshuang,Hu Ailan,,et al. Application research of high reliability time unified system based on PTP strategy[J]. Application of Electronic Technique,,2019,45(5):38-42.
0 引言
隨著計算機和通信技術的飛速發(fā)展,時間統(tǒng)一系統(tǒng)在測控,、航天,、工業(yè)控制等領域的應用越來越廣泛,例如,,時間統(tǒng)一系統(tǒng)為指揮控制系統(tǒng),、航空航天信息處理系統(tǒng),、工業(yè)控制網(wǎng)絡等提供精確、可靠,、統(tǒng)一的時間,,同時,各應用領域?qū)λ璧臅r間統(tǒng)一系統(tǒng)的性能要求也越來越高[1-2],。
時間統(tǒng)一系統(tǒng)的主要功能是提供標準的時間和脈沖中斷信號,,使其所處的信息系統(tǒng)有一個統(tǒng)一的時間標準。目前在時間統(tǒng)一系統(tǒng)中應用最廣泛的時間同步協(xié)議是NTP協(xié)議,,但是該協(xié)議的同步精度為毫秒級,,無法滿足高精度要求的應用場景[3-4]。并且,,在NTP協(xié)議的條件下,,系統(tǒng)主時鐘一般都是固定的,一旦系統(tǒng)中的主時鐘出現(xiàn)異常,,整個系統(tǒng)的授時就會癱瘓,,所以,提升時間統(tǒng)一系統(tǒng)的魯棒性也是一個亟需解決的問題,。因此,,設計并實現(xiàn)一個高精度、高可靠性的時間統(tǒng)一系統(tǒng),,提升時間統(tǒng)一系統(tǒng)的同步精度,、魯棒性,對于測控,、航天,、工業(yè)控制等領域具有重大現(xiàn)實意義。
1 系統(tǒng)架構
本文基于PTP協(xié)議構建了一個高可靠的時間統(tǒng)一系統(tǒng),,系統(tǒng)由時間服務器和時統(tǒng)軟件兩部分組成,。在本系統(tǒng)中,PTP時間服務器為整個系統(tǒng)的時間源,,時統(tǒng)軟件接收時間源的同步信號,,校正本地時間。PTP時間服務器通過網(wǎng)絡交換機連接服務器,,服務器配置專用網(wǎng)卡來接收網(wǎng)絡傳輸?shù)腜TP信號,;安裝于服務器上的時統(tǒng)軟件獲得網(wǎng)卡的時間信息,進行解碼并輸出對時信號和脈沖中斷信號,。系統(tǒng)架構圖如圖1所示,。
2 基于PTP授時的雙機熱備的實現(xiàn)
為了解決時間同步精度較低、魯棒性較差等問題,,本系統(tǒng)采用PTP協(xié)議進行網(wǎng)絡授時,,且本系統(tǒng)采用兩臺時間服務器及BMC算法來實現(xiàn)系統(tǒng)的雙機熱備功能,。
2.1 PTP同步原理
PTP協(xié)議的時間戳記錄在MAC層,消除了在NTP協(xié)議中一直存在的協(xié)議棧的延遲和抖動,,從而提高授時精度,。PTP協(xié)議主要通過4種類型的報文來測量時鐘偏差和網(wǎng)絡延時,分別是:Sync報文,、Follow_Up報文、Delay_Req報文,、Delay_Resp報文[5-7],。其具體的時間同步過程如圖2所示。
具體原理如下:
(1)主時鐘在t1時刻發(fā)送Sync消息:如果為1588 one-step機制,,則Sync消息包含有發(fā)送時間,;如果為1588 two-step機制,則Sync消息僅發(fā)送發(fā)送時間值的估計值,,即t1的估計值,,然后在Follow_Up消息中再發(fā)送精確的t1值。
(2)從時鐘記下收到Sync消息的時間t2,,然后在t3時刻發(fā)送Delay_Req消息,。
(3)主時鐘記下收到Delay_Req消息的時間t4,然后發(fā)送攜帶t4值的Delay_Resp消息給從時鐘,。
(4)假設主從時鐘之間的鏈路延遲是對稱的,,從時鐘根據(jù)已知的t1、t2,、t3,、t4值,計算出Offset值與Delay值,。
計算過程如下:
假設從時鐘超前主時鐘的值為Offset,,則有:
則本地時間糾正值為本地時間值減去Offset值與Delay值之和。
2.2 雙機熱備實現(xiàn)原理
在時間統(tǒng)一系統(tǒng)中,,主時鐘的異常會導致整個系統(tǒng)的授時癱瘓,。在航天、測控,、工業(yè)控制等領域,,這種情況的出現(xiàn)對所需授時的信息系統(tǒng)的影響是致命的,它可能會帶來無法挽回的損失,。因此,,在這些要求較高的應用領域中實現(xiàn)時間統(tǒng)一系統(tǒng)的雙機熱備,并進一步達到雙機切換的無縫銜接,,是十分有必要的,。對此問題的解決,,BMC算法提供了很好的理論依據(jù)。雙機熱備原理圖如圖3所示,。
2.2.1 雙機熱備工作模式
在BMC算法的理論基礎上,,為了防止算法運行過程中受到無法預測的干擾而導致系統(tǒng)授時出現(xiàn)故障,本系統(tǒng)共實現(xiàn)了兩種雙機熱備工作模式,。兩種雙機熱備工作模式的實現(xiàn)原理如下:
(1)手動設置主時鐘
根據(jù)本系統(tǒng)實際工作環(huán)境,,網(wǎng)絡授時采用發(fā)送/接收組播數(shù)據(jù)包的模式進行相關報文的交互,因此,,PTP時間服務器運行狀態(tài)穩(wěn)定后(鎖定后),,可將其中一臺設置為組播模式,其余的設置為單播模式,,且將所有的PTP時間服務器設置為較高的同一優(yōu)先級,。
通過如上的設置,實現(xiàn)了當前網(wǎng)絡中只有一臺設備發(fā)包,,進而實現(xiàn)熱備功能,。其中,保持為組播模式的PTP時間服務器為主時鐘,,單播模式的為備時鐘,。另外,傳輸模式中單播與組播模式可無縫切換無需重啟服務,,保障了運行的可靠性,。
(2)自動選擇主時鐘
①正常工作情況
首先,整個時間統(tǒng)一系統(tǒng)會選擇一臺PTP時間服務器作為主時鐘,,該模式的工作原理為:當PTP時間服務器開機并鎖定后,,均從時統(tǒng)專網(wǎng)上獲取時間報文,并從中解析出所需的參數(shù)值,,再根據(jù)BMC算法的相應參數(shù)值進行判斷,,符合相應條件的即為主時鐘(Master),其余的為從時鐘(Slave),。然后,,主時鐘對整個系統(tǒng)進行授時。
②異常工作情況
主時鐘(Master)發(fā)生故障或物理鏈路波動導致授時精度下降時,,系統(tǒng)會根據(jù)BMC算法的判定結果選定新的主時鐘,,即主時鐘(Master)自動切換為數(shù)據(jù)質(zhì)量較好的從時鐘(Slave)。
2.2.2 最佳主時鐘算法
BMC算法能夠?qū)φ麄€時間統(tǒng)一系統(tǒng)進行自適應授時調(diào)整,,它包括數(shù)據(jù)集比較算法和端口狀態(tài)決策算法[7-9],。
(1)數(shù)據(jù)集比較算法
在PTP時間統(tǒng)一系統(tǒng)中,每個協(xié)議節(jié)點定期向其他協(xié)議節(jié)點發(fā)送的Announce報文中攜帶了該節(jié)點及其父節(jié)點的時鐘質(zhì)量信息[10]。數(shù)據(jù)集比較算法的比較對象是端口收到的時鐘質(zhì)量信息和本地時鐘default DS數(shù)據(jù)集[11],。其需比較的具體信息及比較流程如圖4,、圖5所示,圖中A,、B分別代表端口收到的時鐘質(zhì)量信息和本地時鐘default DS數(shù)據(jù)集,。
(2)端口狀態(tài)決策算法
端口狀態(tài)決策算法的數(shù)據(jù)來源為:本地時鐘默認數(shù)據(jù)(D0)、PTP端口最佳報文(Erbest),、最佳報文(Ebest),。對于任一PTP端口r,對其收到的來自其他PTP端口的有效報文,,依次使用數(shù)據(jù)集比較算法,,就可以得到PTP端口最佳報文(Erbest)[11-12]。然后,,對每個端口的Erbest依次使用數(shù)據(jù)集比較算法,就可以得到Ebest,。
根據(jù)從這3個數(shù)據(jù)源得到數(shù)據(jù)的比較以及對本地時鐘等級的判定,,系統(tǒng)得出本地端口應處的狀態(tài),包括主時鐘狀態(tài)(M1,、M2,、M3)、從時鐘狀態(tài)(S1),、待機狀態(tài)(P1,、P2)。端口狀態(tài)決策流程圖如圖6所示,。
3 實驗結果
本系統(tǒng)的實驗環(huán)境由2臺PTP時間服務器和相應的時統(tǒng)軟件組成,,按照如圖1所示系統(tǒng)架構圖進行部署。根據(jù)PTP時鐘優(yōu)先級設置規(guī)則,,PTP時間服務器為本系統(tǒng)內(nèi)主時鐘(設置為高優(yōu)先級),,時統(tǒng)軟件為從時鐘(優(yōu)先級設置為255,無法被選擇為主時鐘),。
完成整個系統(tǒng)的部署后,,首先對本系統(tǒng)進行精度測試。將標準時鐘源的授時信號輸出到示波器上,,再選擇本系統(tǒng)中一臺服務器,,在服務器上利用時統(tǒng)軟件測試工具獲得的授時信號經(jīng)串口輸出到示波器上,調(diào)整示波器并進行上升沿的對比,,得出兩者的時延誤差,。系統(tǒng)測試結構圖如圖7所示,測試結果如圖8所示。
如圖8所示,,本系統(tǒng)通過時統(tǒng)軟件獲取的穩(wěn)定時延誤差大概為710 ns,,遠遠低于NTP協(xié)議的毫秒級誤差,滿足本系統(tǒng)自身的高精度要求,。
然后,,對本系統(tǒng)進行魯棒性測試。本系統(tǒng)正常運行時,,隨機選擇一時刻(本測試中為7時59分59秒),,將PTP時間服務器1與網(wǎng)絡交換機斷開連接,測試結果如表1所示,。
由表1可以看出,,將PTP時間服務器1斷開連接,對系統(tǒng)的運行并無影響,,系統(tǒng)并未出現(xiàn)時間斷續(xù),、跳變等異常情況,滿足本系統(tǒng)自身的高魯棒性要求,。
另外,,在本系統(tǒng)中,服務器接收PTP信號需配置專用網(wǎng)卡,,為了使系統(tǒng)性能測試結果更加詳細,,更能體現(xiàn)出本系統(tǒng)的授時精度情況,在進行了上述兩項測試之后,,對本系統(tǒng)中所使用的網(wǎng)卡進行了自守時的測試,,大概收集了16個小時的數(shù)據(jù),使用MATLAB將數(shù)據(jù)轉(zhuǎn)化為曲線圖,,得出了如圖9所示的自守時精度及其一階擬合情況,。
由圖9可得本系統(tǒng)所使用網(wǎng)卡的每秒時間漂移大概為80 ns(由圖中直線斜率得出),即隨著系統(tǒng)使用時間的增長,,本系統(tǒng)所使用的專用網(wǎng)卡對系統(tǒng)的授時精度有一定的影響,。
4 結論
本文通過對基于PTP授時的高可靠時間統(tǒng)一系統(tǒng)進行理論研究、設計論證,,實現(xiàn)了一套基于PTP授時的,、適用可靠性要求較高的雙機熱備時間統(tǒng)一系統(tǒng),提出了手動設置主時鐘與自動選擇主時鐘兩種雙機熱備工作模式,。本研究充分利用實際物理環(huán)境,,篩選使用場景,并進行了系統(tǒng)的搭建,、系統(tǒng)的性能測試,。結果表明,對比以往的時間統(tǒng)一系統(tǒng),本系統(tǒng)的時間同步精度為納秒級,,大大提升了時間統(tǒng)一系統(tǒng)的授時精度,;并且在雙機熱備自動切換的基礎上,增加了人工主動切換模式,,進一步提高了系統(tǒng)的魯棒性,。此外,在性能測試中,,對本系統(tǒng)中所使用的專用網(wǎng)卡進行了自守時精度測試,,也進一步展示了本系統(tǒng)相比于以往時間統(tǒng)一系統(tǒng)的性能優(yōu)化情況。
參考文獻
[1] 張楊敏,,郭勇,,謝興紅.嵌入式高精度GPS異地時間測量系統(tǒng)的設計[J].電子技術應用,2010,,36(2):19-22.
[2] 王娜,,慕德俊.分布式試驗系統(tǒng)管理中的時鐘同步技術研究[J].電子技術應用,2006,,32(12):25-27.
[3] 黃沛芳.基于NTP的高精度時鐘同步系統(tǒng)實現(xiàn)[J].電子技術應用,,2009,35(7):122-124,,127.
[4] 李永剛,李欣泉,,郭力兵,,等.麒麟操作系統(tǒng)平臺軟時統(tǒng)同步方法研究[J].電子技術應用,2018,,44(9):129-133.
[5] 李德駿,,汪港,楊燦軍,,等.基于NTP和IEEE1588海底觀測網(wǎng)時間同步系統(tǒng)[J].浙江大學學報(工學版),,2014,59(1):1-7.
[6] 劉見,,靳紹平,,李敏,等.基于IEEE-1588協(xié)議的高精度時鐘對時設計[J].電子技術應用,,2014,,40(4):48-51.
[7] 孫中尉.IEEE1588高精度網(wǎng)絡時間同步應用研究[D].西安:中國科學院大學(中國科學院國家授時中心),2010.
[8] 魏亞敏,,李軼,,張申,等.礦山物聯(lián)網(wǎng)時間同步系統(tǒng)設計與實現(xiàn)[J].電子技術應用,2017,,43(1):81-83.
[9] 黃健,,劉鵬,楊瑞民.IEEE1588精確時鐘同步協(xié)議從時鐘設計[J].電子技術應用,,2010,,36(7):94-97,108.
[10] 王冠.IEEE1588v2時鐘同步技術的研究與實現(xiàn)[D].武漢:武漢郵電科學研究院,,2011.
[11] 李紅亮.基于PTP協(xié)議的高精度網(wǎng)絡時間同步系統(tǒng)的設計與實現(xiàn)[D].天津:天津大學軟件學院,,2012.
[12] 庾智蘭,李智.精確時鐘同步協(xié)議最佳主時鐘算法[J].電力自動化設備,,2009,,16(11):74-77.
作者信息:
馬 昭,葛文雙,,胡愛蘭,,張瑞權,張志成
(華北計算機系統(tǒng)工程研究所,,北京100083)