NIC-Based Network Address Translation for CPU Offload

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network address translation methods in software incur performance penalties, security risks, and inefficiencies due to high message volumes and rates, particularly in high-performance computing environments, leading to CPU resource diversion and cache misses.

Innovation Solution

Implementing network address translation in hardware, specifically through a network interface controller (NIC), using a multi-part translation process that combines table lookup with a translation algorithm to efficiently convert logical network addresses to physical addresses, reducing table size and offloading CPU workload.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If network address translation is performed in software, then flexibility and ease of implementation are improved, but CPU performance deteriorates due to high message volumes and cache misses

Engineering Contradiction:
Improveease of implementationVSAvoidCPU performance
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent replaces the software-based network address translation mechanism with a hardware-based implementation in the NIC. This substitution moves the translation function from the CPU's software environment to dedicated hardware circuitry within the network interface controller, eliminating the performance penalties of software processing while maintaining the translation functionality.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Adaptability or versatility

If network address translation is performed in software, then adaptability to different addressing schemes is improved, but security deteriorates due to untrusted software access

Engineering Contradiction:
Improveadaptability to addressing schemesVSAvoidsecurity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces the NIC as an intermediary device between the CPU and the network. The NIC contains a trusted translation component that mediates the address translation process, isolating the untrusted user-space software from direct access to physical addresses. This intermediary structure maintains security while enabling adaptability through configuration options.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Quantity of substance

If large translation tables are used to support many endpoints, then address coverage is improved, but memory usage and cache efficiency deteriorate

Engineering Contradiction:
Improvenumber of supported endpointsVSAvoidcache efficiency
Core Design Contradiction:
Quantity of substanceVSLoss of energy

Solution Approach 1:

The patent segments the logical network address into multiple fields (endpoint identifier, process identifier, etc.) and uses selective translation only for messages requiring it. The translation table stores only the necessary mappings rather than complete address translations, reducing memory requirements while supporting a large number of endpoints through hierarchical address management.

Inventive Principle:
Principle #1Segmentation

4Productivity

If network address translation is offloaded to hardware, then CPU performance is improved, but device complexity increases

Engineering Contradiction:
ImproveCPU performanceVSAvoidNIC complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a universal translation component within the NIC that can handle multiple translation scenarios (logical to physical address, different address formats, various message types) through a single hardware mechanism. This multi-functional approach consolidates what would otherwise require multiple separate components, managing the complexity increase while delivering CPU performance benefits.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS20250337709A1Network address translation
Publication Date: 2025.10.30 HEWLETT PACKARD ENTERPRISE DEV LP
  • US20250337709A1 patent drawing
  • US20250337709A1 patent drawing
  • US20250337709A1 patent drawing

AI summary

In certain implementations, a method includes receiving, by a network interface controller (NIC), a request for inter-process communication associated with a sending process of a distributed application. The request includes a logical network address for a destination process of the distributed application. The method includes executing, by the NIC, a network address translation process to translate the logical network address for the destination process to a translated network address for the destination process. The network address translation process includes executing, using a first portion of the logical network address, a lookup of a network address translation table to determine a first address; determining a translation modifier by executing a translation algorithm using a second portion of the logical network address; and determining the translated network address using the first address and the translation modifier. The method includes processing, by the NIC, a first message using the translated network address.