莊敏
【摘要】 本文闡述了精確時間協(xié)議規(guī)范(PTP)的原理,結(jié)合同步信號IP傳輸?shù)奶攸c和我臺同步部署案例,探討在全臺建立統(tǒng)一同步的可能性和合理性。
【關(guān)鍵詞】精確時間協(xié)議(PTP)時鐘 時間
一、引言
無論模擬還是數(shù)字時代,同步信號在廣播電視系統(tǒng)中至為關(guān)鍵,BB黑場信號包括了相位和頻率同步,是系統(tǒng)定時和信號干凈切換的保證。很多廣播電視用戶在建設(shè)新大樓系統(tǒng)時,總是希望能找到一種方法論證全臺同步的可行性:當全臺時鐘和時間統(tǒng)一到一個基準,可減少不同系統(tǒng)間信號傳輸中幀同步器的使用,節(jié)約投資;更能將全臺時間統(tǒng)一到一個精確的時鐘源,優(yōu)化工作流程,少發(fā)生錯誤。我臺播總控機房在三樓,制作技術(shù)部的演播室分布在二樓、一樓、負一樓,演播室到播總控機房,布線長度最長的超過250米,最短的的也超過100米,由于模擬信號受傳輸距離的限制,在全臺完整建立一套同步系統(tǒng)的想法很難實現(xiàn)。
隨著IT技術(shù)的廣泛應(yīng)用,廣電人開始探討將基帶SDI信號通過IP網(wǎng)絡(luò)傳輸,2017年9月發(fā)表的ST 2110吸收了ST 2059作為系統(tǒng)中的精確時間協(xié)議(PTP)和規(guī)范。
ST 2059包括ST 2059-1和ST 2059-2兩個規(guī)范,ST 2059-1描述了時間的起點(Epoch:1970-01-01T00:00:00TAI),視頻同步信號、音頻同步信號要求,及符合ST 12-1規(guī)范的時碼生成。本文所述的ST 2059規(guī)范,是包括上面兩個規(guī)范的統(tǒng)稱。
二、PTP精確時間同步概念
IP網(wǎng)絡(luò)中許多業(yè)務(wù)的正常運行都要求網(wǎng)絡(luò)時鐘同步,即整個網(wǎng)絡(luò)各設(shè)備之間的時間或頻率差保持在合理的誤差水平內(nèi)。國際電聯(lián)組織發(fā)表的IEEE 1588規(guī)范(2008年更新為IEEE 1588 V2,下文所述的IEEE 1588規(guī)范,指的是IEEE 1588 V2規(guī)范),描述了在網(wǎng)絡(luò)中的精確時間協(xié)議(Precision Timing Protocol,簡稱PTP)要求。
1.PTP域
我們將應(yīng)用了PTP協(xié)議的網(wǎng)絡(luò)稱為PTP域。PTP域內(nèi)有且只有一個同步時鐘,域內(nèi)的所有設(shè)備都 與該時鐘保持同步。
2.PTP端口
我們將設(shè)備上運行了PTP協(xié)議的端口稱為PTP端口。如圖1所示,PTP端口的角色可分為以下三種:
(1)主端口(Master Port):發(fā)布同步時間的端口,可存在于BC或OC上。
(2)從端口(Slave Port):接收同步時間的端口,可存在于BC或OC上。
(3)被動端口(Passive Port):既不接收同步時間、也不對外發(fā)布同步時間的端口,只存在于BC 上。
3.時鐘節(jié)點
PTP 域中的節(jié)點稱為時鐘節(jié)點,PTP協(xié)議定義了以下三種類型的基本時鐘節(jié)點:
(1)OC(Ordinary Clock,普通時鐘):該時鐘節(jié)點在同一個PTP域內(nèi)只有一個PTP端口參與時間同步,并通過該端口從上游時鐘節(jié)點同步時間。此外,當時鐘節(jié)點作為時鐘源時,可以只通過一個PTP端口向下游時鐘節(jié)點發(fā)布時間,我們也稱其為OC。
(2)BC(Boundary Clock,邊界時鐘):該時鐘節(jié)點在同一個PTP域內(nèi)擁有多個PTP端口參與時 間同步。它通過其中一個端口從上游時鐘節(jié)點同步時間,并通過其余端口向下游時鐘節(jié)點發(fā) 布時間。此外,當時鐘節(jié)點作為時鐘源時,可以通過多個PTP端口向下游時鐘節(jié)點發(fā)布時間的, 我們也稱其為BC,如圖1中的BC1。
(3)TC(Transparent clock,透明時鐘):與BC/OC相比,BC/OC需要與其它時鐘節(jié)點保持時間同步,而TC則不與其它時鐘節(jié)點保持時間同步。TC有多個PTP端口,但它只在這些端口間轉(zhuǎn)發(fā)PTP協(xié)議報文并對其進行轉(zhuǎn)發(fā)延時校正,而不會通過任何一個端口同步時間。
TC包括 以下兩種類型:
?E2ETC(End-to-End Transparent Clock,端到端透明時鐘):直接轉(zhuǎn)發(fā)網(wǎng)絡(luò)中非 P2P (Peer-to-Peer,點到點)類型的協(xié)議報文,并參與計算整條鏈路的延時
?P2PTC(Peer-to-Peer Transparent Clock,點到點透明時鐘):只直接轉(zhuǎn)發(fā)Sync報文、Follow_Up報文和Announce報文,而終結(jié)其它PTP協(xié)議報文,并參與計算整條鏈路上每一段鏈路的延時。
如圖1所示,是上述三種基本時鐘節(jié)點在PTP域中的位置。
除了上述三種基本時鐘節(jié)點以外,還有一些混合時鐘節(jié)點,譬如融合了T C和OC各自特點的TC+OC:它在同一個PTP域內(nèi)擁有多個PTP端口,其中一個端口為OC類型,其它端口則為TC類型。一方面,它通過TC類型的端口轉(zhuǎn)發(fā)PTP協(xié)議報文并對其進行轉(zhuǎn)發(fā)延時校正;另一方面,它通過OC類型的端口進行時間的同步。與TC的分類類似,TC+OC也包括兩種類型:E2ETC+OC和P2PTC+OC。
4.最優(yōu)時鐘
如圖1所示,PTP域中所有的時鐘節(jié)點都按一定層次組織在一起,整個域的參考時間就是最優(yōu)時鐘(Grandmaster Clock,GM),即最高層次的時鐘。通過各時鐘節(jié)點間PTP協(xié)議報文的交互,最優(yōu)時鐘的時間最終將被同步到整個PTP域中,因此也稱其為時鐘源。
最優(yōu)時鐘可以通過手工配置靜態(tài)指定,也可以通過BMC(Best Master Clock,最佳主時鐘)協(xié)議動態(tài)選舉,動態(tài)選舉的過程如下:
(1)各時鐘節(jié)點之間通過交互的Announce報文中所攜帶的最優(yōu)時鐘優(yōu)先級、時間等級、時間精度等信息,最終選出一個節(jié)點作為PTP域的最優(yōu)時鐘,與此同時,各節(jié)點之間的主從關(guān)系以及各節(jié)點上的主從端口也確定了下來。通過這個過程,整個PTP域中建立起了一棵無環(huán)路、全連通,并以最優(yōu)時鐘為根的生成樹。
(2)此后,主節(jié)點會定期發(fā)送Announce報文給從節(jié)點,如果在一段時間內(nèi),從節(jié)點沒有收到主節(jié)點發(fā)來的Announce報文,便認為該主節(jié)點失效,于是重新進行最優(yōu)時鐘的選擇。
5.主從關(guān)系
相較于最優(yōu)時鐘,主從關(guān)系(Master-Slave)是相對而言的,對于相互同步的一對時鐘節(jié)點來說,存在如下主從關(guān)系:
?發(fā)布同步時間的節(jié)點稱為主節(jié)點,而接收同步時間的節(jié)點則稱為從節(jié)點。
?主節(jié)點上的時鐘稱為主時鐘,而從節(jié)點上的時鐘則稱為從時鐘。
?發(fā)布同步時間的端口稱為主端口,而接收同步時間的端口則稱為從端口。
三、PTP延時處理機制
PTP同步的基本原理如下:主、從時鐘之間交互同步報文并記錄報文的收發(fā)時間,通過計算報文往返的時間差來計算主、從時鐘之間的往返總延時,如果網(wǎng)絡(luò)是對稱的(即兩個方向的傳輸延時相同),則往返總延時的一半就是單向延時,這個單向延時便是主、從時鐘之間的時鐘偏差,從時鐘按照該 偏差來調(diào)整本地時間,就可以實現(xiàn)其與主時鐘的同步。
P T P協(xié)議定義了兩種傳播延時測量機制:請求應(yīng)答(Requset_Response)機制和端延時(Peer Delay)機制,且這兩種機制都以網(wǎng)絡(luò)對稱為前提。
1.請求應(yīng)答機制
請求應(yīng)答方式用于端到端的延時測量。如圖2所示,其實現(xiàn)過程如下:
(1)主時鐘向從時鐘發(fā)送Sync報文,并記錄發(fā)送時間t1;從時鐘收到該報文后,記錄接收時間t2。
(2)主時鐘發(fā)送Sync報文之后,緊接著發(fā)送一個攜帶有t1的Follow_Up報文。
(3)從時鐘向主時鐘發(fā)送Delay_Req報文,用于發(fā)起反向傳輸延時的計算,并記錄發(fā)送時間t3;主時鐘收到該報文后,記錄接收時間t4。
(4)主時鐘收到Delay_Req報文之后,回復(fù)一個攜帶有t4的Delay_Resp報文。
(5)此時,從時鐘便擁有了t1~t4這四個時間戳,由此可計算出主、從時鐘間的往返總延時為[(t2–t1)+(t4–t3)],由于網(wǎng)絡(luò)是對稱的,所以主、從時鐘間的單向延時為[(t2–t1)+(t4–t3)]/2。因此,從時鐘相對于主時鐘的時鐘偏差為:Offset=(t2–t1)-[(t2–t1)+(t4–t3)]/2=[(t2–t1)-(t4–t3)]/2。
此外,根據(jù)是否需要發(fā)送Follow_Up報文,請求應(yīng)答機制又分為單步模式和雙步模式兩種:
?在單步模式下,Sync報文的發(fā)送時間戳t1由Sync報文自己攜帶,不發(fā)送Follow_Up報文。
?在雙步模式下,Sync報文的發(fā)送時間戳t1由Follow_Up報文攜帶。
2.端延時機制
與請求應(yīng)答機制相比,端延時機制不僅對轉(zhuǎn)發(fā)延時進行扣除,還對上游鏈路的延時進行扣除。如圖3所示,其實現(xiàn)過程如下:
(1)主時鐘向從時鐘發(fā)送Sync報文,并記錄發(fā)送時間t1;從時鐘收到該報文后,記錄接收時間t2。
(2)主時鐘發(fā)送Sync報文之后,緊接著發(fā)送一個攜帶有t1的Follow_Up報文。
(3)從時鐘向主時鐘發(fā)送Pdelay_Req報文,用于發(fā)起反向傳輸延時的計算,并記錄發(fā)送時間t3;主時鐘收到該報文后,記錄接收時間t4。
(4)主時鐘收到Pdelay_Req報文之后,回復(fù)一個攜帶有t4的Pdelay_Resp報文,并記錄發(fā)送時間t5;從時鐘收到該報文后,記錄接收時間t6。
(5)主時鐘回復(fù)Pdelay_Resp報文之后,緊接著發(fā)送一個攜帶有t5的Pdelay_Resp_Follow_Up報文。
此時,從時鐘便擁有了t1~t6這六個時間戳,由此可計算出主、從時鐘間的往返總延時為[(t4–t3)+(t6–t5)],由于網(wǎng)絡(luò)是對稱的,所以主、從時鐘間的單向延時為[(t4–t3)+(t6–t5)]/2。因此,從時鐘相對于主時鐘的時鐘偏差為:Offset =(t2–t1)-[(t4–t3)+(t6–t5)]/2。
此外,根據(jù)是否需要發(fā)送Follow_Up報文,端延時機制也分為單步模式和雙步模式兩種:
?在單步模式下,Sync報文的發(fā)送時間戳t1由Sync報文自己攜帶,不發(fā)送Follow_Up報文;而t5和t4的差值由Pdelay_ Resp報文攜帶,不發(fā)送Pdelay_Resp_Follow_Up報文。
?在雙步模式下,Sync報文的發(fā)送時間戳t1由Follow_ Up報文攜帶,而t4和t5則分別由Pdelay_Resp報文和Pdelay_ Resp_Follow_Up報文攜帶。
四.PTP在廣播電視系統(tǒng)同步中應(yīng)用的可行性
我們回顧一下廣播電視系統(tǒng)中對不同同步信號的要求:
在模擬視頻中,同步包括行同步、場同步和副載波同步(色同步)。在每一模擬視頻信息行期間都存在著行消隱期,行消隱期是由行同步信號、前肩和后肩組成的,其中行同步的時間閾值為4.7 μs +- 0.2 μs。
在數(shù)字視頻中沒有模擬同步信號。數(shù)字環(huán)境中的同步是通過特定的編碼字序列來實現(xiàn)的。這些編碼字序列代表著有效視頻的開始(SAV)和有效視頻的結(jié)束(EAV)。在每個編碼字序列中,都用3FF作為起始字,隨后是000、000兩個字,最后是XYZ字。在XYZ字中,包含有場序(F)、場消隱(V)和行消隱(H)信息