US6003030A
Expired / Lapsed
US
⏱️ 0.0 years remaining
System and method for optimized storage and retrieval of data on a distributed computer network
Assignee: Akamai Technologies Inc
•
Filing: 1996-10-18
•
Granted: 1999-12-14
•
Expires: 2016-10-18
Abstract
Abstract A system and method for the optimized storage and retrieval of video data at distributed sites calls for the deployment of "Smart Mirror" sites throughout a network, each of which maintains a copy of certain data managed by the system. Every user is assigned to a specific delivery site based on an analysis of network performance with respect to each of the available delivery sites. Generalized network performance data is collected and stored to facilitate the selection of additional delivery sites and to ensure the preservation of improved performance in comparison to traditional networks.
Inventors
- 👤 Brian Kenner
- 👤 Arnold Karush
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-26 05:19
CPC Classifications
H; H04; H04L; H04L41/00; H04L41/50; H04L41/508; H04L41/509; G; G06; G06F; G06F16/00; G06F16/20; G06F16/27; G06F16/70; G06F16/90; G06F16/95; G06F16/958; H04L41/08; H04L41/085; H04L41/0853; H04L41/0856; H04L41/5003; H04L41/5009; H04L43/00; H04L67/00; H04L67/01; H04L67/10; H04L67/1001; H04L67/1004; H04L67/1008; H04L67/101; H04L67/1021; H04L67/1095; H04L67/50; H04L67/56; H04L67/568; H04L67/60; H04L9/00; H04L9/40; H04N; H04N21/00; H04N21/20; H04N21/21; H04N21/218; H04N21/2181; H04N21/222; H04N21/23; H04N21/231; H04N21/23106; H04N21/23109; H04N21/238; H04N21/2385; H04N21/24; H04N21/2402; H04N21/25; H04N21/254; H04N21/2543; H04N21/258; H04N21/25808; H04N21/25841; H04N21/27; H04N21/274; H04N21/2743; H04N21/2747; H04N21/40; H04N21/43; H04N21/433; H04N21/4331; H04N21/442; H04N21/44209; H04N21/44245; H04N21/45; H04N21/462; H04N21/4622; H04N21/47; H04N21/478; H04N21/4782; H04N21/60; H04N21/61; H04N21/6106; H04N21/6125; H04N21/65; H04N21/654; H04N21/6543; H04N7/00; H04N7/16; H04N7/173; H04N7/17309; H04N7/17336; H04L41/22; H04L43/08; H04L43/0823; H04L43/0852; H04L43/0876; H04L43/0888; H04L43/10; H04L63/00; H04L63/04; H04L63/0428; H04L67/10015; H04L67/1012; H04L69/00; H04L69/30; H04L69/32; H04L69/322; H04L69/329; Y; Y10; Y10S; Y10S707/00; Y10S707/912; Y10S707/913; Y10S707/914; Y10S707/916; Y10S707/917; Y10S707/918; Y10S707/919; Y10S707/953; Y10S707/959; Y10S707/964; Y10S707/966
Claims Analysis
Total Claims: 74
Claim 1
Independent Claim
114 words
A system for selecting a delivery site, located on a distributed computer network, from which to a. receive a file, the system comprising: a distributed computer network; at least one content provider connected to the network, wherein the content provider stores at least one file; a plurality of delivery sites connected to the network, wherein at least one of the delivery sites stores at least one copy of the same file; a user terminal connected to the network; a network traffic testing apparatus for selecting a preferred delivery site from all delivery sites connected to the network; and a downloading apparatus for downloading the file from the preferred delivery site to the user terminal.
Claim 2
Independent Claim
114 words
A system for selecting a delivery site, located on a distributed computer network, from which to a. receive a file, the system comprising: a distributed computer network; at least one content provider connected to the network, wherein the content provider stores at least one file; a plurality of delivery sites connected to the network, wherein at least one of the delivery sites stores at least one copy of the same file; a user terminal connected to the network; a network traffic testing apparatus for selecting a preferred delivery site from all delivery sites connected to the network; and a downloading apparatus for downloading the file from the preferred delivery site to the user terminal.
Claim 3
Dependent Claim
49 words
A system according to claim 1, wherein the network testing apparatus comprises a first storage medium connected to the user terminal, wherein the first storage medium embodies a first software program for testing the network and selecting a preferred delivery site from all delivery sites connected to the network.
Claim 4
Dependent Claim
44 words
A system according to claim 2, wherein the downloading apparatus comprises a second storage medium connected to the user terminal, wherein the second storage medium embodies a second software program capable of downloading the file from the preferred delivery site to the user terminal.
Claim 5
Dependent Claim
14 words
A system according to claim 3, further comprising a database connected to the network.
Claim 6
Dependent Claim
21 words
A system according to claim 4, wherein the first software program uses a list of delivery sites created by the database.
Claim 7
Dependent Claim
30 words
A system according to claim 5, wherein the first software program uses results from a network analysis procedure to choose the preferred delivery site from the list of delivery sites.
Claim 8
Dependent Claim
21 words
A system according to claim 6, wherein the network analysis procedure is performed at least in part at the user terminal.
Claim 9
Dependent Claim
17 words
A system according to claim 7, wherein the network analysis procedure comprises a plurality of network tests.
Claim 10
Dependent Claim
21 words
A system according to claim 8, wherein the network tests are selected from a list of tests maintained in the database.
Claim 11
Dependent Claim
17 words
A system according to claim 9, wherein the list of tests includes a download elapsed time test.
Claim 12
Dependent Claim
23 words
A system according to claim 10, wherein the elapsed time test is normalized by an average load experienced by each tested delivery site.
Claim 13
Dependent Claim
36 words
A system according to claim 11, wherein the average load is monitored by each delivery site, and a number corresponding to the average load is stored by each delivery site to be accessible to the network.
Claim 14
Dependent Claim
21 words
A system according to claim 8, wherein the network testing procedure yields a numerical performance rating for each tested delivery site.
Claim 15
Dependent Claim
23 words
A system according to claim 13, wherein the numerical performance rating is calculated as a weighted sum of results from the network tests.
Claim 16
Dependent Claim
22 words
A system according to claim 14, wherein the weighted sum is calculated using weights provided for each network test by the database.
Claim 17
Dependent Claim
17 words
A system according to claim 8, wherein results from the network tests are provided to the database.
Claim 18
Dependent Claim
14 words
A system according to claim 16, wherein the results are stored in the database.
Claim 19
Dependent Claim
21 words
A system according to claim 9, wherein the first software program performs the network tests in conjunction with the user terminal.
Claim 20
Dependent Claim
20 words
A system according to claim 18, wherein the second software program performs the download in conjunction with the user terminal.
Claim 21
Dependent Claim
17 words
A system according to claim 18, wherein the first software program can be executed at any time.
Claim 22
Dependent Claim
19 words
A system according to claim 20, wherein the first software program is executed automatically before any file is downloaded.
Claim 23
Dependent Claim
27 words
A system according to claim 5, wherein the first software program uses results from a network analysis procedure to create a prioritized list of preferred delivery sites.
Claim 24
Dependent Claim
15 words
A system according to claim 22, wherein the second software program uses the prioritized list.
Claim 25
Dependent Claim
24 words
A system according to claim 23, wherein the second software program first attempts to use a first delivery site specified in the prioritized list.
Claim 26
Dependent Claim
29 words
A system according to claim 24, wherein if the first delivery site fails, the second software program will attempt to use succeeding delivery sites specified in the prioritized list.
Claim 27
Dependent Claim
29 words
A system according to claim 25, wherein if all delivery sites in the prioritized list fail, the second software program will attempt to download directly from the content provider.
Claim 28
Dependent Claim
13 words
A system according to claim 1, wherein the file comprises a video clip.
Claim 29
Dependent Claim
14 words
A system according to claim 1, wherein the file has characteristic information associated therewith.
Claim 30
Dependent Claim
24 words
A system according to claim 28, wherein the characteristic information includes information specifying that the file is stored on at least two delivery sites.
Claim 31
Dependent Claim
14 words
A system according to claim 29, wherein the characteristic information identifies the content provider.
Claim 32
Dependent Claim
14 words
A system according to claim 28, wherein the characteristic information includes content rating information.
Claim 33
Dependent Claim
20 words
A system according to claim 28, wherein the characteristic information is stored within an "EMBED" statement corresponding to the file.
Claim 34
Dependent Claim
30 words
The system of claim 1 further comprising a file request apparatus connected to the user terminal, the file request apparatus for requesting a file from one of the delivery sites.
Claim 35
Dependent Claim
27 words
The system of claim 1 wherein a delivery site that is located a shortest electronic distance from a user terminal is designated as the preferred delivery site.
Claim 36
Independent Claim
73 words
A method for determining a set of preferred delivery sites from a plurality of delivery sites on a network, comprising the steps of: obtaining a list of delivery sites; performing at least one network traffic test to determine file delivery performance associated with a plurality of paths in the network that are associated with the delivery sites; processing results from the network test; and prioritizing the delivery sites according to the test results.
Claim 37
Independent Claim
73 words
A method for determining a set of preferred delivery sites from a plurality of delivery sites on a network, comprising the steps of: obtaining a list of delivery sites; performing at least one network traffic test to determine file delivery performance associated with a plurality of paths in the network that are associated with the delivery sites; processing results from the network test; and prioritizing the delivery sites according to the test results.
Claim 38
Dependent Claim
19 words
The method of claim 35, wherein the performing step comprises testing some of the delivery sites in the list.
Claim 39
Dependent Claim
34 words
The method of claim 36, wherein the performing step comprises: selecting a subset of delivery sites from the list; and running at least one test for each of the delivery sites in the subset.
Claim 40
Dependent Claim
15 words
The method of claim 37, wherein the test is selected from a plurality of tests.
Claim 41
Dependent Claim
19 words
The method of claim 38, wherein the plurality of tests is specified in a database connected to the network.
Claim 42
Dependent Claim
26 words
The method of claim 39, wherein the test is selected from the plurality by way of random selection based on a frequency specified in the database.
Claim 43
Dependent Claim
20 words
The method of claim 35, further comprising the step of sending the results to a database connected to the network.
Claim 44
Dependent Claim
13 words
The method of claim 35, wherein the processing step comprises weighting the results.
Claim 45
Dependent Claim
18 words
The method of claim 42, wherein the weighting step uses weights specified in the list of delivery sites.
Claim 46
Dependent Claim
20 words
The method of claim 35, wherein the prioritizing step comprises storing the set of delivery sites in a preferred order.
Claim 47
Dependent Claim
15 words
The method of claim 44, wherein the preferred order is determined by the test results.
Claim 48
Dependent Claim
16 words
The method of claim 35, wherein the list of delivery sites is obtained from a database.
Claim 49
Dependent Claim
18 words
The method of claim 35 wherein the performing, processing and priortizing steps are performed by a client application.
Claim 50
Dependent Claim
26 words
The method of claim 35 wherein the priortizing step is bases on a shortest electronic distance from a delivery site to an entity in the network.
Claim 51
Independent Claim
65 words
A method for downloading a file from a delivery site, comprising the steps of: identifying a desired file; determining whether the desired file is mirrored on one or more delivery sites; if the desired file is mirrored, identifying at least one preferred delivery site according to the results of at least one network traffic test; and downloading the desired file from the preferred delivery site.
Claim 52
Independent Claim
65 words
A method for downloading a file from a delivery site, comprising the steps of: identifying a desired file; determining whether the desired file is mirrored on one or more delivery sites; if the desired file is mirrored, identifying at least one preferred delivery site according to the results of at least one network traffic test; and downloading the desired file from the preferred delivery site.
Claim 53
Dependent Claim
19 words
The method of claim 49, wherein the identifying and downloading steps are repeated until the downloading step is successful.
Claim 54
Dependent Claim
28 words
The method of claim 50, further comprising the step of downloading the desired file from a content provider site if the repeated retrieving and downloading steps are unsuccessful.
Claim 55
Dependent Claim
17 words
The method of claim 49, further comprising the step of verifying file authorization after the determining step.
Claim 56
Dependent Claim
75 words
The method of claim 52, wherein the verifying step comprises the substeps of: checking if the desired file has a content rating; if the file has a content rating, comparing the content rating against a standard specified by a user; if the content rating is acceptable to the user, or if the clip has no content rating and unrated clips are acceptable to the user, authorizing the downloading step; and otherwise declining the downloading step.
Claim 57
Dependent Claim
16 words
The method of claim 53, wherein the downloading step is performed only if it is authorized.
Claim 58
Dependent Claim
22 words
The method of claim 49, further comprising the step of storing the downloaded file in a data area on the user terminal.
Claim 59
Dependent Claim
51 words
The method of claim 55, wherein the storing step comprises the substeps of: determining if there is sufficient room in the data area to store the downloaded file; if there is not sufficient room, deleting the least-recently-used files from the data area; and saving the downloaded file to the data area.
Claim 60
Dependent Claim
65 words
The method of claim 56, further comprising the steps of: prior to the downloading step, searching for the desired file in the data area; if the desired file is found as a stored file, verifying that the stored file is identical to the desired file; and if the desired file and stored file are identical, displaying the stored file instead of downloading the desired file.
Claim 61
Dependent Claim
25 words
The method of claim 57, wherein the verifying step comprises comparing the dates and times of creation for the stored file and the desired file.
Claim 62
Dependent Claim
19 words
The method of claim 49, further comprising the step of informing a mirror service provider of a successful download.
Claim 63
Dependent Claim
19 words
The method of claim 49 further including the step of requesting a file from one of the delivery sites.
Claim 64
Dependent Claim
29 words
The method of claim 49 wherein a delivery site that is located a shortest electronic distance from an entity in the network is designated as the preferred delivery site.
Claim 65
Independent Claim
70 words
A method for locating and maintaining a network of delivery sites for the optimized storage and retrieval of files, comprising the steps of: receiving network traffic test results from a plurality of users; storing the test results in a database; processing the test results; determining network performance at various locations on the network; and distributing the delivery sites and the files throughout the network according to the determined network performance.
Claim 66
Independent Claim
70 words
A method for locating and maintaining a network of delivery sites for the optimized storage and retrieval of files, comprising the steps of: receiving network traffic test results from a plurality of users; storing the test results in a database; processing the test results; determining network performance at various locations on the network; and distributing the delivery sites and the files throughout the network according to the determined network performance.
Claim 67
Dependent Claim
23 words
The method of claim 62 wherein the distributing step is based on a shortest electronic distance from a delivery site to a user.
Claim 68
Dependent Claim
22 words
The method of claim 62 further including the step of mirroring data from a content provider to at least one delivery site.
Claim 69
Dependent Claim
22 words
The method of claim 62 further including the step of notifying the users of the existence of at least one delivery site.
Claim 70
Dependent Claim
21 words
The method of claim 62 wherein the distributing step is based on the use of content by users in the system.
Claim 71
Independent Claim
159 words
A system for selecting a delivery site, located on a distributed computer network, from which to a receive a file, the system comprising: a distributed computer network; at least one content provider connected to the network, wherein the content provider stores at least one file; a plurality of delivery sites connected to the network, wherein at least one of the delivery sites stores at least one copy of the same file; a user terminal connected to the network; a network testing apparatus for selecting a preferred delivery site from all delivery sites connected to the network, wherein the network testing apparatus uses results from a plurality of network tests to choose the preferred delivery site from a list of delivery sites, the network tests including a download elapsed time test that is normalized by an average load experienced by each tested delivery site; a downloading apparatus for downloading the file from the preferred delivery site to the user terminal.
Claim 72
Independent Claim
159 words
A system for selecting a delivery site, located on a distributed computer network, from which to a receive a file, the system comprising: a distributed computer network; at least one content provider connected to the network, wherein the content provider stores at least one file; a plurality of delivery sites connected to the network, wherein at least one of the delivery sites stores at least one copy of the same file; a user terminal connected to the network; a network testing apparatus for selecting a preferred delivery site from all delivery sites connected to the network, wherein the network testing apparatus uses results from a plurality of network tests to choose the preferred delivery site from a list of delivery sites, the network tests including a download elapsed time test that is normalized by an average load experienced by each tested delivery site; a downloading apparatus for downloading the file from the preferred delivery site to the user terminal.
Claim 73
Independent Claim
116 words
A method for determining a set of preferred delivery sites from a plurality of delivery sites on a network, comprising the steps of: obtaining a list of delivery sites; performing at least one network test to determine file delivery performance associated with at least one path in the network, the performing step comprising: selecting a subset of delivery sites from a list of delivery sites; running at least one test for each of the delivery sites in the subset, wherein one of the at least one test is selected by way of a random selection based on a specified frequency; processing results from the network test; and prioritizing the delivery sites according to the test results.
Claim 74
Independent Claim
116 words
A method for determining a set of preferred delivery sites from a plurality of delivery sites on a network, comprising the steps of: obtaining a list of delivery sites; performing at least one network test to determine file delivery performance associated with at least one path in the network, the performing step comprising: selecting a subset of delivery sites from a list of delivery sites; running at least one test for each of the delivery sites in the subset, wherein one of the at least one test is selected by way of a random selection based on a specified frequency; processing results from the network test; and prioritizing the delivery sites according to the test results.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2002-12-13 | 2003-06-14 | 2003-12-14 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2006-12-13 | 2007-06-14 | 2007-12-14 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2010-12-13 | 2011-06-14 | 2011-12-14 | $7700.00 | Window Closed / Lapsed |