今天为大家介绍一篇清华大学徐恪教授团队在智能数据平面上的最新研究成果 Pegasus: A Universal Framework for Scalable Deep Learning Inference on the Dataplane。该文章发表在ACM Sigcomm 2025。
文章链接:
https://dl.acm.org/doi/10.1145/3718958.3750529
源代码链接:
https://github.com/afireswallow/Pegasus
Pegasus: A Universal Framework for Scalable Deep Learning Inference on the Dataplane
Yinchao Zhang, Su Yao*, Yong Feng, Kang Chen, Tong Li, Zhuotao Liu, Yi Zhao, Lexuan Zhang, Xiangyu Gao, Feng Xiong, Qi Li, and Ke Xu*
01
研究背景
近年来,智能数据平面(Intelligent DataPlane,IDP)的研究需求持续增长。与传统基于规则的网络方法相比,IDP 借助数据驱动的学习模型,能够实现更为灵活和高效的流量分析,从而突破传统方法在表达能力与适应性方面的局限。借助高性能可编程硬件,IDP 可以将学习模型嵌入网络设备的转发面,在不牺牲网络吞吐与时延的前提下,实现线速率的智能决策。
然而,构建高效 IDP 系统仍面临核心挑战:现有交换机数据平面主要围绕匹配-动作表(Match-Action Table, MAT)抽象设计,虽然适合高速数据包处理和转发,但本质上缺乏表达复杂计算能力的灵活性,例如乘法、指数运算等在深度学习中常见的操作。这限制了深度学习模型在数据平面上的实现。
02
研究动机
为什么将深度学习部署在数据平面?
随着对实时智能网络流量分析的需求日益增长,越来越多的研究致力于将学习模型直接部署在数据平面交换机上,以支持如入侵防御系统(IPS)等任务,实现 Tbps 级吞吐与 ns 级时延的恶意流量识别与拦截。传统方法多依赖于树模型,凭借其结构简单、可解释性强的特点在网络领域被广泛应用。但深度学习的引入为网络任务带来了更多突破性的能力,主要体现在:
网络流量具备天然的时序特性,而深度学习模型如 RNN、1D-CNN 在建模时间序列方面具有天然优势,更适用于网络中的行为识别与流量建模;
深度学习能够直接从原始报文中提取特征,有效避免了在资源受限的数据面环境下进行复杂特征工程的挑战;
网络场景中标注数据稀缺,新型攻击持续出现,如零日攻击等,这些问题使得深度学习中的无监督学习能力尤为关键,有助于模型在面对动态、不确定场景时仍具备自适应能力。
因此,探索如何将深度学习方法有效引入数据平面,不仅是对现有网络智能化能力的增强,更是应对未来网络安全挑战的关键路径。
现有工作
尽管深度学习被广泛认为适合网络任务,但将其部署在以查表为中心的数据面并非易事。深度学习推理通常涉及大量计算,而数据平面通常则围绕匹配-动作表(Match-Action Table, MAT)构建,因此二者之间存在天然冲突,迫使研究者重新设计更适配数据平面的深度学习推理方案。
N3IC提出了一种典型方案,用 XNOR 与 popcnt(统计二进制中1的个数)替代传统的乘法与加法操作,实现了一个简化的二值多层感知机(binary MLP)。但这种全模型二值化的方法精度受限,通用性不足(缺乏对激活函数等操作的支持),且难以扩展到流量规模更大、操作延迟更低的可编程交换机上。
为了解决计算瓶颈问题,BoS 另辟蹊径,直接通过查表方式实现输入到输出的映射,从而规避了所有深度学习计算操作。这种方式仅对输入和输出做二值激活,保留了中间层的全精度运算,相比 N3IC,虽然有着一定程度的准确率提升,但对输入的二值化限制了输入的表达能力,导致精度的下降;n位的输入需要表项,导致查表规模随输入指数级膨胀,可扩展性较差;另外,BoS 主要适用于输入维度较小的模型,如RNN 等逐步处理输入的结构,难以支持更广泛的深度学习模型。
03
Pegasus介绍
为了解决现有方法在精度、通用性和可扩展性方面的不足,Pegasus 提出了一种通用的深度学习推理方法,适用于多种模型结构。
其核心思想是将深度学习中的常见操作(如矩阵乘法、批量归一化(Batch Normalization)、ReLU)统一转化为三个基础原语:Partition、Map 和 SumReduce。这些原语可轻松在可编程交换机上实现,极大提升了模型在数据面落地的通用性。
具体而言:Partition 将原本作用于整个输入的操作,划分为多个细粒度的子计算,每次仅处理最小输入单元;Map 用于对每个输入单元进行查表,提取预计算结果;SumReduce 在多输入场景中进行聚合,减少所需表项规模,降低资源占用。通过这一方式,Pegasus 显著减小了单张表需要覆盖的输入规模,从而使得每张表的查找范围更小、效率更高,提升了可扩展性。
与二值方法不同,Pegasus 支持全精度模型权重(离线预计算),并使用定点表示替代二值表示用于激活输入。例如8位输入仅需256个表项,便能提供更大的数值表达范围,有助于捕捉更细致的特征,从而提升模型预测精度。
此外,为了进一步提升 Pegasus 的可扩展性,Pegasus 还引入两项关键优化以提升原语执行效率:
模糊匹配(Fuzzy Matching):将多个相似的最小单元聚合为一个组,共享一个查表项,以减少查表次数并降低对内存带宽的压力。
原语融合(Primitive Fusion):将多个操作融合为一个表项,进一步减少总表数,提升执行效率。
Pegasus架构图如图:
总结而言,Pegasus引入了以下三项核心创新:
基于原语的深度学习框架:Pegasus 将深度学习操作抽象为可在数据面执行的原语,构建了一个统一的原语框架,使得多种模型无需硬件修改即可直接部署在通用可编程交换机上运行。
面向数据面的模糊匹配机制:引入模糊匹配(Fuzzy Matching)用于查表操作,可利用 P4 中的标准部分匹配规则对特征向量进行压缩索引,避免了穷举式的输入输出映射,显著降低存储与查表开销。此外,该机制还通过压缩输入编码提升融合能力,实现一次查表处理更多输入,同时减少每条流所需的状态量,提升整体扩展性。
数据面友好的原语融合机制:Pegasus 提出面向数据面的原语融合技术,与传统 AI 加速平台上的融合方法不同,不仅减少中间存储和内存访问,还直接降低运算次数,更适用于资源受限的交换芯片环境。
04
实验结果
我们选择了三个公开数据集做流量分类,包括PeerRush、CICIOT2022、ISCXVPN2016。
实验结果表明,Pegasus在数据平面上实现的CNN-L模型,相比N3IC(binary MLP)、BoS(binary RNN)和Leo(决策树模型),准确率提升了平均22.8%、17.9%和17.2%。与同样实现深度学习模型的N3IC和BoS相比,模型大小分别提升了248x和237x,输入规模分别提升了29x和212x。
此外,在可编程交换机上存储每条流的特征需要占用宝贵的SRAM资源,因此传统方法难以支持像CNN-L这类特征丰富的模型。Pegasus 通过两步优化实现了对高维特征的低成本支持:首先,利用神经网络从每个数据包中提取高阶、精炼的特征,有效降低了每条流所需的存储空间;随后,采用模糊匹配将这些特征进一步压缩为索引,显著减小了流存储开销。在仅占用 28 bit 每流存储的情况下,Pegasus 在多个数据集上实现了出色的分类效果,平均准确率相比 Leo、N3IC 和 BoS 分别提升了 16.2%、21.8%、16.9%。同时,其每流存储开销比这三者分别减少了 56、56 和 48 bit。
我们还借助 Pegasus 的通用性实现了 AutoEncoder 模型,用于无监督异常检测,以应对网络中频发且不可预知的恶意流量攻击。在仅使用正常流量训练的情况下,模型在 PeerRush、CICIOT 和 ISCXVPN 数据集上分别取得了 95.0%、89.4%、99.0% 的 AUC,能有效区分正常与异常流量。
在Pegasus中,TCAM用于模糊索引查找,SRAM用于存储映射表,Action Data Bus用于传输查表结果。得益于原语融合,CNN-M虽模型更大但资源占用相对较低。这一优势在CNN-L上更为显著,6083Kb 的模型仅占用 7.12% SRAM 与 13.33% TCAM。尽管 CNN-L 的资源开销高于 BoS 和 Leo,但在高并发流场景下这一劣势被显著缓解。例如,28-bit 版本的CNN-L在支持100万条流时,相比每流需72bit存储的BoS,SRAM 占用降低了21.3%。
尽管Pegasus采用模糊匹配代替精确计算,带来了一定程度的精度损失。我们在边缘设备上使用 CPU(Xeon E5-2699 v4)与四张 V100 GPU 实现全精度对比实验,结果表明 Pegasus 平均仅降低 1.08% 的模型准确率。相比之下,其吞吐性能提升极为显著:较 CPU 提高超 3800 倍,较 GPU 提高超 600 倍。尽管在实际部署中提升可能略低,但在可接受的精度下降范围内,Pegasus 带来了数量级的性能优势,验证了其在高性能场景中的潜力。
05
结语
阻碍可编程交换机实现智能化的根本问题并非算力不足,而是对数据面抽象的低效利用。Pegasus 以简驭繁,借助数据面友好的原语表达深度学习模型,无需引入额外复杂的计算资源,即可在现有交换机上实现部署。Pegasus 的设计聚焦于提升准确率、通用性与可扩展性,实验结果验证了其在智能模型推理中的有效性。它不仅为线速推理提供了可行路径,也为当前“不断堆叠数据面算力”的发展趋势提供了另一种有力选择。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...