CN108632235A - 一种网包分类决策树建立方法及装置 - Google Patents

一种网包分类决策树建立方法及装置 Download PDF

Info

Publication number
CN108632235A
CN108632235A CN201710771899.0A CN201710771899A CN108632235A CN 108632235 A CN108632235 A CN 108632235A CN 201710771899 A CN201710771899 A CN 201710771899A CN 108632235 A CN108632235 A CN 108632235A
Authority
CN
China
Prior art keywords
decision tree
classifying rules
leaf node
collection
template
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710771899.0A
Other languages
English (en)
Other versions
CN108632235B (zh
Inventor
徐达维
任凯
葛长忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN201710771899.0A priority Critical patent/CN108632235B/zh
Priority to US16/643,484 priority patent/US11184279B2/en
Priority to PCT/CN2018/102845 priority patent/WO2019042305A1/zh
Priority to JP2020512410A priority patent/JP6997297B2/ja
Priority to EP18851181.0A priority patent/EP3661153B1/en
Publication of CN108632235A publication Critical patent/CN108632235A/zh
Application granted granted Critical
Publication of CN108632235B publication Critical patent/CN108632235B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/24323Tree-organised classifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/08Learning-based routing, e.g. using neural networks or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/062Generation of reports related to network traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种网包分类决策树建立方法及装置,所述方法包括:根据分类规则集的非模板维度对所述分类规则集进行建树,生成第一类型决策树;根据所述分类规则集的模板维度对所述第一类型决策树的各叶子节点进行建树,生成第二类型决策树;使所述第一类型决策树中的第一类型叶子节点引用同一第二类型决策树。应用本发明实施例可以减少模板维度的重复建树,从而减少决策树的规模,提升支持的分类规则集的规模,进而,提升网络设备的存储空间的利用率,并提升网络设备进行网包分类的处理能力。

Description

一种网包分类决策树建立方法及装置
技术领域
本发明涉及通信技术领域,尤其涉及一种网包分类决策树建立方法及装置。
背景技术
网包分类是指根据网包包头中各不同字段的值查找预先配置的分类规则,得到与之匹配的优先级最高的分类规则,并执行该分类规则配置的操作。许多网络设备提供的诸如访问控制、流量控制、负载均衡或入侵检测等功能均需要使用网包分类。
基于决策树的多域分割算法是一类典型的网包分类方法,其基本思路是将整个多维空间递归地划分成子空间的过程,递归结束的条件是当前子空间中包含的所有规则均在各个维度上填满这个子空间。这个过程可以得到一颗决策树,基于这个决策树对每一个待分类网包进行查找,从而得到网包匹配的分类规则。
实践发现,决策树中节点越多,决策树占用的存储空间也会越多,而网络设备的存储空间是有限的,决策树节点数量过多会限制网包分类算法支持的分类规则集规模。因此,如何在不影响决策树查找效率的情况下,减少决策树的节点数量成为一个亟待解决的技术问题。
发明内容
本发明提供一种网包分类决策树建立方法及装置,以解决现有网包分类决策树节点过多的问题。
根据本发明实施例的第一方面,提供一种网包分类决策树建立方法,包括:
根据分类规则集的非模板维度对所述分类规则集进行建树,生成第一类型决策树,其中,所述第一类型决策树为所述分类规则集对应所述非模板维度的决策树;
根据所述分类规则集的模板维度对所述第一类型决策树的各叶子节点进行建树,生成第二类型决策树,其中,所述第二类型决策树为所述第一类型决策树的叶子节点对应所述模板维度的决策树;
使所述第一类型决策树中的第一类型叶子节点引用同一第二类型决策树;其中,所述第一类型叶子节点为包括的分类规则互为同模子集的叶子节点。
根据本发明实施例的第二方面,提供一种网包分类决策树建立装置,包括:
第一建树单元,用于根据分类规则集的非模板维度对所述分类规则集进行建树,生成第一类型决策树,其中,所述第一类型决策树为所述分类规则集对应所述非模板维度的决策树;
第二建树单元,用于根据所述分类规则集的模板维度对所述第一类型决策树的各叶子节点进行建树,生成第二类型决策树,其中,所述第二类型决策树为所述第一类型决策树的叶子节点对应所述模板维度的决策树;
复用单元,用于使所述第一类型决策树中的第一类型叶子节点引用同一第二类型决策树;其中,所述第一类型叶子节点为包括的分类规则互为同模子集的叶子节点。
根据本发明实施例的第三方面,提供一种网包分类决策树建立装置,其包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:
根据分类规则集的非模板维度对所述分类规则集进行建树,生成第一类型决策树,其中,所述第一类型决策树为所述分类规则集对应所述非模板维度的决策树;
根据所述分类规则集的模板维度对所述第一类型决策树的各叶子节点进行建树,生成第二类型决策树,其中,所述第二类型决策树为所述第一类型决策树的叶子节点对应所述模板维度的决策树;
使所述第一类型决策树中的第一类型叶子节点引用同一第二类型决策树;其中,所述第一类型叶子节点为包括的分类规则互为同模子集的叶子节点。
应用本发明实施例,根据分类规则集的非模板维度对分类规则集进行建树,生成第一类型决策树,并根据分类规则集的模板维度对第一类型决策树的各叶子节点进行建树,生成第二类型决策树,进而,使所述第一类型决策树中的第一类型叶子节点引用同一第二类型决策树,减少了模板维度的重复建树,从而减少了决策树的规模,提升了支持的分类规则集的规模,进而,提升了网络设备的存储空间的利用率,并提升了网络设备进行网包分类的处理能力。
附图说明
图1是本发明实施例提供的一种网包分类决策树建立方法的流程示意图;
图2A是本发明实施例提供的一种网包分类实现原理结构示意图;
图2B是本发明实施例提供的一种TreeBuilder的迭代单元的原理示意图;
图3A~3E是本发明实施例提供的决策树的示意图;
图4是本发明实施例提供的网包分类查找路径示意图;
图5是本发明实施例提供的一种网包分类决策树建立装置的硬件结构示意图;
图6是本发明实施例提供的一种网包分类决策树建立控制逻辑的功能结构图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,下面先对本发明实施例提供的技术方案中涉及的部分概念进行简单说明。
1)、分类规则集:包括多条分类规则;一条分类规则包括维度信息、优先级,其中,每个维度信息是一个取值范围,匹配结果为匹配到该分类规则后需要返回的结果,优先级为当多条规则满足匹配条件时,用于决定返回哪一条规则的匹配结果(本发明实施例中以返回优先级最高的分类规则的匹配结果为例)。其中,分类规则集的格式可以如表1所示:
表1
其中,sip(源IP地址)、dip(目的IP地址)、sport(源端口号)、dport(目的端口号)、prot(协议类型)、vlan(Virtual Local Area Network,虚拟局域网)以及sysport(系统端口)为表1所示分类规则集中各分类规则的维度信息;其中,表1所示的分类规则集中prot可以包括但不限于tcp(Transmission Control Protocol,传输控制协议)或udp(UserDatagram Protocol,用户数据报协议等;当某维度信息的取值为“*”时,表明该分类规则中该维度信息的值可以为该维度取值范围内的任意值,例如,对于dport,其取值范围为“0~(216-1)”。
2)、分类规则模板:为模板项的集合,一个分类规则模板可以包括一个或多个模板项。
3)、模板项:包括一个或多个维度信息,该一个或多个维度信息为分类规则集中分类规则的部分维度信息;其中,包括3个模板项的分类规则模板的格式可以如表2所示:
表2
index 优先级 sip dip sport dport prot
me0 5 * * * 80 tcp
me1 10 * * >=12000 * tcp
me2 15 * 10.1.1.x >=10000 >=10000 udp
4)、模板维度:模板项中包括的维度;例如,以表1和表2为例,分类规则的7个维度中包括5个模板维度,分别为:sip、dip、sport、dport和prot。
5)、非模板维度:分类规则集中各分类规则的维度信息中除模板维度之外的维度;例如,仍以表1和表2为例,分类规则的7个维度中包括2个非模板维度,分别为:vlan和sysport。
6、模板例化:是指将分类规则模板应用到一个或多个非模板维度中以得到对应的分类规则。
例如,将表2所示的分类规则模板应用到sysport=0x200中即可以得到表1所示的分类规则集中的分类规则r0、r1和r2;其中,这三条分类规则的模板维度取值分别对应了表2所示的分类规则模板中相应维度的取值,而sysport的取值均为0x200。
其中,模板例化可以指定多个非模板维度进行例化,例如,将表2所示的分类规则模板应用到vlan范围[10,20),sysport=0x300即可以得到表1所示分类规则集中的分类规则r3、r4和r5。
其中,{r0、r1、r2}、{r3、r4、r5}以及{r6、r7、r8}可以称为表1所示分类规则集中的分类规则子集。
7、补洞规则(fb_rule):所有维度的取值均为“*”的分类规则,补洞规则为优先级最低的分类规则,分类规则集包括的各分类规则的优先级均高于补洞规则的优先级。
8、同模子集(Same Pattern Sub Ruleset,简称SPSR):将同一分类规则模板应用到不同非模板维度(即对应不同非模板维度例化)得到的分类规则子集之间互为同模子集。
例如,表1所示的分类规则集中,分类规则子集{r0、r1、r2}、{r3、r4、r5}和{r6、r7、r8}互为同模子集。
其中,补洞规则与自身互为同模子集。
9、同模子集组(SPSR_Group):包括一个或多个同模子集。
其中,补洞规则对应的同模子集组中仅包括补洞规则这一条分类规则。
为了使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
请参见图1,为本发明实施例提供的一种网包分类决策树建立方法的流程示意图,其中,该网包分类决策树建立方法可以应用于网络设备,该网络设备可以包括但不限于交换机、路由器等,如图1所示,该网包分类决策树建立方法可以包括以下步骤:
步骤101、根据分类规则集的非模板维度对分类规则集进行建树,生成第一类型决策树,其中,该第一类型决策树为分类规则集对应非模板维度的决策树。
本发明实施例中,分类规则集并不特指某一固定的分类规则集,而是可以指代任一用于网包分类的分类规则集,本发明实施例后续不再复述。
本发明实施例中,当需要创建分类规则集对应的网包分类决策树(本文中简称为决策树)时,需要先根据分类规则集的非模板维度对分类规则集进行建树,生成分类规则集对应非模板维度的决策树(本文中称为第一类型决策树或称为非模板维度决策树)。
为便于理解,以下将第一类型决策树称为非模板维度决策树进行说明。
其中,在本发明实施例中,网络设备对分类规则集进行建树按照基于空间分割的方式。
其中,网络设备根据分类规则集的非模板维度对分类规则集进行建树的具体实现将在下文中结合实例进行说明,本发明实施例在此不做赘述。
值得说明的是,在本发明实施例中,当网络设备根据分类规则集的非模板维度对模板分类规则进行建树时,若根据所选择的维度和取值匹配不到分类规则集中的分类规则,则网络设备可以将对应的叶子节点中包括的分类规则设置为补洞规则。其中,当空间分割得到的子空间中只包含有补洞规则,而不包含任何其他分类规则时,满足结束条件。
步骤102、根据分类规则集的模板维度对第一类型决策树的各叶子节点进行建树,生成第二类型决策树,其中,该第二类型决策树为第一类型决策树的叶子节点对应模板维度的决策树。
本发明实施例中,由于非模板维度决策树仅仅是根据非模板维度对分类规则集中各分类规则进行了空间分割,也即非模板维度决策树的各叶子节点并未完成空间分割,还需要按照模板维度进一步进行空间分割。
相应地,在本发明实施例中,网络设备建立了分类规则集对应的非模板维度决策树之后,还需要进一步根据分类规则集的模板维度对非模板维度决策树的各叶子节点进行空间分割,以得到非模板维度决策树的各叶子节点对应模板维度的决策树(本文中称为第二类型决策树或模板维度决策树)。
为便于理解,以下将第二类型决策树称为模板维度决策树进行说明。
其中,由于模板维度决策树是通过对非模板维度决策树的叶子节点进行空间分割得到的,因此,该模板维度决策树可以称为非模板维度决策树的子树。
其中,网络设备根据分类规则集的模板维度对非模板维度决策树的叶子节点进行建树的具体实现将在下文中结合实例进行说明,本发明实施例在此不做赘述。
值得说明的是,在本发明实施例中,由于补洞规则的各个维度的取值均为“*”,即可以为各个维度的取值范围内的任意值,因此,根据模板维度对补洞规则进行空间分割时,得到的仍然为补洞规则。相应地,对于非模板维度决策树中包括的分类规则为补洞规则的叶子节点,其根据模板维度进行空间分割得到的模板维度决策树仍为补洞规则。
步骤103、使第一类型决策树中的第一类型叶子节点引用同一第二类型决策树;其中,该第一类型叶子节点为包括的分类规则互为同模子集的叶子节点。
本发明实施例中,考虑到同一分类规则模板对应不同非模板维度例化得到的不同分类规则子集包括的模板维度取值相同,当使用同一算法根据模板维度对该不同分类规则子集建立决策树时,所得到的决策树的树结构是相同的,而只是叶子节点不同,因此,同一分类规则模板对应不同非模板维度例化得到的不同分类规则子集对应的模板维度决策树可以复用为同一模板维度决策树。
相应地,在本发明实施例中,网络设备建立了非模板维度决策树的各叶子节点对应的模板维度决策树之后,可以对建立的模板维度决策树进行复用,以使非模板维度决策树的叶子节点中包括的分类规则互为同模子集的不同叶子节点(本文中称为第一类型叶子节点)引用同一模板维度决策树,以减少模板维度决策树的数量,进而减少分类规则集对应的决策树(由非模板维度决策树和模板维度决策树组成)的节点数量。
在一种可选的实施方式中,上述使第一类型决策树的第一类型叶子节点引用同一第二类型决策树,可以包括:
将互为同模子集的不同分类规则子集划分到同一同模子集组;
建立第一类型叶子节点与同模子集组的标识以及分类规则子集在同模子集组中对应的索引的映射关系;
将第一类型叶子节点对应的第二类型决策树合并为同一第二类型决策树;其中,合并后的第二类型决策树的叶子节点包括同模子集组中各索引对应的分类规则。
在该实施方式中,将同一分类规则模板对应不同非模板维度例化得到的不同分类规则子集互为同模子集,互为同模子集的不同分类规则子集构成同模子集组。
以表1所示分类规则集为例,{r0、r1、r2}、{r3、r4、r5}和{r6、r7、r8}互为同模子集,({r0、r1、r2}、{r3、r4、r5}和{r6、r7、r8})构成一个同模子集组。
在该实施方式中,对于同模子集组中的各分类规则子集,可以设置该分类规则子集在该同模子集中的索引,从而,可以根据同模子集组的标识(如同模子集组的名称)以及索引确定对应的分类规则子集。
例如,假设{r0、r1、r2}、{r3、r4、r5}和{r6、r7、r8}属于同模子集组spsrg1(该同模子集组的标识为spsrg1),且{r0、r1、r2}、{r3、r4、r5}和{r6、r7、r8}在spsrg1中的索引分别为0、1和2,则{r0、r1、r2}可以标识为spsrg1中的索引0,{r3、r4、r5}可以标识为spsrg1中的索引1,{r6、r7、r8}可以标识为spsrg1中的索引2。
在该实施方式中,网络设备确定了各分类规则子集所属的同模子集组以及各分类规则子集在同模子集组中的索引之后,可以建立非模板维度决策树的各第一类型叶子节点与同模子集组的标识以及分类规则子集在同模子集组中对应的索引的映射关系,即在各第一类型叶子节点中存储该第一类型叶子节点中包括的分类规则子集所属的同模子集组的标识,以及该第一类型叶子节点中包括的分类规则子集在该同模子集组中的索引。
举例来说,以包括的分类规则子集为{r0、r1、r2}的第一类型叶子节点为例,可以建立该第一类型叶子节点与对应的同模子集组的标识以及分类规则子集在同模子集组中对应的索引的映射规则,即在该第一类型叶子节点中存储{r0、r1、r2}所属的同模子集组的标识(即spsrg1)以及{r0、r1、r2}在该同模子集组中对应的索引(即0)。
对于同一同模子集组中各分类规则子集(即各第一类型节点)对应的模板维度决策树,网络设备可以将其合并为同一模板维度决策树,合并后的模板维度决策树的各叶子节点可以包括该同模子集组中各索引对应的分类规则。
值得说明的是,在本发明实施例中,补洞规则与自身互为同模子集,补洞规则对应的同模子集组中仅包括补洞规则这一条分类规则。
进一步地,在本发明实施例中,考虑到同一分类规则模板对应不同非模板维度例化得到的不同分类规则子集对应的决策树的结构相同,而只是叶子节点不同,当非模板维度决策树的叶子节点中存在包括同一分类规则模板对应不同非模板维度例化得到的不同分类规则子集的叶子节点时,该叶子节点对应的模板维度决策树中各叶子节点中将会包括多条分类规则(该多条分类规则由同一模板项对应不同非模板维度例化得到),而该多条分类规则中仅有优先级最高的分类规则会生效,因此,对于非模板维度决策树的叶子节点中存在的包括同一分类规则模板对应不同非模板维度例化得到的不同分类规则子集的叶子节点,即包括互为同模子集的多个分类规则子集的叶子节点,网络设备可以删除该叶子节点中包括的同一分类规则模板对应不同非模板维度例化得到的不同分类规则子集中包括的分类规则的优先级较低的分类规则子集。
进一步地,在本发明实施例中,网络设备建立了分类规则集对应的决策树(由非模板维度决策树和模板维度决策树组成)之后,当接收到待分类网包时,网络设备可以先根据该待分类网包查找分类规则集对应的非模板维度决策树,以确定该待分类网包对应的非模板维度决策树中的叶子节点(本文中称为第一目标叶子节点),并获取该第一目标叶子节点中存储的同模子集组(本文中称为目标同模子集组)的标识以及分类规则子集(本文中称为目标分类规则子集)在该目标同模子集组中对应的索引(本文中称为目标索引)。
然后,网络设备可以根据待分类网包查找目标同模子集组的标识对应的模板维度决策树(本文中称为目标模板维度决策树,其中,该模板维度决策树为合并后的模板维度决策树),以确定该待分类网包对应的目标模板维度决策树中的叶子节点(本文中称为第二目标叶子节点)。
最后,网络设备可以将第二目标叶子节点中包括的与目标索引对应的分类规则确定为待分类网包匹配的分类规则。
为了使本领域技术人员更好地理解本发明实施例提供的技术方案,下面结合具体实例对本发明实施例提供的技术方案进行说明。
如图2A所示,为本发明实施例提供的一种网包分类实现原理结构示意图,如图2A所示,CPU(Center Process Unit,中央处理单元)通过决策树创建单元(TreeBuilder)将输入的分类规则集编译为决策树,并下发给FPGA(Field Programmable Gate Array,现场可编程门阵列);当接收到网包时,FPGA通过查找引擎(Lookup Engine)查找分类规则集对应的决策树,确定匹配的分类规则。
其中,在该实施例中,TreeBuilder采用迭代的方式完成决策树的建立,其核心是一个维度和值的启发式选择器,输入一个规则集(Rule Set,简称RS),输出两个规则集和一个决策树节点(Decision Tree Node,简称DT Node)。该启发式选择器的功能是根据输入的规则集,利用启发式算法从输入的维度列表(Dim List)中选择一个维度和取值(Dim&Value),然后将输入的规则集按照选择的维度和取值分割为两个子集,针对每一条规则而言,凡是对应维度的取值范围小于所选择的取值的,将该规则划入左子集;取值范围大于等于所选择的取值的,将该规则划入右子集;取值范围覆盖住所选择的取值的,将规则一分为二,小于部分划入左子集,大于等于部分划入右子集,从而完成一次空间分割,将所选择的维度和取值作为一个决策树节点,同时,将得到的两个规则子集继续迭代的执行上述操作,直至分类规则集不能再被划分为止。其中,TreeBuilder的迭代单元的原理示意图可以如图2B所示。
基于图2A和图2B,本发明实施例提供的网包分类决策树建立方案的实现流程可以如下:
其中,在该实施例中,以表2所示的分类规则模板以及表1所示的分类规则集为例。其中,分类规则集的非模板维度包括vlan和sysport,模板维度包括sip、dip、sport、dport以及prot。
1、根据非模板维度(vlan和sysport)对表1所示的分类规则集进行建树,以得到该分类规则集对应的非模板维度决策树;其中,该非模板维度决策树的结构示意图可以如图3A所示。
其中,图3A所示的非模板维度决策树的叶子节点中,非矩形框的叶子节点中均只包含一条补洞规则,而矩形框的叶子节点则包含多条分类规则。
2、根据模板维度(sip、dip、sport、dport以及prot)对图3A所示的非模板维度决策树的各叶子节点进行建树,以得到非模板维度决策树的各叶子节点对应的模板维度决策树。
其中,对于补洞规则,其根据模板维度建树得到的模板维度决策树仅包括一个节点,该节点中包括的分类规则为补洞规则。
对于包括的分类规则为r0、r1和r2的叶子节点,根据模板维度建树得到的模板维度决策树的示意图可以如图3B所示;
对于包括的分类规则为r3、r4和r5的叶子节点,根据模板维度建树得到的模板维度决策树的示意图可以如图3C所示。
基于图3B和图3C可以看出,由于{r0、r1、r2}是由表2所示的分类规则模板对应非模板维度sysport=0x200例化得到的分类规则子集,{r3、r4、r5}是由表2所示的分类规则模板对应非模板维度sysport=0x300以及vlan=[10,20)例化得到的分类规则子集,即{r0、r1、r2}和{r3、r4、r5}是由同一分类规则模板对应不同非模板维度例化得到的不同分类规则子集,因此,其对应的模板维度决策树的树结构相同,而只是叶子节点不同。其中,图3B和图3C所示的模板维度决策树中相同位置的叶子节点分别为同一模板项对应不同非模板维度例化得到的分类规则。
同理,包括的分类规则为r6、r7和r8的叶子节点对应的模板维度决策树的结构与图3B和图3C所示的模板维度决策树相同,且相同位置的叶子节点由相同的模板项例化得到。
值得注意的是,对于图3A所示的非模板维度决策树中包括的分类规则为r0、r1、r2、r6、r7以及r8的叶子节点,由于{r3、r4、r5}和{r6、r7、r8}由同一分类规则模板例化得到,因此,该叶子节点对应的模板维度决策树的非补洞规则叶子节点中均包含2条分类规则,而这两条规则是由同一模板项对应不同的非模板维度例化得到,如r3和r6、r4和r7、或者r5和r8。当网包匹配到这样的叶子节点时,返回的结果为优先级较高的分类规则的匹配结果,因此,对于这种类型的叶子节点,只需要保留同一分类规则模板例化得到的不同分类规则子集中包括的分类规则优先级较高的分类规则子集,而可以将包括的分类规则优先级较低的分类规则子集过滤掉,即只保留{r0、r1、r2},而删除{r6、r7、r8},进而,该叶子节点对应的模板维度决策树的结构示意图也如图3B所示。
3、将同一分类规则模板对应不同的非模板维度例化得到的不同分类规则子集划分为同一同模子集组。
在该实施例中,将由同一分类规则模板对应不同非模板维度例化得到的不同分类规则子集称为同模子集,即{r0、r1、r2}、{r3、r4、r5}和{r6、r7、r8}互为同模子集,({r0、r1、r2}、{r3、r4、r5}和{r6、r7、r8})构成一个同模子集组。
补洞规则与自身互为同模子集,补洞规则对应的同模子集组中仅包括补洞规则这一条分类规则。
其中,假设补洞规则对应的同模子集组为spsrg0,补洞规则在spsrg0中的索引为0;{r0、r1、r2}、{r3、r4、r5}和{r6、r7、r8}对应的同模子集组为spsrg1,假设其在spsrg1中的索引分别为0、1和2。
4、建立图3A所示的非模板维度决策树的各第一类型叶子节点与同模子集组的标识以及分类规则子集在该同模子集组中对应的索引的映射关系。其中,处理后的非模板维度决策树的示意图可以如图3D所示。
5、将各第一类型叶子节点对应的模板维度决策树合并为同一模板维度决策树;其中,合并后模板维度决策树的叶子节点包括同模子集组中各索引对应的分类规则。
其中,由于补洞规则对应的同模子集组中仅包括补洞规则这一条分类规则,因此,补洞规则对应的模板维度决策树中仅包括一个节点,该节点中可以直接记录该补洞规则。
最终生成的表1所示分类规则集对应的决策树的结构可以如图3E所示。
下面结合实例对网包分类具体处理流程进行简单说明。
在该实施例中,假设网包1和网包2中各字段的取值分别如表3所示:
表3
sip dip sport dport prot vlan sysport
网包1 1.1.1.1 10.1.1.10 12000 12000 udp 10 0x200
网包2 1.1.1.1 10.1.1.10 12000 80 tcp 30 0x100
其中,对于网包1,其查找路径可以如图4中实线双箭头所示,其命中的模板维度决策树中的叶子节点中包括3条分类规则:r2、r5和r8;而由于其经过的非模板维度决策树的叶子节点(该叶子节点可以称为复用入口节点)
中的索引为0(即spsr0),因此,网包1最终命中的分类规则为r2;
对于网包2,其查找路径可以如图4中虚线双箭头所示,其命中的模板维度决策树中的叶子节点中包括3条分类规则:r0、r3和r6;而由于其经过的非模板维度决策树的复用入口节点中的索引为2(即spsr2),因此,网包1最终命中的分类规则为r6。
通过以上描述可以看出,在本发明实施例提供的技术方案中,通过根据分类规则集的非模板维度对分类规则集进行建树,生成第一类型决策树,并根据分类规则集的模板维度对第一类型决策树的各叶子节点进行建树,生成第二类型决策树,进而,使第一类型决策树的第一类型叶子节点引用同一第二类型决策树,减少了模板维度的重复建树,从而减少了决策树的规模,提升了支持的分类规则集的规模,进而,提升了网络设备的存储空间的利用率,并提升了网络设备进行网包分类的处理能力。
以上对本发明提供的方法进行了描述。下面对本发明提供的装置进行描述:
图5为本发明实施例提供的一种网包分类决策树建立装置的硬件结构示意图。该网包分类决策树建立装置可包括处理器501、存储有机器可执行指令的机器可读存储介质502。处理器501与机器可读存储介质502可经由系统总线503通信。并且,通过读取并执行机器可读存储介质502中与网包分类决策树建立控制逻辑对应的机器可执行指令,处理器501可执行上文描述的网包分类决策树建立方法。
本文中提到的机器可读存储介质502可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
在一种可选的实施方式中,上述网包分类决策树建立装置中还可以包括FPGA(未在图中示出),相应地,处理器501完成决策树建立后,可以将所建立的决策树下发至FPGA,由FPGA执行决策树查找处理。
如图6所示,从功能上划分,上述网包分类决策树建立控制逻辑可以包括第一建树单元601、第二建树单元602和复用单元603。其中:
第一建树单元601,用于根据分类规则集的非模板维度对所述分类规则集进行建树,生成第一类型决策树,其中,所述第一类型决策树为所述分类规则集对应所述非模板维度的决策树;
第二建树单元602,用于根据所述分类规则集的模板维度对所述第一类型决策树的各叶子节点进行建树,生成第二类型决策树,其中,所述第二类型决策树为所述第一类型决策树的叶子节点对应所述模板维度的决策树;
复用单元603,用于使所述第一类型决策树中的第一类型叶子节点引用同一第二类型决策树;其中,所述第一类型叶子节点为包括的分类规则互为同模子集的叶子节点。
优选地,所述第一建树单元601,还用于当根据从非模板维度列表中所选择的维度和对应的取值匹配不到所述分类规则集中的分类规则时,将对应的叶子节点中包括的分类规则设置为补洞规则;其中,所述补洞规则的优先级低于所述分类规则集中各分类规则的优先级。
优选地,所述第二建树单元602,还用于当所述第一类型决策树的叶子节点中存在包括互为同模子集的多个分类规则子集的叶子节点时,删除该叶子节点中包括的所述多个分类规则子集中包括的分类规则的优先级较低的分类规则子集。
优选地,所述复用单元603,还用于将互为同模子集的不同分类规则子集划分到同一同模子集组;建立所述第一类型叶子节点与同模子集组的标识以及分类规则子集在同模子集组中对应的索引的映射关系;将所述第一类型叶子节点对应的第二类型决策树合并为同一第二类型决策树;其中,合并后的第二类型决策树的叶子节点包括同模子集组中各索引对应的分类规则。
优选地,上述网包分类决策树建立控制逻辑还可以包括:查找单元604。其中:
查找单元604,用于当接收到待分类网包时,根据所述待分类网包查找所述分类规则集对应的第一类型决策树,以确定所述待分类网包对应的所述第一类型决策树中的第一目标叶子节点;
所述查找单元604,还用于根据所述第一目标叶子节点中存储的同模子集组的标识确定对应的目标第二类型决策树,并根据所述待分类网包查找所述目标第二类型决策树,以确定所述待分类网包对应的所述第二类型决策树中的第二目标叶子节点;
所述查找单元604,还用于根据所述第一目标叶子节点中存储的同模子集组中的索引从所述第二目标叶子节点中查找对应的分类规则,并将该分类规则确定为所述待分类网包匹配的分类规则。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (13)

1.一种网包分类决策树建立方法,其特征在于,包括:
根据分类规则集的非模板维度对所述分类规则集进行建树,生成第一类型决策树,其中,所述第一类型决策树为所述分类规则集对应所述非模板维度的决策树;
根据所述分类规则集的模板维度对所述第一类型决策树的各叶子节点进行建树,生成第二类型决策树,其中,所述第二类型决策树为所述第一类型决策树的叶子节点对应所述模板维度的决策树;
使所述第一类型决策树中的第一类型叶子节点引用同一第二类型决策树;其中,所述第一类型叶子节点为包括的分类规则互为同模子集的叶子节点。
2.根据权利要求1所述的方法,其特征在于,所述根据分类规则集的非模板维度对所述分类规则集进行建树,包括:
当根据从非模板维度列表中所选择的维度和对应的取值匹配不到所述分类规则集中的分类规则时,将对应的叶子节点中包括的分类规则设置为补洞规则;其中,所述补洞规则的优先级低于所述分类规则集中各分类规则的优先级。
3.根据权利要求1所述的方法,其特征在于,所述根据所述分类规则集的模板维度对所述第一类型决策树的各叶子节点进行建树之前,还包括:
当所述第一类型决策树中存在互为同模子集的多个分类规则子集的叶子节点时,删除该叶子节点中包括的所述多个分类规则子集中优先级较低的分类规则对应的分类规则子集。
4.根据权利要求1所述的方法,其特征在于,所述使所述第一类型决策树中第一类型叶子节点引用同一第二类型决策树,包括:
将互为同模子集的不同分类规则子集划分到同一同模子集组;
建立所述第一类型叶子节点与同模子集组的标识以及分类规则子集在同模子集组中对应的索引的映射关系;
将所述第一类型叶子节点对应的第二类型决策树合并为同一第二类型决策树;其中,合并后的第二类型决策树的叶子节点包括同模子集组中各索引对应的分类规则。
5.根据权利要求4所述的方法,其特征在于,所述使所述第一类型决策树中第一类型叶子节点引用同一第二类型决策树之后,还包括:
当接收到待分类网包时,根据所述待分类网包查找所述分类规则集对应的第一类型决策树,以确定所述待分类网包对应的所述第一类型决策树中的第一目标叶子节点;
根据所述第一目标叶子节点中存储的同模子集组的标识确定对应的目标第二类型决策树,并根据所述待分类网包查找所述目标第二类型决策树,以确定所述待分类网包对应的所述第二类型决策树中的第二目标叶子节点;
根据所述第一目标叶子节点中存储的同模子集组中的索引从所述第二目标叶子节点中查找对应的分类规则,并将该分类规则确定为所述待分类网包匹配的分类规则。
6.一种网包分类决策树建立装置,其特征在于,包括:
第一建树单元,用于根据分类规则集的非模板维度对所述分类规则集进行建树,生成第一类型决策树,其中,所述第一类型决策树为所述分类规则集对应所述非模板维度的决策树;
第二建树单元,用于根据所述分类规则集的模板维度对所述第一类型决策树的各叶子节点进行建树,生成第二类型决策树,其中,所述第二类型决策树为所述第一类型决策树的叶子节点对应所述模板维度的决策树;
复用单元,用于使所述第一类型决策树中的第一类型叶子节点引用同一第二类型决策树;其中,所述第一类型叶子节点为包括的分类规则互为同模子集的叶子节点。
7.根据权利要求6所述的装置,其特征在于,
所述第一建树单元,还用于当根据从非模板维度列表中所选择的维度和对应的取值匹配不到所述分类规则集中的分类规则时,将对应的叶子节点中包括的分类规则设置为补洞规则;其中,所述补洞规则的优先级低于所述分类规则集中各分类规则的优先级。
8.根据权利要求6所述的装置,其特征在于,
所述第二建树单元,还用于当所述第一类型决策树的叶子节点中存在包括互为同模子集的多个分类规则子集的叶子节点时,删除该叶子节点中包括的所述多个分类规则子集中包括的分类规则的优先级较低的分类规则子集。
9.根据权利要求6所述的装置,其特征在于,
所述复用单元,还用于将互为同模子集的不同分类规则子集划分到同一同模子集组;建立所述第一类型叶子节点与同模子集组的标识以及分类规则子集在同模子集组中对应的索引的映射关系;将所述第一类型叶子节点对应的第二类型决策树合并为同一第二类型决策树;其中,合并后的第二类型决策树的叶子节点包括同模子集组中各索引对应的分类规则。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
查找单元,用于当接收到待分类网包时,根据所述待分类网包查找所述分类规则集对应的第一类型决策树,以确定所述待分类网包对应的所述第一类型决策树中的第一目标叶子节点;
所述查找单元,还用于根据所述第一目标叶子节点中存储的同模子集组的标识确定对应的目标第二类型决策树,并根据所述待分类网包查找所述目标第二类型决策树,以确定所述待分类网包对应的所述第二类型决策树中的第二目标叶子节点;
所述查找单元,还用于根据所述第一目标叶子节点中存储的同模子集组中的索引从所述第二目标叶子节点中查找对应的分类规则,并将该分类规则确定为所述待分类网包匹配的分类规则。
11.一种网包分类决策树建立装置,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:
根据分类规则集的非模板维度对所述分类规则集进行建树,生成第一类型决策树,其中,所述第一类型决策树为所述分类规则集对应所述非模板维度的决策树;
根据所述分类规则集的模板维度对所述第一类型决策树的各叶子节点进行建树,生成第二类型决策树,其中,所述第二类型决策树为所述第一类型决策树的叶子节点对应所述模板维度的决策树;
使所述第一类型决策树中的第一类型叶子节点引用同一第二类型决策树;其中,所述第一类型叶子节点为包括的分类规则互为同模子集的叶子节点。
12.根据权利要求11所述的装置,其特征在于,所述处理器还被所述机器可执行指令促使执行如权利要求2~4任一项所述的网包分类决策树建立方法。
13.根据权利要求11所述的装置,其特征在于,所述装置还包括现场可编程逻辑门阵列FPGA;所述处理器还被所述机器可执行指令促使:
在完成决策树建立后,将所建立的决策树下发至FPGA,由FPGA执行决策树查找处理。
CN201710771899.0A 2017-08-31 2017-08-31 一种网包分类决策树建立方法及装置 Active CN108632235B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201710771899.0A CN108632235B (zh) 2017-08-31 2017-08-31 一种网包分类决策树建立方法及装置
US16/643,484 US11184279B2 (en) 2017-08-31 2018-08-29 Building decision tree for packet classification
PCT/CN2018/102845 WO2019042305A1 (zh) 2017-08-31 2018-08-29 网包分类决策树的建立
JP2020512410A JP6997297B2 (ja) 2017-08-31 2018-08-29 パケット分類決定木の確立
EP18851181.0A EP3661153B1 (en) 2017-08-31 2018-08-29 Building decision tree for packet classification

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710771899.0A CN108632235B (zh) 2017-08-31 2017-08-31 一种网包分类决策树建立方法及装置

Publications (2)

Publication Number Publication Date
CN108632235A true CN108632235A (zh) 2018-10-09
CN108632235B CN108632235B (zh) 2020-07-07

Family

ID=63705816

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710771899.0A Active CN108632235B (zh) 2017-08-31 2017-08-31 一种网包分类决策树建立方法及装置

Country Status (5)

Country Link
US (1) US11184279B2 (zh)
EP (1) EP3661153B1 (zh)
JP (1) JP6997297B2 (zh)
CN (1) CN108632235B (zh)
WO (1) WO2019042305A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109474536A (zh) * 2018-10-18 2019-03-15 北京小米移动软件有限公司 报文控制方法及装置
CN111242164A (zh) * 2019-12-27 2020-06-05 天津幸福生命科技有限公司 一种决策结果的确定方法、装置及设备
CN113762424A (zh) * 2021-11-09 2021-12-07 鹏城实验室 比特选位决策树的均衡方法、网络包分类方法及相关装置
CN113810311A (zh) * 2021-09-14 2021-12-17 北京左江科技股份有限公司 一种基于多棵决策树的数据包分类方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10832419B2 (en) * 2018-11-29 2020-11-10 International Business Machines Corporation Cognitive search analytics for multi-dimensional objects
US11900273B2 (en) * 2019-09-30 2024-02-13 Juniper Networks, Inc. Determining dependent causes of a computer system event
US11734155B2 (en) * 2021-07-22 2023-08-22 Disney Enterprises, Inc. Fully traceable and intermediately deterministic rule configuration and assessment framework

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102281196A (zh) * 2011-08-11 2011-12-14 中兴通讯股份有限公司 决策树生成方法及设备、基于决策树报文分类方法及设备
US20130085978A1 (en) * 2011-08-02 2013-04-04 Cavium, Inc. Decision Tree Level Merging
CN105354588A (zh) * 2015-09-28 2016-02-24 北京邮电大学 一种构造决策树的方法
CN106209614A (zh) * 2015-04-30 2016-12-07 杭州华三通信技术有限公司 一种网包分类方法和装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070056038A1 (en) 2005-09-06 2007-03-08 Lok Technology, Inc. Fusion instrusion protection system
CN101478551B (zh) 2009-01-19 2011-12-28 清华大学 基于多核处理器的多域网包分类方法
CN102255788B (zh) 2010-05-19 2014-08-20 北京启明星辰信息技术股份有限公司 报文分类决策构建系统及方法、报文分类系统及方法
CN103049444B (zh) * 2011-10-12 2016-09-28 阿里巴巴集团控股有限公司 一种数据信息分类结构的存储方法和系统
US9595003B1 (en) * 2013-03-15 2017-03-14 Cavium, Inc. Compiler with mask nodes
CN104579941A (zh) * 2015-01-05 2015-04-29 北京邮电大学 一种OpenFlow交换机中的报文分类方法
US10051093B2 (en) * 2015-03-09 2018-08-14 Fortinet, Inc. Hardware accelerator for packet classification
US10171377B2 (en) * 2017-04-18 2019-01-01 International Business Machines Corporation Orchestrating computing resources between different computing environments

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130085978A1 (en) * 2011-08-02 2013-04-04 Cavium, Inc. Decision Tree Level Merging
CN103858386A (zh) * 2011-08-02 2014-06-11 凯为公司 通过优化的决策树进行的包分类
CN102281196A (zh) * 2011-08-11 2011-12-14 中兴通讯股份有限公司 决策树生成方法及设备、基于决策树报文分类方法及设备
CN106209614A (zh) * 2015-04-30 2016-12-07 杭州华三通信技术有限公司 一种网包分类方法和装置
CN105354588A (zh) * 2015-09-28 2016-02-24 北京邮电大学 一种构造决策树的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
马腾 等: "基于规则集划分的多决策树报文分类算法", 《计算机应用》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109474536A (zh) * 2018-10-18 2019-03-15 北京小米移动软件有限公司 报文控制方法及装置
CN111242164A (zh) * 2019-12-27 2020-06-05 天津幸福生命科技有限公司 一种决策结果的确定方法、装置及设备
CN113810311A (zh) * 2021-09-14 2021-12-17 北京左江科技股份有限公司 一种基于多棵决策树的数据包分类方法
CN113762424A (zh) * 2021-11-09 2021-12-07 鹏城实验室 比特选位决策树的均衡方法、网络包分类方法及相关装置
CN113762424B (zh) * 2021-11-09 2022-02-01 鹏城实验室 一种网络包分类方法及相关装置

Also Published As

Publication number Publication date
EP3661153B1 (en) 2023-06-07
US20200195552A1 (en) 2020-06-18
CN108632235B (zh) 2020-07-07
JP2020532241A (ja) 2020-11-05
US11184279B2 (en) 2021-11-23
EP3661153A1 (en) 2020-06-03
WO2019042305A1 (zh) 2019-03-07
EP3661153A4 (en) 2020-06-03
JP6997297B2 (ja) 2022-01-17

Similar Documents

Publication Publication Date Title
CN108632235A (zh) 一种网包分类决策树建立方法及装置
US9269411B2 (en) Organizing data in a hybrid memory for search operations
CN104579940B (zh) 查找访问控制列表的方法及装置
Lim et al. Boundary cutting for packet classification
EP3276501B1 (en) Traffic classification method and device, and storage medium
CN105141525B (zh) IPv6路由查找方法及装置
CN112425131B (zh) 一种acl的规则分类方法、查找方法和装置
US20180039662A1 (en) Search apparatus, search method, program and recording medium
EP3145134A1 (en) Lookup device, lookup configuration method and lookup method
CN109951495B (zh) 网段查找方法及装置
Berenbrink et al. Speeding up random walks with neighborhood exploration
WO2014187040A1 (zh) 基于hash表的关键字映射处理方法和装置
CN109921995A (zh) 一种配置地址表的方法、fpga和应用该fpga的网络设备
CN106982164A (zh) 一种网络拓扑发现方法及设备
CN105264833B (zh) 一种业务路径计算方法及装置
Kekely et al. Packet classification with limited memory resources
Veeramani et al. Efficient IP lookup using hybrid trie-based partitioning of TCAM-based open flow switches
CN106850541A (zh) 一种物联网中节点的地址确定方法和装置
CN113762424B (zh) 一种网络包分类方法及相关装置
CN113824814B (zh) 一种转发表的地址匹配方法、装置、网络设备及介质
Cvetkovski et al. On the choice of a spanning tree for greedy embedding of network graphs
CN107689922A (zh) 基于微粒群算法的Steiner最优树计算方法及装置
CN107819887A (zh) 网段冲突的检测方法及装置
CN112667640A (zh) 一种路由地址存储方法及装置
Mikawa et al. Run-based trie involving the structure of arbitrary bitmask rules

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant