论文部分内容阅读
入侵检测技术是网络安全领域中不可或缺的一项重要技术。在主干网络中,入侵检测对所有的数据包逐一进行分析是不切实际的,必然导致检测的滞后,难以达到实时性的要求。目前理想的做法是通过分析网络流量的宏观特征,忽略网络数据包的微观特征来检测网络中当前存在的攻击,从而在宏观上把握整个网络的运行状态。所以,本文针对主干网络环境中数据规模十分庞大的问题,以基于NetFlow的数据流采集技术为基础,使用支持向量机为检测方法,研究了主干网络中的入侵检测技术。
在众多的入侵检测技术中,支持向量机(SVM)是建立在统计学习理论基础上的一种机器学习方法。其思想是针对两类样本分类问题,具有小样本、高泛化能力的优点,通过内积核函数将原低维空间变换到一个高维的特征空间,再在高维特征空间中构造线性判别函数来实现原低维空间中的非线性判别函数,解决了“维数灾难”问题,也是正好解决网络入侵判断复杂的办法之一。将支持向量机技术应用于入侵检测中,能缩短学习时间,提高入侵检测准确率,增强系统实用性。
针对网络数据量大、占用资源多的问题,本文应用了基于粗糙集的入侵检测数据约简算法。该算法包括特征选择与属性值约简两个部分。该方法能简化训练数据集,减少训练及检测时间,减小数据存储代价。
本文提出了一种改进的多类SVM算法:分布式SVM算法。在此算法基础上构建了分布式SVM检测模型,该SVM检测模型与目前大多数基于传统两类SVM的入侵检测模型相比不仅能检测攻击而且能对攻击类型作出大致的分类。分布式多类SVM算法与传统的两种多类SVM算法相比能够使分类器的数目最小化,易于实现,并能提高检测效率。
在实际的实验中,通过不同规模的训练数据集对分布式SVM检测算法进行了测试,利用数据约简算法进行了特征选择与冗余值消除,并针对三种多类SVM算法进行了对比实验。结果表明在5类样本的情况下,分布式SVM算法在保证了检测精度的前提下,训练时间比一对多SVM算法节省了大约25%的时间,比一对一SVM算法节省了近50%的时间。