IP Library Granted Patent US 7,266,706
Granted Patent B2
US 7,266,706 · App. 10/006,929 · Granted Sep 4, 2007

Methods and systems for implementing shared disk array management functions

Assignee: YottaYotta, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,266,706
App. No.
10/006,929
Filed
Dec 6, 2001
Granted
Sep 4, 2007
Kind
B2
Art Unit
2131
USPC
713/201
Abstract

Multiple Array Management Functions (AMFs) are connected to multiple redundancy groups over a storage area network (SAN), such as a fiber-channel based SAN. The multiple AMFs share management responsibility of the redundancy groups, each of which typically includes multiple resources spread over multiple disks. The AMFs provide concurrent access to the redundancy groups for associated host systems. When a host requests an AMF to perform an operation on a resource, the AMF synchronizes with the other AMFs sharing control of the redundancy group that includes the resource to be operated on, so as to obtain access to the resource. While performing the operation, the AMF send replication data and state information associated with the resource such that if the AMF fails, any of the other AMFs are able to complete the operation and maintain data reliability and coherency.

Claims (37)

1. In a data storage network, a method of maintaining data coherency using two or more array management functions (AMFs) that are able to concurrently access a redundancy group, the redundancy group including a plurality of resources, the method comprising:

receiving a request from a host, by a first one of the AMFs, to perform a first operation on data stored on a first one of the resources;

broadcasting a message from the first AMF to the other AMFs sharing access to the first resource so as to acquire access to the first resource;

performing the first operation on the data by the first AMF; and

sending replication and state data from the first AMF to the other AMFs concurrently with performing the operation such that if the first AMF fails while performing any steps of the operation, one of the other AMFs is able to complete the operation using said sent replication and state data.

2. The method of claim 1 , wherein the first operation is a write operation, the method further comprising receiving from the host the data to be written to the first resource by the first AMF.

3. The method of claim 2 , wherein the broadcast message is a write invalidate request, and wherein, responsive to the invalidate request, each of the AMFs sharing access to the resource invalidates corresponding data stored in its cache.

4. The method of claim 1 , wherein the first operation is a read operation.

5. The method of claim 4 , further comprising performing a search of the cache of each of the AMFs sharing access to the first resource for a copy of the data requested in the read request.

6. The method of claim 5 , further comprising reading the requested data from the first resource if none of the AMFs sharing access respond with a copy of the requested data.

7. The method of claim 5 , further comprising receiving the requested data from one of the AMFs sharing access to the resource.

8. The method of claim 4 , wherein the broadcast message identifies the data in the request, the method further comprising searching the cache of each of the AMFs sharing access to the first resource for the identified data, and forwarding the identified data to the first AMF if found in the cache.

9. The method of claim 1 , further comprising determining whether the data identified in the request is shared by one or more other AMFs.

10. In a data storage network, a method of maintaining data coherency using two or more array management functions (AMFs) that are able to concurrently access a redundancy group, the redundancy group including a plurality of resources, the method comprising:

receiving a request from a host, by a first one of the AMFs, to perform a first operation on data stored on a first one of the resources;

determining from the request whether the identified data is shared by one or more of the other AMFs; and

if so:

broadcasting a message from the first AMF to the other AMFs sharing access to the first resource so as to acquire access to the first resource; and

performing the first operation on the data by the first AMF; and

if not:

performing the first operation on the data by the first AMF; and

in both cases, sending replication and state data from the first AMF to the other AMFs concurrently with performing the first operation such that if the first AMF fails while performing any steps of the first operation, one of the other AMFs is able to complete the first operation using said sent replication and state data.

11. The method of claim 10 , wherein the request is one of a write data request and a read data request.

12. The method of claim 10 , wherein the broadcast message is a write invalidate request, and wherein, responsive to the invalidate request, each of the ALMFs sharing access to the resource invalidates corresponding data stored in its cache.

13. A data storage network, comprising:

two or more controllers communicably coupled to a redundancy group, each controller having one or more array management functions (AMFs), wherein two or more of said AMFs are able to concurrently access the redundancy group, the redundancy group including a plurality of resources, each controller further including:

means for receiving a request from a host to perform an operation on data stored on a first one of the resources by a first AMF;

means for broadcasting a message from the first AMF to other AMFs sharing access to the first resource so as to acquire access to the first resource;

means for performing the first operation on the data by the first AMF; and

means for sending replication and state data from the first AMF to the other AMFs concurrently with performing the operation such that if the first AMF fails while performing any steps of the operation, one of the other AMFs is able to complete the operation using said sent replication and state data.

14. A data storage network, comprising:

two or more controllers communicably coupled to a redundancy group, each controller having one or more array management functions (AMFs), wherein two or more of said AMFs are able to concurrently access the redundancy group, the redundancy group including a plurality of resources, each controller further including:

means for receiving a request from a host to perform a first operation on data stored on a first one of the resources by a first AMF;

means for determining from the request whether the identified data is shared by one or more of the other AMFs;

means for broadcasting a message from the first AMF to the other AMFs sharing access to the first resource so as to acquire access to the first resource if the data is shared;

means for performing the first operation on the data by the first AMF; and

means for sending replication and state data from the first AMF to the other AMFs concurrently with performing the operation such that if the first AMF fails while performing any steps of the operation, one of the other AMFs is able to complete the operation using said sent replication and state data.

Assignments (14)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2008
From: EMC CORPORATION OF CANADA
To: EMC CORPORATION
Reel/Frame 021936/0238 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 22, 2008
From: YOTTAYOTTA, INC.
To: EMC CORPORATION OF CANADA
Reel/Frame 021561/0597 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2007
From: BROWN, WILLIAM P.; MATHEWS, MICHAEL B.; UNRAU, RON; HAGGLUND, DALE
To: YOTTAYOTTA, INC.
Reel/Frame 019552/0215 →
SECURITY AGREEMENT Recorded Apr 10, 2007
From: YOTTAYOTTA, INC.
To: 1172038 ALBERTA ULC; PRYCES (BARBADOS) LTD. (C/O US VENTURES); TECHNOANGE, INC.; BANC OF AMERICA STRATEGIC INVESTMENTS CORPORATION; SHIGEMURA, BARTON; KARPOFF, WAYNE
Reel/Frame 019140/0340 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2002
From: BROWN, WILLLIAM P.; MATHEWS, MICHAEL B.; UNRAU, RON
To: YOTTA YOTTA, INC.
Reel/Frame 013154/0447 →
Continuity (3)
Continuation In Part 0965725800 · Sep 7, 2000
Continuation 0926190600 · Mar 3, 1999
Related Publication 20020188655A1 · Dec 12, 2002