IP Library Patent Application 17940853
Patent Application
App. No. 17/940,853

INSPECTION AND REPAIR OF OBJECT METADATA IN VIRTUAL STORAGE AREA NETWORKS

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 None
App. No.
17/940,853
Abstract

Systems and methods for inspection and repair of VSAN object metadata. A user-space indirection layer is maintained to map logical addresses of VSAN objects to physical memory addresses of their metadata. Commands may then be sent from the user space to distributed object manager (DOM) clients, with the physical addresses of metadata of objects to be inspected. DOM owners thus may bypass their own indirection layers to retrieve object metadata directly from received user commands. Retrieved information is then used to reconstruct and repair object metadata. Repaired metadata may be written back to the VSAN by transmitting a write request containing the physical address at which the repaired metadata is to be written. DOM owners may be placed in a specified mode in which received I/O instructions are ignored unless they are designated as being for metadata repair purposes, such as by including a physical address.

Claims (53)

1 . A method of inspecting metadata of virtual storage area network (VSAN) objects, the method comprising:

transmitting, to a distributed object manager (DOM) client of the VSAN, a request to retrieve metadata of a DOM object, the request including a physical memory address of the metadata of the DOM object;

receiving, from the DOM client and responsive to the transmitted request, the retrieved metadata corresponding to the physical memory address;

determining, based at least in part on the retrieved metadata corresponding to the physical memory address, a data structure of the metadata of the DOM object; and

storing the determined data structure in a memory.

2 . The method of claim 1 , further comprising:

determining an inconsistency in the determined data structure;

revising a portion of the determined data structure to resolve the inconsistency; and

transmitting, to the DOM client, a request to write the revised portion of the determined data structure to the metadata of the DOM object.

3 . The method of claim 2 , further comprising:

prior to the transmitting the request to write the revised portion of the determined data structure to the metadata of the DOM object, transmitting, to the DOM client, a request to disregard data transfer requests including a logical memory address of a DOM object; and

after the transmitting the request to write the revised portion of the determined data structure to the metadata of the DOM object, transmitting, to the DOM client, a request to carry out the data transfer requests including a logical memory address of a DOM object.

4 . The method of claim 2 , wherein the request to write includes a physical memory address of the metadata of the DOM object, the request to write being a request to write the revised portion of the determined data structure to the metadata of the DOM object at the physical memory address.

5 . The method of claim 1 , further comprising:

prior to the transmitting the request to retrieve metadata of the DOM object, transmitting, to the DOM client, a request to disregard data transfer requests other than the request to retrieve metadata; and

after the transmitting the request to retrieve metadata of the DOM object, transmitting, to the DOM client, a request to carry out the data transfer requests other than the request to retrieve metadata.

6 . The method of claim 1 , wherein the transmitting further comprises transmitting the request from an application program configured as a client of the VSAN.

7 . The method of claim 1 , wherein the memory is a memory of the application program.

8 . The method of claim 1 , wherein the transmitting further comprises transmitting the request from a user space.

9 . A non-transitory computer-readable storage medium storing instructions configured to be executed by one or more processors of a computing device, to cause the computing device to carry out steps that include:

transmitting, to a distributed object manager (DOM) client of the VSAN, a request to retrieve metadata of a DOM object, the request including a physical memory address of the metadata of the DOM object;

receiving, from the DOM client and responsive to the transmitted request, the retrieved metadata corresponding to the physical memory address;

determining, based at least in part on the retrieved metadata corresponding to the physical memory address, a data structure of the metadata of the DOM object; and

storing the determined data structure in a memory.

10 . The non-transitory computer-readable storage medium of claim 9 , wherein the instructions, when executed by the one or more processors of the computing device, further cause the computing device to carry out steps that include:

determining an inconsistency in the determined data structure;

revising a portion of the determined data structure to resolve the inconsistency; and

transmitting, to the DOM client, a request to write the revised portion of the determined data structure to the metadata of the DOM object.

11 . The non-transitory computer-readable storage medium of claim 10 , wherein the instructions, when executed by the one or more processors of the computing device, further cause the computing device to carry out steps that include:

prior to the transmitting the request to write the revised portion of the determined data structure to the metadata of the DOM object, transmitting, to the DOM client, a request to disregard data transfer requests including a logical memory address of a DOM object; and

after the transmitting the request to write the revised portion of the determined data structure to the metadata of the DOM object, transmitting, to the DOM client, a request to carry out the data transfer requests including a logical memory address of a DOM object.

12 . The non-transitory computer-readable storage medium of claim 10 , wherein the request to write includes a physical memory address of the metadata of the DOM object, the request to write being a request to write the revised portion of the determined data structure to the metadata of the DOM object at the physical memory address.

13 . The non-transitory computer-readable storage medium of claim 9 , wherein the instructions, when executed by the one or more processors of the computing device, further cause the computing device to carry out steps that include:

prior to the transmitting the request to retrieve metadata of the DOM object, transmitting, to the DOM client, a request to disregard data transfer requests other than the request to retrieve metadata; and

after the transmitting the request to retrieve metadata of the DOM object, transmitting, to the DOM client, a request to carry out the data transfer requests other than the request to retrieve metadata.

14 . The non-transitory computer-readable storage medium of claim 9 , wherein the transmitting further comprises transmitting the request from an application program configured as a client of the VSAN.

15 . The non-transitory computer-readable storage medium of claim 9 , wherein the memory is a memory of the application program.

16 . The non-transitory computer-readable storage medium of claim 9 , wherein the transmitting further comprises transmitting the request from a user space.

17 . A computer system, comprising:

one or more processors; and

memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:

transmitting, to a distributed object manager (DOM) client of the VSAN, a request to retrieve metadata of a DOM object, the request including a physical memory address of the metadata of the DOM object;

receiving, from the DOM client and responsive to the transmitted request, the retrieved metadata corresponding to the physical memory address;

determining, based at least in part on the retrieved metadata corresponding to the physical memory address, a data structure of the metadata of the DOM object; and

storing the determined data structure in a memory.

18 . The computer system of claim 17 , wherein the one or more programs include further instructions for:

determining an inconsistency in the determined data structure;

revising a portion of the determined data structure to resolve the inconsistency; and

transmitting, to the DOM client, a request to write the revised portion of the determined data structure to the metadata of the DOM object.

19 . The computer system of claim 18 , wherein the request to write includes a physical memory address of the metadata of the DOM object, the request to write being a request to write the revised portion of the determined data structure to the metadata of the DOM object at the physical memory address.

20 . The computer system of claim 17 , wherein the one or more programs include further instructions for:

prior to the transmitting the request to retrieve metadata of the DOM object, transmitting, to the DOM client, a request to disregard data transfer requests other than the request to retrieve metadata; and

after the transmitting the request to retrieve metadata of the DOM object, transmitting, to the DOM client, a request to carry out the data transfer requests other than the request to retrieve metadata.

Assignments (2)
CHANGE OF NAME Recorded Feb 27, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 066692/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 8, 2022
From: LI, KEVIN RAYFENG; WANG, WENGUANG; LIU, QUANXING; RENAULD, PASCAL; PATIL, KIRAN
To: VMWARE, INC.
Reel/Frame 061031/0649 →