Method and system for storage-aware flow resource management
First Claim
Patent Images
1. A method for managing resources in a storage system being accessed by servers based on server resource usage, said method comprising:
- allocating a command window to each of said servers accessing said resources, wherein said command window defines a limit on the number of outstanding storage requests that each server may maintain against said resources;
achieving an equilibrium state that balances the size of each server'"'"'s command window and the amount of free resources available in said resources; and
maintaining said equilibrium state by continually adjusting the size of each command window depending upon an amount of free resources available in said resources;
wherein said achieving of said equilibrium state comprises operating in an equilibrium achievement mode that increases the size of each server'"'"'s command window at a first rate as each of said servers completes a successful storage operation; and
wherein said maintaining of said equilibrium state comprises changing to an equilibrium maintenance mode when a storage request is unsuccessful, said equilibrium maintenance mode comprising;
decreasing the size of each command window by a reduction factor; and
increasing the size of each server'"'"'s command window at a second rate less than said first rate as each of said servers completes a successful storage operation;
reverting to said equilibrium achievement mode when the level of free resources rises above an upper limit; and
repeating said changing and reverting processes;
wherein said repeating process acquires and maintains an equilibrium balance between the size of each command window and the amount of free resources.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and structure for managing resources in a storage system that is based on server resource usage is disclosed. The method allocates a command window to each of the servers accessing the resources, achieves an equilibrium state that balances the size of each server'"'"'s command window and the amount of free resources, and maintains the equilibrium state by continually adjusting the size of each command window. The command window defines a limit on the number of outstanding storage requests that each server may maintain. The invention initially allocates a minimum sized command window.
-
Citations
21 Claims
-
1. A method for managing resources in a storage system being accessed by servers based on server resource usage, said method comprising:
-
allocating a command window to each of said servers accessing said resources, wherein said command window defines a limit on the number of outstanding storage requests that each server may maintain against said resources; achieving an equilibrium state that balances the size of each server'"'"'s command window and the amount of free resources available in said resources; and maintaining said equilibrium state by continually adjusting the size of each command window depending upon an amount of free resources available in said resources; wherein said achieving of said equilibrium state comprises operating in an equilibrium achievement mode that increases the size of each server'"'"'s command window at a first rate as each of said servers completes a successful storage operation; and wherein said maintaining of said equilibrium state comprises changing to an equilibrium maintenance mode when a storage request is unsuccessful, said equilibrium maintenance mode comprising; decreasing the size of each command window by a reduction factor; and increasing the size of each server'"'"'s command window at a second rate less than said first rate as each of said servers completes a successful storage operation; reverting to said equilibrium achievement mode when the level of free resources rises above an upper limit; and repeating said changing and reverting processes; wherein said repeating process acquires and maintains an equilibrium balance between the size of each command window and the amount of free resources. - View Dependent Claims (2, 3, 4, 5, 6, 16, 19)
-
-
7. A method for managing resources in a storage system being accessed by servers, said method comprising:
-
allocating a command window to each of said servers accessing said resources, wherein said command window defines a limit on the number of outstanding storage requests that each server may maintain against said resources; initially operating in an equilibrium achievement mode that balances the size of each Server'"'"'s command window and the amount of free resources available in said resources, wherein, while operating in said equilibrium achievement mode, said method comprises increasing the size of each server'"'"'s command window at a first rate as each of said servers completes a successful storage operation; changing to an equilibrium maintenance mode that balances the size of each server'"'"'s command window and the amount of free resources available in said resources when a storage request is unsuccessful, wherein, while operating in said equilibrium maintenance mode, said method comprises; decreasing the size of each command window by a reduction factor; and increasing the size of each server'"'"'s command window at a second rate less than said first rate as each of said servers completes a successful storage operation; reverting to said equilibrium achievement mode when the level of free resources rises above an upper limit; and repeating said changing and reverting processes; wherein said repeating process acquires and maintains an equilibrium balance between the size of each command window and the amount of free resources. - View Dependent Claims (8, 9, 10, 17, 20)
-
-
11. A method for managing resources in a storage system being accessed by servers, said method comprising:
-
allocating a command window to each of said servers accessing said resources, wherein said command window defines a limit on the number of outstanding storage requests that each server may maintain against said resources; initially operating in an equilibrium achievement mode that balances the size of each Server'"'"'s command window and the amount of free resources available in said resources, wherein, while operating in said equilibrium achievement mode, said method comprises increasing the size of each server'"'"'s command window at an exponential rate as each of said servers completes a successful storage operation; changing to an equilibrium maintenance mode that balances the size of each server'"'"'s command window and the amount of free resources available in said resources when a storage request is unsuccessful, wherein, while operating in said equilibrium maintenance mode, said method comprises; decreasing the size of each command window by a reduction factor; and increasing the size of each server'"'"'s command window at a rate inversely proportional to the size of each command window as each of said servers completes a successful storage operation; reverting to said equilibrium achievement mode when the level of free resources rises above an upper limit; and repeating said changing and reverting processes; wherein said repeating process acquires and maintains an equilibrium balance between the size of each command window and the amount of free resources. - View Dependent Claims (12, 13, 14, 15, 18, 21)
-
Specification