IP Library › Granted Patent US 11,316,766
Granted Patent B2
US 11,316,766 · App. 16/992,660 · Granted Apr 26, 2022

Robust suspension and resumption of desktop virtualization

Inventor: Shashidhar Ramareddy (Bangalore, IN)
Assignee: Citrix Systems, Inc.
H04L43/0811G06F9/4418G06F9/452H04L43/10
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,316,766
App. No.
16/992,660
Filed
Aug 13, 2020
Granted
Apr 26, 2022
Kind
B2
Art Unit
2454
USPC
709/203
Abstract

A method for suspending and resuming a connection for desktop virtualization between two computing devices. In response to a client computing device shutting down, suspending, hibernating, or losing network connectivity during virtualization, the server computing device may itself shut down, suspend, or hibernate, or may pause or suspend the operation of one or more applications currently hosted by the server computing device. The server may detect that connectivity has been restored and resume operation of hosted applications. Alternatively, the client may transmit a command to the server indicating that the client is ready to resume virtualization. The client may also be configured to transmit a command that may cause the server to resume a powered-on state after the server was shut down or in a state of hibernation.

Claims (34)

1. A method, comprising:

establishing a session hosted by a computing device via a network connection, the session enables a client device to access one or more applications hosted by the computing device;

suspending, by the computing device, operation of the one or more applications in response to a loss of the network connection;

determining, by the computing device, that the network connection has been re-established based on receipt, from the client device, of a ping indicative of network connectivity being restored; and

resuming, by the computing device, the operation of the one or more applications in response to re-establishment of the network connection.

2. The method of claim 1 , wherein the establishing the session comprises determining that the client device is authorized to access the one or more applications hosted by the computing device.

3. The method of claim 1 , wherein the client device accesses, via the network connection, the one or more applications hosted by the computing device based on input from the client device.

4. The method of claim 1 , wherein the determining that the network connection has been lost comprises determining, by the computing device, that an interval of time has elapsed without receipt of data from the client device.

5. The method of claim 1 , wherein the determining that the network connection has been lost comprises determining, by the computing device, that a buffer of the computing device for transmission of data to the client device is full.

6. The method of claim 1 , wherein the suspending operation of the one or more applications comprises causing the computing device to operate in system sleep or suspend mode.

7. The method of claim 1 , wherein the determining that the network connection has been re-established comprises receiving data from the client device subsequent to the determining that the network connection has been lost.

8. The method of claim 1 , wherein the ping received from the client device comprises information indicating that the client device has been restored to full power.

9. The method of claim 1 , wherein the ping received from the client device comprises information indicating that a display of the client device is active and ready to receive visual content.

10. An apparatus comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the apparatus to:

in response to receipt of a connection request comprising credentials associated with a user of a first client device from a second client device, determine, by the apparatus, that suspension of operation of one or more applications corresponds to a user of the second client device; and

resume, by the apparatus, the operation of the one or more applications in response to determining that the suspension of the operation of the one or more applications corresponds to the user of the second client device, wherein the resumption of the operation of the one or more applications comprises transmission of a visual representation associated with the one or more applications to the second client device.

11. The apparatus of claim 10 , wherein the suspension of the operation of the one or more applications is associated with cached data corresponding to the one or more applications.

12. The apparatus of claim 11 , wherein resuming the operation of the one or more applications comprises retrieving the cached data.

13. A computing device comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the computing device to:

establish a session hosted by the computing device via a network connection, wherein the session enables a client device to access one or more applications hosted by the computing device;

suspend operation of the one or more applications in response to a loss of the network connection;

determine that the network connection has been re-established based on receipt, from the client device, of a ping indicative of network connectivity being restored; and

resume the operation of the one or more applications in response to re-establishment of the network connection.

14. The computing device of claim 13 , wherein establishing the session comprises determining that the client device is authorized to access the one or more applications hosted by the computing device.

15. The computing device of claim 13 , wherein determining that the network connection has been lost comprises determining that an interval of time has elapsed without receipt of data from the client device.

16. The computing device of claim 13 , wherein determining that the network connection has been lost comprises determining that a buffer of the computing device for transmission of data to the client device is full.

17. The computing device of claim 13 , wherein suspending operation of the one or more applications comprises causing the computing device to operate in system sleep or suspend mode.

18. The computing device of claim 13 , wherein determining that the network connection has been re-established comprises receiving data from the client device subsequent to the determining that the network connection has been lost.

19. The computing device of claim 13 , wherein the ping received from the client device comprises information indicating that the client device has been restored to full power.

20. The computing device of claim 13 , wherein the ping received from the client device comprises information indicating that a display of the client device is active and ready to receive visual content.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2022
From: RAMAREDDY, SHASHIDHAR
To: CITRIX SYSTEMS, INC.
Reel/Frame 059031/0890 →
Continuity (2)
Continuation 15076805 · Mar 22, 2016
Related Publication 20200374207A1 · Nov 26, 2020