没有合适的资源?快使用搜索试试~ 我知道了~
SDN中基于监督学习的抗DDoS攻击方法
工程科学与技术,国际期刊35(2022)101176基于监督学习技术宋王a,胡亚鹏,胡安·费尔南多·巴拉雷佐a,卡丽娜·戈麦斯·查韦斯a,阿克拉姆·胡拉尼a,Sithamparanathan Kandeepana,Muhammad Rizwan Asgharb,Giovanni RussellobaRMIT大学,墨尔本,VIC 3000,澳大利亚bCyber Security Foundry,The University of Auckland,Auckland 1010,New Zealand阿提奇莱因福奥文章历史记录:收到2021年2022年4月15日修订2022年5月11日接受2022年6月3日在线发布保留字:机器学习软件定义网络(SDN)分布式拒绝服务(DDoS)OpenFlow网络安全A B S T R A C T为了方便灵活地管理大型网络,软件定义网络(SDN)是一种强大的候选技术,它提供了集中化和可编程的接口,以便以动态和无缝的方式做出复杂的决策。一方面,个人和企业有机会根据他们在SDN中的需求构建和改进服务和应用程序。另一方面,SDN带来了一系列新的隐私和安全威胁,例如分布式拒绝服务(DDoS)攻击。为了检测和缓解潜在的威胁,机器学习(ML)是一种有效的方法,可以快速响应异常。在本文中,我们分析和比较了使用不同ML技术检测SDN中DDoS攻击的性能,其中评估了实验数据集和自生成的流量数据此外,我们提出了一个简单的监督学习(SL)模型来检测洪水DDoS攻击的SDN控制器通过流量的波动。通过将测试轮划分为多个部分,每个时隙内的统计数据反映了网络行为的变化这种我们通过模拟和实际测试平台上的测量来我们的主要目标是找到一个轻量级的SL模型来检测DDoS攻击的数据和特征,可以很容易地获得。我们的研究结果表明,SL是能够检测DDoS攻击与一个单一的功能。分析SL算法的性能的影响的大小的训练集和使用的参数。使用相同SL模型的预测准确度可能完全不同,这取决于训练集。©2022 Karabuk University. Elsevier B.V.的出版服务。这是CCBY-NC-ND许可证(http://creativecommons.org/licenses/by-nc-nd/4.0/)。1. 介绍软件定义网络(Software Defined Networking,SDN)以其新颖的体系结构,为快速增长的网络管理提供了一种潜在的解决方案,受到了广泛的关注。解耦的控制和数据平面、集中式控制器和可编程性最大限度地提高了管理员的灵活性和适应性。作为一个三层模型,应用层位于顶层,准备管理员定义的所有规则和策略,这些规则可以通过SDN控制器动态更新。应用层的修改可能会改变行为整个网络。得益于开源平台,应用层的开发不再仅仅依赖于供应商[1]。摆脱许可证限制,SDN允许管理员-*通讯作者。电子邮件地址:s3478896@student.rmit.edu.au(新加坡)Wang)。开发他们自己的应用程序来定制通用硬件上的网络管理。然而,控制层是模型的大脑,它将规则从应用层转换为面向底层数据层的可读消息,并从数据层收集反馈回应用层。在控制层上做出决定之后,由数据层实现实现SDN中的数据层没有智能,它只是遵循来自控制平面的指令[2]。集中控制允许网络运营商自动管理大规模网络的安全策略。SDN简化了网络的构建、允许对网络的访问而不暴露底层的细节。通过更新SDN应用程序可以轻松增强网络功能。因此,在网络中,简单的硬件设备就足够了。除了具有成本效益外,基于SDN的设备几乎没有与兼容性相关的问题[3]。然而,SDN也因其创新的架构而带来了新的安全威胁,例如cen,https://doi.org/10.1016/j.jestch.2022.1011762215-0986/©2022 Karabuk University.出版社:Elsevier B.V.这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。可在ScienceDirect上获得目录列表工程科学与技术国际期刊杂志主页:www.elsevier.com/locate/jestchS. Wang,Juan Fernando Balarezo,Karina Gomez Chavez等.工程科学与技术,国际期刊35(2022)1011762tral控制器,它是一把双刃剑;虽然用一个控制器管理网络更容易,但这可能导致单点故障,特别是在分布式拒绝服务(DDoS)攻击下[4]。SDN的全新框架意味着传统网络中现有的网络威胁防御机制需要更新,以保护这个现代平台。然而,SDN尚未被广泛证明是下一代网络[5,6]的可靠安全解决方案。DDoS攻击是一种典型的威胁,攻击者通常会破坏充当机器人的多个设备,并同步虚假流量或请求,以耗尽系统与其他类型的网络攻击不同,受害者不会丢失任何敏感信息。相反,影响是攻击期间的停用体验。DDoS攻击相对容易实施,但难以追踪,例如,因为IP欺骗[7]。通常,DDoS攻击可以分为三种类型:(i)应用层攻击,(ii)协议攻击和(iii)卷攻击。为了发起应用层攻击,攻击者集中于消耗服务器的带宽和计算资源,使得其无法支持服务。为了发起协议攻击,攻击者通过利用协议的过程来耗尽目标的可用状态,例如,TCP的三路握手过程。为了触发容量攻击,大量的恶意流量被涌向目标,以耗尽可用资源,例如带宽和CPU利用率[8]。SDN数据平面中的DDoS攻击与传统网络类似,可能会影响交换机的处理能力或交换机之间的链路。然而,当SDN的应用平面或控制平面受到DDoS攻击时,整个网络都陷入困境,因为这两个平面定义和执行网络中换句话说,它们是入侵者中断网络的高利润此外,这三个平面之间的北向和南向接口也是脆弱的,因为SDN平面之间的交互是通过网络发送的,而不是在传统网络中的同一在本文中,我们只关注容量DDoS攻击,因为它是最流行的DDoS攻击[9],并且由于连接网络设备的快速增长,它将成为一个长期的威胁由于SDN中的行为是一个新的研究领域,研究这种行为的机器学习(ML)可能是早期检测的一种尝试[10],因为机器的反应通常比人类快。ML是一种允许机器通过训练、数据特征或试错方法做出决策的技术。这是帮助网络运营商认识当前形势的一个辅助途径。ML已经被广泛应用于从医学分析到数据挖掘的各个领域。现有的解决方案通常需要流量的多个特征,由于可访问性或授权,很难在真实网络中收集这种数据集。而且大多数模型都是通过实验数据集或仿真来验证的,真正的试验台验证很少。在本文中,我们采用监督学习(SL)来检测SDN中的DDoS攻击。由于SL可以通过训练从过去的经验中学习,因此在DDoS攻击检测中可以更具体。我们验证和比较不同的SL算法的性能,没有多个功能从训练集中挑选。理论上,单个阈值可以检测到洪水DDoS攻击,但是很难区分合法的突发流量和攻击流量。为了提高准确性,一种方法是在连续多次达到阈值后定义DDoS攻击,这允许突发流量,但延迟检测。如果我们能够在设置洪水DDoS攻击定义之前研究/分析网络流量行为,我们可能会获得更好的准确性和早期检测。因此,使用单一的功能是值得一试的,我们决定只采用数据包/字节数的趋势作为泛洪DDoS攻击检测的参考。这种数据集是与需要多个特征的其他模型相比,更容易获得并且在训练阶段消耗更少的时间和资源。由于DDoS攻击检测可以通过一个基本的特征来实现,它解决了监督训练难以收集高质量训练集的问题。这篇文章的贡献是:设计并实现了一个基于SL的DDoS攻击检测SDN应用。它使用一系列SL技术和各种流量模型在真实和仿真SDN网络上进行测试。使用1999年DARPA和InSDN数据集对所提出的模型进行了评估和分析。性能,特别是准确性,每一个SL技术进行了分析和比较,提出一个概述的输出。此外,SL分类器的初始化时间和预测进行了研究,以显示部署SL的开销测试结果表明:(i)数据准备、SL模型训练和实时预测都可以在单个SDN控制器上实现;(ii)SL模型能够检测具有单个特征的洪泛DDoS攻击;(iii)训练集中异常样本与正常样本的比例对预测的影响有限;(iv)训练中更多的数据和特征通常会导致更好的性能,但当冗余特征混淆SL算法时,可能会发生过拟合最后,通过实际测试平台的实现表明,在物理SDN网络上进行实时SL检测是可行的。本文的其余部分组织如下。第二节回顾了相关的工作。第3节描述了所提出的系统模型和训练集的生成。使用实验数据集和自举数据的测试结果分别在第4节和第5节中进行了解释和比较。讨论和未来方向见第6节。最后,第7节结束本文。2. 相关工作用于评估ML算法的主要指标可以计算为真阳性(TP)、真阴性(TN)、假阳性(FP)和假阴性(FN)。在我们的测试中,阳性是指正常状态,阴性是指攻击状态。这些指标用于比较每种ML技术的性能,计算以下指标[25]:准确度(A)是ML算法做出的正确预测的比率,包括成功的肯定和否定决策。精度(P)被定义为所有正常状态预测中针对正常网络状态做出的正确决策的比率。召回率(R)是正常网络状态下的正确决策在所有正常网络状态下的比率。● F-Measure(F)衡量查准率和查全率的质量SL是一种典型的ML类型,在以前的几项工作中已被部署用于DDoS攻击检测,它使用标记数据训练预测器,然后使用该预测器进行决策。SL算法的性能可以通过已知的测试样本进行验证,以便网络管理员在网络中部署预测器之前从验证结果中获得信心。当应用于分类时,SL预测器计算每个类别的概率,并选择具有最高概率的类别。本节分析SL应用程序的文献,包括DDoS攻击检测,并确定差距。现有工作和我们提出的模型的总结在表1中给出,并在下面解释。●●●●●●●S. Wang,Juan Fernando Balarezo,Karina Gomez Chavez等.工程科学与技术,国际期刊35(2022)1011763表1使用SL保护SDN免受DDoS攻击的现有算法溶液SL技术实验数据集特征言论Meti等人[11]Zekri等人NB,SVM,关于NNDTMininet模拟虚拟环境来自TCP流量的实时每秒连接的主机数协议和服务类型、标志、TTL和源/支持向量机可以作为入侵检测系统部署在SDN中,对DDoS攻击的[12个]Tuan等人k最近的vm重播一个公共使用python脚本和hping3的流量CAIDA 2007和目的地IP每个IP的端口数、每个IP的端口熵攻击检测和0.6 s检测时间一个轻量级的对策,[13个国家]Sahoo等人邻居(KNN),DT和NN支持向量机,KNN数据集以及真实测试平台训练模型,自生业务NSL-KDD和IP和每个IP从实验数据集中提取特征自适应监控窗口时间,准确率可达98%基于特征[14个]Bakker等人和随机森林DA,SVM,实 验 数 据 集 并 在Mininet中运行模型部署专用数据库[15]ISCX数据未提及的细节由源和目标发送的字节数提取和参数优化。准确率几乎达到99%SL可以在SDN中部署为[16个]Polat等人KNN,NB,和DTSVM,KNN,数据平面中的ML设备(DPAE)对流量虚拟环境自生源发送的数据包数、流持续时间、字节数除以源和目的地发送的数据包数包括数据包分类器;然而,很难挑选更好的检测使用特征选择过滤关键点[17个]Huyu等人NN和NBApache的vm尝试数据集业务的所述个体hping3DDoS_DNS_AMPL,在控制平面源/目的IP、源/目的端口训练前的特征可以提高检测精度在外部部署监控系统[18个国家]Ahmed等火花DPMMApache Spark系统运行DPMM以DDoS_CHARGENRADB_DDoS数据集[20]编号、协议、数据包长度、字节数和时间戳传输的数据包数量,源被监控的网络可以在大量的机器上实现数据分析DDoS攻击检测准确率[19个]Dong等人KNN、NB和从数据集Mininet模拟自生和目标字节,以及连接持续时间流量长度、流量持续时间、流量大小和流量几乎100%,连接数小于300在[21日]SVM业务的所述个体率邻居改善原来穆罕默德NB4个ISP,4个不同的hping3NSL-KDD共有25个功能,包括协议和KNN模型仿真结果表明,该算法性能良好使用建议的等人[22日]Niyaz等人软麦克斯SDN控制器在物理试验台在自生持续时间34个功能来自TCP流,20个功能来自该模型在ISP中取得了令人鼓舞的结果个别DDoS攻击检测[23日]NN,以及实体home业务的所述个体UDP流和来自UDP流的14个功能准确率可达95%以上,Wang等人堆叠自编码SVM无线网络尝试数据集tcpdumpKDD 1999,KDD包括协议和标志在内的正常和攻击分类,它达到99%以上的准确率准确度随[24日]提出SVM,GLM,物理试验台Mininet和RealCUP 1999DARPA、InSDN和1.功能:数量的波动选择用于对流量进行多项技术在99%模型NB、DA、FNN、DT、KNN和BT测试平台自生业务一段时间内的Packet_In消息仿真准确率达90%以上,实时检测准确率达90%以上。2.1. SL在DDoS攻击检测中的性能Meti et al.[11]准备了一个仅由真实网络中的TCP流量组成的数据集,并采用两个特征,即秒内连接设备的数量和峰值/非峰值时间指标,来训练SL分类器,这些分类器是朴素贝叶斯(NB),支持向量机(SVM)和神经网络(NN),具有两个标签:正常和异常。在准确率、精确率和召回率方面的比较结果表明,神经网络的准确率和精确率最高,分别达到80%和100%,而支持向量机的召回率为80%,高于其他两种算法。类似地, Zekri et al.[12]建议使用决策树(DT)算法来检测云网络中的DDoS攻击。DT的分裂准则选择增益比最大的属性,然后基于属性将数据集划分为子集重复该过程,直到不能生成进一步的分支,然后从训练集学习的DT准备好对传入业务进行分类。将流量分为四类,并通过仿真中的自生流量对模型进行了验证。经测试,正确分类率在98%以上,决策时间仅为0.58sTuan等人[13]计算熵和对数值,以检测TCP-SYN洪水和TCP-SYN洪水攻击。SDN,分别。KNN用于从当前熵或对数点找到K个最近的欧氏距离点,以确定网络是否受到DDoS攻击。利用CAIDA 2007数据集和Bonesi软件对该模型进行了验证,当K = 9时,模型的准确率达到99%以上Sahoo等人[14]提出了一种改进的SVM模型,该模型采用核主成分分析(KPCA)和遗传算法(GA)来检测DDoS攻击。该模型通过SDN控制器周期性地获取交换机的流量统计信息,然后利用核主元分析提取基本特征,利用遗传算法调整支持向量机的参数,实现最优预测。通过对公开数据集的测试和模拟,该模型的准确率接近99%.由于早期检测正在成为缓解技术的基本特征之一,SL分类器的训练和预测的持续时间进行了研究。Bakker等人[16]比较了七个分类器的初始化时间和准确性,以查看在SDN中部署ML用于DDoS攻击检测从实验数据集中选取了与单向发送数据量和连接持续时间有关的特征对分类器进行训练和验证。并进行了30折交叉验证,以衡量每个分类器的性能。结果表明,SVM需要更多的时间进行初始化S. Wang,Juan Fernando Balarezo,Karina Gomez Chavez等.工程科学与技术,国际期刊35(2022)1011764与其它算法相比,它的检测时间最短,准确率达到93%以上,优于其它算法。Polat等人[17]还比较了四种ML技术在有和没有特征选择的DDoS攻击检测中的性能为了从12个特征中获得最相关的特征进行检测,在自生成的数据集上实现了基于过滤器、基于包装器和基于嵌入的特征选择方法。在特征选择之后,每个ML算法中所选择的关键特征的数量从6到10不等,并且当模型由这些关键特征训练而不是由所有12个特征训练性能最好的算法是使用基于包装器的选择的KNN,当用6个关键特征训练时,准确率为98.3%,当用12个特征训练时,原始准确率为95.67%2.2. 用于DDoS攻击检测的在网络监控过程中,Huyu等人。[18]建议将实时流量数据传递到离线学习管道,以进行模型构建和优化。数据通过路由器收集并发送到管道进行数据转换和特征工程。通过这种离线的方式,该模型是从实时的流量变化中研究内在的特征,并且只有改进的版本,即,更好的精度,这是验证可以应用到模型更新。由于SDN的灵活性,它可以与现有模型相结合,以保护网络免受DDoS攻击。Ahmed等人。[19]介绍了一种基于DNS的Dirichlet进程混合模型(DPMM)聚类方法,用于基于DNS查询的DDoS攻击检测。该模型中的两个主要单元流量统计管理器通过SDN控制器定期从数据平面收集流量特征,例如连接的持续时间,并且这些特征被发送到学习器组件以分析和检测可疑流量。流量分类几乎是100%,然而,包括正常流量分类在内的总体准确率低于70%。这意味着会有许多不正确的预测。Dong等人。[21]假设流是一个向量,由流长度、持续时间、大小和速率的值组成。两个流之间的距离被定义为流的每个特征之间的差的平方根。为了改进KNN模型,引入了一个权值来反映相邻流的重要性,越近的相邻流权值越大,对预测的影响越大ML组件的位置可以位于远程网络中而不是控制器上的应用程序Mohammed等人[22]建立一个由四个ISP通过Internet互连的环境。他们认为基于NB分类的ML服务器正在该网络之外运行一个新的传入数据包将被转发到控制器进行特征提取。然后,它被发送到ML服务器进行分析。当控制器从ML服务器得到异常的预测结果时,它将通知源网络中的控制器阻止这些请求,从而在网络入口处阻止攻击最初,ML服务器从流量的25个特征中学习。由于对实际流量的处理性能较差,但是,正常状态下的准确率不到70%,异常状态下的准确率为92%Niyaz等人。[23]建议在控制器上运行三个模块,即流量收集器和流量分析器(TCFI),特征提取器(FE)和流量分类器(TC),除了对新流请求的响应之外,TCFI还记录FE的分组报头FE从数据包的特征中计算平均值和熵值,并调用TC将流量分类为八种类型之一,包括七种DDoS攻击。从测试结果来看,该模型对单个DDoS攻击类别的准确率超过95%,而对两个类别的准确率达到99%以上只有正常和攻击状态的场景。然而,由于该模型必须处理每个数据包的特性,即使在正常状态下,控制器上的系统计算消耗也非常高。Wang等人。[24]在sFlow工具集的帮助下,将SVM纳入SDN的威胁检测中。该模型通过控制器从交换机收集流量统计数据,并提取行为特征,如协议类型,用于SVM训练。执行特征分析以学习已知攻击的行为特征。通过比较正常行为和恶意行为,利用SVM检测攻击,测试结果表明平均准确率在97%以上3. 基于SL技术的请注意,新SL算法的开发超出了本文的范围我们专注于现有SL技术的培训和实施[26],以检测SDN中的DDoS攻击我们在以前的工作中使用动态阈值进行检测[27,28],在这里我们实现SL以通过流的波动进行预测具体而言,调查的DDoS攻击针对SDN控制器。3.1. 系统架构图1.a和图1.b分别示出了SDN中使用SL技术进行离线训练和DDoS攻击检测的网络和系统架构。网络架构由执行数据平面操作的SDN交换机和执行控制平面操作的SDN控制器组成。在SDN控制器的顶部,运行以下SDN应用程序:培训和监测应用程序(TMA)。它通过控制器获得实时流量统计数据,并将其转换为ML应用程序在检测阶段所需的格式。Fig. 1.使用经过训练的ML应用程序进行DDoS训练和实时检测的SDN架构。●S. Wang,Juan Fernando Balarezo,Karina Gomez Chavez等.工程科学与技术,国际期刊35(2022)1011765ML应用程序(MLA)。MLA是一个基于Matlab的实现。它从TMA接收数据用于训练和检测目的。它还负责使用特定SL算法进行DDoS攻击检测。MLA通过Matlab engine API for python集成在SDN应用程序中,它在网络初始化期间启动以准备检测器,并在实时检测中做出决策。网络应用程序(NA)。NA是用于在SDN交换机中生成流规则它能够根据MLA的决策实时更新流条目。NA还接收MLA的输出并触发所需的操作,例如DDoS攻击缓解。3.2. 使用SL技术的背景在各种SL算法中,我们选择了八种常见的技术,它们在我们的测试中属于不同的SL类别[29],它们包括:判别分析,DT,广义线性模型,K-最近邻,NB,前馈神经网络,SVM和Bagging树。1. 判别分析(DA):根据特征的组合将数据分类为两个或多个已知组[30]。此外,DA也用于特征提取[31]。2. 决策树(DT):是一种树状模型,其决策规则类似于编程语言中的if-else结构。通过训练,研究每个事件的概率,以便根据每个节点上的概率通过树对数据进行分类[32]。3. 广义线性模型(GLM):用于涵盖具有任意分布的情况,这意味着模型的响应可能不总是正态分布。Logistic回归是一种典型的GLM,它通过sigmoid函数将数据分配到两个离散组[33]。4. K-Nearest Neighbor(KNN):是最简单的ML算法之一,它根据附近的邻居样本数对样本进行分类。有各种各样的距离度量,如欧几里得(连续变量)和汉明(离散变量)[34]。5. 朴素贝叶斯(NB):是一种概率分类器,它根据每个特征给出的总体概率做出决策[35]。对于DDoS攻击检测中的连续值,在其分类中假设高斯分布。6. 前馈神经网络(FNN):是一种简单的神经网络,它以生物神经系统的方式处理数据,通过分析神经网络的隐藏层做出决策[36]。7. 支持向量机(SVM):旨在寻找一个或多个最佳超平面将所有样本从一个类分离到其他类。由于大多数分类无法通过线性解决方案实现,因此SVM还能够生成具有核函数的非线性分类器[37]。8. Bagging Tree(BT):使用Bagging算法从原始训练集中训练几棵弱树,并根据这些树的输出进行决策[38]。BT和DT之间的区别在于BT对多个DT进行平均,并减少DT中不稳定程序的方差。3.3. 工序所提出的架构在仿真和真实测试床中使用图2所示的网络拓扑进行了验证。有四个聚合器主机和一个服务器连接到三个SDN交换机。NA、TMA和MLA在Ryu控制器上运行,该控制器为了进行模拟,我们在运行Ubuntu的标准笔记本电脑16.04操作系统,配备Intel i5 CPU和8G RAM。对于实际实现,交换机是Zodiac-FX交换机[28],它支持OpenFlow[39]协议,聚合器/服务器是运行Debian OS的Raspberry Pi,这是一个基于Linux的系统。聚合器使用名为iperf的测试工具向服务器生成随机和随机TCP/UDP流量,以模拟SDN中的行为。四种流量类别解释如下:定期UDP流量:聚合器每10秒传输100字节UDP数据包。此流量模型通常用作服务器和主机之间的心跳通信,以确保主机仍然处于活动状态。定期TCP流量。聚合器每60秒使用最大可用带宽传输TCP流量。当主机需要定期从远端检索数据(例如从医疗保健设备读取数据)时,通常采用此流量模型。随机UDP流量。聚合器在60-120秒之间的窗口中随机传输100字节的UDP数据包。这种流量模型通常发生在主机访问网站时的DNS查询上。随机TCP流量。聚合器使用最大可用带宽以随机传输间隔传输TCP流量这种流量模型通常发生在主机从服务器下载文件我们想要模拟以任意方式生成流量的场景,周期性和事件触发的消息不时出现,如在物联网(IoT)网络中[40]。在正常情况下,每个聚合器向服务器发送上述流量的一种在攻击场景下,聚合器1和聚合器3分别向服务器发送周期性(TCP和UDP)和随机(TCP和UDP)流量而另外两个聚合器充当受损设备,它们使用iperf快速生成目的地不存在的假UDP数据包,使得请求在短时间内触发大量向控制器发送的Packet_In消息Packet_In消息在OpenFlow协议中定义,用于数据平面和控制平面之间的交互,它通常由不匹配的分组生成请注意,攻击场景包含正常和恶意流量,而不仅仅是攻击流量。一旦控制器被这种消息淹没,它就无法处理合法的请求。这导致了对交换机的响应的额外延迟,甚至由于带宽的饱和以及计算资源的短缺当同一聚合器下的多个设备被感染时,可能会发生这种情况,并且所有设备都试图耗尽网络资源。在训练阶段,TMA收集Packet_In的计数器消息通过控制器在正常和攻击场景中准备训练集。控制器保持计数的数量- ber的Packet_In消息每主机每固定的时间(我们称之为这个持续时间的时隙),计数器存储在一个列表中。列表在每个时隙之后都有一个新的记录,并且一旦列表具有足够的记录,控制器将这里触发打印操作的记录数是由用户预先定义的,在我们的测试中是30这个打印的列表是一个样本,稍后将用于训练SL模型打印后,列表被重置为空,并准备存储计数器以生成下一个样本。创建样本的整个持续时间称为测试回合。控制器重复上述步骤以在每个测试轮生成新样本,并且每个样本包含Packet_In消息的变化。这类似于真实网络中的峰时/非峰时监控,其中,当时隙为1h时,24 h内的网络使用的波动可以反映在具有24条记录的列表既然我们●●●●●●S. Wang,Juan Fernando Balarezo,Karina Gomez Chavez等.工程科学与技术,国际期刊35(2022)1011766X电子游戏¼¼图二. 用于mininet仿真器结果生成的网络拓扑。可以在测试中故意插入攻击流量,流量的类型,合法或恶意,都在控制之下。因此,我们知道如何在数据准备中标记样本,无论是正常还是攻击。在获得一组正常和攻击样本后,我们删除重复记录,并从正常和攻击两个类别中随机挑选样本,直到我们在训练集中有足够的样本。在样本选择过程中,既考虑了训练集的大小,又考虑了攻击样本占样本总数的比例。一旦训练集准备好了,它就被发送到MLA进行预测训练和评估。这些标记的样本分为两部分,一部分用于训练(80%),另一部分用于验证(20%)。在预测器被80%的样本训练之后,它使用剩余的20%的样本来验证其预测是否正确。MLA将创建一个混淆矩阵,这是一个描述预测器性能的表格,从这些预测中,以便管理员知道该预测器是否值得信任。如果结果是令人满意的,这个预测器可以部署在网络中进行实时检测。离线MLA训练的目的是允许SL模型从数据集中学习网络在正常或攻击场景中的趋势和动态训练集中的单个样本(D)记录用户设备(k)每固定持续时间(t)的连续行为n次。所选择的网络统计数据是每个MAC地址计数的Packet_In消息的数量(m_In)(m= 1; 2;.k)在如(1)所示的时隙(t)中:不mi t数据包输入t11在(2)中,正常(Dn)和攻击(Da)样本被标记有类ID(标签),该类ID(标签)指定用于训练的正常(类ID否)或攻击(类ID是)的网络状态实时样本(Dr)的类ID为空,因为这需要由SL模型预测。直径:m1;m2;m3;;mn;no]也就是说,只要业务在训练集中被分类为正常,预测器就能够将这种突然的负担与攻击业务区分开。与基于阈值的检测相比,我们提出的方法允许突发流量,如果它是在训练过程中学习。培训结束后,MLA已准备好进行DDoS攻击检测。在实时检测阶段,与训练样本准备阶段类似,TMA每t次通过控制器收集统计数据,并将此值存储到列表中,当列表中有足够的记录时,我们的测试中为30,TMA将此列表发送给MLA进行DDoS攻击检测。这里的列表与训练样本的格式相同。然后,MLA决定网络是否处于正常或攻击状态基于先前的训练。默认情况下,它提供概率范围为0到1的决策正常情况和攻击情况分别期望该值为06x 0: 5和0: 56x6 1。<值得注意的是,这两个范围是默认设置的,它们可以修改,即0-mal和0.7-1的攻击,根据验证结果,以获得更好的预测性能。为了评估每种SL技术,我们将在测试中使用默认范围。MLA通知NA预测,以便NA可以在网络状态异常时运行对策来阻止DDoS攻击。到目前为止,离线训练阶段与检测阶段是分开的,因为实时流量不能100%准确地分类,这可能在训练中误导MLA。4. 使用实验数据集进行在SDN测试平台中实现之前,我们首先使用一些实验数据集评估每种SL技术的准确性:1999 DARPA [41],DDoS攻击SDN数据集(DASD)[42]和InSDN [43]。1999 DARPA通过在模拟网络中对入侵检测系统的评估收集到的数据,它提供了攻击的时间段,以及攻击的类型。DARPA中的数据以原始格式记录在网络协议分析器Wire-shark中,并给出每个数据包的时间戳DASD是从Mininet收集的,它包含Da¼ ½m1;m2;m3;. . ;mn;yes]Dr½m1;m2;m3;. . ;mn;-]ð2Þ良性流量和DDoS攻击流量,如UDP泛洪,在这个数据集中有22个特征DASD中的流量分为两类:DDoS攻击和正常。InSDN也是基于SDN我们测试中的训练集示例如表2所示。每列(列2至7)代表一个样本,3个正常样本(列2至4)和3个攻击样本(列5至7)。每个样本由30个连续时隙(TS 1至TS 30)中的计数器和指示网络状态的标签我们可以看到,正常场景下的样本(标记为这是为了数据集,它包含对虚拟环境中的控制和数据平面的攻击。与DASD相比,InSDN记录了83个特征,并对多种攻击进行了分类,包括DDoS攻击和探测攻击。此外,由于它模拟了针对SDN控制器的洪泛攻击,并且Packet_In消息由Wireshark捕获,因此我们稍后将使用此数据集来评估我们的模型。S. Wang,Juan Fernando Balarezo,Karina Gomez Chavez等.工程科学与技术,国际期刊35(2022)1011767-表2正常和攻击训练样本的示例。在一个时隙中接收的Packet_In消息数TS1969100599339845TS2953980956455TS3975985986655TS4912997100355644TS5986989980513664TS693495498264456TS79891000992554TS8964990972555TS9933101399354130TS1010021024101041122518TS1193798910095341625TS12100193496811545TS131035998984464TS141008982958646TS15965101599156642TS169779921007511865TS171000998100864346TS18969959976464TS19968995967646TS2097098196255643TS21979996965512785TS2291599698564455TS239959851015555TS24948981973455TS25964970101064198TS269809659656429450TS279419749742337634TS289571013101941446TS29980990970464TS309509321001546标签是的是的是的没有没有没有在 SDN 实 施 之 前 , 我 们 使 用 这 三 个 数 据 集 来 评 估 模 型 在DoS/DDoS攻击检测中的通过这些数据集中可用的功能完成验证在这里,我们只关心数据集中的因此,我们手动从数据集中过滤相关样本我们从一个数据集中随机抽取了三组训练集,每组包含5%、25%和50%的攻击样本,每组10组数据,每组32,000个样本。由于DASD和InSDN具有如此多的特征,特征约简被应用于研究在训练模型时仅考虑关键特征时的性能测量每个特征与分类器之间的相关值q,将强正相关或负相关特征视为关键特征。q的选择是在特征数量和准确度度量之间的权衡,因为q的绝对值越大,通常意味着特征越少,准确度越低。只要能够满足用户对DDoS攻击检测的需求,通过少量特征训练预测器是首选,因为它在处理时节省了系统资源,并简化了数据准备。在DARPA中,由于每个样本都是基于数据包的,因此我们选择四个默认特性,分别是src_ip、dst_ip、protocol_type和长度,在Wireshark中比较其与训练集中各种大小的异常数据包的性能。从表3中可以发现,当训练集中有25%的攻击包GLM、DT、KNN和BT在不考虑攻击样本大小的情况下具有稳定的结果,然而对于SVM、NB、DA和FNN,尤其是NB和FNN,在训练集中5%的攻击样本都不足以区分DoS攻击和正常数据所有四个指标都在图3中给出,因为我们将把这个结果与我们提出的模型进行比较。在第5节。从图中可以看出,DA遭受假警报,SVM的检测率不可接受。请注意,图3是由50%攻击样本而不是25%的训练集生成的,尽管25%的攻击样本具有稍好的准确性。这是由于本文中其他结果的一致性。此外,在训练中使用25%和50%的异常记录之间的差异可以忽略不计。在DASD中,我们发现了三个关键特征,即pktcount 、byte-count和protocol,它们的q值都大于或小于0.25。详细比较如表4所示,总体差异列列出了训练集中具有不同大小的攻击样本除了准确性,DASD的其他指标使用所有功能和50%表3使用1999年DARPA的精确度。ML技术5%攻击25%攻击50%攻击差异SVM百分之五十56.17%百分之四十八点三八7.79%GLM百分之九十九点五六百分之九十九点六七百分之九十九点六七0.11%NB75.26%百分之九十七点九五百分之九十七点四二22.69%DA百分之八十点九八85.46%86.42%5.44%FNN69.19%百分之九十四点七四百分之九十四点零七百分之二十五点五五DT九十九点三九百分之九十九点七百分之九十九点五七0.31%KNN九十九点三九百分之九十九点五三百分之九十九点四百分之零点一四BT九十九点三九百分之九十九点六九百分之九十九点五三百分之零点三S. Wang,Juan Fernando Balarezo,Karina Gomez Chavez等.工程科学与技术,国际期刊35(2022)1011768图3.第三章。在1999年DARPA中使用4个默认特征和训练集中50%的攻击样本对DoS攻击进行测试表4使用DASD的准确性。ML 5%攻击25%攻击50%攻击总体差异技术所有特征3个特征所有特征3个特征所有特征3个特征所有特征3个特征SVM49.42%47.53%百分之四十九点二五45.3%49.47%百分之五十四点三百分之零点二二百分之九GLM53.19%百分之五十百分之六十三点三五55.75%73.82%65.91%20.63%百分之十五点九一NB百分之八十五点八七百分之六十九点二89.81%78.69%百分之九十点四百分之八十点四三4.53%11.23%DA71.24%59.16%76.17%百分之六十五点八百分之八十五点三69.67%百分之十四点零六百分之十点五一FNN45.2%50.59%44.84%百分之五十一44.32%51.01%0.88%0.42%DT百分之九十二点一七百分之九十点五二百分之九十九点七四百分之九十六点五九百分之九十九点七八百分之九十七点七八7.61%7.26%KNN87.62%92.11%百分之九十五点一七百分之九十七点六八96.63%百分之九十八点六三9.01%6.52%BT百分之九十八点一九91.94%百分之九十九点九四百分之九十七点六四九十九点八三百分之九十七点七四百分之一点七五5.8%图4给出了攻击样本。从支持向量机和模糊神经网络的输出来看,准确率低于60%,这意味着异常数据有超过40%被忽略,这是非常不可靠的D
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- SSM Java项目:StudentInfo 数据管理与可视化分析
- pyedgar:Python库简化EDGAR数据交互与文档下载
- Node.js环境下wfdb文件解码与实时数据处理
- phpcms v2.2企业级网站管理系统发布
- 美团饿了么优惠券推广工具-uniapp源码
- 基于红外传感器的会议室实时占用率测量系统
- DenseNet-201预训练模型:图像分类的深度学习工具箱
- Java实现和弦移调工具:Transposer-java
- phpMyFAQ 2.5.1 Beta多国语言版:技术项目源码共享平台
- Python自动化源码实现便捷自动下单功能
- Android天气预报应用:查看多城市详细天气信息
- PHPTML类:简化HTML页面创建的PHP开源工具
- Biovec在蛋白质分析中的应用:预测、结构和可视化
- EfficientNet-b0深度学习工具箱模型在MATLAB中的应用
- 2024年河北省技能大赛数字化设计开发样题解析
- 笔记本USB加湿器:便携式设计解决方案
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功