Packet classification is a core function in software-defined networks, and learning-based methods have recently shown significant throughput gains on large-scale rulesets. However, existing learning-based approaches struggle with overlapping rules, leading to incomplete model coverage or excessive rule replication. Their limited GPU integration also hampers performance with large-scale rulesets. To address these issues, we propose TaNG, which utilizes a single neural network trained on multi-dimensional features to ensure complete coverage without duplicating rules. TaNG employs a semi-structured design that combines the neural network model with a tuple space, reducing model complexity. Furthermore, we develop a mechanism based on the semi-structure for rule updates. Finally, we implement a CPU-GPU hybrid streaming framework tailored for learning-based methods, further enhancing throughput. On our GPU-based classification framework with 512k rulesets, TaNG achieves 12.19x and 9.37x higher throughput and 98.84x and 156.98x higher performance stability compared to two state-of-the-art learning methods NuevoMatch and NeuTree, respectively.
翻译:数据包分类是软件定义网络中的核心功能,基于学习的方法最近在大规模规则集上展现出显著的吞吐量提升。然而,现有的基于学习的方法难以处理重叠规则,导致模型覆盖不完整或规则过度复制。其有限的GPU集成也阻碍了大规模规则集下的性能表现。为解决这些问题,我们提出TaNG,该方法利用在多元特征上训练的单一神经网络来确保完全覆盖,而无需复制规则。TaNG采用半结构化设计,将神经网络模型与元组空间相结合,从而降低模型复杂度。此外,我们开发了一种基于半结构的规则更新机制。最后,我们实现了一个专为基于学习方法定制的CPU-GPU混合流式处理框架,进一步提升了吞吐量。在我们基于GPU的、包含512k规则集的分类框架上,与两种最先进的学习方法NuevoMatch和NeuTree相比,TaNG分别实现了12.19倍和9.37倍的更高吞吐量,以及98.84倍和156.98倍的更高性能稳定性。