Efficient messaging over internet protocol
First Claim
Patent Images
1. A method comprising:
- receiving, by a server, information that indicates that a Transmission Control Protocol (TCP) connection is established by a mobile device between the mobile device and the server;
starting, by the server, a timer when data is sent over the TCP connection that is established by the mobile device;
receiving, by the server and from the mobile device, an identifier to allow the server to communicate with the mobile device via an alternate channel that is different from the TCP connection after the TCP connection established by the mobile device is closed,the identifier being received by the server from the mobile device via the TCP connection established by the mobile device;
determining, by the server and based on the timer, that new data is not sent within a first particular time period,the first particular time period being less than a second particular time period that is used to detect latent TCP connections;
closing, by the server, the TCP connection established by the mobile device based on the server determining that new data is not sent within the first particular time period;
determining, by the server and after the server closes the TCP connection established by the mobile device, that the server has additional data for the mobile device;
sending, by the server and based on the identifier, an indicator to the mobile device via the alternate channel after determining that the server has the additional data for the mobile device,the indicator including instructions for the mobile device to establish a new TCP connection with the server; and
sending, by the server and via the new TCP connection, the additional data to the mobile device after the mobile device establishes the new TCP connection based on the indicator.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for a client and server based messaging system efficiently exchanges messages over an IP connection in a wireless network. Also included is an automated method by which a messaging client can request intelligent and efficient presence updates from the wireless network by utilizing timers and adapt such timers based on load conditions in the wireless network.
50 Citations
17 Claims
-
1. A method comprising:
-
receiving, by a server, information that indicates that a Transmission Control Protocol (TCP) connection is established by a mobile device between the mobile device and the server; starting, by the server, a timer when data is sent over the TCP connection that is established by the mobile device; receiving, by the server and from the mobile device, an identifier to allow the server to communicate with the mobile device via an alternate channel that is different from the TCP connection after the TCP connection established by the mobile device is closed, the identifier being received by the server from the mobile device via the TCP connection established by the mobile device; determining, by the server and based on the timer, that new data is not sent within a first particular time period, the first particular time period being less than a second particular time period that is used to detect latent TCP connections; closing, by the server, the TCP connection established by the mobile device based on the server determining that new data is not sent within the first particular time period; determining, by the server and after the server closes the TCP connection established by the mobile device, that the server has additional data for the mobile device; sending, by the server and based on the identifier, an indicator to the mobile device via the alternate channel after determining that the server has the additional data for the mobile device, the indicator including instructions for the mobile device to establish a new TCP connection with the server; and sending, by the server and via the new TCP connection, the additional data to the mobile device after the mobile device establishes the new TCP connection based on the indicator. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system comprising:
one or more processors to; receive information that indicates that a Transmission Control Protocol (TCP) connection is established by a mobile device between the mobile device and the system; receive, from the mobile device, an identifier via the TCP connection that is established by the mobile device, the identifier including information to permit the system to communicate with the mobile device via an alternate channel that is outside of the TCP connection after the TCP connection established by the mobile device is closed; send data to the mobile device over via the TCP connection; measure an idle time while the TCP connection is active based on the sending of the data; determine that the idle time is greater than a particular time period; close the TCP connection established by the mobile device after determining that the idle time is greater than the particular time period; determine, after closing the TCP connection established by the mobile device, that the system has additional data for the mobile device; and send, based on the identifier and via the alternate channel, an indicator to the mobile device to initiate establishing a new TCP connection between the system and the mobile device after determining that the system has the additional data for the mobile device. - View Dependent Claims (7, 8, 9, 10)
-
11. A method comprising:
-
receiving, by a server, information that indicates that a Transmission Control Protocol (TCP) connection is established by a mobile device between the mobile device and the server; receiving, by the server, an identifier from the mobile device via the TCP connection that is established by the mobile device, the identifier allowing the server to communicate with the mobile device via an alternate channel that is different from the TCP connection after the TCP connection established by the mobile device is closed; measuring, by the server, an idle time period based on data sent between the server and the mobile device while the TCP connection is active; closing, by the server, the TCP connection established by the mobile device when the idle time period is greater than a particular time interval; determining, by the server and after the server closes the TCP connection established by the mobile device, that the server has additional data for the mobile device; and sending, by the server and based on the identifier, an indication to the mobile device via the alternate channel after determining that the server has the additional data for the mobile device, the indication including instructions for the mobile device to establish a new TCP connection with the server. - View Dependent Claims (12, 13)
-
-
14. A non-transitory computer-readable medium storing instructions, the instructions comprising:
one or more instructions that, when executed by at least one processor of a system, cause the at least one processor to; receive information that indicates that a Transmission Control Protocol (TCP) connection is established by a mobile device between the mobile device and the system; receive an identifier from the mobile device via the TCP connection that is established by the mobile device, the identifier allowing the system to communicate with the mobile device via an alternate channel that is different from the TCP connection after the TCP connection established by the mobile device is closed; determine an idle time period based on data sent between the system and the mobile device via the TCP connection; close the TCP connection established by the mobile device when the idle time period is greater than a particular time period; determine that the system has additional data for the mobile device after closing the TCP connection established by the mobile device; send, based on the identifier, an indicator to the mobile device via the alternate channel after determining that the system has the additional data for the mobile device, the identifier commanding the mobile device to establish a new TCP connection with the system; and send the additional data to the mobile device via the new TCP connection after the mobile device establishes the new TCP connection based on the indicator. - View Dependent Claims (15, 16, 17)
Specification