CN112312590A - 一种设备通信协议识别方法和装置 - Google Patents
一种设备通信协议识别方法和装置 Download PDFInfo
- Publication number
- CN112312590A CN112312590A CN202011080275.2A CN202011080275A CN112312590A CN 112312590 A CN112312590 A CN 112312590A CN 202011080275 A CN202011080275 A CN 202011080275A CN 112312590 A CN112312590 A CN 112312590A
- Authority
- CN
- China
- Prior art keywords
- text
- text message
- communication protocol
- identified
- reporting
- 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
- 238000004891 communication Methods 0.000 title claims abstract description 211
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000000605 extraction Methods 0.000 claims abstract description 16
- 230000005540 biological transmission Effects 0.000 claims description 36
- 238000012216 screening Methods 0.000 claims description 31
- 238000012163 sequencing technique Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 11
- 230000011218 segmentation Effects 0.000 claims description 6
- 239000013598 vector Substances 0.000 description 25
- 238000004364 calculation method Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000013507 mapping Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
- H04W80/08—Upper layer protocols
- H04W80/12—Application layer protocols, e.g. WAP [Wireless Application Protocol]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
- G06F16/325—Hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种设备通信协议识别方法和装置;本发明实施例在采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合后,对文本消息集合中的文本消息进行特征提取,得到文本消息对应的文本特征,然后,根据文本特征,确定文本消息的上报类型,基于上报类型,在文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息,在目标文本消息中识别出待识别设备的通信协议;该方案可以大大提升设备通信协议的识别效率和识别成功率。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种设备通信协议识别方法和装置。
背景技术
近年来,随着5G技术的发展,物联网设备的种类也越来越多,而物联网标准还不是很完善,不同的设备厂商指定的这些设备的通信协议也不同。为了连接这些设备,就需要识别设备通信协议。现有的设备通信协议识别方法主要通过人工识别或者根据设备类型与现有通信协议进行匹配。
在对现有技术的研究和实践过程中,本发明的发明人发现人工识别方法需要对每一个设备进行设置,在设备类型和数量较多的情况下,就会导致识别效率大大降低,而且人工识别的错误率也较高,而根据设备类型匹配现有通信协议来说,厂商数量较多而且通信协议的标准也各不相同,即使是同一厂商在不同区域,通信协议的开放程度也不同,使得识别效率较低。即总体而言,现有技术的设备通信协议识别效率和识别成功率较低。
发明内容
本发明实施例提供一种设备通信协议识别方法和装置,可以设备通信协议的识别效率和识别成功率。
一种设备通信协议识别方法,包括:
采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合;
对所述文本消息集合中的文本消息进行特征提取,得到所述文本消息对应的文本特征;
根据所述文本特征,确定所述文本消息的上报类型;
基于所述上报类型,在所述文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息;
在所述目标文本消息中识别出所述待识别设备的通信协议。
相应的,本发明实施例提供一种设备通信协议识别装置,包括:
采集单元,用于采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合;
提取单元,用于对所述文本消息集合中的文本消息进行特征提取,得到所述文本消息对应的文本特征;
确定单元,用于根据所述文本特征,确定所述文本消息的上报类型;
筛选单元,用于基于所述上报类型,在所述文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息;
识别单元,用于在所述目标文本消息中识别出所述待识别设备的通信协议。
可选的,在一些实施例中,所述确定单元,具体可以用于根据所述文本特征,计算所述文本消息之间的消息相似度;基于所述消息相似度,对所述文本消息集合中的文本消息进行分类,得到所述文本集合中文本消息的类型;根据所述文本消息的类型,确定所述文本消息的上报类型。
可选的,在一些实施例中,所述确定单元,具体可以用于当所述文本消息集合中的文本消息的类型为同一类型时,确定所述文本消息的上报类型为固定上报,且所述待识别设备的数量为一个;当所述文本消息集合中的文本消息的类型为多个类型时,获取所述文本消息的上报时间,并根据所述上报时间,确定所述文本消息的上报类型。
可选的,在一些实施例中,所述确定单元,具体可以用于在文本消息集合中标注每一文本消息的类型;根据所述上报时间,对标注后文本消息集合中的文本消息进行排序;当多个类型的文本消息在所述标注后文本消息集合中的排序结果满足预设排序规律时,确定所述文本消息的上报类型为规律上报,且所述待识别设备的数量为多个;当所述多个类型的文本消息在所述标注后文本消息集合中的排序结果不满足所述预设排序规律时,确定所述文本消息的上报类型为随机上报。
可选的,在一些实施例中,所述筛选单元,具体可以用于当所述文本消息的上报类型为固定上报时,在所述文本消息集合中筛选出任意一个文本消息作为识别通信协议的文本消息,得到目标文本消息;当所述文本消息的上报类型为规律上报时,将所述文本特征与预设通信协议组合的第一数据特征进行匹配,并在文本消息集合中筛选出与所述第一数据特征匹配成功的文本特征对应的文本消息,得到目标文本消息;当所述文本消息的上报类型为随机上报时,返回执行采集所述待识别设备在预设时间段内上报的文本消息的步骤,直到在采集到的文本消息中筛选出用于识别通信协议的文本消息为止,得到目标文本消息。
可选的,在一些实施例中,所述识别单元,具体可以用于当所述目标文本消息对应的上报类型为固定上报时,将所述目标文本消息的目标文本特征与预设通信协议的第二数据特征进行匹配,并将与所述目标文本特征匹配成功的预设通信协议作为所述待识别设备的通信协议;当所述目标文本消息对应的上报类型为规律上报或随机上报时,在所述目标文本消息中识别出文本内容和所述文本内容对应的内容格式,并根据所述文本内容和内容格式,确定所述待识别设备的通信协议。
可选的,在一些实施例中,所述识别单元,具体可以用于根据所述内容格式,计算所述文本内容之间的内容相似度;基于所述内容相似度,对所述待识别设备进行分类,并在所述文本内容中筛选出每一类型的待识别设备对应的目标文本内容;根据所述目标文本内容,确定所述待识别设备的通信协议。
可选的,在一些实施例中,所述识别单元,具体可以用于对所述目标文本内容进行分词处理,并对所述目标文本内容中的文本词进行加权;根据所述文本词的加权值,在所述目标文本内容中识别出所述通信协议的属性信息和所述文本词中的关键词;基于所述关键词,确定所述待识别设备的设备类型;将所述通信协议的属性信息和设备类型进行融合,得到所述待识别设备的通信协议。
可选的,在一些实施例中,所述采集单元,具体可以用于获取所述待识别设备的数据传输接口的接口地址;根据所述接口地址,构建所述数据传输接口与边缘节点之间的数据传输通道;通过所述数据传输通道,采集至少一个待识别设备在预设时间段内上报的文本消息,得到所述文本消息集合。
此外,本发明实施例还提供一种电子设备,包括处理器和存储器,所述存储器存储有应用程序,所述处理器用于运行所述存储器内的应用程序实现本发明实施例提供的设备通信协议识别方法。
此外,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本发明实施例所提供的任一种设备通信协议识别方法中的步骤。
本发明实施例在采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合后,对文本消息集合中的文本消息进行特征提取,得到文本消息对应的文本特征,然后,根据文本特征,确定文本消息的上报类型,基于上报类型,在文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息,在目标文本消息中识别出待识别设备的通信协议;由于该方案可以针对至少一个待识别设备在预设时间段内上报的文本消息,提取文本消息的文本特征来确定文本消息的上报类型,并根据不同的上报类型筛选出目标文本消息,从而在目标文本消息中识别出待识别设备的通信协议,在识别过程无需人工操作,可以同时识别多个类型的待识别设备,因此,可以大大提升设备通信协议的识别效率和识别成功率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的设备通信协议识别方法的场景示意图;
图2是本发明实施例提供的设备通信协议识别方法的流程示意图;
图3是本发明实施例提供的在目标文本消息中识别出待识别设备的通信协议的流程示意图;
图4是本发明实施例提供的设备通信协议识别方法的整体架构图;
图5是本发明实施例提供的设备通信协议识别方法的另一流程示意图;
图6是本发明实施例提供的设备通信协议识别装置的结构示意图;
图7是本发明实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种设备通信协议识别方法、装置和计算机可读存储介质。其中,该设备通信协议识别装置可以集成在电子设备中,该电子设备可以是服务器,也可以是终端等设备。
其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、网络加速服务(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
例如,参见图1,以设备通信协议识别装置集成在电子设备中为例,电子设备采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合,然后,对文本消息集合中的文本消息进行特征提取,得到文本消息对应的文本特征,根据文本特征,确定文本消息的上报类型,然后,基于上报类型,在文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息,在目标文本消息中识别出所述待识别设备的通信协议。
其中,设备通信协议可以为物联网设备与外部在通信时所执行的通信协议或者标准,也可以理解为物联网设备与外部交互时上报的文本消息所遵循的规则,该协议可以在常见的通信协议的基础上,根据自身的需求结合设备的类型或部署位置进行制定,不同设备的通信协议可以相同也可以不同,相同类型的设备在不同的部署区域也可以相同或不同。
其中,物联网设备也可以理解连接物联网的设备,所谓物联网(The Internet ofThings,简称IOT)是指通过各种信息传感器、射频识别技术、全球定位系统、红外感应器、激光扫描器等各种装置与技术,实时采集任何需要监控、连接、互动的物体或过程,采集其声、光、热、电、力学、化学、生物、位置等各种需要的信息,通过各类可能的网络接入,实现物与物、物与人的泛在连接,实现对物品和过程的智能化感知、识别和管理。物联网是一个基于互联网、传统电信网等的信息承载体,它让所有能够被独立寻址的普通物理对象形成互联互通的网络。
在本方案中,可以采用云物联(Cloud IOT)连接各类物联网设备,进而再通过云技术中的边缘节点的边缘实时流对物联网设备的通信协议进行识别,云物联旨在将传统物联网中传感设备感知的信息和接受的指令连入互联网中,真正实现网络化,并通过云计算技术实现海量数据存储和运算,由于物联网的特性是物与物相连接,实时感知各个“物体”当前的运行状态,在这个过程中会产生大量的数据信息,如何将这些信息汇总,如何在海量信息中筛取有用信息为后续发展做决策支持,这些已成为影响物联网发展的关键问题,而基于云计算和云存储技术的物联云也因此成为物联网技术和应用的有力支持。
以下分别进行详细说明。需要说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
本实施例将从设备通信协议识别装置的角度进行描述,该设备通信协议识别装置具体可以集成在电子设备中,该电子设备可以是服务器,也可以是终端等设备;其中,该终端可以包括平板电脑、笔记本电脑、以及个人计算机(PC,Personal Computer)、可穿戴设备、虚拟现实设备或其他可以识别设备通信协议的智能设备等设备。
一种设备通信协议识别方法,包括:
采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合,对文本消息集合中的文本消息进行特征提取,得到文本消息对应的文本特征,根据文本特征,确定文本消息的上报类型,基于上报类型,在文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息,在目标文本消息中识别出所述待识别设备的通信协议。
如图2所示,该设备通信协议识别方法的具体流程如下:
101、采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合。
其中,文本消息可以为物联网设备与外部交互时按照通信协议发送的包含自身信息的文本信息,比如,以物联网设备为温度传感器为例,则该温度传感器上报的文本消息就可以为包含当前温度的文本信息。
例如,可以获取待识别设备的数据传输接口的接口地址,比如,可以直接在与待识别设备有过数据交互的业务服务器中获取待识别设备的数据传输数据接口的接口地址,还可以直接通过边缘节点与待识别设备进行硬件连接或者网络连接,从而直接从待识别设备中读取出数据传输接口的接口地址。根据接口地址,构建数据传输接口与边缘节点之间的数据传输通道,比如,采用预设安全协议,在数据传输接口和边缘节点构建出数据传输通道,边缘节点可以通过该数据传输通道直接采集到待识别设备根据设备通信协议上报的文本消息。通过数据传输通道,采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合,比如,边缘节点通过构建的与待识别设备之间的数据传输通道,可以采集一个预设时间段内一个或多个待识别设备实时按照通信协议上报的文本消息,就可以得到文本消息集合,还可以对直接采集到的文本消息进行预处理,得到文本消息集合,比如,预处理的方式可以包括将不完整的文本消息、错误的文本消息或者无法识别的文本消息进行删除。
其中,当采集至少一个待识别设备在预设时间段内上报的文本消息之后,将采集到的文本消息集合可以存储在边缘节点,然后,还可以继续对待识别设备上报的文本消息进行继续采集,也可以暂时停止采集。
其中,边缘节点可以为部署在待识别设备附近的边缘端,该边缘端可以为靠近用户的网络边缘侧构建的业务平台,提供存储、计算、网络等资源,将部分关键业务应用下沉到接入网络边缘,以减少网络传输和多级转发带来的宽度和时延损耗。
102、对文本消息集合中的文本消息进行特征提取,得到文本消息对应的文本特征。
例如,对文本消息集合中的文本消息进行特征提取,特征提取的方式可以有多种,比如,可以将文本消息集合中的文本消息映射到向量空间,形成文本消息与向量数据的映射关系,从而可以将文本消息转换为空间向量,将文本消息对应空间向量作为文本特征,还可以对文本消息集合中的文本消息进行哈希计算,得到每一个文本消息的哈希值,将哈希值作为文本消息对应的文本特征。
可选的,还可以根据文本消息的文本特征来判断待识别设备是否存在异常,比如,可以计算文本特征的特征之间的特征均值,根据特征均值,确定文本特征之间的波动参数,譬如,可以根据特征均值来计算文本特征的特征值之间的方差,将特征值的方差作为文本特征之间的波动参数,当波动参数超过预设波动参数阈值时,就可以确定待识别设备可能存在异常,此时,如果边缘节点还在采集待识别设备的上报信息时,就可以停止采集待识别设备上报的文本消息,并生成提示信息发送至前端或者终端。
103、根据文本特征,确定文本消息的上报类型。
其中,上报类型可以理解为待识别设备根据通信协议上报文本消息的类型,比如,当待识别设备一直上报相同类型的文本消息,就可以认为这种上报类型为固定上报,当待识别设备有规律的上报不同类型的文本消息,就可以为这种上报类型为规律上报,当待识别设备上报的不同类型的文本消息不满足上报规律时,就可以认为这种上报类型为随机上报。
例如,可以根据文本特征,计算文本消息之间的消息相似度,基于消息相似度,对文本消息集合中的文本消息进行分类,根据文本消息的类型,确定文本消息的上报类型,具体可以如下:
S1、根据文本特征,计算文本消息之间的消息相似度。
例如,根据文本特征的类型不同,可以采用不同的相似度计算方法计算文本消息之间的消息相似度,比如,当文本特征的类型为空间向量时,以任意两个文本特征的空间向量为A和B,两者都从原点[0,0,0…]触发指向[1,0,1,1,1…]和[1,1,1,1,1],就可以通过余弦相似度算法计算相似度,具体的计算公式如公式(1)所示:
其中,‖A‖和‖B‖为空间向量A和B的范数,Ai和Bi分别代表空间向量A和B的各分量。
通过相似度算法,就可以计算文本消息集合中任意两个文本消息之间的消息相似度。当文本特征为文本消息的哈希值时,可以采用局部敏感哈希(Locality SensitiveHashing,LSH)算法来计算文本消息之间的相似度,比如,使用哈希算法为每个文本消息生成对应的哈希值并根据各自的权重形成加权数字串,然后合并所有文本消息中的词语并降维,最后,通过使用海明距离(Hamming Distance)计算两个文本消息的消息相似度。
S2、基于消息相似度,对文本消息集合中的文本消息进行分类,得到文本消息集合中文本消息的类型。
例如,将任意两个文本消息的消息相似度与预设相似度阈值进行对比,如果消息相似度超过预设相似度阈值时,就可以确定这两个文本消息的类型相同。通过将文本消息集合中全部文本消息之间的消息相似度与预设相似度阈值进行对比之后,就可以确定文本消息集合中任意两个文本消息是否属于同一类型。然后,将同一类型的文本消息分为一类,就可以完成对文本消息集合中的文本消息的分类,得到文本消息集合中每个文本消息的类型。
S3、根据文本消息的类型,确定文本消息的上报类型。
例如,当文本消息集合中的文本消息的类型为同一类型时,比如,文本消息集合中的文本消息全部为A类型的文本消息,此时就可以确定文本消息的上报类型为固定上报,而且还可以确定上报文本消息的待识别设备的数量为一个。当文本消息集合中文本消息的类型为多个类型时,比如,文本消息集合中的文本消息有m个A类型的文本消息和n个B类型的文本消息,此时,就需要获取这些文本消息的上报时间,并根据上报时间,确定文本消息的上报类型,比如,在文本消息集合中标注每一文本消息的类型,比如,假设文本消息的类型为A类型和B类型,将A类型和B类型标注在文本消息集合的每一文本消息中。然后,根据上报时间,对标注后文本消息集合中的文本消息进行排序,比如,还是假设文本消息的类型为A类型和B类型,标注类型的文本消息的排序结果可以为A-A-B-A-A-B-A-A-B。当多个类型的文本消息在标注后文本消息集合中排序结果满足预设排序规律时,比如,以排序结果为A-A-B-A-A-B-A-A-B为例,可以发现该排序结果满足预设排序规律为存在一个固定的排序周期,而且排序周期为两个A类型文本消息和一个B类型文本消息,意味着,每次上报两个A类型文本消息之后,就会上报一个B类型的文本消息,A类型文本消息和B类型文本消息之间上报的间隔时间可以相同也可以不同,在这种情况时,就可以确定文本消息的上报类型为规律上报,且上报文本消息的待识别设备的数量为多个。当多个类型的文本消息在标注后文本消息集合中的排序结果不满足预设排序规律时,比如,在预设时间段内采集的文本消息存在A类型、B类型和C类型等三个类型的文本消息,其中这三种类型的文本消息按照上报时间在标注后文本消息集合中排序结果为A-B-A-C-B-B-A-C-A,就可以发现,该排序结果中不存在一个固定的排序周期,而且三种类型的文本消息在标注后文本消息集合中的排序不满足任何预设排序规律,此时,就可以确定文本消息的上报类型为随机上报。
104、基于上报类型,在文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息。
例如,当文本消息的上报类型为固定上报时,由于文本消息集合中的文本消息为同一类型的文本消息,因此,在文本消息集合中筛选出任意一个文本消息作为识别通信协议的文本消息,就可以得到目标文本消息。
可选的,当文本消息的上报类型为规律上报时,将文本消息的文本特征与预设通信协议组合的第一数据特征进行匹配,并在文本消息集合中筛选出与第一数据特征匹配成功的文本特征对应的文本消息,就可以得到目标文本消息,比如,当文本消息集合中的文本消息为A类型文本消息-A类型文本消息-B类型文本消息-A类型文本消息-A类型文本消息-B类型文本消息时,将全部的A类型文本消息和B类型文本消息的文本特征与预设通信协议组合的第一数据特征进行匹配,假设此时预设通信协议组合为两个X类型和一个Y类型组成的X-X-Y这种组合结构,通过匹配就可以发现A-A-B这种文本特征组合可以与X-X-Y这种组合结构匹配,此时,就可以确定用于识别通信协议的最小粒度的文本消息组合就可以为A-A-B。因此,在文本消息集合中筛选出A类型文本消息-A类型文本消息-B类型文本消息为目标文本消息。
可选的,当文本消息的上报类型为随机上报时,返回执行采集待识别设备在预设时间段内上报的文本消息的步骤,直到在采集到的文本消息中筛选出用于识别通信协议的文本消息为止,比如,可以增加采集待识别设备上报文本消息的采集时间,继续采集待识别设备上报的文本消息,就可以得到更新后文本消息集合,对更新后文本消息集合中的文本特征进行特征提取,然后,在根据文本特征计算更新后文本消息集合中的文本消息之间的相似度,从而来确定文本消息的类型,进而确定出文本消息的上报类型,当文本消息的上报类型为固定上报或者规律上报时,就可以在文本消息中筛选出目标文本消息,当文本消息的上报类型还是随机上报时,继续返回采集待识别设备上报的文本消息,直到在采集到的文本消息中筛选出用于识别通信协议的文本消息为止,就可以得到目标文本消息。
其中,需要说明的是目标文本消息为用于识别通信协议的最小粒度的文本消息或文本消息组合。比如,文本消息集合中包括多个文本消息时,这些文本消息相同或者存在一些规律的情况下,就不需要在全部的文本消息中识别出待识别设备的通信协议,此时,就只需要在文本消息集合中筛选出可以识别出待识别设备的通信协议的最少的文本消息,可以大大节省计算资源,从而提升设备通信协议的识别效率和识别速率。
105、在目标文本消息中识别出待识别设备的通信协议。
例如,对于不同上报类型对应目标文本消息,可以采用不同的方法识别出待识别设备的通信协议,可以如图3所示,具体如下:
(1)当目标文本消息对应的上报类型为固定上报。
例如,当目标文本消息对应的上报类型为固定上报时,将目标文本消息的目标文本特征与预设通信协议的第二数据特征进行匹配,并将与目标文本特征匹配成功的预设通信协议作为待识别设备的通信协议,比如,将目标文本特征与现有通信协议集合中各个预设通信协议对应的第二数据特征进行匹配,在现有通信协议集合中筛选出与目标文本特征匹配成功的第二数据特征对应的目标通信协议,将该目标通信协议作为这个待识别设备的通信协议。
(2)当目标文本消息对应的上报类型为规律上报或随机上报。
例如,当目标文本消息对应的上报类型为规律上报或随机上报时,在目标文本消息中识别出文本内容和文本内容对应的内容格式,并根据文本内容和内容格式,确定待识别设备的通信协议,比如,根据内容格式,计算文本内容之间的内容相似度,比如,可以通过边缘节点按文本消息长度百分比截取消息内容分析相似度,譬如,可以截取前10%,20%,50%,100%等不同的百分比。基于内容相似度,对待识别设备进行分类,譬如,将文本内容之间的内容相似度与预设内容相似度阈值进行对比,当文本内容的内容相似度超过预设内容相似度阈值时,就可以确定这两个文本内容类型相同,来源于同一种(个)待识别设备。然后,根据文本内容的类型,对待识别设备进行分类,并在文本内容中筛选出每一类型的待识别设备对应的目标文本内容,比如,文本内容中的第一文本内容和第二文本内容的类型相同,就可以确定上报第一文本内容的第一待识别设备和上报第二文本内容的第二待识别设备属于同一种(个)设备,因此,就可以根据文本内容之间的相似度,对文本内容对应的待识别设备进行分类,可以得到每一个类型待识别设备对应的文本内容,将这些文本内容作为目标文本内容,目标文本内容可以为一个或多个。
在筛选出目标文本内容之后,根据目标文本内容,确定待识别设备的通信协议,比如,对目标文本内容进行分词处理,并对目标文本内容中的文本词进行加权,具体的分词和加权可以采用tf-idf分词算法来进行处理,得到文本内容中文本词的加权值,具体可以如下公式(2)所示:
tf-idf(word)=tf(word)*idf(word) (2)
其中,tf为统计一个文本词在文本消息中出现的频次,tf(word)为该文本词在文档中出现的次数/文档总词数,idf为统计一个词在一批文本消息中出现的次数,idf(word)=log{(文档集中文档总数量)/(word出现过的文档数量)},tf-idf(word)为文本词的加权值。
根据文本词的加权值,在目标文本内容中识别出通信协议的属性信息和文本词中的关键词,比如,将文本词的加权值超过预设加权值阈值的作为通信协议的属性信息,将加权值最大的词作为文本词中的关键词。基于关键词,确定待识别设备的设备类型,比如,以关键词为温度传感器为例,则就可以确定待识别设备的设备类型为温度传感器。将通信协议和设备类型进行融合,得到待识别设备的通信协议,比如,以待识别设备的设备类型为温度传感器,通信协议的属性信息包括“deviceType”,“degree”,“deviceName”,“extend”为例,则该待识别设备的通信协议的内容就可以具体包括“deviceType:温度传感器”,“degree:实时温度”,“deviceName:设备名称”,“extend”,且设备协议的格式可以如下所示:
可选的,将识别出的待识别设备的通信协议存储至设备通信协议数据库,以供下一次识别待识别设备的通信协议是使用。
其中,根据文本内容对待识别设备进行分类,当待识别设备的类型存在多个时,可以在每一类型待识别设备对应的的目标文本内容中识别出待识别设备的通信协议。
其中,对于待识别设备的通信协议的识别方法总体来说,可以看作通过设备数据采集模块、通信协议库和通信协议识别模块这三个模块执行上述步骤101-105的动作共同来完成,具体可以如图4所示,其中设备数据采集模块主要负责接入待识别设备、采集待识别设备上报文本消息,对接收到的文本消息进行预处理,而协议库主要包括存储提取到的文本消息的文本特征、存储识别出的通信协议以及得到识别的待识别设备的通信协议的结果。对于通信协议识别模块主要负责接收文本消息,对文本消息进行分析和识别,以及将设备通信协议识别结果返回给前端。
由以上可知,本发明实施例在采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合后,对文本消息集合中的文本消息进行特征提取,得到文本消息对应的文本特征,然后,根据文本特征,确定文本消息的上报类型,基于上报类型,在文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息,在目标文本消息中识别出待识别设备的通信协议;由于该方案可以针对至少一个待识别设备在预设时间段内上报的文本消息,提取文本消息的文本特征来确定文本消息的上报类型,并根据不同的上报类型筛选出目标文本消息,从而在目标文本消息中识别出待识别设备的通信协议,在识别过程无需人工操作,可以同时识别多个类型的待识别设备,因此,可以大大提升设备通信协议的识别效率和识别成功率。
根据上面实施例所描述的方法,以下将举例作进一步详细说明。
在本实施例中,将以该设备通信协议识别装置具体集成在电子设备,电子设备为服务器,且该服务器为部署在待识别设备侧的边缘节点为例进行说明。
如图5所示,一种设备通信协议识别方法,具体流程如下:
201、服务器采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合。
例如,服务器可以直接在与待识别设备有过数据交互的业务服务器中获取待识别设备的数据传输数据接口的接口地址,还可以直接通过边缘节点与待识别设备进行硬件连接或者网络连接,从而直接从待识别设备中读取出数据传输接口的接口地址。采用预设安全协议,在数据传输接口和边缘节点构建出数据传输通道。边缘节点通过构建的与待识别设备之间的数据传输通道,可以采集一个预设时间段内一个或多个待识别设备实时按照通信协议上报的文本消息,在采集的文本消息将不完整的文本消息、错误的文本消息或者无法识别的文本消息进行删除等预处理步骤,就可以得到文本消息集合。
202、服务器对文本消息集合中的文本消息进行特征提取,得到文本消息对应的文本特征。
例如,服务器可以将文本消息集合中的文本消息映射到向量空间,形成文本消息与向量数据的映射关系,从而可以将文本消息转换为空间向量,将文本消息对应空间向量作为文本特征,还可以对文本消息集合中的文本消息进行哈希计算,得到每一个文本消息的哈希值,将哈希值作为文本消息对应的文本特征。
可选的,服务器可以计算文本特征的特征之间的特征均值,根据特征均值计算文本特征的特征值之间的方差,将特征值的方差作为文本特征之间的波动参数,当波动参数超过预设波动参数阈值时,就可以确定待识别设备可能存在异常,当此时边缘节点还在采集文本消息时,就可以停止采集,并生成提示信息发送至前端或终端。
203、服务器根据文本特征,计算文本消息之间的消息相似度。
例如,当文本特征的类型为空间向量时,服务器通过余弦相似度算法来计算文本特征之间的相似度,从而得出文本消息集合中任意两个文本消息之间的消息相似度,具体的计算公式如公式(1)所示。当文本特征为文本消息的哈希值时,可以采用LSH算法,为每个文本消息生成对应的哈希值并根据各自的权重形成加权数字串,然后合并所有文本消息中的词语并降维,最后,通过使用海明距离计算两个文本消息的消息相似度。
204、服务器基于消息相似度,对文本消息集合中的文本消息进行分类,得到文本消息集合中文本消息的类型。
例如,服务器将任意两个文本消息的消息相似度与预设相似度阈值进行对比,当消息相似度超过预设相似度阈值时,就可以确定这两个文本消息的类型相同。通过将文本消息集合中全部文本消息之间的消息相似度与预设相似度阈值进行对比之后,就可以确定文本消息集合中任意两个文本消息是否属于同一类型。然后,将同一类型的文本消息分为一类,就可以完成对文本消息集合中的文本消息的分类,从而得到文本消息集合中每个文本消息的类型。
205、服务器根据文本消息的类型,确定文本消息的上报类型。
例如,当文本消息集合中的文本消息的类型为同一类型时,此时就可以确定文本消息的上报类型为固定上报,而且还可以确定上报文本消息的待识别设备的数量为一个。当文本消息集合中文本消息的类型为多个类型时,获取这些文本消息的上报时间,然后,在文本消息集合中标注每一文本消息的类型,根据上报时间,对标注后文本消息集合中的文本消息进行排序,当多个类型的文本消息在标注后文本消息集合中排序结果满足预设排序规律时,该预设排序规律可以为存在一个固定的排序周期,在这种情况时,就可以确定文本消息的上报类型为规律上报,且上报文本消息的待识别设备的数量为多个。当多个类型的文本消息在标注后文本消息集合中的排序结果不满足预设排序规律时,就可以确定文本消息的上报类型为随机上报。
206、服务器基于上报类型,在文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息。
例如,当文本消息的上报类型为固定上报时,在文本消息集合中筛选出任意一个文本消息作为识别通信协议的文本消息,就可以得到目标文本消息。
可选的,当文本消息的上报类型为规律上报时,将文本消息的文本特征与预设通信协议组合的第一数据特征进行匹配,并在文本消息集合中筛选出与第一数据特征匹配成功的文本特征对应的文本消息,就可以得到目标文本消息。
可选的,当文本消息的上报类型为随机上报时,服务器可以增加采集待识别设备上报文本消息的采集时间,继续采集待识别设备上报的文本消息,就可以得到更新后文本消息集合,对更新后文本消息集合中的文本特征进行特征提取,然后,在根据文本特征计算更新后文本消息集合中的文本消息之间的相似度,从而来确定文本消息的类型,进而确定出文本消息的上报类型,当文本消息的上报类型为固定上报或者规律上报时,就可以在文本消息中筛选出目标文本消息,当文本消息的上报类型还是随机上报时,继续返回采集待识别设备上报的文本消息,直到在采集到的文本消息中筛选出用于识别通信协议的文本消息为止,就可以得到目标文本消息。
207、服务器在目标文本消息中识别出待识别设备的通信协议。
例如,当目标文本消息对应的上报类型为固定上报时,服务器将目标文本特征与现有通信协议集合中各个预设通信协议对应的第二数据特征进行匹配,在现有通信协议集合中筛选出与目标文本特征匹配成功的第二数据特征对应的目标通信协议,将该目标通信协议作为这个待识别设备的通信协议。
可选的,当目标文本消息对应的上报类型为规律上报或随机上报时,服务器在目标文本消息中识别出文本内容和文本内容对应的内容格式,根据内容格式,计算文本内容之间的内容相似度,比如,以目标文本消息的文本内容和文本内容对应的文本格式为josn为例。如下所示:
服务器可以通过边缘节点按文本消息长度百分比截取消息内容分析相似度,譬如,可以截取前10%,20%,50%,100%等不同的百分比。将文本内容之间的内容相似度与预设内容相似度阈值进行对比,当文本内容的内容相似度超过预设内容相似度阈值时,就可以确定这两个文本内容类型相同,来源于同一种(个)待识别设备,因此,可以发现得出文本内容1和2为来源于同一种(个)设备的内容,文本内容3和4为来源于同一种(个)设备的内容。根据文本内容的内容,就可以将待识别设备分为两类,并将文本内容1和2作为第一类型待识别设备的目标文本内容,将文本内容3和4作为第二类型待识别设备的目标文本内容。分别对两种类型的待识别设备的对目标文本内容进行分词处理,并对目标文本内容中的文本词进行加权,得到文本内容中文本词的加权值,具体的计算公式可以如公式(2)所示。然后,将文本词的加权值超过预设加权值阈值的作为通信协议的属性信息,将加权值最大的词作为文本词中的关键词,可以发现关键词为“温度传感器”,通信协议的属性信息分别包含“deviceType”,“degree”,“deviceName”,“extend”和“deviceType”,“degree”,“deviceName”,“extend”,“devicePosition”,“deviceAlarm”。根据关键词“温度传感器”,就可以确定两个类型的待识别设备的设备类型都为温度传感器。将设备类型和通信协议的属性信息进行融合,就可以得到两种类型的待识别设备的通信协议以及该通信协议对应的数据格式。在识别出待识别设备的通信协议之后,还可以将通信协议存储至设备通信协议数据库,并应用于下一次设备通信协议的识别。
由以上可知,本实施例服务器在采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合后,对文本消息集合中的文本消息进行特征提取,得到文本消息对应的文本特征,然后,根据文本特征,确定文本消息的上报类型,基于上报类型,在文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息,在目标文本消息中识别出待识别设备的通信协议;由于该方案可以针对至少一个待识别设备在预设时间段内上报的文本消息,提取文本消息的文本特征来确定文本消息的上报类型,并根据不同的上报类型筛选出目标文本消息,从而在目标文本消息中识别出待识别设备的通信协议,在识别过程无需人工操作,可以同时识别多个类型的待识别设备,因此,可以大大提升设备通信协议的识别效率和识别成功率。
为了更好地实施以上方法,本发明实施例还提供一种设备通信协议识别装置,该设备通信协议识别装置可以集成在电子设备,比如服务器或终端等设备中,该终端可以包括平板电脑、笔记本电脑和/或个人计算机等。
例如,如图6所示,该设备通信协议识别装置可以包括采集单元301、提取单元302、确定单元303、筛选单元304和识别单元305,如下:
(1)采集单元301;
采集单元301,用于采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合。
例如,采集单元301,具体可以用于获取待识别设备的数据传输接口的接口地址,根据接口地址,构建数据传输接口与边缘节点之间的数据传输通道,通过数据传输通道,采集至少一个待识别设备在预设时间段内上报的文本消息,得到所述文本消息集合。
(2)提取单元302;
提取单元302,用于对文本消息集合中的文本消息进行特征提取,得到文本消息对应的文本特征。
例如,提取单元302,具体可以用于将文本消息集合中的文本消息映射到向量空间,形成文本消息与向量数据的映射关系,从而可以将文本消息转换为空间向量,将文本消息对应空间向量作为文本特征,还可以对文本消息集合中的文本消息进行哈希计算,得到每一个文本消息的哈希值,将哈希值作为文本消息对应的文本特征。
(3)确定单元303;
确定单元303,用于根据文本特征,确定文本消息的上报类型。
例如,确定单元303,具体可以用于根据文本特征,计算文本消息之间的消息相似度,基于消息相似度,对文本消息集合中的文本消息进行分类,得到文本消息集合中文本消息的类型,根据文本消息的类型,确定文本消息的上报类型。
(4)筛选单元304;
筛选单元304,用于基于上报类型,在文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息。
例如,筛选单元304,具体可以用于当文本消息的上报类型为固定上报时,在文本消息集合中筛选出任意一个文本消息作为识别通信协议的文本消息,得到目标文本消息;当文本消息的上报类型为规律上报时,将文本特征与预设通信协议组合的第一数据特征进行匹配,并在文本消息集合中筛选出与第一数据特征匹配成功的文本特征对应的文本消息,得到目标文本消息;当文本消息的上报类型为随机上报时,返回执行采集待识别设备在预设时间段内上报的文本消息的步骤,直到在采集到的文本消息中筛选出用于识别通信协议的文本消息为止,得到目标文本消息。
(5)识别单元305;
识别单元305,用于在目标文本消息中识别出待识别设备的通信协议。
例如,识别单元305,具体可以用于当目标文本消息对应的上报类型为固定上报时,将目标文本消息的目标文本特征与预设通信协议的第二数据特征进行匹配,并将与目标文本特征匹配成功的预设通信协议作为待识别设备的通信协议,当目标文本消息对应的上报类型为规律上报或随机上报时,在目标文本消息中识别出文本内容和所述文本内容对应的内容格式,并根据文本内容和内容格式,确定待识别设备的通信协议。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
由以上可知,本实施例中采集单元301采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合,提取单元302对文本消息集合中的文本消息进行特征提取,得到文本消息对应的文本特征,然后,确定单元303根据文本特征,确定文本消息的上报类型,筛选单元304基于上报类型,在文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息,识别单元305在目标文本消息中识别出待识别设备的通信协议;由于该方案可以针对至少一个待识别设备在预设时间段内上报的文本消息,提取文本消息的文本特征来确定文本消息的上报类型,并根据不同的上报类型筛选出目标文本消息,从而在目标文本消息中识别出待识别设备的通信协议,在识别过程无需人工操作,可以同时识别多个类型的待识别设备,因此,可以大大提升设备通信协议的识别效率和识别成功率。
本发明实施例还提供一种电子设备,如图7所示,其示出了本发明实施例所涉及的电子设备的结构示意图,具体来讲:
该电子设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图7中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器401是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
电子设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,电子设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:
采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合,对文本消息集合中的文本消息进行特征提取,得到文本消息对应的文本特征,然后,根据文本特征,确定文本消息的上报类型,基于上报类型,在文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息,在目标文本消息中识别出待识别设备的通信协议。
例如,电子设备可以获取待识别设备的数据传输接口的接口地址,根据接口地址,构建数据传输接口与边缘节点之间的数据传输通道,通过数据传输通道,采集至少一个待识别设备在预设时间段内上报的文本消息,得到所述文本消息集合。将文本消息集合中的文本消息映射到向量空间,形成文本消息与向量数据的映射关系,从而可以将文本消息转换为空间向量,将文本消息对应空间向量作为文本特征,还可以对文本消息集合中的文本消息进行哈希计算,得到每一个文本消息的哈希值,将哈希值作为文本消息对应的文本特征。根据文本特征,计算文本消息之间的消息相似度,基于消息相似度,对文本消息集合中的文本消息进行分类,得到文本消息集合中文本消息的类型,根据文本消息的类型,确定文本消息的上报类型。当文本消息的上报类型为固定上报时,在文本消息集合中筛选出任意一个文本消息作为识别通信协议的文本消息,得到目标文本消息;当文本消息的上报类型为规律上报时,将文本特征与预设通信协议组合的第一数据特征进行匹配,并在文本消息集合中筛选出与第一数据特征匹配成功的文本特征对应的文本消息,得到目标文本消息;当文本消息的上报类型为随机上报时,返回执行采集待识别设备在预设时间段内上报的文本消息的步骤,直到在采集到的文本消息中筛选出用于识别通信协议的文本消息为止,得到目标文本消息。当目标文本消息对应的上报类型为固定上报时,将目标文本消息的目标文本特征与预设通信协议的第二数据特征进行匹配,并将与目标文本特征匹配成功的预设通信协议作为待识别设备的通信协议,当目标文本消息对应的上报类型为规律上报或随机上报时,在目标文本消息中识别出文本内容和所述文本内容对应的内容格式,并根据文本内容和内容格式,确定待识别设备的通信协议。
以上各个操作的具体实施可参见前面的实施例,在此不作赘述。
由以上可知,本发明实施例在采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合后,对文本消息集合中的文本消息进行特征提取,得到文本消息对应的文本特征,然后,根据文本特征,确定文本消息的上报类型,基于上报类型,在文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息,在目标文本消息中识别出待识别设备的通信协议;由于该方案可以针对至少一个待识别设备在预设时间段内上报的文本消息,提取文本消息的文本特征来确定文本消息的上报类型,并根据不同的上报类型筛选出目标文本消息,从而在目标文本消息中识别出待识别设备的通信协议,在识别过程无需人工操作,可以同时识别多个类型的待识别设备,因此,可以大大提升设备通信协议的识别效率和识别成功率。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本发明实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种设备通信协议识别方法中的步骤。例如,该指令可以执行如下步骤:
采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合,对文本消息集合中的文本消息进行特征提取,得到文本消息对应的文本特征,然后,根据文本特征,确定文本消息的上报类型,基于上报类型,在文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息,在目标文本消息中识别出待识别设备的通信协议。
例如,电子设备可以获取待识别设备的数据传输接口的接口地址,根据接口地址,构建数据传输接口与边缘节点之间的数据传输通道,通过数据传输通道,采集至少一个待识别设备在预设时间段内上报的文本消息,得到所述文本消息集合。将文本消息集合中的文本消息映射到向量空间,形成文本消息与向量数据的映射关系,从而可以将文本消息转换为空间向量,将文本消息对应空间向量作为文本特征,还可以对文本消息集合中的文本消息进行哈希计算,得到每一个文本消息的哈希值,将哈希值作为文本消息对应的文本特征。根据文本特征,计算文本消息之间的消息相似度,基于消息相似度,对文本消息集合中的文本消息进行分类,得到文本消息集合中文本消息的类型,根据文本消息的类型,确定文本消息的上报类型。当文本消息的上报类型为固定上报时,在文本消息集合中筛选出任意一个文本消息作为识别通信协议的文本消息,得到目标文本消息;当文本消息的上报类型为规律上报时,将文本特征与预设通信协议组合的第一数据特征进行匹配,并在文本消息集合中筛选出与第一数据特征匹配成功的文本特征对应的文本消息,得到目标文本消息;当文本消息的上报类型为随机上报时,返回执行采集待识别设备在预设时间段内上报的文本消息的步骤,直到在采集到的文本消息中筛选出用于识别通信协议的文本消息为止,得到目标文本消息。当目标文本消息对应的上报类型为固定上报时,将目标文本消息的目标文本特征与预设通信协议的第二数据特征进行匹配,并将与目标文本特征匹配成功的预设通信协议作为待识别设备的通信协议,当目标文本消息对应的上报类型为规律上报或随机上报时,在目标文本消息中识别出文本内容和所述文本内容对应的内容格式,并根据文本内容和内容格式,确定待识别设备的通信协议。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该计算机可读存储介质中所存储的指令,可以执行本发明实施例所提供的任一种设备通信协议识别方法中的步骤,因此,可以实现本发明实施例所提供的任一种设备通信协议识别方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
其中,根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述设备通信协议识别方面的各种可选实现方式中提供的方法。
以上对本发明实施例所提供的一种设备通信协议识别方法、装置和计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种设备通信协议识别方法,其特征在于,包括:
采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合;
对所述文本消息集合中的文本消息进行特征提取,得到所述文本消息对应的文本特征;
根据所述文本特征,确定所述文本消息的上报类型;
基于所述上报类型,在所述文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息;
在所述目标文本消息中识别出所述待识别设备的通信协议。
2.根据权利要求1所述的设备通信协议识别方法,其特征在于,所述根据所述文本特征,确定所述文本消息的上报类型,包括:
根据所述文本特征,计算所述文本消息之间的消息相似度;
基于所述消息相似度,对所述文本消息集合中的文本消息进行分类,得到所述文本消息集合中文本消息的类型;
根据所述文本消息的类型,确定所述文本消息的上报类型。
3.根据权利2所述的设备通信协议识别方法,其特征在于,所述根据所述文本消息的类型,确定所述文本消息的上报类型,包括:
当所述文本消息集合中的文本消息的类型为同一类型时,确定所述文本消息的上报类型为固定上报,且所述待识别设备的数量为一个;
当所述文本消息集合中的文本消息的类型为多个类型时,获取所述文本消息的上报时间,并根据所述上报时间,确定所述文本消息的上报类型。
4.根据权利要求3所述的设备通信协议识别方法,其特征在于,所述根据所述上报时间,确定所述文本消息的上报类型,包括:
在所述文本消息集合中标注每一文本消息的类型;
根据所述上报时间,对标注后文本消息集合中的文本消息进行排序;
当多个类型的文本消息在所述标注后文本消息集合中的排序结果满足预设排序规律时,确定所述文本消息的上报类型为规律上报,且所述待识别设备的数量为多个;
当所述多个类型的文本消息在所述标注后文本消息集合中的排序结果不满足所述预设排序规律时,确定所述文本消息的上报类型为随机上报。
5.根据权利要求1至4任一项所述的设备通信协议识别方法,其特征在于,所述基于所述上报类型,在所述文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息,包括:
当所述文本消息的上报类型为固定上报时,在所述文本消息集合中筛选出任意一个文本消息作为识别通信协议的文本消息,得到目标文本消息;
当所述文本消息的上报类型为规律上报时,将所述文本特征与预设通信协议组合的第一数据特征进行匹配,并在文本消息集合中筛选出与所述第一数据特征匹配成功的文本特征对应的文本消息,得到目标文本消息;
当所述文本消息的上报类型为随机上报时,返回执行采集所述待识别设备在预设时间段内上报的文本消息的步骤,直到在采集到的文本消息中筛选出用于识别通信协议的文本消息为止,得到目标文本消息。
6.根据权利要求5所述的设备通信协议识别方法,其特征在于,所述在所述目标文本消息中识别出所述待识别设备的通信协议,包括:
当所述目标文本消息对应的上报类型为固定上报时,将所述目标文本消息的目标文本特征与预设通信协议的第二数据特征进行匹配,并将与所述目标文本特征匹配成功的预设通信协议作为所述待识别设备的通信协议;
当所述目标文本消息对应的上报类型为规律上报或随机上报时,在所述目标文本消息中识别出文本内容和所述文本内容对应的内容格式,并根据所述文本内容和内容格式,确定所述待识别设备的通信协议。
7.根据权利要求6所述的设备通信协议识别方法,其特征在于,所述根据所述文本内容和内容格式,确定所述待识别设备的通信协议,包括:
根据所述内容格式,计算所述文本内容之间的内容相似度;
基于所述内容相似度,对所述待识别设备进行分类,并在所述文本内容中筛选出每一类型的待识别设备对应的目标文本内容;
根据所述目标文本内容,确定所述待识别设备的通信协议。
8.根据权利要求7所述的设备通信协议识别方法,其特征在于,所述根据所述目标文本内容,确定所述待识别设备的通信协议,包括:
对所述目标文本内容进行分词处理,并对所述目标文本内容中的文本词进行加权;
根据所述文本词的加权值,在所述目标文本内容中识别出所述通信协议的属性信息和所述文本词中的关键词;
基于所述关键词,确定所述待识别设备的设备类型;
将所述通信协议的属性信息和设备类型进行融合,得到所述待识别设备的通信协议。
9.根据权利要求1所述的设备通信协议识别方法,其特征在于,所述采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合,包括:
获取所述待识别设备的数据传输接口的接口地址;
根据所述接口地址,构建所述数据传输接口与边缘节点之间的数据传输通道;
通过所述数据传输通道,采集至少一个待识别设备在预设时间段内上报的文本消息,得到所述文本消息集合。
10.一种设备通信协议识别装置,其特征在于,包括:
采集单元,用于采集至少一个待识别设备在预设时间段内上报的文本消息,得到文本消息集合;
提取单元,用于对所述文本消息集合中的文本消息进行特征提取,得到所述文本消息对应的文本特征;
确定单元,用于根据所述文本特征,确定所述文本消息的上报类型;
筛选单元,用于基于所述上报类型,在所述文本消息集合中筛选出用于识别通信协议的文本消息,得到目标文本消息;
识别单元,用于在所述目标文本消息中识别出所述待识别设备的通信协议。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011080275.2A CN112312590A (zh) | 2020-10-10 | 2020-10-10 | 一种设备通信协议识别方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011080275.2A CN112312590A (zh) | 2020-10-10 | 2020-10-10 | 一种设备通信协议识别方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112312590A true CN112312590A (zh) | 2021-02-02 |
Family
ID=74489633
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011080275.2A Pending CN112312590A (zh) | 2020-10-10 | 2020-10-10 | 一种设备通信协议识别方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112312590A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114244648A (zh) * | 2022-02-21 | 2022-03-25 | 浪潮通用软件有限公司 | 一种设备主动注册物联网平台的方法、装置、设备及介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108632252A (zh) * | 2018-04-03 | 2018-10-09 | 中国人民解放军战略支援部队信息工程大学 | 一种私有网络协议迭代逆向分析方法、装置及服务器 |
CN109450936A (zh) * | 2018-12-21 | 2019-03-08 | 武汉长江通信智联技术有限公司 | 一种基于Kafka的异构通信协议的适配方法及装置 |
US20190200198A1 (en) * | 2017-12-21 | 2019-06-27 | International Business Machines Corporation | Heterogeneous internet of things environment device communication solution |
CN110661778A (zh) * | 2019-08-14 | 2020-01-07 | 中国电力科学研究院有限公司 | 一种基于逆向分析模糊测试工控网络协议的方法及系统 |
KR102069142B1 (ko) * | 2018-12-11 | 2020-02-11 | 국방과학연구소 | 명확한 프로토콜 사양 자동 추출을 위한 장치 및 방법 |
CN110851598A (zh) * | 2019-10-30 | 2020-02-28 | 深圳价值在线信息科技股份有限公司 | 文本分类方法、装置、终端设备及存储介质 |
CN110868336A (zh) * | 2019-11-11 | 2020-03-06 | 北京明略软件系统有限公司 | 数据管理方法、装置和计算机可读存储介质 |
US20200082231A1 (en) * | 2018-09-11 | 2020-03-12 | International Business Machines Corporation | Automatic protocol discovery using text analytics |
CN111478966A (zh) * | 2020-04-07 | 2020-07-31 | 全球能源互联网研究院有限公司 | 物联网协议的解析方法、装置、计算机设备及存储介质 |
CN111614507A (zh) * | 2020-04-01 | 2020-09-01 | 西安电子科技大学 | 一种网络协议特征识别方法 |
-
2020
- 2020-10-10 CN CN202011080275.2A patent/CN112312590A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190200198A1 (en) * | 2017-12-21 | 2019-06-27 | International Business Machines Corporation | Heterogeneous internet of things environment device communication solution |
CN108632252A (zh) * | 2018-04-03 | 2018-10-09 | 中国人民解放军战略支援部队信息工程大学 | 一种私有网络协议迭代逆向分析方法、装置及服务器 |
US20200082231A1 (en) * | 2018-09-11 | 2020-03-12 | International Business Machines Corporation | Automatic protocol discovery using text analytics |
KR102069142B1 (ko) * | 2018-12-11 | 2020-02-11 | 국방과학연구소 | 명확한 프로토콜 사양 자동 추출을 위한 장치 및 방법 |
CN109450936A (zh) * | 2018-12-21 | 2019-03-08 | 武汉长江通信智联技术有限公司 | 一种基于Kafka的异构通信协议的适配方法及装置 |
CN110661778A (zh) * | 2019-08-14 | 2020-01-07 | 中国电力科学研究院有限公司 | 一种基于逆向分析模糊测试工控网络协议的方法及系统 |
CN110851598A (zh) * | 2019-10-30 | 2020-02-28 | 深圳价值在线信息科技股份有限公司 | 文本分类方法、装置、终端设备及存储介质 |
CN110868336A (zh) * | 2019-11-11 | 2020-03-06 | 北京明略软件系统有限公司 | 数据管理方法、装置和计算机可读存储介质 |
CN111614507A (zh) * | 2020-04-01 | 2020-09-01 | 西安电子科技大学 | 一种网络协议特征识别方法 |
CN111478966A (zh) * | 2020-04-07 | 2020-07-31 | 全球能源互联网研究院有限公司 | 物联网协议的解析方法、装置、计算机设备及存储介质 |
Non-Patent Citations (3)
Title |
---|
何超;刘方;曾曦;: "针对未知协议消息序列的聚类分析实现", 通信技术, no. 02, 10 February 2017 (2017-02-10) * |
张蔚瑶, 张磊, 毛建瓴 等: "未知协议的逆向分析与自动化测试", 计算机学报, vol. 43, no. 04, 15 April 2020 (2020-04-15) * |
贾翔龙: "工控协议逆向分析系统的研究与实现", 中国优秀硕士学位论文全文数据库信息科技辑, 15 August 2019 (2019-08-15) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114244648A (zh) * | 2022-02-21 | 2022-03-25 | 浪潮通用软件有限公司 | 一种设备主动注册物联网平台的方法、装置、设备及介质 |
CN114244648B (zh) * | 2022-02-21 | 2022-06-28 | 浪潮通用软件有限公司 | 一种设备主动注册物联网平台的方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107392121B (zh) | 一种基于指纹识别的自适应设备识别方法及系统 | |
CN108737423B (zh) | 基于网页关键内容相似性分析的钓鱼网站发现方法及系统 | |
Jha et al. | Intrusion detection system using support vector machine | |
WO2022143511A1 (zh) | 一种恶意流量识别方法及相关装置 | |
CN110008343A (zh) | 文本分类方法、装置、设备及计算机可读存储介质 | |
CN106294219B (zh) | 一种设备识别、数据处理方法、装置及系统 | |
CN113890902A (zh) | 特征识别库的构建方法及装置、流量识别方法 | |
CN115600128A (zh) | 一种半监督加密流量分类方法、装置及存储介质 | |
CN113315851A (zh) | 域名检测方法、装置及存储介质 | |
Bhati et al. | A new ensemble based approach for intrusion detection system using voting | |
CN111586695A (zh) | 短信识别方法及相关设备 | |
CN117675387B (zh) | 基于用户行为分析的网络安全风险预测方法及系统 | |
CN112312590A (zh) | 一种设备通信协议识别方法和装置 | |
CN111049839B (zh) | 一种异常检测方法、装置、存储介质及电子设备 | |
CN114741550B (zh) | 图像搜索方法、装置、电子设备和计算机可读存储介质 | |
CN115619245A (zh) | 一种基于数据降维方法的画像构建和分类方法及系统 | |
CN111475380B (zh) | 一种日志分析方法和装置 | |
CN114610758A (zh) | 基于数据仓库的数据处理方法、装置、可读介质及设备 | |
CN113691525A (zh) | 一种流量数据处理方法、装置、设备及存储介质 | |
CN114443904A (zh) | 视频查询方法、装置、计算机设备及计算机可读存储介质 | |
CN111859240A (zh) | 一种图片导出的方法、相关装置及存储介质 | |
CN114756901B (zh) | 操作性风险监控方法及装置 | |
CN114268480B (zh) | 图片传输的监控方法及装置、存储介质、终端 | |
CN114724069B (zh) | 一种视频设备型号确认方法、装置、设备及介质 | |
CN116612501B (zh) | 对象识别方法、装置、电子设备和计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40038317 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |