NIC Packet Header Modification via Host Memory Tables
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for modifying packet headers in network protocols, such as NAT and MPLS routing, often require large memory storage and complex logic in routers or switches, leading to limitations in cost and scalability.
Innovation Solution
Implementing header modification functions in a Network Interface Controller (NIC) that uses existing interface logic and direct memory access capabilities to store header modification tables in host memory, allowing for efficient rewriting, adding, or removing header fields, and steering packets based on modified headers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If header modification functions are implemented in routers or switches, then packet header processing capability is improved, but device complexity and cost increase
Solution Approach 1:
The patent extracts the header modification function from traditional network devices (routers/switches) and relocates it to the NIC. The NIC now contains a header modification engine that can modify packet headers independently, while the host memory stores the modification tables. This extraction reduces the complexity burden on network devices while maintaining processing capability.
Solution Approach 2:
The patent introduces the NIC as an intermediary component between the host computer and the network. The NIC's header modification engine acts as a mediator that handles header modifications before packets are transmitted or after they are received, eliminating the need for complex processing in routers and switches.
2Quantity of substance
If header modification tables are stored in host memory, then memory usage efficiency is improved, but access speed may worsen
Solution Approach 1:
The patent segments the header modification system into two parts: the header modification engine in the NIC and the modification tables in host memory. This segmentation allows the system to leverage the large capacity of host memory while the NIC engine handles the processing logic, balancing capacity and speed requirements.
Solution Approach 2:
The header modification tables are prepared and stored in host memory in advance, containing all necessary modification rules and mappings. This preliminary preparation allows the NIC engine to perform quick lookups and modifications without real-time computation overhead, improving access efficiency.
Data Source
AI summary
Communication apparatus includes a host interface, which is configured to be connected to a peripheral component bus, and a network interface, which is configured to be connected to a network. Packet processing circuitry is coupled between the host interface and the network interface and is configured to receive from a first interface, selected from among the host interface and the network interface, a data packet comprising a header containing multiple fields having respective values, to identify, responsively to a value of at least one of the fields, a corresponding entry in a header modification table, and to modify the header in accordance with the identified entry. The data packet with the modified header is transmitted through a second interface selected from among the host interface and the network interface.


