IP Library Granted Patent US 11,178,227
Granted Patent B1
US 11,178,227 · App. 17/097,479 · Granted Nov 16, 2021

Efficient resynchronization for stale components of geographically distributed computing systems

Inventors: Enning Xiang (San Jose, CA); Pratik Shridhar Desai (San Jose, CA); Eric Shannon Knauft (San Francisco, CA); Yizhou Luo (New York, NY); Pascal Renauld (Palo Alto, CA); Yiqi Xu (Mountain View, CA)
Assignee: VMware, Inc.
H04L67/1097G06F9/45558G06F9/5083H04L47/82H04L67/1095G06F2009/45583G06F2009/45595
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 11,178,227
App. No.
17/097,479
Granted
Nov 16, 2021
Kind
B1
Abstract

Described herein are methods and systems for the efficient resyncing of stale components of a distributed-computing system. One method includes determining that a first base component at a remote site will go offline. After determining that the first base component at the remote site will go offline, a first delta component is created at the remote site. While the first base component at the remote site is offline, data corresponding to the offline component is collected at the first delta component at the remote site. After collecting data at the first delta component, the collected data is sent to a local site. The method includes determining that the first base component has come back online. In response to determining that the first base component has come back online, the collected data is sent from the first delta component to the first base component via an intra-site network.

Claims (36)

1. A method for improving performance within a distributed computing system, the method comprising:

in response to determining that a first remote component, located at a remote site, will be inaccessible during a subsequent temporal period, causing allocation of a second remote component, at the remote site, corresponding to the first component, wherein the second remote component is accessible during the subsequent temporal period;

while the first remote component is inaccessible during the subsequent temporal period:

causing collection, at the second remote component, of data corresponding to the first remote component; and

storing, at a local site, the data collected by the second remote component via an inter-site network that communicatively couples the remote site and the local site; and

in response to determining that the first remote component has again become accessible, causing the second remote component to provide the collected data, corresponding to the first remote component, to the first remote component via an intra-site network of the remote site, wherein a proxy owner component of the remote site coordinates providing the collected data from the second remote component to the first remote component via the intra-site network.

2. The method of claim 1 , wherein the second remote component provides the collected data to the first remote component via the intra-site network of the remote site after a third remote component, located at the remote site, has become inaccessible, wherein the third remote component is a mirrored component of the first remote component.

3. The method of claim 1 , wherein the first remote component at the remote site becoming inaccessible corresponds to the first remote component at the remote site undergoing maintenance service.

4. The method of claim 1 , further comprising:

after the second remote component has provided the collected data to the first remote component via the intra-site network of the remote site, deallocating the second remote component at the remote site.

5. The method of claim 1 , wherein the data corresponding to the first remote component is collected at the second remote component via the intra-site network of the remote site.

6. The method of claim 1 , wherein the remote site is physically located at a first geographical location and the local site is physically located at a second geographic location that is separated from the first geographical location.

7. A distributed computing system for storing data, the system comprising:

one or more processors; and

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

in response to determining that a first remote component, located at a remote site, will be inaccessible during a subsequent temporal period, causing allocation of a second remote component, at the remote site, corresponding to the first component, wherein the second remote component is accessible during the subsequent temporal period;

while the first remote component is inaccessible during the subsequent temporal period:

causing collection, at the second remote component, of data corresponding to the first remote component; and

storing, at a local site, the data collected by the second remote component via an inter-site network that communicatively couples the remote site and the local site; and

in response to determining that the first remote component has again become accessible, causing the second remote component to provide the collected data, corresponding to the first remote component, to the first remote component via an intra-site network of the remote site, wherein a proxy owner component of the remote site coordinates providing the collected data from the second remote component to the first remote component via the intra-site network.

8. The system of claim 7 , wherein the second remote component provides the collected data to the first remote component via the intra-site network of the remote site after a third remote component, located at the remote site, has become inaccessible, wherein the third remote component is a mirrored component of the first remote component.

9. The system of claim 7 , wherein the first remote component at the remote site becoming inaccessible corresponds to the first remote component at the remote site undergoing maintenance service.

10. The system of claim 7 , the operations further comprising: after the second remote component has provided the collected data to the first remote component via the intra-site network of the remote site, deallocating the second remote component at the remote site.

11. The system of claim 7 , wherein the data corresponding to the first remote component is collected at the second remote component via the intra-site network of the remote site.

12. The system of claim 7 , wherein the remote site is physically located at a first geographical location and the local site is physically located at a second geographic location that is separated from the first geographical location.

13. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by a distributed computing system comprising one or more processors and memory, the one or more programs including instructions for performing operations comprising:

in response to determining that a first remote component, located at a remote site, will be inaccessible during a subsequent temporal period, causing allocation of a second remote component, at the remote site, corresponding to the first component, wherein the second remote component is accessible during the subsequent temporal period;

while the first remote component is inaccessible during the subsequent temporal period:

causing collection, at the second remote component, of data corresponding to the first remote component; and

storing, at a local site, the data collected by the second remote component via an inter-site network that communicatively couples the remote site and the local site; and

in response to determining that the first remote component has again become accessible, causing the second remote component to provide the collected data, corresponding to the first remote component, to the first remote component via an intra-site network of the remote site, wherein a proxy owner component of the remote site coordinates providing the collected data from the second remote component to the first remote component via the intra-site network.

14. The storage medium of claim 13 , wherein the second remote component provides the collected data to the first remote component via the intra-site network of the remote site after a third remote component, located at the remote site, has become inaccessible, wherein the third remote component is a mirrored component of the first remote component.

15. The storage medium of claim 13 , wherein the first remote component at the remote site becoming inaccessible corresponds to the first remote component at the remote site undergoing maintenance service.

16. The storage medium of claim 13 , the operations further comprising:

after the second remote component has provided the collected data to the first remote component via the intra-site network of the remote site, deallocating the second remote component at the remote site.

17. The storage medium of claim 13 , wherein the data corresponding to the first remote component is collected at the second remote component via the intra-site network of the remote site.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 11, 2021
From: XIANG, ENNING; DESAI, PRATIK SHRIDHAR; KNAUFT, ERIC SHANNON; LUO, YIZHOU; RENAULD, PASCAL; XU, YIQI
To: VMWARE, INC.
Reel/Frame 057149/0318 →