为什么要监测分析异常流量?
网络管理人员都希望在网络性能突然下降的时候找到“真凶”所在,并迅速解决问题。利用网络异常流量监测的方法,可以非常直观地看到网络流量是否有突然增长或者突然下降的现象,并进一步分析是那些用户产生了最多的流量、使用了那些应用以至于网络运转出现性能问题。并根据最终分析的结果,网络管理人员可快速解决掉网络异常问题,保证网络的正常运行。
现有的网络异常流量监测方案
-
基于网络流量分类
基于端口、基于DPI、基于统计、基于行为 -
基于统计
给出数据服从某种概率分布,通过不一致性发现异常数据
方法:混合模型、信号处理、PCA -
基于聚类
基本思想:对正常数据进行聚类,与正常据类结果差别较大判为异常;正常数据离聚类的形心更近,可以用距离来度量;小的聚类和稀疏的聚类被视为异常
方法:K-Means -
基于信息论
基于动态基线(统计)
基线的定义
将一天分成多个时段并将每天相同时段的正常流量计算其平均值。这些连续不同时段的流量平均值便形成了流量基线。
基线的重要性
基线反映了网络正常行为下所呈现的流量变化趋势,是一项重要的流量指标。如果网络中有异常流量发生,将直接反映于流量变化上。
动态基线分析监测程序
-
决定基线分析的对象与单元
网络进出流量所占带宽比率 -
计算对象的基线值
b = a*y + (1-a)*b1 -
制定动态分级告警规则
建立描述待检测流量和基线偏离程度的方程式:
-
说明流量异常的信息(受感染网络的异常流量的大小强度、持续时间以及部分异常流量细节)
首先计算流量偏离值;
根据流量排序,选择贡献较多流量偏差的主机;
累计偏离值,找出异常主机。
网络异常流量分析系统模型
流量异常检测
系统模型如图所示:
流量数据传输到预测器,输出流量预测值到检测器,检测器根据预测值以及数据分析后输出检测结果,如果有异常则发出警告。
预测器设计
预测方法:用线性回归方法预测流量值
预测模型首先对正常流量趋势进行拟合,当异常流量出现时能较好地做出反应,避免了样本不平衡与漏报的情况。但是由于流量波动的存在,导致某些正常的波动被识别为异常情况,阈值选取过大,可能会出现报警延迟或漏报;阈值选取过小,则可能会出现误报的情况。因此误报情况较多,该模型在初期实现了70%的准确率。
改进:被判定为异常值的值与正常值的最大值差距不大时,可能只是正常抖动,并非异常值,为了进一步解决误报情况,需要对误差值进行处理,采用了误差排序的方式,通过对误差进行降序排序E,对比误差序列间的差值情况D
检测器设计
残差 相对误差
使用基于残差的检测方法,需要我们针对不同的系统流量设置不同的阈值。
大部分系统白天流量大,相对波动小,下跌10%可能意味着比较严重的问题,而深夜流量小,相对波动较大,下跌30%才可能意味着存在系统故障。所以基于相对残差的检测方法也不能够设置统一的阈值来检测异常。
参考文献:
[1]郭炜. 基于动态基线的业务运营支撑网异常流量检测研究[C]//.2011年通信与信息技术新进展——第八届中国通信学会学术年会论文集.,2011:451-454.
[2]流量异常监测