← Back to Patent Explorer
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
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

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)

US5341477A Cited
US5548724A Cited
US5459837A Cited
US5606359A Cited

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag