Managing a distributed cache for virtual machines
AssigneeRed Hat Israel, Ltd.
InventorsRoni Luxenberg, Uri Lublin
Life of this patent
Estimating the term…
Abstract
Clients may display desktop environments to provide users with access to virtual machines (VMs). Graphical objects that displayed in the desktop environments are stored in caches in multiple clients. A host that hosts a VM may track or manage the graphical objects that are in the caches of the multiple clients. The host may instruct a first client to obtain a graphical object from a second client that is near the first client, instead of providing the graphical object to the first client directly.
Claims20
A method comprising:
- receiving, by a processing device of a first service, a first desktop image data, wherein the first desktop image data uses a first graphical object;
- obtaining a first object identifier for the first graphical object;
- determining whether the first object identifier is in a cache list;
- when the first object identifier is in the cache list:
- identifying a first device identifier associated with the first graphical object;
- and
- providing, by the processing device of the first service, the first object identifier and one or more of the first desktop image data or the first device identifier to a first client device;
- and
- when the first object identifier is not in the list:
- obtaining a second device identifier for the first client device;
- storing data indicative of an association between the first object identifier with the second device identifier in the cache list;
- and
- providing, by the processing device of the first service, the first desktop image data and the first graphical object to the first client device.
A system comprising:
- a memory to store a cache list;
- a processing device coupled to the memory, the processing device to receive a first desktop image data, wherein the first desktop image data uses a first graphical object;
- obtain a first object identifier for the first graphical object;
- determine whether the first object identifier is in the cache list;
- when the first object identifier is in the cache list:
- identify a first device identifier associated with the first graphical object;
- and
- provide the first object identifier and one or more of the first desktop image data or the first device identifier to a first client device;
- and
- when the first object identifier is not in the list:
- obtain a second device identifier for the first client device;
- store data indicative of an association between the first object identifier with the second device identifier in the cache list;
- and
- provide the first desktop image data and the first graphical object to the first client device.
A non-transitory computer readable storage medium having instructions that, when executed by a processing device, cause the processing device to perform operations comprising:
- receiving, by the processing device, a first desktop image data, wherein the first desktop image data uses a first graphical object;
- obtaining a first object identifier for the first graphical object;
- determining whether the first object identifier is in a cache list;
- when the first object identifier is in the cache list:
- identifying a first device identifier associated with the first graphical object;
- and
- providing, by the processing device, the first object identifier and one or more of the first desktop image data or the first device identifier to a first client device;
- and
- when the first object identifier is not in the list:
- obtaining a second device identifier for the first client device;
- storing data indicative of an association between the first object identifier with the second device identifier in the cache list;
- and
- providing, by the processing device, the first desktop image data and the first graphical object to the first client device.
Dependencies are inferred from the claim text.