專利名稱:一種基于ptp協(xié)議的跨域時鐘同步方法及系統(tǒng)的制作方法
技術領域:
本申請涉及精確同步協(xié)議(Precision Time Protocol, PTP),尤其涉及一種基于PTP協(xié)議的跨域時鐘同步方法及系統(tǒng)。
背景技術:
PTP協(xié)議中,在同一域內(nèi)的交換機可以利用各自的時鐘信息實現(xiàn)時鐘同步,但交換機不能利用其他域的時鐘信息在本地設置域內(nèi)進行時鐘同步。在PTP協(xié)議中,域由協(xié)議定義的一個或多個相互通信的交換機組成。域定義了 PTP消息通信、狀態(tài)、數(shù)據(jù)集、以及時標的范圍。交換機可以加入多個域,但一般來說不同域中的協(xié)議運行和時標相互獨立。由于不同域的設備互聯(lián)使得域之間也會相互接收報文,一般來說,不同域的ID可以設置,對于交換機所在的本地設置域而言,會存在該域的默認域ID。在交換機接收到默認域的報文時會進行處理,而接收到其他域的報文則丟棄。由于交換機不能利用其他域中的時鐘信息在本地設置域中進行時鐘同步,因此如果一旦本地設置域中的主時鐘信息丟失就會造成本地設置域中的交換機之間無法進行時鐘同步,并且可能導致系統(tǒng)癱瘓,因此需要尋找一種避免跨域無法進行時鐘同步的方案。
發(fā)明內(nèi)容
本發(fā)明提供了一種基于PTP協(xié)議的跨域時鐘同步方法及系統(tǒng),其目的在于,解決域中的時鐘信息丟失,如何利用其他域中的時鐘信息進行同步的問題。本發(fā)明提供了一種基于PTP協(xié)議的跨域時鐘同步方法,該方法包括交換機按照設定的周期進行時鐘同步時,判斷本地設置域的主時鐘是否丟失;當確定所述本地設置域的主時鐘丟失時,判斷自身是否與其他域相連接;當確定自身與所述其他域相連時,在自身保存的所述其他域中選擇一個域;根據(jù)所選擇的域的時鐘信息同步本地時鐘,并將同步后的本地時鐘信息發(fā)送。優(yōu)選地,所述判斷所述本地設置域的主時鐘是否丟失包括當所述設定的時間周期內(nèi)未接收到所述主時鐘發(fā)送的時鐘同步報文時,確定所述本地設置域的主時鐘丟失;或根據(jù)接收到的主時鐘同步報文包含的優(yōu)先級信息,當所述主時鐘同步報文所包含的優(yōu)先級信息大于設定的閾值時,確定所述本地設置域的主時鐘丟失。優(yōu)選地,所述在自身保存的所述其他域中選擇一個域包括在與自身相連的所述其他域中,根據(jù)每個域的優(yōu)先級信息,選擇一個優(yōu)先級最高的域。優(yōu)選地,所述選擇一個優(yōu)先級最高的域包括所述交換機根據(jù)與自身連接的所述其他域?qū)臅r鐘信息,通過最佳時鐘選擇算法選擇一個最佳時鐘,并將所述最佳時鐘對應的域的優(yōu)先級設置為最高,其中所述時鐘信息包括優(yōu)先級I信息、端口信息、精確等級信息、時鐘ID信息、域名ID信息、以及優(yōu)先級2信息。優(yōu)選地,所述根據(jù)所選擇的域的時鐘信息同步本地時鐘包括所述交換機通過與所述優(yōu)先級最高的域進行交互,獲得所述優(yōu)先級最高的域到自身的鏈路延時,根據(jù)所述優(yōu)先級最高的域的時鐘信息及所述鏈路延時,對本地時鐘進行同步。本發(fā)明提供了一種基于PTP協(xié)議的跨域時鐘同步系統(tǒng),該系統(tǒng)包括第一判斷模塊,用于按照設定的周期進行時鐘同步時,判斷本地設置域的主時鐘是否丟失;第二判斷模塊,用于當確定所述本地設置域的主時鐘丟失時,判斷所述系統(tǒng)是否與其他域相連接;域選擇模塊,用于當確定置 域的主時鐘丟失時,判斷所述系統(tǒng)與所述其他域相連時,在自身保存的所述其他域中選擇一個域;時鐘同步模塊,用于根據(jù)所選擇的域的時鐘信息同步本地時鐘,并將同步后的本地時鐘信息發(fā)送。優(yōu)選地,所述第一判斷模塊,用于當所述設定的時間周期內(nèi)未接收到所述主時鐘發(fā)送的時鐘同步報文時,確定所述本地設置域的主時鐘丟失;或根據(jù)接收到的主時鐘同步報文包含的優(yōu)先級信息,當所述主時鐘同步報文所包含的優(yōu)先級信息大于設定的閾值時,確定所述本地設置域的主時鐘丟失。優(yōu)選地,所述域選擇模塊,用于在與所述系統(tǒng)相連的所述其他域中,根據(jù)每個域的優(yōu)先級信息,選擇一個優(yōu)先級最高的域。優(yōu)選地,所述域選擇模塊,用于根據(jù)與所述系統(tǒng)連接的所述其他域?qū)臅r鐘信息,通過最佳時鐘選擇算法選擇一個最佳時鐘,并將所述最佳時鐘對應的域的優(yōu)先級設置為最高,其中所述時鐘信息包括優(yōu)先級I信息、端口信息、精確等級信息、時鐘ID信息、域名ID信息、以及優(yōu)先級2信息。優(yōu)選地,所述時鐘同步模塊,用于通過與所述優(yōu)先級最高的域進行交互,獲得所述優(yōu)先級最高的域到自身的鏈路延時,根據(jù)所述優(yōu)先級最高的域的時鐘信息及所述鏈路延時,對本地時鐘進行同步。本發(fā)明通過存儲其他域的時鐘信息,并在本地設置域的主時鐘丟失時,通過與其他域的的時鐘信息來修改本地時鐘信息,從而實現(xiàn)本地設置域的時鐘同步,保證網(wǎng)絡穩(wěn)定運行。
本發(fā)明的這些和其他特征、方面和優(yōu)勢將參考具體實施方式
的附圖進行描述,其目的在于描述具體實施方式
而不是限制本發(fā)明。圖I是域ID和端口 ID對應關系不意圖;圖2是一個交換機與廣域網(wǎng)相連接的結構示意;圖3是兩個交換機與廣域網(wǎng)相連接的結構示意;圖4是本發(fā)明提供的基于PTP協(xié)議的跨域時鐘同步方法流程圖;圖5是本發(fā)明提供的基于PTP協(xié)議的跨域時鐘同步系統(tǒng)示意圖。
具體實施例方式本發(fā)明提供了一種基于PTP協(xié)議的跨域時鐘同步方法,該方法包括交換機按照設定的周期進行時鐘同步時,判斷本地設置域的主時鐘是否丟失;當確定所述本地設置域的主時鐘丟失時,判斷自身是否與其他域相連接;當確定自身與所述其他域相連時,在自身保存的所述其他域中選擇一個域;根據(jù)所選擇的域的時鐘信息同步本地時鐘,并將同步后的本地時鐘信息發(fā)送。
藉此,可以在本地設置域的主時鐘丟失的情況下,利用其他域的時鐘信息來對本地設置域進行時鐘同步,避免系統(tǒng)因無法同步而導致癱瘓。具體而言,本地設置域的主時鐘一般是指網(wǎng)絡中能夠提供精確時鐘信息的設備,例如GPS設備或稱為GPS主時鐘。在GPS主時鐘丟失以后,例如無法在預定時間內(nèi)收到本地設置域的主時鐘發(fā)送的報文,或者所收到的主時鐘報文中包含的優(yōu)先級信息大于預設的值(例如128 ;優(yōu)先級信息的值越大,其優(yōu)先級越低),為了保證系統(tǒng)正常運行,可以利用與交換機直接相連接的其他域中的時鐘信息同步本地設置域的時鐘信息。在本地設置域的主時鐘丟失以后,交換機可以自身保存的其他域中的選擇一個域(如果存在的話)的時鐘信息來更新本地時鐘并下發(fā)到本地設置域的其他交換機,從而在本地設置域主時鐘丟失的情況下,維持網(wǎng)絡的正常運行。優(yōu)選地,在自身保存的所述 其他域中選擇一個域包括在與自身相連的所述其他域中,根據(jù)每個域的優(yōu)先級信息,選擇一個優(yōu)先級最高的域。最佳時鐘選擇算法是PTP協(xié)議中選擇時鐘的主要算法,其主要是利用報文中的信息來判定哪個時鐘最優(yōu),例如報文中的參數(shù)優(yōu)先級I信息(priorityI)、時鐘等級信息(class)、精確等級信息(accuracy)、時鐘品質(zhì)信息(offsetScaledLogVariance)、優(yōu)先級 2 信息(priority2)、時鐘 ID 信息(clockID)、端口信息(portID)、域名ID信息(domainID),其具體的算法如下先比較參數(shù)priority I,參數(shù)priority I值小的域選為選擇最佳域;在參數(shù)priorityl相同的情況下,比較參數(shù)class,參數(shù)class值小的域選為選擇最佳域;如果以上兩個參數(shù)都相同,貝U比較參數(shù)accuracy, accuracy值小的域選為選擇最佳域;如果以上三個參數(shù)相同,則比較offsetScaledLogVariance,offsetScaledLogVariance值小的域為最佳域;如果還無法確定最佳域,那么采用類似的方法比較參數(shù)priority2、clockID、portID、domainID。需要說明的是,利用最佳時鐘算法可以選擇出其他域中具有最優(yōu)主時鐘的一個域,但本領域技術人員應當理解可以利用其他算法來選擇一個域,甚至可以隨機選擇一個域并根據(jù)該域的時鐘信息來與其他域連接的交換機的本地時鐘信息,以實現(xiàn)時鐘同步。優(yōu)選地,所述根據(jù)所選擇的域的時鐘信息同步本地時鐘包括所述交換機通過與所述優(yōu)先級最高的域進行交互,獲得所述優(yōu)先級最高的域到自身的鏈路延時,根據(jù)所述優(yōu)先級最高的域的時鐘信息及所述鏈路延時,對本地時鐘進行同步。在得到鏈路延遲時間之后,可以用鏈路延遲時間與其他域發(fā)送的時鐘信息來更新本地時鐘,這樣會使更新后的本地時鐘更準確。優(yōu)選地,該方法還包括所述本地設置域的主時鐘恢復后,所述與其他域連接的交換機根據(jù)本地設置域的主時鐘更新本地時鐘信息。由于本地設置域的主時鐘恢復了,所以優(yōu)先使用本地設置域的主時鐘來更新本地時鐘,而與所選擇的最佳域連接的可以是睡眠狀態(tài),使得其他域的報文中的時鐘信息被接收和存儲,以方便在本地設置域的主時鐘丟失時,及時地利用所存儲的時鐘信息來對本地設置域進行同步。所述本地設置域的主時鐘從本地設置域發(fā)送的報文中得到,所述其他域的時鐘信息從其他域發(fā)送的報文中得到。
圖I顯示了一種域和端口的對應關系,對不同域ID的端口 ID分別建立對應關系列表,從一個端口 ID對應的端口接收到一個其他域發(fā)送的報文后,該報文中的時鐘信息就會被存儲到與該端口 ID對應的存儲空間中。這些對應關系主要是用來確定報文是哪個域發(fā)送的,以及從哪個端口接收的,所存儲的時鐘信息主要是用來對本地設置域進行同步。圖2顯示了一個環(huán)狀網(wǎng)和廣域網(wǎng)的連接關系示意圖,在該圖中,環(huán)狀網(wǎng)由交換機I至交換機6和終端設備組成。交換機I還與廣域網(wǎng)連接和GPS主時鐘連接,因此,在正常工作的情況下,交換機I可以收到GPS發(fā)送的時鐘信息以及廣域網(wǎng)發(fā)送的時鐘信息(時鐘信息可以從報文中得到)。如果GPS的主時鐘無法被交換機I接收(例如GPS主時鐘關閉了 PTP功能,或者交換機I與GPS主時鐘之間的鏈路斷開),或者接收到的主時鐘所包含的優(yōu)先級等級低于預設的值,那么本發(fā)明所提供的方法可以使得交換機I利用廣域網(wǎng)(其他域)的時鐘來對本地設置域(即由交換機、GPS時鐘以及終端設備構成的網(wǎng)絡)進行時鐘同步,從而避免系統(tǒng)癱瘓。但一個本地設置域中可能存在多個交換機與其他域直接連接,如圖3所示。其 中交換機I和交換機5均與廣域網(wǎng)直接連接,在本地設置域的主時鐘丟失后,交換機I和交換機5均利用本發(fā)明提供的上述的方法選擇出一個域的主時鐘來同步其本地時鐘信息,并將同步后的本地時鐘信息發(fā)送,此時由于交換機I和交換機5均發(fā)送了同步報文,因此需要在本地設置域中利用最佳時鐘選擇算法選擇出最優(yōu)的主時鐘,例如交換機I的時鐘最佳,此后在本地設置域的時鐘沒有恢復的情況下,由交換機I發(fā)送同步報文,而交換機5不再發(fā)送同步報文。圖4示出了本發(fā)明提供的基于PTP協(xié)議的跨域時鐘同步方法流程圖,具體包括交換機按照設定的周期進行時鐘同步時,判斷本地設置域的主時鐘是否丟失;當確定所述本地設置域的主時鐘丟失時,判斷自身是否與其他域相連接;當確定自身與所述其他域相連時,在自身保存的所述其他域中選擇一個域;根據(jù)所選擇的域的時鐘信息同步本地時鐘,并將同步后的本地時鐘信息發(fā)送。藉此可以在本地設置域主時鐘丟失的情況下,利用其他域的時鐘信息來同步本地設置域,避免系統(tǒng)癱瘓。圖5顯示了本發(fā)明提供的交換機時鐘同步系統(tǒng)示意圖,其可以包括第一判斷模塊,用于按照設定的周期進行時鐘同步時,判斷本地設置域的主時鐘是否丟失;第二判斷模塊,用于當確定所述本地設置域的主時鐘丟失時,判斷所述系統(tǒng)是否與其他域相連接;域選擇模塊,用于當確定置域的主時鐘丟失時,判斷所述系統(tǒng)與所述其他域相連時,在自身保存的所述其他域中選擇一個域;時鐘同步模塊,用于根據(jù)所選擇的域的時鐘信息同步本地時鐘,并將同步后的本地時鐘信息發(fā)送。優(yōu)選地,所述第一判斷模塊在所述設定的時間周期內(nèi)未接收到所述主時鐘發(fā)送的時鐘同步報文時,確定所述本地設置域的主時鐘丟失;或根據(jù)接收到的主時鐘同步報文包含的優(yōu)先級信息,在所述主時鐘同步報文所包含的優(yōu)先級信息大于設定的閾值時,確定所述本地設置域的主時鐘丟失。優(yōu)選地,所述域選擇模塊在與所述系統(tǒng)相連的所述其他域中,根據(jù)每個域的優(yōu)先級信息,選擇一個優(yōu)先級最高的域。優(yōu)選地,所述域選擇模塊根據(jù)與所述系統(tǒng)連接的所述其他域?qū)臅r鐘信息,通過最佳時鐘選擇算法選擇一個最佳時鐘,并將所述最佳時鐘對應的域的優(yōu)先級設置為最高,其中所述時鐘信息包括優(yōu)先級I信息、端口信息、精確等級信息、時鐘ID信息、域名ID信息、以及優(yōu)先級2信息。需要說明的是,利用最佳時鐘算法可以選擇出其他域中具有最優(yōu)主時鐘的一個域,但本領域技術人員應當理解可以利用其他算法來選擇一個域,甚至可以隨機選擇一個域并根據(jù)該域的時鐘信息來與其他域連接的交換機的本地時鐘信息,以實現(xiàn)時鐘同步。優(yōu)選地, 所述時鐘同步模塊通過與所述優(yōu)先級最高的域進行交互,獲得所述優(yōu)先級最高的域到自身的鏈路延時,根據(jù)所述優(yōu)先級最高的域的時鐘信息及所述鏈路延時,對本地時鐘進行同步。藉此可以得到鏈路延遲,并在更新本地時鐘時考慮該延遲,從而可以得到更精確的用于同步的時鐘。以上實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質(zhì)脫離本發(fā)明各實施例技術方案的范圍。
權利要求
1.一種基于PTP協(xié)議的跨域時鐘同步方法,其特征在于,該方法包括 交換機按照設定的周期進行時鐘同步時,判斷本地設置域的主時鐘是否丟失; 當確定所述本地設置域的主時鐘丟失時,判斷自身是否與其他域相連接; 當確定自身與所述其他域相連時,在自身保存的所述其他域中選擇一個域; 根據(jù)所選擇的域的時鐘信息同步本地時鐘,并將同步后的本地時鐘信息發(fā)送。
2.根據(jù)權利要求I所述的方法,其特征在于,所述判斷所述本地設置域的主時鐘是否丟失包括 當所述設定的時間周期內(nèi)未接收到所述主時鐘發(fā)送的時鐘同步報文時,確定所述本地設置域的主時鐘丟失;或 根據(jù)接收到的主時鐘同步報文包含的優(yōu)先級信息,當所述主時鐘同步報文所包含的優(yōu)先級信息大于設定的閾值時,確定所述本地設置域的主時鐘丟失。
3.根據(jù)權利要求I所述的方法,其特征在于,所述在自身保存的所述其他域中選擇一個域包括 在與自身相連的所述其他域中,根據(jù)每個域的優(yōu)先級信息,選擇一個優(yōu)先級最高的域。
4.根據(jù)權利要求3所述的方法,其特征在于,所述選擇一個優(yōu)先級最高的域包括 所述交換機根據(jù)與自身連接的所述其他域?qū)臅r鐘信息,通過最佳時鐘選擇算法選擇一個最佳時鐘,并將所述最佳時鐘對應的域的優(yōu)先級設置為最高,其中所述時鐘信息包括優(yōu)先級I信息、端口信息、精確等級信息、時鐘ID信息、域名ID信息、以及優(yōu)先級2信肩、O
5.根據(jù)權利要求1-4中的任一權利要求所述的方法,其特征在于,所述根據(jù)所選擇的域的時鐘信息同步本地時鐘包括 所述交換機通過與所述優(yōu)先級最高的域進行交互,獲得所述優(yōu)先級最高的域到自身的鏈路延時,根據(jù)所述優(yōu)先級最高的域的時鐘信息及所述鏈路延時,對本地時鐘進行同步。
6.一種基于PTP協(xié)議的跨域時鐘同步系統(tǒng),其特征在于,該系統(tǒng)包括 第一判斷模塊,用于按照設定的周期進行時鐘同步時,判斷本地設置域的主時鐘是否丟失; 第二判斷模塊,用于當確定所述本地設置域的主時鐘丟失時,判斷所述系統(tǒng)是否與其他域相連接; 域選擇模塊,用于當確定置域的主時鐘丟失時,判斷所述系統(tǒng)與所述其他域相連時,在自身保存的所述其他域中選擇一個域; 時鐘同步模塊,用于根據(jù)所選擇的域的時鐘信息同步本地時鐘,并將同步后的本地時鐘信息發(fā)送。
7.根據(jù)權利要求6所述的系統(tǒng),其特征在于,所述第一判斷模塊,用于當所述設定的時間周期內(nèi)未接收到所述主時鐘發(fā)送的時鐘同步報文時,確定所述本地設置域的主時鐘丟失;或根據(jù)接收到的主時鐘同步報文包含的優(yōu)先級信息,當所述主時鐘同步報文所包含的優(yōu)先級信息大于設定的閾值時,確定所述本地設置域的主時鐘丟失。
8.根據(jù)權利要求6所述的系統(tǒng),其特征在于,所述域選擇模塊,用于在與所述系統(tǒng)相連的所述其他域中,根據(jù)每個域的優(yōu)先級信息,選擇一個優(yōu)先級最高的域。
9.根據(jù)權利要求8所述的系統(tǒng),其特征在于,所述域選擇模塊,用于根據(jù)與所述系統(tǒng)連接的所述其他域?qū)臅r鐘信息,通過最佳時鐘選擇算法選擇一個最佳時鐘,并將所述最佳時鐘對應的域的優(yōu)先級設置為最高,其中所述時鐘信息包括優(yōu)先級I信息、端口信息、精確等級信息、時鐘ID信息、域名ID信息、以及優(yōu)先級2信息。
10.根據(jù)權利要求6-9中的任一權利要求所述的系統(tǒng),其特征在于,所述時鐘同步模塊,用于通過與所述優(yōu)先級最高的域進行交互,獲得所述優(yōu)先級最高的域到自身的鏈路延時,根據(jù)所述優(yōu)先級最高的域的時鐘信息及所述鏈路延時,對本地時鐘進行同步。
全文摘要
本發(fā)明涉及一種基于PTP協(xié)議的跨域時鐘同步方法及系統(tǒng)。該方法包括交換機按照設定的周期進行時鐘同步時,判斷本地設置域的主時鐘是否丟失;當確定所述本地設置域的主時鐘丟失時,判斷自身是否與其他域相連接;當確定自身與所述其他域相連時,在自身保存的所述其他域中選擇一個域;根據(jù)所選擇的域的時鐘信息同步本地時鐘,并將同步后的本地時鐘信息發(fā)送。本發(fā)明通過存儲其他域的時鐘信息,并在本地設置域的主時鐘丟失時,通過選擇其他域的時鐘信息來修改本地時鐘信息,從而實現(xiàn)本地設置域的時鐘同步,保證網(wǎng)絡穩(wěn)定運行。
文檔編號H04J3/06GK102904662SQ201210374959
公開日2013年1月30日 申請日期2012年9月29日 優(yōu)先權日2012年9月29日
發(fā)明者肖智中 申請人:北京東土科技股份有限公司