Scalable packet classification is a key requirement to support scalable network applications like firewalls, intrusion detection, and differentiated services. With ever increasing in the line-rate in core networks, it becomes a great challenge to design a scalable packet classification solution using hand-tuned heuristics approaches. In this paper, we present a scalable learning-based packet classification engine by building an efficient data structure for different ruleset with many fields. Our method consists of the decomposition of fields into subsets and building separate decision trees on those subsets using a deep reinforcement learning procedure. To decompose given fields of a ruleset, we consider different grouping metrics like standard deviation of individual fields and introduce a novel metric called diversity index (DI). We examine different decomposition schemes and construct decision trees for each scheme using deep reinforcement learning and compare the results. The results show that the SD decomposition metrics results in 11.5% faster than DI metrics, 25% faster than random 2 and 40% faster than random 1. Furthermore, our learning-based selection method can be applied to varying rulesets due to its ruleset independence.
翻译:可缩放包分类是支持防火墙、入侵探测和差别化服务等可扩缩网络应用的关键要求。随着核心网络线率的不断增长,使用手调超光速方法设计可缩放包分类解决方案将成为一个巨大的挑战。在本文件中,我们展示了一个可缩放的基于学习的包分类引擎,为多种领域的不同规则建立一个有效的数据结构。我们的方法包括将字段分解成子集,并利用深度强化学习程序在这些子集上建立单独的决策树。要拆分一个规则板,我们考虑将不同的指标分组,如单个字段的标准偏差,并采用新的称为多样性指数(DI)。我们研究不同的分解方案,并利用深度强化学习和比较结果来为每个方案构建决策树。结果显示,SD分解指标比DI指标快11.5 %,比随机2和40 %快25%。此外,由于规则的独立性,我们基于学习的选择方法可以适用于不同的规则。