IP Library Granted Patent US 8,972,600
Granted Patent B2
US 8,972,600 · App. 12/469,294 · Granted Mar 3, 2015

Method and apparatus for a fault resilient collaborative media serving array

Inventors: Stephen Malaby (Devon, PA); James Barkley (Exton, PA)
Assignee: Concurrent Computer Corporation
H04L67/1097H04N21/2182G06F9/505H04L29/08954H04L29/06H04N7/17318G06F12/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,972,600
App. No.
12/469,294
Granted
Mar 3, 2015
Kind
B2
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.

Claims (26)

1. A method for recovering from fault in a content serving array comprising at least a first node, a second node, and a third node, the method comprising:

partitioning content into an ordered list of parts comprising at least a first part and a second part;

allocating the first part to the first node;

allocating the second part to the second node;

sending the content successively and chronologically in-order as an ordered stream of parts corresponding to the ordered list by:

indicating to the first node that it should send the first part to a client device;

failing to receive by the second node an indication that the first node has sent the first part to the client device;

indicating to the third node that it should send the first part to the client device;

sending by the third node the first part to the client device; and

sending by the second node the second part to the client device.

2. The method of claim 1 , wherein the indicating to the first node comprises indicating to the first node that it should send the first part to the user by sending a token to the first node.

3. The method of claim 1 , wherein the indicating to the first node comprises indicating to the first node that it should send the first part to the user by using a common time reference.

4. The method of claim 1 , wherein the failing comprises failing to receive at the second node, within a predetermined time, a token indicating that the first node has sent the first part to the client device.

5. The method of claim 1 , wherein the indicating to the third node comprises indicating to the third node that it should send the first part to the user by sending a token to the third node.

6. The method of claim 1 , wherein the indicating to the third node comprises indicating to the third node that it should send the first part to the user by using a common time reference.

7. The method of claim 1 , further comprising determining independently by the second node that the third node should send the first part to the client device.

8. The method of claim 1 , further comprising determining by a broker that the third node should send the first part to the client device.

9. The method of claim 1 , wherein the third node is the second node.

10. The method of claim 1 , further comprising reallocating the first part to the third node.

11. The method of claim 1 , wherein the client device buffers at least some of the received content.

12. The method of claim 1 , wherein the client device presents received parts in the order that they are received.

13. The method of claim 1 , wherein the client device is not aware that the content is being delivered from more than one node.

14. The method of claim 1 , wherein the nodes do not share memory.

15. The method of claim 1 , wherein at least one part includes trick content for implementing trick mode playback.

16. The method of claim 1 , further comprising allocating the parts among the first node, the second node, and the third node using a deterministic algorithm.

17. The method of claim 1 , further comprising the step of allocating the parts among the first node, the second node, and the third node using a non-deterministic algorithm.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2018
From: CONCURRENT COMPUTER CORPORATION
To: VECIMA NETWORKS INC.
Reel/Frame 045443/0376 →
Continuity (2)
Division 11546795 · Oct 12, 2006
Related Publication 20090225649A1 · Sep 10, 2009