一、PTP概述
PTP(Precision Time Protocol,精確時間協(xié)議)是一種時間同步的協(xié)議,由IEEE 1588-2008定義,通過在主時鐘和從時鐘之間交換信息來工作,用于精確同步分布式網(wǎng)絡(luò)通信中各個節(jié)點的實時時鐘,將網(wǎng)絡(luò)設(shè)備時鐘與主控機的主時鐘進行同步,提供建立同步時間小于1μs的運用。相比NTP(Network Time Protocol,網(wǎng)絡(luò)時間協(xié)議),PTP能夠滿足更高精度的時間同步要求,相比GPS(Global Positioning System,全球定位系統(tǒng)),PTP具備更低的建設(shè)和維護成本。
SMPTE ST 2059-2標準基于IEEE 1588標準,定義了在專業(yè)廣播環(huán)境下的時間和頻率同步的精確時間協(xié)議,并且定義了視音頻系統(tǒng)中網(wǎng)絡(luò)管理報文的基本格式。根據(jù)規(guī)范描述,PTP精確時間同步精確到納秒級,可以提供涵蓋模擬視頻、數(shù)字視頻和AES音頻的各種同步。
廣電制播系統(tǒng)對PTP時鐘鎖定穩(wěn)定度要求比較高,跳變或者偏移都可以引起終端設(shè)備信號輸出不穩(wěn)定或者偏差,為了保證系統(tǒng)PTP穩(wěn)定以及維護需求,全系統(tǒng)PTP實時精準分析監(jiān)測也成為IP制播網(wǎng)系統(tǒng)監(jiān)控的重要組成部分。
1. PTP與NTP
NTP協(xié)議(Network Time
Protocol)是一種目前被廣泛應用的網(wǎng)絡(luò)時間同步協(xié)議,最高可以達到毫秒級的同步精度。NTP協(xié)議基于UDP協(xié)議以客戶機/服務(wù)器方式工作,由服務(wù)器提供準確穩(wěn)定的時間,客戶端通過發(fā)送和接收NTP報文,計算時間偏差,校準自己的時間。NTP客戶端和服務(wù)器的通信包括兩個數(shù)據(jù)報文:客戶端的時間請求報文和服務(wù)器的響應報文。NTP協(xié)議報文中包含4個64bit時間戳(Timestamp),根據(jù)時間戳可以計算出時間偏差和網(wǎng)絡(luò)延遲。
PTP協(xié)議也是基于UDP協(xié)議的應用層協(xié)議,其數(shù)據(jù)報文經(jīng)過TCP/IP協(xié)議棧的層層封裝,最終通過網(wǎng)絡(luò)傳輸進行主從時鐘之間的交互,完成主從時鐘的同步。PTP技術(shù)可以實現(xiàn)高精度時間同步的關(guān)鍵原因是要求PTP設(shè)備支持基于硬件打時間戳。同步消息在通過PTP設(shè)備數(shù)據(jù)鏈路層(MAC)和物理層(PHY)之間的媒體獨立接口(MII)時,會在PTP設(shè)備的本地時鐘上觸發(fā)一個時間戳,如圖1所示。
NTP協(xié)議和PTP協(xié)議都是基于UDP協(xié)議位于TCP/IP協(xié)議棧的應用層上,PTP協(xié)議不同于NTP協(xié)議在于PTP報文的數(shù)據(jù)包時間戳是在MAC記錄的,而NTP協(xié)議是在應用層記錄的。相比于NTP協(xié)議,PTP的時間戳是位于數(shù)據(jù)鏈路層(MAC)和物理層(PHY)之間與介質(zhì)無關(guān)的接口中,這消除了操作系統(tǒng)和其他軟件無法預測的緩慢響應,因此基于硬件的時間戳不受軟件處理時延、流量的影響,從而可以實現(xiàn)更高精度的時間同步。
另外PTP協(xié)議的時間校準可以根據(jù)網(wǎng)絡(luò)狀況和終端的時間漂移情況,使用一定的數(shù)據(jù)處理算法,隔一段時間后才進行一次測量,從而減少了網(wǎng)絡(luò)流量和帶寬使用,相比NTP協(xié)議來說減輕了網(wǎng)絡(luò)終端的處理負擔。
2. PTP與傳統(tǒng)B.B
在技術(shù)原理和傳輸介質(zhì)上,傳統(tǒng)基帶B.B同步是模擬電平在基帶中傳輸,在一個SDI系統(tǒng)中,公共校時頻率可通過物理層直接用于所有設(shè)備,只要拓撲結(jié)構(gòu)沒有改變,相位關(guān)系就保持不變。而PTP使用以太網(wǎng)作為物理介質(zhì),默認情況下以太網(wǎng)是異步的,只有在兩個相鄰設(shè)備之間而不是在系統(tǒng)全局范圍內(nèi)建立一個共同頻率,因此固有頻率傳輸不可行,我們無法通過物理層恢復頻率傳輸,因此必須使用基于數(shù)據(jù)包的方法分配時間和頻率。
隨著IP網(wǎng)絡(luò)設(shè)備的能力和容量穩(wěn)步提高,使用SMPTE ST 2022-6等現(xiàn)有標準雖然可以通過IP交換和路由技術(shù)傳輸和交換視頻、音頻和元數(shù)據(jù),但業(yè)界希望可以分別切換不同的基本元素,因此SMPTE提出采用SMPTE ST 2110-20、SMPTE ST 2110-30以及SMPTE ST 2110-40來分別傳輸視頻、音頻以及輔助數(shù)據(jù)。
這一系列SMPTE標準建立在VSF TR-03和TR-04以及AES67的工作基礎(chǔ)上,采用實時、基于RTP協(xié)議傳輸,通過SMPTE ST 2110-10定義一個定時系統(tǒng),用于互連各種視、音頻以及輔助數(shù)據(jù)基本流之間的時序關(guān)系,因此PTP時鐘信號與視音頻業(yè)務(wù)數(shù)據(jù)流混合在一起于帶內(nèi)傳輸,而傳統(tǒng)B.B同步信號是獨立于視音頻制作系統(tǒng)外的單獨系統(tǒng),參考時鐘在自己專有的外部同步系統(tǒng)中傳輸不與業(yè)務(wù)系統(tǒng)混合。
基于以上原因,在部署多系統(tǒng)統(tǒng)一校時方式時,傳統(tǒng)SDI多系統(tǒng)協(xié)同工作的時鐘可以由總控來統(tǒng)一分配,而多IP系統(tǒng)協(xié)同工作的PTP校時目前則有多域、單域不同的部署方案。
3. PTP與SMPTE ST 2059
IEEE Std 1588-2008引入了PTP配置文件的概念,第19.3.1.1款“概述”中描述了配置文件的目的:“PTP配置文件的目的是允許組織指定PTP屬性值和可選功能的特定選擇,當使用相同的傳輸協(xié)議時,這些屬性值和可選功能可以相互作用,并實現(xiàn)滿足特定應用要求的性能?!?021年最新發(fā)布的SMPTE ST 2059-1、2059-2標準以IEEE-1588協(xié)議為基礎(chǔ),并衍生到廣電領(lǐng)域進行應用。
SMPTE ST 2059-1:2021:Generation and Alignment of Interface Signals to the SMPTE Epoch:定義了一個時間點即SMPTE歷元, 用于實時信號的校準,指定自SMPTE紀元以來信號與時間的持續(xù)對齊的公式,以及指定SMPTE ST 12-1時間地址值和SMPTE ST 309日期值計算的公式。該標準使用精確時間分布、歷元定義(“SMPTE歷元”)以及信號與該歷元的關(guān)系,設(shè)備可以生成用于鎖定傳統(tǒng)設(shè)備的傳統(tǒng)參考信號,或者可以在其接口上從內(nèi)部導出視頻和音頻本質(zhì)信號的定時。
SMPTE ST 2059-2:2021:SMPTE Profile for Use of IEEE-1588 Precision Time Protocol in Professional Broadcast Applications:與SMPTE ST 2059-1一起使用,基于IEEE-1588-2協(xié)議,定義了專業(yè)廣播環(huán)境中時間和頻率同步的PTP配置文件。此配置文件的設(shè)計目的如下:
◆允許時鐘快速、準確地同步,以支持專業(yè)的IP媒體應用;
◆傳輸音頻/視頻信號同步和時間標記所需的同步元數(shù)據(jù)(SM)。
PTP配置文件指定以下主要參數(shù)以及參數(shù)值,這些參數(shù)是專業(yè)媒體網(wǎng)絡(luò)PTP校時系統(tǒng)工作基礎(chǔ),也是PTP監(jiān)測所需要關(guān)注的參數(shù)。
4. PTP與RTP
IP專業(yè)媒體系統(tǒng)中視音頻數(shù)據(jù)包傳輸用的RTP/RTCP協(xié)議是使用時間戳來攜帶時鐘同步信息。SMPTE ST 2110-10定義了一個基于RTP的可擴展系統(tǒng),該系統(tǒng)以指定其時序關(guān)系的方式引用公共參考時鐘,規(guī)定了所有基本流的系統(tǒng)定時模型和通用要求。
RTP報文內(nèi)容包括待傳數(shù)據(jù)的報文頭和報文負載,報文數(shù)據(jù)頭包括序列號、時間戳和傳輸監(jiān)視等信息,負載就是視音頻數(shù)據(jù)流。報文頭會專門提供固定字節(jié)位用于時間戳的攜帶,這樣接收設(shè)備就可以通過時間戳解讀出負載數(shù)據(jù)的同步時間用于數(shù)據(jù)重組。我們使用端口鏡像的方式,在實際IP系統(tǒng)中將視音頻流量轉(zhuǎn)到觀測口,使用專業(yè)儀器對觀測口的數(shù)據(jù)進行抓包,結(jié)果可以看到RTP數(shù)據(jù)包的基本信息:RTP協(xié)議建立在UDP協(xié)議基礎(chǔ)之上。
◆IP頭和UDP頭信息可獲取到源地址、目的地址(組播地址)、源端口、目的端口等信息;
◆RTP層數(shù)據(jù)可以獲取到RTP相關(guān)的信息,如:payload、SSRC、SN包序列號、RTP時間戳等。
基于以上PTP校時原理,我們可以采用通用IT服務(wù)器平臺實現(xiàn)專業(yè)媒體網(wǎng)絡(luò)下IP流時鐘同步精度分析和監(jiān)測,以純軟件形態(tài)部署在通用IT環(huán)境下,實現(xiàn)對基于ST 2110、ST 2022-6等多種專業(yè)媒體網(wǎng)絡(luò)IP流的時鐘鎖定精度狀態(tài)進行實時監(jiān)測和分析。
二、PTP校時分析服務(wù)器
超高清媒體節(jié)點設(shè)備在發(fā)送數(shù)據(jù)包間隔為微秒級,但實際網(wǎng)絡(luò)環(huán)境中IP數(shù)據(jù)包存在抖動和延時,不能直接使用接收到的PTP時間戳作為發(fā)送定時依據(jù),必須通過校時鎖定本地的高穩(wěn)時鐘,利用這個與PTP同步鎖相的高穩(wěn)時鐘,才能同時達到精度高、穩(wěn)定兩個基本要求。
IEEE-802.3標準定義了MII(Media Independent Interface,介質(zhì)無關(guān)接口,或稱為媒體獨立接口),用于描述以太網(wǎng)收發(fā)器與網(wǎng)絡(luò)控制器之間的接口,用于將不同類型的PHY與相同網(wǎng)絡(luò)控制器(MAC)相連接的通用總線。網(wǎng)絡(luò)控制器可以用同樣的硬件接口與任何PHY進行連接,它包括一個數(shù)據(jù)接口,以及一個MAC和PHY之間的管理接口。數(shù)據(jù)接口包括分別用于發(fā)送器和接收器的兩條獨立信道,每條信道都有自己的數(shù)據(jù)、時鐘和控制信號;管理接口是個雙信號接口,一個是時鐘信號,另一個是數(shù)據(jù)信號,通過管理接口,上層能監(jiān)視和控制PHY。
受計算機本地時鐘晶振和軟件時鐘精度的影響,目前操作系統(tǒng)提供的本地時鐘的精度只能達到10ms左右,遠不能滿足同步系統(tǒng)的需要,因此需要重新構(gòu)建高精度的本地時鐘,并能夠使其精度保持在較高的范圍內(nèi)。在服務(wù)器中穩(wěn)定時鐘源是CPU的石英晶體諧振器(Quartz crystal oscillator),它能夠產(chǎn)生中央處理器(CPU)執(zhí)行指令所必需的時鐘頻率信號。為了減少操作系統(tǒng)的影響,修改網(wǎng)絡(luò)驅(qū)動,通過MII接口時間戳使用獨立通道進行報文的發(fā)送和接收,網(wǎng)絡(luò)I/O使用阻塞Socket,在一個數(shù)據(jù)報文發(fā)送完畢之后,才返回做其他事情或發(fā)送下一個數(shù)據(jù)報文,這樣就保證了報文的確認接收和發(fā)送,數(shù)據(jù)報文有序的發(fā)送和接收。
如圖3所示,TP校時分析服務(wù)器硬件平臺配置光纖網(wǎng)卡,通過光纖網(wǎng)卡接入IP數(shù)據(jù)送給服務(wù)器IP解封包模塊;服務(wù)器基于ST 2059協(xié)議從IP解封包處理模塊獲取PTP時鐘GM母鐘狀態(tài)。
由于服務(wù)器操作系統(tǒng)一般使用搶占式調(diào)度機制,使得進程被調(diào)度的時間不可預測,造成不確定的延遲,因此設(shè)計服務(wù)器性能優(yōu)化模塊來提高同步進程和同步線程的優(yōu)先級;利用高精度時間定時器,獲取當前時間值,循環(huán)等待,直到系統(tǒng)時間刷新改變,記下此時定時器的計數(shù)值,根據(jù)基準時間和該時刻的計數(shù)值,可以計算之后任意時刻的準確時間。
PTP時基處理完成時鐘校正算法,由數(shù)據(jù)處理算法得到時間偏差,由高精度本地時鐘獲得準確的本地時間,利用時鐘校正算法可以進行穩(wěn)定可靠的時鐘校正。Windows和Unix等系統(tǒng)都提供了相位校正和頻率校正的API,內(nèi)部工作原理如下:
◆誤差計算:根據(jù)解析接收IP數(shù)據(jù)包得到時間戳(Timestamp),可計算出上一次發(fā)包到這一次發(fā)包的時間間隔。另外在這段時間內(nèi)拿本地時鐘進行計數(shù),與上一步計算出的時間間隔進行比較,可得到本地時鐘相比GM時鐘存在的誤差;
◆本地時鐘調(diào)整:本地時鐘相比GM時鐘存在的誤差是逐步消除的,通過濾波算法去抖動。針對相位調(diào)節(jié)和頻率調(diào)節(jié)的優(yōu)缺點,提出相位調(diào)節(jié)和頻率調(diào)節(jié)相結(jié)合的時鐘校正模式,不同的場合使用不同的調(diào)節(jié)方式,初次同步或開機同步時,以及時間偏差較大時(如>100ms),使用相位調(diào)節(jié)校正方式,直接修正本地時鐘,將其校正到一定精度范圍內(nèi)。時間偏差較小時,使用頻率調(diào)節(jié)校正,緩慢地調(diào)節(jié)時鐘頻率,本地時鐘逐漸趨于準確,防止出現(xiàn)時鐘回退和時鐘大幅改變的現(xiàn)象。經(jīng)過不斷自我調(diào)整后,逐步達到鎖定狀態(tài),實現(xiàn)PTP同步精度范圍在1μs內(nèi)。得到的時鐘信號與GM時鐘基本是同步的。
PTP校時分析服務(wù)器提供PTP校時精度調(diào)整界面,適配不同的IP制播系統(tǒng)。該校時分析服務(wù)以純軟件形態(tài)部署在通用IT環(huán)境下,完全擺脫專用硬件;實現(xiàn)多通道IP流實時分析監(jiān)測,成本降低,安裝部署快捷,維護方便。
三、PTP校時分析及監(jiān)測
1. 多種PTP數(shù)據(jù)獲取研究
PTP校時分析服務(wù)器鎖定后會以當前鎖定的PTP時間為基準,對發(fā)送端發(fā)送的IP流量進行數(shù)據(jù)包頭分析,得到數(shù)據(jù)包基礎(chǔ)信息。
◆源地址:發(fā)流設(shè)備的源IP地址;
◆源端口:發(fā)流設(shè)備的源端口;
◆目的地址:發(fā)送流量的目標地址,一般是一個組播地址;
◆目的端口:發(fā)送流量的目的端口;
◆Sequence Number:數(shù)據(jù)包序列號;
◆M:mark標記;
◆F:場序標記;
◆Time stamp:RTP時間戳。
PTP校時分析服務(wù)器收到以上數(shù)據(jù)后,將本地時間與RTP時間進行實時對比,并且將對比結(jié)果反饋給上層。通過上層展示頁面,用戶將看到IP數(shù)據(jù)流的時鐘精度,也就是IP流與PTP的時鐘偏差。
基于IP系統(tǒng)設(shè)備的復雜性,校時分析服務(wù)器具備多種直接獲取設(shè)備PTP 數(shù)據(jù)的方法。
◆一些網(wǎng)絡(luò)設(shè)備PTP數(shù)據(jù)可以通過NetConf、SNMP獲取;
◆某些不支持這些通用協(xié)議設(shè)備,可以通過SSH協(xié)議先獲取到數(shù)據(jù),然后再把有用數(shù)據(jù)通過正則表達式轉(zhuǎn)成JSON標準的數(shù)據(jù),通過API接口上報到監(jiān)測服務(wù)代理,通過這個方法可以獲取到系統(tǒng)內(nèi)所有網(wǎng)絡(luò)設(shè)備的PTP數(shù)據(jù);
◆通過get指令可以獲取一些網(wǎng)絡(luò)控制器的PTP數(shù)據(jù)。
2. PTP分析參數(shù)確定
PTP狀態(tài)監(jiān)測展現(xiàn)網(wǎng)絡(luò)設(shè)備上的PTP信息。從網(wǎng)絡(luò)設(shè)備上讀取系統(tǒng)中的PTP信息,內(nèi)容包括:PTP信息(鎖定狀態(tài)、Grandmaster ID、Clock ID、PTP mode、step模式)、PTP clock time(當前PTP系統(tǒng)時間、最新同步時間)、PTP端口狀態(tài)(slave端口、master端口及數(shù)量、禁用PTP端口、PTP domain及優(yōu)先級信息。
四、總結(jié)
基于本地穩(wěn)定時鐘,PTP校時分析服務(wù)器連接到管理交換機,基于以上獲取到的PTP數(shù)據(jù),可以構(gòu)建系統(tǒng)全局PTP分發(fā)拓撲,圖形化實時呈現(xiàn)PTP分發(fā)狀態(tài),直觀呈現(xiàn)當前系統(tǒng)PTP時鐘以及各個網(wǎng)絡(luò)設(shè)備的PTP狀態(tài),實現(xiàn)整網(wǎng)PTP狀態(tài)監(jiān)測。
PTP分發(fā)拓撲界面可查看如下內(nèi)容:
◆實時顯示PTP的分發(fā)狀態(tài)及分發(fā)流向,可查看母鐘、網(wǎng)絡(luò)設(shè)備(BC)和終端的PTP狀態(tài)信息;
◆實時展現(xiàn)母鐘倒換、分發(fā)路徑變化等信息,實時展現(xiàn)母鐘、網(wǎng)絡(luò)設(shè)備(BC)、終端的PTP報警;
◆實時展現(xiàn)網(wǎng)絡(luò)設(shè)備、母鐘、終端的PTP信息。
軟件通過PTP拓撲圖以及設(shè)備PTP參數(shù)表來直觀呈現(xiàn)當前系統(tǒng)PTP時鐘以及各個網(wǎng)絡(luò)設(shè)備的PTP狀態(tài),在圖上顯示GM母鐘、交換機和所有節(jié)點的狀態(tài)信息。進一步,通過建立GM母鐘、網(wǎng)絡(luò)交換設(shè)備和終端設(shè)備三級PTP展現(xiàn)拓撲圖,不僅實現(xiàn)全局PTP信息及各設(shè)備校時狀態(tài)的展現(xiàn),動態(tài)查看系統(tǒng)整體PTP狀態(tài),以及局部PTP問題,還可以實現(xiàn)監(jiān)控每個終端設(shè)備校時方向是否均指向同一個系統(tǒng)母鐘,解決現(xiàn)有方案只能查看局部網(wǎng)絡(luò)交換設(shè)備和終端設(shè)備信息的問題。
-
UDP協(xié)議
+關(guān)注
關(guān)注
0文章
68瀏覽量
12667 -
PHY
+關(guān)注
關(guān)注
2文章
298瀏覽量
51616 -
發(fā)送器
+關(guān)注
關(guān)注
1文章
258瀏覽量
26763 -
時鐘信號
+關(guān)注
關(guān)注
4文章
440瀏覽量
28465 -
PTP
+關(guān)注
關(guān)注
0文章
49瀏覽量
8616
發(fā)布評論請先 登錄
相關(guān)推薦
評論