Optimizing traffic by controlling keep-alives
View Patent ↗A system, method and non-transitory computer code for operating a proxy server operating under software to cause the proxy server to access a communication network and to delay, advance or block keep-alives for a client device to improve traffic data flow.
1. A method comprising:
at a mobile device:
monitoring keep-alive messages sent at varying intervals between the mobile device and a remote entity as part of one or more transactions;
determining a tolerance of delay of keep-alive messages that includes:
increasing the tolerance of delay until an application executing on the mobile device times out by increasing the tolerance of delay for a combination comprising at least two of: the application, a protocol, and a communications port communicating with the application; and
reducing the tolerance of delay after the application times out;
identifying a transaction as unnecessary when the transaction includes user-initiated data transmitting from the mobile device in addition to a keep-alive message, wherein a respective transaction includes user-initiated data when the traffic originates in response to output mechanisms of the mobile device, or when the transaction is associated with a keep-alive message that has not been sent when the application times out, wherein a timer for the application timing out is set if the application is to be delayed; and
blocking the keep-alive message for the unnecessary transaction.
2. The method of claim 1 , wherein the output mechanisms of the mobile device include at least one of a display screen, audio, notification light, Bluetooth® module, NFC module, RFID module, and touch sensor.
3. The method of claim 1 , further comprising determining that the respective transaction is a keep-alive based off of at least one of periodicity of transactions, size of transactions, and repetitiveness of transactions.
4. A mobile device comprising:
a processor;
a memory;
wherein the processor is processing the memory to execute the following steps:
monitoring keep-alive messages sent at varying intervals between the mobile device and a remote entity as part of one or more transactions;
determining a tolerance of delay of keep-alive messages that includes:
increasing the tolerance of delay until an application executing on the mobile device times out by increasing the tolerance of delay for a combination comprising at least two of: the application, a protocol, and a communications port communicating with the application; and
reducing the tolerance of delay after the application times out;
identifying a transaction as unnecessary when the transaction includes user-initiated data transmitting from the mobile device in addition to a keep-alive message, wherein a respective transaction includes user-initiated data when the traffic originates in response to output mechanisms of the mobile device, or when the transaction is associated with a keep-alive message that has not been sent when the application times out, wherein a timer for the application timing out is set if the application is to be delayed; and
blocking the keep-alive message for the unnecessary transaction.
5. The mobile device of claim 4 , wherein the output mechanisms of the mobile device include at least one of a display screen, audio, notification light, Bluetooth® module, NFC module, RFID module, and touch sensor.
6. The mobile device of claim 4 , wherein the mobile device is further configured for determining that the respective transaction is a keep-alive based off of at least one of periodicity of transactions, size of transactions, and repetitiveness of transactions.