Claims
- 1. A method for handling a remote copy request in a distributed storage system, the method comprising:
providing a plurality of primary volumes within a primary storage system that is coupled to a primary host via a first network, the primary storage system being coupled to a secondary storage system via a second network; selecting a first request from a plurality of requests placed in a queue based on priority information associated with the requests; selecting a first path group from one or more path groups that could be used to transmit the request; and transmitting the first request to the secondary storage system using the first path group, the secondary storage system including a plurality of secondary volumes that are paired to the plurality of primary volumes.
- 2. The method of claim 1, wherein each of the primary volumes is assigned a priority.
- 3. The method of claim 2, wherein all requests received from the primary host and to be directed to a given primary volume are assigned the same priority.
- 4. The method of claim 3, further comprising:
receiving a second request at the primary storage system from the primary host; identifying a primary volume to which the second request is directed; determining the priority of the primary volume to which the second request is directed; and assigning the same priority to the second request as the priority of the primary volume to which the second request is directed, wherein the first request and the second request are the same request.
- 5. The method of claim 4, wherein the primary storage system includes a path selection table that is accessed to determine the priority of the primary volume.
- 6. The method of claim 5, wherein the path selection table associates each of the primary volumes with one or more path groups and a priority value.
- 7. The method of claim 1, wherein the primary storage system maintains a path selection table and a path group table, the path selection table associating each of the primary volumes with one or more path groups and a priority value, the path group table associating each path group with one or more ports.
- 8. The method of claim 7, wherein the path group table associates each path group with a given constraint.
- 9. The method of claim 1, further comprising:
selecting a port from one or more ports associated with the selected path group.
- 10. The method of claim 1, further comprising:
determining whether or not a constraint defined for the first path group is satisfied; selecting second path group from the one or more path groups that could be used to transmit the request if the constraint is not satisfied; and selecting a port from one or more ports associated with the first path group if the constraint is satisfied.
- 11. The method of claim 10, wherein the first path group is preferred over the second path group in transmitting the first request.
- 12. A method for handling a remote copy request, the method comprising:
receiving a plurality of requests at a primary storage system from one or more primary hosts, the primary storage system having a plurality of primary volumes; sorting the requests according to priority assigned to the requests; retrieving one of the requests that have been sorted; selecting a first path group to be used in transmitting the retrieved request, the first path being selected by accessing a path selection table that provides one or more path groups that may be used to transmit the retrieved request; wherein the retrieved request is transmitted to a secondary storage system after the selecting step, the secondary storage system including a plurality of secondary volumes that are paired to the plurality of primary volumes, wherein the path selection table assigns one or more path groups to each of the plurality of primary volumes.
- 13. The method of claim 12, wherein the requests are assigned priority according to the primary volumes to which they are associated.
- 14. The method of claim 12, wherein the path selection table maintains priority information for each of the plurality of primary volumes.
- 15. A computer storage medium including a computer program for handling a remote copy request in a distributed storage system, the computer program, comprising:
code for retrieving a given request from a plurality of requests to be sent to a secondary storage system from a primary storage system, the retrieved request having equal or higher priority than the remaining requests; code for selecting a first path group to be used in transmitting the retrieved request, the first path being selected by accessing a path selection table that provides one or more path groups that may be used to transmit the retrieved request; and code for transmitting the retrieved request using the selected first path to the secondary storage system, the secondary storage system including a plurality of secondary volumes that are paired to a plurality of primary volumes provided in the primary storage system.
- 16. The computer medium of claim 15, wherein the plurality of primary volumes are provided with a plurality of priority values, wherein the requests received at the primary storage system are assigned priority values that corresponds to the priority values of the primary volumes to which the requests are associated.
- 17. A storage system, comprising:
a storage controller to handle remote copy requests received from a host coupled to the storage system via a first network; a plurality of primary volumes that are paired to a plurality of secondary volumes provided in a remote storage system that is coupled to the storage system via a second network. a memory device including a path selection table, the path selection table assigning each of the plurality of primary volumes with one or more path groups that may be used to transmit a request that is associated with a given primary volume; and a computer program including
code for assigning a first request received from the host with a first priority value that corresponds to priority assigned to a first primary volume to which the first request is associated, code for assigning a second request from the host with a second priority value that corresponds to priority assigned to a second primary volume to which the second request is associated, the first priority value being higher than the second priority value, and code for sorting the first and second requests according to their priority values, wherein the first request is placed ahead of the second request in a queue.
- 18. The storage system of claim 17, wherein the second request is received at the storage system prior to the first request.
- 19. The storage system of claim 17, wherein the storage controller includes a path group table that maps each of the one or more path groups to one or more ports.
- 20. The storage system of claim 19, wherein each of the path group listed in the path group table is provided with a constraint that needs to be satisfied in order to use the path group to transmit the request to the remote storage system.
CROSS-REFERENCES TO RELATED APPLICATIONS
[0001] The present application is a continuation-in-part of and claims priority to U.S. patent application Ser. No. 10/022,306, filed on Dec. 14, 2001, and U.S. patent application Ser. No. 09/823,470, filed on Mar. 30, 2001, which are both incorporated by reference.
Continuation in Parts (2)
|
Number |
Date |
Country |
Parent |
10022306 |
Dec 2001 |
US |
Child |
10684221 |
Oct 2003 |
US |
Parent |
09823470 |
Mar 2001 |
US |
Child |
10684221 |
Oct 2003 |
US |