一种数据包特征提取方法及装置的制造方法

文档序号:8475021阅读:549来源:国知局
一种数据包特征提取方法及装置的制造方法
【技术领域】
[0001] 本发明涉及计算机领域,尤其涉及一种数据包特征提取方法及装置。
【背景技术】
[0002] 随着网络技术的发展,深度数据包检测(Deep Packet Inspection,简称DPI)应运 而生。DPI技术是一项已经在流量管理、安全和网络分析等方面获得成功的技术,该技术通 过提取数据包的特征对数据包进行识别,进而对数据包进行内容分析流量管理、安全和网 络分析等方面的分析与操作。
[0003] 对于数据包的特征的提取,最初采用人工肉眼比对归纳的方式,不仅工作量大且 特征归纳不全。之后,为了解决人工肉眼比对归纳数据包特征的方式引出的问题,采用较为 精细的方式,即通过数据包载荷中的特征进行检测识别,进而归纳数据包的特征。
[0004] 上述通过数据包载荷中的特征进行检测识别,由于数据包中存在大量的报文,使 得通过检测识别大量的报文的载荷以提取数据包的特征的方式,过程繁琐且效率较低。

【发明内容】

[0005] 本发明的实施例提供一种数据包特征提取方法及装置,实现简单、高效的提取网 络数据包的特征。
[0006] 为达到上述目的,本发明的实施例采用如下技术方案:
[0007] 第一方面,提供一种数据包特征提取方法,所述方法包括:
[0008] 获取包括至少一个报文的数据包;
[0009] 解析所述数据包,将所述数据包中五元组相同的报文汇聚为一个数据流,得到X 个数据流;其中,所述X大于或等于1 ;
[0010] 对所述X个数据流中的每一个数据流,采用预设数据库中所述数据流的协议类型 对应的每个类型的特征识别模型分别进行识别,获取所述X个数据流的所有类型的特征集 合;其中,所述预设数据库包括每个协议类型对应的至少一个类型的特征识别模型;一个 所述类型的特征集合对应一个类型的特征识别模型,且包括至少一个特征节点;一个所述 特征节点包括一个特征;
[0011] 从所述X个数据流的所有类型的特征集合中选择Y个特征作为所述数据包的特 征;其中,所述Y大于或等于1。
[0012] 结合第一方面,在第一方面的第一种可能的实现方式中,对于第一数据流,采用所 述预设数据库中所述第一数据流的协议类型对应的第一特征识别模型进行识别,包括:
[0013] 将所述第一数据流的识别信息,与第一特征识别模型的特征集合中的特征节点对 比;其中,所述第一数据流为所述X个数据流中任意一个数据流;所述第一特征识别模型为 所述第一数据流的协议类型在所述预设数据库中对应的所有特征识别模型中的任意一个 类型的特征识别模型;所述识别信息为应用层协议元数据或负载体;
[0014] 若所述第一特征识别模型的特征集合中存在A个特征节点中的特征,与所述第一 数据流的识别信息匹配,将所述第一数据流的标识分别添加至所述A个特征节点中;所述A 大于或等于1 ;
[0015] 若所述第一特征识别模型的特征集合中不存在与所述第一数据流的识别信息匹 配的特征,在所述第一特征识别模型的特征集合中新增与所述第一数据流的识别信息匹配 的特征节点,并将所述第一数据流的标识添加至所述与所述第一数据流的识别信息匹配的 特征节点中。
[0016] 结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式 中,所述特征集合为树形结构;
[0017] 所述在所述第一特征识别模型的特征集合中新增包含所述第一数据流的识别信 息的特征节点,包括:
[0018] 在所述第一特征识别模型的特征集合中,将新增的与所述第一数据流的识别信息 匹配的特征节点按照树形结构的分支挂载。
[0019] 结合第一方面或第一方面的第一种可能的实现方式或第一方面的第二种可能的 实现方式,在第一方面的第三种可能的实现方式中,一个类型的特征识别模型对所述X个 数据流中与所述一个类型的特征识别模型对应的协议类型相同的数据流进行识别得到所 述一个类型的特征识别模型的特征集合;
[0020] 所述获取所述X个数据流的所有类型的特征集合,包括:
[0021] 将所述X个数据流,采用预设数据库中所述数据流的协议类型对应的所有特征识 别模型分别进行识别之后,用于识别所述X个数据流的每一个类型的特征识别模型的特征 集合作为所述X个数据流的所有类型的特征集合。
[0022] 结合第一方面或第一方面的第一种可能的实现方式至第一方面的第三种可能的 实现方式中任一项,在第一方面的第四种可能的实现方式中,一个所述特征节点还包括具 有该特征节点中的特征的数据流的标识;
[0023] 所述Y个特征中每一个特征所属的特征节点中的数据流的标识相互不完全包含。
[0024] 结合第一方面或第一方面的第一种可能的实现方式至第一方面的第四种可能的 实现方式中任一项,在第一方面的第五种可能的实现方式中,所述从所述X个数据流的所 有类型的特征集合中选择Y个特征作为所述数据包的特征,包括:
[0025] 输出所述X个数据流的所有类型的特征集合;
[0026] 接收管理员输入的从所述X个数据流的所有类型的特征集合中选择的所述Y个特 征作为所述数据包的特征。
[0027] 结合第一方面或第一方面的第一种可能的实现方式至第一方面的第五种可能的 实现方式中任一项,在第一方面的第六种可能的实现方式中,所述数据流还包括流量值;一 个所述特征节点还包括具有该特征节点中的特征的数据流的总流量值;
[0028] 在所述从所述X个数据流的所有类型的特征集合中选择Y个特征作为所述数据包 的特征之后,所述方法还包括:
[0029] 将所述Y个特征所属的特征节点中包括的总流量值相加,除以所述X个数据流的 总流量值,作为所述Y个特征对所述数据包的识别度。
[0030] 第二方面,提供一种数据包特征提取装置,所述装置包括:
[0031] 获取单元,用于获取包括至少一个报文的数据包;
[0032] 解析汇聚单元,用于解析所述数据包,将所述数据包中五元组相同的报文汇聚为 一个数据流,得到X个数据流;其中,所述X大于或等于1 ;
[0033] 识别单元,用于对所述X个数据流中的每一个数据流,采用预设数据库中所述数 据流的协议类型对应的每个类型的特征识别模型分别进行识别,获取所述X个数据流的所 有类型的特征集合;其中,所述预设数据库包括每个协议类型对应的至少一个类型的特征 识别模型;一个所述类型的特征集合对应一个类型的特征识别模型,且包括至少一个特征 节点;一个所述特征节点包括一个特征;
[0034] 选择单元,用于从所述X个数据流的所有类型的特征集合中选择Y个特征作为所 述数据包的特征;其中,所述Y大于或等于1。
[0035] 结合第二方面,在第二方面的第一种可能的实现方式中,对于第一数据流,所述识 别单元采用所述预设数据库中所述第一数据流的协议类型对应的第一特征识别模型进行 识别,包括:
[0036] 将所述第一数据流的识别信息,与第一特征识别模型的特征集合中的特征节点对 比;其中,所述第一数据流为所述X个数据流中任意一个数据流;所述第一特征识别模型为 所述第一数据流的协议类型在所述预设数据库中对应的所有特征识别模型中的任意一个 类型的特征识别模型;所述识别信息为应用层协议元数据或负载体;
[0037] 若所述第一特征识别模型的特征集合中存在A个特征节点中的特征,与所述第一 数据流的识别信息匹配,将所述第一数据流的标识分别添加至所述A个特征节点中;所述A 大于或等于1 ;
[0038] 若所述第一特征识别模型的特征集合中不存在与所述第一数据流的识别信息匹 配的特征,在所述第一特征识别模型的特征集合中新增与所述第一数据流的识别信息匹配 的特征节点,并将所述第一数据流的标识添加至所述与所述第一数据流的识别信息匹配的 特征节点中。
[0039] 结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式 中,所述特征集合为树形结构;
[0040] 所述识别单元在所述第一特征识别模型的特征集合中新增包含所述第一数据流 的识别信息的特征节点,包括:
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1