Method and apparatus for a fault resilient collaborative media serving array
First Claim
Patent Images
1. A system for delivering content, the system comprising:
- a plurality of nodes comprising at least a first node and a second node, wherein each node of the plurality of nodes comprises a memory and a processor;
a content file that has been partitioned into an ordered list of parts comprising at least a first part and a second part, wherein the first part is stored in the memory of the first node and the second part is stored in the memory of the second node;
a client device for receiving the parts over a network; and
a switch;
wherein at least the first node and the second node are synchronized to send the first part and the second part sequentially in succession to the client device in response to a customer request from the client device that may be granted, denied, or granted only with certain restrictions, the restrictions comprising one or more of size and location, and in accordance with a plan executed by the plurality of nodes wherein at least one of the first part and second part further comprise trick content for implementing track mode playback comprising at least one of fast forward or rewind.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of the present invention provide methods, systems, and apparatuses for a fault resilient collaborative media serving array comprising a plurality of nodes. In one embodiment, the present invention provides a method for creating a fault resilient collaborative media serving array where the array nodes do not share memory, the serving of a content file is accomplished by the collaborative efforts of many nodes in the array, and where there is no fixed allocation of sessions to nodes.
97 Citations
33 Claims
-
1. A system for delivering content, the system comprising:
-
a plurality of nodes comprising at least a first node and a second node, wherein each node of the plurality of nodes comprises a memory and a processor; a content file that has been partitioned into an ordered list of parts comprising at least a first part and a second part, wherein the first part is stored in the memory of the first node and the second part is stored in the memory of the second node; a client device for receiving the parts over a network; and a switch; wherein at least the first node and the second node are synchronized to send the first part and the second part sequentially in succession to the client device in response to a customer request from the client device that may be granted, denied, or granted only with certain restrictions, the restrictions comprising one or more of size and location, and in accordance with a plan executed by the plurality of nodes wherein at least one of the first part and second part further comprise trick content for implementing track mode playback comprising at least one of fast forward or rewind. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method for sending content to a user, comprising the steps of:
-
partitioning the content into an ordered list of parts comprising a first part and a second part; allocating at least the first part to a first node, and at least the second part to a second node; sending the first part from the first node to the user through a switch; determining which of a plurality of nodes is the second node from a plan determined in response to a customer request that may be granted, denied, or granted only with certain restrictions, the restrictions comprising one or more of size or location; indicating to the second node that the second node is to send the second part to the user; and sending at least the second part sequentially relative to the first part from the second node to the user through a switch, wherein the determining step comprises determining independently by the first node which of a plurality of nodes is the second node using seed information received by the first node. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
-
Specification