I/O Determinism via Load Balancer Mediator

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage access technologies face challenges in implementing input/output (I/O) determinism due to the need for access to storage architecture information, which can compromise security and efficiency, especially when executing I/O instructions with specific time requirements.

Innovation Solution

A method and system that provide I/O determinism by receiving I/O instructions with service level indicators from client devices, determining if the instructions can be executed within the required time, and sending notifications to the client devices when execution is not possible, allowing for execution on suitable storage without exposing architectural information.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the server requires knowledge of storage device architecture to implement I/O determinism, then I/O execution efficiency is improved, but security is compromised due to exposure of storage architecture information

Engineering Contradiction:
ImproveI/O execution efficiencyVSAvoidsecurity risk
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The patent introduces a load balancer as an intermediary component between the server and storage devices. The load balancer receives I/O instructions, determines execution suitability based on storage architecture information, and routes instructions to appropriate storage devices. This mediator approach allows the server to achieve I/O determinism without directly accessing or exposing storage architecture details, thereby resolving the contradiction between efficiency improvement and security protection.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Object-affected harmful factors

If the server sends I/O instructions to storage devices without knowing execution time requirements, then security is maintained, but I/O execution efficiency deteriorates due to inability to optimize instruction routing

Engineering Contradiction:
Improvesecurity protectionVSAvoidI/O execution efficiency
Core Design Contradiction:
Object-affected harmful factorsVSProductivity

Solution Approach 1:

The load balancer serves as an intermediary that receives I/O instructions from the server, evaluates them against storage device capabilities and current states, and routes instructions to appropriate storage devices. This mediator enables efficient instruction routing and execution time management without requiring the server to have direct knowledge of storage architecture, thus maintaining security while improving productivity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements feedback mechanisms where the load balancer monitors storage device execution status and adjusts instruction routing accordingly. Storage devices provide feedback about their execution capacity and state, allowing the load balancer to make informed routing decisions that optimize I/O execution efficiency while maintaining security by not exposing architecture information to the server.

Inventive Principle:
Principle #23Feedback

3Productivity

If the server implements I/O determinism by accessing storage architecture information, then instruction routing optimization is achieved, but device complexity increases due to information management requirements

Engineering Contradiction:
Improveinstruction routing optimizationVSAvoidinformation management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The load balancer acts as an intermediary that centralizes the management of storage architecture information and I/O instruction routing. Instead of the server maintaining complex knowledge of storage device architectures, the load balancer handles this complexity by receiving instructions, evaluating storage suitability, and routing to appropriate devices. This separation of concerns reduces the complexity burden on the server while achieving optimized instruction routing.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10664191B2System and method for providing input/output determinism based on required execution time
Publication Date: 2020.05.26 NVIDIA CORP
  • US10664191B2 patent drawing
  • US10664191B2 patent drawing
  • US10664191B2 patent drawing

AI summary

Systems and methods for providing input/output (I/O) determinism. An I/O instruction and at least one service level indicator are received, wherein the at least one service level indicator includes a required time for executing the I/O instruction. It is determined whether the I/O instruction can be executed on the storage within the required time. When it is not determined that the I/O instruction can be executed on the storage within the required time, a notification is sent.