隨著信息技術的飛速發展,時間同步技術在通信、導航、電力等多個領域發揮著越來越重要的作用。從日常生活到高精尖的科學實驗,精確的時間同步都是確保系統正常運行和任務成功完成的關鍵因素。本文將對幾種主流的時間同步技術進行介紹和對比分析,探討各自的優缺點及其適用場景,以期為相關領域的研究和應用提供參考。
時間同步,顧名思義就是使分布在不同地點的時鐘保持一致的過程。在網絡通信中,時間同步意味著網絡中的所有設備參照同一時間基準工作,這對于數據的采集、處理和傳輸至關重要。時間同步協議是現代計算機網絡和多種應用領域中確保時鐘一致性的關鍵技術。不同的協議設計用于滿足不同精度和環境下的時間同步需求。
本文將會介紹一些常見的時間同步協議。
一、協議介紹
1.網絡時間協議(NTP)
NTP是一種廣泛使用的互聯網協議,通過互聯網在全球范圍內提供免費參考服務,能夠提供毫秒級別的時間同步精度。目前最新的版本是NTPv4。
它采用層次結構,通過服務器之間的時間信息交換來實現網絡內設備的時間同步。其中頂層是一級時間服務器(Stratum 1),它們直接連接到可靠的時間源,如原子鐘、GPS接收器或其他物理時間源。這些一級服務器將時間信息傳遞給二級服務器(Stratum 2),二級服務器再傳遞給三級服務器,以此類推。客戶端通常與最低層的服務器(如Stratum 3或更低)同步。
而SNTP是NTP的簡化版本,用于不需要高精度時間同步的應用,如個人計算機和消費類電子產品。
NTP最大的優勢是其部署簡單,僅需通過互聯網即可獲得時間同步,且擁有較好的可擴展性,分層設計允許大量設備通過網絡同步時間,同時減少了對頂級時間源的負載。但對于高精應用來講,準確性和精度較低。
SNTP/NTP廣泛應用于互聯網和企業網絡中,最熟悉的這是我們每臺設備的時間信息傳遞與同步。
?2.精確時間協議(PTP)
PTP(Precision Time Protocol,精確時間協議)是一種IEEE 1588標準定義,是一種用于工業以太網的高精度時間同步協議,PTP通過精確測量報文在網絡中的傳輸時間來同步時鐘。它能夠為網絡中的所有設備提供一個統一的時間參考,從而確保數據的時效性和一致性。采用硬件時間戳,可以大幅減少軟件處理時間,同步精度可以達到亞微秒/數十納秒級。
PTP網絡由一個主時鐘(Master Clock)和多個從時鐘(Slave Clock)組成,主時鐘通常連接到一個高精度的物理時間源,而從時鐘則分布在網絡中的各個設備上。PTP協議通過在網絡上交換時間戳消息來同步時鐘。它定義了兩種主要的消息類型:同步(Sync)消息和跟隨(Follow-up)消息。主時鐘(Grandmaster)發送同步消息,并在消息中嵌入發送時間戳。隨后,主時鐘發送跟隨消息,其中包含同步消息的發送時間戳。從時鐘(Slave)記錄收到同步消息和跟隨消息的時間戳,并使用這些時間戳來計算與主時鐘的時間偏差和延遲。
不過,PTP在高流量狀態下精度易受影響變化,想要保證穩定的高精時間同步,還需要專用的硬件設備與較復雜的相關配置,因此主要是在工業應用中較為廣泛。
此外,PTP可以運行在L2層(MAC層)和L4層(UDP層),在L2層網絡運行時,可以在MAC層中直接進行報文解析,避免在UDP層處理,減少協議棧中駐留時間,進一步提高時間同步精度,因此十分適用于自動駕駛系統。
除了PTP時間同步協議,我們也會在自動駕駛領域時常看見gPTP(Generalized Precision Time Protocol)協議。gPTP和PTP都是基于IEEE標準的時間同步協議,其中PTP遵循IEEE 1588標準,而gPTP是IEEE 802.1AS標準,專門為以太網音視頻橋接(AVB)和網絡化汽車應用設計,提供高精度的時間同步。
PTP廣泛應用于需要高精度時間同步的工業領域,如自動駕駛、電力系統、制造業自動化、電信網絡、金融市場交易等。在這些應用中,PTP的精確時間同步能力對于確保系統的穩定運行和數據的精確同步至關重要。自動駕駛的數據采集與回放中基本都會采用PTP或gPTP。
3.全球定位系統(GNSS)
GNSS提供了一種基于衛星信號的時間同步服務,精度可以達到微秒級別。GNSS接收器通過接收衛星信號來同步本地時鐘,廣泛應用于導航、定位和時間基準服務。
GNSS衛星上裝備有非常精確的原子鐘,它們不斷地發送時間信號和導航信息。地面的GNSS接收器可以接收到這些信號,并通過測量信號傳播時間來確定自己的位置和時間。由于光速是已知的,接收器可以通過計算信號從衛星發出到接收器接收到的往返時間來計算衛星和接收器之間的距離。通過同時接收多顆衛星的信號,接收器可以精確地確定自己的位置和時間。
GNSS的使用十分簡單,基本上無需復雜的配置,且可以隨時拆除與重新部署,因此具備極大的靈活性與廣泛性。不過必竟是通過無線信號傳輸,因此并非是所有地方都可以使用,也不能確保百分之百的穩定,因此一般作為初始同步與其他授時方式同步使用,例如銣原子鐘可以保證在脫離GNSS信號24小時僅具有1us誤差。
銣原子時鐘板卡德思特提供的Safran銣原子時鐘板卡是第一款在PCle板上利用銣振蕩器的時鐘卡,它是完全開源的,并由與硬件無關的監控和規范軟件堆棧運行,可擴展、面向未來和無縫集成,用于幫助客戶構建自己的高性能網絡時間服務器。
? 憑借機載銣原子本振,對GNSS損失具有高度彈性
? 完全開源設計和驅動
? 易于集成到任何帶有PCIe插槽的服務器中
? 與現有的NTP和PTP兼容
GNSS授時的精度非常高,通常可以達到納秒級別。這種精度對于許多應用來說已經足夠,包括電信、金融、科學研究、電力系統同步和其他需要高精度時間同步的領域。
4.White Rabbit(WR)
White Rabbit(WR)協議是一種用于粒子物理實驗和其他需要極高水平時間同步的科學研究的高精度時間同步協議。它由歐洲核子研究組織(CERN)和其他研究機構開發,旨在提供亞微秒級別的時間同步精度和皮秒級別的時鐘同步精度。
White Rabbit協議基于以太網技術,通過硬件時間戳、專用的時間同步網絡和高級的網絡協議,確保了數據傳輸的確定性和同步性。它采用了IEEE 1588-2008(PTP)標準的一些核心概念,并對其進行了一系列的優化和擴展,以實現更高精度的時間同步。
WR能夠提供亞微秒級別的時間同步精度和皮秒級別的時鐘同步精度,支持長達幾十公里的傳輸距離,適用于大型實驗設施的分布式時鐘同步,可以支持大量的同步節點,適用于大規模的實驗設施。目前在各類天文臺與粒子對撞機得到廣泛應用。
White Rabbit精確時間分配系統
德思特提供的Safran White Rabbit精確時間分配系統具有以下優勢,
? 易于集成進現有的網絡架構內(Ethernet, PTPv2, NTP)
? 可擴展超過1000km
? 沒有 GNSS 漏洞,性能不受數據流量影響,支持本地holdover
? 易于擴展,支持自校準
? 精度達到亞納秒/納秒級
? 支持區塊鏈與厘米級室內定位等新技術融合
5.其他
除此之外,還有很多時間同步的方法與協議,他們有的伴隨著行業與技術發展逐步退出了歷史舞臺,還有一些目前依舊有著非常廣泛的作用,這里由于篇幅原因,不再展開講解,我們簡單列舉下一些時間同步方法與協議:
● 時間協議(Time Protocol):這是互聯網的一個早期協議,定義在RFC 868中。它提供了一種簡單的機制,允許互聯網上的計算機同步其時鐘。由于其簡單性,它的時間同步精度相對較低,通常只能達到秒級別。
● 電話公司時間協議(Telnet Time Protocol):這是一種通過電話線路同步時鐘的協議,現在已經很少使用。
● 時間碼(IRIG-B):IRIG-B是一種時間碼格式,通常用于精確的時間同步應用,如電力系統、航空航天和軍事應用。時間碼發生器輸出一個帶有時間信息的信號,其他設備可以通過解析這個信號來同步時鐘。
● 本地時鐘同步(Local Oscillator, LO):通常指的是在一個設備或系統內部使用本地振蕩器來維持時鐘同步的方法。這種方法不依賴于外部的時間源,而依賴于設備內置的振蕩器,如晶體振蕩器、原子鐘或振蕩電路,來生成穩定的時鐘信號。
● 同步設備之間的接口(SyncE):SyncE是一種網絡同步技術,它通過以太網物理層提供同步信號,用于同步網絡中的時鐘。
● 網絡時間安全協議(NTS):NTS是NTP的擴展,旨在提高時間同步的安全性,防止時鐘同步過程中的惡意攻擊。
● 點對點協議(PPP):PPP在建立點對點連接時,可以協商并同步兩端的時鐘。
● 時間戳協議(TSP):TSP是一種簡單的協議,用于請求時間戳服務,通常用于安全相關的應用。
二、主要協議對比
我們對主要的四個協議做一下對比:
三、總結
總的來講這些協議和方法各有特點,適用于不同的應用場景和時間同步精度要求。在選擇時間同步協議時,需要考慮網絡環境、同步精度、設備兼容性以及實施成本等因素。隨著技術的發展,還可能出現新的時間同步技術和協議,以滿足不斷變化的需求。