System and method of minimizing network bandwidth retrieved from an external network
First Claim
1. A method executable by each of a plurality of clients operating as peers in a local area network to reduce consumption of network bandwidth on an external network during streaming of a media stream obtained from an external network repository, the method comprising:
- the client organizing in a linked structure with the other clients, wherein each of the plurality of clients in the linked structure has a different set of media streamlets obtained from the external network repository, and wherein each streamlet is an individually-addressable data file containing an identifiable portion of the media stream having a particular quality, wherein each client is linked to at least one other client and the plurality of linked clients are located within the local network;
each client distributing streamlet mapping information to linked receiving clients, the streamlet mapping information representing location of local media streamlets stored by the plurality of clients;
each client applying a priority policy rule defining streamlet quality priorities and network priorities that are used when obtaining media streamlets for media playback; and
during playback of the media stream, retrieving additional media streamlets based on the priority policy rule from the plurality of clients within the local network using the streamlet mapping information if the additional media streamlets are available from clients within the local network, and otherwise obtaining the additional media streamlets from the external network repository.
8 Assignments
0 Petitions
Accused Products
Abstract
A system and method are provided of minimizing network bandwidth used from an external network by client peers in a local network. The method can include the operation of organizing a plurality of clients each having media streamlets and a client parent in a structure within the local network. Mapping information propagates through the structure. The mapping information represents local streamlet locations as stored by the plurality of clients. Another operation is retrieving a local streamlet from a client identified in the mapping information as having the local streamlet for the requesting client.
197 Citations
25 Claims
-
1. A method executable by each of a plurality of clients operating as peers in a local area network to reduce consumption of network bandwidth on an external network during streaming of a media stream obtained from an external network repository, the method comprising:
-
the client organizing in a linked structure with the other clients, wherein each of the plurality of clients in the linked structure has a different set of media streamlets obtained from the external network repository, and wherein each streamlet is an individually-addressable data file containing an identifiable portion of the media stream having a particular quality, wherein each client is linked to at least one other client and the plurality of linked clients are located within the local network; each client distributing streamlet mapping information to linked receiving clients, the streamlet mapping information representing location of local media streamlets stored by the plurality of clients; each client applying a priority policy rule defining streamlet quality priorities and network priorities that are used when obtaining media streamlets for media playback; and during playback of the media stream, retrieving additional media streamlets based on the priority policy rule from the plurality of clients within the local network using the streamlet mapping information if the additional media streamlets are available from clients within the local network, and otherwise obtaining the additional media streamlets from the external network repository. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of reducing network bandwidth of an external network consumed by client peers in a local network during streaming of a media stream, comprising:
-
identifying a plurality of clients having media streamlets, the plurality of clients being located within the local network, wherein each of the media streamlets is an individually-addressable data file containing an identifiable portion of the media stream having a particular quality, wherein a limited number of tokens are assigned to the plurality of clients arranged in a hierarchical structure, and wherein a number of tokens is less than the plurality of clients; requesting to join the hierarchical structure by a requesting client desiring a local streamlet for media playback; receiving a response message from a client with a token, the response message containing the depth of the client in the tree and a nonce identifying the tree; receiving mapping information from the client with the token at the requesting client, wherein the mapping information represents locations of local streamlets stored on each of the plurality of clients; connecting the requesting client to the hierarchical structure of the plurality of clients; and subsequently obtaining at least one local streamlet of the media stream from a location identified in the mapping information by making a direct request from the requesting client to the client within the local network having the local streamlet. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
-
19. A system for reducing network bandwidth consumed by a media stream represented by a series of streamlets that are retrieved over an external network connection from an external network repository, comprising:
-
a plurality of clients each configured to store local copies of streamlets from the series of streamlets representing the media stream, wherein each of the clients is configured to communicate with other clients via a local area network, the local area network being in communication with the external network connection, wherein the plurality of clients is organized into a hierarchical structure having a number of tokens assigned to the clients, wherein the number of tokens is less than the number of clients in the hierarchical structure; wherein each of the plurality of clients comprises an instance of a media player configured to playback the series of streamlets representing the media stream; and
wherein each of the plurality of clients distributes a metadata map configured to list which streamlets are locally stored by the client to thereby allow the media players executing on other clients to identify and retrieve locally-stored streamlets from the other clients in the hierarchical structure instead of the external network repository for decoding during playback of the media stream by the media player. - View Dependent Claims (20, 21)
-
-
22. A method of reducing network bandwidth used from an external network by client peers in a local network during streaming of a media stream represented by a series of media streamlets, wherein each of the series of streamlets is an individually-addressable data file containing an identifiable portion of the media stream, the method comprising:
-
organizing a plurality of clients in a hierarchical structure within the local network; obtaining mapping information for a requesting client from at least one other client, the mapping information representing locations of local streamlets from the series of media streamlets that are stored by the at least one other client; and retrieving one of the local streamlets identified in the mapping information from the at least one other client for decoding during playback of the media stream. - View Dependent Claims (23, 24, 25)
-
Specification