Dynamic Command Resource Allocation Across Storage Transports

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current command processing resource allocation mechanisms in storage area networking are static, limiting flexibility and performance as they allocate fixed resources to each transport layer session, resulting in arbitrary maximum performance based on statically allocated resources, which cannot adapt to changes in access patterns or usage across multiple transport protocols.

Innovation Solution

A dynamic method of allocating command processing resources across multiple protocol layers, allowing resources to be adjusted between transport protocols and sessions, moving resources to layers with the most open sessions, and ensuring a minimal session operation while providing extra capacity when needed, by using a SCSI operation transport reservation mechanism and pools for immediate and session I/O request blocks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If static allocation mechanism is used for command processing resources, then each transport protocol is given a fixed maximum number of sessions, but this restricts the flexibility of the solution and creates arbitrary division between transports

Engineering Contradiction:
Improveflexibility of resource allocationVSAvoidcomplexity of allocation mechanism
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic allocation of command processing resources where the number of sessions per transport protocol is no longer fixed but adjusts automatically based on current system conditions. The allocation mechanism monitors the state of command processing resources and dynamically modifies session limits for different transport protocols (Fibre Channel, iSCSI, Infiniband) to optimize performance while maintaining simplicity through automated control.

Inventive Principle:
Principle #15Dynamics

2Productivity

If static allocation of command processing resources is used, then resource distribution is simple to implement, but each session has arbitrary maximum performance based on statically allocated resources

Engineering Contradiction:
Improvesession performanceVSAvoidadaptability to access patterns
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent employs a feedback mechanism that continuously monitors the usage of command processing resources across multiple transport protocols and sessions. Based on this feedback, the system automatically adjusts the allocation of sessions to each transport protocol, ensuring that high-performing sessions receive adequate resources while preventing any single protocol from monopolizing resources. This feedback-driven approach optimizes session performance while adapting to changing access patterns.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If fixed resources are allocated to each transport layer session, then resource management is straightforward, but the system cannot adapt to changes in access patterns or usage across multiple transport protocols

Engineering Contradiction:
Improveadaptability to usage changesVSAvoidease of resource management
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent implements a self-service allocation mechanism where the system automatically manages command processing resources without requiring manual intervention. The allocation mechanism monitors resource usage across Fibre Channel, iSCSI, and Infiniband protocols, and autonomously adjusts session allocations based on current demand and performance conditions, making the system adaptable to usage changes while maintaining ease of operation through automated self-management.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8230068B2Dynamic command capacity allocation across multiple sessions and transports
Publication Date: 2012.07.24 NETAPP INC
  • US8230068B2 patent drawing
  • US8230068B2 patent drawing
  • US8230068B2 patent drawing

AI summary

A method for dynamically allocating a plurality of command processing resources is disclosed. The method generally includes the steps of (A) allocating the command processing resources from a first protocol layer to a first pool of a second protocol layer below the first protocol layer, (B) allocating at least some of the command processing resources from the first pool to a plurality of second pools and (C) sending a particular one of the command processing resources from one of the second pools to the first protocol layer for processing an operation.