Content delivery network and associated methods and mechanisms
First Claim
1. A content delivery method comprising:
- causing a plurality of files to be distributed across a plurality of computers;
responsive to a request, the request including at least a name for a file, the name having been determined, at least in part, using a given function of the data that comprises the contents of the file, causing a copy of the file to be provided from a given one of the plurality of computers, wherein the request for the file is resolved based, at least in part, on a measure of availability of at least one of the computers.
7 Assignments
0 Petitions
Accused Products
Abstract
A plurality of files are distributed across a plurality of computers, some of which may form a peer-to-peer network. In response to a request for a file, the file is caused to be provided from a given one of the computers, wherein the request for the file is resolved based, at least in part, on a measure of availability of at least one of the computers that is supposed to have a copy of the file, and wherein the measure of availability for a computer is based, at least in part, on at least one of the measurements selected from: (a) a measurement of bandwidth to the computer; (b) a measurement of a cost of a connection to the computer, and (c) a measurement of reliability of a connection to the computer. A copy of the requested file may not be provided to unlicensed parties or to unauthorized parties. An unauthorized or unlicensed copy of a file may not be allowed to be provided.
-
Citations
23 Claims
-
1. A content delivery method comprising:
-
causing a plurality of files to be distributed across a plurality of computers;
responsive to a request, the request including at least a name for a file, the name having been determined, at least in part, using a given function of the data that comprises the contents of the file, causing a copy of the file to be provided from a given one of the plurality of computers, wherein the request for the file is resolved based, at least in part, on a measure of availability of at least one of the computers. - View Dependent Claims (7, 8, 14, 22, 23)
-
-
2. A method, in a system in which a plurality of files are distributed across a plurality of computers, the method comprising:
-
obtaining a name for a file, the name having been determined at least in part as a given function of the data that comprises the contents of the file, wherein the contents of the particular file may represent a digital message, a digital image, a video signal or an audio signal; and
responsive to a request, the request including at least the name, providing a copy of the file from a given one of the computers, wherein the request for the file is resolved based, at least in part, on a measure of availability of at least one computer having a copy of the requested file.
-
-
3. A method comprising:
-
distributing a set of files from a first computer across a network of computers distinct from the first computer;
for at least one file in the set of files, applying an MD5 function to the contents of a file to obtain a True Name for the file;
in response to a request, the request including at least the True Name of the particular file, causing a copy of the particular file to be provided from a given one of the computers, wherein the request for the particular file is resolved based, at least in part, on a measure of availability of at least one of the computers.
-
-
4. A content delivery method comprising:
-
distributing a plurality of files across a network of computers;
for a particular file, determining a True Name using at least a given function of the data, wherein the data used by the function to determine the name comprises the contents of the particular file;
obtaining a request, the request including at least the True Name of the particular file; and
responsive to the request, causing the particular file to be provided from one of the servers of the network of computers, wherein the request for the file is resolved based, at least in part, on a measure of availability of at least one of the computers having a copy of the file.
-
-
5. A content delivery method, comprising:
-
distributing a set of files across a network of servers;
for a particular file representing a digital image, the file having a contextual name specifying at least one location in the network at which the file may be located, determining another name for the particular file, the other name including a True Name for the file which was determined using a message digest function of the data, where the data used by the given function comprises the contents of the particular file;
obtaining a request for the particular file, the request including at least the True Name of the particular file; and
responsive to the request, providing the particular file from one of the servers of the network of servers, said providing being based at least in part on the True Name of the particular file, wherein the request for the file is resolved based, at least in part, on a measure of availability of at least one of the servers having a copy of the requested file.
-
-
6. A method comprising:
-
applying an MD5 function to the contents of an image file containing data representing a digital image to obtain a True Name for the file;
distributing copies of the image file from a first server across a network of servers distinct from the first server;
obtaining a request for the image file, the request including at least the True Name of the file; and
responsive to the request, causing a copy of the image file to be provided from one of the servers of the network of servers, wherein the request for the file is resolved based, at least in part, on a measure of availability of at least one of the servers having a copy of the file.
-
-
9. A method comprising:
-
distributing a set of files from a first computer across a network of computers;
in response to a request for a file, causing the file to be provided from a given one of the computers in the network, wherein the request for the file is resolved based, at least in part, on a measure of availability of at least one of the computers in the network, and wherein the measure of availability for a computer is based, at least in part, on at least one of the measurements selected from;
(a) a measurement of bandwidth to the computer;
(b) a measurement of a cost of a connection to the computer, and (c) a measurement of reliability of a connection to the computer. - View Dependent Claims (10, 11, 12, 13, 15, 16)
-
-
17. A method comprising:
-
causing a set of files to be distributed from a first computer across a network of computers distinct from the first computer;
maintaining accounting information relating to data files in the system; and
in response to a request for a file, causing the file to be provided from a given one of the computers, wherein the request for the file is resolved based, at least in part, on a measure of availability of at least one of the computers that is supposed to have a copy of the file, and wherein the measure of availability for a computer is based, at least in part, on at least one of the measurements selected from;
(a) a measurement of bandwidth to the computer;
(b) a measurement of a cost of a connection to the computer, and (c) a measurement of reliability of a connection to the computer. - View Dependent Claims (18, 19)
-
-
20. A method comprising:
-
(A) distributing a set of files from a first computer across a network of computers distinct from the first computer;
(B) maintaining accounting information relating to files in the system, wherein the maintaining of accounting information includes at least some of activities selected from;
(b1) tracking which files have been stored on a computer; and
(b2) tracking which files have been transmitted from a computer; and
(C) in response to a request for a file, causing the file to be provided from a given one of the computers in the network, wherein the request for the file is resolved based, at least in part, on a measure of availability of at least one of the computers in the network that is supposed to have a copy of the file, and wherein the measure of availability for a computer is based, at least in part, on at least one of the measurements selected from;
(c1) a measurement of bandwidth to the computer;
(c2) a measurement of a cost of a connection to the computer, and (c3) a measurement of reliability of a connection to the computer. - View Dependent Claims (21)
-
Specification