IP Library Granted Patent US 7,742,485
Granted Patent B2
US 7,742,485 · App. 11/192,760 · Granted Jun 22, 2010

Distributed system for delivery of information via a digital network

Assignee: Roxbeam Media Network Corporation
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 7,742,485
App. No.
11/192,760
Granted
Jun 22, 2010
Kind
B2
Abstract

A system for delivering streamed content over a large digital network such as the Internet. Distributed functionality executes on nodes in the network to achieve functions such as assigning partner nodes for transfer of content to or from a target node, scheduling transfer operations among nodes, adding or removing nodes from the network, maintaining security, and other operations. Different embodiments may use one or more of the functional features. In a preferred embodiment, video content is segmented and streamed through multi-path routing. An overlay network uses nodes in partnership groups so that a target node can obtain segments from multiple sources. Partner nodes can provide the segments within a given time window, including simultaneous delivery from multiple partner nodes, so that a more reliable data stream is supported.

Claims (58)

1. A method for distributing information in a digital network, wherein the digital network includes nodes coupled by communication links, the method comprising:

performing the following at each of a plurality of the nodes which are in a partnership group:

maintaining a record of other nodes in the digital network:

randomly selecting a deputy node, which associates partner nodes for a target node from the record of other nodes, thereby reducing service load at each of the plurality of nodes, wherein a partner node can transmit segments of a video stream to the target node, and wherein the video stream is divided into segments of uniform length;

maintaining a buffer map;

wherein the buffer map is a bit sequence of a predetermined length;

wherein the length of the bit sequence corresponds to a sliding transmission window which limits the number of segments the partner node may request; and

wherein each bit of the buffer map indicates the availability of a corresponding segment at the partner node;

exchanging the buffer map with the partner node; and

scheduling fetching of segments of the video stream from the Partner node based on the exchanged buffer map, bandwidth of the partner node and available time for the partner node to transmit the segments; and

receiving the segments from the partner node.

2. The method of claim 1 , further comprising:

receiving information at a particular node according to a scheduled transmission.

3. The method of claim 2 , further comprising:

transferring information from the particular node according to the scheduled transmission.

4. The method of claim 1 , wherein the buffer map is 120-bit long and corresponds to a 1-second video which is divided into 120 segments.

5. The method of claim 1 , further comprising:

creating a schedule for delivery of the segments by considering a plurality of potential supplier nodes.

6. The method of claim 5 , further comprising:

assigning a higher priority in the schedule to the segments that are stored at fewer numbers of potential supplier nodes.

7. The method of claim 1 , further comprising:

changing the association of the partner nodes.

8. The method of claim 7 , further comprising:

establishing a new partnership node for the target node.

9. The method of claim 8 , wherein the step of establishing includes a substep of randomly selecting a node.

10. An apparatus for distributing information in a digital network, the apparatus comprising:

a processor coupled to the network;

a non-transitory, tangible machine-readable storage medium device including instructions executable by the processor for performing the following:

maintaining a record of other nodes in the digital network:

randomly selecting a deputy node, which associates partner nodes for a target node from the record of other nodes, thereby reducing service load at each of the plurality of nodes, wherein a partner node can transmit segments of a video stream to the target node, and wherein the video stream is divided into segments of uniform length;

maintaining a buffer map;

wherein the buffer map is a bit sequence of a predetermined length;

wherein the length of the bit sequence corresponds to a sliding transmission window which limits the number of segments the partner node may request; and

wherein each bit of the buffer map indicates the availability of a corresponding segment at the partner node;

exchanging the buffer map with the partner node; and

scheduling transmission of segments of the video stream with a partner node.

11. A non-transitory ,tangible machine-readable storage medium including instructions executable by a processor for distributing information in a digital network, machine-readable device including:

one or more instructions for maintaining a record of other nodes in the digital network, wherein the other nodes are in a partnership group;

one or more instructions for randomly selecting a deputy node to associate partner nodes for a target node from the record of other nodes, wherein a partner node can transmit segments of a video stream to the target node, and wherein the video stream is divided into segments of uniform length;

one or more instructions for maintaining a buffer map;

wherein the buffer map is a bit sequence of a predetermined length;

wherein the length of the bit sequence corresponds to a sliding transmission window which limits the number of segments the partner node may request; and

wherein each bit of the buffer map indicates the availability of a corresponding segment at the partner node;

one or more instructions for exchanging the buffer map with a partner node; and

one or more instructions for scheduling fetching of segments of the video stream with the partner node based on the exchanged buffer map, bandwidth of the partner node and available time for the partner node to transmit the segments; and

one or more instructions for receiving the segments from the partner node.

12. An apparatus for distributing information in a digital network, the apparatus comprising:

means for maintaining a record of other nodes in the digital network, wherein the other nodes are in a partnership group;

means for randomly selecting a deputy node, which associates partner nodes for a target node from the record of other nodes, thereby reducing service load at each of the plurality of nodes, wherein a partner node can transmit segments of a video stream to

the target node, and wherein the video stream is divided into segments of

uniform length;

means for maintaining a buffer map;

wherein the buffer map is a bit sequence of a predetermined length;

wherein the length of the bit sequence corresponds to a sliding transmission window which limits the number of segments the partner node may request; and

wherein each bit of the buffer map indicates the availability of a corresponding segment at the partner node;

means for exchanging the buffer map with the partner node; and

means for scheduling fetching of segments of the video stream from the partner node based on the exchanged buffer map, bandwidth of the partner node, and available time for the partner node to transmit the segments; and

means for receiving the segments from the partner node.

Assignments (2)
CONFIRMATORY PATENT ASSIGNMENT Recorded Feb 12, 2014
From: ROXBEAM (BEIJING) MEDIA NETWORK CORPORATION (DOING BUSINESS AS ROXBEAM MEDIA NETWORK CORPORATION); ROXBEAM MEDIA NETWORK CORPORATION
To: TV BANK CORPORATION
Reel/Frame 032251/0643 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 29, 2005
From: ZHANG, XINYAN
To: ROXBEAM MEDIA NETWORK CORPORATION
Reel/Frame 016826/0847 →
Continuity (1)
Related Publication 20070025363A1 · Feb 1, 2007