Block caching between a host device client and storage array in a shared storage environment
First Claim
1. An apparatus comprising:
- a shared storage environment comprising a storage array having at least one storage volume shared between first and second host devices;
a server associated with the storage array and external to the first and second host devices;
at least first and second clients implemented on the respective first and second host devices;
a first block cache located between the first client and the storage array, wherein the first block cache is implemented externally to the storage array; and
at least one of an iSCSI driver and a Fibre Channel driver coupled between the first block cache and the storage array;
wherein the first client communicates with the storage array over at least first and second distinct paths, the first path connecting the first client to the storage array via the server and the second path connecting the first client to the storage array via the first block cache; and
wherein the server is configured to coordinate operations of the first and second clients relating to the storage volume shared between the first and second host devices in a manner that ensures coherency of data blocks stored in the first block cache.
9 Assignments
0 Petitions
Accused Products
Abstract
A storage system comprises a shared storage environment that includes a storage array having at least one storage volume shared between first and second host devices. The storage system further comprises a server associated with the storage array, at least first and second clients associated with the respective first and second host devices, and a first block cache arranged between the first client and the storage array. The server is configured to coordinate operations of the first and second clients relating to the storage volume shared between the first and second host devices in a manner that ensures coherency of data stored in the first block cache. The server may comprise a storage block mapping protocol (SBMP) server and the first and second clients may comprise respective SBMP clients. The block cache is illustratively implemented using a VFCache or other type of server flash cache.
-
Citations
22 Claims
-
1. An apparatus comprising:
-
a shared storage environment comprising a storage array having at least one storage volume shared between first and second host devices; a server associated with the storage array and external to the first and second host devices; at least first and second clients implemented on the respective first and second host devices; a first block cache located between the first client and the storage array, wherein the first block cache is implemented externally to the storage array; and at least one of an iSCSI driver and a Fibre Channel driver coupled between the first block cache and the storage array; wherein the first client communicates with the storage array over at least first and second distinct paths, the first path connecting the first client to the storage array via the server and the second path connecting the first client to the storage array via the first block cache; and wherein the server is configured to coordinate operations of the first and second clients relating to the storage volume shared between the first and second host devices in a manner that ensures coherency of data blocks stored in the first block cache. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method comprising:
-
configuring a storage array of a shared storage environment to include at least one storage volume shared between first and second host devices having respective first and second clients implemented thereon; and coordinating operations of the first and second clients relating to the storage volume shared between the first and second host devices in a manner that ensures coherency of data stored in a first block cache located between the first client and the storage array; wherein the first block cache is implemented externally to the storage array; wherein at least one of an iSCSI driver and a Fibre Channel driver is coupled between the first block cache and the storage array; and wherein the first client communicates with the storage array over at least first and second distinct paths, the first path connecting the first client to the storage array via the server and the second path connecting the first client to the storage array via the first block cache. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
-
22. A computer program product comprising a non-transitory processor-readable storage medium having encoded therein executable code of one or more software programs, wherein the one or more software programs when executed cause a processing platform to:
-
configure a storage array of a shared storage environment to include at least one storage volume shared between first and second host devices having respective first and second clients implemented thereon; and coordinate operations of the first and second clients relating to the storage volume shared between the first and second host devices in a manner that ensures coherency of data stored in a first block cache located between the first client and the storage array; wherein the first block cache is implemented externally to the storage array; wherein at least one of an iSCSI driver and a Fibre Channel driver is coupled between the first block cache and the storage array; and wherein the first client communicates with the storage array over at least first and second distinct paths, the first path connecting the first client to the storage array via the server and the second path connecting the first client to the storage array via the first block cache.
-
Specification