Maintain persistent connections between servers and mobile clients
First Claim
Patent Images
1. A method comprising:
- determining an initial value for a time interval for sending keep-alive messages from a client computing device connected to a server computing device on a particular one of a plurality of generations of cellular data connection, wherein the time interval is based on an average value or a median value of keep-alive message time interval values determined from previous connections between the server computing device and one or more other computing devices different from the client computing device on the particular one of the plurality of generations of cellular data connection; and
iteratively;
waiting for the time interval;
sending a keep-alive message from the client computing device to the server computing device; and
incrementing a current value of the time interval when the client computing device receives from the server computing device a response to a current keep-alive message sent during a current iteration, until the client computing device does not receive from the server computing device any responses to the current keep-alive message sent during the current iteration; and
setting the current value of the time interval to a previous value of the time interval from an immediately-previous iteration.
3 Assignments
0 Petitions
Accused Products
Abstract
In one embodiment, a method includes iteratively waiting for a time interval; sending a keep-alive message from a first computing device to a second computing device; and incrementing a current value of the time interval when the first computing device receives from the second computing device a response to a current keep-alive message sent during the current iteration, until the first computing device does not receive from the second computing device any responses to the current keep-alive message sent during the current iteration; and setting the current value of the time interval to a previous value of the time interval from an immediately-previous iteration.
-
Citations
18 Claims
-
1. A method comprising:
-
determining an initial value for a time interval for sending keep-alive messages from a client computing device connected to a server computing device on a particular one of a plurality of generations of cellular data connection, wherein the time interval is based on an average value or a median value of keep-alive message time interval values determined from previous connections between the server computing device and one or more other computing devices different from the client computing device on the particular one of the plurality of generations of cellular data connection; and iteratively; waiting for the time interval; sending a keep-alive message from the client computing device to the server computing device; and incrementing a current value of the time interval when the client computing device receives from the server computing device a response to a current keep-alive message sent during a current iteration, until the client computing device does not receive from the server computing device any responses to the current keep-alive message sent during the current iteration; and setting the current value of the time interval to a previous value of the time interval from an immediately-previous iteration. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
-
determine an initial value for a time interval for sending keep-alive messages from a client computing device connected to a server computing device on a particular one of a plurality of generations of cellular data connection, wherein the time interval is based on an average value or a median value of keep-alive message time interval values determined from previous connections between the server computing device and one or more other computing devices different from the client computing device on the particular one of the plurality of generations of cellular data connection; and iteratively; wait for the time interval; send a keep-alive message from the client computing device to the server computing device; and increment a current value of the time interval when the client computing device receives from the server computing device a response to a current keep-alive message sent during a current iteration, until the client computing device does not receive from the server computing device any responses to the current keep-alive message sent during the current iteration; and set the current value of the time interval to a previous value of the time interval from an immediately-previous iteration. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A client computing device comprising:
-
one or more processors; and a memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to; determine an initial value for a time interval for sending keep-alive messages from a client computing device connected to a server computing device on a particular one of a plurality of generations of cellular data connection, wherein the time interval is based on an average value or a median value of keep-alive message time interval values determined from previous connections between the server computing device and one or more other computing devices different from the client computing device on the particular one of the plurality of generations of cellular data connection; and iteratively; wait for the time interval; send a keep-alive message from the client computing device to the server computing device; and increment a current value of the time interval when the client computing device receives from the server computing device a response to a current keep-alive message sent during the current iteration, until the client computing device does not receive from the server computing device any responses to a current keep-alive message sent during the current iteration; and set the current value of the time interval to a previous value of the time interval from an immediately-previous iteration. - View Dependent Claims (15, 16, 17, 18)
-
Specification