SDNAS Share Priority Dynamic Adjustment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing Software Defined Network Attached Storage (SDNAS) systems lack the ability to differentiate and dynamically adjust prioritization of shares based on usage patterns, leading to inefficient resource allocation and increased latency for frequently accessed shares.
Innovation Solution
Implementing a share priority table within the SDNAS process that assigns and dynamically adjusts share priorities based on usage factors such as protocol client connections, read/write operations, and continuous availability, allowing for temporary priority boosts to high-usage shares and reducing priority for low-usage shares.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If share priorities are statically assigned, then system complexity is reduced, but the system cannot adapt to changing workload patterns and frequently accessed shares experience increased latency
Solution Approach 1:
The patent implements dynamic share prioritization where the SDNAS process continuously monitors share usage metrics (number of connections, read/write operations) and automatically adjusts share priorities in real-time. This allows the system to adapt to changing workload patterns without manual intervention, resolving the contradiction between adaptability and complexity by automating the adjustment mechanism within the SDNAS architecture.
Solution Approach 2:
The system employs feedback loops where the SDNAS process periodically evaluates share usage factors, compares them against threshold values, and adjusts share priorities accordingly. This closed-loop control mechanism enables the system to respond to workload changes while maintaining manageable complexity through automated decision-making based on predefined criteria.
2Loss of time
If share priorities are dynamically adjusted based on usage, then latency for frequently accessed shares is reduced, but additional monitoring and adjustment mechanisms increase system complexity
Solution Approach 1:
The SDNAS process is enhanced to perform multiple functions: it manages share access, monitors usage metrics, evaluates usage factors, and adjusts share priorities all within a single integrated process. This multi-functionality reduces the need for separate monitoring and adjustment components, thereby reducing the complexity overhead while achieving reduced latency through dynamic prioritization.
Solution Approach 2:
The SDNAS process autonomously monitors its own share usage metrics and automatically adjusts share priorities without requiring external control systems. This self-service capability eliminates the need for additional monitoring infrastructure and simplifies the system architecture while achieving low-latency access for frequently used shares.
3Productivity
If all shares receive equal prioritization, then fairness is maintained, but mission critical applications and frequently accessed shares suffer from suboptimal throughput
Solution Approach 1:
The patent implements differentiated share prioritization where each share can have its own priority level based on its specific usage characteristics and importance. Mission critical applications and frequently accessed shares receive higher priority treatment locally, while less critical shares receive standard priority. This local quality approach maintains fairness overall while optimizing throughput for critical workloads through share-specific prioritization.
Data Source
AI summary
A Software Defined Network Attached Storage (SDNAS) executes on a storage system to provide access to shared file systems, referred to as “shares”, on the storage system. Users access the shares using protocol clients. A share priority table is maintained by the SDNAS and used to specify share priorities on the storage system. A share priority adjustment process is used to dynamically adjust the share priority values based on average usage values computed using a weighted usage function, and optionally based on limited ranges. The weighted usage function considers the average number of protocol client connections on the share, the average number of read operations on the share, whether the share supports continuous availability, and other factors. The adjusted share priority values are used to specify IO priorities which used by the operating system scheduling mechanism to schedule the IO operations and to establish CPU priorities for the IO operations.


