專(zhuān)利名稱(chēng):一種自適應(yīng)時(shí)鐘同步系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,特別是涉及ー種自適應(yīng)時(shí)鐘同步系統(tǒng)。
背景技術(shù):
隨著時(shí)代的發(fā)展和社會(huì)的進(jìn)步,以及計(jì)算機(jī)和通信網(wǎng)絡(luò)的普及,信息技術(shù)和網(wǎng)絡(luò)技術(shù)也越來(lái)越廣泛的應(yīng)用到各個(gè)領(lǐng)域,其中許多應(yīng)用都需要高精度、高可靠性的時(shí)間同歩。然而,在實(shí)際應(yīng)用中,計(jì)算機(jī)的時(shí)鐘工作太不穩(wěn)定,容易受到溫度、電源等外界環(huán)境的影響。計(jì)算機(jī)時(shí)鐘由軟件時(shí)鐘和硬件時(shí)鐘組成,由于時(shí)鐘本身物理性能和外界因素影響,兩種時(shí)鐘的守時(shí)性能都無(wú)法滿足需求。但,隨著計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,網(wǎng)絡(luò)互連系統(tǒng)上的時(shí)間敏感性應(yīng)用也越來(lái)越多;例如電話計(jì)費(fèi)、航海定位、分布式數(shù)據(jù)庫(kù)處理、電子商務(wù)、網(wǎng) 絡(luò)傳感器、エ業(yè)控制系統(tǒng)等多方面,涉及各個(gè)領(lǐng)域的應(yīng)用,都與網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)之間時(shí)間同步的精確度密切相關(guān)。但是由于網(wǎng)絡(luò)中各個(gè)計(jì)算機(jī)都在其固有的晶振頻率下進(jìn)行計(jì)吋,即使初試時(shí)間設(shè)置相同,由于各晶振的特性不同,也會(huì)隨著時(shí)間的推移而相互之間失去同歩。因此,對(duì)于網(wǎng)絡(luò)上的許多應(yīng)用來(lái)說(shuō),將網(wǎng)絡(luò)中各個(gè)計(jì)算機(jī)的時(shí)間同步到ー個(gè)統(tǒng)ー的標(biāo)準(zhǔn)是至關(guān)重要的。網(wǎng)絡(luò)時(shí)間協(xié)議(NTP, Network Time Protocol)的出現(xiàn)能夠很好的解決這一問(wèn)題。NTP能調(diào)整時(shí)間抖動(dòng)率,建立ー個(gè)即時(shí)緩和、調(diào)整時(shí)間變化,并用一群受托服務(wù)器提供準(zhǔn)確、穩(wěn)定時(shí)間的時(shí)間管理。目前,對(duì)于基于NTP協(xié)議的時(shí)鐘同步的研究已有不少,但大部分是理論上的研究探索與改進(jìn),真正應(yīng)用于實(shí)踐,并且經(jīng)歷過(guò)實(shí)踐檢驗(yàn)的技術(shù)產(chǎn)品并不多。市場(chǎng)上已經(jīng)出現(xiàn)的一些時(shí)鐘同步產(chǎn)品也大多數(shù)是應(yīng)用于局域網(wǎng)這些小規(guī)模的網(wǎng)絡(luò)環(huán)境之下,這些產(chǎn)品的開(kāi)發(fā)技術(shù)各異,時(shí)間同步精度不盡相同。目前適合大規(guī)模分布式網(wǎng)絡(luò)應(yīng)用的時(shí)鐘同步技術(shù)產(chǎn)品欠缺,然而隨著企事業(yè)單位網(wǎng)絡(luò)規(guī)模的擴(kuò)大,隨著網(wǎng)絡(luò)技術(shù)的發(fā)展及高速寬帶的出現(xiàn),對(duì)于適應(yīng)于大規(guī)模網(wǎng)絡(luò)時(shí)鐘同步的技術(shù)產(chǎn)品需求日益増加。同時(shí),隨著網(wǎng)絡(luò)安全事件的頻繁發(fā)生,網(wǎng)絡(luò)系統(tǒng)的安全性問(wèn)題越來(lái)越受到人們的關(guān)注,如何確保時(shí)鐘同步系統(tǒng)的安全性也是目前需要解決的問(wèn)題。目前的時(shí)鐘同步產(chǎn)品普遍存在精度較低、健壯性較差、可拓展性不足、自動(dòng)化程度較低、安全性不足、可應(yīng)用網(wǎng)絡(luò)規(guī)模小等缺陷。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題是提出了一種基于NTP協(xié)議的適用于大規(guī)模分布式網(wǎng)絡(luò)并且具有一定自適應(yīng)性能力的時(shí)鐘同步系統(tǒng),并且該系統(tǒng)在封閉的網(wǎng)絡(luò)環(huán)境下開(kāi)發(fā)運(yùn)行,具有很好的安全性,因此有效的解決了以上難題,實(shí)現(xiàn)了對(duì)于大規(guī)模分布式網(wǎng)絡(luò)應(yīng)用的高精度、高健壯性、高自動(dòng)化、高安全性的時(shí)鐘同歩。為解決上述技術(shù)問(wèn)題,一方面,本發(fā)明提供一種自適應(yīng)時(shí)鐘同步系統(tǒng),所述系統(tǒng)包括
主服務(wù)層,包括一臺(tái)或多臺(tái)主時(shí)間服務(wù)器,其中,主時(shí)間服務(wù)器外接原子鐘;ニ級(jí)服務(wù)層,包括多臺(tái)ニ級(jí)時(shí)間服務(wù)器,一部分ニ級(jí)時(shí)間服務(wù)器與主時(shí)間服務(wù)器進(jìn)行時(shí)間同步,另一部分ニ級(jí)時(shí)間服務(wù)器相互之間進(jìn)行時(shí)間同歩;客戶層,包括若干終端,終端向ニ級(jí)時(shí)間服務(wù)器發(fā)出時(shí)間同步請(qǐng)求,進(jìn)行時(shí)間同
止/J/ O進(jìn)ー步,主時(shí)間服務(wù)器、ニ級(jí)時(shí)間服務(wù)器和終端上設(shè)置有時(shí)間控制模塊,用于獲取的UTC時(shí)間,對(duì)各終端進(jìn)行時(shí)間同步;負(fù)責(zé)在ニ級(jí)時(shí)間服務(wù)器和終端收發(fā)時(shí)間信號(hào)請(qǐng)求和應(yīng)答,完成數(shù)據(jù)包的傳送功能,以及根據(jù)獲取的標(biāo)準(zhǔn)時(shí)間來(lái)修改本機(jī)硬件時(shí)鐘。進(jìn)ー步,主時(shí)間服務(wù)器、ニ級(jí)時(shí)間服務(wù)器和終端上設(shè)置有時(shí)區(qū)控制模塊,用于在ニ級(jí)時(shí)間服務(wù)器和客戶端收發(fā)同步時(shí)區(qū)信息請(qǐng)求和應(yīng)答,將主時(shí)間服務(wù)器的時(shí)區(qū)信息發(fā)送給ニ級(jí)時(shí)間服務(wù)器及所有終端,使其提取時(shí)區(qū)信息,從而修改本機(jī)的時(shí)區(qū)配置。 進(jìn)ー步,主時(shí)間服務(wù)器、ニ級(jí)時(shí)間服務(wù)器和終端上設(shè)置有自動(dòng)配置模塊,用于當(dāng)基準(zhǔn)時(shí)間源發(fā)生故障吋,自動(dòng)尋找時(shí)間源,進(jìn)行時(shí)間同歩。進(jìn)ー步,主時(shí)間服務(wù)器和ニ級(jí)時(shí)間服務(wù)器上設(shè)置有偏差監(jiān)測(cè)服務(wù)器子模塊,終端上設(shè)置有偏差監(jiān)測(cè)終端子模塊;其中,偏差監(jiān)測(cè)服務(wù)器子模塊用于根據(jù)定期監(jiān)測(cè)或臨時(shí)監(jiān)測(cè)的要求,檢測(cè)ー個(gè)或多個(gè)終端同步偏差結(jié)果,并將結(jié)果寫(xiě)入數(shù)據(jù)庫(kù)中,以跟蹤和記錄時(shí)鐘同步子系統(tǒng)運(yùn)行狀況;偏差監(jiān)測(cè)終端子模塊接受偏差監(jiān)測(cè)服務(wù)器子模塊發(fā)來(lái)的請(qǐng)求,將當(dāng)前終端的時(shí)鐘參數(shù)上傳到偏差監(jiān)測(cè)服務(wù)器模塊。進(jìn)ー步,主時(shí)間服務(wù)器還設(shè)置有報(bào)警模塊,用于當(dāng)終端時(shí)間與基準(zhǔn)時(shí)間的偏差大于預(yù)先設(shè)定時(shí)間偏差閥值時(shí),報(bào)警,并生成報(bào)警記錄,以備查詢。本發(fā)明有益效果如下本發(fā)明能夠在基準(zhǔn)時(shí)間源發(fā)生故障吋,自動(dòng)尋找合適的時(shí)間源,以獲取同步服務(wù),使系統(tǒng)自動(dòng)完成同步網(wǎng)的配置,使得時(shí)間同步網(wǎng)擁有足夠的穩(wěn)定性和健壯性,自適應(yīng)能力強(qiáng)。同時(shí),本發(fā)明所涉及的網(wǎng)絡(luò)及設(shè)備屬于封閉式開(kāi)發(fā),能夠較好的防止外界的干擾和攻擊,具有較好的安全性。本發(fā)明使用了分層級(jí)的體系結(jié)構(gòu),層次分明,布局清晰,具有較強(qiáng)的可擴(kuò)展性,適應(yīng)業(yè)務(wù)的增長(zhǎng)。
圖I是本發(fā)明實(shí)施例中一種自適應(yīng)時(shí)鐘同步系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式本發(fā)明提供了一種自適應(yīng)時(shí)鐘同步系統(tǒng),以下結(jié)合附圖以及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)ー步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不限定本發(fā)明。本發(fā)明實(shí)施例涉及ー種自適應(yīng)時(shí)鐘同步系統(tǒng),該系統(tǒng)總體結(jié)構(gòu)上采用三層樹(shù)狀結(jié)構(gòu)第一層為主服務(wù)層,包括一臺(tái)或多臺(tái)主時(shí)間服務(wù)器,其中,主時(shí)間服務(wù)器外接原子鐘,其主要任務(wù)是提供參考時(shí)鐘信號(hào),處理ニ級(jí)時(shí)間服務(wù)器的時(shí)間同步請(qǐng)求,控制終端設(shè)備的時(shí)區(qū)同步,進(jìn)行時(shí)間偏差監(jiān)測(cè),匯集監(jiān)測(cè)結(jié)果,其中以原子鐘和主時(shí)間服務(wù)器為核心。第二層為ニ級(jí)服務(wù)層,包括多臺(tái)ニ級(jí)時(shí)間服務(wù)器,其主要任務(wù)是與主時(shí)間服務(wù)器進(jìn)行時(shí)間同步服務(wù),為客戶層的終端設(shè)備提供時(shí)間同步服務(wù),其中以ニ級(jí)時(shí)間服務(wù)器為核心。第三層為客戶層,終端設(shè)備向ニ級(jí)時(shí)間服務(wù)器發(fā)出時(shí)間同步請(qǐng)求,是被服務(wù)的對(duì)象。主服務(wù)層外接參考時(shí)鐘信號(hào)——原子鐘,處理ニ級(jí)時(shí)間服務(wù)器的時(shí)間同步請(qǐng)求,控制終端設(shè)備的時(shí)區(qū)同步,進(jìn)行時(shí)間偏差監(jiān)測(cè)結(jié)果的匯總,及根據(jù)閾值報(bào)警。主服務(wù)層包含的模塊有原子鐘接□模塊、時(shí)間控制模塊、時(shí)區(qū)控制模塊、監(jiān)測(cè)控制模塊、數(shù)據(jù)庫(kù)模塊、數(shù)據(jù)庫(kù)日志訪問(wèn)接ロ模塊、報(bào)警模塊和監(jiān)測(cè)界面模塊。主服務(wù)層一般部署在多個(gè)主中心位置,為規(guī)避共模故障,如斷電、地震等,主時(shí)間服務(wù)器和原子鐘放置在不同的地理位置。圖I中,將3臺(tái)主時(shí)間服務(wù)器放置在不同位置的三個(gè)中心。同時(shí),為了保證時(shí)間的精度,每臺(tái)主時(shí)間服務(wù)器可外接原子鐘。ニ級(jí)服務(wù)層,包干若干ニ級(jí)時(shí)間服務(wù)器,其中一些與主時(shí)間服務(wù)器進(jìn)行時(shí)間同歩,ー些相互之間同步,為終端設(shè)備提供時(shí)間同步服務(wù)。在終端失去時(shí)間同步時(shí),會(huì)自動(dòng)進(jìn)行時(shí) 間同步,為終端提供不間斷的時(shí)間同步服務(wù)。ニ級(jí)時(shí)間服務(wù)器上含有自動(dòng)配置模塊,當(dāng)本節(jié)點(diǎn)(ニ級(jí)時(shí)間服務(wù)器)失去時(shí)間源時(shí)啟動(dòng)該模塊,使得設(shè)備構(gòu)造請(qǐng)求包,在網(wǎng)內(nèi)廣播發(fā)送,尋找符合條件的時(shí)間源,在沒(méi)有找到時(shí)間源之前,會(huì)降低頻率調(diào)用本模塊發(fā)送請(qǐng)求包,直到找到合適的時(shí)間源為止。某節(jié)點(diǎn)在發(fā)送了時(shí)間源請(qǐng)求包之后,就等待應(yīng)答包的到來(lái)。如果順利的話,通常會(huì)收到多個(gè)來(lái)自不同時(shí)間源的應(yīng)答包;例如,來(lái)自主時(shí)間服務(wù)器發(fā)送的,也可能是其它ニ級(jí)時(shí)間服務(wù)器發(fā)送的。NTP協(xié)議要求每個(gè)節(jié)點(diǎn)至少應(yīng)具有3個(gè)時(shí)間源,以保證時(shí)間同步的穩(wěn)定性。因此,在收到應(yīng)答之后,本節(jié)點(diǎn)就要從中選擇數(shù)個(gè)節(jié)點(diǎn)來(lái)作為自己的時(shí)間源。選擇時(shí)間源應(yīng)遵循以下兩個(gè)原則(I)所選擇的時(shí)間源應(yīng)該穩(wěn)定、可靠;(2)時(shí)間源的層級(jí)應(yīng)盡量接近本節(jié)點(diǎn)的“層級(jí)請(qǐng)求”。這兩個(gè)原則都服務(wù)于上述的構(gòu)建ー個(gè)穩(wěn)定、準(zhǔn)確的同步系統(tǒng)的目的。其中,以精度作為主要衡量原則。ニ級(jí)時(shí)間服務(wù)器的部署需要依據(jù)實(shí)際情況而定??梢詤⒖棘F(xiàn)有的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)及節(jié)點(diǎn)的分布情況分階段部署,然后根據(jù)網(wǎng)絡(luò)承載容量做局部調(diào)整。ニ級(jí)時(shí)間服務(wù)器的部署需要依據(jù)實(shí)際情況而定,一般部署在多個(gè)分中心位置?;驹瓌t是I)就近同步;2)目標(biāo)系統(tǒng)要求時(shí)間精度較高的地方多部署;3)需要服務(wù)節(jié)點(diǎn)多的地方多部署;4)便于管理。因此,可在每個(gè)分中心部署一到兩臺(tái)ニ級(jí)時(shí)間服務(wù)器,其他ニ級(jí)時(shí)間服務(wù)器根據(jù)以上原則分階段部署,然后再根據(jù)網(wǎng)絡(luò)實(shí)際的負(fù)載容量做局部調(diào)整??偵戏治觯思?jí)服務(wù)層包含有時(shí)間控制模塊、時(shí)區(qū)控制模塊、監(jiān)測(cè)控制模塊和自動(dòng)配置模塊。客戶層向ニ級(jí)時(shí)間服務(wù)器發(fā)出時(shí)間同步請(qǐng)求,是被服務(wù)的對(duì)象,涵蓋系統(tǒng)內(nèi)所有節(jié)點(diǎn)及計(jì)劃要擴(kuò)充的節(jié)點(diǎn)。每個(gè)終端至少可以和一個(gè)ニ級(jí)時(shí)間服務(wù)器連通,終端可分布于全國(guó)范圍內(nèi),如圖I所示。客戶層包含的模塊有時(shí)間控制模塊、時(shí)區(qū)控制模塊、監(jiān)測(cè)控制模塊、自動(dòng)配置模塊。本實(shí)施例的自適應(yīng)時(shí)鐘同步系統(tǒng)進(jìn)行時(shí)間同步的流程如下
首先,進(jìn)行服務(wù)器端和客戶端的安裝配置工作,系統(tǒng)客戶端可根據(jù)手工配置,從指定的ニ級(jí)時(shí)間服務(wù)器上獲取準(zhǔn)確的時(shí)間信息,并且可以手工設(shè)置系統(tǒng)時(shí)區(qū)信息。允許維護(hù)人員在系統(tǒng)中各節(jié)點(diǎn)的配置文件中設(shè)定,控制系統(tǒng)在指定的方式下運(yùn)行。時(shí)間精度等級(jí)等參數(shù)可由維護(hù)人員自行設(shè)定。在主服務(wù)層,通過(guò)原子鐘接ロ模塊,將原子鐘提供的基準(zhǔn)時(shí)間信號(hào)引入本系統(tǒng),產(chǎn)生本系統(tǒng)使用的UTC時(shí)間。具體需要根據(jù)最終確定的原子鐘的型號(hào)來(lái)設(shè)計(jì)其與主時(shí)間服務(wù)器的接ロ。然后,主服務(wù)層主時(shí)間服務(wù)器解析命令行和配置文件,配置相應(yīng)的系統(tǒng)運(yùn)行參數(shù)。初始化網(wǎng)絡(luò)設(shè)備和各數(shù)據(jù)結(jié)構(gòu);啟動(dòng)計(jì)時(shí)器,開(kāi)始同步操作;根據(jù)定時(shí)器來(lái)調(diào)用發(fā)送和接收模塊發(fā)送和接收數(shù)據(jù)包;監(jiān)控同步源的情況,在同步源發(fā)生故障時(shí)負(fù)責(zé)啟動(dòng)自動(dòng)配置模塊;此外,還負(fù)責(zé)處理各種信號(hào)和錯(cuò)誤信息,進(jìn)行寫(xiě)日志等操作。
ニ級(jí)時(shí)間服務(wù)器之間、ニ級(jí)時(shí)間服務(wù)器與終端之間通過(guò)發(fā)送和接受時(shí)間信號(hào)來(lái)完成信息通信。信息發(fā)送程序構(gòu)造請(qǐng)求或應(yīng)答包,添入所需信息,向指定端(peer)發(fā)送該包,信息接收程序接收收到的NTP包,檢查包的合法性。對(duì)合法包作相應(yīng)的處理。系統(tǒng)接收到新的時(shí)間信息后,逐漸修改本地時(shí)鐘。當(dāng)ニ級(jí)服務(wù)層和客戶層終端基準(zhǔn)時(shí)間源發(fā)生故障時(shí),相應(yīng)的自動(dòng)配置程序構(gòu)造同步源請(qǐng)求包,填寫(xiě)請(qǐng)求條件、時(shí)鐘精度要求等信息,向周?chē)従影l(fā)送該包。設(shè)置定時(shí)器,提供超時(shí)重發(fā)機(jī)制及狀態(tài)轉(zhuǎn)換機(jī)制。鄰居節(jié)點(diǎn)接收到請(qǐng)求包后,檢查自身是否能做同步源。若可以則發(fā)送應(yīng)答包,否則向周?chē)従愚D(zhuǎn)發(fā)該包。然后系統(tǒng)從發(fā)送回的應(yīng)答中選擇合適的同步源,從同步源列表中選擇符合要求的節(jié)點(diǎn)作為自己新的同步源,建立同步連接,重新開(kāi)始同步操作。請(qǐng)求包轉(zhuǎn)發(fā)過(guò)程如下(I)把該請(qǐng)求包中的TTL值減一,如果已經(jīng)為零,就丟棄該包,不再轉(zhuǎn)發(fā);否則繼續(xù)。(2)循環(huán)遍歷peer隊(duì)列和client隊(duì)列中的所有節(jié)點(diǎn),根據(jù)以下策略來(lái)確定包轉(zhuǎn)發(fā)的目標(biāo)和范圍a)變量定義SE:請(qǐng)求節(jié)點(diǎn)的層級(jí)期望;CS:本地節(jié)點(diǎn)的當(dāng)前層級(jí);PS:欲發(fā)往的peer當(dāng)前層級(jí);TTLC:包當(dāng)前所余的生存期;b)轉(zhuǎn)發(fā)策略如果CS〈SE_3,則只向PS>CS的節(jié)點(diǎn)轉(zhuǎn)發(fā)請(qǐng)求包;如果PS-TTLOSE,則只向PS〈CS的節(jié)點(diǎn)轉(zhuǎn)發(fā)請(qǐng)求包;否則,就向所有鄰居節(jié)點(diǎn)轉(zhuǎn)發(fā)請(qǐng)求包。(3)返回。某節(jié)點(diǎn)在發(fā)送了時(shí)間源請(qǐng)求包之后,就等待應(yīng)答包的到來(lái)。如果順利的話,通常會(huì)收到多個(gè)來(lái)自不同時(shí)間源的應(yīng)答包。NTP協(xié)議要求每個(gè)節(jié)點(diǎn)至少應(yīng)具有3個(gè)時(shí)間源,以保證時(shí)間同步的穩(wěn)定性。因此,在收到應(yīng)答之后,本節(jié)點(diǎn)就要從中選擇數(shù)個(gè)節(jié)點(diǎn)來(lái)作為自己的時(shí)間源。選擇時(shí)間源應(yīng)遵循以下兩個(gè)原則(1)所選擇的時(shí)間源應(yīng)該穩(wěn)定、可靠;(2)時(shí)間源的層級(jí)應(yīng)盡量接近本節(jié)點(diǎn)的“層級(jí)請(qǐng)求”。這兩個(gè)原則都服務(wù)于上述的構(gòu)建ー個(gè)穩(wěn)定、準(zhǔn)確的同步網(wǎng)的目的。上述的兩個(gè)選擇時(shí)間源的原則有時(shí)會(huì)發(fā)生沖突,比如可能會(huì)出現(xiàn)以下兩種情況層級(jí)接近要求的節(jié)點(diǎn)穩(wěn)定性差,或是穩(wěn)定性好的節(jié)點(diǎn)層級(jí)又離要求較遠(yuǎn)。為解決這ー問(wèn)題,可對(duì)時(shí)間源的層級(jí)與本節(jié)點(diǎn)“層級(jí)請(qǐng)求”的差值指定一個(gè)閾值T,當(dāng)層級(jí)差小于T時(shí),可以忽略精度上的差別,而以穩(wěn)定性作為主要衡量原則;當(dāng)層級(jí)差大于T時(shí),不能忽略精度差別,因此以精度作為主要衡量原則。算法思路如下遍歷緩存隊(duì)列中的應(yīng)答包,計(jì)算其層級(jí)與本節(jié)點(diǎn)“層級(jí)請(qǐng) 求”的差值t ;Ct= “層級(jí)請(qǐng)求”-時(shí)間源層級(jí));先處理t彡T的節(jié)點(diǎn);對(duì)這些節(jié)點(diǎn),優(yōu)先選擇穩(wěn)定性高的節(jié)點(diǎn)作為時(shí)間源;如果時(shí)間源的個(gè)數(shù)不夠的情況下,再處理t>T的節(jié)點(diǎn)。對(duì)這些節(jié)點(diǎn),則優(yōu)先選擇t小(即層級(jí)差小)的節(jié)點(diǎn)作為時(shí)間源。時(shí)鐘同步系統(tǒng)的日常監(jiān)測(cè)記錄,可以由管理員每天在合適的時(shí)候開(kāi)啟,將系統(tǒng)內(nèi)所有節(jié)點(diǎn)的運(yùn)行情況記錄到數(shù)據(jù)庫(kù)中,以備日后的查詢。當(dāng)需要監(jiān)測(cè)的ニ級(jí)時(shí)間服務(wù)器超過(guò)一臺(tái)吋,將它們的IP地址導(dǎo)入到IP列表文件。各模塊實(shí)現(xiàn)的功能如下原子鐘接ロ模塊,提供接收準(zhǔn)確和精確的UTC (Coordinated Universal Time,協(xié)調(diào)世界吋)時(shí)間的接ロ,其任務(wù)是將原子鐘提供的基準(zhǔn)時(shí)間信號(hào)引入本系統(tǒng),產(chǎn)生本系統(tǒng)使用的UTC時(shí)間。根據(jù)最終確定的原子鐘的型號(hào)設(shè)計(jì)其與主時(shí)間服務(wù)器的接ロ。時(shí)間控制模塊,能夠根據(jù)手工設(shè)定或自動(dòng)獲取的UTC時(shí)間(由主時(shí)間服務(wù)器提供),對(duì)各終端進(jìn)行時(shí)間同歩。時(shí)間控制模塊負(fù)責(zé)在ニ級(jí)時(shí)間服務(wù)器和客戶端收發(fā)時(shí)間信號(hào)請(qǐng)求和應(yīng)答,完成數(shù)據(jù)包的傳送功能??蛻舳颂崛r(shí)間信號(hào)加以處理,從而獲取標(biāo)準(zhǔn)時(shí)間來(lái)修改本機(jī)硬件時(shí)鐘。運(yùn)行在主時(shí)間服務(wù)器、ニ級(jí)時(shí)間服務(wù)器和終端上。本模塊分為linux、windows、sco-unix 三神版本。I)輸入同步源的時(shí)間戳序列。2)輸出已同步的本地時(shí)鐘。具體包括以下主要功能(I)監(jiān)聽(tīng)客戶端(終端)的請(qǐng)求,收到請(qǐng)求之后向客戶端發(fā)送時(shí)間信號(hào)應(yīng)答,同時(shí)也包含網(wǎng)絡(luò)延時(shí)等信息;(2)向ニ級(jí)時(shí)間服務(wù)器發(fā)送時(shí)間信號(hào)請(qǐng)求,同時(shí)也包含網(wǎng)絡(luò)延時(shí)等信息;(3)處理接收到的時(shí)間信號(hào),根據(jù)數(shù)據(jù)包中的數(shù)據(jù)計(jì)算網(wǎng)絡(luò)延時(shí)等影響時(shí)間精度的數(shù)值,以修正時(shí)間信號(hào)的傳送誤差;(4)修改本地硬件時(shí)鐘(直接修改或逐漸修改);(5)維持與ニ級(jí)時(shí)間服務(wù)器的邏輯連接以及與對(duì)等ニ級(jí)時(shí)間服務(wù)器的邏輯連接,并將該連接信息寫(xiě)入日志文件;(6)對(duì)于基準(zhǔn)時(shí)間源,通過(guò)調(diào)用原子鐘接ロ模塊,還應(yīng)能從參考時(shí)鐘取得標(biāo)準(zhǔn)時(shí)間來(lái)修改本地時(shí)鐘。時(shí)區(qū)控制模塊,負(fù)責(zé)在ニ級(jí)時(shí)間服務(wù)器和客戶端收發(fā)同步時(shí)區(qū)信息請(qǐng)求和應(yīng)答,將主時(shí)間服務(wù)器的時(shí)區(qū)信息發(fā)送給ニ級(jí)時(shí)間服務(wù)器及所有終端,使他們提取時(shí)區(qū)信息,從而修改本機(jī)的時(shí)區(qū)配置。將調(diào)整過(guò)程記入數(shù)據(jù)庫(kù)。運(yùn)行在主時(shí)間服務(wù)器、ニ級(jí)時(shí)間服務(wù)器和終端上。本模塊分為linux、windows、sco-unix三種版本。時(shí)區(qū)控制模塊服務(wù)器子模塊I)輸入人工設(shè)定的系統(tǒng)時(shí)區(qū)信息。2)輸出時(shí)區(qū)調(diào)整指令報(bào)文。時(shí)區(qū)控制模塊客戶端子模塊I)輸入接受的調(diào)整指令報(bào)文。
2)輸出本地已調(diào)整的時(shí)區(qū)。具體包括以下主要功能(I)修改時(shí)區(qū)配置文件使其與主時(shí)間服務(wù)器的時(shí)區(qū)信息相同。(2)修改時(shí)鐘信息使其與時(shí)區(qū)配置文件中的配置一致。(3)記錄終端原來(lái)的時(shí)區(qū)信息,返回給主時(shí)間服務(wù)器。自動(dòng)配置模塊,當(dāng)基準(zhǔn)時(shí)間源發(fā)生故障吋,能夠在無(wú)需添加任何額外配置的情況下自動(dòng)尋找合適的時(shí)間源,以獲取同步服務(wù),從而確保不間斷提供UTC時(shí)間。I)輸入輪巡檢測(cè)的自動(dòng)配置狀態(tài)。2)輸出新的同步源IP。監(jiān)測(cè)控制模塊,包括偏差監(jiān)測(cè)終端子模塊和偏差監(jiān)測(cè)服務(wù)器子模塊。偏差監(jiān)測(cè)服務(wù)器子模塊運(yùn)行于主時(shí)間服務(wù)器和ニ級(jí)時(shí)間服務(wù)器上。偏差監(jiān)測(cè)終端子模塊運(yùn)行于終端上,如用戶主機(jī)或數(shù)據(jù)庫(kù)服務(wù)器等。偏差監(jiān)測(cè)終端子模塊分為linux、windows、sco-unix三種版本。其中,偏差監(jiān)測(cè)服務(wù)器子模塊的功能是按用戶的定期監(jiān)測(cè)或臨時(shí)監(jiān)測(cè)要求,檢測(cè)ー個(gè)或多個(gè)終端同步偏差結(jié)果,并將結(jié)果寫(xiě)入數(shù)據(jù)庫(kù)中,以跟蹤和記錄時(shí)鐘同步子系統(tǒng)運(yùn)行狀況。I)輸入監(jiān)測(cè)終端IP地址列表,監(jiān)測(cè)頻率。2)輸出被監(jiān)測(cè)終端IP的當(dāng)前時(shí)間偏差均值。偏差監(jiān)測(cè)終端子模塊接受偏差監(jiān)測(cè)服務(wù)器子模塊發(fā)來(lái)的請(qǐng)求,將當(dāng)前終端的時(shí)鐘參數(shù)上傳到偏差監(jiān)測(cè)服務(wù)器模塊。I)輸入接受的偏差監(jiān)測(cè)請(qǐng)求。2)輸出當(dāng)前時(shí)間。數(shù)據(jù)庫(kù)模塊,功能是維護(hù)數(shù)據(jù)庫(kù)軟件(版本為Oracle Si)自身的操作,存儲(chǔ)系統(tǒng)所需的所有表單和數(shù)據(jù);由Oracle數(shù)據(jù)庫(kù)系統(tǒng)提供。I)輸入本系統(tǒng)需要存儲(chǔ)的各種數(shù)據(jù)。2)輸出無(wú)。數(shù)據(jù)庫(kù)日志訪問(wèn)接ロ模塊,功能是為訪問(wèn)數(shù)據(jù)庫(kù)中的日志提供接ロ。I)輸入內(nèi)存數(shù)據(jù)(寫(xiě)操作)/庫(kù)表數(shù)據(jù)(讀操作)。2)輸出庫(kù)表數(shù)據(jù)(寫(xiě)操作)/內(nèi)存數(shù)據(jù)(讀操作)。報(bào)警模塊,功能是設(shè)定時(shí)間偏差閥值,如果各節(jié)點(diǎn)(終端)時(shí)間與基準(zhǔn)時(shí)間的偏差大于閥值,系統(tǒng)能夠報(bào)警(比如在界面提示并加提示音),并生成報(bào)警記錄,以備查詢。
I)輸入人工設(shè)定的偏差閥值參數(shù)。2)輸出報(bào)警聲音提不。監(jiān)測(cè)界面模塊,定期檢測(cè)主業(yè)務(wù)進(jìn)程是否在主機(jī)上存在,若非,自動(dòng)重啟指定的主業(yè)務(wù)進(jìn)程。I)輸入輪巡檢測(cè)的主業(yè)務(wù)進(jìn)程狀態(tài)。2)輸出重啟操作的異常信息。本發(fā)明加入了時(shí)間偏差監(jiān)測(cè)界面模塊,便于系統(tǒng)的維護(hù)和管理。由上述實(shí)施例可以看出,本發(fā)明在ニ級(jí)服務(wù)層和客戶層具有自動(dòng)配置模塊,該模塊當(dāng)基準(zhǔn)時(shí)間源發(fā)生故障吋,能夠在無(wú)需添加任何額外配置的情況下自動(dòng)尋找合適的時(shí)間 源,以獲取同步服務(wù)。當(dāng)節(jié)點(diǎn)失去時(shí)間源時(shí)啟動(dòng)該模塊,使得設(shè)備構(gòu)造請(qǐng)求包,在本局域網(wǎng)內(nèi)廣播發(fā)送,尋找符合條件的時(shí)間源,從而確保不間斷提供UTC時(shí)間。該機(jī)制能夠在同步網(wǎng)發(fā)生故障時(shí),使系統(tǒng)自動(dòng)重新完成同步網(wǎng)的配置,使得時(shí)間同步網(wǎng)擁有足夠的穩(wěn)定性和健壯性,自適應(yīng)能力強(qiáng)。同時(shí),本發(fā)明所涉及的網(wǎng)絡(luò)及設(shè)備,均位于該系統(tǒng)內(nèi)部,屬于封閉式開(kāi)發(fā),能夠較好的防止外界的干擾和攻擊,具有較好的安全性。本發(fā)明使用了分層級(jí)的體系結(jié)構(gòu),即主服務(wù)層、ニ級(jí)服務(wù)層和客戶層。該結(jié)構(gòu)對(duì)于大規(guī)模分布式網(wǎng)絡(luò)來(lái)說(shuō),層次分明,布局清晰,能夠很好的將分布于較遠(yuǎn)距離的數(shù)量巨大的客戶端系統(tǒng),井井有條的連接起來(lái),并且方便客戶節(jié)點(diǎn)的増加,利于網(wǎng)絡(luò)的擴(kuò)展,具有較強(qiáng)的可擴(kuò)展性,適應(yīng)業(yè)務(wù)的增長(zhǎng)。該系統(tǒng)可同步的節(jié)點(diǎn)數(shù)量不低于50000個(gè),地理位置可遍及全國(guó)。本發(fā)明具有較好的可操作性。系統(tǒng)客戶端可根據(jù)手工配置,從指定的時(shí)間服務(wù)器上獲取準(zhǔn)確的時(shí)間信息,并且可以手工設(shè)置系統(tǒng)時(shí)區(qū)信息。允許維護(hù)人員在系統(tǒng)中各節(jié)點(diǎn)的配置文件中設(shè)定,控制系統(tǒng)在指定的方式下運(yùn)行。時(shí)間精度等級(jí)等參數(shù)可由維護(hù)人員自行設(shè)定。該系統(tǒng)中時(shí)間控制模塊、時(shí)區(qū)控制模塊、監(jiān)測(cè)控制模塊等在ニ級(jí)時(shí)間服務(wù)器和客戶層節(jié)點(diǎn)運(yùn)行的模塊均分為linux、windows、sco-unix三種版本。故該發(fā)明不依賴于操作系統(tǒng)的類(lèi)型和版本。本發(fā)明具有的偏差監(jiān)測(cè)服務(wù)器模塊能夠按用戶的定期監(jiān)測(cè)或臨時(shí)監(jiān)測(cè)要求,檢測(cè)ー個(gè)或多個(gè)終端同步偏差結(jié)果,并根據(jù)要求,調(diào)用相應(yīng)的模塊,將結(jié)果寫(xiě)入數(shù)據(jù)庫(kù)中,以跟蹤和記錄時(shí)鐘同步子系統(tǒng)運(yùn)行狀況。同時(shí)報(bào)警模塊在各節(jié)點(diǎn)時(shí)間與基準(zhǔn)時(shí)間的偏差大于閥值時(shí),能夠報(bào)警(比如在界面提示并加提示音),并生成報(bào)警記錄,以備查詢。這幾項(xiàng)技術(shù)使得本發(fā)明具備很好的可靠性,能及時(shí)發(fā)現(xiàn)時(shí)鐘同步中的錯(cuò)誤,并及時(shí)更正。本發(fā)明通過(guò)以上保證措施,具備較好的自適應(yīng)性,同時(shí)充分發(fā)揮NTP協(xié)議的優(yōu)勢(shì),并且考慮到并設(shè)法解決了網(wǎng)絡(luò)時(shí)延對(duì)時(shí)間精度的影響,使得本發(fā)明在時(shí)間同步的精確度上有較高水平。盡管為示例目的,已經(jīng)公開(kāi)了本發(fā)明的優(yōu)選實(shí)施例,本領(lǐng)域的技術(shù)人員將意識(shí)到各種改進(jìn)、増加和取代也是可能的,因此,本發(fā)明的范圍應(yīng)當(dāng)不限于上述實(shí)施例。
權(quán)利要求
1.一種自適應(yīng)時(shí)鐘同步系統(tǒng),其特征在于,所述系統(tǒng)包括 主服務(wù)層,包括一臺(tái)或多臺(tái)主時(shí)間服務(wù)器,其中,主時(shí)間服務(wù)器外接原子鐘; 二級(jí)服務(wù)層,包括多臺(tái)二級(jí)時(shí)間服務(wù)器,一部分二級(jí)時(shí)間服務(wù)器與主時(shí)間服務(wù)器進(jìn)行時(shí)間同步,另一部分二級(jí)時(shí)間服務(wù)器相互之間進(jìn)行時(shí)間同步; 客戶層,包括若干終端,終端向二級(jí)時(shí)間服務(wù)器發(fā)出時(shí)間同步請(qǐng)求,進(jìn)行時(shí)間同步。
2.如權(quán)利要求I所述的自適應(yīng)時(shí)鐘同步系統(tǒng),其特征在于,主時(shí)間服務(wù)器、二級(jí)時(shí)間服務(wù)器和終端上設(shè)置有時(shí)間控制模塊,用于獲取的UTC時(shí)間,對(duì)各終端進(jìn)行時(shí)間同步;負(fù)責(zé)在二級(jí)時(shí)間服務(wù)器和終端收發(fā)時(shí)間信號(hào)請(qǐng)求和應(yīng)答,完成數(shù)據(jù)包的傳送功能,以及根據(jù)獲取的標(biāo)準(zhǔn)時(shí)間來(lái)修改本機(jī)硬件時(shí)鐘。
3.如權(quán)利要求2所述的自適應(yīng)時(shí)鐘同步系統(tǒng),其特征在于,主時(shí)間服務(wù)器、二級(jí)時(shí)間服務(wù)器和終端上設(shè)置有時(shí)區(qū)控制模塊,用于在二級(jí)時(shí)間服務(wù)器和客戶端收發(fā)同步時(shí)區(qū)信息請(qǐng)求和應(yīng)答,將主時(shí)間服務(wù)器的時(shí)區(qū)信息發(fā)送給二級(jí)時(shí)間服務(wù)器及所有終端,使其提取時(shí)區(qū)信息,從而修改本機(jī)的時(shí)區(qū)配置。
4.如權(quán)利要求廣3所述的自適應(yīng)時(shí)鐘同步系統(tǒng),其特征在于,主時(shí)間服務(wù)器、二級(jí)時(shí)間服務(wù)器和終端上設(shè)置有自動(dòng)配置模塊,用于當(dāng)基準(zhǔn)時(shí)間源發(fā)生故障時(shí),自動(dòng)尋找時(shí)間源,進(jìn)行時(shí)間同步。
5.如權(quán)利要求4所述的自適應(yīng)時(shí)鐘同步系統(tǒng),其特征在于,主時(shí)間服務(wù)器和二級(jí)時(shí)間服務(wù)器上設(shè)置有偏差監(jiān)測(cè)服務(wù)器子模塊,終端上設(shè)置有偏差監(jiān)測(cè)終端子模塊;其中,偏差監(jiān)測(cè)服務(wù)器子模塊用于根據(jù)定期監(jiān)測(cè)或臨時(shí)監(jiān)測(cè)的要求,檢測(cè)一個(gè)或多個(gè)終端同步偏差結(jié)果,并將結(jié)果寫(xiě)入數(shù)據(jù)庫(kù)中,以跟蹤和記錄時(shí)鐘同步子系統(tǒng)運(yùn)行狀況;偏差監(jiān)測(cè)終端子模塊接受偏差監(jiān)測(cè)服務(wù)器子模塊發(fā)來(lái)的請(qǐng)求,將當(dāng)前終端的時(shí)鐘參數(shù)上傳到偏差監(jiān)測(cè)服務(wù)器模塊。
6.如權(quán)利要求5所述的自適應(yīng)時(shí)鐘同步系統(tǒng),其特征在于,主時(shí)間服務(wù)器還設(shè)置有報(bào)警模塊,用于當(dāng)終端時(shí)間與基準(zhǔn)時(shí)間的偏差大于預(yù)先設(shè)定時(shí)間偏差閥值時(shí),報(bào)警,并生成報(bào)警記錄,以備查詢。
全文摘要
本發(fā)明公開(kāi)了一種自適應(yīng)時(shí)鐘同步系統(tǒng),包括主服務(wù)層,包括一臺(tái)或多臺(tái)主時(shí)間服務(wù)器,其中,主時(shí)間服務(wù)器外接原子鐘;二級(jí)服務(wù)層,包括多臺(tái)二級(jí)時(shí)間服務(wù)器,一部分二級(jí)時(shí)間服務(wù)器與主時(shí)間服務(wù)器進(jìn)行時(shí)間同步,另一部分二級(jí)時(shí)間服務(wù)器相互之間進(jìn)行時(shí)間同步;客戶層,包括若干終端,終端向二級(jí)時(shí)間服務(wù)器發(fā)出時(shí)間同步請(qǐng)求,進(jìn)行時(shí)間同步。本發(fā)明能夠在基準(zhǔn)時(shí)間源發(fā)生故障時(shí),自動(dòng)尋找合適的時(shí)間源,使系統(tǒng)自動(dòng)完成同步網(wǎng)的配置,使得時(shí)間同步網(wǎng)擁有足夠的穩(wěn)定性和健壯性,自適應(yīng)能力強(qiáng);同時(shí),具有較好的安全性。本發(fā)明使用了分層級(jí)的體系結(jié)構(gòu),層次分明,布局清晰,具有較強(qiáng)的可擴(kuò)展性,適應(yīng)業(yè)務(wù)的增長(zhǎng)。
文檔編號(hào)H04J3/06GK102684808SQ20121018362
公開(kāi)日2012年9月19日 申請(qǐng)日期2012年6月6日 優(yōu)先權(quán)日2012年6月6日
發(fā)明者何慧, 余翔湛, 劉建華, 葉建偉, 張偉哲, 張宏莉, 張旭, 牛通, 王佰玲, 田志宏, 韓笑 申請(qǐng)人:哈爾濱工業(yè)大學(xué)