本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)的監(jiān)測(cè)和維護(hù)技術(shù),具體涉及一種時(shí)鐘同步監(jiān)管方法和裝置。
背景技術(shù):
隨著網(wǎng)絡(luò)的出現(xiàn)和發(fā)展,無數(shù)的設(shè)備(包括客戶端、服務(wù)器等終端和交換機(jī)、路由器等網(wǎng)絡(luò)設(shè)備)都會(huì)運(yùn)行在同一個(gè)局域網(wǎng)或廣域網(wǎng)中。為了更好的控制整個(gè)網(wǎng)絡(luò),需要同步網(wǎng)絡(luò)中所有設(shè)備的時(shí)間,也叫時(shí)鐘同步。
網(wǎng)絡(luò)系統(tǒng)中各時(shí)鐘的同步,并不要求各時(shí)鐘完全與系統(tǒng)標(biāo)準(zhǔn)時(shí)鐘對(duì)齊。只要求知道各時(shí)鐘與系統(tǒng)標(biāo)準(zhǔn)時(shí)鐘在比對(duì)時(shí)刻的鐘差以及比對(duì)后它相對(duì)標(biāo)準(zhǔn)鐘的漂移修正參數(shù)即可,當(dāng)時(shí)鐘積累鐘差較大時(shí)才作跳步或閏秒處理。這是因?yàn)椋诒葘?duì)時(shí)刻把兩種鐘面時(shí)間對(duì)齊,一則需要有精密的相位微步調(diào)節(jié)器,這樣的成本是很高的,另外,各種驅(qū)動(dòng)源的漂移規(guī)律也各不相同,即使在兩種比對(duì)時(shí)刻時(shí)鐘完全對(duì)齊,比對(duì)后也會(huì)產(chǎn)生誤差。
為了更好的同步各個(gè)時(shí)鐘,需要對(duì)同步的情況進(jìn)行監(jiān)管,即在時(shí)鐘同步的設(shè)備或應(yīng)用之外,再增加一個(gè)監(jiān)管設(shè)備,能實(shí)時(shí)了解網(wǎng)絡(luò)中各個(gè)設(shè)備的時(shí)間同步情況,如各個(gè)設(shè)備與標(biāo)準(zhǔn)時(shí)間的偏差數(shù)據(jù),偏差大的有哪些等。
通信網(wǎng)絡(luò)是一種使用交換、傳輸設(shè)備,將地理上分散的用戶終端設(shè)備互連起來實(shí)現(xiàn)通信和信息交換的系統(tǒng)。通信網(wǎng)絡(luò)也包括了很多用戶終端設(shè)備、服務(wù)器和網(wǎng)絡(luò)設(shè)備,也需要時(shí)鐘同步。
目前通信網(wǎng)絡(luò)中,時(shí)鐘同步監(jiān)管的方法包括:
(一)利用簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議(SNMP,Simple Network Management Protocol)采集通信網(wǎng)絡(luò)中設(shè)備時(shí)間信息,與標(biāo)準(zhǔn)時(shí)間比對(duì),計(jì)算得出設(shè)備的 時(shí)鐘與標(biāo)準(zhǔn)時(shí)間的差,從而判斷設(shè)備時(shí)鐘與標(biāo)準(zhǔn)時(shí)間同步情況;
(二)用專用程序周期輪詢通信網(wǎng)絡(luò)中設(shè)備,采集設(shè)備時(shí)鐘,與標(biāo)準(zhǔn)時(shí)間比對(duì),計(jì)算得出設(shè)備的時(shí)鐘與標(biāo)準(zhǔn)時(shí)間的差,從而判斷設(shè)備時(shí)鐘是否與標(biāo)準(zhǔn)時(shí)間同步。
現(xiàn)有的監(jiān)管通信網(wǎng)絡(luò)中設(shè)備時(shí)鐘同步情況的方法存在如下缺陷:
第一種方法的不足是SNMP協(xié)議沒有包含直接的設(shè)備時(shí)鐘與標(biāo)準(zhǔn)時(shí)間的差異值。需要采集設(shè)備時(shí)鐘,再與標(biāo)準(zhǔn)時(shí)間比較計(jì)算得出偏差數(shù)據(jù)。監(jiān)管效率低。
第二種方法的不足:一是監(jiān)管效率更低,需要逐臺(tái)設(shè)備登錄提取設(shè)備時(shí)鐘,再與標(biāo)準(zhǔn)時(shí)間比較得出偏差數(shù)據(jù)。二是程序模擬人工提取設(shè)備時(shí)鐘和標(biāo)準(zhǔn)時(shí)間之間有一定時(shí)延,獲取的時(shí)間偏差數(shù)據(jù)準(zhǔn)確度不夠高。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明實(shí)施例期望提供一種時(shí)鐘同步監(jiān)管方法和裝置,能準(zhǔn)確的知道各個(gè)設(shè)備的時(shí)間偏差,且監(jiān)管效率高。
為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
本發(fā)明實(shí)施例提供了一種時(shí)鐘同步監(jiān)管方法,所述方法包括:
采集客戶端與時(shí)鐘同步服務(wù)器之間交互的數(shù)據(jù)包,獲取網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包;
根據(jù)所述網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包,確定客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù);
根據(jù)所述時(shí)間偏差數(shù)據(jù),按照設(shè)定規(guī)則,發(fā)出提示信息。
優(yōu)選的,所述采集客戶端與時(shí)鐘同步服務(wù)器之間交互的數(shù)據(jù)包,獲取網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包,包括:
采集流過指定端口的數(shù)據(jù)包;
提取所述數(shù)據(jù)包中源互聯(lián)網(wǎng)協(xié)議IP地址、目的IP地址和協(xié)議端口號(hào);
根據(jù)所述協(xié)議端口號(hào),獲取網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包。
優(yōu)選的,所述確定客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù),包括:
分析所述網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包的源IP地址、目的IP地址、協(xié)議端口號(hào)和表示時(shí)間偏差數(shù)據(jù)的字段值,獲取客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)。
優(yōu)選的,所述根據(jù)所述時(shí)間偏差數(shù)據(jù),按照設(shè)定規(guī)則,發(fā)出提示信息,包括:
對(duì)獲取的客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù),與設(shè)置的時(shí)間閾值比較,并根據(jù)比較結(jié)果發(fā)出提示信息。
優(yōu)選的,所述發(fā)出提示信息,包括:
將所述客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)展示在顯示屏幕上;
根據(jù)提示信息的類別,選擇不同的顯示方式。
本發(fā)明實(shí)施例還提供了一種時(shí)鐘同步監(jiān)管裝置,所述裝置包括采集模塊、分析模塊和處理模塊;其中,
所述數(shù)據(jù)采集模塊,用于采集客戶端與時(shí)鐘同步服務(wù)器之間交互的數(shù)據(jù)包,獲取網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包;
所述分析模塊,用于根據(jù)所述網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包,確定客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù);
所述處理模塊,用于根據(jù)所述時(shí)間偏差數(shù)據(jù),按照設(shè)定規(guī)則,發(fā)出提示信息。
優(yōu)選的,所述采集模塊具體用于:
采集流過指定端口的數(shù)據(jù)包;
提取所述數(shù)據(jù)包中源互聯(lián)網(wǎng)協(xié)議IP地址、目的IP地址和協(xié)議端口號(hào);
根據(jù)所述協(xié)議端口號(hào),獲取網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包。
優(yōu)選的,所述分析模塊具體用于:
分析所述網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包的源IP地址、目的IP地址、協(xié)議端口號(hào)和表示時(shí)間偏差數(shù)據(jù)的字段值,獲取客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)。
優(yōu)選的,所述處理模塊具體用于:
對(duì)獲取的客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù),與設(shè)置的時(shí)間閾值比較,并根據(jù)比較結(jié)果發(fā)出提示信息。
優(yōu)選的,所述處理模塊還用于:
將所述客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)展示在顯示屏幕上;
根據(jù)提示信息的類別,選擇不同的顯示方式。
本發(fā)明實(shí)施例提供的時(shí)鐘同步監(jiān)管方法及裝置,采集客戶端與時(shí)鐘同步服務(wù)器之間交互的數(shù)據(jù)包,獲取網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包;根據(jù)所述網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包,確定客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù);根據(jù)所述時(shí)間偏差數(shù)據(jù),按照設(shè)定規(guī)則,發(fā)出提示信息;可見,本發(fā)明實(shí)施例采集網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包,直接獲取客戶端與時(shí)鐘同步服務(wù)器之間時(shí)間偏差數(shù)據(jù),這樣,監(jiān)管效率高,而且,也能獲取更精確的時(shí)間偏差數(shù)據(jù)。
附圖說明
圖1為本發(fā)明實(shí)施例時(shí)鐘同步監(jiān)管方法的實(shí)現(xiàn)流程的示意圖;
圖2為本發(fā)明實(shí)施例時(shí)鐘同步監(jiān)管裝置的示意圖;
圖3為包含本發(fā)明實(shí)施例時(shí)鐘同步監(jiān)管裝置的網(wǎng)絡(luò)的物理結(jié)構(gòu)示意圖;
圖4為包含本發(fā)明實(shí)施例時(shí)鐘同步監(jiān)管裝置的網(wǎng)絡(luò)的邏輯結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合附圖及具體實(shí)施例對(duì)本發(fā)明再做進(jìn)一步的說明。
如圖1所示,本發(fā)明實(shí)施例的一種時(shí)鐘同步監(jiān)管方法,包括:
步驟101:采集客戶端與時(shí)鐘同步服務(wù)器之間交互的數(shù)據(jù)包,獲取網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包;
目前的網(wǎng)絡(luò)時(shí)間同步協(xié)議有兩種:網(wǎng)絡(luò)時(shí)間協(xié)議(NTP,Network Time Protocol)和簡(jiǎn)單網(wǎng)絡(luò)時(shí)間協(xié)議(SNTP,Simple Network Time Protocol);
本發(fā)明具體實(shí)施例采用的是NTP,NTP網(wǎng)絡(luò)時(shí)間協(xié)議能適應(yīng)更多類型的網(wǎng)絡(luò),且沒有終端數(shù)量的限制;
進(jìn)一步的,如果使用SNTP,則監(jiān)管的步驟是一致的,只是在提取網(wǎng)絡(luò)時(shí)間協(xié)議的字段名稱依據(jù)SNTP會(huì)略有不同。
客戶端與時(shí)鐘同步服務(wù)器之間會(huì)交互很多通信方面的數(shù)據(jù),即會(huì)有很多數(shù)據(jù)包;
本發(fā)明實(shí)施例中,所述采集客戶端與時(shí)鐘同步服務(wù)器之間交互的數(shù)據(jù)包,獲取網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包,包括:
監(jiān)管主機(jī)采集流過指定端口的所有數(shù)據(jù)包;
提取所述數(shù)據(jù)包中源IP地址、目的IP地址、協(xié)議端口號(hào);
根據(jù)協(xié)議端口號(hào),獲取網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包;
這里,指定端口是根據(jù)網(wǎng)絡(luò)時(shí)間同步協(xié)議傳輸所用的端口確定;
進(jìn)一步的,如果時(shí)鐘同步服務(wù)器具有端口鏡像功能,則指定端口是指鏡像的端口;
網(wǎng)絡(luò)時(shí)間同步協(xié)議在本實(shí)施例中具體是指NTP。
更具體的,本發(fā)明實(shí)施例在監(jiān)管主機(jī)上設(shè)置網(wǎng)絡(luò)嗅探器,通過網(wǎng)絡(luò)嗅探器獲取流過指定端口的所有數(shù)據(jù)包,包括:獲取指定端口,采集流過所述指定端口的所有數(shù)據(jù)包;獲取所述數(shù)據(jù)包的源IP地址、目的IP地址、協(xié)議端口號(hào),并基于所述協(xié)議端口號(hào)對(duì)所述數(shù)據(jù)包進(jìn)行分類,篩選出NTP數(shù)據(jù)包;
進(jìn)一步的,協(xié)議端口號(hào)可以區(qū)分協(xié)議類型,據(jù)此可以篩選出NTP數(shù)據(jù)包,如NTP的協(xié)議端口號(hào)為123;
更進(jìn)一步的,篩選出的NTP數(shù)據(jù)包需要去掉傳輸控制協(xié)議(TCP,Transmission Control Protocol)或用戶數(shù)據(jù)報(bào)協(xié)議(UDP,User Datagram Protocol)的包頭,才能進(jìn)入下一步驟。
本發(fā)明實(shí)施例中,所述時(shí)鐘同步服務(wù)器為網(wǎng)絡(luò)交換機(jī),且所述網(wǎng)絡(luò)交換機(jī)具有端口鏡像功能,能將所有網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包鏡像到一個(gè)端口,也就是上文的指定端口;
進(jìn)一步的,網(wǎng)絡(luò)交換機(jī)可以是具有自身晶振時(shí)鐘功能的網(wǎng)絡(luò)交換機(jī),這樣的網(wǎng)絡(luò)交換機(jī)一般都具有端口鏡像功能;
這樣,網(wǎng)絡(luò)嗅探器只需要單一的采集指定網(wǎng)卡端口的所有數(shù)據(jù)包,就能獲得所有NTP數(shù)據(jù)包,簡(jiǎn)化網(wǎng)絡(luò)時(shí)鐘同步協(xié)議數(shù)據(jù)的采集。
其中,網(wǎng)絡(luò)嗅探器為使用WinPcap(windows packet capture,windows平臺(tái)的一個(gè)免費(fèi)、公共的網(wǎng)絡(luò)訪問系統(tǒng))開發(fā)的程序,嗅探流過網(wǎng)卡的數(shù)據(jù)并智能分析過濾,快速找到所需要的網(wǎng)絡(luò)信息的一種程序,通過使用網(wǎng)絡(luò)嗅探器就能快速抓取相關(guān)的通信數(shù)據(jù);
數(shù)據(jù)包的傳輸路徑通常情況下依次為網(wǎng)卡、設(shè)備驅(qū)動(dòng)層、鏈路層、IP層、傳輸層,最后到達(dá)應(yīng)用層;
為了減少傳輸時(shí)間,在數(shù)據(jù)包經(jīng)過的鏈路層增加一個(gè)旁路處理,獲取所述數(shù)據(jù)包的源IP地址、目的IP地址、協(xié)議端口號(hào),將篩選出的NTP數(shù)據(jù)包去掉TCP或UDP的包頭,直接傳輸給應(yīng)用層的協(xié)議分析程序。
這樣傳輸?shù)穆窂骄妥兂伞皶r(shí)鐘同步服務(wù)器指定端口—監(jiān)管主機(jī)網(wǎng)卡—設(shè)備驅(qū)動(dòng)層—鏈路層—應(yīng)用層”,原來的傳輸路徑是“時(shí)鐘同步服務(wù)器指定端口—監(jiān)管主機(jī)網(wǎng)卡—設(shè)備驅(qū)動(dòng)層—鏈路層—IP層—傳輸層—應(yīng)用層”,減少了IP層和傳輸層的時(shí)間。
當(dāng)然,網(wǎng)絡(luò)時(shí)鐘同步數(shù)據(jù)的采集還可以在主機(jī)上部署除網(wǎng)絡(luò)嗅探器之外的數(shù)據(jù)采集探針,也可實(shí)現(xiàn)上述采集任務(wù),但是不能直接使用WinPcap的編程接口,需要編寫更多的程序段才能訪問底層數(shù)據(jù),程序設(shè)計(jì)和硬件配置更復(fù)雜、成本更高。
時(shí)鐘同步服務(wù)器還可以采用除網(wǎng)絡(luò)交換機(jī)之外的具有時(shí)鐘同步服務(wù)器功能的主機(jī)、路由器、專用同步時(shí)鐘服務(wù)器等設(shè)備,不過,沒有網(wǎng)絡(luò)交換機(jī)的端口鏡像功能,需要監(jiān)管主機(jī)分別訪問多個(gè)端口,才能采集到需要的數(shù)據(jù)包,存在程序設(shè)計(jì)和硬件配置更復(fù)雜、成本更高的問題。
進(jìn)一步的,作為時(shí)鐘同步服務(wù)器的網(wǎng)絡(luò)交換機(jī)需要與上級(jí)時(shí)鐘服務(wù)器連接,從更高精準(zhǔn)度的時(shí)鐘服務(wù)器獲取穩(wěn)定的時(shí)間。
步驟102:根據(jù)所述網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包,確定客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù);
獲取的網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包,包括源IP地址、目的IP地址、協(xié)議端口號(hào)和包含客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)的相應(yīng)字段等;
對(duì)NTP來說,包括源IP地址、目的IP地址、協(xié)議端口號(hào)和基本差量(Root dispersion)字段;
其中,源IP地址、目的IP地址可以找到交互的客戶端地址和服務(wù)器地址,也就是說,可以區(qū)分出這個(gè)數(shù)據(jù)包是哪個(gè)客戶端與時(shí)鐘同步服務(wù)器交互的;
Root dispersion字段值直接表示客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)。
因此,監(jiān)管主機(jī)分析網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包可以直接獲得客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù),也就是獲得基本差量字段表示的客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)。
這里,監(jiān)管主機(jī)通過一種通用的網(wǎng)絡(luò)行為分析程序,加載預(yù)先配置的協(xié)議分析邏輯、如NTP分析邏輯,獲取客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù);
這里的通用的網(wǎng)絡(luò)行為分析程序,可根據(jù)客戶需求靈活的定制針對(duì)分析網(wǎng)絡(luò)協(xié)議的協(xié)議分析邏輯,然后通過固化這些協(xié)議分析邏輯達(dá)到自動(dòng)分析的目的;
具體的,協(xié)議分析邏輯基于NTP來說,NTP分析邏輯就是針對(duì)NTP的協(xié)議結(jié)構(gòu),獲取基本差量字段的值,如基于NTP的Root dispersion字段,這樣就能得到需要的信息。
步驟103:根據(jù)所述時(shí)間偏差數(shù)據(jù),按照設(shè)定規(guī)則,發(fā)出提示信息。
這里,提示信息是監(jiān)管主機(jī)對(duì)通信網(wǎng)絡(luò)中的針對(duì)異常情況發(fā)出的通知信息,根據(jù)嚴(yán)重程度分為幾級(jí),如可以是一級(jí):注意、二級(jí):警告、三級(jí):嚴(yán)重警告等。
具體的,根據(jù)所述時(shí)間偏差數(shù)據(jù),按照設(shè)定規(guī)則,發(fā)出提示信息,包括:
對(duì)獲取的客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù),監(jiān)管主機(jī)加載預(yù)先設(shè)置的業(yè)務(wù)分析邏輯進(jìn)行業(yè)務(wù)分析,確定所述客戶端與時(shí)鐘同步服務(wù)器的同步情況,如時(shí)間偏差數(shù)據(jù)是否超過設(shè)定值或客戶端很長(zhǎng)時(shí)間沒有與時(shí)鐘同步服務(wù)器做同步交互等;
對(duì)出現(xiàn)的異常情況,如時(shí)間偏差數(shù)據(jù)超過設(shè)定值等,監(jiān)管主機(jī)發(fā)出提示信 息;
本發(fā)明實(shí)施例中,業(yè)務(wù)分析是監(jiān)管主機(jī)通過一種通用業(yè)務(wù)分析程序加載預(yù)先配置的業(yè)務(wù)分析邏輯分析的;
本實(shí)施例中的預(yù)先配置的業(yè)務(wù)分析邏輯有以下兩個(gè):
1)根據(jù)客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)數(shù)值,向外部系統(tǒng)提供不同級(jí)別的提示信息;
2)對(duì)客戶端的時(shí)鐘同步行為進(jìn)行監(jiān)控,對(duì)一定時(shí)間內(nèi)或連續(xù)N天未與時(shí)鐘同步服務(wù)器做同步交互的客戶端給出提示信息。
進(jìn)一步的,業(yè)務(wù)分析邏輯會(huì)對(duì)客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)設(shè)置多個(gè)不同級(jí)別的時(shí)間閾值,對(duì)應(yīng)不同的提示信息,對(duì)所述時(shí)間偏差數(shù)據(jù)超出對(duì)應(yīng)的時(shí)間閾值,發(fā)出相應(yīng)的提示信息,即所述時(shí)間偏差數(shù)據(jù)超出的時(shí)間閾值越大,則提示信息的級(jí)別越高;
對(duì)于一定時(shí)間內(nèi)或連續(xù)N天未與時(shí)鐘同步服務(wù)器做同步交互的客戶端,只需給出低級(jí)別的提示,因?yàn)槠渑c時(shí)鐘同步服務(wù)器的差值未超出對(duì)應(yīng)的時(shí)間閾值,但是需要發(fā)出提示,以使監(jiān)管主機(jī)確認(rèn)該客戶端是否有其他網(wǎng)絡(luò)問題。
更進(jìn)一步的,所述監(jiān)管主機(jī)會(huì)將客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)以大屏幕的方式實(shí)時(shí)展示出來,如展示在大的LED顯示屏上;并會(huì)根據(jù)提示信息的類別,選擇不同的顯示方式,如提示信息的級(jí)別比較高,就顯示紅色,這樣比較直觀和醒目,對(duì)整個(gè)網(wǎng)絡(luò)的時(shí)鐘同步情況一目了然。
如果是級(jí)別較高的提示信息,如三級(jí)提示信息,監(jiān)管主機(jī)會(huì)進(jìn)行主動(dòng)處理;
處理的方式,可以是指示時(shí)鐘同步服務(wù)器調(diào)整客戶端的時(shí)間,也可以是直接調(diào)整客戶端的時(shí)間;
實(shí)際使用中,調(diào)整客戶端時(shí)間的方法可以是跳步或閏秒處理。
圖2為本發(fā)明實(shí)施例時(shí)鐘同步監(jiān)管裝置的示意圖,如圖2所示,本發(fā)明實(shí)施例的一種時(shí)鐘同步監(jiān)管裝置,包括:采集模塊21、分析模塊22和處理模塊23;其中,
所述采集模塊21,用于采集客戶端與時(shí)鐘同步服務(wù)器之間交互的數(shù)據(jù)包, 獲取網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包;
所述分析模塊22,用于根據(jù)所述網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包,確定客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù);
所述處理模塊23,用于根據(jù)所述時(shí)間偏差數(shù)據(jù),按照設(shè)定規(guī)則,發(fā)出提示信息。
為了說明的更清楚,下面將分別對(duì)各個(gè)模塊作詳細(xì)說明:
所述采集模塊21,用于采集客戶端與時(shí)鐘同步服務(wù)器之間交互的數(shù)據(jù)包,獲取網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包;
目前的網(wǎng)絡(luò)時(shí)間同步協(xié)議有兩種:網(wǎng)絡(luò)時(shí)間協(xié)議(NTP,Network Time Protocol)和簡(jiǎn)單網(wǎng)絡(luò)時(shí)間協(xié)議(SNTP,Simple Network Time Protocol);
本發(fā)明實(shí)施例采用的是NTP,NTP網(wǎng)絡(luò)時(shí)間協(xié)議能適應(yīng)更多類型的網(wǎng)絡(luò),且沒有終端數(shù)量的限制;
進(jìn)一步的,如果使用SNTP,則監(jiān)管的步驟是一致的,只是在提取網(wǎng)絡(luò)時(shí)間協(xié)議的字段名稱依據(jù)SNTP會(huì)略有不同。
客戶端與時(shí)鐘同步服務(wù)器之間會(huì)交互很多通信方面的數(shù)據(jù),即會(huì)有很多數(shù)據(jù)包;
本發(fā)明實(shí)施例中,所述采集客戶端與時(shí)鐘同步服務(wù)器之間交互的數(shù)據(jù)包,獲取網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包,包括:
監(jiān)管主機(jī)采集流過指定端口的所有數(shù)據(jù)包;
提取所述數(shù)據(jù)包中源IP地址、目的IP地址、協(xié)議端口號(hào);
根據(jù)協(xié)議端口號(hào),獲取網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包;
這里,指定端口是根據(jù)網(wǎng)絡(luò)時(shí)間同步協(xié)議傳輸所用的端口確定;
進(jìn)一步的,如果時(shí)鐘同步服務(wù)器具有端口鏡像功能,則指定端口是指鏡像的端口;
網(wǎng)絡(luò)時(shí)間同步協(xié)議在本實(shí)施例中具體是指NTP。
更具體的,本發(fā)明實(shí)施例采用在監(jiān)管主機(jī)上設(shè)置網(wǎng)絡(luò)嗅探器,通過網(wǎng)絡(luò)嗅探器獲取流過指定端口的所有數(shù)據(jù)包,包括:獲取指定端口,采集流過所述指 定端口的所有數(shù)據(jù)包;獲取所述數(shù)據(jù)包的源IP地址、目的IP地址、協(xié)議端口號(hào),并基于所述協(xié)議端口號(hào)對(duì)所述數(shù)據(jù)包進(jìn)行分類,篩選出NTP數(shù)據(jù)包;
進(jìn)一步的,協(xié)議端口號(hào)可以區(qū)分協(xié)議類型,據(jù)此可以篩選出NTP數(shù)據(jù)包,如NTP的協(xié)議端口號(hào)為123;
更進(jìn)一步的,篩選出的NTP數(shù)據(jù)包需要去掉傳輸控制協(xié)議(TCP,Transmission Control Protocol)或用戶數(shù)據(jù)報(bào)協(xié)議(UDP,User Datagram Protocol)的包頭,才能進(jìn)入下一步驟。
本發(fā)明實(shí)施例中,所述時(shí)鐘同步服務(wù)器為網(wǎng)絡(luò)交換機(jī),且所述網(wǎng)絡(luò)交換機(jī)具有端口鏡像功能,能將所有網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包鏡像到一個(gè)端口,也就是上文的指定端口;
進(jìn)一步的,網(wǎng)絡(luò)交換機(jī)可以是具有自身晶振時(shí)鐘功能的網(wǎng)絡(luò)交換機(jī),這樣的網(wǎng)絡(luò)交換機(jī)一般都具有端口鏡像功能;
這樣,網(wǎng)絡(luò)嗅探器只需要單一的采集指定網(wǎng)卡端口的所有數(shù)據(jù)包,就能獲得所有NTP數(shù)據(jù)包,簡(jiǎn)化網(wǎng)絡(luò)時(shí)鐘同步協(xié)議數(shù)據(jù)的采集。
其中,網(wǎng)絡(luò)嗅探器為使用WinPcap(windows packet capture,windows平臺(tái)的一個(gè)免費(fèi)、公共的網(wǎng)絡(luò)訪問系統(tǒng))開發(fā)的程序,嗅探流過網(wǎng)卡的數(shù)據(jù)并智能分析過濾,快速找到所需要的網(wǎng)絡(luò)信息的一種程序,通過使用網(wǎng)絡(luò)嗅探器就能快速抓取相關(guān)的通信數(shù)據(jù);
數(shù)據(jù)包的傳輸路徑通常情況下依次為網(wǎng)卡、設(shè)備驅(qū)動(dòng)層、鏈路層、IP層、傳輸層,最后到達(dá)應(yīng)用層;
為了減少傳輸時(shí)間,在數(shù)據(jù)包經(jīng)過的鏈路層增加一個(gè)旁路處理,獲取所述數(shù)據(jù)包的源IP地址、目的IP地址、協(xié)議端口號(hào),將篩選出的NTP數(shù)據(jù)包去掉TCP或UDP的包頭,直接傳輸給應(yīng)用層的協(xié)議分析程序。
這樣傳輸?shù)穆窂骄妥兂伞皶r(shí)鐘同步服務(wù)器指定端口—監(jiān)管主機(jī)網(wǎng)卡—設(shè)備驅(qū)動(dòng)層—鏈路層—應(yīng)用層”,原來的傳輸路徑是“時(shí)鐘同步服務(wù)器指定端口—監(jiān)管主機(jī)網(wǎng)卡—設(shè)備驅(qū)動(dòng)層—鏈路層—IP層—傳輸層—應(yīng)用層”,減少了IP層和傳輸層的時(shí)間。
當(dāng)然,網(wǎng)絡(luò)時(shí)鐘同步數(shù)據(jù)的采集還可以在主機(jī)上部署除網(wǎng)絡(luò)嗅探器之外的數(shù)據(jù)采集探針,也可實(shí)現(xiàn)上述采集任務(wù),但是不能直接使用WinPcap的編程接口,需要編寫更多的程序段才能訪問底層數(shù)據(jù),程序設(shè)計(jì)和硬件配置更復(fù)雜、成本更高。
時(shí)鐘同步服務(wù)器還可以采用除網(wǎng)絡(luò)交換機(jī)之外的具有時(shí)鐘同步服務(wù)器功能的主機(jī)、路由器、專用時(shí)鐘同步服務(wù)器等設(shè)備,不過,沒有網(wǎng)絡(luò)交換機(jī)的端口鏡像功能,需要監(jiān)管主機(jī)分別訪問多個(gè)端口,才能采集到需要的數(shù)據(jù)包,存在程序設(shè)計(jì)和硬件配置更復(fù)雜、成本更高的問題。
進(jìn)一步的,作為時(shí)鐘同步服務(wù)器的網(wǎng)絡(luò)交換機(jī)需要與上級(jí)時(shí)鐘服務(wù)器連接,從更高精準(zhǔn)度的時(shí)鐘服務(wù)器獲取穩(wěn)定的時(shí)間。
所述分析模塊22,用于根據(jù)所述網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包,確定客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù);
獲取的網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包,包括源IP地址、目的IP地址、協(xié)議端口號(hào)和包含客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)的相應(yīng)字段等;
對(duì)NTP來說,包括源IP地址、目的IP地址、協(xié)議端口號(hào)和基本差量(Root dispersion)字段;
其中,源IP地址、目的IP地址可以找到交互的客戶端地址和服務(wù)器地址,也就是說,可以區(qū)分出這個(gè)數(shù)據(jù)包是哪個(gè)客戶端與時(shí)鐘同步服務(wù)器交互的;
Root dispersion字段值直接表示客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)。
因此,監(jiān)管主機(jī)分析網(wǎng)絡(luò)時(shí)間同步協(xié)議數(shù)據(jù)包可以直接獲得客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù),也就是獲得基本差量字段表示的客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)。
這里,監(jiān)管主機(jī)通過一種通用的網(wǎng)絡(luò)行為分析程序,加載預(yù)先配置的協(xié)議分析邏輯、如NTP分析邏輯,獲取客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù);
這里的通用的網(wǎng)絡(luò)行為分析程序,可根據(jù)客戶需求靈活的定制針對(duì)分析網(wǎng)絡(luò)協(xié)議的協(xié)議分析邏輯,然后通過固化這些分析邏輯達(dá)到自動(dòng)分析的目的;
具體的,協(xié)議分析邏輯對(duì)于NTP來說,NTP分析邏輯就是針對(duì)NTP的協(xié) 議結(jié)構(gòu),獲取基本差量字段的值,如基于NTP的Root dispersion字段,這樣就能得到需要的信息。
所述處理模塊23,用于根據(jù)所述時(shí)間偏差數(shù)據(jù),按照設(shè)定規(guī)則,發(fā)出提示信息;
這里,提示信息是監(jiān)管主機(jī)對(duì)通信網(wǎng)絡(luò)中的針對(duì)異常情況發(fā)出的通知信息,根據(jù)嚴(yán)重程度分為幾級(jí),如可以是一級(jí):注意、二級(jí):警告、三級(jí):嚴(yán)重警告等。
具體的,根據(jù)所述時(shí)間偏差數(shù)據(jù),按照設(shè)定規(guī)則,發(fā)出提示信息,包括:
對(duì)獲取的客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù),監(jiān)管主機(jī)加載預(yù)先設(shè)置的業(yè)務(wù)分析邏輯進(jìn)行業(yè)務(wù)分析,確定所述客戶端與時(shí)鐘同步服務(wù)器的同步情況,如時(shí)間偏差數(shù)據(jù)是否超過設(shè)定值或客戶端很長(zhǎng)時(shí)間沒有與時(shí)鐘同步服務(wù)器做同步交互等;
對(duì)出現(xiàn)的異常情況,如時(shí)間偏差數(shù)據(jù)超過設(shè)定值等,監(jiān)管主機(jī)發(fā)出提示信息;
本發(fā)明實(shí)施例中,業(yè)務(wù)分析是監(jiān)管主機(jī)通過一種通用業(yè)務(wù)分析程序加載預(yù)先配置的業(yè)務(wù)分析邏輯分析的;
本實(shí)施例中的預(yù)先配置的業(yè)務(wù)分析邏輯有以下兩個(gè):
1)根據(jù)客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)數(shù)值,向外部系統(tǒng)提供不同級(jí)別的提示信息;
2)對(duì)客戶端的時(shí)鐘同步行為進(jìn)行監(jiān)控,對(duì)一定時(shí)間內(nèi)或連續(xù)N天未與時(shí)鐘同步服務(wù)器做同步交互的客戶端給出提示信息。
進(jìn)一步的,業(yè)務(wù)分析邏輯會(huì)對(duì)客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)設(shè)置多個(gè)不同級(jí)別的時(shí)間閾值,對(duì)應(yīng)不同的提示信息,對(duì)所述時(shí)間偏差數(shù)據(jù)超出對(duì)應(yīng)的時(shí)間閾值,發(fā)出相應(yīng)的提示信息,即所述時(shí)間偏差數(shù)據(jù)超出的時(shí)間閾值越大,則提示信息的級(jí)別越高;
對(duì)于一定時(shí)間內(nèi)或連續(xù)N天未與時(shí)鐘同步服務(wù)器做同步交互的客戶端,只需給出低級(jí)別的提示,因?yàn)槠渑c時(shí)鐘同步服務(wù)器的差值未超出對(duì)應(yīng)的時(shí)間閾值, 但是需要發(fā)出提示,以使監(jiān)管主機(jī)確認(rèn)該客戶端是否有其他網(wǎng)絡(luò)問題。
更進(jìn)一步的,所述監(jiān)管主機(jī)會(huì)將客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù)以大屏幕的方式實(shí)時(shí)展示出來,如展示在大的LED顯示屏上;并會(huì)根據(jù)提示信息的類別,選擇不同的顯示方式,如提示信息的級(jí)別比較高,就顯示紅色,這樣比較直觀和醒目,對(duì)整個(gè)網(wǎng)絡(luò)的時(shí)鐘同步情況一目了然。
如果是級(jí)別較高的提示信息,如三級(jí)提示信息,監(jiān)管主機(jī)會(huì)進(jìn)行主動(dòng)處理;
處理的方式,可以是指示時(shí)鐘同步服務(wù)器調(diào)整客戶端的時(shí)間,也可以是直接調(diào)整客戶端的時(shí)間;
實(shí)際使用中,調(diào)整客戶端時(shí)間的方法可以是跳步或閏秒處理。
在實(shí)際應(yīng)用中,所述數(shù)據(jù)采集模塊21、分析模塊22和處理模塊23均可由位于監(jiān)管主機(jī)的中央處理器(CPU)、微處理器(MPU)、數(shù)字信號(hào)處理器(DSP)、或現(xiàn)場(chǎng)可編程門陣列(FPGA)等實(shí)現(xiàn)。
圖3為包含本發(fā)明實(shí)施例時(shí)鐘同步監(jiān)管裝置的網(wǎng)絡(luò)的物理結(jié)構(gòu)示意圖,如圖3所示,時(shí)鐘同步網(wǎng)絡(luò)包括客戶端31、時(shí)鐘同步服務(wù)器32、監(jiān)管主機(jī)33、LED顯示屏34,時(shí)鐘同步服務(wù)器32會(huì)將與所有客戶端31通信的數(shù)據(jù)包鏡像到一個(gè)端口,監(jiān)管主機(jī)33會(huì)從這個(gè)端口獲取所有的數(shù)據(jù)包,并進(jìn)行分類和協(xié)議分析;
監(jiān)管主機(jī)33對(duì)協(xié)議分析的結(jié)果進(jìn)行業(yè)務(wù)分析,確定客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù),在LED顯示屏上展示和警告,并對(duì)需要調(diào)整時(shí)間的客戶端發(fā)出調(diào)整指令。
圖3中的監(jiān)管主機(jī)33就是本發(fā)明實(shí)施例的時(shí)鐘同步監(jiān)管裝置。
圖4為包含本發(fā)明實(shí)施例時(shí)鐘同步監(jiān)管裝置的網(wǎng)絡(luò)的邏輯結(jié)構(gòu)示意圖,如圖4所示,時(shí)鐘同步網(wǎng)絡(luò)包括采集主機(jī)41、網(wǎng)絡(luò)嗅探器42、NTP分析器43、業(yè)務(wù)分析器44和可視化界面45;
網(wǎng)絡(luò)嗅探器42從采集主機(jī)的網(wǎng)卡(與網(wǎng)絡(luò)交換機(jī)的指定端口連接)上采集數(shù)據(jù)包,篩選出NTP數(shù)據(jù)包,然后傳送到NTP分析器43進(jìn)行協(xié)議分析,獲取客戶端與時(shí)鐘同步服務(wù)器的時(shí)間偏差數(shù)據(jù),再傳送到業(yè)務(wù)分析器44進(jìn)行業(yè)務(wù)分 析,根據(jù)分析結(jié)果,在可視化界面作出相應(yīng)提示及處理。
圖4的采集主機(jī)41、網(wǎng)絡(luò)嗅探器42、NTP分析器43、業(yè)務(wù)分析器44都是裝在本發(fā)明實(shí)施例的時(shí)鐘同步監(jiān)管裝置上或由時(shí)鐘同步監(jiān)管裝置實(shí)現(xiàn)的。
以上,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。