一种网络异常数据的关联性分析方法与流程

文档序号:15558386发布日期:2018-09-29 01:40阅读:740来源:国知局

本发明涉及网络异常数据处理技术领域,更具体地,涉及一种网络异常数据的关联性分析方法。



背景技术:

随着智能电网研究与实践的推进,传统意义上的电网正逐步与信息通信系统、监测控制系统相互融合,电力通信网安全和电网运行安全紧密相连,电力通信网安全为电网安全的重中之重。电力行业在“十二五”期间不断强化网络安全,具有电力行业特色的网络安全防护体系不断完善。

电力通信网络系统具有复杂性、动态性等特点,具有一定的脆弱性,而拒绝服务攻击、网络扫描、网络欺骗、病毒木马、信息泄露等安全事件的层出不穷,对于电网通信网络的异常数据缺乏方法及时进行分析处理,内外部的安全风险都给网络安全工作带来了极大的压力。



技术实现要素:

本发明为解决以上现有技术缺乏对电力通信网络异常数据的分析处理方法,给网络安全工作带来极大压力的技术缺陷,提供一种网络异常数据的关联性分析方法。

为实现以上发明目的,采用的技术方案是:

一种网络异常数据的关联性分析方法,包括以下步骤:

s1:对电力通信网络的异常数据进行采集;

s2:对采集到的异常数据进行预处理,得到预处理后的异常数据;

s3:根据预处理后的异常数据,根据主成分分析计算权值;

s4:计算异常数据的相似度,生成事务数据库;

s5:根据生成的事务数据库,基于apriori算法完成关联性分析。

其中,所述步骤s1具体为:从电力通信网络中收集的异常流量数据的原始记录中,挑选固定时间长度的网络关键信息数据,每条数据包含4方面属性:时间属性,采集时间段time,记为a;网络中主机相关属性,包括:主机的重要性等级hosts_level,记为b1、各主机的安全防护等级secure_level,记为b2;运行信息属性,包括:各主机上运行的服务的总数service_num,记为c1、各项服务的重要性等级service_level,记为c2,记为;ip属性:源地址sip,记为d1和目的地址dip,记为d2;数据特征即为a、b1、b2、c1、c2、d1、d2;将b1、b2、c2的描述性文字量化为数字。

其中,所述步骤s2具体为,对数据进行清洗,去除含有缺失值的数据记录。

其中,所述步骤s3包括:

s31:数据标准化处理:数据的标准化是将数据按比例缩放,使之落入一个小的特定区间,主要用于去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权;这里采用极值标准化法(0-1normalization),是对原始数据的线性变换,转换函数具体表达式如下:

其中,xmax为样本数据的最大值,xmin为样本数据的最小值,x为采集到的异常数据;x*为转换后的异常数据;

s32:对x*进行主成成分分析,其计算步骤如下:

计算相关系数矩阵r,计算公式为:

其中,rij(i,j=1,2,...,p)为原变量xi与xj的相关系数,rij=rji,其计算公式为

其中,表示x矩阵行和列上的平均值,由此可以得到a、b1、b2、c1、c2、d1、d2的相关系数矩阵;

计算特征值与特征向量,解特征值方程:

|λi-r|=0

用雅可比法(jacobi)求出特征值,并使其按大小顺序排列λ1≥λ2≥...≥λp≥0,分别求出对应与特征值λi的特征向量ej(i=1,2,...,p),要求||ei||=1,即其中eij表示向量ei的第j个分量;

计算主成分贡献率及累计贡献率,计算公式为:

贡献率:

累计贡献率:

其中,λi,λk非负特征向量,i=1,2,...,p,p表示非负特征根的个数;

计算主成分负载lij,计算公式为:

其中,ei,j为单位向量分量,根据lij可以得到成分矩阵z,各个主成分得分如下:

确定主成分分析的权重:用主成分分析确定权重,指标权重等于以主成分的方差贡献率为权重,对该指标在各主成分线性组合中的系数的加权平均归一化,因此,要确定指标权重需要三个步骤:

计算主成分线性组合中的系数:根据主成分荷载得到的成份矩阵中的载荷数/特征值的开方,即得到了主成分线性组合的系数,其中,主成分的个数由各个主成分得分具体分析得到,设为n(n≤7),即得到了n组数据a、b1、b2、c1、c2、d1、d2的线性组合系数f,记为

其中,x1,x2,...,x7对应于a、b1、b2、c1、c2、d1、d2;

计算主成分的方差贡献率,方差贡献率越大,则该主成分的重要性就越强,因此,将方差贡献率看做成不同主成分的权重,由于原有数据可以基本用n个主成分代替,而主成分线性组合中的系数和主成分在主成分方差贡献率的比重,对线性组合中和系数做加权平均,

f=c1f1+c2f2+...+cnfn

其中,c1,c2,...,cn为f1,f2,...,fn占方差贡献率的比例,

结合主成分线性组合中的系数,得到:

f=w1x1+w2x2+...+w7x7

其中,w1,w2,...,w7即为权重,并将w1,w2,...,w7进行归一化处理;

在利用主成分分析的方法确定权重的同时,设置数据变量的权重阈值,为0.05,当数据变量的权重低于权重阈值时,认为该数据变量与异常流量数据分析关联度低,则删除此数据变量。

其中,所述步骤s4包括以下步骤:

计算异常流量数据间的相似度:

时间信息的相似度δ1:

其中,t1,t2是异常流量a、b检测时刻,twin是基准设计时间;

主机相关信息的相似度δ2:

其中,s1,s2为异常流量a、b主机重要等级,ns为重要等级数;

主机安全防等级的相似度δ3:

其中,c1,c2为异常流量a、b主机防护等级,nc为总防护等级数;

运行服务总数的相似度δ4:

其中,i1,i2为异常流量a、b主机上运行的服务总数,ni为主机上运行服务的总重要等级数;

运行服务重要性等级的相似度δ5:

其中,l1,l2为异常流量a、b主机上运行的服务的重要等级,nl为主机上运行服务的总重要等级数;

ip相关信息的相似度δ6:设两异常流量设备a、b的ip地址二进制数分别为ip1和ip2,对ip地址取异或运算得到diff=ip1xorip2,从diff左边开始扫描,遇到1停止,定义变量p为扫描中遇到0的个数,则ip相似度函数为:

根据所得到的相似度函数分别计算源ip地址δ6;

计算异常流量的相似度η:

得到每条异常流量之间的相似度,从而以对异常流量数据中变量的操作,转化到了对每条异常流量之间的操作;

根据相似度生成事务型数据库:

设置相似度阈值:根据计算得到的异常流量间的相似度,设置相似度阈值;根据实验得到的结果进行分析,设置相似度阈值分别为最大阈值0.5,最小阈值0.1和丢弃阈值0.05;

根据相似度阈值生成事务型数据库d:其中当相似度低于0.05时,认为异常流量之间的相似度过低,不存在可能的关联度;当两者相似度高于0.5时,认为关联度较高,可以作为2个异常流量的事务数据项;在得到相似度高于0.5事务数据项的基础上,如果这两者与另外一个异常流量的相似度都高于0.48,则会生成3个异常流量的事务数据项,以此类推,在事务数据项中每增加一个异常流量,所要求的相似度会对应减少0.02,但当相似度低于0.1时事务数据项不能再增加异常流量。

其中,所述步骤s5包括以下步骤:

s51:设置最小支持度阈值min_sup和最小置信度min_conf,最小支持度阈值取20%,最小置信度阈值取80%;

s52:对事务型数据库d经过迭代生成频繁项集:经过算法的第一次迭代,对事务数据库d进行一次扫描,计算出d中所包含的每个项目出现的次数,生成候选1-项集的集合c1;

s53:根据设定的最小支持度,从c1中确定频繁1-项集l1,从此类推得到频繁集lk,这里k取值为7;

s54:在频繁项集的基础上生成满足最小置信度的规则,产生的规则称为强关联规则,从而获得电力通信网络异常数据的相关性,进而实现电力通信元数据网络势态感知及预测。

上述方案中,基于apriori算法关联性分析的算法策略如下:

连接步骤:频繁(k-1)项集lk-1的自身连接产生候选k项集ck,apriori假定项集按照字典序排序。如果lk-1中某两个的元素(项集)itemset1和itemset2的前(k-2)项是相同的,则称itemset1和itemset2是可连接的。所以itemset1与itemset2连接产生的结果项集是{itemset1[1],itemset1[2],…,itemset1[k-1],itemset2[k-1]};

剪枝策略:由于存在先验性质:任何非频繁的(k-1)项集都不是频繁k项集的子集。因此,如果一个候选k项集ck的(k-1)项子集不在lk-1中,则该候选项集也不可能是频繁的,从而可以从ck中删除,获得压缩后的ck;

删除策略:基于压缩后的ck,扫描所有事务,对ck中的每个项进行计数,然后删除不满足最小支持度的项,从而获得频繁k项集;

设置最小支持度阈值min_sup和最小置信度min_conf,这里最小支持度阈值取20%,最小置信度阈值取80%;

对事务型数据库d经过迭代生成频繁项集:经过算法的第一次迭代,对事务数据库d进行一次扫描,计算出d中所包含的每个项目出现的次数,生成候选1-项集的集合c1;

根据设定的最小支持度,从c1中确定频繁1-项集l1,从此类推得到频繁集lk,这里k取值为7;

在频繁项集的基础上生成满足最小置信度的规则,产生的规则称为强关联规则,从而获得电力通信网络异常数据的相关性,进而实现电力通信元数据网络势态感知及预测。

上述方案中,首先从电力通信网络中获取的异常流量数据中进行数据处理,设计了基于主成分分析法计算异常流量数据变量的权重并进行降维,利用权重计算异常流量之间相似度生成事务型数据库,而后基于apriori关联规则算法对事务型数据库关联,生成强关联规则。

与现有技术相比,本发明的有益效果是:

本发明提供的一种网络异常数据的关联性分析方法,使用基于主成分分析法计算异常流量数据变量的权重并进行降维,利用权重计算异常流量之间相似度生成事务型数据库;使用apriori关联规则对电力通信网络异常流量数据的关联性进行分析和挖掘,充分考虑了电力通信网络异常流量的复杂性,全面考虑网络的异常流量的真实状态,更好的体现网络的异常流量的相似性。

附图说明

图1为一种网络异常数据的关联性分析方法流程示意图。

图2为一种网络异常数据的关联性分析方法算法流程图;

图3为平均时间复杂度的对比图。

具体实施方式

附图仅用于示例性说明,不能理解为对本专利的限制;

以下结合附图和实施例对本发明做进一步的阐述。

实施例1

如图1、图2所示,一种网络异常数据的关联性分析方法,包括以下步骤:

s1:对电力通信网络的异常数据进行采集;

s2:对采集到的异常数据进行预处理,得到预处理后的异常数据;

s3:根据预处理后的异常数据,根据主成分分析计算权值;

s4:计算异常数据的相似度,生成事务数据库;

s5:根据生成的事务数据库,基于apriori算法完成关联性分析。

更具体的,所述步骤s1具体为:从电力通信网络中收集的异常流量数据的原始记录中,挑选固定时间长度的网络关键信息数据,每条数据包含4方面属性:时间属性,采集时间段time,记为a;网络中主机相关属性,包括:主机的重要性等级hosts_level,记为b1、各主机的安全防护等级secure_level,记为b2;运行信息属性,包括:各主机上运行的服务的总数service_num,记为c1、各项服务的重要性等级service_level,记为c2,记为;ip属性:源地址sip,记为d1和目的地址dip,记为d2;数据特征即为a、b1、b2、c1、c2、d1、d2;将b1、b2、c2的描述性文字量化为数字。

更具体的,所述步骤s2具体为,对数据进行清洗,去除含有缺失值的数据记录。

更具体的,所述步骤s3包括:

s31:数据标准化处理:数据的标准化是将数据按比例缩放,使之落入一个小的特定区间,主要用于去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权;这里采用极值标准化法(0-1normalization),是对原始数据的线性变换,转换函数具体表达式如下:

其中,xmax为样本数据的最大值,xmin为样本数据的最小值,x为采集到的异常数据;x*为转换后的异常数据;

s32:对x*进行主成成分分析,其计算步骤如下:

计算相关系数矩阵r,计算公式为:

其中,rij(i,j=1,2,...,p)为原变量xi与xj的相关系数,rij=rji,其计算公式为

其中,表示x矩阵行和列上的平均值,由此可以得到a、b1、b2、c1、c2、d1、d2的相关系数矩阵;

计算特征值与特征向量,解特征值方程:

|λi-r|=0

用雅可比法(jacobi)求出特征值,并使其按大小顺序排列λ1≥λ2≥...≥λp≥0,分别求出对应与特征值λi的特征向量ej(i=1,2,...,p),要求||ei||=1,即其中eij表示向量ei的第j个分量;

计算主成分贡献率及累计贡献率,计算公式为:

贡献率:

累计贡献率:

其中,λi,λk非负特征向量,i=1,2,...,p,p表示非负特征根的个数;

计算主成分负载lij,计算公式为:

其中,ei,j为单位向量分量,根据lij可以得到成分矩阵z,各个主成分得分如下:

确定主成分分析的权重:用主成分分析确定权重,指标权重等于以主成分的方差贡献率为权重,对该指标在各主成分线性组合中的系数的加权平均归一化,因此,要确定指标权重需要三个步骤:

计算主成分线性组合中的系数:根据主成分荷载得到的成份矩阵中的载荷数/特征值的开方,即得到了主成分线性组合的系数,其中,主成分的个数由各个主成分得分具体分析得到,设为n(n≤7),即得到了n组数据a、b1、b2、c1、c2、d1、d2的线性组合系数f,记为

其中,x1,x2,...,x7对应于a、b1、b2、c1、c2、d1、d2;

计算主成分的方差贡献率,方差贡献率越大,则该主成分的重要性就越强,因此,将方差贡献率看做成不同主成分的权重,由于原有数据可以基本用n个主成分代替,而主成分线性组合中的系数和主成分在主成分方差贡献率的比重,对线性组合中和系数做加权平均,

f=c1f1+c2f2+...+cnfn

其中,c1,c2,...,cn为f1,f2,...,fn占方差贡献率的比例,

结合主成分线性组合中的系数,得到:

f=w1x1+w2x2+...+w7x7

其中,w1,w2,...,w7即为权重,并将w1,w2,...,w7进行归一化处理;

在利用主成分分析的方法确定权重的同时,设置数据变量的权重阈值,为0.05,当数据变量的权重低于权重阈值时,认为该数据变量与异常流量数据分析关联度低,则删除此数据变量。

其中,所述步骤s4包括以下步骤:

计算异常流量数据间的相似度:

时间信息的相似度δ1:

其中,t1,t2是异常流量a、b检测时刻,twin是基准设计时间;

主机相关信息的相似度δ2:

其中,s1,s2为异常流量a、b主机重要等级,ns为重要等级数;

主机安全防等级的相似度δ3:

其中,c1,c2为异常流量a、b主机防护等级,nc为总防护等级数;

运行服务总数的相似度δ4:

其中,i1,i2为异常流量a、b主机上运行的服务总数,ni为主机上运行服务的总重要等级数;

运行服务重要性等级的相似度δ5:

其中,l1,l2为异常流量a、b主机上运行的服务的重要等级,nl为主机上运行服务的总重要等级数;

ip相关信息的相似度δ6:设两异常流量设备a、b的ip地址二进制数分别为ip1和ip2,对ip地址取异或运算得到diff=ip1xorip2,从diff左边开始扫描,遇到1停止,定义变量p为扫描中遇到0的个数,则ip相似度函数为:

根据所得到的相似度函数分别计算源ip地址δ6;

计算异常流量的相似度η:

得到每条异常流量之间的相似度,从而以对异常流量数据中变量的操作,转化到了对每条异常流量之间的操作;

根据相似度生成事务型数据库:

设置相似度阈值:根据计算得到的异常流量间的相似度,设置相似度阈值;根据实验得到的结果进行分析,设置相似度阈值分别为最大阈值0.5,最小阈值0.1和丢弃阈值0.05;

根据相似度阈值生成事务型数据库d:其中当相似度低于0.05时,认为异常流量之间的相似度过低,不存在可能的关联度;当两者相似度高于0.5时,认为关联度较高,可以作为2个异常流量的事务数据项;在得到相似度高于0.5事务数据项的基础上,如果这两者与另外一个异常流量的相似度都高于0.48,则会生成3个异常流量的事务数据项,以此类推,在事务数据项中每增加一个异常流量,所要求的相似度会对应减少0.02,但当相似度低于0.1时事务数据项不能再增加异常流量。

更具体的,所述步骤s5包括以下步骤:

s51:设置最小支持度阈值min_sup和最小置信度min_conf,最小支持度阈值取20%,最小置信度阈值取80%;

s52:对事务型数据库d经过迭代生成频繁项集:经过算法的第一次迭代,对事务数据库d进行一次扫描,计算出d中所包含的每个项目出现的次数,生成候选1-项集的集合c1;

s53:根据设定的最小支持度,从c1中确定频繁1-项集l1,从此类推得到频繁集lk,这里k取值为7;

s54:在频繁项集的基础上生成满足最小置信度的规则,产生的规则称为强关联规则,从而获得电力通信网络异常数据的相关性,进而实现电力通信元数据网络势态感知及预测。

在具体实施过程中,基于apriori算法关联性分析的算法策略如下:

连接步骤:频繁(k-1)项集lk-1的自身连接产生候选k项集ck,apriori假定项集按照字典序排序。如果lk-1中某两个的元素(项集)itemset1和itemset2的前(k-2)项是相同的,则称itemset1和itemset2是可连接的。所以itemset1与itemset2连接产生的结果项集是{itemset1[1],itemset1[2],…,itemset1[k-1],itemset2[k-1]};

剪枝策略:由于存在先验性质:任何非频繁的(k-1)项集都不是频繁k项集的子集。因此,如果一个候选k项集ck的(k-1)项子集不在lk-1中,则该候选项集也不可能是频繁的,从而可以从ck中删除,获得压缩后的ck;

删除策略:基于压缩后的ck,扫描所有事务,对ck中的每个项进行计数,然后删除不满足最小支持度的项,从而获得频繁k项集;

设置最小支持度阈值min_sup和最小置信度min_conf,这里最小支持度阈值取20%,最小置信度阈值取80%;

对事务型数据库d经过迭代生成频繁项集:经过算法的第一次迭代,对事务数据库d进行一次扫描,计算出d中所包含的每个项目出现的次数,生成候选1-项集的集合c1;

根据设定的最小支持度,从c1中确定频繁1-项集l1,从此类推得到频繁集lk,这里k取值为7;

在频繁项集的基础上生成满足最小置信度的规则,产生的规则称为强关联规则,从而获得电力通信网络异常数据的相关性,进而实现电力通信元数据网络势态感知及预测。

在具体实施过程中,首先从电力通信网络中获取的异常流量数据中进行数据处理,设计了基于主成分分析法计算异常流量数据变量的权重并进行降维,利用权重计算异常流量之间相似度生成事务型数据库,而后基于apriori关联规则算法对事务型数据库关联,生成强关联规则。

在具体实施过程中,如图3所示,首先进行数据预处理,去除有缺失值的数据。采用了主成分分析法对异常流量数据变量处理,在得到数据变量的权重的同时,对数据变量进行降维。在对异常流量数据进行简化的基础上,得到异常流量之间的相似度,并以此将电力通信网络的异常流量生成事务型数据库。通过步骤s5完成异常流量的关联规则。

在具体实施过程中,由于apriori关联规则固有缺陷,导致实现apriori的空间复杂度和时间复杂度会随着数据的增加而增大,而空间复杂度和时间复杂度增加的原因是apriori需要对数据库进行多次访问和本身的迭代。随着现如今数据处理平台的发展,采用spark并行计算框架编程,可以有效地解决迭代算法的时间复杂度;同时spark支持将多次使用的数据通过cache的方式进行缓存,一定程度上缓解了多次访问数据库的压力。

在具体实施过程中,采用主成分分析法作为数据处理方法、apriori得到关联规则,主成分分析减少了对数据处理的工作量,并以此确定异常流量数据变量间的权重,这种方法确定权重是客观、合理的。apriori关联规则已经被广泛的应用到商业、网络安全等各个领域,对数据的关联性进行了分析和挖掘,挖掘有用的信息。

显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1