I/O Adapter Offload Pipeline for Data Mirroring
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Server computers face performance issues and bandwidth consumption when virtual machines perform data mirroring or data striping by sending multiple copies or segments of data over the PCIe bus to I/O adapter devices, affecting other tasks and resource utilization.
Innovation Solution
An I/O adapter device performs data mirroring or data striping operations on the payload data, minimizing the use of the host interface by processing and encoding the data before transmission to multiple network destinations, allowing the host device to conserve resources and reduce costs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If virtual machines send multiple copies of data over the PCIe bus to the I/O adapter device for data mirroring, then fault tolerance is improved, but bandwidth consumption increases and host server computer performance deteriorates
Solution Approach 1:
The patent extracts the data mirroring function from the host server computer and virtual machines, relocating it to the I/O adapter device. The I/O adapter device now performs the mirroring operation independently after receiving a single copy of data from the host, eliminating the need for virtual machines to send multiple copies over the PCIe bus. This resolves the contradiction by maintaining fault tolerance (through continued mirroring to multiple destinations) while dramatically reducing bandwidth consumption (by sending only one copy to the I/O adapter).
Solution Approach 2:
The I/O adapter device is empowered to perform data mirroring operations autonomously without requiring the host server computer or virtual machines to manually create and send multiple copies. The I/O adapter device receives a single data copy and automatically replicates it to multiple destinations, making the system self-sufficient for mirroring operations while optimizing resource utilization.
2Reliability
If virtual machines send multiple copies of data over the PCIe bus for data mirroring, then fault tolerance is improved, but host server computer performance for other tasks deteriorates
Solution Approach 1:
The patent extracts the computationally intensive data mirroring operations from the host server computer's processing workload and relocates them to the I/O adapter device. The host server computer now only needs to send a single copy of data to the I/O adapter, while the adapter handles the replication and distribution to multiple destinations. This resolves the contradiction by preserving fault tolerance (through continued mirroring) while significantly improving host server computer performance for other tasks.
3Reliability
If data mirroring is performed by sending multiple copies from host memory to the I/O adapter device, then data redundancy is improved, but resource utilization deteriorates
Solution Approach 1:
The patent extracts the data replication logic from the host memory and virtual machine layer, consolidating it at the I/O adapter device. The I/O adapter receives a single data copy from host memory and autonomously creates the necessary replicas for distribution to multiple destinations. This resolves the contradiction by maintaining data redundancy (through mirroring to multiple destinations) while simplifying resource utilization (by eliminating the need for multiple PCIe bus transactions and host memory access operations).
Data Source
AI summary
An Input/Output (I/O) adapter device coupled to a host device can perform data mirroring or data striping of payload data for transmitting to multiple network destinations. In some embodiments, a virtual machine running on the host device or on the I/O adapter device may be aware of the capabilities of the I/O adapter device to perform data mirroring or data striping and configure the I/O adapter device for performing data mirroring or data striping operations. In some embodiments, a virtual machine may be agnostic to the capabilities of the I/O adapter device to perform data mirroring or data striping and the I/O adapter device may perform data mirroring or data striping “under the hood” or without being configured by the virtual machine.


