鄧小清 王倫浪
(四川文理學(xué)院智能制造學(xué)院,四川 達州 635000)
隨著個人網(wǎng)絡(luò)設(shè)備尤其是移動網(wǎng)絡(luò)設(shè)備的快速普及和各種移動互聯(lián)網(wǎng)應(yīng)用的迅速發(fā)展,移動互聯(lián)網(wǎng)已成為人們?nèi)粘I钪须x不開的信息傳播平臺.然而,伴隨著網(wǎng)絡(luò)流量的增大以及各種類型流量的不斷出現(xiàn),網(wǎng)絡(luò)流量中形形色色的異常流量也隨之而來,嚴重影響了網(wǎng)絡(luò)通信的質(zhì)量和用戶主機的安全使用.攻擊者會使用木馬或者僵尸網(wǎng)絡(luò)等技術(shù)控制相當大規(guī)模的僵尸計算機來攻擊用戶主機、投遞垃圾郵件,更有甚者進行分布式拒絕服務(wù)攻擊(distributed denial of service, DDoS),嚴重威脅用戶主機甚至整個網(wǎng)絡(luò)的安全[1].最近幾年,隨著硬件設(shè)備的提升和網(wǎng)絡(luò)帶寬的增加,網(wǎng)絡(luò)攻擊也在向著快速化、自動化、隱蔽化和復(fù)雜化發(fā)展,傳統(tǒng)的基于特征分析的網(wǎng)絡(luò)流量監(jiān)測和攻擊識別技術(shù)已不能達到現(xiàn)實的需要[2].目前,在網(wǎng)絡(luò)攻擊檢測領(lǐng)域,網(wǎng)絡(luò)異常檢測方面,越來越多的人開始重視針對DDoS攻擊的檢測技術(shù),DDoS攻擊作為現(xiàn)今網(wǎng)絡(luò)攻擊最為主要的手段,其相應(yīng)的檢測技術(shù)己被資深網(wǎng)管和分析員所研究和利用[3].
數(shù)據(jù)傳輸是指數(shù)據(jù)源與數(shù)據(jù)宿兩者之間經(jīng)由一條或多條線路進行數(shù)據(jù)傳送,也可以理解為是一種把數(shù)據(jù)從某處送往另一處的操作[4].可以預(yù)計到,由于流量監(jiān)測中心會在短時間內(nèi)接收到來自網(wǎng)絡(luò)設(shè)備子信息熵技術(shù)的大量數(shù)據(jù)傳輸,這就要求信息熵技術(shù)有能處理大量并發(fā)請求的能力,必要時需要能對接收到的數(shù)據(jù)進行異步處理[5].
數(shù)據(jù)采集由監(jiān)測建筑中的各計量裝置、數(shù)據(jù)采集器和數(shù)據(jù)采集軟件組成,主要把各計量裝置采集的流量數(shù)據(jù)采集到數(shù)據(jù)庫中.分項流量數(shù)據(jù)的采集頻率為15 min/次~1 h/次之間,數(shù)據(jù)采集頻率可根據(jù)具體需要靈活設(shè)置.本信息熵技術(shù)采用異步傳輸和同步傳輸兩種傳輸方式,以寬帶傳輸?shù)男问竭M行傳輸,以達到實現(xiàn)多路復(fù)用,增加信道容量,并且提高傳輸速率的目的[6].
數(shù)據(jù)的分析主要通過聯(lián)機分析處理(on-line analytical processing,OLAP)和數(shù)據(jù)挖掘(data mining,DM)來實現(xiàn)[7].
數(shù)據(jù)倉庫就是一個數(shù)據(jù)的集合,是面向主題的、相對穩(wěn)定的、集成的、并且會隨時間改變的一個數(shù)據(jù)集合,主要用于支持管理決策.集成性是數(shù)據(jù)倉庫所有特性中最重要的部分[8].面向應(yīng)用的操作型數(shù)據(jù)庫往往相互之間是獨立并且異構(gòu)的.由于監(jiān)測平臺中所采集到的數(shù)據(jù)來自于不同的子信息熵技術(shù),數(shù)量龐大,對數(shù)據(jù)的處理和存儲有極高的要求,鑒于數(shù)據(jù)倉庫的特性,本信息熵技術(shù)通過對使用單位需求的分析,建立企業(yè)數(shù)據(jù)倉庫的邏輯模型和物理模型,并規(guī)劃好信息熵技術(shù)的應(yīng)用架構(gòu),將使用單位各類數(shù)據(jù)按照分析主題進行組織和歸類[9].
1.4.1OLAP技術(shù)
數(shù)據(jù)庫之父Codd提出了聯(lián)機分析處理的概念,并且他同時提出的相關(guān)12條準則將OLAP與OLTP(on-line transaction processing)聯(lián)機事務(wù)處理區(qū)分開來.聯(lián)機分析處理技術(shù)的顯著優(yōu)點在于它可以將數(shù)據(jù)分析結(jié)果可視化,分析數(shù)據(jù)十分靈活,而且數(shù)據(jù)操作很直觀,從而使龐大的數(shù)據(jù)分析工作得到簡化,變得輕松和高效.簡而言之,聯(lián)機分析處理技術(shù)是一種多維數(shù)據(jù)分析工具的集合[10].
1.4.2DM技術(shù)
數(shù)據(jù)挖掘技術(shù)是經(jīng)過了人們對數(shù)據(jù)庫技術(shù)的長期研究開發(fā)之后的產(chǎn)物.DM技術(shù)是數(shù)據(jù)庫技術(shù)的更高級階段,不僅可以做到數(shù)據(jù)庫能做的查詢遍歷,還能找到數(shù)據(jù)與數(shù)據(jù)之間的關(guān)聯(lián),通過這些強大的功能可以促進數(shù)據(jù)的傳遞.在網(wǎng)絡(luò)流量監(jiān)測技術(shù)中,所采集到的數(shù)據(jù)是大量、不完全的,數(shù)據(jù)挖掘技術(shù)就是可以從中能提取到隱含、事先不知道的內(nèi)容,然而是潛在有用的信息的一個過程.換言之,DM技術(shù)就是更深層次的一種數(shù)據(jù)分析方法[11].
數(shù)據(jù)倉庫、聯(lián)機分析處理和數(shù)據(jù)挖掘是網(wǎng)絡(luò)流量異常監(jiān)測技術(shù)的三大骨干技術(shù).在解決問題的同時,數(shù)據(jù)倉庫也利用OLAP中間件實現(xiàn)了數(shù)據(jù)的整合.OLAP中間件使數(shù)據(jù)保持了各數(shù)據(jù)集市之間的一致性,并能在短時間之內(nèi)完成數(shù)據(jù)的快速輸出.而聯(lián)機分析處理技術(shù)和數(shù)據(jù)挖掘技術(shù)都屬于進行數(shù)據(jù)分析的過程,只是程度深淺不同而已.OLAP技術(shù)是一種程度較淺的數(shù)據(jù)分析過程,是一種交互的分析過程.DM技術(shù)則是深層次的分析過程,還是一種自動的分析過程,正因為DM技術(shù)的這兩個特性,管理人員由此可以獲得更細致化以及更深層次的信息.
需求分析是實施的第一步,在其他活動開展之前必須明確地定義使用單位對檢測平臺的期望和需求,包括需要分析的主題,各主題可能查看的角度(維度).需要發(fā)現(xiàn)使用單位哪些方面的規(guī)律,用戶的需求必須明確.網(wǎng)絡(luò)流量異常監(jiān)測技術(shù)主要是針對節(jié)能監(jiān)測平臺應(yīng)用于領(lǐng)導(dǎo)的決策層而設(shè)計,側(cè)重于數(shù)據(jù)統(tǒng)計、分析和直觀的展現(xiàn)功能.在這一平臺上,通過建立專屬的網(wǎng)絡(luò)流量數(shù)據(jù)倉庫,提煉出價值數(shù)據(jù),經(jīng)過統(tǒng)計、分析,以信息發(fā)布的方式,多角度直觀地將流量情況展現(xiàn)給管理部門(這些對比分析以動態(tài)曲線圖、餅圖、報表等多種形式展現(xiàn)).為現(xiàn)場操作人員、領(lǐng)導(dǎo)提供了不同的網(wǎng)絡(luò)流量管理平臺,實現(xiàn)了對網(wǎng)絡(luò)流量消耗信息熵技術(shù)的各級管理需求.滿足建筑流量監(jiān)測的基本功能,實現(xiàn)流量監(jiān)測數(shù)據(jù)實時上傳、接收,并兼具人工采集數(shù)據(jù)錄入、數(shù)據(jù)丟失報警、修補及糾錯功能.同時,信息熵技術(shù)應(yīng)具備操作簡單、易用、直觀、易維護的特點,方便操作人員的使用.實施過程中需要確定信息熵技術(shù)的核心需求,包括當前要解決的主要問題和未來幾年信息熵技術(shù)擴展的需要.
監(jiān)測流程大致可分為三個層次:通過安裝在網(wǎng)絡(luò)設(shè)備中的監(jiān)測終端來采集數(shù)據(jù),由各個子信息熵技術(shù)上傳至上級中心監(jiān)測技術(shù).再由中心監(jiān)測平臺對數(shù)據(jù)進行處理和分析.最后,將分析結(jié)果呈現(xiàn)給決策者,供決策者進行決策,如圖1所示.在平臺運行過程中,建立定額管理制度是流量管理的一個重要部分.
圖1 監(jiān)測平臺運行流程圖
整個信息熵技術(shù)整體采用五層架構(gòu)體系設(shè)計,包括:數(shù)據(jù)采集層,數(shù)據(jù)傳輸層,數(shù)據(jù)處理層,應(yīng)用展示層和數(shù)據(jù)上傳層5層.
2.3.1數(shù)據(jù)采集層
數(shù)據(jù)采集層的主要功能:數(shù)據(jù)采集器對下面各種智能計量儀表、控制設(shè)備的數(shù)據(jù)進行采集,并以TCP/IP的方式向上傳輸?shù)綌?shù)據(jù)中心.
數(shù)據(jù)采集采取定時自動模式,可根據(jù)事先設(shè)定的采集間隔自動進行數(shù)據(jù)采集和存儲(信息熵技術(shù)支持秒級數(shù)據(jù)采集).數(shù)據(jù)采集采取了多種信息熵技術(shù)安全性措施,如上層網(wǎng)絡(luò)狀態(tài)的偵測,下層儀表設(shè)備的故障判斷與定位等.
2.3.2數(shù)據(jù)傳輸層
數(shù)據(jù)上傳采用VPN(virtual private network)通道以加密數(shù)據(jù)報文方式上傳,定時主動往中心服務(wù)器傳輸流量數(shù)據(jù).信息熵技術(shù)默認是每天上傳一次,當采集器端網(wǎng)絡(luò)出現(xiàn)臨時故障時,采集器自身提供不少于30 d的臨時數(shù)據(jù)存儲空間,并在網(wǎng)絡(luò)再次恢復(fù)時主動把未上傳的數(shù)據(jù)傳輸?shù)街行姆?wù)器,同時信息熵技術(shù)支持數(shù)據(jù)中心的補調(diào)上傳指定的數(shù)據(jù),以保證流量數(shù)據(jù)的完整性.
2.3.3數(shù)據(jù)處理層
在流量管理平臺,本地的數(shù)據(jù)采集器中緩存最新的30 d的歷史流量數(shù)據(jù),并每天將數(shù)據(jù)都上傳至網(wǎng)絡(luò)流量管理中心.
“數(shù)據(jù)存儲區(qū)”中存儲的是按照數(shù)據(jù)抽取頻率,把原始采集數(shù)據(jù)與用能單位基礎(chǔ)信息、地理基礎(chǔ)信息、流量報警信息結(jié)合處理后,形成網(wǎng)絡(luò)流量計量和遠程監(jiān)測技術(shù)實時監(jiān)測、明細查詢、報警提示所需要的原始明細數(shù)據(jù).這樣各類數(shù)據(jù)的大批量加工既可不影響實時的數(shù)據(jù)采集,而只是在數(shù)據(jù)庫上進行處理,同時也為各類明細查詢顯示提供給出數(shù)據(jù)源.其物理結(jié)構(gòu)與原始采集數(shù)據(jù)庫有所不同,增加了明細查詢所需的內(nèi)容.
“后臺分析數(shù)據(jù)庫”中存儲的是按照數(shù)據(jù)抽取頻率,把數(shù)據(jù)存儲區(qū)的基礎(chǔ)數(shù)據(jù)按照統(tǒng)計、分析、比較功能的要求進行不同時間段的分類、匯總和折算.這樣提高整個信息熵技術(shù)的運行效率,最大化縮短信息熵技術(shù)的響應(yīng)時間.這樣各類數(shù)據(jù)的大批量加工不會影響到網(wǎng)絡(luò)流量計量和遠程監(jiān)測技術(shù)的查詢響應(yīng)速度,只是在數(shù)據(jù)庫內(nèi)進行處理,處理后的結(jié)果可以讓信息熵技術(shù)根據(jù)用戶的需求直接進行調(diào)用,大大減少信息熵技術(shù)頁面功能的計算工作量,提高整個信息熵技術(shù)的運行效率,最大化縮短信息熵技術(shù)的響應(yīng)時間.
2.3.4應(yīng)用展示層
對經(jīng)過數(shù)據(jù)處理后的分類分項流量數(shù)據(jù)進行分析匯總和整合,通過靜態(tài)表格和動態(tài)圖表方式將流量數(shù)據(jù)展示出來,為節(jié)能運行、節(jié)能改造、信息服務(wù)和制定政策提供信息服務(wù).
展示層采用B/S軟件體系結(jié)構(gòu),有權(quán)限的用戶可以直接利用Internet瀏覽器方式訪問工業(yè)流量監(jiān)測分中心服務(wù)器,查看數(shù)據(jù)報表和圖表等信息,操作方便,免安裝、維護.
數(shù)據(jù)圖表是反映各項采集數(shù)據(jù)和統(tǒng)計數(shù)據(jù)的數(shù)值、趨勢和分布情況的直觀圖形和對應(yīng)表格,可分為數(shù)據(jù)透視表、餅圖、柱狀圖、線圖、儀表盤或動畫等,格式靈活,可交互操作.代碼如下:
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有關(guān)程序集的常規(guī)信息通過下列屬性集
// 控制.更改這些屬性值可修改
// 與程序集關(guān)聯(lián)的信息.
[assembly: AssemblyTitle("DAL")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("SkyUN.Org")]
[assembly: AssemblyProduct("DAL")]
[assembly: AssemblyCopyright("版權(quán)所有 (C) SkyUN.Org 2013")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 將 ComVisible 設(shè)置為 false 使此程序集中的類型
// 對 COM 組件不可見.如果需要從 COM 訪問此程序集中的類型,
// 則將該類型上的 ComVisible 屬性設(shè)置為 true.
[assembly: ComVisible(false)]
// 如果此項目向 COM 公開,則下列 GUID 用于類型庫的 ID
[assembly: Guid("6c98509f-9bb1-4d41-aceb-cde0239e89f9")]
// 程序集的版本信息由下面四個值組成:
//
// 主版本
// 次版本
// 內(nèi)部版本號
// 修訂號
//
// 可以指定所有這些值,也可以使用“修訂號”和“內(nèi)部版本號”的默認值,
// 方法是按如下所示使用“*”:
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
BLL的Properties如下:
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有關(guān)程序集的常規(guī)信息通過下列屬性集
// 控制.更改這些屬性值可修改
// 與程序集關(guān)聯(lián)的信息.
[assembly: AssemblyTitle("BLL")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("SkyUN.Org")]
[assembly: AssemblyProduct("BLL")]
[assembly: AssemblyCopyright("版權(quán)所有 (C) SkyUN.Org 2013")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 將 ComVisible 設(shè)置為 false 使此程序集中的類型
// 對 COM 組件不可見.如果需要從 COM 訪問此程序集中的類型,
// 則將該類型上的 ComVisible 屬性設(shè)置為 true.
[assembly: ComVisible(false)]
// 如果此項目向 COM 公開,則下列 GUID 用于類型庫的 ID
[assembly: Guid("9281ac7b-abb2-4bfa-8ee1-fbb2cb7fd9a7")]
// 程序集的版本信息由下面四個值組成:
// 主版本
// 次版本
// 內(nèi)部版本號
// 修訂號
// 可以指定所有這些值,也可以使用“修訂號”和“內(nèi)部版本號”的默認值,
// 方法是按如下所示使用“*”:
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
2.3.5數(shù)據(jù)上傳層
數(shù)據(jù)上傳這一模塊中,要求實現(xiàn)對老年社區(qū)網(wǎng)絡(luò)設(shè)備的基本信息以及精細到每個項目的流量的信息實現(xiàn)同步上傳至上級數(shù)據(jù)中心的功能.其中,數(shù)據(jù)上傳頻率根據(jù)監(jiān)測需求靈活設(shè)置,數(shù)據(jù)上傳時所采用的數(shù)據(jù)交換格式是XML數(shù)據(jù)包,通過NTP/SNTP協(xié)議來達到與上級數(shù)據(jù)中心的時間一致.并且,在與上級中心的數(shù)據(jù)上傳過程中,會采取數(shù)據(jù)加密和身份認證等方式來確保安全性.
以統(tǒng)計表為例,該數(shù)據(jù)表保存了建筑用電的時間、網(wǎng)絡(luò)流量等信息,如表1和表2所示.
ETL數(shù)據(jù)采集和處理信息熵技術(shù)采用C/S架構(gòu)的WPF程序和Windows服務(wù)進行用戶交互,應(yīng)用層采用基于TCP/IP協(xié)議的方式,由客戶端和服務(wù)器端通過XML格式進行數(shù)據(jù)傳輸,并采用MD5加密、AES算法加密,增強數(shù)據(jù)傳輸安全性.便捷的安裝和配置,無需為客戶端采集軟件類別不同和數(shù)據(jù)結(jié)構(gòu)不同而進行定制開發(fā);多客戶端同時使用,解決并發(fā)的問題;斷點續(xù)傳,解決由于網(wǎng)絡(luò)產(chǎn)生的丟數(shù)的問題.符合國家網(wǎng)絡(luò)流量管理信息熵技術(shù)數(shù)據(jù)采集處理導(dǎo)則規(guī)范.
總體的數(shù)據(jù)業(yè)務(wù)流程如圖2所示.
采用Windows服務(wù)保護WPF桌面應(yīng)用的方式運行.通過WPF桌面應(yīng)用程序(即EnergyView數(shù)據(jù)采集軟件服務(wù)端程序)的配置,配置好服務(wù)端選項后,即可運行后臺服務(wù)程序進行數(shù)據(jù)接收、解析、持久化存儲、流量數(shù)據(jù)拆分、流量數(shù)據(jù)處理、分類分項數(shù)據(jù)匯總等,并與客戶端進行保持通訊,監(jiān)控客戶端及儀表狀態(tài)等.要點有:
表1 統(tǒng)計節(jié)點表
表2 統(tǒng)計節(jié)點維度表
圖2 ETL數(shù)據(jù)業(yè)務(wù)流程圖
(1)持久打開端口進行監(jiān)聽,異步處理接收到的數(shù)據(jù)文件;
(2)多線程處理,保證多客戶端通訊;
(3)標準化數(shù)據(jù)接口,實時統(tǒng)一處理各類流量數(shù)據(jù);
(4)持久化數(shù)據(jù)庫服務(wù)器存儲過程處理,較快提高運行速度.
從測試階段上分,軟件測試主要分為單元測試、集成測試和信息熵技術(shù)測試.單元測試也叫模塊測試,在編程階段由程序員對自己的編程模塊進行自檢.在單元測試期間主要針對以下幾個方面進行:模塊接口、局部數(shù)據(jù)結(jié)構(gòu)、重要的執(zhí)行通路、出錯處理通路和邊界條件等.集成測試也叫組裝測試,是對由各模塊組裝而成的程序進行測試,主要目標是發(fā)現(xiàn)模塊間的接口和通信問題.而信息熵技術(shù)測試是軟件測試中最后的、最完整的測試,是在單元測試、模塊測試的基礎(chǔ)上進行的,從全局來考察軟件信息熵技術(shù)的功能和性能要求.通常信息熵技術(shù)測試包括確認測試和驗收測試.確認測試主要依據(jù)信息熵技術(shù)需求來對軟件的功能進行檢查,看是否與最初設(shè)計目標要求一致.確認測試的另一項重要內(nèi)容是軟件配置復(fù)查,其目的保證軟件配置的所有成分都已經(jīng)齊全,文檔與程序完全一致,具有完成軟件維護所必須的細節(jié).在實際操作中,對軟件的驗收測試可能會維持相當長的一段時間.本智能監(jiān)測技術(shù)使用α測試和β測試過程來完成初步驗收測試.
測試環(huán)境分為硬件和軟件兩種環(huán)境.硬件環(huán)境包括了測試必須的服務(wù)器,客戶端,網(wǎng)絡(luò)連接設(shè)備以及打印機等輔助硬件設(shè)備.軟件環(huán)境是指被測軟件在運行時的操作信息熵技術(shù),數(shù)據(jù)庫及其他應(yīng)用軟件構(gòu)成的環(huán)境.在本章節(jié)中主要分析軟件環(huán)境.網(wǎng)絡(luò)異常監(jiān)測技術(shù)的開發(fā)平臺選用.Net開發(fā)平臺,操作信息熵技術(shù)采用Win Server 2003,因為計算機信息熵技術(shù)的核心信息熵技術(shù)是操作信息熵技術(shù),所以操作信息熵技術(shù)的選取要保證具有極高的可靠性和可用性.本監(jiān)測平臺的開發(fā)工具為Visual Studio 2008.Visual Studio 2008能夠提供調(diào)試,數(shù)據(jù)庫,高級開發(fā)工具等強大的功能,讓開發(fā)者具備了創(chuàng)建更安全可靠的軟件的能力.
經(jīng)過對信息熵技術(shù)運行情況的跟蹤分析,發(fā)現(xiàn)網(wǎng)絡(luò)異常監(jiān)測技術(shù)運行良好穩(wěn)定,各項指標符合預(yù)期的目標.下面對信息熵技術(shù)性能的測試結(jié)果進行展示,包括了主機的性能測試和準確性測試.其中,對于主機性能的測試,其數(shù)據(jù)庫服務(wù)器與應(yīng)用服務(wù)器的運行狀態(tài)均為良好;而針對準確性所進行測試,則具體的測試用例如表3中所示.
測試結(jié)果分析如下: 基于測試結(jié)果在利用信息熵技術(shù)來進行運行情況的跟蹤與分析的基礎(chǔ)上,可以認為整個網(wǎng)絡(luò)中的異常監(jiān)測體系能夠準確監(jiān)測各項異常,且相關(guān)的技術(shù)指標與參數(shù)也符合預(yù)期的目標.此外,根據(jù)準確性的測試用例的具體結(jié)果,認為外部的參數(shù)文件可以將其數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫中,能夠得到正確的維度分解結(jié)果與數(shù)據(jù),并最終通過知識庫來體現(xiàn)參數(shù)的設(shè)置結(jié)果.
表3 測試用例
在網(wǎng)絡(luò)攻擊檢測領(lǐng)域和網(wǎng)絡(luò)異常檢測領(lǐng)域,針對分布式拒絕服務(wù)攻擊(DDoS攻擊)的檢測技術(shù),己被資深網(wǎng)管和分析員所研究和利用.而利用網(wǎng)絡(luò)流量異常監(jiān)測來提高網(wǎng)絡(luò)監(jiān)測數(shù)據(jù)處理和存儲的效率的同時,還可以利用信息熵技術(shù)來提高檢測準確度.本文基于這些技術(shù),通過合理的架構(gòu),使得信息熵技術(shù)在功能性方面對于決策更加有效合理,同時測試結(jié)果也利用信息熵技術(shù)來進行運行情況的跟蹤與分析,可以更好地為整個網(wǎng)絡(luò)中的異常監(jiān)測體系準確監(jiān)測各項異常服務(wù).