隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,分布式控制系統(tǒng)中對(duì)時(shí)間同步的要求越來(lái)越高。例如在機(jī)電控制、通信等領(lǐng)域中已經(jīng)對(duì)時(shí)間同步提出了微秒級(jí)的要求。在分布式數(shù)據(jù)采集系統(tǒng)中,考慮到實(shí)時(shí)性的調(diào)度和控制,對(duì)時(shí)間統(tǒng)一的要求就更為嚴(yán)格。所以建立一個(gè)時(shí)間統(tǒng)一的分布式系統(tǒng)是分布式網(wǎng)絡(luò)的基本要求。IEEE1588(簡(jiǎn)稱(chēng)PTP,PrecisionTimeProtocol)定義了一個(gè)在測(cè)量和控制系統(tǒng)中,與網(wǎng)絡(luò)通信,本地計(jì)算和分配對(duì)象有關(guān)的時(shí)鐘同步協(xié)議,該協(xié)議適用于任何滿足多點(diǎn)通信的分布式控制系統(tǒng),對(duì)于采用多播技術(shù)終端的時(shí)鐘可實(shí)現(xiàn)亞微秒級(jí)同步。其協(xié)議的核心是在一個(gè)網(wǎng)絡(luò)內(nèi)如何選擇佳的主時(shí)鐘以及網(wǎng)內(nèi)的從時(shí)鐘如何與主時(shí)鐘保持同步。 PTP的網(wǎng)絡(luò)結(jié)構(gòu) PTP網(wǎng)絡(luò)由若干節(jié)點(diǎn)組成。節(jié)點(diǎn)可以是PTP時(shí)鐘,也可以是管理節(jié)點(diǎn)。包含時(shí)鐘的節(jié)點(diǎn)典型時(shí)鐘同步網(wǎng)絡(luò)。在PTP協(xié)議中有2種時(shí)鐘類(lèi)型:普通時(shí)鐘OC和邊界時(shí)鐘BC。只有一個(gè)PTP通信端口的時(shí)鐘是普通時(shí)鐘,有一個(gè)以上PTP通信端口的時(shí)鐘是邊界時(shí)鐘,每個(gè)PTP端口提供獨(dú)立的PTP通信。邊界時(shí)鐘和邊界時(shí)鐘之間的通信,通過(guò)路徑B使節(jié)點(diǎn)13,14能相互通信,通過(guò)路徑D使節(jié)點(diǎn)13,15能相互通信。從通信關(guān)系上又可把時(shí)鐘分為主時(shí)鐘和從時(shí)鐘,理論上任何時(shí)鐘都能實(shí)現(xiàn)主時(shí)鐘和從時(shí)鐘的功能,但一個(gè)PTP通信子網(wǎng)內(nèi)只能有一個(gè)主時(shí)鐘。 PTP通信通道拓?fù)湫纬傻氖且粋€(gè)非循環(huán)的結(jié)構(gòu),即在任何一對(duì)PTP時(shí)鐘之間都不存在交替的PTP通信通道。PTP域中各節(jié)點(diǎn)根據(jù)佳時(shí)鐘算法被為九種狀態(tài)之一,各從時(shí)鐘通過(guò)同步機(jī)制與主時(shí)鐘保持同步。PTP通信中的報(bào)文包括同步報(bào)文、跟隨報(bào)文、延遲請(qǐng)求報(bào)文、延遲應(yīng)答報(bào)文和管理報(bào)文。 PTP協(xié)議原理 佳主時(shí)鐘算法 佳主時(shí)鐘算法是在一個(gè)網(wǎng)絡(luò)出現(xiàn)多個(gè)主時(shí)鐘情況下,比較多個(gè)主時(shí)鐘的關(guān)鍵屬性值,為本地時(shí)鐘提供一個(gè)優(yōu)時(shí)鐘系統(tǒng)源。在當(dāng)前主時(shí)鐘故障或性能下降時(shí),系統(tǒng)可選擇其他更合適的節(jié)點(diǎn)替代它作為主時(shí)鐘。該算法獨(dú)立運(yùn)行于PTP系統(tǒng)中的每個(gè)時(shí)鐘上,即是說(shuō),時(shí)鐘并不診斷哪個(gè)是主哪個(gè)是從,而是根據(jù)BMC算法只計(jì)算出自己的狀態(tài)。 佳主時(shí)鐘算法由兩部分組成:一是數(shù)據(jù)集比較算法,比較兩組數(shù)據(jù)的優(yōu)劣,例如一組是代表本地時(shí)鐘的缺省特性的數(shù)據(jù),一組代表從某端口接收的同步報(bào)文所包含的信息。二是狀態(tài)決策算法,根據(jù)數(shù)據(jù)組比較結(jié)果計(jì)算每個(gè)端口的推薦狀態(tài)(主站、從站、待機(jī)、未校正、監(jiān)聽(tīng)、禁止、初始化、故障狀態(tài))。 PTP的時(shí)鐘同步機(jī)制 PTP協(xié)議基于同步數(shù)據(jù)包被傳播和接收時(shí)的的匹配時(shí)間,每個(gè)從時(shí)鐘通過(guò)與主時(shí)鐘交換同步報(bào)文而與主時(shí)鐘達(dá)到同步。這個(gè)同步過(guò)程分為兩個(gè)階段:偏移測(cè)量階段和延遲測(cè)量階段。 階段修正主時(shí)鐘與從時(shí)鐘之間的時(shí)間偏差,稱(chēng)為偏移測(cè)量。為了提高修正精度,考慮主時(shí)鐘到從時(shí)鐘的報(bào)文傳輸延遲等待時(shí)間的因素,即延遲測(cè)量,這是同步過(guò)程的第二個(gè)階段。與偏移測(cè)量不同,延遲測(cè)量是不規(guī)則進(jìn)行的,其測(cè)量間隔時(shí)間比偏移值測(cè)量間隔時(shí)間要大。這樣使得網(wǎng)絡(luò)尤其是設(shè)備終端的負(fù)荷不會(huì)太大。 經(jīng)過(guò)延時(shí)報(bào)文的請(qǐng)求和應(yīng)答以及同步報(bào)文的時(shí)間標(biāo)記,可以計(jì)算出兩個(gè)方向的平均傳輸延時(shí),在以后的計(jì)算中就可以使用。實(shí)際上偏移與延時(shí)值的測(cè)量是互相影響的,要經(jīng)過(guò)多次測(cè)量和計(jì)算,才會(huì)逐步收斂到接近實(shí)際值。測(cè)量時(shí)間間隔的選取很重要,選擇間隔短時(shí)通信負(fù)荷較重,間隔過(guò)長(zhǎng)則不能保證同步的精度,所以同步和延時(shí)的測(cè)量間隔應(yīng)根據(jù)同步要求和系統(tǒng)配置選擇。 影響同步的因素 通信通道的對(duì)稱(chēng)性 從PTP的同步原理可以看出,PTP終端設(shè)備為計(jì)算其網(wǎng)絡(luò)延遲和時(shí)鐘偏移所進(jìn)行的四次測(cè)量都是建立在一個(gè)假設(shè)的基礎(chǔ)上,即報(bào)文的傳輸延遲Delay在傳輸方向上是相同的。但這只是一種理想情況,在大網(wǎng)絡(luò)負(fù)載的情況下,這種假設(shè)幾乎是無(wú)法保證的。而且目前我們所使用的因特網(wǎng)電纜在設(shè)計(jì)時(shí)就采用了很小的不對(duì)稱(chēng)設(shè)計(jì),用以減小遠(yuǎn)程末端的串?dāng)_。在這種情況下,隨著網(wǎng)絡(luò)負(fù)載的增加,Delay在傳輸方向上的差異會(huì)越來(lái)越大,造成同步精度的下降。 線路延遲的偏差和時(shí)鐘的穩(wěn)定性 從PTP報(bào)文線路延時(shí)的計(jì)算過(guò)程看,由于從終端在接收到同步報(bào)文后要隨機(jī)延長(zhǎng)一段時(shí)間ΔTs后再發(fā)出延遲請(qǐng)求報(bào)文,在這段時(shí)間,相應(yīng)的主時(shí)鐘也會(huì)產(chǎn)生一段計(jì)時(shí)ΔTm,在實(shí)際系統(tǒng)中,這是由于主從時(shí)鐘所采用的晶振源和計(jì)數(shù)器并不相同,這就導(dǎo)致時(shí)鐘的運(yùn)行速度并不相同,因而也不可能等于,那就會(huì)對(duì)延遲的準(zhǔn)確性產(chǎn)生影響。此外,由于主從時(shí)鐘之間的運(yùn)行速度的差異,因而主從兩邊的時(shí)間戳的分辨率也將不同,從而導(dǎo)致主從時(shí)鐘同步時(shí)隙的差異,再加上晶振漂移的影響,因而Δ所引起的誤差將會(huì)更大。因此,只要主從時(shí)鐘采用相同的時(shí)間標(biāo)尺,就能減小甚至忽略Δ帶來(lái)的同步性能下降。但在實(shí)際系統(tǒng)中,由于主從時(shí)鐘不可能在速度上*匹配,這就必須通過(guò)多次的時(shí)間同步對(duì)從時(shí)鐘的晶振進(jìn)行速度補(bǔ)償,盡量減小主從時(shí)鐘之間的速度差異。 |