IPv6 Packet Processing with Preceding Indication Information
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current routing devices face inefficiencies in processing IPv6 packets with extension headers, as they often require CPU intervention, leading to delayed processing and potential packet discard due to unsupported TLV options.
Innovation Solution
The method involves adding preceding general indication information to IPv6 packets, indicating whether they should be processed solely on the data plane without CPU intervention, allowing subsequent routing devices to determine if they can process TLV options and take appropriate actions such as ignoring or discarding the packet.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the data plane sends IPv6 packets with extension headers to the CPU for processing, then the packets can be processed even when TLV options are not supported, but the packet processing efficiency is greatly reduced and processing is delayed
Solution Approach 1:
The patent applies preliminary action by adding indication information to the IPv6 packet header before transmission, which allows the data plane to pre-determine whether CPU intervention is needed. This avoids the delay of sending packets to the CPU for every extension header case, as the indication information already contains the necessary processing instructions.
Solution Approach 2:
The patent introduces indication information as an intermediary element between the packet header and the processing decision. This intermediary carries metadata about TLV options that enables the data plane to make informed decisions without involving the CPU, thus resolving the contradiction between reliability and productivity.
2Reliability
If the data plane processes TLV options in sequence as specified by RFC, then all TLV options can be handled according to standard procedures, but the processing time increases and performance is reduced
Solution Approach 1:
The patent applies preliminary action by pre-calculating and storing indication information about which TLV options are supported and how to handle unsupported ones. This allows the data plane to skip sequential processing of all TLV options and directly apply the pre-determined handling strategy, reducing processing time while maintaining standard compliance.
Solution Approach 2:
The patent applies partial action by only processing the specific TLV options that are supported by the data plane, as indicated by the indication information. Instead of sequentially processing all TLV options as required by RFC, the system performs only the necessary partial processing, thereby reducing time loss while maintaining essential functionality.
3Adaptability or versatility
If the CPU processes IPv6 packets with extension headers, then complex TLV options can be handled, but the packet forwarding rate is limited and packets exceeding the rate are discarded
Solution Approach 1:
The patent introduces indication information as an intermediary that carries processing capability metadata. This intermediary enables the data plane to determine whether it can handle the packet without CPU involvement, thus maintaining high forwarding rates while preserving the ability to handle complex TLV options when necessary.
Solution Approach 2:
The patent applies self-service by enabling the data plane to autonomously process packets with extension headers using the indication information. The data plane serves itself by making processing decisions based on the pre-configured indication information, eliminating the need for CPU intervention and maintaining high packet forwarding rates.
Data Source
Figure 1~2b
Figure 2c~5
Figure 6~7
AI summary
An IPv6 packet processing method and apparatus are provided. In this method, a first routing device obtains an IPv6 packet, and sends the IPv6 packet to a next-hop routing device. The IPv6 packet includes an IPv6 extension header, the IPv6 extension header includes preceding general indication information, the preceding general indication information includes first information, and the first information is used to indicate to process the IPv6 packet only on a data plane of a routing device and not to send the IPv6 packet to a CPU. In this way, after receiving the IPv6 packet, a second routing device processes the IPv6 packet on the data plane, thereby improving processing efficiency of the IPv6 packet.