IP Library Granted Patent US 8,886,176
Granted Patent B2
US 8,886,176 · App. 13/188,553 · Granted Nov 11, 2014

Mobile application traffic optimization

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,886,176
App. No.
13/188,553
Granted
Nov 11, 2014
Kind
B2
Abstract

Systems and methods for mobile application traffic optimization are disclosed. In one aspect, embodiments of the present disclosure include a distributed proxy and cache system, including, a local proxy on a mobile device for intercepting a data request made via a mobile device, and a proxy server coupled to the mobile device and a content server to which the data request is directed. In one embodiment, the local proxy can forward the data request to the proxy server for transmission to the content server for a response to the data request. In addition, the proxy server sends the data request to the content server independent of activities on the local proxy and notifies the local proxy when changed or different content on the content server is detected for the data request. One embodiment of the distributed proxy and cache system further includes a cache shared between the local proxy and the proxy server and the component on the local proxy and is queried for a locally stored response to the data request prior to the data request being forwarded on to the proxy server.

Claims (74)

1. A method for optimizing traffic in a wireless network, the method, comprising:

using application behavior of multiple applications accessed on a mobile device to detect recurrences in application requests made by the multiple applications;

using the recurrences, offloading polling of content sources that would result from the application requests that would be performed at the mobile device to be performed instead, by a proxy server remote from the mobile device in the wireless network,

wherein the polling is offloaded when the recurrences match a rule, the rule being based on one of:

detected requests for the same resource that has the same content or returned value; or

detected repeatable time periods between detected requests.

2. The method of claim 1 , wherein, the proxy server notifies the mobile device when content change is detected in response to the polling of the content sources.

3. The method of claim 1 , wherein, cached content is provided when content change is not detected in the polling of the content sources.

4. The method of claim 1 , wherein, recurrences of application behavior are identified by tracking patterns in application behavior.

5. The method of claim 4 , wherein, application patterns include, one or more of, frequency that requested content is the same, frequency with which a same request is made, interval between requests, applications making a request.

6. The method of claim 4 , wherein, use of cached content versus requesting data from the content source is determined based on the patterns in application behavior.

7. The method of claim 4 , further comprising, generating an application profile using the application behavior.

8. The method of claim 1 , wherein, the application behavior is tracked by a local proxy on the mobile device and communicated to the proxy server as connection metadata, the proxy server being coupled to the content sources.

9. The method of claim 8 , wherein, the local proxy identifies and retrieves mobile device properties including, one or more of, battery level, network that the device is registered on, radio state, whether the mobile device is being used.

10. The method of claim 8 , wherein, the local proxy delays or modifies data prior to transmission to the proxy server.

11. The method of claim 8 , wherein, the local proxy includes a local cache and satisfies application requests on the mobile device using cached content stored in the local cache.

12. The method of claim 8 , wherein, the proxy server includes a device information cache to store device properties.

13. The method of claim 8 , wherein, the proxy server delays or modifies data from the local proxy prior to transmission to the content sources.

14. The method of claim 8 , wherein, the proxy server delays delivery of a response received from the content sources.

15. The method of claim 8 , wherein, the local proxy delays delivery of a response received from the content sources.

16. The method of claim 8 , wherein, the proxy server uses device properties and connection metadata to generate rules for satisfying request of applications on the mobile device.

17. The method of claim 8 , wherein, the proxy server gathers real time traffic information about requests of applications for later use in optimizing similar connections with the mobile device or other mobile devices.

18. The method of claim 8 , wherein, the local proxy and the proxy server are transparent to the multiple applications executing on the mobile device.

19. The method of claim 8 , wherein the local proxy is transparent to an operating system of the mobile device.

20. A method for optimizing traffic in a wireless network, the method, comprising:

using application behavior of multiple applications accessed on a mobile device to detect recurrences in application requests made by the multiple applications;

using the recurrences, offloading polling of content sources that would result from the application requests that would be performed at the mobile device to be performed instead, by a proxy server remote from the mobile device in the wireless network,

wherein the application behavior is tracked by a local proxy on the mobile device and communicated to the proxy server as connection metadata, the proxy server being coupled to the content sources,

wherein the local proxy identifies and retrieves mobile device properties including, one or more of, battery level, network that the device is registered on, radio state, and whether the mobile device is being used.

21. A method for optimizing traffic in a wireless network, the method, comprising:

using application behavior of multiple applications accessed on a mobile device to detect recurrences in application requests made by the multiple applications;

using the recurrences, offloading polling of content sources that would result from the application requests that would be performed at the mobile device to be performed instead, by a proxy server remote from the mobile device in the wireless network,

wherein the application behavior is tracked by a local proxy on the mobile device and communicated to the proxy server as connection metadata, the proxy server being coupled to the content sources,

wherein the local proxy delays or modifies data prior to transmission to the proxy server.

22. A method for optimizing traffic in a wireless network, the method, comprising:

using application behavior of multiple applications accessed on a mobile device to detect recurrences in application requests made by the multiple applications;

using the recurrences, offloading polling of content sources that would result from the application requests that would be performed at the mobile device to be performed instead, by a proxy server remote from the mobile device in the wireless network,

wherein the application behavior is tracked by a local proxy on the mobile device and communicated to the proxy server as connection metadata, the proxy server being coupled to the content sources,

wherein, the proxy server includes a device information cache to store device properties.

23. A method for optimizing traffic in a wireless network, the method, comprising:

using application behavior of multiple applications accessed on a mobile device to detect recurrences in application requests made by the multiple applications;

using the recurrences, offloading polling of content sources that would result from the application requests that would be performed at the mobile device to be performed instead, by a proxy server remote from the mobile device in the wireless network,

wherein the application behavior is tracked by a local proxy on the mobile device and communicated to the proxy server as connection metadata, the proxy server being coupled to the content sources,

wherein the proxy server delays or modifies data from the local proxy prior to transmission to the content sources.

24. A method for optimizing traffic in a wireless network, the method, comprising:

using application behavior of multiple applications accessed on a mobile device to detect recurrences in application requests made by the multiple applications;

using the recurrences, offloading polling of content sources that would result from the application requests that would be performed at the mobile device to be performed instead, by a proxy server remote from the mobile device in the wireless network,

wherein the application behavior is tracked by a local proxy on the mobile device and communicated to the proxy server as connection metadata, the proxy server being coupled to the content sources,

wherein the proxy server delays delivery of a response received from the content sources.

25. A method for optimizing traffic in a wireless network, the method, comprising:

using application behavior of multiple applications accessed on a mobile device to detect recurrences in application requests made by the multiple applications;

using the recurrences, offloading polling of content sources that would result from the application requests that would be performed at the mobile device to be performed instead, by a proxy server remote from the mobile device in the wireless network,

wherein the application behavior is tracked by a local proxy on the mobile device and communicated to the proxy server as connection metadata, the proxy server being coupled to the content sources,

wherein the local proxy delays delivery of a response received from the content sources.

26. A method for optimizing traffic in a wireless network, the method, comprising:

using application behavior of multiple applications accessed on a mobile device to detect recurrences in application requests made by the multiple applications;

using the recurrences, offloading polling of content sources that would result from the application requests that would be performed at the mobile device to be performed instead, by a proxy server remote from the mobile device in the wireless network,

wherein the application behavior is tracked by a local proxy on the mobile device and communicated to the proxy server as connection metadata, the proxy server being coupled to the content sources,

wherein, the proxy server uses device properties and connection metadata to generate rules for satisfying request of applications on the mobile device.

27. A method for optimizing traffic in a wireless network, the method, comprising:

using application behavior of multiple applications accessed on a mobile device to detect recurrences in application requests made by the multiple applications;

using the recurrences, offloading polling of content sources that would result from the application requests that would be performed at the mobile device to be performed instead, by a proxy server remote from the mobile device in the wireless network,

wherein the application behavior is tracked by a local proxy on the mobile device and communicated to the proxy server as connection metadata, the proxy server being coupled to the content sources,

wherein, the proxy server gathers real time traffic information about requests of applications for later use in optimizing similar connections with the mobile device or other mobile devices.

28. A method for optimizing traffic in a wireless network, the method, comprising:

using application behavior of multiple applications accessed on a mobile device to detect recurrences in application requests made by the multiple applications;

using the recurrences, offloading polling of content sources that would result from the application requests that would be performed at the mobile device to be performed instead, by a proxy server remote from the mobile device in the wireless network,

wherein the application behavior is tracked by a local proxy on the mobile device and communicated to the proxy server as connection metadata, the proxy server being coupled to the content sources,

wherein the local proxy is transparent to an operating system of the mobile device.

29. A method for optimizing traffic in a wireless network, the method, comprising:

using application behavior of multiple applications accessed on a mobile device to detect recurrences in application requests made by the multiple applications;

using the recurrences, offloading polling of content sources that would result from the application requests that would be performed at the mobile device to be performed instead, by a proxy server remote from the mobile device in the wireless network,

wherein recurrences of application behavior are identified by tracking patterns in application behavior, and

wherein use of cached content versus requesting data from the content source is determined based on the patterns in application behavior.

Assignments (3)
ENTITY CONVERSION Recorded Aug 27, 2015
From: SEVEN NETWORKS, INC.
To: SEVEN NETWORKS, LLC
Reel/Frame 036485/0059 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 20, 2015
From: YLINEN, HEIKKI; SALORINNE, SEPPO
To: SEVEN NETWORKS INC.
Reel/Frame 035980/0822 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2012
From: LUNA, MICHAEL
To: SEVEN NETWORKS, INC.
Reel/Frame 027652/0499 →