Remote browsing session management
First Claim
1. A computer-implemented method comprising:
- as implemented by one or more computing devices executing a server-side browser application configured to communicate with client-side browser applications,receiving a first encrypted communication from a client-side browser application executing on a client computing device, the first encrypted communication comprising an encrypted request for a network resource;
decrypting the first encrypted communication to recover the request for the network resource;
encrypting the request for the network resource to create a second encrypted communication, the second encrypted communication encrypted with a different key than the first encrypted communication;
retrieving the network resource from a content source using the second encrypted communication, wherein the network resource is configured to be rendered for display by performing a plurality of content rendering actions, and wherein the plurality of content rendering actions comprises at least one of;
parsing a markup document, generating a document object model, generating a structural representation of a display style, executing embedded script code, or generating a display layout;
determining, subsequent to receiving the request and based at least partly on a context of the request for the network resource, a position in a sequence of the plurality of content rendering actions at which to split performance of the plurality of content rendering actions into a first subset of the plurality of content rendering actions to be performed by the server-side browser application and a second subset of the plurality of content rendering actions to be performed by the client-side browser application, wherein the position in the sequence of the plurality of content rendering actions at which to split performance of the plurality of content rendering actions is different than a second position determined based at least partly on a second context of a second request; and
performing the first subset of a plurality of content rendering actions on the network resource to generate an initial processing result, wherein the server-side browser application and client-side browser application are both operable to perform the plurality of content rendering actions.
0 Assignments
0 Petitions
Accused Products
Abstract
A browsing process is directed to the generation and management of a browse session at a network computing provider. A client computing device transmits secure requests for network resources to a network computing provider. The network computing provider comprises one or more virtual network computing providers for processing secure communications between a client computing device and a content source. A virtual network computing provider handles the secure communications, decrypting and processing the communications while preventing third parties from accessing the unencrypted communication data. The virtual network computing provider may determine a browse configuration identifying processing actions to perform on the request content. The virtual network computing provider may retrieve the requested content, perform a first set of processing actions to generate a processing result, and provide the processing result to the client computing device, which may perform a second set of processing actions, including display.
220 Citations
19 Claims
-
1. A computer-implemented method comprising:
as implemented by one or more computing devices executing a server-side browser application configured to communicate with client-side browser applications, receiving a first encrypted communication from a client-side browser application executing on a client computing device, the first encrypted communication comprising an encrypted request for a network resource; decrypting the first encrypted communication to recover the request for the network resource; encrypting the request for the network resource to create a second encrypted communication, the second encrypted communication encrypted with a different key than the first encrypted communication; retrieving the network resource from a content source using the second encrypted communication, wherein the network resource is configured to be rendered for display by performing a plurality of content rendering actions, and wherein the plurality of content rendering actions comprises at least one of;
parsing a markup document, generating a document object model, generating a structural representation of a display style, executing embedded script code, or generating a display layout;determining, subsequent to receiving the request and based at least partly on a context of the request for the network resource, a position in a sequence of the plurality of content rendering actions at which to split performance of the plurality of content rendering actions into a first subset of the plurality of content rendering actions to be performed by the server-side browser application and a second subset of the plurality of content rendering actions to be performed by the client-side browser application, wherein the position in the sequence of the plurality of content rendering actions at which to split performance of the plurality of content rendering actions is different than a second position determined based at least partly on a second context of a second request; and performing the first subset of a plurality of content rendering actions on the network resource to generate an initial processing result, wherein the server-side browser application and client-side browser application are both operable to perform the plurality of content rendering actions. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
8. A system comprising:
-
a computer-readable memory storing executable instructions; and one or more computer processors in communication with the computer-readable memory, the one or more computer processors programmed by the executable instructions to execute a server-side browser application configured to at least; receive a first encrypted network resource request from a client-side browser application executing on a client computing device, the first encrypted network resource request comprising a request for a network resource hosted by a remote content source; decrypt the first encrypted network resource request using a first decryption key to obtain the request for the network resource, wherein the first decryption key corresponds to a first encryption key used to encrypt the first encrypted network resource request; generate a second encrypted network resource request using a second encryption key different than the first encryption key; obtain the network resource from the remote content source using the second encrypted network resource request, wherein the network resource is configured to be rendered for display using a plurality of content rendering actions, and wherein the plurality of content rendering actions comprises at least one of;
parsing a markup document, generating a document object model, generating a structural representation of a display style, executing embedded script code, or generating a display layout;determine, subsequent to receiving the request and based at least partly on a context of the request for the network resource, a position in a sequence of the plurality of content rendering actions at which to split performance of the plurality of content rendering actions into a first subset of the plurality of content rendering actions to be performed by the server-side browser application and a second subset of the plurality of content rendering actions to be performed by the client-side browser application, wherein the position in the sequence of the plurality of content rendering actions at which to split performance of the plurality of content rendering actions is different than a second position determined based at least partly on a second context of a second request; and perform the first subset of the plurality of content rendering actions on the network resource to generate an initial processing result, wherein the server-side browser application and client-side browser application are both operable to perform the plurality of content rendering actions. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. Non-transitory computer storage having stored thereon an executable server-side browser application configured to execute a process on a server system, the process comprising:
-
receiving a first encrypted communication from a client-side browser application executing remotely from the server system, wherein the first encrypted communication comprises a request for a network resource hosted by a content provider separate from the server system; decrypting the first encrypted communication to recover the request for the network resource; encrypting the request for the network resource to create a second encrypted communication, the second encrypted communication encrypted with a different key than the first encrypted communication; transmitting the second encrypted communication, comprising the request for the network resource, to the content provider to obtain the network resource on behalf of the client-side browser application, wherein the network resource is configured to be rendered for display using a plurality of content rendering actions, and wherein the plurality of content rendering actions comprises at least one of;
parsing a markup document, generating a document object model, generating a structural representation of a display style, executing embedded script code, or generating a display layout;determining, subsequent to receiving the request and based at least partly on a context of the request for the network resource, a position in a sequence of the plurality of content rendering actions at which to split performance of the plurality of content rendering actions into a first subset of the plurality of content rendering actions to be performed by the server-side browser application and a second subset of the plurality of content rendering actions to be performed by the client-side browser application, wherein the position in the sequence of the plurality of content rendering actions at which to split performance of the plurality of content rendering actions is different than a second position determined based at least partly on a second context of a second request; and performing the first subset of the plurality of content rendering actions on the network resource to generate an initial processing result, wherein the server-side browser application and client-side browser application are both operable to perform the plurality of content rendering actions. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification