METHODS AND DISTRIBUTED SYSTEMS FOR DATA LOCATION AND DELIVERY
First Claim
Patent Images
1. A method for storing a data item for download over a data communication network, the method comprising:
- dividing the data item into a plurality of segments and identifying a plurality of nodes on the network that are capable of hosting the segments;
evaluating suitabilities for hosting the segments of nodes of the plurality of nodes;
selecting a subset of the plurality of nodes based upon the corresponding suitabilities; and
, forwarding the segments of the data item to the nodes of the selected subset for hosting by the nodes of the selected subset.
1 Assignment
0 Petitions
Accused Products
Abstract
A category overlay infrastructure for Peer-to-Peer (P2P) content search and a cost-effective large-scale on-demand media streaming are described. Based on a novel hierarchical P2P model, the category overlay infrastructure can provide good load balancing and efficient keyword search services for large-scale networks. The category overlay search services may be applied for locating video segments. The on-demand media streaming architecture can apply an efficient media segment scheduling algorithm and aggregate concurrent media streaming from multiple sources to allow users to play high-quality video or other media.
-
Citations
50 Claims
-
1. A method for storing a data item for download over a data communication network, the method comprising:
-
dividing the data item into a plurality of segments and identifying a plurality of nodes on the network that are capable of hosting the segments;
evaluating suitabilities for hosting the segments of nodes of the plurality of nodes;
selecting a subset of the plurality of nodes based upon the corresponding suitabilities; and
,forwarding the segments of the data item to the nodes of the selected subset for hosting by the nodes of the selected subset. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A method for streaming a data item on a data communication network, the data item comprising a plurality of segments, the segments hosted on a plurality of nodes on the network, the method comprising:
-
downloading and sequentially playing segments of the data item;
wherein;
downloading the segments comprises downloading data from each of a plurality of different ones of the nodes to a receiving node; and
,for at least one of the segments, downloading the segment comprises identifying two or more of the nodes that host the segment and requesting different portions of the segment from each of the two or more of the nodes - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. A method for locating a desired data item in a distributed storage system comprising a plurality of nodes interconnected by a data communication network, the method comprising:
-
determining a category for the desired data item from among a plurality of categories;
selecting an agent node based upon the category for the desired data item;
querying the selected agent node for the desired data item using at least one keyword associated with the desired data item; and
,at a requesting node, receiving from the selected agent node an identification of one or more nodes of the system that host the desired data item. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40)
-
-
41. A system for storage and delivery of data items, the system comprising:
-
a plurality of nodes, each of the plurality of nodes comprising a data processor, a data store accessible to the data processor, and stored computer instructions executable by the data processor; and
,a data communication network interconnecting the plurality of nodes;
wherein, for at least some of the nodes;
the computer instructions, when executed, control the data processor to retrieve data from a selected data item by downloading a plurality of segments of the data item and sequentially playing the segments of the data item;
wherein;
at least one of the segments comprises a plurality of blocks and downloading the segment comprises identifying two or more other nodes that host the segment and requesting different blocks of the segment from each of the two or more of the nodes. - View Dependent Claims (42, 43, 44, 45, 46, 47, 49)
-
-
48. A system for storage and streaming delivery of data items, the system comprising:
-
a plurality of nodes interconnected by a data communication network, at least some of the nodes comprising;
a data store;
means for identifying two or more other nodes storing a segment of a desired data item, the segment comprising a plurality of blocks;
means for requesting a block of the segment from each of the two or more of the nodes;
means for receiving the blocks from the other nodes; and
,means for playing the blocks in sequence. - View Dependent Claims (50)
-
Specification