As a reader --> NetDiffusion: Network Data Augmentation Through Protocol-Constrained Traffic Generation

  • 📌论文分类Ⅳ:
    We open source our sample datasets, pipeline, and results in https://github.com/noise-lab/NetDiffusion_Generator.
    • 论文名称 NetDiffusion: Network Data Augmentation Through Protocol-Constrained Traffic Generation[J].
    • 作者 Jiang X, Liu S, Gember-Jacobson A, et al.
    • 期刊名称 Proceedings of the ACM on Measurement and Analysis of Computing Systems, 2024, 8(1): 1-32.
    • 简要摘要
      标记网络轨迹的数据集对于网络中的大量机器学习(ML)任务至关重要,但它们的可用性受到隐私和维护问题(例如数据过时)的阻碍。为了克服这一限制,合成网络轨迹通常可以扩展现有的数据集。不幸的是,当前的合成轨迹生成方法通常只生成聚合流统计数据或一些选定的数据包属性,并不总是足够的,特别是当模型训练依赖于仅从数据包轨迹中获得的特征时。这种不足表现为与实际轨迹的统计相似性不足,以及用于数据增强时ML任务的次优性能。本文应用扩散模型来生成高分辨率的合成网络流量轨迹。我们介绍了NetDiffusion,这是一种工具,它使用稳定扩散模型的微调控制变体来生成高保真度且符合协议规范的合成网络流量。评估表明,与当前最先进的方法(例如基于GAN的方法)相比,由NetDiffusion生成的数据包捕获可以实现与真实数据更高的统计相似性,并提高ML模型的性能。此外,本文的合成轨迹与常见的网络分析工具兼容,并支持无数的网络任务,这表明NetDiffusion可以服务于更广泛的网络分析和测试任务,扩展到以ML为中心的应用程序之外。
    • 关键词 Network simulations, Neural networks, Network traffic, synthesis, diffusion model
    • ✏️论文内容
        • 现有的公共数据集很少被更新,使其成为静态的,无法反映不断变化的网络行为[68,74,105]。这些限制阻碍了训练健壮的机器学习模型的能力,也无法准确地反映不断变化的现实世界网络条件。
          这些挑战可以通过基于现有数据集创建新的合成网络轨迹来解决。该方法旨在引入变化的同时保持网络流量的固有特征,从而增强数据集的大小和多样性[78,96,115,122,135,140,142,143]。不幸的是,目前最先进的合成轨迹生成方法,特别是那些基于生成对抗网络(GANs)的方法[78,104,139,140,142],并不总是足以产生高质量的合成网络流量。具体来说,这些方法倾向于关注有限的一组属性或统计数据,因为网络任务的早期机器学习通常依赖于基本的流量统计数据进行分类[17,33,44,65,76,77,100]。而随着最近机器学习的进步,利用详细的原始网络流量来实现更高的分类精度[10,23,39,83,84,103,114,128,136,141,149],显然需要合成流量生成,包括完整网络轨迹中存在的复杂的、可能不可预见的模式。
          现有的流量生成方法面临两个主要问题:(1)由于现有方法的属性有限,导致合成数据对变化高度敏感,与真实数据缺乏统计相似性;(2)使用合成统计属性对现有数据集进行扩充时,分类精度不理想。此外,它们过于简单的属性关注点和对传输和网络层协议行为的忽视,阻碍了它们与传统网络工具(如tcpreplay[43]或Wireshark[16])的使用。
          幸运的是,可用计算能力的普遍提高和高分辨率图像生成技术的突破,特别是扩散模型[101,107,120],为克服这些挑战提供了一条有希望的途径。具体来说,本文利用了文本到图像扩散模型的功能,该模型基于描述性文本提示执行条件生成。这些模型擅长从文本描述中创建详细、准确的视觉表示。通过将网络流量的复杂特征转换成适当的图像格式,可以利用这些模型提供的独特优势。与GAN相比,扩散模型能够捕获广泛的模式和详细的依赖关系。这种固有的生成质量使它们成为生成与真实流量和完整包头值具有高度统计相似性的网络轨迹的理想选择。通过结合条件反射技术,扩散模型可以生成符合特定网络属性的结构化数据,从而确保所需的顺序包间特征和粗略的协议依赖关系。此外,扩散模型中训练过程的梯度动力学比GAN稳定得多。文章在第3节中深入讨论扩散模型的技术细节和好处。这些属性共同将扩散模型定位为推进合成网络轨迹生成的最先进技术的引人注目的选择,解决了当前方法的现有限制。
        • 本文介绍了NetDiffusion,这是一种合成原始网络流量生成的方法,用于利用微调的、受控的稳定扩散模型来生成数据包头(packet headers)。贡献如下:
          • (1)生成与真实流量高度相似的合成网络轨迹:利用稳定扩散技术,本文提出了一个双重策略:(1)一个用于将原始数据包捕获转换为图像表示的转换过程(反之亦然),以及(2)一个用于生成合成数据包的、微调的、基于捕获数据包转换为图像的文本到图像扩散模型。为了提高与真实网络流量的相似性,采用受控生成技术来保持对真实数据中观察到的协议和报头字段值分布的保真度,并且在生成后,使用基于领域知识的启发式方法来精细检查和调整生成的字段,确保它们在符合传输和网络层协议规则方面的语义正确性。
          • (2)通过综合网络流量数据增强,提高机器学习场景的分类精度:使用生成的流量分类数据集,进行了案例研究与评估。通过在训练和测试期间以不同比例将NetDiffusion生成的网络流量集成到真实数据集中,并与最先进的生成方法进行对比,准确度普遍提高[142]。这种改进归因于我们的合成数据与真实数据集的统计相似性非常高。此外,本文的方法在解决类不平衡问题方面表现出希望,在这种情况下提高ML模型的准确性。
          • (3)将合成网络流量扩展到ML任务之外的网络分析和测试的适用性:NetDiffusion生成的网络流量可以转换成适合传统网络分析和测试任务的原始数据包。通过使用Wireshark和Scapy[106]等工具,以及用于重传的tcpreplay进行测试来验证这种兼容性。更重要的是,本文证明了各种网络操作的关键统计特征可以有效地从生成的网络流量中提取出来。
      • 【内容2】研究动机
        公开可用的网络数据集的使用极大地帮助了机器学习在网络中的应用,以及网络分析和测试方法的进步。例如,在网络数据集上训练的模型有助于解决异常检测、流量分类和网络优化等挑战,从而提高网络的安全性和性能[9,21,31,61 - 63,67,81,83,92,131]。此外,这些数据集对网络分析师很有价值,有助于理解网络行为,识别性能问题,并评估防火墙和入侵检测系统等网络安全工具的性能[94,102,134]。
        • 💡Network Data Scarcity 网络流量数据集稀缺
          众所周知的网络数据集,如CAIDA[7]、MAWI[30]、UNSW-NB15[93]和KDD[6,130],在网络科学的许多研究项目中都是必不可少的。然而,缺乏更新的数据集往往会阻碍研究进一步的进展。那些有能力捕获大规模流量的人,通常是网络运营商和拥有专门硬件和网络的组织,由于有暴露敏感或个人身份信息(PII)的风险,他们通常不愿共享数据。即使实体可以进行共享,提供一致的更新和确保已处理数据的可靠标签的任务也是令人生畏的。由于网络数据的动态性,如网络行为和威胁的不断演变,标记网络数据本身就具有挑战性。值得注意的是,CAIDA、UNSW-NB15、KDD Cup 99[6]和NSL-KDD[130]数据集的最后一次更新分别是在2020年、2015年、1999年和2009年,这表明数据的近代性存在显著差距,使得它们不能很好地反映不断变化的网络动态。即使是像MAWI[30]这样频繁更新的数据集也不能幸免,因为硬件故障和大量重复痕迹导致数据丢失。虽然不是详尽的数据集列表,但所强调的问题是普遍存在的,强调了对更新数据的需求,以推动正在进行的网络研究和分析。
        • 💡Data Augmentation Using Synthetic Data 使用合成数据进行数据增强
          通过合成数据进行数据增强在许多领域已被证明是有效的。例如,在计算机视觉中,合成图像提高了模型的性能,特别是在缺乏标记数据的情况下[29,82,90,118,129]。合成数据增强的成功在很大程度上归功于生成方法,生成方法在各个领域展示了显著的多功能性:在医学成像中,GAN已被用于增强数据集,显著提高了诊断模型的性能[27,48,50]。在自然语言处理领域,变分自动编码器(VAEs)已被用于创建合成文本数据,帮助完成情感分析和语言翻译等任务[32,132,137]。在音频处理中,WaveGAN的出现促进了声音数据集的扩展,对于语音识别和声音事件检测等应用来说是不可或缺的[13,45,46]。
          将这些成功转化到网络领域,已经出现了一些努力,试图通过生成合成网络数据来增加网络数据集[78,104,139,140,142]。这些生成方法的首要目标是生成与真实网络流量具有高度统计相似性的合成流量。与基于模拟的方法不同,这些生成技术在合成数据中引入了微妙的变化,与真实数据略有不同。这方面是至关重要的:它模拟了潜在的、看不见的变化和现实世界网络环境的动态性质。通过这样做,合成流量在很大程度上反映了真实数据的一般模式,也有助于增强各种应用程序的通用性,如异常检测系统和ML模型。例如,在异常检测中,合成流量中的这些细微变化允许模型更好地适应不可预测的或新颖的网络行为,例如IP地址或TCP标志的微小变化,从而提高它们在现实场景中的有效性和鲁棒性。在这方面,一个值得注意的最先进的尝试是NetShare[142],它利用GAN生成IPFIX [35]/NetFlow[34]风格的网络流量统计数据。为简单起见,在本文的其余部分将这种一般类型的聚合统计特征称为NetFlow。然而,它对统计特征的关注可能会错过对高机器学习准确性至关重要的网络模式。与此同时,它所关注的有限特征禁止生成全面的原始网络流量,如数据包捕获,这对于其他非ML任务(如网络分析和测试)是必不可少的。本文没有考虑其他非生成方法[20,24,53,75],如TRex[8]和NS-3[53],因为它们虽然对特定任务有用,但缺乏更广泛的数据集增强所需的灵活性。它们通常依赖于预定义的模板或规则,这些模板或规则可能无法捕捉到网络流量的演变性质或各种网络协议和应用程序之间的复杂交互。
        • 💡Inadequate Performance from Existing Methods 现有方法的性能不足
          这里提供了一个关于NetShare的简短案例研究,NetShare是当前最先进的网络数据生成方法,它产生NetFlow属性,即从原始网络流量中导出统计数据。按照原论文中的方法,在三种场景下测试了各种ML模型(随机森林(RF)、决策树(DT)和支持向量机(SVM))的准确性:(1)在真实NetFlow数据上训练和测试,(2)在NetShare合成数据上训练和测试,(3)反之亦然。
          本文将重点关注使用一个仔细设计的数据集的流量分类任务,详细内容见第4节。分类任务分为微观和宏观两个层面。在微观层面上,目标是将网络流量分类到特定的应用程序中,包括10个不同的类,如YouTube和Amazon;在宏观层面上,目标是将网络流量划分为更广泛的服务类别,跨越3类,如流媒体和网页浏览。

          1.Unsatisafactory ML Accuracy 不令人满意的ML精度
          (1) NetShare限制:与仅使用真实NetFlow数据相比,在NetShare生成的合成NetFlow数据上训练或测试模型时,无论分类水平如何,准确率都明显下降。这表明NetShare在保留真实数据集中固有的关键区分特征值方面可能存在不足,这对模型准确分类网络流量的能力产生了不利影响。
          (2) NetFlow与原始流量:在NetShare评估之后,比较了真实NetFlow数据与模型在pcap格式的原始网络流量上训练和测试时获得的准确性。这种比较强调了使用NetFlow数据时遇到的信息丢失,以及利用原始网络流量获得的潜在分类性能增益:原始网络流量实现了最高的精度,SVM达到了近乎完美的精度。相反,在真实NetFlow数据中观察到的准确率明显下降,这表明其有限的特征集对分类精度有不利影响。
          这些观察结果导致了两个主要的观点:第一,需要合成数据生成方法来有效地保留关键的区分特征值以保持分类准确性;其次,与NetFlow数据相比,使用原始网络流量的优势在于其更丰富的信息内容。推动生成原始网络流量以保留真实网络流量的细粒度细节和统计特征,似乎是克服NetShare生成数据和NetFlow数据所观察到的局限性的关键一步。

          2.Limited Applicability to Non-ML tasks. 对非ML任务的有限适用性
          除了机器学习任务中合成网络数据的性能外,验证其有效性的另一个重要指标是其对传统网络分析和测试任务的适用性,例如分组分析和重放。这一点很重要,因为与其他形式的数据(如图像)不同,通过与真实图像的视觉相似性可以相对容易地推断数据的质量,网络专家很难手动检查原始网络流量以验证其质量。NetFlow数据封装了来自原始网络流量的聚合或派生统计数据,缺乏对这些任务至关重要的详细信息。例如,网络分析师经常使用像Wireshark这样的工具来调查网络流量细节,如数据包头和序列,以诊断问题或评估性能,如跟踪延迟原因或检测未经授权的访问。然而,NetFlow数据的高级统计特征忽略了这种细粒度的细节,使得它不足以进行这种深入的分析。此外,合成NetFlow数据不能使用像tcpreplay这样的工具通过网络接口重传或重放。重传网络流量对于各种网络测试和验证场景至关重要,例如在实际流量条件下评估网络安全工具的性能或对网络基础设施进行压力测试。NetFlow数据中没有数据包级别的详细信息,因此无法将其用于重传任务。某些网络分析任务需要直接从原始网络流量中派生附加特征。例如,估计窗口大小或调查网络上数据包大小的分布需要访问原始流量数据。这些计算对于理解网络行为和优化网络配置至关重要。
          将高级NetFlow统计数据转换回原始网络流量,如数据包捕获,本质上是具有挑战性的,因为丢失了诸如标头值和标志等详细属性,从而限制了合成NetFlow数据在无数非ML网络任务中的实用性。这一挑战强调生成原始网络流量的必要性。同时,现有的网络数据生成方法往往忽略了确保合成数据遵循真实网络流量中的关键传输和网络层协议规则,而这些规则对于传统的网络分析和测试工具至关重要。例如,协议约束是数据包长度帧必须符合每个协议标准的特定大小。生成帧大小不正确的合成数据可能导致数据分析中的误解或网络测试场景中的故障。其他协议约束,如TCP传输中正确的序列号、有效的校验和和适当的标志设置,也很重要,因为它们会影响网络设备和分析工具如何解释和处理数据。因此,遵守协议规则对于网络分析和测试任务的准确性和可靠性至关重要,并且可以作为生成的合成网络数据质量的衡量标准。

      • 【内容3】method


        本节介绍NetDiffusion,这是一个框架,它利用受控的文本到图像扩散模型[107]来生成符合传输和网络层协议规则的合成原始网络流量。这种方法不仅提高了机器学习场景中用于数据增强的分类准确性,而且还促进了广泛的网络分析和测试任务(见第4节),克服了第2.3节中描述的限制。在提供每个组件的详细信息之前,首先概述方法,该方法由图1所示的3个组件组成。
        • 💡How do diffusion models work?
          扩散模型通过将数据生成建模为从噪声数据中去除噪声的过程(称为反向过程)来合成数据[55,125]。噪声去除是由一个复杂的ML模型执行的,通常是一个神经网络,它已经被训练来预测依次添加到实际数据中的噪声(前向过程)。研究发现,在模型的潜在空间中运行正向和反向过程可以生成质量更好的数据[107]。在数学上,考虑潜在空间中的初始噪声向量(z)。扩散模型的目标是将z转换为从期望分布中提取的数据点(x)。
          本文的想法是定义一个微分方程来控制从z到x在一系列离散时间步长的变换。这背后的基本原理是,通过将生成过程分解为一系列增量扩散步骤,模型可以捕获数据流形中复杂的依赖关系和细节。该方法的一个重要组成部分是基于分数的生成建模,其中估计数据对数似然相对于数据的梯度(通常称为“分数”函数)。对分数函数进行建模是可取的,因为直接对概率分布进行建模会带来挑战,特别是在获得正确的归一化常数方面[124,125]。在文本到图像的合成中,扩散模型被最有效地采用,在这种情况下,要生成与给定文本提示相匹配的图像。文本提示符用作条件调节变量,以指导反向过程生成语义上与文本提示符对齐的图像。通过迭代应用分数函数,在文本提示条件下,模型将数据从简单的先验分布(如高斯噪声)转向所需的复杂图像分布。在本文中,文本提示描述了要生成的特定类/类型的网络流量。
          • 通过NetDiffusion框架将这些扩散模型的操作原理扩展到网络流量数据。方法围绕三个主要组成部分:
          • (1)将数据包捕获(pcap)格式的原始网络流量转换为基于图像的表示(§3.1)。
          • (2)微调一个稳定的扩散模型,使受控的文本到流量的生成在报头字段与现实世界的网络流量之间具有高度的分布相似性(§3.2)。
          • (3)基于领域知识的后处理启发式方法,用于对生成的网络流量进行详细修改,以确保高水平的协议规则遵从性(§3.3)。
        • 💡§3.1 Network Traffic to Image Conversion 网络流量图像转换
          解释将网络流量表示为图像的动机和过程
          • 动机
            网络流量数据具有复杂的 inter-packet依赖关系和广泛的属性,呈现出复杂的环境,在涉及到准确表示和有效学习时引入了特定的挑战。网络流量数据具有高维性,特别是在使用nPrint等标准化表示时[58]。例如,仅在IP和TCP报头之间,就有大量的字段(例如,IP地址、端口、序列和确认号、标志等)。nPrint使用位级和标准化的表示,通过考虑所有可能的报头字段(即使原始数据包中不存在),为每个数据包提供一致的格式。例如,当TCP数据包没有UDP报头位时,nPrint仍然包含这些位的占位符。虽然这确保了ML模型的统一输入结构,但每个数据包的属性数通常超过1000个。这种高维性为生成模型引入了计算瓶颈。
            此外,每个网络流量轨迹(被视为单个网络流/会话)本质上包含数据包之间的顺序依赖关系。例如,在TCP中,为了保证数据传输的完整性和可靠性,报文需要遵循一定的顺序。数据包的顺序由序列和确认号决定,对于在接收端准确地重建传输数据至关重要。这些依赖关系也有助于提高机器学习分类的准确性,因为它们对于不同类别的网络流量可能是唯一的。由于其静态特性,传统的表格格式在保留这些顺序关系方面存在不足,这可能导致对底层网络行为的错误表述[40,150,151]。
            由于合成数据生成的最新进展主要围绕图像生成[25,37,101,107,144],本文寻求利用这些方法来生成具有低计算复杂度的高保真合成网络数据。采用这些模型的原因是:
            (1)图像生成模型的技术成熟:图像生成模型领域的进步,如扩散模型,为生成详细的合成网络流量提供了坚实的基础。这些模型经过多年的优化,可以理解和重现高分辨率图像中的复杂模式[37,101,107]。
            (2)空间层次和连通性:图像固有地捕获空间层次,这对于表示网络流量中复杂的包间和包内依赖关系至关重要。图像中的像素自然形成图案和结构。深度学习模型,尤其是卷积神经网络(CNN),擅长利用这些结构来捕获局部和全局依赖关系。与传统的表格格式不同,在表格格式中,数据点可能被视为独立的实体,而图像本质上强调了一个数据包与其相邻数据包的重要性,保留了关键的上下文信息[28,73,85,116]。在捕获网络依赖关系时,使用边缘检测来识别流中的数据包协议分布,这是演示适当的图像表示的有效性的直接例子。
            ​(3)可视化和可解释性:图像表示提供了一种直观的方式来识别网络流量中的数据包流、异常和模式。
            ​(4)研究和工具可用性:计算机视觉的广泛研究和工具可用性意味着可扩展性和优化已经成熟,在处理网络流量等高维数据时提供了显着的优势[107,148,152]。
          • 转换方法


            为了获得网络流量的图像表示,首先使用nPrint[58]对数据包捕获(pcap)进行编码,它将网络流量转换为标准化位,其中每个位对应于一个数据包报头字段位,如图1所示。这种二进制表示简单而有效,其中包头中存在或不存在的位分别表示为1或0,而丢失的头位表示为-1。无论使用何种协议,这种编码方案都确保了标准化的表示。有效负载内容没有编码,因为它通常是加密的。但是,数据包有效负载的大小可以从其他编码的报头字段(如IP总长度字段)推断出来。
            按照这种编码,pcap中的数据包序列被转换成矩阵,然后将其解释为图像。绿色、红色和灰色分别代表一个设置位(1)、一个未设置位(0)和一个空位(-1)。这种颜色编码提供了一种直观的网络流量表示。然后,将数据包分组为1024组,表示流中前1024个数据包的数据包头。通过这个过程,任何pcap格式的网络流量都被转换成宽1088像素、高1024像素的图像,每一行像素代表网络流量流中的一个数据包,如图2所示。这种格式的任何图像都可以以简单的方式转换回pcaps。这种表示不仅保留了数据的复杂性,而且保留了包之间的基本顺序关系,为NetDiffusion管道中的后续步骤奠定了坚实的基础。实验选择了一组1024个数据包,这与训练和微调文本到图像扩散模型中的传统做法保持一致,其中图像分辨率通常限制在1024 × 1024像素。这种选择主要是由在更高的数据分辨率下遇到的计算限制所驱动的。
        • 💡§3.2 Fine-Tuning Diffusion Model and Controlled Generation 微调扩散模型与控制生成
          给定一个真实的、标记的网络流量数据集,首先将网络流量转换为相应的图像表示,如前所述。利用这些基于图像的表示,微调生成模型,特别是扩散模型,以产生合成的网络流量。
          • 文本到图像扩散模型在网络流量生成中的优势
            决定采用扩散模型而不是其他生成方法(如GAN)来生成基于图像的网络流量,是基于以下几个优势:
            (1)高保真生成:扩散模型在捕获和复制复杂的数据分布方面表现出色,保真度很高[56,99,112]。考虑到实际网络流量中固有的复杂而微妙的模式,此属性是关键的。扩散模型模仿这些模式的能力确保了它们产生的合成轨迹与真实轨迹高度相似。
            (2)高分辨率图像处理:扩散模型通过潜在扩散等技术,擅长生成和管理高分辨率图像[95,101,107]。这个功能对NetDiffusion框架至关重要,因为它需要网络流量的图像表示高分辨率的准确性和细节保留。虽然可以对扩散模型进行修改以直接处理表格数据,但这可能会放弃图像表示的明显好处,例如捕获空间和顺序的复杂性,如前所述。
            (3)条件生成:通过允许基于文本提示的条件生成,可以指示文本到图像扩散模型生成反映特定类别或类型的网络流量,提供无与伦比的精度和多功能性融合。该模型在训练阶段通过根据给定的文本提示调整其反向扩散轨迹来学习文本和图像之间的关系[49,110,145]。这确保了最终生成的图像与期望的图像分布一致。当需要产生特定类别的网络流量或符合协议规则和其他基本网络特性时,这就变得非常重要。
            (4)透明性和训练稳定性:扩散模型的性质保证了生成过程的透明性,从而产生可重复的结果。这种透明性对于产生满足特定模式或约束的网络轨迹是至关重要的,因为它显示了良好的可解释性。
            此外,由于GAN的对抗性,它的训练动态常常是不可预测的[11,36,91],而扩散模型则表现出稳定的训练行为和良好的梯度动态[55,123,125]。这种稳定性不仅确保了一致和无异常输出,而且简化了优化过程。
            总的来说,这些优势使扩散模型成为生成合成网络轨迹的鲁棒和通用选择,有效地解决了其他生成技术所观察到的挑战和约束。与此同时,本文研究的一个关键目标是促进高粒度网络流量的产生,对扩散模型的偏好在一定程度上受到它们最近快速发展的影响。

          • 基于LoRa的稳定扩散基模型微调
            从头开始训练生成模型,特别是那些像扩散模型一样复杂的模型,可能是资源密集且耗时的。当考虑到现有的基本模型,如Stable Diffusion 1.5[107]时,这一点尤其正确,该模型已经在LAION-5B数据集[111]上进行了预训练,该数据集包含超过5.85B个clip过滤的图像-文本对。虽然开箱即用的稳定扩散模型无可否认是强大的,但不能直接使用它来合成网络流量,因为它的设计覆盖了广泛的模式和复杂性,导致它缺乏特定生成任务所需的深度。例如,“Netflix网络流量”提示符可能会产生一个通用的图像,比如Netflix播放器中的高速公路场景。当提供的文本描述具有多种潜在的视觉解释时,这一点尤其明显,这会导致模型产生可能模糊或偏离目标的图像。通过对特定网络数据集的稳定扩散进行微调,可以解决这些限制。微调增强了模型的表达能力,使其能够更好地与网络流量域的特定模式或嵌入相关联。
            因此,这个框架建立在Stable Diffusion 1.5的基础上,并在特定的网络数据集上对该模型进行微调,如图1所示,使其适合于生成反映现实世界网络流量复杂性和细微差别的合成网络流量。为了促进这种微调,采用了低秩自适应(LoRa)[59],这是一种专门用于快速微调扩散模型的训练技术,特别是在文本到图像的扩散模型中。它的关键在于使扩散模型能够有效地学习新的概念或风格,同时保持一个可管理的模型文件大小。考虑到传统的大尺寸模型(如Stable Diffusion)对于存储和部署来说可能很麻烦,这是有益的。使用LoRa,生成的模型是紧凑的,在文件大小和训练能力之间取得了平衡。这种紧凑性不会牺牲模型的能力,而是对基础/基础模型进行微小但有效的更改,确保核心知识在适应新数据的同时保持完整。
            微调过程中,首先从数据集中对真实网络流量进行抽样,目标是合成这些数据集。然后将这些流量样本转换为它们的图像表示。对于这些图像,制作了一个独特的编码文本提示符(例如,“像素化网络数据,Netflix流量的类型为0”),简洁地描述了它的类类型。这会产生许多文本提示类别,对应于数据集中各种网络流量类型。例如,在随后的评估任务中,利用包含来自10个不同应用程序的流的数据集来微调NetDiffusion管道。这产生了10个独特的文本提示类别,每个类别对应于不同的流量应用程序,例如,Zoom流量的“像素化网络数据,类型5”和Google Meet流量的“像素化网络数据,类型6”。
            编码提示符虽然看起来很简单,但它实现了两个主要目标。(1)它提供了一个特定的词汇表,可以减少歧义,并确保模型关注网络流量的细微差别。(2)此外,它最大限度地减少了来自基本模型原始词嵌入的干扰,优化了生成过程。
            实验中发现,这种特定的提示结构在特异性和简单性之间提供了平衡,以防止过度拟合和误解,从而获得更好的结果。随后,这些图像-文本对被输入到微调过程中,在此过程中,基本的稳定扩散模型,通过LoRa增强,学会根据提示生成网络流量图像。通过将稳定扩散模型的强大功能与LoRa的适应性相结合,本文创建了一种强大的机制来生成高保真的综合网络流量图像,以满足特定需求。
          • 通过ControlNet的基于控制提示的生成
            在对生成模型进行微调之后,下一阶段涉及生成所需的合成网络流量类别。这是通过向扩散模型提供适当的文本提示来产生流量的图像表示来实现的。
            扩散模型通过模拟从简单的噪声分布到数据分布的反向过程来运行,这使它们能够捕获和复制现实世界数据中固有的复杂模式。噪声在几个步骤中逐渐减少,允许模型逐渐改进生成的图像,直到它接近真实的网络流量模式。图2中展示了一个用于Amazon流量的图像表示的示例合成网络流量。这种基于提示的生成过程有助于创建适合特定类分布要求的合成nPrintencoded网络流量数据集。例如,要管理具有特定类分布和大小的数据集,可以为每个类提供相应数量的文本提示,并相应地激活生成过程。
            然而,一个挑战来自于一般扩散模型固有的灵活性。虽然它们的设计目的是在生成的输出中培养创造力,但它可能导致网络流量生成环境中的异常。例如,生成的流量可能不正确地填充数据包报头字段,从而导致合成流量和真实流量之间的协议分布差异。这种偏差可能会损害机器学习的准确性,并使确保严格遵守关键协议规则变得困难。为了确保生成的流量与实际流量中观察到的流行协议和报头字段值分布紧密一致,在生成过程中引入了一定的约束。例如,如果实际的Amazon网络流量主要由TCP数据包组成,则生成过程应该优先填充与TCP数据包相关的报头字段。这种方法确保生成的流量图像主要具有与TCP包头对应的绿色(设置位)或红色(未设置位)像素,而其他像素保持灰色(空位)。此外,报头内一致的位特征,例如一致的未设置位,应该在合成输出中得到镜像。
            利用扩散模型的可控特性,将ControlNet[146]整合到生成过程中。ControlNet是一种常用的神经网络架构,旨在将空间条件控制添加到大型预训练的文本到图像扩散模型中。它利用这些模型的鲁棒编码层,这些模型是用大量数据集预先训练的,以学习不同的条件控制集。通过“零卷积”,该架构从初始状态逐渐增加参数,确保没有不利的噪声影响微调。它提供了训练的灵活性,展示了小数据集和大数据集的鲁棒性。在ControlNet的特定用例中,利用M-LSD直线检测来检测假定填充的字段和未填充的字段之间的边界,如图2所示。其他边缘检测方法,如Canny边缘检测产生类似的结果。这样的线或边缘检测方法是有效的,因为它们与包轨迹中存在的固有分纵栏一致。
            结合ControlNet允许合成生成过程更接近地模拟在真实网络流量中观察到的协议和报头字段值分布。这样可以最大限度地减少偏差,并确保生成的数据包在很大程度上符合预期的协议类型和报头字段值,从而提高合成网络流量数据集的质量和可靠性。
            虽然ControlNet提供粗粒度控制,确定要填充哪些图像区域,但扩散模型提供细粒度控制,指定单个像素值,从而进一步提高与真实流量的相似性。
            PS:附录A中进行了详细的消融研究,展示了在生成过程中应用ControlNet的必要性,以及通过微调基本文本到图像扩散模型来改进生成。
            PPS:尽管集成了ControlNet,但扩散模型固有的可变性和生成性可能导致生成实例的差异。对于这些差异的详细分析,参阅附录b。另一方面,虽然目前的方法利用预训练的ControlNet模型作为自动化约束执行的初始步骤,但它们在支持更具体的约束方面存在不足,例如在较小的标题字段列中执行和限制高度详细的约束。
        • 💡§3.3 Improving Transport and Network Layer Protocol Compliance 改进传输和网络层协议遵从性
          利用控制扩散模型,生成编码的网络流量,它非常类似于真实世界数据中固有的协议和报头字段值分布。这种编码格式不仅捕获了在真实网络流量中观察到的每个特征,而且还最大限度地减少了网络流量真实特征值和合成特征值之间的统计差异,确保模型能够识别并对潜在模式采取行动。然而,网络数据集增强领域面临着独特的挑战。虽然ML应用程序中合成数据的质量至关重要,但它的用途远远不止于此。数据在传统网络分析和测试任务中的相关性(通常需要原始网络流量)变得同样重要。尽管ControlNet在生成过程中提供了指导,但将合成编码流量转换回原始格式(如pcaps)并不简单。这种复杂性源于大量详细的传输层和网络层协议规则,包括包间和包内级别。正确格式化的流量必须严格遵守这些规则。下面探讨这些复杂性及其含义。
          • 报文间和内部、传输层以及网络层协议规则
            传输层和网络层协议规则都定义了确保网络中设备之间无缝通信的约束。这些规则至关重要,因为它们规定了数据包的结构、格式和顺序,确保了数据传输的高效和可靠。传输层规则强调端到端通信和可靠性,而网络层协议侧重于数据包路由和地址分配。综合起来,这些规则大致可分为两类:
            (1)包间规则:这些规则规定了网络流中多个包的报头字段之间的关系和顺序。例如,在典型的TCP连接中,数据包需要正确排序,从涉及SYN和SYN-ACK标志的握手过程开始。通过对序列号和确认号进行对齐,保证了数据传输的完整性。不匹配或不正确的排序可能会中断连接或数据传输过程。
            (2)包内规则:这些规则涉及单个数据包的结构和内容。例如,许多协议报头都有一个基于数据包内容计算的校验和字段,以检测传输过程中的错误。校验和与数据包的有效负载一致是至关重要的。此外,数据包中的某些字段,如TCP和UDP报头中的端口号,必须遵守特定的格式和值约束,以确保数据包的有效性和正确的路由。
            确保遵守这些规则至关重要。格式正确的流量不仅效率更高,而且对于网络应用程序设备(如分析工具、路由器和防火墙)也至关重要,这些设备依赖于结构良好的数据包才能正常工作。合成数据生成的挑战,特别是在针对ML准确性进行优化时,在于ML模型主要关注有助于分类或预测准确性的特征中的模式。这些模型可能会忽略复杂的协议规则,而采用增强分类性能的模式。例如,ML模型可能认为某些位模式对于分类特定类型的流量是重要的,即使这些模式违反了协议规则。虽然使用ControlNet有助于通过确保正确的字段填充来近似一般协议和报头字段值分布,但它并不能完全捕获特定位级值的细微差别。机器学习优化和协议规则遵从之间的这种差异强调了生成后调整的必要性。生成后的调整提供了一种更易于管理的方法来优化生成的数据以符合协议,而不是完全修改机器学习生成过程,这将需要嵌入来自领域知识的大量规则约束。
          • 协议规则遵从性的后处理启发式算法


            为了最大限度地提高编码合成网络流量对传输和网络层协议规则的遵从性,首先识别出严格遵守其格式规则的关键报头字段子集,例如,序列号和确认号。相反,有些字段可以在不影响网络流量完整性的情况下提供一定程度的灵活性,例如TCP窗口大小或TTL。这里的目标是限制在后处理期间需要修改的字段范围,确保尽可能多地保留原始生成模型的输出。这样做能够最大限度地减少对ML驱动任务的潜在影响,同时仍然确保合成流量与网络分析工具的兼容性。在确定了关键字段之后,本文开发了一种基于其他生成字段的系统方法来计算它们的正确值,这是通过构造两个依赖树来实现的,一个用于包内报头字段依赖,另一个用于包间依赖。这些树建立在领域知识的基础上,来源于标准的网络协议文档[1 - 5,16]。尽管构建它们需要大量的手工工作来从这些标准中提取关键的协议规则,但这个过程是一次性的。未来应用程序和迭代将受益于这个基础工作,而不需要重复的工作。图3中给出了TCP协议的示例协议规则和相关依赖树。[https://anonymous.4open.science/r/packet-capture-dependency-DB0C/README.md]
            给定生成的编码网络流量,以自动的、自底向上的方式遍历树来开始校正过程。最初满足包内依赖关系,确保单个包在内部保持一致。随后处理包间的依赖关系,保证流中的包正确地相互关联。某些字段需要在相同网络流量轨迹(如IP地址和端口)中的数据包之间保持一致性。
            其他的需要特定的初始化值,比如IP标识号和TCP确认号。为了确定这些字段的最合适值,采用多数投票系统,在生成的流量中选择出现最频繁的值。
            另一个值得注意的挑战是单个数据包的时间戳分配,因为它具有复杂的时间序列依赖性。扩散模型虽然擅长于空间依赖性,但可能会与时间序列中固有的长期时间模式作斗争。因此,当前的生成过程并没有为此完全优化。作为一种临时解决方案,从真实流量中采样原始时间分布,以在生成后的合成数据中产生类似的时间戳分布。算法1给出了实现IP报头报文内依赖关系调整的后处理算法示例。
            ​完成这些步骤后,合成流量应该处于严格遵守确定的基本协议规则的状态。这种后处理确保编码合成流量可以无缝地转换为原始网络流量格式(如pcap),然后用于一系列非ML任务。
            • 后处理启发式算法(IP报文头部的分组内的依赖调整)
              line1:input:扩散模型生成的合成流量
              line2:对随机采样的真实流的源IP地址分布(𝑃_src)进行分析和排序 //确保合成流中的报文方向与真实流的方向保持一致
              line3:从𝑃_src选择出现频率最高的两个IP地址(𝐼𝑃1、𝐼𝑃2) //选择出现频率最高的源IP地址作为跃迁概率建模的主节点
              line4:利用跃迁概率𝑇_𝐼𝑃1→𝐼𝑃2和𝑇_𝐼𝑃2→𝐼𝑃1构建合成IP地址序列(𝐼𝑃_𝑠𝑒𝑞𝑢𝑒𝑛𝑐𝑒>) //利用跃迁概率对合成序列中𝐼𝑃1和𝐼𝑃2之间切换的可能性进行建模,反映真实流量中的包流动态
              line5:在合成流中使用𝐼𝑃_𝑠𝑒𝑞𝑢𝑒𝑛𝑐𝑒修改报文方向
              line6:if version_field≠'IPv4(0100)',则设置为'IPv4(0100)' //确保Version字段遵循IPv4标准以兼容
              line7:对于IPv4报头中的bit:if bit = -1,则将bit设置为random(0,1) //将IPv4报头中的未定义位替换为随机的二进制值,以保持结构完整性
              line8:通过最大化(∑φ中的非负bits / φ中的总bits)识别合成流中的IPv4协议φ //通过最大化IPv4协议中有效位与总位的比率来优化协议识别
              line9:对于非IPv4报头中的bit:if bit ∉ φ,则将bit设置为-1 //丢弃非IPv4报头中不相关的位,以保证IPv4协议的一致性
              line10:对于IPv4 options中的bit:if bit≠-1,则将bit设置为-1 //使IPv4选项位过时以反映现代互联网协议
              line11:如果IPv4 TTL = 0,则在所有数据包中使用多数投票设置TTL //最小IPv4 TTL保证以防止数据包超时
              line12:'HL'字段设置为IPv4字段的活跃位数 //调整HL (Header Length)字段,以准确表示IPv4报头中的活跃位数
              line13:output:用IP报头包内依赖合规性后处理的合成流量
      • 【内容4】evalution
        (1) 评估合成数据保真度的统计比较 (2) 模型准确性评估,以确定其在增强机器学习结果方面的作用
        (3)在非ML场景中,将合成数据应用于各种网络分析和测试场景来探索其更广泛的能力
        • Dataset Overview and Synthetic Traffic Generation
          • 视频流、视频会议和社交媒体等领域的十个突出应用程序的流量

          • 在预处理过程中,对DNS查询进行分析,识别出与指定业务和应用相关的IP地址,只保留与这些IP地址相关的报文,并将流量分成单个流。为每个处理过的流保留应用程序和服务标签,这些标签稍后用于生成文本提示和评估分类准确性
        • Statistical and ML Performance Analysis
          • Statistical Similarity Results 统计相似度结果


            衡量合成数据质量的一个主要标准是它与原始数据的统计相似性。这种比较是至关重要的,因为合成数据的本质在于它能够表示真实数据的统计属性,而不完全镜像真实数据。确保统计相似性可以确保在合成数据上训练的模型可以很好地推广到现实世界的场景。
            baseline:(1)NetShare方法,该方法产生合成NetFlow属性并优于大多数其他基于GAN的方法[142];(2)朴素随机生成方法,生成纯粹的随机值,充当了最坏情况的角色,说明了相似性的下限,并强调了更复杂的方法所增加的价值。
            在聚合级别(包含所有特征)和更集中的级别(仅针对NetDiffusion和NetShare之间的共同特征)检查相似性。
            三种不同的度量来量化统计相似性:Jensen-Shannon散度(JSD)、总变异距离(TVD)和Hellinger距离(HD)。JSD衡量分布之间的信息重叠,提供对共享模式的洞察。TVD捕获两个分布之间的最大差异,突出最坏情况下的差异。基于欧几里得距离的HD对分布尾部的差异特别敏感,可以揭示罕见事件或异常值的差异。总的来说,这些指标提供了真实数据集和合成数据集之间统计重叠的整体视图。所有三个指标的值范围在0到1之间,值越接近0表示统计相似性越高,因此与原始数据集的相似性越高。

          • ML Classification Results ML分类结果
            任务一:在粒度级别对网络流进行分类,将它们与相应的应用程序(微观级别)对齐。
            任务二:在更广泛的范围内操作,将流分类为它们的总体服务(宏观级)。
            使用随机森林(RF)、决策树(DT)和支持向量机(SVM)三种主要模型进行评估ACC。具体来说,在涉及分类任务的场景中,类是(或被设计成)近似平衡的,准确度提供了模型在所有类上的执行情况的清晰图像。利用合成数据,评估了三种不同的增强方案:
            •完全合成数据使用:在这里,训练集或测试集完全由合成数据组成,例如,只对合成数据进行训练,对真实数据进行测试,反之亦然。这种方法测试了合成数据的健壮性及其模拟真实世界数据复杂性的能力。孤立地使用合成数据可确保模型在训练期间不会受到真实数据集的任何固有模式的影响,从而可以评估合成数据的独立质量。
            •混合数据比例:合成数据以不同的比例穿插在真实数据中,例如,在训练期间,合成数据和真实数据之间的比例为50-50。该策略评估真实数据和合成数据之间的协同作用。混合允许模型从合成数据的多样性中受益,同时仍然将学习过程建立在现实世界的模式中,从而潜在地提高泛化能力。
            •类失衡纠正:专门使用合成数据来解决和纠正训练集中的类失衡。例如,使用合成数据增强真实数据集中未被充分表示的类,直到达到平衡。这种有针对性的增强确保了模型暴露于所有类的平衡表示,减轻了偏见并提高了少数类的性能。解决类不平衡是至关重要的,因为它可以防止模型偏向于过度代表的类,从而提高它们在所有类中的预测准确性。

            • Result on Complete Synthetic Data Usage


              (1) 与更广泛的宏观级别分类相比,微观级别任务的特异性增加通常会产生较低的准确性。
              (2) 原始网络流量中固有的丰富特征空间提供了大量可学习的模式,可以提高模型的准确性。有了更广泛和更复杂的特性集,模型就有更多的空间来识别和利用合成网络流量数据中的复杂模式、细微差别和相关性,以增强其预测能力。同时,真实数据集和合成数据集之间更高的统计相似性,意味着合成的网络流量数据更接近地反映了现实世界的模式。反过来,这意味着真实数据集中对区分网络流至关重要的特征可能在合成数据集中保留其判别能力。这种特征重要性的保留确保了在合成数据上训练的模型可以更有效地推广到现实世界的场景。
              [表5:宏观层面RF特征对完整NetDiffusion合成数据使用的重要性。绿色高亮表示与真实/真实场景共享的报头字段。特征结构:packet_protocol_header_bit]如表5所示,当在NetDiffusion合成数据上进行训练并在真实数据上进行测试时,RF模型显示出优先考虑特征的倾向(在标题级别上),这些特征在真实数据上进行训练和测试时也是至关重要的。这种对特定特征子集的细微关注表明,该模型有能力识别和利用反映现实世界流量的合成数据中的模式。
              (3) 后启发式用于增强合成网络流量对协议规则的遵守,同时最小化地改变扩散模型的输出。启发式算法仅影响约8%的合成流量特征,对机器学习性能产生边际影响,在所有场景中准确性降低范围为0.013至0.067。这种轻微的精度下降符合预期:扩散模型擅长在拟合和生成过程中实现与真实数据的高统计相似性,从而提高ML精度。然而,为协议遵从性而进行的必要的生成后启发式调整不可避免地会改变输出。尽管努力将这种干扰最小化,但它确实会轻微影响准确性,因为它偏离了模型的原始生成输出。
            • Result on Mixed Data Proportions


              引入“混合率”来表示训练集中真实数据被合成数据取代的百分比。这种方法确保了训练集大小在不同混合率下保持不变,从而能够清楚地评估混合率与最终模型精度之间的相互作用。将合成数据的受控混合引入实际数据集中,通常可以通过引入不同的模式来增强模型的鲁棒性,这种做法被认为是数据增强中的标准做法。
              (1) 图4a所示,使用NetDiffusion生成的流量增强的数据集训练的模型,始终比使用NetShare生成的NetFlow特征的模型获得更高的分类精度。
              (2) 使用真实数据进行测试,模型完全训练于真实网络流量比仅在真实NetFlow上训练的流量显示出明显更高的准确性。当将合成网络流量数据集成到训练中时,任何潜在的准确性下降都会被真实网络流量固有的更高的基线准确性所抵消。简单地说,有了更准确的起点(真实网络流量),在准确性明显下降之前就有了更多的“缓冲”。另一个关键因素是,与NetShare的NetFlow数据和真实NetFlow数据的相似性相比,NetDiffusion生成的流量与真实NetFlow数据的统计相似性更高。有了这种更接近的相似性,当将更多的合成数据纳入训练时,准确度的逐渐下降不如使用NetShare的NetFlow数据时明显,特别是在宏观级别分类中。这种优势并不局限于对真实数据的测试。即使在对合成数据进行评估时,使用NetDiffusion输出训练的模型通常也优于使用NetShare训练的模型。此外,与表4中先前的发现一致,RF模型由于生成后的修改而几乎没有精度下降。
              (3) 当训练集的数据组成与测试集明显偏离时,准确性会急剧下降。例如,当混合率超过0.8时,宏观级分类精度下降。这是预期的,因为训练集中需要来自测试数据分布的足够样本来进行有效的交叉验证。随着混合率的增加,模型可能会与合成数据过拟合,从而影响模型对实际数据的性能。这种行为在随着混合率的增加而变化的特征重要性中表现得很明显。在实际场景中,很少会严重依赖或完全依赖合成数据进行训练。研究结果表明,除极端情况外,NetDiffusion产生的流量可以有效地用于训练。
              (4)在不同的模型选择中,如图4b所示,NetDiffusion-augmented数据集通常比NetShare-augmented NetFlow数据集具有更好的机器学习性能。值得注意的是,SVM分类器表现出明显优异性能。支持向量机本质上擅长处理具有高维和复杂特征关系的数据集。原因在于SVM能够将原始数据转换到更高维度的空间,并找到最优的超平面来分离不同的类。特征空间越丰富、越复杂,这种能力就越有利。这个观察结果强调了NetDiffusion在生成合成网络流量中的重要性,它保留了真实流量的复杂性,允许像SVM这样的复杂分类器有效地识别模式和关系。
            • Result on Class Imbalance Rectification


              在许多用于训练的数据集中,类不平衡是一个普遍存在的挑战。这种不平衡会对模型性能产生负面影响,因为在不平衡数据上训练的模型可能难以正确分类未被充分代表的类,特别是当实际测试数据显示出更平衡的分布时。为了解决这个问题,一个可行的方法是通过将合成数据附加到少数类中来选择性地增加训练集,以确保类分布均匀。同时,通过限制将合成数据添加到表示良好的类中,最大限度地减少了与集成合成数据相关的缺点,例如,正如在混合数据比例的情况下所观察到的,由于过度引入的变化和训练集中真实数据量不足而导致准确性降低的风险。与SMOTE[26]、随机过采样[15]、ADASYN[52]和boosting[47]等传统方法相比,使用合成数据具有优势。它产生了多样化和新颖的示例,丰富了特征空间,并支持模型泛化到未知的现实世界场景。虽然像SMOTE这样的技术复制了真实数据的密切对应,但它们可能会错过某些变化。
              使用NetDiffusion生成的网络流量应用合成平衡,通过迭代生成未充分表示的类的实例,直到所有类具有相同的表示,从而在所有应用程序中产生平衡的网络流量数据集。类似地,NetFlow数据集使用来自NetShare的合成属性进行平衡。然而,由于基于GAN的方法在即时调用生成中的局限性,通过为每个特定类独立训练NetShare GAN来解决代表性不足的问题。
              (1) 评估显示,在平衡NetDiffusion数据集上训练的模型可以匹配或优于在原始不平衡数据集上训练的模型,如表8所示。值得注意的是,准确性的提高主要归功于改进的以前未被充分代表的类的表现。例如,DT模型中,使用NetDiffusion增强数据集可以观察到总体分类精度显著提高0.09。对这种改进的仔细分析指出Meet和Zoom流量是主要受益者,这两个代表性不足的类的样本数量大约是原始真实数据集中最密集类的一半或更少。分类准确率分别提高0.091和0.045。相比之下,使用NetShare增强的NetFlow数据集训练的分类器不会产生这样的增益,有时甚至会面临精度下降的问题。这进一步强调了NetDiffusion生成的流量具有更高的保真度,它不仅更接近真实数据,而且支持更大的特征空间以增强模型性能。
        • Extendability to Additional Network Anlysis and Testing Tasks
          合成数据增强的作用不仅仅局限于机器学习性能,尤其是在网络领域。虽然以机器学习为中心的任务可能主要关注于确保生成的、编码的网络流量产生与真实流量具有高度统计相似性的一致的特征集,但传统的网络分析和测试任务需要将生成的数据转换回原始格式,例如数据包捕获。此外,这些任务需要遵守特定的协议规则。通过利用ControlNet的功能和后启发式技术,NetDiffusion促进了网络流量的生成,这些流量可以无缝地转换为原始数据包捕获,同时保持对协议规则的强大遵守。
          为了说明这一点,以NetDiffusion生成的Amazon网络合成流量为例,证明:(1)生成的流量可以通过著名的网络分析工具Wireshark顺利解析和解释,不会遇到异常;(2)合成流量支持重传,并通过已建立的数据包重传工具tcpreplay进行了验证。
          此外,还证明了NetDiffusion生成的流量可以成功地支持广泛的常见网络任务,从复杂的流量分析到网络行为研究。至关重要的是,这些任务中通常使用的衍生特征可以使用Scapy从NetDiffusion的输出中提取[106]。
          这强调了本文方法的多功能性,表明NetDiffusion的合成网络流量可以集成到大量的网络分析和测试任务中,超出了以机器学习为中心的应用程序的限制。
          • Wireshark Parsing Analysis


            表9详细描述了Wireshark解析NetDiffusion合成流量的结果,并存储为capsinfo日志[16]。可以得出几点观察:
            ​(1)数据格式和完整性:生成的流量以原始IP封装的标准pcap格式存储,这证实了合成数据遵循广泛接受的网络跟踪数据格式,确保了与网络工具的广泛兼容性。
            ​(2)综合指标:提供Wireshark用于描述和分析流量的所有基本指标,从数据包计数和数据大小到封装和定时细节。这些观察结果强调了设计在生成符合协议规则的合成流量方面的成功,确保了与要求结构和语义正确性的分析工具(如Wireshark)的兼容性。
          • Tcpreplay’s Retransmission Analysis


            表10揭示了通过tcpreplay的合成流量的重传能力[43]。值得注意的结果是:
            (1)重传成功:所有1024个数据包都成功发送,没有任何失败或截断,表明流量的高保真度和遵守传输层协议规则。
            (2)正确的数据包处理:重试数据包为零以及唯一流数据包与成功数据包的精确匹配等指标,进一步重申了合成流量的质量。
            ​(3)指标完整性:关键指标,如数据比特率和分组速率,对评估流量特性至关重要,在合成流量和真实流量中都存在并定义良好。但是,合成流量和真实流量之间的度量值(例如发送的总字节数和速率)存在明显差异。考虑到NetDiffusion在位级别上生成流量流,这种差异是可以预料到的。因此,即使是很小的偏差,比如8位报头字段中的单个比特的差异,也会导致字段值的显著改变。解决这个问题可能涉及在生成过程中更精确的控制,或者在生成后启发式中实现价值重新缩放,这将留给未来的工作。
          • Feature Extraction for Core Network Analysis Tasks


            与NetShare等早期工作相比,NetDiffusion生成流量的一个显著特性是能够使用Scapy等工具从合成流量中获得详细指标,这使得它在广泛的网络分析任务中非常有价值。为了证明这一点,本文评估了合成流量在代表性任务上的适用性,包括流量和协议分析[14,19,41,69,127,147],网络性能评估[19,41],设备识别[70,89],路由和用户行为表征[12,18,51,108,133],以及错误评估[60,113,126]。
            ​(1)如表11所示,以Amazon流量为例,本文的合成网络流量有效地提供了基本指标,如数据包和字节计数,以及更细微的度量,如用于路由行为分析的平均TTL。
            ​(2)此外,与网络性能、设备识别、路由行为和错误分析相关的指标进一步强调了合成流量的真实性和粒度。
            ​(3)值得注意的一点是,在真实和合成数据集中,校验和错误和分段数据包等错误度量的零计数强调了合成流量的语义正确性。虽然合成数据的一些度量值与真实流量之间存在差异,特别是在TCP标志分布等领域,但这些差异是生成方法固有的。本文方法不是仅仅复制真实的数据值,而是生成它们,并引入变量来增强数据的多样性。维护这些变化的现实性和下游任务的结果度量的效用之间的微妙平衡需要一个微妙的、特定于任务的评估。
            ​在未来迭代中的目标是专注于增强合成数据和真实数据度量之间的一致性,例如解决合成数据中非ack数据包的过度表示——这反映了与模拟TCP状态机相关的复杂性。
          • 结论:NetDiffusion生成的流量通过允许为额外的网络任务提取重要指标而脱颖而出,这是以前的工作所缺乏的功能,因为它们无法生成符合协议规则的细粒度网络流量。
    • future work
      • transformer在生成文本等顺序数据方面显示出有效性,这表明它们在网络流量生成方面具有潜力。关键挑战包括适当的数据包捕获标记化和维护长上下文以生成有意义的流。NetDiffusion也可以尝试在未来的工作中通过简单地提高图像分辨率来解决长上下文的问题。
      • 鉴于在扩散生成过程中管理相互依赖约束的复杂性质,当前的协议规则遵从方法是后生成的。未来的目标是将规则直接嵌入到生成管道中,从而消除后续调整的需要。与此同时,尽管在NetDiffusion的实现中利用预训练的ControlNet模型进行受控生成,但从头开始训练专用的ControlNet模型以实现超越一般协议分布的细粒度控制是可行的,这也可以作为避免过度生成后调整的潜在解决方案。实现这一目标的一个可行策略包括管理专注于特定属性的ControlNet训练数据集,例如专门提供TCP选项。这种有针对性的训练可能有助于有效地对流的特定方面实施约束。
      • 由于时间依赖性起着关键作用,后续目标是改进扩散模型,以直接学习和生成时间序列,为包间时间依赖性提供更细致的方法。目前被限制在每个流样本1024个数据包,试图解决这个限制,可能通过表格扩散等技术来保留数据包依赖关系或顺序流生成。
      • 建立一个特定于网络的扩散基础模型,这可以进一步提高生成的准确性。最后,生成语义上有意义的有效载荷仍然是一个挑战,像自动编码器这样的潜在解决方案为未来的工作提供了一个有希望的方向。
    • 参考文献
      • [142] Yucheng Yin, Zinan Lin, Minhao Jin, Giulia Fanti, and Vyas Sekar. 2022. Practical gan-based synthetic ip header trace generation using netshare. In Proceedings of the ACM SIGCOMM 2022 Conference. 458–472.
      • [58] Jordan Holland, Paul Schmitt, Nick Feamster, and Prateek Mittal. 2021. New Directions in Automated Traffic Analysis(CCS ’21). Association for Computing Machinery, New York, NY, USA, 3366–3383. https://doi.org/10.1145/3460120.3484758
      • [107] Robin Rombach, Andreas Blattmann, Dominik Lorenz, Patrick Esser, and Björn Ommer. 2022. High-resolution image synthesis with latent diffusion models. In Proceedings of the IEEE/CVF conference on computer vision and pattern recognition. 10684–10695.
      • [59] Edward J Hu, Yelong Shen, Phillip Wallis, Zeyuan Allen-Zhu, Yuanzhi Li, Shean Wang, Lu Wang, and Weizhu Chen. 2021. Lora: Low-rank adaptation of large language models. arXiv preprint arXiv:2106.09685 (2021).
      • [146] Lvmin Zhang, Anyi Rao, and Maneesh Agrawala. 2023. Adding conditional control to text-to-image diffusion models. In Proceedings of the IEEE/CVF International Conference on Computer Vision. 3836–3847.
      • [119] Nirhoshan Sivaroopan, Dumindu Bandara, Chamara Madarasingha, Guilluame Jourjon, Anura Jayasumana, and Kanchana Thilakarathna. 2023. NetDiffus: Network Traffic Generation by Diffusion Models through Time-Series Imaging. arXiv preprint arXiv:2310.04429 (2023).
  •  
posted @ 2024-04-09 09:47  阿洛萌萌哒  阅读(11)  评论(0编辑  收藏  举报