DISTRIBUTED CACHING SYSTEMS WITH CONFIGURABLE EXTENDED CACHING OPTIMIZATION
Methods and systems for distributed caching of information using extended caching optimization are provided. According to one aspect, a method for distributed caching of information using extended caching optimization includes, at a mobile device for operating in a wireless network, monitoring requests issued from an application located within the device to an external entity not located within the device; storing, in a local cache, responses to the monitored requests received from the external entity; and, in response to identifying a request as one that meets a first criterion for optimization, applying an extended caching optimization, including preventing the identified request from being transmitted to the external entity and providing a response to the identified request from the local cache.
1 . A method for distributed caching of information using extended caching optimization, the method comprising:
at a mobile device for operating in a wireless network, the device including a local proxy for monitoring requests issued from an application located within the device to an external entity not located within the device and for storing, in a local cache, responses to the monitored requests received from the external entity:
identifying a request as one that meets a first criterion for optimization, the first criterion for optimization including a determination that the request occurred while the mobile device is in a target state; and
in response to identifying the request as one that meets a first criterion for optimization, applying an extended caching optimization, wherein applying an extended caching optimization includes:
preventing the identified request from being transmitted to the external entity; and
providing a response to the identified request from the local cache.
2 . The method of claim 1 wherein the target state includes at least one of:
a display of the mobile device is not lit;
a radio circuit of the mobile device is not active;
a power consumption of the mobile device is below a threshold value; and
an absence of user activity for longer than a threshold period.
3 . The method of claim 1 wherein the identified request comprises a domain name service (DNS) request.
4 . The method of claim 3 including not terminating the extended caching optimization of the DNS request until after a threshold time to live (TTL).
5 . The method of claim 3 including not terminating the extended caching optimization of the DNS request until after a threshold time to live (TTL) and a determination that the screen is lit.
6 . The method of claim 3 including not terminating the extended caching optimization of the DNS request until after a threshold time to live (TTL), a determination that the screen is lit, and a determination that the radio transceiver is powered on or activated.
7 . The method of claim 1 wherein, responsive to a detection by the local proxy of a repetition of a request-response interaction between the application and the local proxy that exceeds a threshold rate, applying a traffic calming technique to signaling messages related to the application.
8 . The method of claim 1 wherein identification of a request as one that meets a first criterion for optimization includes identification based on at least one of:
a characteristic of the request;
a characteristic of the requested data; and
a characteristic of the application making the request.
9 . A system for distributed caching of information using extended caching optimization, the system including:
a mobile device for operating in a wireless network, the device including:
a local cache; and
a local proxy for monitoring requests issued from an application located within the device to an external entity not located within the device and for storing, in the local cache, responses to the monitored requests received from the external entity,
wherein the local proxy is configured to identify a request as one that meets a first criterion for optimization, the first criterion for optimization including a determination that the request occurred while the mobile device is in a target state, and to apply an extended caching optimization, and
wherein applying an extended caching optimization includes preventing the identified request from being transmitted to the external entity, and providing a response to the identified request from the local cache.
10 . The system of claim 9 wherein the target state includes at least one of:
a display of the mobile device is not lit;
a radio circuit of the mobile device is not active;
a power consumption of the mobile device is below a threshold value; and
an absence of user activity for longer than a threshold period.
11 . The system of claim 9 wherein the identified request comprises a domain name service (DNS) request.
12 . The system of claim 12 wherein the local proxy does not terminate the extended caching optimization of the DNS request until after a threshold time to live (TTL).
13 . The system of claim 12 wherein the local proxy does not terminate the extended caching optimization of the DNS request until after a threshold time to live (TTL) and a determination that the screen is lit.
14 . The system of claim 12 wherein the local proxy does not terminate the extended caching optimization of the DNS request until after a threshold time to live (TTL), a determination that the screen is lit, and a determination that the radio transceiver is powered on or activated.
15 . The system of claim 9 wherein, responsive to a detection of a repetition of a request-response interaction between the application and the local proxy that exceeds a threshold rate, the local proxy applies a traffic calming technique to signaling messages related to the application.
16 . The system of claim 9 wherein identification of a request as one that meets a first criterion for optimization includes identification based on at least one of:
a characteristic of the request;
a characteristic of the requested data; and
a characteristic of the application making the request.
17 . A non-transitory computer readable medium having stored thereon executable instructions that when executed by the processor of a computer control the computer to perform steps comprising:
identifying, at a mobile device for operating in a wireless network, the device including a local proxy for monitoring requests issued from an application located within the device to an external entity not located within the device and for storing, in a local cache, responses to the monitored requests received from the external entity, a request as one that meets a first criterion for optimization, the first criterion for optimization including a determination that the request occurred while the mobile device is in a target state; and
in response to identifying the request as one that meets a first criterion for optimization, applying an extended caching optimization, wherein applying an extended caching optimization includes:
preventing the identified request from being transmitted to the external entity; and
providing a response to the identified request from the local cache.