IP Library Granted Patent US 11,968,267
Granted Patent B2
US 11,968,267 · App. 17/457,474 · Granted Apr 23, 2024

Computing system providing cloud-based user profile management for virtual sessions and related methods

Inventors: Leo C Singleton, IV (Fort Lauderdale, FL); Avijit Gahtori (Fort Lauderdale, FL)
Assignee: Citrix Systems, Inc.
H04L67/141G06F9/5072H04L12/4641H04L67/01H04L67/1095H04L67/1097H04L67/306H04L67/52
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,968,267
App. No.
17/457,474
Filed
Dec 3, 2021
Granted
Apr 23, 2024
Kind
B2
Art Unit
2444
USPC
709/203
Abstract

A virtualization server may include a memory and a processor cooperating therewith to operate a virtual session controller configured to assign virtual sessions to a plurality of different client devices. Each virtual session may be running on a virtual machine from among a plurality of different virtual machines and having a respective user profile associated therewith stored at a cloud computing service, and the cloud computing service may be distributed over a plurality of different geographic locations and configured to store the user profiles and backups thereof at different geographic locations. The controller may further receive the user profiles from the cloud computing service and, as client devices are assigned virtual sessions on different virtual machines, roam the user profiles to the different virtual machines, and synchronize local profile changes during the virtual sessions on different virtual machines back to the user profiles stored at the cloud computing service.

Claims (35)

1. A virtualization server comprising:

a memory and a processor cooperating with the memory to operate a virtual session controller configured to

assign virtual sessions to a plurality of different client devices, each virtual session running on a virtual machine from among a plurality of different virtual machines and having a respective user profile associated therewith stored at a cloud computing service, the cloud computing service being distributed over a plurality of different geographic locations and configured to store the user profiles and backups thereof at different geographic locations,

receive the user profiles from the cloud computing service and, as client devices are assigned virtual sessions on different virtual machines, roam the user profiles to the different virtual machines,

synchronize only local profile changes during the virtual sessions on different virtual machines back to the user profiles stored at the cloud computing service, and without copying the entirety of the local roamed user profiles back to the user profiles stored at the cloud computing service,

provide unique access tokens associated with the user profiles to the cloud server, and

receive the user profiles from the cloud server responsive to the unique access tokens.

2. The virtualization server of claim 1 wherein the virtual session controller is remotely located from the client devices.

3. The virtualization server of claim 1 wherein the virtual session controller is on-premises with respect to the client devices.

4. The virtualization server of claim 1 wherein the cloud computing service stores the user profiles and backups thereof at the different geographic locations based upon locations of respective users.

5. The virtualization server of claim 1 wherein the cloud computing service stores the user profiles as binary data in a single entity in a database.

6. The virtualization server of claim 1 wherein the virtual sessions comprise at least one of virtual desktop sessions and virtual application sessions.

7. A method comprising:

operating a virtual session controller to

assign virtual sessions to a plurality of different client devices, each virtual session running on a virtual machine from among a plurality of different virtual machines and having a respective user profile associated therewith stored at a cloud computing service, the cloud computing service being distributed over a plurality of different geographic locations and configured to store the user profiles and backups thereof at different geographic locations,

receive the user profiles from the cloud computing service and, as client devices are assigned virtual sessions on different virtual machines, roam the user profiles to the different virtual machines, and

synchronize only local profile changes during the virtual sessions on different virtual machines back to the user profiles stored at the cloud computing service, and without copying the entirety of the local roamed user profiles back to the user profiles stored at the cloud computing service,

provide unique access tokens associated with the user profiles to the cloud server, and

receive the user profiles from the cloud server responsive to the unique access tokens.

8. The method of claim 7 wherein the virtual session controller is remotely located from the client devices.

9. The method of claim 7 wherein the virtual session controller is on-premises with respect to the client devices.

10. The method of claim 7 wherein the cloud computing service stores the user profiles and backups thereof at different geographic locations based upon locations of respective users.

11. The method of claim 7 wherein the cloud computing service stores the user profiles as binary data in a single entity in a database.

12. The method of claim 7 wherein the virtual sessions comprise at least one of virtual desktop sessions and virtual application sessions.

13. A non-transitory computer-readable medium having computer-executable instructions for causing a processor to perform steps comprising:

operating a virtual session controller to

assign virtual sessions to a plurality of different client devices, each virtual session running on a virtual machine from among a plurality of different virtual machines and having a respective user profile associated therewith stored at a cloud computing service, the cloud computing service being distributed over a plurality of different geographic locations and configured to store the user profiles and backups thereof at different geographic locations,

receive the user profiles from the cloud computing service and, as client devices are assigned virtual sessions on different virtual machines, roam the user profiles to the different virtual machines,

synchronize only local profile changes during the virtual sessions on different virtual machines back to the user profiles stored at the cloud computing service, and without copying the entirety of the local roamed user profiles back to the user profiles stored at the cloud computing service,

provide unique access tokens associated with the user profiles to the cloud server, and

receive the user profiles from the cloud server responsive to the unique access tokens.

14. The non-transitory computer-readable medium of claim 13 wherein the virtual session controller is remotely located from the client devices.

15. The non-transitory computer-readable medium of claim 13 wherein the virtual session controller is on-premises with respect to the client devices.

16. The non-transitory computer-readable medium of claim 13 wherein the cloud computing service stores the user profiles and backups thereof at different geographic locations based upon locations of respective users.

17. The non-transitory computer-readable medium of claim 13 wherein the cloud computing service stores the user profiles as binary data in a single entity in a database.