软件定义网络(Software-Defined Networking, SDN)作为一种新型的网络架构,已经成功地被商业化开发。但由于信息化社会的网络流量越来越大,种类越来越多,对于网络流量的异常检测日趋重要。为了实现在SDN网络环境下对流量进行异常检测,本文提出了一种基于支持向量回归(Support Vector Re-gression, SVR)和自回归积分滑动平均模型(Auto-Regressive Integrated Moving Average, ARIMA)的算法。该算法充分发挥SDN网络的特性,周期性的获取网络流量,并利用ARIMA模型对流量进行预测,之后通过SVR模型将预测结果进行校正。试验结果表明,相较于ARIMA模型,ARIMA-SVR模型拥有较高的准确率和检测率;相较于支持向量机模型,ARIMA-SVR模型能够快速地检测出未知类型的异常流量。
随着硬件技术的不断更新,软件技术的迅猛发展,使得现有网络的承载能力有了飞跃性的提高,但是仍旧存在着网络承载能力的上限。在信息化社会,每天都会产生海量的信息,这些网络信息有些是人们正常合理需求所产生的,有些则是垃圾信息。这些在网络负载中占着不小的比重,给网络带来巨大压力的同时,也会窃取人们的个人隐私信息的网络流量一般称为异常流量。造成网络流量异常的原因有很多,一般包括:恶意攻击,如病毒、DoS 攻击和DDoS 攻击等;非法访问,如持续性端口扫描、远程未授权访问等。
传统的计算机网络由于观测点分布在各转发设备上,难以实现异常检测。然而,随着软件定义网络(Software-Defined Networking, SDN) [1]的出现,异常检测在SDN 控制器中能很好地发挥作用。作为一种新型的网络架构,SDN 将传统的网络解耦成数据转发、网络控制、应用程序相互独立的三层结构,分别称为数据平面、控制平面和应用平面。数据平面主要负责数据转发功能,包括一切转发逻辑和转发表。
控制平面掌控着网络全局信息, 许多协议和算法都依赖于这个特征。由于SDN 是未来网络发展的一个重要趋势, 且其能提供比传统网络更完善的网络视图、更容易收集网络中的流信息、具有完善的管理平面, 使得在SDN 网络中研究网络流量异常检测技术成了一个重要的研究课题。
本文针对在SDN 环境下的网络流量的异常检测提出了一种轻量级的算法。
该算法利用SDN 的特性, 周期性地收集网络流量, 使用自回归滑动平均模型(Auto-Regressive Integrated Moving Average, ARIMA) [2]来预测下一时刻的流量值, 之后使用支持向量回归模型(Support Vector Regression, SVR) [3]对预测的流量值进行调整,以此来判断当前网络中的流量是否异常,提高了异常检测的实时性和准确性。
2. 相关工作 网络流量异常检测技术对于网络的监管有着重要的作用,被广泛应用于入侵检测、DDoS 攻击检测等技术中。网络流量本质上是一个随机时间序列,随着时间序列分析的发展,预测模型和算法已研究了