PTP精密時鐘同步(1588)如何完成精準時間同步?

PTP精密時鐘同步(1588)如何完成精準時間同步?
PTP精密時鐘同步(1588)如何完成精準時間同步?
引言
  以太網技術由于其開放性好、價格低廉和使用方便等特點,已經廣泛應用于電信級別的網絡中,以太網的數據傳輸速度也從早期的10M提高到100M,GE,10GE。40GE,100GE正式產品也于2009年推出。
  以太網技術是“即插即用”的,也就是將以太網終端接到IP網絡上就可以隨時使用其提供的業務。但是,只有“同步的”的IP網絡才是一個真正的電信級網絡,才能夠為IP網絡傳送各種實時業務與數據業務的多重播放業務提供保障。目前,電信級網絡對時間同步要求十分嚴格,對于一個全國范圍的IP網絡來說,骨干網絡時延一般要求控制在50ms之內,現行的互聯網網絡時間協議NTP(Network Time Protocol),簡單網絡時間協議SNTP(Simple Network Time Protocol)等不能達到所要求的同步精度或收斂速度。基于以太網的時分復用通道仿真技術(TDM over Ethernet)作為一種過渡技術,具有一定的以太網時鐘同步概念,可以部分解決現有終端設備用于以太網的無縫連接問題。IEEE 1588標準則特別適合于以太網,可以在一個地域分散的IP網絡中實現微秒級高精度的時鐘同步。本文重點介紹IEEE 1588技術及其測試實現。
  2 IEEE 1588PTP介紹
  IEEE 1588PTP協議借鑒了NTP技術,具有容易配置、快速收斂以及對網絡帶寬和資源消耗少等特點。IEEE1588標準的全稱是“網絡測量和控制系統的精密時鐘同步協議標準(IEEE 1588 Precision Clock Synchronization Protocol)”,簡稱PTP(Precision Timing Protocol),它的主要原理是通過一個同步信號周期性的對網絡中所有節點的時鐘進行校正同步,可以使基于以太網的分布式系統達到精確同步,IEEE 1588PTP時鐘同步技術也可以應用于任何組播網絡中。
  IEEE 1588將整個網絡內的時鐘分為兩種,即普通時鐘(Ordinary Clock,OC)和邊界時鐘(Boundary Clock,BC),只有一個PTP通信端口的時鐘是普通時鐘,有一個以上PTP通信端口的時鐘是邊界時鐘,每個PTP端口提供獨立的PTP通信。其中,邊界時鐘通常用在確定性較差的網絡設備(如交換機和路由器)上。從通信關系上又可把時鐘分為主時鐘和從時鐘,理論上任何時鐘都能實現主時鐘和從時鐘的功能,但一個PTP通信子網內只能有一個主時鐘。整個系統中的最優時鐘為最高級時鐘GMC(Grandmaster Clock),有著最好的穩定性、精確性、確定性等。根據各節點上時鐘的精度和級別以及UTC(通用協調時間)的可追溯性等特性,由最佳主時鐘算法(Best Master Clock)來自動選擇各子網內的主時鐘;在只有一個子網的系統中,主時鐘就是最高級時鐘GMC。每個系統只有一個GMC,且每個子網內只有一個主時鐘,從時鐘與主時鐘保持同步。圖1所示的是一個典型的主時鐘、從時鐘關系示意。

圖1 主時鐘、從時鐘關系示意圖
  同步的基本原理包括時間發出和接收時間信息的記錄,并且對每一條信息增加一個“時間戳”。有了時間記錄,接收端就可以計算出自己在網絡中的時鐘誤差和延時。為了管理這些信息,PTP協議定義了4種多點傳送的報文類型和管理報文,包括同步報文(Sync),跟隨報文(Follow_up),延遲請求報文(Delay_Req),延遲應答報文(Delay_Resp)。這些報文的交互順序如圖2所示。收到的信息回應是與時鐘當前的狀態有關的。同步報文是從主時鐘周期性發出的(一般為每兩秒一次),它包含了主時鐘算法所需的時鐘屬性。總的來說同步報文包含了一個時間戳,精確地描述了數據包發出的預計時間。

圖2 PTP報文與交換順序
  由于同步報文包含的是預計的發出時間而不是真實的發出時間,所以Sync報文的真實發出時間被測量后在隨后的Follow_Up報文中發出。Sync報文的接收方記錄下真實的接收時間。使用Follow_Up報文中的真實發出時間和接收方的真實接收時間,可以計算出從屬時鐘與主時鐘之間的時差,并據此更正從屬時鐘的時間。但是此時計算出的時差包含了網絡傳輸造成的延時,所以使Delay_Req報文來定義網絡的傳輸延時。
  Delay_Req報文在Sync報文收到后由從屬時鐘發出。與Sync報文一樣,發送方記錄準確的發送時間,接收方記錄準確的接收時間。準確的接收時間包含在Delay_Resp報文中,從而計算出網絡延時和時鐘誤差。同步的精確度與時間戳和時間信息緊密相關。純軟件的方案可以達到毫秒的精度,軟硬件結合的方案可以達到微秒的精度。PTP協議基于同步數據包被傳播和接收時的最精確的匹配時間,每個從時鐘通過與主時鐘交換同步報文而與主時鐘達到同步。這個同步過程分為漂移測量階段和偏移測量與延遲測量階段。
第一階段修正主時鐘與從時鐘之間的時間偏差,稱為漂移測量。如圖3所示,在修正漂移量的過程中,主時鐘按照定義的間隔時間(缺省是2s)周期性地向相應的從時鐘發出惟一的同步報文。這個同步報文包括該報文離開主時鐘的時間估計值。主時鐘測量傳遞的準確時間T0 K,從時鐘測量接收的準確時間T1 K。之后主時鐘發出第二條報文——跟隨報文(Follow_up Message),此報文與同步報文相關聯,且包含同步報文放到PTP通信路徑上的更為精確的估計值。這樣,對傳遞和接收的測量與標準時間戳的傳播可以分離開來。從時鐘根據同步報文和跟隨報文中的信息來計算偏移量,然后按照這個偏移量來修正從時鐘的時間,如果在傳輸路徑中沒有延遲,那么兩個時鐘就會同步。

圖3 PTP時鐘漂移測量計算
為了提高修正精度,可以把主時鐘到從時鐘的報文傳輸延遲等待時間考慮進來,即延遲測量,這是同步過程的第二個階段(見圖4)。

圖4 PTP時鐘延遲和偏移計算
  從時鐘向主時鐘發出一個“延遲請求”數據報文,在這個過程中決定該報文傳遞準確時間T2。主時鐘對接收數據包打上一個時間戳,然后在“延遲響應”數據包中把接收時間戳B送回到從時鐘。根據傳遞時間戳B和主時鐘提供的接收時間戳D,從時鐘計算與主時鐘之間的延遲時間。與偏移測量不同,延遲測量是不規則進行的,其測量間隔時間(缺省值是4~60s之間的隨機值)比偏移值測量間隔時間要大。這樣使得網絡尤其是設備終端的負荷不會太大。采用這種同步過程,可以消減PTP協議棧中的時間波動和主從時鐘間的等待時間。從圖4右邊可以看到延遲時間D 和偏移時間數值O的計算方法。
  IEEE 1588目前的版本是v2.2,主要應用于相對本地化、網絡化的系統,內部組件相對穩定,其優點是標準非常具有代表性,并且是開放式的。由于它的開放性,特別適合于以太網的網絡環境。與其他常用于Ethernet TCP/IP網絡的同步協議如SNTP或NTP相比,主要區別是PTP是針對更穩定和更安全的網絡環境設計的,所以更為簡單,占用的網絡和計算資源也更少。NTP協議是針對于廣泛分散在互聯網上的各個獨立系統的時間同步協議。GPS(基于衛星的全球定位系統)也是針對于分散廣泛且各自獨立的系統。PTP定義的網絡結構可以使自身達到很高的精度,與SNTP和NTP相反,時間戳更容易在硬件上實現,并且不局限于應用層,這使得PTP可以達到微秒以內的精度。此外,PTP模塊化的設計也使它很容易適應低端設備。
  IEEE1588標準所定義的精確網絡同步協議實現了網絡中的高度同步,使得在分配控制工作時無需再進行專門的同步通信,從而達到了通信時間模式與應用程序執行時間模式分開的效果。
  由于高精度的同步工作,使以太網技術所固有的數據傳輸時間波動降低到可以接受的,不影響控制精度的范圍。
  3 IXIA IEEE 1588PTP測試方案
  美國IXIA公司目前提供最為完整的城域以太網功能、性能、一致性測試解決方案,并且最先在2~7層統一IP測試平臺實現了IEEE 1588PTP時鐘同步技術方案。關于IXIA 的城域以太網測試解決方案在以前有過詳細介紹,在這里對相應的技術點和對應IXIA應用程序做一總結(見表1)。

表1 IXIA城域以太網測試方案及對應程序

圖5是典型的IEEE 1588PTP測試場景,IXIA測試端口可以仿真普通時鐘并處于主模式,被測設備,比如以太網交換機處于邊界時鐘狀態,驗證其對各種時鐘報文的處理能力與實現;另一種測試情況是IXIA端口仿真邊界時鐘并處于從屬模式,這時候被測設備處于主模式,驗證被測設備在主時鐘模式下的處理機制。IXIA端口都有PTP協議棧,可以對PTP時鐘信息做靈活的配置。

圖5 IEEE 1588典型測試場景
IXIA IEEE 1588PTP測試方案所支持的特性包括:支持目前最為流行的IEEE 1588 2.2版本;支持兩步時鐘配置;一個物理端口可以同時產生PTP流量和非PTP流量;一個物理端口一個時鐘信號設置,時鐘可以手動設置為主模式或者從模式;可以以柱狀圖顯示從時鐘對應于主時鐘的偏移量;IXIA IxExplorer內置的實時協議分析解碼軟件可以對PTP報文直接進行編輯或者解碼。在測試過程中可以實時顯示各種詳細的PTP統計信息,統計信息見表2。

表2 IXIA IEEE 1588PTP測試統計信息

IXIA IEEE 1588PTP方案還可以實現負面測試(Negative Testing),可以根據需要設定發送Sync報文中Follow-up報文的比例,觀察丟棄掉的Follow-up報文對被測設備的影響;在Follow-up報文中增加錯誤數據包,驗證被測設備的處理與檢測能力;發送包括抖動與偏移的帶有時間戳的數據包迫使Sync報文失敗,檢驗被測設備的處理機制。圖6所示為PTP時鐘配制界面。

圖6 PTP時鐘配置界面
  4 結束語
  根據最新的信息公告,IXIA 被eWeek授予年度十大產品獎之一,被Frost & Sullivan授予2008全球三重播放綜合測試和監測設備的年度市場領先獎,被Test & Measurement World授予三個最佳測試獎,以及被Internet Telephony授予年度產品獎,被如此眾多令人尊敬有技術影響力組織機構的認可,進一步證明了IXIA正在推動測試、測量和業務認證市場的進步和戰略創新,在城域以太網網技術方面,IXIA同樣保持領先的地位,推出了業界第一個100G高速以太網測試加速系統,第一個在統一2~7層IP測試平臺上推出了IEEE 1588PTP 精密時鐘同步協議測試技術,IXIA這些技術創新和技術的領導地位,都為全面的IP測試提供了可靠保證。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/166351.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/166351.shtml
英文地址,請注明出處:http://en.pswp.cn/news/166351.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Centos部署GitLab-備份恢復

1. 下載rpm包 wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.8.4-ce.0.el7.x86_64.rpm2. 安裝依賴 yum -y install policycoreutils openssh-server openssh-clients postfix policycoreutils-python3. rpm安裝 rpm -ivh gitlab-ce-10.8.4-ce.…

TCP 重傳、滑動窗口、流量控制、擁塞控制的剖析

TCP 是一個可靠傳輸的協議,那它是如何保證可靠的呢? 為了實現可靠性傳輸,需要考慮很多事情,例如數據的破壞、丟包、重復以及分片順序混亂等問題。如不能解決這些問題,也就無從談起可靠傳輸。 那么,TCP 是…

zend studio 的主題安裝、卸載和更新

zend studio的主題插件安裝 我的zend studio版本是13.6 在Welcome頁面右側看到有好多插件可以安裝,現在我們來安裝主題,主題插件就是Eclipse Color Theme。先選中Eclipse Color Theme選項打勾,然后點擊Apply changs 按鈕進行安裝。 安裝完成…

深入理解移動端H5視頻通話中的攝像頭切換實踐

在移動端H5應用中實現視頻通話功能,已經成為現代Web應用的標配之一。隨著Web技術的發展,我們不僅能夠在桌面瀏覽器上實現復雜的視頻通話功能,也能夠在移動端瀏覽器中提供幾乎原生應用級別的流暢體驗。本文將詳細介紹如何在使用聲網(Agora)Web SDK的移動端H5應用中實現攝像…

亞馬遜云科技向量數據庫助力生成式AI成功落地實踐探秘(一) ?

隨著大語言模型效果明顯提升,其相關的應用不斷涌現呈現出越來越火爆的趨勢。其中一種比較被廣泛關注的技術路線是大語言模型(LLM)知識召回(Knowledge Retrieval)的方式,在私域知識問答方面可以很好的彌補通…

案例023:基于微信小程序的童裝商城的設計與實現

文末獲取源碼 開發語言:Java 框架:SSM JDK版本:JDK1.8 數據庫:mysql 5.7 開發軟件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序開發軟件:HBuilder X 小程序…

Nginx503有哪些解決辦法

還是經常見到的服務部署問題,今天遇見的是503: 503 的可能原因 Nginx 返回 503 錯誤通常表示服務暫時不可用。一些常見的原因包括: 后端服務故障:后端服務可能由于程序錯誤、崩潰或異常情況而無法正常響應請求。這可能是由于服…

在vue或者react或angular中,模板表達式中的箭頭函數是無效的嗎?為什么無效?

出現此問題的背景: 我在Angular項目中對一個標簽屬性綁定了一個箭頭函數,編譯報錯。 在vue或者react或angular中,模板表達式中的箭頭函數是無效的嗎? 在 Vue、React 或 Angular 中,模板表達式中的箭頭函數是無效的。…

Java常量池理論篇:Class常量池、運行時常量池、String常量池、基本類型常量池,intern方法1.6、1.7的區別

文章目錄 Class常量池運行時常量池String常量池基本類型常量池Integer 常量池Long 常量池 加餐部分 Class常量池 每個Class字節碼文件中包含類常量池用來存放字面量以及符號引用等信息。 運行時常量池 java文件被編譯成class文件之后,也就是會生成我上面所說的 …

webshell之基于框架免殺

thinkphp array_map_recursive函數 array_map_recursive函數分析 這里存在一個call_user_func命令執行函數 免殺效果 B函數 免殺效果 B函數分析 exec函數分析 在exec函數用存在有個類調用,且所有的參數都可控 smarty_php_tag函數 免殺效果 smarty_php_tag函數分析…

【開源】基于Vue.js的數據可視化的智慧河南大屏

項目編號: S 059 ,文末獲取源碼。 \color{red}{項目編號:S059,文末獲取源碼。} 項目編號:S059,文末獲取源碼。 目錄 一、摘要1.1 項目介紹1.2 項目錄屏 二、功能模塊三、系統展示四、核心代碼4.1 數據模塊 …

HTML新手入門筆記整理:塊元素和行內元素

塊元素 在HTML中,塊元素在瀏覽器顯示狀態下獨占一行,并且排斥其他元素與其位于一行。一般情況下,塊元素內部可以容納其他塊元素和行內元素。 常見塊元素 塊元素 說明 h1~h6 標題元素 p 段落元素 div div元素 hr 水平線 ol 有序列…

打印菱形-第11屆藍橋杯選拔賽Python真題精選

[導讀]:超平老師的Scratch藍橋杯真題解讀系列在推出之后,受到了廣大老師和家長的好評,非常感謝各位的認可和厚愛。作為回饋,超平老師計劃推出《Python藍橋杯真題解析100講》,這是解讀系列的第9講。 打印菱形&#xff…

周轉箱與工具柜的智能化應用

在當今制造業激烈競爭的市場中,6S管理方法作為提高企業競爭力的有力工具,與精益生產中的周轉箱和工具柜相結合,將為企業帶來更大的優勢。通過實施6S管理方法,企業不僅能夠提高生產效率、降低成本,還能夠改善產品質量、…

GDPU 數據結構 天碼行空11

文章目錄 數據結構實驗十一 圖的創建與存儲一、實驗目的二、實驗內容三、【實驗源代碼】🍻 CPP版🍻 c 語言版🍻 java版 四、【實驗結果】五、【實驗總結】 數據結構實驗十一 圖的創建與存儲 一、實驗目的 1、 理解圖的存儲結構與基本操作&a…

nf_conntrack內核模塊常見問題

nf_conntrack內核模塊常見問題 問題描述排查步驟前置條件:啟用nf_conntrack內核模塊檢查nf_conntrack配置 解決辦法1:半數減少nf_conntrack buckets的值解決辦法2:加倍調大m.min_free_kbytes值解決辦法3:Linux社區權威答復-忽略告警 問題描述 內核報錯 falling bac…

什么是 npm —— 寫給初學者的編程教程

原文鏈接: 什么是 npm —— 寫給初學者的編程教程 自 2009 年以來,Node.js 一直席卷全球。成千上萬個系統基于 Node.js 構建,促使開發者在社區宣稱“JavaScript 正在吞噬軟件”。 Node 成功的主要因素之一是它廣受歡迎的軟件包管理器——np…

前k個高頻單詞(C++實現)

前k個高頻單詞 題目思路代碼代碼講解 題目 思路 通過統計字符串的出現次數,并根據出現次數和字典序對字符串進行排序,找出出現頻率最高的前k個字符串。使用一個自定義的仿函數作為排序的比較函數,通過map容器進行統計,然后將結果…

Linux:strace 簡介

文章目錄 1. 前言2. 什么是 strace ?3. 使用 strace3.1 追蹤指定進程3.1.1 通過程序名追蹤進程3.1.2 通過 進程 ID (PID) 追蹤程序3.1.3 追蹤 子進程 或 線程 3.2 系統調用情況統計3.3 追蹤過濾3.3.1 追蹤指定的系統調用集合3.3.2 追蹤對指定文件句柄集合操作的系統調用3.3.3 …

前端已死?看看我的秋招上岸歷程

背景 求職方向:web前端 技術棧:vue2、springboot(學校開過課,簡單的學習過) 實習經歷:兩段,但都是實訓類的,說白了就是類似培訓,每次面試官問起時我也會坦誠交代&…