Methods and systems for a remote desktop session utilizing HTTP header
First Claim
1. A method for a remote desktop session between a web browser of a client device and a remote machine through a web server, utilizing hypertext transfer protocol (HTTP) headers for remote desktop session drawing, the method comprising:
- receiving, at the web server, a request from the web browser of the client device, the request being either a long polling drawing request or an input request, where an input request is a user input command and the long polling drawing request is a request to update an image of a remote desktop;
handling, at the web server, the request, where a long polling drawing request is handled as an asynchronous request and an input request is handled as a synchronous request;
receiving, at the web server, a remote desktop drawing command from the remote machine using a remote desktop display protocol, wherein the remote desktop drawing command is based on the image of a remote desktop of the remote machine;
translating, at the web server, the remote desktop drawing command into a display image and drawing coordinates for the display image;
placing, at the web server, the drawing coordinates into an HTTP response header; and
in response to the request, providing the display image and the drawing coordinates together to the web browser in a single HTTP response, for drawing the display image of the remote desktop at the web browser, wherein the single HTTP response comprises the HTTP response header,wherein (i) the remote desktop display protocol is a push protocol, and (ii) HTTP is a pull protocol, and (iii) the web browser comprises a windows web browser.
16 Assignments
0 Petitions
Accused Products
Abstract
Examples of methods, systems, apparatus, and machine-readable storage media are provided to facilitate access and control of a remote desktop of a remote machine by a web browser of a client device through a web server without installing proprietary plug-ins or protocols on the client device. A web server may translate user input requests from a web browser into input calls compatible with a remote desktop display protocol. The web server may receive remote desktop drawing commands from the remote machine and translate the remote desktop drawing commands into web browser drawing updates compatible with the web browser. A web server may communicate with the web browser and the remote machine via HTTP and a remote desktop display protocol, respectively.
89 Citations
35 Claims
-
1. A method for a remote desktop session between a web browser of a client device and a remote machine through a web server, utilizing hypertext transfer protocol (HTTP) headers for remote desktop session drawing, the method comprising:
-
receiving, at the web server, a request from the web browser of the client device, the request being either a long polling drawing request or an input request, where an input request is a user input command and the long polling drawing request is a request to update an image of a remote desktop; handling, at the web server, the request, where a long polling drawing request is handled as an asynchronous request and an input request is handled as a synchronous request; receiving, at the web server, a remote desktop drawing command from the remote machine using a remote desktop display protocol, wherein the remote desktop drawing command is based on the image of a remote desktop of the remote machine; translating, at the web server, the remote desktop drawing command into a display image and drawing coordinates for the display image; placing, at the web server, the drawing coordinates into an HTTP response header; and in response to the request, providing the display image and the drawing coordinates together to the web browser in a single HTTP response, for drawing the display image of the remote desktop at the web browser, wherein the single HTTP response comprises the HTTP response header, wherein (i) the remote desktop display protocol is a push protocol, and (ii) HTTP is a pull protocol, and (iii) the web browser comprises a windows web browser. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for a remote desktop session between a web browser of a client device and a remote machine through a web server, utilizing asynchronous handling of requests to reduce traffic to the client device, the method comprising:
-
receiving, at the web server using HTTP, a request from the web browser of the client device, the request being either a long polling drawing request or an input request; handling, at the web server, the request, where a long polling drawing request is handled as an asynchronous request and an input request is handled as a synchronous request; receiving, at the web server, a remote desktop drawing command from the remote machine; translating, at the web server, the remote desktop drawing command into a web browser drawing update, wherein the remote desktop drawing command is compatible with a push protocol, wherein the web browser drawing update is compatible with HTTP; and providing the web browser drawing update from the web server to the web browser of the client device, utilizing HTTP, as a response to the request from the web browser, wherein the web server comprises a windows web server and the web browser is a windows web browser. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A non-transitory machine-readable storage medium comprising instructions stored therein, the instructions executable by one or more processors to perform one or more operations, the instructions comprising:
-
code for causing one or more processors to receive a request from the web browser of the client device, the request being either a long polling drawing request or an input request, where an input request is a user input command and the long polling drawing request is a request to update an image of a remote desktop; code for causing one or more processors to handle, at the web server, the request, where a long polling drawing request is handled as an asynchronous request and an input request is handled as a synchronous request; code for causing one or more processors to receive a remote desktop drawing command from a module of a remote machine using a remote desktop display protocol, wherein the remote desktop drawing command is based on the image of a remote desktop of the remote machine; code for causing one or more processors to translate the remote desktop drawing command into a display image and drawing coordinates for the display image; code for causing one or more processors to place the drawing coordinates into a hypertext transfer protocol (HTTP) response header; and code for causing one or more processors to provide the display image and the drawing coordinates together to the web browser in a single HTTP response to the request, for drawing the display image of the remote desktop at the web browser, wherein the single HTTP response comprises the HTTP response header, wherein the remote desktop display protocol is a push protocol, and HTTP is a pull protocol. - View Dependent Claims (13, 14, 15, 22)
-
-
16. A non-transitory machine-readable storage medium comprising instructions stored therein, the instructions executable by one or more processors to perform one or more operations, the instructions comprising:
-
code for causing one or more processors to receive a request from the web browser of the client device using HTTP, the request being either a long polling drawing request or an input request, using a hypertext transfer protocol (HTTP); code for causing one or more processors to handle the request, where a long polling drawing request is handled as an asynchronous request and an input request is handled as a synchronous request; code for causing one or more processors to receive a remote desktop drawing command from a module of a remote machine; code for causing one or more processors to translate the remote desktop drawing command into a web browser drawing update, wherein the remote desktop drawing command is compatible with a push protocol, wherein the web browser drawing update is compatible with HTTP; and code for causing one or more processors to provide the web browser drawing update to the web browser of the client device, utilizing HTTP, as a response to the request from the web browser. - View Dependent Claims (17, 18, 19, 20, 21)
-
-
23. An apparatus for a remote desktop session between a web browser of a client device and a remote machine through a web server, utilizing hypertext transfer protocol (HTTP) headers of HTTP for remote desktop session drawing, the apparatus comprising:
-
means for receiving a request from the web browser of the client device, the request being either a long polling drawing request or an input request, where an input request is a user input command and the long polling drawing request is a request to update an image of a remote desktop; means for handling, at the web server, the request, where a long polling drawing request is handled as an asynchronous request and an input request is handled as a synchronous request; means for receiving a remote desktop drawing command from the remote machine using a remote desktop display protocol, wherein the remote desktop drawing command is based on the image of a remote desktop of the remote machine; means for translating the remote desktop drawing command into a display image and drawing coordinates for the display image; means for placing the drawing coordinates into an HTTP response header; and means for, in response to the request, providing the display image and the drawing coordinates together to the web browser in a single HTTP response, for drawing the display image of the remote desktop at the web browser, wherein the single HTTP response comprises the HTTP response header, wherein (i) the remote desktop display protocol is a push protocol, and (ii) HTTP is a pull protocol, and (iii) the web browser comprises a windows web browser. - View Dependent Claims (24, 25, 26, 27)
-
-
28. An apparatus for a remote desktop session between a web browser of a client device and a remote machine through a web server, utilizing asynchronous handling of requests to reduce traffic to the client device, the apparatus comprising:
-
means for receiving a request from the web browser of the client device using HTTP, the request being either a long polling drawing request or an input request; means for handling the request, where a long polling drawing request is handled as an asynchronous request and an input request is handled as a synchronous request; means for receiving a remote desktop drawing command from the remote machine; means for translating the remote desktop drawing command into a web browser drawing update, wherein the remote desktop drawing command is compatible with a push protocol, wherein the web browser drawing update is compatible with HTTP; and means for providing the web browser drawing update from the web server to the web browser of the client device, utilizing HTTP, as a response to the request from the web browser, wherein the web server comprises a windows web server and the web browser is a windows web browser. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35)
-
Specification