IP Library Patent Application 17841135
Patent Application
App. No. 17/841,135

OPTIMIZING DATA STORAGE ACROSS MULTIPLE CONTENT REPOSITORIES

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.
17/841,135
Abstract

In one disclosed embodiment, a computing system may instruct a first content repository to store a first part of a file but not a second part of the file, the first content repository being associated with a first internet protocol (IP) address, and may instruct a second content repository to store the second part of the file but not the first part of the file, the second content repository being associated with a second IP address that is different than the first IP address. In response to the computing system receiving a request for the file from a client device, the computing system may instruct the client device to retrieve the second part of the file, but not the first part of the file, from the second content repository using the second IP address.

Claims (78)

1 . A method, comprising:

instructing, by a computing system, a first content repository to store a first part of a file but not a second part of the file, the first content repository being associated with a first internet protocol (IP) address;

instructing, by the computing system, a second content repository to store the second part of the file but not the first part of the file, the second content repository being associated with a second IP address that is different than the first IP address; and

in response to the computing system receiving a first request for the file from a first client device, instructing, by the computing system, the first client device to retrieve the second part of the file, but not the first part of the file, from the second content repository using the second IP address.

2 . The method of claim 1 , wherein the computing system comprises at least one server associated with the first IP address, and the method further comprises:

receiving, by the at least one server and from the first client device, the first request for the file; and

sending, from the at least one server to the first client device, the first part of the file.

3 . The method of claim 1 , wherein the computing system comprises at least one server, and the method further comprises:

receiving, by the at least one server and from the first client device, the first request for the file; and

instructing, by the at least one server, the first client device to retrieve the first part of the file from the first content repository using the first IP address.

4 . The method of claim 1 , wherein:

the first content repository is located in a first geographic region; and

the second content repository is located in a second geographic region.

5 . The method of claim 4 , wherein the first client device is located in the first geographic region, and the method further comprises:

instructing, by the computing system, the first client device to send the first request for the file to the first IP address in response to determining the first client device is located in the first geographic region.

6 . The method of claim 4 , wherein the first client device is located in the first geographic region, and the method further comprises:

determining, by the computing system, a first predicted bandwidth between the first content repository and the first client device located in the first geographic region;

determining, by the computing system, a second predicted bandwidth between the second content repository and the first client device located in the first geographic region;

determining, by the computing system, a ratio of the first predicted bandwidth and the second predicted bandwidth; and

determining, by the computing system, a first size of a first portion of the file to be stored at the first content repository based at least in part on the ratio.

7 . The method of claim 6 , further comprising:

determining, by the computing system, a second size of a second portion of the file to be stored at the second content repository based at least in part on the ratio.

8 . The method of claim 4 , wherein the first client device is located in the first geographic region, and the method further comprises:

determining, by the computing system, a first predicted bandwidth between the first content repository and the first client device located in the first geographic region;

determining, by the computing system, a second predicted bandwidth between the second content repository and the first client device located in the first geographic region;

determining, by the computing system, a first ratio of the first predicted bandwidth and the second predicted bandwidth;

determining, by the computing system, a third predicted bandwidth between the second content repository and a second client device located in the second geographic region;

determining, by the computing system, a fourth predicted bandwidth between the first content repository and the second client device located in the second geographic region;

determining, by the computing system, a second ratio of the third predicted bandwidth and the fourth predicted bandwidth; and

determining, by the computing system, a size of a portion of the file that is to be stored at the first content repository based at least in part on a lesser of the first ratio and the second ratio.

9 . The method of claim 1 , further comprising:

configuring, by the computing system, the second content repository to send the second part of the file to the first client device in response to the second content repository receiving, from the first client device, a second request for the second part of the file.

10 . A method, comprising:

determining, by a computing system, a first predicted bandwidth between a first client device located in a first region and a first content repository located in the first region, the first content repository being associated with a first internet protocol (IP address);

determining, by the computing system, a second predicted bandwidth between the first client device located in the first region and a second content repository located in a second region, the second content repository being associated with a second IP address;

determining, by the computing system, a first ratio of the first predicted bandwidth and the second predicted bandwidth;

determining that a file is to be stored by a combination of the first content repository and the second content repository;

determining, by the computing system and based at least in part on the first ratio, a first part of a file that is to be stored by the first content repository and a second part of the file that is to be stored by the second content repository;

instructing, by the computing system, the first content repository to store the first part of the file but not the second part of the file; and

instructing, by the computing system, the second content repository to store the second part of the file but not the first part of the file.

11 . The method of claim 10 , further comprising:

determining, by the computing system, a size of a portion of the file that is to be stored at the first content repository based at least in part on the first ratio.

12 . The method of claim 10 , further comprising:

determining, by the computing system, a third predicted bandwidth between the second content repository and a second client device located in a second region;

determining, by the computing system, a fourth predicted bandwidth between the first content repository and the second client device located in the second region;

determining, by the computing system, a second ratio of the third predicted bandwidth and the fourth predicted bandwidth; and

determining, by the computing system, a size of a portion of the file that is to be stored at the first content repository based at least in part on a lesser of the first ratio and the second ratio.

13 . A computing system, comprising:

at least one processor; and

at least one computer-readable medium encoded with instructions which, when executed by the at least one processor, cause the computing system to:

instruct a first content repository to store a first part of a file but not a second part of the file, the first content repository being associated with a first internet protocol (IP) address,

instruct a second content repository to store the second part of the file but not the first part of the file, the second content repository being associated with a second IP address that is different than the first IP address, and

instruct, in response to receipt of a first request for the file from a first client device, the first client device to retrieve the second part of the file, but not the first part of the file, from the second content repository using the second IP address.

14 . The computing system of claim 13 , wherein the computing system comprises at least one server associated with the first IP address, and the at least one computer-readable medium is further encoded with additional instructions which, when executed by the at least one processor, further cause the computing system to:

receive, by the at least one server and from the first client device, the first request for the file; and

send, from the at least one server to the first client device, the first part of the file.

15 . The computing system of claim 13 , wherein the computing system comprises at least one server, and the at least one computer-readable medium is further encoded with additional instructions which, when executed by the at least one processor, further cause the computing system to:

receive, by the at least one server and from the first client device, the first request for the file; and

instruct, by the at least one server, the first client device to retrieve the first part of the file from the first content repository using the first IP address.

16 . The computing system of claim 13 , wherein the at least one computer-readable medium is further encoded with additional instructions which, when executed by the at least one processor, further cause the computing system to:

instruct the first client device to send the first request for the file to the first IP address in response to determining the first client device is located in a first geographic region.

17 . The computing system of claim 13 , wherein the at least one computer-readable medium is further encoded with additional instructions which, when executed by the at least one processor, further cause the computing system to:

determine a first predicted bandwidth between the first content repository located in a first geographic region and the first client device located in the first geographic region;

determine a second predicted bandwidth between the second content repository located in a second geographic region and the first client device located in the first geographic region;

determine a ratio of the first predicted bandwidth and the second predicted bandwidth; and

determine a first size of a first portion of the file to be stored at the first content repository based at least in part on the ratio.

18 . The computing system of claim 17 , wherein the at least one computer-readable medium is further encoded with additional instructions which, when executed by the at least one processor, further cause the computing system to:

determine a second size of a second portion of the file to be stored at the second content repository based at least in part on the ratio.

19 . The computing system of claim 13 , wherein the at least one computer-readable medium is further encoded with additional instructions which, when executed by the at least one processor, further cause the computing system to:

determine a first predicted bandwidth between the first content repository located in a first geographic region and the first client device located in the first geographic region;

determine a second predicted bandwidth between the second content repository located in a second geographic region and the first client device located in the first geographic region;

determine a first ratio of the first predicted bandwidth and the second predicted bandwidth;

determine a third predicted bandwidth between the second content repository and a second client device located in the second geographic region;

determine a fourth predicted bandwidth between the first content repository and the second client device located in the second geographic region;

determine a second ratio of the third predicted bandwidth and the fourth predicted bandwidth; and

determine a size of a portion of the file that is to be stored at the first content repository based at least in part on a lesser of the first ratio and the second ratio.

20 . The computing system of claim 13 , wherein the at least one computer-readable medium is further encoded with additional instructions which, when executed by the at least one processor, further cause the computing system to:

configure the second content repository to send the second part of the file to the first client device in response to the second content repository receiving, from the first client device, a second request for the second part of the file.

Assignments (2)
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 5, 2022
From: KUMAR, AMOGH MADANAYAKANAHALLI; DHANABALAN, PRAVEEN RAJA; CHOUDHARY, SHUBHAM
To: CITRIX SYSTEMS, INC.
Reel/Frame 060397/0826 →