IP Library Patent Application 13536430
Patent Application
App. No. 13/536,430

Intelligent Client-Side Caching On Mobile Devices

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 None
App. No.
13/536,430
Abstract

Presented are systems and methods for receiving a content request from an application on a mobile device, and processing the content request to obtain a processed content request. The processed content request is compared to index metadata to determine the location of the content, and retrieving the content from the determined location. The cache index is then updated and the requested content is provided to the application.

Claims (79)

1 . A method comprising:

receiving a content request from an application on a mobile device;

processing the content request to obtain a processed content request;

comparing the processed content request to index metadata to determine the location of the content;

retrieving the content from the determined location;

updating the cache index; and

providing the requested content to the application.

2 . The method of claim 1 , wherein

the mobile device includes a local cache, and the determined location is a remote cache located on a remote storage provider; and

the method further comprising updating the local cache with the retrieved content.

3 . The method of claim 2 , wherein

the retrieved content is streaming data, and

providing the requested content to the application comprises streaming the requested content from the remote cache to the mobile device in the same manner the streaming data was originally stored in the remote cache.

4 . The method of claim 2 , wherein the processed request for content includes authentication information associated with a user of the mobile device.

5 . The method of claim 1 , further comprising:

analyzing a cache index history to identify an expected request for content;

determining an expected time associated with the expected request for content;

wherein the retrieved content corresponds to the expected request for content, and retrieving the content from the determined location occurs prior to the expected time; and

updating the local cache with the retrieved content, and

wherein the requested content is provided from the local cache.

6 . The method of claim 2 , further comprising:

selecting a network, of a plurality of networks available to the mobile device, to utilize for retrieving the requested content

7 . A non-transitory computer readable medium storing instructions that, when executed by a mobile device, cause the mobile device to perform a method, the method comprising:

receiving a content request from an application on the mobile device;

processing the content request to obtain a processed content request;

comparing the processed content request to index metadata to determine the location of the content;

retrieving the content from the determined location;

updating the cache index; and

providing the requested content to the application.

8 . The computer readable medium of claim 7 , wherein

the mobile device includes a local cache, and the determined location is a remote cache located on a remote storage provider; and

the method further comprising updating the local cache with the retrieved content.

9 . The computer readable medium of claim 8 , wherein the

the retrieved content is streaming data, and

providing the requested content to the application comprises streaming the requested content from the remote cache to the mobile device in the same manner the streaming data was originally stored in the remote cache.

10 . The computer readable medium of claim 8 , wherein the processed request for content includes authentication information associated with a user of the mobile device.

11 . The computer readable medium of claim 7 , further comprising:

analyzing a cache index history to identify an expected request for content;

determining an expected time associated with the expected request for content;

wherein the retrieved content corresponds to the expected request for content, and retrieving the content from the determined location occurs prior to the expected time; and

updating the local cache with the retrieved content, and

wherein the requested content is provided from the local cache.

12 . The computer readable medium of claim 8 , further comprising:

selecting a network, of a plurality of networks available to the mobile device, to utilize for retrieving the requested content

13 . A mobile device comprising:

cache manager module configured to:

receive a content request from an application on the mobile device;

process the content request to obtain a processed content request;

compare the processed content request to index metadata to determine the location of the content;

a storage manager module configured to:

retrieve the content from the determined location;

wherein the cache manager module is further configured to:

update the cache index; and

provide the requested content to the application.

14 . The mobile device of claim 13 , further comprising

a local cache; and

wherein the determined location is a remote cache located on a remote storage provider; and

wherein the cache manager module is further configured to update the local cache with the retrieved content.

15 . The mobile device of claim 14 , wherein the

the retrieved content is streaming data, and

wherein the cache manager is further configured to provide the requested content to the application comprises streaming the requested content from the remote cache to the mobile device in the same manner the streaming data was originally stored in the remote cache.

16 . The mobile device of claim 14 , wherein the processed request for content includes authentication information associated with a user of the mobile device.

17 . The mobile device of claim 13 , further comprising:

a user pattern module configured to:

analyze a cache index history to identify an expected request for content;

determine an expected time associated with the expected request for content,

wherein the retrieved content corresponds to the expected request for content, and retrieving the content from the determined location occurs prior to the expected time; and

wherein the storage module is further configured to update the local cache with the retrieved content, and

wherein the requested content is provided from the local cache.

18 . The mobile device of claim 17 , wherein the cache manager module 250 is further configured to select a network, of a plurality of networks available to the mobile device to utilize for retrieving the requested content

19 . A method comprising:

receiving a processed content request from a cache control system;

authenticating the processed content request to determine if the processed request is associated with a user, wherein a remote cache is associated with the user;

comparing the processed content request to index metadata to determine if the content is stored in a cache associated with the user;

retrieving the content from the remote location; and

providing the requested content to the cache control system.

20 . The method of claim 19 , wherein the

the retrieved content is streaming data, and

providing the requested content to the cache control system comprises streaming the requested content from the remote cache to the mobile device in the same manner the streaming data was originally stored in the remote cache.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2015
From: BYTEMOBILE, INC.
To: CITRIX SYSTEMS, INC.
Reel/Frame 037289/0606 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2015
From: CITRIX SYSTEMS, INC.
To: BYTEMOBILE, INC.
Reel/Frame 035440/0599 →
NUNC PRO TUNC ASSIGNMENT Recorded Dec 6, 2013
From: BYTEMOBILE, INC.
To: CITRIX SYSTEMS, INC.
Reel/Frame 031730/0322 →
THIS SUBMISSION IS TO CORRECT THE SPELLING OF THE RECEIVING PARTY (ASSIGNEE)'S STREET NAME IN THE ORIGINAL COVER SHEET RECORDED AT REEL/FRAME 030609/0389. THE ADDRESS NAME SHOULD BE WEST CYPRESS CREEK ROAD. Recorded Sep 17, 2013
From: BYTEMOBILE, INC.
To: CITRIX SYSTEMS, INC.
Reel/Frame 031287/0874 →
MERGER Recorded Jun 13, 2013
From: BYTEMOBILE, INC.
To: CITRIX SYSTEMS, INC.
Reel/Frame 030609/0389 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2012
From: OIKONOMOU, GEORGIOS
To: BYTEMOBILE, INC.
Reel/Frame 028462/0975 →