Method and apparatus for managing a plurality of servers in a content delivery network
First Claim
1. A method comprising:
- distributing content to multiple nodes in a network having a plurality of nodes arranged in the form of a virtual tree, wherein each node in the virtual tree stores a portion of the content and is configured to appear as if all of the content is stored locally at the node;
distributing the content as one or more incoming tasks to one or more available servers in a first network node having a plurality of servers capable of processing the one or more incoming tasks; and
maintaining a list of tasks including all tasks from the one or more incoming tasks distributed for each of the one or more available servers.
3 Assignments
0 Petitions
Accused Products
Abstract
Large payload files are selectively partitioned in blocks and the blocks distributed to a plurality of distribution stations at the edge of the network qualified to have the data. Each qualified station decides how much and what portion of the content to save locally, based on information such as network location and environment, usage, popularity, and other distribution criteria defined by the content provider. Different pieces of a large payload file may be available from different nodes, however, when a user requests access to the large payload file, for example, through an application server, a virtual file control system creates an illusion that the entire file is present at the connected node. However, since only selective portions of the large payload file may actually be resident at that node'"'"'s storage at the time of request, a cluster of distribution servers at the distribution station may download the non-resident portions of the file as the application server is servicing the user. The download may be in parallel and usually from the least congested nodes. New nodes added to the network learn from other nodes in the network what content they should have and download the required content, in a desired amount, onto their local storage devices from the nearest and least congested nodes without interrupting network operation. Each node manages its local storage and decides what content to prune based on information such as usage patterns.
-
Citations
25 Claims
-
1. A method comprising:
-
distributing content to multiple nodes in a network having a plurality of nodes arranged in the form of a virtual tree, wherein each node in the virtual tree stores a portion of the content and is configured to appear as if all of the content is stored locally at the node; distributing the content as one or more incoming tasks to one or more available servers in a first network node having a plurality of servers capable of processing the one or more incoming tasks; and maintaining a list of tasks including all tasks from the one or more incoming tasks distributed for each of the one or more available servers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method comprising:
-
distributing content to multiple nodes in a network having a plurality of nodes arranged in the form of a virtual tree, wherein each node in the virtual tree stores a portion of the content and is configured to appear as if all of the content is stored locally at the node; distributing the content as one or more incoming tasks to one or more available servers in a first network node having a plurality of servers capable of processing the one or more incoming tasks, wherein the one or more available servers comprises a functioning subset of the plurality of servers; and maintaining a job queue including all tasks from the one or more incoming tasks distributed to the one or more available servers; and the master server redistributing all jobs from the job queue of each of the plurality of servers that becomes designated as an unavailable server to the one or more available servers. - View Dependent Claims (10, 11, 12)
-
-
13. A computer program product comprising:
- a computer usable medium comprising computer readable code for managing a plurality of servers in a content delivery network, the computer readable program code configured to;
distribute content to multiple nodes in a network having a plurality of nodes arranged in the form of a virtual tree, wherein each node in the virtual tree stores a portion of the content and is configured to appear as if all of the content is stored locally at the node; distribute the content as one or more incoming tasks to one or more available servers in a first network node having a plurality of servers capable of processing the one or more incoming tasks; and maintain a list of tasks including all tasks from the one or more incoming tasks distributed for each of the one or more available servers. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
- a computer usable medium comprising computer readable code for managing a plurality of servers in a content delivery network, the computer readable program code configured to;
-
21. A network comprising:
-
a first network node; and a second network node, wherein the first and second network nodes are arranged in the form of a virtual tree, store a portion of content and are configured to appear as if all of the content is stored locally at each node, wherein each node includes; a plurality of servers capable of performing identical tasks; a load balancer to distribute one or more incoming tasks to one or more available servers in the network node, wherein, each of the plurality of servers maintain a list of tasks including the distributed incoming tasks; a master server to redistribute to the one or more available servers all tasks from the list of tasks of a server of the plurality of servers that becomes designated as an unavailable server. - View Dependent Claims (22, 23, 24, 25)
-
Specification