Resource Virtualization Switch QoS for Storage Applications

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional servers lack quality of service (QoS) differentiation for storage applications, leading to delays and bandwidth inefficiencies, as traffic from multiple applications is aggregated onto shared queues without QoS mechanisms, resulting in critical applications being blocked or slowed by less critical requests.

Innovation Solution

A resource virtualization switch is introduced to provide QoS by mapping communications from multiple servers to port adapters connected to a fibre channel fabric, using multiple queues with different QoS characteristics such as priority and bandwidth, allowing for per-application resource allocation and traffic shaping.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If traffic from multiple storage applications is aggregated onto shared queues, then device driver complexity is reduced, but quality of service differentiation is lost and critical applications may be blocked by less critical requests

Engineering Contradiction:
Improvedevice driver complexityVSAvoidquality of service differentiation
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent introduces a switch with a queue manager as an intermediary component between the device driver and storage applications. The queue manager receives I/O requests from the device driver and distributes them to multiple application-specific queues based on QoS parameters. This intermediary enables QoS differentiation without requiring the device driver to implement complex QoS logic, thus resolving the contradiction by maintaining driver simplicity while achieving reliability through the intermediate queue management layer.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If a single storage application uses all available bandwidth, then application performance is maximized, but other applications suffer from bandwidth starvation

Engineering Contradiction:
Improveapplication performanceVSAvoidbandwidth allocation
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent implements local quality by creating distinct queues with differentiated QoS characteristics for different storage applications. Each application is assigned specific queues with tailored bandwidth and priority settings according to their requirements. This allows critical applications to receive guaranteed bandwidth and priority treatment while less critical applications use remaining capacity, thereby achieving both high performance for individual applications and fair bandwidth distribution across the system.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The queue manager dynamically adjusts queue parameters such as bandwidth allocation, priority levels, and threshold settings based on application requirements and system conditions. By changing these parameters locally for different applications and queues, the system optimizes productivity for each application while ensuring adequate bandwidth distribution, resolving the contradiction between maximizing individual performance and maintaining overall resource availability.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If I/O requests from different server applications are aggregated onto shared queues, then resource utilization is simplified, but delays in handling requests for one application affect all applications

Engineering Contradiction:
Improveresource management simplicityVSAvoidI/O request handling delay
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent segments the shared queue into multiple application-specific queues, each handling I/O requests for a particular storage application. This segmentation isolates traffic flows so that delays in one application's requests do not block others. The queue manager handles the complexity of managing multiple queues, maintaining ease of operation from the application perspective while eliminating the time loss caused by aggregation-induced blocking.

Inventive Principle:
Principle #1Segmentation

4Quantity of substance

If QoS mechanisms are applied at the server level, then bandwidth allocation is controlled, but application-level QoS differentiation is not achieved

Engineering Contradiction:
Improvebandwidth controlVSAvoidapplication-level QoS
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The patent adds another dimension to QoS management by introducing application-level queue differentiation within the server. Instead of only server-level bandwidth control, the system now operates at two levels: server-level aggregation for overall bandwidth management and application-level queue assignment for fine-grained QoS differentiation. This dimensional expansion enables both bandwidth control and application-specific QoS policies to coexist, resolving the contradiction between centralized control and decentralized adaptability.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS7602774B1Quality of service for server applications
Publication Date: 2009.10.13 ORACLE INT CORP
  • US7602774B1 patent drawing
  • US7602774B1 patent drawing
  • US7602774B1 patent drawing

AI summary

Methods and apparatus are provided for allowing quality of service (QoS) configuration for storage applications running on servers connected to a storage area network (SAN). Resources such as host bus adapters (HBAs) are offloaded from individual servers onto a resource virtualization switch. Servers are connected to the resource virtualization switch using an I/O bus connection. The resource virtualization switch provides storage applications running on connected servers with different quality of service levels. The resource virtualization switch can also apply traffic shaping policies associated with QoS.