基于C4.5决策树算法的分布式拒绝服务攻击检测方法技术

技术编号:19126221 阅读:35 留言:0更新日期:2018-10-10 07:40
本发明专利技术公开了一种软件定义网络环境下基于C4.5决策树算法的分布式拒绝服务攻击检测方法,包括步骤:通过OpenFlow协议收集由OpenFlow交换机返回的流表信息;提取所述流表信息中与DDoS攻击相关的字段信息并转化成可分析网络流量分布变化的参数作为属性,形成一个决策树的训练集;使用C4.5决策树算法对流量进行分类,并根据训练集数据分类别计算类别信息熵;依次计算属性的条件熵、信息的增益、属性的信息熵以及属性的信息增益率;选择信息增益率最大的属性当做决策树的根节点,然后在剩余属性中选取信息增益率最大的属性作为分叉节点,并重复上述步骤至形成决策树;使用最终形成的决策树对新的网络流量进行分类操作,检测是否存在DDoS攻击;本发明专利技术可更准确检测到DDoS攻击。

【技术实现步骤摘要】
基于C4.5决策树算法的分布式拒绝服务攻击检测方法
本专利技术涉及计算机通信
,是一种软件定义环境下的拒绝服务攻击检测方法,尤其涉及一种基于C4.5决策树算法的分布式拒绝服务攻击检测方法。
技术介绍
目前,连接到互联网的网络设备数量正在加速增长,不仅是移动设备的激增,新兴技术的发展也使得网络设备的数量迅速增长。相应地,网络规模的不断扩大将导致更为复杂的网络,带来更多的挑战。但现有的网络技术与设施并不能实现这样越来越复杂的系统。为了设计能满足这些快速发展需求的未来网络,已经提出了许多方法,软件定义网络就是其中比较重要的一个解决方案。软件定义网络突出的特点是网络设备中数据平面和控制平面的解耦。在传统网络中,路由器通过路由算法决定数据包转发的位置。在软件定义网络中,决策和转发功能是分开的,决策过程由控制器提供,而数据转发交由交换机处理。简化网络设备和集中管理是软件定义网络最实用的特性。尽管软件定义网络在很多方面都有优势,但仍有许多挑战需要我们关注。在软件定义网络的安全方面的研究还很有限,它的漏洞源于它的两个特性:通过软件控制网络以及控制器中网络智能的集中化。这些功能会导致一些信任问题和单点管理的失效。对于信任问题,应用授权及认证机制可以解决,而通过损害控制器的可用性会造成单点管理失效,分布式拒绝服务攻击正是此类问题的最常见方式之一。拒绝服务攻击其实就是拒绝将系统资源用于合法用户并降低系统可用性。基本机制就是向目标发送大量多余的网络流量,使其无法响应真正的服务请求。如果攻击者使用多个源,则称为分布式拒绝服务攻击,这比拒绝服务更麻烦。软件定义网络架构在面对分布式拒绝服务攻击的一个缺点就是交换机过于被动,它们将所有带有未知流量的数据包发往控制器,由于控制器的中央管理特性,如果控制器因攻击流量而饱和,分布式拒绝服务攻击将造成灾难性后果。现在已经存在一些检测软件定义网络环境下的分布式拒绝服务攻击的方法,比如说通过处理数据包的信息,基于熵值的计算判断是否遭受攻击。还有通过对数据包流量的不断监控,找到潜在的受害者和攻击者;这些方法的检测成功率偏低而且误报警的频率比较高。
技术实现思路
本专利技术的主要目的在于解决现有技术中存在的缺点和不足,提供一种基于C4.5决策树算法的分布式拒绝服务攻击检测方法,通过此方法可获得更高的检测成功率和更低的误报警率,具体技术方案如下:一种基于C4.5决策树算法的分布式拒绝服务攻击检测方法,是软件定义网络环境下对分布式拒绝服务攻击的一种检测方法,所述方法包括以下步骤:S1:通过OpenFlow协议收集由OpenFlow交换机返回的流表信息;S2:提取所述流表信息中与DDoS攻击相关的字段信息并转化成可分析网络流量分布变化的参数作为属性,形成一个决策树的训练集;S3:使用C4.5决策树算法对网络流量进行分类,并根据训练集数据分类别计算类别信息熵;S4:依次计算属性的条件熵、信息的增益、属性的信息熵以及属性的信息增益率;S5:选择信息增益率最大的属性当做决策树的根节点,然后在剩余属性中选取信息增益率最大的属性作为分叉节点,并重复步骤S3和S4形成决策树;S6:使用步骤S5中形成的决策树对新的网络流量进行分类操作,检测是否存在DDoS攻击。本专利技术的进一步改进在于,所述属性包括流包数均值ANPPF、对流比PCF、端口增速PGS和源IP增速SGS,所述属性的条件熵用于表示各种类别在某种属性的条件下出现的不确定之和,通过式计算,其中Ax代表了每一个属性,按属性将训练集划分为D1,D2,…,Dn的n个子集,n是属性Ax下的不同情况数目,|Di|为样本总数|D|下每一种情况的样本数,Info(Di)是每个子集的信息熵。本专利技术的进一步改进在于,所述流包数均值ANPPF用于判断是否存在不合法IP攻击;所述对流比PCF可以用来表示在攻击期受害者回复的数据包无法达到僵尸网络时的交互状态;所述端口增速PGS和源IP增速SGS在网络收到攻击期间会发生明显变化,可用于判断是否存在不合法攻击。本专利技术的进一步改进在于,所述网络流量包括正常流量和攻击流量,且两者的所述类别信息熵通过式计算得到。本专利技术的进一步改进在于,所述属性的信息熵用于表示所述属性是否存在分裂的情况,通过式计算得到;所述信息的增益通过式Gain(Ax)=Info(D)-Info(Ax)计算得到;所述信息增益率是对原来单纯使用信息增益的一种补充,通过式IGR(Ax)=Gain(Ax)/H(Ax)计算得到。本专利技术的基于C4.5决策树算法的分布式拒绝服务攻击检测方法,首先通过OpenFlow协议得到OpenFlow交换机返回的流表信息,随后提取流表信息中的与DDoS攻击相关的并将其转化成可分析网络流量分布变化的参数作为属性,使得属性形成决策树的训练集;然后基于C4.5决策树算法分类网络流量的类别,并分别计算网络流量的类别信息熵、属性的条件熵、流表信息的增益、属性的信息上和信息增益率从而得到决策树,最后通过决策树来对新的数据集进行分类,达到检测是否存在DDoS攻击;与现有技术相比,本专利技术可更准确地检测到网络中是否存在DDoS攻击,并且检测的准确率更精准。附图说明图1为本专利技术所述攻击检测方法的流程框图;图2为本专利技术软件定义网络的框架示意图;图3为通过本专利技术所述攻击检测方法的流程示意图。具体实施方式为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例,附图中给出了本专利技术的较佳实施例。本专利技术可以以许多不同的形式来实现,并不限于本文所描述的实施例,相反地,提供这些实施例的目的是使对本专利技术的公开内容的理解更加透彻全面。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。参阅图1,在本专利技术实施例中,提供了一种基于C4.5决策树算法的分布式拒绝服务攻击检测方法,是软件定义网络环境下对分布式拒绝服务攻击的一种检测方法;参阅图2,所述软件定义网络环境包括网络应用、软件定义网络控制器和数据平面,网络应用通过软件定义网络控制其与数据平面进行数据交互,软件定义网络控制器与网络应用和数据平面之间分别通过特定的接口连接,此外,在数据平面内包括若干节点设备;参阅图3,所述方法首先对收集的流表进行流量统计,根据流表统计提取相应的特征,根据特征得到检测的依据,然后基于检测的依据来对后续新的流量进行新的分类,并得到最后的分类结果;具体的,方法的具体描述如下:S1:通过OpenFlow协议收集由OpenFlow交换机返回的流表信息;在本专利技术中,通过OpenFlow协议,由软件定义网络控制器定期地向所有软件定义网络交换机发送流表获取报文来获得OpenFlow交换机返回的流表信息,具体的,设置时间间隔为5秒,与控制器设置的近期未命中流删除时间保持一致,这样可以更加全面、完整地收集流表信息。S2:提取所述流表信息中与DDoS攻击相关的字段信息并转化成可分析网络流量分布变化的参数作为属性,形成一个决策树的训练集;一般为了形成决策树,首先需要形成一个训练集,在本专利技术中,通过OpenFlow协议收集得到OpenFl本文档来自技高网
...
基于C4.5决策树算法的分布式拒绝服务攻击检测方法

【技术保护点】
1.基于C4.5决策树算法的分布式拒绝服务攻击检测方法,是软件定义网络环境下对分布式拒绝服务攻击的一种检测方法,其特征在于,所述方法包括以下步骤:S1:通过OpenFlow协议收集由OpenFlow交换机返回的流表信息;S2:提取所述流表信息中与DDoS攻击相关的字段信息并转化成可分析网络流量分布变化的参数作为属性,形成一个决策树的训练集;S3:使用C4.5决策树算法对网络流量进行分类,并根据训练集数据分类别计算类别信息熵;S4:依次计算属性的条件熵、信息的增益、属性的信息熵以及属性的信息增益率;S5:选择信息增益率最大的属性当做决策树的根节点,然后在剩余属性中选取信息增益率最大的属性作为分叉节点,并重复步骤S3和S4形成决策树;S6:使用步骤S5中形成的决策树对新的网络流量进行分类操作,检测是否存在DDoS攻击。

【技术特征摘要】
1.基于C4.5决策树算法的分布式拒绝服务攻击检测方法,是软件定义网络环境下对分布式拒绝服务攻击的一种检测方法,其特征在于,所述方法包括以下步骤:S1:通过OpenFlow协议收集由OpenFlow交换机返回的流表信息;S2:提取所述流表信息中与DDoS攻击相关的字段信息并转化成可分析网络流量分布变化的参数作为属性,形成一个决策树的训练集;S3:使用C4.5决策树算法对网络流量进行分类,并根据训练集数据分类别计算类别信息熵;S4:依次计算属性的条件熵、信息的增益、属性的信息熵以及属性的信息增益率;S5:选择信息增益率最大的属性当做决策树的根节点,然后在剩余属性中选取信息增益率最大的属性作为分叉节点,并重复步骤S3和S4形成决策树;S6:使用步骤S5中形成的决策树对新的网络流量进行分类操作,检测是否存在DDoS攻击。2.根据权利要求1所述的基于C4.5决策树算法的分布式拒绝服务攻击检测方法,其特征在于,所述属性包括流包数均值ANPPF、对流比PCF、端口增速PGS和源IP增速SGS,所述属性的条件熵用于表示各种类别在某种属性的条件下出现的不确定之和,通过式计算,其中Ax代表了每一个属性,...

【专利技术属性】
技术研发人员:刘俊杰王珺王梦林
申请(专利权)人:南京邮电大学
类型:发明
国别省市:江苏,32

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

1