VM I/O Scheduler for Cloud Storage Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current I/O schedulers are ineffective in virtual machine environments, particularly when interacting with remote cloud-based storage arrays, as they are optimized for local storage and fail to manage requests from multiple virtual machines efficiently, leading to network traffic and bandwidth issues.

Innovation Solution

Implementing an I/O scheduler that executes on each virtual machine, utilizing priority tags to organize requests into separate queues based on priority and incorporating storage array information to optimize request transmission, thereby reducing latency and improving storage array utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If current I/O scheduler software is used in a VM environment with remote storage arrays, then the scheduler can organize requests, but it fails to reduce seek time and latency effectively because it is optimized for local storage only

Engineering Contradiction:
Improveseek time and latencyVSAvoidadaptability to remote cloud storage
Core Design Contradiction:
Loss of timeVSAdaptability or versatility

Solution Approach 1:

The I/O scheduler is modified to change its operational parameters from local-storage-optimized to cloud-storage-optimized. This includes adapting scheduling algorithms to account for network latency, remote storage characteristics, and cloud-based storage array behavior, thereby reducing seek time and latency in VM environments while maintaining adaptability to remote storage

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The scheduling function is segmented into VM-specific schedulers that execute within each virtual machine. This allows each VM to have its own optimized scheduler instance that can independently manage requests to remote storage arrays, improving overall system adaptability while reducing time loss through specialized scheduling

Inventive Principle:
Principle #1Segmentation

2Device complexity

If a single I/O scheduler manages requests from multiple VMs on one computing platform, then device complexity is reduced, but network traffic increases and bandwidth is wasted due to inability to organize requests from multiple clients

Engineering Contradiction:
Improvescheduler architecture complexityVSAvoidbandwidth utilization efficiency
Core Design Contradiction:
Device complexityVSLoss of energy

Solution Approach 1:

The monolithic I/O scheduler is segmented into multiple VM-specific scheduler instances, with each scheduler executing within its respective virtual machine. This segmentation allows each scheduler to independently optimize request organization for its VM, improving bandwidth utilization and reducing wasted network traffic while maintaining manageable complexity through standardized scheduler designs

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The I/O scheduler acts as an intermediary layer between VMs and remote storage arrays, intercepting and organizing requests before transmission. By positioning the scheduler within each VM, it mediates request flow more efficiently, reducing network traffic and improving bandwidth utilization without requiring complex centralized management

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of energy

If SIOC bandwidth management is used to control network traffic from multiple VMs to storage volume, then overall bandwidth is controlled, but individual request priority and granularity are lost

Engineering Contradiction:
Improvenetwork bandwidth managementVSAvoidrequest priority granularity
Core Design Contradiction:
Loss of energyVSManufacturing precision

Solution Approach 1:

Bandwidth management is segmented from the aggregate SIOC level down to the individual request level within each VM. The VM-specific I/O scheduler divides and organizes requests into priority-based queues, enabling fine-grained control of request transmission while SIOC continues to manage overall bandwidth, thus achieving both efficient bandwidth utilization and precise request priority handling

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different quality of service levels are applied locally to individual requests based on their priority. The I/O scheduler implements local quality control by creating separate queues for different priority levels within each VM, allowing high-priority requests to be transmitted with preferential treatment while maintaining overall bandwidth control through SIOC

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8959249B1Cooperative cloud I/O scheduler
Publication Date: 2015.02.17 EMC IP HLDG CO LLC
  • US8959249B1 patent drawing
  • US8959249B1 patent drawing
  • US8959249B1 patent drawing

AI summary

This disclosure describes a system and method for providing I/O scheduling capabilities to a host server executing one or more virtual machine clients and communicating with a cloud-based storage array. An I/O scheduler executing on a virtual machine can identify priority tags associated with requests or commands on the virtual machine. The I/O scheduler can create one or more queues based upon the priority of each request, and can then transmit requests in order of priority. The I/O scheduler can also use information about the storage array, such as layout information or cache information, and can accordingly optimize the transmission of requests to the storage array.