CN112600793A - 一种基于机器学习的物联网设备分类识别方法及系统 - Google Patents
一种基于机器学习的物联网设备分类识别方法及系统 Download PDFInfo
- Publication number
- CN112600793A CN112600793A CN202011321550.5A CN202011321550A CN112600793A CN 112600793 A CN112600793 A CN 112600793A CN 202011321550 A CN202011321550 A CN 202011321550A CN 112600793 A CN112600793 A CN 112600793A
- Authority
- CN
- China
- Prior art keywords
- internet
- fingerprint
- things equipment
- things
- protocol
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Computational Linguistics (AREA)
- Medical Informatics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种基于机器学习的物联网设备分类识别方法及系统。所述分类识别方法包括获取已知类型的物联网设备的指纹;利用所述物联网设备的类型对所述物联网设备的指纹进行标注;利用每一标注后的物联网设备的指纹进行机器学习,对相应的物联网设备的类型进行二元随机森林模型学习,得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合;获取待识别的物联网设备的指纹;利用所述二元分类器集合对所述待识别的物联网设备的指纹进行识别。本发明通过在安全网关的基础上提供一种自动化的、可处理未知类型设备的物联网终端设备智能分类机制,方便进行网络管理。
Description
技术领域
本发明涉及计算机网络技术领域,特别是涉及一种基于机器学习的物联网设备分类识别方法及系统。
背景技术
物联网是基于互联网、广播电视网、传统电信网等信息承载体,让所有能够被独立寻址的普通物理对象实现互联互通的网络。随着物联网的迅速发展及基础设施通信系统的IP化,海量设备通过网络互联将成为趋势,在公安、交警、电力能源等行业中,大量IP摄像机、探测器、RFID等物联网终端已经大规模部署在城市的各个角落,当今社会已经逐渐进入物联网时代。物联网前端设备大量分散在无人值守的环境下,极易被黑客利用,进而渗透到整个网络,导致核心业务系统无法正常运行、大量保密信息被窃取。因此,建立完善的物联网管控机制是物联网安全体系建设的重要内容。
由于物联网环境的特殊性,导致物联网终端类型多种多样,万物互联也导致物联网终端的数量也远超传统网络终端数量,而不同类型的物联网终端面临的安全威胁也不尽相同。所以,如何对物联网终端设备进行有效的识别的分类,成为物联网安全管理的重要问题。
目前常见的物联网设备识别分类技术,主要通过人工总结分析设备指纹(即设备在通信中表现的属性及行为,如IP地址、开放端口、报文头部字段等),对给定设备种类的特征进行总结并构造指纹库,通过将待分类设备与指纹库进行比对来进行分类。此类方法存在耗费大量人工、无法识别分类新设备等问题。
发明内容
本发明的目的是提供一种基于机器学习的物联网设备分类识别方法及系统,通过在安全网关的基础上提供一种自动化的、可处理未知类型设备的物联网终端设备智能分类机制,方便进行网络管理。
为实现上述目的,本发明提供了如下方案:
一种基于机器学习的物联网设备分类识别方法,包括:
获取已知类型的物联网设备的指纹;所述物联网设备的指纹为从所述物联网设备网络流量中截获的报文的特征信息;所述特征信息包括:链路层是否为ARP协议、链路层是否为LLC协议、网络层是否为IP协议、网络层是否为ICMP协议、网络层是否为ICMPv6协议、网络层是否为EAPoL协议、传输层是否为TCP协议、传输层是否为UDP协议、应用层是否为HTTP协议、应用层是否为HTTPS协议、应用层是否为DHCP协议、应用层是否为BOOTP协议、应用层是否为SSDP协议、应用层是否为DNS协议、应用层是否为MDNS协议、应用层是否为NTP协议、IP报文头部Padding字段值、IP报文头部RouterAlert字段值、IP报文长度、截至目前所述物联网设备的报文中出现的不同目的IP地址计数、源端口号、目的端口号以及设备应用层操作系统信息;
利用所述物联网设备的类型对所述物联网设备的指纹进行标注;
利用每一标注后的物联网设备的指纹进行机器学习,对相应的物联网设备的类型进行二元随机森林模型学习,得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合;
获取待识别的物联网设备的指纹;
利用所述二元分类器集合对所述待识别的物联网设备的指纹进行识别。
可选的,所述获取已知类型的物联网设备的指纹,具体包括:
从第一次捕获的所述已知类型的物联网设备中截获多个报文;
从所述报文中提取特征信息;
根据所述特征信息确定所述已知类型的物联网设备的指纹;
将所述已知类型的物联网设备的MAC地址作为所述已知类型的物联网设备的指纹的唯一标识;
将所述指纹进行存储。
可选的,所述利用每一标注后的物联网设备的指纹进行机器学习,对相应的物联网设备的类型进行二元随机森林模型学习,得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合,具体包括:
以所述标注后的物联网设备的指纹为正面样例,以未被标注的物联网设备的指纹为反面样例;所述未被标注的物联网设备的指纹为所述物联网设备的类型为未知;
从所述正面样例和反面样例构成的训练样本集中随机且有放回的获取N个训练样本;
从所述N个训练样本中选取M个属性,进行决策树学习,并返回所述从所述正面样例和反面样例构成的训练样本集中随机且有放回的获取N个训练样本的步骤,得到T个决策树;
根据所述T个决策树得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合。
可选的,所述利用所述二元分类器集合对所述待识别的物联网设备的指纹进行识别,具体包括:
判断所述待识别的物联网设备的指纹是否被所述二元分类器集合识别;
若所述待识别的物联网设备的指纹只被第i个二元分类器识别,则所述待识别的物联网设备的类型为第i个二元分类器对应的类型;
若所述待识别的物联网设备的指纹被多个二元分类器识别,则计算所述待识别的物联网设备的指纹与多个所述二元分类器对应的指纹的差异度;
将差异度最小的二元分类器对应的类型作为所述待识别的物联网设备的类型;
若所述待识别的物联网设备的指纹不能被所有的二元分类器识别,则将所述待识别的物联网设备作为新的类型,返回利用所述物联网设备的类型对所述物联网设备的指纹进行标注的步骤。
一种基于机器学习的物联网设备分类识别系统,包括:
已知类型的物联网设备的指纹获取模块,用于获取已知类型的物联网设备的指纹;所述物联网设备的指纹为从所述物联网设备网络流量中截获的报文的特征信息;所述特征信息包括:链路层是否为ARP协议、链路层是否为LLC协议、网络层是否为IP协议、网络层是否为ICMP协议、网络层是否为ICMPv6协议、网络层是否为EAPoL协议、传输层是否为TCP协议、传输层是否为UDP协议、应用层是否为HTTP协议、应用层是否为HTTPS协议、应用层是否为DHCP协议、应用层是否为BOOTP协议、应用层是否为SSDP协议、应用层是否为DNS协议、应用层是否为MDNS协议、应用层是否为NTP协议、IP报文头部Padding字段值、IP报文头部RouterAlert字段值、IP报文长度、截至目前所述物联网设备的报文中出现的不同目的IP地址计数、源端口号、目的端口号以及设备应用层操作系统信息;
指纹标注模块,用于利用所述物联网设备的类型对所述物联网设备的指纹进行标注;
二元分类器集合确定模块,用于利用每一标注后的物联网设备的指纹进行机器学习,对相应的物联网设备的类型进行二元随机森林模型学习,得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合;
待识别的物联网设备的指纹获取模块,用于获取待识别的物联网设备的指纹;
指纹进识别模块,用于利用所述二元分类器集合对所述待识别的物联网设备的指纹进行识别。
可选的,所述已知类型的物联网设备的指纹获取模块具体包括:
报文截获单元,用于从第一次捕获的所述已知类型的物联网设备中截获多个报文;
特征信息提取单元,用于从所述报文中提取特征信息;
物联网设备的指纹确定单元,用于根据所述特征信息确定所述已知类型的物联网设备的指纹;
指纹的唯一标识确定单元,用于将所述已知类型的物联网设备的MAC地址作为所述已知类型的物联网设备的指纹的唯一标识;
指纹存储单元,用于将所述指纹进行存储。
可选的,所述二元分类器集合确定模块具体包括:
训练样本集确定单元,用于以所述标注后的物联网设备的指纹为正面样例,以未被标注的物联网设备的指纹为反面样例;所述未被标注的物联网设备的指纹为所述物联网设备的类型为未知;
训练样本获取单元,用于从所述正面样例和反面样例构成的训练样本集中随机且有放回的获取N个训练样本;
决策树确定单元,用于从所述N个训练样本中选取M个属性,进行决策树学习,并返回所述从所述正面样例和反面样例构成的训练样本集中随机且有放回的获取N个训练样本的步骤,得到T个决策树;
二元分类器集合确定单元,用于根据所述T个决策树得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合。
可选的,所述指纹进识别模块具体包括:
判断单元,用于判断所述待识别的物联网设备的指纹是否被所述二元分类器集合识别;
第一识别结果确定单元,用于若所述待识别的物联网设备的指纹只被第i个二元分类器识别,则所述待识别的物联网设备的类型为第i个二元分类器对应的类型;
差异度确定单元,用于若所述待识别的物联网设备的指纹被多个二元分类器识别,则计算所述待识别的物联网设备的指纹与多个所述二元分类器对应的指纹的差异度;
第二识别结果确定单元,用于将差异度最小的二元分类器对应的类型作为所述待识别的物联网设备的类型;
第三识别结果确定单元,用于若所述待识别的物联网设备的指纹不能被所有的二元分类器识别,则将所述待识别的物联网设备作为新的类型,返回利用所述物联网设备的类型对所述物联网设备的指纹进行标注的步骤。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明所提供的一种基于机器学习的物联网设备分类识别方法及系统,通过一种对接入安全网关的物联网设备进行指纹提取的方法,用以表示物联网设备的特征信息。利用已知类型的物联网设备的指纹作为训练样例,针对每个物联网设备类型分别训练二元分类器。当新的物联网设备接入目标网络并产生通信流量,本发明能够提取该设备的指纹,并利用获得的二元分类器对其进行智能分类识别。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明所提供的一种基于机器学习的物联网设备分类识别方法流程示意图;
图2为本发明所提供的一种基于机器学习的物联网设备分类识别方法总体流程示意图;
图3为本发明所提供的一种基于机器学习的物联网设备分类识别方法中的一个特定物联网设备特征的指纹矩阵示意图;
图4为本发明所提供的一种基于机器学习的物联网设备分类识别方法中对待识别的样本进行分类识别的流程示意图;
图5为本发明所提供的一种基于机器学习的物联网设备分类识别系统结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于机器学习的物联网设备分类识别方法及系统,通过在安全网关的基础上提供一种自动化的、可处理未知类型设备的物联网终端设备智能分类机制,方便进行网络管理。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明所提供的一种基于机器学习的物联网设备分类识别方法流程示意图和图2为本发明所提供的一种基于机器学习的物联网设备分类识别方法总体流程示意图,如图1和图2所示,本发明所提供的一种基于机器学习的物联网设备分类识别方法,包括:
S101,获取已知类型的物联网设备的指纹;所述物联网设备的指纹为从所述物联网设备网络流量中截获的报文的特征信息;所述特征信息包括:链路层是否为ARP协议、链路层是否为LLC协议、网络层是否为IP协议、网络层是否为ICMP协议、网络层是否为ICMPv6协议、网络层是否为EAPoL协议、传输层是否为TCP协议、传输层是否为UDP协议、应用层是否为HTTP协议、应用层是否为HTTPS协议、应用层是否为DHCP协议、应用层是否为BOOTP协议、应用层是否为SSDP协议、应用层是否为DNS协议、应用层是否为MDNS协议、应用层是否为NTP协议、IP报文头部Padding字段值、IP报文头部RouterAlert字段值、IP报文长度、截至目前所述物联网设备的报文中出现的不同目的IP地址计数、源端口号、目的端口号以及设备应用层操作系统信息。
其中,物联网设备类型包括iKettle2智能水壶、SmarterCoffee智能咖啡机、D-Link摄像头、Ednet摄像头、Edimax摄像头、D-Link门窗传感器、D-Link智能开关、Hue智能开关、WeMo智能开关、WeMo智能插座。
S101具体包括:
从第一次捕获的所述已知类型的物联网设备中截获多个报文{p1,p2,…pn}。
从所述报文中提取特征信息{f1,i,f2,i,…f23,i}。
根据所述特征信息确定所述已知类型的物联网设备的指纹。
将所述已知类型的物联网设备的MAC地址作为所述已知类型的物联网设备的指纹的唯一标识。
将所述指纹进行存储。
如图3所示,以每个报文对应一列,每个特征信息对应一行,构造一个23×n矩阵,作为物联网设备“指纹”F:
S102,利用所述物联网设备的类型对所述物联网设备的指纹进行标注。定义已知的设备类型:{D1,D2,...,Dl},人工对少量设备指纹按照已知设备类型进行标注,定义已知类型的指纹集合为S,其中被识别为类型Di的子集为类型不为Di的子集记为
S103,利用每一标注后的物联网设备的指纹进行机器学习,对相应的物联网设备的类型进行二元随机森林模型学习,得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合。二元分类器集合为{C1,C2,…,Cl},即为二元随机森林分类器模型。
S103具体包括:
以所述标注后的物联网设备的指纹为正面样例,以未被标注的物联网设备的指纹为反面样例;所述未被标注的物联网设备的指纹为所述物联网设备的类型为未知。
从所述正面样例和反面样例构成的训练样本集中随机且有放回的获取N个训练样本。
从所述N个训练样本中选取M个属性,进行决策树学习,并返回所述从所述正面样例和反面样例构成的训练样本集中随机且有放回的获取N个训练样本的步骤,得到T个决策树。
根据所述T个决策树得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合。
S104,获取待识别的物联网设备的指纹。
S105,利用所述二元分类器集合对所述待识别的物联网设备的指纹进行识别。
如图4所示,S105具体包括:
判断所述待识别的物联网设备的指纹是否被所述二元分类器集合识别。
若所述待识别的物联网设备的指纹只被第i个二元分类器识别,则所述待识别的物联网设备的类型为第i个二元分类器对应的类型。
若所述待识别的物联网设备的指纹被多个二元分类器识别,则计算所述待识别的物联网设备的指纹与多个所述二元分类器对应的指纹的差异度。即有多个分类器接受F,n1,n2,…nh∈[1,l]且各不相同,则分别从每个中选择等量的已知类型指纹使用Damerau-Levenshtein编辑距离计算F与中每个指纹的差异度,将指纹矩阵视作一个单词,矩阵的每一列(即每个报文)视作一个字符,若两个字符(即两个报文对应的列向量)每个对应元素都相同,则认为两个字符相同,两个单词的编辑距离,由其中一个单词转换至另一个需要的修改、插入、删除字符操作的次数表示。计算F与每个中每个指纹的差异度总和,将F识别为总和最小的类型,结束分类识别过程。
将差异度最小的二元分类器对应的类型作为所述待识别的物联网设备的类型。
若所述待识别的物联网设备的指纹不能被所有的二元分类器识别,则将所述待识别的物联网设备作为新的类型,返回利用所述物联网设备的类型对所述物联网设备的指纹进行标注的步骤。
本发明采用真实物联网环境对所提方法进行验证,物联网环境中包括10类物联网设备,设备间通信采用Wi-Fi网络。收集了的连续3天内的网络流量,从中提取540个设备指纹构成数据集。按经验,本发明使用10折交叉验证法,将数据集随机分成10份,使用其中9份进行训练而用另外一份做测试,该过程重复10次,每次的测试数据不同。
表1为本发明提出的物联网设备智能分类识别方法的测试结果,从表1中可以看出,使用本发明所提方法,实现了精准的物联网资产智能分类识别。表1如下:
表1
图5为本发明所提供的一种基于机器学习的物联网设备分类识别系统结构示意图,如图5所示,本发明所提供的一种基于机器学习的物联网设备分类识别系统,包括:已知类型的物联网设备的指纹获取模块501、指纹标注模块502、二元分类器集合确定模块503、待识别的物联网设备的指纹获取模块504和指纹进识别模块505。
已知类型的物联网设备的指纹获取模块501用于获取已知类型的物联网设备的指纹;所述物联网设备的指纹为从所述物联网设备网络流量中截获的报文的特征信息;所述特征信息包括:链路层是否为ARP协议、链路层是否为LLC协议、网络层是否为IP协议、网络层是否为ICMP协议、网络层是否为ICMPv6协议、网络层是否为EAPoL协议、传输层是否为TCP协议、传输层是否为UDP协议、应用层是否为HTTP协议、应用层是否为HTTPS协议、应用层是否为DHCP协议、应用层是否为BOOTP协议、应用层是否为SSDP协议、应用层是否为DNS协议、应用层是否为MDNS协议、应用层是否为NTP协议、IP报文头部Padding字段值、IP报文头部RouterAlert字段值、IP报文长度、截至目前所述物联网设备的报文中出现的不同目的IP地址计数、源端口号、目的端口号以及设备应用层操作系统信息。
指纹标注模块502用于利用所述物联网设备的类型对所述物联网设备的指纹进行标注。
二元分类器集合确定模块503用于利用每一标注后的物联网设备的指纹进行机器学习,对相应的物联网设备的类型进行二元随机森林模型学习,得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合。
待识别的物联网设备的指纹获取模块504用于获取待识别的物联网设备的指纹。
指纹进识别模块505用于利用所述二元分类器集合对所述待识别的物联网设备的指纹进行识别。
所述已知类型的物联网设备的指纹获取模块501具体包括:报文截获单元、特征信息提取单元、物联网设备的指纹确定单元、指纹的唯一标识确定单元和指纹存储单元。
报文截获单元用于从第一次捕获的所述已知类型的物联网设备中截获多个报文。
特征信息提取单元用于从所述报文中提取特征信息。
物联网设备的指纹确定单元用于根据所述特征信息确定所述已知类型的物联网设备的指纹。
指纹的唯一标识确定单元用于将所述已知类型的物联网设备的MAC地址作为所述已知类型的物联网设备的指纹的唯一标识。
指纹存储单元用于将所述指纹进行存储。
所述二元分类器集合确定模块503具体包括:训练样本集确定单元、训练样本获取单元、决策树确定单元和二元分类器集合确定单元。
训练样本集确定单元用于以所述标注后的物联网设备的指纹为正面样例,以未被标注的物联网设备的指纹为反面样例;所述未被标注的物联网设备的指纹为所述物联网设备的类型为未知。
训练样本获取单元用于从所述正面样例和反面样例构成的训练样本集中随机且有放回的获取N个训练样本。
决策树确定单元用于从所述N个训练样本中选取M个属性,进行决策树学习,并返回所述从所述正面样例和反面样例构成的训练样本集中随机且有放回的获取N个训练样本的步骤,得到T个决策树。
二元分类器集合确定单元用于根据所述T个决策树得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合。
所述指纹进识别模块505具体包括:判断单元、第一识别结果确定单元、差异度确定单元、第二识别结果确定单元和第三识别结果确定单元。
判断单元用于判断所述待识别的物联网设备的指纹是否被所述二元分类器集合识别。
第一识别结果确定单元用于若所述待识别的物联网设备的指纹只被第i个二元分类器识别,则所述待识别的物联网设备的类型为第i个二元分类器对应的类型。
差异度确定单元用于若所述待识别的物联网设备的指纹被多个二元分类器识别,则计算所述待识别的物联网设备的指纹与多个所述二元分类器对应的指纹的差异度。
第二识别结果确定单元用于将差异度最小的二元分类器对应的类型作为所述待识别的物联网设备的类型。
第三识别结果确定单元用于若所述待识别的物联网设备的指纹不能被所有的二元分类器识别,则将所述待识别的物联网设备作为新的类型,返回利用所述物联网设备的类型对所述物联网设备的指纹进行标注的步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (8)
1.一种基于机器学习的物联网设备分类识别方法,其特征在于,包括:
获取已知类型的物联网设备的指纹;所述物联网设备的指纹为从所述物联网设备网络流量中截获的报文的特征信息;所述特征信息包括:链路层是否为ARP协议、链路层是否为LLC协议、网络层是否为IP协议、网络层是否为ICMP协议、网络层是否为ICMPv6协议、网络层是否为EAPoL协议、传输层是否为TCP协议、传输层是否为UDP协议、应用层是否为HTTP协议、应用层是否为HTTPS协议、应用层是否为DHCP协议、应用层是否为BOOTP协议、应用层是否为SSDP协议、应用层是否为DNS协议、应用层是否为MDNS协议、应用层是否为NTP协议、IP报文头部Padding字段值、IP报文头部RouterAlert字段值、IP报文长度、截至目前所述物联网设备的报文中出现的不同目的IP地址计数、源端口号、目的端口号以及设备应用层操作系统信息;
利用所述物联网设备的类型对所述物联网设备的指纹进行标注;
利用每一标注后的物联网设备的指纹进行机器学习,对相应的物联网设备的类型进行二元随机森林模型学习,得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合;
获取待识别的物联网设备的指纹;
利用所述二元分类器集合对所述待识别的物联网设备的指纹进行识别。
2.根据权利要求1所述的一种基于机器学习的物联网设备分类识别方法,其特征在于,所述获取已知类型的物联网设备的指纹,具体包括:
从第一次捕获的所述已知类型的物联网设备中截获多个报文;
从所述报文中提取特征信息;
根据所述特征信息确定所述已知类型的物联网设备的指纹;
将所述已知类型的物联网设备的MAC地址作为所述已知类型的物联网设备的指纹的唯一标识;
将所述指纹进行存储。
3.根据权利要求1所述的一种基于机器学习的物联网设备分类识别方法,其特征在于,所述利用每一标注后的物联网设备的指纹进行机器学习,对相应的物联网设备的类型进行二元随机森林模型学习,得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合,具体包括:
以所述标注后的物联网设备的指纹为正面样例,以未被标注的物联网设备的指纹为反面样例;所述未被标注的物联网设备的指纹为所述物联网设备的类型为未知;
从所述正面样例和反面样例构成的训练样本集中随机且有放回的获取N个训练样本;
从所述N个训练样本中选取M个属性,进行决策树学习,并返回所述从所述正面样例和反面样例构成的训练样本集中随机且有放回的获取N个训练样本的步骤,得到T个决策树;
根据所述T个决策树得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合。
4.根据权利要求1所述的一种基于机器学习的物联网设备分类识别方法,其特征在于,所述利用所述二元分类器集合对所述待识别的物联网设备的指纹进行识别,具体包括:
判断所述待识别的物联网设备的指纹是否被所述二元分类器集合识别;
若所述待识别的物联网设备的指纹只被第i个二元分类器识别,则所述待识别的物联网设备的类型为第i个二元分类器对应的类型;
若所述待识别的物联网设备的指纹被多个二元分类器识别,则计算所述待识别的物联网设备的指纹与多个所述二元分类器对应的指纹的差异度;
将差异度最小的二元分类器对应的类型作为所述待识别的物联网设备的类型;
若所述待识别的物联网设备的指纹不能被所有的二元分类器识别,则将所述待识别的物联网设备作为新的类型,返回利用所述物联网设备的类型对所述物联网设备的指纹进行标注的步骤。
5.一种基于机器学习的物联网设备分类识别系统,其特征在于,包括:
已知类型的物联网设备的指纹获取模块,用于获取已知类型的物联网设备的指纹;所述物联网设备的指纹为从所述物联网设备网络流量中截获的报文的特征信息;所述特征信息包括:链路层是否为ARP协议、链路层是否为LLC协议、网络层是否为IP协议、网络层是否为ICMP协议、网络层是否为ICMPv6协议、网络层是否为EAPoL协议、传输层是否为TCP协议、传输层是否为UDP协议、应用层是否为HTTP协议、应用层是否为HTTPS协议、应用层是否为DHCP协议、应用层是否为BOOTP协议、应用层是否为SSDP协议、应用层是否为DNS协议、应用层是否为MDNS协议、应用层是否为NTP协议、IP报文头部Padding字段值、IP报文头部RouterAlert字段值、IP报文长度、截至目前所述物联网设备的报文中出现的不同目的IP地址计数、源端口号、目的端口号以及设备应用层操作系统信息;
指纹标注模块,用于利用所述物联网设备的类型对所述物联网设备的指纹进行标注;
二元分类器集合确定模块,用于利用每一标注后的物联网设备的指纹进行机器学习,对相应的物联网设备的类型进行二元随机森林模型学习,得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合;
待识别的物联网设备的指纹获取模块,用于获取待识别的物联网设备的指纹;
指纹进识别模块,用于利用所述二元分类器集合对所述待识别的物联网设备的指纹进行识别。
6.根据权利要求5所述的一种基于机器学习的物联网设备分类识别系统,其特征在于,所述已知类型的物联网设备的指纹获取模块具体包括:
报文截获单元,用于从第一次捕获的所述已知类型的物联网设备中截获多个报文;
特征信息提取单元,用于从所述报文中提取特征信息;
物联网设备的指纹确定单元,用于根据所述特征信息确定所述已知类型的物联网设备的指纹;
指纹的唯一标识确定单元,用于将所述已知类型的物联网设备的MAC地址作为所述已知类型的物联网设备的指纹的唯一标识;
指纹存储单元,用于将所述指纹进行存储。
7.根据权利要求5所述的一种基于机器学习的物联网设备分类识别系统,其特征在于,所述二元分类器集合确定模块具体包括:
训练样本集确定单元,用于以所述标注后的物联网设备的指纹为正面样例,以未被标注的物联网设备的指纹为反面样例;所述未被标注的物联网设备的指纹为所述物联网设备的类型为未知;
训练样本获取单元,用于从所述正面样例和反面样例构成的训练样本集中随机且有放回的获取N个训练样本;
决策树确定单元,用于从所述N个训练样本中选取M个属性,进行决策树学习,并返回所述从所述正面样例和反面样例构成的训练样本集中随机且有放回的获取N个训练样本的步骤,得到T个决策树;
二元分类器集合确定单元,用于根据所述T个决策树得到以物联网设备的指纹为输入,以物联网设备的类型为输出的二元分类器集合。
8.根据权利要求5所述的一种基于机器学习的物联网设备分类识别系统,其特征在于,所述指纹进识别模块具体包括:
判断单元,用于判断所述待识别的物联网设备的指纹是否被所述二元分类器集合识别;
第一识别结果确定单元,用于若所述待识别的物联网设备的指纹只被第i个二元分类器识别,则所述待识别的物联网设备的类型为第i个二元分类器对应的类型;
差异度确定单元,用于若所述待识别的物联网设备的指纹被多个二元分类器识别,则计算所述待识别的物联网设备的指纹与多个所述二元分类器对应的指纹的差异度;
第二识别结果确定单元,用于将差异度最小的二元分类器对应的类型作为所述待识别的物联网设备的类型;
第三识别结果确定单元,用于若所述待识别的物联网设备的指纹不能被所有的二元分类器识别,则将所述待识别的物联网设备作为新的类型,返回利用所述物联网设备的类型对所述物联网设备的指纹进行标注的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011321550.5A CN112600793A (zh) | 2020-11-23 | 2020-11-23 | 一种基于机器学习的物联网设备分类识别方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011321550.5A CN112600793A (zh) | 2020-11-23 | 2020-11-23 | 一种基于机器学习的物联网设备分类识别方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112600793A true CN112600793A (zh) | 2021-04-02 |
Family
ID=75183831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011321550.5A Pending CN112600793A (zh) | 2020-11-23 | 2020-11-23 | 一种基于机器学习的物联网设备分类识别方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112600793A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113765891A (zh) * | 2021-08-13 | 2021-12-07 | 深圳番多拉信息科技有限公司 | 一种设备指纹识别方法以及装置 |
CN113839941A (zh) * | 2021-09-22 | 2021-12-24 | 国网湖北省电力有限公司检修公司 | 基于smote和并行随机森林的物联网设备准入检测方法和系统 |
CN114338600A (zh) * | 2021-12-28 | 2022-04-12 | 深信服科技股份有限公司 | 一种设备指纹的推选方法、装置、电子设备和介质 |
CN114598629A (zh) * | 2022-03-09 | 2022-06-07 | 深圳市吉祥腾达科技有限公司 | 一种终端类型识别自动化测试系统及计算机设备 |
CN115001790A (zh) * | 2022-05-27 | 2022-09-02 | 国网智能电网研究院有限公司 | 基于设备指纹的二级认证方法、装置及电子设备 |
CN115277063A (zh) * | 2022-06-13 | 2022-11-01 | 深圳铸泰科技有限公司 | 一种在ipv4与ipv6混合网络环境下的终端识别装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109063745A (zh) * | 2018-07-11 | 2018-12-21 | 南京邮电大学 | 一种基于决策树的网络设备类型识别方法及系统 |
CN109948650A (zh) * | 2019-02-13 | 2019-06-28 | 南京中一物联科技有限公司 | 一种基于报文特征的智能家居设备类型判定方法 |
CN111200600A (zh) * | 2019-12-28 | 2020-05-26 | 西安交通大学 | 一种物联网设备流量序列指纹特征提取方法 |
US20200211721A1 (en) * | 2017-03-02 | 2020-07-02 | Singapore University Of Technology And Design | METHOD AND APPARATUS FOR DETERMINING AN IDENTITY OF AN UNKNOWN INTERNET-OF-THINGS (IoT) DEVICE IN A COMMUNICATION NETWORK |
CN111385297A (zh) * | 2020-03-04 | 2020-07-07 | 西安交通大学 | 无线设备指纹识别方法、系统、设备及可读存储介质 |
CN111506599A (zh) * | 2020-04-20 | 2020-08-07 | 广州大学 | 基于规则匹配和深度学习的工控设备识别方法及系统 |
CN111625807A (zh) * | 2020-03-30 | 2020-09-04 | 西安交大捷普网络科技有限公司 | 一种设备类型识别方法与装置 |
-
2020
- 2020-11-23 CN CN202011321550.5A patent/CN112600793A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200211721A1 (en) * | 2017-03-02 | 2020-07-02 | Singapore University Of Technology And Design | METHOD AND APPARATUS FOR DETERMINING AN IDENTITY OF AN UNKNOWN INTERNET-OF-THINGS (IoT) DEVICE IN A COMMUNICATION NETWORK |
CN109063745A (zh) * | 2018-07-11 | 2018-12-21 | 南京邮电大学 | 一种基于决策树的网络设备类型识别方法及系统 |
CN109948650A (zh) * | 2019-02-13 | 2019-06-28 | 南京中一物联科技有限公司 | 一种基于报文特征的智能家居设备类型判定方法 |
CN111200600A (zh) * | 2019-12-28 | 2020-05-26 | 西安交通大学 | 一种物联网设备流量序列指纹特征提取方法 |
CN111385297A (zh) * | 2020-03-04 | 2020-07-07 | 西安交通大学 | 无线设备指纹识别方法、系统、设备及可读存储介质 |
CN111625807A (zh) * | 2020-03-30 | 2020-09-04 | 西安交大捷普网络科技有限公司 | 一种设备类型识别方法与装置 |
CN111506599A (zh) * | 2020-04-20 | 2020-08-07 | 广州大学 | 基于规则匹配和深度学习的工控设备识别方法及系统 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113765891A (zh) * | 2021-08-13 | 2021-12-07 | 深圳番多拉信息科技有限公司 | 一种设备指纹识别方法以及装置 |
CN113765891B (zh) * | 2021-08-13 | 2024-04-09 | 深圳番多拉信息科技有限公司 | 一种设备指纹识别方法以及装置 |
CN113839941A (zh) * | 2021-09-22 | 2021-12-24 | 国网湖北省电力有限公司检修公司 | 基于smote和并行随机森林的物联网设备准入检测方法和系统 |
CN113839941B (zh) * | 2021-09-22 | 2023-08-29 | 国网湖北省电力有限公司检修公司 | 基于smote和并行随机森林的物联网设备准入检测方法和系统 |
CN114338600A (zh) * | 2021-12-28 | 2022-04-12 | 深信服科技股份有限公司 | 一种设备指纹的推选方法、装置、电子设备和介质 |
CN114338600B (zh) * | 2021-12-28 | 2023-09-05 | 深信服科技股份有限公司 | 一种设备指纹的推选方法、装置、电子设备和介质 |
CN114598629A (zh) * | 2022-03-09 | 2022-06-07 | 深圳市吉祥腾达科技有限公司 | 一种终端类型识别自动化测试系统及计算机设备 |
CN114598629B (zh) * | 2022-03-09 | 2023-08-11 | 深圳市吉祥腾达科技有限公司 | 一种终端类型识别自动化测试系统及计算机设备 |
CN115001790A (zh) * | 2022-05-27 | 2022-09-02 | 国网智能电网研究院有限公司 | 基于设备指纹的二级认证方法、装置及电子设备 |
CN115001790B (zh) * | 2022-05-27 | 2024-03-26 | 国网智能电网研究院有限公司 | 基于设备指纹的二级认证方法、装置及电子设备 |
CN115277063A (zh) * | 2022-06-13 | 2022-11-01 | 深圳铸泰科技有限公司 | 一种在ipv4与ipv6混合网络环境下的终端识别装置 |
CN115277063B (zh) * | 2022-06-13 | 2023-07-25 | 深圳铸泰科技有限公司 | 一种在ipv4与ipv6混合网络环境下的终端识别装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112600793A (zh) | 一种基于机器学习的物联网设备分类识别方法及系统 | |
CN109063745B (zh) | 一种基于决策树的网络设备类型识别方法及系统 | |
CN110113345B (zh) | 一种基于物联网流量的资产自动发现的方法 | |
CN111385297B (zh) | 无线设备指纹识别方法、系统、设备及可读存储介质 | |
CN112333706B (zh) | 物联网设备异常检测方法、装置、计算设备及存储介质 | |
CN113328985B (zh) | 一种被动物联网设备识别方法、系统、介质及设备 | |
CN110868404B (zh) | 一种基于tcp/ip指纹的工控设备自动识别方法 | |
CN112019449B (zh) | 流量识别抓包方法和装置 | |
CN111698260A (zh) | 一种基于报文分析的dns劫持检测方法及系统 | |
CN113283498B (zh) | 一种面向高速网络的vpn流量快速识别方法 | |
CN112565229B (zh) | 隐蔽通道检测方法及装置 | |
CN112769623A (zh) | 边缘环境下的物联网设备识别方法 | |
CN112003869A (zh) | 一种基于流量的漏洞识别方法 | |
CN111757378A (zh) | 一种无线网络中设备识别方法及装置 | |
CN112073988A (zh) | 一种局域网内隐藏摄像头的探测方法 | |
Yin et al. | Identifying iot devices based on spatial and temporal features from network traffic | |
CN113872962B (zh) | 一种面向高速网络抽样数据采集场景的慢速端口扫描检测方法 | |
CN117914599A (zh) | 基于图神经网络的移动网络恶意流量识别方法 | |
CN111291078B (zh) | 一种域名匹配检测方法及装置 | |
CN116346434A (zh) | 电力系统网络攻击行为监测准确度提升方法及系统 | |
CN112968906B (zh) | 一种基于多元组的Modbus TCP异常通讯检测方法和系统 | |
CN115499179A (zh) | 一种面向主干网中DoH隧道流量的检测方法 | |
CN112615713B (zh) | 隐蔽信道的检测方法、装置、可读存储介质及电子设备 | |
CN111935069B (zh) | 一种基于时序的流量攻击可视化表征方法 | |
CN114330504A (zh) | 基于Sketch的网络恶意流量检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210402 |
|
RJ01 | Rejection of invention patent application after publication |