Scaling proxy server sending to the client a graphical user interface for establishing object encoding preferences after receiving the client's request for the object
First Claim
1. A system for retrieving an object over a computer network, said system comprising a network client and a remote scaling server coupled between the network client and the computer network, wherein:
- the network client includes a browser for rendering an object and a graphical user interface enabling a user to selectively establish an encoding preference for the object to be rendered, the graphical user interface being automatically provided to the network client in response to a request for the object to be rendered and comprising a set of automatically executing instructions for requesting an encoding preference from a user, receiving a response from the user, and transmitting the user response to the remote scaling server; and
the remote scaling server includes a remote proxy and an encode service provider, wherein said remote scaling server is configured to retrieve an object from the computer network using said remote proxy, obtain a user-established encoding preference from the network client through the graphical user interface, encode the object using said encode service provider in accordance with the received user-established encoding preference, and transmit the encoded object to said network client using said remote proxy.
1 Assignment
0 Petitions
Accused Products
Abstract
A system for enhancing data access over a communications link is disclosed. In accordance with a particular embodiment, a system for retrieving an object over a computer network includes a network client with a browser for rendering an object to a user and a user interface enabling the user to establish an encoding preference. A remote scaling server is coupled between the network client and the computer network, and includes a remote proxy and an encode service provider. The remote scaling server is configured to request a user-specified encoding preference from the network client, retrieve an object from the computer network using the remote proxy, encode the object using the encode service provider in accordance with the requested user-specified encoding preference, and transmit the encoded object to the network client using the remote proxy. The disclosed system thus enables users to dynamically influence the trade-off between quality of content and download speed.
-
Citations
33 Claims
-
1. A system for retrieving an object over a computer network, said system comprising a network client and a remote scaling server coupled between the network client and the computer network, wherein:
-
the network client includes a browser for rendering an object and a graphical user interface enabling a user to selectively establish an encoding preference for the object to be rendered, the graphical user interface being automatically provided to the network client in response to a request for the object to be rendered and comprising a set of automatically executing instructions for requesting an encoding preference from a user, receiving a response from the user, and transmitting the user response to the remote scaling server; and
the remote scaling server includes a remote proxy and an encode service provider, wherein said remote scaling server is configured to retrieve an object from the computer network using said remote proxy, obtain a user-established encoding preference from the network client through the graphical user interface, encode the object using said encode service provider in accordance with the received user-established encoding preference, and transmit the encoded object to said network client using said remote proxy. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
- 13. An apparatus for transferring an object to a client over a communications link, said apparatus comprising a server configured to receive an object request from the client, download a graphical user interface to the client in response to receiving the object request, retrieve an object from a data store coupled to the server, obtain a user-entered encoding preference from the client through the downloaded graphical user interface, selectively encode the object based on one or more predetermined selection criteria in accordance with the received user-entered encoding preference, and transmit the encoded object to the client, wherein the graphical user interface comprises a set of automatically executing instructions for requesting an encoding preference from a user of the client, receiving a response from the user, and transmitting the response back to the server.
-
21. A method for providing a client with an object to be rendered to a user, said method being implemented on a server coupled to the client by a communications link, the server being capable of accessing objects in a data store, said method comprising the steps of:
-
receiving an object request from the client;
downloading a graphical user interface to the client in response to receiving the object request, the graphical user interface comprising a set of automatically executing instructions for requesting a scaling preference from a user of the client, receiving a response from the user, and transmitting the user response to the server;
receiving a user-entered scaling preference from the graphical user interface;
retrieving the requested object from the data store;
scaling the retrieved object based on a predetermined selection criterion in accordance with the received user-entered scaling preference; and
transmitting the scaled object to the client. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29)
analyzing a request from the client to identify a requested version of an object and a current version of the object; and
transmitting the requested version of the object to the client as a differential between the current version and the requested version.
-
-
28. The method of claim 26, further comprising the step of generating one or more versions of an object in a background mode of the server, and storing the one or more versions in the memory.
-
29. The method of claim 21, wherein at least two of said steps of retrieving the requested object, scaling the retrieved object and transmitting the scaled object proceed concurrently in a stream-based manner.
-
30. A set of instructions resident on a storage medium for execution by a server, said set of instructions enabling the server to provide a client coupled thereto with an encoded version of an object for display to a user, said set of instructions comprising instructions for:
-
receiving an object request from the client;
downloading a graphical user interface to the client in response to receiving the object request, the graphical user interface comprising a set of automatically executing instructions for requesting a scaling preference from a user of the client, receiving a response from the user, and transmitting the user response to the server;
receiving a user-entered scaling preference from the graphical user interface;
retrieving the requested object;
scaling the retrieved object based on a predetermined selection criterion in accordance with the received user-entered scaling preference; and
transmitting the scaled object to the client. - View Dependent Claims (31, 32, 33)
-
Specification