Smart NIC File Mapping for CPU-Free NVMe Data Transfer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network interface controllers (NICs) in datacenters lack the capability to efficiently translate file identifiers into memory locations for file transmission, leading to inefficient data handling and reliance on host CPU resources.
Innovation Solution
A smart NIC with a configurable processor translates file identifiers into memory locations, enabling direct access to storage devices like NVMe devices without CPU intervention, and includes a NIC operating system for managing data transfer and virtualization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a traditional NIC is used for basic I/O data message handling, then device complexity is low, but productivity is insufficient due to reliance on host CPU resources
Solution Approach 1:
The smart NIC performs file identifier translation and data transfer operations autonomously without requiring host CPU intervention. The NIC includes a translation table in its buffer memory that it uses to directly map file identifiers to storage device addresses, enabling self-service file transmission operations that improve productivity while managing complexity through integrated functionality.
2Productivity
If the NIC translates file identifiers into memory locations, then productivity increases through direct storage access, but device complexity increases due to translation capabilities
Solution Approach 1:
The translation table is pre-loaded into the NIC's buffer memory with file identifier to address mappings before data transfer operations begin. This preliminary preparation enables the NIC to perform rapid translations during runtime without complex real-time computation, improving file transmission speed while managing translation complexity through pre-computed lookup tables.
3Use of energy by moving object
If the NIC handles file data operations autonomously, then CPU load is reduced, but ease of operation decreases due to increased NIC functionality
Solution Approach 1:
File data handling operations are extracted from the host CPU and transferred to the smart NIC. The NIC autonomously manages translation table lookups, storage device communication, and data transmission, thereby reducing CPU load and energy consumption. The extraction of these functions to a specialized device simplifies the overall system operation by offloading complex tasks.
4Productivity
If the NIC includes buffer memory for translation tables, then productivity improves through faster translation, but device complexity increases due to additional memory components
Solution Approach 1:
The translation table buffer memory is merged with the NIC's existing buffer memory resources rather than being implemented as a separate external memory component. This integration achieves fast translation speeds by providing dedicated storage space within the NIC while avoiding the complexity of additional external memory interfaces and controllers.
Data Source
AI summary
Some embodiments provide a method for transmitting data at a network interface controller (NIC) of a computer that operates as a server. The computer includes multiple storage devices. The method receives a request from a client device for a particular file. The method translates the particular file into a memory location corresponding to a particular one of the storage devices at the computer. The method transmits the requested file from the particular storage location to the client device.


