一种基于机器学习模型优化的异常网络流量检测方法技术

技术编号:37418525 阅读:13 留言:0更新日期:2023-04-30 09:41
本发明专利技术公开了一种基于机器学习模型优化的异常网络流量检测方法,其特征在于,包括以下步骤:根据网络节点获取网络流量,统计网络流量大小并进行保存;根据历史存储流量数据构建流量矩阵;搭建3

【技术实现步骤摘要】
一种基于机器学习模型优化的异常网络流量检测方法


[0001]本专利技术涉及智能运维和机器学习
,特别是涉及一种基于机器学习模型优化的异常网络流量检测方法。

技术介绍

[0002]随着硬件技术的不断更新,软件技术的迅猛发展,使得现有网络的承载能力有了飞跃性的提高,但是仍旧存在着网络承载能力的上限。在信息化社会,每天都会产生海量的信息,这些网络信息有些是人们正常合理需求所产生的,有些则是垃圾信息。这些在网络负载中占着不小的比重,给网络带来巨大压力的同时,也会窃取人们的个人隐私信息的网络流量一般称为异常流量。造成网络流量异常的原因有很多,一般包括:恶意攻击,如病毒、DoS攻击和DDoS攻击等;非法访问,如持续性端口扫描、远程未授权访问等。
[0003]网络流量异常检测技术对于网络的监管有着重要的作用,不仅仅被广泛应用于智能运维,并且被应用于入侵检测、DDoS攻击检测等技术中。网络流量本质上是一个随机时间序列,随着时间序列分析的发展,预测模型和算法已研究了几十年。时间序列模型通过自回归(Auto

Regressive,AR),移动平均(Moving Average,MA)以及它们的组合为线性静止过程提供了解决方案。此外,常用的异常流量监测技术还有基于特征的检测。该方法通常需要建立一个详实的特征数据库,通过分析用户或主机日志,或者统计网络中数据包的信息,例如流量、包头信息(如源目IP、源目端口、协议等)、内容特征等,建立判定规则,与特征数据库中的数据进行匹配来检测。
[0004]异常流量检测常用的方法有机器学习的集成学习xgboost算法,深度学习的半监督学习ganomaly,以及数据挖掘算法3

sigma算法,上述三种算法对于特征学习来说都有其局限性,但用其中某一种算法并不能很好的完成异常流量检测任务,并带来大量的误报,出现精确率低的情况。
[0005]如专利CN202011087361

基于伪装代理与动态技术相关联的自动化安全防护方法,公布了一种基于传统工具tshark进行流量分析,通过自定义神经网络的深度学习模型进行黑客画像用于匹配比对,但此方法针对的是利用深度学习网络构建用户画像对用户进行检测,进行封杀后,该用户所有的流量都会被判为异常,显然的对于行为流量的单个事件存在着大量误判的情况。
[0006]因此,需要一种更适用且更高效的可以针对单个事件的异常网络流量检测方法。

技术实现思路

[0007]本专利技术所要解决的技术问题是克服现有技术的不足,提供一种基于机器学习模型优化的异常网络流量检测方法。目的是取代传统检测异常流量方法,如采用流量阈值检测异常流量。本专利技术既保证了检测异常流量的准确性,又大大降低了误报率,同时也具备高效的实时性。
[0008]为解决上述技术问题,本专利技术提供一种基于机器学习模型优化的异常网络流量检
测方法,其特征在于,包括如下步骤:
[0009]步骤1:根据网络节点获取网络流量,统计网络流量大小并进行保存;
[0010]步骤2:根据历史存储流量数据构建流量矩阵;
[0011]步骤3:搭建3

sigma模型,根据节点历史流量生成节点流量数据异常分布;
[0012]步骤4:搭建深度聚类算法模型,进行历史流量深度聚类模型训练;
[0013]步骤5:获取节点实时流量,先进行3

sigma模型异常流量判别,如果为异常则进入深度聚类模型进行异常流量预测。
[0014]所述步骤1具体包括:
[0015]步骤1.1:将业务产生的流量通过交换机、路由器网络转发单元分发节点流量,网络设备系统采用linux系统,流量统计系统使用网络分包分析传统工具tshark,根据tshark系统进行流量的统计,收集网络信息,并向控制平面发送网络拓扑数据;
[0016]步骤1.2:对统计后的流量数据进行数据处理,采用时段归一化的方式将流量数据映射到0~1区间内,然后保存到数据仓库中,采用clickhouse作为数据存储仓库。
[0017]所述步骤2具体包括:将不同节点的流量数据进行分区计算,平均每五分钟取一次流量数据,进行流量数据分析,每两小时构建一次流量向量,然后取24周相同日期的流量数据构建24*24的流量矩阵并转化为二进制文件保存到文件存储系统中。
[0018]所述步骤3具体包括:
[0019]步骤3.1:数据挖掘算法使用3

sigma算法,用以计算流量矩阵的极限误差;
[0020]步骤3.2:用流量矩阵计算出对应的流量均值μ和方差σ,实时保存网络节点的μ

3σ和μ+3σ的数据。
[0021]所述步骤4具体包括:
[0022]将保存的流量矩阵经过数据清洗后,制作为tensor张量数据集,深度学习模型采用自定义神经网络,所述自定义神经网络采用TensorFlow智能计算平台,所述自定义神经网络模型结构为:输入层为全连接层dense(128)层,第二层为dense(256)层,第三层为dense(256)层,dropout=0.5,dropout通过随机断开神经网络连接,第四层为dense(256)层,采用relu激活函数,第五层为dense(8)层,采用relu激活函数,第六层为dense(256)层,采用relu激活函数,第七层为dense(256)层,采用relu激活函数,第八层为dense(256)层,采用relu激活函数,decoder输出层为dense(24)层,采用relu激活函数,所述relu激活函数公式:ReLU(θ):=max(0,θ),θ为每一层的输出集合;
[0023]进入2

means层,
[0024]步骤4.1,从输入的数据点集合中随机选择一个点作为第一聚类中心,所述数据点集合中至少包括2个聚类;
[0025]步骤4.2,对于数据集中的每一个点x,计算它与第一聚类中心的距离D(x);
[0026]步骤4.3,选择一个新的数据点作为第二聚类中心,所述选择的依据是:D(x)越大,则被选择作为第二聚类中心的概率越大;
[0027]步骤4.4,重复步骤4.2和4.3,直到2个聚类中心被选出来,其中损失函数根据输入数据和decoder输出层的MSE均方误差与k

means产生的欧氏距离进行加和构成本任务的损失函数,公式如下:
[0028][0029]其中,w和b为计算预测值的参数矩阵;wx
i
+b为预测值;y
(i)
为真实值;为计算的欧氏距离,根据定义好的网络模型结构和处理过后的数据集进行模型训练,根据节点进行模型保存。
[0030]所述步骤5具体包括:
[0031]步骤5.1,将业务产生的流量通过交换机、路由器网络转发单元分发节点流量,用tshark进行网络流量分析与网络信息收集,并向控制平面发送网络本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于机器学习模型优化的异常网络流量检测方法,其特征在于,包括如下步骤:步骤1:根据网络节点获取网络流量,统计网络流量大小并进行保存;步骤2:根据历史存储流量数据构建流量矩阵;步骤3:搭建3

sigma模型,根据节点历史流量生成节点流量数据异常分布;步骤4:搭建深度聚类算法模型,进行历史流量深度聚类模型训练;步骤5:获取节点实时流量,先进行3

sigma模型异常流量判别,如果为异常则进入深度聚类模型进行异常流量预测。2.如权利要求1所述的一种基于机器学习模型优化的异常网络流量检测方法,其特征在于:所述步骤1具体包括:步骤1.1:将业务产生的流量通过交换机、路由器网络转发单元分发节点流量,网络设备系统采用linux系统,流量统计系统使用网络分包分析传统工具tshark,根据tshark系统进行流量的统计,收集网络信息,并向控制平面发送网络拓扑数据;步骤1.2:对统计后的流量数据进行数据处理,采用时段归一化的方式将流量数据映射到0~1区间内,然后保存到数据仓库中,采用clickhouse作为数据存储仓库。3.如权利要求2所述的一种基于机器学习模型优化的异常网络流量检测方法,其特征在于:所述步骤2具体包括:将不同节点的流量数据进行分区计算,平均每五分钟取一次流量数据,进行流量数据分析,每两小时构建一次流量向量,然后取24周相同日期的流量数据构建24*24的流量矩阵并转化为二进制文件保存到文件存储系统中。4.如权利要求3所述的一种基于机器学习模型优化的异常网络流量检测方法,其特征在于:所述步骤3具体包括:步骤3.1:数据挖掘算法使用3

sigma算法,用以计算流量矩阵的极限误差;步骤3.2:用流量矩阵计算出对应的流量均值μ和方差σ,实时保存网络节点的μ

3σ和μ+3σ的数据。5.如权利要求4所述的一种基于机器学习模型优化的异常网络流量检测方法,其特征在于:所述步骤4具体包括:将保存的流量矩阵经过数据清洗后,制作为tensor张量数据集,深度学习模型采用自定义神经网络,所述自定义神经网络采用TensorFlow智能计算平台,所述自定义神经网络模型结构为:输入层为全连接层dense(128)层,第二层为...

【专利技术属性】
技术研发人员:季恩卉房鹏展
申请(专利权)人:焦点科技股份有限公司
类型:发明
国别省市:

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

1