论文标题
使用R-Tree和现场串联技术的多场数据包分类
Many-fields Packet Classification Using R-Tree and Field Concatenation Technique
论文作者
论文摘要
软件定义的网络是一种方法,可将基于软件的控制平面与为企业网络提出的基于硬件的数据平面取消。 OpenFlow是最著名的灵活协议,可以管理控件和数据平面之间的网络流量。软件定义的网络(SDN)需要针对大型多场规则集检查多达18个字段的数据包标头,以将数据包分类为流量,将数据包分为流量的过程称为数据包分类。网络交换机通过应用相应规则中定义的相同操作来处理所有属于相同流的数据包。数据包分类有助于支持新服务,例如过滤,阻止不安全的站点流量,基于数据包的标头信息路由数据包,并优先考虑特定流量。多场数据包分类的高性能算法对研究社区产生了极大的兴趣。本文提出了一种使用矩形树(R-Tree)实现SDN流量表的多场数据包分类的新方法。在此方法中,每个流表条目中的源和目标IP地址已转换为二维点。该规则字段的其余部分已通过将最重要的位置带有规则的ID以插入R-Tree,将其置于单个字段中,对于每个规则,使用有效的小二进制标志来指示该字段的大小,类型和范围。随后,在矩形树上进行搜索以根据最高优先级找到匹配的规则。在使用类基础数据库的仿真中,结果表明,此方法可实现非常好的性能,分类速度并大大减少内存访问的数量。
Software-defined Networking is an approach that decouples the software-based control plane from the hardware-based data plane proposed for enterprise networks; OpenFlow is the most famous flexible protocol that can manage network traffic between the control and the data plane. Software-Defined Networking (SDN) requires up to 18 fields of the packets header to be checked against a big many-fields ruleset to categorize packets into flows, the process of categorizing packets into flows is called packet classification. Network switches process all packets belonging to the same flow in a similar manner by applying the same actions defined in the corresponding rule. Packet classification facilitates supporting new services such as filtering, blocking unsafe sites traffic, routing packets based on the packet's header information, and giving priority to specific flows. High-performance algorithms for many-field packet classification had been gained much interest in the research communities. This paper presents a new method to implement the many-fields packet classification of SDN flow table using Rectangle Tree (R-Tree). In this method, source and destination IP addresses from each flow table entry have been converted to a two-dimensional point. The remainders of the rule's fields have been concatenated into a single field by taking the most important bits with rules' ID in order to be inserted into the R-tree, for each rule an effective small binary flag is used to indicate the field's size, type, and ranges. Subsequently, searching is performed on the rectangle tree to find the matched rules according to the highest priority. In the simulation using the class-bench databases, the results show that this method achieves very good performance, classification speed and reduces the number of memory accesses significantly.