基于决策树的工业通信网全链路数据异常检测方法
2024-05-06武永强刘正刚
武永强,刘正刚
(新兴铸管股份有限公司,河北邯郸 056300)
工业通信网络支持光纤通信与工业制造流程通信,现有的控制网络包括楼宇自动化、工厂自动化及流程自动化。随着网络通信技术的飞速发展,主干通信网的频宽逐渐增大,所携带的信息量也日益多样化,而超负荷的业务也给通信网的经营带来了更加复杂的问题。通过全链路数据异常检测,可以有效地保证整个通信网的安全性,从而增强通信网的反应能力。
周伯阳等[1]提出了基于多尺度低秩模型的检测方法,利用小波分析技术估算了多尺度低秩模式的参数,通过量化的方法测量了异常流量对模式估算的作用,并对异常流量进行了有效检测。陈曦等[2]提出了基于SIMI 模型的检测方法,针对S7 协议中的SIMI,给出了一种新的S7 通信网络异常流量的新算法。研究S7 的特点和漏洞,结合SIMI 的分类特点对S7 的异常流量进行了检测。以上两种方法虽然能够有效实现异常检测,但在实际应用中会存在一定误差,从而影响检测结果。因此,提出了基于决策树的工业通信网全链路数据异常检测方法。
1 基于决策树的检测模型构建
为有效实现工业通信网全链路数据异常检测,提出一种决策树算法[3],即在对同一属性的数据进行分类时,将其作为一种基于内部节点、叶节点和边界的判别标准。基于内部节点的特征来标识边缘,而叶节点则通过边界分割来获得判别的结果[4-5]。在检测模型中,用IP 标识节点作为工业通信网络的IP 地址,用失效或正常标识叶子名称,用标注箭头表示边界线。利用信息提取功能构造决策树,并对其进行了裁剪,从而得到了相应的学习信息[6]。基于修剪后决策树的全链路数据检测结构如图1 所示。
图1 修剪后决策树全链路数据检测结构
决策树算法是一种能够反映目标特征与目标价值映射关系的机器学习方法,在决策树生成过程中,选取决策树创建中内部节点分枝是决策树的核心问题[7]。根据信息熵原理,选取了最大值的信息来进行归类。
假设样本集A的最优划线单元为A={a1,a2,…,an},那么该数据的增益系数为:
式(1)中,Z1(A,δ)表示在分割抽样集合时,引进了检测条件δ来获得信息增益;ς(A,δ)为分割信息熵。在工业通信网络中,利用信息增益比对全链路中各节点分支所造成的问题进行了分析[8-9]。划分所生成的分割数据非常少,且所得到的增益数值也不太平稳,这样的不确定性会造成大量信息增加,导致信息增益率很可能为0,从而造成更大检测误差[10]。利用最小距离分割算法构造了一棵决策树,将范式距离确定成两个分区之间的间距,并将最接近于理想分割的特征值作为当前的判断标准[11]。
设工业通信网全链路数据特征属性作为检测条件得到的划分结果为A′,那么理想划分结果与实际划分的范式距离可表示为:
决策树的范式距离是由树枝长短组成的序列,因此需要对距离数据曲线斜率进行分析,以此检测异常数据,基于此构建的检测模型为:
式(3)中,x(i)、x(j)分别表示第i个、第j个检测数据。根据构建的决策树检测模型,能够获取工业通信网全链路异常数据集[12]。
2 工业通信网全链路数据异常检测方法
2.1 决策数据集预处理
在构造决策树的检测模型后,确定决策树下的异常数据检测对象。由于工业通信网全链路数据量较大,需要对决策数据集进行预处理,避免影响检测结果[13]。标定检测目标值,依据检测的特征决策节点,建立联合的数据集合,并在数据集合内设置不同的变量矢量,并与决策树相联系,以确定通信数据矢量的变动幅度。在通信网络中集中了大量信息,通过决策树将各个特征节点连接起来,形成了一个集群[14]。各簇彼此独立,其簇集群结构关系如图2所示。
图2 簇集群结构关系
由图2 可知,该集群是由一个与所探测到的异常数据相结合的异常信息集群,并求出了一个目标权重相关的平均值。公式为:
式(4)中,x′表示识别异常差值;α表示聚类特征系数;o表示向量中心值;Γ表示综合簇群范围。通过上述算法,获得了被检测对象的实际权重,将其平均约束设定为一条探测指令,并将其纳入了无线通信的运行区间[15]。利用决策树建立分类域,在描述节点检测过程中,通过增强对集群检测网络进行监控,实现对异常数据的预处理。
2.2 异常数据检测流程设计
在决策树检测模型的基础上,建立了一个基于决策树的检测模式,及时对异常数据检测。将待检测数据输入到决策树检测模式中,计算实际与检测差值,能够判断出目标数据是否异常。异常数据检测流程如下所示:
步骤1:采用标准化的处理算法来训练基于决策树的检测模式,从而加快了算法的收敛性。可以用以下的公式来表达标准化处理结果:
式(5)中,xt表示t时刻的实际通信网全链路数据;xmin、xmax分别表示处理过程中数据最小和最大值。因此,需要从全部数据中生成一组数据以进行决策树训练。
步骤2:在通信网络中,通过对多个具有一定拓扑关系的多个节点进行测量,得出各个节点的振幅。用以下公式来表示线路两端节点关系:
式(6)中,xc表示初始端节点数据;xyy、xwy分别表示有用、无用数据。
当幅度达到某一精度时,就能进行相应的信号探测和校正[16]。利用多个网络拓扑结构对多个节点进行了测试,得到了每个节点的振幅。在振幅达到某一特定精度后,就能对检测结果进行校正。
步骤3:在对决策树下工业通信网全链路数据检测方法设计前,必须准确地对其进行异常数据辨识。在此基础上,根据决策树建立特定的检测规则,将测量装置插入到通信网络的通信信道之中。在确定了测距的基础上,抽取通信网络检测的环境特性,利用特征量的改变来实现控制通信网络的波动,以此为依据检测异常数据,可将其描述为如下公式:
式(7)中,ue表示检测结果域;n表示检测总次数;μ表示检测均衡系数;e表示检测波动偏差。根据以上的结果,得到了实际异常数据波动性,使检测的各个参量与波动性相符合。针对与检测节点相连的多条线路上,存在一个本时刻计算值最大可能误差σ,如果x˙≤σ,则说明检测结果中的数据是正常数据;如果x˙>σ,则说明检测结果中的数据是异常数据。
3 实验
3.1 实验结构
实验所选取的工业通信网全链路结构,如图3所示。
图3 工业通信网全链路结构
工业通信网全链路结构中的各个工作站与传输数据的传输接口是由传输方和接收方共同完成的。所以,许多场合都是采用全双工通信模式,利用以太网交换系统来建立网络,使计算机与交换机端口之间一对一连接,达到全双工通信目的。
3.2 实验准备
在对基于决策树的工业通信网全链路数据异常检测方法验证前,需要先搭建实验测试环境。将多组数据采集结果作为实验数据,根据不同窗口之间关联性,设置实验参数。为了方便实验,在每个时间段只注入一种攻击类型,注入攻击后工业通信网全链路数据属性交叉熵会出现明显变化,以源IP 地址为例,分析注入攻击后8 个时间段IP 熵值变化情况,如表1 所示。
表1 IP熵值变化数据集
由表1 可知,受到端口扫描的影响使IP 熵值变化最大,影响最小的是网络扫描攻击方式。
3.3 检测效果测试分析
对于IP 熵值变化数据集,分别使用基于多尺度低秩模型的检测方法(文献[1]方法)、基于SIMI 模型的检测方法(文献[2]方法)和基于决策树的检测方法(所提方法),对比分析不同攻击模式下数据异常检测结果,如图4 所示。
图4 不同方法数据异常检测结果分析
由图4 可知,使用基于多尺度低秩模型的检测方法在网络扫描攻击模式下IP 熵值变化最小,在端口扫描攻击模式IP 熵值变化最大,这一点与实际检测结果相符,但IP 熵值与实际检测结果不一致;使用基于SIMI 模型的检测方法在端口扫描攻击模式下,IP 熵值变化最大,最大为0.8,与实际异常数据严重不符;使用基于决策树的检测方法在端口扫描攻击模式下,IP 熵值变化最大,最大为0.6,与实际异常数据检测结果一致。
4 结束语
为有效实现数据异常精准检测,提出了基于决策树的工业通信网全链路数据异常检测方法。该方法通过构建决策树检测异常数据,并通过实验验证了该方法研究的可靠性,能够在不同攻击模式下精准检测异常数据,具有较好的检测效果。