Survivable browsing in virtualized desktop environment when host connectivity is lost
First Claim
1. A method comprising:
- establishing a Virtual Desktop Interface (VDI) session between a client endpoint device and a Hosted Virtual Desktop (HVD) host;
establishing an endpoint browser service on the client endpoint device;
receiving from the HVD host at the client endpoint device a Hosted Virtual Desktop (HVD) display comprising an HVD browser window, the HVD browser window comprising one or more browser window elements, wherein web browsing is being performed at the HVD host;
receiving, by the endpoint browser service, first browser synchronization data from the HVD host;
detecting that the VDI session is inactive;
in response to detecting the inactive VDI session, the endpoint browser service launching an endpoint browser instance at the client endpoint device; and
utilizing, by the endpoint browser instance, the first browser synchronization data to display an endpoint browser window comprising the one or more browser window elements, thereby switching web browsing from the HVD host to the client endpoint device to provide seamless browsing.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are provided herein for providing survivable browsing when a client endpoint device loses contact with its host server. A Hosted Virtual Desktop (HVD) draws and communicates an HVD display image comprising a HVD browser window to the client endpoint device for display, via a virtual desktop interface (VDI) protocol. A browser (or browser extension) on the HVD works together with a browser server on the client endpoint device to synchronize browser data, and in some examples to render data such as streaming media in a client-provided frameless browser window in place of a placeholder in the HVD browser window. In response to the detection of an inactive VDI session, the browser server on the client endpoint device launches an endpoint browser instance to seamlessly switch browsing from the HVD browser window to an endpoint browser window, using the browser synchronization data.
-
Citations
25 Claims
-
1. A method comprising:
-
establishing a Virtual Desktop Interface (VDI) session between a client endpoint device and a Hosted Virtual Desktop (HVD) host; establishing an endpoint browser service on the client endpoint device; receiving from the HVD host at the client endpoint device a Hosted Virtual Desktop (HVD) display comprising an HVD browser window, the HVD browser window comprising one or more browser window elements, wherein web browsing is being performed at the HVD host; receiving, by the endpoint browser service, first browser synchronization data from the HVD host; detecting that the VDI session is inactive; in response to detecting the inactive VDI session, the endpoint browser service launching an endpoint browser instance at the client endpoint device; and utilizing, by the endpoint browser instance, the first browser synchronization data to display an endpoint browser window comprising the one or more browser window elements, thereby switching web browsing from the HVD host to the client endpoint device to provide seamless browsing. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method comprising:
-
establishing a host web browser on a Hosted Virtual Desktop (HVD) host; establishing a Virtual Desktop Interface (VDI) session between the HVD host and a client endpoint device; generating an HVD display comprising an HVD browser window, the HVD browser window comprising one or more host-provided browser window elements, wherein web browsing is being performed at the HVD host; sending the HVD display to the client endpoint device using the VDI session; sending first browser synchronization data to the client endpoint device; detecting that the VDI session is inactive, and in response to detecting the inactive VDI session, switching web browsing from the HVD host to the client endpoint device; detecting that the VDI session has been re-established; in response to detecting the re-establishment of the VDI session, receiving second browser synchronization data from the client endpoint device; utilizing, by the host web browser, the second browser synchronization data to generate a new HVD display comprising a new HVD browser window, the new HVD browser window comprising one or more host-provided browser window elements; and sending the new HVD display to the client endpoint device using the VDI session, thereby switching web browsing from the client endpoint device to the HVD host. - View Dependent Claims (18, 19, 20)
-
-
21. An apparatus comprising:
-
a display device; a web content server; and a processor configured to; establish a Virtual Desktop Interface (VDI) session with a Hosted Virtual Desktop (HVD) host; establish an endpoint browser service; receive from the HVD host a Hosted Virtual Desktop (HVD) display comprising an HVD browser window, the HVD browser window comprising one or more browser window elements, wherein web browsing is being performed at the HVD host; receive, by the endpoint browser service, first browser synchronization data from the HVD host; detect that the VDI session is inactive; in response to detecting the inactive VDI session, launch, by the endpoint browser service, an endpoint browser instance; and utilize, by the endpoint browser instance, the first browser synchronization data to display an endpoint browser window comprising the one or more browser window elements, thereby switching web browsing from the HVD host to the client endpoint device to provide seamless browsing. - View Dependent Claims (22, 23, 24)
-
-
25. One or more non-transitory computer readable media encoded with instructions that, when executed by a processor, cause the processor to:
-
establish a Virtual Desktop Interface (VDI) session between a client endpoint device and a Hosted Virtual Desktop (HVD) host; establish an endpoint browser service on the client endpoint device; receive from the HVD host at the client endpoint device a Hosted Virtual Desktop (HVD) display comprising an HVD browser window, the HVD browser window comprising one or more browser window elements, wherein web browsing is being performed at the HVD host; receive, by the endpoint browser service, first browser synchronization data from the HVD host; detect that the VDI session is inactive; in response to detecting the inactive VDI session, launch, by the endpoint browser service, an endpoint browser instance at the client endpoint device; and utilize, by the endpoint browser instance, the first browser synchronization data to display an endpoint browser window comprising the one or more browser window elements, thereby switching web browsing from the HVD host to the client endpoint device to provide seamless browsing.
-
Specification