本發明專利技術提供一種網絡消息識別過程中K?means算法的k值確定方法及安全設備,用以解決現有技術中執行K?means聚類算法時代表初始類聚類中心數量的k值的選取只能憑感覺進行的問題。該方法包括:將混合通信協議消息數據流處理成由單位數據對象構成的單位數據序列,并建立單位數據矩陣,統計得到單位數據對象列出現的頻次表和行出現的行號集,篩選得到P個目標單位數據對象及對應的行號集,將最大行號集中的行號加入結果集;以結果集為交集參照集合,以元素沒被加入結果集的行號集為結果集更新源行號集,基于結果集更新源行號集與結果集的交集率更新結果集,將最終結果集中的行號個數作為網絡消息識別過程中K?means算法的k值。
【技術實現步驟摘要】
網絡消息識別過程中K-means算法的k值確定方法及安全設備
本專利技術實施例涉及數字信息傳輸
,尤其涉及一種網絡消息識別過程中K-means算法的k值確定方法及安全設備。
技術介紹
基于接入端口動態分配注冊表式MAC地址的無線通信網絡,已經成為互聯網絡的主要接入網絡。接入端口動態分配注冊表式MAC地址,導致接入IP及與接入IP相對應的MAC地址容易被盜用,決定了無線通信網絡具有極強的接入隱蔽性,很難通過接入IP或與接入IP相對應的MAC地址判斷網絡消息的源地址。同時,作為不同網絡實體之間通信載體使用的網絡通信協議中,包含有較多的協議規范文檔沒有公開的私有通信協議,相較于協議規范文檔公開的公有通信協議,私有通信協議所承載的網絡消息,很難被分類和識別,經常被用于網絡入侵或者攻擊,即,現有網絡通信協議有其較脆弱的一面。為了降低無線通信網絡過程中被釣魚、插入攻擊、漫游攻擊,通信信息被監視劫持甚至被竊取的安全風險,就需要對網絡通信協議進行識別,從源自網絡環境的未知混合多通信協議消息中將未知單私有通信協議消息分離出來,并找出相應的地址信息,對未知私有通信協議傳遞的網絡消息數據進行監控。但,由于目前越來越多的未知私有通信協議采用公有通信協議的傳輸工具,復用公開的注冊端口號,即采用自由端口作為其通信端口,通過端口映射和/或靜態特征匹配來對未知私有通信協議進行識別,基本是不可能的事情。現有的未知私有通信協議識別方法,可首先采用聚類算法,例如K-means聚類算法,從未知混合多通信協議消息中分離出未知單私有通信協議消息,再通過評估算法評估類類簇,得到可信的未知單私有通信協議消息。K-means聚類算法,基于k個初始類聚類中心,通過迭代算法獲取新的聚類中心,得到與未知混合多通信協議消息相匹配的聚類中心,每個聚類中心對應一個單通信協議的消息,從而實現從未知混合多通信協議消息中分離出未知單私有通信協議消息;K-means聚類算法,時間復雜度近于線性,算法簡單,計算速度快,適合挖掘大規模數據集。然而,專利技術人在實現本專利技術實施例中的技術方案的過程中發現,現有采用K-means聚類算法從未知混合多通信協議消息中分離出未知單私有通信協議消息的方法,至少存在如下技術問題:執行K-means聚類算法時,代表初始類聚類中心數量的k值只能通過事先指定,但由于事先無法知道用于測試的未知混合多通信協議消息應該分成多少個聚類類別比較合適,因此k值的選定非常困難,且,一旦k值選擇不理想,一方面,在對大數據量進行處理時算法的時間開銷是非常大,另一方面可能無法獲得有效的與未知混合多通信協議消息相匹配的聚類中心。
技術實現思路
有鑒于此,本專利技術的目的在于提供一種網絡消息識別過程中K-means算法的k值確定方法及安全設備,用以解決現有技術中執行K-means聚類算法時代表初始類聚類中心數量的k值的選取只能憑感覺進行的缺陷;實現基于測試的混合多通信協議消息確定代表初始類聚類中心數量的k值,從而提高從混合多通信協議消息中分離出未知單私有通信協議消息的有效性,及大幅縮短算法時間開銷。為了實現上述目的,本專利技術采用的技術方案如下:本專利技術實施例提供一種網絡消息識別過程中K-means算法的k值確定方法,應用于無線通信網絡系統中,包括:將從網絡環境中獲得的混合通信協議消息數據流轉換成十六進制消息數據流,以兩個字節為單位長度切分所述十六進制消息數據流,獲得與所述十六進制消息數據流相對應的單位數據序列;將所述單位數據序列中的單位數據逐行順序填入一M行N列的二維矩陣中,得到與所述單位數據序列相對應的單位數據矩陣;其中,M為大于等于2的正整數,N為不大于256的正整數;遍歷所述單位數據矩陣,逐列統計每一單位數據對象在所述單位數據矩陣的每一列中的出現次數,得到單位數據對象列出現的頻次表;統計每一單位數據對象出現過的所述單位數據矩陣行的行號,得到單位數據對象行出現的行號集;所述單位數據對象為同一內容表示的單位數據;基于所述單位數據對象列出現的頻次表,獲得所述單位數據矩陣的每一列中列出現頻次最高的單位數據對象,在此基礎上,再基于一預設的列出現頻次下限閾值和一預設的列出現頻次上限閾值,得到P個目標單位數據對象;其中,每個所述目標單位數據對象具有一個行號集,P為不大于n的正整數;從P個所述目標單位數據對象的P個行號集中得到行號個數最多的行號集;在將所述行號個數最多的行號集中的行號加入結果集后,將P個行號集中的每個集合中元素沒被加入到所述結果集中的行號集作為一個結果集更新源行號集,以所述結果集為交集參照集合,遍歷所有所述結果集更新源行號集,計算每個所述結果集更新源行號集與所述結果集的交集率,基于所述交集率小于預設不重復率值,將小于所述預設不重復率值的交集率所對應的結果集更新源行號集中的行號加入到所述結果集中,完成一次結果集更新;基于上一次更新得到的所述結果集作為下一次所述結果集更新的所述交集參照集合,對上一次更新得到的所述結果集進行再一次更新,當每個所述結果集更新源行號集與所述結果集的交集率均大于所述不重復率值時,得到與所述預設不重復率值對應的最終結果集;統計并將所述最終結果集中的行號個數作為網絡消息識別過程中K-means算法的k值。可能的實施方式中,所述每個所述結果集更新源行號集與所述結果集的交集率的計算公式為:r=n(si∩rset)/nrset其中,r為交集率,si為第i個結果集更新源行號集,i為小于P的正整數,rset為結果集,nrset為結果集中的行號個數,n(si∩rset)為第i個結果集更新源行號集與結果集交集的行號個數。可能的實施方式中,所述方法還包括:所述預設不重復率值為Q個,獲得與Q個所述預設不重復率值對應的Q個所述最終結果集,將計算得到的Q個所述最終結果集中的行號個數平均值的取整值作為網絡消息識別過程中K-means算法的k值,其中,Q為不小于2的正整數。可能的實施方式中,當Q為不小于5的正整數時,執行步驟:所述預設不重復率值為Q個,獲得與Q個所述預設不重復率值對應的Q個所述最終結果集,將計算得到的Q個所述最終結果集中的行號個數平均值的取整值作為網絡消息識別過程中K-means算法的k值的過程,包括:基于Q個所述預設不重復率值,獲得與Q個所述預設不重復率值對應的Q個所述最終結果集:以所述預設不重復率值為X軸,以與所述不重復率值對應的最終結果集的行號個數為Y軸,得到所述預設不重復率值與所述最終結果集的行號個數之間的對應關系曲線;將斜率為0.8~1.2的對應關系曲線區間作為行號個數平均值計算區間,通過計算得到所述行號個數平均值計算區間的所述最終結果集的行號個數平均值,以所述最終結果集的行號個數平均值的取整值作為網絡消息識別過程中K-means算法的k值。可能的實施方式中,所述預設不重復率值的取值區間為51%~98%。可能的實施方式中,所述列出現頻次下限閾值為大于或者等于2的正整數,所述列出現頻次上限閾值為不大于256的正整數,所述列出現頻次上限閾值大于所述列出現頻次下限閾值。本專利技術實施例提供一種安全設備,應用于無線通信網絡系統中,包括:至少一個處理器;以及,與所述至少一個處理器通信連接的存儲器;其中,所述存儲器存儲有可被所述至少一個處理器執行的指令,所述指令本文檔來自技高網...

【技術保護點】
一種網絡消息識別過程中K?means算法的k值確定方法,應用于無線通信網絡系統中,其特征在于,包括:將從網絡環境中獲得的混合通信協議消息數據流轉換成十六進制消息數據流,以兩個字節為單位長度切分所述十六進制消息數據流,獲得與所述十六進制消息數據流相對應的單位數據序列;將所述單位數據序列中的單位數據逐行順序填入一M行N列的二維矩陣中,得到與所述單位數據序列相對應的單位數據矩陣;其中,M為大于等于2的正整數,N為不大于256的正整數;遍歷所述單位數據矩陣,逐列統計每一單位數據對象在所述單位數據矩陣的每一列中的出現次數,得到單位數據對象列出現的頻次表;統計每一單位數據對象出現過的所述單位數據矩陣行的行號,得到單位數據對象行出現的行號集;所述單位數據對象為同一內容表示的單位數據;基于所述單位數據對象列出現的頻次表,獲得所述單位數據矩陣的每一列中列出現頻次最高的單位數據對象,在此基礎上,再基于一預設的列出現頻次下限閾值和一預設的列出現頻次上限閾值,得到P個目標單位數據對象;其中,每個所述目標單位數據對象具有一個行號集,P為不大于n的正整數;從P個所述目標單位數據對象的P個行號集中得到行號個數最多的行號集;在將所述行號個數最多的行號集中的行號加入結果集后,將P個行號集中的每個集合中元素沒被加入到所述結果集中的行號集作為一個結果集更新源行號集,以所述結果集為交集參照集合,遍歷所有所述結果集更新源行號集,計算每個所述結果集更新源行號集與所述結果集的交集率,基于所述交集率小于預設不重復率值,將小于所述預設不重復率值的交集率所對應的結果集更新源行號集中的行號加入到所述結果集中,完成一次結果集更新;基于上一次更新得到的所述結果集作為下一次所述結果集更新的所述交集參照集合,對上一次更新得到的所述結果集進行再一次更新,當每個所述結果集更新源行號集與所述結果集的交集率均大于所述不重復率值時,得到與所述預設不重復率值對應的最終結果集;統計并將所述最終結果集中的行號個數作為網絡消息識別過程中K?means算法的k值。...
【技術特征摘要】
1.一種網絡消息識別過程中K-means算法的k值確定方法,應用于無線通信網絡系統中,其特征在于,包括:將從網絡環境中獲得的混合通信協議消息數據流轉換成十六進制消息數據流,以兩個字節為單位長度切分所述十六進制消息數據流,獲得與所述十六進制消息數據流相對應的單位數據序列;將所述單位數據序列中的單位數據逐行順序填入一M行N列的二維矩陣中,得到與所述單位數據序列相對應的單位數據矩陣;其中,M為大于等于2的正整數,N為不大于256的正整數;遍歷所述單位數據矩陣,逐列統計每一單位數據對象在所述單位數據矩陣的每一列中的出現次數,得到單位數據對象列出現的頻次表;統計每一單位數據對象出現過的所述單位數據矩陣行的行號,得到單位數據對象行出現的行號集;所述單位數據對象為同一內容表示的單位數據;基于所述單位數據對象列出現的頻次表,獲得所述單位數據矩陣的每一列中列出現頻次最高的單位數據對象,在此基礎上,再基于一預設的列出現頻次下限閾值和一預設的列出現頻次上限閾值,得到P個目標單位數據對象;其中,每個所述目標單位數據對象具有一個行號集,P為不大于n的正整數;從P個所述目標單位數據對象的P個行號集中得到行號個數最多的行號集;在將所述行號個數最多的行號集中的行號加入結果集后,將P個行號集中的每個集合中元素沒被加入到所述結果集中的行號集作為一個結果集更新源行號集,以所述結果集為交集參照集合,遍歷所有所述結果集更新源行號集,計算每個所述結果集更新源行號集與所述結果集的交集率,基于所述交集率小于預設不重復率值,將小于所述預設不重復率值的交集率所對應的結果集更新源行號集中的行號加入到所述結果集中,完成一次結果集更新;基于上一次更新得到的所述結果集作為下一次所述結果集更新的所述交集參照集合,對上一次更新得到的所述結果集進行再一次更新,當每個所述結果集更新源行號集與所述結果集的交集率均大于所述不重復率值時,得到與所述預設不重復率值對應的最終結果集;統計并將所述最終結果集中的行號個數作為網絡消息識別過程中K-means算法的k值。2.根據權利要求1所述的方法,其特征在于,所述每個所述結果集更新源行號集與所述結果集...
【專利技術屬性】
技術研發人員:鄭杰,
申請(專利權)人:鄭杰,
類型:發明
國別省市:重慶,50
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。