WO2012075818A1 - Method for parsing packet header, header parsing pre-processing device and network processor - Google Patents

Method for parsing packet header, header parsing pre-processing device and network processor Download PDF

Info

Publication number
WO2012075818A1
WO2012075818A1 PCT/CN2011/077916 CN2011077916W WO2012075818A1 WO 2012075818 A1 WO2012075818 A1 WO 2012075818A1 CN 2011077916 W CN2011077916 W CN 2011077916W WO 2012075818 A1 WO2012075818 A1 WO 2012075818A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
header
parsing
new
packet header
Prior art date
Application number
PCT/CN2011/077916
Other languages
French (fr)
Chinese (zh)
Inventor
冷星星
钱勇
Original Assignee
中兴通讯股份有限公司
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 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2012075818A1 publication Critical patent/WO2012075818A1/en

Links

Classifications

    • 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

Definitions

  • Packet header parsing method Packet header parsing method, packet header parsing preprocessor, and network processor
  • the present invention relates to communication technologies, and in particular, to a packet header parsing method, a packet header parsing preprocessing apparatus, and a network processor.
  • the Ternary Content Address Memory is a content-based query-based memory that has the advantages of fast query speed and fixed query time.
  • SRAM static random access memory
  • Action a specific action corresponding to the entry in the TCAM is prestored.
  • the packet is matched with the TCAM entry. If an entry matches the packet successfully, the packet is stored in the SRAM corresponding to the TCAM entry. Actions, thereby achieving the purpose of classifying messages.
  • the content of each bit in the TCAM entry has three forms, namely 0, 1, and *, where 0 and 1 represent specific binary digits, and * indicates that the bit does not participate in the comparison, that is, when matching is performed, the bit The default match is successful.
  • the packet header parsing preprocessing module based on the above two types of storage units mainly performs rule matching on the packet header and parses out the header type inside, such as Ethernet (ethernet) medium access control (Mac). Ethernet type (etype), virtual local area network (WLAN), multi-protocol label switching (MPLS) label, etc.
  • Ethernet ethernet
  • Mac medium access control
  • Ethernet type etype
  • WLAN virtual local area network
  • MPLS multi-protocol label switching
  • This part of the information is carried to the subsequent network processor in a fixed format through an additional field-one header parsing field. Code usage.
  • the microcode takes out the valid information and the type of the packet header. For example, if it is a Layer 2 packet, the second layer process is performed, and the mac is searched for the mac address. For the third layer, the ip address is taken for routing. Find.
  • the header parsing field makes the operation of the microcode simple and effective.
  • the header parsing field usually has a fixed format and length limit, so the number of header types that need to be parsed is limited.
  • FIG. 1 it is a schematic structural diagram of an existing network processor, where the network processor includes a packet header preprocessing module, a table lookup processing module, and a package forwarding module.
  • a packet is generally processed by the packet header parsing, table lookup, and encapsulation and forwarding in the network processor.
  • a Layer 3 packet is used as an example to describe the process of processing the packet by the network processor. The process includes: The packet header parsing pre-processing module first matches the packet as a Layer 3 packet, and performs some pre-processing: Legality check, ip header checksum (checksum) and calculations, etc.
  • the lookup table processing module mainly performs classification processing on the parsed packets: the Layer 3 packets go to the Layer 3 process, and the destination ip checks the routing forwarding table;
  • the encapsulation and forwarding module performs packet update encapsulation according to the result of the lookup table. For example, the Layer 3 packet needs to be updated with mac and vlan, and the egress information is forwarded according to the lookup table.
  • the packet header parsing preprocessing module is a microcode independent module, and the parsing result is transmitted to a subsequent microcode processing (including table lookup processing and encapsulation and forwarding) unit through a predetermined format.
  • a subsequent microcode processing including table lookup processing and encapsulation and forwarding
  • This can greatly simplify microcode processing; however, at the same time, in order to ensure the bandwidth and processing efficiency of the network processor, the information that is passed to the microcode processing, including the parsed header type, is often limited.
  • the packet header parsing preprocessing module includes a rule matching module and an execution module, and the rule matching module is composed of a TCAM unit, which mainly completes the rule matching of the packet header;
  • the module is composed of SRAM units, which mainly performs related operations on the header of the matching rule, for example, filling the header type into the header parsing field.
  • Initialization of the module Fill in the matching rule of the header type A_B_C_D_E_D_G to the i-th entry in the TCAM; fill in the corresponding operation in the SRAM - sequentially parse the seven types in the header;
  • the number of valid header types parsed by the network processor is generally nine, which can satisfy the analysis of the current majority of the packets, and does not waste hardware resources, and the bandwidth and processing of the network processor. effectiveness. However, under certain special functions, the effective type of the header that needs to be parsed may exceed the limit of nine, and the current technical solution cannot solve the problem. Summary of the invention
  • the present invention provides a packet header parsing method, a packet header parsing preprocessing apparatus, and a network processor, so as to implement an effective system in the original system without increasing the hardware cost.
  • Header type for microcode use.
  • the present invention provides a method for parsing a packet header, the method comprising:
  • the header of the packet is analyzed, and the duplicate header type is redefined as a new header type
  • a new parsing rule is added according to the new packet header type, and the packet header type of the packet is parsed according to the new parsing rule.
  • the method further includes: when the number of the packet header types of the packet does not exceed nine, parsing the header type of the text in turn.
  • the steps to add a new parsing rule based on the new header type include: Adding a new parsing rule to the Triple Content Addressable Register (TCAM) based on the new header type.
  • TCAM Triple Content Addressable Register
  • the method further includes: after parsing the packet header type of the packet according to the new parsing rule, performing microcode processing on the parsed header type.
  • the present invention also provides a packet header parsing preprocessing apparatus, the packet header parsing preprocessing apparatus comprising: a redefining module, configured to: when the number of packet header types exceeds 9, analyze the "3 ⁇ 4 text" The header, and redefines the repeated header type to a new header type; and a parsing module, which is set to: add a new parsing rule according to the new header type, and parse the packet header according to the new parsing rule Types of.
  • the packet header pre-processing apparatus further includes: a packet header parsing module configured to parse the packet header type of the packet in sequence when the number of packet header types of the packet does not exceed nine.
  • the parsing module is arranged to add a new parsing rule by: adding the new parsing rule to a triple content addressable register (TCAM) according to a new header type.
  • TCAM triple content addressable register
  • the present invention also provides a network processor, which includes a packet header parsing preprocessing module, a table lookup processing module, and a package forwarding module, where:
  • the packet header parsing pre-processing module is configured to: when the number of packet header types exceeds 9, Parsing the header of the "3 ⁇ 4 text", and redefining the repeated header type as a new header type; and, adding a new parsing rule according to the new header type, parsing the packet according to the new parsing rule
  • the header type of the packet is sent to the table lookup processing module; the lookup table processing module is configured to perform classification processing according to the header type of the parsed message; the package forwarding module is set according to The result of the classification processing of the table lookup processing module is to update and encapsulate the message.
  • the packet header pre-processing module is further configured to: when the number of packet header types does not exceed 9, the packet header type of the packet is parsed in turn, and the parsed header type of the parsed packet is sent to the lookup table. Processing module.
  • the header parsing pre-processing module is arranged to add a new parsing rule by adding the new parsing rule to a triple content addressable register (TCAM) according to a new header type.
  • TCAM triple content addressable register
  • the parsing method of the packet header, the header parsing preprocessing apparatus and the network processor re-define the repeated header type into a new header type, add a new parsing rule according to the new header type, and parse according to the new parsing rule.
  • the type of packet header of the message so that under the original system, without increasing the hardware cost, the valid header type can still be parsed according to the requirements for use by the microcode.
  • 1 is a schematic structural diagram of a conventional network processor
  • FIG. 2 is a schematic diagram showing the principle of the work of the existing packet header parsing preprocessing module
  • FIG. 3 is a flowchart of a method for matching a message rule according to the present invention.
  • FIG. 4 is a schematic structural diagram of a packet header parsing preprocessing apparatus according to the present invention.
  • FIG. 5 is a schematic structural diagram of a network processor according to the present invention. Preferred embodiment of the invention
  • the present invention provides a parsing method for a packet header, which can parse a header type for efficient use of the microcode, the method comprising:
  • the header of the packet is analyzed, and the duplicate header type is redefined as a new header type
  • a new parsing rule is added according to the new packet header type, and the packet header type of the packet is parsed according to the new parsing rule.
  • the parsing method of the packet header may further include: when the number of the packet header types does not exceed nine, the packet header type of the packet is parsed in turn according to the prior art.
  • Step 301 Determine whether the current number of packet header types exceeds 9, for the packet parsing rule that does not exceed 9 types, step 302 is performed, and if there are more than 9, the step 303 is performed;
  • Step 302 sequentially parsing each packet header type in sequence; Go to step 306;
  • Step 303 In the case that the type of the packet header exceeds 9, the header of the packet is analyzed, and some of the header types are newly defined as a new header type, so that the header type of the new rule can be controlled to be 9 Within the scope;
  • Step 304 Re-add a matching rule according to the new type definition
  • the matching rule is the parsing rule, that is, the driver adds a new parsing rule to the TCAM: A B C tripleD G H I J;
  • Step 305 The message matches the new rule, and the new packet header type is parsed.
  • Step 306 The message parsing is completed, and the corresponding microcode processing flow is entered.
  • Microcode only needs to add the relevant operations for the new header type without affecting the entire process.
  • the header type contained in it contains a duplicate header type; these repeated multiple header types can be redefined as a header type.
  • the packet header parsing pre-processing module can perform all types of parsing without excessively increasing the micro-code processing complexity, so that the packet header parsing module can expand the function without expanding the hardware resources.
  • the header parsing preprocessing apparatus includes a redefining module 41 and a parsing module 42, wherein the redefining module is configured to: when the number of header types exceeds 9 At the same time, the packet header is analyzed, and the repeated header type is redefined as a new header type; the parsing module is set to: add a new parsing rule according to the new header type, and parse according to the new parsing rule The header type of the message.
  • the packet header pre-processing apparatus further includes a packet header parsing module configured to: when the number of packet header types does not exceed nine, parse the packet header type according to the procedure shown in FIG. 2.
  • the parsing module may be configured to add a new parsing rule to the TCAM according to the new header type.
  • the packet header pre-processing device can parse the packet header type of the packet, and the implementation process is the same as that of the packet header. For details, refer to FIG. 3.
  • the packet header parsing preprocessing apparatus re-defines the repeated header type into a new header type by the redefinition module, adds a new parsing rule according to the new header type by the parsing module, and parses the packet according to the new parsing rule.
  • the header type so that under the original system, without increasing the hardware cost, the valid header type can still be parsed according to the requirements for microcode use.
  • the network processor includes a packet header parsing preprocessing module 51, a table lookup processing module 52, and a packet forwarding module 53, wherein: the packet header parsing preprocessing module is configured to : When the number of packet header types exceeds 9, The header of the message, and redefines the repeated header type to a new header type; and, according to the new header type, adds a new parsing rule, parses the packet header type according to the new parsing rule, and The packet header type of the parsed packet is sent to the table lookup processing module; the lookup table processing module is configured to perform classification processing according to the parsed header type of the parsed packet; and the encapsulation and forwarding module is configured to perform classification processing according to the table lookup processing module. Update the encapsulation of the message.
  • the packet header pre-processing module is further configured to: when the number of packet header types does not exceed 9, the packet header type of the packet is parsed in turn, and the header type of the parsed packet is sent to the lookup table. Processing module.
  • the header parsing pre-processing module is the same as the header parsing pre-processing apparatus, and is not described here.
  • the packet header parsing pre-processing module may add the new parsing rule to a triple content addressable register (TCAM) according to a new header type.
  • TCAM triple content addressable register
  • the network processor by combining some of the header types, enables the packet header preprocessing module to effectively parse the type information required for microcode processing, while ensuring that the microcode does not use too many instructions in processing. , thereby improving the operating efficiency of the entire system.
  • the present invention re-defines the repeated header type into a new header type, adds a new parsing rule according to the new header type, and parses the packet according to the new parsing rule.
  • the type of the header is such that, under the original system, without increasing the hardware cost, the effective header type can still be solved as required for the microcode.

Abstract

The present invention provides a method for parsing a packet header, a header parsing pre-processing device and a network processor. The method comprises: when the number of header types of a packet exceeds nine, analyzing a header of the packet, and re-defining a repetitive header type as a new header type; and adding a new parsing rule according to the new header type, and parsing a header type of the packet according to the new parsing rule. Through the present invention, a repetitive header type is re-defined as a new header type, a new parsing rule is added according to the new header type, and a header type of the packet is parsed according to the new parsing rule, so that in an original system, without increasing the hardware cost, an effective header type can still be parsed as required, and is provided to be used by a microcode.

Description

报文包头的解析方法、 包头解析预处理装置和网络处理器  Packet header parsing method, packet header parsing preprocessor, and network processor
技术领域 Technical field
本发明涉及通信技术, 尤其涉及一种报文包头的解析方法、 包头解析预 处理装置和网络处理器。  The present invention relates to communication technologies, and in particular, to a packet header parsing method, a packet header parsing preprocessing apparatus, and a network processor.
背景技术 Background technique
三重内容可寻址寄存器( Ternary Content Address Memory, TCAM )是一 种基于内容查询的存储器, 其具有查询速度快和查询时间固定的优点。 在 TCAM中预存有若干条表项, 每条表项对应着一条规则; 在静态随机存储器 ( SRAM ) 中预存有与 TCAM中的表项对应的具体动作 (Action ) 。 在对报 文进行分类时, 将报文与 TCAM的表项进行关键字匹配, 如果某个表项与该 报文匹配成功,则对报文执行与该 TCAM表项对应的 SRAM中存储的相关动 作, 从而实现对报文分类的目的。 TCAM的表项中的每一位的内容具有三种 形式, 即 0、 1和 *, 其中 0和 1表示具体的二进制数字, 而 *表示该位不参与 比较, 即在进行匹配时, 该位默认匹配成功。  The Ternary Content Address Memory (TCAM) is a content-based query-based memory that has the advantages of fast query speed and fixed query time. There are several entries pre-stored in the TCAM, and each entry corresponds to a rule; in the static random access memory (SRAM), a specific action (Action) corresponding to the entry in the TCAM is prestored. When the packet is classified, the packet is matched with the TCAM entry. If an entry matches the packet successfully, the packet is stored in the SRAM corresponding to the TCAM entry. Actions, thereby achieving the purpose of classifying messages. The content of each bit in the TCAM entry has three forms, namely 0, 1, and *, where 0 and 1 represent specific binary digits, and * indicates that the bit does not participate in the comparison, that is, when matching is performed, the bit The default match is successful.
在某些网络处理器中, 基于上述两种存储单元的包头解析预处理模块, 主要对报文包头进行规则匹配, 并且解析出里面的包头类型, 例如以太网 ( ethernet )介质访问控制( mac )、以太网类型( etype )、虚拟局域网( vlan )、 多协议标签交换(MPLS )标签等, 这部分信息通过一个附加的字段一一包头 解析字段, 以固定的格式携带给后续网络处理器的微码使用。 微码根据这个 固定的格式, 取出有效的信息和包头类型进行操作, 例如是二层报文, 则走 二层流程, 取出 mac查找 mac地址; 对于三层才艮文, 则取出 ip地址进行路由 查找。 包头解析字段的存在使微码的操作变得简单有效。 为了保证网络处理 器的带宽和处理效率, 包头解析字段通常有固定的格式和长度的限制, 因此 也就要求解析出来的包头类型在数目上有限制。  In some network processors, the packet header parsing preprocessing module based on the above two types of storage units mainly performs rule matching on the packet header and parses out the header type inside, such as Ethernet (ethernet) medium access control (Mac). Ethernet type (etype), virtual local area network (WLAN), multi-protocol label switching (MPLS) label, etc. This part of the information is carried to the subsequent network processor in a fixed format through an additional field-one header parsing field. Code usage. According to this fixed format, the microcode takes out the valid information and the type of the packet header. For example, if it is a Layer 2 packet, the second layer process is performed, and the mac is searched for the mac address. For the third layer, the ip address is taken for routing. Find. The existence of the header parsing field makes the operation of the microcode simple and effective. In order to ensure the bandwidth and processing efficiency of the network processor, the header parsing field usually has a fixed format and length limit, so the number of header types that need to be parsed is limited.
如图 1所示, 为现有的网络处理器的结构示意图, 该网络处理器包括包 头解析预处理模块、 查表处理模块和封装转发模块。 一个报文在网络处理器 中一般都经过了包头解析预处理、 查表处理和封装转发的处理过程, 下面以 一个三层报文为例, 说明网络处理器处理该报文的过程, 该过程包括: 包头解析预处理模块首先匹配出该报文是一个三层报文, 同时完成一些 预处理: 例如报文合法性检查, ip包头校验(checksum )和计算等等; As shown in FIG. 1 , it is a schematic structural diagram of an existing network processor, where the network processor includes a packet header preprocessing module, a table lookup processing module, and a package forwarding module. A packet is generally processed by the packet header parsing, table lookup, and encapsulation and forwarding in the network processor. A Layer 3 packet is used as an example to describe the process of processing the packet by the network processor. The process includes: The packet header parsing pre-processing module first matches the packet as a Layer 3 packet, and performs some pre-processing: Legality check, ip header checksum (checksum) and calculations, etc.
查表处理模块主要针对解析出的报文进行分类处理: 三层报文走到三层 流程, 取目的 ip查路由转发表等;  The lookup table processing module mainly performs classification processing on the parsed packets: the Layer 3 packets go to the Layer 3 process, and the destination ip checks the routing forwarding table;
封装转发模块则根据查表的结果, 进行报文的更新封装, 例如三层报文 需要更新 mac和 vlan等等, 同时根据查转发表获得出口信息转发出去。  The encapsulation and forwarding module performs packet update encapsulation according to the result of the lookup table. For example, the Layer 3 packet needs to be updated with mac and vlan, and the egress information is forwarded according to the lookup table.
在该网络处理器中, 包头解析预处理模块是一个独立于微码的模块, 其 解析结果, 通过一个约定的格式传给后面的微码处理(包括查表处理和封装 转发)单元进行处理, 这可以极大地简化微码处理; 但是同时, 为了保证网 络处理器的带宽和处理效率, 其传递给微码处理的信息包括解析出的包头类 型往往是有限的。  In the network processor, the packet header parsing preprocessing module is a microcode independent module, and the parsing result is transmitted to a subsequent microcode processing (including table lookup processing and encapsulation and forwarding) unit through a predetermined format. This can greatly simplify microcode processing; however, at the same time, in order to ensure the bandwidth and processing efficiency of the network processor, the information that is passed to the microcode processing, including the parsed header type, is often limited.
如图 2所示, 为现有的包头解析预处理模块工作的原理示意图, 该包头 解析预处理模块包括规则匹配模块和执行模块,规则匹配模块由 TCAM单元 组成, 主要完成包头的规则匹配; 执行模块由 SRAM单元组成, 主要是对匹 配规则后的包头执行相关操作, 例如往包头解析字段填写包头类型等。  As shown in FIG. 2, a schematic diagram of the working principle of the preprocessing module of the existing packet header parsing, the packet header parsing preprocessing module includes a rule matching module and an execution module, and the rule matching module is composed of a TCAM unit, which mainly completes the rule matching of the packet header; The module is composed of SRAM units, which mainly performs related operations on the header of the matching rule, for example, filling the header type into the header parsing field.
下面说明该模块的工作过程:  The following describes the working process of the module:
1、 该模块的初始化: 往 TCAM 中第 i 个条目填写包头类型分别为 A_B_C_D_E_D_G的匹配规则; 往 SRAM中填写对应操作——依次解析出包 头中的 7个类型;  1. Initialization of the module: Fill in the matching rule of the header type A_B_C_D_E_D_G to the i-th entry in the TCAM; fill in the corresponding operation in the SRAM - sequentially parse the seven types in the header;
2、 报文匹配: 此时若是进来一个匹配 i规则的报文, 将执行 SRAM中 相关的操作: 将包头类型 A, B, C, D, E, D, G分别填写到包头解析字段 中, 并且按照解析出来的报文类型走到相应的处理流程进行微码处理。  2. Message matching: At this time, if a message matching the i rule is entered, the related operations in the SRAM will be executed: Fill the header types A, B, C, D, E, D, G into the header parsing field respectively. And according to the parsed message type, go to the corresponding processing flow for microcode processing.
由此可见, 目前网络处理器解析出的有效包头类型个数一般为 9个, 这 可以满足目前绝大多数情况下报文的解析, 也不会浪费硬件资源, 以及网络 处理器的带宽和处理效率。 但在某些特殊的功能下, 需要解析出的包头有效 类型可能突破 9个的限制, 目前的技术方案无法解决该问题。 发明内容 It can be seen that the number of valid header types parsed by the network processor is generally nine, which can satisfy the analysis of the current majority of the packets, and does not waste hardware resources, and the bandwidth and processing of the network processor. effectiveness. However, under certain special functions, the effective type of the header that needs to be parsed may exceed the limit of nine, and the current technical solution cannot solve the problem. Summary of the invention
为了解决上述技术问题, 本发明提供了一种报文包头的解析方法、 包头 解析预处理装置和网络处理器, 以实现在原来的系统下, 不增加硬件成本, 依然能按照要求解析出有效的包头类型, 供微码使用。  In order to solve the above technical problem, the present invention provides a packet header parsing method, a packet header parsing preprocessing apparatus, and a network processor, so as to implement an effective system in the original system without increasing the hardware cost. Header type, for microcode use.
本发明提供了一种报文包头的解析方法, 该方法包括:  The present invention provides a method for parsing a packet header, the method comprising:
当报文的包头类型的个数超过 9个时, 分析所述报文的包头, 将重复的 包头类型重新定义为一个新的包头类型; 以及  When the number of packet header types exceeds 9, the header of the packet is analyzed, and the duplicate header type is redefined as a new header type;
根据新的包头类型添加新的解析规则, 并按照所述新的解析规则解析出 所述报文的包头类型。  A new parsing rule is added according to the new packet header type, and the packet header type of the packet is parsed according to the new parsing rule.
所述方法还包括: 当所述报文的包头类型的个数未超过 9个时, 依次对 所述 文的包头类型进行解析。  The method further includes: when the number of the packet header types of the packet does not exceed nine, parsing the header type of the text in turn.
根据新的包头类型添加新的解析规则的步骤包括: 根据新的包头类型向 三重内容可寻址寄存器(TCAM ) 中添加新的解析规则。  The steps to add a new parsing rule based on the new header type include: Adding a new parsing rule to the Triple Content Addressable Register (TCAM) based on the new header type.
该方法还包括: 在按照所述新的解析规则解析出报文的包头类型之后, 对解析出的包头类型进行微码处理。  The method further includes: after parsing the packet header type of the packet according to the new parsing rule, performing microcode processing on the parsed header type.
本发明还提供了一种包头解析预处理装置,该包头解析预处理装置包括: 重定义模块, 其设置成: 当报文的包头类型的个数超过 9个时, 分析所 述"¾文的包头, 并将重复的包头类型重新定义为一个新的包头类型; 以及 解析模块, 其设置成: 根据新的包头类型添加新的解析规则, 并按照所 述新的解析规则解析出报文的包头类型。  The present invention also provides a packet header parsing preprocessing apparatus, the packet header parsing preprocessing apparatus comprising: a redefining module, configured to: when the number of packet header types exceeds 9, analyze the "3⁄4 text" The header, and redefines the repeated header type to a new header type; and a parsing module, which is set to: add a new parsing rule according to the new header type, and parse the packet header according to the new parsing rule Types of.
所述包头解析预处理装置还包括: 包头解析模块, 其设置成当所述报文 的包头类型的个数未超过 9个时, 依次对所述报文的包头类型进行解析。  The packet header pre-processing apparatus further includes: a packet header parsing module configured to parse the packet header type of the packet in sequence when the number of packet header types of the packet does not exceed nine.
所述解析模块是设置成通过如下方式添加新的解析规则: 根据新的包头 类型向三重内容可寻址寄存器(TCAM ) 中添加所述新的解析规则。  The parsing module is arranged to add a new parsing rule by: adding the new parsing rule to a triple content addressable register (TCAM) according to a new header type.
本发明还提供了一种网络处理器, 该网络处理器包括包头解析预处理模 块、 查表处理模块和封装转发模块, 其中:  The present invention also provides a network processor, which includes a packet header parsing preprocessing module, a table lookup processing module, and a package forwarding module, where:
所述包头解析预处理模块设置成: 当报文的包头类型的个数超过 9个时, 分析所述"¾文的包头, 并将重复的包头类型重新定义为一个新的包头类型; 以及, 根据新的包头类型添加新的解析规则, 按照所述新的解析规则解析出 所述报文的包头类型, 并将解析出的报文的包头类型发送至查表处理模块; 所述查表处理模块设置成根据解析出的报文的包头类型进行分类处理; 所述封装转发模块设置成根据查表处理模块的分类处理结果进行报文的 更新封装。 The packet header parsing pre-processing module is configured to: when the number of packet header types exceeds 9, Parsing the header of the "3⁄4 text", and redefining the repeated header type as a new header type; and, adding a new parsing rule according to the new header type, parsing the packet according to the new parsing rule The header type of the packet is sent to the table lookup processing module; the lookup table processing module is configured to perform classification processing according to the header type of the parsed message; the package forwarding module is set according to The result of the classification processing of the table lookup processing module is to update and encapsulate the message.
所述包头解析预处理模块还设置成: 当报文的包头类型的个数未超过 9 个时, 依次对报文的包头类型进行解析, 并将解析出的报文的包头类型发送 至查表处理模块。  The packet header pre-processing module is further configured to: when the number of packet header types does not exceed 9, the packet header type of the packet is parsed in turn, and the parsed header type of the parsed packet is sent to the lookup table. Processing module.
所述包头解析预处理模块是设置成通过如下方式添加新的解析规则: 根 据新的包头类型向三重内容可寻址寄存器 (TCAM ) 中添加所述新的解析规 则。  The header parsing pre-processing module is arranged to add a new parsing rule by adding the new parsing rule to a triple content addressable register (TCAM) according to a new header type.
上述报文包头的解析方法、 包头解析预处理装置和网络处理器, 将重复 的包头类型重新定义为一个新的包头类型, 根据新的包头类型添加新的解析 规则, 并按照新的解析规则解析出报文的包头类型; 使得在原来的系统下, 不增加硬件成本, 依然能按照要求解析出有效的包头类型, 供微码使用。 附图概述  The parsing method of the packet header, the header parsing preprocessing apparatus and the network processor re-define the repeated header type into a new header type, add a new parsing rule according to the new header type, and parse according to the new parsing rule. The type of packet header of the message; so that under the original system, without increasing the hardware cost, the valid header type can still be parsed according to the requirements for use by the microcode. BRIEF abstract
图 1为现有的网络处理器的结构示意图;  1 is a schematic structural diagram of a conventional network processor;
图 2为现有的包头解析预处理模块工作的原理示意图;  2 is a schematic diagram showing the principle of the work of the existing packet header parsing preprocessing module;
图 3为本发明报文规则匹配方法的流程图;  3 is a flowchart of a method for matching a message rule according to the present invention;
图 4为本发明包头解析预处理装置的结构示意图;  4 is a schematic structural diagram of a packet header parsing preprocessing apparatus according to the present invention;
图 5为本发明网络处理器的结构示意图。 本发明的较佳实施方式  FIG. 5 is a schematic structural diagram of a network processor according to the present invention. Preferred embodiment of the invention
为使本发明的目的、 技术方案和实施方式更加清楚, 下面将结合附图及 具体实施例对本发明的技术方案进行详细地描述。 在实际应用中, 可能有些报文的有效包头类型超过 9个, 目前应用中的 最长的有效包头类型达到 12个。如果为了这几个有限的报文类型而改变硬件 结构, 增加系统成本, 代价太大。 The technical solutions of the present invention will be described in detail below with reference to the accompanying drawings and specific embodiments. In practical applications, there may be more than 9 valid header types for some messages, and the longest effective header type in the application reaches 12. If the hardware structure is changed for these limited message types, the system cost is increased, which is too costly.
本发明提供了一种报文包头的解析方法, 该方法能解析出供微码有效使 用的包头类型, 该方法包括:  The present invention provides a parsing method for a packet header, which can parse a header type for efficient use of the microcode, the method comprising:
当报文的包头类型的个数超过 9个时, 分析所述报文的包头, 将重复的 包头类型重新定义为一个新的包头类型; 以及  When the number of packet header types exceeds 9, the header of the packet is analyzed, and the duplicate header type is redefined as a new header type;
根据新的包头类型添加新的解析规则, 并按照所述新的解析规则解析出 报文的包头类型。  A new parsing rule is added according to the new packet header type, and the packet header type of the packet is parsed according to the new parsing rule.
该报文包头的解析方法还可以包括: 当包头类型的个数未超过 9个时, 按照现有技术依次对报文的包头类型进行解析。  The parsing method of the packet header may further include: when the number of the packet header types does not exceed nine, the packet header type of the packet is parsed in turn according to the prior art.
假如现在需要处理下面类型的一个报文, 需要解析出的包头类型数有 10 个: A— B— C— D— D— D— G— H— I— J, 其处理过程如图 3所示:  If there is a need to process a message of the following type, there are 10 types of header types that need to be parsed: A—B—C—D—D—D—G—H—I—J, and its processing is shown in Figure 3. :
步骤 301、 判断当前包头类型个数是否超过 9个, 对于没有超过 9个类 型的报文解析规则, 执行步骤 302, 若超过 9个则执行步骤 303;  Step 301: Determine whether the current number of packet header types exceeds 9, for the packet parsing rule that does not exceed 9 types, step 302 is performed, and if there are more than 9, the step 303 is performed;
步骤 302、 按照顺序对各个包头类型依次进行解析; 转向步骤 306;  Step 302, sequentially parsing each packet header type in sequence; Go to step 306;
步骤 303、 在包头类型超过 9个的情况下, 分析该 ^艮文包头, 重新定义 其中某几个包头类型为一个新的包头类型, 使新的规则解析出来的包头类型 能控制在 9个的范围内;  Step 303: In the case that the type of the packet header exceeds 9, the header of the packet is analyzed, and some of the header types are newly defined as a new header type, so that the header type of the new rule can be controlled to be 9 Within the scope;
其中定义为新包头类型的几个包头类型主要从微码处理的方便性出发, 一般选择微码操作相对较少的几个包头进行合并; 这里将三个重复出现的 D 类型重新定义为一个三重 D ( tripleD )类型;  Several types of headers defined as new header types are mainly based on the convenience of microcode processing. Generally, several headers with relatively few microcode operations are merged. Here, three repetitive D types are redefined as a triple. D (tripleD) type;
步骤 304、 按照新的类型定义重新添加匹配规则;  Step 304: Re-add a matching rule according to the new type definition;
该匹配规则即为解析规则, 即驱动向 TCAM中添加一条新的解析规则: A B C tripleD G H I J;  The matching rule is the parsing rule, that is, the driver adds a new parsing rule to the TCAM: A B C tripleD G H I J;
步骤 305、 报文匹配新的规则, 解析出新的包头类型;  Step 305: The message matches the new rule, and the new packet header type is parsed.
同时 SRAM中填写对应操作——依次解析出包头类型 A, B, C, tripleD, G, H, I, J; At the same time, the corresponding operations are filled in the SRAM - the header types A, B, C, tripleD are parsed in turn. G, H, I, J;
步骤 306、 报文解析完成, 进入相应的微码处理流程。  Step 306: The message parsing is completed, and the corresponding microcode processing flow is entered.
微码只需要添加相关的针对新包头类型的操作即可, 而不会影响整个流 程。  Microcode only needs to add the relevant operations for the new header type without affecting the entire process.
当需要解析的有效包头类型超过 9个时, 其中包含的包头类型存在重复 的某个包头类型;可以将这些重复的多个包头类型重新定义为一个包头类型。 这样, 包头解析预处理模块可以完成所有类型的解析, 同时不会过多的增加 微码处理复杂度, 使包头解析模块在不扩展硬件资源的情况下, 完成功能的 扩展。  When there are more than 9 valid header types to be parsed, the header type contained in it contains a duplicate header type; these repeated multiple header types can be redefined as a header type. In this way, the packet header parsing pre-processing module can perform all types of parsing without excessively increasing the micro-code processing complexity, so that the packet header parsing module can expand the function without expanding the hardware resources.
如图 4所示, 为本发明包头解析预处理装置的结构示意图, 该包头解析 预处理装置包括重定义模块 41和解析模块 42, 其中, 重定义模块设置成: 当包头类型的个数超过 9个时, 分析所述报文包头, 并将重复的包头类型重 新定义为一个新的包头类型; 解析模块设置成: 根据新的包头类型添加新的 解析规则, 并按照所述新的解析规则解析出报文的包头类型。  As shown in FIG. 4, it is a schematic structural diagram of a packet header parsing preprocessing apparatus according to the present invention. The header parsing preprocessing apparatus includes a redefining module 41 and a parsing module 42, wherein the redefining module is configured to: when the number of header types exceeds 9 At the same time, the packet header is analyzed, and the repeated header type is redefined as a new header type; the parsing module is set to: add a new parsing rule according to the new header type, and parse according to the new parsing rule The header type of the message.
另外, 所述包头解析预处理装置还包括包头解析模块, 该包头解析模块 设置成: 当包头类型的个数未超过 9个时, 按照图 2所示流程对报文的包头 类型进行解析。  In addition, the packet header pre-processing apparatus further includes a packet header parsing module configured to: when the number of packet header types does not exceed nine, parse the packet header type according to the procedure shown in FIG. 2.
其中, 所述解析模块可以设置成根据新的包头类型向 TCAM中添加新的 解析规则。  The parsing module may be configured to add a new parsing rule to the TCAM according to the new header type.
该包头解析预处理装置可解析报文的包头类型, 其实现过程与报文包头 的解析方法相同, 具体可参见图 3。  The packet header pre-processing device can parse the packet header type of the packet, and the implementation process is the same as that of the packet header. For details, refer to FIG. 3.
该包头解析预处理装置, 通过重定义模块将重复的包头类型重新定义为 一个新的包头类型, 通过解析模块根据新的包头类型添加新的解析规则, 并 按照新的解析规则解析出报文的包头类型; 使得在原来的系统下, 不增加硬 件成本, 依然能按照要求解析出有效的包头类型, 供微码使用。  The packet header parsing preprocessing apparatus re-defines the repeated header type into a new header type by the redefinition module, adds a new parsing rule according to the new header type by the parsing module, and parses the packet according to the new parsing rule. The header type; so that under the original system, without increasing the hardware cost, the valid header type can still be parsed according to the requirements for microcode use.
如图 5所示, 为本发明网络处理器的结构示意图, 该网络处理器包括包 头解析预处理模块 51、 查表处理模块 52和封装转发模块 53 , 其中: 所述包 头解析预处理模块设置成: 当报文的包头类型的个数超过 9个时, 分析所述 报文的包头, 并将重复的包头类型重新定义为一个新的包头类型; 以及, 根 据新的包头类型添加新的解析规则, 按照所述新的解析规则解析出报文的包 头类型, 并将解析出的报文的包头类型发送至查表处理模块; 查表处理模块 设置成根据解析出的报文的包头类型进行分类处理; 所述封装转发模块设置 成根据查表处理模块的分类处理结果进行报文的更新封装。 As shown in FIG. 5, it is a schematic structural diagram of a network processor according to the present invention. The network processor includes a packet header parsing preprocessing module 51, a table lookup processing module 52, and a packet forwarding module 53, wherein: the packet header parsing preprocessing module is configured to : When the number of packet header types exceeds 9, The header of the message, and redefines the repeated header type to a new header type; and, according to the new header type, adds a new parsing rule, parses the packet header type according to the new parsing rule, and The packet header type of the parsed packet is sent to the table lookup processing module; the lookup table processing module is configured to perform classification processing according to the parsed header type of the parsed packet; and the encapsulation and forwarding module is configured to perform classification processing according to the table lookup processing module. Update the encapsulation of the message.
优选地, 所述包头解析预处理模块还设置成: 当包头类型的个数未超过 9 个时, 依次对报文的包头类型进行解析, 并将解析出的报文的包头类型发 送至查表处理模块。 该包头解析预处理模块与上述包头解析预处理装置的结 构相同, 此处不再赘述。  Preferably, the packet header pre-processing module is further configured to: when the number of packet header types does not exceed 9, the packet header type of the packet is parsed in turn, and the header type of the parsed packet is sent to the lookup table. Processing module. The header parsing pre-processing module is the same as the header parsing pre-processing apparatus, and is not described here.
进一步地, 所述包头解析预处理模块可以根据新的包头类型向三重内容 可寻址寄存器(TCAM ) 中添加所述新的解析规则。  Further, the packet header parsing pre-processing module may add the new parsing rule to a triple content addressable register (TCAM) according to a new header type.
该网络处理器, 通过对其中的某些包头类型进行合并, 使包头解析预处 理模块能够有效地解析出微码处理需要的类型信息, 而同时保证微码在处理 上不会使用过多的指令, 从而提高整个系统的运行效率。  The network processor, by combining some of the header types, enables the packet header preprocessing module to effectively parse the type information required for microcode processing, while ensuring that the microcode does not use too many instructions in processing. , thereby improving the operating efficiency of the entire system.
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序 来指令相关硬件完成, 上述程序可以存储于计算机可读存储介质中, 如只读 存储器、 磁盘或光盘等。 可选地, 上述实施例的全部或部分步骤也可以使用 一个或多个集成电路来实现。 相应地, 上述实施例中的各模块 /单元可以釆用 硬件的形式实现, 也可以釆用软件功能模块的形式实现。 本发明不限制于任 何特定形式的硬件和软件的结合。  One of ordinary skill in the art will appreciate that all or a portion of the above steps may be accomplished by a program that instructs the associated hardware to be stored in a computer readable storage medium, such as a read only memory, a magnetic disk, or an optical disk. Alternatively, all or part of the steps of the above embodiments may also be implemented using one or more integrated circuits. Correspondingly, each module/unit in the above embodiment may be implemented in the form of hardware or in the form of a software function module. The invention is not limited to any specific form of combination of hardware and software.
以上实施例仅用以说明本发明的技术方案而非限制, 仅仅参照较佳实施 例对本发明进行了详细说明。 本领域的普通技术人员应当理解, 可以对本发 明的技术方案进行修改或者等同替换, 而不脱离本发明技术方案的精神和范 围, 均应涵盖在本发明的权利要求范围当中。  The above embodiments are only intended to illustrate the technical solutions of the present invention and are not to be construed as limiting the invention. It should be understood by those skilled in the art that the present invention may be modified or equivalently substituted without departing from the spirit and scope of the invention.
工业实用性 Industrial applicability
与现有技术相比, 本发明将重复的包头类型重新定义为一个新的包头类 型, 根据新的包头类型添加新的解析规则, 并按照新的解析规则解析出报文 的包头类型; 使得在原来的系统下, 不增加硬件成本, 依然能按照要求解 出有效的包头类型, 供微码使用。 Compared with the prior art, the present invention re-defines the repeated header type into a new header type, adds a new parsing rule according to the new header type, and parses the packet according to the new parsing rule. The type of the header is such that, under the original system, without increasing the hardware cost, the effective header type can still be solved as required for the microcode.

Claims

权 利 要 求 书 Claim
1、 一种 文包头的解析方法, 该方法包括:  1. A parsing method for a packet header, the method comprising:
当报文的包头类型的个数超过 9个时, 分析所述报文的包头, 将重复的 包头类型重新定义为一个新的包头类型; 以及  When the number of packet header types exceeds 9, the header of the packet is analyzed, and the duplicate header type is redefined as a new header type;
根据新的包头类型添加新的解析规则, 并按照所述新的解析规则解析出 所述报文的包头类型。  A new parsing rule is added according to the new packet header type, and the packet header type of the packet is parsed according to the new parsing rule.
2、 根据权利要求 1所述的报文包头的解析方法, 还包括:  2. The method for parsing a packet header according to claim 1, further comprising:
当所述报文的包头类型的个数未超过 9个时, 依次对所述报文的包头类 型进行解析。  When the number of the packet header types of the packet does not exceed nine, the packet header type of the packet is parsed in turn.
3、 根据权利要求 1或 2所述的报文包头的解析方法, 其中, 根据新的包 头类型添加新的解析规则的步骤包括:  The method for parsing a packet header according to claim 1 or 2, wherein the step of adding a new parsing rule according to the new header type comprises:
根据新的包头类型向三重内容可寻址寄存器(TCAM ) 中添加新的解析 规则。  Add a new parsing rule to the Triple Content Addressable Register (TCAM) based on the new header type.
4、 根据权利要求 1或 2所述的报文包头的解析方法, 还包括: 在按照所 述新的解析规则解析出报文的包头类型之后,  The method for parsing a packet header according to claim 1 or 2, further comprising: after parsing the packet header type of the packet according to the new parsing rule,
对解析出的包头类型进行微码处理。  Microcode processing is performed on the parsed header type.
5、 一种包头解析预处理装置, 包括:  5. A packet header parsing preprocessing apparatus, comprising:
重定义模块, 其设置成: 当报文的包头类型的个数超过 9个时, 分析所 述"¾文的包头, 并将重复的包头类型重新定义为一个新的包头类型; 以及 解析模块, 其设置成: 根据新的包头类型添加新的解析规则, 并按照所 述新的解析规则解析出报文的包头类型。  Redefining the module, which is set to: when the number of packet header types exceeds 9, analyze the "3⁄4 text header", and redefine the repeated header type to a new header type; and the parsing module, It is set to: add a new parsing rule according to the new packet header type, and parse the packet header type of the packet according to the new parsing rule.
6、 根据权利要求 5所述的包头解析预处理装置, 还包括:  6. The packet header preprocessing apparatus according to claim 5, further comprising:
包头解析模块, 其设置成: 当所述报文的包头类型的个数未超过 9个时, 依次对所述报文的包头类型进行解析。  The packet header parsing module is configured to: when the number of packet header types of the packet does not exceed nine, parse the packet header type of the packet in turn.
7、 根据权利要求 5或 6所述的包头解析预处理装置, 其中,  7. The packet header analysis preprocessing apparatus according to claim 5 or 6, wherein
所述解析模块是设置成通过如下方式添加新的解析规则: 根据新的包头 类型向三重内容可寻址寄存器(TCAM ) 中添加所述新的解析规则。 The parsing module is arranged to add a new parsing rule by: adding the new parsing rule to a triple content addressable register (TCAM) according to a new header type.
8、 一种网络处理器, 该网络处理器包括包头解析预处理模块、 查表处理 模块和封装转发模块, 其中: 8. A network processor, the network processor comprising a packet header parsing preprocessing module, a table lookup processing module, and a package forwarding module, wherein:
所述包头解析预处理模块设置成: 当报文的包头类型的个数超过 9个时, 分析所述"¾文的包头, 并将重复的包头类型重新定义为一个新的包头类型; 以及, 根据新的包头类型添加新的解析规则, 按照所述新的解析规则解析出 所述报文的包头类型, 并将解析出的所述报文的包头类型发送至查表处理模 块;  The packet header parsing pre-processing module is configured to: when the number of packet header types exceeds 9, analyze the "3⁄4 text header", and redefine the repeated header type into a new header type; and, Adding a new parsing rule according to the new packet header type, parsing the packet header type of the packet according to the new parsing rule, and sending the parsed header type of the parsed packet to the table lookup processing module;
所述查表处理模块设置成根据解析出的报文的包头类型进行分类处理; 所述封装转发模块设置成根据查表处理模块的分类处理结果进行报文的 更新封装。  The lookup table processing module is configured to perform classification processing according to the packet header type of the parsed packet; the encapsulation and forwarding module is configured to perform packet update encapsulation according to the classification processing result of the table lookup processing module.
9、 根据权利要求 8所述的网络处理器, 其中,  9. The network processor according to claim 8, wherein
所述包头解析预处理模块还设置成: 当所述报文的包头类型的个数未超 过 9个时, 依次对所述 文的包头类型进行解析, 并将解析出的所述 文的 包头类型发送至查表处理模块。  The packet header pre-processing module is further configured to: when the number of packet header types of the packet does not exceed nine, parse the header type of the text in turn, and parse the parsed header type of the text Send to the table lookup processing module.
10、 根据权利要求 8或 9所述的网络处理器, 其中,  10. The network processor according to claim 8 or 9, wherein
所述包头解析预处理模块是设置成通过如下方式添加新的解析规则: 根 据新的包头类型向三重内容可寻址寄存器 (TCAM ) 中添加所述新的解析规 则。  The header parsing pre-processing module is arranged to add a new parsing rule by adding the new parsing rule to a triple content addressable register (TCAM) according to a new header type.
PCT/CN2011/077916 2010-12-10 2011-08-02 Method for parsing packet header, header parsing pre-processing device and network processor WO2012075818A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201010582987.4 2010-12-10
CN2010105829874A CN102014065A (en) 2010-12-10 2010-12-10 Method for analyzing packet headers, header analysis preprocessing device and network processor

Publications (1)

Publication Number Publication Date
WO2012075818A1 true WO2012075818A1 (en) 2012-06-14

Family

ID=43844086

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2011/077916 WO2012075818A1 (en) 2010-12-10 2011-08-02 Method for parsing packet header, header parsing pre-processing device and network processor

Country Status (2)

Country Link
CN (1) CN102014065A (en)
WO (1) WO2012075818A1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102014065A (en) * 2010-12-10 2011-04-13 中兴通讯股份有限公司 Method for analyzing packet headers, header analysis preprocessing device and network processor
CN103139253B (en) 2011-11-30 2016-03-09 华为技术有限公司 Realize the method for network interface card offloading functions, network interface card, host computer system and the network equipment
CN103139207B (en) * 2013-01-31 2016-01-06 华为技术有限公司 Coding/decoding method and device, message parsing method and device and analyzing device
CN103200084B (en) * 2013-03-18 2016-08-03 中兴通讯股份有限公司 Message preprocess method based on network processing unit, device and network processing unit
CN106789440B (en) * 2017-01-03 2020-11-03 北京泛讯信息技术有限公司 IP packet header detection method and device
WO2021180321A1 (en) * 2020-03-12 2021-09-16 Huawei Technologies Co., Ltd. Methods and apparatus for packet processing based on parsing depth of communication nodes
TWI819976B (en) * 2023-03-15 2023-10-21 瑞昱半導體股份有限公司 Packet identifying system and packet identifying method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7213111B1 (en) * 2003-12-12 2007-05-01 Raza Microelectronics, Inc. Method and apparatus for determining precedence in a classification engine
CN101119219A (en) * 2007-09-12 2008-02-06 中兴通讯股份有限公司 Method and system for implementing data transmission of broadcast/multicast service
CN101651693A (en) * 2009-09-15 2010-02-17 成都市华为赛门铁克科技有限公司 Aged rule maintenance method and equipment
CN102014065A (en) * 2010-12-10 2011-04-13 中兴通讯股份有限公司 Method for analyzing packet headers, header analysis preprocessing device and network processor

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100493094C (en) * 2006-08-25 2009-05-27 清华大学 P2P data message detection method based on character code
CN101296227B (en) * 2008-06-19 2010-11-17 上海交通大学 IPSec VPN protocol depth detection method based on packet offset matching
CN101478447B (en) * 2009-01-08 2011-01-05 中国人民解放军信息工程大学 Method and apparatus for deep packet detection
CN101848222B (en) * 2010-05-28 2013-05-01 武汉烽火网络有限责任公司 Inspection method and device of Internet deep packet

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7213111B1 (en) * 2003-12-12 2007-05-01 Raza Microelectronics, Inc. Method and apparatus for determining precedence in a classification engine
CN101119219A (en) * 2007-09-12 2008-02-06 中兴通讯股份有限公司 Method and system for implementing data transmission of broadcast/multicast service
CN101651693A (en) * 2009-09-15 2010-02-17 成都市华为赛门铁克科技有限公司 Aged rule maintenance method and equipment
CN102014065A (en) * 2010-12-10 2011-04-13 中兴通讯股份有限公司 Method for analyzing packet headers, header analysis preprocessing device and network processor

Also Published As

Publication number Publication date
CN102014065A (en) 2011-04-13

Similar Documents

Publication Publication Date Title
US10778612B2 (en) Variable TCAM actions
US7225188B1 (en) System and method for performing regular expression matching with high parallelism
CN111371779B (en) Firewall based on DPDK virtualization management system and implementation method thereof
US7395332B2 (en) Method and apparatus for high-speed parsing of network messages
WO2012075818A1 (en) Method for parsing packet header, header parsing pre-processing device and network processor
JP7208008B2 (en) Systems and methods for providing a programmable packet classification framework for use in network devices
US8867395B2 (en) Accelerating data packet parsing
US7586851B2 (en) Programmable packet parsing processor
US9154418B1 (en) Efficient packet classification in a network device
US10404605B2 (en) Packet processing method, device and computer storage medium
US8599859B2 (en) Iterative parsing and classification
Li et al. Improving SDN scalability with protocol-oblivious source routing: A system-level study
JP5518135B2 (en) Extensible multicast forwarding method and apparatus for data center
US10237130B2 (en) Method for processing VxLAN data units
US10397116B1 (en) Access control based on range-matching
CN109921995B (en) Method for configuring address table, FPGA and network equipment applying FPGA
CN112118167B (en) Method for quickly transmitting cross-network tunnel data
US7403526B1 (en) Partitioning and filtering a search space of particular use for determining a longest prefix match thereon
WO2014166073A1 (en) Packet forwarding method and network device
WO2016138845A1 (en) Method and device realizing upload of protocol packet to cpu
EP2958296B1 (en) A method of using a unique packet identifier to identify structure of a packet and an apparatus thereof
JP6678401B2 (en) Method and apparatus for dividing a packet into individual layers for change and joining the layers after change by information processing
US8730961B1 (en) System and method for optimizing router lookup
WO2014146571A1 (en) Network processor, and network processor-based packet preprocessing method and device
US11689464B2 (en) Optimizing entries in a content addressable memory of a network device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11847548

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11847548

Country of ref document: EP

Kind code of ref document: A1