Systems and methods for implementing content sensitive routing over a wide area network (WAN)
First Claim
1. An array management function (AMF) apparatus involved in implementing hierarchical distributed cache coherence in a storage network having a first local AMF access group (LAAG) and a second LAAG, the first LAAG including first AMF devices and a first proxy agent, and the second LAAG including second AMF devices and a second proxy agent, the AMF apparatus comprising:
- instruction execution circuitry; and
instruction storage circuitry operative to store computer instructions and provide them to the instruction execution circuitry for execution to realize functional circuitry including;
write update receiving circuitry for receiving a write update from a host server, the write update identifying a set of storage blocks;
first sending circuitry for sending, in a first send operation, a first write invalidate command to all of the first AMF devices of the first LAAG, each first write invalidate command directing a respective first AMF device of the first LAAG to locally invalidate the set of storage blocks identified by the write update;
second sending circuitry for sending, in a second send operation, a proxy agent write invalidate command to the first proxy agent of the first LAAG, the proxy agent write invalidate command directing the first proxy agent of the first LAAG to forward the proxy agent write invalidate command to the second proxy agent of the second LAAG for distribution of a second write invalidate command to all of the second AMF devices of the second LAAG, each second write invalidate command directing a respective second AMF device of the second LAAG to locally invalidate the set of storage blocks identified by the write update;
first receiving circuitry for receiving, in a first receive operation, a first write invalidate acknowledgement from all of the first AMF devices of the first LAAG, each first write invalidate acknowledgement indicating that a respective first AMF device of the first LAAG has successfully locally invalidated the set of storage blocks identified by the write update;
second receiving circuitry for receiving, in a second receive operation, a proxy agent write invalidate acknowledgement from the first proxy agent of the first LAAG, the proxy agent write invalidate acknowledgement indicating that all of the second AMF devices of the second LAAG have acknowledged successful local invalidation of the set of storage blocks identified by the write update; and
write update sending circuitry for sending, upon completion of the first and second receive operations, a write update acknowledgement to the host server.
10 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for optimizing storage network functionality. The methods and systems of the present invention are particularly useful for optimizing storage network performance for cases in which some components of the network may be separated by significant distances and/or which include communication links with relatively limited bandwidth. In certain aspects, the present invention provides methods and systems for implementing access to and management of geographically distributed storage resources through multiple peer-to-peer storage network array management functions (AMFs) that may also be geographically distributed. The methods and systems of the present invention, in certain aspects, provide geographically aware cache sharing, cache replication, cache coherence, traffic routing, redundancy group structure, source and destination selection, pre-fetching of data, message gathering and other useful features.
10 Citations
20 Claims
-
1. An array management function (AMF) apparatus involved in implementing hierarchical distributed cache coherence in a storage network having a first local AMF access group (LAAG) and a second LAAG, the first LAAG including first AMF devices and a first proxy agent, and the second LAAG including second AMF devices and a second proxy agent, the AMF apparatus comprising:
-
instruction execution circuitry; and instruction storage circuitry operative to store computer instructions and provide them to the instruction execution circuitry for execution to realize functional circuitry including; write update receiving circuitry for receiving a write update from a host server, the write update identifying a set of storage blocks; first sending circuitry for sending, in a first send operation, a first write invalidate command to all of the first AMF devices of the first LAAG, each first write invalidate command directing a respective first AMF device of the first LAAG to locally invalidate the set of storage blocks identified by the write update; second sending circuitry for sending, in a second send operation, a proxy agent write invalidate command to the first proxy agent of the first LAAG, the proxy agent write invalidate command directing the first proxy agent of the first LAAG to forward the proxy agent write invalidate command to the second proxy agent of the second LAAG for distribution of a second write invalidate command to all of the second AMF devices of the second LAAG, each second write invalidate command directing a respective second AMF device of the second LAAG to locally invalidate the set of storage blocks identified by the write update; first receiving circuitry for receiving, in a first receive operation, a first write invalidate acknowledgement from all of the first AMF devices of the first LAAG, each first write invalidate acknowledgement indicating that a respective first AMF device of the first LAAG has successfully locally invalidated the set of storage blocks identified by the write update; second receiving circuitry for receiving, in a second receive operation, a proxy agent write invalidate acknowledgement from the first proxy agent of the first LAAG, the proxy agent write invalidate acknowledgement indicating that all of the second AMF devices of the second LAAG have acknowledged successful local invalidation of the set of storage blocks identified by the write update; and write update sending circuitry for sending, upon completion of the first and second receive operations, a write update acknowledgement to the host server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of operating an array management function (AMF) apparatus to facilitate hierarchical distributed cache coherence in a storage network having a first local AMF access group (LAAG) and a second LAAG, the first LAAG including first AMF devices and a first proxy agent, and the second LAAG including second AMF devices and a second proxy agent, the method comprising:
-
receiving a write update from a host server, the write update identifying a set of storage blocks; sending, in a first send operation, a first write invalidate command to all of the first AMF devices of the first LAAG, each first write invalidate command directing a respective first AMF device of the first LAAG to locally invalidate the set of storage blocks identified by the write update; sending, in a second send operation, a proxy agent write invalidate command to the first proxy agent of the first LAAG, the proxy agent write invalidate command directing the first proxy agent of the first LAAG to forward the proxy agent write invalidate command to the second proxy agent of the second LAAG for distribution of a second write invalidate command to all of the second AMF devices of the second LAAG, each second write invalidate command directing a respective second AMF device of the second LAAG to locally invalidate the set of storage blocks identified by the write update; receiving, in a first receive operation, a first write invalidate acknowledgement from all of the first AMF devices of the first LAAG, each first write invalidate acknowledgement indicating that a respective first AMF device of the first LAAG has successfully locally invalidated the set of storage blocks identified by the write update; receiving, in a second receive operation, a proxy agent write invalidate acknowledgement from the first proxy agent of the first LAAG, the proxy agent write invalidate acknowledgement indicating that all of the second AMF devices of the second LAAG have acknowledged successful local invalidation of the set of storage blocks identified by the write update; and sending, upon completion of the first and second receive operations, a write update acknowledgement to the host server. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification