基于分类决策树的网络纯净性检测装置及方法

文档序号:7998545阅读:176来源:国知局
基于分类决策树的网络纯净性检测装置及方法
【专利摘要】本发明提出了基于分类决策树的网络纯净性检测装置及方法。其中,所述方法包括:按照预定的采样时间窗口周期性地采样网络上的数据流;分析所述采样的数据流,并基于分类决策树确定所述采样的数据流的类型以判断所述采样的数据流是否是异常数据流,如果所述采样的数据流是异常数据流,则执行相关的报警操作。本发明所公开的基于分类决策树的网络纯净性检测装置及方法具有高的稳定性和准确性,资源消耗低并且能够适用于各种复杂网络环境。
【专利说明】基于分类决策树的网络纯净性检测装置及方法

【技术领域】
[0001] 本发明涉及网络纯净性检测装置及方法,更具体地,涉及基于分类决策树的网络 纯净性检测装置及方法。

【背景技术】
[0002] 目前,随着计算机和网络应用的日益广泛以及不同领域的业务种类的日益丰富 (尤其在云计算环境中),网络纯净性检测装置及方法变得越来越重要。网络数据流的纯净 性检测的主要目的是为了保证特定网络中只允许存在某些特定类型的数据流(即正常的 数据流),而其它类型的数据流则被视为异常数据流,当检测到异常数据流时需要进行报 警或者数据流清洗操作。
[0003] 现有的网络纯净性检测装置及方法通常基于如下两种方式:(1)根据数据包使 用的传输层端口来判断其承载的应用层协议的类型;(2)利用深度包检测(De印Packet Inspection,DPI)的方法对数据包的负载进行分析,并根据通信的行为或者特定的模式匹 配来判断上层的应用协议。
[0004] 然而,现有的网络纯净性检测装置及方法存在如下问题:(1)针对第一种方式, 由于只能检测使用公知端口的应用层协议(例如HTTP协议使用TCP 80端口,DNS协议使 用UDP 53端口等),故该方法的准确率较低并且适用范围较窄;(2)针对第二种方式,由于 需要事先了解每种应用层协议的特征,因此仅适用于识别已知的常用协议且在某些情况下 是不可行的(例如有些协议的负载本身是经过加密的),故其适用范围有限并且资源消耗较 多。
[0005] 因此,存在如下需求:提供具有高的稳定性和准确性,资源消耗低并且能够适用于 各种复杂网络环境(例如云计算环境)的基于分类决策树的网络纯净性检测装置及方法。


【发明内容】

[0006] 为了解决上述现有技术方案所存在的问题,本发明提出了具有高的稳定性和准确 性,资源消耗低并且能够适用于各种复杂网络环境(例如云计算环境)的基于分类决策树的 网络纯净性检测装置及方法。
[0007] 本发明的目的是通过以下技术方案实现的: 一种基于分类决策树的网络纯净性检测装置,所述基于分类决策树的网络纯净性检测 装置包括: 网络数据流采样模块,所述网络数据流采样模块按照预定的采样时间窗口周期性地采 样网络上的数据流,并将采样的数据流传送到决策树分类器; 决策树分类器,所述决策树分类器分析所述采样的数据流,并基于分类决策树确定所 述采样的数据流的类型以判断所述采样的数据流是否是异常数据流,如果所述采样的数据 流是异常数据流,则构造报警指令,并将所述报警指令传送到报警模块以实施报警,其中, 所述报警指令包含异常数据流的信息; 报警模块,所述报警模块基于接收到的所述报警指令执行相关的报警操作。
[0008] 在上面所公开的方案中,可选地,所述基于分类决策树的网络纯净性检测装置进 一步包括协议过滤器,所述协议过滤器在所述决策树分类器之前预处理所述采样的数据 流,如果所述采样的数据流的传输层协议的类型不是正常数据流的类型,则将所述采样的 数据流转发到所述决策树分类器进行后续的处理,而如果所述采样的数据流的传输层协议 的类型是正常数据流的类型,则不将所述采样的数据流转发到所述决策树分类器。
[0009] 在上面所公开的方案中,可选地,所述决策树分类器在基于分类决策树判断所述 采样的数据流是异常数据流之后进一步基于DPI技术检验所述采样的数据流,如果所述采 样的数据流的关键字与正常数据流的关键字不匹配,则构造报警指令并将所述报警指令传 送到报警模块以实施报警,而如果所述采样的数据流的关键字与正常数据流的关键字相匹 配,则不触发报警操作。
[0010] 在上面所公开的方案中,优选地,所述分类决策树包括至少两层,并且每个非叶子 节点的值表示数据流的一个特征量的值,而每个叶子节点的值表示满足如下条件的数据流 的类型:该数据流的各个对应的特征量的值匹配该叶子节点对应的分类决策树的分支中的 各个节点的值。
[0011] 在上面所公开的方案中,优选地,以如下方式基于分类决策树确定所述采样的数 据流的类型:从所述分类决策树的根节点开始,将所述采样的数据流的对应的特征量的值 与当前层的对应节点的值相比较,如果相匹配,则针对该匹配的节点对应的下一层的节点 重复执行与上述匹配操作相似的匹配操作,如果最终到达叶子节点,则该叶子节点的值所 代表的数据流的类型就是所述采样的数据流的类型。
[0012] 在上面所公开的方案中,优选地,以如下方式基于训练数据集生成所述分类决策 树:(1)对从训练数据集获得的数据流的连续的特征量取值进行离散化;(2)从根节点开始 构造分类决策树,每次选取具有最大增益率的特征量做为分裂属性,并按照该特征量的可 能取值构造不同的分支,随后递归地选取后续的特征量节点;(3)当到达叶子节点时,如果 所有样本属于同一数据流类型,则以该数据流类型作为叶子节点的值,而如果包含了不同 类型的数据流样本,则以该集合中占多数的数据流类型作为该叶子节点的值。
[0013] 本发明的目的也可以通过以下技术方案实现: 一种基于分类决策树的网络纯净性检测方法,所述方法包括下列步骤: (A1)按照预定的采样时间窗口周期性地采样网络上的数据流; (A2)分析所述采样的数据流,并基于分类决策树确定所述采样的数据流的类型以判断 所述采样的数据流是否是异常数据流,如果所述采样的数据流是异常数据流,则执行相关 的报警操作。
[0014] 本发明所公开的基于分类决策树的网络纯净性检测装置及方法具有以下优点: (1)具有高的稳定性和准确性;(2)算法复杂度较低,占用资源较少;(3)能够适用于各种复 杂网络环境(例如云计算环境)。

【专利附图】

【附图说明】
[0015] 结合附图,本发明的技术特征以及优点将会被本领域技术人员更好地理解,其 中: 图1是根据本发明的实施例的基于分类决策树的网络纯净性检测装置的示意性结构 图; 图2是根据本发明的实施例的分类决策树的实例的示意图; 图3是根据本发明的实施例的基于分类决策树的网络纯净性检测方法的流程图。

【具体实施方式】
[0016]图1是根据本发明的实施例的基于分类决策树的网络纯净性检测装置的示意性 结构图。如图1所示,本发明所公开的基于分类决策树的网络纯净性检测装置包括决策树 分类器1、网络数据流采样模块2和报警模块4。其中,所述网络数据流采样模块2按照预定 的采样时间窗口(其可以由用户根据实际需求而配置)周期性地采样网络上的数据流,并将 采样的数据流传送到决策树分类器1。所述决策树分类器1分析所述采样的数据流,并基于 分类决策树确定所述采样的数据流的类型以判断所述采样的数据流是否是异常数据流,如 果所述采样的数据流是异常数据流,则构造报警指令,并将所述报警指令传送到报警模块4 以实施报警,其中,所述报警指令包含异常数据流的信息。所述报警模块4基于接收到的所 述报警指令执行相关的报警操作。
[0017] 可选地,本发明所公开的基于分类决策树的网络纯净性检测装置进一步包括协议 过滤器3,所述协议过滤器3在所述决策树分类器1之前预处理所述采样的数据流,如果所 述采样的数据流的传输层协议的类型不是正常数据流的类型,则将所述采样的数据流转发 到所述决策树分类器1进行后续的处理,而如果所述采样的数据流的传输层协议的类型是 正常数据流的类型,则不将所述采样的数据流转发到所述决策树分类器1。
[0018] 可选地,在本发明所公开的基于分类决策树的网络纯净性检测装置中,所述决策 树分类器1在基于分类决策树判断所述采样的数据流是异常数据流之后进一步基于DPI (深度包检测)技术检验所述采样的数据流,如果所述采样的数据流的关键字与正常数据流 的关键字不匹配,则构造报警指令并将所述报警指令传送到报警模块4以实施报警,而如 果所述采样的数据流的关键字与正常数据流的关键字相匹配,则不触发报警操作。
[0019] 优选地,在本发明所公开的基于分类决策树的网络纯净性检测装置中,所述分类 决策树包括至少两层,并且每个非叶子节点的值表示数据流的一个特征量的值,而每个叶 子节点的值表示满足如下条件的数据流的类型:该数据流的各个对应的特征量的值匹配该 叶子节点对应的分类决策树的分支中的各个节点的值。
[0020] 优选地,在本发明所公开的基于分类决策树的网络纯净性检测装置中,以如下方 式基于分类决策树确定所述采样的数据流的类型:从所述分类决策树的根节点开始,将所 述采样的数据流的对应的特征量的值与当前层的对应节点的值相比较,如果相匹配,则针 对该匹配的节点对应的下一层的节点重复执行与上述匹配操作相似的匹配操作,如果最终 到达叶子节点,则该叶子节点的值所代表的数据流的类型就是所述采样的数据流的类型。
[0021] 优选地,在本发明所公开的基于分类决策树的网络纯净性检测装置中,以如下方 式基于训练数据集生成所述分类决策树:(1)对从训练数据集获得的数据流的连续的特征 量取值进行离散化;(2)从根节点开始构造分类决策树,每次选取具有最大增益率的特征 量做为分裂属性(即对训练样本具有最高区分度的特征量),并按照该特征量的可能取值构 造不同的分支,随后递归地选取后续的特征量节点;(3)当到达叶子节点时,如果所有样本 属于同一数据流类型,则以该数据流类型作为叶子节点的值,而如果包含了不同类型的数 据流样本(即不同类型的数据流样本包含了相同的特征量),则以该集合中占多数的数据流 类型作为该叶子节点的值。
[0022] 图2是根据本发明的实施例的分类决策树的实例的示意图。如图2所示,在该例 子中,数据流由包含传输层协议类型、源IP地址、目的IP地址、源端口号和目的端口号五个 元素的组来标识,并且在分类时同时考虑了上行和下行数据流,其中,针对每个数据流,选 取最初四个数据包方向、平均数据包长度、平均数据包间隔时间以及数据流持续时间作为 特征量,其中,最初四个数据包方向反映出链接建立时的交互过程(示例性地,可以设定下 行数据包方向为〇,上行数据包方向为1,则该特征量可以表示为由四位二进制数组成的整 数)。此外,该例子中,在计算平均数据包长度时,仅考虑包含实际负载的数据包,而仅包含 例如ACK的纯TCP数据包不会加入到计算之中,另外,平均数据包间隔时间指的是在该数据 流内部的每个数据包之间间隔的平均时间。
[0023] 由上可见,本发明所公开的基于分类决策树的网络纯净性检测装置具有下列优 点:(1)具有高的稳定性和准确性;(2)算法复杂度较低,占用资源较少;(3)能够适用于各 种复杂网络环境(例如云计算环境)。
[0024] 图3是根据本发明的实施例的基于分类决策树的网络纯净性检测方法的流程图。 如图3所示,本发明所公开的基于分类决策树的网络纯净性检测方法包括下列步骤:(A1) 按照预定的采样时间窗口(其可以由用户根据实际需求而配置)周期性地采样网络上的数 据流;(A2)分析所述采样的数据流,并基于分类决策树确定所述采样的数据流的类型以判 断所述采样的数据流是否是异常数据流,如果所述采样的数据流是异常数据流,则执行相 关的报警操作。
[0025] 可选地,本发明所公开的基于分类决策树的网络纯净性检测方法进一步包括:在 基于分类决策树确定所述采样的数据流的类型之前预处理所述采样的数据流,如果所述采 样的数据流的传输层协议的类型不是正常数据流的类型,则随后基于分类决策树确定所述 采样的数据流的类型,而如果所述采样的数据流的传输层协议的类型是正常数据流的类 型,则不进行后续的处理。
[0026] 可选地,本发明所公开的基于分类决策树的网络纯净性检测方法进一步包括:在 基于分类决策树判断所述采样的数据流是异常数据流之后进一步基于DPI (深度包检测) 技术检验所述采样的数据流,如果所述采样的数据流的关键字与正常数据流的关键字不匹 配,则执行相关的报警操作,而如果所述采样的数据流的关键字与正常数据流的关键字相 匹配,则不触发报警操作。
[0027] 优选地,在本发明所公开的基于分类决策树的网络纯净性检测方法中,所述分类 决策树包括至少两层,并且每个非叶子节点的值表示数据流的一个特征量的值,而每个叶 子节点的值表示满足如下条件的数据流的类型:该数据流的各个对应的特征量的值匹配该 叶子节点对应的分类决策树的分支中的各个节点的值。
[0028] 优选地,在本发明所公开的基于分类决策树的网络纯净性检测方法中,以如下方 式基于分类决策树确定所述采样的数据流的类型:从所述分类决策树的根节点开始,将所 述采样的数据流的对应的特征量的值与当前层的对应节点的值相比较,如果相匹配,则针 对该匹配的节点对应的下一层的节点重复执行与上述匹配操作相似的匹配操作,如果最终 到达叶子节点,则该叶子节点的值所代表的数据流的类型就是所述采样的数据流的类型。
[0029] 优选地,在本发明所公开的基于分类决策树的网络纯净性检测方法中,以如下方 式基于训练数据集生成所述分类决策树:(1)对从训练数据集获得的数据流的连续的特征 量取值进行离散化;(2)从根节点开始构造分类决策树,每次选取具有最大增益率的特征 量做为分裂属性(即对训练样本具有最高区分度的特征量),并按照该特征量的可能取值构 造不同的分支,随后递归地选取后续的特征量节点;(3)当到达叶子节点时,如果所有样本 属于同一数据流类型,则以该数据流类型作为叶子节点的值,而如果包含了不同类型的数 据流样本(即不同类型的数据流样本包含了相同的特征量),则以该集合中占多数的数据流 类型作为该叶子节点的值。
[0030] 由上可见,本发明所公开的基于分类决策树的网络纯净性检测方法具有下列优 点:(1)具有高的稳定性和准确性;(2)算法复杂度较低,占用资源较少;(3)能够适用于各 种复杂网络环境(例如云计算环境)。
[0031] 尽管本发明是通过上述的优选实施方式进行描述的,但是其实现形式并不局限于 上述的实施方式。应该认识到:在不脱离本发明主旨和范围的情况下,本领域技术人员可以 对本发明做出不同的变化和修改。
【权利要求】
1. 一种基于分类决策树的网络纯净性检测装置,所述基于分类决策树的网络纯净性检 测装置包括: 网络数据流采样模块,所述网络数据流采样模块按照预定的采样时间窗口周期性地采 样网络上的数据流,并将采样的数据流传送到决策树分类器; 决策树分类器,所述决策树分类器分析所述采样的数据流,并基于分类决策树确定所 述采样的数据流的类型以判断所述采样的数据流是否是异常数据流,如果所述采样的数据 流是异常数据流,则构造报警指令,并将所述报警指令传送到报警模块以实施报警,其中, 所述报警指令包含异常数据流的信息; 报警模块,所述报警模块基于接收到的所述报警指令执行相关的报警操作。
2. 根据权利要求1所述的基于分类决策树的网络纯净性检测装置,其特征在于,所述 基于分类决策树的网络纯净性检测装置进一步包括协议过滤器,所述协议过滤器在所述决 策树分类器之前预处理所述采样的数据流,如果所述采样的数据流的传输层协议的类型不 是正常数据流的类型,则将所述采样的数据流转发到所述决策树分类器进行后续的处理, 而如果所述采样的数据流的传输层协议的类型是正常数据流的类型,则不将所述采样的数 据流转发到所述决策树分类器。
3. 根据权利要求2所述的基于分类决策树的网络纯净性检测装置,其特征在于,所述 决策树分类器在基于分类决策树判断所述采样的数据流是异常数据流之后进一步基于DPI 技术检验所述采样的数据流,如果所述采样的数据流的关键字与正常数据流的关键字不匹 配,则构造报警指令并将所述报警指令传送到报警模块以实施报警,而如果所述采样的数 据流的关键字与正常数据流的关键字相匹配,则不触发报警操作。
4. 根据权利要求3所述的基于分类决策树的网络纯净性检测装置,其特征在于,所述 分类决策树包括至少两层,并且每个非叶子节点的值表示数据流的一个特征量的值,而每 个叶子节点的值表示满足如下条件的数据流的类型:该数据流的各个对应的特征量的值匹 配该叶子节点对应的分类决策树的分支中的各个节点的值。
5. 根据权利要求4所述的基于分类决策树的网络纯净性检测装置,其特征在于,以如 下方式基于分类决策树确定所述采样的数据流的类型:从所述分类决策树的根节点开始, 将所述采样的数据流的对应的特征量的值与当前层的对应节点的值相比较,如果相匹配, 则针对该匹配的节点对应的下一层的节点重复执行与上述匹配操作相似的匹配操作,如果 最终到达叶子节点,则该叶子节点的值所代表的数据流的类型就是所述采样的数据流的类 型。
6. 根据权利要求5所述的基于分类决策树的网络纯净性检测装置,其特征在于,以如 下方式基于训练数据集生成所述分类决策树:(1)对从训练数据集获得的数据流的连续的 特征量取值进行离散化;(2)从根节点开始构造分类决策树,每次选取具有最大增益率的 特征量做为分裂属性,并按照该特征量的可能取值构造不同的分支,随后递归地选取后续 的特征量节点;(3)当到达叶子节点时,如果所有样本属于同一数据流类型,则以该数据流 类型作为叶子节点的值,而如果包含了不同类型的数据流样本,则以该集合中占多数的数 据流类型作为该叶子节点的值。
7. -种基于分类决策树的网络纯净性检测方法,所述方法包括下列步骤: (A1)按照预定的采样时间窗口周期性地采样网络上的数据流; (A2)分析所述采样的数据流,并基于分类决策树确定所述采样的数据流的类型以判断 所述采样的数据流是否是异常数据流,如果所述采样的数据流是异常数据流,则执行相关 的报警操作。
【文档编号】H04L29/06GK104125106SQ201310142240
【公开日】2014年10月29日 申请日期:2013年4月23日 优先权日:2013年4月23日
【发明者】柴洪峰, 吴杰, 鲁志军, 叶家炜, 王明博, 严明 申请人:中国银联股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1