Packet Header Parsing Using Alias Transition Tables
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In packet communication networks, particularly with IPv6, the complexity of parsing multiple sub-headers in packet headers leads to unmanageable parsing graphs, increasing memory and logical complexity requirements for routers.
Innovation Solution
The use of aliases to represent groups of sub-headers, allowing a common alias to access parsing instructions for subsequent sub-headers, simplifying the parse graph and reducing memory and logical complexity by assuming shared parsing instructions for sub-headers like the IPv6 basic and extension headers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If detailed parsing instructions are maintained for each sub-header type, then parsing accuracy is improved, but memory requirements and logical complexity increase
Solution Approach 1:
The patent applies universality by creating a common alias that represents multiple sub-header types (IPv6 basic header and extension headers). This single alias points to a shared set of parsing instructions that work for all these header types, eliminating the need for separate detailed parsing logic for each sub-header type while maintaining accurate parsing functionality.
2Measurement precision
If separate parsing instructions are stored for each sub-header type, then parsing precision is improved, but memory requirements increase
Solution Approach 1:
The patent merges the parsing instructions for IPv6 basic headers and extension headers into a single shared set of instructions accessed through a common alias. This consolidation reduces the total quantity of stored parsing data while maintaining the precision needed for correctly parsing different sub-header types.
Data Source
AI summary
Communication apparatus includes multiple interfaces configured to be connected to a network so as to receive and transmit data packets having respective packet headers, which can include sub-headers of different, respective types. A memory stores instructions for parsing each type of sub-headers and a transition table, which indicates, for each of the types, a location of the instructions for parsing a subsequent sub-header depending upon the type of the subsequent sub-header. A plurality of predefined types are represented in the transition table by a common alias. Routing logic parses the first sub-header in a packet, reads the type of the second sub-header from the first sub-header, and accesses the transition table using the common alias in place of the type of the first sub-header so as to locate and read the instructions for parsing the second sub-header.


