本發明涉及通信技術領域,更具體地,涉及一種時間同步方法、裝置及PTP系統。
背景技術:
隨著網絡技術的發展,分布式系統技術越來越多地應用在測控領域,這些技術包括網絡通信、本地計算、分布式對象等。許多應用需要使用到設備節點時鐘產生的時間,如果沒有一個標準的協議同步分布式系統中各個節點的時間,那么這些設備將無法實現一些實時的同步控制功能。現有的一些時間同步協議并不適合用在分布式測控領域,例如網絡時間協議(NTP),它主要用于大型系統的同步,其精度一般只達到毫秒級別。而IEEE1588協議則是專門為測控領域而制定的一個時間同步協議,該協議可以用于包括以太網在內的任何支持組播功能的網絡。
IEEE 1588協議的時鐘同步機制規定,系統工作于主從模式,由主時鐘(Master)設備向從時鐘設備提供時鐘基準。具體實現方式為:主時鐘設備周期性發送同步報文(Sync),從時鐘設備根據收到Sync報文的時間來計算該報文傳輸的時間延遲以及主從時鐘之間的偏差,并調整本地時間以保持與主時鐘設備的時鐘一致。
IEEE1588使用精準時間協議PTP(Precision Timing Protocol),通過端到端的報文交互獲得時鐘參考信息,矯正本地時鐘頻率和相位。1588協議基于兩個假設條件:第一,在主時鐘設備和從時鐘設備之間,網絡報文傳輸時間是對稱的。也就是說一個報文從主時鐘設備到從時鐘設備的傳輸時間等于報文從從時鐘設備到主時鐘設備的傳輸時間;第二,在PTP報文交互過程當中,本地時鐘的漂移可以忽略不計。同步報文交互的基本模式如圖1所示。
(1)主時鐘設備向從時鐘設備發送同步(Sync)報文,將發送時間T1記入寄存器。
(2)從時鐘設備接收Sync報文,并注明接收報文的時間T2。
(3)主時鐘設備向從時鐘設備發送跟隨(Follow_Up)報文,將時間T1嵌入到跟隨報文中。
(4)從時鐘設備向主時鐘設備發送延時請求(Delay_Req)報文,并嵌入時間戳T3。
(5)主時鐘設備接收Delay_Req報文,并注明接收報文的時間T4。
(6)主時鐘設備通過在延時應答(Delay_Resp)報文中嵌入時間戳T4,主時鐘設備將時間戳T4傳輸給從時鐘設備。
在交互報文結束時,從時鐘設備擁有所述4個時間戳,這些時間戳用于計算從時鐘設備與主時鐘設備的偏移量(Offset),以及計算報文在兩個時鐘間的平均傳輸時間。
PTP端對端透明時鐘設備像普通的網橋、路由器或交換機一樣,轉發主時鐘設備與從時鐘設備之間交互的所有報文。典型的,端對端透明時鐘設備的駐留時間橋對于交互的PTP事件報文,會計算該報文經過該設備的駐留時間,并將該駐留時間在該PTP事件報文的一個特定字段進行累計,從時鐘設備接收到PTP事件報文后讀取其中攜帶的駐留時間及其他時間戳進行時鐘同步。而計算駐留所使用的時間戳(也即駐留時間)是由透明時鐘設備基于本地時鐘產生。
但是,實際上端對端透明時鐘設備的本地時鐘并不準確,不一定與主時鐘設備始終保持同步,所以基于本地時鐘計算的駐留時間也就會存在誤差,從而影響從時鐘設備的時鐘同步精度。
為此,現有方法中,PTP端對端透明時鐘設備通常是根據已做過上行駐留時間校正的主時鐘設備及本地時鐘設備對PTP事件報文中Sync報文的發送周期,計算主時鐘和本地時鐘速率的比值(即頻率偏移因子,Ff),然后根據所述比值來修正本地時鐘。但是該方法存在獲得的本地時鐘速率和主時鐘速率誤差過大的問題,例如受網絡環境等各種因素的影響,PTP端對端透明時鐘設備對主時鐘定期發送的各Sync報文,本身就不可能嚴格是按照特定周期進行轉發的,只能是大致估算一個對Sync報文的發送周期,從而導致駐留時間的精確度難以保證。
技術實現要素:
為了解決上述技術問題,本發明提供了一種時間同步方法、裝置及PTP系統,可以實現PTP端對端透明時鐘設備的本地時鐘同步結果更加精確。
本發明實施例提供了以下技術方案:一種時間同步方法,應用于主時鐘設備,所述方法包括:
向透明時鐘設備發送精準時間協議PTP事件報文,并向透明時鐘設備發送主時鐘頻率相關參數和/或主時鐘頻相相關參數;
其中,主時鐘設備為已做過上行駐留時間校正的本系統最高級時鐘設備。
可選的,所述向透明時鐘設備發送PTP事件報文,包括:以帶內方式周期性的向透明時鐘設備發送PTP事件報文;并且,
所述向透明時鐘設備發送主時鐘頻率相關參數和/或主時鐘頻相相關參數,包括:以帶內方式或者帶外方式周期性的向透明時鐘設備發送主時鐘頻率相關參數和/或主時鐘頻相相關參數。
可選的,所述以帶內方式周期性的向透明時鐘設備發送主時鐘頻率相關參數和/或頻相相關參數,包括:
至少獲取主時鐘頻率、主時鐘頻相、是否鎖頻、是否鎖相參數中的主時鐘頻率和/或主時鐘頻相參數;
將獲取的參數分別插入至預先生成的普通PTP信號報文中組織廠商消息格式的擴展字段的相應位置;
通過PTP端口經以太網將修改后的PTP信號報文發送至透明時鐘設備的PTP端口。
可選的,所述以帶外方式周期性的向透明時鐘設備發送主時鐘頻率相關參數和/或頻相相關參數,包括:
基于與透明時鐘設備的帶外連接線利用帶外接口發出頻率和相位分別為主時鐘頻率和主時鐘頻相的信號脈沖。
本發明實施例還提供了以下技術方案:
一種時間同步方法,應用于透明時鐘設備,所述方法包括:
監測主時鐘設備以帶外方式發送的信號脈沖,提取所述信號脈沖的頻率和相位,分別作為主時鐘頻率和主時鐘頻相;
將所述的主時鐘頻率和主時鐘頻相插入至預先生成的普通PTP信號報文中組織廠商消息格式的擴展字段的相應位置,然后將修改后的PTP信號報文傳遞給PTP端口;
接收PTP端口傳送的所述修改后的PTP信號報文,提取其中所攜帶的主時鐘頻率和主時鐘頻相,根據所述主時鐘頻率和主時鐘頻相對本地時鐘頻率和/或本地時鐘頻相進行修正。
可選的,所述根據主時鐘頻率和主時鐘頻相對本地時鐘頻率和/或本地時鐘頻相進行修正,包括:
當判斷到主時鐘設備經由PTP端口連續n個周期發送的PTP信號報文中的主時鐘頻率保持一致,則進入頻率預鎖定狀態,將透明時鐘的本地時鐘的頻率修正為所述主時鐘頻率;和/或,
當判斷到主時鐘設備經由PTP端口連續m個周期發送的PTP信號報文中的頻相保持一致,則進入相位預鎖定狀態,將透明時鐘的本地時鐘的相位修正為所述主時鐘頻相。
可選的,所述根據主時鐘頻率和主時鐘頻相對本地時鐘頻率和/或本地時鐘頻相進行修正,包括:
通過修改增設于透明時鐘設備的可調頻振蕩器的頻率補償寄存器的值進行頻率修正,和/或通過修改可調頻振蕩器的相位補償寄存器的值進行相位修正。
本發明實施例還提供了以下技術方案:
一種時間同步方法,應用于透明時鐘設備,所述方法包括:
通過PTP端口接收主時鐘設備以帶內方式發送的PTP信號報文;
提取所述PTP信號報文中所攜帶的主時鐘頻率相關參數和/或主時鐘頻相相關參數;
根據所述相關參數對本地時鐘頻率和/或本地時鐘頻相進行修正。
可選的,所述提取PTP信號報文中所攜帶的主時鐘頻率相關參數和/或主時鐘頻相相關參數,包括:至少提取主時鐘頻率、主時鐘頻相、是否鎖頻、是否鎖相參數中的主時鐘頻率和/或主時鐘頻相參數。
可選的,所述根據相關參數對本地時鐘頻率進行修正,包括:
步驟101、根據預設的第一參考意義條件,判斷主時鐘設備發送的主時鐘頻率是否具有參考意義;
步驟102、當判斷到所述主時鐘頻率具有參考意義,則獲取所述PTP信號報文中用于標識是否鎖頻的參數;
步驟121、當所述參數對應為主時鐘鎖頻,則進一步判斷:后續接收到的主時鐘設備連續n個周期發送的PTP信號報文中的主時鐘頻率是否保持一致;
步驟122、當主時鐘設備連續n個周期發送的PTP信號報文中的主時鐘頻率保持一致,則進入頻率預鎖定狀態,將透明時鐘的本地時鐘的頻率修正為該主時鐘頻率。
可選的,當獲取的所述參數值對應為主時鐘未鎖頻,或者,連續n個周期的主時鐘頻率未保持一致,則均返回步驟101,繼續等待。
可選的,所述預設的第一參考意義條件,包括:當最近設定時間窗口內提取到的各個主時鐘頻率的波動范圍滿足預設的條件,則主時鐘頻率具體參考意義。
可選的,所述方法還包括:
當頻率預鎖定狀態過程中主時鐘頻率失去參考意義,或者主時鐘頻率始終不具備參考意義,或者透明時鐘設備無法識別PTP信號報文中記錄主時鐘的時鐘信息的TLV字段,
則獲取根據主時鐘設備與透明時鐘設備對同步報文Sync的發送周期所估算的本地時鐘相對于主時鐘的頻率偏移因子;基于所述頻率偏移因子,確定PTP事件報文在透明時鐘設備的駐留時間。
可選的,所述根據相關參數對本地時鐘頻相進行修正,包括:
步驟201、根據預設的第二參考意義條件,判斷主時鐘設備發送的主時鐘頻相是否具有參考意義;
步驟202、當判斷到所述主時鐘頻相具有參考意義,則獲取所述PTP信號報文中用于標識是否鎖相的參數;
步驟221、當所述參數對應為主時鐘鎖相,則進一步判斷:后續接收到的主時鐘設備連續m個周期發送的PTP信號報文中的主時鐘頻相是否保持一致;
步驟222、當主時鐘設備連續m個周期發送的PTP信號報文中的主時鐘頻相保持一致,則進入相位預鎖定狀態,將透明時鐘的本地時鐘的相位修正為所述主時鐘頻相。
可選的,當讀取的所述參數值對應為主時鐘未鎖相,或者,連續m個周期的主時鐘頻相未保持一致,則均返回步驟201,繼續等待。
可選的,所述方法還包括:
當相位預鎖定狀態過程中主時鐘頻相失去參考意義,或者主時鐘頻相始終不具備參考意義,或者透明時鐘設備無法識別PTP信號報文中記錄主時鐘的時鐘信息的TLV字段,
則獲取根據主時鐘設備與透明時鐘設備對同步報文的發送周期所估算的本地時鐘相對于主時鐘的頻率偏移因子;基于所述頻率偏移因子,確定PTP事件報文在透明時鐘設備的駐留時間。
可選的,
所述獲取根據主時鐘設備與透明時鐘設備對同步報文的發送周期所估算的本地時鐘相對于主時鐘的頻率偏移因子,包括:接收主時鐘設備下發的一個攜帶頻率偏移因子的PTP信號報文;
獲得所述PTP信號報文的TLV組織廠商消息格式的擴展消息中的頻率偏移因子Ff字段中攜帶的本設備的MAC地址,而后讀取所述Ff字段中與該MAC地址對應的頻率偏移因子值,作為本設備的頻率偏移因子值。
可選的,所述根據主時鐘頻率和主時鐘頻相對本地時鐘頻率和/或本地時鐘頻相進行修正,包括:
通過修改增設于透明時鐘設備的可調頻振蕩器的頻率補償寄存器的值進行頻率修正,和/或通過修改可調頻振蕩器的相位補償寄存器的值進行相位修正。
本發明實施例還提供了以下技術方案:
一種時間同步裝置,應用于主時鐘設備,所述裝置包括:
發送模塊,用于向透明時鐘設備發送精準時間協議PTP事件報文,并向透明時鐘設備發送主時鐘頻率相關參數和/或主時鐘頻相相關參數;
其中,主時鐘設備為已做過上行駐留時間校正的本系統最高級時鐘設備。
可選的,所述發送模塊向透明時鐘設備發送PTP事件報文,包括:以帶內方式周期性的向透明時鐘設備發送PTP事件報文;并且,
所述發送模塊向透明時鐘設備發送主時鐘頻率相關參數和/或主時鐘頻相相關參數,包括:以帶內方式或者帶外方式周期性的向透明時鐘設備發送主時鐘頻率相關參數和/或主時鐘頻相相關參數。
可選的,所述發送模塊以帶內方式周期性的向透明時鐘設備發送主時鐘頻率相關參數和/或頻相相關參數,包括:
至少獲取主時鐘頻率、主時鐘頻相、是否鎖頻、是否鎖相參數中的主時鐘頻率和/或主時鐘頻相參數;
將獲取的參數分別插入至預先生成的普通PTP信號報文中組織廠商消息格式的擴展字段的相應位置;
通過PTP端口經以太網將修改后的PTP信號報文發送至透明時鐘設備的PTP端口。
可選的,所述發送模塊以帶外方式周期性的向透明時鐘設備發送主時鐘頻率相關參數和/或頻相相關參數,包括:
基于與透明時鐘設備的帶外連接線利用帶外接口發出頻率和相位分別為主時鐘頻率和主時鐘頻相的信號脈沖。
本發明實施例還提供了以下技術方案:
一種時間同步裝置,應用于透明時鐘設備,所述裝置包括:
監測模塊,用于監測主時鐘設備以帶外方式發送的信號脈沖,提取該脈沖的頻率和相位,分別作為主時鐘頻率和主時鐘頻相;
傳輸模塊,用于將所述的主時鐘頻率和主時鐘頻相插入至預先生成的普通PTP信號報文中組織廠商消息格式的擴展字段的相應位置,然后將修改后的PTP信號報文傳遞給PTP端口;
第一處理模塊,用于接收PTP端口傳送的所述修改后的PTP信號報文,提取其中所攜帶的主時鐘頻率和主時鐘頻相,根據所述主時鐘頻率和主時鐘頻相對本地時鐘頻率和/或本地時鐘頻相進行修正。
可選的,所述第一處理模塊根據主時鐘頻率和主時鐘頻相對本地時鐘頻率和/或本地時鐘頻相進行修正,包括:
當判斷到主時鐘設備經由PTP端口連續n個周期發送的PTP信號報文中的主時鐘頻率保持一致,則進入頻率預鎖定狀態,將透明時鐘的本地時鐘的頻率修正為所述主時鐘頻率;和/或,
當判斷到主時鐘設備經由PTP端口連續m個周期發送的PTP信號報文中的頻相保持一致,則進入相位預鎖定狀態,將透明時鐘的本地時鐘的相位修正為所述主時鐘頻相。
可選的,所述第一處理模塊根據主時鐘頻率和主時鐘頻相對本地時鐘頻率和/或本地時鐘頻相進行修正,包括:
通過修改增設于透明時鐘設備的可調頻振蕩器的頻率補償寄存器的值進行頻率修正,和/或通過修改可調頻振蕩器的相位補償寄存器的值進行相位修正。
本發明實施例還提供了以下技術方案:
一種時間同步裝置,應用于透明時鐘設備,所述裝置包括:
接收模塊,用于通過PTP端口接收主時鐘設備以帶內方式發送的PTP信號報文;
提取模塊,用于提取所述PTP信號報文中所攜帶的主時鐘頻率相關參數和/或主時鐘頻相相關參數;
第二處理模塊,用于根據所述相關參數對本地時鐘頻率和/或本地時鐘頻相進行修正。
可選的,所述提取模塊提取PTP信號報文中所攜帶的主時鐘頻率相關參數和/或主時鐘頻相相關參數,包括:至少提取主時鐘頻率、主時鐘頻相、是否鎖頻、是否鎖相參數中的主時鐘頻率和/或主時鐘頻相參數。
可選的,所述第二處理模塊根據相關參數對本地時鐘頻率進行修正,包括:
根據預設的第一參考意義條件,判斷主時鐘設備發送的主時鐘頻率是否具有參考意義;
當判斷到所述主時鐘頻率具有參考意義,則獲取所述PTP信號報文中用于標識是否鎖頻的參數;
當所述參數對應為主時鐘鎖頻,則進一步判斷:后續接收到的主時鐘設備連續n個周期發送的PTP信號報文中的主時鐘頻率是否保持一致;
當主時鐘設備連續n個周期發送的PTP信號報文中的主時鐘頻率保持一致,則進入頻率預鎖定狀態,將透明時鐘的本地時鐘的頻率修正為該主時鐘頻率。
可選的,所述第二處理模塊根據相關參數對本地時鐘頻相進行修正,包括:
根據預設的第二參考意義條件,判斷主時鐘設備發送的主時鐘頻相是否具有參考意義;
當判斷到所述主時鐘頻相具有參考意義,則獲取所述PTP信號報文中用于標識是否鎖相的參數;
當所述參數對應為主時鐘鎖相,則進一步判斷:后續接收到的主時鐘設備連續m個周期發送的PTP信號報文中的主時鐘頻相是否保持一致;
當主時鐘設備連續m個周期發送的PTP信號報文中的主時鐘頻相保持一致,則進入相位預鎖定狀態,將透明時鐘的本地時鐘的相位修正為所述主時鐘頻相。
可選的,所述第二處理模塊根據主時鐘頻率和主時鐘頻相對本地時鐘頻率和/或本地時鐘頻相進行修正,包括:
通過修改增設于透明時鐘設備的可調頻振蕩器的頻率補償寄存器的值進行頻率修正,和/或通過修改可調頻振蕩器的相位補償寄存器的值進行相位修正。
本發明實施例還提供了以下技術方案:
一種PTP系統,包括:如上所述的裝置所應用的主時鐘設備;以及,如上所述的裝置所應用的透明時鐘設備。
本發明實施例由主時鐘設備通過PTP信號報文直接攜帶相關主時鐘信息下發給透明時鐘設備,透明時鐘設備據此產生更加精確的本地時鐘,從而使得PTP事件報文的駐留時間的精確度得以有效改善。相比于現有技術根據PTP事件報文的發送周期得到頻率偏移因子,利用該因子修正本地時鐘的方法,可以獲得更高的駐留時間的精確度。本發明實施例擴展了PTP協議,相比現有的實現方案,具有獲取主時鐘頻率、頻相信息更加準確的特點,使PTP系統中時鐘設備同步結果更加精確。本發明實施例并提供了多種實施方式,可以滿足實際應用中各種情況,具有解決方案全面、實用的特點。
附圖說明
附圖用來提供對本申請技術方案的進一步理解,并且構成說明書的一部分,與本申請的實施例一起用于解釋本申請的技術方案,并不構成對本申請技術方案的限制。在附圖中:
圖1為精準時間協議同步報文交互示意圖。
圖2為本發明實施例應用的一種時鐘同步系統組網示意圖。
圖3為信號報文格式規范示意圖。
圖4為本發明實施例中對PTP信號TLV實體規范的擴展應用示意圖。
圖5為本發明實施例中一種TC(Transparent clock,透明時鐘)本地時鐘調頻的示意圖。
圖6為本發明第二實施例透明時鐘時間同步方法流程圖。
圖7為本發明第三實施例透明時鐘時間同步方法流程圖。
圖8為本發明第五實施例提供的一種PTP系統中時間同步裝置結構示意圖。
圖9為本發明第六實施例提供的一種PTP系統中時間同步裝置結構示意圖。
具體實施方式
為使本發明的目的、技術方案和優點更加清楚明白,下文中將結合附圖對本發明的實施例進行詳細說明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互任意組合。
參照圖2,圖2示出了本發明實施例應用的時鐘同步組網系統,在所述組網系統中包含多個主時鐘、透明時鐘及從時鐘設備。在本發明實施例中,透明時鐘設備均指的是端對端透明時鐘設備。
圖3顯示PTP信號報文格式規范,PTP信號報文在時鐘設備間傳遞信息、請求和命令。圖4為本發明實施例中對PTP信號報文TLV(Type,Length,Value)組織廠商消息格式的擴展:表中新增Master_Crystal(MC)代表主時鐘晶振頻率;Master_lock_Crystal(MLC)代表主時鐘是否鎖頻;Master_phase(MP)代表主時鐘頻相;Master_lock_phase(MLP)代表主時鐘是否鎖相。其中,MLC代表來自(本系統)最高級時鐘當前晶振頻率是否鎖定,便于透明時鐘設備或從時鐘設備本地調頻基于此進行時鐘校正過程中立即同步或等待直到MLC標識為鎖頻后進行同步;MLP代表來自(本系統)最高級時鐘當前頻相是否鎖定,便于透明時鐘或從時鐘本地調相基于此頻相校正過程中是否立即同步或等待鎖相的MLP進行同步。
圖5描述TC時鐘根據事件報文接口接收到的同步報文的時間戳信息計算得出頻率偏移因子Ff,
其中,△t0為主時鐘設備發送同步(Sync)報文的周期,
△t0=t0’-t0,t0、t0’為主時鐘設備按照設定周期先后兩次相繼發送同步報文的時間信息。
△t1為透明時鐘設備接收同步報文的周期,
△t1=t1’-t1,t1、t1’為透明時鐘設備按照設定周期先后兩次相繼接收同步報文的時間信息。
將所述Ff進行本地存儲。
以下描述透明時鐘(也即TC)設備對PTP信號報文的提取、識別以及時間補償流程,對本發明實施例所實現的方案做詳細介紹。以下所述方案可應用于如上圖2所提供的組網架構,該網絡稱之為PTP域或者PTP系統。
本發明第一實施例提供了一種時間同步方法,應用于主時鐘設備,所述方法包括:
向透明時鐘設備發送PTP事件報文,向透明時鐘設備傳遞主時鐘頻率和/或主時鐘頻相相關參數;
所述向透明時鐘設備發送PTP事件報文,包括:以帶內方式周期性的向透明時鐘設備發送PTP事件報文;
所述向透明時鐘設備傳遞主時鐘頻率和/或頻相參數,包括:通過帶內或帶外方式周期性的向透明時鐘設備傳遞主時鐘頻率和/或主時鐘頻相相關參數。
其中主時鐘設備為已做過上行駐留時間校正的本系統最高級時鐘設備。
一方面,以帶內方式周期性的向透明時鐘設備發送PTP事件報文;另一方面,通過帶內或帶外方式周期性的向透明時鐘設備傳遞主時鐘頻率、主時鐘頻相等參數。其中,帶內方式指的是:兩時鐘設備之間利用以太網接口以報文形式進行信息交互的方式。帶外方式指的是:兩時鐘設備之間基于二者的連接線利用帶外接口TOD以信號脈沖形式進行信息交互的方式。
作為本實施例的一種實施方式,所述以帶內方式周期性的向透明時鐘設備發送主時鐘頻率和/或頻相相關參數,包括:分別獲取主時鐘頻率MC、頻相MP、是否鎖頻、是否鎖相參數;將獲取的各個參數分別插入至預先生成的普通PTP信號報文中組織廠商消息格式的擴展字段的相應位置,具體的插入位置請見上圖3和圖4;通過主時鐘設備的PTP端口經以太網將修改后的PTP信號報文發送至透明時鐘設備的PTP端口;
需要說明的是,在上述實施方式中預先生成普通PTP信號報文,當然也可以不預先生成普通PTP信號報文,而是在獲取各個相關參數后,進行報文封裝處理,以生成攜帶有各個獲取參數的PTP信號報文,這構成了另外的實施方式:
至少獲取主時鐘頻率、主時鐘頻相、是否鎖頻、是否鎖相參數中的主時鐘頻率、主時鐘頻相參數;
獲取相關參數后,進行報文封裝處理,生成攜帶有相關參數的PTP信號報文;
通過PTP端口經以太網將攜帶有相關參數的PTP信號報文發送至透明時鐘設備的PTP端口。
作為本實施例的另外一種實施方式,主時鐘設備以帶外方式周期性的向透明時鐘設備發送主時鐘頻相、主時鐘頻率等主時鐘的時鐘相關參數信息,包括:主時鐘設備基于與透明時鐘設備的帶外連接線利用帶外接口TOD發出頻率和相位分別為主時鐘頻率MC和頻相MP的信號脈沖。
本實施例中,主時鐘設備發送標識是否鎖頻和是否鎖相的信息,其目的在于:標識主時鐘是否進入穩定態,根據鎖頻鎖相信息表示當前主時鐘對外授時穩定可用,用于整網TC(Transparent clock,透明時鐘)、OC(Ordinary clock,普通時鐘)的時鐘校準。
在本發明實施例具體實施中,在兩時鐘設備間有直接相連的能夠傳遞信號脈沖的連接線的情況下,優先采用帶外方式;只有在待通信的兩時鐘設備不支持該方式(也即兩時鐘設備間無直接相連的能夠傳遞信號脈沖的連接線)的情況下,選用帶內方式。在帶外方式中,主時鐘設備與透明時鐘設備直接通過帶外連接線相連,所以透明時鐘設備通過信號脈沖監測到的主時鐘設備的MC和MP不會出現經過以太網傳輸后因鏈路延時與網絡丟包造成的信息偏差過大而無法同步的問題。
參照圖6所示,為本發明第二實施例提供的時間同步方法流程圖,所述方法應用于包含有帶外接口和PTP端口的透明時鐘設備,包括以下步驟:
步驟1001,帶外接口監測主時鐘設備以帶外方式發送的信號脈沖,提取該脈沖的頻率和相位,分別作為主時鐘頻率MC和主時鐘頻相MP;
步驟1002,帶外接口將監測到的MC和MP插入至預先生成的普通PTP信號報文中組織廠商消息格式的擴展字段的相應位置,然后將修改后的PTP信號報文傳遞給PTP端口;
步驟1003,PTP端口接收所述修改后的PTP信號報文,提取其中所攜帶的主時鐘頻率MC和主時鐘頻相MP,據此對本地時鐘頻率和/或本地時鐘頻相進行修正。
其中,修正過程具體包括:
a.頻率修正
如果PTP端口判斷出主時鐘設備連續n(優選為4)個周期發送的PTP信號報文中的主時鐘頻率MC保持一致,則進入頻率預鎖定狀態,將透明時鐘的本地時鐘的頻率修正為該主時鐘MC;
b.相位修正
如果PTP端口判斷出主時鐘設備連續m(優選為4)個周期發送的PTP信號報文中的MP保持一致,則進入相位預鎖定狀態,將透明時鐘的本地時鐘的相位修正為該m個周期提取到的MP。
透明時鐘設備的帶外接口監測主時鐘設備以帶外方式發送的信號脈沖,提取該脈沖的頻率和相位,分別作為主時鐘頻率MC和頻相MP;
由于透明時鐘設備上的PTP端口僅能夠處理PTP信號報文或事件報文,為此透明時鐘設備的帶外接口還需要預先生成普通PTP信號報文,并將監測到的MC和MP插入至該PTP信號報文中組織廠商消息格式的擴展字段的相應位置,然后將修改后的PTP信號報文傳遞給PTP端口;
PTP端口接收帶外接口發送的PTP信號報文,提取其中所攜帶的主時鐘頻率MC和主時鐘頻相MP,據此對本地時鐘進行修正,相應的PTP事件報文在透明時鐘設備的駐留時間為:以本地時鐘為基準記錄的從透明時鐘設備發出該PTP事件報文的時間戳,減去該PTP事件報文進入透明時鐘設備的時間戳。由于采用本發明實施例中的方法對本地時鐘進行修正,獲得的本地時鐘時間更加精確,從而以獲得的本地時鐘為基準確定的駐留時間就更加精確,從而克服了現有技術的缺陷。
參照圖7所示,為本發明第三實施例提供的透明時鐘時間同步方法流程圖,所述方法應用于透明時鐘設備,包括以下步驟:
步驟1101,通過PTP端口接收主時鐘設備以帶內方式發送的PTP信號報文;
步驟1102,提取PTP信號報文中所攜帶的主時鐘頻率和/或主時鐘頻相相關參數,根據所述相關參數對本地時鐘頻率和/或本地時鐘頻相進行修正。
其中,所述提取PTP信號報文中所攜帶的主時鐘頻率和/或主時鐘頻相相關參數,包括:分別提取PTP信號報文中所攜帶的主時鐘頻率MC、頻相MP、是否鎖頻、是否鎖相參數。
相應的,對于后續接收到的PTP事件報文,其在透明時鐘的駐留時間為:以本地時鐘為基準記錄的從透明時鐘設備發出該PTP事件報文的時間戳,減去該PTP事件報文進入透明時鐘設備的時間戳。由于采用本發明實施例中的方法對本地時鐘進行修正,獲得的本地時鐘時間更加精確,從而以獲得的本地時鐘為基準確定的駐留時間就更加精確,從而克服了現有技術的缺陷。
其中,修正過程具體包括:
a.頻率修正
步驟101、根據預設的第一參考意義條件,判斷主時鐘設備發送的主時鐘MC是否具有參考意義。
具體的判斷過程可以是:統計最近設定時間窗口內提取到的各個MC的波動范圍是否滿足預設的條件(例如任意兩MC的差的絕對值均小于設定的第一波動閾值);如果是,則判斷出主時鐘的MC具體參考意義。
步驟102、如果具有參考意義,則讀取PTP信號報文中所攜帶的用于標識主時鐘是否鎖頻的參數;
步驟121、如果該參數值對應為主時鐘鎖頻;
則進一步判斷:后續接收到的主時鐘設備連續n(優選為4)個周期發送的PTP信號報文中的MC是否保持一致;
步驟122、如果一致,則進入頻率預鎖定狀態,將透明時鐘設備的本地時鐘的頻率修正為該MC。
如果讀取的所述參數值對應為主時鐘未鎖頻,或者,連續n個周期的MC未保持一致,則均返回步驟101,繼續等待。
PTP系統中主時鐘設備很可能會發生變更,以及主時鐘設備掉電后至再上電等情況。如果透明時鐘設備在獲取到主時鐘頻率和主時鐘頻相后,不結合預設條件對獲取到的參數是否有效加以判斷,而是直接根據該參數進行本地時鐘同步,那么會造成時鐘同步結果不準確的問題。所以,在上述的實施方式中,通過首先判斷主時鐘的頻率是否滿足預設條件,當滿足預設條件則具有參考意義,并且進一步判斷后續接收到的主時鐘設備連續n個周期發送的PTP信號報文中的頻率是否保持一致,保持一致才將其作為標準對透明時鐘設備的本地時鐘進行同步。通過這樣的步驟,所獲得的主時鐘頻率更加準確,從而根據所述主時鐘頻率進行本地時鐘同步,同步結果更加準確。
在另外的實施方式中,所述方法還包括:
當頻率預鎖定狀態過程中主時鐘頻率失去參考意義,或者主時鐘頻率始終不具備參考意義,或者透明時鐘設備無法識別PTP信號報文中記錄主時鐘的時鐘信息的TLV字段,
則獲取根據主時鐘設備與透明時鐘設備對同步報文Sync的發送周期所估算的本地時鐘相對于主時鐘的頻率偏移因子;基于所述頻率偏移因子,確定PTP事件報文在透明時鐘設備的駐留時間。
其中,所述基于頻率偏移因子,確定PTP事件報文在透明時鐘設備的駐留時間,包括:當無法基于頻率偏移因子直接修改對透明時鐘設備產生本地時鐘的振蕩器,為保證得到的駐留時間準確,將基于本地時鐘記錄的PTP事件報文進入時的時間戳和發出時的時間戳,均乘以頻率偏移因子,然后計算差值。
在另外的情況下,所述基于頻率偏移因子,確定PTP事件報文在透明時鐘設備的駐留時間,還包括:基于頻率偏移因子直接修改對透明時鐘設備產生本地時鐘的振蕩器,這樣的話,駐留時間的計算就是根據修改后的本地時鐘記錄的PTP事件報文進入時的時間戳和發出時的時間戳。
b.相位修正
步驟201、根據預設的第二參考意義條件,判斷主時鐘設備發送的主時鐘MP是否具有參考意義。
具體的判斷過程可以是:統計最近設定時間窗口內提取到的各個MP的波動范圍是否滿足預設的條件(例如任意兩MP的差的絕對值均小于設定的第二波動閾值);如果是,則判斷出主時鐘的MP具體參考意義。
步驟202、如果具有參考意義,則讀取主時鐘的時鐘信息中用于標識是否鎖相的參數;
步驟221、如果該參數值對應為主時鐘鎖相,則進一步判斷:后續接收到的主時鐘設備連續m(優選為4)個周期發送的PTP信號報文中的MP是否保持一致;
步驟222、如果一致,則進入相位預鎖定狀態,將透明時鐘的本地時鐘的相位修正為該MP。
如果讀取的所述參數值對應為主時鐘未鎖相,或者,連續m個周期的MP未保持一致,則分別返回步驟201,繼續等待。
在上述頻率和頻相修正步驟中,如果在頻率和相位預鎖定狀態過程中MC、MP失去參考意義,又或者MC或MP始終不具備參考意義,則采用傳統的時鐘軟件修正方案,通過與主時鐘設備的PTP事件報文的交互,確定本地對PTP事件報文的駐留時間的頻率偏移因子Ff。該頻率偏移因子的具體計算方法可參見上圖5。相應的PTP事件報文在透明時鐘設備的駐留時間為:以本地時鐘為基準記錄的從透明時鐘設備發出該PTP事件報文的時間戳,減去該PTP事件報文進入透明時鐘設備的時間戳;將得到的差值乘以頻率偏移因子。
另外,如果透明時鐘設備無法識別PTP信號報文中記錄主時鐘的時鐘信息的TLV字段,則也可直接利用上述方法計算頻率偏移因子,進而利用該頻率偏移因子計算駐留時間。
需要說明的是,在PTP域中,如果各個透明時鐘設備不支持頻率偏移因子計算功能,頻率偏移因子的計算可以由主時鐘設備通過與這些設備中的各設備交互PTP事件報文確定得到(參見圖5所示),而后由主時鐘設備通過一個PTP信號報文一次性下發給PTP域中的各透明時鐘設備。具體的,采用PTP信號報文的TLV組織廠商消息格式的擴展消息中的Frequency_factor(Ff)字段標識各透明時鐘設備的頻率偏移因子。例如,可以設定所述Ff字段的每N個BIT位,對應一個透明時鐘設備,該N個BIT位用來存放透明時鐘設備的MAC地址及其對應的頻率偏移因子值。透明時鐘設備接收到PTP信號報文后,先找到該字段中攜帶的本設備的MAC地址,而后讀取與該MAC地址對應的頻率偏移因子值,作為本設備的頻率偏移因子值,軟件參與下進行時鐘補償。在該實施方式中,可以僅通過一個而非多個PTP信號報文便能夠將各頻率偏移因子下發至對應的透明時鐘設備,節省網絡資源,加快了對頻率偏移因子的獲取速度。
透明時鐘設備每接收到主時鐘設備(或從時鐘設備)發送的PTP事件報文后,會計算其駐留時間并將該時間添加至PTP事件報文轉發給從時鐘設備(或主時鐘設備)。
從時鐘設備的本地時鐘調整方案可以是傳統的調整方案:主時鐘設備與從時鐘設備經透明時鐘設備交互PTP事件報文,從時鐘設備利用交互的PTP事件報文中的時戳信息調整本地時鐘與主時鐘設備的時鐘同步。
當然,從時鐘設備的本地時鐘調整方案也可以是參考透明時鐘的本地時鐘調整方案。需要說明的是,在此情況下,透明時鐘設備無需再計算PTP事件報文的駐留時間,所以也就沒有必要進行本地時鐘調整,只要將PTP端口接收到的主時鐘的時鐘信息再次以帶外或帶內方式轉發給從時鐘設備即可。
一般情況下,PTP域中時鐘設備內自帶的振蕩器所產生的時鐘信號的頻率和相位是固定的,不能更改,所以現有技術中涉及的時鐘同步技術往往指的是通過軟件方式對振蕩器輸出的時鐘信號進行修正,以保證該時鐘設備與PTP域中的主時鐘設備的時鐘同步。但是,由于該技術為軟件參與下的近似計算,精度較差,為此在本發明實施例的方案中,在透明時鐘設備和從時鐘設備內部額外增設一個可調頻振蕩器,通過修改該振蕩器的頻率補償寄存器的值,使得該振蕩器所產生的時鐘信號的頻率與主時鐘的同步,之后以該可調頻振蕩器的時鐘信號為基準進行計時。如主時鐘頻率16KHZ,該可調頻振蕩器采用2MHZ,頻率補償寄存器的默認值為L(16進制),則該可調頻振蕩器調整過程為:將振蕩器內的頻率補償寄存器值修改為:16進制的[L’*(16/2000)]。L’為L的10進制表示。
通過修改可調頻振蕩器的相位補償寄存器的值進行相位修正,舉例:默認相位補償寄存器的值使用十進制的39321(9999十六進制)認為是0脈沖補償,取值范圍0~65535(0~FFFF十六進制)即脈沖相位間隔為0.0196229ppm,如本地相位比主時鐘脈沖相位間隔大5個脈沖,則相位補償寄存器的值應為39321-(5/0.0196229)(十進制)=39066(十進制)=989A(十六進制)。
本發明第四實施例提供了一種時間同步裝置,應用于主時鐘設備,所述裝置包括:
發送模塊,用于向透明時鐘設備發送精準時間協議PTP事件報文,并向透明時鐘設備發送主時鐘頻率相關參數和/或主時鐘頻相相關參數;
其中,主時鐘設備為已做過上行駐留時間校正的本系統最高級時鐘設備。
在本實施例中,所述發送模塊向透明時鐘設備發送PTP事件報文,包括:以帶內方式周期性的向透明時鐘設備發送PTP事件報文;并且,
所述發送模塊向透明時鐘設備發送主時鐘頻率相關參數和/或主時鐘頻相相關參數,包括:以帶內方式或者帶外方式周期性的向透明時鐘設備發送主時鐘頻率相關參數和/或主時鐘頻相相關參數。
在本實施例中,所述發送模塊以帶內方式周期性的向透明時鐘設備發送主時鐘頻率相關參數和/或頻相相關參數,包括:
至少獲取主時鐘頻率、主時鐘頻相、是否鎖頻、是否鎖相參數中的主時鐘頻率和/或主時鐘頻相參數;
將獲取的參數分別插入至預先生成的普通PTP信號報文中組織廠商消息格式的擴展字段的相應位置;
通過PTP端口經以太網將修改后的PTP信號報文發送至透明時鐘設備的PTP端口。
在本實施例中,所述發送模塊以帶外方式周期性的向透明時鐘設備發送主時鐘頻率相關參數和/或主時鐘頻相相關參數,包括:
基于與透明時鐘設備的帶外連接線利用帶外接口發出頻率和相位分別為主時鐘頻率和主時鐘頻相的信號脈沖。
參照圖8所示,為本發明第五實施例提供的一種時間同步裝置,應用于透明時鐘設備,所述裝置包括:
監測模塊,用于監測主時鐘設備以帶外方式發送的信號脈沖,提取該脈沖的頻率和相位,分別作為主時鐘頻率和主時鐘頻相;
傳輸模塊,用于將所述的主時鐘頻率和主時鐘頻相插入至預先生成的普通PTP信號報文中組織廠商消息格式的擴展字段的相應位置,然后將修改后的PTP信號報文傳遞給PTP端口;
第一處理模塊,用于接收PTP端口傳送的所述修改后的PTP信號報文,提取其中所攜帶的主時鐘頻率和主時鐘頻相,根據所述主時鐘頻率和主時鐘頻相對本地時鐘頻率和/或本地時鐘頻相進行修正。
在本實施例中,所述第一處理模塊根據主時鐘頻率和主時鐘頻相對本地時鐘頻率和/或本地時鐘頻相進行修正,包括:
當判斷到主時鐘設備經由PTP端口連續n個周期發送的PTP信號報文中的主時鐘頻率保持一致,則進入頻率預鎖定狀態,將透明時鐘的本地時鐘的頻率修正為所述主時鐘頻率;和/或,
當判斷到主時鐘設備經由PTP端口連續m個周期發送的PTP信號報文中的頻相保持一致,則進入相位預鎖定狀態,將透明時鐘的本地時鐘的相位修正為所述主時鐘頻相。
在本實施例中,所述第一處理模塊根據主時鐘頻率和主時鐘頻相對本地時鐘頻率和/或本地時鐘頻相進行修正,包括:
通過修改增設于透明時鐘設備的可調頻振蕩器的頻率補償寄存器的值進行頻率修正,和/或通過修改可調頻振蕩器的相位補償寄存器的值進行相位修正。
參照圖9所示,為本發明第六實施例提供的一種時間同步裝置,應用于透明時鐘設備,所述裝置包括:
接收模塊,用于通過PTP端口接收主時鐘設備以帶內方式發送的PTP信號報文;
提取模塊,用于提取所述PTP信號報文中所攜帶的主時鐘頻率相關參數和/或主時鐘頻相相關參數;
第二處理模塊,用于根據所述相關參數對本地時鐘頻率和/或本地時鐘頻相進行修正。
在本實施例中,所述提取模塊提取PTP信號報文中所攜帶的主時鐘頻率相關參數和/或主時鐘頻相相關參數,包括:至少提取主時鐘頻率、主時鐘頻相、是否鎖頻、是否鎖相參數中的主時鐘頻率和/或主時鐘頻相參數。
在本實施例中,所述第二處理模塊根據相關參數對本地時鐘頻率進行修正,包括:
根據預設的第一參考意義條件,判斷主時鐘設備發送的主時鐘頻率是否具有參考意義;
當判斷到所述主時鐘頻率具有參考意義,則獲取所述PTP信號報文中用于標識是否鎖頻的參數;
當所述參數對應為主時鐘鎖頻,則進一步判斷:后續接收到的主時鐘設備連續n個周期發送的PTP信號報文中的主時鐘頻率是否保持一致;
當主時鐘設備連續n個周期發送的PTP信號報文中的主時鐘頻率保持一致,則進入頻率預鎖定狀態,將透明時鐘的本地時鐘的頻率修正為該主時鐘頻率。
在本實施例中,所述第二處理模塊根據相關參數對本地時鐘頻率進行修正,還包括:當獲取的所述參數值對應為主時鐘未鎖頻,或者,連續n個周期的頻率未保持一致,則繼續判斷主時鐘設備發送的主時鐘頻率是否具有參考意義。
在本實施例中,所述預設的第一參考意義條件,包括:當最近設定時間窗口內提取到的各個頻率的波動范圍滿足預設的條件,則主時鐘的頻率具體參考意義。
在本實施例中,所述裝置還包括:
頻率偏移因子確定模塊,用于當頻率預鎖定狀態過程中主時鐘頻率失去參考意義,或者主時鐘頻率始終不具備參考意義,或者透明時鐘設備無法識別PTP信號報文中記錄主時鐘的時鐘信息的TLV字段,
則獲取根據主時鐘設備與透明時鐘設備對同步報文Sync的發送周期所估算的本地時鐘相對于主時鐘的頻率偏移因子;基于所述頻率偏移因子,確定PTP事件報文在透明時鐘設備的駐留時間。
在本實施例中,所述第二處理模塊根據相關參數對本地時鐘頻相進行修正,包括:
根據預設的第二參考意義條件,判斷主時鐘設備發送的主時鐘頻相是否具有參考意義;
當判斷到所述主時鐘頻相具有參考意義,則獲取所述PTP信號報文中用于標識是否鎖相的參數;
當所述參數對應為主時鐘鎖相,則進一步判斷:后續接收到的主時鐘設備連續m個周期發送的PTP信號報文中的主時鐘頻相是否保持一致;
當主時鐘設備連續m個周期發送的PTP信號報文中的主時鐘頻相保持一致,則進入相位預鎖定狀態,將透明時鐘的本地時鐘的相位修正為所述主時鐘頻相。
在本實施例中,所述第二處理模塊根據相關參數對本地時鐘頻相進行修正,還包括:當讀取的所述參數值對應為主時鐘未鎖相,或者,連續m個周期的主時鐘頻相未保持一致,則繼續判斷主時鐘設備發送的主時鐘頻相是否具有參考意義。
在本實施例中,所述頻率偏移因子確定模塊,還用于當相位預鎖定狀態過程中主時鐘頻相失去參考意義,或者主時鐘頻相始終不具備參考意義,或者透明時鐘設備無法識別PTP信號報文中記錄主時鐘的時鐘信息的TLV字段,
則獲取根據主時鐘設備與透明時鐘設備對同步報文Sync的發送周期所估算的本地時鐘相對于主時鐘的頻率偏移因子;基于所述頻率偏移因子,確定PTP事件報文在透明時鐘設備的駐留時間。
在本實施例中,所述頻率偏移因子確定模塊獲取根據主時鐘設備與透明時鐘設備對同步報文的發送周期所估算的本地時鐘相對于主時鐘的頻率偏移因子,包括:接收主時鐘設備下發的一個攜帶頻率偏移因子的PTP信號報文;
獲得所述PTP信號報文的TLV組織廠商消息格式的擴展消息中的頻率偏移因子Ff字段中攜帶的本設備的MAC地址,而后讀取所述Ff字段中與該MAC地址對應的頻率偏移因子值,作為本設備的頻率偏移因子值。
在本實施例中,所述第二處理模塊根據主時鐘頻率和主時鐘頻相對本地時鐘頻率和/或本地時鐘頻相進行修正,包括:
通過修改增設于透明時鐘設備的可調頻振蕩器的頻率補償寄存器的值進行頻率修正,和/或通過修改可調頻振蕩器的相位補償寄存器的值進行相位修正。
本發明實施例還提供了一種PTP系統,所述PTP系統包括:如上所述時間同步裝置所應用的主時鐘設備,以及如上圖8、圖9所述時間同步裝置所應用的透明時鐘設備。
關于所述時間同步裝置的處理細節可以參照上述時間同步方法的描述,故于此不再贅述。
本發明實施例針對PTP信號報文TLV實體規范中廠商擴展信息進行了攜帶主時鐘頻率、頻相信息的內部定義,提供一種針對需同頻同相操作場景下的本地時鐘調頻調相調整方案,提供了一種TC更高效的與主時鐘同步的時間補償方式。
以上所述僅為本發明的優選實施例而已,并不用于限制本發明,對于本領域的技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。