假設A電腦時間和B電腦時間不同,當他們兩個電腦的用戶在使用電腦的時候就會存在問題,比如A電腦的用戶說,我們下午5:00 去打球,然后A電腦到了5:00就去打球了,但是可能這個時候B電腦的時間才到4:00,他們的信息就不能對齊。
還有一些問題的追溯,如果出現問題后,本地時間存在差異,那么我們根據日志時間來排查問題就會有問題。
NTP 時鐘
NTP(Network TimeProtocol,網絡時間)是由美國德拉瓦大學的David L. Mills教授于1985年提出,由時間協議、ICMP時間戳消息及IP時間戳選項發 展而來。NTP用于將計算機客戶或服務器的時間同步到另一服務器或參考時鐘源。它使用UTC作為時間標準,是基于無連接的IP協議和UDP協議的應用層協議,使用層次式時間分布模型,所能取得的準確度依賴于本地時鐘硬件的精確度和對設備及進程延遲的嚴格控制。
PTP 時鐘
NTP 時鐘是不準確時鐘,人們為了獲得更加精準的時鐘對齊,所以就出現了PTP時鐘。
PTP(PrecisionTime Protocol)是一種對標準以太網終端設備進行時間和頻率同步的協議,也稱為IEEE 1588,簡稱為1588。1588分為1588v1和1588v2兩個版本,1588v1只能達到亞毫秒級的時間同步精度,而1588v2可以達到亞微秒級同步精度。1588v2被定義為時間同步的協議,最初只是用于設備之間的高精度時間同步,隨著技術的發展,1588v2也具備頻率同步的功能。
理論上任何PTP時鐘都能實現主時鐘和從時鐘的功能,但一個PTP通信子網內只能有一個主時鐘。整個系統中的最優時鐘為最高級時鐘GMC(Grandmaster Clock),有著最好的穩定性、精確性、確定性等。根據各節點上時鐘的精度和級別以及UTC(通用協調時間)的可追溯性等 特性,由最佳主時鐘算法(Best MasterClock)來自動選擇各子網內的主時鐘;在只有一個子網的系統中,主時鐘就是最高級時鐘GMC。每個系統只有一個GMC,且每個子網內只有一個主時鐘,從時鐘與主時鐘保持同步。
整個PTP網絡中,所有時鐘都會按照主從(Master-Slave)層次關系組織在一起,各節點逐級同步時鐘,最終完成與系統的最優時鐘Grandmaster的同步。整個同步的過程是通過交換1588v2報文來完成的。從時鐘通過1588v2報文中攜帶的時間戳信息計算與主時鐘之間的時間偏移和路徑延遲,據此調整本地時鐘達到與主時鐘的同步。
1588v2報文是在物理芯片上打時間戳,而不是在上層網絡,這樣能最大程度上保證時間戳的準確。因此,與傳統的應用層協議NTP(Network Time Protocol,網絡時間協議)相比,1588v2的精度更高。
時間同步的原理
1588V2時間同步的基本原理和NTP相同,都是主從設備之間雙向收發時間同步報文,根據報文的收發時間戳,計算得到兩個設備之間往返的總時間T。
如果兩個方向的時延相同,T/2 就是單向時延。
根據單向時延就可以得到主設備和從設備的時間偏差,從設備根據這個時間偏差來調整自身的時間,就可以完成主從設備之間的時間同步。
PTP 與NTP的區別
NTP 協議運行在應用層,測量出來的時間差除了在實際物理網絡上的時間,還包括操作系統的處理時間,比如你在發送網絡數據包的時候,被更高優先級的任務中斷了,又或者緩存阻塞了等等。
所以NTP的抖動相對PTP來說大得非常非常多。
1588v2 的優勢在于,它的時間戳是在物理層發送前加上去的,就撇開了操作系統對它和影響。
因為最近工作需要研究的一些知識點,我們要解決的問題是在兩個網絡設備上保證他們時間是完全對齊的,這個完全對齊一定是要求非常非常高的。如果也是在從事這方面研究的同學,歡迎一起討論。
責任編輯:haq
-
時鐘
+關注
關注
11文章
1735瀏覽量
131536 -
同步
+關注
關注
0文章
89瀏覽量
19184 -
NTP
+關注
關注
1文章
170瀏覽量
13907
原文標題:時間同步絕對是一個大問題
文章出處:【微信號:pcbgood,微信公眾號:奈因PCB電路板設計】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論