Packet classification is widely used in network infrastructures and is the key technique that supports security and other functions. The real-time nature of network services naturally demands high classification speed, while the emerging SDN makes rule changes more flexible, thus placing higher demands on the performance of rule update in classification schemes. In this paper, Learning Tuple(LT) is proposed to achieve high classification performance for packets while maintaining the high update characteristics of tuple space-based schemes. Specifically, to solve the issue of excessive tuples and rule overlap due to merging tuples, LT iteratively divides the space by using rule overlap and hash collisions as negative feedback and applies a reinforcement learning algorithm, SARSA, at each level to ensure its reasonableness. Efficient space partitioning guides the construction of tuples, and an excellent rule mapping method called PLR is designed, which improves classification performance. Experimental results demonstrate that compared with classic and advanced classification schemes TSS, TupleMerge, MultilayerTuple, PartitionSort, HybridTSS, and TupleTree, LT achieves average classification performance improvements of 9.23x, 1.74x, 1.45x, 2.85x, 1.37x and 1.25x, as well as average update performance improvements of 1.83x, 6.75x, 1.22x, 6.16x, 1.21x, 10.66x, respectively.
Read full abstract