System and method for providing immediate visual response to user input at a client system connected to a computer system by a high-latency connection
First Claim
1. In a client-server system including a client node transmitting user-provided input to a server node having an application program executing thereon wherein the user-provided input elicits a response from the server node that is transmitted back to the client node for display, a method for reducing perceived response time to the user-provided input comprising the steps of:
- (a) receiving user input at the client node from an input device for input to the application program executing on the server node;
(b) transmitting the user input to the application program executing on the server node over a communication link;
(c) generating at the client node a prediction of the server response to the user input;
(d) displaying the generated prediction of the server response on a display screen at the client node;
(e) receiving a server response to the user input from the server node; and
(f) replacing the generated prediction of the server response displayed on the display screen with the server response received from the server node.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and an apparatus for reducing perceived visual response to user input at a client node are described. The client node remotely executes an application program on a server node wherein all execution of the application program occurs on the server node. The client node transmits user-provided input to the server node, and the user-provided input elicits a response from the server node that is transmitted back to the client node for display. The client node receives the user input to be transmitted to the server node. The client node can obtain the user input through a keyboard or a pointing device. In response to the user input, the client node produces a prediction of a server response to the user input. The client node then displays the prediction. The display of the prediction provides the client user with a faster visual response to the user input than could be obtained from the server node. Upon receiving the server response, the client node displays the server response, overwriting the prediction.
123 Citations
20 Claims
-
1. In a client-server system including a client node transmitting user-provided input to a server node having an application program executing thereon wherein the user-provided input elicits a response from the server node that is transmitted back to the client node for display, a method for reducing perceived response time to the user-provided input comprising the steps of:
-
(a) receiving user input at the client node from an input device for input to the application program executing on the server node;
(b) transmitting the user input to the application program executing on the server node over a communication link;
(c) generating at the client node a prediction of the server response to the user input;
(d) displaying the generated prediction of the server response on a display screen at the client node;
(e) receiving a server response to the user input from the server node; and
(f) replacing the generated prediction of the server response displayed on the display screen with the server response received from the server node. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
(g) receiving additional user input to be transmitted to the server node;
(h) generating a second prediction of the server response to the additional user input; and
(i) displaying the second prediction of the server response at the client node before receiving the server response to the first user input.
-
-
4. The method of claim 1 further comprising the step of receiving current input position information from the server node, and wherein step (c) comprises determining the prediction of the server response in response to the current input position information.
-
5. The method of claim 4 further comprising the step of providing font information for defining a visual characteristic of the prediction of the server response, and wherein step (c) further comprises determining the prediction of the server response in response to the font information.
-
6. The method of claim 1 further comprising the step of providing font information for defining a visual characteristic of the prediction of the server response, and wherein step (c) comprises determining the prediction of the server response in response to the font information.
-
7. The method of claim 6 further comprising the step of obtaining the font information from the server node.
-
8. The method of claim 6 wherein the step of providing the font information includes the step of obtaining default font information.
-
9. The method of claim 1 further comprising the step of receiving information about a screen object that is currently being manipulated by the client node;
- and executing a heuristic procedure responsive to the user input and the screen object information to generate the prediction of the server response.
-
10. In a client-server system including a client node transmitting user-provided input to a server node executing an application program wherein the user-provided input elicits a response from the server node that is transmitted back to the client node for display, a method for reducing perceived response time to the user-provided input comprising the steps of:
-
(a) receiving user input at the client node from an input device for subsequent transmission to the application program executing on a server node;
(b) generating at the client node in response to the user input a prediction of a server response to the user input by the server node;
(c) displaying at the client node the prediction generated by the client node; and
(d) replacing the generated prediction of the server node response displayed on the display screen with a server response received from the server node.
-
-
11. In a client-server system including a server node executing an application program according to user input supplied by a client node, wherein the user input elicits a response from the server node that is subsequently transmitted to the client node for display, a client node having reduced perceived response time to user input comprising:
-
an input device for providing user input to the client node for transmission to the application program executing on the server node;
a response generator in communication with the input device, the response generator generating at the client node and in response to the user input a prediction of a server response to the user input by the server node;
a display device, in communication with the response generator, for displaying the prediction generated by the client node before the client node displays the response by the server node;
a receiver receiving a server response to the user input from the server node; and
a replacement module replacing the generated prediction of the server node response displayed on the display screen with the server response received from the server node.
-
-
12. An apparatus comprising:
-
a server node executing an application program; and
a client node in communication with the server node, the client node including (a) an input device for receiving user input to be transmitted to the application program executing on the server node, (b) a response generator for generating, at the client node, a client response to the user input that predicts a server response to the user input by the server node;
(c) a display device for displaying the client response generated at the client to provide a visual response to the user input before displaying the server response;
(d) a receiver receiving a server response to the user input from the server node; and
(e) a replacement module replacing the generated prediction of the server node response displayed on the display screen with the server response received from the server node.- View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20)
-
Specification