引言
随着计算机和网络技术的发展,网络环境变得日益复杂[1],网络攻击事件频发,使得网络的安全性测试和评估尤为重要。在网络攻击方式不断演变之下,人工智能的发展使得网络的攻击和防御进入了一种新的态势[2],导致传统的测试方法无法应对当前的需求。在此背景之下,亟需一种能够模拟真实场景的流量生成工具,以评估网络性能、检测网络潜在的风险和优化应用程序,防止网络攻击事件的发生。
现有网络流量生成器主要分为[3]:最大吞吐量生成器,以恒定或最大的速率生成网络流量,常用于网络带宽的测试,例如 Iperf2[4];回放生成器,重放之前捕获的网络流量,如 TCPReplay[5];随机模型生成器,利用随机模型来模拟网络流量的特征,如 Harpoon[6];脚本生成器,允许用户编写复杂的逻辑,动态地修改数据包内容,可以生成任意类型的数据包,如 Moongen[7]和 Scapy[8];特定场景生成器,对特定应用程序实现的流量生成器,高度定制化,很难在其他环境继续使用。其中只有随机模型生成器和脚本生成器具有更多的灵活性,能够在不同的维度模拟网络流量,不过这需要用户首先对采集到的数据设定一个统计模型,或者利用统计方法估计一个模型。因此如果设定的随机分布不正确,或者流量数据的模型是未知的,那么生成流量就会不准确甚至失败。
深度神经网络在拟合随机模型上有着天然的优势,可以利用在真实网络中采集的流量数据,拟合对应数据的统计分布。而生成对抗神经网络 (Generative Adversarial Networks,GAN)[9]已经在很多领域被广泛应用,如图像[10]、音频[11]、视频[12]等。通过对现有网络流量生成方法的研究,基于统计的流量生成方法如图1所示,首先在真实网络中采集一段数据,然后提取需要生成的网络流量的特征;将数据经过预处理,得到神经网络的输入数据,使用一种或多种统计模型进行拟合训练,利用拟合后的模型生成网络流量在另一个时间段的特征;最后再将生成特征组合成的流量,发送到模拟的网络环境中,用以测试网络环境,或者研究网络用户的行为。
本文详细内容请下载:
http://www.chinaaet.com/resource/share/2000006045
作者信息:
康未,李维皓,刘桐菊
(华北计算机系统工程研究所,北京100083)