Method and apparatus for minimizing network congestion during large payload delivery
First Claim
1. A method for minimizing network congestion during large payload delivery comprising:
- sending a search request to determine which nodes in a network have content for a requesting node, said network having a plurality of nodes;
receiving a response to said search request from each of one or more responding nodes having said content;
determining from said response which of said responding nodes are a desired set of nodes to download said content from;
downloading said content from said desired set of nodes; and
storing said downloaded content onto said requesting node.
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
41 Claims
-
1. A method for minimizing network congestion during large payload delivery comprising:
-
sending a search request to determine which nodes in a network have content for a requesting node, said network having a plurality of nodes;
receiving a response to said search request from each of one or more responding nodes having said content;
determining from said response which of said responding nodes are a desired set of nodes to download said content from;
downloading said content from said desired set of nodes; and
storing said downloaded content onto said requesting node. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41)
-
-
14. A method for minimizing network congestion during large payload delivery comprising:
-
sending a search request to determine which nodes in a network have content for a requesting node, said network having a plurality of nodes;
receiving responses to said search request from a plurality of responding nodes having said content, wherein at least a portion of said content is stored in a plurality of block files in each of said plurality of responding nodes, said responses identifying portions of said content in said plurality of responding nodes and performance characteristics of said responding nodes;
determining from said response which nodes of said plurality of responding nodes are a desired set of nodes to download said content from, wherein said desired set of nodes have a threshold level of latency to said requesting node and are identified as least congested nodes as determined by said performance characteristics;
downloading and storing said content from said desired set of nodes onto said requesting node.
-
-
15. A method for minimizing network congestion during large payload delivery comprising:
-
sending a search request to determine which nodes in a network have content for a requesting node, said network having a plurality of nodes;
receiving a response to said search request from a plurality of responding having said content, wherein at least some portion of said content is stored in a plurality of block files in a plurality of storage devices in each of said responding nodes, said response identifies a portion of said content a responding node has and performance characteristics of said responding node, at least one of said plurality of responding nodes having the same portion of said content;
determining from said response which of said responding nodes are a desired set of nodes to download said content from, wherein said desired set of nodes are those nodes nearest to said requesting node in said network that are least congested as determined by said performance characteristics;
downloading said content in parallel from said desired set of nodes and storing said content in said requesting node.
-
-
16. A computer program product comprising:
a computer usable medium comprising computer readable code for minimizing network congestion during large payload delivery, said computer readable program code configured to;
send a search request to determine which nodes in a network have content for a requesting node, said network having a plurality of nodes;
receive a response to said search request from each of one or more responding nodes having said content;
determine from said response which of said responding nodes are a desired set of nodes to download said content from;
download said content from said desired set of nodes; and
store said downloaded content onto said requesting node.
-
29. An apparatus for minimizing network congestion during large payload delivery comprising:
-
a network comprising a plurality of nodes;
a first server in a first server cluster sending a search request to determine which nodes in said network have content for a requesting node of said network, said first server cluster having one or more first servers, said first server receiving a response to said search request from each of one or more responding nodes having said content, said first server cluster determining said response which of said responding nodes are a desired set of nodes to download said content from, and said one or more first servers in said first server cluster downloading said content from said desired set of nodes and storing said downloaded content onto said requesting node.
-
Specification