Packet Field Descriptors for Flexible Match-Action Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing hardware switches in Software Defined Networking (SDN) lack flexibility in processing various types of packets due to a fixed set of fields and limited repertoire of packet processing actions.
Innovation Solution
A hardware forwarding element with a parser, match-action stages, and a configurable deparser that uses data containers and descriptive data to reconstruct packets, allowing flexible processing of all types of packets.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If all packet header fields are transmitted through match-action stages, then complete packet processing capability is achieved, but processing efficiency decreases due to redundant data transmission
Solution Approach 1:
The patent extracts only the necessary packet header fields that match-action stages require, separating them from the complete packet header. This extracted subset is transmitted through the match-action pipeline, while the remaining header fields bypass this stage. This resolves the contradiction by reducing redundant data transmission (improving efficiency) while maintaining the ability to process all required fields (preserving flexibility).
Solution Approach 2:
The packet header is segmented into two parts: fields required by match-action stages and fields not required by these stages. This segmentation allows selective transmission of only necessary fields through the match-action pipeline, improving processing efficiency while the deparser reconstructs the complete packet header using both segments, maintaining full packet processing capability.
2Adaptability or versatility
If a fixed set of fields is used in hardware switches, then device complexity is reduced, but adaptability to different packet types deteriorates
Solution Approach 1:
The deparser is designed as a universal component that can reconstruct packet headers for multiple protocol types (Ethernet, IP, TCP, UDP, etc.). It receives scattered header fields from different sources and systematically reassembles them according to the required packet format. This multi-functional capability provides adaptability to different packet types without requiring separate processing paths for each protocol, managing device complexity while enhancing versatility.
Solution Approach 2:
The patent introduces data containers as intermediary structures that hold packet header fields. These containers act as a universal interface between the parser, match-action stages, and deparser, allowing flexible field extraction and reassembly without hardcoding protocol-specific logic in each component. This intermediary mechanism enables adaptability to various packet types while maintaining a relatively simple and unified device architecture.
Data Source
AI summary
Some embodiments provide a method for a parser of a processing pipeline. The method receives a packet for processing by a set of match-action stages of the processing pipeline. The method stores packet header field (PHF) values from a first set of PHFs of the packet in a set of data containers. The first set of PHFs are for use by the match-action stages. For a second set of PHFs not used by the match-action stages, the method generates descriptive data that identifies locations of the PHFs of the second set within the packet. The method sends (i) the set of data containers to the match-action stages and (ii) the packet data and the generated descriptive data outside of the match-action stages to a deparser that uses the packet data, generated descriptive data, and the set of data containers as modified by the match-action stages to reconstruct a modified packet.


