Claims
- 1. A method of accessing a storage area network by real-time applications, comprising:
requesting, from a master daemon by the real-time applications executing on nodes in the storage area network, reservation of bandwidth to access resources in the storage area network; and scheduling, by the master daemon, access to the resources in the storage area network by each real-time application.
- 2. A method as recited in claim 1, further comprising:
distributing to each requesting node at least one schedule determined during said scheduling by the master daemon; and limiting accesses to the resources in the storage area network by each real-time application on each requesting node according to a corresponding schedule included in the at least one schedule.
- 3. A method as recited in claim 2, further comprising reserving, by the nodes in the storage area network, an additional amount of bandwidth not requested by one of the real-time applications.
- 4. A method as recited in claim 3, further comprising allocating, by a local daemon on one of the nodes in the storage area network, the additional amount of bandwidth reserved for access to the storage area network, to applications executing on the one of the nodes and for which no bandwidth request was issued to the local daemon.
- 5. A method as recited in claim 4, wherein said allocating of the additional amount of bandwidth further includes allocating bandwidth to at least one of the real-time applications for which a bandwidth request was granted by the local daemon without requiring that the local daemon request additional bandwidth from the master daemon for the one of the nodes.
- 6. A method as recited in claim 1, wherein said scheduling includes:
determining available bandwidth along a path required by each request; and granting admission to the resources of the storage area network only if total bandwidth reservations of all granted requests will be less than total available bandwidth.
- 7. A method as recited in claim 6, wherein the path associated with each is from a node in the storage area network issuing the request to at least one data storage element in the storage area network.
- 8. A method as recited in claim 7, wherein each request identifies the at least one storage element, a required periodic bandwidth, a start time and a duration of a reservation for access to the at least one storage element.
- 9. A method as recited in claim 8, wherein said determining comprises:
determining a path from an input/output interface at the nodes in the storage area network issuing the request to each at least one storage element; determining available bandwidth for at least one component along the path.
- 10. A method as recited in claim 9, wherein said granting is performed if each of the at least one component has available bandwidth exceeding the required periodic bandwidth identified by the request and includes increasing reserved bandwidth at each of the at least one component by the required periodic bandwidth identified by the request.
- 11. A method as recited in claim 10, further comprising maintaining, by the master daemon, a master database of the reserved bandwidth and the total available bandwidth of components capable of being shared by the nodes in the storage area network.
- 12. A method as recited in claim 11, further comprising maintaining, by a local daemon at each of the nodes of the storage area network from which requests for bandwidth reservations are issued, a local database of the reserved bandwidth for locally issued requests and the total available bandwidth for local node components shared by processes executed at that node.
- 13. A method as recited in claim 11, wherein the at least one component includes a portion of disk storage in the storage area network.
- 14. A method as recited in claim 13, wherein the at least one component further includes a host bus from system memory to a Fibre Channel adapter.
- 15. A computer readable storage controlling a computing system to perform a method of accessing a storage area network by real-time applications, comprising:
requesting, from a master daemon by the real-time applications executing on nodes in the storage area network, reservation of bandwidth to access resources in the storage area network; and scheduling, by the master daemon, access to the resources in the storage area network by each real-time application.
- 16. A cluster of computer systems, comprising:
a storage area network having sharable resources; and computer system nodes, coupled to said storage area network, to execute real-time applications issuing requests to a master daemon running on one of the computer system nodes for reservation of bandwidth to access the sharable resources in the storage area network, the master daemon in response to the requests scheduling access to the sharable resources in the storage area network by each real-time application.
- 17. At least one computer readable medium storing data structures comprising:
a master database of reserved network bandwidth and total available network bandwidth of components capable of being shared by real-time applications executing on nodes in a storage area network; and client node databases, each storing reserved local bandwidth and total local available bandwidth for local node components shared by the real-time applications executed at a local node.
CROSS-REFERENCE TO RELATED APPLICATION(S)
[0001] This application is related to and claims priority to U.S. provisional application entitled REAL-TIME STORAGE AREA NETWORK having serial No. 60/378,941, by Michael A. Raymond, filed May 10, 2002 and incorporated by reference herein.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60378941 |
May 2002 |
US |