Static Load Balancing for File Systems in Multipath I/O

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing load balancing methods in data storage systems often result in significant load imbalances and require complex dynamic adjustments, which can be inefficient and difficult to manage.

Innovation Solution

A static load balancing method that involves programming a file server to select and use predetermined mappings between logical units of storage and data paths, ensuring sequential access across multiple paths for concurrent data transfer, thereby distributing the load effectively without the need for continuous dynamic adjustments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If dynamic load balancing facilities are used to distribute I/O requests across multiple paths, then load distribution capability is improved, but system complexity increases and performance may deteriorate due to significant load imbalances

Engineering Contradiction:
Improveload distribution capabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-establishing mappings between logical units of storage and data paths before I/O operations begin. The file server is programmed with a facility that contains predetermined mappings that associate each logical unit with specific data paths, eliminating the need for dynamic path selection during runtime and simplifying the overall system architecture

Inventive Principle:
Principle #10Preliminary action

2Productivity

If system administrators manually reconfigure LUN assignments or migrate files to achieve load balancing, then load balance is improved, but operational complexity and time consumption increase

Engineering Contradiction:
Improveload balance efficiencyVSAvoidoperational simplicity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent implements self-service by enabling the file server to automatically select data paths based on pre-established mappings without requiring administrator intervention. The facility programmed into the file server autonomously manages path selection, eliminating the need for manual reconfiguration of LUN assignments or file migrations while maintaining optimal load balance

Inventive Principle:
Principle #25Self-service

3Productivity

If multiple data paths are provided between file server and storage controller, then read/write access performance is improved, but path management complexity increases

Engineering Contradiction:
Improveaccess performanceVSAvoidpath management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-establishing mappings between logical units of storage and data paths before I/O operations begin. The file server is programmed with a facility that contains predetermined mappings that associate each logical unit with specific data paths, eliminating the need for dynamic path selection during runtime and simplifying the overall system architecture

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies segmentation by dividing the storage system into logical units of storage, each with its own predetermined mapping to data paths. This segmentation allows independent management of path assignments for different logical units, enabling parallel I/O operations across multiple paths while simplifying the management complexity through modular organization

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9495119B1Static load balancing for file systems in a multipath I/O environment
Publication Date: 2016.11.15 EMC IP HLDG CO LLC
  • US9495119B1 patent drawing
  • US9495119B1 patent drawing
  • US9495119B1 patent drawing

AI summary

A data processing system includes a file server and a storage controller linking the file server to a storage array. There are alternative data paths between the file server and the storage controller for accessing logical units of storage (LUNs) in the storage array. A file system is striped across the LUNs. For load balancing, the file server is programmed with a facility for selecting mappings between the LUNs and the data paths. Upon mounting the file system, the facility is invoked to get a next mapping between the LUNs and the data paths, and this next mapping is used during read and write access to the mounted file system. The facility can also be invoked to get another mapping when another file system is mounted on the LUNs.