專利名稱:由不可靠數(shù)據(jù)分組網(wǎng)絡(luò)分離時校準(zhǔn)時間基準(zhǔn)的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及定時控制方法和裝置的領(lǐng)域,更具體地說,涉及一種用于提供時間的拷貝、穩(wěn)定的頻率和/或鎖定到遠程點的信號的定時控制機制。
背景技術(shù):
時間關(guān)系是電子系統(tǒng)的測量和控制的重要方面。隨著這樣的電子系統(tǒng)變得更加復(fù)雜和在物理上是分布的,日益需要時間信號的精確同步,但同時卻難以實現(xiàn)。為了解決網(wǎng)絡(luò)系統(tǒng)中的時鐘同步的需要,電子電氣工程師協(xié)會(IEEE)采用IEEE-1588(“Standard for a PrecisionClock Synchronization Protocol for Networked Measurement andControl Systems”)。
通過示例的方式,通信網(wǎng)絡(luò)已經(jīng)從電路交換為主轉(zhuǎn)換為分組交換為主。當(dāng)這樣的網(wǎng)絡(luò)的交換節(jié)點以及形成它們之間的鏈路的電路沒有按照使其可跟蹤到共同網(wǎng)絡(luò)時鐘的方式而被同步時,某些現(xiàn)有的設(shè)備將變得脫離同步網(wǎng)絡(luò),并可能因此終止其正確的運行,除非采取措施來避免該情況。根據(jù)IEEE-1588,在參與的時鐘經(jīng)由網(wǎng)絡(luò)進行通信的過程中定義主-從關(guān)系。從設(shè)備通過交換由IEEE-1588定義的消息來將其本地時鐘同步到主時鐘。
IEEE-1588定義的時鐘同步機制的缺點在于,其在下述網(wǎng)絡(luò)上不能良好地運行,在所述網(wǎng)絡(luò)中,節(jié)點由較大的距離(例如互聯(lián)網(wǎng))所分隔,或者節(jié)點由調(diào)用顯著消息延遲抖動的網(wǎng)絡(luò)所分離,所述抖動減少從時鐘的精度和穩(wěn)定性。在這樣的網(wǎng)絡(luò)上通信的消息可通過一些轉(zhuǎn)發(fā)器、交換機和路由器,從而引入隨機長度延遲。這些隨機延遲阻止從時鐘在所需的邊界中維持對主時鐘的同步。
因此,需要一種用于通過可動態(tài)調(diào)整以適合于延遲路徑(通常是網(wǎng)絡(luò))的改變特性的抽樣來補償隨機延遲的時間控制機制。
發(fā)明內(nèi)容
本發(fā)明關(guān)注于在網(wǎng)絡(luò)上接受時間的抽樣的時間控制機制。本發(fā)明提供一種動態(tài)補償網(wǎng)絡(luò)的隨機延遲的方法和裝置,以便即使當(dāng)抽樣被隨機延遲時,也把由時間控制機制控制的從時鐘的輸出維持在與主時鐘的時間有關(guān)的所需的邊界中。
在一個實施例中,提供一種硬件加時戳方法和裝置。該硬件加時戳方法和裝置用于實現(xiàn)用于對接收的抽樣和發(fā)送的請求加時戳所需的精細分辨率。
在另一實施例中,提供一種延遲改變平滑方法和裝置。該延遲改變平滑方法和裝置允許時間控制機制計算網(wǎng)絡(luò)延遲,以把從時鐘維持在所需的時間邊界中。此外,提供一種不僅以抽樣補償隨機延遲而且動態(tài)調(diào)整其操作以適合于延遲路徑(通常是網(wǎng)絡(luò))的改變特性的方法和裝置。
將通過考慮以下優(yōu)選實施例的詳細描述,向本領(lǐng)域技術(shù)人員提供本發(fā)明的系統(tǒng)和方法的更完整的理解及其附加優(yōu)點和目的的實現(xiàn)。具體地說,下面的詳細描述包括關(guān)于根據(jù)本發(fā)明的實施例的硬件加時戳的部分以及關(guān)于根據(jù)本發(fā)明的其它實施例的延遲改變平滑的部分。硬件加時戳部分將詳細描述用于實現(xiàn)對接收的抽樣和發(fā)送的請求兩者加時戳所需的精細分辨率的方法和裝置。延遲改變平滑部分將描述如何計算網(wǎng)絡(luò)延遲以及用于把從時鐘維持在主時鐘的所需的時間邊界中。還將參照首先簡要描述的附圖。
附圖示出本發(fā)明的優(yōu)選實施例的設(shè)計和實用性。無需按比例繪制附圖中的組件,相反,做出某些突出來示出實施例的原理。此外,在附圖中,在所有不同的附圖中,相同的標(biāo)號指示對應(yīng)的部分。
圖1示出結(jié)合根據(jù)本發(fā)明的示例性實施例定義的消息時戳點的到來和離去消息棧;圖2示出用于圖1的到來消息棧的到來分組的示例性硬件加時戳機制;圖3示出用于圖1的離去消息棧的離去分組的示例性硬件加時戳機制;圖4是示出相對于實際時間的主時間和時鐘時間的示圖;圖5是示出根據(jù)本發(fā)明的示例性實施例校準(zhǔn)的相對于實際時間的主時間和時鐘時間的示圖;圖6示出用于實現(xiàn)時間校準(zhǔn)的系統(tǒng)的流程圖;圖7示出用于時間控制機制的示例性濾波器網(wǎng)絡(luò)的實施例;圖8示出根據(jù)本發(fā)明的示例性實施例的用于饋送和清空分組接受數(shù)據(jù)的數(shù)組和指針;圖9是密度分組接受器的接受程度對相對分組密度的線性曲線圖;圖10是密度分組接受器的接受程度對相對分組密度的對數(shù)線性曲線圖;以及圖11示出根據(jù)本發(fā)明的主設(shè)備和從設(shè)備之間的消息分組的通信。
具體實施例方式
本發(fā)明針對在網(wǎng)絡(luò)上接受時間的抽樣(正確或錯誤)的時間控制機制。如本發(fā)明的示例性實施例所展示的那樣,時間控制機制使用諸如檢錯和糾錯方法和裝置的用于維持多個抽樣的方法和設(shè)備。展示的時間控制機制還應(yīng)調(diào)整從時鐘的輸出頻率和相位。使用本發(fā)明的其它實施例來控制所述調(diào)整。由示例性時間控制機制控制的從時鐘可以是如IEEE-1588描述的從時鐘。然而,展示的時間控制機制并不限于基于IEEE-1588的應(yīng)用。
更具體地說,本發(fā)明提供一種用于動態(tài)補償網(wǎng)絡(luò)的隨機延遲的時間控制機制以在與主時鐘的時間有關(guān)的所需邊界中維持時間控制機制控制的從時鐘的輸出的方法和裝置。更具體地說,當(dāng)(例如由網(wǎng)絡(luò))隨機延遲抽樣時,本發(fā)明的時間控制機制在與主時鐘的時間有關(guān)的所需邊界中維持從時鐘輸出。在一個實施例中,由時間控制機制使用硬件加時戳方法和裝置來實現(xiàn)對接收抽樣和發(fā)送請求兩者進行加時戳所需的精細分辨率。在另一實施例中,延遲改變平滑方法和裝置允許時間控制機制計算網(wǎng)絡(luò)延遲以在所需的時間邊界中維持從時鐘。此外,提供一種用于不僅補償抽樣中的隨機延遲而且動態(tài)調(diào)整其操作以適合于延遲路徑(通常是網(wǎng)絡(luò))的改變特征的方法和裝置。
時間鎖定環(huán)在本發(fā)明的示例性實施例中展示的時間控制機制使用鎖相環(huán)(PLL)的變形。如本領(lǐng)域所知,PLL是控制振蕩器從而其在輸入信號或基準(zhǔn)信號的頻率上維持恒定平均相位角(即鎖定)的電子電路。PLL確保通信信號鎖定在特定頻率上,并還可用于生成信號,對信號進行調(diào)制和解調(diào),并劃分頻率。本發(fā)明的時間控制機制使用時間而不是相位的抽樣,因此稱為時間鎖定環(huán)(TLL)。雖然兩種技術(shù)以相似的原理操作,但TLL使用已經(jīng)由另一時鐘發(fā)送到其的時間的抽樣,而不是如PLL中所使用的技術(shù)那樣,對到來信號抽樣以獲得相位的抽樣。
TLL通常包括以下部件,其中一些部件可一起裝配在一個地方,而其它部件裝配在另一地方。所述兩種組件之間的分離可以是大的。TLL具有用于從主時鐘源產(chǎn)生一系列瞬時時間值的一個組件以及用于使用這些時間值以作為從時鐘輸出來構(gòu)建主時鐘的副本的另一個組件。從主時鐘源生成時間抽樣的TLL的部分被稱為主時鐘,另外的部分被稱為從時鐘。主時鐘通過對以由主時鐘源控制的速率驅(qū)動的計數(shù)器進行抽樣而簡單地生成主時鐘。在初相(epoch)的開始重置計數(shù)器,但連續(xù)運行計數(shù)器直到重置初相。TLL的從設(shè)備部分的動作不會以任何方式影響時間值。
從時鐘控制振蕩器,從而由振蕩器驅(qū)動的、并且使用與主設(shè)備相同的初相的從時鐘運行與主時鐘進行校準(zhǔn)。從時鐘對由主設(shè)備發(fā)送到其的時間值和通過當(dāng)其從主設(shè)備接收到新的時間抽樣時對計數(shù)器抽樣所獲得的相應(yīng)的時間值進行比較??紤]到傳輸時間延遲,從時鐘控制振蕩器的速率,直到其(a)以和主時鐘相同的速率運行,(b)計數(shù)器被校準(zhǔn)。從設(shè)備使用在來自主設(shè)備的消息中提供的主時間的抽樣以及來自其自身時鐘的從時間的抽樣,并更快或更慢地驅(qū)動時鐘,直到其與主時間匹配。因此,將從時鐘輸出鎖定到主時鐘的時間。
如圖11所示,在根據(jù)本發(fā)明的主設(shè)備和從設(shè)備之間交換時鐘同步信息。主時鐘1120從諸如協(xié)調(diào)通用時間(UTC)的可靠源1110接收時鐘。主時鐘1120在通過引入隨機的長度延遲的各個網(wǎng)絡(luò)節(jié)點的路徑上以消息將時鐘的抽樣發(fā)送到從時鐘1130。對于每一消息,主設(shè)備到從設(shè)備消息的發(fā)送時間(Tms)可不同,這反映在所測量的可變長度延遲中。相似地,從設(shè)備到主設(shè)備消息的發(fā)送時間(Tsm)也可反映可變長度延遲。在考慮到傳輸時間延遲的情況下,從設(shè)備使用從主設(shè)備接收的時間抽樣來確定從時鐘1130是否超出來自主時鐘1120的同步。消息中的時戳還可用于量化傳輸時間延遲。
TLL和PLL之間的差別在于PLL跟隨其輸入的平均頻率(基本上在輸入上對噪聲進行衰減),而TLL跟隨主時鐘源的頻率,并容許在由各個時間抽樣經(jīng)受的傳輸路徑中的延遲的改變。
TLL的優(yōu)點在于其運行而不管傳遞來自主時鐘的時間抽樣的信號的頻率如何。在傳統(tǒng)PLL鏈脫離理想行為的情況下,即當(dāng)PLL必須漂移時,TLL在主時鐘的從時鐘之間維持良好校準(zhǔn)。此外,當(dāng)由具有諸如SONET和以太網(wǎng)的各種傳輸技術(shù)的網(wǎng)絡(luò)分離TLL的主部分和從部分時,PLL鏈將不能在網(wǎng)絡(luò)中同步多個節(jié)點,而TLL仍舊能夠在網(wǎng)絡(luò)中同步多個節(jié)點。
TLL的另一優(yōu)點在于可以不管從時鐘及其控制時鐘之間的傳輸路徑的特性而發(fā)送時間抽樣。傳輸路徑的不同部分可具有十分不同的特征,并被設(shè)計成非常不同的標(biāo)準(zhǔn)。例如,可根據(jù)以太網(wǎng)來設(shè)計傳輸路徑的一部分,而另一部分可以是SONET。這些并非是僅有的可能的組合。反之,PLL依賴于傳輸路徑的特性,并經(jīng)受路徑的無規(guī)則行為的影響。例如,由于以太網(wǎng)部分的頻率可以是在比允許SONET的范圍更廣的范圍中的任意頻率,因此位于包括以太網(wǎng)和SONET兩者的傳輸路徑的一端的PLL通常不滿足與TLL相同的性能準(zhǔn)則。因此,以太網(wǎng)時鐘并非總是可傳送到PLL。這種情況十分常見,TLL避免這種情況。
PLL的另一問題在于經(jīng)常沿著傳輸路徑一個接一個地提供(或加固)它們,并且更遠地來自源的任意PLL的性能在路徑中受到其前面的PLL的性能的強烈影響。為了在路徑的末端實現(xiàn)期望的總體性能,通常需要每一PLL的行為仍舊處于特定的嚴格邊界內(nèi),并且路徑中的PLL的數(shù)量為有限的。這樣增加了傳輸路徑的成本并限制了其擴展。另一方面,TLL使用已經(jīng)在路徑的開始獲得的抽樣,以及這些抽樣通常沒有受到路徑上的各個部件干擾,從而可根據(jù)需要來擴展傳輸路徑。本發(fā)明的實施例的時間控制機制補償路徑延遲中的任意不規(guī)則性,并糾正時間抽樣中的任意可檢測和可糾正的誤差。因此,TLL脫離傳輸路徑的行為。
防止不規(guī)則網(wǎng)絡(luò)行為網(wǎng)絡(luò)經(jīng)常在抽樣中引入誤差。這些誤差可以是單個比特誤差或可擴展到許多比特。本發(fā)明的實施例使用時間控制機制該機制通過使用糾錯技術(shù)或通過丟棄抽樣來防止其自身出現(xiàn)誤差。糾錯的使用限于可對誤差進行可靠檢測的情況,在產(chǎn)業(yè)中通常使用一些技術(shù)。所使用的糾錯技術(shù)必須在時間控制機制和主時鐘之間進行協(xié)商。
網(wǎng)絡(luò)有時經(jīng)受從服務(wù)中移除傳輸路徑的一部分的故障。典型示例可以是道路工程使纜線斷開。通常提供可選部分以恢復(fù)傳輸路徑,并且通常由網(wǎng)絡(luò)運營商來調(diào)用這種恢復(fù)。時間控制機制具有在用于延長的網(wǎng)絡(luò)停歇的周期的所需的邊界中維持從時鐘的輸出的能力,并可補償新的傳輸路徑的不同延遲。此外,可從選擇的主時鐘中在不同路徑上提供時間抽樣,或可從多于一個的主時鐘中提供抽樣。如果沒有及時修復(fù)來自選擇的主時鐘或去到選擇的主時鐘的所使用的路徑,則時間控制機制可切換到可選路由或可選源。
此外,網(wǎng)絡(luò)有時調(diào)用新的路由來避免擁塞的節(jié)點或失效的節(jié)點。通常,這將在至少一個方向上引入誤差。展示的實施例的時間控制機制對其進行補償。此外,如果選擇的主時鐘失效,則如果一個路由可用,則時間控制機制可切換到可選路由。展示的實施例的時間控制機制將補償不同的路徑延遲。
硬件加時戳如上所述,本發(fā)明的一方面在于提供一種硬件加時戳方法和設(shè)備。IEEE-1588要求以絕對最小等待時間來執(zhí)行時戳。傳統(tǒng)的軟件棧增加非常明顯的等待時間,更重要的是,等待時間中的十分明顯的改變。因此,本發(fā)明的實施例以硬件執(zhí)行加時戳,而不使用軟件棧。在本發(fā)明的時間控制機制中,以位于十分靠近物理接口端口以提供最佳可能的性能的專用硬件來執(zhí)行加時戳。
在一個實施例中,根據(jù)IEEE-1588對到來分組和離去分組兩者執(zhí)行時間控制機制。根據(jù)IEEE-1588,每一從設(shè)備通過與主時鐘交換同步消息而同步到主設(shè)備的時鐘。同步處理分為兩個階段。首先,參照偏移測量糾正主設(shè)備和從設(shè)備之間的時間差。在該偏移糾正期間,主設(shè)備以定義的間隔(例如默認每2秒)循環(huán)地將唯一同步(Sync)消息發(fā)送到有關(guān)的從時鐘。該Sync消息包含用于發(fā)送消息的時間的估計值。主時鐘測量發(fā)送的確切時間,從時鐘測量接收的時間。其后,主設(shè)備在后面的消息中將相應(yīng)的Sync消息的發(fā)送的時間發(fā)送到從時鐘。當(dāng)接收Sync消息和接收可選地對應(yīng)的后面的消息時,從時鐘考慮Sync消息的接收時戳關(guān)于主時鐘計算糾正(偏移)。其后,必須由該偏移來糾正從時鐘。同步處理的第二階段(延遲測量)確定從設(shè)備和主設(shè)備之間的延遲或等待時間。從時鐘將延遲請求消息發(fā)送到主設(shè)備,并確定消息的發(fā)送時間。當(dāng)接收到分組時,主設(shè)備生成時戳,并在延遲響應(yīng)消息中將接收時間發(fā)送回到從設(shè)備。
圖1示出關(guān)于到來消息棧110和離去消息棧112定義的消息時戳點100。將同步消息(即由主設(shè)備廣播到其所有從設(shè)備的消息或分組)和延遲請求消息(即由從設(shè)備發(fā)送到其主設(shè)備的消息或分組)發(fā)送到到來消息棧110或離去消息棧112,隨后由合適的時間協(xié)議代碼114對其進行處理。消息時戳點100是以消息格式定義的位置(例如如圖1所示的消息中的A的開始)。時鐘時戳點101、102分別是消息所通過的到來消息棧110和離去消息棧112的物理點。當(dāng)消息時戳點100通過這些物理點時,生成到來和離去時鐘時戳點101、102。如圖1所示,典型的同步或延遲請求消息進入內(nèi)邊界協(xié)議棧110。期望邊界內(nèi)反應(yīng)時間105和邊界外反應(yīng)時間106在本發(fā)明中是極小的;然而,當(dāng)物理設(shè)備增加等待時間時,期望能夠讀取用于設(shè)備的寄存器并在確定時鐘同步中使用該值。如下面進一步描述的那樣,本發(fā)明的實施例提供一種用于生成將置于所述定義的時戳點100的時戳的機制。
圖2是根據(jù)本發(fā)明示例性實施例的用于時戳到來分組的示例性機制的框圖。該機制可用于主時鐘或從時鐘位置。到來分組230到達物理層250的到來端口235,并通過媒體訪問控制(MAC)層220以在傳遞到緩沖存儲器290之前進行處理。當(dāng)分組230到達MAC層220時,時戳器260檢測包含在分組230中的消息時戳,并將該數(shù)據(jù)提供給計數(shù)器240。時間時鐘210驅(qū)動計數(shù)器240,計數(shù)器240對產(chǎn)生計數(shù)器(或時戳)值進行響應(yīng)。在主時鐘實現(xiàn)的情況下,時間時鐘210是主時鐘;在從時鐘實現(xiàn)的情況下,時間時鐘210是從時鐘。在計數(shù)器240中鎖存計數(shù)器值,以用作用于在稍后點處的分組中插入的時戳的基礎(chǔ)。同時,在MAC層220處理分組。如果發(fā)現(xiàn)明顯誤差,則丟棄分組。
如果MAC層220將分組識別為同步分組類型(或延遲請求分組),則其與時戳器260通信,時戳器260從計數(shù)器240中檢索時戳值,并將其傳遞到MAC層220以插入分組。在該特定實施例中,一旦已經(jīng)驗證時戳值,就將該值插入分組來代替循環(huán)冗余校驗(CRC)。這樣具有維持分組的長度并維持具有分組的時戳的優(yōu)點。應(yīng)理解,可抽樣其它方法,并且其后,后續(xù)分組處理功能將必須考慮分組長度的改變。時戳可隨著其被處理而依附于分組,并可在需要的情況下使用,還可由緩沖存儲器290保持以根據(jù)需要而重傳。在本發(fā)明的上下文中,該計數(shù)器240也可稱為“時戳生成器”。
時間時鐘可運行在頻率的范圍。例如,77.76MHz或100MHz的速率給出12.86ns或10ns的分辨率,但應(yīng)理解,可使用其它速率。由于本領(lǐng)域公知的各種目的,其它時鐘信號也可存在于該機制中??捎膳c時間時鐘210沒有關(guān)系的線路時鐘來驅(qū)動到來端口235。線路時鐘還可驅(qū)動MAC層220的功能。應(yīng)考慮由亞穩(wěn)定性導(dǎo)致的數(shù)據(jù)誤差的概率并使其最小。為了給出最大靈活性,可配置本發(fā)明的上述時戳機制的各種特征。例如,應(yīng)該可按時戳被寫入分組的格式在可生成時戳的分組中的點處,和/或在分組標(biāo)識標(biāo)簽的位置和格式,來配置機制。
圖3是用于時戳離去分組的時戳機制的框圖。該機制可用于主時鐘或從時鐘應(yīng)用。離去分組330從緩沖存儲器390去到媒體訪問控制(MAC)層320、物理層350,并在離去端口335上被發(fā)送。該機制包括由時間時鐘310驅(qū)動的計數(shù)器340。在主時鐘應(yīng)用中,將從主時鐘得到其;在從時鐘應(yīng)用中,將自從時鐘中得到其。計數(shù)器340產(chǎn)生將用作時戳值的基礎(chǔ)的值。隨著分組離開時戳機制,離去時戳器360檢測分組中的消息時戳點何時已經(jīng)到達離去端口335,并將該事件指示到計數(shù)器340。鎖存計數(shù)器值并將其傳遞到時戳器360。通常,期望僅在同步或延遲請求分組(或分組類型)中到來時戳值,因此3360提供與3320通信來檢測分組類型。如果分組是合適的類型,則時戳器360將時戳(即計數(shù)器值)傳遞到MAC層320以處理離去分組中的合適的點中的到來。
除了同步和延遲請求分組之外,上述時戳機制還可根據(jù)需要在其它類型的分組中到來時戳。這在諸如計費應(yīng)用的要求時戳的應(yīng)用中是有用的。
與圖2的實施例相似,該離去時戳機制的許多特征被配置為適合各種應(yīng)用。例如,應(yīng)可將所述特征配置為將添加時戳的分組類型、離去時戳的格式、離去分組中的時戳的位置、和/或觸發(fā)生成時戳的離去分組中的消息時戳點。此外,還應(yīng)可配置各種功能的互連。例如,可改變離去分組中的時戳的位置以適合不同分組類型和/或可按不同分組類型改變時戳的格式。
延遲改變平滑如上所述,本發(fā)明的另一方面提供一種延遲改變平滑方法和裝置。該延遲改變平滑方法和裝置允許時間控制機制計算網(wǎng)絡(luò)延遲以在應(yīng)用所需的時間邊界中將從時鐘(節(jié)點)維持為其主設(shè)備的輸入的精確表示。此外,本發(fā)明提供一種應(yīng)用不僅在抽樣中補償可變延遲而且動態(tài)調(diào)整其操作以適合于延遲路徑的改變特性的時間控制機制的方法和裝置。
A、分組接受如上所述,用于時間控制機制的承載時間的抽樣的分組將由在其上承載它們的網(wǎng)絡(luò)延遲可變時間量。如果時間控制機制可在可接受的誤差裕量中計算出每一分組經(jīng)受的延遲,則其僅可使用時間抽樣。本發(fā)明的分組接受方法和裝置可響應(yīng)于這種確定。
可將由網(wǎng)絡(luò)引入的延遲分解兩部分。延遲的一個部分將是主時鐘和從設(shè)備之間的分組的傳輸延遲。該延遲部分由在網(wǎng)絡(luò)中的物理介質(zhì)的組合長度上的傳輸速度而導(dǎo)致,而部分由網(wǎng)絡(luò)的節(jié)點中的不可避免的處理延遲導(dǎo)致。其表示最小延遲,并由物理屬性相對地固定,假設(shè)對每一分組提供相同的傳輸路徑。
除了傳輸延遲之外,僅由網(wǎng)絡(luò)引入可變延遲,這由需要共享來自各個源的分組之間的路徑中的節(jié)點的正進行的鏈路而導(dǎo)致,使得節(jié)點有時不能像其到達那樣快的傳遞分組。在隊列中保持到達節(jié)點的分組,僅當(dāng)正進行的鏈路空閑時向前移動該分組。由隊列導(dǎo)致的延遲稱為隊列延遲,其可根據(jù)流量負載和分組類型的混合而廣泛改變。如果網(wǎng)絡(luò)節(jié)點可給出對高優(yōu)先級分組的優(yōu)選,則在平均程度上可使隊列延遲最小。例如,承載時間抽樣的同步分組將被標(biāo)記為高優(yōu)先級。特別對輕負載的網(wǎng)絡(luò),這通常將導(dǎo)致在網(wǎng)絡(luò)節(jié)點處僅輕微延遲同步分組。但更經(jīng)常的是,高優(yōu)先級分組必須等待節(jié)點是否已經(jīng)發(fā)送出分組,與當(dāng)前分組已經(jīng)完成同樣快的發(fā)送所述高優(yōu)先級分組。這是分組網(wǎng)絡(luò)的統(tǒng)計復(fù)用特性,并導(dǎo)致分組延遲的改變。分組的優(yōu)先級有助于減少所述延遲。無論網(wǎng)絡(luò)如何進行該優(yōu)先級,網(wǎng)絡(luò)節(jié)點都可偶爾同時接收一些高優(yōu)先級分組。因此,網(wǎng)絡(luò)不能保證對任意特定同步分組最小化延遲??赏ㄟ^使用高速節(jié)點來最小化這樣的隊列延遲,但當(dāng)如在某些網(wǎng)絡(luò)配置中的情況那樣還調(diào)用較低速度的節(jié)點時,這將變得更長。改變延遲的另一原因是通過網(wǎng)絡(luò)的傳輸路徑。為了允許時間控制機制提供其提出的服務(wù),傳輸路徑必須盡可能長地保持相同。時間控制機制可適用于新的路徑延遲,但新的路徑應(yīng)在其改變之前在一段時間周期是穩(wěn)定的。
隊列延遲中的改變通常遠大于由網(wǎng)絡(luò)的物理屬性導(dǎo)致的相對固定的延遲。期望由網(wǎng)絡(luò)路徑中的改變導(dǎo)致的延遲的改變將是恒定偏移,并且所述改變可被識別和補償。
無論分組延遲如何,時間控制機制都必須在要求的性能邊界中運行。面對上述廣泛改變分組延遲,本發(fā)明的分組接受算法是時間控制機制的性能的關(guān)鍵。目的在于移除隊列延遲并暴露出固定延遲,從而可將從時鐘引入具有主時鐘的正確的校準(zhǔn)。
可通過對在接收的分組中承載的時間抽樣和在從時鐘處的本地時間進行比較來獲得在傳輸期間由分組經(jīng)受的延遲的測量。該值包括固定延遲和隊列延遲分量兩者以及主時鐘和從時鐘之間的偏移。雖然隊列延遲將具有取決于網(wǎng)絡(luò)架構(gòu)和流量情況的分布,并可在時間上并在網(wǎng)絡(luò)之間改變,但延遲的分布通常將顯示對于特定的窄范圍的延遲的偏好,從而許多分組將在該范圍中延遲,而較少的分組被延遲大于該范圍或小于該范圍。如果在根據(jù)示例性算法實施例具有相同權(quán)重的分組的情況下使用傳統(tǒng)的濾波器來找出平均延遲,則具有較少延遲的分組將具有對濾波不成比例的效果,并且時間控制機制將花費更長的時間來找出平均延遲。通過使用關(guān)于延遲的測量的前述術(shù)語“平均”,在以下的整個討論中,應(yīng)理解,模式、均值或中值計算中的一個可有利地運用于合適的情形中。
本發(fā)明的時間控制機制使用的算法性實施例(或算法)識別具有較接近與平均值的延遲的分組應(yīng)該被給定比那些遠離平均值的分組更高的優(yōu)選,這導(dǎo)致大量減少設(shè)置時間。如稍后解釋的那樣,本發(fā)明的算法使用分組延遲的相對密度值以確定權(quán)重。該方法的優(yōu)點在于其避免了由具有較少延遲的偶然的分組導(dǎo)致的干擾。在近似高斯分布的延遲曲線的情況下,例如,本發(fā)明的算法減少對具有十分短或十分長的延遲的分組的延遲計算的貢獻,從而防止偏斜。
更具體地說,在本發(fā)明的實施例中,可使用延遲請求過程來計算取決于通過網(wǎng)絡(luò)的路徑的固定延遲值,從而主時鐘對由從設(shè)備發(fā)送的延遲請求分組進行響應(yīng)。應(yīng)答包含主時鐘接收延遲請求分組的時間。通過獲知在發(fā)送和接收延遲請求分組的從時鐘處的本地時間,并允許由多個經(jīng)受的隊列延遲,本發(fā)明的時間控制機制可計算固定延遲,并從而調(diào)整本地時間以將其引入具有主時鐘的校準(zhǔn)。
一旦已經(jīng)確定平均延遲和固定延遲,時間控制機制就可計算何時由消息時戳發(fā)送新的分組,其后確定時鐘是否正漂移離開。如果時鐘漂移離開,則可控制頻率來維持校準(zhǔn)。
主時鐘并不能總是以精確的規(guī)則間隔來發(fā)送時間抽樣。它可能具有其自身的十分大的處理負載,并且這將影響行為。例如,除了發(fā)送其通常的時間抽樣分組之外,它可具有用于控制的大量從時鐘,并且每一從時鐘將發(fā)送延遲請求分組,主設(shè)備必須快速響應(yīng)于延遲請求分組。因此,處理延遲改變之外,從時鐘必須忍受改變分組間空隙。
為了示出本發(fā)明的算法性實施例所基于的原理,圖4示出從時鐘初始地遲運行并以低于主時鐘的速率運行的示例。圖5示出當(dāng)已經(jīng)校準(zhǔn)時鐘的情況。
參照圖4,在主時鐘410之后,從時鐘400以較低速率(頻率)運行。明顯的延遲隨時間而增加。作為主時鐘和從時鐘之間的明顯時間偏移的偏移時間Toff已經(jīng)增加到較大的值。需要調(diào)整從時鐘的頻率來穩(wěn)定平均明顯延遲,從而是從時鐘以與主時鐘相同的速率運行。還調(diào)整從時間,直到從主設(shè)備到從設(shè)備的平均明顯延遲等于平均單向延遲。其后,兩個時鐘將如圖5所示運行。
參照圖4,水平軸430表示實際時間(例如UTC),垂直軸440表示時鐘時間(主時鐘或從時鐘)。上部軌跡410表示在實際時間上主時鐘時間中的改變——如果斜率為1∶1,則將主時鐘時間精確校準(zhǔn)為實際時間,但運行快或慢導(dǎo)致較陡或較淺的斜率。下部軌跡400表示在實際時間上從時鐘中的改變。將軌跡400、410兩者顯示為連續(xù)的線,但實際上是分段線性的,以反映可用于時鐘的受限的有限分辨率。將以較精細的分辨率減少步長。將軌跡400、410偏移一個偏移誤差Toff,如果兩條軌跡400、410平行,則其是恒定的,但如果它們不平行,則將改變。系統(tǒng)的目的在于消除Toff。主設(shè)備在其自身的時鐘測量的時間Tmfn生成同步分組,主設(shè)備以向前方向(主設(shè)備到從設(shè)備)將分組發(fā)送到從設(shè)備。在由時戳(如上所述)確定的精度中,發(fā)送時間Tmfn包含在分組中。從設(shè)備在自身的時鐘所測量的明顯的時間Tsfn接收這些分組。接收的精度將受到接收機中的時戳的精度的影響。網(wǎng)絡(luò)將延遲分組達到在實際時間中測量的延遲時間Drfn,或由主時鐘測量的Dmfn,或當(dāng)由從時鐘測量時的Dsfn。當(dāng)Dmfn=Drfn時,主設(shè)備精確地運行為實際時間。當(dāng)Dsfn=Dmfn時,從設(shè)備運行在具有主設(shè)備的校準(zhǔn)中。從設(shè)備將看到用于Dsafn的每一接收的分組的明顯延遲,其中,Dsafn=Tsfn-Tmfn。其后,將由從設(shè)備在主時鐘讀取Tmfrn(其中,Tmfrn=Tmfn+Dmfn)的從時間Tsfn接收由主設(shè)備在Tmfn(=Tsfn+Dsafn)發(fā)送的并由網(wǎng)絡(luò)延遲Drfn的分組。由于Tmfn=Tsfn+Dsafn,因此Tsfn=Tmfn-Dsafn,并且如果將時鐘真實地校準(zhǔn),則Tsfn=Tmfrn。因此,校準(zhǔn)兩個時鐘要求Tsfn=Tmfn+Dmfn,或Dsfn=Dmfn。由于時戳的精度以及主時鐘離開實際時間的偏差而導(dǎo)致將存在誤差δ。使用上述本發(fā)明的硬件加時戳技術(shù)將誤差的第一源最小化。應(yīng)基于本領(lǐng)域公知的技術(shù)來糾正誤差的第二源。本發(fā)明的時間控制機制用于校準(zhǔn)到主時間,而非實際時間。在此情況下,如果整個系統(tǒng)在于在從設(shè)備輸出處提供實際時間,則由主設(shè)備決定以實際時間維持校準(zhǔn)。
為了將從時鐘校準(zhǔn)到主時鐘,本發(fā)明的算法必須將偏移時間Toff減少并維持在可接受的閾值之下。上述推理示出當(dāng)Dsfn等于Dmfn時時鐘被校準(zhǔn),但這還需要不存在偏移時間??砂踩丶僭O(shè)將以偏移時間值啟動從設(shè)備,這可使其超前或落后與主設(shè)備。這里,如果主時鐘時間主導(dǎo)從時鐘時間,則Toff具有正值。從設(shè)備可通過簡單改變其時間以抽樣在接收的分組中給定的Toff來移除一些偏移,但這將存在根據(jù)前向飛行時間(在此情況下,由承載主時間的抽樣的分組導(dǎo)致的前向網(wǎng)絡(luò)延遲Drfn)的誤差。為了移除該誤差,從設(shè)備必須算出由分組導(dǎo)致的網(wǎng)絡(luò)延遲。由于延遲通常將改變,并且取決于從設(shè)備的控制的外部的事件,因此誤差移除任意使用特定近似??扇缦芦@得第一近似。在分組的飛行時間期間,如果主時鐘和從時鐘兩者的改變的速率充分接近等于實際時間的改變的速率(從而即使兩個時鐘具有固定偏移時間,它們也以大致相同的速率增加),則Dsfn近似等于Dmfn,并近似等于Drfn。因此,如果從設(shè)備通過抽樣主設(shè)備值已經(jīng)嚴格校準(zhǔn)其自身,則Toff將近似等于Dsfn(或Dmfn)。找到Dsfn或Dmfn將允許進一步減少Toff。
當(dāng)本發(fā)明的從設(shè)備接收新的分組時,其還應(yīng)計算用于前向路徑的明顯延遲。分組將包含主時間Tmfn的最新的抽樣,并且將在從時間Tsfn接收所述分組。從設(shè)備知道主時間Tmfn和從時間Tsfn,因此Dsafn將等于Tsfn-Tmfn。然而,將有根據(jù)Toff的誤差。因此,Dsafn=Tsfn-Tmfn=Dsfn-Toff,給定Dsfn=Tsfn-Tmfn+Toff。當(dāng)接收分組時的從時間Tsfn將等于分組中的主時間Tmfn加上分組經(jīng)受的特定前向路徑延遲Dsfn,減去誤差ToffTsfn=Tmfn+Dsfn-Toff。因此,Dsfn=Tsfn-Tmfn+Toff。
在理想狀況下,往返路徑的每一方向?qū)嗤臅r間偏移,但在每一方向由相反的標(biāo)記。因此,在理想狀況下,往返延遲將沒有時間偏移誤差。在網(wǎng)絡(luò)不支持真實往返測量的情況下,應(yīng)結(jié)合延遲請求過程(其使用返回路徑)使用正常前向路徑來對真實往返時間進行仿真??捎蓮脑O(shè)備發(fā)送延遲請求分組,并由主設(shè)備注意該延遲請求分組。當(dāng)從設(shè)備發(fā)送分組時,其注意從時間Tsrn,此時主設(shè)備具有時間Tmsrn,其偏離從時間偏移時間Toff,從而Tmsrn=Tsrn+Toff。當(dāng)主設(shè)備在Tmrn接收到分組時,對其進行時戳。在分組的飛行時間期間,主設(shè)備和從設(shè)備將分別超前Dmrn(=Tmrn-Tmsrn)和Dsrn,從而Tmrn=Tmsrn+Dmrn。其后,主設(shè)備附屬地將新的分組發(fā)送到具有時戳值Tmrn的從設(shè)備。優(yōu)選地,盡快完成該操作,但無需立即完成該操作。
當(dāng)從設(shè)備接收分組時,其恢復(fù)主設(shè)備時戳值Tmrn,并將其與其發(fā)送延遲請求分組的時間Tsrn進行比較。兩個值相差由從時鐘測量的明顯反向路徑延遲Dsarn,其包括偏移誤差Toff。接收的分組中的主設(shè)備時戳值將等于從設(shè)備發(fā)送延遲請求分組的時間Tmsrn加上反向由主設(shè)備測量的路徑延遲DmrnTmrn=Tmsrn+Dmrn。當(dāng)從時鐘以充分接近與主時鐘相同的速率運行時,由從設(shè)備測量的反向路徑延遲Dsrn將十分接近于由主設(shè)備測量的反向路徑延遲Dmrn;因此,假設(shè)Dsrn=Dmrn,Tmrn=Tmsrn+Dsrn,或Tmrn=Tsrn+Toff+Dsrn。因此,Dsrn=Tmrn-Tsrn-Toff。往返延遲是兩個單向延遲的和,Dsfn+Dsrn,并且等于(Tsfn-Tmfn+Toff)+(Tmrn-Tsrn-Toff)。因此,Dsfn+Dsrn=(Tsfn-Tmfn)+(Tmrn-Tsrn)。
如果已知在每一方向中的延遲之間的關(guān)系,則可發(fā)現(xiàn)并消除時間偏移誤差Toff,以將從時鐘校準(zhǔn)到主設(shè)備。在很對情況下有效的好的工作假設(shè)是在每一方向中的延遲接近于充分相等。其后,Dsfn=Dsrn=(Tsfn-Tmfn)+(Tmrn-Tsrn)/2。如果延遲是恒定的,則如果值Dsfn在主時間Tmfn的抽樣之后,則將從時鐘校準(zhǔn)到主時鐘。
上面的討論僅是示例性的。其得自基于使用IEEE 1588標(biāo)準(zhǔn)的系統(tǒng)碰到的情況。其僅應(yīng)用于最簡單的情況,但本發(fā)明不限于此。在某些應(yīng)用中發(fā)現(xiàn)的復(fù)雜情況下不可應(yīng)用上述示例,可對其實施例進行各種修改、改變和替換。更具體地說,在特定的不同情況下,一些區(qū)域?qū)е抡`差。上面的討論要求延遲是恒定的并且在每一方向相同;他還要求時間偏移Toff是恒定的。如上所述,在許多應(yīng)用中,通過網(wǎng)絡(luò)的延遲不是恒定的,而是可在時間上廣泛改變。此外,在每一方向上,延遲可不充分相等。最后,如果主時鐘或從時鐘的改變速率在時間上變化,則時間偏移誤差可改變。這將導(dǎo)致可從最小的可能的延遲到最大的可能的延遲的范圍中的誤差。如果不抽樣控制機制來糾正該誤差,則其將始終存在。在許多應(yīng)用中,永久的大的誤差是不可接受的,因此必須抽樣控制機制來糾正它。下面的討論描述在本發(fā)明的更具體的實施例的特定控制機制背后的原理。
B、用于未知延遲的控制機制期望一種可在時間上廣泛改變的用于由未知延遲導(dǎo)致的誤差的控制機制。使用簡單的均值濾波器來標(biāo)識所遇到的延遲的平均值對于該應(yīng)用并非是理想的,因為它具有一些不期望的特征,包括對新的延遲范圍(諸如可由網(wǎng)絡(luò)路徑中的改變導(dǎo)致的)的慢反應(yīng)。此外,相同的慢響應(yīng)將導(dǎo)致延長校準(zhǔn)時間,這對一些重要應(yīng)用是不可接受的。本發(fā)明的實施例使用在每一方向中標(biāo)識最有可能的延遲值的控制機制,并使用其將從時鐘校準(zhǔn)為主設(shè)備。該實施例通??蓱?yīng)用于對在正進行的延遲值的集合中快速找出典型延遲的任意情況,并且不限于由在此描述的時間控制機制服務(wù)的應(yīng)用。
如果在主時鐘和從時鐘之間將分組延遲最可能的延遲D同步消息,并且當(dāng)接收分組時從時間超前于包含在分組中的主時間的抽樣相同的量,則以主設(shè)備校準(zhǔn)從時鐘?;趯τ谕笛舆t的以上得到的關(guān)系,Dsfn+Dsrn=(Tsfn-Tmfn)+(Tmrn-Tsrn),在主設(shè)備到從設(shè)備方向中最可能的單向延遲是Tsfn-Tmfn和Tmrn-Tsrn的值的連續(xù)集合的加權(quán)平均的和的接受的比例。在最簡單的情況下,接受的比例是往返延遲的一半,但如果已知更好的比例,則其可改變。
當(dāng)將明顯前向延遲的連續(xù)值Tsfn-Tmfn提供給相對密度加權(quán)接受過程(稍后描述)時,通過對相對密度加權(quán)接受過程的輸出進行濾波來獲得主設(shè)備到從設(shè)備延遲的加權(quán)平均值[Tsfn-tmfn]wa。值Tsfn是從設(shè)備接收包含主時鐘的抽樣Tmfn的分組從時鐘的值Tmfn。每一新的分組生成明顯前向延遲,Dsafn=Tsfn-Tmfn,的新的抽樣。將每一新的抽樣提供給相對密度函數(shù)(用于測量多個分組經(jīng)受的延遲的范圍),其后,將其連同用于所述抽樣的接受值一起提供給組合濾波器。
圖7示出為時間控制機制選擇三個無限沖擊響應(yīng)(IIR)濾波器的實施例,因為其提供實施的性能和簡單性之間的折衷的優(yōu)化。還可使用可選濾波器(例如具有以輸出保持濾波器的先前輸入的數(shù)組是數(shù)組的部件的均值的有限沖擊響應(yīng)濾波器)。IIR濾波器允許加權(quán)過程直接應(yīng)用于每一新的抽樣,如下所示On=2πBAnfs(In-On-1)+On-1]]>其中,On=新的濾波器輸出,On-1=當(dāng)前濾波器輸出,In=新的輸入值(明顯前向延遲,Tsfn-Tmfn),B=濾波器帶寬,fs=抽樣速率,An=用于新的輸入值的接受值。
如圖7所示,濾波器包括接受相關(guān)濾波器710、接受獨立濾波器715和接受獨立濾波器720。分組延遲應(yīng)用于接受相關(guān)濾波器710和接受獨立濾波器720兩者。接受相關(guān)濾波器710的輸出幅度隨接受值A(chǔ)n的強度而改變。接受獨立濾波器715和720具有一致的An集合??蛇x擇每一濾波器710、715和720的帶寬以適合于特定應(yīng)用。根據(jù)以下表達式,根據(jù)“鎖定的”信號的值對圖7所示的上部分支和下部分支的輸出求和濾波的分組延遲=L×Outu+(l-L)×Outl當(dāng)將明顯返回延遲Tmrn-Tsrn的連續(xù)值提供給相對密度加權(quán)接受過程時,通過對相對密度加權(quán)接受過程濾波來獲得返回路徑延遲的加權(quán)平均(從設(shè)備到主設(shè)備方向)[Tmrn-Tsrn]wa。值Tmrn是當(dāng)主設(shè)備從從設(shè)備接收延遲請求分組時主時鐘的值。值Tsrn是當(dāng)從時鐘將延遲請求分組發(fā)送到主設(shè)備時從時鐘的值。每一新的延遲響應(yīng)分組生成明顯返回延遲的值Tmrn-Tsrn。如上所述,將明顯延遲和接受的值提供給另一組合濾波器,并與處理前向路徑延遲相似地對其進行處理。此外,選擇IIR濾波器,但也可使用可選濾波器。
可通過對每一濾波器的輸出求和來獲得最可能往返延遲。其后,可計算分配給前向(主設(shè)備到從設(shè)備)路徑的比例。該值和明顯前向延遲值(Tsfn-Tmfn)的加權(quán)平均之間的差將指示從時鐘的誤校準(zhǔn)。所述差可用于控制從時鐘的速率以將其引入校準(zhǔn)。
在根據(jù)本發(fā)明的示例性操作性的情況下,圖6示出可如何實現(xiàn)校準(zhǔn)。在示例性情形的上下文中,定時系統(tǒng)包括主處理器和從處理器。主設(shè)備接收時間基準(zhǔn)信號,從設(shè)備維持并產(chǎn)生包含在該信號中的時間信息的拷貝。在該示例中,由以太網(wǎng)網(wǎng)絡(luò)鏈接主設(shè)備和從設(shè)備。主設(shè)備和從設(shè)備使用IEEE 1588協(xié)議通信。協(xié)議包含同步、延遲請求和延遲響應(yīng)分組。
如圖6所示,同步分組時間差計算器600計算主時鐘發(fā)送同步分組605的時間和該節(jié)點接收它的時間之間的差。延遲請求時間差計算器610計算該節(jié)點發(fā)送延遲請求分組615的時間和主設(shè)備接收它的時間之間的差。同步分組接受器640和延遲請求分組接受器650中的每一個確定主設(shè)備和這些節(jié)點中的每一個之間的時間差(從接收的分組中的信息計算)是否是這些節(jié)點中的每一個和其主設(shè)備的本地時間之間的時間中差的真實反映。信號濾波器660使用計算的時間差生成該節(jié)點及其主設(shè)備的節(jié)點時間之間的平均差。頻率生成器680使用該節(jié)點及其主設(shè)備之間的平均時間差生成頻率670。時間生成器690(在一個實施例中可用硬件來完整實現(xiàn))對生成的頻率進行計數(shù)以將節(jié)點時間622提供給延遲請求分組時間差計算器610。當(dāng)發(fā)送延遲請求分組時,請求存儲器695保持發(fā)送時間625和發(fā)送的分組617的標(biāo)識697。標(biāo)識697是16比特序列號。當(dāng)客戶提供與存儲的標(biāo)識697匹配的分組標(biāo)識時,請求存儲器695返回對應(yīng)的存儲的發(fā)送時間625。
更具體地說,請求存儲器695保持顯著的延遲請求的列表。列表保持序列號和每一延遲請求的發(fā)送時間。當(dāng)將序列號呈現(xiàn)給它時,請求存儲器695以對應(yīng)的請求的發(fā)送時間進行響應(yīng)。其后,其檢測該記錄和任意舊的記錄。
在一個實施例中,每一分組接受器640、650還可移除被認為沒有承載可靠的時間信息的分組。通過對分組中的時間信息和其它分組中的時間信息進行比較來進行判斷。在更具體的實施例中,每一分組接受器640、650包括密度分組接受器。密度分組接受器提供在1和0之間的數(shù)字。該數(shù)字指示分組已經(jīng)被接受的程度,其中,1指示完全接受,而0指示完全拒絕。
在本發(fā)明的實施例的以下描述中,下面的參數(shù)應(yīng)用定義密度分組接受器,其中N=存儲在每一接受器中的分組延遲的數(shù)量,L=作為每一接受器的一部分的列表的數(shù)量,NL=存儲在每一列表中的分組延遲的數(shù)量=N/L,ρl=存儲在列表l中的值的密度,ρmax=接受器的所有列表的ρl的最大值,Δmaxl=存儲在列表l中的最大延遲值,Δminl=存儲在列表l中的最小延遲值,Al=根據(jù)其延遲被添加到列表l中的分組的接受程度。
密度分組接受器存儲已經(jīng)在L個相等大小的列表的一個中接收的先前N個分組。以大于在列表i-l中的分組的延遲接收列表i中的所有分組。計算每一列表中的密度ρl=NlΔmaxl-Δminl,]]>其中,ρl的單位是分組/秒。該值測量由分組經(jīng)受的延遲的范圍,而且不參照分組接收的速率。也就是說,ρl指的是接收的分組的數(shù)量的延遲的分布。如果Nl=0,Nl=1或Δmaxl=Δminl,則ρl=0。通過將每一列表的密度除以密度最大的列表來計算每一列表的相對密度。將新接收的分組所經(jīng)歷的延遲添加到合適的接受器列表(列表“l(fā)”),通過使用關(guān)系式 該列表的相對密度Al=e-50(1-ρlρmax)5]]>用于生成接受程度(Al)。圖9和圖10分別示出Al 900、1000對相對密度910、1010的關(guān)系。
返回參照圖6,同步分組時間差計算器600和延遲請求時間差計算器610分別計算前向路徑延遲的最新估計Tsfn-Tmfn,以及反向路徑延遲Tmrn-Tsrn。這些估計通過分組接受器640、650和濾波器660,并由減法器650對其彼此進行相減,從而提供時間誤差控制信號以調(diào)整從時間。因為Dsfn=(Tsn-Tmn),并且當(dāng)Dsfn=((Tsfn-Tmfn)+(Tmrn-Tsrn))/2時,(Tsfn-Tmfn)-(Tmrn-Tsrn)=0,所以減去兩個延遲值給出正確的控制信號。如果從時間開始脫離校準(zhǔn),則控制信號變?yōu)榉橇?,并將從時間拉回到校準(zhǔn)。
上面的描述是根據(jù)本發(fā)明的示例性算法的基本操作的示意。為了實現(xiàn)用于時間控制機制的特定性能特征,可對該算法進行其它修改。例如,當(dāng)首先接通從時鐘時,或在網(wǎng)絡(luò)中在災(zāi)難性事件之后,可通過抽樣在早的同步分組中所包含的來允許時間控制機制快速調(diào)整其時間。然而,除此之外,從設(shè)備應(yīng)該十分緩慢地改變其時間,以提供相對穩(wěn)定的時間改變速率。這是由可使用時間控制機制的許多業(yè)務(wù)所要求的,因為這些業(yè)務(wù)不能接受發(fā)生太快的改變。例如,某些業(yè)務(wù)可能不接受負時間步長。其它應(yīng)用可要求時間控制機制在合理的時間內(nèi)校準(zhǔn)。例如,通信系統(tǒng)時鐘可僅有100秒在期望的性能目標(biāo)中校準(zhǔn)??赏ㄟ^下面更加詳細描述本發(fā)明的算法來解決這些矛盾的要求。
C、對網(wǎng)絡(luò)改變的響應(yīng)通過網(wǎng)絡(luò)的路徑偶爾可能必須改變,例如對擁塞點或故障進行路由。這將改變延遲和將使從時鐘脫離與主設(shè)備的校準(zhǔn),除非采取正確的行動。本發(fā)明的算法經(jīng)由延遲請求過程識別延遲中的改變,并進行自動補償,從而維持校準(zhǔn)。自然地,補償中存在延遲,這導(dǎo)致臨時偏移,但這包含在邊界中(可被定義)。
時間控制機制要求通過網(wǎng)絡(luò)的路徑至少直到其已經(jīng)完成校準(zhǔn)過程都是穩(wěn)定的。如果在校準(zhǔn)過程期間路徑改變,則時間控制機制不應(yīng)將從設(shè)備校準(zhǔn)到主設(shè)備。
D、相對密度加權(quán)的接受過程為了確保本發(fā)明的算法將偏好給予比較接近于最可能的延遲值的那些分組延遲,將明顯延遲加載到一系列列表中,每一列表包含適合于總延遲范圍的小的細分的那些延遲。在根據(jù)本發(fā)明的算法的實施例中,已經(jīng)使用總共十個列表,并維持總的2000個分組延遲。當(dāng)由選擇接收到新的分組時,將其延遲加載到包含相似延遲的列表中,并根據(jù)需要重新安排列表。如由在以下的鎖定檢測器部分的描述中定義的值L指示的那樣,列表的深度根據(jù)鎖定的質(zhì)量而改變。其后,當(dāng)已經(jīng)極大地改進校準(zhǔn)時,使用越來越多的延遲,直到涉及所有2000個分組延遲。
在上述實施例中,當(dāng)值小于0.6時,僅使用2000個分組延遲,其后,當(dāng)L大于0.9時,逐漸使用更多的分組延遲,直到使用所有2000個分組延遲。該時間控制機制改善了校準(zhǔn)速度,同時最大化一次鎖定的抗噪聲度(noise immunity)??墒褂脤τ贚的值使用的分組延遲的數(shù)量的其它選擇以適合于不同情況。一旦已經(jīng)接收2000個分組,第一列表就將在任意一次包含最短延遲,第二列表將包含下一最短延遲等。由于存在十個列表,因此每一列表將自然地包含第十延遲抽樣。例如,第一列表中的最大延遲值是第一個十分位數(shù),表示包含在第一列表中的所有延遲值是兩百個最小延遲。第十列表包含最長延遲。為了便于實現(xiàn)而已經(jīng)選擇該具體布置,算法的其它實施例可使用可選布置,例如100個列表每個可包含100個延遲值。
數(shù)組和指針的組合用于存儲列表中分組接受算法所需的數(shù)據(jù)。該要求是根據(jù)元素所經(jīng)受的延遲來排列元素,但當(dāng)必須丟棄元素時,必須選擇最老的元素。由于元素必須被插入在其它元素之間,所以第一要求期望使用鏈表。由于必須按順序創(chuàng)建或丟棄元素,所以第二要求期望使用數(shù)組。鏈表和數(shù)組的雙重組合允許兩個系統(tǒng)獲得好處。將每一鏈表實現(xiàn)為傳統(tǒng)的雙重鏈表。
如圖8所示,列表的元素包括(a)表示由分組經(jīng)受的延遲的延遲值800;(b)表示列表中的下一元素的地址的下一地址值810;(c)表示列表中的先前元素的先前地址值820;(d)表示該元素是成員的列表的地址的列表值830。所有元素存儲在數(shù)組中,按地址的順序被分配。當(dāng)將丟棄元素時,選擇最近分配的元素。當(dāng)分配元素時,反過來搜索列表以找出正確的列表。對元素的下一指針和先前指針、其鄰近元素的那些指針、如果需要的話,列表的頭指針和尾指針進行修改,以將元素插入到列表中的正確位置。此外,將列表元素更新為指向保持該元素的列表。當(dāng)丟棄元素時,使用其列表指針來找出保持該元素的列表,其后,搜索該列表以找出該元素,并將該元素從列表中移除。
下面的表示出所需的操作數(shù)量的明顯減少。
假設(shè)L=列表E=元素E/L=每列表的元素
在穩(wěn)定狀態(tài)條件下,一旦完全填充列表,則每當(dāng)新的延遲抽樣到達時,必須將其插入到其正確的位置并丟棄最老的元素。上述方法的關(guān)斷優(yōu)點在于,與替代方法相比,丟棄元素所需的資源大量減少,從而將資源釋放用于其它目的。
一旦已經(jīng)將延遲值排列為列表,就計算每一列表的密度。在該實施例的上下文中,術(shù)語密度表示存儲在由保持在列表中的延遲值的范圍劃分的列表中的延遲值。因此,密度是對列表的延遲值彼此的接近程度的測量。通過將每一列表的密度除以最高密度列表的密度來計算相對密度,給定相對密度值在0和1之間。相對密度是列表的密度的歸一化值。每當(dāng)接收到信道分組時就執(zhí)行密度和相對密度計算。最高密度列表可能附帶最可能的延遲值。
一旦相對密度可用,就使用關(guān)系式Al=e-50(1-ρlρmax)5]]>對每一列表中的延遲加權(quán),并將其加和到濾波器。該過程給出對于接近于平均延遲值的那些延遲的較高的重要性,并給出對于遠離于平均延遲值的那些延遲的較低的重要性。通過減少遠離的延遲的重要性,該算法更快地找出最可能延遲。在此給出的關(guān)系由于本發(fā)明的該實施例,但可使用其它關(guān)系來代替以適合于特定應(yīng)用或操作條件。也可抽樣根據(jù)操作條件的關(guān)系。
E、鎖定檢測器返回參照圖6,還示出鎖定檢測器665。鎖定檢測器665維持被稱為“鎖定的”信號,其初始值和最小值為0,表示節(jié)點665完全解鎖,其最大值為1,表示節(jié)點完全鎖定。在本發(fā)明的實施例中,鎖定檢測器665由于修改比例、積分和微分控制器(PID)的增益,用于響應(yīng)于從設(shè)備的校準(zhǔn)質(zhì)量而控制從設(shè)備輸出頻率,并調(diào)整列表中的延遲的群體大小。鎖定檢測器655有助于縮短校準(zhǔn)時間,提供可感知的時間以在網(wǎng)絡(luò)改變下解鎖,并提高對校準(zhǔn)故障損耗的抵抗性。
如果來自相位誤差最后改變的標(biāo)記或值的時間的相位誤差的積分增加超過閾值“P”,則“鎖定”的信號用于減少PID控制器的相對增益,或如果相位誤差的積分已經(jīng)大于P達到一段時間周期“T”,則增加PID控制器的相對增益。在本發(fā)明的實施例中,如果相位誤差增加超過P=20×10-6秒2,則“鎖定的”減少4%的步長(即鎖定=鎖定-0.04),或如果超過周期T=10秒,同時相位誤差尚未大于P,則增加4%(鎖定=鎖定+(1-鎖定)×0.04)??商鎿Q地選擇用于增加、減少的其它值P或T。
F、頻率生成器圖6示出的頻率生成器680接收濾波的相位誤差(在該節(jié)點看見的時間和在主設(shè)備看見的時間之間的差),并設(shè)置節(jié)點的時間基準(zhǔn)的頻率以在將來最小化該值。由該節(jié)點生成的頻率是以下三項的和1)輸入和比例增益(比例路徑)的乘積;2)輸入和積分增益(積分路徑)的乘積的積分;以及3)輸入的改變速度和微分增益(微分路徑)的乘積。微分增益將抽樣一個或兩個值,如果輸入和輸入的改變速率的標(biāo)記相同(輸入變得較大),則抽樣一個值,如果所述標(biāo)記不同,則抽樣另一個值。
具體地說,頻率生成器680可響應(yīng)從而生成從時鐘的改變的速率。本發(fā)明實施例使用離散數(shù)字合成(DDS)技術(shù)來得到頻率控制的十分精細的分辨率。PID控制器用于改變生成器的行為以適合于從設(shè)備的校準(zhǔn)狀態(tài)。比例路徑響應(yīng)于相位誤差(從時間和主時間之間的差)的量。積分路徑響應(yīng)于相位誤差的積分。微分路徑響應(yīng)于相位誤差的改變。因此本發(fā)明提供一種使用本領(lǐng)域公知的DDS和PID技術(shù)根據(jù)校準(zhǔn)狀態(tài)組合PID路徑的增益的方法。
如上所述,PID路徑應(yīng)包括比例路徑、積分路徑和微分路徑。以下分別示出所述三種路徑及其信號和特性。
根據(jù)從設(shè)備校準(zhǔn)的狀態(tài)以不同方式組合所述三種路徑。如下所示,由通過上述鎖定檢測器655提供的“鎖定的”信號來控制所述組合。
在上表中,可改變固定值K1-K7以適用于對各種條件和應(yīng)用的響應(yīng)。頻率生成器680的輸出是所需頻率對由本地振蕩器生成的標(biāo)稱頻率的比率。在該實施例中,已經(jīng)選擇以下值L=來自鎖定檢測器的“鎖定的”信號K1=0.003K2=0.06K3=2×10-6K4=1×10-3K5=0.5K6=0.5K7=2以上值給出在從設(shè)備未鎖定的同時對相位和頻率中的改變的良好響應(yīng),并給出在鎖定(例如通過上述TLL)的同時對高斯噪聲的良好抵抗性。頻率生成器680可同時產(chǎn)生多個頻率,所有頻率由校準(zhǔn)算法控制,因此鎖定為主時間的改變速率。當(dāng)?shù)街髟O(shè)備的鏈路中斷時,頻率生成器680可基于其過去的歷史和本地振蕩器的穩(wěn)定性來維持頻率。這被稱為延期(holdover)模式(以下更加詳細地描述)。
G、時間生成器時間生成器690以各種格式生成從時間。如果允許,則可抽樣主時間的最近的抽樣,但其通常以由頻率生成器680控制的速率增加。如果從時間需要向前移動,則頻率生成器680將產(chǎn)生稍微較快的時鐘速率;如果從時間需要下降返回,則頻率生成器680將稍微變慢。
H、延期如果從時鐘變成與主設(shè)備分開,則其能夠?qū)⑵漭敵鏊俾?從時間的改變速率)保持在當(dāng)其被校準(zhǔn)時與其成十分嚴格的比例中。在本發(fā)明的實施例的上下文中,當(dāng)從設(shè)備不可再從主設(shè)備接收分組時,通常期望使用延期。其嘗試將從時間維持在邊界中,直到恢復(fù)路徑。這在較短時間上也是有用的,從而保護從時間不受臨時網(wǎng)絡(luò)干擾。
I、網(wǎng)絡(luò)路徑的改變當(dāng)通過在主設(shè)備和從設(shè)備之間的路徑改變時,新的路徑通常將具有不同的延遲曲線。延遲計算表明網(wǎng)絡(luò)已經(jīng)改變,并通過吸收單向延遲中的差別來進行補償,以將從時間維持為校準(zhǔn)到主設(shè)備。當(dāng)主時鐘出現(xiàn)故障并由替換的主時鐘來代替它時發(fā)生相同的事件。在前者的情況下(即改變網(wǎng)絡(luò)路徑),根據(jù)本發(fā)明的機制可進入延期模式(如上所述),同時計算新的延遲值。注意,這樣提供相位擴建特征,從而即使路徑延遲已經(jīng)改變,從時鐘也保留其速率和對主設(shè)備的校準(zhǔn)。在后者的情況下(即改變主設(shè)備),時間控制機制可從待機主時鐘接受分組,并在切換之前計算延遲。注意,作為源切換(既便某些路徑仍舊與以前相同)的形式的這種情況允許即使已經(jīng)采用新的主設(shè)備(和新的路徑)從設(shè)備也保留其速率和與實際時間的校準(zhǔn)(在新的主設(shè)備的精度中)。
應(yīng)用本發(fā)明的時間控制機制可應(yīng)用于許多領(lǐng)域。通常,可在需要時間的拷貝和期望的穩(wěn)定頻率、鎖定到遠程點的任何地方使用本發(fā)明的時間控制機制。例如,將其流量空載傳輸(back-haul)無線網(wǎng)絡(luò)控制器的無線基站可使用本發(fā)明的時間控制機制,從而提供(a)用于與無線網(wǎng)絡(luò)關(guān)聯(lián)的時戳活動的UTC;以及(b)用于驅(qū)動空中接口頻率的基準(zhǔn)時鐘??砂椽毩⒌姆绞絹硎褂帽景l(fā)明,或可在GPS設(shè)備出現(xiàn)故障或不可用的情況下結(jié)合作為可靠備份的本地GPS接收機來使用本發(fā)明。使用本發(fā)明的時間控制機制允許將鏈路轉(zhuǎn)換為諸如以太網(wǎng)的較新的傳輸技術(shù),或克服在傳統(tǒng)的丟失SONET或SDH信號的鏈路上產(chǎn)生的麻煩的相位瞬態(tài)。
另一示例可以是工業(yè)控制網(wǎng)絡(luò),其中,可更容易地關(guān)于共同發(fā)布的時間信號而不是關(guān)于彼此來控制各種機制或處理。
另一示例可以是在設(shè)備使用例如共享的以太網(wǎng)鏈路而不是專用鏈路的情況下定時信號的發(fā)布,從而簡化定時發(fā)布并減少成本。
可將最后的示例提供給在經(jīng)由將固有地支持傳統(tǒng)技術(shù)的鏈路連接到網(wǎng)絡(luò)的遠程設(shè)備中的定時信號的拷貝;例如,鏈接到大廈的以太網(wǎng)通常不能承載網(wǎng)絡(luò)定時信號,但通過在大廈中將時間的抽樣從網(wǎng)絡(luò)發(fā)送到本發(fā)明的時間控制機制,可容易地獲得可用于適合于對非實時網(wǎng)絡(luò)的實時業(yè)務(wù)的網(wǎng)絡(luò)時間的拷貝。
可由可使用在此描述的本發(fā)明的在IEEE 1588中定義的時間服務(wù)器主設(shè)備/從設(shè)備系統(tǒng)來滿足所有上述示例。
每一應(yīng)用中的性能可適用于應(yīng)用的需求,這樣可實現(xiàn)較好的性能/成本目標(biāo)。此外,上述應(yīng)用僅是示例的目的,因此,本發(fā)明不限于此。
因此,已經(jīng)描述了用于使用本發(fā)明的時間控制機制來控制時間的系統(tǒng)和方法的優(yōu)選實施例,本領(lǐng)域技術(shù)人員應(yīng)理解,已經(jīng)實現(xiàn)了所描述的系統(tǒng)和方法的某些優(yōu)點。還應(yīng)理解,可在本發(fā)明的范圍和精神中對其實施例進行各種修改、改變和替換。
權(quán)利要求
1.一種用于在通信網(wǎng)絡(luò)中校準(zhǔn)時間基準(zhǔn)的方法,包括在通信網(wǎng)絡(luò)的主設(shè)備處生成消息時戳,所述消息時戳至少包括主時鐘源的抽樣;在預(yù)定的消息時戳點將消息時戳插入到消息中;和將消息發(fā)送到通信網(wǎng)絡(luò)中的至少一個從設(shè)備;以及在通信網(wǎng)絡(luò)的從設(shè)備處接收消息;生成時鐘時戳,所述時鐘時戳與消息時戳點經(jīng)過由從時鐘源測量的預(yù)定時鐘時戳點的時間相對應(yīng);從消息時戳和時鐘時戳之間的比較中量化對傳輸路徑延遲的測量;根據(jù)對傳輸路徑延遲的先前測量來加權(quán)對傳輸路徑延遲的測量;和響應(yīng)于加權(quán)的測量值來調(diào)整從時鐘源。
2.如權(quán)利要求1所述的方法,其中,接收消息分組的步驟還包括在從設(shè)備的消息棧處接收消息,所述消息棧包括時鐘時戳點。
3.如權(quán)利要求1所述的方法,其中,生成時鐘時戳的步驟還包括檢測包含在消息中的消息時戳;鎖存與檢測消息時戳的時間對應(yīng)的從時鐘源的時間值;以及將所述時間值插入到消息中。
4.如權(quán)利要求3所述的方法,其中,插入時間值的步驟還包括插入時間值代替消息的循環(huán)冗余校驗(CRC)值。
5.如權(quán)利要求1所述的方法,其中,所述消息包括同步消息和延遲請求消息中的至少一個。
6.如權(quán)利要求1所述的方法,其中,生成消息時戳的步驟還包括鎖存與生成時戳的時間對應(yīng)的主時鐘源的時間值;以及在消息時戳點將時間值插入到消息中。
7.如權(quán)利要求1所述的方法,其中,量化對傳輸路徑延遲的測量的步驟還包括確定傳輸路徑延遲的固定延遲分量和可變延遲分量。
8.如權(quán)利要求1所述的方法,其中,加權(quán)對傳輸路徑延遲的測量的步驟還包括生成傳輸路徑延遲的加權(quán)平均。
9.如權(quán)利要求1所述的方法,其中,加權(quán)對傳輸路徑延遲的測量的步驟還包括對傳輸路徑延遲的測量進行濾波。
10.如權(quán)利要求1所述的方法,還包括將對傳輸路徑延遲的測量加載到根據(jù)延遲量排列的至少一個鏈表。
11.一種用于在通信網(wǎng)絡(luò)中將從時鐘時間基準(zhǔn)與主時鐘時間基準(zhǔn)相校準(zhǔn)的方法,包括經(jīng)由通信網(wǎng)絡(luò)接收由主設(shè)備發(fā)送的多個消息,每一消息包括消息時戳,所述消息時戳至少包括在預(yù)定的消息時戳點處插入到消息的主時鐘時間基準(zhǔn)的抽樣;對于每一接收的消息,生成與消息時戳點通過由從時鐘時間基準(zhǔn)測量的預(yù)定時鐘時戳點的時間對應(yīng)的時鐘時戳;計算與消息時戳和時鐘時戳之間的時間差對應(yīng)的消息延遲;并且從多個消息中根據(jù)對消息延遲的先前計算對計算的消息延遲加權(quán);以及響應(yīng)于加權(quán)的計算來調(diào)整從時鐘時間基準(zhǔn)。
12.如權(quán)利要求11所述的方法,其中,接收多個消息的步驟還包括在從設(shè)備的消息棧處接收消息,所述消息棧包括時鐘時戳點。
13.如權(quán)利要求11所述的方法,其中,生成時鐘時戳的步驟還包括檢測包含在消息中的消息時戳;鎖存與檢測消息時戳的時間對應(yīng)的從時鐘時間基準(zhǔn)的時間值;以及將時間值插入到消息。
14.如權(quán)利要求13所述的方法,其中,插入時間值的步驟還包括插入時間值代替消息的循環(huán)冗余校驗(CRC)值。
15.如權(quán)利要求11所述的方法,其中,所述消息包括同步消息和延遲請求消息中的至少一個。
16.如權(quán)利要求11所述的方法,其中,計算消息延遲的步驟還包括確定消息延遲的固定延遲分量和可變延遲分量。
17.如權(quán)利要求11所述的方法,其中,對計算的消息延遲加權(quán)的步驟還包括確定消息延遲的加權(quán)平均。
18.如權(quán)利要求17所述的方法,其中,對計算的消息延遲加權(quán)的步驟還包括對消息延遲計算進行濾波。
19.如權(quán)利要求18所述的方法,其中,對消息延遲計算進行濾波的步驟還包括根據(jù)以下表達式對每一消息延遲計算加權(quán)On=2πBAnfs(In-On-1)+On-1]]>其中,On=新的濾波器輸出,On-1=當(dāng)前濾波器輸出,In=新的輸入值(明顯轉(zhuǎn)發(fā)延遲,Tsfn-Tmfn),B=濾波器帶寬,fs=抽樣率,An=用于新的輸入值的可接受值。
20.如權(quán)利要求18所述的方法,其中,對消息延遲計算進行濾波的步驟還包括消除消息延遲計算中被確定為不可靠的消息延遲計算。
21.如權(quán)利要求18所述的方法,其中,對消息延遲計算進行濾波的步驟還包括將延遲計算加載到根據(jù)延遲的量排列的至少一個鏈表。
22.如權(quán)利要求21所述的方法,還包括確定用于所述至少一個鏈表的相對密度值。
23.如權(quán)利要求21所述的方法,還包括選擇性地丟棄來自所述至少一個鏈表的消息延遲計算中的一個。
24.如權(quán)利要求23所述的方法,其中,選擇性地丟棄多個消息延遲計算中的一個的步驟還包括丟棄所述多個消息延遲計算中的最老的一個。
25.如權(quán)利要求21所述的方法,還包括確定至少一個鏈表的每一個的密度,所述密度與包含在鏈表中的消息延遲計算的數(shù)量除以包含在鏈表中的消息延遲計算的范圍相對應(yīng)。
26.如權(quán)利要求25所述的方法,還包括確定多個鏈表之間的相對密度。
27.如權(quán)利要求11所述的方法,其中,調(diào)整從時鐘時間基準(zhǔn)的步驟還包括改變從時鐘時間基準(zhǔn)的頻率。
全文摘要
一種時間控制機制在網(wǎng)絡(luò)上接受時間的抽樣(真實或虛假),并對網(wǎng)絡(luò)的隨機延遲啟用動態(tài)補償,從而即使當(dāng)抽樣被隨機延遲時,也把由時間控制機制控制的從時鐘的輸出維持在相對于主時鐘的時間的所需邊界中。在一個實施例中,提供一種硬件加時戳方法和裝置。該硬件加時戳方法和裝置用于實現(xiàn)對接收的抽樣和發(fā)送的請求進行加時戳所需的精細分辨率。在另一實施例中,提供一種延遲改變平滑方法和裝置。該延遲改變平滑方法和裝置允許時間控制機制計算網(wǎng)絡(luò)延遲以把從時鐘維持在所需的時間邊界中。此外,提供一種不僅補償抽樣中的隨機延遲而且動態(tài)調(diào)整其操作以適于延遲路徑(通常是網(wǎng)絡(luò))的改變特性的方法和裝置。
文檔編號H04J3/06GK1934809SQ200580008813
公開日2007年3月21日 申請日期2005年2月9日 優(yōu)先權(quán)日2004年2月9日
發(fā)明者弗農(nóng)·米德爾頓, 大衛(wèi)·羅, 保羅·拉什頓, 大衛(wèi)·湯克斯 申請人:Sem技術(shù)公司