当前位置: 首页 > 专利查询>西北大学专利>正文

软件定义网络中基于特征遍历选择和模型动态更新分类算法的分布式拒绝服务攻击检测方法技术

技术编号:37057504 阅读:22 留言:0更新日期:2023-03-29 19:34
本发明专利技术公开了一种基于特征遍历选择和模型动态更新分类算法的分布式拒绝服务攻击检测方法,其实施环境在SDN网络环境下。通过控制器监控获取交换机上的流表,提取流表项中的多个特征数据,使用特征遍历选择和模型动态更新分类算法训练得到检测模型,在SDN网络架构下实时监控网络状态,对可疑流量进行DDoS攻击检测,定位受到攻击的OpenFlow交换机并删除攻击流表项,从而保证SDN网络的安全通信,避免造成资源耗尽、网络瘫痪等问题。该方法不仅可以实时更新动态数据集,而且检测时间短,准确率高,更好适应软件定义网络攻击检测的需求。更好适应软件定义网络攻击检测的需求。更好适应软件定义网络攻击检测的需求。

【技术实现步骤摘要】
软件定义网络中基于特征遍历选择和模型动态更新分类算法的分布式拒绝服务攻击检测方法


[0001]本专利技术属于计算机网络安全
,具体涉及一种软件定义网络中基于特征遍历选择和模型动态更新分类算法的分布式拒绝服务攻击检测方法。

技术介绍

[0002]随着网络技术的不断发展,在大数据的时代,互联网领域出现了一种新的网络架构——软件定义网络(Software Defined Networks,SDN)。它将控制平面和数据平面解耦,以及通过运行在控制器上的指定应用程序集中网络管理,尽管有许多优点,但SDN网络中心的安全问题仍然是研究界关注的问题之一。分布式拒绝服务攻击(Distributed Denialof Service,DDoS)就是SDN网络安全中最大威胁的攻击之一,它是指处于不同位置的多个攻击者同时向一个或多个目标发出攻击,其攻击方式众多、破坏力强,伪造源IP地址迷惑防御系统,导致检测难度增大,随着数据的变化多端,传统攻击检测方法难以检测攻击数据,导致网络系统瘫痪,目前存在的检测方法在SDN网络中不适用于流量较大的网络、检测模型不能很好的适应网络流量的变化,例如基于熵值检测等只适用于较少数据集的情况、非在线检测模型不能及时适应网络的流量变化。

技术实现思路

[0003]针对现有技术中存在的缺陷或不足,所以为了适用于当前环境的网络系统,本专利技术的目的在于,提供一种软件定义网络中基于特征遍历选择和模型动态更新分类算法的分布式拒绝服务攻击检测方法
[0004]为了实现上述任务,本专利技术采用如下技术解决方案:
[0005]一种软件定义网络中基于特征遍历选择和模型动态更新分类算法的分布式拒绝服务攻击检测方法,其特征在于,包括如下步骤:
[0006]步骤1,获取包含T周期内源IP地址发出数据包的总数量(Total Bwd Packets)、T 周期内目的IP地址接收数据包的总大小(Total Length of Fwd Packets)和T周期内源IP 地址发出数据包的总大小(Total Length of Bwd Packets)的特征数据集,使用分类算法训练分类模型,构建软件定义网络拓扑架构,并设置动态更新数据集合大小为0;
[0007]步骤2,使用软件定义网络拓扑结构连接控制器,设置流表项的死亡时间,通过在控制平面获取数据层的交换机中的流表信息进行数据的采集;
[0008]步骤3,通过步骤2获取到流表信息后利用公式进行计算,计算得到T周期内目的 IP地址发出数据包的总数量、T周期内目的IP地址接收数据包的总大小和T周期内目的 IP地址发出数据包的总大小;
[0009]步骤4,针对每一个OpenFlow交换机,使用步骤3计算得到的数据集作为输入数据,然后将数据用于KNN算法分类模型进行训练后得到原始分类模型,并把输入数据和检测结果作为新的训练数据添加至动态更新数据集合。
[0010]步骤5,动态更新数据集合数据达到3000条时,并且动态更新分类模型和原始分类模型预测结果不一样的次数小于30次时,将数据用于KNN算法分类模型进行训练后得到分类模型;
[0011]若原始分类模型和动态更新分类模型判断结果一样且为恶意流量,控制器定位攻击目标,删除流表中的攻击流表项并返回给交换机当前的流表信息;
[0012]若判断结果不一样则判断为正常流量,两个模型预测结果不一样的次数增加1,如果两个模型预测结果不一样的次数超过30次,动态更新数据集合数据清零,防止预测结果和实际结果偏差过大。若动态更新数据集合数据未达到3000条时,判断结果只取决于原始分类模型。
[0013]根据本专利技术,在发生DDoS攻击时,某些特征的值相对正常通信时的特征值会急剧变大或者变小,选取特征值前30%小的数据和后30%大的数据不仅更有代表性而且可以只使用部分的数据以减少寻找较优特征的速度;依次将特征值从小到大进行排序后选取该特征前30%数据,若该部分数据中恶意流量占比超过60%,说明该部分数据具有代表性,将该特征加入集合1;选取该特征后30%数据,若该部分数据中恶意流量占比超过60%,将该特征加入集合2;
[0014]对两个集合的特征数据进行遍历、训练和预测,得到较好的预测效果并且特征数量较少的特征为Total Backward Packets、Total Length of forward Packets和Total Length ofBackward Packets。
[0015]具体地,使用原始数据集合对新数据进行预测之后,将新数据和预测结果加入到动态更新数据集合里面,当动态更新数据集合达到一定数目时,最终预测结果由原始数据预测结果和动态更新数据集合预测结果共同决定;如果两个模型预测结果不一致的次数达到一定数目时,重置动态更新数据集合,避免预测结果和实际结果相差越来越大。
[0016]可选的,分类模型进行检测具体包括:
[0017]特征遍历选择(Feature Traversal Selection):DDoS攻击时,某些特征的值会急剧变大或者变小,选取特征值前30%小的数据和后30%大的数据不仅更有代表性而且可以只使用部分的数据,减少寻找特征的速度。依次将特征值从小到大进行排序后选取该特征前 30%数据,若该部分数据中恶意流量占比超过60%,将该特征加入集合1;选取该特征后 30%数据,若该部分数据中恶意流量占比超过60%,将该特征加入集合2。对两个集合的特征进行遍历、训练和预测,选择效果最好且数量较少的特征作为新的数据集。分类算法模型具体步骤如下:
[0018]1)计算测试数据与各个训练数据之间的距离;
[0019]2)按照距离递增的顺序进行排序;
[0020]3)选择距离最近的k个样本数据;
[0021]4)计算前k个样本所在类别的频率/均值;
[0022]5)返回前k个样本出现频率最高/(加权)均值作为测试数据的类别/预测值;
[0023]具体使用公式如下:
[0024][0025]式中,d(x,y):计算的是测试数据与一个训练数据之间的距离;
[0026]进一步地,所述的特征数值是根据如下公式计算得到:
[0027][0028]式中:b_packet_i表示在T周期内发出的第i个数据包;
[0029]f_packet__表示在T周期内接收第i个数据包的大小;
[0030]b_packet__len表示在T周期内发出第i个数据包的大小;
[0031]Total Bwd Packets表示在T周期内源IP地址发出数据包的总数量;
[0032]Total Length of Fwd Packets表示在T周期内目的IP地址接收数据包的总大小;
[0033]Total Length of Bwd Packets表示在T周期内源IP地址发出数据包的总大小。
[0034]本专利技术的软件定义网络中基于特征遍历选择和模型动态更新分类算法的分布式拒绝服务攻击检测方本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种软件定义网络中基于特征遍历选择和模型动态更新分类算法的分布式拒绝服务攻击检测方法,其特征在于,包括如下步骤:步骤1,获取包含T周期内源IP地址发出数据包的总数量、T周期内目的IP地址接收数据包的总大小和T周期内源IP地址发出数据包的总大小的特征数据集,使用KNN算法训练分类模型,构建软件定义网络拓扑架构,并设置动态更新数据集合的大小为0;步骤2,使用软件定义网络拓扑结构连接控制器,设置流表项的死亡时间,周期性地通过在控制平面获取数据层的交换机中的流表信息进行数据的采集;步骤3,通过步骤2获取到流表信息后利用公式进行计算,计算得到T周期内源IP地址发出数据包的总数量、T周期内目的IP地址接收数据包的总大小和T周期内源IP地址发出数据包的总大小;步骤4,针对每一个OpenFlow交换机,使用步骤3计算得到的数据集作为输入数据,然后将数据用于KNN算法分类模型进行训练后得到原始分类模型,并把输入数据和检测结果作为新的训练数据添加至动态更新数据集合;步骤5,动态更新数据集合数据达到3000条时,并且动态更新分类模型和原始分类模型预测结果不一样的次数小于30次时,将数据用于KNN算法分类模型进行训练后得到分类模型;若原始分类模型和动态更新分类模型判断结果一样且为恶意流量,控制器定位攻击目标,删除流表中的攻击流表项并返回给交换机当前的流表信息;若判断结果不一样则判断为正常流量,两个模型预测结果不一样的次数增加1,如果两个模型预测结果不一样的次数超过30次,动态更新数据集合数据清零,防止预测结果和实际结果偏差过大;若动态更新数据集合数据未达到3000条时,判断结果只取决于原始分类模型。2.如权利要求1所述的方法,其特征在于,在发生DDoS攻击时,某些特征的值相对正常通信时的特征值会急剧变大或者变小,选取特征值前30%小的数据和后30%大的数据不仅更有代表性而且可以只使用部分的数据以减少寻找较优特征的速度;依次将特征值从小到大进行排序后选取该特征前30%数据,若该部分数据中恶意流量占比超过60%,说明该部分数据具有代表性,将该特征加入集合1;选取该特征后30%数据,若该部分数据中恶意流量占比超过60%,将该特征加入集合2;对两个集合的特征数据进行遍历、训练和预测,得到较好的预测效果并且特征数量较少的特征为Total Bac...

【专利技术属性】
技术研发人员:张艺伟侯爱琴肖云张佳璇王欣
申请(专利权)人:西北大学
类型:发明
国别省市:

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

1