許劭慶+馬彪+安海英
摘 要:電力企業(yè)內(nèi)部網(wǎng)絡(luò)監(jiān)控設(shè)備眾多,品牌性能各不相同,網(wǎng)絡(luò)監(jiān)控難度也越來越大。為了解決不同平臺(tái)的網(wǎng)絡(luò)設(shè)備監(jiān)控的難題,本文以跨平臺(tái)技術(shù)為基礎(chǔ),設(shè)計(jì)了由網(wǎng)絡(luò)資源設(shè)備、主動(dòng)節(jié)點(diǎn)、監(jiān)控信息庫構(gòu)成的跨平臺(tái)網(wǎng)絡(luò)監(jiān)控系統(tǒng)。系統(tǒng)設(shè)計(jì)了基于主動(dòng)網(wǎng)絡(luò)的動(dòng)態(tài)數(shù)據(jù)采集算法實(shí)現(xiàn)數(shù)據(jù)的周期性采集,采用主動(dòng)報(bào)文的形式將信息發(fā)送給監(jiān)控平臺(tái)服務(wù)端,通過構(gòu)造主動(dòng)節(jié)點(diǎn)實(shí)現(xiàn)數(shù)據(jù)的采集和傳送控制。本系統(tǒng)于2015年在國網(wǎng)吉林省電力有限公司開始應(yīng)用,實(shí)現(xiàn)了對(duì)電力系統(tǒng)不同網(wǎng)絡(luò)設(shè)備進(jìn)行狀態(tài)監(jiān)控集中管理,極大的提高了運(yùn)維效率。
關(guān)鍵詞:主動(dòng)節(jié)點(diǎn);數(shù)據(jù)采集;主動(dòng)報(bào)文
中圖分類號(hào):TP393.07 文獻(xiàn)標(biāo)識(shí)碼:A
1 引言(Introduction)
隨著信息技術(shù)的發(fā)展和網(wǎng)絡(luò)規(guī)模的擴(kuò)大,企業(yè)內(nèi)部的網(wǎng)絡(luò)結(jié)構(gòu)也日益復(fù)雜,電力企業(yè)也不例外,各類網(wǎng)絡(luò)監(jiān)控設(shè)備種類繁多,這些設(shè)備品牌、性能、操作系統(tǒng)各不相同,日志和告警格式也各式各樣。對(duì)這些設(shè)備的網(wǎng)絡(luò)監(jiān)控難度也越來越大,網(wǎng)絡(luò)監(jiān)控已經(jīng)成為現(xiàn)代企業(yè)信息化建設(shè)的難點(diǎn)。近年來,網(wǎng)絡(luò)監(jiān)控技術(shù)也從傳統(tǒng)的集中式轉(zhuǎn)變?yōu)榉植际?、單點(diǎn)代理轉(zhuǎn)向多層次。這些新型監(jiān)控技術(shù)的產(chǎn)生,為解決電力企業(yè)的網(wǎng)絡(luò)監(jiān)管問題,提供了很好的技術(shù)手段[1,2]。
本文設(shè)計(jì)基于主動(dòng)節(jié)點(diǎn)的跨平臺(tái)網(wǎng)絡(luò)監(jiān)控系統(tǒng),對(duì)電力企業(yè)不同平臺(tái)的網(wǎng)絡(luò)設(shè)備進(jìn)行監(jiān)控,方便電力企業(yè)實(shí)現(xiàn)網(wǎng)絡(luò)維護(hù)和監(jiān)控。系統(tǒng)采用主動(dòng)節(jié)點(diǎn)和監(jiān)控平臺(tái)為基礎(chǔ),采集各類數(shù)據(jù)。通過主動(dòng)報(bào)文的形式發(fā)送給監(jiān)控平臺(tái)服務(wù)端,并進(jìn)行展示,實(shí)現(xiàn)對(duì)電力企業(yè)網(wǎng)絡(luò)設(shè)備的集中監(jiān)控,提高運(yùn)維效率。
2 系統(tǒng)的總體設(shè)計(jì)(General design)
網(wǎng)絡(luò)監(jiān)控是指對(duì)網(wǎng)絡(luò)運(yùn)行狀態(tài)數(shù)據(jù)進(jìn)行實(shí)時(shí)采集、分析、預(yù)測,并對(duì)網(wǎng)絡(luò)運(yùn)行狀態(tài)實(shí)施控制。由于電力企業(yè)的網(wǎng)絡(luò)系統(tǒng)涉及到許多不同平臺(tái)基礎(chǔ)的網(wǎng)絡(luò)設(shè)備,為此在系統(tǒng)的設(shè)計(jì)過程中采用跨平臺(tái)設(shè)計(jì)。根據(jù)電力企業(yè)內(nèi)部的網(wǎng)絡(luò)設(shè)備監(jiān)控的具體需求,基于主動(dòng)節(jié)點(diǎn)的跨平臺(tái)網(wǎng)絡(luò)監(jiān)控系統(tǒng)的系統(tǒng)總體架構(gòu)設(shè)計(jì)如圖1所示。
由圖1可以看出,基于主動(dòng)節(jié)點(diǎn)的跨平臺(tái)網(wǎng)絡(luò)監(jiān)控系統(tǒng)主要由網(wǎng)絡(luò)資源設(shè)備、主動(dòng)節(jié)點(diǎn)、監(jiān)控系統(tǒng)和系統(tǒng)使用用戶四部分構(gòu)成。網(wǎng)絡(luò)資源設(shè)備包括交換機(jī)、路由器、終端監(jiān)測設(shè)備、各類服務(wù)器,以及其他的軟硬件設(shè)備等。主動(dòng)節(jié)點(diǎn)是各類監(jiān)控服務(wù)的載體,為SNMP、WMI、Syslog等服務(wù)提供運(yùn)行基礎(chǔ)。主動(dòng)節(jié)點(diǎn)采用主動(dòng)報(bào)文的形式與監(jiān)控系統(tǒng)進(jìn)行通信,將各類消息傳送至監(jiān)控系統(tǒng)。主動(dòng)節(jié)點(diǎn)上的主動(dòng)服務(wù)對(duì)本地的各類對(duì)象和其他節(jié)點(diǎn)的網(wǎng)絡(luò)資源進(jìn)行管理。監(jiān)控系統(tǒng)根據(jù)主動(dòng)節(jié)點(diǎn)采集的數(shù)據(jù)為用戶提供網(wǎng)絡(luò)運(yùn)行狀態(tài)信息、服務(wù)器運(yùn)行狀態(tài)信息、集群狀態(tài)信息等,實(shí)現(xiàn)各類告警信息的提示,并為用戶提供權(quán)限管理和任務(wù)分析等功能,同時(shí)將各類信息存入監(jiān)控系統(tǒng)數(shù)據(jù)庫[3]。
3 主動(dòng)節(jié)點(diǎn)設(shè)計(jì)(Design of active nodes)
3.1 主動(dòng)節(jié)點(diǎn)功能
主動(dòng)節(jié)點(diǎn)是指被安裝監(jiān)控代理的網(wǎng)絡(luò)設(shè)備,是網(wǎng)絡(luò)監(jiān)控系統(tǒng)的核心部件,具有管理非主動(dòng)節(jié)點(diǎn)和被監(jiān)控系統(tǒng)管理的雙重身份。主動(dòng)節(jié)點(diǎn)的所有功能都是通過節(jié)點(diǎn)上運(yùn)行的主動(dòng)代理服務(wù)實(shí)現(xiàn)的,包括命令的獲取、數(shù)據(jù)的采集和告警的處理等[4-6]。主動(dòng)代理的具體功能結(jié)構(gòu)如圖2所示,其包含的功能如下:
(1)獲取和接收網(wǎng)絡(luò)監(jiān)控中心的各類指令,執(zhí)行對(duì)網(wǎng)絡(luò)節(jié)點(diǎn)的監(jiān)控、異常數(shù)據(jù)采集和數(shù)據(jù)回傳。
(2)根據(jù)網(wǎng)絡(luò)監(jiān)控中心的指令,實(shí)現(xiàn)對(duì)本地服務(wù)庫的管理、配置等。
(3)接收主動(dòng)報(bào)文,并對(duì)主動(dòng)報(bào)文進(jìn)行解析,并執(zhí)行主動(dòng)報(bào)文中的主動(dòng)代碼。
(4)依據(jù)SNMP協(xié)議,調(diào)用本地SNMP服務(wù)和WMI服務(wù),實(shí)現(xiàn)對(duì)周圍非主動(dòng)節(jié)點(diǎn)和網(wǎng)絡(luò)設(shè)備的管理。
(5)對(duì)采集的數(shù)據(jù),根據(jù)一定的策略進(jìn)行分析、過濾和壓縮,消除冗余數(shù)據(jù),降低會(huì)出數(shù)據(jù)的流量,減少監(jiān)控系統(tǒng)的計(jì)算任務(wù)量。
3.2 主動(dòng)報(bào)文處理
當(dāng)主動(dòng)節(jié)點(diǎn)受到一個(gè)主動(dòng)報(bào)文后,主動(dòng)報(bào)文處理器首先對(duì)報(bào)文的類型進(jìn)行判斷。如果報(bào)文的類型不在主動(dòng)節(jié)點(diǎn)處理的范圍內(nèi),則這個(gè)報(bào)文就會(huì)被丟棄。如果報(bào)文能夠被節(jié)點(diǎn)識(shí)別,則節(jié)點(diǎn)會(huì)根據(jù)報(bào)文類型進(jìn)行相應(yīng)的處理。如果接收到的是普通數(shù)據(jù)采集報(bào)文。則主動(dòng)節(jié)點(diǎn)接收到此報(bào)文后,首先對(duì)主動(dòng)報(bào)文進(jìn)行安全認(rèn)證,認(rèn)證通過后,主動(dòng)報(bào)文處理器將其發(fā)送到相應(yīng)的數(shù)據(jù)采集主動(dòng)環(huán)境中。主動(dòng)環(huán)境依據(jù)主動(dòng)報(bào)文的主動(dòng)代碼,完成相應(yīng)主動(dòng)服務(wù)的啟動(dòng)工作,并進(jìn)行數(shù)據(jù)采集。如果接受到的報(bào)文是主動(dòng)服務(wù)庫管理數(shù)據(jù)報(bào)文,則主動(dòng)報(bào)文處理器會(huì)將此報(bào)文發(fā)送給主動(dòng)服務(wù)管理進(jìn)程。主動(dòng)服務(wù)管理進(jìn)程根據(jù)主動(dòng)報(bào)文中的主動(dòng)代碼管理主動(dòng)服務(wù)庫,實(shí)現(xiàn)對(duì)主動(dòng)節(jié)點(diǎn)各類服務(wù)的動(dòng)態(tài)增加、刪除和修改等功能[7]。
4 主動(dòng)報(bào)文的設(shè)計(jì)(Design of active packet)
在基于主動(dòng)節(jié)點(diǎn)的跨平臺(tái)網(wǎng)絡(luò)監(jiān)控系統(tǒng)中,主動(dòng)報(bào)文負(fù)責(zé)傳輸節(jié)點(diǎn)間的主動(dòng)程序和相關(guān)數(shù)據(jù),是監(jiān)控系統(tǒng)中數(shù)據(jù)傳輸?shù)闹匾d體。與傳統(tǒng)的網(wǎng)絡(luò)數(shù)據(jù)報(bào)文相比,主動(dòng)報(bào)文的特點(diǎn)在于主動(dòng)報(bào)文中含有可以執(zhí)行的主動(dòng)代碼。主動(dòng)IP信包是主動(dòng)報(bào)文的一種。本文采用主動(dòng)IP信包的方式來構(gòu)造主動(dòng)報(bào)文。主動(dòng)IP信包,在傳統(tǒng)IP數(shù)據(jù)報(bào)文的基礎(chǔ)上,增加了一種攜帶主動(dòng)代碼的機(jī)制,具體方法是在IP數(shù)據(jù)報(bào)文的選項(xiàng)域中插入主動(dòng)代碼。從而將傳統(tǒng)的IP網(wǎng)絡(luò)升級(jí)為主動(dòng)網(wǎng)絡(luò)。主動(dòng)IP信包由IP頭、專用頭和載荷三部分組成,報(bào)文的具體結(jié)構(gòu)如圖3所示。
在主動(dòng)IP信報(bào)中,IP頭由源地址、目的地址和IP選項(xiàng)三部分內(nèi)容構(gòu)成,IP頭的內(nèi)容與TCP/IP協(xié)議中的內(nèi)容是一致的,從而實(shí)現(xiàn)與IP數(shù)據(jù)包的兼容。主動(dòng)報(bào)文的核心組成部分為專用頭,它由版本號(hào)、報(bào)文類型、前地址和類型等部分構(gòu)成。版本號(hào)代表著IP信包的版本,類型對(duì)轉(zhuǎn)發(fā)程序和相關(guān)的代碼、協(xié)議等內(nèi)容進(jìn)行標(biāo)識(shí)。報(bào)文的類型直接影響著報(bào)文其他內(nèi)容的容量。前地址用于傳遞主動(dòng)代碼,為主動(dòng)報(bào)文經(jīng)過的上一跳的網(wǎng)絡(luò)節(jié)點(diǎn)地址。報(bào)文中的載荷部分對(duì)傳輸層是透明的,包括著網(wǎng)絡(luò)應(yīng)用層的各類信息。主動(dòng)IP信包的最大特點(diǎn)在于它能夠?qū)鹘y(tǒng)的IP數(shù)據(jù)包進(jìn)行兼容,能夠在傳統(tǒng)的IP數(shù)據(jù)包中嵌入主動(dòng)代碼,這位主動(dòng)網(wǎng)絡(luò)與傳統(tǒng)網(wǎng)絡(luò)的兼容提供了基礎(chǔ)。
5 數(shù)據(jù)采集方法(Data collection method)
獲取網(wǎng)絡(luò)運(yùn)行狀態(tài)監(jiān)控的基礎(chǔ)數(shù)據(jù)的關(guān)鍵就是網(wǎng)絡(luò)運(yùn)行狀態(tài)數(shù)據(jù)的采集。只有獲取了足夠的數(shù)據(jù),網(wǎng)絡(luò)監(jiān)控人員才能在這些基礎(chǔ)之上對(duì)網(wǎng)絡(luò)運(yùn)行的狀態(tài)進(jìn)行分析、預(yù)警和進(jìn)一步的控制[8]。為了實(shí)現(xiàn)更好的采集和傳送網(wǎng)絡(luò)監(jiān)控?cái)?shù)據(jù),本文設(shè)計(jì)了基于主動(dòng)網(wǎng)絡(luò)的數(shù)據(jù)采集和傳送方法。
5.1 基于主動(dòng)網(wǎng)絡(luò)的數(shù)據(jù)采集算法
針對(duì)網(wǎng)絡(luò)監(jiān)控系統(tǒng)的數(shù)據(jù)采集問題,本文設(shè)計(jì)了基于主動(dòng)網(wǎng)絡(luò)的動(dòng)態(tài)數(shù)據(jù)數(shù)據(jù)采集算法,算法的流程如圖4所示,算法描述如下:
第1步:假設(shè)t為主動(dòng)節(jié)點(diǎn)的采樣周期,則每間隔t秒,主動(dòng)節(jié)點(diǎn)就會(huì)對(duì)網(wǎng)絡(luò)設(shè)備的各種狀態(tài)進(jìn)行一次重新采樣。
第2步:對(duì)監(jiān)控系統(tǒng)中的每一個(gè)監(jiān)控設(shè)備都設(shè)定一個(gè)固定的數(shù)據(jù)采集周期,用T表示,設(shè)備的采集周期T應(yīng)不小于主動(dòng)節(jié)點(diǎn)的采樣周期t。T的值要等于節(jié)點(diǎn)采用周期t的平均值。主動(dòng)節(jié)點(diǎn)每間隔T秒向監(jiān)控中心上報(bào)一次網(wǎng)絡(luò)的運(yùn)行狀態(tài)數(shù)據(jù)。
第3步:對(duì)有特殊性能要求的指標(biāo),設(shè)定數(shù)據(jù)監(jiān)控的規(guī)則和閥值。主動(dòng)節(jié)點(diǎn)每間隔t秒就會(huì)按照性能指標(biāo)規(guī)則重新計(jì)算一次性能狀態(tài)數(shù)據(jù),如果指標(biāo)數(shù)值超過閥值,則將性能數(shù)據(jù)上報(bào)至網(wǎng)絡(luò)監(jiān)控中的監(jiān)控系統(tǒng)中。
第4步:若網(wǎng)絡(luò)運(yùn)行狀態(tài)的特定指標(biāo)性能產(chǎn)生異常,則該指標(biāo)性能數(shù)據(jù)的采集方式由周期性采樣變?yōu)橹鲃?dòng)數(shù)據(jù)采集方式進(jìn)行,并實(shí)時(shí)將性能及狀態(tài)數(shù)據(jù)傳送至網(wǎng)絡(luò)監(jiān)控中心。
第5步:若網(wǎng)絡(luò)監(jiān)控人員要對(duì)某一項(xiàng)特定的性能指標(biāo)進(jìn)行監(jiān)控,則向節(jié)點(diǎn)發(fā)送主動(dòng)報(bào)文,將此項(xiàng)指標(biāo)的采集方式由周期性采集轉(zhuǎn)變?yōu)橹鲃?dòng)式實(shí)時(shí)采集方式。觀察完畢后,則再次發(fā)送主動(dòng)報(bào)文,將數(shù)據(jù)采集方式有主動(dòng)采集轉(zhuǎn)變?yōu)橹芷谛圆杉?/p>
5.2 算法對(duì)比分析
本文提出的數(shù)據(jù)采集算法與傳統(tǒng)的數(shù)據(jù)采集算法相比較,具有較強(qiáng)的優(yōu)勢。對(duì)比過程如圖5所示。其中開始時(shí)間用T0表示,結(jié)束時(shí)間用T1表示。將兩種算法在T1—T0的時(shí)間間隔內(nèi)分別從網(wǎng)絡(luò)流量和網(wǎng)絡(luò)數(shù)據(jù)有效率兩方面進(jìn)行比較。
在數(shù)據(jù)傳輸過程中,數(shù)據(jù)包包括IP頭、UDP頭和狀態(tài)數(shù)據(jù)等部分。假定每個(gè)數(shù)據(jù)包中IP頭、UDP頭、運(yùn)行狀態(tài)數(shù)據(jù)和請(qǐng)求數(shù)據(jù)各算一個(gè)單位的數(shù)據(jù),則進(jìn)行如圖5所示對(duì)比。
(1)網(wǎng)絡(luò)流量分析。在T1至T0內(nèi),采用傳統(tǒng)采集算法所消耗的網(wǎng)絡(luò)流量為3*2*6/(T1-T0)=36/(T1-T0),采用本文數(shù)據(jù)采集算法所消耗的網(wǎng)絡(luò)流量為3*3/(T1-T0)=9/(T1-T0),由此可見本文設(shè)計(jì)算法的消耗的網(wǎng)絡(luò)流量小。
(2)網(wǎng)絡(luò)數(shù)據(jù)有效率分析。在T1至T0內(nèi),采用傳統(tǒng)采集算法傳輸?shù)臄?shù)據(jù)有效率為1*6/(3*2*6)=1/6,采用本文數(shù)據(jù)采集算法傳輸?shù)臄?shù)據(jù)有效率為2/(3*3)=2/9,由此可見本文設(shè)計(jì)算法在數(shù)據(jù)傳輸過程中,數(shù)據(jù)有效率更高。
6 結(jié)論(Conclusion)
本文以跨平臺(tái)技術(shù)為基礎(chǔ),設(shè)計(jì)了由網(wǎng)絡(luò)資源設(shè)備、主動(dòng)節(jié)點(diǎn)、監(jiān)控信息庫構(gòu)成的跨平臺(tái)網(wǎng)絡(luò)監(jiān)控系統(tǒng)。設(shè)計(jì)了基于主動(dòng)網(wǎng)絡(luò)的周期性數(shù)據(jù)采集算法,采用主動(dòng)報(bào)文的形式將信息發(fā)送給監(jiān)控平臺(tái)服務(wù)端,通過構(gòu)造主動(dòng)節(jié)點(diǎn)實(shí)現(xiàn)數(shù)據(jù)的采集和傳送控制。實(shí)踐證明,該系統(tǒng)能成功的不同平臺(tái)的網(wǎng)絡(luò)設(shè)備進(jìn)行監(jiān)控,提高電力系統(tǒng)的運(yùn)維效率。
參考文獻(xiàn)(References)
[1] Thomas R,Christel B,Martin R.Wireless Security Situation Awareness with Attack Identification Decision Support[C].2011 IEEE Symposium on Computational Intelligence in Cyber Security(CICS).Paris:IEEE,2011:144-151.
[2] XIE Li-Xia,Wang Ya-chao,YU Jin-bo.Network Security Situation Awareness Based on Neural Networks[J].Journal Tsinghua University:Science & Technology,2013,23(12):1750-1760.
[3] HANG Tong-qing,ZHUANG Yi.An Approach to Real-Time Network Security Situation Prediction[J].Journal of Chinese Computer System,2014,35(2):303-306.
[4] 崔杰,李陶深,蘭紅星.基于Hadoop的海量數(shù)據(jù)存儲(chǔ)平臺(tái)設(shè)計(jì)與開發(fā)[J].計(jì)算機(jī)研究與發(fā)展,2012,49(l):12-18.
[5] 丁琳琳,等.基于Map-Reduce的海量數(shù)據(jù)高效Skyline查詢處理[J].計(jì)算機(jī)學(xué)報(bào),2011,34(10):1786-1796.
[6] 丁治明,高需.面向物聯(lián)網(wǎng)海量傳感器采樣數(shù)據(jù)管理的數(shù)據(jù)庫集群系統(tǒng)框架[J].計(jì)算機(jī)學(xué)報(bào),2012,35(6):1175-1190.
[7] 劉靖龍,劉穎,張思東.基于RTL8169網(wǎng)卡的零拷貝技術(shù)研究與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2011,35(1):67-69.
[8] 肖光華.網(wǎng)絡(luò)監(jiān)聽技術(shù)的研究與應(yīng)用[D].上海:同濟(jì)大學(xué)計(jì)算機(jī)科學(xué)技術(shù)學(xué)院,2006.
作者簡介:
許劭慶(1974-),男, 本科,高級(jí)工程師.研究領(lǐng)域:軟件開發(fā).
馬 彪(1962-),男, 本科,高級(jí)工程師.研究領(lǐng)域:計(jì)算機(jī)網(wǎng)絡(luò).
安英海(1976-),男, 本科,高級(jí)工程師.研究領(lǐng)域:軟件開發(fā).