SESSION RELIABILITY FOR A REDIRECTED USB DEVICE
First Claim
1. A method, implemented by a client-side proxy in a virtual desktop infrastructure environment, for enabling I/O requests pertaining to a device that is redirected to a server over a remote session to be resumed when the remote session has become disconnected and then restored, the method comprising:
- establishing a remote session with an agent on a server;
redirecting a device over the remote session;
detecting that the remote session has been disconnected;
in response to the remote session being disconnected, queueing one or more I/O requests received from the device; and
determining whether the remote session is restored within a specified amount of time such that;
when the remote session is restored within the specified amount of time, the proxy sends the queued I/O requests over the remote session to the agent; and
when the remote session is not restored within the specified amount of time, the proxy discards the queued I/O requests and causes the device to be connected to the client.
15 Assignments
0 Petitions
Accused Products
Abstract
Session reliability can be improved when a USB device is redirected over a remote session. If a remote session is disconnected while a USB device is redirected over the remote session, a server-side agent and a client-side proxy will both receive a session disconnection notification. In response to this session disconnection notification, the agent and the proxy can each queue any I/O requests pertaining to a USB device that was being redirected over the now-disconnected remote session and commence waiting for a specified period of time. If the disconnected remote session is restored within the specified period of time, the agent and the proxy can send the queued I/O requests over the remote session. Otherwise, the agent and proxy can cause the queued I/O requests to be completed with the proper error status or discarded and can take appropriate steps to remove the device from the server and connect the device to the client.
26 Citations
20 Claims
-
1. A method, implemented by a client-side proxy in a virtual desktop infrastructure environment, for enabling I/O requests pertaining to a device that is redirected to a server over a remote session to be resumed when the remote session has become disconnected and then restored, the method comprising:
-
establishing a remote session with an agent on a server; redirecting a device over the remote session; detecting that the remote session has been disconnected; in response to the remote session being disconnected, queueing one or more I/O requests received from the device; and determining whether the remote session is restored within a specified amount of time such that; when the remote session is restored within the specified amount of time, the proxy sends the queued I/O requests over the remote session to the agent; and when the remote session is not restored within the specified amount of time, the proxy discards the queued I/O requests and causes the device to be connected to the client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method, implemented by a server-side agent in a virtual desktop infrastructure environment, for enabling I/O requests pertaining to a device that is redirected to the server over a remote session to be resumed when the remote session has become disconnected and then restored, the method comprising:
-
establishing a remote session with a proxy on a client; redirecting a device over the remote session; detecting that the remote session has been disconnected; in response to the remote session being disconnected, queueing one or more I/O requests directed to the device; and determining whether the remote session is restored within a specified amount of time such that; when the remote session is restored within the specified amount of time, the agent sends the queued I/O requests over the remote session to the proxy; and when the remote session is not restored within the specified amount of time, the agent completes the I/O requests with an error status and initiates a device removal process to remove the redirected device from the server. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A virtual desktop infrastructure environment comprising:
-
a proxy that is configured to execute on a client; and an agent that is configured to execute on a server, the proxy and agent interacting to establish a remote session including to redirect a device to the server for use within the remote session; wherein, when the remote session is disconnected, the proxy and the agent are each configured to enable I/O requests pertaining to the device to be resumed after the remote session is restored by performing the following; queuing any I/O requests pertaining to the device that are received after the remote session is disconnected; waiting for a specified amount of time after the remote session is disconnected; and when the remote session is restored prior to the specified amount of time elapsing, sending the queued I/O requests over the restored remote session. - View Dependent Claims (18, 19, 20)
-
Specification