999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于隨機森林的物聯網設備流量分類算法

2022-03-08 11:57:28李銳光段鵬宇沈蒙祝烈煌
北京航空航天大學學報 2022年2期
關鍵詞:分類設備信息

李銳光,段鵬宇,沈蒙,祝烈煌,*

(1.北京理工大學 網絡空間安全學院,北京 100081; 2.國家計算機網絡應急技術處理協調中心,北京 100029)

物聯網技術將各種帶有傳感器的終端設備接入互聯網,組成網絡并實現人和物的互聯互通。目前,物聯網技術在家庭、校園、企業、城市等應用場景已得到廣泛應用[1],海量的網絡攝像頭、身體傳感器、智能家電等物聯網設備接入互聯網,給人類生活帶來了重大變革。

然而,在物聯網廣泛普及的同時,政府監管機構、網絡運營者對網絡空間中的物聯網設備缺少統計和管理。一方面,各種類型的物聯網設備通常由不同運營者、不同廠商、不同人員安裝,對全量設備的登記和統計非常困難;另一方面,物聯網廣泛采用了NAT技術和IP地址動態分配,缺少唯一化的標記手段,使得掌握網絡中物聯網設備總體情況變得困難。

由于物聯網設備普遍資源受限導致的安全防護不足,使得很多物聯網設備成為網絡攻擊的工具或跳板,對全球網絡空間安全帶來嚴峻挑戰。因此,對網絡空間中的海量物聯網設備的識別和分類,成為當前工業界和學術界關注的熱點研究問題。

現有的物聯網設備流量分類算法主要有基于協議特征識別和基于流量統計兩大類。基于協議特征識別需要找到流量強特征,在目前普遍加密的網絡中已越來越難,因此基于流量統計的識別方法逐步成為研究熱點。本文主要對當前流量識別領域廣泛應用的隨機森林算法進行了改進,并取得了不錯的實驗效果。

1 物聯網設備識別方法

現有的物聯網設備識別方法主要包括主動資源探測和被動流量分析兩大類。

1)主動資源探測是按照物聯網設備通信協議格式,向遠端設備發送探測包,采集和分析響應數據,從而得到遠端設備重要信息的識別方法。通過主動探測,可以得到操作系統、開放端口、漏洞分布、設備類型、廠商型號、所屬組織等重要信息,從而掌握網絡中全量物聯網設備情況。Feng等[2]使用Modbus和S7協議標語的格式和信息識別工控設備的廠商和設備版本。Li等[3-4]使用設備的登錄頁面提取關鍵字從而識別設備,并測量頁面中單詞的集中度,將搜索引擎返回的結果作為設備指紋。Leonard和Loguinov[5]使用TCP ACK探測主機是否存活,使用DNS、HTTP、SMTP等協議的響應識別主機的設備類型和操作系統。

2)被動流量分析是指從某一網絡關口采集流量數據,分析和提取不同類型物聯網設備的協議指紋或流量特征,從而實現對物聯網設備類型的識別。Kohno等[6]使用多種協議的時鐘偏移,即時鐘時間與實際時間的差進行設備識別。Aneja等[7]使用到達間隔時間(IAT)圖作為特征使用CNN算法進行分類。Husák等[8]使用HTTPS協議中的SSL/TLS握手信息作為設備指紋對用戶代理進行分類。

主動資源探測方法通常用于對某一網域以外設備的探測識別,而被動流量分析通常用于對某一網域內設備的識別分類。本文重點研究被動流量分析方法,提出并實現了一種基于隨機森林的物聯網設備流量分類算法。

2 物聯網設備流量分類技術

物聯網設備流量分類技術分為2類:①協議特征識別,即依靠協議中存在的強特征對不同設備流量進行匹配分類,如文獻[2,8];②統計識別,即尋找流量數據中的包數、包長、時間間隔、請求數量等弱特征,采用統計的方法對不同設備流量進行分類識別,如文獻[6-7]。

協議特征識別方法的優點是識別準確率高,但需要提前知道設備類型及其通信協議,對于未知的物聯網設備無法識別,而且隨著加密技術在網絡協議傳輸中的廣泛采用,協議特征變得越來越模糊,因此,基于協議強特征的識別方法越來越表現出局限性。基于統計的識別方法有可能識別出未知的物聯網設備,因為同一廠家產品在流量上具有相似性,另外可以有效地識別和分類加密流量。

學術界對基于統計的設備流量分類算法開展了大量研究。Arunan等[9]使用流的信息和DNS、NTP的請求數量、請求間隔等進行分類。Msadek等[10]將端口號分為公認端口、注冊端口、動態端口,結合協議類型和流統計信息對設備流量進行分類。Yao等[11]提出一種可以自動選擇流量特征、基于深度學習的物聯網設備分類算法,主要應用于智慧城市場景。Desai等[12]僅使用流的統計信息,包括均值、中位數、方差、分布相似度進行分類。Meidan等[13]除了使用流信息,還使用其他數據,包括Alexa排名和GeoIP信息進行分類。Shahid等[14]使用發送和接收到的前N個包的大小、IAT進行分類。

在基于統計的流量分類技術中,特征向量(統計參數)的選擇至關重要,直接影響分類準確率及算法性能。大多數研究中采用了完整的TCP/UDP流的信息,有的輔助采用了DNS、NTP的請求數量、請求間隔[9],有的輔助采用了域名、地理位置[13]等參數信息。本文在現有工作基礎上,重點研究了TCP/UDP流的數據包信息,在特征向量中加入包長、包數、包TLL等參數,實驗表明提升了分類準確性。

3 數據集

本文在研究中采用了Sivanathan等[15]公開的數據集。該數據集來自一所學校網關處捕獲的真實流量,持續時間為2016年9月23日至10月6日。實驗者在網關處部署了tcpdump軟件捕獲流量,使用kmod-usb-core和kmod-usb-storage軟件存儲流量數據。

數據集中包括了21種物聯網設備和9種非物聯網設備的混合流量,以PCAP包格式按天保存,總大小為9 GB。由于數據集中包含了各設備的MAC地址,這為從混合數據中提取各設備流量、建立訓練數據集提供了很大便利。所有設備名稱及類型如表1所示。

表1 物聯網設備Table 1 IoT device list

數據集中的物聯網設備類型包括網絡攝像頭、智能開關、空氣質量傳感器、智能音箱、智能燈泡、智能相框及醫療保健設備等。非物聯網設備包括打印機、筆記本電腦、智能手機、平板電腦等。設備廠商涵蓋了亞馬遜、TP-Link、三星、貝爾金、Netatmo、蘋果、惠普、NEST、谷歌等主流設備廠商。因此,基于該數據集開展的研究工作具有很好的普適性。

4 算法設計

本文改進了文獻[15]提出的基于隨機森林的物聯網設備流量分類算法,在特征選擇上除了流信息外也將每條流數據包信息作為統計參數,算法過程如下。

4.1 數據預處理

文獻[15]公開的數據集中保存了從網關捕獲的全部設備的混合流量,為了對機器學習模型進行訓練和測試,先需要對流量做預處理,獲取訓練集DT和測試集DM。

原始流量數據是按天保存的,文獻[15]直接使用設備一天的流量作為樣本數據。由于設備一天的流量數據較多,在訓練模型時耗費的時間較長。采用設備連接后幾分鐘內的流量數據作為樣本,減少了機器學習模型訓練時間,實驗表明分類效果未受影響。

首先,對全部流量按MAC地址進行分割,然后,按算法1篩選出每類設備建立連接后幾分鐘內的流量,作為樣本數據保存,最終,獲取到80萬條樣本數據。對全部樣本數據按設備類型進行了分類標注。

算法1 流量分割算法。

步驟1 輸入時間閾值tT。

步驟2 讀取未保存的第一個流,ts1為流開始時間,te1為流結束時間。

步驟3 讀取下一個流,ts2為流開始時間,如果ts2-te1>tT,將從ts1~ts1+tT之間的所有數據包保存為一條數據,返回步驟1;如果ts2-te1<tT,流結束時間大于te1,將te1保存為新的流的結束時間,重復步驟3。

在這80萬條數據中包含了表1中每類設備的樣本數據,平均每類設備有2萬~3萬條樣本。從各類設備樣本中選取90%作為訓練集DT,剩余樣本混合后作為測試集DM。

4.2 特征提取

在處理后的樣本數據中,編制腳本程序從中自動提取出流信息和數據包信息。流信息包括流數量、協議種類、最常用協議、端口數量、最常用端口等。數據包信息包括發送和接收到的總字節數和總包數信息、發送和接收數據包的TTL、發出和接收數據包的首個時間窗口等。

從樣本中自動提取特征的算法如算法2所示。

算法2 特征提取算法。

步驟1 選取下一條流。

步驟2 記錄流的個數、采用的協議、連接的端口。

步驟3 選取流中的下一個包。

步驟4 如果包是流中第一個包,記錄接收窗口。

步驟5 記錄包的長度、包的個數、數據包TTL。

步驟6 如果包是流中最后一個包,返回步驟1,否則返回步驟3。

步驟7 統計這條樣本中流的數量、協議種類、最常用的協議、連接端口數量、最常用的端口、發送和接收的總字節數和總包數。

本文算法的特征向量包括流信息和包信息,如表2所示。

表2 特征向量Table 2 Feature vectors

4.3 算法實現

在分類算法設計上,近年來機器學習算法得到了廣泛應用并取得良好效果,如樸素貝葉斯(naive Bayes)、支持向量機(supporting vector machine)、K近鄰(KNN)、決策樹(decision trees)、隨機森 林(random forest)、神 經 網 絡(neural network)等。通常,流量分類場景中特征向量復雜度遠少于圖像處理、自然語言處理等場景,因此一般不必采用太復雜的機器學習算法(如深度學習)即可取得良好效果。

隨機森林是一種使用多棵決策樹進行訓練和預測的分類器,從原始的訓練數據中有放回地抽取k個樣本構成m個訓練集,在每個訓練集上構造一棵決策樹。構造決策樹時,在節點尋找特征進行分裂時,隨機選取一些特征,在抽取到的特征中選擇最優解進行分裂,最終根據多數投票原則產生分類結果。該算法已在流量分類等應用場景中得到了廣泛應用。

根據表2中的特征向量,在Python集成開發環境中利用Scikit-Learn工具包實現了隨機森林算法。設置時間閾值tT為10 min,設置隨機森林算法中樹的數量為10。利用每類設備的訓練集DT對模型進行訓練,在測試集DM上進行了測試,并統計了分類準確率、召回率、F1得分等情況。

5 實驗結果

基于公開數據集,對文獻[15]算法和本文算法進行了對比測試,并比較了分類準確率、召回率、F1得分、混淆矩陣等指標。

5.1 評價標準

對機器學習算法的評價標準有分類準確率、召回率和F1得分,也包括混淆矩陣。例如,預測為正的樣本中,實際為正的樣本數為TP,實際為負的樣本數為FP;預測為負的樣本中,實際為正的樣本數為FN,實際為負的樣本數為TN。

分類準確率定義為

召回率定義為

F1得分定義為

混淆矩陣也是衡量分類算法性能的一種方式,如圖1所示。矩陣中第i行第k列表示將第i種設備錯誤識別成第k種設備的樣本數量,顏色越深表示樣本數越多。這樣,如果對角線位置的方塊顏色越深而其他位置顏色越淺,則表示分類器分類的準確性越高。

圖1 文獻[15]中算法的混淆矩陣Fig.1 Confusion matrix of algorithm in Ref.[15]

5.2 文獻[15]中算法分類效果

在公開數據集上復現了文獻[15]中提出的算法,并進行了測試。該算法以某設備一天內的流量數據作為樣本集,在特征選擇上只采用樣本集中流信息作為統計參數。該算法分類效果如表3所示。

表3 文獻[15]中算法的分類效果Table 3 Classification results of algorithm in Ref.[15]

文獻[15]中算法形成的混淆矩陣如圖1所示,圖中橫豎坐標數字對應表1中的設備序號。可見,除對角線外,還零散分布著一些樣本點。

5.3 本文算法分類效果

本文對文獻[15]中算法進行了改進,一方面是將某設備連接建立后幾分鐘內的數據作為樣本,而不是全天數據,另一方面是除了流信息外加入了數據包信息作為統計參數。本文算法的分類效果如表4所示。

表4 本文算法的分類效果Table 4 Classification results of proposed algorithm

本文算法的混淆矩陣如圖2所示,圖中橫豎坐標數字對應表1中的設備序號。與圖1比較,樣本點基本集中在對角線處,除對角線外零散分布的樣本點很少,因此分類效果優于圖1。

圖2 本文算法的混淆矩陣Fig.2 Confusion matrix of proposed algorithm

5.4 對比分析

通過5.2節和5.3節的實驗結果表明:

1)本文算法對真實流量分類的平均分類準確率達82%,平均召回率達67%,平均F1得分為0.74,具有較好的實用性。

2)文獻[15]中算法的平均分類準確率為56%,平均召回率為47%,平均F1得分為0.43,可見本文算法比文獻[15]中算法分類性能有明顯提升。

3)在設備流量分類技術的特征選擇上,單純選擇流信息的分類效果并不很好,而加入數據包信息后的分類效果提升明顯。

4)表3中Android Phone、Laptop、LiFX Smart Bulb等設備和表4中的 NEST Protect smoke alarm、Netatmo Welcome等設備未測到分類準確率、召回率和F1得分數據,原因是測試集DM中數據是從80萬條樣本中隨機選擇的,未包括這些設備流量。

5)本文算法對Belkin Wemo switch和Belkin wemo motion sensor兩個設備分類效果較差,可能是由于同一廠商的設備行為比較相似,在流量上難以分辨。

6)2種算法的運算時間和內存占用情況如表5所示。由于本文算法特征向量維度大于文獻[15]算法,故運算時間及內存占用均略高,但仍處于可接受范圍之內。

表5 算法性能對比Table 5 Algorithm performance compar ison

本文算法與文獻[15]算法相比,在統計參數的選擇上更加精確,因此具有更好的分類效果。但由于特征向量維度的增加,本文算法實際消耗的計算和存儲資源略有增長,因此更適用于對物聯網設備的精確識別場景。

6 結 論

本文提出一種基于隨機森林的物聯網設備流量分類算法。在文獻[15]公開數據集和提出算法的基礎上,本文對文獻[15]算法做了改進,主要如下:

1)將設備連接建立后幾分鐘內的數據作為樣本,而沒有采用全天數據,從而縮短了模型訓練時間。

2)在特征選擇中除了流信息外加入了完整流的數據包信息。

實驗結果表明,本文提出算法的平均分類準確性由56%提高到82%,平均召回率由47%提高到67%,平均F1得分由0.43提高到0.74,混淆矩陣對比也有明顯提升,具備更好的分類效果。

由于數據集中設備數量限制,本文只對部分物聯網設備進行了研究,分類識別也僅限于已知設備。未來應研究更多類型的物聯網設備,并分析歸納同廠家或同類設備的流量特點,探索對未知類型物聯網設備的識別發現技術,更好地服務于網絡空間安全管理。

猜你喜歡
分類設備信息
諧響應分析在設備減振中的應用
分類算一算
分類討論求坐標
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
數據分析中的分類討論
教你一招:數的分類
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
500kV輸變電設備運行維護探討
工業設計(2016年12期)2016-04-16 02:52:00
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
原來他們都是可穿戴設備
消費者報道(2014年7期)2014-07-31 11:23:57
主站蜘蛛池模板: 国产xx在线观看| 久久精品国产999大香线焦| AV天堂资源福利在线观看| www.精品国产| 国产一级小视频| 亚洲色精品国产一区二区三区| 国产精品深爱在线| 亚洲第一色网站| 午夜精品影院| 亚洲妓女综合网995久久| 成人亚洲国产| 亚洲成人黄色在线观看| 国产欧美精品一区二区| 在线观看欧美精品二区| 亚洲天堂色色人体| 青青青草国产| 欧美五月婷婷| 国产原创自拍不卡第一页| aa级毛片毛片免费观看久| 在线观看亚洲人成网站| yjizz国产在线视频网| 亚洲日韩精品无码专区97| 久久久精品无码一区二区三区| 婷婷五月在线| 色综合天天娱乐综合网| 91成人精品视频| 精品国产网| 福利在线不卡一区| 又黄又爽视频好爽视频| 精品国产99久久| 亚洲国产高清精品线久久| 国产亚洲欧美日本一二三本道| 亚洲无码91视频| 国产精品人成在线播放| 亚洲无码一区在线观看| 亚洲国产综合第一精品小说| 午夜免费视频网站| 亚洲精品国产成人7777| 欧美日在线观看| 久久久久国产精品嫩草影院| 国产久操视频| 国产十八禁在线观看免费| 国产极品美女在线观看| 18禁影院亚洲专区| 在线精品亚洲国产| 成人91在线| 激情综合网激情综合| 亚卅精品无码久久毛片乌克兰| 亚洲日韩图片专区第1页| 精品日韩亚洲欧美高清a| 亚洲国产精品一区二区第一页免 | 国产精品永久不卡免费视频| 999在线免费视频| 思思热在线视频精品| 丰满少妇αⅴ无码区| 久热中文字幕在线观看| 无码免费的亚洲视频| 欧洲日本亚洲中文字幕| 欧美在线一二区| 国产污视频在线观看| 欧美成人aⅴ| 亚洲男人天堂2018| 国产97公开成人免费视频| 1024你懂的国产精品| 中文字幕乱码二三区免费| 一区二区三区成人| 99久久99这里只有免费的精品| 日本妇乱子伦视频| 国产精品分类视频分类一区| 日韩欧美中文在线| 日本精品一在线观看视频| 美女国内精品自产拍在线播放| 成人福利免费在线观看| 99人妻碰碰碰久久久久禁片| 狠狠色丁香婷婷综合| 91国内外精品自在线播放| 无码人中文字幕| 自拍偷拍欧美| 亚洲v日韩v欧美在线观看| 精品一区国产精品| 国产精品视频白浆免费视频| 在线高清亚洲精品二区|