Electronic system with memory control mechanism and method of operation thereof
US-2015363312-A1 · Dec 17, 2015 · US
US11468091B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11468091-B2 |
| Application number | US-202017023525-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 17, 2020 |
| Priority date | Sep 17, 2020 |
| Publication date | Oct 11, 2022 |
| Grant date | Oct 11, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Maintaining consistency for asynchronous replication of LUNs of a local storage system to corresponding LUNs of a remote storage system includes copying application data written to LUNs to cache slots, copying metadata of LUNs to cache slots, associating a first sequence number to all metadata modifications and all application data writes that are begun after a first time and before a second time, associating a second sequence number, different from the first sequence number, to all metadata modifications and all application data writes that are begun after the second time, and, after completion of all metadata modifications and all application data writes associated with the first sequence number, initiating transfer to the remote storage system of all metadata modifications and all application data writes associated with the first sequence number. Each cache slot may include a field that indicates a corresponding sequence number.
Opening claim text (preview).
What is claimed is: 1. A method of maintaining consistency for asynchronous replication of logical devices (LUNs) of a local storage system to corresponding LUNs of a remote storage system, comprising: copying application data written to the LUNs of the local storage system to corresponding cache slots; copying metadata of the LUNs of the local storage system to corresponding cache slots of the local storage system in response to modifying the metadata of the LUNs; associating a first sequence number to all metadata modifications and all application data writes for any of the LUNs of the local storage system that are begun after a first time and before a second time; associating a second sequence number, different from the first sequence number, to all metadata modifications and all application data writes for any of the LUNs of the local storage system that are begun after the second time; and after completion of all metadata modifications and all application data writes associated with the first sequence number, initiating transfer to the remote storage system of all metadata modifications and all application data writes associated with the first sequence number. 2. A method, according to claim 1 , wherein metadata for a particular one of the LUNs of the local storage system that is modified after the first time and before the second time overwrites data in the cache for previously modified metadata for the particular one of the LUNs that was modified after the first time and before the second time. 3. A method, according to claim 1 , wherein the metadata modifications and the application data writes associated with the first sequence number are stored at the remote storage system in response to receiving a commit message from the local storage system. 4. A method, according to claim 1 , wherein the local storage system uses a first list of pointers to the cache slots for application data and metadata associated with the first sequence number and uses a second list of pointers to the cache slots for application data and metadata associated with the second sequence number. 5. A method, according to claim 1 , wherein each cache slot includes a field that indicates a corresponding sequence number. 6. A method, according to claim 1 , wherein a new cache slot is allocated in response to a modification of metadata for a particular one of the LUNs of the local storage system after the first time and before the second time. 7. A method, according to claim 6 , wherein the new cache slot is allocated only if the modification is a first modification for the metadata for the particular one of the LUNs after the first time and before the second time. 8. A method, according to claim 1 , wherein the local storage system and the remote storage system store virtual volumes that are accessed by virtual machines. 9. A method, according to claim 1 , wherein a particular one of the LUNs of the remote storage system is determined to be consistent only if all of the application data and all of the metadata corresponding to a particular sequence number have been committed at the remote storage system. 10. A method, according to claim 1 , wherein all metadata modifications and all application data writes for any of the LUNs of the local storage system that are begun after the second time are stored in different cache slots than any metadata modifications and application data writes for any of the LUNs of the local storage system that are begun before the second time. 11. A non-transitory computer readable medium containing software that maintains consistency for asynchronous replication of logical devices (LUNs) of a local storage system to corresponding LUNs of a remote storage system, the software comprising: executable code that copies application data written to the LUNs of the local storage system to corresponding cache slots; executable code that copies metadata of the LUNs of the local storage system to corresponding cache slots of the local storage system in response to modifying the metadata of the LUNs; executable code that associates a first sequence number to all metadata modifications and all application data writes for any of the LUNs of the local storage system that are begun after a first time and before a second time; executable code that associates a second sequence number, different from the first sequence number, to all metadata modifications and all application data writes for any of the LUNs of the local storage system that are begun after the second time; and executable code that initiates transfer to the remote storage system of all metadata modifications and all application data writes associated with the first sequence number after completion of all metadata modifications and all application data writes associated with the first sequence number. 12. A non-transitory computer readable medium, according to claim 11 , wherein metadata for a particular one of the LUNs of the local storage system that is modified after the first time and before the second time overwrites data in the cache for previously modified metadata for the particular one of the LUNs that was modified after the first time and before the second time. 13. A non-transitory computer readable medium, according to claim 11 , wherein the metadata modifications and the application data writes associated with the first sequence number are stored at the remote storage system in response to receiving a commit message from the local storage system. 14. A non-transitory computer readable medium, according to claim 11 , wherein the local storage system uses a first list of pointers to the cache slots for application data and metadata associated with the first sequence number and uses a second list of pointers to the cache slots for application data and metadata associated with the second sequence number. 15. A non-transitory computer readable medium, according to claim 11 , wherein each cache slot includes a field that indicates a corresponding sequence number. 16. A non-transitory computer readable medium, according to claim 11 , wherein a new cache slot is allocated in response to a modification of metadata for a particular one of the LUNs of the local storage system after the first time and before the second time. 17. A non-transitory computer readable medium, according to claim 16 , wherein the new cache slot is allocated only if the modification is a first modification for the metadata for the particular one of the LUNs after the first time and before the second time. 18. A non-transitory computer readable medium, according to claim 11 , wherein the local storage system and the remote storage system store virtual volumes that are accessed by virtual machines. 19. A non-transitory computer readable medium, according to claim 11 , wherein a particular one of the LUNs of the remote storage system is determined to be consistent only if all of the application data and all of the metadata corresponding to a particular sequence number have been committed at the remote storage system. 20. A non-transitory computer readable medium, according to claim 11 , wherein all metadata modifications and all application data writes for any of the LUNs of the local storage system that are begun after the second time are stored in different cache slots than any metadata modifications and application data writes for any of the LUNs of the local storage system that are begun before the second time.
Networked environment · CPC title
Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches · CPC title
Allocation or management of cache space · CPC title
Reliability improvement, data loss prevention, degraded operation etc · CPC title
In storage network, e.g. network attached cache · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.