网络流量异常检测 网络连接配置异常( 六 )


Qiu 等人采用自编码器对正常流量进行建模,然后利用正常流量模型去检测异常,该方案取得了不错的效果 。首先,在线下设计一个自编码器,用收集到的流量数据训练这个自编码器;其次,将线下训练好的自编码器模型部署到相关产品中,用学习期内的数据再次微调这个自编码器模型,直到检测准确率达到预期准确率或者模型收敛为止,用训练好的自编码器对学习期内的数据进行编码、还原,并统计还原误差的均值

网络流量异常检测 网络连接配置异常


和方差

网络流量异常检测 网络连接配置异常


;最后,将自编码器应用到异常流量检测中,对于输入的数据,如果自编码器还原误差大于

网络流量异常检测 网络连接配置异常


则将其判定为异常 。
虽然自编码器具有很强的拟合能力,但前提是需要利用大量数据进行训练,使其能够学习到数据的分布规律 。如果数据量比较少,模型容易出现过拟合的情况,即训练数据的重构误差比较小,其他数据的重构误差比较大,导致误报比较多 。
2.3.4 基于 LSTM 的模型
LSTM 是一种特殊的循环神经网络,主要用来处理序列数据,解决了长序列数据训练过程中的梯度消失和爆炸的问题,因此在长序列数据上也有很好的效果 。网络流量中有很多长序列数据,使用基于 LSTM 的模型可以更好地学习到这类数据的分布情况 。
Li 等人提出了一种单分类 LSTM 模型,实现了端到端的异常流量检测 。该模型用 LSTM 网络将流量数据映射到一个标量空间,用一个自定义的损失函数和预设边界值训练模型,然后根据模型的输出值不断更新边界值并再次训练模型,直至模型收敛 。该模型对数据噪声具有较强的鲁棒性,可以进行在线训练 。在设定的学习期内模型使用部署在网络环境中的流量数据进行训练,待模型收敛后,即可用来进行异常检测 。首先用训练好的 LSTM 网络层将网络流量数据映射到标量空间的一个值,然后用该值和学习到的边界值进行比较,如果小于或等于边界值则判定为正常,否则判定为异常 。
另外,上述方案中的 LSTM 网络可以替换为门控循环单元(Gate Recurrent Unit,GRU)网络 。GRU 是 LSTM 的一个简化版本,与 LSTM 的效果相当,但更易于计算 。
基于 LSTM 的无监督模型通过对序列形式的正常网络流量数据进行建模,以实现异常检测 。因为 LSTM 模型强大的学习能力,使得这类模型往往具有很好的表现 。但是,由于模型比较复杂,所需的训练数据量和计算资源比较大,模型的训练周期比较长 。
03 未来研究方向及挑战
本文所研究的方法还是依赖领域专业人员对网络流量进行深入分析后提取出来的特征向量去进行异常检测,这个过程会损失网络流量的一些信息,同时也需要根据不同的应用环境去选择使用不同的特征组合 。如何减少对人的依赖,并且能够将网络流量除负载内容外的相关信息以一种准确、全面、易于算法分析的方式表示出来,是今后需要着重研究的一个方向 。在这个方向上所面临的主要问题是计算量会比较大,在一些对性能要求比较高的场景中可能需要借助于硬件加速装置 。
04 结 语
本文从网络流量数据采集和检测模型两个方面对异常网络流量检测进行了深入的研究 。网络流量数据采集从连接的基础特征、连接的内容特征、流量统计特征、原始负载 4 个方面进行了探讨,每种类型的特征对网络流量的刻画能力是不同的,都有其适用的场景,需要根据实际应用场景选择合适的特征 。异常流量的检测模型有统计模型、监督分类模型和无监督模型 3 种类型,目前的主要研究方向是利用无监督模型对正常流量进行建模,然后将背离模型的流量识别为异常 。

推荐阅读