摘? 要: 針對校園網網絡覆蓋面不廣、執行功能相對單一、安全隱患較大的問題,提出以數據挖掘為基礎,以K?means算法作為主要分析算法的校園流量監測系統。校園流量監測系統在原有的校園網管理系統上做了更為完善的改進與優化,能夠隨時隨地監測校園網流量的異常與否,同時對校園網系統的數據信息進行收集,以分析其數據信息趨勢并做出決策。通過實驗對比可知,以數據挖掘為基礎依據的校園流量監測系統比以往校園網系統更具多樣性,系統穩定性更高,應用范圍更加廣泛,通過校園網系統對校園網絡進行管理具有更好的執行能力。
關鍵詞: 監測系統設計; 流量監測; 數據挖掘; 數據采集; 數據分析; 校園網
中圖分類號: TN99?34? ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼: A? ? ? ? ? ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2020)21?0059?05
Design of campus traffic monitoring system based on data mining
ZHOU Kangle
(Nanchang Institute of Technology, Nanchang 330044, China)
Abstract: In view that the coverage of campus network is not wide, the executive function is relatively single and the security risks are large, a data mining based campus traffic monitoring system which takes K?means algorithm as the main analysis algorithm is proposed. The campus traffic monitoring system is improved and perfected on the basis of the original campus network management system, so it can monitor the campus network traffic at anytime and anywhere. At the same time, the data information of the campus network system is collected to analyze the trend of data information and make decisions. In comparison with the previous campus network system, the campus traffic monitoring system based on data mining has more diversity, higher system stability and wider application range. Moreover, the campus network system has better executive ability in the management of the campus network.
Keywords: monitoring system design; traffic monitoring; data mining; data acquisition; data analysis; campus network
0? 引? 言
在時代的發展進程當中,高校校園網的建設與發展已經成為高校建設的關鍵組成部分[1]。校園網對于高校辦公、教學以及科研方面的應用程度也越來越廣泛。面對復雜多變、危險與安全并存的網絡現狀環境,校園網在實際應用的過程當中遇到的威脅與資源保護問題越來越嚴峻[2]。校園網在其自身網絡限制與防護上往往存在薄弱環節,極易受到網絡上如惡意站點、木馬程序等各種各樣的惡意攻擊。此類網絡惡意攻擊的出現,既使得高校校園網面臨不可預知的安全威脅,也讓其因網絡流量異常等問題而運行緩慢卡頓。對網絡數據流量進行詳細的分析并理清其內部關系,能夠幫助校園網管理人員更好地對校園網絡進行管理[3]。通常來說,校園網設計應用較少,規模相對不大,在實際管理上具備比其他網絡架構更明顯的優勢。但是隨著網絡的發展和網絡環境不斷的復雜化,校園網絡的規模和設計應用數量在逐年增長,同時,各類網絡病毒和惡意攻擊的形式也在不斷發生變化[4]。校園網絡管理應當保證其具備對應的可控性、可用性以及穩定牢固的安全水平,是亟需解決的問題。通過數據挖掘技術,對校園網流量進行進一步的流量監測和異常流量的預警以及分析,能夠幫助高校更好的運行和維護校園網絡。
1? 數據挖掘技術
1.1? 數據挖掘的定義及其分類
1.1.1? 數據挖掘的定義
隨著信息技術的不斷發展與成熟,互聯網數據庫當中的數據成倍增加。 面對日益龐雜的數據庫信息,人們需要找尋一種合適的數據索引以及分析工具,在數以萬計的數據庫信息當中進行有效信息的提取,并且能夠從所提取信息當中分析對應的發展趨勢[5]。這時就用到了數據挖掘技術。數據挖掘技術起源于20世紀80年代,發展期間幾經波折,但是隨著信息技術的發展和專家學者的研究與開發,數據挖掘技術發展至今已經相對成熟,被廣泛應用到生產生活的各個方面。
1.1.2? 數據挖掘的分類
數據挖掘技術旨在從大量、不規則的大型數據庫當中挖掘有效的、人類所需要的數據信息[6]。同時,依據這些信息做出進一步的分析和關聯,幫助人們發現其隱藏規則,做出更好的工作規劃和工作準備。以數據挖掘技術所對應的知識類型為基礎依據,可以將其大致劃分為以下幾類,即總結規則、時序規則、趨勢分析、關聯規則、分類規則以及聚類規則等;以其技術的不同為基礎依據,可以分為規則歸納、決策樹、可視化技術以及人工神經網絡等各種方法[7];以其不同的知識表達為基礎依據,可以分為高層次挖掘、原始層次挖掘以及多層次挖掘等。
1.2? 數據挖掘過程
數據挖掘過程是從大量、龐雜的數據庫當中進行篩選和甄別的過程。數據庫當中的數據龐大繁復,直接進行數據挖掘往往難以達到預期效果。在數據挖掘的實際應用過程中,往往需要通過以下步驟逐步進行,以獲得最佳效果[8]。
1) 進行相應的數據準備。數據準備階段需要以下三個細分步驟依次執行:
① 進行相應的數據選擇,依據在實際應用當中的不同需求,進行相應的目標數據集群選擇,縮小數據篩選范圍。
② 對數據做出篩選與凈化,依據實際情況通過對應策略對數據噪聲進行消除,以此減免數據庫當中的數據信息可能發生的冗余。同時,對數據信息進行合理的推斷和預算,保證信息完整,避免其不完整性。
③ 對數據進行一定的變換和壓縮,依據實際的數據處理任務,將數據信息進行對應的分組,并且進行離散與連續數據之間的相互轉換,同時對數據進行相應的壓縮。
2) 進行數據挖掘的方法以及算法的相關選擇,選擇的基本原則是方法與算法能夠與數據處理相互匹配,同時盡可能的使處理結果最優。
3) 對數據挖掘的信息分析、評價與表達。在通過數據挖掘技術對海量的信息數據進行甄別與篩選之后,數據結果應當能夠通過直觀明了的可視化圖表形式進行表達。
數據挖掘的完整流程圖如圖1所示。
1.3? 數據挖掘與流量監測的關系
在學校規模不斷擴張,互聯網應用程度越來越廣泛的過程當中,校園網的數據流量越來越多。與此同時帶來的問題是各種異常網絡行為的出現,種種數據流量的異常情況隨之產生[9]。在大量數據流量信息當中,應當通過相應的分析手段,對其中異常的數據流量情況進行甄別,并通過分析其異常數據情況,得到異常數據流量的隱藏特征,同時針對特征做出對應的措施。在此過程當中,數據挖掘技術的應用十分重要。通過數據挖掘技術能夠實現異常數據流量的篩選,并且能分析出其中的抽象規則[10]。數據挖掘技術為異常數據流量的分析提供了極大便利,幫助網絡管理員在龐雜的數據當中快速找到其不同特征并得以利用。
2? 校園流量監測系統設計
2.1? 監測系統整體框架
校園網流量的監測系統,主要是通過技術手段對校園網絡當中的數據流量做出對應的監測,并根據監測數據進行數據流量正常與否的判斷。校園網的流量監控系統從結構上看主要包括兩部分的內容:一部分功能的實現位置為服務器端口,主要執行的功能為對相應正常的網絡流量做出分析與處理;另一部分功能的實現位置為客戶端口,可以對校園網出現異常的數據流量進行分析[11]。在業務的具體計算、處理以及分析上,主要通過瀏覽器/服務器模式進行對應的操作。這一方法能夠使開發難度盡可能降到最低,并減少對硬件的依賴,在處理上更為簡潔。其具體流程圖如圖2所示。
2.2? 監測系統各模塊功能設計
2.2.1? 數據收集模塊
數據收集功能主要實現校園網使用的對應數據流量信息的相關收集工作,收集數據將作為進行校園網流量正常與否判斷的主要依據[12]。在數據收集功能當中,其收集數據的方式主要是對經由交換機端口的各類數據包進行收集。首先需要獲取客戶端的IP地址,在獲取IP地址之后,對各類交換機當中的網絡端口進行相應配置信息的收集以及統計,在此過程當中,同時能夠掌握網速以及相應的網絡端口狀態。
2.2.2? 獲取知識模塊
獲取知識的功能是指通過一定的數據挖掘算法對所收集的數據組成的數據集合進行特征挖掘,同時對這些數據結構進行分析。然后將學習的結果在對應的日志文件當中進行儲存,便于進行以后的學習工作。鑒于校園網的運行是不間斷的,為了學習工作能夠跟隨最新的數據流量情況,需要及時對系統日志進行更新。實際處理過程當中,需要對收集數據進行相應的預處理工作,保證數據格式相對規范,能夠順利進行知識獲取工作。數據挖掘流程圖如圖3所示。
2.2.3? 流量分組監測模塊
對流量進行分類監測的功能通過對應的算法實現。首先應當建立對應的分析及預測模型,其次對數據庫所收集到的網絡數據進行對應的分類。在具體執行上,首先在各網絡節點當中輸入對應的參數值,然后以分類個數為基礎依據對整體網絡數據做出對應的數據處理,從而得到不同的聚類數組。在聚類數組當中計算各節點到中心節點的距離,并儲存對應的中心點坐標數據,進行相似度計算。
2.2.4? 網絡分析模塊
網絡分析模塊主要執行的功能是對所篩選和甄別出的異常流量數據進行分析,以便后期更進一步地對網絡流量異常與否進行辨別,這樣網絡管理員就能夠在工作時具備更高的工作效率。網絡分析模塊的流程圖如圖4所示。
3? 流量監測系統的實現
3.1? 用戶登錄實現
在校園網的流量監測系統當中,主要分為兩類常見的系統使用者:一類是普通的校園網用戶;一類是網絡管理員。無論是哪類用戶,使用流量監測系統的前提是通過合法的身份進行系統登錄。在登錄程序啟動之后,用戶會打開對應的登錄界面,將自己的登錄賬號以及密碼等登錄信息輸入登錄界面對應的位置進行登錄。信息輸入之后,系統會對其登錄信息進行后臺驗證。后臺驗證的目的主要有兩個:一是驗證用戶輸入的登錄信息是否合法;二是檢驗用戶登錄的信息是否滿足格式要求。當后臺驗證成功之后,允許用戶登錄,同時依據用戶登錄賬號對應的身份憑證,為用戶匹配不同的操作權限,進入與其身份相匹配的操作界面。具體的用戶登錄功能實現的流程圖如圖5所示。
3.2? 預警信息管理查詢
用戶在其對應的操作界面當中能夠通過預警查詢管理功能實現對應的預警信息的瀏覽。預警信息管理查詢的功能主要是對各類預警信息的檢索功能。用戶在對應的預警信息管理界面能夠對想要查詢的具體時間段、對應的預警信息檢索類型進行選擇,然后通過查詢得到對應的查詢結果。同時,用戶也可以選擇性地將有效的查詢結果導出為對應的查詢報告。通常預警信息管理查詢功能僅供管理員用戶使用。預警信息管理查詢的流程圖如圖6所示。
3.3? 網絡流量查詢
網絡流量的查詢主要是對網絡流量異常與否的查詢。在確定網絡流量異常時,其對應的異常流量情況又可以分為兩種,一種是未知網絡異常流量,另一種是已知網絡異常流量。已知網絡流量異常的情況主要通過相對應的數據表完成;未知網絡流量異常的查詢主要是對當前的網絡情況進行監測分析,進行相應的異常數據信息的篩選。具體的網絡流量監測流程如圖7所示。
3.4? 網絡日志查詢
網絡日志的查詢通常是對操作記錄或者異常預警的查詢。系統在運行過程中,相應的系統操作在相應的日志文件當中進行相應的記錄。網絡管理員需要進行信息調用時,可以通過網絡日志查詢功能對相應的信息進行查詢。通過網絡日志查詢,網絡管理員可以對網絡異常信息以及各種用戶操作記錄進行查詢,并在需要時發出預警。
3.5? 數據采集
校園流量監測系統的數據采集主要對在數據庫當中儲存的網絡流量數據進行采集。數據采集是對交換機中通過的數據包以及校園網路由器的監測[13]。在計算機采集到相應的數據包時,對其提取首位以及次位字符。通過所提取字符確定網絡設備對應的版本號。在版本號確定之后對對應的數據包做出處理,并進行相應的數據信息儲存。同時,校園網監測系統處理的數據包類型應當是多樣化的。
3.6? 數據分析
對所收集到的流量數據信息進行分析的方法為聚類分析方法。在具體的分析過程當中,主要通過出現過的流量異常數據以及收集到的流量數據信息進行分析推理,判定現有收集流量數據是否異常。實際分析過程當中,通過K?means聚類算法進行分析,主要的分析步驟如下:
1) 設置常數[m],在流量數據樣本當中選擇隨機的[m]個樣本分為[m]個初始分類簇。
2) 計算其他樣本到[m]個聚類簇聚類中心的相似度,依據其相似度的不同進行不同的數據樣本歸類。
3) 在各聚類簇中加入新的流量數據時,進行聚類中心的迭代更新,保證聚類簇中心正確。
4) 通過評價函數,判斷聚類簇滿足要求與否,當滿足要求時,結束算法,若不滿足要求,則回到步驟2)。
設計中K?means算法的具體流程圖如圖8所示。
4? 測試結果及分析
4.1? 測試方法
在具體的系統測試當中,主要通過靜態測試以及動態測試兩種方法進行相應的程序測試。在靜態測試方法中,應用程序不需要運行,而是通過對程序當中的代碼進行分析,評估程序當中對應的錯誤信息,進而檢驗其代碼結構上是否存在不合理的嵌套或者是循環語句,以及其代碼編寫是否存在語法錯誤。在進行動態測試時需要運行程序,在程序運行過程當中,輸入對應的執行語句并檢測是否能夠輸出預期結果,從而確定流量是否發生異常。動態測試的方法進行進一步的分類可以分為白盒測試以及黑盒測試。白盒測試即在了解計算機系統功能的基礎上所進行的測試;黑盒測試則并不考慮程序內部是何結構,主要是針對程序的功能接口進行對應的測試。
4.2? 測試結果及分析
在掌握對應的測試方法之后,針對不同功能模塊對流量監測系統進行測試。測試之前,需要進行相應的特征數據準備。準備好對應的特征數據之后,在對應的功能模塊當中測試對應的輸出結果,檢驗測試結果是否與預期結果一致,測試結果如表1所示。
在表1當中,用戶登錄以及管理員登錄的賬號為7位數字,密碼為8位字母與數字的組合,經驗證測試通過,能夠有效判別賬號正確與否以及賬號類型。同時在預警信息查詢的過程當中,能夠結合算法和數據挖掘技術進行網絡流量是否異常的查詢工作。
5? 結? 語
良好的校園網流量監測系統能夠幫助網絡管理員實現更好的網絡管理與維護,同時能夠有效維護校園網絡的生態健康。本文設計以數據挖掘技術為基礎,結合K?means算法,實現了對校園網絡數據流量的監測以及對流量異常的甄別與篩選。經過實踐驗證,該設計系統切實可行。
參考文獻
[1] 趙東卓.網絡流量監測與分析技術的研究[D].長春:長春工業大學,2015:5?38.
[2] 王旭.網絡數據流量監測技術的應用與特征[J].硅谷,2015(4):138.
[3] 潘虎.網絡流量監測技術研究[J].電子世界,2016(4):181.
[4] 劉海濤.恒虛警下異常網絡流量序列監測技術仿真分析[J].計算機仿真,2016,33(8):244?247.
[5] 舒忠梅,徐曉東,屈瓊斐.基于數據挖掘的學生投入模型與學習分析[J].遠程教育雜志,2015(1):39?47.
[6] 胡資聰.基于windows內核的進程網絡流量監測與控制系統的設計與實現[D].武漢:華中科技大學,2015:2?3.
[7] 顧煒江.網絡流量監測中在線數據融合方法設計[J].科學技術與工程,2016,16(13):239?243.
[8] 劉遠超,彭兆軍.融合幀差循環控制的網絡流量監測模型仿真[J].軟件導刊,2016,15(5):179?181.
[9] 王啟明,趙凱,時合生.基于改進型決策樹算法的網絡流量監測研究[J].微型電腦應用,2015,31(8):31?33.
[10] AUSSEM A, MURTAGH F. Combining neural network forecasts on wavelet transformed time series [J]. Connection science, 1997, 9(1): 113?122.
[11] AGARWAL D, GONZALEZ J M, JIN Guojun, et al. An infrastructure for passive network monitoring of application data streams [C]// Proceedings of the 2003 Passive and Active Monitoring Workshop. Berkeley, California: Ernest Orlando Lawrence Berkeley National Laboratory, 2003: 1?8.
[12] VAN GESTEL T, SUYKENS J A K, BAESTAENS D E, et al. Financial time series prediction using least squares support vector machines within the evidence framework [J]. IEEE transactions on neural networks, 2001, 12(4): 809?821.
[13] KIM K H, YOUN H S, KANG Y C. Short?term load forecas?ting for special days in anomalous load conditions using neural networks and fuzzy inference method [J]. IEEE transactions on power systems, 2000, 15(2): 559?565.
作者簡介:周康樂(1979—),男,江西進賢人,碩士,講師,實驗師,主要研究方向為計算機網絡。