CN104243315A - 用于唯一枚举解析树中的路径的装置和方法 - Google Patents

用于唯一枚举解析树中的路径的装置和方法 Download PDF

Info

Publication number
CN104243315A
CN104243315A CN201410270176.9A CN201410270176A CN104243315A CN 104243315 A CN104243315 A CN 104243315A CN 201410270176 A CN201410270176 A CN 201410270176A CN 104243315 A CN104243315 A CN 104243315A
Authority
CN
China
Prior art keywords
path
unique identifier
characteristic
grouping
value
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
CN201410270176.9A
Other languages
English (en)
Other versions
CN104243315B (zh
Inventor
G·哈奇森
T·丹尼尔
G·施密特
S·甘迪
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.)
Kaiwei International Co
Marvell Asia Pte Ltd
Original Assignee
Xi Puliante Co
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 Xi Puliante Co filed Critical Xi Puliante Co
Publication of CN104243315A publication Critical patent/CN104243315A/zh
Application granted granted Critical
Publication of CN104243315B publication Critical patent/CN104243315B/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种用于唯一枚举解析树中的路径的装置和方法。方法包括构造图,所述图表征与网络业务相关联的分组报头的集合。所述图针对形成所述图中的路径的分组报头的每个可能组合具有唯一标识符。将接收的分组与所述图中的唯一标识符相关联。基于所述唯一标识符重新构造所述接收的分组的特性。

Description

用于唯一枚举解析树中的路径的装置和方法
相关申请的交叉引用
本申请要求于2013年6月18日提交的第13/921,090号美国专利申请的优先权,该美国专利申请的内容通过引用被并入本文。
技术领域
本发明涉及交换网络数据分组。更具体地,本发明涉及通过枚举解析树中的唯一路径的集合来交换网络数据分组。
背景技术
存在用于从输入端口至输出端口交换数据分组的各种技术。交换设备所需的第一个动作是识别已经接收的分组的类型并且从分组定位和提取数据字段。此过程被称为解析分组。
解析涉及由计算机形式分析字节串的构成、导致表明它们之间的语法关系的解析树,所述解析树还可包含语义和其它信息。因此,解析树为有序的有根树,其根据某一形式语法表示串的语法结构。解析树按照依存语法的依存关系被共同构造。解析树与抽象语法树(也被简单地称为语法树)的区别在于其结构和元素更具体地反映输入语言的语法。
在过去十年中,计算机网络将各种专用网络协议和规范(例如,异步传输模式(ATM)、令牌环、光纤信道和无限带宽)汇聚成使用以太网作为通用物理层和协议。除了例如呼叫处理、磁盘存取和处理器互连的这些面向特定特征的传统网络协议以外,例如虚拟机、分布式计算和云计算的新技术也对以太网和传输控制协议(TCP)/网际协议(IP)有新的和变化的要求。
这种汇聚导致提供与专用网络协议相同的特征但使用以太网作为传输层的新协议、算法和标记的爆发。随着新协议、特征和技术的变化速率增加,相应地需要更快地将这些技术部署到本领域。
传统上,通过改变硬件,尤其物理改变实现交换功能的特定用途集成电路(ASIC),来提供新协议。这将新协议的部署速率限制为这些改变可实现和制造的速度。
最近几年,工业已经朝向提供可编程解析器以作为减轻改变的影响的方式的技术来发展。可编程解析器通过基于在解析期间发现的报头构造可能的分组类型的树而工作。当前的解析器通过为每个发现的报头设置一个比特(称为标记)来跟踪已经在解析期间被发现的报头的类型。
使用标记跟踪发现的报头的类型在某些情况下是不够的,因为它没有记录报头被发现的顺序。因此,现有的解析器必须使用额外的标记比特来跟踪重要的顺序,并且必须知道顺序信息需要被保留的情况。
图1示出了检测7种不同类型的分组报头的简单解析树。所有分组作为以太网分组101而到达,以太网分组101可包含任选的报头VLAN102或VLAN103,然后被分类成IPv4104、IPv6105或其它108。IP分组被进一步分类成TCP106、UDP107或其它IP109。在此解析树中,8个标记的集合可唯一确定被采用的路径。
图2示出了图1的解析树,但是添加了GRE报头210。因为GRE报头可指向以太网报头,所以现在环路是可行的并且标记的集合不能再确定在何处发现报头。例如,虽然顺序
以太网->VLAN->IPv4->GRE->以太网
以太网->IPv4->GRE->以太网->VLAN
现在设置完全相同的标记,但是可能需要由接收解析的分组数据的转发引擎不同地处理。
鉴于以上,希望提供用于通过解析树来分解路径的改进技术。
发明内容
方法包括构造图,其中所述图表征与网络业务相关联的分组报头的集合。所述图针对形成所述图中的路径的分组报头的每个可能组合具有唯一标识符。将接收的分组与所述图中的唯一标识符相关联。基于所述唯一标识符重新构造所述接收的分组的特性。
处理器包括存储图的联合存储器,其中所述图表征与网络业务相关联的分组报头的集合。所述图针对形成所述图中的路径的分组报头的每个可能组合具有唯一标识符。所述联合存储器将接收的分组的属性与唯一标识符进行匹配。索引存储器基于所述唯一标识符重新构造所述接收的分组的特性。
方法包括:形成用于图中的弧的唯一指派值,约束所述图中的路径,基于所述指派值形成贯穿所述图的计算的路径,利用所述计算的路径构造路径表,以及确定所述计算的路径中的任一个路径是否具有相同的值,如果具有相同的值,则重复所述形成操作和所述构造操作。
附图说明
结合下面关于附图进行的详细描述更完整地理解本发明,在附图中:
图1示出了具有无环路拓扑的解析树;
图2示出了包含环路的解析树;
图3示出了根据本发明的实施方式具有指派的节点和路径值的图2的解析树;
图4示出了与本发明的实施方式相关联的处理操作;
图5A示出了根据本发明的实施方式的针对一个示例性路径计算的报头值和路径值;
图5B示出了根据本发明的实施方式的针对第二简单路径计算的报头值和路径值;
图6示出了根据本发明的实施方式的使用路径值计算的解析器的硬件实现;以及
图7示出了与本发明的实施方式相关联的处理操作。
在附图的一些视图中相似的参考标号指代相应的部件。
具体实施方式
本发明将唯一标识符指派给在解析树中遍历的每个可能的报头组合。有利地,唯一组合可在硬件中被有效地计算。图3示出了根据本发明的实施方式的具有分配的节点和路径值的图2的解析树。
图4示出了与本发明的实施方式相关联的处理操作。最初,在410处为图中的弧指派值。例如,有向有环或无环图可具有为图中的每个弧指派的值。值可以是任意的,但是对每个弧而言应该是唯一的。值可被顺序地指派,尽管随机或半随机的指派可能产生更好的结果。在此上下文中,弧为图中的两个节点之间的连线。路径是贯穿图的一系列弧。
然后在412处对图中的路径设置约束。例如,基于实现者关于预期应用的知识,通过限制有环路径的转换的数目,可将如图2所示的有向有环图转换成有向无环图。例如,从GRE210至以太网201的弧可仅被遍历一次的限制将其变换成无环图。一旦无环图被创建,它还可基于实现者的知识、通过移除至不感兴趣的节点或已知在实现者的应用中不会出现的节点的转换而被减少。
接下来,在414处计算图中的路径。图5A和图5B示出了如下面所讨论的计算两个这种路径的实施例。应该由实现者或通过随机选择来选择执行内部计算的公式。所选择的公式应该是非交换公式,意味着A+B!=B+A。大多数循环冗余校验(CRC)函数满足此标准。
接下来,在416处构造路径表。也就是说,从枚举的可能路径的结果构造表。接下来,评估表是否具有共同值,称为冲突。两个路径不可以具有相同的值,否则存在冲突。如果冲突不存在(418处为否),则在420处处理完成。否则(418处为是),则处理返回框414。如果冲突出现,则应用新的弧指派集合和/或新的公式并且重复框414-418的处理。重复此循环直到建立无冲突表、或者算法达到某一任意极限并且报告失败。
图3示出了具有来自图2的环路的示例性解析树,但是在每个转换弧上枚举有唯一值的集合。下面以Python伪代码示出了非交换函数的实施例。对于图5A和图5B所示的值,此函数产生在图5A和图5B的IncCalc列中所示的输出值。
使用上面通过function8描述的公式,示出了针对两个分组的路径散列计算,所述两个分组包含相同的报头类型但是以不同的顺序被布置,导致两种不同的路径散列计算结果。
在针对第一分组的解析路径上,使用图3所示的枚举的路径值,所产生的路径值的顺序变为1、7、20和17,如图5A所示。上面的函数twoseq()使用函数formula8()来计算增量路径散列计算结果1、132、86和58,如图5A所示。使用最后的增量路径散列计算结果58作为用于第一分组的最终路径散列值。
每个路径散列计算通过将状态变量cstate初始化为恒定值(此情况下为0)而以相同的方式开始。对于由解析器遍历的每个弧,通过以cstate的值和每个弧的弧值调用formula8()来计算新的增量状态值cstate。以上伪代码随着其计算每个新的cstate值而提供cstate的值和arcValue。在一个实施方式中,仅保留最终值并传递该值以用于随后的处理。在前述的实施例中,formula8()计算产生增量路径散列计算结果1、132、86、58。仅最后的增量路径散列计算结果58可被传递以作为用于第一分组的最终路径散列值。
在针对第二分组的解析路径上,所产生的路径值顺序为3、20、17、1,导致增量路径散列值3、150、90、44,其中44是用于随后处理的最终路径散列。这些值在图5B中示出。
对于正确选择的函数和弧值的集合,贯穿解析树的每个有效路径将导致唯一标识符,所述唯一标识符然后可用于重新构造所采用的且其报头出现的两个路径。存储此单个值明显比存储所有中间值更简洁。
图6示出了使用路径值计算的解析器的硬件实现。举例来说,图6的功能框可在ASIC中实现。数据以典型地小于整个分组的块的形式到达解析器。解析器决定在分组中应该查看哪个决定点,该决定点由相对于分组的开始的多个字节的偏移表示。此偏移处的数据由密钥生成501单元提取,并且连同当前的状态被发送至下一状态表502。下一状态表典型地被实现为三元内容可寻址存储器(TCAM)或其它关联数据结构。TCAM针对解析树中的每个弧具有一个条目。TCAM中的匹配提供下一状态和/或待采取的动作。所述动作可规定在提取的数据结构506中将要被记录的数据,例如,将要从分组提取的字段、字段从分组的偏移、或指示具体的字段存在或缺失的标记。动作还可规定解析器是否应该继续解析分组、或者是否已经发现足够的信息并且解析可终止。
在框503中使用下一状态表502的结果更新当前的状态并且执行增量路径值计算。在现有技术中,在此时设置标记,但是此操作可被省略,因为每个路径具有唯一的标识。因此,此标识可用于规定路径组成和顺序。如果动作指示解析完成,则将最终的路径值转发至路径值表505。否则,将当前的状态和路径值发送回密钥生成501,在其中执行附加的搜索直到解析完成。
使用来自传入数据的分组数据和来自下一状态表502的动作以从分组提取感兴趣的数据字段,然后将所提取的数据字段发送至提取的数据结构506。在解析结束时,将路径值表505的结果添加到此结构,然后将此结构发送至控制路径,所述控制路径将确定如何转发分组。
图7示出了与本发明的实施方式相关联的处理操作。最初,在700处构造图。例如,可使用图4的操作构造图。接下来,在702处将接收的分组与图中的唯一标识符相关联。图6的处理器可用于实现此操作。具体地,下一状态表502可用于增量地遍历路径的弧。这最终产生最终路径值,所述最终路径值被应用于索引存储器505。最后,基于唯一标识符重新构造接收的分组的特性。此操作还可用图6的处理器实现。具体地,针对遍历的路径产生提取的数据结构506。提取的数据结构唯一地识别遍历的路径,因此表征与接收的分组相关联的分组报头。提取的数据结构还可具有相关联的标记和动作。
一些先进的解析器使用多个同时匹配解析器(某些时候被称为Kangaroo(袋鼠)解析),其中下一状态表502能够在单个查找期间匹配解析树中的多个弧。在图3的情况下,能够对每次查找执行3个匹配的Kangaroo解析器可从以太网401经由VLAN402和VLAN403遍历至IPv4404。因为相同的单次查找可潜在地直接从以太网401遍历至IPv4404并且路径值的目标是针对所采用的每个路径具有不同的路径值,所以路径值公式必须为这种类型的解析器考虑这种情况。
在Kangaroo型解析器中,路径值公式并入针对所采用的每个可能路径的一些信息,而非简单地包含节点标识符。图3示出了图2的解析树,但是在图3中,设计中的每个弧已经被枚举有唯一值。如果在单次查找中遍历多个弧,则路径值计算确定哪些弧被遍历并且基于枚举的弧值计算新的路径值。在此情况下,路径值将为每次查找并入高达3个值。
存在可用于计算路径值且仍然可能针对每个路径产生唯一枚举的其它值。例如,用于确定下一状态的以太网类型值以及被发送至下一状态查找的密钥值都是可行的候选,就像用于确定该状态以及内部状态(例如节点数目或弧数目)的来自分组的数据的组合一样。
为了说明目的,前面的描述使用具体的术语提供对本发明的透彻理解。然而,对本领域技术人员而言明显的是,不需要具体的细节来实现本发明。因此,为了说明和描述给出了本发明的具体实施方式的前面描述。它们不是排他的,也不旨在将本发明限制于所公开的精确形式;明显地,根据上面的教导,许多修改和变化是可行的。实施方式被选择和描述为最佳地解释本发明的原理及其实际应用,由此它们使本领域其它技术人员利用本发明,并且具有各种修改的各种实施方式适于设想到的具体用途。下面的权利要求及其等同用于限定本发明的范围。

Claims (20)

1.一种方法,包括:
构造图,所述图表征与网络业务相关联的分组报头的集合,其中所述图针对形成所述图中的路径的分组报头的每个可能组合具有唯一标识符;
将接收的分组与所述图中的唯一标识符相关联;以及
基于所述唯一标识符重新构造所述接收的分组的特性。
2.根据权利要求1所述的方法,其中所述唯一标识符基于非交换函数。
3.根据权利要求2所述的方法,其中所述非交换函数为循环冗余校验函数。
4.根据权利要求1所述的方法,其中所述特性指明在遍历的路径中出现的报头。
5.根据权利要求1所述的方法,其中所述特性具有相关联的标记集合。
6.根据权利要求1所述的方法,其中所述特性具有相关联的动作集合。
7.根据权利要求1所述的方法,还包括将所述图加载到联合存储器中以作为路径表。
8.根据权利要求1所述的方法,还包括使所述联合存储器作为能够在单次查找中匹配多个路径的多个同时匹配解析器进行操作。
9.一种处理器,包括:
存储图的联合存储器,所述图表征与网络业务相关联的分组报头的集合,其中所述图针对形成所述图中的路径的分组报头的每个可能组合具有唯一标识符,其中所述联合存储器将接收的分组的属性与唯一标识符进行匹配;以及
索引存储器,用以基于所述唯一标识符来重新构造所述接收的分组的特性。
10.根据权利要求9所述的处理器,其中所述联合存储器为三元内容可寻址存储器。
11.根据权利要求9所述的处理器,其中所述联合存储器作为能够在单次查找中匹配多个路径的多个同时匹配解析器进行操作。
12.根据权利要求9所述的处理器,其中所述唯一标识符基于非交换函数。
13.根据权利要求12所述的处理器,其中所述非交换函数为循环冗余校验函数。
14.根据权利要求9所述的处理器,其中所述特性指明在遍历的路径中出现的报头。
15.根据权利要求9所述的处理器,其中所述特性具有相关联的标记集合。
16.根据权利要求9所述的处理器,其中所述特性具有相关联的动作集合。
17.一种方法,包括:
形成用于图中的弧的唯一指派值;
约束所述图中的路径;
基于所述指派值形成贯穿所述图的计算的路径;
利用所述计算的路径构造路径表;以及
确定所述计算的路径中的任一路径是否具有相同的值,如果具有相同的值,则重复所述形成操作和所述构造操作。
18.根据权利要求17所述的方法,其中约束路径包括限制贯穿所述图中的有环路径的转换的数目。
19.根据权利要求17所述的方法,其中约束路径包括选择性地消除所述图中的路径。
20.根据权利要求17所述的方法,其中所述唯一指派值基于非交换函数。
CN201410270176.9A 2013-06-18 2014-06-17 用于唯一枚举解析树中的路径的装置和方法 Active CN104243315B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/921,090 2013-06-18
US13/921,090 US20140369363A1 (en) 2013-06-18 2013-06-18 Apparatus and Method for Uniquely Enumerating Paths in a Parse Tree

Publications (2)

Publication Number Publication Date
CN104243315A true CN104243315A (zh) 2014-12-24
CN104243315B CN104243315B (zh) 2019-05-28

Family

ID=52019177

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410270176.9A Active CN104243315B (zh) 2013-06-18 2014-06-17 用于唯一枚举解析树中的路径的装置和方法

Country Status (5)

Country Link
US (1) US20140369363A1 (zh)
JP (1) JP6383578B2 (zh)
KR (1) KR20140147050A (zh)
CN (1) CN104243315B (zh)
TW (1) TWI683587B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113255264A (zh) * 2021-06-07 2021-08-13 上海国微思尔芯技术股份有限公司 增量分割处理方法、装置、计算机设备和存储介质

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5816964B2 (ja) * 2012-07-24 2015-11-18 日本電信電話株式会社 ネットワーク設計方法およびネットワーク設計装置
US11308114B1 (en) * 2013-12-23 2022-04-19 Cazena, Inc. Platform for provisioning a data analytics environment
US9620213B2 (en) 2013-12-27 2017-04-11 Cavium, Inc. Method and system for reconfigurable parallel lookups using multiple shared memories
US9825884B2 (en) * 2013-12-30 2017-11-21 Cavium, Inc. Protocol independent programmable switch (PIPS) software defined data center networks
US9379963B2 (en) 2013-12-30 2016-06-28 Cavium, Inc. Apparatus and method of generating lookups and making decisions for packet modifying and forwarding in a software-defined network engine
US9413357B2 (en) 2014-06-11 2016-08-09 Cavium, Inc. Hierarchical statistically multiplexed counters and a method thereof
US10616380B2 (en) 2014-06-19 2020-04-07 Cavium, Llc Method of handling large protocol layers for configurable extraction of layer information and an apparatus thereof
US9635146B2 (en) 2014-06-19 2017-04-25 Cavium, Inc. Method of using bit vectors to allow expansion and collapse of header layers within packets for enabling flexible modifications and an apparatus thereof
US9813327B2 (en) 2014-09-23 2017-11-07 Cavium, Inc. Hierarchical hardware linked list approach for multicast replication engine in a network ASIC
US10003676B2 (en) * 2015-02-20 2018-06-19 Cavium, Inc. Method and apparatus for generating parallel lookup requests utilizing a super key
US10616144B2 (en) 2015-03-30 2020-04-07 Cavium, Llc Packet processing system, method and device having reduced static power consumption
WO2019178264A1 (en) 2018-03-14 2019-09-19 Fungible, Inc. Flexible processing of network packets
US11218574B2 (en) 2018-06-08 2022-01-04 Fungible, Inc. Directed graph traversal using content-addressable memory
US10958770B2 (en) * 2018-10-15 2021-03-23 Fungible, Inc. Realization of a programmable forwarding pipeline through packet header summaries in a data processing unit
US11258726B2 (en) 2019-03-27 2022-02-22 Fungible, Inc. Low latency packet switch architecture
WO2021042081A1 (en) * 2019-08-30 2021-03-04 Mosys, Inc. Graph memory engine
US11579802B2 (en) 2019-10-04 2023-02-14 Fungible, Inc. Pipeline using match-action blocks

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5394394A (en) * 1993-06-24 1995-02-28 Bolt Beranek And Newman Inc. Message header classifier
US20020055998A1 (en) * 1997-11-25 2002-05-09 Packeteer, Inc. Method for automatically classifying traffic in a pocket communications network
US20030144993A1 (en) * 1998-12-28 2003-07-31 Tohru Kishigami Data search apparatus and internetwork relay apparatus using data search apparatus
US20050060418A1 (en) * 2003-09-17 2005-03-17 Gennady Sorokopud Packet classification
WO2005086450A1 (en) * 2004-03-02 2005-09-15 Novo Nordisk A/S Transmission data packet construction for better header authentication
US20050213570A1 (en) * 2004-03-26 2005-09-29 Stacy John K Hardware filtering support for denial-of-service attacks
US20060002386A1 (en) * 2004-06-30 2006-01-05 Zarlink Semiconductor Inc. Combined pipelined classification and address search method and apparatus for switching environments
CN1829158A (zh) * 2005-02-18 2006-09-06 阿尔卡特公司 受管理的多播虚拟专用局域网树的结构及供应工具
US7188168B1 (en) * 1999-04-30 2007-03-06 Pmc-Sierra, Inc. Method and apparatus for grammatical packet classifier
US7187694B1 (en) * 2002-03-29 2007-03-06 Pmc-Sierra, Inc. Generic packet parser
US7200684B1 (en) * 2000-04-13 2007-04-03 International Business Machines Corporation Network data packet classification and demultiplexing
US20080101354A1 (en) * 2006-10-31 2008-05-01 Arndt Manfred R Packet processing
US20100118871A1 (en) * 2008-10-15 2010-05-13 Board Of Trustees Of Michigan State University Systematic approach towards minimizing packet classifiers
US20110122893A1 (en) * 2008-07-30 2011-05-26 British Telecommunications Public Limited Company Header compression scheme
US7961636B1 (en) * 2004-05-27 2011-06-14 Cisco Technology, Inc. Vectorized software packet forwarding
US20120051358A1 (en) * 2010-08-31 2012-03-01 Cisco Technology, Inc. Load Balancing Multicast Traffic

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2419255A (en) * 2004-10-14 2006-04-19 Agilent Technologies Inc Modifying an aggregate test in a network probe
US8521905B2 (en) * 2011-12-22 2013-08-27 Telefonaktiebolaget L M Ericsson (Publ) System for flexible and extensible flow processing in software-defined networks
US8718064B2 (en) * 2011-12-22 2014-05-06 Telefonaktiebolaget L M Ericsson (Publ) Forwarding element for flexible and extensible flow processing software-defined networks
US8711860B2 (en) * 2011-12-22 2014-04-29 Telefonaktiebolaget L M Ericsson (Publ) Controller for flexible and extensible flow processing in software-defined networks

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5394394A (en) * 1993-06-24 1995-02-28 Bolt Beranek And Newman Inc. Message header classifier
US20020055998A1 (en) * 1997-11-25 2002-05-09 Packeteer, Inc. Method for automatically classifying traffic in a pocket communications network
US20030144993A1 (en) * 1998-12-28 2003-07-31 Tohru Kishigami Data search apparatus and internetwork relay apparatus using data search apparatus
US7188168B1 (en) * 1999-04-30 2007-03-06 Pmc-Sierra, Inc. Method and apparatus for grammatical packet classifier
US7200684B1 (en) * 2000-04-13 2007-04-03 International Business Machines Corporation Network data packet classification and demultiplexing
US7187694B1 (en) * 2002-03-29 2007-03-06 Pmc-Sierra, Inc. Generic packet parser
US20050060418A1 (en) * 2003-09-17 2005-03-17 Gennady Sorokopud Packet classification
WO2005026871A2 (en) * 2003-09-17 2005-03-24 Cellglide Ltd. Packet classification
WO2005086450A1 (en) * 2004-03-02 2005-09-15 Novo Nordisk A/S Transmission data packet construction for better header authentication
US20050213570A1 (en) * 2004-03-26 2005-09-29 Stacy John K Hardware filtering support for denial-of-service attacks
CN101421991A (zh) * 2004-03-26 2009-04-29 思科技术公司 针对拒绝服务攻击的硬件过滤支持
US7961636B1 (en) * 2004-05-27 2011-06-14 Cisco Technology, Inc. Vectorized software packet forwarding
US20060002386A1 (en) * 2004-06-30 2006-01-05 Zarlink Semiconductor Inc. Combined pipelined classification and address search method and apparatus for switching environments
CN1829158A (zh) * 2005-02-18 2006-09-06 阿尔卡特公司 受管理的多播虚拟专用局域网树的结构及供应工具
US20080101354A1 (en) * 2006-10-31 2008-05-01 Arndt Manfred R Packet processing
US20110122893A1 (en) * 2008-07-30 2011-05-26 British Telecommunications Public Limited Company Header compression scheme
US20100118871A1 (en) * 2008-10-15 2010-05-13 Board Of Trustees Of Michigan State University Systematic approach towards minimizing packet classifiers
US20120051358A1 (en) * 2010-08-31 2012-03-01 Cisco Technology, Inc. Load Balancing Multicast Traffic

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113255264A (zh) * 2021-06-07 2021-08-13 上海国微思尔芯技术股份有限公司 增量分割处理方法、装置、计算机设备和存储介质
CN113255264B (zh) * 2021-06-07 2021-10-01 上海国微思尔芯技术股份有限公司 增量分割处理方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN104243315B (zh) 2019-05-28
TW201501556A (zh) 2015-01-01
JP6383578B2 (ja) 2018-08-29
KR20140147050A (ko) 2014-12-29
JP2015005980A (ja) 2015-01-08
US20140369363A1 (en) 2014-12-18
TWI683587B (zh) 2020-01-21

Similar Documents

Publication Publication Date Title
CN104243315A (zh) 用于唯一枚举解析树中的路径的装置和方法
US9245626B2 (en) System and method for packet classification and internet protocol lookup in a network environment
US20040236720A1 (en) Longest prefix match lookup using hash function
CN104579974B (zh) 面向ndn中名字查找的哈希布鲁姆过滤器及数据转发方法
CN104718731A (zh) 三重内容可寻址内存协助的包分类
CN106062740B (zh) 生成多个索引数据字段的方法和装置
US20150310342A1 (en) Overlay automata approach to regular expression matching for intrusion detection and prevention system
US20150256450A1 (en) Generating a Shape Graph for a Routing Table
US20180039662A1 (en) Search apparatus, search method, program and recording medium
US11334567B2 (en) Efficient SQL-based graph random walk
CN103036848B (zh) 协议的逆向工程方法及系统
Saxena et al. N-FIB: Scalable, memory efficient name-based forwarding
Hsieh et al. Multiprefix trie: A new data structure for designing dynamic router-tables
CN1439985A (zh) 一种改进防火墙性能的方法
Förster et al. Local checkability, no strings attached
KR100662254B1 (ko) 라우팅 시스템에서의 패킷 분류 장치 및 이를 위한 룰 구축 방법
Hsu et al. Multi-inherited search tree for dynamic IP router-tables
Shen et al. A hybrid TCAM+ SRAM scheme for multi-match packet classification
Brack et al. JitVector: Just-in-time code generation for network packet classification
CN116633865B (zh) 网络流量控制方法、装置、电子设备及存储介质
CN108183890A (zh) 一种数据通信协议的解析方法及系统
Manghnani Length Indexed Bloom Filter Based Forwarding in Content Centeric Networking
KR100585935B1 (ko) 멀티비트 트리 비트맵을 이용한 패킷 분류 장치 및 그 방법
Petruschka et al. Connectivity Labeling in Faulty Colored Graphs
US9424257B1 (en) Compiler and operating system adapted for generating programs for decoding communication packets utilizing a protocol stack

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
ASS Succession or assignment of patent right

Owner name: CAVIUM INC.

Free format text: FORMER OWNER: XPLIANT INC.

Effective date: 20150717

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150717

Address after: California, USA

Applicant after: Cavium, Inc.

Address before: California

Applicant before: XPLIANT, Inc.

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: California, USA

Applicant after: Cavium, Inc.

Address before: California, USA

Applicant before: Cavium, Inc.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200428

Address after: Singapore City

Patentee after: Marvell Asia Pte. Ltd.

Address before: Ford street, Grand Cayman, Cayman Islands

Patentee before: Kaiwei international Co.

Effective date of registration: 20200428

Address after: Ford street, Grand Cayman, Cayman Islands

Patentee after: Kaiwei international Co.

Address before: California, USA

Patentee before: Cavium, Inc.