Smart NIC Data Routing via Hardware Mapping Tables
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Smart network interface cards (NICs) face inefficiencies in servicing data requests due to their hardware-implemented and software-implemented paths, where the hardware path is too simplistic for complex sharding operations, leading to inefficient and time-consuming data retrieval when data is distributed across multiple storage nodes.
Innovation Solution
A system utilizing a smart NIC with a hardware-implemented path that uses a mapping table to quickly determine the correct storage node for data requests, allowing for efficient routing and validation, and automatically updating associations in real time to ensure accurate redirection, thereby minimizing decision-making and computation time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If the smart NIC uses the hardware-implemented path to service data requests, then the request servicing speed is improved, but the capability to handle complex sharding operations deteriorates
Solution Approach 1:
The patent segments the data request handling into two distinct paths: a hardware-implemented fast path for simple, direct storage node access, and a software-implemented slow path for complex sharding operations. This segmentation allows the system to route requests appropriately based on their complexity, achieving high speed for simple operations while maintaining full capability for complex operations through the software path.
Solution Approach 2:
The patent introduces a path selection mechanism as an intermediary that determines whether to route data requests through the hardware path or software path. This intermediary evaluates the complexity of the sharding operation and directs the request to the appropriate processing path, enabling the system to achieve both high speed for simple operations and full adaptability for complex operations.
2Adaptability or versatility
If the smart NIC uses the software-implemented path to service data requests, then the capability to handle complex sharding operations is improved, but the request servicing time increases
Solution Approach 1:
The patent segments data request handling into two paths, reserving the software-implemented slow path specifically for complex sharding operations that require full adaptability. By limiting the use of the software path only to necessary complex cases, the system maintains high adaptability for complex operations while minimizing the time loss impact, as simple operations continue to use the fast hardware path.
Solution Approach 2:
The patent applies partial action by using the full capability of the software path only when necessary for complex sharding operations, rather than using it for all requests. This selective application of the software path's full capability ensures that adaptability is maintained when needed while avoiding the time penalty for unnecessary complex processing of simple requests.
3Measurement precision
If the mapping table is updated frequently to maintain accurate data location information, then the routing accuracy is improved, but the computational overhead increases
Solution Approach 1:
The patent implements a feedback mechanism where the mapping table is updated based on actual data location information returned from storage nodes. The system learns from the responses and dynamically updates the mapping table to reflect accurate data locations, improving routing accuracy over time while minimizing unnecessary updates and associated computational overhead.
Solution Approach 2:
The patent performs preliminary actions by pre-populating the mapping table with expected data location information before actual data requests are processed. This preliminary setup allows the hardware path to operate with accurate routing information in advance, reducing the need for frequent updates and minimizing computational overhead while maintaining high routing accuracy.
Data Source
AI summary
Data requests can be serviced by smart network interface cards (NICs). For example, a smart NIC can receive a request for data at a hardware-implemented path of the smart network interface card (NIC). The smart NIC can determine, based on a mapping table accessible by the hardware-implemented path of the smart NIC, a first storage node includes the data. The smart NIC can transmit the request to the first storage node for determining a second storage node, rather than the first storage node, includes the data and transmitting at least a portion of the request to the second storage node.


