使用基于树的二进制模式匹配的数据分组分类的复合屏蔽和熵制造技术

技术编号:10623146 阅读:294 留言:0更新日期:2014-11-06 16:06
在分组数据网络的网络元件中的方法为分组数据网络策略的应用分类数据分组。将根节点复合位屏蔽应用于接收的数据分组的位。数据分组具有多个字段中的数据。复合位屏蔽包括多个位屏蔽,每个位屏蔽具有不同的数据分组字段中的位。将复合位屏蔽的屏蔽的位应用于根节点位表,复合位屏蔽的每个位屏蔽一个根节点位表。基于根节点位表查找从根节点中选择分支节点。

【技术实现步骤摘要】
【国外来华专利技术】使用基于树的二进制模式匹配的数据分组分类的复合屏蔽和熵
本专利技术的实施例涉及分组数据通信中的数据分组分类的领域;并且更具体地涉及模式匹配树中的复合屏蔽(mask)。
技术介绍
许多网络服务使用分组分类,例如路由、接入控制、基于策略的路由、服务质量差异化、计费等。在一个应用中,分组分类器检查分组来确定是否转发或过滤分组并且将适当分类的服务应用于分组。分类通常是基于读取分组的报头中的数据(例如,地址、端口号或数据分组的报头和报尾位中的其它字段)。在最简单的实现中,将适当字段中的值应用于查找表并且当存在匹配时,将对应的规则或策略应用于分组。一些分组分类系统使用接入控制列表(ACL)来执行二进制模式匹配。ACL由用于对位进行分类的位模式或规则组成。过滤器ACL用于确定是否承认给定的位字段。在基于分组的通信网络中(其中ACL规则可基于分组报头中的地址和端口信息)使用ACL。ACL还可基于深入到深度包检验的分组的字段。在基于分组的网络中使用策略ACL来将业务分类成每个接收单独的处理的类别(例如,在转发、排队、速率限制以及标记的方面)。为了完整的分组路由,所有这些列表必须被检查并且与输入的分组匹配。在一些应用中,可由不同的路由器来完成匹配并且可忽略一些ACL以便节省时间。为了允许高速地路由许多不同类型的分组,分组分类已前进超越简单的查找表。一些系统使用分级的查找过程(其中检查封装的第一部分)。那个检查的结果用于在分支的决定过程中选择将检查的第二部分。此分类继续采取不同的分支直至达到最终分类。虽然使用了更多的步骤,但是过程中的每个步骤是简化的并且如果系统是良好设计的,则分类更快。这可以被称作基于树的分类,其中第一决定是根节点并且每个产生的决定是分支节点。最后的分支节点被称作叶节点。在叶节点过程之后,将分组分类。为了更快地路由各种不同的分组,必须在查找时间、处理和存储器使用的方面提高模式匹配算法。与实现用于不同类型的ACL(例如,IPv4(因特网协议版本4)、IPv6(IP版本6)、以太网、ATM(异步传输模式)等)的算法关联的成本将使这变得更困难。已经开发TCAM(三元内容关联存储器)硬件加速算法来处理这些问题。TCAM使用并行硬件来并行检查所有规则。虽然硬件是快的,但是它很贵并且要求大量的存储器资源和高的功耗。在具有数千个会话的应用(其中要求个别ACL)中,TCAM系统的资源可耗尽。
技术实现思路
本专利技术的实施例允许分组分类树来使用复合屏蔽用于分组分类以便在更少步骤中并且使用更少的资源来遍历树。使用候选位屏蔽上的熵可更有效和更直接地定义分组分类树。产生的树在使用更少的处理资源来对分组进行分类时更有效。在一个实施例中,本专利技术包含在分组数据网络的网络元件中为分组数据网络策略的应用分类数据分组的方法。将根节点复合位屏蔽应用到接收的数据分组的位。数据分组具有多个字段中的数据。复合位屏蔽具有多个位屏蔽,每个位屏蔽具有不同的数据分组字段中的位。将复合位屏蔽的屏蔽的位应用于根节点位表,复合位屏蔽的每个位屏蔽一个根节点位表。基于屏蔽位匹配的位表查找从根节点中选择分支节点。在分支节点处,将与选择的分支节点关联的分支节点位屏蔽应用于接收的数据分组的位。将选择的分支节点位屏蔽的屏蔽的位应用于至少一个分支节点位表,并且基于选择的分支节点位屏蔽的分支节点位表查找来分类接收的数据分组。在另一实施例中,在分组数据网络中使用网络元件来为分组数据网络策略的应用分类数据分组。网络元件包括从分组数据网络接收数据分组的入口模块、基于策略将数据分组转发到另一网络元件的出口模块、网络处理器。网络处理器有具有多个位表的分类树。网络处理器将根节点复合位屏蔽应用于接收的数据分组的位。复合位屏蔽包括多个位屏蔽,每个位屏蔽具有不同的数据分组字段中的位。网络处理器将复合位屏蔽的屏蔽的位应用于根节点位表,复合位屏蔽的每个位屏蔽一个根节点位表。它基于根节点位表查找从根节点中选择分支节点。它将与选择的分支节点关联的分支节点位屏蔽应用于接收的数据分组的位。它将选择的分支节点位屏蔽的屏蔽的位应用于至少一个分支节点位表,并且它基于分支节点位屏蔽的分支节点位表查找来分类接收的数据分组。在另一实施例中,本专利技术包含为由分组数据网络的网络元件用于为分组数据网络策略的应用分类数据分组的分组分类树生成位屏蔽的序列的方法。方法包含选择多个位屏蔽作为候选根节点位屏蔽,基于屏蔽的位的不同的值的概率来为每个位屏蔽计算熵,从候选根节点位屏蔽选择位屏蔽作为分组分类树的根节点位屏蔽,并且为选择的位屏蔽定义根节点位表来指向分组分类树的分支。方法还包含选择分支节点位屏蔽以及定义分支节点位表来指向策略以分类数据分组。在另一实施例中,非暂时性计算机可读介质具有存储于其上的指令,所述指令当由机器执行时使机器执行操作,以便为由分组数据网络的网络元件用于为分组数据网络策略的应用分类数据分组的分组分类树生成位屏蔽的序列。操作包含选择多个位屏蔽作为候选根节点位屏蔽,基于屏蔽的位的不同的值的概率来为每个位屏蔽计算熵,从候选根节点位屏蔽选择位屏蔽作为分组分类树的根节点位屏蔽,以及为选择的位屏蔽定义根节点位表来指向分组分类树的分支。操作还包含选择分支节点位屏蔽以及定义分支节点位表来指向策略以分类数据分组。附图说明通过参考下文的描述和用于图示本专利技术的实施例的附图可最好地理解本专利技术。在图中:图1是根据本专利技术的一个实施例的起到接入节点的作用的网络元件的一个实施例的图;图2A是图示根据本专利技术的一个实施例的作为一组线路和数据处理卡的图1的网络元件的框图;图2B是图示根据本专利技术的一个实施例的适合于用作网络处理器的示范性计算机系统的框图;图3是图示根据本专利技术的一个实施例的数据分组分类树的构造及其在网络元件中的使用的通信流程图;图4是根据本专利技术的一个实施例的遍历分组分类树的过程流程图;图5是根据本专利技术的实施例的将位屏蔽和查找表应用于数据分组的图;图6是根据本专利技术的一个实施例的操作分组分类树的过程流程图;以及图7是根据本专利技术的实施例的生成分组分类树的过程流程图。具体实施方式在下文的描述中,阐述大量的具体细节。然而,要理解,可在没有这些具体细节的情况下实践本专利技术的实施例。在其它实例中,为了不模糊此描述的理解,没有详细示出已知的电路、结构和技术。在其它实例中,为了不模糊本专利技术,没有详细示出控制结构、门级电路和完整的软件指令序列。在说明书中对“一个实施例”、“实施例”、“示例实施例”等的参考指示描述的实施例可包含特定特征、结构或特性,但是每个实施例可不一定包含特定特征、结构或特性。此外,这样的短语不一定指相同的实施例。另外,当结合实施例来描述特定特征、结构或特性时,认为结合其它实施例来实现这样的特征、结构或特性(无论是否明确描述)是在本领域的技术人员的知识内。在下文的描述和权利要求中,可使用术语“耦合”和“连接”以及它们的派生词。应该理解这些术语不旨在作为彼此的同义词。“耦合”用于指示两个或者更多元件(它们可以或可以不彼此直接物理或电接触)彼此合作或交互。“连接”用于指示彼此耦合的两个或者更多元件之间的通信的建立。可使用软件、固件和/或硬件的不同组合来实现本专利技术的不同实施例。因此,可以使用在一个或多个电子装置(例如,终端站、网络元件)上存储并且执本文档来自技高网
...
使用基于树的二进制模式匹配的数据分组分类的复合屏蔽和熵

【技术保护点】
一种在分组数据网络的网络元件中为分组数据网络策略的应用对数据分组进行分类的方法,包括:将根节点复合位屏蔽应用于接收的数据分组的位,所述数据分组具有多个字段中的数据,所述复合位屏蔽包括多个位屏蔽,每个位屏蔽具有不同的数据分组字段中的位;将所述复合位屏蔽的屏蔽的位应用于根节点位表,所述复合位屏蔽的每个位屏蔽一个根节点位表;基于根节点位表查找从所述根节点中选择分支节点;将与选择的分支节点关联的分支节点位屏蔽应用于所述接收的数据分组的位;将所述选择的分支节点位屏蔽的所述屏蔽的位应用于至少一个分支节点位表;以及基于分支节点位表查找来对所述接收的数据分组进行分类。

【技术特征摘要】
【国外来华专利技术】2012.02.29 US 13/408,7711.一种在分组数据网络的网络元件中为分组数据网络策略的应用对数据分组进行分类的方法,包括:将根节点复合位屏蔽应用于接收的数据分组的位,所述数据分组具有多个字段中的数据,所述复合位屏蔽包括多个位屏蔽,每个位屏蔽具有不同的数据分组字段中的位;将所述复合位屏蔽的屏蔽的位应用于根节点位表,所述复合位屏蔽的每个位屏蔽一个根节点位表;基于根节点位表查找从所述根节点中选择分支节点;将与选择的分支节点关联的分支节点位屏蔽应用于所述接收的数据分组的位;将所述选择的分支节点位屏蔽的所述屏蔽的位应用于至少一个分支节点位表;以及基于分支节点位表查找来对所述接收的数据分组进行分类。2.如权利要求1所述的方法,其中所述多个字段包含端口字段、地址字段和报头字段。3.如权利要求1所述的方法,还包括基于所述分类来选择要应用于所述数据分组的规则并且其中所述根节点复合位屏蔽的所述位是影响所述选择的规则是否应用于所述数据分组的位。4.如权利要求1所述的方法,其中所述分支节点位屏蔽是复合位屏蔽并且其中应用所述选择的分支节点位屏蔽的所述屏蔽的位包括将复合位屏蔽应用于多个分支节点位表,所述复合分支节点位屏蔽的每个位屏蔽有一个分支节点位表。5.如权利要求1所述的方法,还包括在分类所述数据分组之前从所述根节点遍历多个分支节点。6.如权利要求1所述的方法,其中将所述屏蔽的位应用于根节点位表包括通过将不同的所述屏蔽的位应用于不同的根节点位子表来并行执行子表查找,组合并行的查找用于组合的结果,并且其中选择分支节点包括将所述组合的结果应用于分支选择查找表。7.如权利要求1所述的方法,其中如果所述选择的分支节点是叶节点,则应用所述选择的分支节点的所述屏蔽的位包括遍历有序的规则集来确定所述规则中的一个或多个是否匹配所述数据分组。8.一种在分组数据网络中用于为分组数据网络策略的应用分类数据分组的网络元件,所述网络元件包括:入口模块,用于从所述分组数据网络接收数据分组,所述数据分组具有多个字段;出口模块,用于基于策略将所述数据分组转发到另一网络元件;以及网络处理器,有具有多个位表的分类树,所述网络处理器操作以:将根节点复合位屏蔽应用于接收的数据分组的位,所述复合位屏蔽包括多个位屏蔽,每个位屏蔽具有不同的数据分组字段中的位;将所述复合位屏蔽的所述屏蔽的位应用于根节点位表,所述复合位屏蔽的每个位屏蔽一个根节点位表;基于根节点位表查找从所述根节点中选择分支节点;将与所述选择的分支节点关联的分支节点位屏蔽应用于所述接收的数据分组的位;将所述选择的分支节点位屏蔽的所述屏蔽的位应用于至少一个分支节点位表;以及基于分支节点位表查找来分类所述接收的数据分组。9.如权利要求8所述的网络元件,其中所述分类树还包括从所述根节点到叶节点的多个分支节点并且其中在分类所述数据分组之前所述网络处理器遍历多个分支节点。10.如权利要求8所述的网络元件,其中所述网络处理器包括用于所述分类树的每个分支的分支选择查找表并且其中所述网络处...

【专利技术属性】
技术研发人员:L伊尔恩斯特伦
申请(专利权)人:瑞典爱立信有限公司
类型:发明
国别省市:瑞典;SE

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1