轻量级物联网流量的协议识别方法、装置及设备制造方法及图纸

技术编号:38422696 阅读:9 留言:0更新日期:2023-08-07 11:22
本申请提供一种轻量级物联网流量的协议识别方法、装置及设备,该方法包括:对于待进行应用层协议识别的物联网数据流,依据解码器的排序结果,对解码器进行遍历;其中,不同解码器对应不同的应用层协议;解码器依据所对应的应用层协议的重要性进行排序,对应的应用层协议的重要性越高,解码器的排序越靠前;依据当前遍历的解码器,对所述物联网数据流进行解析;在所述物联网数据流与当前遍历的解码器匹配成功的情况下,确定所述物联网数据流的应用层协议为目标应用层协议。该方法可以降低解码器的搜索路径长度,减少协议识别的资源消耗。减少协议识别的资源消耗。减少协议识别的资源消耗。

【技术实现步骤摘要】
轻量级物联网流量的协议识别方法、装置及设备


[0001]本申请涉及网络安全
,尤其涉及一种轻量级物联网流量的协议识别方法、装置及设备。

技术介绍

[0002]网络安全设备(如流量准入、态感设备)接入网络流量的情况下,由于网络流量数量庞大,流量解析占用的设备资源巨大;且深度包解析能力的提升(解码器数量增加),会造成计算机系统资源消耗的提升。
[0003]如何提升深度包解析的性能,以减少资源消耗成为亟待解决的技术问题。

技术实现思路

[0004]有鉴于此,本申请提供一种轻量级物联网流量的协议识别方法、装置及设备。
[0005]具体地,本申请是通过如下技术方案实现的:根据本申请实施例的第一方面,提供一种轻量级物联网流量的协议识别方法,包括:对于待进行应用层协议识别的物联网数据流,依据解码器的排序结果,对解码器进行遍历;其中,不同解码器对应不同的应用层协议;解码器依据所对应的应用层协议的重要性进行排序,对应的应用层协议的重要性越高,解码器的排序越靠前;依据当前遍历的解码器,对所述物联网数据流进行解析;在所述物联网数据流与当前遍历的解码器匹配成功的情况下,确定所述物联网数据流的应用层协议为目标应用层协议;其中,所述目标应用层协议为当前遍历的解码器所对应的应用层协议,所述物联网数据流与当前遍历的解码器匹配成功包括:当前遍历的解码器对所述物联网数据流的输出结果为所述物联网数据流的应用层协议是所述目标应用层协议。
[0006]根据本申请实施例的第二方面,提供一种轻量级物联网流量的协议识别装置,包括:遍历单元,用于对于待进行应用层协议识别的物联网数据流,依据解码器的排序结果,对解码器进行遍历;其中,不同解码器对应不同的应用层协议;解码器依据所对应的应用层协议的重要性进行排序,对应的应用层协议的重要性越高,解码器的排序越靠前;解析单元,用于依据当前遍历的解码器,对所述物联网数据流进行解析;协议识别单元,用于在所述物联网数据流与当前遍历的解码器匹配成功的情况下,确定所述物联网数据流的应用层协议为目标应用层协议;其中,所述目标应用层协议为当前遍历的解码器所对应的应用层协议,所述物联网数据流与当前遍历的解码器匹配成功包括:当前遍历的解码器对所述物联网数据流的输出结果为所述物联网数据流的应用层协议是所述目标应用层协议。
[0007]根据本申请实施例的第三方面,提供一种电子设备,包括处理器和存储器,其中,
存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现第一方面提供的方法。
[0008]本申请实施例的轻量级物联网流量的协议识别方法,通过依据解码器对应的协议的重要性,对解码器进行排序,将重要性高的协议对应的解码器排在前面,对于待进行协议识别的物联网数据流,依据解码器的排序结果,对解码器进行遍历,并依据当前遍历的解码器,对物联网数据流进行解析,在物联网数据流与当前遍历的解码器匹配成功的情况下,确定物联网数据流的应用层协议为目标应用层协议,由于重要性越高的协议对应的解码器,越先进行遍历和匹配,而重要性越高的流量,其出现的概率通常也越高,因而,物联网数据流与重要性高的协议对应的解码器匹配成功的概率通常会较高,通过按照对应的协议从高到低的顺序对解码器进行排序,可以有效提高物联网数据流与排序靠前的解码器匹配成功的概率,降低解码器的搜索路径长度,减少协议识别的资源消耗。
附图说明
[0009]图1为本申请一示例性实施例示出的一种轻量级物联网流量的协议识别方法的流程示意图;图2为本申请一示例性实施例示出的一种轻量级物联网流量的协议识别方法的流程示意图;图3为本申请一示例性实施例示出的一种轻量级物联网流量的协议识别装置的结构示意图;图4为本申请一示例性实施例示出的一种轻量级物联网流量的协议识别装置的结构示意图;图5为本申请一示例性实施例示出的一种轻量级物联网流量的协议识别装置的结构示意图;图6为本申请一示例性实施例示出的一种轻量级物联网流量的协议识别装置的结构示意图;图7为本申请一示例性实施例示出的一种轻量级物联网流量的协议识别装置的结构示意图;图8为本申请一示例性实施例示出的一种电子设备的硬件结构示意图。
具体实施方式
[0010]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
[0011]在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
[0012]为了使本领域技术人员更好地理解本申请实施例提供的技术方案,下面先对本申请实施例中涉及的部分术语进行说明。
[0013]1、深度包检测(Deep Packet Inspection,简称DPI):一种特殊的网络技术,网络设备通常只会查看数据报文的IP五元组(源IP地址、目的IP地址、传输层协议类型、源端口以及目的端口),这种被称为浅数据包检测;与之对应的DPI会检查有效载荷(Payload)里面的内容,因此,可以称为深度包检测(也可以称为深度数据包检测)。
[0014]DPI可以通过硬件或者软件实现,一般采用“旁挂”的方式接入到网络。DPI会对网络中的每个数据包进行检查,识别出应用层协议,根据识别的应用层协议采取一定的措施(记录日志或者阻断连接等)。
[0015]1.1、业务识别:确定业务具体内容和信息(如:识别用户操作行为)。
[0016]1.2、业务控制:根据既定的策略对网络进行配置,实现业务流控制(如:转发流向、限制带宽、阻断、整形、丢弃)。
[0017]1.3、业务统计:针对DPI识别结果,对一定时间内的流量行为进行统计(如:流量流向、业务占比、访问网站TOPN等)。
[0018]DPI技术有三种基本的实现思路:基于特征的:主要是使用模式匹配来匹配协议中的关键字。比如,通过GET/POST(获取/发布)关键字来匹配HTTP(HyperText Transfer Protocol,超文本传输协议)协议。
[0019]基于语义的:主要是通过尝试不同的协议规范来解码数据包,从而确定它是哪一种协议。其中又可以分为不同层级,因为有些协议是借助其它协议来传输的。比如,许多P2P协议通常会使用HTTP协议。
[0020]基于统计的:主要是针对加密数据,因为它能被观测到的信息只有数据包数、大小以及建立加密连接时的过程和参数,即根据数据包统计数据包的特征(如长度)而不是根据payload的具体内容,来进行协议识别。
[0021]2、解码器:可以理解为一个函数,函数输入是数据流,输出是该数据流是不是某个协议。比如用户使用HTTP协议访问网站,该动作产生了HTTP流量。将本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种轻量级物联网流量的协议识别方法,其特征在于,包括:对于待进行应用层协议识别的物联网数据流,依据解码器的排序结果,对解码器进行遍历;其中,不同解码器对应不同的应用层协议;解码器依据所对应的应用层协议的重要性进行排序,对应的应用层协议的重要性越高,解码器的排序越靠前;依据当前遍历的解码器,对所述物联网数据流进行解析;在所述物联网数据流与当前遍历的解码器匹配成功的情况下,确定所述物联网数据流的应用层协议为目标应用层协议;其中,所述目标应用层协议为当前遍历的解码器所对应的应用层协议,所述物联网数据流与当前遍历的解码器匹配成功包括:当前遍历的解码器对所述物联网数据流的输出结果为所述物联网数据流的应用层协议是所述目标应用层协议。2.根据权利要求1所述的方法,其特征在于,解码器的排序结果按照以下方式确定:收集预设时间段内的物联网流量;依据所收集的物联网流量,确定存在的应用层协议,并依据全部应用层协议出现的总次数,以及,各应用层协议出现的次数,确定各应用层协议出现的次数占比,依据该占比确定各应用层协议的初始权重;其中,初始权重与该占比正相关;对于文本型应用层协议,依据同一协议簇的各应用层协议之间的相似度,对各应用层协议的初始权重进行更新,得到各文本型应用层协议的最终权重;依据各文本型应用层协议的最终权重,以及所述文本型应用层协议之外的其它应用层协议的初始权重,对各应用层协议进行排序,并依据各应用层协议的排序结果得到各解码器的排序结果;其中,权重越高,排序越靠前。3.根据权利要求2所述的方法,其特征在于,对于目标文本型应用层协议,其初始权重为第一比例、第二比例以及第三比例三者的乘积;所述第一比例为依据所收集的物联网流量确定的、文本型应用层协议出现的次数在全部应用层协议出现的总次数中的占比,所述第二比例为所述目标文本型应用层协议所属协议簇出现的次数在文本型应用层协议出现的次数中的占比,所述第三比例为所述目标文本型应用层协议出现的次数在所述目标文本型应用层协议所属协议簇出现的次数中的占比;所述对于文本型应用层协议,依据同一协议簇的各应用层协议之间的相似度,对各应用层协议的初始权重进行更新,包括:以所述目标文本型应用层协议所属协议簇中各文本型应用层协议为节点,依据各节点之间的相似度,在相似度超过预设相似度阈值的节点之间构建无向边,以节点之间的相似度为边的权重,构建无向图;依据所述无向图,利用网页排名算法,确定各节点的网页排名值;以所述目标文本型应用层协议的网页排名值替代所述第三比例,对所述目标文本型应用层协议的初始权重进行更新,得到所述目标文本型应用层协议的最终权重。4.根据权利要求1所述的方法,其特征在于,所述依据当前遍历的解码器,对所述物联网数据流进行解析之后,还包括:在所述物联网数据流与当前遍历的解码器匹配不成功,且存在未遍历的解码器的情况下,继续解码器的遍历;在所述物联网数据流与当前遍历的解码器匹配不成功,且不存在未遍历的解码器的情
况下,确定当前遍历的解码器对所述物联网数据流的数据包的解码数量是否达到预设数量;在当前遍历的解码器对所述物联网数据流的数据包的解码数量达到所述预设数量的情况下,确定所述物联网数据流的应用层协议为未知协议,并停止对所述物联网数据流进行应用层协议识别;其中,物联网数据流通过物联网数据流中的数据包的五元组信息来标识,数据包的五元组信息包括源IP地址、目的IP地址、传输层协议类型、源端口以及目的端口。5.根据权利要求4所述的方法,其特征在于,在确定所述物联网数据流的应用层协议为未知协议的情况下,所述方法还包括:利用威胁检测模块对所述物联网数据流的数据包进行深度解析,确定所述物联网数据流是否存在威胁;其中,所述威胁检测模块用于针对未知协议的物联网数据流进行威胁检测;在所述物联网数据流存在威胁的情况下,对所述物联网数据流的数据包进行阻断。6.根据权利要求1所述的方法,其特征在于,对于待进行应用层协议识别的物联网数据流,在依据解码器的排序结果,对解码器进行遍历之前,还包括:对所述物联网数据流中的数据包进行解析,确定该数据包的传输层协议类型以及目的端口;依据该数据包的传输层协议类型以及目的端口,查询预匹配规则,确定是否存在对应的应用层协议;其中,所述预匹配规则用于记录传输层协议、目的端口以及应用层协议之间的对应关系;在存在对应的应用层协议的情况下,将该应用层协议确定为所述物联网数据流的应用层协议;在不存在对应的应用层协议的情况下,确定执行所述依据解码器的排序结果,对解码器进行遍历的操作。7.根据权利要求1所述的方法,其特征在于,在所述物联网数据流与当前遍历的解码器匹配成功的情况下,所述方法还包括:利用当前遍历的解码器对所述物联网数据流的数据包进行深度解析,确定所述物联网数据流是否存在威胁;在所述物联网数据流存在威胁的情况下,对所述物联网数据流的数据包进行...

【专利技术属性】
技术研发人员:王滨王晶晶王伟王星王冲华
申请(专利权)人:杭州海康威视数字技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1