论文部分内容阅读
现代互联网的高速发展,使得网络中产生规模巨大的网络数据,各种隐私信息也掺杂其中。针对网络系统的攻击从未断绝,攻击手法繁复多样,且攻击范围日渐扩大。网络入侵是现今异常入侵类型中最为普遍的一种入侵方式。计算机网络本身存在一些漏洞,再加之操作系统在早期忽略了安全问题,过于注重功能等原因,导致人们在使用网络时也不可避免的受到网络异常入侵的威胁。作为一种动态的网络安防手段,入侵检测技术因此应运而生,与静态安防技术相辅相成,共同构成网络安全防线。入侵检测对计算机内部未经授权的举动或是外部的入侵行为进行监控和检测,并及时响应。目前针对网络入侵的检测技术已经有所发展,但在面临新的网络环境,即分析处理海量、高速的网络数据时,难以实现网络入侵实时检测并作出有效的应对措施,这将大大降低入侵检测的质量及速度。本文基于网络在大数据系统运营的前提与入侵检测技术智能化的发展趋势,提出了一种基于Spark的网络入侵实时检测模型NRIDS。该模型以Spark Streaming流处理模块来实时地接收、处理和返回由Kafka收集到的数据,并且利用Spark的机器学习模块在线训练网络入侵检测模型,从而实现网络入侵检测在面对海量网络数据时,能够实时、快速、可靠的检测出入侵攻击,并及时作出应对。本文的工作主要包括以下几个方面:(1)根据网络异常检测的部署模式和一般模型,结合通用的入侵检测模型以及分布式处理大量网络数据的需求,提出基于分布式计算平台Spark的网络入侵实时检测模型NRIDS模型。该模型利用Spark中的流处理模块和机器学习模块来共同完成大数据的实时检测任务。(2)优化了实时K-means聚类算法根据Spark中的机器学习模块中各个算法的适用场景,选择聚类算法来训练入侵检测模型,以实现检测未知攻击的需要。通过对标准的K-Means聚类算法和实时K-Means聚类算法的原理、缺陷和聚类评估标准的分析研究,对结合Spark与聚类分析的KMeans实时聚类算法进行了必要的研究和改进。并使用KMeans实时聚类算法作为NRIDS模型的检测模型训练算法,以实现对大规模网络数据的实时检测。(3)网络入侵实时监测模型的详细实现与测试根据NRIDS模型的技术架构职能和整体流程的划分,详细设计和实现该入侵检测模型的各个模块。最后使用KDD CUP 99数据集进行仿真测试,通过对聚类结果和测试结果的分析,对基于Spark的网络入侵实时检测算法的检测效果进行评估与验证。测试结果表明本文设计的基于Spark的网络入侵实时检测模型能够应对大规模网络数据的检测,实现检测的实时性。同时,对比未经优化的实时KMeans聚类算法和经过PSO最优算法优化的实时KMeans聚类算法的检测结果,算法的优化提高了检测的准确率。