10701190

Efficient Parsing of Optional Header Fields

PublishedJune 30, 2020
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
16 claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claim 1

Original Legal Text

1. Communication apparatus, comprising: multiple interfaces configured to be connected to a network so as to receive and transmit data packets having respective packet headers, wherein at least some of the data packets have a packet header that includes a basic header record and one or more optional records of different, respective types; a memory configured with parsing instructions, each parsing instruction specifying one of the types of the optional records and indicating at least one offset within the optional record of the specified type, wherein the parsing instruction for at least one of the types includes multiple different offset values; and routing logic configured, for each type of the optional records, with an enable indication, which indicates whether data is to be extracted from optional records of the type, wherein the routing logic is configured, upon receiving each packet among the at least some of the data packets, to parse the basic header record in the packet, to parse the one or more optional records, and for each of the parsed one or more optional records: to identify the respective type of the parsed optional record, to determine whether data is to be extracted from the parsed optional record, responsively to the corresponding enable indication of the type of the parsed optional record, and for optional records from which data is determined to be extracted, to access a corresponding parsing instruction of the type of the optional record, in the memory and accordingly to extract header data from the at least one offset indicated for the specified type, and to process and forward the data packets via the interfaces to the network in accordance with information parsed from the basic header record and the extracted header data, wherein the routing logic is configured to extract header data only from optional records of one or more specified types indicated as requiring data extraction in their corresponding enable indication, entirely skipping optional records not of the one or more specified types, and wherein the routing logic is configured to extract from the optional records identified as of the at least one of the specified types, the header data referred to by the multiple different offset values, without extracting other data in the identified optional records of the at least one of the types.

Plain English Translation

The invention relates to a communication apparatus designed to efficiently parse and process data packets in a network. The apparatus addresses the challenge of handling data packets with complex headers that include a basic header record and multiple optional records of different types. These optional records may contain variable-length or structured data, making parsing inefficient if all records are processed uniformly. The apparatus includes multiple network interfaces for receiving and transmitting data packets. A memory stores parsing instructions, each specifying a type of optional record and one or more offsets within that record where relevant data is located. Some record types may require extraction from multiple offsets. Routing logic controls which optional record types are parsed by using enable indications for each type. When a packet is received, the basic header is parsed first, followed by optional records. For each optional record, the routing logic checks if data extraction is enabled for its type. If enabled, the corresponding parsing instruction is used to extract data from the specified offsets. The apparatus skips optional records of types not marked for extraction, improving efficiency. For record types with multiple offsets, only the specified data is extracted, ignoring other fields. This selective parsing reduces processing overhead while ensuring critical header information is accurately processed for packet forwarding.

Claim 2

Original Legal Text

2. The apparatus according to claim 1 , wherein the routing logic is configured to skip over any of the optional records that are not of the one or more specified types, and to process and forward the data packets without regard to the optional records that have been skipped over.

Plain English Translation

This invention relates to a data processing apparatus designed to handle data packets containing optional records of varying types. The apparatus includes routing logic that selectively processes and forwards data packets while skipping over optional records that do not match one or more specified types. The routing logic ensures that only relevant records are processed, improving efficiency by ignoring irrelevant or unnecessary data. The apparatus may also include a packet processor that extracts and processes data from the records, and a forwarding engine that directs the processed data to its destination. The routing logic dynamically filters out optional records that do not meet the specified criteria, allowing the system to focus on the most pertinent information. This approach reduces computational overhead and enhances performance by avoiding unnecessary processing of irrelevant data. The apparatus is particularly useful in systems where data packets contain optional metadata or auxiliary information that may not always be required for processing. By selectively processing only the relevant records, the system achieves faster and more efficient data handling.

Claim 3

Original Legal Text

3. The apparatus according to claim 1 , wherein the optional records have a type-length-value (TLV) format including a respective type field in each optional record, and wherein the routing logic is configured to read a type value from the type field and to match the type value against a set of one or more specified type values in order to identify the optional records of the one or more specified types.

Plain English Translation

This invention relates to a network routing apparatus designed to process optional records in network packets, particularly those formatted in a type-length-value (TLV) structure. The apparatus includes routing logic that examines optional records within packets, where each record contains a type field indicating its data type. The routing logic reads the type value from this field and compares it against a predefined set of specified type values to identify and selectively process records matching those types. This allows the apparatus to filter, route, or otherwise handle specific optional records based on their type, enabling more granular control over packet processing in network communication. The invention addresses the challenge of efficiently managing optional data in network packets, where different types of optional records may require distinct handling. By leveraging the TLV format, the apparatus ensures compatibility with existing protocols while providing flexibility in processing various optional record types. The routing logic's ability to dynamically match type values against a configurable set of specified types enhances adaptability to different network environments and protocols. This solution is particularly useful in scenarios where optional records carry critical or protocol-specific information that must be processed differently from standard packet data.

Claim 4

Original Legal Text

4. The apparatus according to claim 3 , wherein the optional records of the TLV format include a respective value field in each optional record, and wherein the value field for at least one of the types of the optional records contains a pointer value, and wherein the routing logic is configured to read the pointer value and to extract the header data from the optional records of the at least one of the types at the indicated offset relative to a location indicated by the pointer value.

Plain English Translation

This invention relates to network routing systems that process packet headers using optional records in a Type-Length-Value (TLV) format. The problem addressed is the inefficiency in accessing and interpreting header data when optional records contain complex or nested structures, leading to delays in routing decisions. The apparatus includes routing logic that processes packet headers by examining optional records in TLV format. Each optional record contains a value field, and at least one type of record includes a pointer value in this field. The routing logic reads this pointer value and uses it to locate additional header data stored at an offset relative to the pointer's indicated memory location. This allows the system to efficiently access and interpret header data that may be stored non-contiguously or in a fragmented manner, improving routing performance. The routing logic is configured to handle these pointer-based references, enabling it to navigate through complex header structures without requiring additional processing steps. This method reduces latency in packet forwarding by minimizing the need for repeated memory accesses or complex parsing operations. The system is particularly useful in high-speed networking environments where rapid header interpretation is critical for maintaining low-latency communication.

Claim 5

Original Legal Text

5. The apparatus according to claim 1 , wherein the routing logic comprises: a context memory; a plurality of extraction engines, each configured to extract the header data from one of the optional records and to write the extracted header data to the context memory; a parsing engine, which is configured to parse the basic header record in the packets and to write the information parsed from the basic header record to the context memory, and to parse the one or more optional records so as to identify the optional records of the one or more specified types, and for each identified optional record in a given packet, to instruct a respective one of the plurality of extraction engines to extract the header data from the identified optional record at the offset indicated for the specified type; and a control pipeline, which is configured to process the data packets using the information parsed from the basic header record and the extracted header data held in the context memory.

Plain English Translation

This invention relates to a packet processing apparatus designed to efficiently handle data packets containing both basic and optional header records. The apparatus addresses the challenge of parsing and processing packets with variable header structures, where optional records may be present at different offsets and in different formats. The routing logic within the apparatus includes a context memory that stores extracted header data for use in packet processing. Multiple extraction engines are configured to extract header data from optional records of specified types, writing the extracted data to the context memory. A parsing engine parses the basic header record in each packet, writing the parsed information to the context memory, and identifies optional records of specified types. For each identified optional record, the parsing engine instructs a corresponding extraction engine to extract header data from the record at the offset indicated for its type. A control pipeline then processes the packets using the parsed basic header information and the extracted optional header data stored in the context memory. This approach enables flexible and efficient packet processing by dynamically handling variable header structures.

Claim 6

Original Legal Text

6. The apparatus according to claim 1 , wherein the packet header that includes the basic header record and the one or more optional records is an Internet Protocol Version 4 (IPv4) header, and wherein the optional records comprise IPv4 options.

Plain English Translation

This invention relates to network communication systems, specifically addressing the handling of Internet Protocol Version 4 (IPv4) packet headers. The problem solved involves efficiently processing IPv4 headers that include both a basic header record and one or more optional records, such as IPv4 options. These optional records can vary in type and length, complicating parsing and processing in network devices. The apparatus processes IPv4 packets by analyzing the header structure, which consists of a fixed-length basic header followed by variable-length optional records. The optional records, known as IPv4 options, may include features like source routing, timestamping, or security extensions. The apparatus is designed to accurately identify and interpret these optional records, ensuring proper packet handling while maintaining compatibility with existing IPv4 standards. The solution involves specialized logic to detect and process the optional records without disrupting the basic header parsing. This ensures that network devices, such as routers or firewalls, can efficiently route or filter packets even when they contain complex or rarely used IPv4 options. The apparatus may also validate the optional records to prevent malformed packets from causing processing errors. By standardizing the handling of IPv4 headers with optional records, the invention improves network reliability and performance, particularly in environments where legacy IPv4 options are still in use. The apparatus ensures backward compatibility while optimizing packet processing for modern network infrastructure.

Claim 7

Original Legal Text

7. The apparatus according to claim 1 , wherein the basic header record includes a field which indicates a total header length of the packet header.

Plain English Translation

The invention relates to packet header processing in communication systems, specifically addressing the need for efficient and flexible handling of packet headers in data transmission. The apparatus includes a basic header record that contains essential information for processing packets, and this record includes a field that specifies the total length of the packet header. This field allows the system to dynamically determine the size of the header, accommodating varying header lengths without requiring fixed-size structures. The apparatus may also include additional features such as error detection mechanisms, priority indicators, or routing information, all integrated into the header structure to optimize data transmission. The inclusion of the total header length field ensures that the system can accurately parse and process headers of different sizes, improving compatibility and efficiency in packet-based communication networks. This solution is particularly useful in environments where packet headers may vary in length due to different protocols or optional fields, ensuring reliable and adaptable header processing.

Claim 8

Original Legal Text

8. The apparatus according to claim 1 , wherein the routing logic comprises a parsing engine and a plurality of extraction engines, wherein the parsing engine is configured to identify optional records of types from which data is to be extracted, to generate anchors indicating the location of data to be extracted and to pass the anchors to respective ones of the extraction engines, wherein the extraction engines extract the data using the anchors from the parsing engine.

Plain English Translation

This invention relates to data extraction systems, specifically an apparatus for efficiently parsing and extracting structured data from records of varying types. The problem addressed is the difficulty in accurately identifying and extracting data from diverse record formats without manual intervention or complex preprocessing. The apparatus includes routing logic that processes records to extract data. The routing logic comprises a parsing engine and multiple extraction engines. The parsing engine identifies optional records containing data to be extracted, determines the location of relevant data within those records, and generates anchors that mark these locations. These anchors are then passed to the appropriate extraction engines, which use them to extract the data. This modular approach allows the system to handle different record types dynamically, improving flexibility and accuracy in data extraction. The parsing engine's ability to generate anchors ensures that extraction engines can precisely locate and retrieve data, reducing errors and increasing efficiency. The system is designed to work with optional records, meaning it can skip irrelevant data and focus only on records that contain the target information. This makes the apparatus suitable for environments where record formats vary or are unpredictable. The use of multiple extraction engines allows parallel processing, further enhancing performance.

Claim 9

Original Legal Text

9. The apparatus according to claim 1 , wherein the parsing engine is configured to generate for at least one of the optional records a plurality of anchors, and to provide each of the plurality of anchors to a different one of the plurality of extraction engines.

Plain English Translation

This invention relates to data processing systems for extracting information from structured or semi-structured data records. The problem addressed is the efficient and accurate extraction of data from records that may contain optional or variable fields, where different extraction techniques are needed for different parts of the data. The apparatus includes a parsing engine that processes input data records, which may contain optional fields or records. The parsing engine generates multiple anchors for at least one of these optional records. An anchor is a reference point or marker within the data that identifies a specific segment or field. The parsing engine then distributes these anchors to different extraction engines within the system. Each extraction engine is specialized to handle a particular type of data or extraction task. By assigning different anchors to different extraction engines, the system can process complex or variable data records more efficiently and accurately. This approach allows the system to adapt to different data structures and improve the reliability of data extraction. The extraction engines may use various techniques, such as pattern matching, rule-based parsing, or machine learning models, to extract the relevant information from the data segments identified by the anchors. The system ensures that the correct extraction engine is applied to the appropriate part of the data, reducing errors and improving performance. This method is particularly useful in environments where data records have inconsistent formats or optional fields, such as log files, database records, or configuration files.

Claim 10

Original Legal Text

10. A method for communication, comprising: configuring a memory with parsing instructions, each parsing instruction specifying one of a plurality of types of optional records and indicating at least one offset within the optional record of the specified type, wherein the parsing instruction for at least one of the types includes multiple different offset values; receiving from a network data packets having respective packet headers, wherein at least some of the data packets have a packet header that includes a basic header record and one or more of the optional records of different, respective types; specifying one or more of the types of the optional records and indicating, for each specified type, whether data is to be extracted from optional records of the specified type; upon receiving each packet among the at least some of the data packets: parsing the basic header record in the packet; parsing the one or more optional records, and for each of the parsed one or more optional records: identifying the respective type of the parsed optional record, determining whether data is to be extracted from the parsed optional record, responsively to the corresponding enable indication of the type of the parsed optional record, and for optional records from which data is determined to be extracted, accessing a corresponding parsing instruction of the type of the optional record; and extracting header data from the at the offset indicated for the specified type; and processing and forwarding the data packets to the network in accordance with information parsed from the basic header record and the extracted header data, wherein extracting the header data comprises extracting header data only from optional records of one or more specified types indicated as requiring data extraction in their corresponding enable indication, while entirely skipping optional records not of the one or more specified types, and wherein extracting the header data comprises extracting from the optional records identified as of a specified type, header data referred to by the multiple different offset values, without extracting other data in the identified optional records of the specified type.

Plain English Translation

This invention relates to network packet processing, specifically a method for efficiently parsing and extracting data from packet headers containing both mandatory and optional records. The problem addressed is the need to selectively extract data from optional header records while minimizing processing overhead, particularly in high-speed networking environments where packet headers may contain multiple optional fields of varying types and offsets. The method involves configuring a memory with parsing instructions that define the structure of optional records, including their types and offset values within each record type. Some optional record types may have multiple offset values, allowing selective extraction of specific data fields. Upon receiving a data packet, the system first parses the mandatory basic header record. For optional records, the system identifies their types, checks whether data extraction is enabled for that type, and if so, retrieves the corresponding parsing instruction. Data is then extracted from the specified offsets within the optional records, while other data in those records is skipped. The packet is processed and forwarded based on the parsed information from both the basic header and the extracted optional data. This approach ensures efficient parsing by focusing only on relevant optional fields, reducing unnecessary processing and improving network performance.

Claim 11

Original Legal Text

11. The method according to claim 10 , wherein parsing the one or more optional records comprises skipping over any of the optional records that are not of the one or more specified types, wherein the data packets are processed and forwarded without regard to the optional records that have been skipped over.

Plain English Translation

This invention relates to data packet processing in communication systems, specifically addressing the challenge of efficiently handling optional records within data packets. The method involves parsing data packets containing both mandatory and optional records, where the optional records may vary in type and presence. The key innovation is a selective parsing technique that skips over optional records that do not match one or more specified types, allowing the system to process and forward data packets without being delayed or disrupted by irrelevant optional records. This approach improves processing efficiency by avoiding unnecessary parsing of non-critical data, reducing computational overhead and latency. The method ensures that only relevant optional records are processed, while the rest are ignored, maintaining data integrity and forward compatibility with evolving packet structures. The solution is particularly useful in high-speed networking environments where rapid packet processing is essential, such as in routers, switches, and other network infrastructure devices. By dynamically filtering optional records, the system adapts to different packet formats without requiring prior knowledge of all possible optional record types, enhancing flexibility and scalability.

Claim 12

Original Legal Text

12. The method according to claim 10 , wherein the optional records have a type-length-value (TLV) format including a respective type field in each optional record, and wherein parsing the one or more optional records comprises reading a type value from the type field and matching the type value against a set of one or more specified type values in order to identify the optional records of the one or more specified types.

Plain English Translation

This invention relates to data processing systems that handle optional records embedded within a data structure, particularly focusing on parsing and identifying specific types of optional records. The problem addressed is efficiently extracting and processing optional records of predefined types from a larger dataset, ensuring compatibility and correctness in data interpretation. The method involves parsing one or more optional records that follow a type-length-value (TLV) format. Each optional record includes a type field that specifies the record's type. The parsing process reads the type value from this field and compares it against a predefined set of specified type values. This comparison identifies which optional records belong to the desired types, allowing the system to selectively process only those records that match the specified types. The method ensures that only relevant optional records are extracted, improving efficiency and reducing unnecessary processing of irrelevant data. The approach is particularly useful in systems where optional records may vary in type and content, such as in communication protocols, file formats, or database structures. By filtering records based on their type, the system can dynamically adapt to different data structures while maintaining accuracy in data interpretation. The method supports flexible and scalable data processing, ensuring compatibility with evolving data formats.

Claim 13

Original Legal Text

13. The method according to claim 12 , wherein the optional records of the TLV format include a respective value field in each optional record, and wherein the value field for at least one of the types of the optional records contains a pointer value, and wherein extracting the header data comprises reading the pointer value and extracting the header data from the optional records of the at least one of the types at the indicated offset relative to a location indicated by the pointer value.

Plain English Translation

This invention relates to data processing systems that handle structured data formats, specifically focusing on the extraction of header data from optional records in a Type-Length-Value (TLV) format. The problem addressed is the efficient retrieval of header information from optional records, particularly when those records contain pointer values that reference additional data elsewhere in the structure. The method involves processing optional records in a TLV format, where each record includes a value field. For at least one type of optional record, the value field contains a pointer value rather than direct data. When extracting header data, the system reads this pointer value and then retrieves the header data from the optional records of the specified type at an offset relative to the location indicated by the pointer. This approach allows for flexible and efficient data organization, enabling header information to be stored separately from the main record structure while maintaining quick access. The technique is particularly useful in systems where header data is frequently accessed or modified, as it reduces redundancy and improves performance by avoiding repeated storage of the same information. The use of pointers allows for dynamic updates to header data without altering the core record structure, enhancing scalability and adaptability in data processing applications.

Claim 14

Original Legal Text

14. The method according to claim 10 , wherein parsing the basic header record comprises writing the information parsed from the basic header record to a context memory, and wherein extracting the header data comprises, for each identified optional record in a given packet, instructing a respective one of a plurality of extraction engines to extract the header data from the identified optional record at the offset indicated for the specified type, and to write the extracted header data to the context memory, and wherein processing and forwarding the data packets comprises reading from the context memory and applying the information parsed from the basic header record and the extracted header data in processing the data packets.

Plain English Translation

This invention relates to packet processing in network systems, specifically improving efficiency in parsing and extracting header data from data packets. The problem addressed is the computational overhead and latency associated with processing packet headers, particularly when dealing with optional or variable-length header fields. The method involves parsing a basic header record from a data packet and writing the parsed information to a context memory. The context memory stores this information for subsequent use. The method then identifies optional records within the packet and, for each identified optional record, instructs a dedicated extraction engine to extract header data from the record at a specified offset corresponding to the record type. The extracted header data is also written to the context memory. During packet processing and forwarding, the system reads from the context memory and applies the parsed basic header information and the extracted optional header data to process the packets efficiently. This approach reduces redundant processing by centralizing header data in a shared memory, allowing multiple extraction engines to work in parallel and minimizing repeated access to the packet data. The method ensures that all necessary header information is readily available for packet processing, improving throughput and reducing latency in network systems.

Claim 15

Original Legal Text

15. The method according to claim 10 , wherein the packet header that includes the basic header record and the one or more optional records is an Internet Protocol Version 4 (IPv4) header, and wherein the optional records comprise IPv4 options.

Plain English Translation

This invention relates to network packet processing, specifically improving the handling of Internet Protocol Version 4 (IPv4) headers. The problem addressed is the inefficiency in processing IPv4 packets, particularly those containing optional IPv4 options, which can vary in length and structure, complicating parsing and validation. The method involves analyzing an IPv4 packet header, which consists of a basic header record and one or more optional records. The basic header record contains standard fields like version, header length, and protocol type. The optional records, known as IPv4 options, provide additional functionality such as routing, timestamping, or security features. These options are variable in length and can be nested, making them difficult to process efficiently. The method processes the IPv4 header by first examining the basic header record to determine the total header length and the presence of optional records. It then parses the optional records sequentially, validating their structure and extracting relevant information. The method ensures that each optional record is correctly interpreted, even if they are nested or contain variable-length fields. This approach improves packet processing speed and accuracy, particularly in high-throughput network environments where efficient header parsing is critical. The invention is applicable in network routers, firewalls, and other devices that handle IPv4 traffic, optimizing performance by streamlining the processing of complex IPv4 headers.

Claim 16

Original Legal Text

16. Communication apparatus, comprising: multiple interfaces configured to be connected to a network so as to receive and transmit data packets having respective packet headers, wherein at least some of the data packets have a packet header that includes a basic header record and one or more optional records of different, respective types; and routing logic, comprising: a context memory; a plurality of extraction engines, each configured to extract header data from optional records responsive to provided anchors including a reference location and an offset and to write the extracted header data to the context memory; a parsing engine, which is configured to parse the basic header record in the packets and to write the information parsed from the basic header record to the context memory, and to parse the one or more optional records so as to identify the optional records of one or more specified types from which data is to be extracted, and for each identified optional record in a given packet, to generate one or more anchors, and to provide each of the anchors to a respective one of the plurality of extraction engines to extract the header data from the identified optional record at the offset indicated by the anchor; and a control pipeline, which is configured to process the data packets using the information parsed from the basic header record and the extracted header data held in the context memory.

Plain English Translation

The communication apparatus is designed for efficient processing of data packets in a network, particularly those with complex headers containing both basic and optional records. The apparatus addresses the challenge of handling variable packet header structures, where optional records of different types may be present, by dynamically extracting and utilizing header data for routing and processing decisions. The apparatus includes multiple network interfaces for receiving and transmitting data packets, each with a header comprising a basic header record and one or more optional records of different types. A context memory stores parsed header data for processing. A parsing engine processes the basic header record, extracting key information and writing it to the context memory. It also identifies optional records of specified types from which data must be extracted. For each identified optional record, the parsing engine generates anchors—references with a location and offset—and sends these to extraction engines. Multiple extraction engines operate in parallel, each extracting header data from optional records based on the provided anchors and storing the extracted data in the context memory. A control pipeline then processes the packets using the combined information from the basic header and the extracted optional records, enabling efficient routing and handling of packets with variable header structures. This system improves packet processing speed and flexibility in networks with diverse packet formats.

Patent Metadata

Filing Date

Unknown

Publication Date

June 30, 2020

Inventors

Aviv Kfir
Barak Gafni
Avner Hadash
Ortal Ben Moshe

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, FAQs, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “EFFICIENT PARSING OF OPTIONAL HEADER FIELDS” (10701190). https://patentable.app/patents/10701190

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/10701190. See llms.txt for full attribution policy.

EFFICIENT PARSING OF OPTIONAL HEADER FIELDS